:root{font-family:ui-sans-serif,system-ui,sans-serif;color:#202d2c;background:#f4f4eb;line-height:1.6;--card:#fffef8;--line:#ced7c9;--accent:#1b6754;color-scheme:light}
*{box-sizing:border-box}body{margin:0}main{max-width:800px;margin:auto;padding:64px 28px 32px}.eyebrow{font:700 11px ui-monospace,monospace;letter-spacing:.13em;color:var(--accent)}h1{font-size:clamp(35px,6.7vw,62px);line-height:1.08;font-weight:600;letter-spacing:-.045em;margin:24px 0}.intro{font-size:18px;max-width:610px}form{margin:36px 0;padding:24px;background:var(--card);border:1px solid var(--line);border-radius:16px}label{display:block;font-weight:650;font-size:13px;margin:18px 0 7px}label:first-child{margin-top:0}input,select{width:100%;min-width:0;border:1px solid var(--line);border-radius:6px;background:transparent;color:inherit;padding:12px;font:14px ui-monospace,monospace}input:focus,select:focus,button:focus{outline:3px solid #79c5aa;outline-offset:2px}details{margin-top:20px;font-size:13px}summary{cursor:pointer}button{margin-top:24px;width:100%;padding:15px;border:0;border-radius:6px;background:var(--accent);color:white;font:600 15px system-ui;cursor:pointer;display:flex;justify-content:space-between}button:disabled{opacity:.6;cursor:wait}#output{border-block:1px solid var(--line);padding:16px 0;margin-bottom:24px;overflow-wrap:anywhere}#output h2{font-size:22px;margin:6px 0}#output article{padding:16px;margin:12px 0;background:var(--card);border:1px solid var(--line);border-radius:8px}#output h3{margin-top:0}dl{display:grid;grid-template-columns:80px minmax(0,1fr);font-size:12px;gap:8px}dt{font-weight:650}dd{margin:0;font-family:ui-monospace,monospace;overflow-wrap:anywhere}.pass{color:var(--accent)}.fail{color:#a13831}aside{font-size:13px}aside p{margin-top:5px}footer{font-size:11px;border-top:1px solid var(--line);margin-top:32px;padding-top:16px;color:#5d6c63}a{color:var(--accent)}@media(prefers-color-scheme:dark){:root{color:#e5ebe3;background:#132320;--card:#1a2e29;--line:#395149;--accent:#89d6b4;color-scheme:dark}button{color:#132320}.fail{color:#ffad9f}footer{color:#acbcb2}}@media(max-width:400px){main{padding:32px 18px}form{padding:18px}dl{grid-template-columns:1fr}dt{margin-top:6px}}
.check{display:flex;align-items:center;gap:10px}.check input{width:auto}.entry{border-top:1px solid var(--line);padding-block:12px}#output img{max-width:100%;max-height:240px;border-radius:10px}#output a{display:block;margin:8px 0}#output strong{font-size:12px}#output div p{margin-top:3px}
