:root{--bg:#f5f6fa;--surface:#fff;--text:#15233b;--muted:#526487;--border:#d8deea;--accent:#1f4fd1;--accent-text:#fff;--warn-bg:#fff4ea;--warn-border:#c07850;--error:#b42318;--ok:#1a7f37;--radius:10px}@media (prefers-color-scheme:dark){:root{--bg:#0f1522;--surface:#172033;--text:#e6ebf5;--muted:#9aa8c7;--border:#2b3753;--accent:#7ea2ff;--accent-text:#0f1522;--warn-bg:#2b2016;--warn-border:#a86a43;--error:#ff8a80;--ok:#6fdc8c}}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);margin:0;font:16px/1.55 system-ui,-apple-system,Segoe UI,sans-serif}a{color:var(--accent)}h1{margin:0 0 8px;font-size:clamp(26px,4vw,36px);line-height:1.2}h2{margin:0 0 12px;font-size:20px}.shell{max-width:960px;margin:0 auto;padding:24px 16px 64px}.narrow{max-width:460px;margin:8vh auto;padding:0 16px}.eyebrow{letter-spacing:.12em;color:var(--muted);text-transform:uppercase;margin:0 0 6px;font-size:12px;font-weight:700}.muted{color:var(--muted)}.topbar{border-bottom:1px solid var(--border);background:var(--surface);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:12px 16px;display:flex}.topbar nav{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.brand{color:var(--text);font-weight:700;text-decoration:none}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);margin:16px 0;padding:20px}.alert{background:var(--warn-bg);border:1px solid var(--warn-border);border-radius:var(--radius);margin:16px 0;padding:14px 16px}.alert p{margin:4px 0 0}.error{color:var(--error);font-weight:600}.success{color:var(--ok);font-weight:600}form.stack{gap:12px;display:grid}label{gap:4px;font-weight:600;display:grid}input,select,textarea{font:inherit;border:1px solid var(--border);background:var(--bg);color:var(--text);border-radius:8px;width:100%;padding:10px 12px}input:focus-visible,select:focus-visible,textarea:focus-visible,button:focus-visible,a:focus-visible{outline:3px solid var(--accent);outline-offset:2px}button,.button{font:inherit;border:1px solid var(--accent);background:var(--accent);color:var(--accent-text);cursor:pointer;border-radius:8px;padding:10px 16px;font-weight:600;text-decoration:none;display:inline-block}button.secondary,.button.secondary{color:var(--accent);background:0 0}button:disabled{opacity:.6;cursor:progress}.row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.table-wrap{overflow-x:auto}.market-col,.market-cell{min-width:240px}table{border-collapse:collapse;width:100%}th,td{text-align:left;border-bottom:1px solid var(--border);vertical-align:top;padding:10px 8px}th{color:var(--muted);font-size:13px;font-weight:600}.badge{border:1px solid var(--border);white-space:nowrap;border-radius:999px;padding:2px 8px;font-size:12px;font-weight:700;display:inline-block}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.params{overflow-wrap:anywhere}.params-list{gap:.25rem;display:grid}.area-cell{min-width:11rem}.codes{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:6px;padding:0;list-style:none;display:grid}.codes li{border:1px dashed var(--border);border-radius:6px;padding:6px 8px}.qr{background:#fff;border-radius:8px;width:220px;height:220px;padding:8px}dl.meta{grid-template-columns:max-content 1fr;gap:6px 16px;margin:0;display:grid}dl.meta dt{color:var(--muted)}dl.meta dd{margin:0}ol.timeline{margin:0;padding-left:18px}ol.timeline li{margin:0 0 8px}.row.spread{justify-content:space-between}input[type=checkbox]{width:auto}.page-text{white-space:pre-wrap;background:var(--bg);border:1px solid var(--border);border-radius:8px;margin:8px 0 0;padding:12px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:14px;overflow-x:auto}.unknown{border:1px dashed var(--warn-border);background:var(--warn-bg);border-radius:8px;margin:8px 0 0;padding:10px 12px}div.stack{gap:8px;display:grid}.badge.conflict{border-color:var(--error);color:var(--error)}.unknown-inline{color:var(--muted);font-style:italic}mark{background:var(--warn-bg);color:var(--text);outline:1px solid var(--warn-border)}ul.row{margin:8px 0;padding:0;list-style:none}.citation{color:var(--muted,inherit);font-size:.85em}.dropzone{border:2px dashed var(--border);text-align:center;color:var(--muted);border-radius:10px;padding:18px}.dropzone.over{border-color:var(--text);color:var(--text)}ol.steps{flex-wrap:wrap;gap:8px 20px;margin:0 0 8px;padding:0;list-style:none;display:flex}ol.steps li[aria-current=step]{font-weight:700}.badge.unknown-badge{border-color:var(--warn-border);background:var(--warn-bg)}ul.compact{margin:2px 0;padding-left:18px}.comparison-table td,.comparison-table th{vertical-align:top;min-width:120px}.print-report h2{break-after:avoid}.print-report section{break-inside:avoid-page}@media print{.topbar,.no-print{display:none!important}body{color:#000;background:#fff}.card{box-shadow:none;border:1px solid #999}a{color:#000;text-decoration:underline}.table-wrap{overflow:visible}.comparison-table{font-size:10px}.market-col,.market-cell{min-width:0}}.contract-rules summary{cursor:pointer;font-weight:600}.chat{gap:12px;display:grid}.chat-msg{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);padding:12px 14px}.chat-msg.advisor{background:var(--bg);margin-left:clamp(0px,8vw,80px)}.chat-msg .chat-text{white-space:pre-wrap;margin:0}.chat-msg h3{margin:12px 0 6px;font-size:15px}.action-card{border:1px solid var(--accent);border-radius:8px;margin:10px 0 0;padding:10px 12px}
