:root{color-scheme:light;--bg:#f2f6fc;--surface:#ffffff;--soft:#e6f1f8;--text:#101d2e;--muted:#50657a;--border:#c8d7e5;--accent:#007b9b;--hover:#00627d;--on-accent:#ffffff}:root[data-theme=dark]{color-scheme:dark;--bg:#070d18;--surface:#101d2e;--soft:#0a2538;--text:#f2f6fc;--muted:#95a7bb;--border:#25364a;--accent:#00c8f8;--hover:#55dcfc;--on-accent:#070d18}@media(prefers-color-scheme:dark){:root:not([data-theme]){color-scheme:dark;--bg:#070d18;--surface:#101d2e;--soft:#0a2538;--text:#f2f6fc;--muted:#95a7bb;--border:#25364a;--accent:#00c8f8;--hover:#55dcfc;--on-accent:#070d18}}:root{font-family:system-ui,-apple-system,Noto Sans JP,sans-serif;color:var(--text);background:var(--bg);font-synthesis:none;line-height:1.7}*{box-sizing:border-box}body{margin:0}header,footer{max-width:1120px;margin:auto;padding:24px 32px;display:flex;justify-content:space-between;align-items:center}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline}.brand{font-weight:750;letter-spacing:.04em}.mark{display:inline-grid;place-items:center;background:var(--accent);color:var(--on-accent);border-radius:12px;width:35px;height:35px;margin-right:8px}header>a:last-child{font-size:13px}main{max-width:1056px;margin:auto;padding:30px 24px 56px}.intro{margin-bottom:36px}.eyebrow{color:var(--accent);font-size:13px;font-weight:700;letter-spacing:.16em}h1{font-size:clamp(27px,4vw,42px);line-height:1.5;letter-spacing:.02em;margin:14px 0}h2{font-size:18px;margin:0}p{margin:12px 0}.intro p,.muted{color:var(--muted)}.muted{font-size:13px}section{background:var(--surface);border:1px solid var(--border);border-radius:18px;padding:28px;margin-bottom:22px}.section-head{display:flex;justify-content:space-between;align-items:center;gap:14px}.connection{border-top:4px solid var(--accent);box-shadow:0 8px 30px #183a2810}.badge{font-size:11px;color:var(--accent);background:var(--soft);border-radius:4px;padding:3px 7px}.ip{font-family:ui-monospace,monospace;font-size:clamp(24px,4vw,44px);font-weight:600;line-height:1.4;overflow-wrap:anywhere;margin:16px 0;letter-spacing:-.025em}.network{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:26px;border-top:1px solid var(--border);padding-top:10px}.columns{display:grid;grid-template-columns:1fr 1fr;gap:22px}.number{font-size:13px;color:var(--muted)}.row{padding:14px 0;border-bottom:1px solid var(--border);min-width:0}.row:last-child{border:0}.row strong{display:block;font-size:13px;font-weight:600}.value{overflow-wrap:anywhere;margin:6px 0;font-size:16px}.row small{display:block;color:var(--muted);font-size:12px}.source{color:var(--accent);font-size:11px}.row details summary{font-size:13px;cursor:pointer}button{font:inherit;font-size:13px;border:1px solid var(--border);border-radius:8px;padding:9px 17px;background:var(--surface);color:var(--text);cursor:pointer}button:hover:not(:disabled){background:var(--soft)}button:disabled{opacity:.5;cursor:not-allowed}.primary{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}.primary:hover:not(:disabled){background:var(--hover)}textarea{width:100%;resize:vertical;border:1px solid var(--border);background:var(--soft);color:var(--text);border-radius:10px;font:13px/1.8 ui-monospace,monospace;padding:18px;display:block;margin:8px 0 18px}.options{display:flex;flex-wrap:wrap;gap:16px 28px;margin:20px 0;font-size:14px}input{accent-color:var(--accent);width:17px;height:17px;vertical-align:middle}footer{border-top:1px solid var(--border);font-size:12px;color:var(--muted)}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--accent);outline-offset:3px}[hidden]{display:none!important}@media(max-width:650px){header,footer{padding:20px}main{padding:16px 16px 36px}.columns{display:block}.network{grid-template-columns:1fr;gap:0}section{padding:22px 18px}.intro{margin-bottom:24px}footer span{display:none}}.header-actions{display:flex;align-items:center;gap:16px;font-size:13px}#theme-toggle{min-height:44px}header{flex-wrap:wrap;gap:16px}.connection{box-shadow:0 8px 30px #00000018}section{border-radius:10px}.intro{container-type:inline-size}.intro h1{white-space:nowrap;font-size:clamp(12px,4.1cqw,42px)}
