:root{--bg:#fafaf7;--surface:#fff;--border:#ececec;--border-strong:#d8d8d4;--text:#0a0a0a;--text-muted:#6b6b6b;--text-subtle:#9a9a9a;--accent:#0b69ff;--accent-soft:#e8efff;--ok:#137a3f;--ok-soft:#e3f3ea;--warn:#8a5a00;--warn-soft:#fdf2d9;--danger:#a4262c;--danger-soft:#fbe5e5;--radius:10px;--radius-sm:6px;--shadow-sm:0 1px 0 #0a0a0a0a, 0 1px 2px #0a0a0a0a;--font-sans:var(--font-inter), -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;--font-mono:var(--font-jetbrains), ui-monospace, SFMono-Regular, "JetBrains Mono", Menlo, Consolas, monospace}*{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:var(--font-sans);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;line-height:1.55}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}code,.mono{font-family:var(--font-mono);font-size:.92em}h1,h2,h3{letter-spacing:-.015em;margin:0}h1{font-size:2rem;font-weight:600}h2{font-size:1.15rem;font-weight:600}h3{font-size:.95rem;font-weight:600}p{margin:0}.app-shell{flex-direction:column;min-height:100dvh;display:flex}.app-header{border-bottom:1px solid var(--border);background:var(--surface)}.app-header-inner{justify-content:space-between;align-items:center;gap:1.5rem;max-width:1080px;margin:0 auto;padding:1rem 1.5rem;display:flex}.brand{color:var(--text);align-items:center;gap:.6rem;font-weight:600;display:flex}.brand-dot{background:var(--text);border-radius:50%;width:10px;height:10px;display:inline-block}.brand-name{font-size:.95rem}.brand-sub{color:var(--text-muted);margin-left:.3rem;font-weight:400}.nav{flex-wrap:wrap;align-items:center;gap:.25rem;display:flex}.nav a{color:var(--text-muted);border-radius:var(--radius-sm);padding:.4rem .7rem;font-size:.875rem}.nav a:hover{color:var(--text);background:var(--bg);text-decoration:none}.nav a.cta{color:var(--text);border:1px solid var(--border-strong);background:var(--surface)}.nav a.cta:hover{background:var(--bg)}.container{flex:1;max-width:1080px;margin:0 auto;padding:2.5rem 1.5rem 4rem}.page-head{flex-direction:column;gap:.5rem;margin-bottom:2rem;display:flex}.eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--text-subtle);font-size:.75rem}.lede{color:var(--text-muted);max-width:60ch;font-size:1rem}.section{margin-top:2.5rem}.section-head{justify-content:space-between;align-items:baseline;gap:1rem;margin-bottom:1rem;display:flex}.section-head h2{font-size:1rem}.stat-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.75rem;display:grid}.stat{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:1rem 1.1rem}.stat-label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-subtle);margin-bottom:.4rem;font-size:.75rem}.stat-value{letter-spacing:-.02em;font-size:1.75rem;font-weight:600;line-height:1.1}.stat-sub{color:var(--text-muted);margin-top:.3rem;font-size:.8rem}.host-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:.75rem;display:grid}.host-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);flex-direction:column;gap:.6rem;padding:1.1rem 1.2rem;display:flex}.host-card-head{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.host-name{font-family:var(--font-mono);word-break:break-all;font-size:.92rem;font-weight:500}.host-card-meta{color:var(--text-muted);font-size:.8rem}.host-card-notes{color:var(--text-muted);font-size:.85rem;line-height:1.5}.pill{letter-spacing:.01em;white-space:nowrap;border:1px solid #0000;border-radius:999px;align-items:center;gap:.35rem;padding:.18rem .55rem;font-size:.72rem;font-weight:500;line-height:1;display:inline-flex}.pill:before{content:"";background:currentColor;border-radius:50%;width:6px;height:6px}.pill-ok{background:var(--ok-soft);color:var(--ok)}.pill-warn{background:var(--warn-soft);color:var(--warn)}.pill-danger{background:var(--danger-soft);color:var(--danger)}.pill-muted{background:var(--bg);color:var(--text-muted);border-color:var(--border)}.pill-accent{background:var(--accent-soft);color:var(--accent)}.pill-bare{color:var(--text-muted);border-color:var(--border);background:0 0}.pill-bare:before{display:none}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);overflow:hidden}.panel-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.25rem;display:flex}.panel-title{font-family:var(--font-mono);align-items:center;gap:.6rem;font-size:.95rem;display:flex}.panel-meta{color:var(--text-muted);font-size:.8rem}.panel-notes{border-bottom:1px solid var(--border);background:var(--bg);color:var(--text-muted);padding:.75rem 1.25rem;font-size:.85rem}.rule-table{border-collapse:collapse;width:100%;font-size:.875rem}.rule-table th,.rule-table td{text-align:left;border-bottom:1px solid var(--border);vertical-align:top;padding:.7rem 1.25rem}.rule-table th{text-transform:uppercase;letter-spacing:.06em;color:var(--text-subtle);background:var(--bg);border-bottom:1px solid var(--border);font-size:.72rem;font-weight:500}.rule-table tbody tr:last-child td{border-bottom:none}.rule-table tbody tr:hover{background:#0b69ff06}.rule-table code{background:var(--bg);border:1px solid var(--border);border-radius:4px;padding:.12rem .4rem}.rule-note{color:var(--text-muted);font-size:.78rem;font-family:var(--font-sans);margin-top:.3rem;display:block}.tester{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:1.1rem 1.25rem}.tester-row{flex-wrap:wrap;gap:.5rem;display:flex}.tester input,.tester select{font-family:var(--font-mono);border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--bg);color:var(--text);outline:none;padding:.55rem .7rem;font-size:.9rem}.tester input:focus,.tester select:focus{border-color:var(--accent);background:var(--surface);box-shadow:0 0 0 3px var(--accent-soft)}.tester input{flex:1;min-width:200px}.tester select{min-width:220px}.tester button{font:inherit;border-radius:var(--radius-sm);border:1px solid var(--text);background:var(--text);color:var(--surface);cursor:pointer;padding:.55rem 1.1rem;font-size:.9rem;font-weight:500}.tester button:hover{background:#000}.tester button:disabled{opacity:.5;cursor:not-allowed}.tester-result{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg);font-size:.88rem;font-family:var(--font-mono);word-break:break-all;margin-top:.9rem;padding:.85rem 1rem;line-height:1.6}.tester-result strong{font-family:var(--font-sans);min-width:5.5rem;color:var(--text-muted);font-weight:600;display:inline-block}.tester-result.hit{background:var(--ok-soft);border-color:#137a3f40}.tester-result.miss{background:var(--warn-soft);border-color:#8a5a0040}.app-footer{border-top:1px solid var(--border);background:var(--surface);margin-top:auto}.app-footer-inner{max-width:1080px;color:var(--text-muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin:0 auto;padding:1rem 1.5rem;font-size:.8rem;display:flex}.app-footer .mono{color:var(--text-subtle)}@media (max-width:640px){.app-header-inner,.container,.app-footer-inner{padding-left:1rem;padding-right:1rem}h1{font-size:1.6rem}}.fallback{background:var(--bg);justify-content:center;align-items:center;min-height:100dvh;padding:2.5rem 1.5rem;display:flex}.fallback-card{background:var(--surface);border:1px solid var(--border);width:100%;max-width:560px;box-shadow:var(--shadow-sm);text-align:left;border-radius:14px;padding:2.5rem 2.25rem}.fallback-headline{letter-spacing:-.02em;margin:0 0 .85rem;font-size:1.65rem;font-weight:600;line-height:1.2}.fallback-body{color:var(--text-muted);margin:0 0 1.75rem;font-size:1rem;line-height:1.6}.fallback-actions{flex-wrap:wrap;gap:.6rem;margin-bottom:1.5rem;display:flex}.btn{white-space:nowrap;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;padding:.7rem 1.15rem;font-size:.95rem;font-weight:500;text-decoration:none;transition:background-color .12s,border-color .12s;display:inline-flex}.btn-primary{background:var(--text);color:var(--surface);border-color:var(--text)}.btn-primary:hover{background:#000;text-decoration:none}.btn-secondary{background:var(--surface);color:var(--text);border-color:var(--border-strong)}.btn-secondary:hover{background:var(--bg);text-decoration:none}.fallback-support{color:var(--text-subtle);border-top:1px solid var(--border);margin:0;padding-top:1.25rem;font-size:.85rem;line-height:1.55}@media (max-width:480px){.fallback-card{padding:1.75rem 1.5rem}.fallback-headline{font-size:1.4rem}.btn{width:100%}}.interstitial{background:var(--bg);justify-content:center;align-items:center;min-height:100dvh;padding:2.5rem 1.5rem;display:flex}.interstitial-card{background:var(--surface);border:1px solid var(--border);width:100%;max-width:560px;box-shadow:var(--shadow-sm);border-radius:14px;padding:2.25rem 2.25rem 1.75rem}.interstitial-eyebrow{letter-spacing:.1em;text-transform:uppercase;color:var(--text-subtle);margin:0 0 .65rem;font-size:.72rem}.interstitial-heading{letter-spacing:-.01em;word-break:break-word;margin:0 0 .85rem;font-size:1.35rem;font-weight:600;line-height:1.35}.interstitial-heading .mono{font-family:var(--font-mono);font-weight:500}.interstitial-message{color:var(--text-muted);background:var(--bg);border-left:3px solid var(--border-strong);border-radius:0 6px 6px 0;margin:0 0 1.4rem;padding:.75rem 1rem;font-size:.98rem;line-height:1.55}.interstitial-countdown{background:var(--accent-soft);border:1px solid #0b69ff2e;border-radius:8px;align-items:baseline;gap:.5rem;margin-bottom:1rem;padding:.85rem 1rem;display:flex}.interstitial-countdown-label{color:var(--text-muted);font-size:.85rem}.interstitial-countdown-value{font-family:var(--font-mono);color:var(--accent);font-size:.95rem;font-weight:500}.interstitial-fineprint{color:var(--text-subtle);border-top:1px solid var(--border);margin:0;padding-top:1rem;font-size:.82rem;line-height:1.55}.interstitial-link{color:var(--accent);font-weight:500}@media (max-width:480px){.interstitial-card{padding:1.75rem 1.5rem}.interstitial-heading{font-size:1.15rem}}
@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2c55a0e60120577a-s.0bjc5tiuqdqro.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.0m6w47a4e5dy9.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/ad66f9afd8947f86-s.11u06r12fd6v_.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5476f68d60460930-s.0wxq9webf.ew4.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.067x_6k0k23tk.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/1bffadaabf893a1e-s.16ipb6fqu393i.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.0q-301v4kxxnr.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Fallback;src:local(Arial);ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.0%;size-adjust:107.12%}.inter_c15e96cb-module__0bjUvq__className{font-family:Inter,Inter Fallback;font-style:normal}.inter_c15e96cb-module__0bjUvq__variable{--font-inter:"Inter", "Inter Fallback"}
@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/13bf9871fe164e7f-s.0s19wthhh_6~m.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/cc545e633e20c56d-s.0dza.stei.9v7.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/71b036adf157cdcf-s.03nf~dfjdkf~..woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/89b21bb081cb7469-s.0gfhww.tctz1o.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/3fe682a82f50d426-s.09q3q1i5159bl.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/70bc3e132a0a741e-s.p.1409xf.ylxg8g.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono Fallback;src:local(Arial);ascent-override:75.79%;descent-override:22.29%;line-gap-override:0.0%;size-adjust:134.59%}.jetbrains_mono_f8290d5a-module__2Nw1lG__className{font-family:JetBrains Mono,JetBrains Mono Fallback;font-style:normal}.jetbrains_mono_f8290d5a-module__2Nw1lG__variable{--font-jetbrains:"JetBrains Mono", "JetBrains Mono Fallback"}
