.landing-site{--body:#ffc81e;--body-pale:#fff3c4;--visor:#1f2328;--tail:#1769d8;--tail-pale:#e3effd;--whisker:#19c8f2;--ear:#d8452f;--muted:#59626c;--sticker:drop-shadow(3px 0 0 #fff) drop-shadow(-3px 0 0 #fff) drop-shadow(0 3px 0 #fff) drop-shadow(0 -3px 0 #fff);color:var(--visor);font-family:var(--font-landing-body), "Apple SD Gothic Neo", "Malgun Gothic", sans-serif;word-break:keep-all;background:#fff;overflow-x:clip}.landing-site :is(a,button,input):focus-visible{outline-offset:3px;outline:3px solid}.landing-logo img{filter:drop-shadow(1px 0 #fff)drop-shadow(-1px 0 #fff)drop-shadow(0 1px #fff)drop-shadow(0 -1px #fff)}.landing-peek{z-index:0;width:auto;filter:var(--sticker);pointer-events:none;position:absolute}.landing-nav{background:var(--body);align-items:center;gap:32px;max-width:none;height:76px;padding:0 max(28px,50% - 620px);display:flex}.landing-nav nav{gap:28px;margin-left:12px;font-size:15px;font-weight:500;display:flex}.landing-nav nav a:hover{text-underline-offset:5px;text-decoration:underline;text-decoration-thickness:2px}.landing-navButton{background:var(--visor);color:#fff;white-space:nowrap;border-radius:999px;margin-left:auto;padding:10px 18px;font-size:14px;font-weight:700}.landing-button{border-radius:16px;justify-content:center;align-items:center;gap:10px;min-height:52px;padding:0 22px;font-size:16px;font-weight:700;transition:transform .15s;display:inline-flex}.landing-button:hover{transform:translateY(-2px)}.landing-button.is-ink{background:var(--visor);color:#fff}.landing-button.is-line{box-shadow:inset 0 0 0 2px var(--visor)}.landing-button.is-white{color:var(--tail);background:#fff}.landing-hero{background:linear-gradient(var(--body) calc(100% - 300px), #fff calc(100% - 300px));padding:28px 28px 0}.landing-heroTop{grid-template-columns:auto 380px;justify-content:start;align-items:end;column-gap:48px;max-width:1240px;margin:auto;display:grid}.landing-hero h1{font-family:var(--font-landing-display), sans-serif;letter-spacing:-.01em;font-size:clamp(52px,7vw,104px);font-weight:400;line-height:1.08}.landing-heroSide>p{font-size:17px;font-weight:500;line-height:1.65}.landing-actions{flex-wrap:wrap;gap:10px;margin-top:18px;display:flex}.landing-stage{max-width:1240px;margin:44px auto 0;position:relative}.landing-stage>.landing-peek{height:210px;top:-146px;right:34px}.landing-stageNote{color:var(--muted);margin-top:14px;padding-bottom:8px;font-size:13px}.landing-demo{z-index:1;box-shadow:0 0 0 2px var(--visor), 8px 8px 0 var(--visor);background:#fff;border-radius:24px;animation:.5s cubic-bezier(.2,.8,.2,1) both demo-rise;position:relative;overflow:hidden}@keyframes demo-rise{0%{opacity:0;transform:translateY(24px)}}.demo-prompt{border-bottom:2px solid var(--visor);align-items:center;gap:12px;padding:13px 18px;font-size:15px;font-weight:500;display:flex}.demo-prompt p{flex:1;min-width:0}.demo-prompt>span{background:var(--body-pale);border-radius:999px;flex-shrink:0;padding:3px 11px;font-size:12px;font-weight:700}.demo-panes{grid-template-columns:290px minmax(0,1fr) 370px;min-height:500px;display:grid}.demo-side{background:#f6f8fb;flex-direction:column;display:flex}.demo-mission{border-bottom:1px solid #dfe5ec;padding:16px 18px}.demo-paneHead{justify-content:space-between;margin-bottom:10px;font-size:15px;display:flex}.demo-paneHead span{font:600 13px var(--font-geist-mono), monospace;color:var(--muted)}.demo-mission label{cursor:pointer;align-items:center;gap:8px;padding:4px 0;font-size:13.5px;display:flex}.demo-mission input{width:16px;height:16px;accent-color:var(--tail);flex-shrink:0}.demo-mission p{color:var(--muted);margin-top:8px;font-size:12px}.demo-chat{flex-direction:column;flex:1;justify-content:flex-end;gap:10px;padding:16px 18px;font-size:13.5px;line-height:1.55;display:flex}.demo-mine{background:var(--visor);color:#fff;border-radius:14px 14px 4px;align-self:flex-end;padding:8px 12px}.demo-pico{align-items:flex-start;gap:8px;display:flex}.demo-pico img{flex-shrink:0;margin-top:4px}.demo-pico p{background:#fff;border-radius:4px 14px 14px;padding:8px 12px}.demo-code{background:var(--visor);color:#e6e9ee;min-width:0}.demo-tabs{font:500 13px var(--font-geist-mono), monospace;color:#98a2ae;display:flex}.demo-tabs span{padding:11px 15px}.demo-tabs .is-active{color:#fff;box-shadow:inset 0 -2px 0 var(--whisker)}.demo-code pre{font:13.5px/1.75 var(--font-geist-mono), "Apple SD Gothic Neo", "Malgun Gothic", monospace;padding:12px 0;overflow-x:auto}.demo-code code{min-width:max-content;display:block}.demo-line{white-space:pre;min-height:1.75em;padding-right:16px;transition:background .2s;display:block}.demo-line i{text-align:right;color:#6b7581;width:44px;padding-right:16px;font-style:normal;display:inline-block}.demo-line.is-ran{box-shadow:inset 3px 0 0 var(--whisker);background:#19c8f22b}.demo-line.is-ran i{color:var(--whisker)}.tok-keyword{color:#7cc4ff}.tok-string{color:#ffd65c}.tok-comment{color:#8fbf8a}.demo-preview{background:var(--tail-pale);flex-direction:column;display:flex}.demo-address{font:500 13px var(--font-geist-mono), "Apple SD Gothic Neo", monospace;color:var(--muted);padding:11px 16px}.demo-game{text-align:center;background:#fff;border-radius:18px;flex-direction:column;flex:1;justify-content:space-between;gap:12px;margin:0 16px 16px;padding:18px;display:flex}.demo-game h3{font-size:20px;font-weight:700}.demo-game dl{grid-template-columns:1fr 1fr;gap:8px;display:grid}.demo-game dl div{background:#e8f6ec;border-radius:12px;padding:7px}.demo-game dl .is-lose{background:#fdeceb}.demo-game dt{font-size:13px}.demo-game dd{font-size:24px;font-weight:700;line-height:1.2}.demo-versus{justify-content:space-around;align-items:center;display:flex}.demo-versus span{margin-bottom:6px;font-size:13px;display:block}.demo-versus b{color:#8a94a0;background:#f1f4f8;border-radius:50%;place-items:center;width:76px;height:76px;font-size:36px;font-weight:700;animation:.25s ease-out hand-pop;display:grid}.demo-versus em{color:#8a94a0;font-style:normal;font-weight:700}@keyframes hand-pop{0%{transform:scale(.7)}}.demo-result{min-height:24px;color:var(--muted);font-size:16px;font-weight:700}.demo-result.is-win{color:#17803a}.demo-result.is-lose{color:var(--ear)}.demo-result.is-draw{color:var(--visor)}.demo-buttons{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.demo-buttons button{background:var(--tail);color:#fff;cursor:pointer;border-radius:12px;min-height:46px;font-size:15px;font-weight:700;transition:transform .1s,background .15s}.demo-buttons button:hover{background:#0f55b5}.demo-buttons button:active{transform:translateY(2px)}.demo-buttons button:focus-visible{outline-color:var(--visor)}.landing-inner{max-width:1240px;margin:auto}.landing-title{font-family:var(--font-landing-display), sans-serif;font-size:clamp(34px,4.2vw,56px);font-weight:400;line-height:1.18}.landing-lead{color:var(--muted);margin-top:12px;font-size:18px}.landing-flow{padding:96px 28px 110px}.flow-grid{grid-template-rows:minmax(160px,auto) 44px minmax(160px,auto);grid-template-columns:76px repeat(6,minmax(0,1fr));margin-top:44px;display:grid}.flow-lane{border-radius:22px;grid-column:1/-1;padding:18px;font-size:14px;font-weight:700}.flow-lane.is-teacher{background:var(--body-pale);grid-row:1}.flow-lane.is-student{background:var(--tail-pale);color:#0f55b5;grid-row:3}.flow-step{padding:22px 16px 22px 14px;position:relative}.flow-step.is-teacher{grid-row:1}.flow-step.is-student{grid-row:3}.flow-step small{display:none}.flow-step h3{font-size:19px;font-weight:700}.flow-step p{color:#3c444d;margin-top:8px;font-size:14.5px;line-height:1.6}.flow-pass{background:var(--visor);color:#fff;white-space:nowrap;border-radius:999px;grid-row:2;place-self:center;align-items:center;gap:5px;padding:6px 13px;font-size:13px;font-weight:700;display:inline-flex}.landing-teacher{background:var(--visor);color:#fff;padding:100px 28px}.landing-teacherGrid{grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);align-items:center;gap:72px;display:grid}.teacher-list{margin-top:32px}.teacher-list div{border-top:1px solid #434a53;padding:16px 0}.teacher-list dt{color:var(--body);font-size:17px;font-weight:700}.teacher-list dd{color:#d5dae0;margin-top:4px;font-size:15.5px;line-height:1.6}.review{padding-top:88px;position:relative}.review>.landing-peek{height:132px;top:0;right:40px}.review-card{z-index:1;color:var(--visor);background:#fff;border-radius:22px;position:relative;overflow:hidden}.review-head{border-bottom:1px solid #e3e7ec;justify-content:space-between;align-items:center;padding:15px 20px;display:flex}.review-head span{color:var(--muted);font-size:14px}.review-body{grid-template-columns:1fr 1fr;display:grid}.review-body>div{padding:18px 20px 22px}.review-body>div+div{border-left:1px solid #e3e7ec}.review-body h3{color:var(--muted);margin-bottom:10px;font-size:13px;font-weight:700}.review-mine{background:var(--visor);color:#fff;border-radius:14px 14px 4px;margin-left:16px;padding:8px 12px;font-size:14px;line-height:1.5}.review-pico{align-items:flex-start;gap:7px;margin-top:10px;font-size:14px;line-height:1.5;display:flex}.review-pico img{flex-shrink:0;margin-top:3px}.review-comment{border:1px solid #dfe5ec;border-radius:12px;padding:10px 12px;font-size:14px;line-height:1.55}.review-badge{justify-content:space-between;align-items:center;margin-top:14px;font-size:13.5px;display:flex}.review-badge b{background:var(--body-pale);border-radius:999px;padding:3px 10px;font-size:13px}.review-gallery{justify-content:space-between;align-items:center;gap:8px;margin-top:14px;font-size:13.5px;display:flex}.review-gallery i{background:var(--visor);border-radius:99px;flex-shrink:0;width:38px;height:22px;position:relative}.review-gallery i:after{content:"";background:#fff;border-radius:50%;width:16px;height:16px;position:absolute;top:3px;right:3px}.review figcaption{color:#aab2bc;margin-top:12px;font-size:13px}.landing-start{background:var(--tail);color:#fff;padding:100px 28px}.landing-startGrid{grid-template-columns:minmax(0,1fr) 400px;align-items:center;gap:64px;display:grid}.landing-startGrid>div:first-child>p{max-width:520px;margin-top:16px;font-size:17px;line-height:1.65}.landing-startGrid .landing-button{margin-top:26px}.landing-login{width:100%;max-width:400px;color:var(--visor);margin:auto;padding-top:88px;position:relative}.landing-login>.landing-peek{height:130px;top:0;left:50%;transform:translate(-50%)}.landing-login form{z-index:1;border:2px solid var(--visor);max-width:none;box-shadow:6px 6px 0 var(--visor);background:#fff;position:relative}.landing-footer{max-width:1296px;color:var(--muted);align-items:center;gap:24px;margin:auto;padding:26px 28px;font-size:13px;display:flex}.landing-footer>span{margin-left:auto}.landing-footer>a{color:var(--visor);align-items:center;gap:4px;font-weight:700;display:inline-flex}.landing-entry{background:var(--body,#ffc81e);flex-direction:column;justify-content:center;align-items:center;gap:20px;min-height:100dvh;padding:40px 16px;display:flex}.landing-entry .landing-login{margin:0}.landing-entryLink{text-underline-offset:4px;font-size:14px;font-weight:500;text-decoration:underline}@media (max-width:1180px){.landing-heroTop{grid-template-columns:1fr;row-gap:18px}.landing-heroSide{max-width:560px}.demo-panes{grid-template-columns:minmax(0,1fr) 340px}.demo-side{flex-direction:row;grid-area:2/1/auto/-1}.demo-mission{border-bottom:0;border-right:1px solid #dfe5ec;flex:1}.demo-chat{flex:1}.landing-teacherGrid{grid-template-columns:1fr;gap:48px}.review{max-width:640px}.flow-grid{flex-direction:column;gap:10px;display:flex}.flow-lane{display:none}.flow-step{border-radius:18px;padding:16px 18px}.flow-step.is-teacher{background:var(--body-pale);margin-right:12%}.flow-step.is-student{background:var(--tail-pale);margin-left:12%}.flow-step small{margin-bottom:3px;font-size:13px;font-weight:700;display:block}.flow-step.is-student small{color:#0f55b5}.flow-pass{align-self:center}}@media (max-width:760px){.landing-nav{gap:12px;height:64px;padding:0 16px}.landing-nav nav{display:none}.landing-hero{background:linear-gradient(var(--body) calc(100% - 420px), #fff calc(100% - 420px));padding:16px 16px 0}.landing-hero h1{font-size:clamp(44px,13.6vw,72px)}.landing-heroSide>p{font-size:16px}.landing-actions .landing-button{flex:100%}.landing-stage{margin-top:96px}.landing-stage>.landing-peek{height:140px;top:-100px;right:16px}.demo-prompt{align-items:flex-start;padding:11px 14px;font-size:14px}.demo-panes{flex-direction:column;min-height:0;display:flex}.demo-preview{order:1}.demo-code{order:2}.demo-side{flex-direction:column;order:3}.demo-mission{border-bottom:1px solid #dfe5ec;border-right:0}.demo-code pre{font-size:12.5px}.demo-line i{width:34px;padding-right:10px}.landing-flow{padding:64px 16px 72px}.landing-lead{font-size:16px}.landing-teacher,.landing-start{padding:68px 16px}.review-body{grid-template-columns:1fr}.review-body>div+div{border-top:1px solid #e3e7ec;border-left:0}.landing-startGrid{grid-template-columns:1fr;gap:28px}.landing-footer{padding:22px 16px}}@media (prefers-reduced-motion:reduce){.landing-demo,.demo-versus b{animation:none}.landing-button,.demo-line,.demo-buttons button{transition:none}}
