
:root{--paper:#fff;--text:#111214;--muted:#5C6066;--line:#111214;color-scheme:light dark}
@media (prefers-color-scheme:dark){:root{--paper:#111214;--text:#F2F2F0;--muted:#A3A8AE;--line:#F2F2F0}}
*{box-sizing:border-box}
body{margin:0;background:var(--paper);color:var(--text);font:1rem/1.5 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif}
a{color:inherit}
:focus-visible{outline:3px solid var(--text);outline-offset:2px}
.skip{position:absolute;left:-999px}.skip:focus{left:16px;top:16px;background:var(--paper);padding:8px}
header,main,footer{max-width:40rem;margin:0 auto;padding:16px}
header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}
.brand{font-weight:800;letter-spacing:.08em;text-decoration:none}
button,.button{font:inherit;min-height:44px;min-width:44px;padding:10px 16px;border:2px solid var(--text);background:var(--text);color:var(--paper);cursor:pointer}
button.quiet{background:transparent;color:var(--text)}
.problem{border:2px solid var(--text);padding:12px;margin:0 0 16px}
.notice{border-left:6px solid var(--text);padding:4px 12px;margin:0 0 16px}
a.button{display:inline-block;text-decoration:none}
.muted{color:var(--muted)}
input{font:inherit;min-height:44px;padding:8px 12px;border:2px solid var(--text);background:var(--paper);color:var(--text);max-width:100%;margin:4px 0 12px}
label{font-weight:600}
select,textarea{font:inherit;min-height:44px;padding:8px 12px;border:2px solid var(--text);background:var(--paper);color:var(--text);max-width:100%;margin:4px 0 12px}
textarea{width:100%;min-height:88px}
legend{font-weight:600;padding:0 4px}
fieldset label{font-weight:400}
input[type=radio],input[type=checkbox]{min-height:auto;width:24px;height:24px;margin:0 8px 0 0;vertical-align:middle}
.choice{display:block;padding:10px 0}
.scroll{overflow-x:auto;margin:0 0 16px}
table{border-collapse:collapse;width:100%}
th,td{text-align:left;padding:6px 8px;border-bottom:1px solid var(--line);vertical-align:top}
td.num,th.num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
dl.summary{display:grid;grid-template-columns:minmax(8rem,auto) 1fr;gap:4px 16px}dl.summary dt{font-weight:600}dl.summary dd{margin:0}
.check{border-left:4px solid var(--text);padding:4px 12px;margin:0 0 16px}
.qr{width:192px;height:192px;background:#fff;padding:8px;border:1px solid var(--line)}
.qr svg{display:block;width:100%;height:100%}
.key{font-size:1.1rem;letter-spacing:.06em;word-break:break-all}
.codes{columns:2;padding-left:1.2rem}.codes code{font-size:1.1rem}
.card{border:1px solid var(--line);padding:12px 16px;margin:0 0 16px}
.label{font-weight:700}
.loud{border-left:8px solid var(--text);background:#FFF3A3;color:#111214;padding:12px 16px;font-weight:700}
.loud a{color:#111214}
.mono{font-family:"IBM Plex Mono",ui-monospace,SFMono-Regular,Menlo,monospace}
.actions{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.button{display:inline-block;text-decoration:none}
dl.record dt{font-weight:600;margin-top:8px}dl.record dd{margin:0}
fieldset{border:1px solid var(--line);margin:0 0 12px;padding:8px 12px}
table{border-collapse:collapse;width:100%;margin:0 0 16px}th,td{text-align:left;padding:6px 8px;border-bottom:1px solid var(--line);vertical-align:top}.num{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}
.scroll{overflow-x:auto;margin:0 0 16px}.scroll table{margin:0;min-width:32rem}
dl.figures{display:grid;grid-template-columns:auto 1fr;gap:4px 16px}dl.figures dd{margin:0;font-variant-numeric:tabular-nums}
