:root { color-scheme: light; --ink:#14221c; --muted:#637068; --line:#d8ddd9; --paper:#fff; --canvas:#f4f1e9; --accent:#b8860b; --danger:#9b1c1c; }
* { box-sizing:border-box; }
body { margin:0; background:var(--canvas); color:var(--ink); font:16px/1.5 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
button,input,textarea { font:inherit; }
.shell-header { min-height:64px; padding:12px 24px; display:flex; justify-content:space-between; align-items:center; background:var(--ink); color:white; }
.brand { color:white; text-decoration:none; font-weight:700; }
.text-button { border:0; background:none; color:inherit; text-decoration:underline; cursor:pointer; }
main { max-width:1500px; margin:auto; padding:24px; }
h1,h2,h3 { line-height:1.15; }
.queue { width:100%; border-collapse:collapse; background:var(--paper); }
.queue th,.queue td { padding:12px; border-bottom:1px solid var(--line); text-align:left; }
.queue a { color:var(--ink); font-weight:700; }
.badge { display:inline-block; padding:3px 8px; border-radius:99px; background:#e4e8e5; font-size:.82rem; }
.overdue { color:var(--danger); font-weight:700; }
.review-grid { display:grid; grid-template-columns:minmax(300px,.8fr) minmax(420px,1.2fr); gap:20px; align-items:start; }
.panel { background:var(--paper); border:1px solid var(--line); border-radius:8px; padding:20px; }
.evidence { position:sticky; top:20px; max-height:calc(100vh - 40px); overflow:auto; }
.answer { border-top:1px solid var(--line); padding:12px 0; white-space:pre-wrap; }
.field { margin:0 0 18px; }
.field label { display:block; font-weight:700; margin-bottom:6px; }
.field textarea,.field input { display:block; width:100%; padding:10px; border:1px solid #aeb7b1; border-radius:4px; background:white; }
.field textarea { min-height:110px; resize:vertical; }
.priority { padding:12px; border:1px solid var(--line); margin-bottom:10px; }
.preview { white-space:pre-wrap; border-left:4px solid var(--accent); padding-left:18px; }
.actions { display:flex; flex-wrap:wrap; align-items:end; gap:12px; border-top:1px solid var(--line); padding-top:16px; }
.button { border:1px solid var(--ink); border-radius:4px; padding:9px 14px; background:var(--ink); color:white; cursor:pointer; }
.button.secondary { background:white; color:var(--ink); }
.button.danger { background:var(--danger); border-color:var(--danger); }
.save-state { color:var(--muted); min-height:24px; }
.comparison { padding:10px; background:#f6f7f6; margin-bottom:10px; }
#status { position:fixed; right:16px; bottom:16px; max-width:400px; background:var(--ink); color:white; padding:10px 14px; border-radius:4px; opacity:0; pointer-events:none; transition:opacity .2s; }
#status.visible { opacity:1; }
@media (max-width:850px) { .review-grid { grid-template-columns:1fr; } .evidence { position:static; max-height:none; } main { padding:14px; } .queue thead { display:none; } .queue tr,.queue td { display:block; } }
