:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:#172337;background:#f3f6fa;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,select{font:inherit}button,a{cursor:pointer}.loading{padding:4rem;text-align:center;color:#42516a}.login{min-height:100vh;display:grid;place-items:center;padding:1.5rem;background:#0b1220;color:white}.login-card{width:min(440px,100%);padding:2.5rem;background:#fff;color:#172337;border-radius:1rem}.login-card p{color:#536176;line-height:1.7}.button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:42px;padding:.65rem 1rem;border:1px solid #ccd5e1;border-radius:.5rem;background:#fff;color:#172337;font-weight:650;text-decoration:none}.button.primary{border-color:#172337;background:#172337;color:white}.button.danger{border-color:#a32d32;background:#a32d32;color:white}.button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #0872bc;outline-offset:3px}.layout{min-height:100vh;display:grid;grid-template-columns:240px minmax(0,1fr)}.sidebar{position:sticky;top:0;height:100vh;padding:1.4rem 1rem;background:#0b1220;color:#dce6f3}.brand{padding:.6rem .8rem 1.8rem;font-weight:800;letter-spacing:.12em}.brand small{display:block;margin-top:.35rem;color:#aab9cc;font-size:.7rem;letter-spacing:.07em}.nav{display:grid;gap:.35rem}.nav button{padding:.8rem .9rem;border:0;border-radius:.5rem;text-align:left;color:#c8d4e3;background:transparent}.nav button:hover,.nav button[aria-current=page]{color:white;background:#24344c}.sidebar-footer{position:absolute;bottom:1.25rem;left:1rem;right:1rem;color:#aab9cc;font-size:.8rem}.topbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.2rem 2rem;background:white;border-bottom:1px solid #dce3eb}.topbar h1{margin:0;font-size:1.25rem}.content{padding:1.5rem 2rem 3rem;max-width:1500px}.toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:.65rem;margin-bottom:1rem}.toolbar input,.toolbar select,.editor input,.editor select{min-height:40px;padding:.5rem .65rem;border:1px solid #aab7c8;border-radius:.45rem;background:#fff;color:#172337}.grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}.card,.panel{padding:1.15rem;border:1px solid #dce3eb;border-radius:.75rem;background:white;box-shadow:0 2px 9px #1723370a}.metric-label{color:#536176;font-size:.82rem}.metric-value{margin-top:.5rem;font-size:1.65rem;font-weight:750}.metric-hint{margin-top:.25rem;color:#536176;font-size:.8rem}.section-title{margin:1.6rem 0 .75rem;font-size:1rem}.panel{margin-top:1rem}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:.86rem}th,td{padding:.75rem .65rem;border-bottom:1px solid #e3e8ef;text-align:left;vertical-align:middle}th{color:#43516a;font-size:.76rem;letter-spacing:.03em}td{color:#25344a}.muted{color:#536176}.status{display:inline-flex;padding:.22rem .5rem;border-radius:99px;background:#e7edf5;color:#26354a;font-size:.75rem;font-weight:700}.status.pending{background:#fff2cc;color:#674a00}.status.approved,.status.active,.status.success{background:#dff4e6;color:#14532d}.status.rejected,.status.revoked,.status.failed{background:#fde7e7;color:#8a1f25}.status.suspended,.status.degraded{background:#fff0d8;color:#784400}.actions{display:flex;flex-wrap:wrap;gap:.4rem}.actions .button{min-height:34px;padding:.4rem .6rem;font-size:.78rem}.empty,.error{padding:1.25rem;text-align:center;color:#536176}.error{color:#8a1f25}.detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem}.detail{padding:.8rem;border:1px solid #e2e8f0;border-radius:.5rem;overflow-wrap:anywhere}.detail b{display:block;margin-bottom:.35rem;color:#536176;font-size:.75rem}.editor{display:flex;align-items:end;flex-wrap:wrap;gap:.65rem}.editor label{display:grid;gap:.3rem;color:#43516a;font-size:.78rem}.notice{padding:.8rem 1rem;border-left:3px solid #3175a8;background:#eaf3fb;color:#26354a}.health{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.6rem}.health div{padding:.7rem;border:1px solid #e2e8f0;border-radius:.45rem}.health b{display:block;margin-bottom:.35rem}.mobile-menu{display:none}@media(max-width:1000px){.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.layout{grid-template-columns:200px minmax(0,1fr)}.content{padding-inline:1rem}.topbar{padding-inline:1rem}}@media(max-width:700px){.layout{display:block}.sidebar{position:relative;height:auto;padding:.75rem}.brand{padding:.4rem .5rem}.nav{grid-template-columns:repeat(4,minmax(0,1fr));overflow:auto}.nav button{padding:.55rem;font-size:.75rem}.sidebar-footer{display:none}.topbar{align-items:flex-start}.grid,.health,.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.content{padding:.9rem}.topbar h1{font-size:1rem}.topbar .button{min-height:36px;padding:.4rem .6rem;font-size:.8rem}}
.chart-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.usage-chart{display:block;width:100%;height:auto;min-height:120px}.usage-chart text{fill:#43516a;font-size:11px}.chart-grid .panel{min-width:0}@media(max-width:700px){.chart-grid{grid-template-columns:1fr}}
