/* Extracted from index.html so style-src can drop 'unsafe-inline' (SA-4). */
:root { --bg:#0a0d12; --panel:#111722; --ink:#e8edf4; --muted:#8b98ab; --line:#1e2836;
  --acc:#5e7cff; --ok:#39d98a; --bad:#ff7a7a; --warn:#ffcc66; }
* { box-sizing:border-box; }
body { margin:0; background:var(--bg); color:var(--ink);
  font:15px/1.55 -apple-system,BlinkMacSystemFont,"Segoe UI",Inter,sans-serif; }
a { color:var(--acc); text-decoration:none; }
.wrap { max-width:900px; margin:0 auto; padding:0 20px; }
header { display:flex; align-items:center; gap:12px; padding:18px 0; border-bottom:1px solid var(--line); }
.alpha { font-size:24px; font-weight:700; color:var(--acc); }
header .who { margin-left:auto; color:var(--muted); font-size:13px; display:flex; gap:14px; align-items:center; }
h1 { font-size:22px; margin:28px 0 4px; }
h2 { font-size:13px; letter-spacing:0.08em; text-transform:uppercase; color:var(--muted); margin:28px 0 10px; }
.muted { color:var(--muted); }
.card { background:var(--panel); border:1px solid var(--line); border-radius:12px; padding:16px; margin:10px 0; }
.row { display:flex; gap:12px; align-items:center; flex-wrap:wrap; }
.grow { flex:1; }
label { display:block; font-size:12px; color:var(--muted); margin:10px 0 5px; }
input, select { width:100%; padding:10px 12px; background:#0c1119; border:1px solid var(--line);
  border-radius:9px; color:var(--ink); font-size:14px; }
button { padding:10px 16px; background:var(--acc); color:#00102e; border:0; border-radius:9px;
  font-size:14px; font-weight:600; cursor:pointer; }
button.ghost { background:transparent; border:1px solid var(--line); color:var(--ink); }
button:disabled { opacity:0.5; cursor:default; }
.badge { font-size:11px; padding:2px 8px; border-radius:999px; border:1px solid var(--line); }
.badge.ok { color:var(--ok); } .badge.bad { color:var(--bad); } .badge.warn { color:var(--warn); }
.sleeve { display:flex; align-items:center; gap:12px; cursor:pointer; }
.sleeve:hover { border-color:var(--acc); }
.err { color:var(--bad); margin:10px 0; }
.kv { display:flex; gap:20px; flex-wrap:wrap; margin:6px 0; }
.kv div b { display:block; font-size:19px; }
.kv div span { font-size:12px; color:var(--muted); }
pre { background:#0c1119; border:1px solid var(--line); border-radius:8px; padding:12px;
  overflow-x:auto; font-size:12px; color:#c9d4e5; }
.receipt { border-top:1px solid var(--line); padding:8px 0; font-size:13px; }
.hide { display:none; }
/* utilities replacing inline style= (blocked by style-src 'self') */
.narrow { max-width:420px; } .mt8 { margin-top:8px; } .mt12 { margin-top:12px; }
.mt14 { margin-top:14px; } .m0 { margin:0; } pre.warn { color:var(--warn); }
