:root{--bg:#f3f4f1;--card:#fff;--ink:#1b2430;--muted:#5d6876;--line:#dfe3e0;--acc:#d98b12;--bad:#b4483a}
@media (prefers-color-scheme:dark){:root{--bg:#12171d;--card:#1a2129;--ink:#e7eaee;--muted:#9aa5b1;--line:#2c3540;--acc:#f0a53a;--bad:#e07a6c}}
*{box-sizing:border-box}
body{margin:0;min-height:100vh;display:grid;place-items:center;background:var(--bg);color:var(--ink);font:15px/1.5 system-ui,"Segoe UI",Roboto,sans-serif;padding:16px}
.card{width:100%;max-width:420px;background:var(--card);border:1px solid var(--line);border-radius:12px;padding:28px}
h1{font-size:20px;margin:0}h2{font-size:16px;margin:18px 0 6px}.sub{color:var(--muted);margin:4px 0 20px;font-size:13px}
label{display:block;font-size:13px;color:var(--muted);margin-bottom:12px}
input{display:block;width:100%;margin-top:4px;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:var(--bg);color:var(--ink);font:inherit}
button{width:100%;padding:11px;border:0;border-radius:8px;background:var(--acc);color:#fff;font:600 15px/1 inherit;cursor:pointer;margin-top:4px}
.msg{color:var(--bad);min-height:1.5em;font-size:13px}.key{font:600 17px/1.4 ui-monospace,monospace;letter-spacing:.08em;word-break:break-all;background:var(--bg);padding:10px;border-radius:8px}
.mono{font:12px ui-monospace,monospace;word-break:break-all;color:var(--muted)}
table{width:100%;border-collapse:collapse;font-size:13px}th,td{text-align:left;padding:6px;border-bottom:1px solid var(--line)}
[hidden]{display:none!important}
