:root{--paper: #f8f5ec;--paper-2: #fffefa;--paper-3: #eee7d6;--ink: #221e15;--ink-2: #4f4a3d;--ink-3: #6f6858;--line: #d8d0bc;--line-soft: #e7e0cd;--course: #c2401f;--course-ink: #9c3013;--pine: #2c6a43;--pine-2: #3d8a58;--amber: #8f6a1c;--dark: #171410;--dark-2: #221e17;--dark-line: #37311f;--dark-text: #ece5d3;--dark-dim: #9d9686;--serif: "Young Serif", "Book Antiqua", Georgia, serif;--sans: "IBM Plex Sans", system-ui, sans-serif;--mono: "IBM Plex Mono", Consolas, monospace;--hangul: "Gowun Batang", var(--serif);--max: 1120px;--pad: clamp(20px, 5vw, 56px)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.6 var(--sans);-webkit-font-smoothing:antialiased;overflow-x:hidden}a{color:var(--course-ink);text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:3px}button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}code{font:.88em var(--mono);background:var(--paper-3);border:1px solid var(--line-soft);border-radius:4px;padding:1px 6px}::selection{background:var(--pine);color:var(--paper)}:is(a,button,input,select,textarea):focus-visible{outline:3px solid var(--course);outline-offset:3px}h1[tabindex="-1"]:focus{outline:0}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.reveal{opacity:0;transform:translateY(14px);transition:opacity .55s ease,transform .55s cubic-bezier(.2,.7,.2,1)}.reveal.in{opacity:1;transform:none}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}}.nav{position:fixed;top:0;left:0;right:0;z-index:40;display:flex;align-items:center;justify-content:space-between;padding:18px var(--pad);transition:background .25s,border-color .25s,padding .25s;border-bottom:1px solid transparent}.nav.scrolled{background:color-mix(in srgb,var(--paper) 92%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom-color:var(--line-soft);padding-top:12px;padding-bottom:12px}.nav-brand{font-family:var(--serif);font-size:20px;color:var(--ink);display:flex;align-items:center;gap:9px}.nav-brand:hover{text-decoration:none}.nav-leaf{color:var(--course);font-style:normal}.nav-links{display:flex;align-items:center;gap:26px;font-size:14px}.nav-links a{color:var(--ink-2)}.nav-links a:hover{color:var(--ink);text-decoration:none}.nav-links a.active{color:var(--ink);box-shadow:0 2px 0 var(--course)}.nav-cta{color:var(--paper)!important;background:var(--course);padding:8px 18px;border-radius:9px;font-weight:600;transition:transform .15s,background .15s;box-shadow:none!important}.nav-cta:hover{background:var(--course-ink);transform:translateY(-1px);text-decoration:none}.nav-burger{display:none;min-width:44px;min-height:44px;font-size:20px;color:var(--ink)}@media(max-width:780px){.nav-burger{display:block}.nav-links{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:flex-start;background:var(--paper-2);border-bottom:1px solid var(--line);padding:18px var(--pad) 22px;gap:16px}.nav-links.open{display:flex}.nav-links a.active{box-shadow:none;color:var(--course-ink)}}h1{font-family:var(--serif);font-weight:400;font-size:clamp(38px,6vw,72px);line-height:1.05;letter-spacing:-.01em;margin:0 0 22px}h1 em,h2 em{font-style:normal;color:var(--course)}h2{font-family:var(--serif);font-weight:400;font-size:clamp(28px,4vw,46px);line-height:1.1;margin:0 0 18px;letter-spacing:-.005em}.section-num{font:500 11px/1 var(--mono);color:var(--course);letter-spacing:.18em;text-transform:uppercase;margin:0 0 18px}.section-lede{max-width:620px;color:var(--ink-2);font-size:17px;line-height:1.7}.section-lede a{white-space:nowrap}.hero{position:relative;max-width:var(--max);margin:0 auto;padding:clamp(120px,16vh,170px) var(--pad) 46px;display:grid;grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);gap:clamp(28px,5vw,64px);align-items:center}.hero-sub{color:var(--ink-2);font-size:17px;line-height:1.7;max-width:470px;margin:0 0 30px}.hero-fine{font-size:12.5px;color:var(--ink-3);margin-top:16px}@media(max-width:920px){.hero{grid-template-columns:1fr;padding-top:110px}}@media(min-width:1180px){.hero-mock-wrap{margin-right:calc((var(--max) - 100vw) / 2 - var(--pad))}.hero-mock-wrap .mock{border-radius:12px 0 0 12px;border-right:0}}.start-choice{display:flex;gap:14px;flex-wrap:wrap}.btn-major{display:flex;flex-direction:column;gap:2px;padding:13px 24px;border-radius:10px;background:var(--course);color:var(--paper-2);min-width:180px;transition:transform .18s cubic-bezier(.2,.7,.2,1),background .18s,border-color .18s}.btn-major:hover{transform:translateY(-1px);background:var(--course-ink);text-decoration:none}.btn-major strong{font-size:15px}.btn-major small{font-size:11.5px;opacity:.8}.btn-major.ghost{background:transparent;color:var(--ink);border:1px solid var(--line)}.btn-major.ghost:hover{border-color:var(--course);background:var(--paper-2)}.btn-major:disabled{opacity:.6;cursor:default;transform:none}.mock{border:1px solid var(--line);border-radius:12px;background:var(--paper-2);overflow:hidden;box-shadow:0 22px 60px #30261024}.demo-label{display:block;padding:7px 14px;background:var(--ink);color:var(--paper);font:600 10px/1.2 var(--mono);letter-spacing:.06em;text-transform:uppercase}.real-demo{padding-top:70px;padding-bottom:90px}.real-demo-frame{margin:34px 0 0;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#fff;box-shadow:0 22px 60px #30261024}.real-demo-frame img{display:block;width:100%;height:auto}.real-demo-frame figcaption{padding:11px 15px;border-top:1px solid var(--line-soft);color:var(--muted);font:500 11px/1.5 var(--mono)}.mock-bar{display:flex;align-items:center;gap:6px;padding:10px 14px;border-bottom:1px solid var(--line-soft)}.mock-bar i{width:9px;height:9px;border-radius:50%;background:var(--line)}.mock-bar i:first-child{background:color-mix(in srgb,var(--course) 55%,var(--line))}.mock-bar span{margin-left:8px;font:11px var(--mono);color:var(--ink-3)}.mock-body{padding:16px;display:flex;flex-direction:column;gap:13px}.mock-momentum{display:flex;gap:7px;flex-wrap:wrap}.mock-momentum span{font:500 10.5px var(--mono);color:var(--ink-2);border:1px solid var(--line-soft);background:var(--paper);border-radius:6px;padding:3px 9px}.mock-momentum b{color:var(--pine);font-weight:600}.mock-cards{display:flex;flex-direction:column;gap:9px}.mock-card{border:1px solid var(--line-soft);border-radius:9px;padding:11px 13px;background:var(--paper)}.mock-card-top{display:flex;justify-content:space-between;align-items:baseline;font-size:13px;gap:8px}.mock-card-top b{font-family:var(--mono);font-weight:600;font-size:12px}.mock-card-top em{font-style:normal;font-size:10.5px;color:var(--pine);white-space:nowrap}.mock-progress{height:5px;border-radius:3px;background:var(--paper-3);margin:8px 0 6px;overflow:hidden}.mock-progress i{display:block;height:100%;border-radius:3px;background:linear-gradient(90deg,var(--pine),var(--pine-2));transition:width 1.4s cubic-bezier(.2,.7,.2,1)}.mock-card small{font-size:11px;color:var(--ink-3)}.mock-feed{border-top:1px dashed var(--line);padding-top:10px;min-height:106px}.mock-feed-head{font:500 10px var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);margin-bottom:7px}.mock-feed-line{display:flex;gap:8px;font-size:12px;color:var(--ink-2);padding:3px 0;animation:feed-in .4s ease}.mock-feed-line span{color:var(--pine);width:14px;text-align:center}@keyframes feed-in{0%{opacity:0;transform:translateY(6px)}}.section{max-width:var(--max);margin:0 auto;padding:clamp(64px,10vh,118px) var(--pad)}.course-sec{position:relative;padding-top:var(--course-gap);padding-bottom:var(--course-gap)}:root{--course-gap: clamp(36px, 6vh, 60px)}.course-mark{display:inline-flex;align-items:center;gap:9px;font:600 11.5px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--course);margin-bottom:20px}.course-mark i{width:10px;height:10px;border-radius:50%;background:var(--course);flex:none}.course-mark .mark-svg{color:var(--course)}@media(min-width:981px){.course-sec{padding-left:calc(var(--pad) + 86px)}.course-sec:before{content:"";position:absolute;top:0;bottom:0;left:calc(var(--pad) + 30px);border-left:2px dashed color-mix(in srgb,var(--course) 38%,var(--paper))}.course-sec.start:before{top:var(--course-gap)}.course-sec.finish:before{bottom:auto;height:calc(var(--course-gap) + 6px)}.course-mark{position:relative;left:-60px;margin:0 0 26px;background:var(--paper);padding:3px 10px 3px 0}}.course{position:relative}.course-km-paint{display:none;position:absolute;top:calc(var(--course-gap) - 12px);right:var(--pad);font-family:var(--serif);font-size:clamp(90px,11vw,168px);line-height:1;color:color-mix(in srgb,var(--ink) 7%,transparent);pointer-events:none;-webkit-user-select:none;user-select:none}@media(min-width:981px){.course-km-paint{display:block}}.start-line{margin-top:30px;display:inline-flex;align-items:center;gap:10px;font:600 11px var(--mono);letter-spacing:.16em;color:var(--ink-3)}.start-line i{width:18px;height:18px;border:1px solid var(--line);background:repeating-conic-gradient(var(--ink) 0% 25%,var(--paper-2) 0% 50%);background-size:9px 9px}.finish-tape{width:min(420px,70%);height:12px;margin:0 auto 26px;border:1px solid var(--line);background:repeating-conic-gradient(var(--ink) 0% 25%,var(--paper-2) 0% 50%);background-size:12px 12px;transform:rotate(-1.2deg)}.course-mark.celebrate .mark-svg{animation:mark-pop .9s cubic-bezier(.2,.7,.2,1)}.course-mark.celebrate .mark-svg circle{animation:mark-close .7s ease .1s forwards}@keyframes mark-close{to{stroke-dasharray:82 0}}@keyframes mark-pop{30%{transform:scale(1.4) rotate(-6deg)}}.runner-layer{position:absolute;inset:0;pointer-events:none;z-index:3}.runner{position:absolute;top:0;left:0;display:flex;align-items:center;gap:8px;color:var(--ink);visibility:hidden;will-change:transform;pointer-events:auto}.runner[data-ready=true]{visibility:visible}.runner-view{position:relative;width:26px;height:32px;overflow:hidden;flex:none}.runner[data-facing=up] .runner-view{transform:scaleX(-1)}.runner-strip{display:flex;width:104px;height:32px;animation:run-cycle .48s steps(4) infinite}.runner[data-running=false] .runner-strip{display:none}.runner-still{display:none;position:absolute;inset:0}.runner[data-running=false] .runner-still{display:block}@keyframes run-cycle{to{transform:translate(-104px)}}.runner-km{font:600 10px var(--mono);letter-spacing:.06em;color:var(--ink-2);background:var(--paper);border:1px solid var(--line);border-radius:6px;padding:2px 7px;white-space:nowrap}.runner-marker{width:12px;height:12px;border-radius:50%;background:var(--course);border:2px solid var(--paper);box-shadow:0 0 0 1px var(--course);flex:none}.confetti-canvas{position:fixed;inset:0;width:100vw;height:100vh;pointer-events:none;z-index:80}.bands{margin-top:10px}.band{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(24px,4vw,56px);align-items:center;padding:clamp(36px,6vh,60px) 0;border-top:1px solid var(--line-soft)}.band:first-child{border-top:0;padding-top:24px}.band-tag{font:600 11px var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--pine);margin:0 0 10px}.band h3{font-family:var(--serif);font-weight:400;font-size:clamp(22px,2.6vw,30px);margin:0 0 12px}.band p{color:var(--ink-2);font-size:15px;line-height:1.7;margin:0;max-width:420px}.band p+p{margin-top:10px}.band.flip>.band-visual{order:-1}.band.wide{grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr)}@media(max-width:860px){.band,.band.wide{grid-template-columns:1fr;gap:22px}.band.flip>.band-visual{order:0}}.approve-visual{display:flex;gap:16px;align-items:stretch}.approve-visual .demo-diff{flex:1;min-width:0;background:var(--paper-2)}.phone{position:relative;z-index:1;flex:none;width:172px;background:var(--dark);border:1px solid var(--dark-line);border-radius:22px;padding:14px 12px 12px;display:flex;flex-direction:column;gap:8px;box-shadow:0 14px 38px #30261038;transform:rotate(2.5deg);margin:22px 0 0 -30px}.phone-notch{width:52px;height:5px;border-radius:3px;background:var(--dark-line);margin:0 auto 2px}.phone-title{font:600 9.5px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--dark-dim)}.phone-card{background:var(--dark-2);border:1px solid var(--dark-line);border-radius:10px;padding:9px 10px}.phone-card b{display:block;font:600 11px var(--mono);color:var(--dark-text);margin-bottom:3px;overflow-wrap:anywhere}.phone-card small{font-size:10px;color:var(--dark-dim);line-height:1.5;display:block}.phone-actions{display:flex;gap:6px;margin-top:auto}.phone-actions span{flex:1;text-align:center;font-size:10.5px;font-weight:600;border-radius:7px;padding:7px 0}.phone-actions .ok{background:var(--pine-2);color:#fff}.phone-actions .no{border:1px solid var(--dark-line);color:var(--dark-dim)}.phone-note{font-size:9.5px;color:var(--dark-dim);text-align:center}@media(max-width:540px){.approve-visual{flex-direction:column}.phone{width:100%;transform:none;margin:0}}.pilot{border:0;border-radius:12px;background:var(--paper-2);overflow:hidden;box-shadow:0 14px 38px #3026101f}.pilot-head{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:12px 16px;border-bottom:1px solid var(--line-soft);font:500 12px var(--mono);color:var(--ink-2);flex-wrap:wrap}.pilot-head b{color:var(--ink);font-weight:600}.pilot-budget{color:var(--ink-3);font-size:11px}.pilot-rows{padding:8px 0}.pilot-row{display:flex;align-items:center;gap:10px;padding:7px 16px;font-size:13px}.pilot-row .repo{font:500 11.5px var(--mono);color:var(--ink-3);width:118px;flex:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pilot-row .job{flex:1;min-width:0;color:var(--ink-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pilot-row .state{flex:none;font:500 10.5px var(--mono);border-radius:6px;padding:2px 8px}.pilot-row .state.done{color:var(--pine);border:1px solid color-mix(in srgb,var(--pine) 40%,var(--paper))}.pilot-row .state.wait{color:var(--amber);border:1px solid color-mix(in srgb,var(--amber) 40%,var(--paper))}.pilot-row .state.queue{color:var(--ink-3);border:1px solid var(--line-soft)}.pilot-foot{border-top:1px dashed var(--line-soft);padding:10px 16px;font-size:11.5px;color:var(--ink-3)}@media(max-width:540px){.pilot-row .repo{width:84px}}.term{background:var(--dark);border:0;border-radius:12px;padding:18px 20px;font:12.5px/1.9 var(--mono);box-shadow:0 14px 38px #30261029}.term span{display:block;color:var(--dark-dim)}.term .cmd{color:var(--dark-text)}.term .ok{color:#7fc292}.term-after{display:flex;align-items:center;gap:10px;margin-top:14px;flex-wrap:wrap}.pr-chip{font:600 12.5px var(--sans);color:var(--pine);border:1px solid color-mix(in srgb,var(--pine) 45%,var(--paper));border-radius:9px;padding:8px 16px;background:var(--paper-2)}.term-after small{color:var(--ink-3);font-size:11.5px}.momentum{display:flex;flex-direction:column;gap:14px}.momentum-stats{display:flex;gap:10px;flex-wrap:wrap}.momentum-stats div{flex:1;min-width:118px;border:1px solid var(--line);border-radius:10px;background:var(--paper-2);padding:12px 14px}.momentum-stats b{display:block;font-family:var(--serif);font-weight:400;font-size:24px;color:var(--pine)}.momentum-stats small{color:var(--ink-3);font-size:11.5px}.guardrails{border:1px solid var(--line);border-radius:10px;background:var(--paper-2);padding:13px 16px}.guardrails-head{font:600 10.5px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);margin-bottom:8px}.guardrails ul{list-style:none;margin:0;padding:0}.guardrails li{font-size:12.5px;color:var(--ink-2);padding:2px 0 2px 18px;position:relative}.guardrails li:before{content:"·";position:absolute;left:4px;color:var(--ink-3)}.guardrails li.ok:before{content:"✓";color:var(--pine);left:0}.guardrails li.block:before{content:"✕";color:var(--course);left:0}.word{padding-top:0!important}.word-card{display:flex;gap:clamp(20px,4vw,44px);align-items:center;border:1px solid var(--line);border-radius:14px;padding:clamp(24px,4vw,44px);background:var(--paper-2)}.word-hangul{font-family:var(--hangul);font-size:clamp(60px,8vw,100px);line-height:1;color:var(--course);font-weight:700;letter-spacing:-.02em;flex:none}.word-say{font:500 13px var(--mono);color:var(--ink-3);letter-spacing:.04em;margin:0 0 8px}.word-say b{font-size:15px;color:var(--ink)}.word-def{margin:0;color:var(--ink-2);font-size:16px;line-height:1.65;max-width:520px}@media(max-width:640px){.word-card{flex-direction:column;align-items:flex-start;gap:14px}}.trust{border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft)}.trust-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:24px;margin-top:40px}.trust-grid div{display:flex;flex-direction:column;gap:6px;border-left:2px solid var(--pine);padding-left:16px}.trust-grid b{font-size:15px}.trust-grid span{color:var(--ink-2);font-size:13px;line-height:1.55}.trust-more{margin-top:26px;font-size:14px;color:var(--ink-2)}@media(max-width:900px){.trust-grid{grid-template-columns:1fr 1fr}}@media(max-width:560px){.trust-grid{grid-template-columns:1fr}}.features{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:36px}.feature{border:1px solid var(--line-soft);border-radius:10px;padding:16px 18px;background:var(--paper-2)}.feature h3{font-size:14.5px;font-weight:600;margin:0 0 6px}.feature p{color:var(--ink-2);font-size:13px;line-height:1.6;margin:0}@media(max-width:900px){.features{grid-template-columns:1fr 1fr}}@media(max-width:620px){.features{grid-template-columns:1fr}}.scan-teaser{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(20px,4vw,44px);align-items:center;border:1px solid var(--line);border-radius:14px;background:var(--paper-2);padding:clamp(24px,4vw,40px)}.scan-teaser h2{font-size:clamp(24px,3vw,34px);margin-bottom:10px}.scan-teaser p{color:var(--ink-2);font-size:14.5px;line-height:1.65;margin:0}.scan-teaser-form .scan-row{margin:0 0 8px}.scan-teaser-form .start-fine{margin:0}@media(max-width:820px){.scan-teaser{grid-template-columns:1fr}}.cta-final{text-align:center}.cta-final .start-choice{justify-content:center;margin-top:30px}.cta-final .course-mark{position:static;transform:none;margin-bottom:20px}.page{max-width:var(--max);margin:0 auto;padding:clamp(120px,16vh,160px) var(--pad) 60px}.page.narrow{max-width:860px}.pipeline{display:flex;align-items:stretch;gap:8px;flex-wrap:wrap;margin-top:44px}.pipe-node{flex:1;min-width:128px;display:flex;flex-direction:column;gap:3px;border:1px solid var(--line);border-radius:10px;padding:14px 15px;background:var(--paper-2)}.pipe-node b{font-size:14px}.pipe-node small{color:var(--ink-3);font-size:11.5px;line-height:1.45}.pipe-node.final{border-color:var(--pine);background:color-mix(in srgb,var(--pine) 7%,var(--paper-2))}.pipe-node.final b{color:var(--pine)}.pipe-arrow{align-self:center;color:var(--ink-3);font-size:16px}@media(max-width:900px){.pipeline{flex-direction:column}.pipe-arrow{transform:rotate(90deg)}}.demo{border:1px solid var(--line);border-radius:12px;background:var(--paper-2);margin-top:44px;overflow:hidden;box-shadow:0 18px 50px #3026101a}.demo-tabs{display:flex;border-bottom:1px solid var(--line-soft);overflow-x:auto}.demo-tabs button{position:relative;padding:13px 20px;font-size:13px;color:var(--ink-3);white-space:nowrap}.demo-tabs button.on{color:var(--ink);font-weight:600}.demo-tabs button.on:after{content:"";position:absolute;left:0;bottom:0;height:2px;width:100%;background:var(--course)}.demo.auto .demo-tabs button.on:after{width:0;animation:tab-fill 5.2s linear forwards}.demo.auto.paused .demo-tabs button.on:after{animation-play-state:paused}@keyframes tab-fill{to{width:100%}}.demo-screen{padding:clamp(18px,3vw,30px);animation:demo-in .35s ease;min-height:320px}@keyframes demo-in{0%{opacity:0;transform:translateY(8px)}}.demo-title{font:500 12px var(--mono);color:var(--ink-2);letter-spacing:.04em;margin-bottom:16px}.demo-note{color:var(--ink-3);font-size:12.5px;margin:18px 0 0;border-top:1px dashed var(--line-soft);padding-top:12px}.demo-import-row{display:flex;align-items:center;gap:12px;padding:7px 0;font-size:13px}.demo-import-name{width:140px;flex:none;font-family:var(--mono);font-size:12px}.demo-bar{flex:1;height:6px;border-radius:3px;background:var(--paper-3);overflow:hidden;border:1px solid var(--line-soft)}.demo-bar b{display:block;height:100%;background:linear-gradient(90deg,var(--pine),var(--pine-2));transition:width .25s linear}.demo-import-row small{flex:none;width:210px;text-align:right;color:var(--ink-3);font-size:11.5px}.demo-chips{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}.demo-chips span{font-size:11.5px;color:var(--pine);border:1px solid color-mix(in srgb,var(--pine) 40%,var(--paper));border-radius:7px;padding:3px 11px}.demo-chips span.warn{color:var(--amber);border-color:color-mix(in srgb,var(--amber) 40%,var(--paper))}.demo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}@media(max-width:760px){.demo-grid{grid-template-columns:1fr}.demo-import-row small{width:auto}}.demo-diff{border:1px solid var(--line-soft);border-radius:10px;overflow:hidden}.demo-diff-file{font:11.5px var(--mono);color:var(--ink-2);padding:8px 14px;background:var(--paper-3);border-bottom:1px solid var(--line-soft)}.demo-diff pre{margin:0;padding:12px 0;font:12px/1.7 var(--mono);overflow-x:auto}.dl{display:block;padding:0 14px;white-space:pre}.dl.add{color:var(--pine);background:color-mix(in srgb,var(--pine) 9%,var(--paper-2))}.dl.del{color:var(--course-ink);background:color-mix(in srgb,var(--course) 8%,var(--paper-2));text-decoration:line-through;text-decoration-color:color-mix(in srgb,var(--course) 50%,transparent)}.dl.ctx{color:var(--ink-3)}.demo-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:14px}.demo-btn{background:var(--course);color:var(--paper-2);font-weight:600;font-size:13px;padding:8px 18px;border-radius:9px}.demo-btn:hover{background:var(--course-ink)}.demo-btn.ghost{background:transparent;color:var(--ink-2);border:1px solid var(--line)}.demo-term{margin:0;border:1px solid var(--dark-line);border-radius:10px;padding:16px 18px;font:12.5px/1.9 var(--mono);background:var(--dark)}.demo-term span{display:block;color:var(--dark-dim)}.demo-term .ok{color:#7fc292}.demo-applied{font:500 12px var(--mono);color:var(--pine);margin-bottom:12px}.loop{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:center;margin-top:26px}.loop-step{font:500 12.5px var(--mono);color:var(--ink-2);border:1px solid var(--line);border-radius:8px;padding:7px 16px;background:var(--paper-2)}.loop-arrow{color:var(--ink-3);font-size:15px}.loop-arrow.repeat{font-size:19px;color:var(--course)}.compare-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:40px 0 16px}.compare-tabs button{font-size:13px;color:var(--ink-2);border:1px solid var(--line);border-radius:8px;padding:7px 16px;transition:all .15s;background:var(--paper-2)}.compare-tabs button.on{color:var(--paper);background:var(--ink);border-color:var(--ink)}.compare-table{border:1px solid var(--line);border-radius:12px;overflow:hidden;background:var(--paper-2)}.compare-row{display:grid;grid-template-columns:1fr 150px 170px;align-items:center;border-top:1px solid var(--line-soft)}.compare-row:first-child{border-top:0}.compare-row.head{background:var(--paper-3);font-size:13px;font-weight:600}.compare-row.head span{padding:13px 16px}.compare-label{padding:13px 18px;font-size:14px}.compare-label small{display:block;color:var(--ink-3);font-size:11.5px;margin-top:2px;line-height:1.45}.mark{text-align:center;font-size:17px;color:var(--ink-3);padding:13px 0}.mark[data-mark="2"]{color:var(--pine)}.mark[data-mark="1"]{color:var(--amber)}.mark.price{font-size:13px}.pg-col{background:color-mix(in srgb,var(--pine) 7%,transparent)}.compare-row.head .pg-col{color:var(--pine)}.compare-legend{color:var(--ink-3);font-size:12px;margin-top:14px}@media(max-width:640px){.compare-row{grid-template-columns:1fr 64px 74px}.compare-label{padding:12px 10px;font-size:13px}.compare-label small{font-size:10.5px}.compare-row.head span{padding:11px 7px;font-size:11px}}.price-toggle{display:inline-flex;border:1px solid var(--line);border-radius:10px;padding:4px;margin-top:26px;background:var(--paper-2)}.price-toggle button{padding:7px 20px;border-radius:7px;font-size:13.5px;color:var(--ink-2)}.price-toggle button.on{background:var(--ink);color:var(--paper);font-weight:600}.price-toggle em{font-style:normal;color:var(--pine);font-size:11px}.price-toggle button.on em{color:inherit}.plans{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:46px 0 26px}.plan{position:relative;border:1px solid var(--line);border-radius:14px;padding:34px 26px 28px;background:var(--paper-2);display:flex;flex-direction:column}.plan:before,.plan:after{content:"";position:absolute;top:12px;width:8px;height:8px;border-radius:50%;background:var(--paper);border:1px solid var(--line);box-shadow:inset 0 1px 1px #221e152e}.plan:before{left:14px}.plan:after{right:14px}.plan-bib{position:absolute;top:16px;right:28px;font:600 56px/1 var(--mono);color:color-mix(in srgb,var(--ink) 8%,transparent);pointer-events:none;-webkit-user-select:none;user-select:none}.plan.highlight{border-color:var(--course);box-shadow:0 18px 50px #3026101a}.plan-badge{position:absolute;top:-11px;left:24px;background:var(--course);color:var(--paper-2);font-size:11px;font-weight:700;padding:3px 12px;border-radius:7px}.plan h3{font-family:var(--serif);font-weight:400;font-size:24px;margin:0 0 6px}.plan-price{font-family:var(--serif);font-size:38px}.plan-price small{font:12.5px var(--sans);color:var(--ink-3)}.plan-tagline{color:var(--ink-2);font-size:13.5px;min-height:40px}.plan ul{list-style:none;padding:0;margin:8px 0 24px;flex:1}.plan li{padding:6px 0 6px 22px;font-size:13.5px;color:var(--ink-2);position:relative}.plan li:before{content:"✓";position:absolute;left:0;color:var(--pine)}.plan .btn-major{align-self:stretch;text-align:center;align-items:center;min-width:0}.pricing-note{max-width:640px;color:var(--ink-2);font-size:13.5px;line-height:1.65;border-left:2px solid var(--amber);padding-left:16px}@media(max-width:900px){.plans{grid-template-columns:1fr;max-width:460px}}.pricing-catch{max-width:700px;margin:56px auto 0;border:1px solid var(--line);border-radius:14px;padding:30px 34px;background:var(--paper-2)}.pricing-catch h2{font-family:var(--serif);font-weight:400;font-size:28px;margin:0 0 12px}.pricing-catch p{color:var(--ink-2);font-size:14.5px;line-height:1.7;margin:0}.pricing-catch p+p{margin-top:14px}.plans-two{grid-template-columns:repeat(2,1fr);max-width:780px;margin-left:auto;margin-right:auto}.plan-alt{font-size:12.5px;color:var(--ink-3);margin:4px 0 0}.pricing-beta{max-width:700px;margin:8px auto 0;border:1px solid var(--course);border-radius:14px;padding:28px 32px;background:color-mix(in srgb,var(--course) 6%,var(--paper-2))}.pricing-beta h2{font-family:var(--serif);font-weight:400;font-size:25px;margin:0 0 12px;line-height:1.3}.pricing-beta p{color:var(--ink-2);font-size:14.5px;line-height:1.7;margin:0}.pricing-beta-offer{margin-top:14px!important;padding-top:14px;border-top:1px solid var(--line)}.pricing-compare{max-width:700px;margin:56px auto 0}.pricing-compare h2{font-family:var(--serif);font-weight:400;font-size:28px;margin:0 0 10px}.pricing-compare-lede{color:var(--ink-2);font-size:14.5px;line-height:1.7;margin:0 0 20px}.pricing-table{width:100%;border-collapse:collapse;font-size:14px}.pricing-table th{text-align:left;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);font-weight:600;padding:0 0 8px;border-bottom:1px solid var(--line)}.pricing-table td{padding:11px 0;border-bottom:1px solid var(--line);color:var(--ink-2)}.pricing-table th:last-child,.pricing-table td:last-child{text-align:right;white-space:nowrap}.pricing-row-ours td{color:var(--ink)}.pricing-fine{color:var(--ink-3);font-size:13px;line-height:1.65;margin:18px 0 0}@media(max-width:760px){.plans-two{grid-template-columns:1fr}}.docs-h{margin-top:64px}.docs-steps{max-width:700px;padding-left:22px;color:var(--ink-2)}.docs-steps li{margin:14px 0;line-height:1.65;font-size:15px}.docs-steps b,.docs-p b{color:var(--ink)}.docs-p{max-width:700px;color:var(--ink-2);line-height:1.7;font-size:15.5px}.docs-code{background:var(--paper-3);border:1px solid var(--line-soft);border-radius:12px;padding:20px 22px;font:13px/1.6 var(--mono);overflow-x:auto;max-width:700px;color:var(--ink-2)}.faq{max-width:760px;margin-top:28px;border-top:1px solid var(--line)}.faq-item{border-bottom:1px solid var(--line)}.faq-item button{width:100%;display:flex;justify-content:space-between;align-items:center;text-align:left;padding:20px 4px;font-size:16.5px;font-weight:500}.faq-item button span{font-family:var(--serif);font-size:24px;color:var(--course)}.faq-item p{margin:0;padding:0 4px 22px;color:var(--ink-2);font-size:14.5px;line-height:1.7;max-width:640px}.faq-item.open button{color:var(--course-ink)}.docs-badge{height:24px;vertical-align:middle;margin:0 4px}.start-tabs{display:inline-flex;gap:8px;margin:34px 0 26px}.start-tabs button{border:1px solid var(--line);border-radius:9px;padding:9px 22px;font-size:14px;color:var(--ink-2);background:var(--paper-2)}.start-tabs button.on{background:var(--ink);border-color:var(--ink);color:var(--paper);font-weight:600}.start-panel{border:1px solid var(--line);border-radius:14px;padding:30px;background:var(--paper-2)}.start-panel h2{font-size:28px}.start-panel>p{color:var(--ink-2);max-width:560px;line-height:1.65}.start-code{position:relative;background:var(--paper-3);border:1px solid var(--line-soft);border-radius:12px;margin:20px 0}.start-code pre{margin:0;padding:20px 22px;font:13.5px/1.7 var(--mono);color:var(--ink);overflow-x:auto}.start-code button{position:absolute;top:10px;right:10px;border:1px solid var(--line);border-radius:8px;padding:6px 14px;font-size:12px;color:var(--ink-2);background:var(--paper-2)}.start-code button:hover{color:var(--ink);border-color:var(--course)}.start-fine{color:var(--ink-3);font-size:13px}.start-detect{font:500 13px var(--mono);border:1px solid var(--line);border-radius:10px;padding:12px 16px;margin:18px 0 14px}.start-detect.ok{color:var(--pine);border-color:color-mix(in srgb,var(--pine) 45%,var(--paper));background:color-mix(in srgb,var(--pine) 6%,var(--paper-2))}.start-detect.off{color:var(--amber);border-color:color-mix(in srgb,var(--amber) 40%,var(--paper))}.start-detect.checking{color:var(--ink-3);animation:detect-pulse 1.2s ease-in-out infinite}@keyframes detect-pulse{50%{opacity:.55}}.start-open{display:inline-flex;margin-bottom:14px}.start-detect-actions{display:flex;gap:10px;margin:6px 0 14px}.start-custom{border-top:1px dashed var(--line-soft);margin-top:18px;padding-top:14px}.start-custom-row{display:flex;gap:9px}.start-custom-row input{flex:1;max-width:280px;background:var(--paper);color:var(--ink);border:1px solid var(--line);border-radius:9px;padding:10px 14px;font:13px var(--mono);outline:0}.start-custom-row input:focus{border-color:var(--course)}.btn-major.compact{min-width:0;padding:10px 18px}.start-custom-error{color:var(--course-ink);font-size:12.5px;margin:8px 0 0}.mobile-start-notice h2{font-size:24px}.start-panel.scan{margin-bottom:22px;border-color:var(--course)}.scan-row{display:flex;gap:9px;margin:14px 0 6px}.scan-row input{flex:1;max-width:380px;background:var(--paper);color:var(--ink);border:1px solid var(--line);border-radius:9px;padding:11px 14px;font:13.5px var(--mono);outline:0}.scan-row input:focus{border-color:var(--course)}.scan-token-toggle{color:var(--ink-3);font-size:12px;min-height:44px;padding:8px 0;text-align:left}.scan-token-toggle:hover{color:var(--ink)}.scan-progress{display:flex;flex-direction:column;gap:6px;margin:16px 0 4px}.scan-progress small{color:var(--ink-3);font:12px var(--mono)}.scan-results{margin-top:18px;border-top:1px solid var(--line-soft);padding-top:16px}.scan-strip{display:flex;gap:18px;flex-wrap:wrap;margin-bottom:14px;font-size:13px;color:var(--ink-2)}.scan-strip b{color:var(--ink);font-size:15px}.scan-strip .warn b{color:var(--amber)}.scan-strip .good b{color:var(--pine)}.scan-card{border:1px solid var(--line-soft);border-radius:10px;padding:12px 15px;margin-bottom:9px;background:var(--paper)}.scan-card-head{display:flex;align-items:baseline;gap:10px;font-size:13.5px}.scan-card-head em{font-style:normal;font-size:10.5px;color:var(--ink-3);border:1px solid var(--line);border-radius:3px;padding:0 5px}.scan-stale{margin-left:auto;font-size:11px;color:var(--amber)}.scan-card-bar{display:flex;align-items:center;gap:10px;margin:9px 0 5px}.scan-card-bar .demo-bar{flex:1}.scan-card-bar span{font-size:12px;color:var(--pine);white-space:nowrap}.scan-card-bar small{font-size:9.5px;color:var(--ink-3);border:1px solid var(--line-soft);border-radius:3px;padding:0 4px}.scan-next{color:var(--ink-3);font-size:12px}.scan-blockers{list-style:none;margin:10px 0 4px;padding:0;display:grid;gap:6px}.scan-blocker{display:grid;grid-template-columns:auto 1fr;gap:2px 8px;padding:8px 10px;border-radius:6px;border:1px solid var(--line);background:color-mix(in srgb,var(--ink-1) 3%,transparent)}.scan-blocker b{grid-row:1;font-size:10px;letter-spacing:.08em;text-transform:uppercase;align-self:center;padding:2px 6px;border-radius:3px;background:color-mix(in srgb,var(--ink-1) 10%,transparent);color:var(--ink-2);white-space:nowrap}.scan-blocker>span{grid-row:1;font-size:13px;font-weight:600;align-self:center}.scan-blocker small{grid-column:1 / -1;font-size:11.5px;line-height:1.45;color:var(--ink-3)}.scan-blocker.blocking{border-color:color-mix(in srgb,#d4423a 45%,var(--line));background:color-mix(in srgb,#d4423a 7%,transparent)}.scan-blocker.blocking b{background:color-mix(in srgb,#d4423a 16%,transparent);color:#b0322b}@media(prefers-color-scheme:dark){.scan-blocker.blocking b{color:#ff9a92}}.scan-desc{display:block;color:var(--ink-2);font-size:12px;margin-top:4px}.scan-meta{display:block;color:var(--ink-3);font-size:11px;margin-bottom:3px}.scan-breakdown{border-top:1px dashed var(--line-soft);margin-top:8px;padding-top:8px}.scan-breakdown-title{display:block;color:var(--ink-3);font-size:10.5px;text-transform:uppercase;letter-spacing:.05em;margin-top:6px}.scan-breakdown ul{list-style:none;margin:4px 0 0;padding:0}.scan-breakdown li{font-size:12px;color:var(--ink-2);padding:1px 0}.scan-breakdown li.done{color:var(--pine)}.scan-breakdown li.reported{color:var(--amber)}.scan-breakdown-note{display:block;color:var(--ink-3);font-size:10.5px;margin-top:8px;font-style:italic}.scan-group{font:500 12px var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);margin:22px 0 10px}.scan-group.gold{color:var(--pine)}.scan-card.shipped{border-color:color-mix(in srgb,var(--pine) 45%,var(--paper));background:color-mix(in srgb,var(--pine) 5%,var(--paper))}.scan-shipped-tag{margin-left:auto;font-size:11px;color:var(--pine);white-space:nowrap}.scan-stars{font-size:11px;color:var(--amber);white-space:nowrap}.scan-live{margin-left:auto;font-size:11px;color:var(--pine)}.scan-shipped-line{display:block;font-size:12.5px;color:var(--ink-2);margin-top:6px}.scan-shipped-line a{color:var(--pine)}.scan-clean{color:var(--pine);font-size:14px;text-align:center;margin:18px 0}.scan-card.muted{opacity:.8}.scan-cta{text-align:center;border-top:1px dashed var(--line-soft);margin-top:16px;padding-top:18px}.scan-cta p{color:var(--ink-2);font-size:14px;max-width:480px;margin:0 auto 16px}.scan-cta .btn-major{display:inline-flex}.scan-challenge-link{margin-top:14px!important}.scan-challenge-link a{color:var(--course-ink)}.scan-share{border-top:1px dashed var(--line-soft);margin-top:20px;padding-top:20px}.scan-share h3{font-family:var(--serif);font-weight:400;font-size:22px;margin:0 0 6px}.scan-share-host{margin-top:14px}.scan-share-canvas{width:100%;max-width:640px;height:auto;display:block;border:1px solid var(--line);border-radius:12px}.scan-share-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}.scan-signup{max-width:480px;margin:0 auto}.scan-signup-done{color:var(--pine);font-size:14px}.scan-honesty{max-width:640px}.dl-note{border:1px dashed var(--line);border-radius:10px;padding:12px 15px;font-size:13px;color:var(--ink-2);margin:-8px 0 16px}.dl-card.soon{cursor:pointer;text-align:left;font:inherit}.dl-card .dl-soon-tag{margin-top:8px;font-size:10.5px;color:var(--amber);border:1px solid var(--line-soft);border-radius:3px;padding:0 5px;align-self:flex-start;font-style:normal}.dl-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:22px 0}.dl-grid.big{margin-top:40px}.dl-card{display:flex;flex-direction:column;gap:5px;border:1px solid var(--line);border-radius:12px;padding:22px;color:var(--ink);background:var(--paper-2);transition:transform .18s,border-color .18s}.dl-card:hover{transform:translateY(-2px);border-color:var(--course);text-decoration:none}.dl-card b{font-size:17px}.dl-card span{color:var(--ink-3);font-size:12.5px}.dl-card code{margin-top:10px;font-size:11px;align-self:flex-start}@media(max-width:640px){.dl-grid{grid-template-columns:1fr}}.mobile-download-notice{border:1px solid color-mix(in srgb,var(--amber) 55%,var(--paper));border-radius:14px;padding:24px;margin:30px 0 20px;background:color-mix(in srgb,var(--amber) 6%,var(--paper-2))}.mobile-download-notice>b{display:block;color:var(--amber);font-size:18px}.mobile-download-notice p{color:var(--ink-2)}.dl-checksum{margin-top:22px;border-top:1px dashed var(--line-soft);padding-top:16px}.dl-checksum-row{display:flex;align-items:center;gap:12px;margin:8px 0 12px}.dl-checksum-row>code{flex:1;min-width:0;overflow-x:auto;white-space:nowrap;background:var(--paper-3);border:1px solid var(--line-soft);border-radius:8px;padding:9px 12px;font:12px var(--mono);color:var(--ink-2)}.dl-checksum .start-fine code{word-break:break-all}.about-body{max-width:660px}.about-body p{color:var(--ink-2);line-height:1.75;font-size:15.5px}.about-body b,.about-body i{color:var(--ink)}.guide-body p{max-width:640px}.guide-body a{color:var(--course-ink)}.finish-challenge{margin:64px 0 38px;border-top:1px solid var(--line)}.finish-day{display:grid;grid-template-columns:88px 1fr;gap:24px;padding:24px 4px;border-bottom:1px solid var(--line)}.finish-day>span{font:600 12px var(--mono);color:var(--course-ink);letter-spacing:.08em;text-transform:uppercase;padding-top:7px}.finish-day h2{font:400 25px/1.25 var(--serif);margin:0 0 7px}.finish-day p{color:var(--ink-2);font-size:14.5px;line-height:1.65;margin:0;max-width:590px}.finish-rules{border:1px solid var(--line);background:var(--paper-2);border-radius:14px;padding:28px 32px}.finish-rules h2{font:400 26px var(--serif);margin:0 0 12px}.finish-rules ul{margin:0;padding-left:20px;color:var(--ink-2);line-height:1.75}@media(max-width:600px){.finish-day{grid-template-columns:1fr;gap:4px}.finish-rules{padding:24px 20px}}.footer{border-top:1px solid var(--line-soft);margin-top:40px;background:var(--paper-2)}.footer-grid{max-width:var(--max);margin:0 auto;padding:56px var(--pad) 30px;display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:30px}.footer-brand{font-family:var(--serif);font-size:19px;margin-bottom:10px}.footer-grid p{color:var(--ink-3);font-size:13px;max-width:300px;line-height:1.6}.footer-grid h4{font-size:12px;text-transform:uppercase;letter-spacing:.12em;color:var(--ink-3);margin:0 0 12px}.footer-grid a{display:block;color:var(--ink-2);font-size:13.5px;padding:4px 0}.footer-grid a:hover{color:var(--ink);text-decoration:none}.footer-note{text-align:center;color:var(--ink-3);font-size:12px;padding:18px;border-top:1px solid var(--line-soft)}@media(max-width:780px){.footer-grid{grid-template-columns:1fr 1fr}}@media(max-width:480px){.footer-grid{grid-template-columns:1fr}}.mark-svg{color:var(--course);display:block}.nav-leaf{display:inline-flex}.nav-hangul{font-family:var(--hangul);font-style:normal;font-size:12px;color:var(--ink-3);margin-left:2px;letter-spacing:.05em}@media(max-width:600px){.start-panel{padding:22px 18px}.start-tabs{display:flex;width:100%}.start-tabs button{flex:1;padding-inline:10px}.start-detect-actions,.start-custom-row,.scan-row{flex-direction:column;align-items:stretch}.start-detect-actions .btn-major,.start-custom-row .btn-major,.scan-row .btn-major{width:100%;min-width:0}.start-custom-row input,.scan-row input{width:100%;max-width:none;min-height:44px}.scan-card-head,.scan-card-bar{flex-wrap:wrap}.scan-stale,.scan-shipped-tag{margin-left:0}.scan-card-bar .demo-bar{flex-basis:100%}.dl-checksum-row{align-items:stretch;flex-direction:column}.start-choice .btn-major{width:100%;min-width:0}}
