:root{--review-paper:#f4ead7;--review-panel:#fbf3e4;--review-ivory:#fff8eb;--review-sand:#ead8b9;--review-ink:#111;--review-dark:#3b332b;--review-brand:#123967;--review-stone:#706b61;--review-border:#dfc89e;--review-border-soft:#ead7b6;--review-code:#eadcc4;--review-keep:#dfead4;--review-keep-line:#5c733d;--review-fix:#ead5c7;--review-fix-line:#9a5636;--review-discard:#e6e1d4;--review-discard-line:#7d7565}.review-page{background:var(--review-paper);color:var(--review-ink);font-family:var(--font-cormorant),Charter,Georgia,serif;max-width:1180px;min-height:100vh;margin:0 auto;padding:70px 44px}.review-kicker{color:var(--review-brand);letter-spacing:.08em;text-transform:uppercase;font-size:13px;font-weight:600}.review-page h1{color:var(--review-ink);letter-spacing:0;margin:22px 0 18px;font-size:50px;font-weight:500;line-height:1.05}.review-intro{color:var(--review-dark);max-width:900px;font-size:20px;line-height:1.45}.orientation-panel,.status-panel,.sync-plan{border:1px solid var(--review-border);background:#fff8eb94;border-radius:12px;margin:28px 0;padding:16px 18px}.orientation-panel{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.orientation-panel p,.sync-plan p{color:var(--review-dark);margin:0;font-size:15px;line-height:1.45}.metrics{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;display:grid}.metric{background:var(--review-sand);border-radius:8px;padding:12px 16px}.metric-value{color:var(--review-brand);font-size:26px;line-height:1;display:block}.metric-label{color:var(--review-dark);margin-top:6px;font-size:13px;display:block}.controls{flex-wrap:wrap;gap:8px;margin-top:16px;display:flex}.controls button,.status-button,.action-copy,.related-chip,.route-chip{border:1px solid var(--review-border);cursor:pointer}.controls button,.action-copy{background:var(--review-ivory);color:var(--review-brand);border-radius:8px;padding:7px 12px}.controls button.active{background:var(--review-brand);border-color:var(--review-brand);color:var(--review-ivory)}.sync-line{color:var(--review-stone);margin:12px 0 0;font-size:13px}.sync-line.error{color:var(--review-fix-line)}.review-category{margin:28px 0}.category-head{justify-content:space-between;align-items:flex-end;gap:16px;margin:0 0 10px;display:flex}.category-head h2{border-left:4px solid var(--review-brand);color:var(--review-ink);margin:0;padding-left:14px;font-size:28px;font-weight:500}.category-head p{color:var(--review-stone);margin:6px 0 0;font-size:15px}.category-count{color:var(--review-stone);white-space:nowrap;font-size:14px}.review-list{flex-direction:column;gap:14px;display:flex}.review-item{background:var(--review-ivory);border:1px solid var(--review-border);border-radius:12px;overflow:hidden;box-shadow:0 1px #12396714}.review-item.expanded{border-color:#b68b54;box-shadow:0 0 0 2px #b68b542e,0 10px 28px #36291614}.review-item.keep{background:var(--review-keep);border-color:var(--review-keep-line)}.review-item.fix{background:var(--review-fix);border-color:var(--review-fix-line)}.review-item.discard{background:var(--review-discard);border-color:var(--review-discard-line);opacity:.74}.review-item.discard .decision-text{text-decoration:line-through;-webkit-text-decoration-color:var(--review-discard-line);text-decoration-color:var(--review-discard-line);text-decoration-thickness:1px}.item-row{cursor:pointer;grid-template-columns:120px 88px 170px minmax(280px,1fr) minmax(220px,320px);align-items:center;gap:12px;padding:14px 16px;display:grid}.status-button{color:var(--review-dark);background:#f9f0df;border-color:#c9a978;border-radius:8px;justify-content:flex-start;align-items:center;gap:8px;min-width:104px;padding:8px 10px;display:inline-flex}.status-box{background:var(--review-ivory);border:1px solid var(--review-stone);border-radius:4px;flex:0 0 20px;justify-content:center;align-items:center;height:20px;font-family:JetBrains Mono,SF Mono,Consolas,monospace;font-size:14px;font-weight:700;line-height:1;display:inline-flex}.review-item.keep .status-button{background:var(--review-keep-line);border-color:var(--review-keep-line);color:var(--review-ivory)}.review-item.fix .status-button{background:var(--review-fix-line);border-color:var(--review-fix-line);color:var(--review-ivory)}.review-item.discard .status-button{background:var(--review-discard-line);border-color:var(--review-discard-line);color:var(--review-ivory)}.review-item.keep .status-box,.review-item.fix .status-box,.review-item.discard .status-box{border-color:var(--review-ivory);color:var(--review-ink)}.priority{color:var(--review-brand);line-height:1.1}.review-id{font-family:JetBrains Mono,SF Mono,Consolas,monospace;font-size:13px;font-weight:700;display:block}.priority-level{color:var(--review-stone);margin-top:2px;font-size:12px;display:block}.category-pill{border:1px solid var(--review-border);color:var(--review-brand);text-align:center;background:#efe4d2;border-radius:999px;padding:5px 8px;font-size:13px}.row-toggle{box-shadow:none;color:inherit;cursor:pointer;text-align:left;background:0 0;border:0;padding:2px 0}.row-toggle:hover{text-decoration:underline;-webkit-text-decoration-color:var(--review-border);text-decoration-color:var(--review-border)}.decision-text{color:var(--review-ink);font-size:19px;line-height:1.25}.linked-badge{border:1px solid var(--review-border);color:var(--review-stone);white-space:nowrap;background:#efe4d2;border-radius:999px;margin-left:8px;padding:2px 7px;font-size:12px;display:inline-block}.branch{background:var(--review-code);color:var(--review-brand);overflow-wrap:anywhere;text-align:right;white-space:normal;border-radius:4px;justify-self:end;max-width:320px;padding:3px 6px;font-family:JetBrains Mono,SF Mono,Consolas,monospace;font-size:12px}.details{background:#ead8c4;border-top:2px solid #c59d69;gap:16px;padding:18px 20px 20px;display:grid}.review-frame{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:0;display:grid}.review-block,.action-row,.relationship-row,.shot-slot,.note-row{background:#fff7e7;border:2px solid #dec49a;border-radius:10px;padding:14px;box-shadow:inset 0 1px #ffffff9e}.review-label{color:var(--review-brand);letter-spacing:.04em;text-transform:uppercase;margin-bottom:5px;font-size:12px;font-weight:600;display:block}.review-block p{color:var(--review-dark);margin:0;font-size:17px;line-height:1.4}.action-row,.relationship-row,.shot-slot,.evidence-grid{margin:0}.recipe-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:8px 0 10px;display:grid}.recipe-step{grid-template-columns:28px minmax(0,1fr);align-items:start;gap:8px;display:grid}.recipe-step strong{border:1px solid var(--review-border);color:var(--review-brand);background:#efe4d2;border-radius:999px;justify-content:center;width:24px;height:24px;line-height:24px;display:inline-flex}.recipe-step p{margin:2px 0 0;font-size:14px;line-height:1.35}.preview-status{border:1px solid var(--review-border);border-radius:999px;margin:4px 0 8px;padding:3px 8px;font-size:12px;display:inline-block}.preview-status.ready{background:var(--review-keep);border-color:var(--review-keep-line);color:#273b1e}.preview-status.failed{background:var(--review-fix);border-color:var(--review-fix-line);color:#65321e}.preview-status.local{color:var(--review-brand);background:#efe4d2}.preview-status.pending{color:var(--review-stone);background:#f9f0df}.preview-status.mixed{color:#6a4b09;background:#f3e6c7;border-color:#d7b46f}.action-grid{grid-template-columns:minmax(0,1fr) 220px;align-items:start;gap:12px;display:grid}.review-spaces{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.review-space{background:#fff9ec;border:1px solid #dec49a;border-radius:8px;margin-top:0;padding:10px}.source-space{grid-column:1/-1}.source-space summary{cursor:pointer;list-style-position:inside}.source-space summary .review-label{display:inline}.route-list,.related-list{flex-wrap:wrap;gap:7px;margin-top:6px;display:flex}.route-chip,.related-chip{color:var(--review-brand);background:#efe4d2;border-radius:8px;padding:5px 8px;text-decoration:none}.route-chip:hover,.related-chip:hover{box-shadow:0 0 0 1px var(--review-brand)}.space-link{color:var(--review-brand);margin-top:6px;display:inline-block}.action-copy{width:100%}.meta{color:var(--review-stone);margin:5px 0;font-size:13px;line-height:1.35}.shot-slot{color:var(--review-stone);border-style:dashed}.evidence-grid{background:#fff7e7;border:2px solid #dec49a;border-radius:10px;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:14px;display:grid}.evidence-card{background:#efe0c8;border:1px solid #c59d69;border-radius:8px;margin:0;overflow:hidden}.evidence-card a{color:inherit;text-decoration:none}.evidence-card img{aspect-ratio:4/3;border-bottom:1px solid var(--review-border-soft);object-fit:cover;object-position:top;background:#efe4d2;width:100%;display:block}.evidence-caption{color:var(--review-brand);padding:8px;font-size:13px;line-height:1.3}.note-row{grid-template-columns:1fr 180px;align-items:start;gap:12px;display:grid}.note-row textarea,.note-row select{border:1px solid var(--review-border);color:var(--review-ink);background:#fffbf2;border-radius:8px;margin-top:0;padding:10px 12px}.note-row textarea{resize:vertical;width:100%;min-height:82px}.note-row textarea:focus,.note-row select:focus,button:focus-visible,a:focus-visible{outline-offset:2px;outline:2px solid #d7c59f}@media (max-width:980px){.orientation-panel,.review-frame,.action-grid,.recipe-list,.review-spaces{grid-template-columns:1fr}.item-row{grid-template-columns:120px 88px minmax(160px,1fr);align-items:start}.row-toggle{grid-column:1/-1}.category-pill,.branch{justify-self:start}.branch{text-align:left;max-width:100%}.evidence-grid{grid-template-columns:1fr 1fr}}@media (max-width:720px){.review-page{padding:40px 20px}.review-page h1{font-size:36px}.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.category-head{flex-direction:column;align-items:start}.item-row,.note-row,.evidence-grid{grid-template-columns:1fr}}
