:root{--bg:#0b1020;--panel:#141c30;--line:#29334b;--muted:#9ca9c2;--accent:#6ceac9}*{box-sizing:border-box}body{background:radial-gradient(circle at 90% 0,#172e49 0,transparent 35%),var(--bg);min-height:100vh;color:#eaf0fa;font-family:'DM Sans',sans-serif}.brand,h1,h2,h3,h4{font-family:Outfit,sans-serif}.brand{font-weight:800;letter-spacing:-.5px}.brand span{color:var(--accent)}.shell-nav{background:#101a2bf2;backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}.navbar .nav-link{color:#b5c4d9}.navbar .nav-link.active,.navbar .nav-link:hover{color:var(--accent)}.panel,.metric{background:linear-gradient(150deg,#1b263c,#131b2d);border:1px solid var(--line);border-radius:19px;box-shadow:0 14px 30px #0002}.panel{padding:1.5rem}.metric{padding:1.45rem;min-height:136px}.metric .amount{font-family:Outfit;font-weight:700;font-size:2rem;line-height:1.3}.muted,.text-secondary{color:var(--muted)!important}.kicker{font-size:.8rem;text-transform:uppercase;letter-spacing:1.6px;color:var(--accent);font-weight:700}.btn-primary{background:#37caa9;border-color:#37caa9;color:#091523;font-weight:700}.btn-primary:hover{background:#68e5c6;border-color:#68e5c6;color:#091523}.btn-outline-primary{--bs-btn-color:#6ceac9;--bs-btn-border-color:#46bc9f;--bs-btn-hover-bg:#46bc9f;--bs-btn-hover-border-color:#46bc9f}.table{--bs-table-color:#eaf0fa;--bs-table-bg:transparent;--bs-table-border-color:var(--line)}.table>thead{color:#a9b7ce;text-transform:uppercase;font-size:.8rem;letter-spacing:.5px}.form-label{color:#c1cfe4;font-weight:600}.form-control,.form-select{background-color:#0d1729;border:1px solid #34435e;color:#f2f6ff;min-height:43px}.form-control:focus,.form-select:focus{background:#101e33;color:#fff;border-color:#51d9b6;box-shadow:0 0 0 .2rem #51d9b625}.form-control::placeholder{color:#7e8ca5}.form-select option{background:#0d1729}.badge-soft{background:#194739;color:#95f5d4;border:1px solid #276e56}.badge-used{background:#443721;color:#ffdc9a;border:1px solid #705526}.badge-empty{background:#482735;color:#ffb5ca;border:1px solid #704050}.swatch{width:16px;height:16px;border-radius:50%;border:1px solid #fff5;display:inline-block;vertical-align:middle;margin-right:6px}.footer{color:#7e8da9;font-size:.85rem}.progress{background:#2a3550}.login-wrap{max-width:440px;margin:5vh auto}.card-link{text-decoration:none;color:inherit}.card-link:hover{color:inherit}.table-responsive{border-radius:12px}@media(max-width:768px){.panel{padding:1rem}.metric{min-height:115px;padding:1rem}.metric .amount{font-size:1.6rem}h1{font-size:1.65rem}}