:root{--bg: #12141a;--panel: #1b1f28;--line: #2a303c;--ink: #f2f4f8;--muted: #98a1b3;--accent: #4ade80;--danger: #f87171;color-scheme:dark}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.55 system-ui,-apple-system,Segoe UI,sans-serif}.shell{max-width:62rem;margin:0 auto;padding:1.5rem}.shell.centred{display:flex;flex-direction:column;gap:.75rem;align-items:center;justify-content:center;min-height:100vh;text-align:center}.bar{display:flex;align-items:baseline;gap:1rem;margin-bottom:1rem}.bar h1{margin:0 auto 0 0;font-size:1.3rem}.panel{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:1.1rem 1.25rem;margin-bottom:1.25rem}.panel h2{margin:0 0 .75rem;font-size:1.05rem}.panel h3{margin:1.25rem 0 .5rem;font-size:.8rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.inline{display:flex;gap:.75rem;align-items:end;flex-wrap:wrap;margin-bottom:.75rem}.inline label{display:flex;flex-direction:column;gap:.25rem;font-size:.8rem;color:var(--muted)}input{padding:.5rem .65rem;font:inherit;color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:6px}.token{width:22rem;text-align:center;letter-spacing:.1em}button{font:inherit;padding:.5rem .9rem;border-radius:6px;border:1px solid var(--line);background:var(--bg);color:var(--ink);cursor:pointer}button:hover:not(:disabled){border-color:var(--accent)}button:disabled{opacity:.5;cursor:default}.linklike{border-color:transparent;background:transparent;padding:.1rem .3rem}.linklike:hover{color:var(--accent)}ul.plain{list-style:none;margin:0;padding:0}ul.plain li{display:grid;grid-template-columns:1fr auto auto auto;gap:1rem;align-items:center;padding:.5rem .25rem;border-bottom:1px solid var(--line)}ul.plain li.on{background:#223;box-shadow:inset 3px 0 0 var(--accent)}.muted,.hint{color:var(--muted);font-size:.85rem}.error{background:#3a1d1d;color:var(--danger);padding:.6rem .9rem;border-radius:6px;font-weight:600}.revoked{color:var(--danger);font-size:.85rem}.issued{margin:.75rem 0;padding:.9rem;text-align:center;background:var(--bg);border:1px dashed var(--accent);border-radius:8px}.issued .code{margin:0 0 .35rem;font:700 2rem/1 ui-monospace,SFMono-Regular,monospace;letter-spacing:.28em;color:var(--accent)}
