:root{--bg: #0a1420;--surface: #10202f;--border: #1e3548;--text: #e6eef5;--muted: #8aa4b8;--accent: #3fb7c4;--bad: #e2686d;color-scheme:dark}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--bg);color:var(--text);font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif;line-height:1.55;-webkit-font-smoothing:antialiased}code{font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:.9em}.shell{max-width:40rem;margin:0 auto;padding:3rem max(1.25rem,env(safe-area-inset-left)) 4rem}h1{font-size:2rem;margin:0 0 .25rem;letter-spacing:-.02em}.muted{color:var(--muted);margin:0 0 2rem;font-size:.95rem}.panel{background:var(--surface);border:1px solid var(--border);border-radius:.75rem;padding:1.25rem;margin-bottom:1rem}.panel.error{border-color:var(--bad)}.panel h2{font-size:1.05rem;margin:0 0 .5rem}.panel .muted{margin-bottom:0}.actions{display:flex;flex-wrap:wrap;gap:.625rem;margin-top:1.25rem}button{min-height:44px;padding:0 1.125rem;border-radius:.5rem;border:1px solid transparent;background:var(--accent);color:#062028;font:inherit;font-weight:600;cursor:pointer}button.secondary{background:transparent;border-color:var(--border);color:var(--text)}button:disabled{opacity:.45;cursor:not-allowed}button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.attest{display:flex;align-items:center;gap:.75rem;margin-top:1rem;cursor:pointer}.attest input{width:1.25rem;height:1.25rem;accent-color:var(--accent)}.error-text{color:var(--bad);font-size:.9rem}.result{margin-top:1.25rem;border-top:1px solid var(--border);padding-top:1rem}pre{background:var(--bg);border:1px solid var(--border);border-radius:.5rem;padding:.875rem;overflow-x:auto;max-height:24rem;overflow-y:auto;margin:.5rem 0 0;font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:.8rem}.facts{margin:0;display:grid;grid-template-columns:1fr;gap:.125rem 1rem}.facts dt{color:var(--muted);font-size:.8rem}.facts dd{margin:0 0 .75rem;overflow-wrap:anywhere}.facts dd:last-child{margin-bottom:0}@media(min-width:30rem){.facts{grid-template-columns:max-content 1fr}.facts dt{font-size:.9rem}}
