:root{--paper:#f5f8fc;--ink:#142638;--muted:#576e81;--line:#d9e2ec;--accent:#245bc9;--soft:#eaf0fa;--terminal:#152838;--radius:8px;--mono:ui-monospace,SFMono-Regular,Consolas,monospace;--font:"Apple SD Gothic Neo","Malgun Gothic","Noto Sans KR",sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:40px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input{font:inherit}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:5px}.topbar,main,footer{max-width:1184px;margin:auto;padding-left:40px;padding-right:40px}.topbar{height:104px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{font:600 19px var(--mono);letter-spacing:-.8px;display:flex;align-items:center;gap:13px}.mark{display:grid;align-items:center;grid-template-columns:auto auto;width:35px;height:35px;background:var(--ink);color:white;border-radius:6px;padding:6px;font-size:23px}.mark span{color:#8baded}nav{display:flex;gap:32px;font-size:14px;font-weight:600}nav a:last-child{color:var(--accent)}.hero{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;min-height:660px;padding:74px 0 88px}.eyebrow{font:500 11px var(--mono);letter-spacing:1.5px;color:var(--muted);margin:0 0 26px;display:flex;align-items:center;gap:9px}.live-dot{height:6px;width:6px;border-radius:50%;background:var(--accent)}h1{font-size:clamp(40px,4.8vw,59px);font-weight:750;letter-spacing:-2.7px;line-height:1.21;margin:0 0 26px}.period{color:var(--accent)}.lede{font-size:16px;line-height:1.9;color:var(--muted);margin:0 0 31px;letter-spacing:-.25px}.button{display:inline-flex;justify-content:center;gap:28px;align-items:center;border-radius:var(--radius);min-height:52px;padding:0 22px;font-size:15px;font-weight:650;transition:background .2s,transform .2s}.button.primary{background:var(--accent);color:#fff}.button.primary:hover{background:#1b49a6;transform:translateY(-1px)}.button[aria-disabled="true"]{background:#dee6ee;color:#627587;cursor:default;pointer-events:none}.aside{font-size:11px;color:var(--muted);margin:16px 0 0}.aside span{padding:0 7px}.preview{padding-top:14px}.preview-label{font:500 10px var(--mono);letter-spacing:1px;display:flex;justify-content:space-between;margin-bottom:14px;color:var(--muted)}.preview-label span{font-family:var(--font);letter-spacing:0}.terminal{background:var(--terminal);color:#edf3f8;border-radius:var(--radius);overflow:hidden;box-shadow:0 18px 38px -23px #0d243e80}.terminal-head{height:45px;background:#203649;display:flex;align-items:center;justify-content:space-between;font:10px var(--mono);color:#9ab0c3;padding:0 17px}.traffic{display:flex;gap:5px}.traffic i{width:7px;height:7px;border-radius:50%;background:#778999}.traffic i:first-child{background:#c29088}.traffic i:nth-child(2){background:#c1b189}.terminal-body{padding:26px 24px 8px;font-size:12px;line-height:1.9;font-family:var(--mono)}.term-title{display:flex;justify-content:space-between;margin:0;font-weight:700;font-family:var(--font);font-size:14px}.term-title span{font-size:10px;font-weight:400;color:#a2c5be}.term-muted{font-size:10px;color:#9aafc2;letter-spacing:-.4px;margin-top:7px;margin-bottom:27px}.term-input{font-family:var(--font);font-size:13px;margin:0;color:#e3ebf4;letter-spacing:-.2px}.term-input b{color:#90aff0;margin-right:7px}.indent{padding-left:20px}.saved{margin:21px 0 22px 20px;border-left:2px solid #5f9f92;padding-left:13px;color:#b9d9d0;font-family:var(--font);font-size:12px}.saved span{padding-right:6px}.saved small{font-size:10px;color:#97aebf;line-height:2.6}.next{border-top:1px solid #354655;padding:12px 0 8px}.cursor{display:inline-block;width:7px;height:13px;background:#86aaf0;vertical-align:middle;animation:blink 1.5s step-end infinite}@keyframes blink{50%{opacity:0}}.document-preview{position:relative;margin:16px 0 0 24px;background:white;border:1px solid var(--line);border-radius:var(--radius);padding:18px 22px;display:flex;align-items:center;gap:19px;box-shadow:0 8px 24px -18px #20364955}.paper-icon{width:36px;height:48px;border:1px solid #ccd6e2;border-radius:3px;display:grid;place-items:center;font:21px var(--mono);color:var(--accent)}.paper-label{font-size:10px;color:var(--muted);display:block;margin-bottom:6px}.document-preview strong{font-size:14px;font-weight:650}.document-preview p{font-size:11px;color:var(--muted);margin:6px 0 0}.preview-foot{display:flex;justify-content:space-between;margin:22px 0 0 26px;font-size:10px;color:var(--muted)}.preview-foot span:before{content:"·";color:var(--accent);padding-right:5px}.workflow{display:grid;grid-template-columns:1fr 2.1fr;gap:40px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:57px 0 63px}.section-intro .eyebrow{font-size:9px;margin-bottom:20px}h2{font-size:29px;line-height:1.45;letter-spacing:-1.1px;font-weight:700;margin:0}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.step-symbol{font:28px var(--mono);color:var(--accent);display:block;margin-bottom:17px}h3{font-size:17px;font-weight:650;margin:0 0 10px}.steps p{font-size:13px;line-height:1.8;color:var(--muted);margin:0;word-break:keep-all}.download{display:grid;grid-template-columns:1fr 1fr;gap:112px;padding:100px 0 72px;align-items:start}.download-copy .eyebrow{margin-bottom:21px}.download-copy h2{font-size:36px}.download-copy>p:not(.eyebrow){font-size:14px;color:var(--muted);line-height:1.8;max-width:345px;margin:22px 0 30px;word-break:keep-all}dl{margin:0}dl>div{display:flex;gap:26px;margin-bottom:19px;font-size:12px;line-height:1.8}dt{min-width:58px;color:var(--ink);font-weight:650}dd{margin:0;color:var(--muted)}.download-panel{border:1px solid var(--line);border-radius:12px;padding:25px;background:#fff;box-shadow:0 12px 40px -24px #20364940}.release-heading{display:flex;justify-content:space-between;align-items:center;font-weight:650;font-size:14px;margin-bottom:20px}.version{font:10px var(--mono);font-weight:400;color:var(--muted);padding:5px 8px;background:var(--paper);border:1px solid var(--line);border-radius:4px}.platforms{border:0;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.platforms label{position:relative;cursor:pointer}.platforms input{position:absolute;opacity:0}.platforms label>span{display:block;text-align:center;background:var(--paper);border:1px solid var(--line);border-radius:6px;padding:11px 3px;font-size:12px;font-weight:650}.platforms small{display:block;font-size:9px;font-weight:400;color:var(--muted);margin-top:4px}.platforms input:checked+span{border-color:var(--accent);background:var(--soft);color:var(--accent)}.platforms input:focus-visible+span{outline:2px solid var(--accent);outline-offset:3px}.download-status{font-size:11px;color:var(--muted);min-height:16px;line-height:1.7;margin:19px 0 13px}.wide{width:100%;justify-content:space-between;font-size:13px}.download-detail{font-size:10px;color:var(--muted);line-height:1.8;min-height:15px}details{font-size:11px;color:var(--muted);line-height:1.7}summary{cursor:pointer;font-size:11px}details code{display:block;font-size:10px;overflow-wrap:anywhere;margin-top:8px}.after-install{border-top:1px solid var(--line);padding-top:19px;margin-top:21px}.after-install>span{font-size:11px;color:var(--muted)}.command{display:flex;align-items:center;justify-content:space-between;background:var(--paper);border:1px solid var(--line);padding:12px 13px;border-radius:6px;margin-top:10px}.command code{font:12px var(--mono)}.command button{border:0;padding:2px 0 2px 13px;cursor:pointer;color:var(--muted);background:none;font-size:10px}.after-install p{font-size:10px;color:var(--muted);margin:10px 0 0}.npm-install{border-top:1px solid var(--line);padding-top:15px;margin-top:20px}.npm-install p{font-size:10px}.npm-install code{background:var(--paper);padding:9px;border-radius:4px}.connection-note{border-top:1px solid var(--line);padding:24px 0 40px;display:flex;align-items:flex-start;gap:17px}.note-symbol{font:23px var(--mono);color:var(--muted);margin-top:8px}.connection-note p{font-size:11px;line-height:1.9;max-width:790px;color:var(--muted);word-break:keep-all}footer{display:flex;align-items:center;gap:30px;border-top:1px solid var(--line);padding-top:28px;padding-bottom:32px}footer .brand{font-size:13px;gap:0}footer p{font-size:10px;color:var(--muted);flex:1}footer>a:last-child{font-size:10px;color:var(--muted)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:900px){.topbar,main,footer{padding-left:24px;padding-right:24px}.hero{gap:25px;min-height:auto;padding:60px 0}.hero h1{font-size:43px}.lede{font-size:14px}.terminal-body{padding:23px 18px 7px}.term-input{font-size:11px}.term-muted{font-size:9px}.preview-foot{font-size:9px;gap:8px;margin-left:0}.workflow{grid-template-columns:1fr;padding:40px 0;gap:30px}.section-intro h2 br{display:none}.download{gap:45px;padding-top:65px}.download-copy h2{font-size:30px}.download-panel{padding:20px}footer p{display:none}footer>a:last-child{margin-left:auto}}
@media(max-width:620px){.topbar{height:80px}.brand{font-size:15px;gap:8px}nav{gap:18px;font-size:11px}.hero{grid-template-columns:1fr;padding:45px 0 46px;gap:38px}.hero h1{font-size:47px;letter-spacing:-2px}.hero .eyebrow{font-size:9px}.lede{font-size:14px}.preview{padding:0}.term-input{font-size:12px}.term-muted{font-size:10px}.document-preview{margin-left:18px}.preview-foot{font-size:10px}.workflow{gap:25px}.steps{grid-template-columns:1fr;gap:25px}.steps article{display:grid;grid-template-columns:32px 1fr;column-gap:12px}.step-symbol{grid-row:1/3;font-size:22px;margin-top:1px}.steps p{grid-column:2;font-size:12px}.steps h3{font-size:15px;margin-bottom:6px}.section-intro h2{font-size:25px}.download{grid-template-columns:1fr;gap:26px;padding:50px 0 37px}.download-copy>p:not(.eyebrow){max-width:none}.download-copy h2 br{display:none}.download-copy h2{font-size:28px}.download-panel{padding:23px}.connection-note{padding-bottom:25px}footer{gap:15px}footer .brand{font-size:11px}footer>a:last-child{font-size:9px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.cursor{animation:none}.button{transition:none}}

h1,h2,h3{word-break:keep-all}
button:disabled{opacity:.5;cursor:not-allowed}.command code{overflow-wrap:anywhere}
