:root{color-scheme:dark;--bg:#0b111b;--panel:#141e2c;--line:#29374a;--text:#eef4fc;--muted:#9bafc8;--accent:#85e6be;--bad:#ffb9af;--warn:#ffe09e;font:16px/1.55 system-ui,-apple-system,"Segoe UI",sans-serif}
*{box-sizing:border-box}[hidden]{display:none!important}body{margin:0;background:radial-gradient(ellipse at 80% 0,#19354a 0,transparent 45%),var(--bg);color:var(--text);min-height:100vh}a{color:var(--accent)}button,input,select{font:inherit}button,a.button{border:1px solid var(--line);border-radius:11px;background:#25364b;color:var(--text);padding:10px 15px;cursor:pointer;font-weight:600;text-decoration:none}button:hover{border-color:var(--accent)}button:disabled{opacity:.5;cursor:wait}button.primary{background:var(--accent);color:#112b23;border-color:var(--accent)}button.danger{color:var(--bad)}input,select{width:100%;min-width:0;color:var(--text);background:#0c1521;border:1px solid #40526b;border-radius:10px;padding:11px 12px}input:focus,select:focus,button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}label{display:grid;gap:6px;color:var(--muted);font-size:.9rem}form{display:grid;gap:15px}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(1.8rem,5vw,2.8rem);line-height:1.2;letter-spacing:-.04em;margin-bottom:12px}h2{font-size:1.25rem}h3{font-size:1.05rem;margin-bottom:7px}.shell{width:min(1120px,100%);margin:auto;padding:26px 24px 64px}.top{display:flex;align-items:center;justify-content:space-between;gap:15px;flex-wrap:wrap;margin-bottom:38px}.brand{font-size:1.05rem;font-weight:750;letter-spacing:.05em;text-decoration:none;color:var(--text)}.brand::before{content:"●";color:var(--accent);margin-right:10px}.nav,.actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.eyebrow{color:var(--accent);text-transform:uppercase;letter-spacing:.16em;font-size:.74rem;font-weight:700;margin-bottom:9px}.muted{color:var(--muted)}.card{padding:25px;background:var(--panel);border:1px solid var(--line);border-radius:19px;margin-bottom:18px;min-width:0}.login{max-width:440px;margin:60px auto}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.grid .card{margin-bottom:0}.wide{grid-column:1/-1}.row{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap}.notice{padding:13px 16px;border-radius:11px;border:1px solid #4d4962;color:var(--warn);background:#272638;margin:12px 0;overflow-wrap:anywhere}.feedback{min-height:26px;margin-bottom:18px;color:var(--accent);overflow-wrap:anywhere}.feedback[data-kind=error]{color:var(--bad)}.device{border-top:1px solid var(--line);padding:20px 0}.device:last-child{padding-bottom:0}.device h3{overflow-wrap:anywhere}.pill{display:inline-block;border:1px solid #42604f;border-radius:999px;color:var(--accent);padding:3px 9px;font-size:.79rem;margin:3px 5px 7px 0}.pill[data-status=error],.pill[data-status=revoked]{color:var(--bad);border-color:#6c4647}.pill[data-status=pending]{color:var(--warn);border-color:#6c6346}.small{font-size:.86rem}.stats{display:flex;gap:22px;flex-wrap:wrap}.stat strong{display:block;font-size:1.8rem;color:var(--accent)}.stack{display:grid;gap:12px}.compact{grid-template-columns:minmax(130px,1fr) minmax(100px,1fr) auto;align-items:end}.table-scroll{overflow:auto}table{border-collapse:collapse;width:100%;font-size:.9rem}th,td{text-align:left;padding:13px 10px;border-bottom:1px solid var(--line);vertical-align:top}th{color:var(--muted);font-weight:500}td{overflow-wrap:anywhere}td .actions{min-width:180px}dialog{width:min(560px,calc(100% - 24px));background:var(--panel);color:var(--text);border:1px solid #4d6581;border-radius:20px;padding:25px}dialog::backdrop{background:#030a14cc}canvas{display:block;max-width:100%;height:auto;image-rendering:pixelated;margin:20px auto;border:12px solid white;background:white;border-radius:6px}.secret-url{font:13px/1.5 ui-monospace,monospace}.instructions ol{padding-left:23px}.instructions li{margin-bottom:10px}summary{cursor:pointer;color:var(--accent);padding:7px 0}.screen-title{margin-bottom:25px}footer{margin-top:30px;color:var(--muted);font-size:.8rem}.empty{padding:18px 0;color:var(--muted)}
@media(max-width:650px){.shell{padding:18px 15px 36px}.top{margin-bottom:26px}.grid{grid-template-columns:1fr}.wide{grid-column:auto}.card{padding:20px}.login{margin:25px auto}.compact{grid-template-columns:1fr}.actions button{flex:1}th,td{padding:10px 7px}.stats{gap:15px}dialog{padding:20px}}
