:root{--bg: #f4f6f9;--surface: #ffffff;--ink: #1a2433;--muted: #6b7687;--line: #dfe4ec;--brand: #145da0;--brand-dark: #0c3e6e;--ok: #1e7d46;--warn: #b3261e;--radius: 8px}*{box-sizing:border-box}body{margin:0;font-family:-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;background:var(--bg);color:var(--ink);font-size:14px}.topnav{display:flex;align-items:center;gap:18px;background:var(--brand-dark);color:#fff;padding:0 22px;height:52px;position:sticky;top:0;z-index:10}.topnav .brand{font-weight:700;font-size:17px;letter-spacing:.04em;margin-right:8px}.topnav a{color:#cfe2f5;text-decoration:none;padding:6px 2px;border-bottom:2px solid transparent}.topnav a.active{color:#fff;border-bottom-color:#7db8e8}.topnav .spacer{flex:1}.topnav .who{color:#9fc2e2;font-size:12.5px}main{padding:22px;max-width:1280px;margin:0 auto}h1,h2,h3{margin:0 0 10px}h2{font-size:20px}h3{font-size:15px}.muted{color:var(--muted);font-weight:400;font-size:12.5px}.page-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.actions{display:flex;gap:8px;align-items:center}.cols{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}@media (max-width: 900px){.cols{grid-template-columns:1fr}}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:16px;margin-bottom:16px}.card.ok{border-color:var(--ok);background:#f2faf5}.toolbar{display:flex;gap:8px;margin-bottom:12px;align-items:center;flex-wrap:wrap}.search{flex:0 1 340px}input,select{width:100%;padding:7px 9px;border:1px solid var(--line);border-radius:6px;font:inherit;background:#fff}label{display:flex;flex-direction:column;gap:4px;font-size:12.5px;color:var(--muted)}.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:12px}@media (max-width: 900px){.grid4{grid-template-columns:repeat(2,1fr)}}.btn{padding:7px 14px;border:1px solid var(--line);border-radius:6px;background:#fff;color:var(--ink);font:inherit;cursor:pointer;text-decoration:none;display:inline-block}.btn:hover{border-color:var(--brand);color:var(--brand)}.btn.primary{background:var(--brand);border-color:var(--brand);color:#fff}.btn.primary:hover{background:var(--brand-dark)}.btn.warn{border-color:var(--warn);color:var(--warn);background:#fff}.btn.warn:hover{background:var(--warn);color:#fff}.btn.small{padding:3px 9px;font-size:12.5px}.btn:disabled{opacity:.5;cursor:default}.btn-row{margin-top:12px;display:flex;gap:10px;align-items:center}.tbl{width:100%;border-collapse:collapse;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius)}.tbl th,.tbl td{text-align:left;padding:9px 12px;border-bottom:1px solid var(--line)}.tbl thead th{background:#eef2f7;font-size:12px;text-transform:uppercase;letter-spacing:.03em;color:var(--muted)}.tbl tbody tr:hover{background:#f8fafc}.tbl.compact th,.tbl.compact td{padding:6px 9px;font-size:13px}.tbl a{color:var(--brand);text-decoration:none;font-weight:600}.tbl .empty{color:var(--muted);text-align:center;padding:18px}.scroll-x{overflow-x:auto}.badge{display:inline-block;padding:2px 9px;border-radius:999px;font-size:11.5px;font-weight:600;background:#e8edf4;color:var(--muted);vertical-align:middle}.badge.s-InForce,.badge.q-Bound{background:#def2e5;color:var(--ok)}.badge.s-Cancelled{background:#fbe4e2;color:var(--warn)}.badge.s-Draft,.badge.q-Draft{background:#eef2f7;color:var(--muted)}.badge.s-Expired{background:#f3e9d9;color:#8a6d1d}.badge.q-Rated{background:#dceafa;color:var(--brand)}.badge.q-Discarded{background:#f0f0f0;color:#999}.neg{color:var(--warn)}.error{color:var(--warn);font-size:13px}.ok-text{color:var(--ok)}.hint{color:var(--muted);font-size:12px;text-align:center;margin-top:14px}.stats{display:flex;gap:26px;margin:10px 0}.stats .k{display:block;font-size:11.5px;text-transform:uppercase;color:var(--muted)}.stats .v{font-size:19px;font-weight:700}.login-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(160deg,var(--brand-dark),var(--brand))}.login-card{background:#fff;border-radius:12px;padding:34px 38px;width:360px;box-shadow:0 18px 50px #00000047}.login-card h1{text-align:center;color:var(--brand-dark);margin-bottom:2px}.login-card .sub{text-align:center;color:var(--muted);margin:0 0 20px;font-size:13px}.login-card form{display:flex;flex-direction:column;gap:12px}code{background:#eef2f7;padding:1px 5px;border-radius:4px;font-size:12.5px}
