* { box-sizing: border-box; }
body { margin: 0; font-family: system-ui, 'Segoe UI', Arial, sans-serif; background: #f6f5f3; color: #1d1d1f; }
.topbar { display: flex; justify-content: space-between; align-items: center; padding: 14px 22px; background: #fff; border-bottom: 1px solid #e6e2dc; position: sticky; top: 0; z-index: 5; }
.brand { font-weight: 800; font-size: 20px; letter-spacing: .5px; }
.privacy-badge { font-size: 13px; background: #eef7ee; color: #256d2f; border-radius: 999px; padding: 5px 12px; }
.screen { max-width: 1080px; margin: 0 auto; padding: 28px 20px 120px; }
h1 { font-size: 30px; margin: 10px 0; }
h2 { font-size: 24px; } h3 { margin: 4px 0 10px; }
.lead { font-size: 17px; line-height: 1.6; max-width: 760px; }
.muted { color: #6b6b70; font-size: 14px; }
button { font: inherit; cursor: pointer; }
.primary { background: #1d4ed8; color: #fff; border: 0; border-radius: 10px; padding: 10px 18px; font-weight: 700; }
.primary.big { font-size: 18px; padding: 14px 26px; margin: 14px 0; }
.primary:hover { background: #1e40af; }
.mini { border: 1px solid #cfcac2; background: #fff; border-radius: 8px; padding: 5px 12px; }
.mini.on { background: #1d4ed8; color: #fff; border-color: #1d4ed8; }
.hidden { display: none !important; }
.warn { background: #fdecea; color: #9b1c1c; padding: 10px 14px; border-radius: 8px; margin: 10px 0; font-size: 14px; }
.bullets { line-height: 2; margin-top: 18px; }
.bar { background: #e7e3dd; height: 12px; border-radius: 8px; overflow: hidden; margin: 14px 0 8px; }
.bar-fill { background: #1d4ed8; height: 100%; width: 0; transition: width .2s; }
.card { background: #fff; border: 1px solid #e6e2dc; border-radius: 14px; padding: 16px 18px; margin: 16px 0; }
.n-input { width: 110px; font-size: 18px; padding: 6px 10px; }
.face-chips { display: flex; flex-wrap: wrap; gap: 10px; }
.face-chip { width: 108px; border: 2px solid #e2ded8; border-radius: 12px; padding: 6px; text-align: center; cursor: pointer; background: #fff; }
.face-chip.on { border-color: #1d4ed8; background: #eef2ff; }
.face-chip img { width: 84px; height: 84px; object-fit: cover; border-radius: 8px; }
.face-num { font-weight: 700; font-size: 13px; }
.face-meta { font-size: 11px; color: #6b6b70; }
.face-couple { font-size: 11px; color: #9a3412; }
.mode-toggle { display: flex; gap: 8px; margin-bottom: 10px; }
.quota-row { display: grid; grid-template-columns: 1fr 90px 90px; gap: 10px; align-items: center; padding: 8px 0; border-bottom: 1px dashed #eee; }
.quota-name { font-weight: 700; }
.quota-detect { font-size: 12px; color: #6b6b70; }
.quota-input { width: 80px; padding: 5px 8px; font-size: 16px; }
.quota-exact { font-size: 13px; color: #1d4ed8; font-weight: 700; }
.quota-warn { grid-column: 1 / -1; background: #fff7ed; color: #9a3412; border-radius: 8px; padding: 6px 10px; font-size: 13px; }
.quota-total { font-weight: 800; margin-top: 10px; }
.quota-total.bad { color: #b91c1c; }
.split-row { display: flex; gap: 18px; }
.split-row input { width: 70px; }
.tabs { display: flex; gap: 8px; margin: 14px 0; }
.tab-btn { border: 1px solid #cfcac2; background: #fff; padding: 7px 18px; border-radius: 999px; }
.tab-btn.on { background: #1d1d1f; color: #fff; }
.photo-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 10px; }
.ph-card { position: relative; border-radius: 10px; overflow: hidden; cursor: pointer; border: 1px solid #e2ded8; background: #fff; }
.ph-card img { width: 100%; height: 130px; object-fit: cover; display: block; }
.ph-cat { font-size: 11px; padding: 4px 6px; color: #444; }
.ph-score { position: absolute; top: 6px; left: 6px; background: #1d4ed8; color: #fff; border-radius: 999px; font-size: 11px; padding: 2px 8px; font-weight: 700; }
.vid-row { display: flex; gap: 12px; background: #fff; border: 1px solid #e6e2dc; border-radius: 12px; padding: 10px; margin-bottom: 8px; }
.vid-row img { width: 130px; border-radius: 8px; }
.vid-name { font-weight: 700; }
.vid-meta { font-size: 13px; color: #555; }
.vid-reason { font-size: 13px; color: #1d4ed8; }
.search { width: 100%; padding: 10px; font-size: 15px; margin-bottom: 10px; border: 1px solid #d8d3ca; border-radius: 10px; }
.cat-row { display: flex; justify-content: space-between; gap: 10px; padding: 7px 4px; border-bottom: 1px solid #eee; font-size: 13px; }
.cat-row.sel .cat-name { font-weight: 700; color: #1d4ed8; }
.cat-desc { color: #666; }
.panel { position: fixed; inset: 0; background: rgba(0,0,0,.45); display: flex; align-items: center; justify-content: center; z-index: 20; }
.panel-box { background: #fff; border-radius: 16px; padding: 18px; max-width: 560px; width: 92%; max-height: 88vh; overflow: auto; position: relative; }
.pp-img { width: 100%; border-radius: 10px; }
.close { position: absolute; top: 10px; left: 10px; border: 0; background: #eee; border-radius: 999px; width: 30px; height: 30px; }
.alt-row { display: flex; gap: 8px; flex-wrap: wrap; }
.alt-thumb { width: 84px; height: 84px; object-fit: cover; border-radius: 8px; cursor: pointer; border: 2px solid transparent; }
.alt-thumb:hover { border-color: #1d4ed8; }
.sticky-bottom { position: fixed; bottom: 0; right: 0; left: 0; background: #fff; border-top: 1px solid #e6e2dc; padding: 12px; text-align: center; z-index: 6; }
.summary { background: #f0fdf4; border: 1px solid #bbf7d0; border-radius: 12px; padding: 16px; line-height: 2; }
#export-summary .muted { direction: ltr; display: inline-block; }
@media (max-width: 640px) { .quota-row { grid-template-columns: 1fr 70px 70px; } }

/* Keep Chrome/Edge translation from replacing the live interactive DOM. */
.notranslate { translate: no; }
.face-chip { position: relative; color: inherit; font: inherit; appearance: none; }
.face-chip:focus-visible, .primary:focus-visible, input:focus-visible { outline: 3px solid #93c5fd; outline-offset: 2px; }
.face-check { display: none; position: absolute; top: 4px; left: 4px; width: 25px; height: 25px; border-radius: 999px; background: #1d4ed8; color: #fff; align-items: center; justify-content: center; font-weight: 900; z-index: 1; }
.face-chip.on .face-check { display: flex; }
.face-selected-summary { margin: 10px 0 4px; padding: 9px 12px; border-radius: 9px; background: #f3f4f6; font-size: 14px; font-weight: 700; }
.continue-bar { position: sticky; bottom: 0; z-index: 10; display: flex; justify-content: space-between; align-items: center; gap: 16px; padding: 12px 16px; margin: 20px -8px 0; background: rgba(255,255,255,.96); border: 1px solid #dbe3f4; border-radius: 14px; box-shadow: 0 -5px 24px rgba(15,23,42,.10); backdrop-filter: blur(8px); }
.continue-bar > div { display: grid; gap: 2px; }
.continue-bar span { color: #6b6b70; font-size: 13px; }
.continue-bar .primary.big { margin: 0; white-space: nowrap; }
@media (max-width: 640px) {
  .face-chips { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); }
  .face-chip { width: 100%; }
  .continue-bar { flex-direction: column; align-items: stretch; bottom: 8px; }
  .continue-bar .primary.big { width: 100%; }
}

.person-photos { margin-top: 14px; padding-top: 12px; border-top: 1px solid #e5e7eb; }
.person-photo-grid { display: grid; grid-template-columns: repeat(auto-fill,minmax(110px,1fr)); gap: 8px; max-height: 420px; overflow: auto; }
.person-photo-grid img { width: 100%; aspect-ratio: 1; object-fit: cover; border-radius: 9px; }
.dislike { width: 100%; margin: 14px 0 10px; padding: 11px 14px; border: 1px solid #ef4444; color: #b91c1c; background: #fff; border-radius: 10px; font-weight: 800; }
.ai-note { padding: 9px 11px; margin-bottom: 10px; background: #eef6ff; color: #1e3a8a; border-radius: 9px; font-size: 13px; }
.alt-choice { display: grid; gap: 4px; border: 1px solid #dbe3f4; background: #fff; border-radius: 9px; padding: 5px; font: inherit; color: #334155; font-size: 11px; }
.alt-choice:hover, .alt-choice:focus-visible { border-color: #1d4ed8; }

.label-guidance { margin: 10px 0; color: #475569; font-size: 13px; }
.person-label-row { margin-top: 6px; }
.person-label { width: 100%; padding: 6px 7px; border: 1px solid #cbd5e1; border-radius: 7px; font: inherit; font-size: 11px; text-align: right; }
.preference-summary { padding: 9px 11px; margin: 8px 0; background: #f0fdf4; color: #166534; border-radius: 9px; font-size: 13px; }

.learning-consent { max-width: 760px; border-color: #bfdbfe; }
.consent-line { display: flex; align-items: flex-start; gap: 9px; line-height: 1.4; }
.consent-line input { width: 19px; height: 19px; flex: 0 0 auto; }
.link-button { border: 0; background: transparent; color: #1d4ed8; text-decoration: underline; padding: 8px 28px 0 0; }
.terms { margin-top: 10px; padding: 14px; background: #f8fafc; border-radius: 10px; line-height: 1.7; }
.terms ul { padding-right: 20px; }
/* Premium black-and-gold system */
:root { --ink:#070707; --panel:#121212; --panel2:#181818; --gold:#d6b45a; --gold-bright:#f0d58b; --cream:#f7f2e7; --muted-dark:#b9b2a3; --line:#3b3426; }
body { background: radial-gradient(circle at 85% 5%, #211b0e 0, #090909 32%, #050505 100%); color: var(--cream); min-height:100vh; }
.topbar { background: rgba(8,8,8,.94); border-bottom:1px solid #4a3b1d; box-shadow:0 8px 30px rgba(0,0,0,.28); }
.brand { color:var(--gold-bright); letter-spacing:1.2px; }
.privacy-badge { background:#161811; color:#d9e7c9; border:1px solid #354227; }
h1,h2,h3,h4 { color:#fffaf0; letter-spacing:-.02em; }
.lead,.muted,.label-guidance { color:var(--muted-dark); }
.card,.panel-box,.ph-card,.vid-row { background:linear-gradient(160deg,#191919,#101010); border-color:var(--line); box-shadow:0 18px 45px rgba(0,0,0,.22); }
.primary { background:var(--gold); color:#111; box-shadow:0 9px 22px rgba(214,180,90,.16); transition:transform .16s ease, background .16s ease, box-shadow .16s ease; }
.primary:hover { background:var(--gold-bright); transform:translateY(-1px); box-shadow:0 12px 26px rgba(214,180,90,.24); }
.primary:active { transform:translateY(0); }
.mini,.tab-btn,.alt-choice,.face-chip { background:#141414; color:var(--cream); border-color:#50452e; }
.mini.on,.tab-btn.on,.face-chip.on { background:#241f13; color:var(--gold-bright); border-color:var(--gold); }
.face-chip.on { box-shadow:0 0 0 1px rgba(214,180,90,.2),0 10px 24px rgba(0,0,0,.25); }
.face-check,.ph-score { background:var(--gold); color:#111; }
.face-meta,.quota-detect,.cat-desc,.vid-meta,.continue-bar span { color:var(--muted-dark); }
.face-couple,.quota-warn { color:#ffdba1; }
.face-selected-summary,.preference-summary { background:#1c1a14; color:var(--gold-bright); border:1px solid #443a24; }
input,.search,.person-label { background:#0b0b0b; color:#fff; border:1px solid #594b2e; }
input::placeholder { color:#8d8678; }
.quota-row,.cat-row { border-color:#302b21; }
.quota-exact,.link-button,.vid-reason { color:var(--gold-bright); }
.quota-total.bad { color:#ff9d9d; }
.continue-bar,.sticky-bottom { background:rgba(10,10,10,.96); border-color:#4a3b1d; box-shadow:0 -10px 32px rgba(0,0,0,.35); }
.panel { background:rgba(0,0,0,.78); backdrop-filter:blur(8px); }
.close { background:#2a251a; color:var(--gold-bright); }
.dislike { background:#121212; color:#ffb3aa; border-color:#8e3a31; }
.ai-note,.terms { background:#15140f; color:#e7dcc1; border:1px solid #4a402b; }
.learning-consent { border-color:#6d592c; }
.summary { background:#10170f; color:#dcedcf; border-color:#425b38; }
.bullets { color:#e8e0d1; }
.bar { background:#29251c; }.bar-fill { background:linear-gradient(90deg,#9e7d31,var(--gold-bright)); }
.person-photo-grid img,.pp-img,.alt-thumb { border:1px solid #56472b; }
@media (prefers-reduced-motion: reduce) { *,*::before,*::after { transition:none !important; animation:none !important; } }

.coverage-report { margin:14px 0; }
.coverage-report h3 { margin-top:0; }
.coverage-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(165px,1fr)); gap:8px; }
.coverage-item { display:grid; gap:3px; padding:9px 11px; border:1px solid #443a24; border-radius:9px; background:#111; }
.coverage-item span { color:var(--muted-dark); font-size:12px; }
.coverage-people { display:flex; flex-wrap:wrap; gap:7px; margin-top:10px; }
.coverage-person { padding:5px 9px; border-radius:999px; background:#1c1a14; color:var(--gold-bright); border:1px solid #443a24; font-size:12px; }
.coverage-gap { border-color:#8e3a31; color:#ffb3aa; }
.coverage-warning { color:#ffc0b8; margin-bottom:0; }
.coverage-ok { color:#cce7bc; margin-bottom:0; }
@media (max-width:640px) { .coverage-grid { grid-template-columns:1fr 1fr; } }

.review-controls { display:flex; gap:8px; flex-wrap:wrap; margin:10px 0 14px; }
@media(max-width:640px){.review-controls .mini{flex:1 1 100%;}}

.fast-mode { display:grid; grid-template-columns:auto 1fr; align-items:center; gap:4px 9px; max-width:760px; }
.fast-mode span { grid-column:2; color:var(--muted-dark); font-size:12px; }
.storage-estimate { color:#e7dcc1; font-size:13px; padding:12px 14px; }
.compare-panel { margin-top:14px; padding-top:12px; border-top:1px solid #443a24; }
.compare-grid { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.compare-grid figure { margin:0; text-align:center; color:var(--muted-dark); }
.compare-grid img { width:100%; max-height:52vh; object-fit:contain; background:#050505; border:1px solid #56472b; border-radius:10px; }
.compare-actions { display:flex; gap:8px; justify-content:flex-end; margin-top:10px; }
@media(max-width:640px){.compare-grid{grid-template-columns:1fr}.compare-grid img{max-height:31vh}}

.ph-card { padding:0; text-align:inherit; color:inherit; font:inherit; }
.ph-card.reviewed { border-color:var(--gold); box-shadow:0 0 0 1px rgba(214,180,90,.22); }
.ph-card.reviewed::after { content:'✓ נבדקה'; position:absolute; bottom:24px; right:6px; background:#111d; color:var(--gold-bright); border:1px solid var(--gold); padding:2px 6px; border-radius:999px; font-size:10px; }

.role-candidate { display:grid; gap:5px; margin-top:6px; padding:7px; border:1px solid #6d592c; border-radius:8px; background:#1c1a14; font-size:11px; }
.role-candidate.confirmed { border-color:#4f6b3f; color:#dcedcf; }
.role-actions { display:grid; grid-template-columns:1fr 1fr; gap:4px; }
.role-actions .mini { padding:4px; font-size:10px; }

.ph-card.locked { border-color:#82c46c; box-shadow:0 0 0 2px rgba(130,196,108,.2); }
#review-help { font-size:12px; }
@media (forced-colors:active){.ph-card.reviewed,.ph-card.locked,.coverage-gap{outline:2px solid CanvasText}.primary,.mini{border:1px solid ButtonText}}

.selection-modes { display:grid; grid-template-columns:repeat(3,1fr); gap:8px; }
.selection-modes label { display:grid; gap:3px; padding:10px; border:1px solid #50452e; border-radius:10px; background:#111; }
.selection-modes span { color:var(--muted-dark); font-size:11px; }
.timeline-rail { display:flex; gap:6px; overflow-x:auto; padding:8px 0; }
.timeline-stop { flex:1 0 90px; display:grid; gap:3px; text-align:center; padding:8px; border-top:3px solid var(--gold); background:#111; border-radius:5px 5px 9px 9px; }
.timeline-stop span { color:var(--muted-dark); font-size:11px; }
@media(max-width:640px){.selection-modes{grid-template-columns:1fr}.timeline-stop{flex-basis:76px}}

.advanced { max-width:760px; margin:12px auto; }
.advanced summary { cursor:pointer; color:var(--gold-bright); padding:8px 0; font-weight:700; }
.advanced .fast-mode { margin-top:4px; }
.app-nav{display:flex;gap:12px;margin-inline-start:16px}.app-nav a{color:var(--muted-dark);font-size:12px}@media(max-width:640px){.app-nav{display:none}}

.history-controls{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:10px 0}.history-controls .muted{font-size:12px}.history-controls button:disabled{opacity:.42;cursor:not-allowed}@media(max-width:640px){.history-controls button{flex:1}.history-controls .muted{flex:1 0 100%}}

.coverage-decision{margin-top:12px;padding:12px 14px;border:1px solid #b87b37;border-radius:10px;background:#271b0f;color:#f5ddbd}.coverage-decision p{margin:5px 0}.coverage-decision span{font-size:12px;color:#ddc7a9}@media(forced-colors:active){.coverage-decision{outline:2px solid CanvasText}}


/* v1.31 professional guided application shell */
body::before{content:"";position:fixed;inset:0;pointer-events:none;background:linear-gradient(120deg,rgba(214,180,90,.045),transparent 35%),radial-gradient(circle at 15% 75%,rgba(57,104,120,.08),transparent 27%);z-index:-1}.topbar{min-height:64px;padding-inline:clamp(16px,4vw,48px)}.brand{font-size:22px}.flow-nav{position:sticky;top:64px;z-index:4;display:grid;grid-template-columns:repeat(5,minmax(90px,1fr));max-width:1080px;margin:0 auto;padding:10px 20px;background:rgba(7,7,7,.92);border-bottom:1px solid #302819;backdrop-filter:blur(14px)}.flow-nav span{position:relative;display:flex;align-items:center;gap:8px;color:#817c72;font-size:12px}.flow-nav span:not(:last-child)::after{content:"";position:absolute;left:10px;right:calc(100% - 62px);height:1px;background:#393329}.flow-nav b{display:grid;place-items:center;width:25px;height:25px;border:1px solid #4d4538;border-radius:50%;font-size:11px}.flow-nav .on{color:var(--gold-bright);font-weight:800}.flow-nav .on b{background:var(--gold);border-color:var(--gold);color:#111}.flow-nav .done{color:#c8c0b0}.flow-nav .done b{border-color:#788b66;color:#cde5bd}.screen{padding-top:clamp(38px,6vw,74px)}.screen-kicker{display:inline-flex;align-items:center;gap:8px;color:var(--gold-bright);font-size:12px;font-weight:850;letter-spacing:.08em;text-transform:uppercase;margin-bottom:10px}.screen-kicker::before{content:"";width:28px;height:1px;background:var(--gold)}h1{font-size:clamp(38px,6vw,68px);line-height:1.03;max-width:900px;margin:8px 0 18px}h2{font-size:clamp(30px,4vw,48px);line-height:1.1;max-width:820px;margin:6px 0 12px}.lead,.section-lead{max-width:780px;font-size:clamp(16px,2vw,19px);line-height:1.75;color:#c8c0b0}.process-strip,.analysis-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;max-width:920px;margin:26px 0}.process-strip span,.analysis-facts span{display:grid;gap:5px;padding:17px;border:1px solid #3d3526;border-radius:13px;background:linear-gradient(145deg,rgba(29,26,20,.9),rgba(13,13,13,.86));color:#c8c0b0;font-size:13px}.process-strip b,.analysis-facts b{color:var(--gold-bright);font-size:13px}.primary-action{display:flex;align-items:center;gap:18px;margin:22px 0}.primary-action>span{max-width:330px;color:var(--muted-dark);font-size:12px;line-height:1.6}.card{padding:clamp(18px,2.6vw,28px);border-radius:18px}.learning-consent{display:grid;grid-template-columns:1fr auto;align-items:center;gap:14px}.consent-line span{display:grid;gap:4px}.consent-line small{color:var(--muted-dark);font-weight:400}.state-banner{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:13px 16px;margin:16px 0;border:1px solid #4a402b;border-radius:12px;background:#15140f;color:#e7dcc1}.state-banner span{color:var(--muted-dark);font-size:12px}.state-banner.success{border-color:#48613e;background:#11190f;color:#dcedcf}.state-banner.error{display:block;border-color:#84443d;background:#21110f;color:#ffc0b8;line-height:1.6}.bar{height:16px;margin-top:28px}.photo-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:14px}.ph-card{border-radius:14px}.ph-card img{height:160px}.tabs{border-bottom:1px solid #3c3426;padding-bottom:12px}.tab-btn{border-radius:9px}.panel-box{border:1px solid #56472b;box-shadow:0 32px 90px #000}.summary:empty{display:none}
@media(max-width:700px){.topbar{min-height:58px}.privacy-badge{max-width:180px;line-height:1.25}.flow-nav{top:58px;grid-template-columns:repeat(5,1fr);padding:8px 12px;overflow:hidden}.flow-nav span{display:grid;justify-items:center;gap:3px;font-size:9px}.flow-nav span:not(:last-child)::after{display:none}.flow-nav b{width:22px;height:22px}.screen{padding:28px 16px 120px}h1{font-size:38px}.process-strip,.analysis-facts{grid-template-columns:1fr;margin:18px 0}.primary-action{display:grid;gap:5px}.primary-action .primary{width:100%}.learning-consent{grid-template-columns:1fr}.link-button{padding:0}.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.ph-card img{height:135px}.state-banner{align-items:flex-start;flex-direction:column}.app-nav{display:none}}
@media(forced-colors:active){.flow-nav .on b,.state-banner,.process-strip span,.analysis-facts span{outline:1px solid CanvasText}}


/* v1.33 review command center */
.review-dashboard{margin:24px 0 18px;padding:clamp(18px,2.8vw,30px);border:1px solid #4a3d27;border-radius:20px;background:linear-gradient(145deg,#181711,#0d0d0c);box-shadow:0 20px 55px rgba(0,0,0,.22)}
.review-dashboard-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.review-dashboard h3{font-size:clamp(19px,2vw,25px);margin:4px 0;color:#f6f0e4}.eyebrow{font-size:11px;font-weight:850;letter-spacing:.08em;color:var(--gold-bright)}
.readiness-pill{flex:none;padding:8px 12px;border:1px solid #675a3f;border-radius:999px;color:#d8cdaF;background:#211e17;font-size:12px;font-weight:800}.readiness-pill.ready{border-color:#58754c;background:#162013;color:#d9edce}.readiness-pill.attention{border-color:#95664a;background:#271811;color:#ffd1b6}
.review-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:20px 0 14px}.review-metrics span{display:grid;gap:3px;padding:14px;border-inline-start:1px solid #4a402f}.review-metrics b{font-size:25px;color:#fff}.review-metrics small{font-size:11px;color:#918a7e}.review-metrics .needs-attention b{color:#ffb88b}
.review-progress{height:6px;border-radius:99px;background:#343027;overflow:hidden}.review-progress span{display:block;width:0;height:100%;background:linear-gradient(90deg,#7f9d6b,var(--gold-bright));transition:width .28s ease}
.review-filter-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}.review-filter{padding:8px 13px;border:1px solid #4b4336;border-radius:999px;background:#111;color:#aaa297;font-size:12px}.review-filter.on{border-color:var(--gold);background:#2a2419;color:#fff}.review-filter:focus-visible{outline:3px solid #dbc27b;outline-offset:2px}.review-empty{grid-column:1/-1;padding:42px 18px;border:1px dashed #514939;border-radius:14px;text-align:center;color:#aaa297;background:#12110e}
@media(max-width:700px){.review-dashboard-head{display:grid}.readiness-pill{width:max-content}.review-metrics{grid-template-columns:repeat(2,1fr)}.review-metrics span{padding:10px}.review-filter-row{display:grid;grid-template-columns:1fr}.review-filter{width:100%}}
@media(prefers-reduced-motion:reduce){.review-progress span{transition:none}}


/* v1.39 review dialog control and focus */
body.dialog-open{overflow:hidden}.panel-heading{margin:0 42px 14px 0;color:var(--gold-bright)}.panel[role="dialog"]:focus{outline:none}.panel-box{overscroll-behavior:contain}.panel-box button:focus-visible,.alt-choice:focus-visible,.tab-btn:focus-visible,.review-filter:focus-visible{outline:3px solid var(--gold-bright);outline-offset:3px}.close{display:grid;place-items:center;z-index:2}.close:hover{background:var(--gold);color:#111}.pp-img{max-height:54vh;object-fit:contain;background:#050505}@media(max-width:640px){.panel{align-items:flex-end}.panel-box{width:100%;max-height:92svh;border-radius:20px 20px 0 0;padding:18px 16px calc(18px + env(safe-area-inset-bottom))}.pp-img{max-height:37vh}}@media(prefers-reduced-motion:reduce){.panel-box,.pp-img{transition:none!important}}
.aggregate-consent{align-items:start}.aggregate-consent>div{display:flex;gap:8px;flex-wrap:wrap}.aggregate-explain{grid-column:1/-1;padding:14px;border:1px solid var(--line);border-radius:10px;color:var(--muted);line-height:1.7}.aggregate-consent #aggregate-status{grid-column:1/-1}
@media(max-width:640px){.aggregate-consent{grid-template-columns:1fr}.aggregate-consent>div,.aggregate-consent #aggregate-status{grid-column:1}}
.diagnostics-card{margin-top:14px;display:grid;grid-template-columns:1fr auto;gap:16px;align-items:start}.diagnostics-card h3{margin-top:0}.diagnostics-actions{display:flex;gap:8px;flex-wrap:wrap}.diagnostics-output{grid-column:1/-1;margin:0;padding:14px;border:1px solid var(--line);border-radius:10px;background:#090909;color:#d8cfbd;white-space:pre-wrap;font:13px/1.7 ui-monospace,monospace;direction:rtl}@media(max-width:640px){.diagnostics-card{grid-template-columns:1fr}.diagnostics-actions,.diagnostics-output{grid-column:1}}
.export-plan{max-width:760px;margin:22px 0;border-color:var(--gold)}.export-plan h3{margin:5px 0 15px}.export-plan dl{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:0 0 14px}.export-plan dl div{padding:13px;border:1px solid var(--line);border-radius:10px;background:#10100e}.export-plan dt{color:var(--muted);font-size:12px}.export-plan dd{margin:3px 0 0;color:var(--gold-bright);font-size:20px;font-weight:850}.export-plan-actions{display:flex;gap:9px;flex-wrap:wrap}@media(max-width:640px){.export-plan dl{grid-template-columns:repeat(2,1fr)}.export-plan-actions>*{flex:1 1 100%}}
