.journey-review-grid {
  --jr-ink:#1d2c4e;
  --jr-muted:#667b9d;
  --jr-faint:#8293ad;
  --jr-blue:#1b70fb;
  --jr-green:#138f50;
  --jr-red:#b44f64;
  position:relative;
  z-index:1;
  min-height:calc(100vh - 68px);
  padding:14px;
  display:grid;
  grid-template-columns:340px minmax(0,1fr);
  grid-template-rows:auto minmax(0,1fr);
  gap:10px;
  color:var(--jr-ink);
}

.journey-review-grid[hidden] { display:none!important; }

.journey-review-head,
.journey-review-queue,
.journey-review-detail {
  min-width:0;
  border:1px solid rgba(133,166,205,.28);
  border-radius:18px;
  background:linear-gradient(145deg,rgba(250,252,255,.78),rgba(225,235,247,.58));
  box-shadow:0 22px 70px rgba(45,75,110,.11),inset 0 1px 0 rgba(255,255,255,.86);
  backdrop-filter:blur(22px) saturate(1.12);
}

.journey-review-head {
  grid-column:1/-1;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:13px 22px;
  align-items:start;
  padding:19px 22px 14px;
}

.journey-review-head>div:first-child { max-width:860px; }
.journey-review-head>div:first-child>span { color:#426b9f;font:700 9px var(--mono);letter-spacing:.16em; }
.journey-review-head h1 { margin:6px 0 4px;font-size:clamp(22px,2vw,32px);line-height:1.08;letter-spacing:-.035em; }
.journey-review-head p { margin:0;color:var(--jr-muted);font-size:11px;line-height:1.55; }

.journey-review-head-actions { display:flex;align-items:center;gap:8px; }
.journey-review-pending-count { padding:7px 10px;border:1px solid rgba(216,144,35,.35);border-radius:99px;background:rgba(235,166,45,.1);color:#9d6818;font:750 9px var(--mono); }
.journey-review-head-actions button,
.journey-review-filters button {
  min-height:32px;
  padding:0 12px;
  border:1px solid rgba(92,139,198,.28);
  border-radius:10px;
  background:rgba(255,255,255,.42);
  color:#3e638f;
  font:700 9px var(--mono);
  cursor:pointer;
}
.journey-review-head-actions button:hover:not(:disabled),
.journey-review-filters button:hover:not(:disabled),
.journey-review-filters button.is-active { border-color:rgba(36,119,232,.5);background:rgba(36,119,232,.12);color:#1762bd; }

.journey-review-filters { grid-column:1/-1;display:flex;gap:7px;padding-top:12px;border-top:1px solid rgba(133,166,205,.18); }
.journey-review-message { grid-column:1/-1;padding:10px 12px;border:1px solid rgba(36,119,232,.28);border-radius:10px;background:rgba(36,119,232,.08);color:#315f99!important;font-size:10px!important;font-weight:700; }
.journey-review-message[data-tone="good"] { border-color:rgba(21,164,84,.34);background:rgba(21,164,84,.09);color:#137b43!important; }
.journey-review-message[data-tone="warning"] { border-color:rgba(216,144,35,.38);background:rgba(235,166,45,.1);color:#946015!important; }
.journey-review-message[data-tone="danger"] { border-color:rgba(190,74,94,.4);background:rgba(190,74,94,.09);color:#a24c5e!important; }

.journey-review-queue,
.journey-review-detail { min-height:0;overflow:hidden; }
.journey-review-queue { display:grid;grid-template-rows:auto minmax(0,1fr); }
.journey-review-queue>header { display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 16px;border-bottom:1px solid rgba(133,166,205,.2); }
.journey-review-queue>header>div { display:grid;gap:3px; }
.journey-review-queue>header strong { font-size:13px; }
.journey-review-queue>header small { color:var(--jr-muted);font-size:8px; }
.journey-review-queue>header>span { min-width:25px;padding:5px 7px;border-radius:99px;background:rgba(36,119,232,.1);color:#1762bd;font:750 9px var(--mono);text-align:center; }
.journey-review-list { min-height:0;display:grid;align-content:start;gap:7px;padding:9px;overflow:auto; }
.journey-review-row { width:100%;display:grid;gap:6px;padding:11px;border:1px solid rgba(133,166,205,.22);border-radius:12px;background:rgba(255,255,255,.34);color:var(--jr-ink);text-align:left;cursor:pointer;transition:border-color .18s,background .18s,transform .18s; }
.journey-review-row:hover,.journey-review-row.is-selected { border-color:rgba(36,119,232,.47);background:rgba(255,255,255,.62); }
.journey-review-row.is-selected { box-shadow:inset 3px 0 0 var(--jr-blue);transform:translateX(1px); }
.journey-review-row-head { display:flex;align-items:center;gap:8px; }
.journey-review-row-head strong { min-width:0;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px; }
.journey-review-recipient { overflow:hidden;color:var(--jr-muted);font:9px var(--mono);text-overflow:ellipsis;white-space:nowrap; }
.journey-review-row-meta { display:flex;gap:5px;flex-wrap:wrap; }
.journey-review-row-meta small { padding:3px 6px;border-radius:99px;background:rgba(93,126,171,.08);color:var(--jr-faint);font:7px var(--mono); }

.journey-review-status { display:inline-flex;align-items:center;justify-content:center;padding:5px 8px;border:1px solid rgba(133,166,205,.3);border-radius:99px;color:var(--jr-faint);font:750 8px var(--mono);font-style:normal;white-space:nowrap; }
.journey-review-status.is-pending { border-color:rgba(216,144,35,.38);background:rgba(235,166,45,.1);color:#95631a; }
.journey-review-status.is-good { border-color:rgba(21,164,84,.35);background:rgba(21,164,84,.09);color:var(--jr-green); }
.journey-review-status.is-danger { border-color:rgba(190,74,94,.4);background:rgba(190,74,94,.09);color:var(--jr-red); }

.journey-review-list-state,
.journey-review-detail-empty { min-height:240px;display:grid;place-content:center;justify-items:center;gap:10px;padding:22px;color:var(--jr-muted);text-align:center; }
.journey-review-list-state>span:not(.journey-review-spinner),.journey-review-detail-empty>span:not(.journey-review-spinner) { color:var(--jr-blue);font:750 12px var(--mono); }
.journey-review-list-state strong,.journey-review-detail-empty strong { font-size:11px;line-height:1.5; }
.journey-review-spinner { width:20px;height:20px;border:2px solid rgba(36,119,232,.18);border-top-color:var(--jr-blue);border-radius:50%;animation:journey-review-spin .8s linear infinite; }
@keyframes journey-review-spin { to { transform:rotate(360deg); } }

.journey-review-detail { overflow:auto; }
.journey-review-detail-card { display:grid;gap:0; }
.journey-review-detail-head { display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:18px 20px;border-bottom:1px solid rgba(133,166,205,.2); }
.journey-review-detail-head>div:first-child>span { color:#426b9f;font:700 8px var(--mono);letter-spacing:.13em;text-transform:uppercase; }
.journey-review-detail-head h2 { margin:5px 0 3px;font-size:20px;line-height:1.1; }
.journey-review-detail-head p { margin:0;color:var(--jr-muted);font:9px var(--mono); }
.journey-review-head-badges { display:flex;align-items:center;gap:7px; }
.journey-review-version { padding:5px 8px;border-radius:99px;background:rgba(36,119,232,.1);color:#1762bd;font:750 8px var(--mono); }

.journey-review-metadata { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;margin:0;padding:1px 0;background:rgba(133,166,205,.16); }
.journey-review-meta-item { min-width:0;padding:10px 13px;background:rgba(244,248,254,.82); }
.journey-review-meta-item.is-wide { grid-column:span 2; }
.journey-review-meta-item dt { color:var(--jr-faint);font:700 7px var(--mono);letter-spacing:.08em;text-transform:uppercase; }
.journey-review-meta-item dd { margin:4px 0 0;overflow:hidden;color:var(--jr-ink);font-size:9px;font-weight:650;text-overflow:ellipsis;white-space:nowrap; }
.journey-review-error { margin:12px 14px 0;padding:10px 12px;border:1px solid rgba(190,74,94,.35);border-radius:10px;background:rgba(190,74,94,.08); }
.journey-review-error strong { color:var(--jr-red);font-size:9px; }
.journey-review-error p { margin:4px 0 0;color:#915064;font:8px var(--mono);line-height:1.5;white-space:pre-wrap; }

.journey-review-previews,.journey-review-editor,.journey-review-decision,.journey-review-history { margin:12px 14px 0;border:1px solid rgba(133,166,205,.22);border-radius:13px;background:rgba(255,255,255,.31);overflow:hidden; }
.journey-review-tabs { display:flex;align-items:center;gap:6px;padding:8px;border-bottom:1px solid rgba(133,166,205,.18); }
.journey-review-tabs button,.journey-review-tabs a { min-height:30px;display:inline-flex;align-items:center;padding:0 10px;border:1px solid rgba(92,139,198,.25);border-radius:9px;background:rgba(255,255,255,.38);color:#496c98;font:700 8px var(--mono);text-decoration:none;cursor:pointer; }
.journey-review-tabs button:hover:not(:disabled),.journey-review-tabs button.is-active,.journey-review-tabs a:hover { border-color:rgba(36,119,232,.48);background:rgba(36,119,232,.11);color:#1762bd; }
.journey-review-tabs button:disabled { opacity:.38;cursor:not-allowed; }
.journey-review-tabs a { margin-left:auto; }
.journey-review-frame-wrap { min-height:580px;background:#eef3fa; }
.journey-review-frame-wrap iframe { display:block;width:100%;height:68vh;min-height:580px;border:0;background:white; }
.journey-review-preview-empty { min-height:360px;display:grid;place-items:center;color:var(--jr-muted);font-size:10px; }

.journey-review-editor { padding-bottom:13px; }
.journey-review-editor>header { display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:13px 14px;border-bottom:1px solid rgba(133,166,205,.18); }
.journey-review-editor>header>div { display:grid;gap:3px; }
.journey-review-editor>header strong,.journey-review-decision label>span { font-size:11px; }
.journey-review-editor>header small { max-width:600px;color:var(--jr-muted);font-size:8px;line-height:1.45; }
.journey-review-readiness { padding:5px 8px;border:1px solid rgba(216,144,35,.34);border-radius:99px;color:#95631a;font:700 7px var(--mono);white-space:nowrap; }
.journey-review-readiness.is-ready { border-color:rgba(21,164,84,.35);color:var(--jr-green); }
.journey-review-editor>label,.journey-review-email-fields label,.journey-review-decision label { display:grid;gap:5px; }
.journey-review-editor>label { margin:12px 14px 0; }
.journey-review-editor label>span,.journey-review-decision label>span { color:var(--jr-muted);font:700 8px var(--mono);letter-spacing:.06em;text-transform:uppercase; }
.journey-review-structured>small { color:var(--jr-muted);font-size:8px;line-height:1.5; }
.journey-review-structured textarea { min-height:420px;font:9px/1.55 var(--mono);tab-size:2;white-space:pre; }
.journey-review-email-fields { display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:10px 14px 0; }
.journey-review-email-fields .is-wide { grid-column:1/-1; }
.journey-review-editor textarea,.journey-review-editor input,.journey-review-decision textarea { width:100%;box-sizing:border-box;border:1px solid rgba(92,139,198,.28);border-radius:10px;padding:9px 10px;background:rgba(255,255,255,.56);color:var(--jr-ink);font:10px/1.5 var(--sans);resize:vertical; }
.journey-review-editor textarea:focus,.journey-review-editor input:focus,.journey-review-decision textarea:focus { outline:none;border-color:rgba(36,119,232,.55);box-shadow:0 0 0 3px rgba(36,119,232,.1); }
.journey-review-editor textarea:disabled,.journey-review-editor input:disabled,.journey-review-decision textarea:disabled { opacity:.55;cursor:not-allowed; }
.journey-review-save { margin:10px 14px 0;padding:8px 12px;border:1px solid rgba(36,119,232,.34);border-radius:9px;background:rgba(36,119,232,.1);color:#1762bd;font:700 9px var(--mono);cursor:pointer; }

.journey-review-decision { display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;padding:13px 14px; }
.journey-review-decision-actions { display:flex;align-items:flex-end;gap:7px; }
.journey-review-decision-actions button { min-height:38px;padding:0 13px;border:1px solid rgba(92,139,198,.3);border-radius:10px;background:rgba(255,255,255,.45);color:#496c98;font:750 9px var(--mono);cursor:pointer; }
.journey-review-decision-actions button.is-approve { border-color:rgba(21,164,84,.42);background:rgba(21,164,84,.11);color:#117a42; }
.journey-review-decision-actions button.is-reject { border-color:rgba(190,74,94,.4);background:rgba(190,74,94,.09);color:var(--jr-red); }
.journey-review-decision-actions button:disabled,.journey-review-save:disabled,.journey-review-head button:disabled { opacity:.42;cursor:not-allowed; }

.journey-review-history { margin-bottom:14px; }
.journey-review-history summary { padding:11px 13px;color:var(--jr-muted);font:750 9px var(--mono);cursor:pointer; }
.journey-review-history>div { display:grid;gap:7px;padding:0 11px 11px; }
.journey-review-history-row { display:flex;align-items:flex-start;gap:9px;padding:9px;border:1px solid rgba(133,166,205,.18);border-radius:10px;background:rgba(255,255,255,.3); }
.journey-review-history-row>div { min-width:0;display:grid;gap:3px; }
.journey-review-history-row strong { font-size:9px; }
.journey-review-history-row small { color:var(--jr-faint);font:7px var(--mono); }
.journey-review-history-row p,.journey-review-history-empty { margin:2px 0 0;color:var(--jr-muted);font-size:8px;line-height:1.5;white-space:pre-wrap; }

@media (min-width:1101px) {
  .overview-page .journey-review-grid { width:calc(100vw - 233px);height:calc(100dvh - 16px);min-height:0;margin-left:217px;padding:0; }
  .overview-page .journey-review-queue,.overview-page .journey-review-detail { height:100%; }
}

@media (max-width:1100px) {
  .journey-review-grid { grid-template-columns:300px minmax(0,1fr);min-height:calc(100dvh - 68px);padding:9px; }
  .journey-review-metadata { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

@media (max-width:760px) {
  .journey-review-grid { grid-template-columns:1fr;grid-template-rows:auto auto auto; }
  .journey-review-head { grid-column:1;grid-template-columns:1fr; }
  .journey-review-head-actions { justify-content:space-between; }
  .journey-review-queue { max-height:360px; }
  .journey-review-email-fields,.journey-review-decision { grid-template-columns:1fr; }
  .journey-review-decision-actions { flex-wrap:wrap; }
  .journey-review-frame-wrap,.journey-review-frame-wrap iframe { min-height:460px;height:60vh; }
}
.journey-memory-card{margin:16px 14px;border:1px solid #3F628B;background:#F2EFE7;color:#11120F}
.journey-memory-card>header{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:16px;border-bottom:1px solid rgba(47,78,116,.2)}
.journey-memory-card h3{font-size:18px;margin:0 0 5px}.journey-memory-card p{font-size:14px;line-height:1.6;overflow-wrap:anywhere;margin:0 0 12px}
.journey-memory-body{display:grid;grid-template-columns:minmax(0,1fr);gap:22px;padding:16px}
.journey-memory-preview{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;align-items:start;min-width:0}
.journey-memory-preview.has-source{grid-template-columns:repeat(2,minmax(0,1fr))}
.journey-memory-preview figure{display:grid;grid-template-rows:auto auto auto;gap:10px;min-width:0;margin:0}
.journey-memory-preview figcaption{min-height:3.2em;font-size:14px;line-height:1.6;overflow-wrap:anywhere}
.journey-memory-preview figure>a{min-width:0}
.journey-memory-controls{min-width:0}
.journey-memory-preview img{display:block;width:100%;height:auto;border:1px solid rgba(47,78,116,.2);box-sizing:border-box}
.journey-memory-card a{color:#2F4E74;font-size:14px}.journey-memory-controls label{display:grid;gap:6px;font-size:14px}
.journey-memory-controls textarea{box-sizing:border-box;width:100%;resize:vertical;font:14px/1.5 var(--sans);padding:8px;border:1px solid #3F628B;background:#FBFAF5;color:#11120F}
.journey-memory-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.journey-memory-actions button{padding:10px 12px;border:1px solid #2F4E74;background:#FBFAF5;color:#2F4E74;font-size:14px;cursor:pointer}
.journey-memory-actions button.is-primary{background:#2F4E74;color:#FBFAF5}.journey-memory-actions button:disabled{opacity:.45;cursor:not-allowed}
.journey-memory-card :is(button,a,textarea):focus-visible{outline:3px solid #3F628B;outline-offset:3px}.journey-memory-card details{margin-top:16px;font-size:14px}.journey-memory-card summary{cursor:pointer;margin-bottom:8px}
.journey-memory-warning{color:#7A561C}.journey-memory-error{color:#9C3F3A;white-space:pre-wrap}.journey-full-report-heading{margin:24px 14px 0;font-size:18px}
@media(max-width:900px){.journey-memory-body{grid-template-columns:1fr}.journey-memory-card>header{align-items:flex-start;flex-wrap:wrap}}

/* Review workbench: operational state stays visible while artifacts load. */
.journey-review-queue{grid-template-rows:auto minmax(0,1fr) auto}
.journey-workbench-tools{grid-column:1/-1;display:flex;gap:16px;align-items:center}
.journey-workbench-tools input{width:min(440px,100%);min-height:40px;padding:8px 12px;border:1px solid #a9b9cc;border-radius:8px;font:14px var(--sans);background:#fff;color:#1d2c4e}
[data-review-sync]{font-size:13px;color:#3f5878}[data-review-sync][data-offline=true]{color:#9c3f3a}
.journey-review-filters{flex-wrap:wrap}.journey-review-filters button{min-height:36px;font:600 12px var(--sans)}
.journey-review-row-meta{display:flex;flex-direction:column;align-items:flex-start;gap:5px}
.journey-review-row-meta small{font:12px/1.4 var(--sans);color:#405878;overflow-wrap:anywhere}
.journey-review-row-head strong{font-size:14px}.journey-review-recipient{font-size:12px}
.journey-review-pagination{display:flex;gap:8px;align-items:center;justify-content:space-between;padding:12px;border-top:1px solid #d8e0ea}
.journey-review-pagination span{font-size:11px;color:#405878}.journey-review-pagination button{min-height:36px;padding:6px 10px;border:1px solid #a9b9cc;border-radius:6px;background:#fff;color:#2f4e74;cursor:pointer}
.journey-review-pagination button:disabled{opacity:.45;cursor:not-allowed}
.journey-task-progress{padding:16px;border-bottom:1px solid #d1d7df;background:#fbfaf5;color:#1d2c4e;font:14px/1.5 var(--sans)}
.journey-full-report-heading+.journey-task-progress{margin:12px 14px}
.journey-task-current{display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center;justify-content:space-between}
.journey-task-current strong{font-size:16px}.journey-task-current>span{font-variant-numeric:tabular-nums;color:#3f628b}
.journey-task-states{display:flex;flex-wrap:wrap;gap:8px 20px;margin-top:8px;color:#405878;font-size:12px}
.journey-task-steps{list-style:none;display:flex;flex-wrap:wrap;gap:8px 16px;margin:14px 0 8px;padding:0}
.journey-task-steps li{padding-bottom:4px;color:#5c6878;border-bottom:2px solid #d1d7df;font-size:12px}
.journey-task-steps li.is-current{color:#2f4e74;border-color:#2f4e74;font-weight:700}.journey-task-steps li.is-complete{color:#25704a;border-color:#25704a}
.journey-task-progress p{margin:8px 0 0;font-size:12px}.journey-task-progress small{color:#405878;font-size:12px}.journey-task-progress details{font-size:12px;margin-top:10px}.journey-task-progress summary{cursor:pointer}
.journey-task-progress details ol{padding-left:20px;margin-top:8px}
.journey-local-message{padding:12px 16px;background:#eaf2fb;color:#2f4e74;font-size:14px;line-height:1.5}.journey-local-message[data-tone=danger]{background:#fff0ec;color:#9c3f3a}
.journey-local-message[hidden]{display:none}
.journey-memory-body>.journey-memory-actions{position:sticky;top:0;z-index:5;background:#f2efe7;padding:12px 0;margin:0;border-bottom:1px solid #c6d1df}
.journey-memory-actions button{min-height:42px}.journey-memory-actions button:not(:disabled):hover{background:#e0e9f7}.journey-memory-actions button.is-primary:not(:disabled):hover{background:#3f628b}
.journey-compare-toolbar{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.journey-compare-toolbar>span{margin-right:auto;font-size:13px;color:#2f4e74}
.journey-compare-toolbar button,.journey-draft-status button{min-height:36px;padding:6px 12px;border:1px solid #9eafc4;background:#fbfaf5;color:#2f4e74;cursor:pointer;font-size:13px}
.journey-compare-toolbar button[aria-pressed=true]{background:#2f4e74;color:#fff}
.journey-compare-toolbar label{display:flex;align-items:center;gap:6px;font-size:13px}.journey-compare-toolbar input{accent-color:#2f4e74}
.journey-memory-preview figure{grid-template-rows:auto minmax(0,1fr) auto;gap:8px}
.journey-memory-preview figcaption{font-weight:600;min-height:3.2em}
.journey-image-viewport{position:relative;max-height:65vh;min-height:180px;overflow:auto;background:#fbfaf5;border:1px solid #c6d1df;scrollbar-color:#849cba #edf1f6;scrollbar-width:thin}
.journey-memory-preview .journey-image-viewport img{width:100%;max-width:none;height:auto;min-height:0;border:0}
.journey-memory-preview[data-zoom-mode=actual] .journey-image-viewport img{width:959px}
.journey-memory-preview[data-zoom-mode=zoom] .journey-image-viewport img{width:1439px}
.journey-image-status{padding:20px;font-size:14px;color:#405878}.journey-image-status[hidden]{display:none}
.journey-image-viewport [data-image-retry]{margin:0 20px 20px;padding:8px;border:1px solid #a9b9cc;background:white;color:#2f4e74;cursor:pointer}
.journey-image-viewport [data-image-retry][hidden]{display:none}
.journey-image-placeholder{padding:32px 16px;background:#fbfaf5;border:1px dashed #a9b9cc;min-height:200px;font-size:14px;color:#405878}
.journey-model-links{display:flex;flex-wrap:wrap;gap:16px;margin:12px 0}
.journey-draft-status{margin:0 14px;color:#835918;font-size:14px;line-height:1.5}.journey-draft-status:empty{display:none}
.journey-review-detail :is(input,textarea){font-size:14px}.journey-review-metadata dd{font-size:12px}
.journey-workbench-tools input:focus-visible,.journey-review-pagination button:focus-visible,.journey-compare-toolbar button:focus-visible{outline:3px solid #adc7fd;outline-offset:2px}
@media(max-width:900px){.journey-workbench-tools{flex-wrap:wrap}.journey-task-states{gap:8px}.journey-memory-body{padding:12px;gap:16px}.journey-memory-preview{gap:10px}.journey-review-detail :is(input,textarea){font-size:16px}}
@media(prefers-reduced-motion:reduce){.journey-review-row{transition:none}}
.journey-metadata-details{border-bottom:1px solid #d1d7df}
.journey-metadata-details>summary{padding:12px 16px;cursor:pointer;font-size:13px;color:#405878}
.journey-review-row-head>.journey-review-status{display:none}
.journey-review-head-badges{flex-wrap:wrap;justify-content:flex-end}
