:root{--ink: #16213e;--ink-2: #4a5572;--paper: #f7f6f2;--surface: #ffffff;--line: #e4e1d8;--navy: #1a1a2e;--navy-2: #232342;--accent: #e94560;--green: #0e9f6e;--amber: #c27803;--red: #d64550;--mono: "DM Mono", ui-monospace, monospace;--sans: "Inter", system-ui, sans-serif;--radius: 10px;--shadow: 0 1px 2px rgba(22, 33, 62, .06), 0 8px 24px rgba(22, 33, 62, .07)}*{box-sizing:border-box}body{margin:0;font-family:var(--sans);background:var(--paper);color:var(--ink);font-size:14px}.layout{display:flex;min-height:100vh}.sidebar{width:224px;background:linear-gradient(180deg,var(--navy) 0%,var(--navy-2) 100%);color:#c9cbe0;padding:20px 12px;display:flex;flex-direction:column;gap:2px;position:sticky;top:0;height:100vh}.logo{font-weight:800;font-size:17px;color:#fff;letter-spacing:-.3px;padding:4px 12px 18px}.logo span{color:var(--accent)}.nav-section{font-size:10px;text-transform:uppercase;letter-spacing:1.2px;color:#6d7194;padding:14px 12px 6px}.sidebar a{color:#c9cbe0;text-decoration:none;padding:8px 12px;border-radius:8px;font-weight:500;transition:background .15s,color .15s}.sidebar a:hover{background:#ffffff0f;color:#fff}.sidebar a.active{background:#e9456029;color:#fff}.company-pill{margin-top:auto;background:#ffffff12;border-radius:8px;padding:10px 12px;font-size:12px;color:#fff}.company-pill small{display:block;color:#8b8fae}.main{flex:1;padding:28px 36px;max-width:1200px}.page-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:20px}h1{font-size:24px;font-weight:800;letter-spacing:-.5px;margin:0}.sub{color:var(--ink-2);margin-top:4px;font-size:13px}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:18px 20px;margin-bottom:16px}.kpi-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;margin-bottom:18px}.kpi{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:16px 18px;box-shadow:var(--shadow)}.kpi .label{font-size:11px;text-transform:uppercase;letter-spacing:1px;color:var(--ink-2)}.kpi .value{font-family:var(--mono);font-size:24px;font-weight:500;margin-top:6px}.kpi.hero{background:var(--navy);border:none;color:#fff}.kpi.hero .label{color:#9ea2c5}.kpi .delta{font-size:12px;margin-top:4px}.good{color:var(--green)}.warn{color:var(--amber)}.bad{color:var(--red)}table.data{width:100%;border-collapse:collapse}table.data th{text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.8px;color:var(--ink-2);padding:8px 10px;border-bottom:2px solid var(--line)}table.data td{padding:9px 10px;border-bottom:1px solid var(--line)}table.data tr:hover td{background:#fbfaf6}td.num,th.num{text-align:right;font-family:var(--mono);white-space:nowrap}td.total{font-weight:700}.btn{background:var(--ink);color:#fff;border:none;border-radius:8px;padding:9px 16px;font-weight:600;font-size:13px;cursor:pointer;font-family:var(--sans);transition:opacity .15s,transform .1s}.btn:hover{opacity:.88}.btn:active{transform:translateY(1px)}.btn.primary{background:var(--accent)}.btn.ghost{background:transparent;color:var(--ink);border:1px solid var(--line)}.btn.sm{padding:5px 10px;font-size:12px}input,select,textarea{font-family:var(--sans);font-size:13px;padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);width:100%}input:focus,select:focus{outline:2px solid rgba(233,69,96,.25);border-color:var(--accent)}label{font-size:12px;font-weight:600;color:var(--ink-2);display:block;margin-bottom:4px}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.row{display:flex;gap:10px;align-items:end;flex-wrap:wrap}.chip{display:inline-block;padding:2px 10px;border-radius:99px;font-size:11px;font-weight:600}.chip.draft{background:#eef0f4;color:var(--ink-2)}.chip.posted{background:#def7ec;color:var(--green)}.chip.void{background:#fde8e8;color:var(--red)}.chip.signed{background:#e1effe;color:#1a56db;margin-left:6px}.modal-bg{position:fixed;top:0;right:0;bottom:0;left:0;background:#16213e73;display:flex;align-items:flex-start;justify-content:center;padding:40px 20px;overflow-y:auto;z-index:50}.modal{background:var(--surface);border-radius:14px;padding:24px;width:720px;max-width:100%;box-shadow:0 24px 64px #00000040}.modal h2{margin:0 0 16px;font-size:18px}.tabs{display:flex;gap:4px;border-bottom:2px solid var(--line);margin-bottom:16px}.tabs button{background:none;border:none;padding:9px 16px;font-weight:600;font-size:13px;color:var(--ink-2);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-2px;font-family:var(--sans)}.tabs button.active{color:var(--ink);border-bottom-color:var(--accent)}.empty{text-align:center;color:var(--ink-2);padding:40px 20px}.muted{color:var(--ink-2);font-size:12px}.progress-track{height:8px;border-radius:99px;background:var(--line);overflow:hidden;margin-top:8px}.progress-fill{height:100%;border-radius:99px;background:var(--green);transition:width .4s}.progress-fill.warn{background:var(--amber)}.progress-fill.bad{background:var(--red)}
