:root{color-scheme:light dark;--bg: #f6f8fb;--bg-raised: #ffffff;--bg-sunken: #eef2f7;--border: #dde4ec;--border-strong: #c6d0dc;--text: #131a26;--text-dim: #55627a;--text-faint: #8a95a8;--accent: #1d74d6;--accent-2: #17b6c9;--accent-ink: #ffffff;--good: #17915a;--good-bg: #e4f4ec;--bad: #c23b4b;--bad-bg: #fbe7ea;--warn: #a9791b;--warn-bg: #f7edd8;--grad: linear-gradient(120deg, #7df9e6 0%, #41c7ee 55%, #2a7de1 100%);--night: #0a0f1c;--radius: 14px;--radius-sm: 9px;--shadow: 0 1px 2px rgba(17, 26, 40, .05), 0 8px 30px rgba(17, 26, 40, .06);--mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;--sans: system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif}@media (prefers-color-scheme: dark){:root{--bg: #0a0f1c;--bg-raised: #121a2b;--bg-sunken: #0d1424;--border: #223049;--border-strong: #33456580;--text: #e9eef7;--text-dim: #9fb0c9;--text-faint: #6b7c98;--accent: #52b6ff;--accent-2: #58e6d6;--accent-ink: #071019;--good: #4bd59a;--good-bg: #102a20;--bad: #ff7d8e;--bad-bg: #2c1419;--warn: #e6b45a;--warn-bg: #2b2413;--shadow: 0 1px 2px rgba(0, 0, 0, .3), 0 12px 40px rgba(0, 0, 0, .35)}}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--sans);line-height:1.6;-webkit-font-smoothing:antialiased}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}.wrap{max-width:1040px;margin:0 auto;padding-inline:22px}.site-header{position:sticky;top:0;z-index:20;backdrop-filter:blur(10px);background:color-mix(in srgb,var(--bg) 82%,transparent);border-bottom:1px solid var(--border)}.site-header .wrap{display:flex;align-items:center;gap:18px;height:62px}.brand{display:flex;align-items:center;gap:11px;font-weight:650;letter-spacing:-.01em;color:var(--text)}.brand:hover{text-decoration:none}.brand svg{width:30px;height:30px;border-radius:8px;display:block}.nav{margin-left:auto;display:flex;gap:20px;align-items:center;font-size:.92rem}.nav a{color:var(--text-dim)}.nav a:hover{color:var(--text);text-decoration:none}.nav .ghbtn{border:1px solid var(--border-strong);border-radius:999px;padding:5px 13px;color:var(--text)}@media (max-width: 620px){.nav .hide-sm{display:none}}.hero{padding:74px 0 54px;position:relative;overflow:hidden}.hero:before{content:"";position:absolute;inset:-40% 30% auto -10%;height:480px;background:radial-gradient(closest-side,color-mix(in srgb,var(--accent) 22%,transparent),transparent);filter:blur(30px);pointer-events:none}.eyebrow{font-size:.8rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--accent-2);margin-bottom:14px}.hero h1{font-size:clamp(2.1rem,5vw,3.3rem);line-height:1.1;letter-spacing:-.02em;margin:0 0 18px;max-width:15ch}.hero p.lead{font-size:1.14rem;color:var(--text-dim);max-width:56ch;margin:0 0 28px}.cta-row{display:flex;flex-wrap:wrap;gap:12px}.btn{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;border-radius:999px;font-weight:600;font-size:.95rem;border:1px solid transparent;cursor:pointer}.btn-primary{background:var(--accent);color:var(--accent-ink)}.btn-primary:hover{text-decoration:none;filter:brightness(1.06)}.btn-ghost{border-color:var(--border-strong);color:var(--text)}.btn-ghost:hover{text-decoration:none;background:var(--bg-sunken)}section.band{padding:56px 0;border-top:1px solid var(--border)}section.band h2{font-size:1.5rem;letter-spacing:-.015em;margin:0 0 8px}section.band>.wrap>p.sub{color:var(--text-dim);margin:0 0 30px;max-width:62ch}.steps{display:grid;gap:16px;grid-template-columns:repeat(4,1fr);counter-reset:step}@media (max-width: 860px){.steps{grid-template-columns:1fr 1fr}}@media (max-width: 520px){.steps{grid-template-columns:1fr}}.step{background:var(--bg-raised);border:1px solid var(--border);border-radius:var(--radius);padding:18px 16px;box-shadow:var(--shadow)}.step .n{counter-increment:step;font-family:var(--mono);font-size:.78rem;color:var(--accent-2);font-weight:700}.step .n:before{content:"0" counter(step) " "}.step h3{font-size:1rem;margin:6px 0}.step p{font-size:.9rem;color:var(--text-dim);margin:0}.grid-2{display:grid;gap:18px;grid-template-columns:1fr 1fr}@media (max-width: 820px){.grid-2{grid-template-columns:1fr}}.card{background:var(--bg-raised);border:1px solid var(--border);border-radius:var(--radius);padding:20px;box-shadow:var(--shadow)}.card h3{margin:0 0 14px;font-size:1.05rem}.kv{display:grid;grid-template-columns:minmax(120px,auto) 1fr;gap:6px 16px;font-size:.9rem}.kv dt{color:var(--text-faint)}.kv dd{margin:0;font-family:var(--mono);font-size:.85rem;word-break:break-all}.addr-list{display:grid;gap:10px}.addr{display:flex;justify-content:space-between;align-items:baseline;gap:10px;padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-sunken);font-size:.85rem}.addr .label{color:var(--text-dim)}.addr code{font-family:var(--mono);font-size:.82rem}.pill{display:inline-flex;align-items:center;gap:6px;padding:2px 10px;border-radius:999px;font-size:.78rem;font-weight:600;border:1px solid var(--border-strong);color:var(--text-dim)}.pill.ok{color:var(--good);background:var(--good-bg);border-color:transparent}.pill.no{color:var(--bad);background:var(--bad-bg);border-color:transparent}.pill.warn{color:var(--warn);background:var(--warn-bg);border-color:transparent}.big-num{font-size:2.4rem;font-weight:700;letter-spacing:-.02em;font-family:var(--mono)}.checker label{display:block;font-size:.82rem;color:var(--text-dim);margin:12px 0 5px}.checker input{width:100%;padding:10px 12px;border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:var(--bg-sunken);color:var(--text);font-family:var(--mono);font-size:.85rem}.checker input:focus{outline:2px solid var(--accent);outline-offset:1px}.checker .btn{margin-top:16px}.result{margin-top:16px;padding:14px;border-radius:var(--radius-sm);border:1px solid var(--border);font-size:.9rem}.result.ok{background:var(--good-bg);border-color:transparent}.result.no{background:var(--bad-bg);border-color:transparent}.result.err{background:var(--warn-bg);border-color:transparent}.muted{color:var(--text-faint);font-size:.85rem}.notice{padding:12px 14px;border-radius:var(--radius-sm);background:var(--warn-bg);color:var(--warn);font-size:.88rem;border:1px solid transparent}.obs{display:grid;gap:12px}.obs .row{display:grid;grid-template-columns:180px 1fr;gap:14px;padding:12px 0;border-bottom:1px solid var(--border);font-size:.92rem}.obs .row:last-child{border-bottom:none}.obs .who{font-weight:600}@media (max-width: 620px){.obs .row{grid-template-columns:1fr;gap:3px}}.site-footer{border-top:1px solid var(--border);padding:34px 0 50px;color:var(--text-dim);font-size:.88rem}.site-footer .cols{display:flex;flex-wrap:wrap;gap:30px 48px;margin-bottom:24px}.site-footer h4{font-size:.78rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-faint);margin:0 0 8px}.site-footer ul{list-style:none;margin:0;padding:0;display:grid;gap:5px}.foot-bottom{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 24px;padding-top:20px;border-top:1px solid var(--border)}.built{font-weight:600;color:var(--text-dim);white-space:nowrap}.built .heart{color:var(--accent-2);font-weight:700}.spin{display:inline-block;width:14px;height:14px;border:2px solid var(--border-strong);border-top-color:var(--accent);border-radius:50%;animation:spin .7s linear infinite;vertical-align:-2px}@keyframes spin{to{transform:rotate(360deg)}}.error-fallback{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:32px 20px;background:var(--bg)}.error-fallback .card{max-width:520px;width:100%;text-align:center;padding:36px 28px}.error-fallback .card .pill{margin-bottom:14px}.error-fallback h2{font-size:1.4rem;letter-spacing:-.015em;margin:0 0 10px}.error-fallback p{color:var(--text-dim);font-size:.92rem;line-height:1.5;margin:0 0 18px}.error-fallback .error-details{background:var(--bg-sunken);border:1px solid var(--border);border-radius:var(--radius-sm);padding:10px 14px;font-family:var(--mono);font-size:.8rem;color:var(--bad);text-align:left;overflow-x:auto;margin:0 0 20px;white-space:pre-wrap;word-break:break-word}.error-fallback .error-details:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.error-fallback .error-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}.btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
