:root{font-family:system-ui,-apple-system,Segoe UI,sans-serif;color:#202947;background:#f5f7fc;font-synthesis:none;text-rendering:optimizeLegibility;font-size:18px;font-weight:450;--ink:#202947;--muted:#6d7890;--line:#e5e9f2;--purple:#6258dc;--soft:#eef0ff;--green:#1e9c77}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button,input,textarea,select{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,a:focus-visible{outline:3px solid #8295ff;outline-offset:3px}.shell{max-width:1440px;margin:auto;padding:0 34px}.topbar{height:88px;display:grid;grid-template-columns:1fr minmax(220px,420px) 1fr;align-items:center;border-bottom:1px solid var(--line)}.brandmark{font-size:20px;font-weight:800;color:var(--ink);text-decoration:none;display:flex;align-items:center;gap:8px}.top-progress{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;color:#65718b;font-size:14px;font-weight:650}.progress,.coding-progress{height:9px;border-radius:9px;background:#e8ebf4;overflow:hidden}.progress i,.coding-progress i{height:100%;display:block;background:linear-gradient(90deg,#8079eb,#59b6cf);border-radius:inherit;transition:width .25s}.top-actions{display:flex;justify-content:flex-end;gap:10px}.icon-button{height:42px;padding:0 14px;border:1px solid var(--line);border-radius:13px;background:#fff;color:#4d5870;font-size:15px;font-weight:650}.admin-gear{width:42px;padding:0;font-size:20px}.layout{display:grid;grid-template-columns:minmax(400px,1.08fr) minmax(350px,.92fr);gap:44px;padding:42px 0 28px;min-height:630px}.lesson-panel{padding:16px 4px;display:flex;flex-direction:column}.step-label{display:flex;align-items:center;gap:11px;color:#65718b;font-size:16px;font-weight:700;margin:0 0 22px}.step-number{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:#eeefff;color:#5148c5;font-size:17px}.lesson-panel h1,.final-content h1{font-size:clamp(29px,3vw,40px);letter-spacing:-1.1px;line-height:1.24;margin:0 0 13px;font-weight:820}.lead{font-size:20px;color:#606b83;line-height:1.55;margin:0 0 26px}.form-stack{max-width:600px;display:grid;gap:17px;margin-top:10px}.form-stack label,.modal-card label{font-weight:700;color:#3c4964;display:grid;gap:8px}.form-stack input,.modal-card input,.modal-card select,.admin-tools input{height:58px;border:1px solid #d9deea;border-radius:13px;background:#fff;padding:0 16px;font-size:19px;color:var(--ink)}.privacy-note{padding:14px 15px;background:#f0f8f5;border-radius:12px;color:#456b60;font-size:15px}.primary-button,.secondary-button{min-height:58px;border:0;border-radius:14px;padding:0 20px;font-size:18px;font-weight:750;display:inline-flex;align-items:center;justify-content:center;gap:16px}.primary-button{background:var(--purple);color:#fff;box-shadow:0 8px 18px #6258dc28}.primary-button:hover{background:#5147c7}.primary-button:disabled{opacity:.5;cursor:not-allowed}.primary-button span{font-size:23px}.wide{width:100%}.chat-card{background:#fff;border:1px solid #e1e5ef;border-radius:20px;padding:20px;box-shadow:0 8px 28px #2132540a;max-width:700px}.chat-head{display:flex;align-items:center;gap:11px}.bot-avatar{width:40px;height:40px;display:grid;place-items:center;background:#eeefff;color:#544bc6;border-radius:13px;font-size:23px}.chat-head div{display:grid;gap:2px}.chat-head b{font-size:16px}.chat-head small{color:#8390a6;font-size:14px}.sim-badge{margin-left:auto;color:#5d55b9;background:#f1f0ff;padding:7px 10px;border-radius:9px;font-size:13px;font-weight:750}.chat-message{margin:18px 0 10px;padding:15px 17px;background:#f4f6fb;border-radius:14px 14px 14px 4px;color:#34415d;font-size:17px;line-height:1.5}.example-button,.text-button{border:0;background:none;color:#5149bf;font-weight:700;padding:7px 0;font-size:15px}.prompt-label{display:block;margin:14px 0 8px;color:#46536d;font-weight:700;font-size:15px}.chat-card textarea{width:100%;resize:vertical;min-height:96px;border:1px solid #d8deea;border-radius:12px;padding:13px 14px;line-height:1.5;color:var(--ink);background:#fff}.chat-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:12px}.chat-actions>span{color:#8993a6;font-size:13px}.chat-actions .primary-button{min-height:50px;font-size:16px}.error-line{min-height:22px;color:#bd4054;font-size:14px;margin-top:6px}.concept-chip{margin-top:16px;color:#357660;background:#eff8f4;border-radius:12px;padding:10px 13px;width:max-content;font-size:14px;font-weight:650}.learning-note{margin-top:auto;padding:18px 20px;border-radius:16px;background:#f0f2fa;display:grid;gap:5px;color:#65718a;font-size:15px}.learning-note b{color:#37435e;font-size:15px}.preview-panel{border:1px solid #e2e6f0;background:#fff;border-radius:22px;padding:20px;box-shadow:0 12px 36px #2537560a;align-self:start}.preview-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.eyebrow{font-size:12px;letter-spacing:1.4px;color:#8278d8;font-weight:800}.preview-heading h2{font-size:21px;margin:3px 0 0}.live-dot{font-size:13px;color:#25866c;display:flex;align-items:center;gap:7px}.live-dot:before{content:"";width:8px;height:8px;background:#32b58d;border-radius:50%;box-shadow:0 0 0 4px #e6f6f0}.preview-stage{position:relative;height:310px;overflow:hidden;border-radius:16px;background:#fff5f7}.preview-bg{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden}.preview-bg.vertical{background-image:repeating-linear-gradient(90deg,#fbe7eb 0,#fbe7eb 12%,#f9f4df 12%,#f9f4df 24%,#e7f3fc 24%,#e7f3fc 36%,#f2ebfa 36%,#f2ebfa 48%)}.preview-bg.horizontal{background-image:repeating-linear-gradient(0deg,#fbe7eb 0,#fbe7eb 50px,#f9f4df 50px,#f9f4df 100px,#e7f3fc 100px,#e7f3fc 150px)}.preview-bg.circles{background-image:radial-gradient(circle,transparent 0 23px,#c0d2ef77 24px 28px,transparent 29px 44px,#edb7d477 45px 50px,transparent 51px);background-size:110px 110px}.preview-bg.house{background-color:#eaf6ff;background-image:linear-gradient(135deg,transparent 49%,#ba9bdb 50% 56%,transparent 57%),linear-gradient(45deg,transparent 49%,#ba9bdb 50% 56%,transparent 57%),linear-gradient(#fff 0,#fff 0);background-size:78px 58px,78px 58px,78px 58px;background-position:0 0,0 0,0 18px;background-repeat:repeat}.preview-bg.dog{background-color:#fff5e9;background-image:radial-gradient(ellipse at 20px 20px,#a57b5933 0 9px,transparent 10px),radial-gradient(ellipse at 45px 22px,#a57b5933 0 9px,transparent 10px),radial-gradient(circle at 33px 34px,#d49c6f55 0 12px,transparent 13px),radial-gradient(circle at 22px 66px,#ddad7e55 0 4px,transparent 5px),radial-gradient(circle at 33px 61px,#ddad7e55 0 4px,transparent 5px),radial-gradient(circle at 44px 66px,#ddad7e55 0 4px,transparent 5px)}.preview-balloon{position:absolute;bottom:-140px;width:calc(var(--size)*.74);height:calc(var(--size)*.93);border-radius:50% 50% 47% 47%;background:radial-gradient(ellipse at 28% 22%,white 0 5%,#fff8 6% 10%,transparent 11%),radial-gradient(circle at 35% 30%,#ffffffa8,var(--color) 58%,#5b4774);box-shadow:inset -6px -7px 14px #15234428,0 8px 12px #26335625;animation:float-preview 6s ease-in-out infinite}.preview-balloon:after{content:"";position:absolute;left:48%;bottom:-5px;border:5px solid transparent;border-top-color:var(--color)}.preview-balloon.star{clip-path:polygon(50% 0%,61% 34%,98% 36%,70% 58%,80% 95%,50% 75%,20% 95%,30% 58%,2% 36%,39% 34%);border-radius:0}.preview-balloon.heart{clip-path:polygon(50% 94%,8% 57%,4% 36%,12% 18%,30% 12%,50% 32%,70% 12%,88% 18%,96% 36%,92% 57%);border-radius:0}.preview-balloon.diamond{clip-path:polygon(50% 0,94% 48%,50% 100%,6% 48%);border-radius:0}.preview-balloon.donut{mask:radial-gradient(circle,transparent 0 20%,#000 23%)}@keyframes float-preview{0%,to{transform:translateY(0) rotate(-4deg)}50%{transform:translateY(-210px) rotate(4deg)}}.preview-hud{position:absolute;z-index:2;top:12px;left:12px;right:12px;display:flex;justify-content:space-between}.preview-hud span{background:#ffffffd9;padding:7px 11px;border-radius:10px;font-size:14px;color:#37435e}.setting-summary{padding:15px 2px 8px}.setting-summary>span,.lesson-footer span{font-size:13px;color:#8590a4}.setting-summary p{font-size:15px;color:#45516b;margin:5px 0 0;line-height:1.6}.preview-foot{border-top:1px solid #eef0f5;display:flex;justify-content:space-between;align-items:center;padding-top:12px;color:#7e899d;font-size:13px}.lesson-footer{display:grid;grid-template-columns:1fr 1fr;gap:22px;border-top:1px solid var(--line);padding:18px 4px 24px}.lesson-footer>div{display:grid;gap:6px}.lesson-footer b{font-size:14px;color:#46516b}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#17223d82;display:grid;place-items:center;padding:20px;z-index:50;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-card{width:min(560px,100%);max-height:90vh;overflow:auto;background:#fff;border-radius:22px;padding:28px;box-shadow:0 25px 90px #14203c55}.modal-card h2{font-size:27px;line-height:1.3;margin:0 0 16px}.modal-card p{font-size:17px;line-height:1.65;color:#606c82}.modal-card .primary-button{margin-top:15px}.completion{text-align:center;padding:38px}.completion h2{font-size:30px;margin:14px 0}.completion p{font-size:15px}.success-mark{width:62px;height:62px;margin:auto;display:grid;place-items:center;background:#e8f7f0;color:#269671;border-radius:50%;font-size:32px;font-weight:800}.intro{min-height:100vh;display:grid;align-content:center;justify-items:center;background:radial-gradient(ellipse at 50% 35%,#fff 0,#eef2ff 68%);overflow:hidden}.intro .brand{font-size:clamp(32px,6vw,56px);font-weight:850;letter-spacing:-1.8px}.intro p{font-size:24px;color:#69748c;margin:12px}.intro>span{color:#8b95a9;font-size:15px}.intro-balloons{height:130px;display:flex;align-items:end;gap:20px;margin-bottom:30px}.intro-balloons i{width:55px;height:68px;border-radius:50%;background:radial-gradient(circle at 30% 25%,#fff,#fa758a 60%,#c44765);animation:intro-float 1.7s ease-in-out infinite alternate}.intro-balloons i:nth-child(2){width:68px;height:84px;background:radial-gradient(circle at 30% 25%,#fff,#7999f3 60%,#5262bf);animation-delay:.4s}.intro-balloons i:nth-child(3){background:radial-gradient(circle at 30% 25%,#fff,#f2cf5c 60%,#d49c31);animation-delay:.8s}@keyframes intro-float{to{transform:translateY(-30px) rotate(5deg)}}.coding-screen{min-height:100vh;background:#111827;color:#f4f5fa;padding:28px clamp(18px,5vw,72px);display:flex;flex-direction:column}.coding-head{display:flex;align-items:center;justify-content:space-between}.coding-head .eyebrow{color:#9b96ff}.coding-head h1{font-size:27px;margin:6px 0 20px}.timer{width:72px;height:72px;display:grid;place-content:center;text-align:center;border:1px solid #ffffff2b;border-radius:20px;background:#ffffff0a}.timer b{font-size:27px;line-height:1}.timer span{font-size:12px;color:#afb7ca}.coding-progress{background:#33394a;height:8px}.coding-progress i{background:linear-gradient(90deg,#877cf6,#4bbbd5)}.coding-status{margin:22px 0 12px;color:#72d7c0;font-size:17px;font-weight:650}.code-window{background:#171f2e;border:1px solid #30394d;border-radius:18px;min-height:370px;flex:1;overflow:hidden;position:relative;box-shadow:0 15px 60px #0005}.code-title{height:51px;border-bottom:1px solid #30394d;display:flex;align-items:center;justify-content:space-between;padding:0 18px;color:#9ba6bb;font-size:13px}.code-title b{font-weight:600}.code-title span:first-child{color:#fb8292}.code-window pre{padding:24px 28px;margin:0;white-space:pre-wrap;color:#c3d2f4;font:16px/2.05 ui-monospace,SFMono-Regular,Consolas,monospace;max-height:55vh;overflow:auto}.fake-cursor{height:18px;width:2px;background:#70dec3;position:absolute;left:29px;top:104px;animation:blink 1s steps(2) infinite}@keyframes blink{50%{opacity:0}}.sim-disclosure{font-size:13px;color:#aab3c5}.coding-bottom{display:flex;justify-content:space-between;gap:18px;color:#c8d0df;font-size:13px;padding:6px 0}.coding-bottom span+span{color:#8e9ab0}.final-shell{min-height:100vh}.final-content{max-width:850px;margin:50px auto;text-align:center}.confetti{font-size:45px;margin:10px 0 22px}.final-content h1{font-size:clamp(30px,5vw,46px);margin:12px 0}.final-content .lead{margin-bottom:20px}.final-summary{display:grid;gap:8px;padding:18px;background:#fff;border:1px solid var(--line);border-radius:15px;margin:24px auto;max-width:630px}.final-summary span{color:#66728b}.final-buttons{display:flex;justify-content:center;gap:13px;flex-wrap:wrap}.secondary-button{background:#fff;color:#3c4963;border:1px solid #dce1eb}.save-status{margin:16px;color:#52816e;font-size:15px}.final-secondary{display:flex;justify-content:center;gap:25px}.game-frame{display:block;width:100%;height:700px;border:1px solid #dfe4ee;border-radius:20px;margin:30px auto;background:#fff}.game-frame[hidden]{display:none}.admin-content{padding:35px 0}.admin-content h1{font-size:32px}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:22px 0}.stats-grid>div{background:#fff;border:1px solid var(--line);border-radius:15px;padding:18px;display:grid;gap:4px}.stats-grid b{font-size:28px}.stats-grid span{font-size:14px;color:#77839b}.admin-tools{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:18px}.admin-tools input{height:48px;max-width:230px;font-size:16px}.admin-tools .secondary-button{min-height:48px;font-size:15px}.admin-list{background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden}.admin-row{padding:15px;display:flex;gap:10px;align-items:center;border-bottom:1px solid #edf0f5}.admin-row>div{flex:1;display:grid;gap:3px}.admin-row span,.admin-row small{font-size:13px;color:#79849a}.admin-row button,.danger-button{border:1px solid #dde2ec;border-radius:9px;background:#fff;padding:8px 10px;font-size:13px;color:#495671}.admin-row .danger-button{color:#b23a51}.empty-state{padding:30px;text-align:center;color:#79849a}.json-view{font-size:13px;max-height:50vh;overflow:auto;background:#f4f6fa;padding:14px;border-radius:10px}.duration-grid{display:grid;gap:8px;margin:12px 0}.duration-grid label{grid-template-columns:1fr 100px;align-items:center;font-size:14px}.duration-grid input{height:42px}.large-text{font-size:21px}.large-text .lead{font-size:23px}.large-text .chat-message,.large-text .setting-summary p{font-size:19px}.large-text button{font-size:18px}@media(max-width:900px){.shell{padding:0 20px}.layout{grid-template-columns:1fr;gap:20px;padding-top:26px}.lesson-panel{min-height:475px}.preview-panel{max-width:none}.preview-stage{height:280px}.topbar{grid-template-columns:1fr 1.3fr auto}.brandmark span{display:none}}@media(max-width:580px){.shell{padding:0 14px}.topbar{height:74px;grid-template-columns:auto 1fr auto;gap:12px}.brandmark{font-size:18px}.top-progress{gap:7px;font-size:12px}.top-progress small{display:none}.icon-button{height:38px;padding:0 10px;font-size:13px}.admin-gear{width:38px}.layout{padding-top:20px}.lesson-panel{padding:8px 0;min-height:unset}.lesson-panel h1{font-size:29px}.lead{font-size:18px}.step-label{margin-bottom:15px}.chat-card{padding:15px}.chat-actions{align-items:stretch;flex-direction:column}.chat-actions>span{display:none}.chat-actions .primary-button{width:100%}.learning-note{margin-top:22px}.preview-panel{padding:15px}.preview-stage{height:250px}.lesson-footer{gap:12px}.lesson-footer b{font-size:13px}.coding-screen{padding:18px}.coding-head h1{font-size:21px}.coding-bottom{flex-direction:column}.code-window pre{font-size:14px}.admin-row{flex-wrap:wrap}.admin-row>div{flex-basis:100%}.stats-grid{gap:8px}.stats-grid>div{padding:13px}.stats-grid b{font-size:22px}.modal-card{padding:22px}.completion{padding:30px 20px}.final-content{margin:36px auto}.final-buttons>*{width:100%}.final-secondary{flex-direction:column;gap:5px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}:root{--muted:#4f5d75}.top-progress{color:#4e5b71}.lead{color:#4d5a70}.step-label{color:#4f5d75}.chat-head small{color:#526078;font-size:15px}.sim-badge{font-size:14px;color:#453da3;background:#e9e8ff}.chat-actions>span{color:#56637a;font-size:14px}.prompt-label{font-size:16px;color:#34415b}.error-line{font-size:16px;color:#a72840}.privacy-note{font-size:16px;color:#315d4e}.setting-summary>span,.lesson-footer span{font-size:15px;color:#536079}.setting-summary p{font-size:17px;color:#33415a}.setting-summary p{word-break:keep-all}.preview-foot{font-size:15px;color:#536078}.eyebrow{font-size:14px;color:#5e52bc}.live-dot{font-size:14px;color:#176c56}.lesson-footer b{font-size:16px;color:#35415a}.modal-card p{color:#45526a}.intro p{color:#4e5d75}.intro>span{color:#57657d;font-size:16px}.code-title{font-size:15px;color:#d7dfed}.coding-status{font-size:19px;color:#83f4d2}.sim-disclosure{font-size:15px;color:#d6deec}.coding-bottom{font-size:15px;color:#e3e9f3}.coding-bottom span+span{color:#d0daeb}.timer span{font-size:14px;color:#d7deea}.terminal-kicker{display:flex;align-items:center;gap:10px;color:#8af3d0;font-size:15px;font-weight:800;letter-spacing:.07em}.terminal-tag{border:1px solid #426e7d;background:#13313a;color:#b2f7fa;border-radius:7px;padding:5px 9px;font-size:13px;letter-spacing:.09em}.terminal-icon{color:#75efcf;font-family:ui-monospace,monospace;font-weight:900}.window-dots{display:flex;gap:7px}.window-dots i{width:10px;height:10px;background:#ff7187;border-radius:50%}.window-dots i:nth-child(2){background:#ffc95c}.window-dots i:nth-child(3){background:#60ddb0}.code-loc{color:#dbe5f1;font-size:14px;letter-spacing:.08em}.coding-screen{position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(ellipse at 87% 12%,#143341 0,transparent 32%),linear-gradient(145deg,#09121f,#101b2c 55%,#0b1824)}.matrix-glow{position:absolute;z-index:-1;top:0;right:0;bottom:0;left:0;pointer-events:none;opacity:.16;background:repeating-linear-gradient(0deg,transparent 0 5px,#4fffd511 6px 7px),linear-gradient(90deg,transparent,#1fc9ad14 50%,transparent)}.coding-head h1{color:#f6f8fc;text-shadow:0 0 22px #62f3d52c}.coding-head .eyebrow{color:#ac9eff}.coding-progress{background:#29384b;height:10px;border:1px solid #3d5265;position:relative}.coding-progress i{background:linear-gradient(90deg,#44f0bc,#55d6ef,#a68cff);box-shadow:0 0 18px #47efcf7a}.coding-status{display:flex;align-items:center;gap:11px;margin:18px 0 12px;color:#91f7d8}.status-pulse,.live-pulse{width:10px;height:10px;flex:none;border-radius:50%;background:#55f0bd;box-shadow:0 0 0 5px #55f0bd24,0 0 18px #55f0bd;animation:pulse-glow 1.1s ease-in-out infinite alternate}.status-right{margin-left:auto;color:#abeefa;font:700 13px/1 ui-monospace,monospace;letter-spacing:.08em}@keyframes pulse-glow{to{opacity:.6;box-shadow:0 0 0 8px #55f0bd16,0 0 25px #55f0bd}}.code-window{background:#081321ef;border-color:#294659;box-shadow:0 18px 65px #0007,0 0 0 1px #36dfbd1a,0 0 40px #26cfba12;min-height:320px}.code-title{background:#101d2d;border-bottom-color:#2b4151}.code-output{position:relative;margin:0;padding:12px 0;max-height:58vh;overflow:auto;color:#e1f5f4;font:17px/1.75 ui-monospace,SFMono-Regular,Consolas,monospace;white-space:pre;scrollbar-color:#367d83 #0b1726;scrollbar-width:thin}.code-line{display:flex;min-height:1.75em;padding-right:18px}.line-num{display:inline-block;flex:0 0 56px;padding-right:15px;text-align:right;color:#8295aa;font-weight:500;-webkit-user-select:none;user-select:none}.code-line code{color:#e1f5f4;font:inherit}.tok-keyword{color:#67d9ff;font-weight:700}.tok-string{color:#9ce8a3}.tok-comment{color:#9eb1c3}.tok-number{color:#ffc875}.terminal-cursor{display:block;width:9px;height:18px;margin:3px 0 3px 56px;background:#6affce;box-shadow:0 0 15px #6affce;animation:blink .75s steps(2) infinite}.fake-cursor{display:none}.code-sweep{position:absolute;inset:52px 0 auto;height:2px;pointer-events:none;background:linear-gradient(90deg,transparent,#6cffdaaa,transparent);box-shadow:0 0 16px #6cffda77;animation:sweep 3.4s linear infinite;opacity:.55}@keyframes sweep{0%{transform:translateY(0)}to{transform:translateY(320px)}}.terminal-metrics{display:flex;align-items:center;justify-content:center;gap:18px;padding:13px 0 6px;color:#dce6f0;font-size:15px}.terminal-metrics span{display:flex;align-items:center;gap:8px}.terminal-metrics b{color:#83f3d2;font:800 12px ui-monospace,monospace;letter-spacing:.1em}.terminal-metrics i{color:#7ac7d4;font-style:normal}.coding-screen .modal-card{color:#202947}@media(max-width:580px){.terminal-tag{font-size:12px;padding:4px 6px}.terminal-kicker{font-size:13px}.terminal-metrics{gap:7px;font-size:13px}.terminal-metrics span{gap:4px}.terminal-metrics b,.status-right{font-size:11px}.line-num{flex-basis:42px;padding-right:10px}.code-output{font-size:14px;max-height:54vh}.terminal-cursor{margin-left:42px}.coding-status{font-size:16px}.code-loc{font-size:12px}}.prep-shell{max-width:1280px}.prep-topbar{grid-template-columns:1fr minmax(260px,1.2fr) auto;gap:18px}.prep-header-label{display:grid;justify-items:center;gap:3px;text-align:center}.prep-header-label b{font-size:17px}.prep-header-label small{font-size:14px;color:#536079}.prep-main{max-width:1060px;margin:28px auto 56px}.prep-hero{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 210px;gap:12px;padding:30px 34px 24px;border:1px solid #d9e5ed;border-radius:26px;background:radial-gradient(circle at 80% 20%,#fff8d9 0 9%,transparent 10%),linear-gradient(135deg,#e4f8f3,#edf2ff 66%,#fff1e5);overflow:hidden}.prep-hero-copy{max-width:680px}.prep-label{font-size:13px;font-weight:850;letter-spacing:.08em;color:#215e65}.prep-hero h1{font-size:clamp(29px,4vw,43px);line-height:1.2;letter-spacing:-.035em;margin:11px 0;color:#1f3150}.prep-hero-copy p{font-size:17px;color:#42546e;line-height:1.6;margin:10px 0}.prep-hero-art{position:relative;min-height:125px}.prep-hero-art span{position:absolute;display:grid;place-items:center;width:66px;height:66px;border-radius:23px;background:#ffffffd9;box-shadow:0 12px 28px #31476516;font-size:39px;animation:prep-drift 3s ease-in-out infinite alternate}.prep-hero-art span:nth-child(1){top:2px;left:6px}.prep-hero-art span:nth-child(2){top:58px;left:88px;animation-delay:.4s}.prep-hero-art span:nth-child(3){top:38px;left:153px;animation-delay:.8s}.prep-hero-art span:nth-child(4){top:104px;left:22px;animation-delay:1.2s}@keyframes prep-drift{to{transform:translateY(-7px) rotate(5deg)}}.prep-progress{grid-column:1/-1;display:grid;gap:10px;margin-top:6px}.prep-progress>div:first-child{display:flex;justify-content:space-between;gap:12px;color:#30445e}.prep-progress>div:first-child span{font-size:14px;color:#4d5c72}.prep-progress-track{height:12px;border-radius:12px;background:#ffffffbd;overflow:hidden}.prep-progress-track i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#35ae8a,#4c9add);transition:width .25s}.prep-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:18px 0}.prep-step{display:grid;grid-template-columns:36px 1fr;grid-template-rows:auto auto;column-gap:9px;align-items:center;min-height:68px;padding:11px 13px;border:1px solid #e1e7ed;border-radius:16px;background:#fff;color:#59677b}.prep-step>span{grid-row:1/3;display:grid;place-items:center;width:34px;height:34px;border-radius:12px;background:#f0f3f8;font-size:19px}.prep-step b{font-size:14px;line-height:1.25}.prep-step small{font-size:13px;color:#69768a}.prep-step.is-current{border-color:#6384d5;background:#f2f5ff;box-shadow:0 0 0 2px #738de51a}.prep-step.is-current>span{background:#dfe6ff;color:#354eaf}.prep-step.is-done>span{background:#dcf5e8;color:#176846;font-weight:900}.prep-card{padding:25px 28px 19px;border:1px solid #e0e6ec;border-radius:23px;background:#fff;box-shadow:0 10px 30px #2637500a}.prep-card-head{display:flex;justify-content:space-between;align-items:center;gap:12px;padding-bottom:17px;border-bottom:1px solid #edf0f4}.prep-card-head .eyebrow{color:#3f688b}.prep-card-head h2{margin:6px 0 0;font-size:26px;line-height:1.25;color:#24334b}.prep-mission-count{display:grid;place-items:center;width:46px;height:46px;border-radius:15px;background:#f1f4fa;color:#40516b;font-weight:800}.prep-instruction{display:flex;align-items:flex-start;gap:12px;margin:18px 0;padding:13px 15px;border-radius:14px;background:#f1f7fc;color:#344b64}.prep-instruction>span{font-size:24px}.prep-instruction p{margin:2px 0;font-size:16px;line-height:1.55}.prep-theme-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.prep-choice{position:relative;display:grid;grid-template-columns:48px 1fr 24px;align-items:center;gap:12px;min-height:80px;padding:13px;text-align:left;border:2px solid #e5eaf0;border-radius:16px;background:#fff;color:#26364c}.prep-choice:hover{border-color:#afc0e9;background:#fafbff}.prep-choice.is-selected{border-color:#4c74c2;background:#f0f4ff}.choice-emoji{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;background:#f5f6fa;font-size:28px}.prep-choice b{display:block;font-size:16px}.prep-choice small{display:block;margin-top:4px;color:#536278;font-size:14px}.choice-check{opacity:0;display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#426ab8;color:#fff;font-size:14px}.is-selected .choice-check{opacity:1}.prep-talk{display:grid;gap:4px;margin:17px 0 0;padding:13px 16px;border-left:4px solid #e2a83f;border-radius:0 12px 12px 0;background:#fff8e9;color:#38475d}.prep-talk b{font-size:15px}.prep-talk span{font-size:15px;color:#4d5a6e;line-height:1.5}.prep-card-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:21px;padding-top:16px;border-top:1px solid #edf0f4}.prep-card-footer>span{font-size:14px;color:#58677d;text-align:center}.prep-card-footer .primary-button:disabled,.prep-card-footer .secondary-button:disabled{opacity:.48;cursor:not-allowed}.sticker-layout{display:grid;grid-template-columns:190px minmax(0,1fr);gap:18px;align-items:start}.sticker-tray{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;padding:10px;border:1px solid #e7ebf0;border-radius:16px;background:#f8f9fb}.sticker-pick{display:grid;place-items:center;min-width:0;aspect-ratio:1;border:2px solid transparent;border-radius:12px;background:#fff;font-size:26px}.sticker-pick.is-selected{border-color:#416ebd;background:#eff4ff;box-shadow:0 0 0 2px #d9e4ff}.board-wrap{min-width:0}.board-title{display:flex;justify-content:space-between;gap:10px;margin-bottom:7px;color:#31435a}.board-title span{font-size:14px;color:#526178}.prep-board{position:relative;min-height:265px;aspect-ratio:3/1;border:7px solid #ba8652;border-radius:12px;background-color:#fff2d8;box-shadow:inset 0 0 0 2px #ffffffb0,0 6px 12px #563f2222;overflow:hidden;touch-action:manipulation}.prep-board:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;opacity:.48;background-image:radial-gradient(#80643b27 1px,transparent 1px);background-size:13px 13px}.prep-board.theme-carnival{background-color:#fff1cb;background-image:repeating-linear-gradient(90deg,#ffc7cf 0,#ffc7cf 16%,#fff1cb 16%,#fff1cb 32%,#cce9ff 32%,#cce9ff 48%,#e8d8ff 48%,#e8d8ff 64%)}.prep-board.theme-ocean{background-color:#d9f5ff;background-image:radial-gradient(ellipse at 20% 120%,#64c7d470 0 30%,transparent 31%),linear-gradient(160deg,#dffaff,#a9def4)}.prep-board.theme-garden{background-color:#f0f8d8;background-image:radial-gradient(circle,#e3aa6d44 0 5px,transparent 6px);background-size:42px 42px}.prep-board.theme-puppy{background-color:#fff2e2;background-image:radial-gradient(ellipse at 20px 20px,#a57b5930 0 10px,transparent 11px),radial-gradient(ellipse at 45px 22px,#a57b5930 0 10px,transparent 11px),radial-gradient(circle at 33px 36px,#d49c6f40 0 12px,transparent 13px);background-size:92px 84px}.prep-board.theme-dream{background-color:#eeeaff;background-image:linear-gradient(135deg,transparent 46%,#b8a6de 47% 54%,transparent 55%),linear-gradient(45deg,transparent 46%,#b8a6de 47% 54%,transparent 55%);background-size:92px 65px}.sticker-on-board{position:absolute;z-index:1;transform:translate(-50%,-50%);display:grid;place-items:center;width:52px;height:52px;padding:0;border:0;border-radius:50%;background:#ffffffc7;font-size:31px;filter:drop-shadow(0 2px 2px #29395638)}.board-hint{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;color:#46556a;font-size:16px;font-weight:750;text-shadow:0 1px #fff;pointer-events:none}.board-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:9px}.board-actions .secondary-button{min-height:44px;font-size:14px}.drawing-tools{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:14px 0 10px}.draw-color{width:39px;height:39px;border:3px solid #fff;border-radius:50%;background:var(--swatch);box-shadow:0 0 0 1px #98a4b3;cursor:pointer}.draw-color.is-selected{box-shadow:0 0 0 3px #385eaa}.draw-color[aria-label="하양 선택"]{border-color:#cdd5df}.drawing-tools .secondary-button{min-height:43px;padding:0 12px;font-size:14px}.prep-canvas{display:block;width:100%;height:auto;min-height:210px;border:2px solid #dce3eb;border-radius:15px;background-color:#fffdf9;background-image:radial-gradient(#d9e0e833 1px,transparent 1px);background-size:16px 16px;touch-action:none;cursor:crosshair}.paper-option{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:10px;padding:12px 14px;border-radius:12px;background:#f6f8fb;color:#43536a}.paper-option span{font-size:14px;line-height:1.45}.paper-option button{flex:none}.rule-picker{display:grid;grid-template-columns:1fr 1fr;gap:17px}.rule-picker fieldset{min-width:0;margin:0;padding:11px;border:1px solid #e1e7ed;border-radius:15px}.rule-picker legend{padding:0 6px;color:#30435d;font-weight:750;font-size:15px}.rule-options{display:flex;flex-wrap:wrap;gap:7px}.rule-options .prep-choice{flex:1 1 105px;grid-template-columns:auto 1fr 18px;gap:7px;min-height:55px;padding:7px}.rule-options .choice-emoji{width:34px;height:34px;font-size:21px}.rule-options .prep-choice b{font-size:14px}.rule-chip{min-height:44px;padding:8px 12px;border:1px solid #dce3ea;border-radius:12px;background:#fff;color:#34445c;font-weight:700}.rule-chip.is-selected{border-color:#4c74c2;background:#edf3ff;color:#233f7b}.prompt-preview{display:grid;gap:7px;margin:18px 0;padding:16px 18px;border:1px solid #d7e4eb;border-radius:15px;background:linear-gradient(135deg,#f2fbf8,#f4f6ff);color:#273a52}.prompt-preview>span{font-size:14px;font-weight:750;color:#345c68}.prompt-preview>b{font-size:17px;line-height:1.55;word-break:keep-all}.prompt-preview>small{font-size:14px;color:#53647a}.teacher-notes{margin-top:16px;padding:14px 18px;border:1px solid #e1e7ec;border-radius:15px;background:#fbfcfd;color:#384a60}.teacher-notes summary{cursor:pointer;font-weight:750;font-size:15px}.teacher-notes div{padding:4px 4px 0;font-size:15px;line-height:1.6;color:#4c5b70}.teacher-notes li{padding:2px 0}.prep-finish{max-width:900px;margin:65px auto;padding:25px;text-align:center}.prep-finish-badge{font-size:58px}.prep-finish h1{font-size:clamp(30px,5vw,42px);line-height:1.2;color:#243550}.prep-finish .lead{color:#44536a}.finish-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:23px 0}.finish-grid>div{display:grid;gap:6px;padding:16px;border:1px solid #e2e8ee;border-radius:15px;background:#fff}.finish-grid span{font-size:14px;color:#59677a}.finish-grid b{font-size:18px;color:#293b53}.prep-finish-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;margin-top:20px}.prep-finish-actions button{min-height:54px}@media(max-width:760px){.prep-topbar{grid-template-columns:auto 1fr auto;gap:8px}.prep-header-label b{font-size:14px}.prep-header-label small{font-size:12px}.prep-hero{grid-template-columns:1fr;padding:23px 19px 20px}.prep-hero-art{position:absolute;right:5px;top:20px;width:128px;height:120px;opacity:.78;transform:scale(.72);transform-origin:top right}.prep-hero-copy{position:relative;z-index:1;padding-right:45px}.prep-progress>div:first-child{align-items:flex-start;flex-direction:column;gap:3px}.prep-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.prep-card{padding:19px 15px}.sticker-layout{grid-template-columns:1fr}.sticker-tray{grid-template-columns:repeat(8,1fr)}.prep-board{min-height:220px}.rule-picker{grid-template-columns:1fr 1fr}.prep-step{grid-template-columns:30px 1fr;padding:9px}.prep-step>span{width:29px;height:29px;font-size:16px}.prep-step b{font-size:13px}}@media(max-width:520px){.prep-shell{padding:0 10px}.prep-topbar{grid-template-columns:auto 1fr auto;height:72px}.prep-topbar .brandmark span{display:none}.prep-topbar .icon-button{padding:0 8px;font-size:13px}.prep-main{margin:17px auto 35px}.prep-hero h1{font-size:29px}.prep-hero-copy{padding-right:12px}.prep-hero-art{opacity:.3}.prep-steps{gap:6px}.prep-step{min-height:58px}.prep-step b{font-size:12px}.prep-card-head h2{font-size:22px}.prep-theme-grid{grid-template-columns:1fr}.sticker-tray{grid-template-columns:repeat(4,1fr)}.prep-board{min-height:220px;aspect-ratio:1.45/1}.sticker-on-board{width:44px;height:44px;font-size:27px}.rule-picker{grid-template-columns:1fr}.prep-card-footer{flex-wrap:wrap}.prep-card-footer>span{order:3;flex-basis:100%}.prep-card-footer>*{flex:1}.paper-option{align-items:flex-start;flex-direction:column}.finish-grid{grid-template-columns:1fr}.prep-finish{margin:30px auto;padding:10px}.prep-finish-actions{flex-direction:column}.prep-finish-actions button{width:100%}}@media(min-width:761px)and (orientation:landscape){html,body{width:100%;height:100%;min-height:0;overflow:hidden}#app{width:min(100vw,177.7778svh);height:min(100svh,56.25vw);margin:auto;overflow:hidden;container-type:size;position:relative}.shell{width:100%;max-width:none;height:100%;padding:0 clamp(20px,2.3cqw,38px)}.topbar{height:9%;min-height:54px}.layout{height:82%;min-height:0;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:clamp(20px,3cqw,44px);padding:2.2cqh 0}.lesson-panel{min-height:0;padding:1cqh 4px;overflow:auto}.lesson-panel h1,.final-content h1{font-size:clamp(25px,2.5cqw,36px)}.lead{font-size:clamp(15px,1.35cqw,19px);margin-bottom:1.5cqh}.form-stack{gap:1.3cqh;margin-top:1cqh}.form-stack input{height:clamp(42px,6cqh,54px)}.primary-button,.secondary-button{min-height:clamp(42px,6.2cqh,54px);font-size:clamp(15px,1.3cqw,17px)}.chat-card{padding:clamp(14px,1.5cqw,20px)}.chat-card textarea{min-height:clamp(70px,12cqh,96px)}.preview-panel{align-self:stretch;min-height:0;padding:clamp(14px,1.5cqw,20px);overflow:hidden}.preview-stage{height:48cqh;max-height:310px}.lesson-footer{height:9%;padding:1cqh 4px}.intro{min-height:100%}.prep-shell{display:flex;flex-direction:column}.prep-topbar{flex:none;height:9%;min-height:54px}.prep-main{width:100%;max-width:none;height:91%;min-height:0;margin:0 auto;padding:1.2cqh 0 1.6cqh;display:grid;grid-template-columns:minmax(190px,.7fr) minmax(0,1.8fr);grid-template-rows:auto minmax(0,1fr);gap:1.2cqh 1.4cqw}.prep-hero{grid-column:1/-1;min-height:0;grid-template-columns:minmax(0,1fr) 165px;grid-template-rows:minmax(0,1fr) auto;padding:1.5cqh 2cqw;border-radius:18px}.prep-hero-copy{grid-column:1;grid-row:1}.prep-hero h1{font-size:clamp(23px,2.35cqw,34px);margin:.5cqh 0}.prep-hero-copy p{font-size:clamp(13px,1.1cqw,16px);line-height:1.35;margin:.4cqh 0}.prep-hero-art{grid-column:2;grid-row:1;min-height:0;display:grid;place-items:center}.prep-hero-art img{width:100%;height:100%;object-fit:contain}.prep-progress{grid-column:1/-1;grid-row:2;gap:.7cqh;margin:0}.prep-progress-track{height:8px}.prep-steps{grid-column:1;grid-row:2;align-content:start;grid-template-columns:1fr;gap:.8cqh;margin:0}.prep-step{min-height:0;padding:.9cqh .8cqw;grid-template-columns:32px 1fr}.prep-step>span{width:29px;height:29px}.prep-step>span svg{width:18px;height:18px}.prep-step>span{font-size:0}.prep-step.is-done>span{font-size:16px}.prep-step b{font-size:clamp(12px,1cqw,14px)}.prep-step small{font-size:12px}.prep-card{grid-column:2;grid-row:2;min-height:0;overflow:auto;padding:1.6cqh 1.5cqw;border-radius:18px}.prep-card-head{padding-bottom:1cqh}.prep-card-head h2{font-size:clamp(20px,1.8cqw,25px)}#prep-activity-content{padding-top:.4cqh}.prep-instruction{margin:1cqh 0;padding:1cqh 1cqw}.prep-theme-grid{gap:.8cqh .8cqw}.prep-choice{min-height:0;padding:.9cqh .8cqw;grid-template-columns:38px 1fr 20px;gap:8px}.choice-emoji{width:36px;height:36px;font-size:22px}.prep-choice small{font-size:12px}.prep-talk{margin-top:1cqh;padding:.9cqh 1cqw}.prep-card-footer{margin-top:1cqh;padding-top:1cqh}.sticker-layout{grid-template-columns:120px minmax(0,1fr);gap:1cqw}.sticker-tray{grid-template-columns:repeat(4,1fr);gap:4px;padding:6px}.sticker-pick{font-size:19px}.prep-board{min-height:0;height:30cqh;aspect-ratio:auto}.board-actions .secondary-button{min-height:36px}.drawing-tools{margin:.8cqh 0}.draw-color{width:30px;height:30px}.prep-canvas{height:27cqh;min-height:0}.paper-option{margin-top:.8cqh;padding:.8cqh .9cqw}.rule-picker{gap:.8cqw}.rule-picker fieldset{padding:7px}.rule-options .prep-choice{min-height:42px}.prompt-preview{margin:.8cqh 0;padding:.8cqh .9cqw}.prompt-preview>b{font-size:14px}.teacher-notes{grid-column:1;grid-row:2;align-self:end;display:none}.prep-finish{margin:auto;padding:1cqh 2cqw}.prep-finish-badge{font-size:42px}.finish-grid{margin:1.5cqh 0}.finish-grid>div{padding:1cqh}.coding-screen{width:100%;height:100%;min-height:0;padding:2.4cqh 3cqw;overflow:hidden;display:grid;grid-template-rows:auto auto auto minmax(0,1fr) auto auto}.coding-head{margin-bottom:1.5cqh}.code-window{min-height:0;height:100%;overflow:hidden}.code-output{max-height:100%;height:calc(100% - 52px);font-size:clamp(13px,1.15cqw,16px);line-height:1.45}.terminal-metrics{padding:.8cqh 0}.coding-bottom{padding-top:.5cqh}.final-screen{height:100%;overflow:hidden}}@media(max-height:700px)and (min-width:761px)and (orientation:landscape){.prep-main{padding:.6cqh 0;gap:.6cqh 1cqw}.prep-hero h1{font-size:clamp(21px,2cqw,28px)}.prep-card{padding:1cqh 1cqw}.prep-step{padding:.5cqh .6cqw}.prep-board{height:26cqh}.prep-canvas{height:23cqh}}@media(max-width:760px),(orientation:portrait){html,body{height:auto;min-height:100%;overflow:auto}#app{width:100%;height:auto;min-height:100svh;overflow:visible}.shell{height:auto}}@media(min-width:761px)and (orientation:landscape){.prep-heading-icon{display:inline-grid;width:27px;height:27px;place-items:center;vertical-align:middle;color:#496cab}.prep-heading-icon svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.prep-step>span svg{fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}}@media(min-width:761px)and (orientation:landscape){.prep-instruction{gap:8px;margin:.5cqh 0;padding:.65cqh .8cqw}.prep-instruction p{font-size:clamp(13px,1cqw,15px);line-height:1.32}.sticker-layout{grid-template-columns:112px minmax(0,1fr)}.sticker-tray{grid-template-columns:repeat(4,minmax(0,1fr));gap:3px;padding:4px}.sticker-pick{aspect-ratio:1.2;font-size:17px}.prep-board{height:20cqh}.board-actions{margin-top:5px;gap:4px}.board-actions .secondary-button{min-height:32px;padding:0 8px;font-size:12px}.prep-talk{margin:.5cqh 0 0;padding:.55cqh .8cqw;gap:2px}.prep-talk b,.prep-talk span{font-size:clamp(12px,.95cqw,14px);line-height:1.3}.prep-card-footer{margin-top:.5cqh;padding-top:.5cqh}}@media(min-width:761px)and (orientation:landscape){.prep-canvas{height:16cqh;min-height:0}.drawing-tools{margin:.35cqh 0;gap:5px}.draw-color{width:26px;height:26px}.drawing-tools .secondary-button{min-height:30px}.paper-option{margin-top:.35cqh;padding:.45cqh .65cqw;gap:6px}.paper-option span{font-size:12px;line-height:1.25}}@media(min-width:761px)and (orientation:landscape){.rule-picker{gap:.4cqh .6cqw}.rule-picker fieldset{padding:4px 6px}.rule-picker legend{font-size:12px}.rule-picker .rule-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px}.rule-picker .rule-options .prep-choice{min-height:34px;padding:3px 5px;grid-template-columns:24px minmax(0,1fr) 0;gap:4px;overflow:hidden}.rule-picker .rule-options .choice-emoji{width:22px;height:22px;font-size:15px;border-radius:7px}.rule-picker .rule-options .prep-choice b{font-size:12px;line-height:1.15}.rule-picker .choice-check{display:none}.prompt-preview{gap:3px;margin:.4cqh 0;padding:.55cqh .7cqw}.prompt-preview>span,.prompt-preview>small{font-size:11px}.prompt-preview>b{font-size:12px;line-height:1.3}}@media(min-width:761px)and (orientation:landscape){.rule-chip{min-height:30px;padding:4px 7px;font-size:12px;line-height:1.15}.rule-options .rule-chip{width:100%}.prep-card:has(.rule-picker) .prep-talk{display:none}}@media(min-width:761px)and (orientation:landscape){.step-label{gap:8px;font-size:14px;margin:0 0 .8cqh}.step-number{width:32px;height:32px;border-radius:10px;font-size:14px}.lesson-panel h1{font-size:clamp(24px,2.1cqw,31px);line-height:1.15;margin:0 0 .8cqh}.lead{font-size:clamp(14px,1.1cqw,16px);line-height:1.35;margin:0 0 1cqh}.chat-card{padding:clamp(10px,1cqw,14px)}.chat-head{gap:8px}.bot-avatar{width:34px;height:34px;border-radius:10px;font-size:19px}.chat-head b{font-size:14px}.chat-head small{font-size:12px}.sim-badge{padding:5px 7px;font-size:11px}.chat-message{margin:1cqh 0 .4cqh;padding:.9cqh .9cqw;font-size:clamp(13px,1cqw,15px);line-height:1.32}.example-button{padding:3px 0;font-size:13px}.prompt-label{margin:.6cqh 0 .35cqh;font-size:13px}.chat-card textarea{min-height:0;height:9cqh;max-height:9cqh;resize:none;padding:8px 10px;font-size:14px;line-height:1.35}.chat-actions{gap:8px;margin-top:.6cqh}.chat-actions>span{font-size:11px}.chat-actions .primary-button{min-height:38px;padding:0 12px;font-size:14px}.chat-actions .primary-button span{font-size:17px}.concept-chip{margin-top:.8cqh;padding:7px 9px;font-size:12px}.learning-note{padding:1cqh 1cqw;gap:3px;font-size:12px}.learning-note b{font-size:13px}.preview-panel{padding:1.2cqh 1.2cqw}.preview-heading{margin-bottom:.8cqh}.preview-heading h2{font-size:18px}.preview-stage{height:39cqh;max-height:260px}.setting-summary{padding:1cqh 2px .6cqh}.setting-summary p{font-size:13px;line-height:1.35}.preview-foot{padding-top:.7cqh;font-size:11px}}@media(min-width:761px)and (orientation:landscape){.final-shell{display:flex;flex-direction:column}.final-content{width:min(100%,980px);max-height:91%;overflow:auto;margin:auto;padding:1cqh 1cqw}.confetti{font-size:34px;margin:0 0 1cqh}.final-content h1{font-size:clamp(25px,2.6cqw,36px);margin:1cqh 0}.final-content .lead{margin-bottom:1cqh}.final-summary{margin:1cqh auto;padding:1cqh 1cqw}.final-buttons{gap:8px}.final-buttons .primary-button,.final-buttons .secondary-button{min-height:42px}.save-status{margin:1cqh;font-size:13px}.final-secondary{gap:16px}.game-frame{height:48cqh;margin:1cqh auto}.admin-shell{display:flex;flex-direction:column}.admin-content{flex:1;min-height:0;padding:1cqh 0;overflow:auto}.admin-content h1{font-size:24px;margin:.5cqh 0}.stats-grid{margin:1cqh 0}.stats-grid>div{padding:1cqh 1cqw}.stats-grid b{font-size:22px}.admin-tools{gap:6px;margin-bottom:1cqh}.admin-tools .secondary-button{min-height:38px;padding:0 10px;font-size:13px}}@media(min-width:761px)and (orientation:landscape){.final-content.is-playing{position:relative;width:min(100%,1180px);height:91%;max-height:91%;margin:0 auto;padding:1cqh 55% 1cqh 0;overflow:hidden;display:flex;flex-direction:column;justify-content:center;align-items:stretch}.final-content.is-playing .confetti{font-size:28px;margin:0 0 .5cqh}.final-content.is-playing h1{font-size:clamp(22px,2.1cqw,30px);line-height:1.2}.final-content.is-playing .lead{font-size:14px}.final-content.is-playing .final-summary{margin:.7cqh auto;padding:.9cqh .8cqw}.final-content.is-playing .final-buttons{gap:6px}.final-content.is-playing .final-buttons>*{width:100%;min-height:38px;font-size:14px}.final-content.is-playing .save-status{margin:.6cqh 0;font-size:12px}.final-content.is-playing .final-secondary{gap:5px;flex-wrap:wrap}.final-content.is-playing .final-secondary .text-button{padding:3px;font-size:12px}.final-content.is-playing .game-frame{position:absolute;top:0;right:0;width:53%;height:100%;max-height:100%;margin:0;border-radius:16px}}@media(min-width:761px)and (orientation:landscape){.final-content.is-playing{max-width:none;width:100%}.final-content.is-playing h1,.final-content.is-playing .final-summary span{word-break:keep-all}.final-content.is-playing .final-summary span{font-size:13px}}[hidden]{display:none!important}
