:root{--navy:#1c2b58;--navy-deep:#0c204a;--navy-700:#244c9c;--navy-500:#3f5a91;--navy-300:#9dabcb;--mint:#a5e3cd;--mint-deep:#1ab8a5;--amber:#ffc700;--amber-deep:#9c7300;--blood:#8a141c;--blood-deep:#5e0a10;--paper:#fff;--bone:#f6f6f6;--line:#dde1ea;--ink:#0c204a;--ink-2:#5a6272;--ink-3:#7886a4;--surface:var(--paper);--surface-sunken:var(--bone);--text:var(--ink);--text-muted:var(--ink-2);--text-subtle:var(--ink-3);--border:var(--line);--accent:var(--mint-deep);--accent-soft:var(--mint);--header-bg:var(--navy);--brand-primary:var(--mint);--brand-primary-hover:var(--mint-deep);--font-sans:"Plus Jakarta Sans", "Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, Menlo, monospace;--fs-eyebrow:10.5px;--fs-meta-xs:11.5px;--fs-meta-sm:12.5px;--fs-meta:13.5px;--fs-base-sm:14.5px;--ls-tracked:.16em;--ls-tracked-md:.18em;--ls-tracked-lg:.22em;--radius-sm:.375rem;--radius:.5rem;--radius-lg:.75rem;--radius-xl:1rem;--radius-pill:50rem;--shadow:0 10px 24px #0c204a14;--shadow-lg:0 18px 40px #0c204a1f}*{box-sizing:border-box}body{font-family:var(--font-sans);color:var(--text);background:var(--surface-sunken);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0}h1,h2,h3{letter-spacing:-.01em;margin:0}.eyebrow{font-size:var(--fs-eyebrow);letter-spacing:var(--ls-tracked-lg);text-transform:uppercase;color:var(--accent);font-weight:700}.app-header{background:var(--header-bg);color:var(--paper);flex-wrap:wrap;align-items:center;gap:20px;padding:18px 28px;display:flex}.app-header h1{font-size:20px;font-weight:800}.app-header .sub{color:var(--navy-300);font-size:var(--fs-meta)}.app-header .spacer{flex:1}.user-chip{border-radius:var(--radius-pill);font-size:var(--fs-meta);background:#ffffff14;border:1px solid #a5e3cd59;align-items:center;gap:10px;padding:6px 8px 6px 14px;display:flex}.user-chip .role{background:var(--brand-primary);color:var(--navy);border-radius:var(--radius-pill);font-size:var(--fs-meta-xs);letter-spacing:.04em;padding:3px 10px;font-weight:700}.page{max-width:1480px;margin:0 auto;padding:28px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow);margin-bottom:22px;padding:22px 24px}.card>header{margin-bottom:18px}.card h2{margin-top:4px;font-size:16px;font-weight:800}.tiles{flex-wrap:wrap;gap:16px;display:flex}.tile{background:var(--surface);border:1px solid var(--border);border-left:4px solid var(--accent);border-radius:var(--radius);flex:180px;padding:16px 18px}.tile .label{font-size:var(--fs-meta-xs);text-transform:uppercase;letter-spacing:var(--ls-tracked);color:var(--text-muted);font-weight:700}.tile .value{color:var(--navy);font-variant-numeric:tabular-nums;margin-top:4px;font-size:28px;font-weight:800}.pill-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.pill{border:1px solid var(--border);background:var(--surface);color:var(--text-muted);border-radius:var(--radius-pill);font-size:var(--fs-meta);cursor:pointer;padding:7px 15px;font-weight:600;transition:all .12s}.pill:hover{border-color:var(--accent);color:var(--navy)}.pill.active{background:var(--navy);border-color:var(--navy);color:var(--paper)}.pill.locked{opacity:.75;cursor:not-allowed}.pill .idx{color:var(--brand-primary);margin-right:6px;font-weight:800;display:inline-block}.table-wrap{overflow-x:auto}table.data{border-collapse:collapse;width:100%;font-size:var(--fs-base-sm)}table.data th{text-align:left;font-size:var(--fs-meta-xs);text-transform:uppercase;letter-spacing:var(--ls-tracked);color:var(--text-muted);border-bottom:2px solid var(--border);white-space:nowrap;padding:10px 12px}table.data td{border-bottom:1px solid var(--border);font-variant-numeric:tabular-nums;padding:10px 12px}table.data tbody tr:hover{background:var(--surface-sunken)}table.data td.num,table.data th.num{text-align:right}.btn{font-family:inherit;font-weight:700;font-size:var(--fs-meta);border-radius:var(--radius);cursor:pointer;border:1px solid #0000;padding:11px 22px}.btn-primary-gap{background:var(--brand-primary);color:var(--navy);box-shadow:0 8px 24px -8px #1ab8a573}.btn-primary-gap:hover{background:var(--brand-primary-hover);color:var(--paper)}.btn-ghost{border-color:var(--border);color:var(--text-muted);background:0 0}.muted{color:var(--text-muted);font-size:var(--fs-meta)}.center{text-align:center;place-items:center;min-height:100vh;display:grid}.banner{border:1px solid var(--amber);color:var(--amber-deep);border-radius:var(--radius);font-size:var(--fs-meta);background:#ffc7001f;margin-bottom:18px;padding:10px 16px;font-weight:600}.field-label{font-size:var(--fs-meta-xs);text-transform:uppercase;letter-spacing:var(--ls-tracked-sm,.14em);color:var(--text-muted);margin-bottom:6px;font-weight:700}input[type=text],input[type=number],select,textarea,input:not([type]){width:100%;font-family:inherit;font-size:var(--fs-base-sm);color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);padding:9px 12px}input:focus,select:focus,textarea:focus{outline:2px solid var(--accent);outline-offset:1px;border-color:var(--accent)}textarea{resize:vertical}.btn:disabled{opacity:.5;cursor:not-allowed}
