:root{--ink:#16130f;--ink-soft:#57514a;--line:#ded7cd;--surface:#f7f4ef;--card:#fffdf9;--accent:#0d5c73;--accent-ink:#0a4a5c;--warn:#b26a00;--bad:#b42318;--good:#1a7f37}
body{margin:0 auto;max-width:640px;padding:16px 16px 48px;background:var(--surface);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-size:17px;line-height:1.45}
[hidden]{display:none!important}
section{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:16px;margin:0 0 16px}
h1{font-size:1.7rem;margin:0.6rem 0 0.2rem;letter-spacing:0.04em}
.subtitle{margin:0 0 12px;color:var(--ink-soft)}
.lang-row{display:flex;gap:8px;margin:0 0 16px}
.langbtn{font:inherit;font-size:0.9rem;padding:4px 14px;background:var(--card);color:var(--accent-ink);border:1px solid var(--line);border-radius:8px;cursor:pointer}
.langbtn[aria-pressed="true"]{background:var(--accent);border-color:var(--accent);color:#fff}
form label{display:block;font-weight:600;margin:0 0 4px}
form select,input[type="text"]{width:100%;box-sizing:border-box;font:inherit;padding:10px 12px;margin:0 0 14px;background:#fff;color:var(--ink);border:1px solid var(--line);border-radius:8px}
form input:focus-visible,form select:focus-visible,button:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.btn{display:block;width:100%;box-sizing:border-box;font:inherit;font-weight:600;padding:12px 16px;margin:4px 0 0;background:var(--accent);color:#fff;border:1px solid var(--accent);border-radius:10px;cursor:pointer}
.btn:hover{background:var(--accent-ink)}
#verdict{font-size:1.3rem;font-weight:700;color:var(--good);margin:0 0 12px;overflow-wrap:break-word}
#lines{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}
#lines th{text-align:left;font-size:0.85rem;color:var(--ink-soft);text-transform:uppercase;letter-spacing:0.05em;padding:6px 0;border-bottom:1px solid var(--line)}
#lines td{padding:8px 8px 8px 0;border-bottom:1px solid var(--line);vertical-align:top}
#lines td.num,#lines th.num{text-align:right;padding-right:0}
#lines tfoot td{font-weight:700;font-size:1.15rem;border-bottom:none;padding-top:12px}
#err{color:var(--bad);font-weight:600;margin:12px 0 0}
#ad-slot{min-height:90px;border:1px dashed var(--line);border-radius:10px;margin:16px 0;position:relative}
#ad-slot::after{content:"Ads are off until launch";position:absolute;left:10px;bottom:6px;font-size:0.7rem;color:var(--ink-soft)}
#rules h2{font-size:1.1rem;margin:0 0 10px}
#rules p{margin:0 0 10px;color:var(--ink-soft);font-size:0.95rem}
footer{margin-top:24px;font-size:0.85rem;color:var(--ink-soft)}
footer a{color:var(--accent-ink);word-break:break-all}
#source-list ul{margin:6px 0;padding-left:18px;word-break:break-all}
@media (max-width:340px){body{font-size:16px;padding:12px 10px 40px}}
