:root{--bg: #f6f7fb;--card: #fff;--ink: #1c2540;--muted: #5d6785;--line: #dfe3ee;--accent: #2457d6;--ok: #1b7f4b;--warn: #a56a00}@media (prefers-color-scheme: dark){:root{--bg: #11172a;--card: #1a2240;--ink: #e8ecf8;--muted: #9aa5c6;--line: #2b3560;--accent: #6f9bff;--ok: #5bd08c;--warn: #f0b94a}}*{box-sizing:border-box}body{margin:0;font-family:system-ui,Segoe UI,sans-serif;background:var(--bg);color:var(--ink)}header{display:flex;align-items:center;gap:24px;padding:14px 24px;background:var(--card);border-bottom:1px solid var(--line)}header h1{font-size:18px;margin:0}nav button{background:none;border:0;padding:8px 12px;font:inherit;color:var(--muted);cursor:pointer;border-bottom:2px solid transparent}nav button.on{color:var(--ink);border-bottom-color:var(--accent)}main{max-width:1100px;margin:0 auto;padding:24px 16px 64px}.card{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:16px;margin-bottom:16px}.row{display:flex;flex-wrap:wrap;gap:12px;align-items:end}label{display:grid;gap:4px;font-size:13px;color:var(--muted)}input,select,textarea{font:inherit;padding:8px;border:1px solid var(--line);border-radius:6px;background:var(--bg);color:var(--ink);min-width:160px}textarea{min-width:320px}button.primary{background:var(--accent);color:#fff;border:0;border-radius:6px;padding:9px 16px;font:inherit;cursor:pointer}button.link{background:none;border:0;color:var(--accent);cursor:pointer;font:inherit;padding:0}button:disabled{opacity:.5;cursor:default}table{width:100%;border-collapse:collapse;font-size:14px}th,td{text-align:left;padding:8px;border-bottom:1px solid var(--line);vertical-align:top}th{color:var(--muted);font-weight:600}tr.pick{cursor:pointer}tr.pick:hover td{background:var(--bg)}.chip{display:inline-block;padding:2px 8px;border-radius:12px;border:1px solid var(--line);font-size:12px;margin-right:4px}.chip.approved{color:var(--ok);border-color:var(--ok)}.chip.in_review,.chip.changes_required{color:var(--warn);border-color:var(--warn)}.err{color:#c0392b;margin:8px 0}.muted{color:var(--muted)}.grid2{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}@media (max-width: 640px){header{flex-direction:column;align-items:flex-start;gap:8px}input,select,textarea{min-width:0;width:100%}.row>label{width:100%}}
