:root{color-scheme:light dark;--bg: #f6f3ee;--surface: #ffffff;--surface-2: #efe9df;--text: #1d1a16;--muted: #5d564c;--line: #d8cfc0;--accent: #7a4a12;--accent-text: #ffffff;--ok: #17663a;--ok-bg: #e3f4ea;--bad: #9b1c1c;--bad-bg: #fbe6e4;--warn: #7a5200;--warn-bg: #fdf1d3;--focus: #0b5cd6;--die-bg: #fffdf8;--die-pip: #1d1a16;--radius: 12px}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--bg: #15120f;--surface: #211d18;--surface-2: #2b2620;--text: #f1ebe0;--muted: #b6ab99;--line: #3d362d;--accent: #e0b36a;--accent-text: #1a1408;--ok: #6fd39a;--ok-bg: #12291c;--bad: #ff9a92;--bad-bg: #3a1614;--warn: #f0c874;--warn-bg: #33270b;--focus: #8ab8ff;--die-bg: #f4eee2;--die-pip: #1d1a16}}:root[data-theme=dark]{color-scheme:dark;--bg: #15120f;--surface: #211d18;--surface-2: #2b2620;--text: #f1ebe0;--muted: #b6ab99;--line: #3d362d;--accent: #e0b36a;--accent-text: #1a1408;--ok: #6fd39a;--ok-bg: #12291c;--bad: #ff9a92;--bad-bg: #3a1614;--warn: #f0c874;--warn-bg: #33270b;--focus: #8ab8ff;--die-bg: #f4eee2;--die-pip: #1d1a16}:root[data-theme=light]{color-scheme:light}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--text);font:16px/1.55 system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}#app{max-width:880px;margin:0 auto;padding:16px 16px 48px}h1{font-size:1.6rem;line-height:1.2;margin:0 0 6px}h2{font-size:1.15rem;line-height:1.3;margin:0 0 8px}h3{font-size:1rem;margin:0}p{margin:0 0 8px}.lead{color:var(--muted);margin:0}.muted,.hint,.meta,footer{color:var(--muted)}.hint{font-size:.9rem;margin:0 0 6px}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.9rem}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}:focus-visible{outline:3px solid var(--focus);outline-offset:2px;border-radius:4px}.top{display:flex;flex-direction:column;gap:12px;padding:8px 0 16px}.tools{display:flex;gap:8px}select,input[type=text],textarea{font:inherit;color:var(--text);background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:10px 12px;min-height:44px;width:100%}select{width:auto}textarea{resize:vertical}label{display:block;font-weight:600;margin:8px 0 4px}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:16px;margin:0 0 16px}.row{display:flex;flex-direction:column;gap:8px}.actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.btn{font:inherit;font-weight:600;min-height:44px;padding:10px 16px;border-radius:8px;border:1px solid var(--line);background:var(--surface-2);color:var(--text);cursor:pointer}.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-text)}.btn:disabled{opacity:.6;cursor:progress}.or{margin:16px 0 4px;color:var(--muted);text-align:center}.drop{border:2px dashed var(--line);border-radius:var(--radius);padding:8px 12px 12px}.drop.is-over{border-color:var(--accent);background:var(--surface-2)}details>summary{cursor:pointer;font-weight:600;min-height:32px;padding:4px 0}#key-details{margin-top:12px}.error{color:var(--bad);font-weight:600;min-height:0}.error:empty{display:none}.status{color:var(--muted);margin:8px 0 0;min-height:1.5em}.banner{display:flex;gap:14px;align-items:flex-start;border-radius:var(--radius);padding:16px;margin:0 0 16px;border:2px solid currentColor}.banner h2{font-size:1.5rem;margin:0 0 4px}.banner p{color:var(--text)}.banner .meta{color:var(--muted);word-break:break-all}.banner-icon{flex:none;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;font-size:1.6rem;font-weight:700;background:currentColor}.banner-icon:before{content:""}.banner.is-verified{color:var(--ok);background:var(--ok-bg)}.banner.is-not_verified{color:var(--bad);background:var(--bad-bg)}.banner.is-cannot_check{color:var(--warn);background:var(--warn-bg)}.banner-icon{color:inherit}.banner .banner-icon{background:transparent;border:3px solid currentColor}.banner-text{min-width:0}.checks{list-style:none;padding:0;margin:0}.check{display:flex;gap:12px;padding:12px 0;border-top:1px solid var(--line)}.check:first-child{border-top:0}.check .mark{flex:none;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;font-weight:700;border:2px solid currentColor}.check.is-pass .mark{color:var(--ok)}.check.is-fail .mark{color:var(--bad);background:var(--bad-bg)}.check.is-skip .mark,.check.is-pending .mark{color:var(--warn)}.check-body{min-width:0}.status-word{font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin:0 0 4px}.check.is-fail .status-word{color:var(--bad)}.check.is-pass .status-word{color:var(--ok)}.msg{overflow-wrap:anywhere}.proves{margin-top:4px;font-size:.92rem}.proves summary{font-weight:500;color:var(--muted)}.table-wrap{overflow-x:auto;margin-top:8px;border:1px solid var(--line);border-radius:8px}table.rolls{width:100%;border-collapse:collapse;font-size:.92rem}table.rolls th,table.rolls td{padding:8px 10px;text-align:left;border-bottom:1px solid var(--line);vertical-align:middle}table.rolls thead th{background:var(--surface-2);font-size:.8rem;text-transform:uppercase;letter-spacing:.03em}table.rolls td.num{font-variant-numeric:tabular-nums}table.rolls td.dice{white-space:nowrap}tr.row-bad td{background:var(--bad-bg)}.flag{color:var(--bad);font-weight:700}.okay{color:var(--ok);font-weight:600}.issue{display:block;color:var(--bad)}.hide-narrow{display:none}.die{display:inline-grid;grid-template:repeat(3,1fr) / repeat(3,1fr);width:30px;height:30px;padding:4px;margin-right:6px;background:var(--die-bg);border:1px solid #b8ad98;border-radius:7px;box-shadow:0 1px #00000026;vertical-align:middle}.pip{display:block;width:5px;height:5px;margin:auto;border-radius:50%;background:transparent}.pip.on{background:var(--die-pip)}ul{padding-left:1.2rem;margin:0}li{margin:0 0 6px}footer{font-size:.9rem;padding-top:8px}@media(min-width:640px){#app{padding:32px 24px 64px}.top{flex-direction:row;justify-content:space-between;align-items:flex-start}.row{flex-direction:row}.row input{flex:1}.hide-narrow{display:table-cell}h1{font-size:2rem}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}@media print{.tools,form,.actions{display:none}body{background:#fff;color:#000}}
