:root{--bg:#f7f8fa;--surface:#fff;--surface-2:#f1f3f6;--fg:#0e1116;--fg-2:#2a2f38;--muted:#4d5462;--faint:#676d79;--line:#e4e7ec;--line-strong:#d2d6dd;--accent:#2c6ad8;--accent-2:#7a5af8;--accent-fg:#fff;--accent-soft:#e6eefd;--key-prod:#b33c0b;--key-dev:#0f8a5f;--key-pwd:#8b3fd9;--code-bg:#fbfbfc;--good:#0f8a5f;--warn:#b45309;--term-bg:#0f1115;--pop-bg:#fff;--shadow-sm:0 1px 2px #1018280d;--shadow-lg:0 1px 2px #1018280f, 0 24px 48px -16px #1018282e;--glow-a:#2f6fe029;--glow-b:#7a5af81f;--grid:#1018280d;--font-body:-apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", "Segoe UI", "Malgun Gothic", "Noto Sans KR", system-ui, sans-serif;--font-mono:ui-monospace, "SF Mono", Menlo, Consolas, "Liberation Mono", monospace;--font-title:-apple-system, BlinkMacSystemFont, "AppleSDGothicNeo-ExtraBold", "Apple SD Gothic Neo", "Malgun Gothic", "Noto Sans KR", "Noto Sans CJK KR", "Segoe UI", system-ui, sans-serif;--radius:16px;--max:1100px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#08090b;--surface:#111215;--surface-2:#17191d;--fg:#edeef1;--fg-2:#c9cdd4;--muted:#949aa6;--faint:#80868f;--line:#22252a;--line-strong:#2e3238;--accent:#6ea4ff;--accent-2:#a78bfa;--accent-fg:#06080c;--accent-soft:#152238;--key-prod:#fb8a4c;--key-dev:#3fcf95;--key-pwd:#c08bff;--code-bg:#0d0e11;--good:#3fcf95;--warn:#f5b544;--term-bg:#0b0c0f;--pop-bg:#1d1f24;--shadow-sm:0 1px 2px #0006;--shadow-lg:0 1px 2px #00000080, 0 30px 60px -20px #000000b3;--glow-a:#6ea4ff29;--glow-b:#a78bfa1f;--grid:#ffffff0a;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--bg:#08090b;--surface:#111215;--surface-2:#17191d;--fg:#edeef1;--fg-2:#c9cdd4;--muted:#949aa6;--faint:#80868f;--line:#22252a;--line-strong:#2e3238;--accent:#6ea4ff;--accent-2:#a78bfa;--accent-fg:#06080c;--accent-soft:#152238;--key-prod:#fb8a4c;--key-dev:#3fcf95;--key-pwd:#c08bff;--code-bg:#0d0e11;--good:#3fcf95;--warn:#f5b544;--term-bg:#0b0c0f;--pop-bg:#1d1f24;--shadow-sm:0 1px 2px #0006;--shadow-lg:0 1px 2px #00000080, 0 30px 60px -20px #000000b3;--glow-a:#6ea4ff29;--glow-b:#a78bfa1f;--grid:#ffffff0a;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-theme=dark] body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}}.tone-accent{--kc:var(--accent);--seg:var(--accent)}.tone-muted{--kc:var(--faint);--seg:var(--faint)}.tone-prod,.key-prod{--kc:var(--key-prod);--seg:var(--key-prod)}.tone-dev,.key-dev{--kc:var(--key-dev);--seg:var(--key-dev)}.tone-pwd{--kc:var(--key-pwd);--seg:var(--key-pwd)}*{box-sizing:border-box}html{scroll-padding-top:80px}body{isolation:isolate;background:var(--bg);color:var(--fg);font-family:var(--font-body);letter-spacing:-.006em;word-break:keep-all;overflow-wrap:anywhere;text-rendering:optimizelegibility;-webkit-text-size-adjust:100%;margin:0;font-size:16px;line-height:1.7;position:relative}img{max-width:100%}a{color:inherit}h1,h2,h3{text-wrap:balance;color:var(--fg);margin:0}h1{font-weight:700}h2{letter-spacing:-.022em;font-size:clamp(1.75rem,1.3rem + 1.5vw,2.5rem);font-weight:700;line-height:1.25}body:lang(ja){word-break:normal;line-break:strict;letter-spacing:0;word-break:auto-phrase;font-family:-apple-system,BlinkMacSystemFont,Hiragino Sans,Hiragino Kaku Gothic ProN,Yu Gothic UI,Yu Gothic,Meiryo,Noto Sans JP,Noto Sans CJK JP,system-ui,sans-serif}:lang(ko) h1,:lang(ko) h2{font-family:var(--font-title);font-weight:800}:root.os-win:lang(ko) :is(h1,h2){-webkit-text-stroke:.015em currentColor}h3{letter-spacing:-.015em;font-size:1.05rem;font-weight:700;line-height:1.4}p{margin:0}code,.mono{font-family:var(--font-mono);letter-spacing:0;font-size:.88em}p code,li code,dd code{background:var(--surface-2);border:1px solid var(--line);color:var(--fg-2);border-radius:6px;padding:1px 6px}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:6px}kbd{font-family:var(--font-mono);letter-spacing:0;border:1px solid var(--line-strong);background:var(--surface);color:var(--fg-2);white-space:nowrap;border-bottom-width:2px;border-radius:6px;padding:1px 6px;font-size:.78em}.icon{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:20px;height:20px}.skip{background:var(--accent);color:var(--accent-fg);z-index:20;border-radius:8px;padding:8px 14px;text-decoration:none;position:absolute;top:-48px;left:16px}.skip:focus{top:12px}.backdrop{z-index:-1;pointer-events:none;height:1100px;position:absolute;inset:0 0 auto;overflow:hidden}.backdrop:before{content:"";background:radial-gradient(42% 46% at 74% 18%, var(--glow-a), transparent 70%), radial-gradient(34% 38% at 22% 8%, var(--glow-b), transparent 70%);position:absolute;inset:0}.backdrop:after{content:"";background-image:linear-gradient(var(--grid) 1px, transparent 1px), linear-gradient(90deg, var(--grid) 1px, transparent 1px);background-position:top;background-size:56px 56px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(70% 60% at 50% 0,#000 30%,#0000 75%);mask-image:radial-gradient(70% 60% at 50% 0,#000 30%,#0000 75%)}.eyebrow{letter-spacing:.02em;color:var(--accent);align-items:center;gap:8px;font-size:.8rem;font-weight:700;display:inline-flex}.eyebrow:before{content:"";background:currentColor;border-radius:2px;width:14px;height:2px}.lede{color:var(--muted);max-width:60ch;font-size:1.04rem}.sec-head{justify-items:start;gap:14px;margin-bottom:40px;display:grid}.sec-head.center{text-align:center;justify-items:center}.btn{font:inherit;letter-spacing:-.01em;border:1px solid var(--line-strong);background:var(--surface);height:46px;color:var(--fg);cursor:pointer;white-space:nowrap;box-shadow:var(--shadow-sm);border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:0 20px;font-size:.95rem;font-weight:700;text-decoration:none;transition:border-color .15s,background-color .15s,box-shadow .15s,transform .15s;display:inline-flex}.btn:hover{border-color:var(--faint)}.btn .icon{stroke-width:2.2px;width:18px;height:18px}.btn.primary{color:var(--accent-fg);background:linear-gradient(180deg, color-mix(in srgb, var(--accent) 88%, #fff), var(--accent));box-shadow:0 1px 0 #ffffff40 inset, 0 8px 20px -8px color-mix(in srgb, var(--accent) 70%, transparent);border-color:#0000}.btn.primary:hover{box-shadow:0 1px 0 #ffffff40 inset, 0 12px 24px -8px color-mix(in srgb, var(--accent) 75%, transparent);transform:translateY(-1px)}.btn.ghost{box-shadow:none;color:var(--fg-2);background:0 0;border-color:#0000}.btn.ghost:hover{background:var(--surface-2)}.btn.ghost span{transition:transform .15s}.btn.ghost:hover span{transform:translate(2px)}.btn.small{border-radius:9px;height:34px;padding:0 14px;font-size:.86rem}.btn.big{border-radius:14px;height:52px;padding:0 28px;font-size:1.02rem}header.top{z-index:10;background:color-mix(in srgb, var(--bg) 78%, transparent);-webkit-backdrop-filter:saturate(1.6)blur(14px);border-bottom:1px solid color-mix(in srgb, var(--line) 70%, transparent);position:sticky;top:0}.top-inner{max-width:var(--max);align-items:center;gap:28px;height:64px;margin:0 auto;padding:0 20px;display:flex}.brand{letter-spacing:-.02em;align-items:center;gap:10px;font-size:1.04rem;font-weight:700;text-decoration:none;display:inline-flex}.logo{display:block}.nav{gap:4px;display:flex}.nav a{color:var(--muted);border-radius:8px;padding:6px 12px;font-size:.9rem;font-weight:500;text-decoration:none;transition:color .15s,background-color .15s}.nav a:hover{color:var(--fg);background:var(--surface-2)}.top-actions{align-items:center;gap:8px;margin-left:auto;display:flex}.lang-menu{position:relative}.lang-menu summary{cursor:pointer;color:var(--muted);border-radius:8px;align-items:center;gap:6px;padding:6px 10px;font-size:.86rem;font-weight:500;list-style:none;display:inline-flex}.lang-menu summary::-webkit-details-marker{display:none}.lang-menu summary:hover,.lang-menu[open] summary{color:var(--fg);background:var(--surface-2)}.lang-menu summary .icon{width:16px;height:16px}.lang-menu ul{z-index:20;background:var(--surface);border:1px solid var(--line);min-width:132px;box-shadow:var(--shadow-lg);border-radius:12px;margin:0;padding:6px;list-style:none;position:absolute;top:calc(100% + 6px);right:0}.lang-menu a{color:var(--fg-2);border-radius:8px;padding:7px 10px;font-size:.88rem;text-decoration:none;display:block}.lang-menu a:hover{background:var(--surface-2)}.lang-menu a[aria-current=page]{color:var(--accent);font-weight:600}.theme-btn{border:1px solid var(--line);background:var(--surface);width:34px;height:34px;color:var(--fg-2);cursor:pointer;border-radius:9px;place-items:center;padding:0;display:grid}.theme-btn:hover{border-color:var(--line-strong)}.theme-btn svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:17px;height:17px}.theme-btn .i-sun{display:none}:root[data-theme=dark] .theme-btn .i-sun{display:block}:root[data-theme=dark] .theme-btn .i-moon{display:none}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .theme-btn .i-sun{display:block}:root:not([data-theme=light]) .theme-btn .i-moon{display:none}}.wrap{max-width:var(--max);grid-template-columns:minmax(0,1fr);gap:136px;margin:0 auto;padding:0 20px 120px;display:grid}section{min-width:0}.hero{grid-template-columns:minmax(0,1fr) minmax(0,1.04fr);align-items:center;gap:56px;padding-top:88px;display:grid}.hero-copy{justify-items:start;gap:24px;display:grid}.badge{color:var(--fg-2);background:color-mix(in srgb, var(--surface) 80%, transparent);border:1px solid var(--line);box-shadow:var(--shadow-sm);font-variant-numeric:tabular-nums;border-radius:99px;align-items:center;gap:8px;padding:5px 12px 5px 10px;font-size:.82rem;font-weight:600;display:inline-flex}.badge-dot{background:var(--good);width:7px;height:7px;box-shadow:0 0 0 3px color-mix(in srgb, var(--good) 20%, transparent);border-radius:50%}.hero h1{letter-spacing:-.03em;font-size:clamp(2.5rem,1.5rem + 3.6vw,4.1rem);line-height:1.12}:lang(en) .hero h1{font-size:clamp(2.3rem,1.4rem + 2.9vw,3.45rem)}:lang(ja) .hero h1{font-size:clamp(2rem,1.2rem + 2.3vw,2.8rem);line-height:1.28}:lang(ja) h2{line-height:1.35}.hero h1 em{background:linear-gradient(100deg, var(--accent) 10%, var(--accent-2) 90%);color:#0000;-webkit-background-clip:text;background-clip:text;font-style:normal}:root.os-win:lang(ko) .hero h1 em{-webkit-text-stroke-color:color-mix(in srgb, var(--accent) 55%, var(--accent-2))}.hero-copy .lede{font-size:1.12rem;line-height:1.75}.hero-copy .lede b{color:var(--fg);font-weight:700}.cta{flex-wrap:wrap;gap:10px;margin-top:4px;display:flex}.req{color:var(--faint);font-size:.84rem}.hero-demo{min-width:0;position:relative}.hero-demo:before{content:"";z-index:-1;filter:blur(48px);opacity:.7;background:linear-gradient(120deg, var(--glow-a), var(--glow-b));position:absolute;inset:8% -4% 14%}.editor{background:var(--surface);border:1px solid var(--line-strong);box-shadow:var(--shadow-lg);border-radius:14px;min-width:0;position:relative;overflow:hidden}.ed-bar{border-bottom:1px solid var(--line);background:var(--surface-2);flex-wrap:wrap;align-items:center;gap:12px;padding:10px 14px;display:flex}.dots{gap:7px;display:flex}.dots i{background:var(--line-strong);border-radius:50%;width:11px;height:11px;display:block}.editor .dots i:first-child{background:#ff5f57}.editor .dots i:nth-child(2){background:#febc2e}.editor .dots i:nth-child(3){background:#28c840}.tab{font-family:var(--font-mono);color:var(--fg);background:var(--surface);border:1px solid var(--line);border-radius:7px;padding:3px 12px;font-size:.78rem}.ed-body{font-family:var(--font-mono);letter-spacing:0;background:var(--code-bg);padding:16px 0;font-size:.84rem;line-height:1.95;overflow-x:auto}.ln{white-space:pre;min-height:1.95em;padding-right:16px;display:flex}.ln .no{text-align:right;width:44px;color:color-mix(in srgb, var(--faint) 75%, var(--code-bg));-webkit-user-select:none;user-select:none;z-index:1;background:var(--code-bg);flex:none;padding-right:16px;position:sticky;left:0}.ed-body .k{color:var(--accent)}.ed-body .c{color:var(--faint);font-style:italic}.ed-body .tok{font:inherit;cursor:pointer;color:var(--kc);white-space:pre;line-height:inherit;text-underline-offset:4px;background:0 0;border:0;border-radius:3px;margin:0;padding:0 1px;-webkit-text-decoration:underline #0000;text-decoration:underline #0000;text-decoration-thickness:2px;transition:background-color .12s}.ed-body .tok:hover{background:color-mix(in srgb, var(--kc) 10%, transparent)}.ed-body .tok.active{background:color-mix(in srgb, var(--kc) 16%, transparent);-webkit-text-decoration-color:var(--kc);text-decoration-color:var(--kc)}.ed-body .tok.shown{color:var(--fg);background:color-mix(in srgb, var(--good) 16%, transparent);-webkit-text-decoration-color:var(--kc);text-decoration-color:var(--kc)}.pop{z-index:5;white-space:nowrap;background:var(--pop-bg);border:1px solid var(--line-strong);box-shadow:var(--shadow-lg);border-radius:12px;align-items:center;gap:6px;padding:6px 8px 6px 12px;font-size:.8rem;display:flex;position:absolute}.pop.measuring{visibility:hidden}.pop .icon{stroke-width:2px;width:16px;height:16px}.pop-key{align-items:center;gap:6px;display:inline-flex}.pop-key .icon{color:var(--kc)}.pop-key b{font-size:.88rem;font-weight:700}.pop-kid{font-family:var(--font-mono);color:var(--faint);font-size:.76rem}.pop-timer{background:var(--surface-2);font-family:var(--font-mono);font-variant-numeric:tabular-nums;border-radius:99px;align-items:center;gap:4px;padding:2px 8px;font-size:.76rem;display:inline-flex}.pop-timer .icon{width:13px;height:13px}.pop-sep{background:var(--line-strong);width:1px;height:20px;margin:0 4px}.pop-btn{height:28px;font:inherit;cursor:pointer;border:1px solid #0000;border-radius:99px;align-items:center;gap:5px;padding:0 12px;font-size:.8rem;font-weight:700;display:inline-flex}.pop-btn .icon{width:15px;height:15px}.pop-btn.show{background:var(--kc);color:var(--accent-fg)}.pop-btn.hide{background:var(--good);color:var(--accent-fg)}.pop-btn.outline{border-color:var(--line-strong);color:var(--fg-2);background:0 0}.pop-btn.outline:hover{background:var(--surface-2)}.pop-icon{width:26px;height:28px;color:var(--muted);place-items:center;display:grid}.pop-arrow{left:var(--arrow,24px);background:var(--pop-bg);border-right:1px solid var(--line-strong);border-bottom:1px solid var(--line-strong);width:10px;height:10px;position:absolute;bottom:-6px;transform:translate(-50%)rotate(45deg)}.ed-foot{border-top:1px solid var(--line);color:var(--muted);background:var(--surface);flex-wrap:wrap;justify-content:space-between;gap:12px;padding:8px 14px;font-size:.76rem;display:flex}.demo-note{color:var(--faint);text-align:center;margin-top:14px;font-size:.84rem}.stats-band{gap:28px;margin-top:-48px;display:grid}.stats{border:1px solid var(--line);border-radius:var(--radius);background:color-mix(in srgb, var(--surface) 70%, transparent);box-shadow:var(--shadow-sm);grid-template-columns:repeat(4,minmax(0,1fr));margin:0;display:grid;overflow:hidden}.stats div{align-content:start;gap:4px;padding:22px 24px;display:grid}.stats div+div{border-left:1px solid var(--line)}.stats dt{letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:1.3rem;font-weight:700}.stats dd{color:var(--muted);margin:0;font-size:.86rem;line-height:1.5}.chips{flex-wrap:wrap;justify-content:center;gap:8px;margin:0;padding:0;list-style:none;display:flex}.chip{background:var(--surface);border:1px solid var(--line);color:var(--muted);border-radius:99px;padding:4px 12px;font-size:.8rem;font-weight:500}.cmp,.anatomy,.feat,.keymap-card,.sec-card,.plat-wrap,.faq details{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.compare{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.cmp{align-content:start;gap:18px;min-width:0;padding:26px;display:grid}.cmp pre{font-family:var(--font-mono);letter-spacing:0;background:var(--code-bg);border:1px solid var(--line);color:var(--fg-2);border-radius:10px;margin:0;padding:14px 16px;font-size:.78rem;line-height:1.75;overflow-x:auto}.cmp:not(.mine) pre{color:var(--faint)}.cmp ul{color:var(--muted);gap:8px;margin:0;padding:0;font-size:.94rem;list-style:none;display:grid}.cmp li{padding-left:18px;position:relative}.cmp li:before{content:"";background:var(--line-strong);border-radius:50%;width:6px;height:6px;position:absolute;top:.72em;left:2px}.cmp.mine li:before{background:var(--accent)}.tag{color:var(--muted);align-items:center;gap:8px;font-size:.86rem;font-weight:700;display:inline-flex}.tag .icon{stroke-width:2.6px;background:var(--surface-2);border-radius:6px;width:18px;height:18px;padding:3px}.cmp.mine{border-color:color-mix(in srgb, var(--accent) 45%, var(--line));box-shadow:0 0 0 4px color-mix(in srgb, var(--accent) 8%, transparent), var(--shadow-sm)}.cmp.mine .tag{color:var(--fg)}.cmp.mine .tag .icon{color:var(--accent-fg);background:var(--accent)}.tok-inline{color:var(--key-prod);background:color-mix(in srgb, var(--key-prod) 10%, transparent);border-radius:4px;padding:1px 3px}.anatomy{gap:32px;padding:36px 28px 30px;display:grid}.anat-line{text-align:center;padding-bottom:6px;overflow-x:auto}.anat-row{font-family:var(--font-mono);letter-spacing:0;white-space:nowrap;font-size:clamp(.82rem,.6rem + .9vw,1.3rem);display:inline-flex}.anat-row span{padding:6px 2px 10px}.anat-row .piece{border-bottom:3px solid var(--seg)}.anat-row .sep{color:var(--faint)}.parts{border-top:1px solid var(--line);grid-template-columns:repeat(5,minmax(0,1fr));gap:16px 24px;padding-top:28px;display:grid}.part{border-left:2px solid var(--seg);align-content:start;gap:6px;padding-left:14px;display:grid}.part b{font-family:var(--font-mono);letter-spacing:0;font-size:.82rem;font-weight:600}.part p{color:var(--muted);font-size:.88rem;line-height:1.6}.steps{counter-reset:s;grid-template-columns:repeat(5,minmax(0,1fr));gap:24px;margin:0;padding:0;list-style:none;display:grid}.steps li{counter-increment:s;align-content:start;gap:10px;min-width:0;display:grid;position:relative}.steps li:before{content:counter(s);font-family:var(--font-mono);color:var(--accent);background:var(--surface);border:1px solid color-mix(in srgb, var(--accent) 40%, var(--line));width:36px;height:36px;box-shadow:0 0 0 5px var(--bg);border-radius:50%;place-items:center;margin-bottom:6px;font-size:.85rem;font-weight:700;display:grid}.steps li:not(:last-child):after{content:"";z-index:-1;background:linear-gradient(90deg, color-mix(in srgb, var(--accent) 45%, var(--line)), var(--line));height:1px;position:absolute;top:18px;left:48px;right:-12px}.steps p{color:var(--muted);font-size:.9rem}.features{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.feat{align-content:start;gap:10px;min-width:0;padding:26px 24px;transition:border-color .15s,box-shadow .15s;display:grid}.feat:hover{border-color:var(--line-strong);box-shadow:var(--shadow-lg)}.feat-icon{width:40px;height:40px;color:var(--accent);background:var(--accent-soft);border-radius:11px;place-items:center;margin-bottom:6px;display:grid}.feat p{color:var(--muted);font-size:.92rem}.feat .kb{color:var(--faint);margin-top:2px;font-size:.8rem}.keymap-card{padding:36px 32px 32px}.keymap{grid-template-columns:minmax(0,1fr) 56px minmax(0,1fr) 56px minmax(0,1.15fr);align-items:center;gap:12px;display:grid}.col{gap:10px;min-width:0;display:grid}.col-label{letter-spacing:.04em;color:var(--faint);font-size:.74rem;font-weight:700}.node{background:var(--surface-2);border:1px solid var(--line);border-radius:11px;align-items:center;gap:10px;padding:11px 14px;font-size:.92rem;display:flex}.node.vmk{background:var(--surface);border:1px solid color-mix(in srgb, var(--accent) 55%, var(--line));box-shadow:0 0 0 4px color-mix(in srgb, var(--accent) 10%, transparent);padding:16px;font-weight:700}.node.vmk .icon{color:var(--accent);width:22px;height:22px}.node.vmk span{gap:2px;display:grid}.node.vmk small{color:var(--muted);font-size:.8rem;font-weight:400}.node .dot{background:var(--kc);width:9px;height:9px;box-shadow:0 0 0 3px color-mix(in srgb, var(--kc) 18%, transparent);border-radius:50%;flex:none}.node .mono{color:var(--faint);margin-left:auto;font-size:.76rem}.arrow{background:var(--line-strong);height:1px;position:relative}.arrow:after{content:"";border-top:1px solid var(--faint);border-right:1px solid var(--faint);width:8px;height:8px;position:absolute;top:-4px;right:0;transform:rotate(45deg)}.key-notes{border-top:1px solid var(--line);grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin-top:36px;padding-top:28px;display:grid}.key-notes div{align-content:start;gap:6px;display:grid}.key-notes p{color:var(--muted);font-size:.9rem}.sec-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.sec-card{--tone:var(--good);align-content:start;gap:22px;min-width:0;padding:28px;display:grid;position:relative;overflow:hidden}.sec-card.warn{--tone:var(--warn)}.sec-card:before{content:"";background:linear-gradient(90deg, var(--tone), transparent);opacity:.8;height:3px;position:absolute;inset:0 0 auto}.sec-card h3{align-items:center;gap:10px;font-size:1.1rem;display:flex}.sec-icon{width:34px;height:34px;color:var(--tone);background:color-mix(in srgb, var(--tone) 12%, transparent);border-radius:10px;place-items:center;display:grid}.sec-icon .icon{width:18px;height:18px}.pill{color:var(--tone);background:color-mix(in srgb, var(--tone) 12%, transparent);border-radius:99px;margin-left:auto;padding:3px 10px;font-size:.72rem;font-weight:600}.sec-card ul{gap:18px;margin:0;padding:0;list-style:none;display:grid}.sec-card li{grid-template-columns:20px minmax(0,1fr);gap:12px;display:grid}.sec-card .mark{width:18px;height:18px;color:var(--tone);stroke-width:2.4px;margin-top:3px}.sec-card b{font-size:.95rem;font-weight:700}.sec-card p{color:var(--muted);margin-top:2px;font-size:.9rem}.cli{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);align-items:center;gap:40px;display:grid}.term{background:var(--term-bg);box-shadow:var(--shadow-lg);border:1px solid #22252b;border-radius:14px;min-width:0;overflow:hidden}.term-bar{background:#14161b;border-bottom:1px solid #1e2127;align-items:center;padding:11px 14px;display:flex}.term .dots i{background:#3a3e46}.term-title{font-family:var(--font-mono);color:#7d8390;align-items:center;gap:6px;margin:0 auto;font-size:.74rem;display:inline-flex;transform:translate(-24px)}.term-title .icon{width:14px;height:14px}.term pre{font-family:var(--font-mono);letter-spacing:0;color:#e4e7ee;white-space:pre;margin:0;padding:20px 22px 22px;font-size:.82rem;line-height:1.85;overflow-x:auto}.term .p{color:#6ea4ff}.term .d{color:#7d8390}.term .g{color:#3fcf95}.cli-points{color:var(--muted);gap:18px;margin:0;padding:0;font-size:.95rem;list-style:none;display:grid}.cli-points li{padding-left:22px;position:relative}.cli-points li:before{content:"";background:var(--accent-soft);width:10px;height:10px;box-shadow:0 0 0 1px color-mix(in srgb, var(--accent) 45%, transparent) inset;border-radius:3px;position:absolute;top:.55em;left:0}.cli-points b{color:var(--fg);font-weight:700}.cli-points code{white-space:nowrap}.plat-wrap{overflow:hidden}.plat{grid-template-columns:repeat(3,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.plat>li{--tone:var(--faint);align-content:start;min-width:0;padding:30px 28px 32px;display:grid;position:relative}.plat>li.now{--tone:var(--good);background:radial-gradient(120% 100% at 0 0, color-mix(in srgb, var(--good) 9%, transparent), transparent 70%)}.plat>li.wip{--tone:var(--accent)}.plat>li:not(:last-child):before{content:"";border-radius:2px;height:2px;position:absolute;top:36px;left:50px;right:-20px}.plat>li.now:before{background:linear-gradient(90deg, var(--good), var(--accent))}.plat>li.wip:before{background:repeating-linear-gradient(90deg, var(--line-strong) 0 6px, transparent 6px 12px)}.plat-node{z-index:1;box-sizing:border-box;border-radius:50%;width:14px;height:14px;position:relative}.now .plat-node{background:var(--tone);box-shadow:0 0 0 5px color-mix(in srgb, var(--tone) 18%, transparent)}.wip .plat-node{border:2px solid var(--tone);background:radial-gradient(circle, var(--tone) 0 2.5px, var(--surface) 3px)}.later .plat-node{border:2px solid var(--line-strong);background:var(--surface)}.plat-st{color:var(--tone);margin-top:16px;font-size:.8rem;font-weight:600}.later .plat-st{color:var(--muted)}.plat-devs{gap:14px;margin:18px 0 0;padding:0;list-style:none;display:grid}.plat-devs li{align-items:center;gap:14px;min-width:0;display:flex}.dev-icon{width:44px;height:44px;color:var(--tone);background:color-mix(in srgb, var(--tone) 10%, var(--surface));border:1px solid color-mix(in srgb, var(--tone) 24%, var(--line));border-radius:12px;flex:none;place-items:center;display:grid}.dev-icon .icon{stroke-width:1.7px;width:22px;height:22px}.later .dev-icon{color:var(--faint);background:var(--surface-2);border:1px dashed var(--line-strong)}.dev-name{gap:2px;min-width:0;font-size:1.05rem;font-weight:700;display:grid}.dev-name small{color:var(--muted);font-size:.8rem;font-weight:400}.later .dev-name{color:var(--muted)}.faq-sec{grid-template-columns:minmax(0,.8fr) minmax(0,1.6fr);align-items:start;gap:48px;display:grid}.faq-sec .sec-head{margin-bottom:0;position:sticky;top:104px}.faq{gap:10px;display:grid}.faq details{transition:border-color .15s}.faq details[open]{border-color:var(--line-strong)}.faq summary{cursor:pointer;letter-spacing:-.015em;justify-content:space-between;align-items:center;gap:16px;padding:18px 22px;font-weight:700;list-style:none;display:flex}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"";border-right:1.8px solid var(--faint);border-bottom:1.8px solid var(--faint);flex:none;width:8px;height:8px;margin-right:4px;transition:transform .15s;transform:translateY(-2px)rotate(45deg)}.faq details[open] summary:after{transform:translateY(2px)rotate(-135deg)}.faq details p{color:var(--muted);padding:0 22px 20px;font-size:.94rem}.download{isolation:isolate;text-align:center;border:1px solid var(--line);background:radial-gradient(70% 80% at 50% 0%, var(--glow-a), transparent 70%), var(--surface);box-shadow:var(--shadow-sm);border-radius:28px;justify-items:center;gap:18px;padding:80px 24px 64px;display:grid;position:relative;overflow:hidden}.download:before{content:"";z-index:-1;background-image:linear-gradient(var(--grid) 1px, transparent 1px), linear-gradient(90deg, var(--grid) 1px, transparent 1px);background-size:40px 40px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(60% 70% at 50% 30%,#000,#0000 80%);mask-image:radial-gradient(60% 70% at 50% 30%,#000,#0000 80%)}.dl-icon{width:96px;height:96px;filter:drop-shadow(0 16px 28px color-mix(in srgb, var(--accent) 40%, transparent));margin-bottom:6px}.download h2{max-width:20ch}:lang(ja) .download h2{max-width:15em}.download .lede{margin:0 auto 10px}.download .req{margin-top:4px}.brew{gap:14px;width:100%;max-width:580px;margin-top:14px;display:grid}.brew-title{color:var(--faint);align-items:center;gap:14px;margin:0;font-size:.8rem;font-weight:500;display:flex}.brew-title:before,.brew-title:after{content:"";background:var(--line);flex:1;height:1px}.brew-steps{text-align:left;background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-sm);border-radius:16px;gap:20px;margin:0;padding:20px 20px 22px;list-style:none;display:grid}.brew-step{grid-template-columns:26px minmax(0,1fr);gap:10px 14px;display:grid;position:relative}.brew-step:not(:last-child):before{content:"";background:var(--line);border-radius:1px;width:2px;position:absolute;top:36px;bottom:-14px;left:12px}.brew-num{width:26px;height:26px;color:var(--accent);background:var(--accent-soft);border-radius:50%;grid-row:1;place-items:center;margin-top:2px;font-size:.78rem;font-weight:700;display:grid}.brew-head{grid-column:2;align-items:center;gap:8px;min-width:0;min-height:30px;display:flex}.brew-name{min-width:0;color:var(--fg);flex-wrap:wrap;flex:1;align-items:center;gap:4px 8px;font-size:.92rem;font-weight:600;line-height:1.5;display:flex}.brew-badge{color:var(--muted);background:var(--surface-2);white-space:nowrap;border-radius:999px;padding:1px 8px;font-size:.72rem;font-weight:500;line-height:1.5}.brew-cmds{background:var(--code-bg);border:1px solid var(--line);border-radius:10px;grid-column:2;gap:4px;padding:7px 8px 7px 14px;display:grid}.brew-cmd{align-items:flex-start;gap:10px;display:flex}.brew-line{text-indent:calc(-1ch - .6em);overflow-wrap:anywhere;min-width:0;color:var(--fg);background:0 0;border:0;border-radius:0;flex:1;padding:4px 0 4px calc(1ch + .6em);font-size:.86rem;line-height:1.7}.brew-p{color:var(--accent);-webkit-user-select:none;user-select:none;margin-right:.6em}.brew-word{text-indent:0;max-width:100%;display:inline-block}.brew-seg{white-space:nowrap}.brew-copy{width:30px;height:30px;color:var(--faint);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;flex:none;place-items:center;margin-top:1px;padding:0;transition:color .15s,border-color .15s,background-color .15s;display:grid}.brew-copy:hover{color:var(--fg);border-color:var(--line);background:var(--surface)}.brew-copy.copied{color:var(--accent)}.brew-copy.failed{color:var(--warn)}.brew-copy .icon{stroke-width:2px;width:15px;height:15px}.brew-steps.plain .brew-step{grid-template-columns:minmax(0,1fr)}.brew-steps.plain .brew-step:before{content:none}.brew-note{color:var(--muted);grid-column:2;margin:-4px 0 0;font-size:.88rem}.brew-steps.plain .brew-head,.brew-steps.plain .brew-cmds,.brew-steps.plain .brew-note{grid-column:1}.cli-side{align-content:center;gap:28px;min-width:0;display:grid}.cli-install{color:var(--muted);margin:0;padding-left:22px;font-size:.92rem}.cli-install a{color:var(--accent);align-items:center;gap:4px;font-weight:600;text-decoration:none;display:inline-flex}.cli-install a:hover{text-underline-offset:3px;text-decoration:underline}.cli-install .icon{stroke-width:2px;width:15px;height:15px}.cli-sub{border-top:1px solid var(--line);align-items:start;margin-top:64px;padding-top:48px}.cli-sub-text{align-content:start;gap:16px;min-width:0;display:grid}.cli-sub-text h3{font-size:1.35rem}.cli-sub-text>p{color:var(--muted);margin:0;font-size:.95rem}.cli-sub .brew{max-width:none;margin-top:0}.foot{border-top:1px solid var(--line);background:var(--surface)}.foot-inner{max-width:var(--max);grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,1fr);gap:32px;margin:0 auto;padding:48px 20px 32px;display:grid}.foot-brand{align-content:start;gap:10px;display:grid}.foot-brand p{color:var(--muted);font-size:.9rem}.foot-col{align-content:start;gap:8px;font-size:.9rem;display:grid}.foot-col a{color:var(--muted);width:fit-content;text-decoration:none}.foot-col a:hover,.foot-col a[aria-current=page]{color:var(--fg)}.foot-label{letter-spacing:.04em;color:var(--faint);margin-bottom:4px;font-size:.74rem;font-weight:700}.foot-bottom{max-width:var(--max);border-top:1px solid var(--line);color:var(--faint);flex-wrap:wrap;justify-content:space-between;gap:8px 24px;margin:0 auto;padding:18px 20px 36px;font-size:.82rem;display:flex}@media (width<=1000px){.nav{display:none}}@media (width<=900px){.wrap{gap:104px}.hero,.cli,.faq-sec{grid-template-columns:minmax(0,1fr);gap:36px}.hero{padding-top:48px}.faq-sec .sec-head{position:static}.stats-band{margin-top:-32px}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.stats div:nth-child(3){border-left:0}.stats div:nth-child(n+3){border-top:1px solid var(--line)}.steps{grid-template-columns:minmax(0,1fr);gap:0}.steps li{grid-template-columns:36px minmax(0,1fr);gap:4px 18px;padding-bottom:28px}.steps li:before{grid-row:span 2;margin-bottom:0}.steps li:not(:last-child):after{background:linear-gradient(180deg, color-mix(in srgb, var(--accent) 45%, var(--line)), var(--line));width:1px;height:auto;inset:42px auto 4px 18px}.features{grid-template-columns:repeat(2,minmax(0,1fr))}.keymap{grid-template-columns:minmax(0,1fr);gap:16px}.arrow{justify-self:center;width:1px;height:28px}.arrow:after{top:auto;bottom:0;right:-4px;transform:rotate(135deg)}.key-notes{grid-template-columns:minmax(0,1fr);gap:20px}.parts{grid-template-columns:repeat(2,minmax(0,1fr))}.foot-inner{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.foot-brand{grid-column:1/-1}}@media (width<=620px){.wrap{gap:88px;padding-left:16px;padding-right:16px}.top-inner{gap:12px;padding:0 16px}.top-actions .btn.small{display:none}.hero h1{font-size:2.4rem}.cta{width:100%}.cta .btn{flex:auto}.compare,.sec-grid,.features,.parts{grid-template-columns:minmax(0,1fr)}.cmp,.sec-card{padding:22px}.features{gap:10px}.feat{grid-template-columns:36px minmax(0,1fr);gap:6px 14px;padding:18px}.feat>*{grid-column:2}.feat .feat-icon{grid-area:1/1/span 3;width:36px;height:36px;margin-bottom:0}.keymap-card,.anatomy{padding:26px 20px}.pop-kid,.pop-copy-label,.pop-icon,.pop-sep{display:none}.pop{gap:5px;padding:5px 6px 5px 10px}.pop-btn{padding:0 10px}.stats div{padding:18px}.stats dt{font-size:1.1rem}.download{border-radius:22px;padding:56px 20px 44px}.brew-steps{gap:18px;padding:16px 14px 18px}.brew-step{grid-template-columns:24px minmax(0,1fr);column-gap:10px}.brew-step:not(:last-child):before{display:none}.brew-num{width:24px;height:24px;margin-top:3px}.brew-cmds{grid-column:1/-1;padding:6px 4px 6px 12px}.plat{grid-template-columns:minmax(0,1fr)}.plat>li{grid-template-columns:14px minmax(0,1fr);align-items:center;column-gap:16px;padding:22px 22px 24px}.plat>li:not(:last-child):before{width:2px;height:auto;inset:44px auto -14px 28px}.plat>li.now:before{background:linear-gradient(180deg, var(--good), var(--accent))}.plat>li.wip:before{background:repeating-linear-gradient(180deg, var(--line-strong) 0 6px, transparent 6px 12px)}.plat-st{margin-top:0}.plat-devs{grid-column:2;margin-top:14px}}@media (prefers-reduced-motion:reduce){*{transition:none!important}}
