:root{--ink:#1b1b1b;--bg:#fff;--brand:#0b3d6e;--focus:#ffbf47}
*{box-sizing:border-box}body{margin:0;font:1rem/1.5 system-ui,sans-serif;color:var(--ink);background:var(--bg)}
.skip{position:absolute;left:-999px;top:0;background:#000;color:#fff;padding:.5rem 1rem;z-index:9}.skip:focus{left:0}
.demo-banner{background:#8b0000;color:#fff;padding:1rem;font-size:1.15rem;text-align:center;border-bottom:6px solid #000}
header,footer{background:var(--brand);color:#fff;padding:1rem 1.5rem}header a,footer a{color:#fff}
main{max-width:70rem;margin:auto;padding:1.5rem}
:focus-visible{outline:3px solid var(--focus);outline-offset:2px;box-shadow:0 0 0 6px #000}
button{background:var(--brand);color:#fff;border:0;padding:.7rem 1.2rem;font-size:1rem;border-radius:4px;cursor:pointer;min-height:44px}
button.secondary{background:#fff;color:var(--brand);border:2px solid var(--brand)}
input[type=url]{width:100%;max-width:40rem;padding:.6rem;font-size:1rem;border:2px solid #555;border-radius:4px}
.scores{display:flex;gap:1rem;flex-wrap:wrap;list-style:none;padding:0}.scores li{border:2px solid #333;border-radius:6px;padding:1rem;min-width:9rem;text-align:center}
.scores .n{font-size:2rem;font-weight:700;display:block}
.critical{border-color:#8b0000!important}.serious{border-color:#a34700!important}
table{border-collapse:collapse;width:100%}th,td{border:1px solid #666;padding:.5rem;text-align:left;vertical-align:top}th{background:#eef}
code{background:#f2f2f2;padding:0 .2rem;word-break:break-all}.notice{background:#fff4cc;border-left:6px solid #a36b00;padding:1rem}
iframe{width:100%;height:340px;border:2px dashed #666}
