[hidden]{display:none!important}
:root{font-family:Inter,system-ui,sans-serif;color:#e8eef8;background:#09111f}*{box-sizing:border-box}body{margin:0}.login{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at top,#17345d,#09111f 55%)}.card{width:min(420px,92vw);padding:34px;border:1px solid #263854;border-radius:18px;background:#101c2e;box-shadow:0 24px 80px #0008}.logo{display:grid;place-items:center;width:50px;height:50px;border-radius:14px;background:#3976ff;font-weight:900}.card h1{margin-bottom:6px}.card p,small{color:#91a2bb}.card label{display:grid;gap:7px;margin:18px 0;font-size:13px}input,select,textarea{width:100%;padding:11px;border:1px solid #344760;border-radius:9px;background:#0b1627;color:#eef4ff}button{padding:10px 14px;border:0;border-radius:9px;background:#3976ff;color:white;font-weight:700;cursor:pointer}.error{color:#ff8b9b;margin-top:12px}#portal{min-height:100vh;display:grid;grid-template-columns:230px 1fr}aside{position:sticky;top:0;height:100vh;padding:22px 14px;background:#0d1828;border-right:1px solid #23334a;display:flex;flex-direction:column;gap:7px}aside button{text-align:left;background:transparent;color:#9caec6}aside button:hover{background:#182942;color:white}.brand{font-size:21px;font-weight:900;padding:5px 10px 24px}.brand span{color:#55c7ff}.bottom{margin-top:auto}main{padding:26px 32px}header{display:flex;justify-content:space-between;align-items:center}header h1{margin:4px 0 24px}.grid{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:14px}.panel,.metric{border:1px solid #263954;background:#101d30;border-radius:14px;padding:18px}.metric strong{font-size:30px;display:block;margin-top:8px}.toolbar{display:flex;justify-content:space-between;gap:12px;margin-bottom:14px}.table{width:100%;border-collapse:collapse}.table th,.table td{text-align:left;padding:12px;border-bottom:1px solid #263954;font-size:13px}.pill{padding:4px 8px;border-radius:999px;background:#163d35;color:#73e6bc}.off{background:#48242d;color:#ff9dac}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-grid .wide{grid-column:1/-1}.notice{padding:12px;border-radius:9px;background:#123956;margin-bottom:14px}dialog{max-width:600px;border:1px solid #345070;border-radius:14px;background:#101d30;color:white;padding:24px}dialog textarea{height:110px}@media(max-width:850px){#portal{grid-template-columns:1fr}aside{position:static;height:auto;flex-direction:row;overflow:auto}.brand,.bottom{display:none}main{padding:18px}.grid{grid-template-columns:1fr 1fr}.form-grid{grid-template-columns:1fr}}
