:root{--bg:#f3f5f8;--ink:#162a3e;--muted:#63768a;--blue:#1759a7;--border:#dce4ec;--red:#a92d39;--green:#146856;--amber:#8a590b}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:14px/1.5 system-ui,Segoe UI,sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.5;cursor:default}button,.button{border:1px solid var(--border);border-radius:8px;padding:9px 13px;background:white;color:var(--ink)}button:hover{border-color:var(--blue);color:var(--blue)}button.primary{background:var(--blue);color:white;border-color:var(--blue)}button.danger{color:var(--red)}input,select,textarea{padding:10px;border:1px solid #bac8d6;border-radius:7px;background:white;max-width:100%}textarea{width:100%;min-height:90px}input:focus,button:focus,select:focus,textarea:focus{outline:2px solid #85b5ed;outline-offset:2px}
.layout{display:grid;grid-template-columns:230px 1fr;min-height:100vh}aside{background:#102b47;color:#c4d5e7;padding:28px 20px;position:sticky;top:0;height:100vh}.brand{font-size:26px;letter-spacing:-1px;font-weight:750;color:white}.brand span{color:#7dc1ff}.brand small{display:block;font-size:10px;letter-spacing:2px;margin-top:6px;color:#b5cee6}.nav{display:grid;gap:8px;margin:38px 0}.nav button{text-align:left;background:transparent;color:#d0e0ef;border:0;padding:13px}.nav button.active{background:#234967;color:white}.sidefoot{font-size:12px;color:#acc1d5;margin-top:35px}.sidefoot strong{color:white}main{padding:30px 38px;min-width:0;max-width:1800px;width:100%;margin:auto}.top{display:flex;justify-content:space-between;align-items:center;gap:20px}.eyebrow{color:var(--blue);font-size:11px;font-weight:750;letter-spacing:1.5px;text-transform:uppercase}h1{font-size:30px;letter-spacing:-1px;margin:5px 0}h2{font-size:19px;margin:0 0 8px}h3{font-size:15px;margin:0 0 7px}p{margin:8px 0 16px}.muted{color:var(--muted)}.notice{border:1px solid #e7cc91;background:#fff8e8;padding:12px 16px;border-radius:9px;margin:20px 0;color:#795716}.notice.info{background:#eaf2fc;border-color:#c3d9f0;color:#295179}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:22px 0}.card{background:white;border:1px solid var(--border);border-radius:12px;padding:20px;box-shadow:0 2px 4px #132c4410}.card .value{font-size:28px;font-weight:750;letter-spacing:-.8px;margin:8px 0}.card .label{font-size:12px;color:var(--muted)}.card.red{border-top:3px solid var(--red)}.card.blue{border-top:3px solid var(--blue)}.card.amber{border-top:3px solid #c48d25}.card.green{border-top:3px solid var(--green)}.row{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.between{justify-content:space-between}.panel{background:white;border:1px solid var(--border);border-radius:12px;margin:18px 0;padding:22px}.tablewrap{overflow:auto;margin-top:15px}table{width:100%;border-collapse:collapse;font-size:12px}th{text-align:left;padding:12px 10px;color:var(--muted);border-bottom:2px solid var(--border);white-space:nowrap;font-size:10px;letter-spacing:.6px;text-transform:uppercase}td{padding:12px 10px;border-bottom:1px solid #edf0f4;vertical-align:top}tbody tr:hover{background:#f7faff}.num{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.tag{display:inline-block;border-radius:5px;padding:3px 7px;font-size:10px;background:#edf2f8;color:#47627e;margin:2px 3px 2px 0;font-weight:650}.tag.red{background:#fbe9eb;color:var(--red)}.tag.green{background:#e4f3ed;color:var(--green)}.tag.amber{background:#fff1d4;color:var(--amber)}.split{display:grid;grid-template-columns:1.15fr 1fr;gap:20px}.empty{padding:35px;text-align:center;color:var(--muted)}label{display:block;font-size:12px;color:var(--muted);margin:12px 0 5px}label input,label select{display:block;width:100%;margin-top:5px}.check{display:flex;gap:10px;align-items:flex-start}.check input{width:auto;margin-top:5px}dialog{border:1px solid var(--border);border-radius:14px;width:min(900px,94vw);padding:26px;max-height:90vh;overflow:auto;box-shadow:0 20px 80px #102b4740}dialog::backdrop{background:#102b4770}.history{border-left:2px solid #dbe5ef;padding-left:16px;margin:15px 0}.history p{font-size:12px;margin:6px 0}.error{color:var(--red);background:#fcecee;padding:12px;border-radius:8px;margin:10px 0}.success{color:var(--green);padding:10px;background:#e5f4ed;border-radius:8px}.login{max-width:430px;margin:10vh auto}.login .brand{color:var(--blue)}.subtitle{max-width:760px}.small{font-size:12px}.footer{font-size:11px;color:var(--muted);margin-top:24px}.tablebutton{padding:5px 9px;font-size:12px}.progress{height:6px;background:#edf2f7;border-radius:5px;overflow:hidden;margin:9px 0}.progress span{display:block;background:var(--blue);height:100%}
@media(max-width:1100px){.cards{grid-template-columns:repeat(2,1fr)}main{padding:24px}.layout{grid-template-columns:190px 1fr}.split{grid-template-columns:1fr}}
@media(max-width:700px){.layout{display:block}aside{position:static;height:auto;padding:16px}.nav{display:flex;overflow:auto;margin:14px 0 0}.nav button{white-space:nowrap}.sidefoot{display:none}main{padding:18px}.top{align-items:flex-start;flex-direction:column}.cards{gap:9px}.card{padding:14px}.card .value{font-size:21px}h1{font-size:25px}.panel{padding:15px}}
