:root{--carbon:#15191d;--paper:#f3f0e7;--orange:#e65f2b;--green:#247a5a;--steel:#66727e;--line:#d7d2c7;--white:#fffdf8;--danger:#a43827}
*{box-sizing:border-box}html{font-family:"IBM Plex Sans","Noto Sans SC",sans-serif;color:var(--carbon);background:var(--paper)}body{margin:0}.icon{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.rail{position:fixed;inset:0 auto 0 0;width:220px;background:var(--carbon);color:var(--paper);padding:24px 16px;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:10px;margin:0 8px 30px}.brand-mark{display:grid;place-items:center;width:34px;height:34px;background:var(--orange);color:white;font:700 13px "IBM Plex Mono",monospace}.brand-mark.large{width:56px;height:56px;font-size:18px}.rail nav{display:grid;gap:5px}.nav-item{display:flex;align-items:center;gap:12px;color:#cbd0d3;text-decoration:none;padding:11px 12px;border-left:3px solid transparent}.nav-item:hover,.nav-item.active{background:#20272c;color:white;border-left-color:var(--orange)}.rail-user{margin-top:auto;border-top:1px solid #343b40;padding:18px 10px 0;display:grid;gap:3px}.rail-user small{color:#929ca3}.text-button{border:0;background:none;color:#cbd0d3;padding:12px 0;display:flex;align-items:center;gap:8px;cursor:pointer}.workspace{margin-left:220px;min-height:100vh;padding:0 32px 50px}.status-strip{height:38px;margin:0 -32px;padding:0 32px;display:flex;align-items:center;gap:9px;background:#e6e1d7;border-bottom:1px solid var(--line);font-size:12px;color:var(--steel)}.status-dot{width:7px;height:7px;border-radius:50%;background:var(--green)}.status-time{margin-left:auto}.page-head{display:flex;align-items:end;justify-content:space-between;padding:32px 0 20px;border-bottom:1px solid var(--line)}.eyebrow{font:600 11px "IBM Plex Mono",monospace;letter-spacing:.13em;color:var(--orange);margin:0 0 7px}.page-head h1{font-size:31px;line-height:1;margin:0}.grid{display:grid;gap:16px}.metrics{grid-template-columns:repeat(4,minmax(0,1fr));padding:22px 0}.metric{background:var(--white);border-top:3px solid var(--carbon);padding:18px}.metric strong{display:block;font:600 28px "IBM Plex Mono",monospace;margin-top:12px}.metric span{font-size:13px;color:var(--steel)}.metric.warning{border-color:var(--orange)}.panel{background:var(--white);border:1px solid var(--line);margin-top:18px}.panel-head{padding:15px 18px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}.panel-head h2{font-size:16px;margin:0}.panel-body{padding:18px}.split{display:grid;grid-template-columns:2fr 1fr;gap:18px}.toolbar{display:flex;gap:10px;align-items:end;padding:16px 0}.toolbar label,.form-grid label,.login-form label{display:grid;gap:6px;font-size:12px;color:var(--steel)}input,select,textarea{font:inherit;color:var(--carbon);background:white;border:1px solid #b8b5ad;padding:9px 10px;min-height:38px}textarea{min-height:90px;resize:vertical}button,.button{font:600 13px "IBM Plex Sans","Noto Sans SC",sans-serif;border:1px solid var(--carbon);background:transparent;padding:9px 13px;color:var(--carbon);cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:7px}.primary{background:var(--orange);border-color:var(--orange);color:white}.danger{border-color:var(--danger);color:var(--danger)}button:disabled{opacity:.45;cursor:not-allowed}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:13px}th,td{text-align:left;border-bottom:1px solid var(--line);padding:12px 14px;vertical-align:top}th{font:600 11px "IBM Plex Mono",monospace;letter-spacing:.04em;color:var(--steel);background:#ece8de;position:sticky;top:0}.mono{font-family:"IBM Plex Mono",monospace;font-size:12px}.badge{display:inline-flex;padding:3px 7px;border:1px solid var(--line);font:600 11px "IBM Plex Mono",monospace}.badge.ok{color:var(--green);border-color:#8eb9a8}.badge.warn{color:#a34c27;border-color:#dfa68d}.actions{display:flex;flex-wrap:wrap;gap:6px}.actions form{margin:0}.actions button{padding:5px 8px;font-size:11px}.empty{padding:45px;text-align:center;color:var(--steel)}.pagination{display:flex;justify-content:flex-end;align-items:center;gap:14px;padding:16px}.page-link{color:var(--carbon);text-decoration:none;border-bottom:1px solid}.page-link.disabled{opacity:.4;border:0}.notice,.form-error{display:flex;gap:9px;align-items:center;margin:16px 0;padding:12px 14px;background:#e3efe9;color:var(--green);border-left:3px solid var(--green)}.form-error{background:#f6e5df;color:var(--danger);border-color:var(--danger)}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.form-grid .wide{grid-column:1/-1}.login-body{background:var(--carbon);min-height:100vh;display:grid;place-items:center}.login-shell{width:min(880px,calc(100% - 32px));display:grid;grid-template-columns:1.15fr .85fr;background:var(--paper);box-shadow:0 24px 70px #0005}.login-intro{padding:62px;background:#20262b;color:white}.login-intro h1{font-size:42px;margin:40px 0 12px}.login-intro p:last-child{color:#aeb6ba}.login-form{padding:54px 42px;display:grid;gap:18px}.login-form h2{margin:0 0 10px}.health-list{display:grid;gap:0}.health-row{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px solid var(--line)}.health-row:last-child{border:0}.key-reveal{background:var(--carbon);color:white;padding:16px;font-family:"IBM Plex Mono",monospace;overflow-wrap:anywhere}.muted{color:var(--steel)}
.provider-control .panel-head>div p{margin:6px 0 0;color:var(--steel);font-size:12px}.provider-metrics{padding:18px 18px 0}.provider-metrics .metric{border:1px solid var(--line);border-top:3px solid var(--carbon)}.metric .metric-text{font-family:"IBM Plex Sans","Noto Sans SC",sans-serif;font-size:18px}.provider-details{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:1px;background:var(--line);margin:18px}.provider-details>div{background:#ece8de;padding:12px;display:grid;gap:5px}.provider-details span{font-size:11px;color:var(--steel)}.provider-details strong{font-size:13px}.provider-form{border-top:1px solid var(--line)}.provider-form small{font-size:11px;color:var(--steel)}.provider-sync{border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:20px}.provider-sync p{margin:5px 0 0;color:var(--steel);font-size:12px}
@media(max-width:980px){.metrics{grid-template-columns:repeat(2,1fr)}.split{grid-template-columns:1fr}.rail{width:76px}.brand strong,.nav-item span,.rail-user>span,.rail-user>small{display:none}.workspace{margin-left:76px}.brand{margin-left:4px}.nav-item{justify-content:center}.rail-user{align-items:center}.form-grid{grid-template-columns:1fr}.provider-details{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:650px){.rail{position:static;width:100%;height:auto;padding:12px}.rail nav{display:flex;overflow:auto}.brand,.rail-user{display:none}.workspace{margin:0;padding:0 14px}.status-strip{margin:0 -14px;padding:0 14px}.metrics{grid-template-columns:1fr 1fr}.page-head{padding-top:22px}.login-shell{grid-template-columns:1fr}.login-intro{display:none}.login-form{padding:38px 28px}.toolbar{align-items:stretch;flex-direction:column}.provider-details{grid-template-columns:repeat(2,minmax(0,1fr));margin:14px}.provider-sync{align-items:stretch;flex-direction:column}.provider-sync button{width:100%}}
