:root{color-scheme:light dark;--bg: #fbfbfa;--bg-sunken: #f2f2f0;--surface: #ffffff;--border: #e4e4e0;--text: #1c1c1a;--text-soft: #56564f;--text-faint: #86867c;--accent: #22324a;--accent-soft: #e6ebf2;--accent-text: #ffffff;--ok: #2f8f5f;--ok-soft: #e2f3ea;--bad: #b23b3b;--bad-soft: #f8e4e4;--p-pdf: #9a6b1f;--p-photo: #2f6f4f;--p-stream: #1f6f77;--p-chat: #b4552d;--p-image: #6b4fb3;--p-data: #1f7a6a;--radius: 16px;--radius-sm: 10px;--shadow: 0 1px 2px rgb(0 0 0 / 5%), 0 10px 30px rgb(0 0 0 / 6%);--column: 68rem;--font: "Hiragino Sans", "Yu Gothic UI", "Noto Sans JP", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--bg: #15171b;--bg-sunken: #1c1f24;--surface: #1f2228;--border: #2f333b;--text: #ecece9;--text-soft: #b6b6b0;--text-faint: #8a8a84;--accent: #9fb6d9;--accent-soft: #26303e;--accent-text: #10151d;--ok: #59c08a;--ok-soft: #1d3328;--bad: #e07474;--bad-soft: #3a2222}}:root[data-theme=dark]{--bg: #15171b;--bg-sunken: #1c1f24;--surface: #1f2228;--border: #2f333b;--text: #ecece9;--text-soft: #b6b6b0;--text-faint: #8a8a84;--accent: #9fb6d9;--accent-soft: #26303e;--accent-text: #10151d;--ok: #59c08a;--ok-soft: #1d3328;--bad: #e07474;--bad-soft: #3a2222}*,*:before,*:after{box-sizing:border-box}[hidden]{display:none!important}body{margin:0;background:var(--bg);color:var(--text);font:16px/1.6 var(--font);-webkit-font-smoothing:antialiased}#app{max-width:var(--column);margin:0 auto;padding:0 16px 48px}a{color:inherit}.skip{position:absolute;left:-999px}.skip:focus{left:16px;top:8px;background:var(--surface);padding:8px 12px;border-radius:var(--radius-sm)}.top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 0}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;font-weight:700;font-size:19px;letter-spacing:.02em}.tabs{display:flex;gap:4px;background:var(--bg-sunken);padding:4px;border-radius:999px}.tabs a{text-decoration:none;padding:6px 14px;border-radius:999px;font-size:14px;color:var(--text-soft)}.tabs a[aria-current=page]{background:var(--surface);color:var(--text);box-shadow:var(--shadow)}.pic{width:100%;height:auto;display:block}.pic-device{fill:var(--surface);stroke:var(--text);stroke-width:3;stroke-linejoin:round}.pic-screen,.pic-screen-bar{fill:var(--bg-sunken)}.pic-dot{fill:var(--text-faint)}.pic-orbit,.pic-orbit-ring{stroke:var(--text-faint);stroke-width:1.5;stroke-dasharray:4 6;fill:none}.pic-cloud{fill:var(--bg-sunken);stroke:var(--text-faint);stroke-width:3}.pic-arrow-blocked{stroke:var(--text-faint);stroke-width:4;stroke-dasharray:8 8;fill:none}.pic-arrow-blocked-head{stroke:var(--text-faint);stroke-width:4;fill:none;stroke-linecap:round;stroke-linejoin:round}.pic-arrow,.pic-arrow-head{stroke:var(--accent);stroke-width:4;fill:none;stroke-linecap:round;stroke-linejoin:round}.pic-bad-bg{fill:var(--bad-soft);stroke:var(--bad);stroke-width:2.5}.pic-bad{stroke:var(--bad);stroke-width:4;stroke-linecap:round;fill:none}.pic-ok-bg{fill:var(--ok-soft);stroke:var(--ok);stroke-width:2.5}.pic-ok{stroke:var(--ok);stroke-width:4;stroke-linecap:round;stroke-linejoin:round;fill:none}.pic-file{fill:var(--surface);stroke:var(--text);stroke-width:2.5;stroke-linejoin:round}.pic-file.ghost{stroke:var(--text-faint)}.pic-file-fold,.pic-line,.pic-hand{fill:none;stroke:var(--text);stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}.pic-boundary{fill:none;stroke:var(--ok);stroke-width:3;stroke-dasharray:6 6;rx:12}.pic-key,.pic-key-big{fill:none;stroke:var(--accent);stroke-width:5;stroke-linecap:round}.pic-key-big{stroke-width:7}.pic-key-hole{fill:var(--accent)}.pic-shop{fill:var(--surface);stroke:var(--text);stroke-width:3}.pic-awning{fill:var(--accent-soft);stroke:var(--text);stroke-width:3;stroke-linejoin:round}.pic-wave{fill:none;stroke:var(--text-faint);stroke-width:7;stroke-linecap:round}.pic-wave-dot{fill:var(--text-faint)}.pic-ray{stroke:var(--accent);stroke-width:2;stroke-dasharray:3 6;fill:none}.pic-accent{fill:none;stroke:var(--accent);stroke-width:2.5;stroke-linecap:round}.pic-accent-fill{fill:var(--accent)}.pic-on-accent{fill:none;stroke:var(--accent-text);stroke-width:2;stroke-linecap:round}.hero{display:grid;grid-template-columns:1.3fr 1fr;align-items:center;gap:24px;padding:12px 0 32px}.hero h1{font-size:clamp(28px,4.2vw,44px);line-height:1.2;margin:0 0 20px;letter-spacing:.01em;text-wrap:balance;word-break:auto-phrase}.chips{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0;margin:0 0 20px}.chip{display:inline-flex;align-items:center;gap:6px;padding:6px 12px 6px 8px;border-radius:999px;background:var(--ok-soft);color:var(--text);font-size:14px;font-weight:600}.chip svg{fill:none;stroke:var(--ok);stroke-width:2;stroke-linecap:round}.text-link{font-weight:600;color:var(--accent);text-decoration:none}.tools{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:14px;list-style:none;margin:0 0 32px;padding:0}.tool-card{position:relative;display:grid;justify-items:start;gap:4px;height:100%;padding:18px;border-radius:var(--radius);background:var(--surface);border:1px solid var(--border);text-decoration:none;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}a.tool-card:hover,a.tool-card:focus-visible{transform:translateY(-2px);box-shadow:var(--shadow);border-color:var(--c);outline:none}.tool-card.is-building{opacity:.6}.tool-name{font-weight:700;margin-top:8px}.tool-tag{color:var(--text-soft);font-size:14px}.status{position:absolute;top:16px;right:16px;font-size:12px;padding:2px 8px;border-radius:999px;background:var(--bg-sunken);color:var(--text-soft)}.status-live{background:var(--ok-soft);color:var(--ok)}.pass-banner{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;padding:20px 28px;border-radius:var(--radius);background:var(--accent-soft);text-decoration:none}.pass-banner .pic{max-width:420px}.pass-banner-title{font-size:clamp(20px,3vw,28px);font-weight:700}.page-title{font-size:clamp(26px,4vw,38px);margin:12px 0 24px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:32px}.step{position:relative;margin:0;padding:18px;border-radius:var(--radius);background:var(--surface);border:1px solid var(--border)}.step figcaption{margin-top:8px;font-weight:600}.step-n{position:absolute;top:12px;left:12px;width:28px;height:28px;display:grid;place-items:center;border-radius:50%;background:var(--accent);color:var(--accent-text);font-weight:700}.travels{width:100%;max-width:560px;border-collapse:collapse}.travels caption{text-align:left;font-weight:700;font-size:18px;padding-bottom:8px}.travels th,.travels td{padding:10px 4px;border-bottom:1px solid var(--border);text-align:left}.travels td{display:flex;align-items:center;gap:10px;color:var(--text-soft)}.pass-hero{margin:0 0 24px;max-width:560px}.pass-hero figcaption{text-align:center;color:var(--text-soft);font-weight:600}.compare{display:grid;grid-template-columns:minmax(150px,1.2fr) 3fr;gap:12px;margin-bottom:32px}.cap-names,.plan-rows{list-style:none;margin:0;padding:0}.cap-names{padding-top:58px}.cap-names li,.plan-rows li{height:52px;display:flex;align-items:center;gap:8px}.cap-names .cap-icon{flex:none}.plans{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.plan{display:flex;flex-direction:column;align-items:center;padding:0 8px 16px;border-radius:var(--radius);background:var(--surface);border:1px solid var(--border)}.plan h2{height:58px;margin:0;display:grid;place-items:center;font-size:18px}.plan-pass{border:2px solid var(--accent);box-shadow:var(--shadow)}.plan-rows li{justify-content:center}.plan-rows li.off{opacity:.35}.devices{margin-top:8px;font-size:13px;line-height:1.3;text-align:center;color:var(--text-soft)}.price{display:grid;justify-items:center;margin-top:8px;font-weight:700;font-size:20px;line-height:1.2}.price small{font-size:12px;font-weight:600;color:var(--text-soft)}.plan-note{margin-top:4px;padding:0 6px;font-size:12px;line-height:1.35;text-align:center;color:var(--text-soft)}.soon{margin-top:10px;font-size:13px;padding:4px 10px;border-radius:999px;background:var(--bg-sunken);color:var(--text-soft)}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.button{display:inline-block;margin-top:10px;padding:10px 18px;border:0;border-radius:999px;background:var(--accent);color:var(--accent-text);font:inherit;font-weight:700;text-decoration:none;cursor:pointer}.button:disabled{opacity:.6;cursor:progress}.link-button{border:0;background:none;color:var(--text-soft);text-decoration:underline;font:inherit;font-size:14px;cursor:pointer;padding:0}.activate{display:grid;gap:16px;max-width:560px;padding:20px;border-radius:var(--radius);background:var(--surface);border:1px solid var(--border)}.pass-card{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px}.pass-card-state{display:inline-flex;align-items:center;gap:8px;font-weight:700}.pass-card-state:before{content:"";width:12px;height:12px;border-radius:50%;background:var(--text-faint)}.activate[data-state=active] .pass-card-state:before{background:var(--ok)}.activate[data-state=expired] .pass-card-state:before,.activate[data-state=elsewhere] .pass-card-state:before{background:var(--bad)}.pass-card-until{color:var(--text-soft);font-size:14px}.key-form label{display:block;font-weight:600;margin-bottom:6px}.key-row{display:flex;gap:8px;flex-wrap:wrap}.key-row input{flex:1 1 240px;min-width:0;padding:10px 14px;border-radius:999px;border:1px solid var(--border);background:var(--bg);color:var(--text);font:inherit}.key-row .button{margin-top:0}.form-error{margin:8px 0 0;color:var(--bad);font-weight:600}.not-found{text-align:center;padding:48px 0}.foot{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;margin-top:48px;padding-top:16px;border-top:1px solid var(--border);font-size:14px;color:var(--text-soft)}.langs{display:flex;gap:12px}.langs a[aria-current=true]{font-weight:700;text-decoration:none}@media(max-width:760px){.hero,.steps{grid-template-columns:1fr}.hero .pic-family{order:2}.pass-banner{grid-template-columns:1fr}.compare{grid-template-columns:.9fr 2.6fr;gap:6px}.price{font-size:14px}.price small,.plan-note{font-size:10px}.plan .button{padding:6px 7px;font-size:11px;white-space:nowrap}.devices{font-size:10px}.cap-names li span{font-size:13px;line-height:1.25}.cap-names .cap-icon{width:30px;height:30px}.plans{gap:4px}.plan{padding:0 2px 12px}.plan h2{font-size:14px}.plan .button{padding:8px 10px;font-size:13px}.top{flex-wrap:wrap}}
