:root{--ink:#1f2340;--muted:#6b7090;--line:#e3e5f0;--bg:#f6f7fc;--card:#fff;--brand:#6d5dfc;--brand-soft:#ece9ff;--ok:#16a34a;--amber:#d97706;--red:#dc2626;--radius:14px;color:var(--ink);font-family:Nunito,system-ui,-apple-system,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg)}button,input,select,textarea{font:inherit;color:inherit}code{background:var(--brand-soft);word-break:break-all;border-radius:6px;padding:2px 6px;font-size:.9em}h1,h2,h3,h4{margin:0 0 8px}h4{font-size:.95rem}.muted{color:var(--muted);font-weight:400}.small{font-size:.85rem}.tiny{color:var(--muted);font-size:.68rem;font-weight:400;line-height:1.1;display:block}.error{color:var(--red)}.row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.page{max-width:1100px;margin:0 auto;padding:16px}.page-loading{height:100%;color:var(--muted);place-items:center;font-size:1.2rem;display:grid}.center-page{background:linear-gradient(160deg,#ece9ff,#e6f4ff);place-items:center;min-height:100%;padding:16px;display:grid}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);margin-bottom:16px;padding:16px}.topbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.brand{font-size:1.2rem;font-weight:800}.notice{background:#fff7e6;border:1px solid #f5d38f;border-radius:10px;margin-bottom:16px;padding:10px 14px}.notice.error{color:var(--red);background:#fdecec;border-color:#f3b4b4}.btn{border:1px solid var(--line);cursor:pointer;text-align:center;background:#fff;border-radius:10px;justify-content:center;align-items:center;gap:6px;padding:9px 14px;font-weight:600;line-height:1.2;text-decoration:none;transition:background .15s,transform 50ms;display:inline-flex}.btn:hover{background:#f1f2fa}.btn:active{transform:scale(.97)}.btn:disabled{opacity:.5;cursor:default}.btn.small{padding:6px 10px;font-size:.85rem}.btn.big{width:100%;padding:14px 18px;font-size:1.05rem}.btn.primary{background:var(--brand);border-color:var(--brand);color:#fff}.btn.primary:hover{background:#5b4bea}.btn.danger{color:var(--red);background:#fff;border-color:#f3b4b4}.btn.active{background:var(--brand-soft);border-color:var(--brand);color:#3d2fd0}.btn.praise{background:#fff3c4;border-color:#f5c84c;font-size:1.05rem}label{flex-direction:column;gap:4px;margin-bottom:12px;font-size:.9rem;font-weight:600;display:flex}input,select,textarea{border:1px solid var(--line);background:#fff;border-radius:10px;width:100%;padding:10px 12px;font-weight:400}input:focus,select:focus,textarea:focus{outline:2px solid var(--brand);outline-offset:0}.field-label{margin-bottom:6px;font-size:.9rem;font-weight:600}.auth-card{text-align:center;flex-direction:column;gap:4px;width:100%;max-width:380px;display:flex}.auth-card label{text-align:left}.logo{font-size:3rem}.code-input{text-align:center;letter-spacing:.3em;text-transform:uppercase;margin:12px 0;font-size:2rem;font-weight:800}.child-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px;display:grid}.child-card{text-align:center;flex-direction:column;align-items:center;gap:8px;display:flex}.child-card .row{justify-content:center}.child-avatar{font-size:3.5rem;line-height:1}.child-avatar.small{font-size:1.6rem}.child-avatar.huge{font-size:9rem}.add-card{color:var(--brand);cursor:pointer;border-style:dashed;min-height:200px;font-size:1.1rem;font-weight:700}.avatar-picker{flex-wrap:wrap;gap:6px;margin-bottom:12px;display:flex}.avatar-picker button{cursor:pointer;background:#f5f5fb;border:2px solid #0000;border-radius:10px;padding:4px 6px;font-size:1.6rem}.avatar-picker button.selected{border-color:var(--brand);background:var(--brand-soft)}.stage{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;place-items:center;width:100%;height:100%;transition:background .4s;display:grid;position:relative;overflow:hidden;container-type:size}.stage-message{text-align:center}.stage-message h1{color:var(--ink);font-size:11cqmin;font-weight:800}.big-emoji{font-size:26cqmin;line-height:1.1}.stars{justify-content:center;gap:3cqmin;font-size:18cqmin;display:flex}.stars span{animation:1s ease-in-out infinite bounce;display:inline-block}.stars span:nth-child(2){font-size:1.25em;animation-delay:.15s}.stars span:nth-child(3){animation-delay:.3s}.items{--size:30cqmin;flex-wrap:wrap;place-content:center;gap:6cqmin;width:100%;height:100%;padding:4cqmin;display:flex}.items.count-1{--size:55cqmin}.items.count-2{--size:42cqmin;gap:12cqmin}.items.count-4{--size:32cqmin}.items.count-6{--size:26cqmin}.item{width:var(--size);height:var(--size);cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:0 0;border:none;place-items:center;min-width:64px;min-height:64px;padding:0;display:grid;position:relative}.item .emoji{font-size:calc(var(--size) * .78);filter:drop-shadow(0 1.2cqmin 1.2cqmin #0000001f);line-height:1}.item .bubble{background:radial-gradient(circle at 32% 28%, #ffffffd9 0 9%, transparent 10%), radial-gradient(circle at 50% 50%, var(--c) 0 62%, color-mix(in srgb, var(--c) 70%, #000) 100%);border-radius:50%;width:92%;height:92%;box-shadow:0 1.5cqmin 3cqmin #00000026,inset 0 -2cqmin 4cqmin #00000026}.item-label{color:var(--muted);white-space:nowrap;background:#ffffffe6;border-radius:999px;padding:1px 8px;font-size:12px;font-weight:700;position:absolute;bottom:-2px;left:50%;transform:translate(-50%)}.item-label.is-target{background:var(--brand);color:#fff}.touch-mark{color:#fff;border-radius:50%;place-items:center;width:28px;height:28px;font-size:16px;font-weight:800;animation:.3s ease-out pop-in;display:grid;position:absolute;top:0;right:0}.touch-mark.ok{background:var(--ok)}.touch-mark.other{background:var(--amber)}.floating{animation:4.5s ease-in-out infinite float}.react-pop{animation:1.2s ease-out pop}.react-hop{animation:1.1s ease-in-out hop}.react-bounce{animation:1.1s ease-in-out bounce-big}.react-drive{animation:1.3s ease-in-out drive}.wiggle{animation:.5s ease-in-out 3 wiggle}@keyframes float{0%,to{translate:0}25%{translate:2cqmin -3cqmin}50%{translate:-1cqmin -5cqmin}75%{translate:-2cqmin -2cqmin}}@keyframes pop{0%{opacity:1;scale:1}25%{opacity:0;scale:1.35}70%{opacity:0;scale:.2}to{opacity:1;scale:1}}@keyframes hop{0%,to{translate:0}20%{translate:0 -12cqmin;rotate:-8deg}40%{translate:0;rotate:0deg}60%{translate:0 -7cqmin;rotate:8deg}80%{translate:0}}@keyframes bounce-big{0%,to{scale:1}30%{scale:1.3 .8}55%{translate:0 -6cqmin;scale:.9 1.2}80%{translate:0;scale:1.05}}@keyframes drive{0%{translate:0}45%{opacity:1;translate:60cqmin}46%{opacity:0;translate:60cqmin}47%{opacity:0;translate:-60cqmin}48%{opacity:1}to{translate:0}}@keyframes wiggle{0%,to{rotate:0deg;scale:1}25%{rotate:-12deg;scale:1.12}75%{rotate:12deg;scale:1.12}}@keyframes bounce{0%,to{translate:0}50%{translate:0 -3cqmin}}@keyframes pop-in{0%{scale:0}to{scale:1}}@keyframes wave{0%,to{rotate:0deg}20%{rotate:18deg}40%{rotate:-10deg}60%{rotate:18deg}80%{rotate:-6deg}}@keyframes breathe{0%,to{scale:1}50%{scale:1.08}}@keyframes fall{0%{opacity:1;translate:0 -10cqh}to{opacity:.8;translate:0 110cqh;rotate:540deg}}.wave{transform-origin:70% 80%;animation:1.6s ease-in-out infinite wave;display:inline-block}.calm{animation:3s ease-in-out infinite breathe}.confetti{pointer-events:none;position:absolute;inset:0;overflow:hidden}.confetti span{border-radius:2px;width:2cqmin;min-width:6px;height:3.2cqmin;min-height:10px;animation-name:fall;animation-timing-function:ease-in;animation-fill-mode:both;position:absolute;top:0}.stage-praise .confetti span{animation-iteration-count:infinite}.stage-overlay{text-align:center;z-index:5;background:#f6f7fcf0;place-content:center;display:grid;position:absolute;inset:0;container-type:size}.stage-overlay p{margin:0;padding:0 16px;font-size:7cqmin;font-weight:800}.stage-overlay p.small-text{font-size:4cqmin}@media (prefers-reduced-motion:reduce){.floating,.stars span,.wave,.calm{animation:none}}.child-start{background:linear-gradient(160deg,#ece9ff,#e6f4ff);place-items:center;height:100%;display:grid}.start-button{cursor:pointer;background:#fff;border:none;border-radius:40px;flex-direction:column;align-items:center;gap:12px;padding:40px 60px;font-size:2.6rem;font-weight:800;display:flex;box-shadow:0 20px 50px #6d5dfc33}.start-tap{color:var(--brand);font-size:1.5rem;animation:2s ease-in-out infinite breathe}.child-screen{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;overscroll-behavior:none;touch-action:manipulation;background:#fff;position:fixed;inset:0;overflow:hidden}.child-activity{position:absolute;inset:0}.teacher-tile{aspect-ratio:4/3;z-index:3;border:4px solid #fff;border-radius:20px;width:24vw;min-width:150px;max-width:320px;transition:all .5s;position:absolute;bottom:16px;right:16px;overflow:hidden;box-shadow:0 10px 30px #0000002e}.teacher-big .teacher-tile{width:46vw;max-width:640px;bottom:6vh;right:50%;translate:50%}.child-stage-greeting .stage,.child-stage-praise .stage{place-items:start center;padding-top:5vh}.child-stage-greeting .stage-message h1,.child-stage-praise .stage-message h1{font-size:8cqmin}.child-stage-greeting .big-emoji,.child-stage-praise .big-emoji{font-size:14cqmin}.child-stage-praise .stars{font-size:12cqmin}.stage-overlay.full{z-index:10;position:fixed}.audio-unlock{z-index:20;background:var(--brand);color:#fff;border:none;border-radius:999px;padding:14px 24px;font-size:1.4rem;font-weight:800;position:fixed;top:16px;left:50%;translate:-50%}.media-warning{z-index:15;background:#fff7e6;border:1px solid #f5d38f;border-radius:10px;padding:8px 12px;font-size:.85rem;position:fixed;top:12px;left:12px;right:12px}.video-tile{color:#c9cce0;background:#1f2340;place-items:center;font-size:.9rem;display:grid}.video-tile video{object-fit:cover;width:100%;height:100%;display:block}.video-tile video.mirrored{transform:scaleX(-1)}.video-placeholder{text-align:center;padding:8px;font-size:2rem}.child-video .video-placeholder,.self-video .video-placeholder{font-size:.9rem}.fac-page{max-width:1500px;margin:0 auto;padding:12px 16px}.fac-layout{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:start;gap:16px;display:grid}.fac-left{flex-direction:column;gap:12px;display:flex;position:sticky;top:12px}.mirror{aspect-ratio:4/3;border-radius:var(--radius);border:1px solid var(--line);background:#fff;position:relative;overflow:hidden}.mirror-tag{color:#fff;z-index:9;background:#1f2340bf;border-radius:999px;padding:2px 8px;font-size:11px;position:absolute;bottom:8px;left:8px}.video-row{grid-template-columns:2fr 1fr;gap:12px;display:grid}.video-row .video-tile{aspect-ratio:4/3;border-radius:12px;overflow:hidden}.share{flex-direction:column;gap:8px;margin:0;font-size:.9rem;display:flex}.share .row{justify-content:space-between}.code{letter-spacing:.15em;color:var(--ink);font-size:1.2rem}.fac-right{flex-direction:column;gap:12px;display:flex}.panel{border:1px solid var(--line);border-radius:var(--radius);background:#fff;padding:12px 14px}.panel h4{margin-top:4px}.panel h4+.btn-grid{margin-bottom:10px}.btn-grid{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px;display:grid}.btn-grid.four{grid-template-columns:repeat(4,1fr)}.btn-grid.three,.btn-grid.six{grid-template-columns:repeat(3,1fr)}.btn-grid.actions{grid-template-columns:repeat(3,1fr);margin-top:10px}.btn-grid .btn{flex-direction:column;min-height:44px}.target-btn{flex-direction:row!important}.target-btn.on-screen{box-shadow:inset 0 -3px #c7c1ff}.dot{vertical-align:middle;border-radius:50%;width:16px;height:16px;display:inline-block}.toggles{flex-wrap:wrap;gap:4px 16px;margin-top:10px;display:flex}.toggles label{flex-direction:row;align-items:center;gap:6px;margin:0;font-weight:400}.toggles input{width:auto}.progress-btn{position:relative}.badge{background:var(--ok);color:#fff;border-radius:999px;place-items:center;min-width:20px;height:20px;padding:0 5px;font-size:11px;display:grid;position:absolute;top:-6px;right:-6px}.note-input{margin-top:10px}.touch-log{max-height:150px;margin:0 0 10px;padding:0;font-size:.9rem;list-style:none;overflow:auto}.touch-log li{border-bottom:1px solid #f1f2f8;padding:3px 0}.touch-log .ok{color:var(--ok);font-weight:800}.touch-log .other{color:var(--amber);font-weight:800}.timer{font-variant-numeric:tabular-nums;border:1px solid var(--line);background:#fff;border-radius:8px;padding:6px 10px;font-weight:800}.timer.amber{color:var(--amber);background:#fff7e6;border-color:#f5d38f}.timer.red{color:var(--red);background:#fdecec;border-color:#f3b4b4}.conn{border-radius:999px;padding:3px 10px;font-size:.8rem;font-weight:700}.conn-on{color:var(--ok);background:#e7f8ee}.conn-off{color:var(--muted);background:#f1f2f8}.table-wrap{overflow-x:auto}.progress-table{border-collapse:collapse;width:100%;font-size:.9rem}.progress-table th,.progress-table td{border-bottom:1px solid var(--line);text-align:left;white-space:nowrap;padding:8px}.progress-table th{color:var(--muted);font-size:.8rem;font-weight:700}.progress-table td.reached{color:var(--ok);background:#f2fbf5;font-weight:700}.item-cell{font-weight:700}@media (width<=900px){.fac-layout{grid-template-columns:1fr}.fac-left{position:static}.btn-grid.four{grid-template-columns:repeat(2,1fr)}}.child-stage-praise .stage-message .wave{display:none}.code-screen{text-align:center;padding:16px}.code-screen h1{margin-bottom:20px;font-size:clamp(1.8rem,5vw,3rem);font-weight:800}.keypad-wrap{flex-direction:column;align-items:center;gap:20px;display:flex}.code-dots{gap:12px;display:flex}.code-dots span{background:#fff;border:3px solid #d6d2ff;border-radius:16px;place-items:center;width:clamp(44px,8vw,64px);height:clamp(52px,9vw,72px);font-size:clamp(1.6rem,4vw,2.4rem);font-weight:800;display:grid}.code-dots span.filled{border-color:var(--brand);color:var(--brand)}.code-dots.shake{animation:.4s shake}@keyframes shake{25%{translate:-10px}50%{translate:10px}75%{translate:-6px}}.keypad{grid-template-columns:repeat(3,clamp(72px,13vw,104px));gap:14px;display:grid}.keypad button{aspect-ratio:1;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:#fff;border:none;border-radius:24px;font-size:clamp(1.8rem,4.5vw,2.6rem);font-weight:800;box-shadow:0 6px #d6d2ff}.keypad button:active{translate:0 4px;box-shadow:0 2px #d6d2ff}.keypad .key-go{background:var(--brand);color:#fff;box-shadow:0 6px #4b3dd1}.keypad .key-go:disabled{opacity:.4}.keypad .key-back{background:#f1f2fa}.keypad-error{color:var(--amber);margin:0;font-size:1.4rem;font-weight:800}.teacher-link{color:var(--muted);cursor:pointer;background:0 0;border:none;padding:8px;font-size:.85rem;text-decoration:none;position:fixed;bottom:12px;right:16px}.start-button.waiting{cursor:default}.passcode-chip{background:var(--brand-soft);color:#3d2fd0;border-radius:999px;margin:0;padding:4px 12px;font-size:.9rem}.passcode-chip strong{letter-spacing:.15em}.teacher-login{border:1px solid var(--line);color:var(--brand);background:#fff;border-radius:999px;padding:10px 18px;font-weight:700;text-decoration:none;position:fixed;top:16px;right:16px;box-shadow:0 4px 14px #6d5dfc26}.react-jump{animation:1.1s ease-in-out jump}.react-eat{animation:1.1s ease-in-out eat}.react-sleep{animation:1.6s ease-in-out sleep}.react-clap{animation:.9s ease-in-out clap}.react-wave{transform-origin:70% 90%;animation:1.2s ease-in-out wave}.react-dance{animation:1.2s ease-in-out dance}.react-wash{animation:1s ease-in-out wash}@keyframes jump{0%,to{translate:0;scale:1}15%{scale:1.1 .85}40%{translate:0 -16cqmin;scale:.95 1.1}65%{translate:0;scale:1.1 .9}80%{translate:0 -5cqmin}}@keyframes eat{0%,to{scale:1}15%,45%,75%{scale:1.15 .85}30%,60%,90%{scale:.95 1.05}}@keyframes sleep{0%,to{rotate:0deg}30%{translate:0 2cqmin;rotate:-14deg}70%{translate:0 2cqmin;rotate:-14deg}}@keyframes clap{0%,to{scale:1}20%,60%{scale:.8 1.05}40%,80%{scale:1.15}}@keyframes dance{0%,to{translate:0;rotate:0deg}20%{translate:-3cqmin -2cqmin;rotate:-15deg}40%{translate:3cqmin;rotate:15deg}60%{translate:-3cqmin -2cqmin;rotate:-15deg}80%{translate:2cqmin;rotate:10deg}}@keyframes wash{0%,to{translate:0}15%,45%,75%{translate:-3cqmin;rotate:-6deg}30%,60%,90%{translate:3cqmin;rotate:6deg}}.confetti-emoji{font-size:7cqmin;animation-name:fall;animation-timing-function:ease-in;animation-fill-mode:both;position:absolute;top:0}.style-balloons .confetti-emoji,.style-bubbles .confetti-emoji{font-size:9cqmin;animation-name:rise;animation-timing-function:ease-out;top:auto;bottom:0}@keyframes rise{0%{opacity:1;translate:0 10cqh}to{opacity:.9;translate:2cqmin -115cqh}}.peek .peek-thing{opacity:0;place-items:center;width:100%;height:100%;transition:none;display:grid;scale:.6}.peek.revealed .peek-thing{opacity:1;animation:.6s cubic-bezier(.3,1.6,.5,1) appear;scale:1}.peek .cloud{font-size:calc(var(--size) * .95);filter:drop-shadow(0 1.5cqmin 2cqmin #0000001f);place-items:center;line-height:1;animation:3s ease-in-out infinite cloud-bob;display:grid;position:absolute;inset:0}.peek:nth-child(2) .cloud{animation-delay:-1s}.peek:nth-child(3) .cloud{animation-delay:-2s}.peek .cloud.puff{pointer-events:none;animation:.6s ease-out forwards puff}@keyframes appear{0%{opacity:0;scale:.3}to{opacity:1;scale:1}}@keyframes puff{0%{opacity:1;scale:1}to{opacity:0;scale:1.8}}@keyframes cloud-bob{0%,to{translate:0}50%{translate:0 -2cqmin}}.copy-scene{flex-direction:column;justify-content:center;align-items:center;gap:2cqmin;width:100%;height:100%;display:flex;position:relative}.bubble-row{place-items:end center;height:16cqmin;display:grid}.speech-bubble{color:var(--brand);background:#fff;border-radius:6cqmin;padding:2cqmin 6cqmin;font-size:8cqmin;font-weight:800;animation:.4s cubic-bezier(.3,1.6,.5,1) appear;position:relative;box-shadow:0 1.5cqmin 4cqmin #0000001f}.speech-bubble:after{content:"";border:2cqmin solid #0000;border-top:3cqmin solid #fff;position:absolute;bottom:-3cqmin;left:50%;translate:-50%}.copy-voice{transition:transform 80ms linear}.copy-item{--size:46cqmin}.copy-item.singing .emoji,.copy-item.singing .bubble{animation:.4s ease-in-out infinite wiggle}.voice-meter{gap:2cqmin;font-size:8cqmin;display:flex}.voice-meter span{filter:grayscale();opacity:.25;transition:all .1s}.voice-meter span.lit{filter:none;opacity:1;scale:1.15}.your-turn{font-size:14cqmin;animation:1.4s ease-in-out infinite breathe;position:absolute;top:40%;right:8cqmin}.mic-flash{font-size:12cqmin;animation:.3s ease-out appear;position:absolute;top:40%;left:8cqmin}.want-scene{flex-direction:column;justify-content:space-between;align-items:center;gap:2cqmin;width:100%;height:100%;padding:3cqmin;display:flex}.sentence-strip{background:#fff;border-radius:5cqmin;align-items:center;gap:3cqmin;min-height:26cqmin;padding:2cqmin 3cqmin;display:flex;box-shadow:0 1.5cqmin 4cqmin #0000001a}.core-card{cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:#fff;border:none;border-radius:4cqmin;flex-direction:column;justify-content:center;align-items:center;gap:.5cqmin;width:22cqmin;height:22cqmin;display:flex;box-shadow:0 1cqmin #d6d2ff}.core-card span{font-size:11cqmin;line-height:1}.core-card small{color:var(--ink);font-size:3.6cqmin;font-weight:800}.core-card.fixed{box-shadow:none;background:#fff3c4}.core-card.pulse{animation:.4s cubic-bezier(.3,1.6,.5,1) appear}.core-card.more{background:#e6f4ff}.core-card.done{background:#fdecec}.core-card:active{translate:0 .8cqmin;box-shadow:0 .2cqmin #d6d2ff}.slot{border:1cqmin dashed #d6d2ff;border-radius:4cqmin;place-items:center;width:22cqmin;height:22cqmin;display:grid}.slot.filled{border-style:solid;border-color:var(--brand);animation:.5s cubic-bezier(.3,1.6,.5,1) appear}.slot .emoji{font-size:16cqmin;line-height:1}.slot .bubble{width:80%;height:80%;display:block}.slot-q{color:#c7c1ff;font-size:10cqmin;font-weight:800}.want-scene .items.want-items{--size:22cqmin;flex:1;gap:5cqmin;height:auto;padding:0}.want-scene .items.want-items.count-1{--size:30cqmin}.want-scene .items.want-items.count-6{--size:17cqmin;gap:3cqmin}.want-items .item.chosen{outline:1cqmin solid var(--brand);outline-offset:1cqmin;border-radius:4cqmin}.core-row{gap:5cqmin;display:flex}.core-row .core-card{width:18cqmin;height:18cqmin}.core-row .core-card span{font-size:9cqmin}.activity-controls{margin-top:10px}.btn-grid.activity-controls{grid-template-columns:repeat(3,1fr)}.copy-controls{flex-wrap:wrap;align-items:center;gap:8px 16px;display:flex}.inline-toggle{flex-direction:row;align-items:center;gap:8px;margin:0;font-weight:600}.inline-toggle input[type=checkbox]{width:auto}.inline-toggle select{width:auto;padding:6px 8px}.child-video-wrap{position:relative}.child-video-wrap .video-tile{aspect-ratio:4/3;border-radius:12px;height:100%;overflow:hidden}.voice-badge{color:#fff;background:#1f2340bf;border-radius:999px;padding:3px 10px;font-size:.85rem;font-weight:700;position:absolute;top:8px;left:8px}.voice-badge.hot{background:var(--ok);animation:.3s ease-out appear}.touch-log .voice{font-weight:800}.items.count-3{--size:34cqmin;gap:6cqmin}.items.count-5{--size:28cqmin}.device-check{box-sizing:border-box;background:linear-gradient(#f5f9ff,#fffdf5);place-items:center;min-height:100dvh;padding:16px;display:grid}.dc-modal{z-index:100;background:#102a4373;position:fixed;inset:0;overflow:auto}.dc-modal .device-check{background:0 0}.dc-card{box-sizing:border-box;background:#fff;border-radius:20px;flex-direction:column;gap:14px;width:min(720px,100%);padding:22px;display:flex;position:relative;box-shadow:0 10px 40px #102a432e}.dc-card h2{color:#102a43;margin:0;font-size:1.35rem}.dc-sub{color:#627d98;margin:-8px 0 0;font-size:.92rem}.dc-close{cursor:pointer;background:#f0f4f8;border:0;border-radius:50%;width:34px;height:34px;font-size:15px;position:absolute;top:12px;right:12px}.dc-grid{grid-template-columns:1.2fr 1fr;align-items:center;gap:16px;display:grid}.dc-cam{aspect-ratio:4/3;background:#102a43;border:3px solid #0000;border-radius:16px;place-items:center;display:grid;overflow:hidden}.dc-cam.ok{border-color:#22c55e}.dc-cam video{object-fit:cover;width:100%;height:100%;transform:scaleX(-1)}.dc-cam-empty{color:#bcccdc;font-size:1rem}.dc-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.dc-list li{color:#334e68;box-sizing:border-box;background:#f5f7fa;border:2px solid #0000;border-radius:12px;align-items:center;gap:10px;min-height:48px;padding:10px 12px;font-weight:700;display:flex}.dc-list li.ok{background:#ecfdf3;border-color:#86efac}.dc-list li.bad{background:#fef2f2;border-color:#fca5a5}.dc-list li b{margin-left:auto;font-size:1.1rem}.dc-list li.ok b{color:#16a34a}.dc-list li.bad b{color:#dc2626}.dc-ico{font-size:1.3rem}.dc-meter{background:#d9e2ec;border-radius:99px;flex:1;min-width:50px;height:10px;overflow:hidden}.dc-meter i{background:#22c55e;border-radius:99px;height:100%;transition:width 80ms;display:block}.dc-problem{color:#7f1d1d;background:#fef2f2;border:1px solid #fca5a5;border-radius:12px;padding:12px 14px}.dc-problem p{margin:6px 0 10px}.dc-devices summary{cursor:pointer;color:#486581;font-weight:700}.dc-devices label{color:#486581;flex-direction:column;gap:4px;margin-top:10px;font-size:.85rem;font-weight:700;display:flex}.dc-devices select{font:inherit;border:1px solid #bcccdc;border-radius:10px;max-width:100%;padding:8px;font-weight:600}.dc-go{padding:14px;font-size:1.05rem}.dc-skip{color:#829ab1;background:0 0;border:0;align-self:center;text-decoration:underline}.dc-hint{text-align:center;color:#627d98;margin:-6px 0 0;font-size:.88rem}.device-check.kid .dc-card{font-family:Nunito,sans-serif}.device-check.kid h2{text-align:center;font-size:1.8rem}.device-check.kid .dc-list li{min-height:60px;font-size:1.15rem}.device-check.kid .dc-ico{font-size:1.8rem}.device-check.kid .dc-go{padding:16px;font-size:1.4rem}@media (width<=620px){.dc-grid{grid-template-columns:1fr}.dc-card{padding:16px}}.lf .gear-pill{padding-inline:12px;font-size:1.05rem}.emoji-img{vertical-align:-.1em;pointer-events:none;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:1em;height:1em;display:inline-block}.emoji-img.emoji-pic{object-fit:contain}.lf-progress{z-index:9999;pointer-events:none;opacity:0;background:linear-gradient(90deg,#1e90ff,#32c875,#ffd43b);width:0;height:3px;transition:width .3s,opacity .3s;position:fixed;top:0;left:0;box-shadow:0 0 8px #1e90ff80}.lf-progress.on{opacity:1;width:80%;transition:width 8s cubic-bezier(.1,.6,.2,1),opacity .2s}.lf-progress.done{opacity:0;width:100%;transition:width .2s,opacity .3s .15s}.is-busy{pointer-events:none;cursor:progress;opacity:.85;position:relative}.is-busy:after{content:"";vertical-align:-.12em;border:2px solid;border-right-color:#0000;border-radius:50%;width:.9em;height:.9em;margin-inline-start:.5em;animation:.7s linear infinite lf-spin;display:inline-block}.is-done:after{content:" ✓";font-weight:900}@keyframes lf-spin{to{transform:rotate(360deg)}}.page-loading{color:#627d98;align-content:center;place-items:center;gap:14px;min-height:60vh;font:700 1rem DM Sans,system-ui,sans-serif;height:auto!important;display:grid!important}.page-loading:before{content:"";background:url(/brand/speako-head-96.webp) 50%/contain no-repeat;width:64px;height:64px;animation:1.2s ease-in-out infinite lf-bob}.page-loading:after{content:"";border:3px solid #dceaf6;border-top-color:#1e90ff;border-radius:50%;order:2;width:28px;height:28px;animation:.8s linear infinite lf-spin}@keyframes lf-bob{0%,to{margin-top:0}50%{margin-top:-8px}}@media (prefers-reduced-motion:reduce){.is-busy:after,.page-loading:before,.page-loading:after{animation-duration:3s}}.live-bell{cursor:pointer;min-width:40px;min-height:36px;font:inherit;justify-content:center;align-items:center;display:inline-flex;position:relative}.live-bell:not(.btn):not(.header-pill){border:1px solid var(--line);background:#fff;border-radius:999px;padding:6px 10px}.live-count{color:#fff;text-align:center;background:#ef4444;border-radius:999px;min-width:20px;height:20px;padding:0 5px;font-size:11px;font-weight:900;line-height:20px;animation:.3s ease-out live-in;position:absolute;top:-6px;right:-6px;box-shadow:0 0 0 2px #fff}.live-panel{z-index:1000;color:#102a43;background:#fff;border:1px solid #dbe6f3;border-radius:18px;flex-direction:column;width:min(390px,100vw - 32px);max-height:min(560px,100vh - 96px);font-family:Nunito,DM Sans,system-ui,sans-serif;animation:.18s ease-out live-in;display:flex;position:fixed;top:70px;right:16px;overflow:hidden;box-shadow:0 18px 50px #102a432e}.live-head{border-bottom:1px solid #edf2f8;justify-content:space-between;align-items:center;padding:14px 16px 10px;font-size:16px;display:flex}.live-x{color:#829ab1;cursor:pointer;background:0 0;border:0;padding:0 4px;font-size:24px;line-height:1}.live-list{padding:6px;overflow-y:auto}.live-empty{color:#627d98;margin:18px 12px;font-size:14px}.live-item,.live-pop{text-align:left;cursor:pointer;width:100%;font:inherit;color:inherit;background:0 0;border:0;border-radius:12px;flex-direction:column;gap:3px;padding:10px 12px;display:flex}.live-item:hover{background:#f2f8ff}.live-item.new{background:#eef6ff}.live-item.new .live-title:before{content:"";vertical-align:1px;background:#1e90ff;border-radius:50%;width:8px;height:8px;margin-right:7px;display:inline-block}.live-title{font-size:14px;font-weight:800;line-height:1.35}.live-body{color:#486581;-webkit-line-clamp:3;-webkit-box-orient:vertical;font-size:13px;line-height:1.4;display:-webkit-box;overflow:hidden}.live-when{color:#829ab1;font-size:12px}.live-foot{border-top:1px solid #edf2f8;flex-wrap:wrap;gap:6px;padding:10px 12px;display:flex}.live-opt{font:inherit;color:#334e68;cursor:pointer;background:#fff;border:1px solid #dbe6f3;border-radius:999px;padding:6px 12px;font-size:13px;font-weight:700}.live-pops{z-index:1001;flex-direction:column;gap:8px;width:min(360px,100vw - 32px);font-family:Nunito,DM Sans,system-ui,sans-serif;display:flex;position:fixed;top:16px;right:16px}.live-pop{color:#fff;background:#102a43;border-left:5px solid #1e90ff;animation:.25s ease-out live-in;box-shadow:0 14px 36px #102a434d}.live-pop .live-body{color:#cfe3f7}@keyframes live-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}[dir=rtl] .live-panel,[dir=rtl] .live-pops{left:16px;right:auto}[dir=rtl] .live-item,[dir=rtl] .live-pop{text-align:right}[dir=rtl] .live-pop{border-left:0;border-right:5px solid #1e90ff}@media (prefers-reduced-motion:reduce){.live-count,.live-panel,.live-pop{animation:none}}.items.count-1:not(.want-items){position:relative}.items.count-1:not(.want-items)>.item{z-index:1}.items.count-1:not(.want-items):before{content:"";pointer-events:none;background:radial-gradient(circle,#ffffffd9 0 38%,#fff0 70%);border:.7cqmin dashed #fffffff2;border-radius:50%;width:70cqmin;height:70cqmin;animation:40s linear infinite lonely-spin;position:absolute;top:50%;left:50%;translate:-50% -50%}.items.count-1:not(.want-items):after{content:"✨";pointer-events:none;font-size:7cqmin;animation:2.6s ease-in-out infinite lonely-twinkle;position:absolute;top:22%;left:22%}@keyframes lonely-spin{to{rotate:360deg}}@keyframes lonely-twinkle{50%{opacity:.45;scale:1.25}}@media (prefers-reduced-motion:reduce){.items.count-1:before,.items.count-1:after{animation:none}}.items:not(.want-items)>.item{--card:linear-gradient(165deg, #fffaf0, #ffe9b5);--pill:#ffe08a;background:var(--card);border:.7cqmin solid #fff;border-radius:5cqmin;box-shadow:0 1.2cqmin #102a430f,0 2.4cqmin 5cqmin #102a431f}.items:not(.want-items)>.item:nth-child(4n+2){--card:linear-gradient(165deg, #fff1f3, #ffd3dc);--pill:#ffb8c6}.items:not(.want-items)>.item:nth-child(4n+3){--card:linear-gradient(165deg, #eef7ff, #cfe7ff);--pill:#a9d4ff}.items:not(.want-items)>.item:nth-child(4n+4){--card:linear-gradient(165deg, #f5f1ff, #ddd3ff);--pill:#c5b6ff}.items:not(.want-items)>.item .emoji{font-size:calc(var(--size) * .8);z-index:1;position:relative}.items:not(.want-items)>.item:has(.item-label) .emoji{font-size:calc(var(--size) * .62)}.items:not(.want-items)>.item:has(.item-label)>:first-child{margin-bottom:30%}.items:not(.want-items)>.item .item-label{text-overflow:ellipsis;background:var(--pill);color:#102a43;max-width:88%;font-size:max(12px, calc(var(--size) * .13));border-radius:999px;padding:.4em 1em;font-weight:900;bottom:7%;overflow:hidden}.items:not(.want-items)>.item .item-label.is-target{background:var(--brand);color:#fff}.maint-page{background:url(/backgrounds/classroom.webp) bottom/cover no-repeat,#dcecfb;place-items:center;padding:16px;font-family:Nunito,system-ui,sans-serif;display:grid;position:fixed;inset:0}.maint-card{text-align:center;background:#fff;border-radius:28px;max-width:520px;padding:28px 24px;box-shadow:0 18px 48px #0f235a33}.maint-card img{width:140px;height:auto}.maint-card h1{color:#102a43;margin:8px 0;font-size:clamp(22px,5vw,30px)}.maint-card p{color:#334e68;margin:0 0 8px;font-size:17px;line-height:1.5}.maint-note{background:#fff6d6;border-radius:14px;padding:8px 12px}.maint-banner{z-index:40;color:#6b4a00;text-align:center;background:#fff6d6;border-bottom:2px solid #ffd43b;padding:8px 16px;font:700 14px/1.4 Nunito,system-ui,sans-serif;position:relative}.maint-banner.on{color:#9b1c1c;background:#ffe3e3;border-color:#f87171}.rw-avatar{object-fit:cover;vertical-align:middle;-webkit-user-select:none;user-select:none;background:#fff6d6;border-radius:50%;flex:none;width:1.6em;height:1.6em;display:inline-block;box-shadow:0 0 0 2px #fff,0 2px 6px #102a4326}.rw-badge{object-fit:contain;vertical-align:middle;-webkit-user-select:none;user-select:none;flex:none;width:1.5em;height:1.5em;display:inline-block}.rw-sticker{object-fit:contain;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:100%;height:100%;display:block}.rw-sticker.rw-icon{vertical-align:-.2em;width:1.15em;height:1.15em;display:inline-block}.rw-sticker.locked{filter:grayscale()brightness(0)opacity(.1)}.rw-next{vertical-align:middle;align-items:center;gap:5px;display:inline-flex}.rw-next .rw-sticker{filter:grayscale()brightness(0)opacity(.16);width:1.9em;height:1.9em;margin-right:3px}.rw-next i{background:#e3ecf5;border-radius:50%;width:.62em;height:.62em;box-shadow:inset 0 0 0 2px #d0dfee}.rw-next i.on{background:#ffc93c;box-shadow:inset 0 0 0 2px #f0a800,0 0 8px #ffc93c99}.rw-book-btn{cursor:pointer;color:#102a43;background:#fff;border:2px solid #ffe08a;border-radius:999px;align-items:center;gap:12px;margin:4px 0 14px;padding:10px 18px 10px 12px;font:900 16px Nunito,sans-serif;display:inline-flex;box-shadow:0 6px 16px #ffaa002e}.rw-book-btn:hover{transform:translateY(-1px)}.rw-book-wrap{z-index:80;background:#102a4373;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.rw-book{text-align:center;color:#102a43;background:linear-gradient(#fffdf5,#fff7e0);border-radius:28px;width:min(720px,100%);max-height:calc(100dvh - 32px);padding:22px 18px 24px;font-family:Nunito,sans-serif;position:relative;overflow:auto;box-shadow:0 30px 80px #102a4359}.rw-book h2{margin:0;font:900 clamp(24px,6vw,32px) Nunito,sans-serif}.rw-count{color:#8a5a00;margin:4px 0 8px;font-size:18px}.rw-count b{color:#102a43;font-size:26px}.rw-book .rw-next{margin-bottom:14px;font-size:18px}.rw-grid{grid-template-columns:repeat(auto-fill,minmax(76px,1fr));gap:10px;display:grid}.rw-cell{aspect-ratio:1;background:#fff;border:2px dashed #f1dfa6;border-radius:18px;padding:6px;display:grid}.rw-cell.got{border:2px solid #ffe08a;box-shadow:0 4px 10px #ffaa0024}.rw-x{cursor:pointer;color:#102a43;background:#fff;border:0;border-radius:50%;width:40px;height:40px;font-size:26px;line-height:1;position:absolute;top:10px;right:12px;box-shadow:0 2px 8px #102a4326}.rw-new{z-index:90;cursor:pointer;background:#102a4359;place-items:center;padding:16px;animation:.3s ease-out rw-fade;display:grid;position:fixed;inset:0}.rw-new-card{text-align:center;color:#102a43;background:#fff;border-radius:30px;width:min(340px,90vw);padding:26px 22px 24px;font:900 22px/1.25 Nunito,sans-serif;animation:.55s cubic-bezier(.2,1.6,.4,1) both rw-pop;position:relative;box-shadow:0 30px 70px #102a4359}.rw-new-pic{z-index:1;width:70%;height:auto;margin:0 auto 14px;animation:1.4s ease-in-out .5s 2 rw-wiggle;position:relative}.rw-new-burst{aspect-ratio:1;background:radial-gradient(circle,#fff3bf 0%,#ffe08a 45%,#ffe08a00 70%);border-radius:50%;width:78%;animation:1.6s ease-in-out infinite rw-glow;position:absolute;top:42%;left:50%;transform:translate(-50%,-50%)}@keyframes rw-fade{0%{opacity:0}}@keyframes rw-pop{0%{opacity:0;transform:scale(.4)rotate(-8deg)}}@keyframes rw-wiggle{0%,to{transform:rotate(0)}25%{transform:rotate(-7deg)scale(1.05)}75%{transform:rotate(7deg)scale(1.05)}}@keyframes rw-glow{50%{transform:translate(-50%,-50%)scale(1.1)}}@media (prefers-reduced-motion:reduce){.rw-new,.rw-new-card,.rw-new-pic,.rw-new-burst{animation:none}}.avatar-picker button{place-items:center;padding:0;display:grid}.avatar-picker button .rw-avatar{width:38px;height:38px;box-shadow:none}.avatar-picker button.selected .rw-avatar{box-shadow:0 0 0 2px #fff, 0 0 0 4px var(--lf-blue,#1e90ff)}.fam-stickers{background:#fffbea;border:1px solid #ffe8a3;border-radius:16px;align-items:center;gap:12px;margin:10px 0 4px;padding:10px 12px;display:flex}.fam-stickers>div:last-child{flex-direction:column;gap:2px;min-width:0;display:flex}.fam-sticker-row{flex:none;display:flex}.fam-sticker-row .rw-sticker{width:40px;height:40px;margin-right:-10px}.fam-sticker-row .rw-sticker:last-child{margin-right:0}.fam-certs{margin:14px 0 6px}.fam-certs h3{margin:0 0 8px}.fam-cert{color:#1565c0;background:#fff;border:1px solid #d9e8f5;border-radius:14px;flex-direction:column;gap:6px;width:170px;margin:0 10px 10px 0;padding:8px;font-size:14px;font-weight:800;text-decoration:none;display:inline-flex}.fam-cert img{aspect-ratio:1536/1088;object-fit:cover;border-radius:8px;width:100%}.lf .trophy.rw-chips{background:0 0;border:0;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;padding:0;display:flex}.lf .trophy.rw-chips>span{white-space:nowrap;background:#fff;border:1px solid #ffe08a;border-radius:999px;align-items:center;gap:6px;padding:6px 12px;display:inline-flex}.lf .trophy.rw-chips>small{text-align:center;flex-basis:100%}.stage-check{place-items:center;display:grid}.stage-check .check-card{aspect-ratio:1;background:#fff;border-radius:6cqmin;place-items:center;width:min(62cqmin,80%);animation:.4s ease-out rw-pop;display:grid;box-shadow:0 2cqmin 6cqmin #102a4326}.stage-check .check-card img{object-fit:contain;width:82%;height:82%}.stage-check .check-dots{gap:2cqmin;display:flex;position:absolute;bottom:6%}.stage-check .check-dots i{background:#cbd5e1;border-radius:50%;width:2.4cqmin;height:2.4cqmin}.stage-check .check-dots i.on{background:#2563eb}.stage-check .check-dots i.done{background:#93c5fd}.magic-wand-layer{z-index:25;pointer-events:none;contain:strict;position:absolute;inset:0;overflow:hidden}.magic-wand{aspect-ratio:1;will-change:transform;filter:drop-shadow(0 4px 6px #2a1a6e59)drop-shadow(0 0 10px #ffd63b8c);width:clamp(40px,7vmin,76px);position:absolute;top:0;left:0}.magic-wand svg{width:100%;height:100%;display:block;overflow:visible;translate:-19% -17%}.mirror.wand-on,.mirror.wand-on *{cursor:none!important}.mirror-tools .wand-btn.active{color:#5b21b6;background:#ede9fe}.mirror.wand-on button,.mirror.wand-on button *,.mirror.wand-on .check-gate,.mirror.wand-on .check-gate *{cursor:pointer!important}.num-card{aspect-ratio:1;background:linear-gradient(160deg,#ffe08a,#ffb84d);border-radius:22%;place-items:center;box-shadow:inset 0 -.12em #0000001f,0 .06em .12em #00000026;container-type:size;display:inline-grid!important}.num-card b{color:#7c2d12;letter-spacing:-.04em;font:900 62cqmin/1 Nunito,system-ui,sans-serif}.speako-wait{aspect-ratio:1100/1240;width:min(30cqmin,38vmin,260px);height:auto;margin:0 auto;display:block}.emoji:has(>.num-card){place-items:center;width:100%;height:100%;display:grid;container-type:size}.emoji>.emoji-img.num-card{max-width:none;width:min(100cqw,100cqh)!important;height:min(100cqw,100cqh)!important}.num-card{box-sizing:border-box;grid-template-rows:1fr auto;padding-bottom:8%}.num-card b{align-self:end;font-size:52cqmin}.num-dots{flex-wrap:wrap;justify-content:center;gap:3cqmin;width:80%;font-style:normal;display:flex}.num-dots s{background:#7c2d12;border-radius:50%;width:11cqmin;height:11cqmin;text-decoration:none}.num-dots.n7 s,.num-dots.n8 s,.num-dots.n9 s,.num-dots.n10 s{width:9cqmin;height:9cqmin}.num-dots.n6,.num-dots.n8,.num-dots.n10{width:70%}.colour-card{aspect-ratio:1;background:var(--c);border-radius:26%;box-shadow:inset 0 -.12em #00000026,0 0 0 .05em #0000001f;display:inline-block!important}.tile-avatar{place-items:center;gap:4px;width:100%;height:100%;display:grid}.tile-avatar>:first-child{aspect-ratio:1;width:min(62%,120px);height:auto}.tile-avatar img,.tile-avatar svg{object-fit:contain;width:100%;height:100%}.tile-avatar small{color:#cbd5e1;font-size:12px;font-weight:800}.cockpit{background:var(--bg);flex-direction:column;height:100dvh;display:flex;overflow:hidden}.cockpit-top{border-bottom:1px solid var(--line);background:#fff;flex:none;justify-content:space-between;align-items:center;gap:8px;padding:8px 12px;display:flex}.cockpit-top .row{flex-wrap:nowrap;gap:8px;min-width:0}.cockpit-name{white-space:nowrap;text-overflow:ellipsis;font-size:1.05rem;overflow:hidden}.cockpit-notices{flex:none;padding:8px 12px 0}.cockpit-notices .notice{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px;padding:8px 12px;font-size:.9rem;display:flex}.cockpit-zones{flex:1;grid-template-rows:minmax(0,1.15fr) minmax(0,1fr);grid-template-columns:minmax(0,1fr);min-height:0;display:grid}.zone{flex-direction:column;min-width:0;min-height:0;display:flex}.zone-watch{grid-row:1;padding:8px}.zone-setup,.zone-teach{border-top:1px solid var(--line);background:#fff;grid-row:2;display:none}.panel-setup .zone-setup,.panel-teach .zone-teach{display:flex}.zone-scroll{overscroll-behavior:contain;flex:1;min-height:0;padding:10px 12px 14px;overflow-y:auto}.zone-head{letter-spacing:.08em;text-transform:uppercase;border-radius:8px;flex:none;margin:12px 12px 0;padding:6px 10px;font-size:.75rem;font-weight:800;display:none}.zone-head.setup{color:#1d5fbf;background:#e6f4ff}.zone-head.teach{color:#137a3a;background:#e7f8ee}.cams{flex:none;justify-content:center;gap:8px;height:clamp(64px,19%,190px);display:flex}.cam{aspect-ratio:4/3;background:#1f2340;border-radius:12px;height:100%;position:relative;overflow:hidden;box-shadow:0 2px 8px #1f23401f}.cam .video-tile{width:100%;height:100%}.cam .video-placeholder{font-size:.75rem}.cam-tag{color:#fff;background:#1f2340b8;border-radius:999px;padding:1px 8px;font-size:11px;font-weight:700;position:absolute;bottom:6px;left:6px}.cam .voice-badge{padding:1px 8px;font-size:.75rem;top:6px;left:6px}.mirror-fit{flex:1;place-items:center;min-height:0;margin-top:8px;display:grid;container-type:size}.mirror-fit .mirror{aspect-ratio:4/3;border-radius:14px;width:min(100cqw,133.333cqh);height:auto}.group{margin-bottom:14px}.label{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-bottom:6px;font-size:.72rem;font-weight:800}.label .muted{text-transform:none;letter-spacing:0}.vlist{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.list-btn{border:1px solid var(--line);text-align:left;cursor:pointer;background:#fff;border-radius:10px;align-items:center;gap:6px;padding:9px 10px;font-size:.9rem;font-weight:700;display:flex}.list-btn:hover{background:#f1f2fa}.list-btn.active{background:var(--brand-soft);border-color:var(--brand);color:#3d2fd0}.list-btn:disabled{opacity:.5;cursor:default}.list-num{width:20px;height:20px;color:var(--muted);background:#f1f2fa;border-radius:50%;flex:none;place-items:center;font-size:11px;display:grid}.list-btn.active .list-num{background:var(--brand);color:#fff}.chips{flex-wrap:wrap;gap:6px;display:flex}.chip{border:1px solid var(--line);cursor:pointer;white-space:nowrap;background:#fff;border-radius:999px;padding:6px 11px;font-size:.85rem;font-weight:700}.chip:hover{background:#f1f2fa}.chip.active{background:var(--brand-soft);border-color:var(--brand);color:#3d2fd0}.segmented{border:1px solid var(--line);background:#fff;border-radius:10px;display:inline-flex;overflow:hidden}.segmented button{cursor:pointer;border:none;border-right:1px solid var(--line);background:0 0;padding:8px 18px;font-weight:800}.segmented button:last-child{border-right:none}.segmented button.active{background:var(--brand);color:#fff}.fold summary{cursor:pointer}.toggles.column{flex-direction:column;gap:8px;margin-top:6px}.word-card{background:var(--brand-soft);border-radius:14px;align-items:center;gap:12px;margin-bottom:8px;padding:10px 12px;display:flex}.word-card.calm{background:#fff8e1}.word-emoji{flex:none;font-size:2.6rem;line-height:1}.word-emoji .dot{width:40px;height:40px}.word-big{font-size:1.5rem;font-weight:800;line-height:1.1}.word-say{margin-top:2px;font-size:.9rem}.tip{background:#fffbe8;border:1px solid #f5e3a1;border-radius:10px;margin:0 0 12px;padding:7px 10px;font-size:.85rem}.word-grid{grid-template-columns:repeat(auto-fill,minmax(64px,1fr));gap:6px;display:grid}.word-chip{border:2px solid var(--line);cursor:pointer;background:#fff;border-radius:12px;flex-direction:column;align-items:center;gap:1px;padding:5px 2px;font-size:.78rem;font-weight:700;display:flex;position:relative}.word-chip .chip-emoji{font-size:1.6rem;line-height:1.1}.word-chip .dot{width:22px;height:22px;margin:2px 0}.word-chip.active{border-color:var(--brand);background:var(--brand-soft);color:#3d2fd0}.word-chip.on-screen:after{content:"";background:var(--ok);border-radius:50%;width:7px;height:7px;position:absolute;top:4px;right:4px}.btn-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.quick{grid-template-columns:1fr 1fr;gap:8px;display:grid}.quick .btn{min-height:42px}.quick .praise-big{background:#fff3c4;border-color:#f5c84c;grid-column:span 2;min-height:52px;font-size:1.15rem}.quick .wide{grid-column:span 2}.btn kbd{border:1px solid var(--line);color:var(--muted);background:#f1f2fa;border-radius:4px;padding:2px 4px;font:600 10px/1 ui-monospace,monospace}.rec-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.rec-btn{border:1px solid var(--line);text-align:left;cursor:pointer;background:#fff;border-radius:10px;align-items:center;gap:8px;padding:9px 8px;font-size:.85rem;font-weight:700;line-height:1.15;display:flex;position:relative}.rec-btn:hover{background:#f1f2fa}.rec-btn.has{background:#e7f8ee;border-color:#9be3b4}.rec-num{width:20px;height:20px;color:var(--muted);background:#f1f2fa;border-radius:50%;flex:none;place-items:center;font-size:11px;display:grid}.rec-btn.has .rec-num{background:var(--ok);color:#fff}.zone-teach textarea{resize:vertical}.cockpit-tabs{padding:8px 12px;padding-bottom:calc(8px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:#fff;flex:none;grid-template-columns:1fr 1.25fr 1fr;gap:8px;display:grid}.cockpit-tabs button{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:12px;padding:10px 6px;font-weight:800}.cockpit-tabs button.active{background:var(--brand-soft);border-color:var(--brand);color:#3d2fd0}.cockpit-tabs .tab-praise{background:#fff3c4;border-color:#f5c84c;font-size:1.05rem}.hide-sm{display:none}@media (width>=768px){.hide-sm{display:inline}.cockpit-top{padding:10px 16px}.cockpit-zones{grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(0,1fr) 340px}.zone-watch{grid-area:1/1;padding:12px}.zone-setup,.zone-teach{border-top:none;border-left:1px solid var(--line);grid-area:1/2}.zone-head{display:block}.cams{gap:12px;height:clamp(90px,21%,200px)}.mirror-fit{margin-top:12px}}@media (width>=1280px){.cockpit-zones{grid-template-columns:270px minmax(0,1fr) 350px}.zone-setup{border-left:none;border-right:1px solid var(--line);grid-column:1;display:flex}.zone-watch{grid-column:2;padding:14px 16px}.zone-teach{grid-column:3;display:flex}.cockpit-tabs{display:none}.vlist{grid-template-columns:1fr}}.lesson-card{background:linear-gradient(160deg,#eef6ff,#fffbe8);border:1px solid #dceaf6;border-radius:14px;padding:12px}.lesson-title{font-size:1.05rem;font-weight:800;line-height:1.2}.lesson-goal{color:var(--muted);margin:4px 0 10px;font-size:.82rem}.lesson-steps{gap:4px;margin:0 0 10px;padding:0;list-style:none;display:grid}.lesson-step{cursor:pointer;text-align:left;background:#ffffffb3;border:1px solid #0000;border-radius:10px;align-items:center;gap:8px;width:100%;padding:6px 8px;font-size:.86rem;font-weight:700;display:flex}.lesson-step:hover{background:#fff}.lesson-step.current{color:#1565c0;background:#fff;border-color:#1e90ff;box-shadow:0 2px 8px #1e90ff26}.lesson-step.current .list-num{color:#fff;background:#1e90ff}.lesson-step.done{opacity:.6}.lesson-step.done .list-num{background:var(--ok);color:#fff}.lesson-step-title{flex:1}.lesson-step-min{color:var(--muted);font-size:.75rem}.lesson-next{width:100%;padding:11px;font-size:.95rem}.manual-label{border-top:1px dashed var(--line);margin-top:4px;padding-top:10px}.step-badge{color:#1565c0;background:#e7f4ff;border-radius:999px;margin-bottom:8px;padding:3px 10px;font-size:.75rem;font-weight:800;display:inline-block}.chant-card{background:#fff;border:1px solid #f5e3a1;border-left:4px solid #ffd43b;border-radius:10px;margin-bottom:12px;padding:8px 12px}.chant-card p{margin:2px 0;font-size:.92rem;font-weight:700}.home-tip{background:#e7f8ee;border-color:#9be3b4}.next-lesson{text-align:left;background:linear-gradient(160deg,#eef6ff,#fffbe8);border:1px solid #dceaf6;border-radius:12px;flex-direction:column;gap:2px;width:100%;padding:8px 10px;font-size:.88rem;display:flex}.next-lesson .label{margin:0}.next-lesson span{color:var(--muted)}.lesson-pick{width:100%;padding:7px 10px;font-size:.85rem}.brand-mini{object-fit:contain;vertical-align:middle;width:30px;height:30px}.brand-blue{color:#1e90ff}.build-strip{flex-wrap:wrap;justify-content:center;padding:2cqmin 4cqmin}.build-text{color:var(--ink);font:800 6.5cqmin/1.1 Nunito,system-ui,sans-serif}.build-sentence{color:#1565c0;text-align:center;min-height:7cqmin;font:800 5.2cqmin/1.2 Nunito,system-ui,sans-serif}.stage-caption{z-index:4;color:#1565c0;letter-spacing:.08em;background:#fff;border:.6cqmin solid #ffd43b;border-radius:4cqmin;padding:1cqmin 5cqmin;font:900 10cqmin/1 Nunito,system-ui,sans-serif;position:absolute;top:2.5cqmin;left:50%;translate:-50%;box-shadow:0 1cqmin 3cqmin #0000001a}.stage:has(.stage-caption) .items{padding-top:16cqmin}.task-panel{background:#fff;border:1px solid #dceaf6;border-left:4px solid #1e90ff;border-radius:10px;gap:8px;margin-bottom:12px;padding:10px 12px;display:grid}.task-lines{gap:4px;margin:0;padding-left:20px;font-size:.9rem;font-weight:700;display:grid}.task-chips{flex-wrap:wrap;gap:4px;display:flex}.task-chips .chip{cursor:default;padding:4px 9px;font-size:.8rem}.task-answer,.task-story-text{margin:0;font-size:.92rem}.task-story-text{font-size:1rem;font-weight:800}.step-now{background:#fff;border:1px solid #dceaf6;border-radius:10px;justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;padding:7px 10px;font-size:.86rem;display:flex}.step-now.over{background:#fff7e6;border-color:#f5c84c}.step-now.over .step-clock{color:#b45309;font-weight:800}.step-clock{font-variant-numeric:tabular-nums;color:var(--muted);white-space:nowrap}.back-to-plan{background:#fffbe8;border-color:#f5c84c;width:100%;margin-bottom:8px}.step-then{color:var(--muted);text-align:center;margin-top:6px;font-size:.78rem}.improvise{flex-direction:column;gap:4px;display:flex}.improvise>summary{cursor:pointer;padding:6px 0 10px;font-size:.9rem;font-weight:800;list-style-position:inside}.improvise[open]>summary{color:#1565c0}.welcome-tip{color:#102a43;background:#e7f4ff;border-color:#9cc8f0}.mirror{position:relative}.pen-layer{z-index:7;pointer-events:none;position:absolute;inset:0}.pen-layer.on{pointer-events:auto;cursor:crosshair;touch-action:none;border-radius:14px;box-shadow:inset 0 0 0 3px #ef4444}.pen-layer svg{width:100%;height:100%}.pen-layer polyline{fill:none;stroke:#ef4444;stroke-width:5px;stroke-linecap:round;stroke-linejoin:round}.pen-tools{z-index:8;gap:6px;display:flex;position:absolute;top:8px;right:8px}.mic-meter{background:#ffffff73;border-radius:4px;width:42px;height:7px;position:absolute;bottom:7px;right:6px;overflow:hidden}.mic-meter i{background:#22c55e;height:100%;transition:width 80ms linear;display:block}.speak-card{background:#fff;border:1px solid #dceaf6;border-left:4px solid #ffd43b;border-radius:10px;margin-bottom:12px;padding:9px 11px}.speak-card.open{border-color:#1e90ff;box-shadow:0 0 0 3px #1e90ff26}.speak-options{gap:6px;display:grid}.speak-ask{text-align:left;background:#fffbe8;border-color:#f5e3a1;justify-content:flex-start;font-size:.86rem}.speak-now{color:#1565c0;margin:4px 0 8px;font-size:1.05rem;font-weight:900}.speak-said{color:#166534;background:#dcfce7;border-color:#22c55e}.hint-btn{background:#fffbe8;border-color:#f5c84c}.task-words{flex-wrap:wrap;gap:5px;display:flex}.task-words .word-chip{flex-direction:row;gap:4px;padding:3px 8px;font-size:.78rem}.task-words .chip-emoji{font-size:1.1rem}.imp-num{color:#fff;background:#1e90ff;border-radius:50%;place-items:center;width:18px;height:18px;margin-right:4px;font-size:10px;display:inline-grid}.activity-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;display:grid}.act-btn{border:1px solid var(--line);cursor:pointer;text-align:left;background:#fff;border-radius:9px;align-items:center;gap:6px;padding:7px 8px;font-size:.82rem;font-weight:700;display:flex}.act-btn:hover{background:#f1f2fa}.act-btn.active{background:var(--brand-soft);border-color:var(--brand);color:#3d2fd0}.act-icon{font-size:1rem}.child-gifts{color:#1565c0;font-size:.85rem;font-weight:800}.pen-tools .showhow-btn{background:#fff8db;border-color:#f5c400;font-weight:800}.pen-tools .showhow-btn.active{color:#fff;background:#102a43;border-color:#102a43}.left-tabs{background:#eef2f7;border-radius:12px;grid-template-columns:1fr 1fr;gap:4px;margin-bottom:10px;padding:4px;display:grid}.left-tabs button{color:#486581;cursor:pointer;background:0 0;border:0;border-radius:9px;padding:8px 6px;font:800 .88rem Nunito,sans-serif;position:relative}.left-tabs button.active{color:#102a43;background:#fff;box-shadow:0 1px 3px #102a4326}.tab-dot{background:#f59f00;border-radius:50%;width:8px;height:8px;position:absolute;top:6px;right:8px}.imp-status{color:#334e68;background:#f0f7ff;border:1px solid #cfe3ff;border-radius:10px;flex-direction:column;align-items:flex-start;gap:8px;margin-bottom:6px;padding:8px 10px;font-size:.82rem;display:flex}.imp-status.paused{background:#fff8db;border-color:#ffe08a}.pictures-pick .segmented button{flex:1;min-width:0}.ask-chip{cursor:pointer}.ask-chip.active{color:#fff;background:#1e90ff;border-color:#1e90ff}.ask-chip.done:not(.active){background:#ecfdf3;border-color:#86efac}.task-ask{margin:8px 0 0;font-size:.9rem}.auto-say{color:#627d98;cursor:pointer;align-items:center;gap:6px;margin:-2px 0 6px;font-size:.78rem;display:flex}.mirror-bar{flex:none;justify-content:space-between;align-items:center;gap:8px;min-height:32px;margin-top:8px;display:flex}.mirror-label{color:#486581;text-transform:uppercase;letter-spacing:.04em;font-size:12px;font-weight:800}.mirror-tools{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.mirror-tools .showhow-btn{background:#fff8db;border-color:#f5c400;font-weight:800}.mirror-tools .showhow-btn.active{color:#fff;background:#102a43;border-color:#102a43}.mirror-bar+.mirror-fit{margin-top:6px}.speak-card .auto-say{text-align:left;flex-direction:row;justify-content:flex-start;align-items:center;width:auto}.speak-card .auto-say input{flex:none;width:auto;margin:0}.story-questions{flex-direction:column;gap:6px;margin-top:10px;display:flex}.story-q{text-align:left;background:#f0f7ff;border-color:#cfe3ff;flex-direction:column;align-items:flex-start;gap:2px;display:flex}.story-q small{color:#627d98;font-weight:600}.place-lines{counter-reset:move;gap:6px;padding-left:0;list-style:none}.place-lines li{counter-increment:move;color:#627d98;background:#fff;border:1px solid #e3edf7;border-radius:10px;align-items:center;gap:8px;padding:8px 10px;font-weight:700;display:flex}.place-lines li:before{content:counter(move);color:#486581;background:#eef4fb;border-radius:50%;flex:none;place-items:center;width:22px;height:22px;font-size:.75rem;display:grid}.place-lines li>span:not(.now-tag):not(.tick){flex:1}.place-lines li.now{color:#14532d;background:#ecfdf3;border:2px solid #22c55e;font-size:1rem;animation:1.8s ease-in-out infinite now-glow;box-shadow:0 0 0 4px #22c55e24}.place-lines li.now:before{color:#fff;background:#22c55e}.place-lines li.done{color:#94a3b8;background:#f7faf8}.place-lines li.done>span:not(.tick){-webkit-text-decoration:line-through #94a3b899;text-decoration:line-through #94a3b899}.place-lines li.done:before{content:"✓";color:#16a34a;background:#dcfce7}.place-lines .tick{color:#16a34a;font-weight:900}.now-tag{letter-spacing:.05em;text-transform:uppercase;color:#fff;background:#16a34a;border-radius:99px;flex:none;padding:3px 8px;font-size:.66rem;font-weight:900}@keyframes now-glow{50%{box-shadow:0 0 0 7px #22c55e14}}.speak-ask.due{color:#14532d;background:#ecfdf3;border:2px solid #22c55e;gap:8px;font-weight:800;animation:1.8s ease-in-out infinite now-glow;box-shadow:0 0 0 4px #22c55e24}.speak-card.open{background:#f0fdf4;border-color:#22c55e #22c55e #22c55e #16a34a;animation:1.8s ease-in-out infinite now-glow;box-shadow:0 0 0 4px #22c55e29}.speak-card.open .speak-now{color:#14532d}@media (prefers-reduced-motion:reduce){.place-lines li.now,.speak-ask.due,.speak-card.open{animation:none}}.cam-muted{color:#fff;background:#c53030;border-radius:999px;padding:2px 8px;font-size:11px;font-weight:800;position:absolute;top:6px;left:6px}.words-btn.active{color:#1565c0;background:#e8f4ff;border-color:#1e90ff}.who-chips{flex-wrap:wrap;align-items:center;gap:6px;min-width:0;display:inline-flex}.who-chip{color:#334e68;white-space:nowrap;background:#eef2f7;border-radius:999px;padding:3px 10px;font-size:12px;font-weight:800}.who-chip.lvl-tiny{color:#b0306b;background:#ffe3ef}.who-chip.lvl-starters{color:#1565c0;background:#e1efff}.who-chip.lvl-movers{color:#15803d;background:#dcf7e7}.who-chip.lvl-flyers{color:#5b4bd6;background:#ece9ff}.who-chip.lvl-key{color:#8a5a00;background:#fff4cc}.who-chip.unit{text-overflow:ellipsis;max-width:260px;overflow:hidden}@media (width<=700px){.who-chip.unit{display:none}}.mirror-col{flex-direction:column;width:min(100cqw,133.333cqh - 58.6667px);display:flex}.mirror-fit .mirror-col .mirror{border-top:0;border-radius:0 0 14px 14px;width:100%}.mirror-col .mirror-bar{background:#102a43;border-radius:14px 14px 0 0;align-items:stretch;gap:0;height:44px;min-height:44px;margin:0;overflow:hidden}.mirror-col .mirror-label{color:#fff;white-space:nowrap;text-overflow:ellipsis;align-items:center;max-width:34%;padding:0 14px;font-size:12px;display:flex;overflow:hidden}.mirror-col .mirror-tools{flex-wrap:nowrap;flex:1;justify-content:stretch;gap:0;display:flex}.mirror-col .mirror-tools .btn{white-space:nowrap;border:0;border-left:2px solid #102a43;border-radius:0;flex:1;height:100%;margin:0;padding:0 8px;font-size:13px;font-weight:800}.mirror-col .mirror-tools .showhow-btn{color:#6b4a00;background:#ffe08a}.mirror-col .mirror-tools .showhow-btn.active{color:#102a43;background:#f5b400}.mirror-col .mirror-tools .pen-btn{color:#4c3fb8;background:#e9e3ff}.mirror-col .mirror-tools .pen-btn.active{color:#fff;background:#6d5dfc}.mirror-col .mirror-tools .clear-btn{color:#334e68;background:#f1f5f9;flex:.6}.mirror-col .mirror-tools .words-btn{color:#1e40af;background:#dbeafe}.mirror-col .mirror-tools .words-btn.active{color:#fff;background:#1e90ff}.mirror-col .mirror-tools .btn:disabled{opacity:.55}.mirror-col .mirror-tools .btn:hover:not(:disabled){filter:brightness(.96)}@media (width<=900px){.mirror-col .mirror-label{display:none}}.cockpit .cockpit-zones{grid-template-rows:auto minmax(0,1.15fr) minmax(0,1fr);grid-template-areas:"cams""watch""panel"}.cockpit .zone-cams{grid-area:cams;padding:8px 8px 0}.cockpit .zone-cams .cams{height:clamp(64px,17vh,170px)}.cockpit .zone-watch{grid-area:watch}.cockpit .zone-setup,.cockpit .zone-teach{grid-area:panel}@media (width>=768px){.cockpit .cockpit-zones{grid-template:"watch cams""watch panel"minmax(0,1fr)/minmax(0,1fr) 340px}.cockpit .zone-cams{border-left:1px solid var(--line);background:#fff;padding:10px 10px 8px}.cockpit .zone-cams .cams{gap:8px;height:auto}.cockpit .zone-cams .cam{aspect-ratio:4/3;flex:1;min-width:0;height:auto}}@media (width>=1280px){.cockpit .cockpit-zones{grid-template-columns:270px minmax(0,1fr) 350px;grid-template-areas:"setup watch cams""setup watch teach"}.cockpit .zone-setup{grid-area:setup}.cockpit .zone-teach{grid-area:teach}}.cockpit.text-2 :is(.zone-setup,.zone-teach,.cockpit-top,.zone-cams){zoom:1.15}.cockpit.text-3 :is(.zone-setup,.zone-teach,.cockpit-top,.zone-cams){zoom:1.3}.text-size-btn{min-width:64px;font-weight:900}.record-open{text-align:left;justify-content:flex-start;width:100%;font-weight:800}.record-open .badge{margin-left:auto}.record-card{z-index:60;background:#fff;border:2px solid #dbe7f7;border-radius:18px;gap:10px;width:min(360px,100vw - 32px);padding:14px;animation:.2s ease-out record-in;display:grid;position:fixed;bottom:16px;right:16px;box-shadow:0 18px 48px #102a4347}.record-head{justify-content:space-between;align-items:flex-start;gap:8px;font-size:15px;display:flex}.record-x{color:#829ab1;cursor:pointer;background:0 0;border:0;font-size:24px;line-height:1}.record-card .rec-list{grid-template-columns:repeat(2,minmax(0,1fr))}@keyframes record-in{0%{opacity:0;transform:translateY(10px)}}@media (width<=767px){.record-card{bottom:76px}}.cockpit .zone-watch{flex-direction:column;display:flex}.cockpit .mirror-fit{flex:1;min-height:0;margin-top:0;display:flex}.cockpit .mirror-col{width:100%;height:100%}.cockpit .mirror-fit .mirror-col .mirror{aspect-ratio:auto;flex:1;height:auto;min-height:0}.mirror .gift-badge{display:none}.mirror .stage:has(.gift-badge) .task{top:0}.who-chip.gifts{color:#8a5a00;background:#fff4cc}@media (width<=767px){.cockpit-top{flex-wrap:wrap;row-gap:6px}.cockpit-top>.row:first-child{flex-wrap:wrap;flex:100%;row-gap:6px}.cockpit-top>.row:last-child{flex:100%;justify-content:flex-end}.who-chips{scrollbar-width:none;flex-wrap:nowrap;flex:100%;overflow-x:auto}.who-chips::-webkit-scrollbar{display:none}.mirror-col .mirror-bar{height:40px;min-height:40px}.mirror-col .mirror-tools .btn{padding:0 4px;font-size:12px}.mirror-col .mirror-tools .btn .tool-word{display:none}}.mirror [data-id]{cursor:pointer}.mirror [data-id]:hover{outline-offset:2px;border-radius:10px;outline:3px solid #1e90ff8c}.mirror-point{z-index:20;pointer-events:none;border:5px solid #ff6fa3;border-radius:50%;animation:1s ease-in-out infinite point-pulse;position:absolute;translate:-50% -50%;box-shadow:0 0 0 6px #ff6fa340}.mirror-point b{color:#fff;white-space:nowrap;background:#ff6fa3;border-radius:999px;padding:2px 10px;font-size:12px;position:absolute;top:-30px;left:50%;translate:-50%}@keyframes point-pulse{50%{box-shadow:0 0 0 14px #ff6fa314}}.mirror-say{z-index:21;text-align:center;background:#fff;border:3px solid #ffd43b;border-radius:18px;width:min(560px,92%);padding:12px 14px;position:absolute;bottom:14px;left:50%;translate:-50%;box-shadow:0 16px 40px #102a434d}.mirror-say p{color:#102a43;margin:0 0 10px;font-size:18px;font-weight:900}.mirror-say div{justify-content:center;gap:8px;display:flex}.mirror-say .speak-said{color:#fff;background:#22b866;border-color:#22b866}.mirror-next{border-radius:0 0 14px 14px;gap:0;margin-top:-2px;display:flex;overflow:hidden}.mirror-col .mirror{border-radius:0}.mirror-next .btn{border:0;border-left:2px solid #fff;border-radius:0;flex:1;height:46px;font-weight:800}.mirror-next .btn:first-child{border-left:0}.mirror-next .next-word{color:#1e40af;background:#e1efff}.mirror-next .praise{color:#7a5600;background:#fff3c4}.mirror-next .next-step{flex:2}.mirror-col .mirror-tools .pointer-btn{color:#b0306b;background:#ffe3ef}.mirror-col .mirror-tools .pointer-btn.active{color:#fff;background:#ff6fa3}@media (width<=767px){.mirror-next .btn{height:42px;font-size:13px}}.survey-card{background:#fff;border-radius:20px;gap:12px;width:min(640px,100vw - 32px);max-height:calc(100vh - 40px);padding:18px;display:grid;overflow-y:auto;box-shadow:0 20px 60px #102a434d}.survey-card h2{margin:0;font-size:20px}.survey-list{gap:10px;display:grid}.survey-row{background:#f6f9fc;border-radius:14px;gap:6px;padding:10px;display:grid}.survey-row b{font-size:16px}.survey-opts{grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:6px;display:grid}.survey-modal{z-index:70;background:#102a4373;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.mirror-next.nav-bar{grid-template-columns:1fr minmax(0,2.2fr) 1fr;gap:0;display:grid}.mirror-next.nav-bar>div{min-width:0;display:flex}.mirror-next.nav-bar .btn{flex:1;min-width:0}.mirror-next.nav-bar .nav-in .btn{color:#1e40af;background:#eef4fb}.mirror-next.nav-bar .nav-in .btn:disabled{opacity:.45}.mirror-next.nav-bar .nav-in.right .btn,.mirror-next.nav-bar .nav-section{border-left:2px solid #fff}.mirror-next.nav-bar .next-step{white-space:nowrap;text-overflow:ellipsis;flex-direction:column;justify-content:center;align-items:center;line-height:1.1;display:flex;overflow:hidden}.mirror-next.nav-bar .next-step small{opacity:.8;text-transform:uppercase;letter-spacing:.06em;font-size:10px;font-weight:700}.mirror-next.nav-bar .nav-next small{opacity:.7;margin:0 2px;font-weight:700}@media (width<=767px){.mirror-next.nav-bar .tool-word,.mirror-next.nav-bar .next-step small{display:none}}.cam{position:relative}.cam-ctl{z-index:3;gap:6px;display:flex;position:absolute;bottom:6px;right:6px}.cam-btn{cursor:pointer;color:#fff;opacity:0;background:#1f2340b8;border:0;border-radius:50%;place-items:center;width:34px;height:34px;transition:opacity .15s,transform .15s,background .15s;display:grid;transform:scale(.9);box-shadow:0 2px 8px #00000040}.cam-btn svg{width:18px;height:18px}.cam-btn:hover{background:#1f2340eb}.cam-btn.off{opacity:1;background:#c53030;transform:none}.cam:hover .cam-btn,.cam:focus-within .cam-btn{opacity:1;transform:none}@media (hover:none){.cam-btn{opacity:1;transform:none}}.mirror-next.nav-bar .nav-section .praise{flex:1 1 0}.mirror-next.nav-bar .nav-tool{color:#4c1d95;background:#f3f0ff;border-left:2px solid #fff;flex:1 1 0}.mirror-next.nav-bar .nav-section>.btn:first-child{border-left:0}.mirror-next.nav-bar .next-step{flex:1.4 1 0;max-width:34%}.mirror-next.nav-bar .next-title{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.mirror-next.nav-bar .btn{font-size:15px}.mirror-next.nav-bar{grid-template-columns:1fr minmax(0,2fr) 1fr}.say-strip{flex-wrap:wrap;gap:6px;margin:0 0 6px;display:flex}.say-strip .say-line{color:#14532d;background:#ecfdf3;border:2px solid #86efac;border-radius:12px;flex:260px;min-width:0;padding:7px 12px;font-size:.95rem;line-height:1.35}.say-strip .say-line b{color:#15803d;margin-right:4px}.say-strip .say-ask{color:#fff;cursor:pointer;text-align:left;background:#16a34a;border:0;border-radius:12px;flex:0 auto;padding:7px 12px;font-size:.92rem;font-weight:700;animation:1.8s ease-in-out infinite now-glow}.word-say{color:#14532d;background:#ecfdf3;border:1px solid #bbf7d0;border-radius:8px;padding:4px 8px}.word-say b{color:#15803d}.speak-ask{background:#f0fdf4;border-color:#bbf7d0}.now-card{align-items:center}.now-card .now-kicker{letter-spacing:.06em;text-transform:uppercase;color:#6b7280;font-size:.7rem;font-weight:800}.now-card .now-title{color:#1f2340;font-size:1.15rem;font-weight:900;line-height:1.2}.now-card .now-word{margin-top:2px;font-size:.9rem}.now-card .now-word b{font-size:1.05rem}.teach-box{background:#fff;border:1px solid #e5e7eb;border-radius:12px;margin:8px 0;padding:10px 12px}.teach-box h4{letter-spacing:.05em;text-transform:uppercase;color:#374151;align-items:center;gap:8px;margin:0 0 6px;font-size:.78rem;font-weight:900;display:flex}.teach-box h4 i{color:#fff;letter-spacing:0;background:#374151;border-radius:50%;place-items:center;width:20px;height:20px;font-size:.72rem;font-style:normal;display:grid}.teach-box.say-box,.teach-box.ask-box{background:#ecfdf3;border:2px solid #86efac}.teach-box.say-box h4,.teach-box.ask-box h4{color:#15803d}.teach-box.say-box h4 i,.teach-box.ask-box h4 i{background:#16a34a}.teach-box.say-box .word-say{color:#14532d;background:0 0;border:0;padding:0;font-size:1rem;line-height:1.45}.teach-box.say-box .word-say b{color:#14532d;font-weight:800}.teach-box.say-box ol{margin:0;padding-left:20px;font-weight:800}.teach-box.say-box li{margin:2px 0}.teach-box.ask-box .speak-ask{color:#14532d;background:#fff;border:1px solid #86efac;font-weight:700}.teach-box.ask-box .auto-say{color:#4b5563;margin-top:6px;font-size:.75rem;display:block}.teach-box.chant-card{background:#fff8e6;border-color:#fde68a}.teach-box.screen-box{background:#f8fafc}.teach-box.screen-box .task-panel{box-shadow:none;background:0 0;border:0;margin:0;padding:0}.teach-tip{color:#4b5563;background:#f9fafb;border:1px dashed #d1d5db;border-radius:10px;padding:6px 10px;font-size:.82rem}.check-start{color:#1e40af;background:#eef4ff;border:2px solid #93c5fd;border-radius:12px;flex-direction:column;align-items:center;gap:2px;width:100%;margin:4px 0 8px;padding:10px;font-weight:800;display:flex}.check-start small{color:#475569;font-weight:600}.check-box{background:#eef4ff;border:2px solid #93c5fd}.check-box .check-ask{margin:0 0 8px;font-size:.9rem}.check-row{grid-template-columns:repeat(5,1fr);gap:6px;display:grid}.check-pic{cursor:pointer;background:#fff;border:2px solid #dbeafe;border-radius:10px;flex-direction:column;align-items:center;gap:2px;padding:4px;display:flex}.check-pic img{aspect-ratio:1;object-fit:contain;width:100%}.check-pic small{color:#64748b;min-height:1em;font-size:.68rem;font-weight:800}.check-pic.now{border-color:#2563eb}.check-pic.ok small{color:#15803d}.check-status{margin:8px 0;font-size:.85rem}.check-status.good{color:#15803d;font-weight:800}.check-done{width:100%}.step-badge[hidden]{display:none!important}.mirror-tools .check-btn{color:#1e3a8a;background:#dbeafe}.mirror-tools .check-btn.active{color:#fff;background:#2563eb}.say-strip .say-line{color:#f0fdf4;background:linear-gradient(135deg,#064e3b,#047857);border:0;padding:9px 14px;font-size:1.02rem;font-weight:700;box-shadow:0 6px 18px #04785759,inset 0 1px #ffffff1f}.say-strip .say-line b{color:#064e3b;text-transform:uppercase;letter-spacing:.04em;vertical-align:1px;background:#a7f3d0;border-radius:999px;margin-right:8px;padding:1px 9px;font-size:.82rem;display:inline-block}.say-strip .say-line .muted{color:#bbf7d0;opacity:1;font-weight:600}.say-strip .say-ask{color:#422006;background:linear-gradient(135deg,#facc15,#f59e0b);box-shadow:0 6px 18px #f59e0b59}.say-strip .say-ask b{color:#422006}.check-gate{z-index:30;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);border-radius:inherit;background:#0f172a8c;place-items:center;display:grid;position:absolute;inset:0}.check-gate-card{text-align:center;background:#fff;border-radius:18px;flex-direction:column;align-items:center;gap:10px;width:min(440px,88%);padding:22px 22px 16px;display:flex;box-shadow:0 20px 50px #0000004d}.check-gate-card b{color:#1f2340;font-size:1.2rem}.check-gate-card p{color:#4b5563;margin:0;font-size:.92rem}.check-gate-btn{border-radius:14px;padding:14px 26px;font-size:1.15rem}.check-gate-card small{color:#b45309;font-weight:700}.check-skip{color:#6b7280;font-size:.8rem}.check-end{gap:6px;display:flex}.check-end .check-done{flex:2}.check-end .check-again{flex:1}.say-strip .say-line{color:#fff;background:linear-gradient(135deg,#7f1d1d,#b91c1c);box-shadow:0 6px 18px #b91c1c59}.say-strip .say-line b{color:#991b1b;background:#fff}.say-strip .say-answer{color:#111827;background:#fff;border:2px solid #b91c1c;border-radius:12px;flex:220px;min-width:0;padding:7px 12px;font-size:1rem;font-weight:700;line-height:1.35}.say-strip .say-answer b{color:#fff;text-transform:uppercase;letter-spacing:.04em;vertical-align:1px;background:#1e3a8a;border-radius:999px;margin-right:8px;padding:1px 9px;font-size:.78rem;display:inline-block}.mirror-next.nav-bar .check-done{color:#fff;background:#16a34a;flex:2 1 0}.mirror-next.nav-bar .check-again{color:#92400e;background:#fef3c7;flex:1 1 0}.mirror-next.nav-bar .check-wait{color:#64748b;background:#f1f5f9}.say-strip .say-line .say-part{margin-right:10px;display:inline}.say-strip .say-line .say-part i{background:#ffffff38;border-radius:50%;place-items:center;width:1.25em;height:1.25em;margin-right:4px;font-size:.8em;font-style:normal;display:inline-grid}.zone-head.setup{justify-content:space-between;align-items:center;gap:8px;display:flex}.zone-head .head-clock{color:#3730a3;letter-spacing:0;text-transform:none;white-space:nowrap;background:#fff;border:1px solid #c7d2fe;border-radius:999px;margin:0;padding:2px 8px;font-size:.78rem;font-weight:800}.zone-head .head-clock.over{color:#b91c1c;background:#fee2e2;border-color:#fca5a5}.mirror,.mirror *{cursor:url(/brand/cursor-pointer.svg) 5 3,pointer}.mirror .pen-layer.on,.mirror .pen-layer.on *{cursor:url(/brand/cursor-marker.svg) 6 34,crosshair}.check-box .check-stop{color:#475569;background:#fff;border:1px solid #cbd5e1;width:100%;margin-top:8px;font-weight:700}.check-box .check-stop:hover{color:#b91c1c;border-color:#ef4444}.toolbox{background:linear-gradient(#fff8e6,#fff);border:1px solid #f6d58c;border-radius:12px;padding:8px}.tool-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;display:grid}.tool-btn{cursor:pointer;text-align:left;background:#fff;border:1px solid #f6d58c;border-radius:9px;align-items:center;gap:6px;padding:7px 8px;font-size:.82rem;font-weight:800;display:flex}.tool-btn:hover:not(:disabled){background:#fef3c7}.tool-btn.active{background:#fde68a;border-color:#f59e0b}.tool-btn:disabled{opacity:.45;cursor:default}.tool-asks{flex-wrap:wrap;gap:4px;margin-top:8px;display:flex}.tool-asks small{color:#64748b;width:100%;font-weight:700}.game-btn{background:#ede9fe}.tk-marks{flex-wrap:wrap}.tk-mark.ok{color:#fff;background:#16a34a;border-color:#16a34a}.tk-lines li.now{background:#fffbeb}.low-day{cursor:pointer;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;align-items:flex-start;gap:8px;margin:6px 0;padding:8px 10px;font-size:13px;line-height:1.35;display:flex}.low-day.on{background:#eef2ff;border-color:#a5b4fc}.low-day input{margin-top:2px}.reteach{background:#fff7ed;border:1px solid #fed7aa;border-radius:10px;flex-direction:column;gap:6px;margin:8px 0 4px;padding:8px 10px;display:flex}.reteach-h{color:#9a3412;font-size:13px;font-weight:800}.reteach-h small{color:#b45309;font-weight:600}.reteach-chips{flex-wrap:wrap;gap:6px;display:flex}.reteach-chips .chip{align-items:center;gap:4px;display:inline-flex}.reteach-chips .emoji-img{object-fit:contain;width:20px;height:20px}.rec-btn .rec-txt{text-align:left;flex-direction:column;line-height:1.2;display:flex}.rec-btn .rec-txt small{opacity:.75;font-size:11px;font-weight:500}.wm-live{white-space:pre-wrap;background:#fff;border:1px solid #dbe7f3;border-radius:10px;min-height:48px;padding:8px 10px;font-size:15px;line-height:1.45}.wm-row{justify-content:space-between;align-items:center;gap:8px;padding:4px 0;display:flex}.wm-row>span:first-child{flex-direction:column;font-size:13px;display:flex}.wm-row small{color:#64748b}.wm-picks{gap:4px;display:flex}.tk-mark.chosen{outline:2px solid #2563eb}.my-word-add{gap:6px;display:flex}.my-word-add input{flex:1;min-width:0}.speako-say{margin-right:6px;font-size:15px;text-decoration:none}.song-controls .btn-row{flex-wrap:wrap;gap:6px}.song-lines{margin:6px 0 0;padding-left:20px}.song-lines li{margin:2px 0;font-size:.92rem;font-weight:700}.song-lines .linkbtn{margin-right:4px;text-decoration:none}.imp-sec{background:#fff;border:1px solid #e3ebf5;border-radius:12px;margin-bottom:8px;padding:9px 10px 10px}.imp-h{color:#0f2a4a;align-items:center;gap:4px;margin:0 0 7px;font-size:.86rem;font-weight:900;display:flex}.imp-h small{color:#64748b;margin-left:4px;font-weight:700}.imp-note{color:#64748b;margin:-2px 0 7px;font-size:.76rem}.talk-gallery{gap:7px;display:grid}.tg-nav{align-items:center;gap:6px;display:flex}.tg-at{text-align:center;color:#334e68;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:.76rem;font-weight:800;overflow:hidden}.tg-tabs{gap:4px}.tg-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;max-height:230px;padding:2px;display:grid;overflow-y:auto}.tg-pic{cursor:pointer;text-align:center;background:#f6f9fc;border:2px solid #0000;border-radius:9px;gap:2px;padding:3px;display:grid}.tg-pic img{aspect-ratio:16/10;object-fit:cover;border-radius:6px;width:100%;display:block}.tg-pic span{color:#334e68;white-space:nowrap;text-overflow:ellipsis;font-size:.66rem;font-weight:800;overflow:hidden}.tg-pic.active{background:#e8f3ff;border-color:#1e90ff}.tg-pic:hover{background:#eef5ff}.cam-btn.big-me{font-size:15px;font-weight:900}.cam-btn.big-me.on{color:#fff;background:#1e90ff}.tip-pop{z-index:60;background:#fffbea;border:1px solid #fcd34d;border-left:5px solid #f59e0b;border-radius:14px;align-items:flex-start;gap:10px;max-width:min(420px,100vw - 32px);padding:12px 14px;animation:.35s cubic-bezier(.2,1.4,.4,1) both tip-in;display:flex;position:fixed;bottom:16px;left:16px;box-shadow:0 14px 36px #0f2a4a38}.tip-pop p{color:#3f2a14;margin:0;font-size:.92rem;line-height:1.45}.tip-pop p b{color:#b45309;text-transform:uppercase;letter-spacing:.04em;margin-bottom:2px;font-size:.78rem;display:block}.tip-pop .tp-ic{font-size:22px;line-height:1}.tip-pop .tp-x{color:#92400e;cursor:pointer;background:0 0;border:0;margin-left:auto;padding:0 2px;font-size:16px}@keyframes tip-in{0%{opacity:0;translate:0 16px}}.cockpit .zone-watch{--zp-y:8px;--zp-x:8px;padding:var(--zp-y) var(--zp-x)}@media (width>=768px){.cockpit .zone-watch{--zp-y:12px;--zp-x:12px}}@media (width>=1280px){.cockpit .zone-watch{--zp-y:14px;--zp-x:16px}}.cockpit .say-strip{margin:calc(-1 * var(--zp-y)) calc(-1 * var(--zp-x)) var(--zp-y);background:linear-gradient(135deg,#7f1d1d,#b91c1c);gap:0;box-shadow:0 6px 18px #b91c1c47}.cockpit .say-strip .say-line{box-shadow:none;background:0 0;border-radius:0;flex:340px;padding:12px 18px;font-size:clamp(1.05rem,1.5vw,1.35rem);line-height:1.4}.cockpit .say-strip .say-answer{border:0;border-left:4px solid #7f1d1d;border-radius:0;flex-wrap:wrap;align-items:center;gap:4px;padding:12px 16px;font-size:clamp(1rem,1.35vw,1.2rem);display:flex}.cockpit .say-strip .say-ask{border-radius:0;padding:12px 16px;font-size:1rem}.teach-first{text-align:left;background:#fff7ed;border:1px solid #fdba74;border-left:4px solid #f97316;border-radius:12px;gap:8px;width:100%;padding:10px 12px;font-size:.86rem;display:grid}.teach-first p{color:#431407;margin:0}.teach-first .btn-row{flex-wrap:wrap;gap:6px}.tp-back{z-index:200;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172a8c;place-items:center;padding:24px;animation:.2s tp-fade;display:grid;position:fixed;inset:0}.tp-box{background:#fff;border-radius:20px;flex-direction:column;gap:12px;width:min(1100px,100%);height:min(86vh,860px);padding:18px 20px;display:flex;box-shadow:0 30px 80px #00000059}.tp-head{align-items:center;gap:12px;display:flex}.tp-head h3{color:#0f2a4a;margin:0 auto 0 0;font-size:1.15rem}.tp-head input{width:min(260px,40vw);font:inherit;border:1px solid #cbd5e1;border-radius:10px;padding:8px 12px}.tp-tabs{flex-wrap:wrap;gap:6px}.tp-tabs small{opacity:.7;margin-left:2px}.tp-grid{flex:1;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));align-content:start;gap:12px;min-height:0;padding:2px;display:grid;overflow-y:auto}.tp-pic{cursor:pointer;text-align:center;background:#f6f9fc;border:3px solid #0000;border-radius:14px;gap:6px;padding:6px;transition:transform .12s,border-color .12s;display:grid}.tp-pic:hover{border-color:#bfdbfe;transform:translateY(-2px)}.tp-pic.active{background:#e8f3ff;border-color:#1e90ff}.tp-pic img{aspect-ratio:16/10;object-fit:cover;background:#e2e8f0;border-radius:10px;width:100%;display:block}.tp-pic span{color:#334e68;white-space:nowrap;text-overflow:ellipsis;font-size:.82rem;font-weight:800;overflow:hidden}@keyframes tp-fade{0%{opacity:0}}@media (width<=640px){.tp-back{padding:8px}.tp-box{height:92vh;padding:12px}.tp-grid{grid-template-columns:repeat(2,1fr)}}.talk-pick{justify-content:center;align-items:center;gap:8px;width:100%;min-height:40px;display:flex}.talk-pick img{aspect-ratio:16/10;object-fit:cover;border-radius:6px;width:54px}.talk-pick.active{justify-content:flex-start}.ec-back{z-index:210;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0f172a80;place-items:center;padding:16px;animation:.2s tp-fade;display:grid;position:fixed;inset:0}.ec-box{background:#f8fafc;border-radius:22px;flex-direction:column;width:min(560px,100%);max-height:min(86vh,760px);display:flex;overflow:hidden;box-shadow:0 30px 80px #00000059}.ec-head{background:#fff;border-bottom:1px solid #e2e8f0;align-items:center;gap:10px;padding:14px 18px;display:flex}.ec-head b{color:#0f2a4a;font-size:1.05rem}.ec-head .muted{margin-right:auto}.ec-chat{flex-direction:column;flex:1;gap:10px;padding:16px 18px 20px;display:flex;overflow-y:auto}.ec-q{align-items:flex-end;gap:8px;animation:.3s both ec-in;display:flex}.ec-q .ec-av{object-fit:contain;background:#e0f2fe;border-radius:50%;flex:none;width:30px;height:30px;padding:2px}.ec-q p{color:#1e293b;background:#fff;border:1px solid #e2e8f0;border-radius:16px 16px 16px 4px;max-width:85%;margin:0;padding:9px 13px;font-weight:700}.ec-a{justify-content:flex-end;animation:.25s both ec-in;display:flex}.ec-a p{color:#fff;background:#1e90ff;border-radius:16px 16px 4px;max-width:85%;margin:0;padding:8px 13px;font-weight:800}.ec-opts{flex-wrap:wrap;gap:6px;padding-left:38px;animation:.3s both ec-in;display:flex}.ec-opt{color:#1e3a8a;font:inherit;cursor:pointer;background:#fff;border:1.5px solid #bfdbfe;border-radius:999px;padding:7px 14px;font-weight:800}.ec-opt:hover:not(:disabled){background:#eff6ff}.ec-opt.on{background:#dbeafe;border-color:#1e90ff}.ec-opt.primary{color:#fff;background:#1e90ff;border-color:#1e90ff}.ec-opt:disabled{opacity:.5}.ec-skip{color:#64748b;font:inherit;cursor:pointer;background:0 0;border:0;padding:7px 6px;font-weight:700;text-decoration:underline}.ec-write input{min-width:0;font:inherit;border:1.5px solid #cbd5e1;border-radius:999px;flex:180px;padding:7px 14px}.ec-note{color:#92400e;margin:0 0 0 38px;font-size:.8rem}@keyframes ec-in{0%{opacity:0;translate:0 6px}}.cockpit .say-strip .say-script .say-part{flex-wrap:wrap;align-items:baseline;gap:2px 4px;margin-right:14px;display:inline-flex}.cockpit .say-strip .say-expect{color:#fde68a;font-style:normal;font-weight:700}.cockpit .say-strip{flex-wrap:nowrap;align-items:stretch}.cockpit .say-strip .say-line.say-script{flex-wrap:wrap;flex:auto;align-items:baseline;gap:4px 16px;font-size:clamp(.95rem,1.25vw,1.15rem);display:flex}.cockpit .say-strip .say-line.say-script>b{margin-right:4px}.cockpit .say-strip .say-script .say-part{margin-right:0}.cockpit .say-strip .say-answer{flex:0 auto;max-width:34%}@media (width<=900px){.cockpit .say-strip{flex-wrap:wrap}.cockpit .say-strip .say-answer{flex:100%;max-width:none}}.nav-group{gap:0;display:inline-flex}.nav-group .btn.nav-tool.icon{min-width:40px;padding:0 8px;font-size:17px}@media (width>=1280px){.tip-pop{max-width:240px}}@media (width>=768px) and (width<=1279px){.tip-pop{max-width:min(300px,40vw);bottom:76px}}.tip-pill{z-index:60;color:#92400e;font:inherit;cursor:pointer;background:#fffbea;border:1px solid #fcd34d;border-radius:999px;padding:7px 13px;font-size:.82rem;font-weight:800;position:fixed;bottom:16px;left:16px;box-shadow:0 8px 20px #0f2a4a2e}.cockpit .zone-setup .zone-scroll{padding-bottom:64px}.tip-pop{pointer-events:none}.tip-pop .tp-x{pointer-events:auto}.ec-speako{background:linear-gradient(135deg,#e0f2fe,#ede9fe);border-radius:50%;flex:none;place-items:center;width:46px;height:46px;display:grid;overflow:hidden}.ec-speako .speako{width:54px;height:54px}.ec-who{flex-direction:column;margin-right:auto;line-height:1.2;display:flex}.ec-who b{color:#0f2a4a;font-size:1.05rem}.ec-status{color:#16a34a;font-size:.78rem;font-weight:700}.ec-status:before{content:"";vertical-align:1px;background:#22c55e;border-radius:50%;width:7px;height:7px;margin-right:5px;display:inline-block}.ec-day{color:#64748b;letter-spacing:.02em;background:#e2e8f0;border-radius:999px;align-self:center;padding:3px 10px;font-size:.72rem;font-weight:800}.ec-group{flex-direction:column;gap:10px;display:flex}.ec-typing p{gap:4px;display:flex;padding:12px 14px!important}.ec-typing i{background:#94a3b8;border-radius:50%;width:7px;height:7px;animation:1s ease-in-out infinite ec-dot}.ec-typing i:nth-child(2){animation-delay:.15s}.ec-typing i:nth-child(3){animation-delay:.3s}@keyframes ec-dot{0%,60%,to{opacity:.5;transform:translateY(0)}30%{opacity:1;transform:translateY(-4px)}}.ec-hint{color:#64748b;align-self:center;font-size:.82rem;font-weight:700}.ec-bar{background:#fff;border-top:1px solid #e2e8f0;gap:8px;padding:10px 12px;display:flex}.ec-bar input{min-width:0;font:inherit;background:#f8fafc;border:1.5px solid #cbd5e1;border-radius:999px;flex:1;padding:9px 15px}.ec-bar input:focus{background:#fff;border-color:#1e90ff;outline:none;box-shadow:0 0 0 3px #1e90ff26}.ec-bar input:disabled{color:#94a3b8}.ec-send{color:#fff;min-width:44px;height:40px;font:inherit;cursor:pointer;background:#1e90ff;border:0;border-radius:999px;flex:none;padding:0 14px;font-weight:800}.ec-send:disabled{cursor:default;background:#cbd5e1}@media (prefers-reduced-motion:reduce){.ec-typing i{animation:none}}.end-ask-back{z-index:960;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0f172a8c;place-items:center;padding:16px;animation:.2s tp-fade;display:grid;position:fixed;inset:0}.end-ask{text-align:center;background:#fff;border-radius:22px;width:min(440px,100%);padding:22px 22px 18px;animation:.25s both ec-in;box-shadow:0 30px 80px #00000059}.end-ask-pic{object-fit:contain;width:96px;height:96px;margin:-4px auto 4px;display:block}.end-ask h2{color:#0f2a4a;margin:0 0 8px;font-size:1.3rem}.end-ask p{color:#334155;margin:0 0 18px;line-height:1.45}.end-ask-btns{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.end-ask-btns .btn{flex:130px}.heard-tag{border-radius:999px;margin-left:8px;padding:2px 10px;font-size:.82rem;font-weight:800;display:inline-block}.heard-tag.ok{color:#166534;background:#dcfce7}.heard-tag.no{color:#9a3412;background:#ffedd5}.nav-done-wrap{align-items:center;gap:6px;display:inline-flex}.nav-next small{opacity:.75;margin-left:2px;font-weight:700}.round-done{animation:1.6s ease-in-out infinite round-glow;background:#16a34a!important;border-color:#16a34a!important}.lesson-next.ready{animation:1.6s ease-in-out infinite round-glow}@keyframes round-glow{0%,to{box-shadow:0 0 #16a34a80}50%{box-shadow:0 0 0 7px #16a34a00}}@media (prefers-reduced-motion:reduce){.round-done,.lesson-next.ready{animation:none}}.join-notice .join-x{margin-left:4px;padding:2px 10px;font-size:1.05rem;line-height:1}.code-btn.waiting{box-shadow:inset 0 0 0 2px #f59e0b}.brief{z-index:30;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0f172a73;place-items:center;padding:14px;animation:.2s tp-fade;display:grid;position:absolute;inset:0}.brief-card{background:#fff;border-radius:18px;gap:8px;width:min(520px,100%);max-height:100%;padding:16px 18px;animation:.25s both ec-in;display:grid;overflow:auto;box-shadow:0 20px 50px #0000004d}.brief-part{color:#64748b;text-transform:uppercase;letter-spacing:.04em;font-size:.78rem;font-weight:800}.brief-card h3{color:#0f2a4a;margin:0;font-size:1.2rem;line-height:1.25}.brief-kind{color:#713f12;vertical-align:2px;background:#fde047;border-radius:999px;margin-right:4px;padding:1px 10px;font-size:.85rem;display:inline-block}.brief-say{color:#1e3a8a;background:#eff6ff;border-left:4px solid #1e90ff;border-radius:10px;padding:8px 12px;font-size:1.02rem;font-weight:700}.brief-how,.brief-goal{color:#334155;margin:0;font-size:.93rem;line-height:1.45}.brief-foot{justify-content:space-between;align-items:center;gap:10px;margin-top:2px;display:flex}.lf{--lf-ink:#102a43;--lf-muted:#627d98;--lf-blue:#1e90ff;--lf-blue-dark:#1565c0;--lf-blue-soft:#e7f4ff;--lf-gold:#ffd43b;--lf-green:#32c875;--lf-border:#dceaf6;--lf-shadow:0 24px 70px #1e66a621;min-height:100vh;color:var(--lf-ink);background:radial-gradient(circle at 5% 8%,#64b5f62e,#0000 25rem),radial-gradient(circle at 92% 22%,#ffd43b2e,#0000 24rem),linear-gradient(#fbfdff 0%,#f5fbff 60%,#fff 100%);font-family:DM Sans,system-ui,sans-serif;position:relative;overflow-x:hidden}.lf:before{content:"";pointer-events:none;opacity:.35;background-image:radial-gradient(#9cccf2 1px,#0000 1px);background-size:34px 34px;position:fixed;inset:0;-webkit-mask-image:linear-gradient(#000,#0000 65%);mask-image:linear-gradient(#000,#0000 65%)}.lf a{color:inherit;text-decoration:none}.lf .page-shell{width:min(1180px,100% - 40px);margin:0 auto;position:relative}.lf .site-header{justify-content:space-between;align-items:center;height:92px;display:flex}.lf .brand{letter-spacing:-.04em;align-items:center;gap:10px;font-family:Nunito,sans-serif;font-size:26px;font-weight:900;display:inline-flex}.lf .brand img{object-fit:contain;width:50px;height:50px}.lf .brand>span>span{color:var(--lf-blue)}.lf .header-pill{border:1px solid var(--lf-border);color:var(--lf-blue-dark);cursor:pointer;background:#fffc;border-radius:999px;align-items:center;gap:9px;padding:10px 15px;font-family:inherit;font-size:13px;font-weight:800;display:inline-flex;box-shadow:0 8px 24px #2a6b9d14}.lf .header-pill:hover{background:#fff}.lf .header-actions{align-items:center;gap:10px;display:flex}.lf .header-pill-primary{color:#fff;background:linear-gradient(135deg,#1e90ff,#1565c0);border-color:#0000;box-shadow:0 8px 22px #1565c047}.lf .header-pill-primary:hover{background:linear-gradient(135deg,#2b98ff,#1565c0)}.lf .header-pill i{background:var(--lf-green);border-radius:50%;width:8px;height:8px;animation:2s infinite lf-pulse;box-shadow:0 0 0 5px #32c87521}.lf .hero{grid-template-columns:1.05fr .95fr;align-items:center;gap:48px;min-height:650px;padding:40px 0 70px;display:grid}.lf .hero-copy{z-index:2;position:relative}.lf .eyebrow{color:var(--lf-blue-dark);letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:8px;font-size:13px;font-weight:800;display:inline-flex}.lf .eyebrow span{color:var(--lf-gold);font-size:19px}.lf h1{letter-spacing:-.06em;margin:18px 0 22px;font:900 clamp(54px,7vw,86px)/.98 Nunito,sans-serif}.lf h1 em{color:var(--lf-blue);white-space:nowrap;font-style:normal;position:relative}.lf h1 em:after{content:"";background:var(--lf-gold);opacity:.85;z-index:-1;border-radius:60% 40% 50% 50%;height:9px;position:absolute;bottom:-6px;left:3%;right:1%;transform:rotate(-1.5deg)}.lf .hero-lead{max-width:600px;color:var(--lf-muted);margin:0 0 28px;font-size:clamp(17px,2vw,20px);line-height:1.65}.lf .launch-card{border:1px solid var(--lf-border);background:#ffffffe6;border-radius:20px;align-items:center;gap:14px;max-width:555px;padding:17px 20px;display:flex;box-shadow:0 15px 38px #1b649e1a}.lf .launch-icon{background:var(--lf-blue-soft);border-radius:15px;flex:0 0 48px;place-items:center;height:48px;font-size:23px;display:grid}.lf .launch-card strong{font-size:15px}.lf .launch-card p{color:var(--lf-muted);margin:4px 0 0;font-size:13px}.lf .trust-row{color:#486581;flex-wrap:wrap;gap:18px;margin-top:24px;font-size:13px;font-weight:700;display:flex}.lf .trust-row span{align-items:center;gap:7px;display:flex}.lf .trust-row b{color:#fff;background:var(--lf-green);border-radius:50%;place-items:center;width:19px;height:19px;font-size:11px;display:grid}.lf .cta-row{flex-wrap:wrap;gap:12px;margin-bottom:22px;display:flex}.lf .lf-btn{cursor:pointer;letter-spacing:-.01em;border:none;border-radius:18px;justify-content:center;align-items:center;gap:8px;padding:17px 28px;font:900 19px Nunito,sans-serif;transition:transform .15s,box-shadow .15s;display:inline-flex}.lf .lf-btn:active{transform:translateY(2px)}.lf .lf-btn.primary{color:#fff;background:linear-gradient(135deg,#1e90ff,#1565c0);box-shadow:0 12px 0 -4px #0f4f9a,0 18px 34px #1565c04d}.lf .lf-btn.primary:hover{transform:translateY(-2px)}.lf .lf-btn.ghost{color:var(--lf-blue-dark);border:1px solid var(--lf-border);background:#fff;box-shadow:0 10px 26px #2a6b9d1a}.lf .lf-btn.gold{color:var(--lf-ink);background:var(--lf-gold);box-shadow:0 12px 0 -4px #e0b42a,0 18px 34px #0000001f}.lf .hero-visual{isolation:isolate;place-items:center;min-height:560px;display:grid;position:relative}.lf .mascot{object-fit:contain;z-index:3;filter:drop-shadow(0 28px 25px #0e52882e);width:min(440px,92%);max-height:550px;animation:4s ease-in-out infinite lf-float;position:relative}.lf .mascot-glow{aspect-ratio:1;width:430px;box-shadow:inset 0 0 0 20px #ffffff59, var(--lf-shadow);z-index:0;background:linear-gradient(145deg,#e0f3ff,#fff9d9);border:1px solid #64b5f640;border-radius:50%;position:absolute}.lf .floor-shadow{filter:blur(11px);z-index:1;background:#17487021;border-radius:50%;width:270px;height:40px;position:absolute;bottom:37px}.lf .orb{z-index:-1;border-radius:50%;animation:5s ease-in-out infinite lf-float;position:absolute}.lf .orb-one{background:#ffd43b6b;width:74px;height:74px;top:35px;right:30px}.lf .orb-two{background:#32c87542;width:44px;height:44px;animation-delay:-2s;bottom:70px;left:15px}.lf .speech-card{z-index:5;border:1px solid var(--lf-border);background:#fff;border-radius:17px;padding:12px 16px;font-family:Nunito,sans-serif;font-weight:900;animation:3s ease-in-out infinite lf-bob;position:absolute;box-shadow:0 14px 35px #19588b24}.lf .speech-card span{color:var(--lf-blue)}.lf .speech-card-one{top:100px;left:0;transform:rotate(-5deg)}.lf .speech-card-two{animation-delay:-1.4s;bottom:130px;right:-10px;transform:rotate(4deg)}.lf .features{padding:90px 0}.lf .section-heading{text-align:center;max-width:660px;margin:0 auto 42px}.lf .section-heading p,.lf .closing-kicker{color:var(--lf-blue);letter-spacing:.12em;text-transform:uppercase;margin:0 0 8px;font-size:12px;font-weight:900}.lf .section-heading h2,.lf .closing-card h2{letter-spacing:-.035em;margin:0;font:900 clamp(32px,5vw,48px)/1.08 Nunito,sans-serif}.lf .feature-grid{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}.lf .feature-card{border:1px solid var(--lf-border);background:#fff;border-radius:26px;padding:28px;transition:transform .25s,box-shadow .25s;box-shadow:0 16px 42px #1f5b8914}.lf .feature-card:hover{transform:translateY(-6px);box-shadow:0 24px 55px #1f5b8921}.lf .feature-icon{border-radius:17px;place-items:center;width:54px;height:54px;margin-bottom:22px;font-size:25px;display:grid}.lf .feature-blue .feature-icon{background:#e8f4ff}.lf .feature-gold .feature-icon{background:#fff6cf}.lf .feature-green .feature-icon{background:#e7faef}.lf .feature-card h3{margin:0 0 10px;font:900 20px Nunito,sans-serif}.lf .feature-card p{color:var(--lf-muted);margin:0;font-size:14px;line-height:1.7}.lf .closing-card{color:#fff;background:linear-gradient(135deg,#0d6bc6,#1e90ff 60%,#55b7ff);border-radius:38px;align-items:center;min-height:310px;margin:45px 0 80px;padding:55px 70px 55px 390px;display:flex;position:relative;overflow:hidden;box-shadow:0 30px 70px #1565c040}.lf .closing-card:before{content:"";border:50px solid #ffffff14;border-radius:50%;width:400px;height:400px;position:absolute;top:-210px;right:-130px}.lf .closing-card .closing-speako{object-fit:contain;filter:drop-shadow(0 20px 20px #00000024);width:340px;height:370px;position:absolute;bottom:-70px;left:30px;transform:rotate(-4deg)}.lf .closing-card>div{z-index:2;max-width:650px;position:relative}.lf .closing-kicker{color:#ffe477}.lf .closing-card p.closing-text{color:#ffffffd1;margin:17px 0 22px;line-height:1.6}.lf .star{color:var(--lf-gold);opacity:.8;position:absolute}.lf .star-one{font-size:28px;bottom:45px;right:50px;transform:rotate(12deg)}.lf .star-two{font-size:16px;top:30px;right:120px;transform:rotate(-18deg)}.lf footer{border-top:1px solid var(--lf-border);min-height:105px;color:var(--lf-muted);grid-template-columns:1fr auto 1fr;align-items:center;gap:20px;font-size:12px;display:grid}.lf .brand-small{gap:6px;font-size:18px}.lf .brand-small img{width:34px;height:34px}.lf .footer-note{text-align:right;color:var(--lf-blue-dark);font-weight:700}.lf .door{grid-template-columns:.9fr 1.1fr;align-items:center;gap:40px;min-height:calc(100vh - 92px);padding:10px 0 40px;display:grid}.lf .door-visual{isolation:isolate;place-items:center;min-height:420px;display:grid;position:relative}.lf .door-visual .mascot{width:min(330px,80%)}.lf .door-visual .mascot-glow{width:340px}.lf .door-card{border:1px solid var(--lf-border);width:min(520px,100%);box-shadow:var(--lf-shadow);text-align:center;z-index:2;background:#fffffff0;border-radius:30px;justify-self:center;padding:34px 32px;position:relative}.lf .door-card h1{margin:6px 0 8px;font-size:clamp(36px,5vw,48px)}.lf .door-card .hero-lead{margin:0 auto 22px;font-size:16px}.lf .door-card label{text-align:left;color:var(--lf-ink);flex-direction:column;gap:6px;margin-bottom:14px;font-size:14px;font-weight:800;display:flex}.lf .door-card input{border:2px solid var(--lf-border);background:#fff;border-radius:14px;width:100%;padding:14px 16px;font:600 17px DM Sans,sans-serif}.lf .door-card input:focus{border-color:var(--lf-blue);outline:none;box-shadow:0 0 0 4px #1e90ff1f}.lf .door-card .lf-btn{width:100%;margin-top:4px}.lf .google-button{color:#3c4043;cursor:pointer;background:#fff;border:1px solid #dadce0;border-radius:14px;justify-content:center;align-items:center;gap:12px;width:100%;min-height:56px;margin-top:12px;font:700 16px DM Sans,sans-serif;text-decoration:none;transition:background .15s,box-shadow .15s,transform .15s;display:inline-flex;box-shadow:0 1px 2px #3c404329}.lf .google-button:hover{background:#f8fafd;transform:translateY(-1px);box-shadow:0 2px 6px #3c404338}.lf .google-button:active{transform:translateY(1px)}.lf .google-button:focus-visible{outline-offset:3px;outline:3px solid #4285f473}.lf .google-button.disabled{opacity:.55;cursor:not-allowed;pointer-events:none}.lf .google-mark{flex:0 0 20px;width:20px;height:20px}.lf .google-note{color:#667085;margin:10px 0 0;font-size:12px;line-height:1.4}.lf .google-divider{color:#98a2b3;text-transform:lowercase;align-items:center;gap:12px;margin:18px 0 14px;font-size:12px;font-weight:800;display:flex}.lf .google-divider:before,.lf .google-divider:after{content:"";background:var(--lf-border);flex:1;height:1px}.lf .door-card .lf-error{color:#d9480f;margin:0 0 12px;font-weight:800}.lf .door-link{color:var(--lf-blue-dark);cursor:pointer;background:0 0;border:none;margin-top:18px;font-family:inherit;font-size:14px;font-weight:800;display:inline-block}.lf .keypad-wrap{gap:18px}.lf .code-dots span{border-color:#cfe4f7;border-radius:16px;font-family:Nunito,sans-serif}.lf .code-dots span.filled{border-color:var(--lf-blue);color:var(--lf-blue)}.lf .keypad button{border:1px solid var(--lf-border);font-family:Nunito,sans-serif;box-shadow:0 6px #cfe4f7}.lf .keypad button:active{box-shadow:0 2px #cfe4f7}.lf .keypad .key-go{background:var(--lf-blue);color:#fff;border-color:var(--lf-blue);box-shadow:0 6px #1565c0}.lf .keypad .key-back{background:#f2f8fd}.lf .keypad-error{color:#d9480f}.lf .door-card .keypad{grid-template-columns:repeat(3,clamp(62px,9.5vh,92px));gap:12px}.lf .door-card .keypad button{border-radius:20px;font-size:clamp(1.5rem,4vh,2.3rem)}.lf .door-card .code-dots span{width:clamp(44px,6.5vh,60px);height:clamp(50px,7.5vh,66px)}.lf .door-card .keypad-wrap{gap:14px}.lf .welcome{text-align:center;place-items:center;min-height:calc(100vh - 92px);padding-bottom:40px;display:grid}.lf .welcome .door-visual{min-height:380px}.lf .welcome h1{margin:0 0 8px;font-size:clamp(44px,7vw,72px)}.lf .welcome .hero-lead{margin:0 auto 26px}.lf .waiting-dots{gap:8px;margin-top:10px;display:inline-flex}.lf .waiting-dots i{background:var(--lf-blue);border-radius:50%;width:12px;height:12px;animation:1.2s ease-in-out infinite lf-bob}.lf .waiting-dots i:nth-child(2){background:var(--lf-gold);animation-delay:.2s}.lf .waiting-dots i:nth-child(3){background:var(--lf-green);animation-delay:.4s}@keyframes lf-float{0%,to{transform:translateY(0)}50%{transform:translateY(-12px)}}@keyframes lf-pulse{0%,to{box-shadow:0 0 0 5px #32c87521}50%{box-shadow:0 0 0 9px #32c87500}}@media (width<=900px){.lf .hero{text-align:center;grid-template-columns:1fr;padding-top:65px}.lf .hero-copy{flex-direction:column;align-items:center;display:flex}.lf .cta-row{justify-content:center}.lf .hero-visual{min-height:520px}.lf .feature-grid{grid-template-columns:1fr;max-width:620px;margin:auto}.lf .closing-card{text-align:center;justify-content:center;padding:55px 40px 380px}.lf .closing-card .closing-speako{bottom:-60px;left:50%;transform:translate(-50%)rotate(-4deg)}.lf footer{text-align:center;grid-template-columns:1fr;justify-items:center;padding:30px 0}.lf .footer-note{text-align:center}.lf .door{grid-template-columns:1fr;gap:0}.lf .door-visual{min-height:230px}.lf .door-visual .mascot{width:190px}.lf .door-visual .mascot-glow{width:210px}.lf .door-visual .speech-card{display:none}}@media (width<=560px){.lf .page-shell{width:min(100% - 26px,1180px)}.lf .site-header{height:78px}.lf .brand{font-size:21px}.lf .brand img{width:42px;height:42px}.lf .header-pill{padding:8px 11px;font-size:11px}.lf .header-actions{gap:6px}.lf .header-actions .header-pill{white-space:nowrap}.lf .header-actions .header-pill i{display:none}}@media (width<=420px){.lf .site-header:has(.header-actions) .brand>span{display:none}.lf .hero{gap:20px;min-height:auto;padding:55px 0 40px}.lf h1{font-size:clamp(42px,13vw,64px)}.lf h1 em{white-space:normal}.lf .hero-lead{font-size:16px}.lf .launch-card{text-align:left;padding:14px}.lf .trust-row{justify-content:center;gap:12px}.lf .hero-visual{min-height:410px}.lf .mascot{width:310px;max-height:400px}.lf .mascot-glow{width:315px}.lf .speech-card{padding:9px 12px;font-size:12px}.lf .speech-card-one{top:70px;left:-2px}.lf .speech-card-two{bottom:90px;right:-2px}.lf .features{padding:65px 0}.lf .feature-card{padding:23px}.lf .closing-card{border-radius:28px;margin-bottom:50px;padding:45px 24px 310px}.lf .closing-card .closing-speako{width:280px;height:310px}.lf .lf-btn{width:100%}.lf .door-card{border-radius:24px;padding:22px 16px}.lf .door{min-height:auto;padding-top:0}.lf .door .door-visual{display:none}.lf .door-card h1{font-size:34px}.lf .door-card .hero-lead{margin-bottom:14px}}@media (prefers-reduced-motion:reduce){.lf *,.lf :before,.lf :after{animation-duration:.01ms!important;animation-iteration-count:1!important}}.lf .trophy{color:#102a43;background:#fff;border:1px solid #ffe08a;border-radius:999px;align-items:baseline;gap:6px;margin-bottom:14px;padding:8px 16px;font:800 16px Nunito,sans-serif;display:inline-flex}.lf .trophy small{color:#627d98;font-weight:700}.lf .footer-official{font-size:13px}.lf .footer-official a{color:inherit;text-decoration:none}.lf .footer-official a:hover{text-decoration:underline}.lf .speako.mascot{aspect-ratio:1100/1240;height:auto;animation:none}.lf .speako svg{display:block}.lf .closing-card .closing-speako{aspect-ratio:1100/1240;height:auto}.lf .lang-pick{border:1px solid var(--lf-border);height:40px;color:var(--lf-blue-dark);cursor:pointer;white-space:nowrap;background:#ffffffd9;border-radius:999px;flex:none;align-items:center;gap:6px;padding:0 12px;font-size:13px;font-weight:800;position:relative;box-shadow:0 8px 24px #2a6b9d14;flex-direction:row!important;margin:0!important;display:inline-flex!important}.lf .lang-pick select{opacity:0;cursor:pointer;width:100%;height:100%;font-size:16px;position:absolute;inset:0}.lf .lang-pick .lang-code{display:none}.lf .lang-pick .lang-caret{opacity:.7;font-size:10px}.lf .lang-pick:focus-within{box-shadow:0 0 0 3px #1e90ff40}.lf .header-nav{color:var(--lf-blue-dark);gap:22px;margin-inline:auto 22px;font-size:14px;font-weight:800;display:flex}.lf .header-nav a:hover{color:var(--lf-blue)}.lf .levels .levels-lead{color:var(--lf-muted);letter-spacing:0;text-transform:none;margin:14px auto 0;font:500 16px/1.6 DM Sans,sans-serif}.lf .level-grid{grid-template-columns:repeat(5,1fr);gap:16px;display:grid}.lf .level-card{flex-direction:column;gap:8px;padding:22px;display:flex}.lf .level-card h3{margin:4px 0 0;font-size:22px}.lf .level-top{justify-content:space-between;align-items:center;gap:8px;display:flex}.lf .level-top .feature-icon{margin:0}.lf .level-age{background:var(--lf-blue-soft);color:var(--lf-blue-dark);white-space:nowrap;border-radius:999px;padding:5px 10px;font-size:12px;font-weight:900}.lf .level-cefr{margin:0;font-weight:800;color:var(--lf-blue-dark)!important;font-size:12.5px!important;line-height:1.4!important}.lf .level-facts{border-block:1px dashed var(--lf-border);color:var(--lf-muted);grid-template-columns:1fr 1fr;gap:6px 10px;margin:6px 0;padding:10px 0;font-size:12.5px;list-style:none;display:grid}.lf .level-facts b{color:var(--lf-ink);font:900 22px Nunito,sans-serif;display:block}.lf .levels-note{text-align:center;color:var(--lf-muted);margin:22px 0 0;font-size:14px}.lf .faq-list{gap:12px;max-width:820px;margin:0 auto;display:grid}.lf .faq-item{border:1px solid var(--lf-border);background:#fff;border-radius:18px;padding:0 22px;box-shadow:0 10px 28px #1f5b890f}.lf .faq-item summary{cursor:pointer;justify-content:space-between;align-items:center;gap:14px;padding:18px 0;font:800 17px Nunito,sans-serif;list-style:none;display:flex}.lf .faq-item summary::-webkit-details-marker{display:none}.lf .faq-item summary:after{content:"+";color:var(--lf-blue);font-size:22px;transition:transform .2s}.lf .faq-item[open] summary:after{transform:rotate(45deg)}.lf .faq-item p{color:var(--lf-muted);margin:0 0 18px;line-height:1.7}.lf footer .footer-links{color:var(--lf-blue-dark);flex-wrap:wrap;grid-column:1/-1;justify-content:center;gap:8px 20px;padding-top:18px;font-weight:700;display:flex}.lf footer .footer-links a:hover{color:var(--lf-blue)}.lf .blog{padding:30px 0 70px}.lf .blog-head{text-align:center;max-width:720px;margin:20px auto 40px}.lf .blog-head h1{margin:0 0 12px;font:900 clamp(36px,5vw,52px)/1.1 Nunito,sans-serif}.lf .blog-list{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:18px;display:grid}.lf .blog-card{border:1px solid var(--lf-border);background:#fff;border-radius:22px;flex-direction:column;gap:8px;padding:24px;transition:transform .2s,box-shadow .2s;display:flex;box-shadow:0 12px 32px #1f5b8912}.lf .blog-card:hover{transform:translateY(-4px);box-shadow:0 20px 44px #1f5b891f}.lf .blog-card h2{margin:0;font:900 21px/1.25 Nunito,sans-serif}.lf .blog-card p{color:var(--lf-muted);margin:0;font-size:14.5px;line-height:1.6}.lf .blog-meta{color:var(--lf-blue-dark);font-size:12.5px;font-weight:800}.lf .blog-more{color:var(--lf-blue);margin-top:auto;font-size:14px;font-weight:800}.lf .blog-post{border:1px solid var(--lf-border);max-width:760px;box-shadow:var(--lf-shadow);background:#fff;border-radius:28px;margin:10px auto;padding:40px clamp(20px,5vw,56px);font-size:16.5px;line-height:1.75}.lf .blog-post h1{margin:12px 0 14px;font:900 clamp(30px,4.5vw,44px)/1.15 Nunito,sans-serif}.lf .blog-post h2{margin:32px 0 8px;font:900 24px/1.25 Nunito,sans-serif}.lf .blog-post .blog-lead{color:var(--lf-muted);font-size:18.5px}.lf .blog-post ul{padding-inline-start:22px}.lf .blog-post li{margin:6px 0}.lf .blog-post a{color:var(--lf-blue-dark);text-decoration:underline}.lf .blog-cta{background:var(--lf-blue-soft);text-align:center;border-radius:22px;margin-top:36px;padding:26px}.lf .blog-cta h2{margin-top:0}.lf .blog-cta a.lf-btn{color:#fff;text-decoration:none}@media (width<=1100px){.lf .level-grid{grid-template-columns:repeat(3,1fr)}}@media (width<=900px){.lf .header-nav{display:none}.lf .level-grid{grid-template-columns:repeat(2,1fr);max-width:680px;margin:auto}}@media (width<=560px){.lf .level-grid{grid-template-columns:1fr}.lf .lang-pick{gap:4px;height:34px;padding:0 9px;font-size:11px}.lf .lang-pick .lang-name{display:none}.lf .lang-pick .lang-code{display:inline}.lf .faq-item summary{font-size:15.5px}}[dir=rtl] .lf .door-card label{text-align:right}[dir=rtl] .lf .footer-note{text-align:left}[dir=rtl] .lf .launch-card,[dir=rtl] .lf .hero-copy,[dir=rtl] .lf .feature-card,[dir=rtl] .lf .faq-item{text-align:right}@media (width<=900px){[dir=rtl] .lf .hero-copy{text-align:center}}:root:not([lang=en]) .lf h1 em{white-space:normal}:root[lang=ar] .lf *,:root[lang=th] .lf h1,:root[lang=th] .lf h2,:root[lang=zh] .lf h1,:root[lang=ja] .lf h1,:root[lang=ko] .lf h1{letter-spacing:0!important}:root[lang=ar] .lf{font-family:Segoe UI,Tahoma,Noto Sans Arabic,system-ui,sans-serif}:root[lang=ar] .lf h1,:root[lang=ar] .lf h2,:root[lang=ar] .lf h3{font-family:Segoe UI,Tahoma,Noto Sans Arabic,system-ui,sans-serif;line-height:1.3}:root[lang=th] .lf h1,:root[lang=th] .lf h2{line-height:1.35}@media (width<=560px){.lf .header-actions .pill-start{display:none}}.lf .level-name{justify-content:space-between;align-items:baseline;gap:8px;margin-top:4px;display:flex}.lf .level-name h3{white-space:nowrap;margin:0;font-size:20px}.lf .level-min{color:var(--lf-blue-dark);white-space:nowrap;flex:none;font-size:13px;font-weight:800}.lf .site-pic{object-fit:cover;background:var(--lf-blue-soft,#e8f4ff);width:100%;display:block}.lf .photo-visual{min-height:0;padding:30px 0 40px}.lf .photo-frame{z-index:2;aspect-ratio:5/4;width:100%;box-shadow:var(--lf-shadow), 0 30px 70px #1565c02e;border:8px solid #fff;border-radius:34px;position:relative;overflow:hidden;transform:rotate(1.2deg)}.lf .photo-frame .site-pic{object-position:70% 50%;height:100%}.lf .photo-speako{z-index:4;aspect-ratio:1100/1240;filter:drop-shadow(0 16px 18px #0e528838);width:168px;height:auto;position:absolute;bottom:-6px;left:-34px}.lf .photo-visual .speech-card-one{top:8px;left:auto;right:24px}.lf .photo-visual .speech-card-two{bottom:6px;left:120px;right:auto}.lf .feature-card{overflow:hidden}.lf .feature-card .card-pic{aspect-ratio:16/10;width:calc(100% + 56px);margin:-28px -28px 0}.lf .feature-card .card-pic+.feature-icon{margin-top:-27px;position:relative;box-shadow:0 0 0 5px #fff}.lf .level-card .card-pic{aspect-ratio:4/3;width:calc(100% + 44px);margin:-22px -22px 6px}.lf .teach-card{overflow:hidden}.lf .teach-card .teach-pic{aspect-ratio:4/3;border-radius:20px;flex:none;width:240px}.lf .teach-card>div{flex:280px}.lf .blog-card{overflow:hidden}.lf .blog-card .card-pic{aspect-ratio:16/9;width:calc(100% + 48px);margin:-24px -24px 6px}.lf .blog-post .blog-cover{aspect-ratio:16/9;border-radius:20px;margin:6px 0 22px}.lf .blog-head .not-found-pic{aspect-ratio:1;border-radius:24px;width:min(320px,80%);margin:0 auto 18px}.lf .door-visual.photo-visual .photo-frame{aspect-ratio:4/3;max-width:520px}@media (width<=900px){.lf .photo-visual{width:min(560px,100%);margin:0 auto}.lf .teach-card{text-align:center;flex-direction:column;align-items:stretch}.lf .teach-card .teach-pic{width:100%;max-height:260px}.lf .teach-card .lf-btn{align-self:center}}@media (width<=560px){.lf .photo-speako{width:120px;bottom:0;left:-10px}.lf .photo-visual .speech-card-two{left:96px}.lf .feature-card .card-pic{width:calc(100% + 46px);margin:-23px -23px 0}.lf .door-visual.photo-visual{display:none}}.lf .price-badge{z-index:6;position:absolute;top:6px;left:-14px}.lf .price-round{cursor:pointer;color:#102a43;background:radial-gradient(circle at 30% 25%,#ffe680,#ffc93c 60%,#f5a800);border:5px solid #fff;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;gap:0;width:128px;height:128px;font-family:Nunito,sans-serif;transition:transform .2s;animation:3.2s ease-in-out infinite lf-bob;display:flex;transform:rotate(-8deg);box-shadow:0 16px 34px #f5a80059,0 4px 10px #102a431f}.lf .price-round:hover,.lf .price-badge.open .price-round{transform:rotate(0)scale(1.05)}.lf .price-round small{text-transform:uppercase;letter-spacing:.06em;font-size:12px;font-weight:800}.lf .price-round b{letter-spacing:-.02em;font-size:30px;font-weight:900;line-height:1.05}.lf .price-round span{font-size:13px;font-weight:800}.lf .price-pop{border:1px solid var(--lf-border);text-align:left;background:#fff;border-radius:20px;width:min(300px,82vw);padding:16px;font-size:14px;position:absolute;top:calc(100% + 10px);left:0;box-shadow:0 24px 60px #102a4338}.lf .price-pop strong{margin-bottom:8px;font:900 17px Nunito,sans-serif;display:block}.lf .price-pop ul{gap:6px;margin:0 0 8px;padding:0;list-style:none;display:grid}.lf .price-pop li{background:#f6fbff;border-radius:12px;justify-content:space-between;align-items:center;gap:10px;padding:8px 10px;display:flex}.lf .price-pop li.popular{background:#fff6d6;box-shadow:inset 0 0 0 2px #ffe08a}.lf .price-pop li span,.lf .price-pop li b{flex-direction:column;display:flex}.lf .price-pop li b{text-align:right;font:900 16px Nunito,sans-serif}.lf .price-pop small{color:var(--lf-muted);font-size:12px;font-weight:600}.lf .price-pop .price-trial{color:var(--lf-green-dark,#1f8a4c);margin:4px 0 10px;font-weight:800}.lf .price-pop .lf-btn{width:100%;padding:12px 16px;font-size:16px}@media (width<=560px){.lf .price-badge{top:0;left:-6px}.lf .price-round{width:104px;height:104px}.lf .price-round b{font-size:24px}}.level-time{color:#1d4ed8;margin:6px 0 0;font-size:14px;font-weight:800}.lf .blog-faq{gap:10px;margin-top:30px;display:grid}.lf .blog-faq details{border:1px solid var(--lf-border,#e2e8f0);background:#fff;border-radius:16px;padding:12px 16px}.lf .blog-faq summary{cursor:pointer;color:var(--lf-ink,#0f2a4a);font-weight:800}.lf .blog-faq details p{margin:8px 0 0}.lf .blog-related{margin-top:36px}.lf .blog-related .blog-list{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.lf .blog-card h3{margin:0;font:900 18px/1.3 Nunito,sans-serif}.lf .guides .guides-note{color:var(--lf-muted,#64748b);margin-top:6px;font-size:14px;display:block}.lf .guides-grid{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}.lf .guide-card{color:var(--lf-ink,#0f2a4a);border:1px solid var(--lf-border,#e2e8f0);background:#fff;border-radius:22px;flex-direction:column;text-decoration:none;transition:transform .2s,box-shadow .2s;display:flex;overflow:hidden;box-shadow:0 14px 34px #102a4314}.lf .guide-card:hover{transform:translateY(-4px);box-shadow:0 20px 40px #102a4324}.lf .guide-pic{aspect-ratio:16/9;object-fit:cover;width:100%;display:block}.lf .guide-body{flex-direction:column;flex:1;gap:10px;padding:16px 18px 18px;display:flex}.lf .guide-body b{font:900 18px/1.3 Nunito,sans-serif}.lf .guide-read{color:var(--lf-blue,#1e90ff);margin-top:auto;font-weight:800}.lf .guides-all{text-align:center;margin-top:22px}@media (width<=860px){.lf .guides-grid{grid-template-columns:1fr;gap:12px}.lf .guide-card{border-radius:18px;flex-direction:row;align-items:stretch}.lf .guide-pic{aspect-ratio:auto;flex:none;width:34%;max-width:150px;height:auto;min-height:96px}.lf .guide-body{gap:6px;padding:12px 14px}.lf .guide-body b{font-size:16px}}@media (prefers-reduced-motion:reduce){.lf .guide-card{transition:none}.lf .guide-card:hover{transform:none}}.task{touch-action:none;-webkit-user-select:none;user-select:none;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.task button{touch-action:none;-webkit-tap-highlight-color:transparent;font-family:Nunito,system-ui,sans-serif}.scene{width:100%;height:100%;position:relative;overflow:hidden}.task-scene{justify-content:flex-start}.task-scene .scene-wrap{flex:none;width:100%;height:82%;position:relative}.task-scene.placing .scene-wrap{height:80%}.cq-probe{visibility:hidden;pointer-events:none;width:100cqmin;height:0;position:absolute}.scene-item{z-index:2}.scene-room{background:linear-gradient(#fff4e3 0 64%,#e9c9a3 64% 100%)}.scene-room:after{content:"";background:#d4a87a;height:1.2cqmin;position:absolute;top:64%;left:0;right:0}.scene-park{background:linear-gradient(#cfeaff 0 55%,#9fe08a 55% 100%)}.scene-zoo{background:linear-gradient(#d8f0ff 0 52%,#c7e59a 52% 100%)}.scene-beach{background:linear-gradient(#bfe6ff 0 45%,#6cc4f0 45% 62%,#f7e2a8 62% 100%)}.scene-classroom{background:linear-gradient(#eef6ff 0 66%,#d9c2a5 66% 100%)}.scene-kitchen{background:linear-gradient(#fff9ec 0 60%,#cfe3e8 60% 100%)}.scene-street{background:linear-gradient(#d6ecff 0 50%,#d9d9d9 50% 54%,#8f96a3 54% 86%,#d9d9d9 86% 100%)}.scene-farm{background:linear-gradient(#cfeaff 0 50%,#a8d97f 50% 100%)}.scene-garden{background:linear-gradient(#d9f1ff 0 58%,#8fd47a 58% 100%)}.scene-snow{background:linear-gradient(#dcecff 0 55%,#f7fbff 55% 100%)}.scene-space{background:radial-gradient(circle at 30% 30%,#3b3f8f 0,#1b1d4a 55%,#0d0e2b 100%)}.scene-story{background:radial-gradient(at 50% 45%,#fff 0 35%,#fff6df 75%,#ffeec4 100%)}.scene-item{cursor:pointer;background:0 0;border:none;place-items:center;padding:0;line-height:1;display:grid;position:absolute;translate:-50% -50%}.scene-emoji{filter:drop-shadow(0 .8cqmin .8cqmin #00000026);display:block}.scene-item.found .scene-emoji{animation:.8s ease-in-out bounce-big}.scene-item .item-label{font-size:2.6cqmin;bottom:-1.2em}.placed{pointer-events:none;filter:drop-shadow(0 .6cqmin .6cqmin #00000038);line-height:1;position:absolute;translate:-50% -50%}.placed.ok{animation:.45s cubic-bezier(.3,1.5,.5,1) settle}.placed.try{z-index:6;filter:drop-shadow(0 0 1.4cqmin #ef4444f2);animation:.45s try-shake,1.8s ease-in forwards try-fade}@keyframes try-shake{25%{transform:translate(-1.2cqmin)}75%{transform:translate(1.2cqmin)}}@keyframes settle{0%{opacity:.6;scale:1.25}to{opacity:1;scale:1}}@keyframes try-fade{0%,55%{opacity:1}to{opacity:0}}.target-hint{pointer-events:none;border:.45cqmin dashed #1e90ff80;border-radius:50%;width:9cqmin;height:9cqmin;position:absolute;translate:-50% -50%}.target-hint.next{background:#22c55e1f;border:.6cqmin solid #22c55e;animation:1.2s ease-in-out infinite hint-pulse}.tray{background:#fff;border:.3cqmin solid #e3edf7;border-radius:99cqmin;justify-content:center;align-items:center;gap:3cqmin;min-width:30%;height:15%;padding:0 3cqmin;display:flex;position:absolute;bottom:2.5%;left:50%;translate:-50%;box-shadow:0 1cqmin 3cqmin #102a4324}.tray-item{cursor:grab;background:#f4f8fd;border:none;border-radius:50%;place-items:center;width:12cqmin;height:12cqmin;font-size:8cqmin;line-height:1;transition:transform .15s,background .15s;display:grid;position:relative}.tray-item:hover{background:#eaf3ff;transform:translateY(-.6cqmin)}.tray-item:active{cursor:grabbing}.tray-item .item-label{bottom:-.9em}.tray-done{color:#16a34a;font:800 4.5cqmin Nunito,sans-serif}.drag-ghost{pointer-events:none;z-index:10;filter:drop-shadow(0 2cqmin 2cqmin #00000047);font-size:11cqmin;line-height:1;position:absolute;translate:-50% -50%;scale:1.08}.task-match{flex-direction:row;justify-content:space-between;padding:0 8%}.match-col{z-index:2;flex-direction:column;justify-content:space-around;width:26%;height:100%;display:flex}.match-col.left{align-items:flex-start}.match-col.right{align-items:flex-end}.match-pic,.match-word{cursor:pointer;background:#fff;border:.5cqmin solid #dceaf6;border-radius:3cqmin;box-shadow:0 .8cqmin #cfe4f7}.match-pic{place-items:center;width:15cqmin;height:12cqmin;font-size:8.5cqmin;line-height:1;display:grid}.match-pic.sel{border-color:#1e90ff;box-shadow:0 0 0 1cqmin #1e90ff40}.match-word{color:#102a43;min-width:22cqmin;padding:1.8cqmin 3cqmin;font-size:5.2cqmin;font-weight:900}.match-pic.linked,.match-word.linked{border-color:#9cc8f0}.match-lines{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.match-lines line{stroke:#ef4444;stroke-width:6px;stroke-linecap:round}.match-lines line.ok{stroke:#22c55e}.task-circle{cursor:crosshair}.circle-opt{pointer-events:none;border-radius:50%;flex-direction:column;align-items:center;gap:1cqmin;padding:3cqmin;display:flex;position:absolute;top:50%;translate:-50% -50%}.circle-emoji{font-size:16cqmin;line-height:1}.circle-word{color:#102a43;background:#fff;border-radius:2.5cqmin;padding:1cqmin 3cqmin;font:900 8cqmin Nunito,sans-serif}.circle-word.small{font-size:4.5cqmin}.circle-opt.ok>*{animation:.8s ease-in-out bounce-big}.ink{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.ink polyline{fill:none;stroke:#1e90ff;stroke-width:7px;stroke-linecap:round;stroke-linejoin:round}.ink polyline.ok{stroke:#22c55e}.ink polyline.try{stroke:#ef4444}.task-spell{gap:4cqmin}.spell-pic{filter:drop-shadow(0 1cqmin 1cqmin #0000001f);font-size:22cqmin;line-height:1}.spell-pic.ok{animation:.9s ease-in-out bounce-big}.spell-slots{gap:2cqmin;display:flex}.spell-slot{color:#1565c0;background:#ffffffb3;border:.6cqmin dashed #9cc8f0;border-radius:2.5cqmin;place-items:center;width:11cqmin;height:13cqmin;font:900 8cqmin Nunito,sans-serif;display:grid}.spell-slot.filled{background:#fff;border-style:solid}.spell-slots.ok .spell-slot{color:#16a34a;border-color:#22c55e}.spell-slots.try .spell-slot{border-color:#ef4444}.spell-tiles{flex-wrap:wrap;justify-content:center;gap:2.5cqmin;display:flex}.spell-tile{color:#102a43;cursor:pointer;background:#ffd43b;border:none;border-radius:2.5cqmin;width:11cqmin;height:11cqmin;font:900 7cqmin Nunito,sans-serif;box-shadow:0 1cqmin #e0b42a}.spell-tile:active{translate:0 .6cqmin;box-shadow:0 .4cqmin #e0b42a}.task-colour{justify-content:space-between;padding:3cqmin 0}.colour-stage{flex:1;place-items:center;width:100%;min-height:0;display:grid;position:relative}.colour-book{aspect-ratio:1;touch-action:none;height:100%;max-height:72cqh}.colour-book .part-outline{stroke:#1f2340;stroke-width:1.4px;stroke-linejoin:round;cursor:crosshair}.colour-book .paint polyline{fill:none;stroke-width:9px;stroke-linecap:round;stroke-linejoin:round}.colour-book .pic-details{fill:none;stroke:#1f2340;stroke-width:1.6px;stroke-linecap:round;pointer-events:none}.colour-shapes{flex-wrap:wrap;flex:1;justify-content:center;align-items:center;gap:4cqmin;padding:0 4cqmin;display:flex}.colour-shape{cursor:pointer;background:0 0;border:none;width:24cqmin;height:24cqmin;padding:0}.shape-svg{width:100%;height:100%}.colour-check{background:#ffffffeb;border-radius:2cqmin;margin:0;padding:1.5cqmin 2.5cqmin;font:700 3cqmin Nunito,sans-serif;list-style:none;position:absolute;top:2cqmin;right:2cqmin}.colour-check li.ok{color:#16a34a}.colour-check li.try{color:#dc2626}.palette{background:#ffffffe6;border-radius:4cqmin;flex-wrap:wrap;justify-content:center;gap:2cqmin;padding:2cqmin 3cqmin;display:flex}.crayon{background:var(--c,#fff);cursor:pointer;border:.6cqmin solid #fff;border-radius:50%;width:9cqmin;height:9cqmin;box-shadow:0 0 0 .4cqmin #dceaf6}.crayon.sel{transform:scale(1.18);box-shadow:0 0 0 .8cqmin #102a43}.crayon.eraser{background:#fff;font-size:5cqmin;line-height:1}.task-draw{justify-content:space-between;gap:2cqmin;padding:2.5cqmin 0}.draw-prompt{color:#102a43;background:#fff;border-radius:3cqmin;padding:1cqmin 4cqmin;font:900 5.5cqmin Nunito,sans-serif}.draw-pad{touch-action:none;cursor:crosshair;background:#fff;border-radius:3cqmin;flex:1;width:88%;min-height:0;box-shadow:inset 0 0 0 .5cqmin #dceaf6}.draw-pad svg{width:100%;height:100%;display:block}.draw-pad polyline{fill:none;stroke-width:6px;stroke-linecap:round;stroke-linejoin:round}.task-story{justify-content:flex-start}.task-story .scene{height:74%}.story-text{color:#102a43;text-align:center;background:#fff;border-radius:3cqmin;width:92%;margin-top:2cqmin;padding:2cqmin 4cqmin;font:800 5.4cqmin/1.3 Nunito,sans-serif;box-shadow:0 1cqmin 3cqmin #00000014}.story-dots{gap:1.5cqmin;margin-top:2cqmin;display:flex}.story-dots i{background:#cfe4f7;border-radius:50%;width:2cqmin;height:2cqmin}.story-dots i.on{background:#1e90ff}.child-screen.child-task .child-activity{right:calc(15vw + 28px)}.child-screen.child-task .teacher-tile{width:15vw;min-width:120px;top:14px;bottom:auto;right:14px}.task-circle .circle-word{white-space:nowrap;padding:1cqmin 2.4cqmin;font-size:6cqmin}.task-circle .circle-opt{max-width:30%}.task-yesno{gap:3cqmin;padding:0 6%}.yesno-row{background:#fff;border:.5cqmin solid #0000;border-radius:3cqmin;align-items:center;gap:4cqmin;width:100%;padding:2cqmin 3cqmin;display:flex;box-shadow:0 .8cqmin #dceaf6}.yesno-row.ok{border-color:#22c55e}.yesno-row.try{border-color:#ef4444}.yesno-pic{font-size:11cqmin;line-height:1}.yesno-text{color:#102a43;flex:1;font:800 5cqmin/1.2 Nunito,sans-serif}.yesno-buttons{gap:2cqmin;display:flex}.yesno-btn{cursor:pointer;background:#fff;border:.6cqmin solid #dceaf6;border-radius:50%;width:11cqmin;height:11cqmin;font:900 6cqmin Nunito,sans-serif}.yesno-btn.yes{color:#16a34a}.yesno-btn.no{color:#dc2626}.yesno-btn.sel.yes{background:#dcfce7;border-color:#22c55e}.yesno-btn.sel.no{background:#fee2e2;border-color:#ef4444}.match-lines{overflow:visible}.match-lines line{stroke-width:5px;stroke-linecap:round}.match-lines line.try{stroke:#ef4444}.match-lines line.live{stroke:#1e90ff;stroke-dasharray:2 10}.match-lines line.hint{stroke:#9cc8f0;stroke-dasharray:6 8}.match-pic.linked.ok,.match-word.linked.ok{background:#f0fdf4;border-color:#22c55e}.match-pic.linked.try,.match-word.linked.try{background:#fef2f2;border-color:#ef4444}.match-pic{cursor:grab;touch-action:none}.circle-opt.try .circle-word,.circle-opt.try .circle-emoji{border-radius:2cqmin;outline:.6cqmin solid #ef4444}.circle-opt.hint>*{animation:1.2s ease-in-out infinite hint-glow}@keyframes hint-glow{0%,to{filter:drop-shadow(0 0 #ffd43b00)}50%{filter:drop-shadow(0 0 2.5cqmin #ffd43b)}}.ink path{fill:none;stroke:#1e90ff;stroke-width:7px;stroke-linecap:round;stroke-linejoin:round}.ink path.ok{stroke:#22c55e}.ink path.try{stroke:#ef4444}.spell-ghost{color:#1565c059;letter-spacing:1.5cqmin;margin-top:-2cqmin;font:900 7cqmin Nunito,sans-serif}.yesno-btn.hint{animation:1.2s ease-in-out infinite hint-glow}.yesno-row.try{background:#fef2f2}.yesno-row.ok{background:#f0fdf4}.sayit{z-index:8;pointer-events:none;background:#ffffff8c;flex-direction:column;justify-content:center;align-items:center;gap:3cqmin;animation:.25s ease-out sayit-in;display:flex;position:absolute;inset:0}@keyframes sayit-in{0%{opacity:0}}.sayit-bubble{background:#fff;border:.8cqmin solid #1e90ff;border-radius:5cqmin;flex-direction:column;align-items:center;gap:1cqmin;max-width:88%;padding:2.5cqmin 6cqmin;animation:.4s cubic-bezier(.3,1.6,.5,1) appear;display:flex;box-shadow:0 2cqmin 5cqmin #1565c040}.sayit-label{color:#1565c0;text-transform:uppercase;letter-spacing:.06em;font:900 4cqmin Nunito,sans-serif}.sayit-text{color:#102a43;text-align:center;font:900 7.5cqmin/1.15 Nunito,sans-serif}.sayit-mic{--lvl:0;width:13cqmin;height:13cqmin;scale:calc(1 + var(--lvl) * .5);box-shadow:0 0 0 calc(var(--lvl) * 3cqmin) #ffd43b59;background:#ffd43b;border-radius:50%;place-items:center;font-size:7cqmin;transition:scale 80ms linear,box-shadow 80ms linear;display:grid}.gift-badge{z-index:6;background:#fffffff2;border:.4cqmin solid #ffd43b;border-radius:3cqmin;flex-direction:column;padding:1cqmin 2.5cqmin;font-family:Nunito,sans-serif;line-height:1.1;display:flex;position:absolute;top:2cqmin;left:2cqmin}.gift-badge span{color:#102a43;font-size:4.2cqmin;font-weight:900}.gift-badge small{color:#1565c0;font-size:2.6cqmin;font-weight:800}.gift-badge.pop{animation:.9s ease-in-out bounce-big}.gift-burst{z-index:9;pointer-events:none;font-size:28cqmin;animation:2.4s ease-out forwards gift-burst;position:absolute;top:45%;left:50%;translate:-50% -50%}@keyframes gift-burst{0%{opacity:0;scale:.2}20%{opacity:1;scale:1.15}70%{opacity:1;translate:-50% -50%;scale:1}to{opacity:0;translate:calc(-50% - 38cqw) calc(-50% - 40cqh);scale:.25}}.teacher-ink{z-index:7;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.teacher-ink polyline{fill:none;stroke-width:6px;stroke-linecap:round;stroke-linejoin:round;animation:6s ease-in forwards ink-fade}@keyframes ink-fade{0%,70%{opacity:1}to{opacity:0}}.showhow{z-index:6;pointer-events:none;background:linear-gradient(#fffdf5,#f5f9ff);font-family:Nunito,sans-serif;animation:.3s ease-out sh-in;position:absolute;inset:0;overflow:hidden}@keyframes sh-in{0%{opacity:0}}.sh-watch{z-index:3;color:#fff;background:#102a43;border-radius:99px;padding:1cqmin 4cqmin;font-size:4.2cqmin;font-weight:900;animation:1.6s ease-in-out infinite sh-blink;position:absolute;top:2.5cqmin;left:50%;translate:-50%}@keyframes sh-blink{50%{scale:1.06}}.sh-area{position:absolute;inset:9cqmin 4cqmin 4cqmin}.sh-el{place-items:center;line-height:1;transition:background .2s,border-color .2s,scale .2s;display:grid;position:absolute;translate:-50% -50%}.sh-card{background:#fff;border:.6cqmin solid #d9e2ec;border-radius:3cqmin;box-shadow:0 1cqmin 2cqmin #102a4314}.sh-pic{width:12%;height:16%;font-size:9cqmin}.sh-word{color:#102a43;width:16%;height:14%;font-size:4.6cqmin;font-weight:900}.sh-card.ok,.sh-word.ok{background:#dcfce7;border-color:#22c55e}.sh-card.try{background:#fee2e2;border-color:#ef4444;animation:.4s sh-shake}@keyframes sh-shake{25%{translate:-54% -50%}75%{translate:-46% -50%}}.sh-big{width:18cqmin;height:18cqmin;font-size:13cqmin}.sh-big.ok{scale:1.12}.sh-prompt{white-space:nowrap;color:#102a43;background:#fff8db;border-radius:3cqmin;padding:1.5cqmin 4cqmin;font-size:6cqmin;font-weight:900}.sh-lines{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.sh-lines line,.sh-lines polyline{fill:none;stroke-width:1.1cqmin;stroke-linecap:round;stroke-linejoin:round}.sh-lines .live{stroke:#3b82f6}.sh-lines .ok{stroke:#22c55e}.sh-lines .try{stroke:#ef4444}.sh-lines .pen{stroke:#f97316}.sh-slot{color:#102a43;border-bottom:1cqmin solid #9fb3c8;width:10cqmin;height:11cqmin;font-size:8cqmin;font-weight:900}.sh-slot.ok{color:#15803d;border-color:#22c55e}.sh-slot.try{color:#dc2626;border-color:#ef4444}.sh-tile{color:#102a43;background:#fff;border:.6cqmin solid #d9e2ec;border-radius:2cqmin;width:10cqmin;height:10cqmin;font-size:7cqmin;font-weight:900}.sh-yn{color:#fff;border-radius:50%;width:13cqmin;height:13cqmin;font-size:8cqmin;font-weight:900}.sh-yn.yes{background:#22c55e}.sh-yn.no{background:#64748b}.sh-yn.try{outline:1.2cqmin solid #ef4444;animation:.4s sh-shake}.sh-yn.ok{outline:1.2cqmin solid #22c55e;scale:1.12}.sh-box{font-size:15cqmin}.sh-item{z-index:2;filter:drop-shadow(0 1cqmin 1cqmin #0003);font-size:10cqmin;transition:none}.sh-star{width:34cqmin;height:34cqmin;overflow:visible}.sh-star path{stroke:#102a43;stroke-width:2.5px;stroke-linejoin:round;transition:fill .3s}.sh-star.try path{stroke:#ef4444}.sh-star.ok path{stroke:#22c55e}.sh-crayon{background:var(--c);border-radius:2cqmin 2cqmin 1cqmin 1cqmin;width:8cqmin;height:15cqmin}.sh-crayon.sel{outline-offset:.6cqmin;outline:.8cqmin solid #102a43;scale:1.1}.sh-pad{background:#fff;border:.5cqmin dashed #bcccdc;border-radius:3cqmin;width:44cqmin;height:44cqmin}.sh-mark{color:#ef4444;z-index:3;text-shadow:0 0 2cqmin #fff;font-size:12cqmin;font-weight:900;animation:.35s ease-out sh-pop}.sh-mark.ok{color:#22c55e;font-size:26cqmin}@keyframes sh-pop{0%{opacity:0;scale:.2}}.sh-hand{z-index:4;filter:drop-shadow(0 1cqmin 1cqmin #00000040);font-size:10cqmin;line-height:1;transition:scale .12s;position:absolute;translate:-38% -6%}.sh-hand.press{scale:.82}.sh-say{flex-direction:column;justify-content:center;align-items:center;gap:4cqmin;display:flex;position:absolute;inset:0}.sh-say-row{color:#9fb3c8;align-items:center;gap:2.5cqmin;font-size:6cqmin;font-weight:900;transition:color .3s,scale .3s;display:flex}.sh-say-row.on{color:#102a43;scale:1.12}.sh-say-icon{font-size:10cqmin}.sh-say-row.on .sh-say-icon{animation:.7s ease-in-out infinite sh-blink}.sh-say-bubble{color:#102a43;background:#fff8db;border-radius:4cqmin;padding:2cqmin 5cqmin;font-size:6.5cqmin;font-weight:900}.sh-bars{align-items:flex-end;gap:1cqmin;height:6cqmin;display:inline-flex}.sh-bars i{background:#cbd2d9;border-radius:1cqmin;width:1.4cqmin;height:30%}.sh-say-row.on .sh-bars i{background:#22c55e;animation:.5s ease-in-out infinite alternate sh-bar}.sh-say-row.on .sh-bars i:nth-child(2){animation-delay:.15s}.sh-say-row.on .sh-bars i:nth-child(3){animation-delay:.3s}.sh-say-row.on .sh-bars i:nth-child(4){animation-delay:.1s}@keyframes sh-bar{to{height:100%}}.sh-confetti{z-index:5;pointer-events:none;position:absolute;inset:0}.sh-confetti span{font-size:6cqmin;animation:2.2s ease-in forwards sh-fall;position:absolute;top:-8%}@keyframes sh-fall{to{top:105%;rotate:300deg}}.practice{z-index:50;background:#fffdf5;flex-direction:column;font-family:Nunito,sans-serif;display:flex;position:fixed;inset:0}.practice-top,.practice-bottom{align-items:center;gap:10px;padding:12px 16px;display:flex}.practice-bottom{justify-content:flex-end}.practice-btn{color:#334e68;cursor:pointer;background:#eef2f7;border:0;border-radius:999px;padding:12px 20px;font:800 1.05rem Nunito,sans-serif}.practice-btn.next{color:#fff;background:#1e90ff}.practice-say{color:#102a43;cursor:pointer;background:#fff8db;border:0;border-radius:18px;flex:1;justify-content:center;align-items:center;gap:10px;min-width:0;padding:12px 16px;font:900 clamp(1.1rem,3.4vw,1.8rem) Nunito,sans-serif;display:flex}.practice-say span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.practice-stars{color:#b7791f;background:#fff;border:2px solid #ffe08a;border-radius:999px;padding:8px 14px;font:900 1.3rem Nunito,sans-serif}.practice-stage{background:#fff;border-radius:22px;flex:1;width:auto;height:auto;min-height:0;margin:0 16px;box-shadow:0 4px 18px #102a4314}.practice-empty{color:#829ab1}.lf .practice-start{color:#1565c0;background:#fff;border:2px solid #1e90ff;margin-top:18px}.scene-item.ok .scene-emoji{filter:drop-shadow(0 0 2.5cqmin #22c55e)drop-shadow(0 0 1cqmin #22c55e);transition:scale .2s;scale:1.15}.scene-item.try .scene-emoji{filter:drop-shadow(0 0 2.5cqmin #ef4444);animation:.45s wrong-shake}@keyframes wrong-shake{25%{translate:-1.2cqmin}75%{translate:1.2cqmin}}.scene-item.hint:after,.tray-item.hint:after{content:"";pointer-events:none;border:.8cqmin solid #f5c400;border-radius:50%;animation:1s ease-in-out infinite hint-pulse;position:absolute;inset:-1.5cqmin}@keyframes hint-pulse{50%{opacity:.55;scale:1.15}}.scene-item.asked .item-label{color:#fff;background:#1e90ff}.place-hint{pointer-events:none;z-index:3;background:#ffe08a59;border:.8cqmin solid #f5c400;border-radius:50%;place-items:center;width:16cqmin;height:16cqmin;animation:1s ease-in-out infinite hint-pulse;display:grid;position:absolute;translate:-50% -50%}.place-hint>span{opacity:.55;line-height:1}.part-hint{stroke-width:2.2px;stroke-dasharray:3 2;pointer-events:none;animation:1s linear infinite part-hint}@keyframes part-hint{to{stroke-dashoffset:-10px}}.gift-badge{border-radius:99px;flex-direction:row;align-items:center;gap:1.5cqmin;padding:.8cqmin 2.2cqmin;top:1.5cqmin;left:1.5cqmin}.gift-badge span{font-size:3.6cqmin}.gift-badge small{font-size:2.6cqmin}.stage:has(.gift-badge) .task{top:9cqmin}.task-story .scene-story{border-radius:4cqmin;width:96%;box-shadow:0 1cqmin 3cqmin #102a4314}.name-tag{color:#1565c0;white-space:nowrap;background:#fff;border:.5cqmin solid #1e90ff;border-radius:2cqmin;padding:.6cqmin 2cqmin;font:900 4.4cqmin/1.1 Nunito,sans-serif;display:inline-block;box-shadow:0 .6cqmin #cfe4f7}.task-scene.names .tray-item{width:auto;min-width:14cqmin;box-shadow:none;background:0 0;padding:0 1cqmin}.placed.is-name{translate:-50% -135%}.placed.is-name.ok .name-tag{color:#15803d;background:#ecfdf3;border-color:#22c55e}.placed.is-name.try .name-tag{color:#dc2626;background:#fef2f2;border-color:#ef4444}.task-findcolour{justify-content:flex-start}.findcolour-stage{flex:1;width:100%;min-height:0;position:relative}.findcolour-stage .scene{height:100%}.fc-shape{cursor:pointer;background:0 0;border:0;border-radius:50%;padding:0;transition:transform .15s;position:absolute;translate:-50% -50%}.fc-shape .shape-svg{width:100%;height:100%;overflow:visible}.fc-shape.ok{filter:drop-shadow(0 0 1.2cqmin #22c55e)}.fc-shape.try{filter:drop-shadow(0 0 1.2cqmin #ef4444);animation:.45s wrong-shake}.fc-shape.hint:after{content:"";pointer-events:none;border:.8cqmin solid #f5c400;border-radius:50%;animation:1s ease-in-out infinite hint-pulse;position:absolute;inset:-1.5cqmin}.task-findcolour .palette{flex:none}.task-spell.name .spell-slot:first-child{text-transform:uppercase}.task-differences{justify-content:flex-start;gap:2cqmin;padding-top:1cqmin}.diff-pair{flex:1;gap:2cqmin;width:96%;min-height:0;display:flex}.diff-pic{border-radius:3cqmin;flex:1;position:relative;overflow:hidden;box-shadow:0 .6cqmin 2cqmin #102a431f;container-type:size}.diff-pic .scene{height:100%}.diff-pic.tap{cursor:pointer;outline-offset:-.6cqmin;outline:.6cqmin dashed #1e90ff59}.diff-ring{pointer-events:none;z-index:3;border:.8cqmin solid #22c55e;border-radius:50%;width:12cqmin;height:12cqmin;animation:.3s ease-out sh-pop;position:absolute;translate:-50% -50%}.diff-ring.try{border-color:#ef4444;animation:1s ease-out forwards diff-miss}.diff-ring.hint{border-style:dashed;border-color:#f5c400;animation:1s ease-in-out infinite hint-pulse}@keyframes diff-miss{0%{opacity:1;scale:.6}70%{opacity:1;scale:1}to{opacity:0}}.diff-count{gap:1.5cqmin;display:flex}.diff-count i{background:#d9e2ec;border-radius:50%;width:3cqmin;height:3cqmin}.diff-count i.on{background:#22c55e}.task-oddone{gap:4cqmin}.odd-row{gap:3cqmin;display:flex}.odd-card{cursor:pointer;background:#fff;border:.6cqmin solid #d9e2ec;border-radius:4cqmin;flex-direction:column;align-items:center;gap:1cqmin;width:20cqmin;padding:2cqmin 1cqmin;transition:scale .15s;display:flex;box-shadow:0 .8cqmin #cfe4f7}.odd-emoji{font-size:12cqmin;line-height:1}.odd-label{color:#334e68;font:800 3.4cqmin Nunito,sans-serif}.odd-card.ok{background:#ecfdf3;border-color:#22c55e;scale:1.08}.odd-card.try{background:#fef2f2;border-color:#ef4444;animation:.45s wrong-shake}.odd-card.hint{box-shadow:0 0 0 1cqmin #f5c400}.odd-why{color:#1565c0;background:#fff8db;border-radius:4cqmin;padding:1.5cqmin 5cqmin;font:900 6cqmin Nunito,sans-serif;animation:.3s ease-out sh-pop}.circle-clue{text-align:center;color:#102a43;z-index:2;background:#fff8db;border-radius:3cqmin;width:86%;padding:2cqmin 3cqmin;font:800 4.6cqmin/1.25 Nunito,sans-serif;position:absolute;top:4cqmin;left:50%;translate:-50%}.task-circle.long .circle-opt{min-width:60%;max-width:86%}.task-circle.long .circle-word{white-space:nowrap;text-align:center;font-size:4.6cqmin}.story-text.tell{color:#1565c0;background:#fff8db}.diff-single{flex:1;width:78%;min-height:0;display:flex}.task-info{justify-content:center;gap:2cqmin}.info-card{background:#fff;border-radius:3cqmin;flex-direction:column;gap:1.6cqmin;width:86%;padding:2.5cqmin 3cqmin;display:flex;box-shadow:0 .8cqmin #dceaf6}.info-card.ask{background:#fffbea;box-shadow:0 .8cqmin #f5e6a8}.info-title{color:#1e3a8a;text-align:center;font:900 5.6cqmin/1.1 Nunito,sans-serif}.info-row{text-align:left;cursor:pointer;background:#f6fafe;border:.5cqmin solid #0000;border-radius:2.4cqmin;align-items:center;gap:3cqmin;width:100%;padding:1.2cqmin 2.4cqmin;display:flex}.info-row.ok{background:#f0fdf4;border-color:#22c55e}.info-row.asking{background:#eff6ff;border-color:#1e90ff}.info-row.hint{animation:1.2s ease-in-out infinite hint-glow}.info-icon{flex:none;font-size:7cqmin;line-height:1}.info-q{color:#486581;flex:1.5;font:700 4cqmin/1.2 Nunito,sans-serif}.info-a{color:#102a43;flex:1;font:900 4.4cqmin/1.2 Nunito,sans-serif}.task-diary{justify-content:center;gap:1.6cqmin;padding:0 5%}.diary-title{color:#7c2d12;font:900 5.4cqmin/1.1 Nunito,sans-serif}.diary-row{background:#fffdf5;border:.5cqmin solid #0000;border-radius:2.4cqmin;justify-content:space-between;align-items:center;gap:3cqmin;width:100%;padding:1.2cqmin 2.4cqmin;display:flex;box-shadow:0 .6cqmin #f1e4c3}.diary-row.ok{background:#f0fdf4;border-color:#22c55e}.diary-row.try{background:#fef2f2;border-color:#ef4444}.diary-text{color:#102a43;font:800 4.3cqmin/1.25 Nunito,sans-serif}.diary-gap{color:#15803d;text-align:center;border-bottom:.5cqmin dashed #94a3b8;min-width:10cqmin;padding:0 1cqmin;display:inline-block}.diary-options{flex:none;gap:1.4cqmin;display:flex}.diary-opt{color:#1e3a8a;cursor:pointer;white-space:nowrap;background:#fff;border:.5cqmin solid #dceaf6;border-radius:99px;padding:1cqmin 2.4cqmin;font:800 4cqmin Nunito,sans-serif}.diary-opt.sel{background:#fee2e2;border-color:#ef4444}.diary-opt.hint{animation:1.2s ease-in-out infinite hint-glow}.speako-cheer{aspect-ratio:1180/1220;z-index:7;pointer-events:none;width:24cqmin;animation:.25s ease-out speako-in;position:absolute;bottom:0;right:1.5cqmin}.speako-cheer.wrong{aspect-ratio:1100/1240;width:19cqmin}.speako-cheer.big{width:46cqmin;right:50%;translate:50%}.speako-cheer .speako,.speako-cheer svg{width:100%;height:100%;display:block}@keyframes speako-in{0%{opacity:0;transform:translateY(12%)scale(.9)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.speako-cheer{animation:none}}.practice-say.static{cursor:default}.game-levels{gap:4px;display:flex}.game-levels i{background:#e4ebf3;border-radius:50%;width:14px;height:14px}.game-levels i.on{background:#ffc531;box-shadow:0 0 0 2px #ffe8a3}.game-how{position:relative}.game-pick{flex-direction:column;align-items:stretch;gap:10px}.game-how-text{text-align:center;color:#334e68;margin:0;font:800 1.05rem Nunito,sans-serif}.game-level-row{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.game-level{color:#102a43;cursor:pointer;background:#fff;border:2px solid #d9e2ec;border-radius:16px;justify-items:center;min-width:76px;padding:8px 14px;font:900 1rem Nunito,sans-serif;display:grid}.game-level small{min-height:1em;font-size:.7rem}.game-level.sel{background:#e7f2ff;border-color:#1e90ff}.game-level:disabled{opacity:.5;cursor:default}.practice-btn.big{align-self:center;padding:14px 28px;font-size:1.25rem}.game-progress{background:#eef2f7;border-radius:99px;height:8px;margin:0 16px 10px;overflow:hidden}.game-progress i{background:linear-gradient(90deg,#22b866,#4fd18b);border-radius:99px;height:100%;transition:width .4s;display:block}.game-tag{color:#627d98;margin-right:auto;font:900 .95rem Nunito,sans-serif}.game-result{place-items:center;display:grid;position:relative}.game-result-box{text-align:center;color:#102a43;justify-items:center;gap:12px;padding:20px;font-family:Nunito,sans-serif;display:grid}.game-result-box h2{margin:0;font-size:2.2rem;font-weight:900}.game-stars{gap:8px;font-size:3rem;display:flex}.game-stars span{filter:grayscale();opacity:.3}.game-stars span.on{filter:none;opacity:1;animation:.5s ease-out both star-pop}.game-stars span.on:nth-child(2){animation-delay:.15s}.game-stars span.on:nth-child(3){animation-delay:.3s}@keyframes star-pop{0%{transform:scale(.2)}70%{transform:scale(1.25)}to{transform:scale(1)}}.game-result-btns{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.game-card small.game-more{color:#9fb3c8;font-size:.7rem;font-weight:700}.games-grid{box-sizing:border-box;flex:1;grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:12px;width:100%;max-width:980px;min-height:0;margin:0 auto;padding:4px 14px 28px;display:grid;overflow:auto}@media (width>=620px){.games-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding:8px 20px 32px}}@media (width>=960px){.games-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.games-grid{justify-items:stretch}.game-card{--t1:#e7f2ff;--t2:#1e90ff;cursor:pointer;color:#102a43;text-align:center;background:#fff;border:0;border-radius:26px;justify-items:center;gap:7px;padding:0 12px 16px;font-family:Nunito,sans-serif;transition:transform .14s,box-shadow .14s;display:grid;position:relative;overflow:hidden;box-shadow:0 8px 22px #102a4317}.game-card:before{content:"";background:linear-gradient(160deg, var(--t1), #fff);z-index:0;height:58%;position:absolute;inset:0 0 auto}.game-card>*{z-index:1;position:relative}.game-card:hover{transform:translateY(-3px);box-shadow:0 14px 30px #102a4324}.game-card:active{transform:scale(.97)}.game-icon{width:76px;height:76px;box-shadow:0 6px 16px #102a431a, inset 0 -4px 0 var(--t1);background:#fff;border-radius:24px;place-items:center;margin-top:18px;font-size:2.6rem;display:grid}.game-card b{font-size:1.12rem;font-weight:900;line-height:1.15}.game-card small{color:#627d98;font-size:.78rem;font-weight:800}.game-card .game-play{background:var(--t2);color:#fff;border-radius:99px;margin-top:2px;padding:5px 14px;font-size:.85rem;font-weight:900}.game-card.t-blue{--t1:#dcecff;--t2:#1e90ff}.game-card.t-purple{--t1:#ebe7ff;--t2:#7c6cff}.game-card.t-green{--t1:#dcf6e8;--t2:#22b866}.game-card.t-orange{--t1:#ffe9d4;--t2:#ff8a1f}.game-card.t-pink{--t1:#ffe1ee;--t2:#ff5c9a}.game-card.t-gold{--t1:#fff2c6;--t2:#e8a400}.game-card.t-teal{--t1:#d8f5f3;--t2:#14a3a0}@media (width>=620px){.game-icon{width:88px;height:88px;font-size:3rem}}.games-grid{flex-wrap:wrap;place-content:flex-start center;display:flex}.games-grid>.game-card{flex:0 calc(50% - 6px)}.games-grid>.practice-empty{text-align:center;flex:100%}@media (width>=620px){.games-grid>.game-card{flex-basis:calc(33.333% - 11px)}}@media (width>=960px){.games-grid>.game-card{flex-basis:calc(25% - 12px)}}.task-story .story-picture{background:#f4f8fc;border-radius:4cqmin;width:96%;height:74%;overflow:hidden;box-shadow:0 1cqmin 3cqmin #102a431f}.task-story .story-picture img{object-fit:cover;width:100%;height:100%;display:block}.task-story .book-page{flex-direction:column;flex:1;align-items:center;width:100%;min-height:0;display:flex}.task-story.book .book-page{box-sizing:border-box;transform-origin:0;background:#fffdf7;border-radius:1.5cqmin 3cqmin 3cqmin 1.5cqmin;width:92%;margin-bottom:1.6cqmin;padding:2cqmin 2cqmin 2cqmin 3cqmin;animation:.3s ease-out page-turn;box-shadow:inset 2.6cqmin 0 2cqmin -1.8cqmin #785a2840,.7cqmin .7cqmin #f3ecdd,1.4cqmin 1.4cqmin #e7ddc7,0 2cqmin 4cqmin #102a4324}@keyframes page-turn{0%{opacity:.35;transform:perspective(160cqmin)rotateY(-16deg)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.task-story.book .book-page{animation:none}}.task-story.book .story-picture,.task-story.book .scene{width:100%;height:78%;box-shadow:none;border-radius:2cqmin}.task-story.book .story-text{box-sizing:border-box;width:100%;box-shadow:none;background:0 0;margin-top:1cqmin;padding:1.5cqmin 3cqmin 0}.task-story.book .story-text.tell{background:#fff8db;border-radius:2cqmin;padding-bottom:1.5cqmin}.task-story .story-picture.cast img{object-fit:contain;background:#fffaf0}.task-story .story-title{color:#1565c0;font-size:6.2cqmin;font-weight:900}.story-end{flex-direction:column;flex:1;justify-content:center;align-items:center;gap:2cqmin;display:flex}.story-end span{font-size:16cqmin;animation:.5s ease-out sh-pop}.story-end b{color:#1565c0;letter-spacing:.02em;font:900 13cqmin/1 Nunito,sans-serif}.practice{background:linear-gradient(#ecf6ff73,#ecf6ff99),url(/backgrounds/classroom.webp) bottom/cover no-repeat,#eaf4fd;padding:0 clamp(8px,2vw,28px) clamp(8px,1.6vh,18px)}.practice-top{align-items:center;gap:clamp(6px,1.2vw,14px);padding:clamp(8px,1.4vh,16px) 0}.practice-btn{background:#fff;box-shadow:0 4px 14px #102a4324}.practice-btn.back{color:#fff;background:linear-gradient(#2b7de9,#1565c0);flex:none;padding:12px 16px;box-shadow:0 6px 16px #1565c059}.practice-btn.back span{display:none}@media (width>=560px){.practice-btn.back span{display:inline}.practice-btn.back{padding:12px 22px}}.practice-head{background:#fffffff2;border-radius:999px;flex:1;align-items:center;gap:clamp(6px,1vw,12px);min-width:0;padding:5px clamp(8px,1.4vw,16px) 5px 5px;display:flex;box-shadow:0 8px 22px #102a431f}.practice-head .practice-say{box-shadow:none;background:0 0;flex:1;justify-content:flex-start;padding:4px 6px}.practice-say i{aspect-ratio:1;background:linear-gradient(#2b7de9,#1565c0);border-radius:50%;flex:none;place-items:center;width:clamp(34px,4.6vw,46px);font-size:.8em;font-style:normal;display:grid;box-shadow:0 4px 10px #1565c059}.practice-stars{color:#8a5a00;background:#fff6d6;border:0;flex:none;padding:5px 12px;font-size:clamp(.95rem,1.8vw,1.2rem)}.practice-head .game-progress{background:#e3ebf5;flex:0 200px;height:10px;margin:0;display:none}@media (width>=700px){.practice-head .game-progress{display:block}}.practice-stage{background:#ffffffdb;border:3px solid #fffffff2;border-radius:clamp(20px,2.6vw,32px);margin:0;box-shadow:0 18px 50px #102a4329}.practice-bottom{gap:10px;padding:clamp(8px,1.4vh,14px) 0 0}.game-tag{color:#fff;white-space:nowrap;text-overflow:ellipsis;background:#13233f;border-radius:999px;align-items:center;gap:6px;min-width:0;margin-right:auto;padding:9px 16px;font-size:clamp(.8rem,1.6vw,.95rem);display:inline-flex;overflow:hidden;box-shadow:0 6px 16px #13233f40}.game-tag b{color:#ffd43b}.game-tag small{color:#bcd0e6;font-weight:700;display:none}@media (width>=700px){.game-tag small{display:inline}}.practice-btn.next{color:#fff;background:linear-gradient(#2b7de9,#1565c0);padding:14px clamp(22px,3vw,34px);font-size:clamp(1.05rem,2vw,1.35rem);box-shadow:0 8px 20px #1565c059}.practice-empty{color:#334e68;text-align:center;font-weight:800}.practice-buddy{display:none}@media (width>=1100px) and (height>=640px){.practice-stage{width:calc(100% - 320px);margin:0 auto}.practice-buddy{z-index:51;pointer-events:none;flex-direction:column;align-items:flex-start;width:160px;display:flex;position:fixed;bottom:74px;left:clamp(8px,1.4vw,24px)}.practice-buddy i{aspect-ratio:240/229;background:url(/brand/speako-hello-240.webp) 50%/contain no-repeat;width:140px;animation:3s ease-in-out infinite buddy-bob}.practice-buddy span{color:#102a43;background:#fff;border-radius:22px 22px 22px 6px;margin:0 0 6px 34px;padding:10px 14px;font:900 1.05rem/1.2 Nunito,sans-serif;animation:.3s ease-out buddy-in;box-shadow:0 8px 20px #102a4329}}@keyframes buddy-bob{50%{transform:translateY(-6px)rotate(-2deg)}}@keyframes buddy-in{0%{opacity:0;transform:translateY(8px)scale(.9)}}.practice .yesno-row,.kid-room .yesno-row{border:.5cqmin solid #eef3f9;border-radius:3.4cqmin;padding:2cqmin 2.6cqmin;box-shadow:0 .8cqmin 2.4cqmin #102a4314}.practice .yesno-pic,.kid-room .yesno-pic{aspect-ratio:1;background:linear-gradient(160deg,#fff7e6,#ffeacc);border-radius:2.6cqmin;flex:none;place-items:center;width:15cqmin;font-size:10cqmin;display:grid}.practice .yesno-btn,.kid-room .yesno-btn{color:#fff;border:0;width:13cqmin;height:13cqmin;font-size:7cqmin;box-shadow:0 1cqmin #0000002e,inset 0 -.8cqmin #0000001f,0 1.6cqmin 3cqmin #102a432e}.practice .yesno-btn.yes,.kid-room .yesno-btn.yes{color:#fff;background:radial-gradient(circle at 35% 30%,#5ee08f,#16a34a 70%)}.practice .yesno-btn.no,.kid-room .yesno-btn.no{color:#fff;background:radial-gradient(circle at 35% 30%,#ff7b7b,#dc2626 70%)}.practice .yesno-btn.sel,.kid-room .yesno-btn.sel{outline-offset:.4cqmin;outline:1cqmin solid #ffd43b}.practice .yesno-row.ok,.kid-room .yesno-row.ok{background:#f0fdf4;border-color:#86efac}.practice .yesno-row.try,.kid-room .yesno-row.try{background:#fef2f2;border-color:#fca5a5}@media (prefers-reduced-motion:reduce){.practice-buddy i,.practice-buddy span{animation:none}}.circle-opt{background:radial-gradient(circle at 50% 40%,#fffaf0,#ffe9b5);border:.6cqmin solid #fff;box-shadow:0 1cqmin 2.4cqmin #102a431a}.circle-opt:nth-child(4n+2){background:radial-gradient(circle at 50% 40%,#fff1f3,#ffd3dc)}.circle-opt:nth-child(4n+3){background:radial-gradient(circle at 50% 40%,#eef7ff,#cfe7ff)}.circle-opt:nth-child(4n+4){background:radial-gradient(circle at 50% 40%,#f5f1ff,#ddd3ff)}.task-circle.long .circle-opt{border-radius:5cqmin}.odd-card{background:linear-gradient(165deg,#fffaf0,#ffe9b5);border:.7cqmin solid #fff;width:24cqmin;box-shadow:0 1cqmin #102a430f,0 2cqmin 4cqmin #102a431f}.odd-card:nth-child(4n+2){background:linear-gradient(165deg,#fff1f3,#ffd3dc)}.odd-card:nth-child(4n+3){background:linear-gradient(165deg,#eef7ff,#cfe7ff)}.odd-card:nth-child(4n+4){background:linear-gradient(165deg,#f5f1ff,#ddd3ff)}.practice-head .game-progress{align-self:center}@media (width>=1100px) and (height>=640px){.practice-buddy span{white-space:nowrap}}.circle-opt{padding:1.6cqmin}.odd-card{width:29cqmin;padding:3cqmin 1.4cqmin}.practice{--pr-shadow:0 14px 32px #0f235a2e, 0 3px 8px #0f235a14;background:url(/backgrounds/classroom.webp) bottom/cover no-repeat,#dcecfb}.pr-frame{flex:1;min-height:0;display:flex;position:relative}@media (width>=1100px) and (height>=640px){.pr-frame{width:calc(100% - 320px);margin:0 auto}.pr-frame .practice-stage{width:auto;margin:0}}.practice .yesno-row,.practice .odd-card,.practice .circle-opt{box-shadow:var(--pr-shadow)}.practice-head{box-shadow:var(--pr-shadow);background:#fff;border:0}.game-card{box-shadow:var(--pr-shadow);border:0}.practice-btn,.practice-say i,.game-play{transition:transform 80ms,box-shadow 80ms}.practice-btn.back,.practice-btn.next{background:linear-gradient(#4a95f5,#1565c0);border:3px solid #fff;box-shadow:inset 0 3px #ffffff59,0 6px #0d3f86,0 12px 22px #1565c059}.practice-btn:active,.game-card:active .game-play{transform:translateY(4px);box-shadow:inset 0 3px #ffffff4d,0 2px #0d3f86}.practice-say i{box-shadow:inset 0 2px #ffffff59,0 4px #0d3f86}.game-play{box-shadow:inset 0 2px #ffffff59,0 4px #00000040}.game-tag{border:3px solid #fff;box-shadow:0 5px #0a1428,0 10px 20px #13233f4d}.kid-room .yesno-row,.kid-room .odd-card,.kid-room .circle-opt{box-shadow:0 14px 32px #0f235a2e,0 3px 8px #0f235a14}.pr-frame .practice-stage{box-shadow:none;background:0 0;border:0;flex:1}:is(.kid-room,.practice){--card-shadow:0 14px 32px #0f235a2e, 0 3px 8px #0f235a14}:is(.kid-room,.practice) :is(.match-pic,.match-word,.spell-tile,.info-card,.diary-row,.draw-prompt,.draw-pad,.palette,.colour-check,.odd-why,.name-tag,.circle-word,.tray,.yesno-row,.odd-card,.circle-opt){box-shadow:var(--card-shadow)}:is(.kid-room,.practice) .match-pic,:is(.kid-room,.practice) .match-word{border-color:#fff}:is(.kid-room,.practice) .spell-slot{background:#ffffffeb;box-shadow:0 6px 16px #0f235a1f}:is(.kid-room,.practice) .spell-slot.filled{box-shadow:var(--card-shadow)}:is(.kid-room,.practice) .tray{background:#fff;border-radius:99px}:is(.kid-room,.practice) .circle-clue{box-shadow:var(--card-shadow);background:#fff;border-radius:3cqmin;width:auto;max-width:86%;padding:2cqmin 3cqmin}:is(.kid-room,.practice) .diff-count,:is(.kid-room,.practice) .story-dots{box-shadow:var(--card-shadow);background:#fff;border-radius:99px;padding:1cqmin 2.4cqmin}:is(.kid-room,.practice) .story-text:not(.book .story-text){box-shadow:var(--card-shadow)}:is(.kid-room,.practice) .colour-stage{width:auto;box-shadow:var(--card-shadow);background:#fff;border-radius:4cqmin;padding:2cqmin}:is(.kid-room,.practice) .task-story .story-picture,:is(.kid-room,.practice) .task-story .scene-story{box-shadow:var(--card-shadow);border:.8cqmin solid #fff}:is(.kid-room,.practice) .task-story.book .book-page{box-shadow:var(--card-shadow)}:is(.kid-room,.practice) :is(.speech-bubble,.sentence-strip,.core-card){box-shadow:var(--card-shadow)}:is(.kid-room,.practice) .build-strip{box-shadow:var(--card-shadow);background:#fff;border-radius:4cqmin}:is(.kid-room,.practice) .build-sentence:not(:empty){box-shadow:var(--card-shadow);background:#fff;border-radius:99px;padding:1cqmin 4cqmin}:is(.kid-room,.practice) .stage-message{box-shadow:var(--card-shadow);background:#fff;border-radius:5cqmin;padding:3cqmin 6cqmin}:is(.kid-room,.practice) .stage-message h1{margin:0}:is(.kid-room,.practice) :is(.task-scene,.task-findcolour) .scene:not(.painted){overflow:visible;background:0 0!important}:is(.kid-room,.practice) :is(.task-scene,.task-findcolour) .scene:not(.painted):after{display:none}:is(.kid-room,.practice) :is(.task-scene,.task-differences,.task-findcolour) .scene-item{box-shadow:var(--card-shadow);background:#fff;border-radius:3cqmin;padding:1.4cqmin}:is(.kid-room,.practice) :is(.task-scene,.task-differences,.task-findcolour) .scene-emoji{filter:none}:is(.kid-room,.practice) .diff-pic{box-shadow:none;border-radius:0;overflow:visible}:is(.kid-room,.practice) .diff-pic.tap{outline:0}:is(.kid-room,.practice) .diff-pair{gap:6cqmin}:is(.kid-room,.practice) .task-scene .scene-wrap,:is(.kid-room,.practice) .findcolour-stage{width:90%;margin:2% auto 0}:is(.kid-room,.practice) .diff-pair{width:88%}:is(.kid-room,.practice) :is(.task-scene,.task-differences,.task-findcolour) .scene-item{border-radius:2.4cqmin;padding:.9cqmin}:is(.kid-room,.practice) .task-scene.placing .scene-item{box-shadow:none;background:0 0;border-radius:0;padding:0}:is(.kid-room,.practice) .task-scene.placing .scene-emoji{filter:drop-shadow(0 1.2cqmin 1.4cqmin #0f235a47)}.task-story .story-picture{background:#fffaf0}.task-story .story-picture img{object-fit:contain}.diff-tag{z-index:5;color:#fff;pointer-events:none;white-space:nowrap;background:#1e3a8a;border-radius:99px;padding:.6cqmin 2.4cqmin;font:900 3.4cqmin Nunito,sans-serif;position:absolute;top:1.2cqmin;left:50%;translate:-50%}:is(.kid-room,.practice) .diff-pair>.diff-pic+.diff-pic{border-left:0}.task-differences:not(.statements) .diff-pair{position:relative}.task-differences:not(.statements) .diff-pair:after{content:"";opacity:.55;pointer-events:none;border-left:.7cqmin dotted #1e3a8a;position:absolute;top:0;bottom:0;left:50%;translate:-50%}@media (width>=1100px) and (height>=640px){.practice .speako-cheer{display:none}.practice-buddy .buddy-anim{aspect-ratio:1180/1220;width:150px}.practice-buddy.react.wrong .buddy-anim{aspect-ratio:1100/1240}.practice-buddy .buddy-anim svg{width:100%;height:100%;display:block}.practice-buddy.react{z-index:60}.practice-buddy.react.right .buddy-anim{width:220px}.practice-buddy.react.done .buddy-anim{width:300px}.practice-buddy.react.wrong .buddy-anim{width:180px}}.match-pic{width:19cqmin;height:16cqmin;font-size:14cqmin}.tray-item{width:17cqmin;height:17cqmin;font-size:12.5cqmin}.circle-emoji{font-size:21cqmin}.task-circle .circle-cue{pointer-events:none;font-size:27cqmin;line-height:1;position:absolute;top:4%;left:50%;translate:-50%}.spell-pic{font-size:32cqmin}.yesno-pic{font-size:16cqmin}.practice .yesno-pic,.kid-room .yesno-pic{width:21cqmin;font-size:16cqmin}.want-scene .items.want-items{--size:26cqmin}.want-scene .items.want-items.count-6{--size:20cqmin}.task-ticket{background:radial-gradient(at 50% 40%,#fffdf5 0 40%,#fff3d6 100%);gap:5cqmin}.task-ticket.remember{background:radial-gradient(at 50% 40%,#f7fbff 0 40%,#e3f0ff 100%)}.tk-head{flex-direction:column;align-items:center;gap:1.5cqmin;display:flex}.tk-title{color:#7c4a03;background:#fff;border-radius:99px;padding:2cqmin 5cqmin;font:900 6cqmin/1 Nunito,system-ui,sans-serif;box-shadow:0 1cqmin #f3d9a4}.remember .tk-title{color:#1e3a8a;box-shadow:0 1cqmin #c7dcf7}.tk-stars{color:#e5e7eb;gap:2cqmin;font-size:6cqmin;display:flex}.tk-star.on{color:#fbbf24;animation:.6s ease-in-out bounce-big}.tk-star.now{color:#fde68a}.tk-row{justify-content:center;align-items:center;gap:5cqmin;width:100%;padding:0 4%;display:flex}.tk-card{cursor:pointer;background:#fff;border:1cqmin solid #fff;border-radius:5cqmin;place-items:center;width:26cqmin;height:26cqmin;padding:0;display:grid;position:relative;box-shadow:0 1.4cqmin #e7dcc4,0 2cqmin 4cqmin #00000014}.tk-card.big{cursor:default;width:40cqmin;height:40cqmin}.tk-card.ok{background:#f0fdf4;border-color:#22c55e}.tk-card.try{background:#fef2f2;border-color:#ef4444;animation:.4s shake}.tk-card.hint{box-shadow:0 0 0 1.2cqmin #fde047,0 1.4cqmin #e7dcc4}.tk-pic{place-items:center;width:82%;height:82%;display:grid}.tk-pic .emoji-img{object-fit:contain;width:100%;height:100%}.tk-pic:not(:has(img)){font-size:16cqmin;line-height:1}.tk-card.big .tk-pic:not(:has(img)){font-size:26cqmin}.tk-dot{border-radius:50%;width:70%;height:70%;box-shadow:inset 0 -1.5cqmin #0000001f}.tk-label{color:#475569;text-align:center;font:800 3.2cqmin/1 Nunito,system-ui,sans-serif;position:absolute;bottom:-5cqmin;left:0;right:0}.tk-say{background:#fff;border-radius:50%;place-items:center;width:13cqmin;height:13cqmin;font-size:9cqmin;animation:1.6s ease-in-out infinite bounce-big;display:grid;position:absolute;top:-4cqmin;right:-4cqmin;box-shadow:0 1cqmin 2cqmin #0000001f}.tk-done{color:#15803d;align-items:center;gap:3cqmin;font:900 9cqmin/1.1 Nunito,system-ui,sans-serif;display:flex}.task-grammar{background:radial-gradient(at 50% 35%,#fff 0 35%,#eef7ff 100%);gap:4cqmin;padding:4cqmin 5%}.gr-dots{gap:1.6cqmin;display:flex;position:absolute;top:3cqmin}.gr-dots i{background:#dbe7f3;border-radius:50%;width:2.4cqmin;height:2.4cqmin}.gr-dots i.use{border-radius:.6cqmin}.gr-dots i.on{background:#2563eb;scale:1.3}.gr-pics{justify-content:center;align-items:flex-end;gap:6cqmin;width:100%;display:flex}.gr-pic{flex-direction:column;align-items:center;gap:1.5cqmin;display:flex}.gr-many{align-items:flex-end;gap:1cqmin;display:flex}.gr-one{width:calc(26cqmin * var(--s));height:calc(26cqmin * var(--s));font-size:calc(19cqmin * var(--s));place-items:center;line-height:1;display:grid}.gr-pics.n1 .gr-one{width:calc(32cqmin * var(--s));height:calc(32cqmin * var(--s));font-size:calc(24cqmin * var(--s))}.gr-many:has(.gr-one:nth-child(3)) .gr-one{width:calc(16cqmin * var(--s));height:calc(16cqmin * var(--s));font-size:calc(12cqmin * var(--s))}.gr-one .emoji-img{object-fit:contain;filter:drop-shadow(0 1cqmin 1cqmin #0000001f);width:100%;height:100%}.gr-tag{color:#475569;background:#fff;border-radius:99px;padding:.8cqmin 2.4cqmin;font:800 3.4cqmin/1 Nunito,system-ui,sans-serif;box-shadow:0 .6cqmin #dbe7f3}.gr-sentence{color:#0f2a4a;text-align:center;background:#fff;border-radius:4cqmin;max-width:92%;margin:0;padding:3cqmin 5cqmin;font:900 6.4cqmin/1.25 Nunito,system-ui,sans-serif;box-shadow:0 1.2cqmin #d6e6f5}.gr-hl{color:#b91c1c;background:linear-gradient(#fde68a,#fde68a) 0 85%/100% 40% no-repeat;border-radius:1cqmin;padding:0 .6cqmin}.gr-use{text-align:center;flex-direction:column;align-items:center;gap:2cqmin;display:flex}.gr-use p{color:#0f2a4a;max-width:90%;margin:0;font:900 7cqmin/1.2 Nunito,system-ui,sans-serif}.gr-use small{color:#2563eb;font:800 4cqmin/1 Nunito,system-ui,sans-serif}.gr-mic{font-size:16cqmin;animation:1.8s ease-in-out infinite bounce-big}.task-ticket.listen{background:radial-gradient(at 50% 40%,#fbfff7 0 40%,#e4f7d8 100%)}.listen .tk-title{color:#166534;box-shadow:0 1cqmin #c6ebb5}.tk-replay{cursor:pointer;background:#fff;border:none;border-radius:50%;width:11cqmin;height:11cqmin;font-size:6cqmin;box-shadow:0 1cqmin #c6ebb5}.task-phonics{background:radial-gradient(at 50% 35%,#fffef8 0 35%,#fdf0d5 100%);gap:3.5cqmin;padding:4cqmin 4%}.ph-title{color:#7c4a03;background:#fff;border-radius:99px;padding:1.6cqmin 4cqmin;font:900 4.6cqmin/1 Nunito,system-ui,sans-serif;box-shadow:0 .8cqmin #f3d9a4}.ph-big{color:#dc2626;letter-spacing:2cqmin;text-shadow:0 1.2cqmin #fecaca;font:900 20cqmin/1 Nunito,system-ui,sans-serif}.ph-head{color:#0f2a4a;font:900 6cqmin/1 Nunito,system-ui,sans-serif}.ph-cards{flex-wrap:wrap;justify-content:center;gap:3cqmin;display:flex}.ph-card{background:#fff;border:.6cqmin solid #fff;border-radius:3cqmin;flex-direction:column;align-items:center;gap:1cqmin;width:20cqmin;padding:1.5cqmin;display:flex;box-shadow:0 1cqmin #ecdcbc}.ph-pic{place-items:center;width:15cqmin;height:15cqmin;font-size:11cqmin;line-height:1;display:grid}.ph-pic .emoji-img{object-fit:contain;width:100%;height:100%}.ph-card.word-only{justify-content:center;min-height:12cqmin}.ph-card b,.ph-pair b{color:#0f2a4a;font:900 4.6cqmin/1 Nunito,system-ui,sans-serif}.task-phonics mark{color:#dc2626;text-underline-offset:.8cqmin;background:0 0;text-decoration:underline;text-decoration-thickness:.6cqmin}.ph-card.on,.ph-tile.on,.ph-pair.on,.ph-line.on{border-color:#f59e0b;scale:1.06;box-shadow:0 0 0 1cqmin #fde68a,0 1cqmin #ecdcbc}.ph-tiles{flex-wrap:wrap;justify-content:center;gap:3cqmin;max-width:92%;display:flex}.ph-tile{color:#0f2a4a;background:#fff;border:.6cqmin solid #fff;border-radius:3cqmin;gap:.6cqmin;padding:2cqmin 3.5cqmin;font:900 8cqmin/1 Nunito,system-ui,sans-serif;display:flex;box-shadow:0 1cqmin #ecdcbc}.ph-l{flex-direction:column;align-items:center;display:flex}.ph-l i{background:#93c5fd;border-radius:50%;width:1.6cqmin;height:1.6cqmin;margin-top:1cqmin}.ph-tiles.tricky .ph-tile{background:#fef3c7}.ph-tiles.stress .ph-tile{align-items:baseline}.ph-tiles.stress .strong{color:#dc2626;font-size:10cqmin}.ph-tiles.stress .soft{color:#64748b;font-size:6cqmin}.ph-sentence{color:#0f2a4a;text-align:center;background:#fff;border-radius:4cqmin;max-width:92%;margin:0;padding:3cqmin 5cqmin;font:900 7cqmin/1.3 Nunito,system-ui,sans-serif}.ph-pairs,.ph-lines{gap:2cqmin;width:80%;display:grid}.ph-pair,.ph-line{background:#fff;border:.6cqmin solid #fff;border-radius:3cqmin;justify-content:center;align-items:center;gap:3cqmin;padding:1.8cqmin 3cqmin;display:flex;box-shadow:0 .8cqmin #ecdcbc}.ph-a{color:#64748b;font:800 4.4cqmin/1 Nunito,system-ui,sans-serif}.ph-arrow{color:#f59e0b;font-size:4cqmin}.ph-line{justify-content:space-between}.ph-line b{color:#0f2a4a;font:900 5cqmin/1.2 Nunito,system-ui,sans-serif}.ph-line small{color:#b45309;font:700 3.2cqmin/1 Nunito,system-ui,sans-serif}.trace-guide{pointer-events:none;justify-content:center;align-items:center;gap:8cqmin;display:flex;position:absolute;inset:0}.trace-guide span{color:#0000;-webkit-text-stroke:.8cqmin #cbd5e1;text-stroke:.8cqmin #cbd5e1;font:900 46cqmin/1 Comic Sans MS,Nunito,system-ui,sans-serif}.task-write{background:#f8fbff;justify-content:flex-start;gap:2.5cqmin;padding:3cqmin 4%}.wr-head{justify-content:space-between;align-items:center;gap:3cqmin;width:100%;display:flex}.wr-title{color:#0f2a4a;font:900 4.2cqmin/1.25 Nunito,system-ui,sans-serif}.wr-count{color:#b45309;background:#fff7ed;border-radius:99px;flex:none;padding:1.4cqmin 2.6cqmin;font:900 3.6cqmin/1 Nunito,system-ui,sans-serif}.wr-count.ok{color:#15803d;background:#dcfce7}.wr-body{flex:1;gap:3cqmin;width:100%;min-height:0;display:flex}.wr-side{flex-direction:column;flex:0 0 34%;gap:2cqmin;display:flex;overflow:hidden}.wr-pic{aspect-ratio:4/3;background:#fff;border-radius:3cqmin;place-items:center;display:grid;position:relative;overflow:hidden;box-shadow:0 .8cqmin #dbe7f3}.wr-pic .emoji-img{object-fit:contain;width:82%;height:82%}.wr-pic>span{color:#2563eb;font:900 3.4cqmin/1 Nunito,system-ui,sans-serif;position:absolute;top:1cqmin;left:1.4cqmin}.wr-pics{gap:1.5cqmin;display:grid}.wr-pics .wr-pic{aspect-ratio:16/9}.wr-points{color:#0f2a4a;background:#fff;border-radius:3cqmin;margin:0;padding:2cqmin 2cqmin 2cqmin 6cqmin;font:800 3.4cqmin/1.35 Nunito,system-ui,sans-serif}.wr-model{color:#0f2a4a;background:#fff;border-radius:3cqmin;margin:0;padding:2.5cqmin;font:900 4.6cqmin/1.3 Nunito,system-ui,sans-serif}.wr-paper{background:#fff repeating-linear-gradient(#0000 0 5.5cqmin,#bfdbfe 5.5cqmin calc(5.5cqmin + 2px),#0000 calc(5.5cqmin + 2px) 7.2cqmin);border-radius:3cqmin;flex:1;min-height:0;padding:0 3cqmin;box-shadow:0 1cqmin #dbe7f3}.wr-paper textarea{padding:0}.wr-paper textarea,.wr-text{resize:none;color:#0f2a4a;white-space:pre-wrap;touch-action:auto;-webkit-user-select:text;user-select:text;background:0 0;border:none;outline:none;width:100%;height:100%;font:700 4.4cqmin/7.2cqmin Nunito,system-ui,sans-serif;overflow:auto}.tk-word{color:#0f2a4a;background:#fff;border-radius:3cqmin;padding:2cqmin 6cqmin;font:900 9cqmin/1 Nunito,system-ui,sans-serif;box-shadow:0 1cqmin #e7dcc4}.tk-question,.tk-goal{color:#0f2a4a;background:#fff;border:1cqmin solid #fff;border-radius:4cqmin;align-items:center;gap:3cqmin;max-width:88%;padding:4cqmin 6cqmin;font:900 6.4cqmin/1.25 Nunito,system-ui,sans-serif;display:flex;box-shadow:0 1.2cqmin #e7dcc4}.tk-question span{font-size:10cqmin}.tk-question.ok{border-color:#22c55e}.tk-goal{background:#fffbeb;font-size:5.4cqmin}.task-ticket.check{background:radial-gradient(at 50% 40%,#fffef5 0 40%,#fde9b8 100%)}.task-ticket.ask{background:radial-gradient(at 50% 40%,#fdf7ff 0 40%,#ecdcfa 100%)}.tk-choose{flex-direction:column;align-items:stretch;gap:2.4cqmin;width:84%;display:flex}.tk-text{color:#0f2a4a;background:#fff;border-radius:3cqmin;margin:0 0 1cqmin;padding:3cqmin 4cqmin;font:900 5.4cqmin/1.3 Nunito,system-ui,sans-serif;box-shadow:0 1cqmin #e7dcc4}.tk-opt{color:#0f2a4a;text-align:left;cursor:pointer;background:#fff;border:.8cqmin solid #fff;border-radius:3cqmin;padding:2.2cqmin 3.5cqmin;font:800 4.4cqmin/1.25 Nunito,system-ui,sans-serif;box-shadow:0 .8cqmin #e7dcc4}.tk-opt.ok{background:#f0fdf4;border-color:#22c55e}.tk-opt.try{background:#fef2f2;border-color:#ef4444}.task-ticket.mock{background:radial-gradient(at 50% 40%,#fff 0 40%,#e8eefc 100%)}.task-wordbank{background:radial-gradient(at 50% 35%,#fff 0 35%,#eef4ff 100%);justify-content:flex-start;gap:3cqmin;padding:3cqmin 4%}.wb-grid{grid-template-columns:repeat(2,1fr);gap:2cqmin;width:100%;display:grid}.wb-card{background:#fff;border:.6cqmin solid #fff;border-radius:3cqmin;flex-direction:column;gap:.8cqmin;padding:1.8cqmin 2.6cqmin;display:flex;box-shadow:0 .8cqmin #dbe7f3}.wb-card b{color:#1e3a8a;font:900 4.6cqmin/1 Nunito,system-ui,sans-serif}.wb-card small{color:#334155;font:700 3cqmin/1.3 Nunito,system-ui,sans-serif}.wb-card.on{border-color:#f59e0b;box-shadow:0 0 0 1cqmin #fde68a}.task-chat{background:radial-gradient(at 50% 35%,#fff 0 35%,#f2ecff 100%);gap:5cqmin}.ch-topic{color:#0f2a4a;background:#fff;border-radius:4cqmin;align-items:center;gap:3cqmin;max-width:86%;padding:4cqmin 5cqmin;font:900 6cqmin/1.25 Nunito,system-ui,sans-serif;display:flex;box-shadow:0 1.2cqmin #ddd3f5}.ch-topic span{font-size:9cqmin}.ch-stars{color:#e5e7eb;flex-wrap:wrap;justify-content:center;gap:2cqmin;max-width:90%;font-size:8cqmin;display:flex}.ch-stars i{font-style:normal;transition:color .3s,scale .3s}.ch-stars i.on{color:#fbbf24;scale:1.15}.ch-badge{color:#7c3aed;background:#fff;border-radius:99px;padding:2cqmin 4cqmin;font:900 4.6cqmin/1 Nunito,system-ui,sans-serif}.info-secret{color:#7c3aed;margin-top:.4em;font-size:.6em;display:block}.task-notes{background:#f8fbff;justify-content:flex-start;gap:3cqmin;padding:3cqmin 5%}.nt-title{color:#0f2a4a;font:900 5cqmin/1 Nunito,system-ui,sans-serif}.nt-rows{gap:2cqmin;width:100%;display:grid}.nt-row{background:#fff;border:.6cqmin solid #fff;border-radius:3cqmin;justify-content:space-between;align-items:center;gap:3cqmin;padding:2cqmin 3cqmin;display:flex;box-shadow:0 .8cqmin #dbe7f3}.nt-row.ok{border-color:#22c55e}.nt-row.try{border-color:#f59e0b}.nt-q{color:#334155;font:800 4cqmin/1.25 Nunito,system-ui,sans-serif}.nt-a{color:#1e3a8a;font:900 4.4cqmin/1 Nunito,system-ui,sans-serif}.nt-write{gap:1.5cqmin;display:flex}.nt-write input{touch-action:auto;-webkit-user-select:text;user-select:text;background:0 0;border:0;border-bottom:.5cqmin solid #93c5fd;outline:none;width:30cqmin;font:800 4.2cqmin Nunito,system-ui,sans-serif}.nt-write button{color:#fff;background:#22c55e;border:0;border-radius:2cqmin;padding:0 2.4cqmin;font-size:4cqmin}.task-exam{background:#f8fbff;justify-content:flex-start;gap:2cqmin;padding:2.5cqmin 4%}.ex-head{align-items:center;gap:2cqmin;width:100%;display:flex}.ex-title{color:#0f2a4a;margin-right:auto;font:900 4.4cqmin/1.1 Nunito,system-ui,sans-serif}.ex-texts{grid-template-columns:repeat(3,1fr);gap:1.6cqmin;width:100%;display:grid}.ex-text{background:#fff;border-radius:2.4cqmin;padding:1.6cqmin 2cqmin;box-shadow:0 .6cqmin #dbe7f3}.ex-text b{color:#1d4ed8;font:900 3.2cqmin Nunito,system-ui,sans-serif}.ex-text p{color:#1f2937;margin:.6cqmin 0 0;font:700 2.55cqmin/1.38 Nunito,system-ui,sans-serif}.ex-ask{color:#475569;margin:0;font:800 3.4cqmin Nunito,system-ui,sans-serif}.ex-item{gap:2cqmin;width:100%;animation:.35s both pm-in;display:grid}.ex-q{color:#0f2a4a;text-align:center;margin:0;font:900 4.4cqmin/1.25 Nunito,system-ui,sans-serif}.ex-opts{flex-wrap:wrap;justify-content:center;gap:2cqmin;display:flex}.ex-opts.many{grid-template-columns:repeat(4,1fr);display:grid}.ex-opt{color:#1e3a8a;touch-action:manipulation;background:#fff;border:.6cqmin solid #c7d7ee;border-radius:2.6cqmin;padding:2cqmin 3cqmin;font:900 3.8cqmin/1.15 Nunito,system-ui,sans-serif;box-shadow:0 .8cqmin #c7d7ee}.ex-opts.many .ex-opt{padding:1.6cqmin 1.4cqmin;font-size:3.1cqmin}.ex-opt.ok{color:#14532d;background:#dcfce7;border-color:#22c55e;animation:.4s ex-pop}.ex-opt.try{color:#9a3412;background:#fff7ed;border-color:#f59e0b;animation:.35s ex-shake}.ex-last{border-radius:99px;padding:1cqmin 3cqmin;font:900 3.4cqmin Nunito,system-ui,sans-serif;animation:.3s both pm-in}.ex-last.ok{color:#15803d;background:#dcfce7}.ex-last.try{color:#9a3412;background:#ffedd5}.ex-score{color:#b45309;margin-left:1cqmin;font-weight:900}.tk-star.miss{color:#fdba74}@keyframes ex-pop{50%{scale:1.08}}@keyframes ex-shake{25%{translate:-1cqmin}75%{translate:1cqmin}}@container (aspect-ratio<1){.ex-texts{grid-template-columns:1fr}.ex-text p{font-size:3.2cqmin}.ex-opts.many{grid-template-columns:repeat(2,1fr)}}.scene-item.ref .scene-emoji{filter:drop-shadow(0 0 1.2cqmin #fde047)drop-shadow(0 0 2.4cqmin #facc15);animation:1s ease-in-out infinite alternate ref-pulse}@keyframes ref-pulse{to{filter:drop-shadow(0 0 .6cqmin #fde047)drop-shadow(0 0 1.4cqmin #facc15)}}:is(.kid-room,.practice) .task-differences .scene{overflow:hidden}:is(.kid-room,.practice) .task-differences .diff-pair{gap:3cqmin;width:94%}:is(.kid-room,.practice) .task-differences .diff-pair>.diff-pic+.diff-pic{border-left:0}:is(.kid-room,.practice) .task-differences .diff-pic{background:#f8fafc;border:.8cqmin solid #fff;border-radius:3cqmin;overflow:hidden;box-shadow:0 1.2cqmin 3cqmin #102a4340}:is(.kid-room,.practice) .task-differences .diff-pic.tap{outline-offset:-.9cqmin;outline:.6cqmin dashed #1e90ff73}:is(.kid-room,.practice) .task-differences .scene-item{box-shadow:none;background:0 0;padding:0}:is(.kid-room,.practice) .task-differences .diff-tag{z-index:5}.task-differences .diff-pic:first-child .diff-tag{background:#1d4ed8}.task-differences .diff-pic:last-child .diff-tag{background:#ea580c}:is(.kid-room,.practice) .task-differences .diff-tag{border:.5cqmin solid #fff;padding:.8cqmin 3.2cqmin;font-size:4.6cqmin;top:1.6cqmin;box-shadow:0 .6cqmin 1.4cqmin #00000040}.scene.painted{isolation:isolate;background:#eef4f9}.scene.painted:before{content:"";z-index:-1;background:var(--bg) center 70% / cover no-repeat;filter:saturate(.92)brightness(1.06);position:absolute;inset:0}.scene.painted:after{content:"";z-index:-1;background:#ffffff1f;position:absolute;inset:0}:is(.kid-room,.practice) .scene.painted{border:.8cqmin solid #fff;border-radius:3cqmin;overflow:hidden;box-shadow:0 1.2cqmin 3cqmin #102a4340}.scene.painted .scene-item,:is(.kid-room,.practice) :is(.task-scene,.task-differences,.task-findcolour) .scene.painted .scene-item{box-shadow:none;background:0 0;padding:0}.scene.painted .scene-emoji{filter:drop-shadow(0 .9cqmin .5cqmin #00000059)}.stage :is(.task-ticket,.task-grammar,.task-exam,.task-notes,.task-chat,.task-wordbank){-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);border-radius:4cqmin;inset:3.5% 4%;box-shadow:0 1.2cqmin 4cqmin #102a432e;background:#ffffffc7!important}.lf .link-btn,.link-btn{color:var(--lf-blue-dark,#1565c0);font:inherit;cursor:pointer;text-underline-offset:3px;background:0 0;border:none;padding:0;font-weight:700;text-decoration:underline}.lf .door-links{color:var(--lf-muted);margin:14px 0 4px;font-size:14px}.lf .door-links a{color:var(--lf-blue-dark);font-weight:700;text-decoration:underline}.lf .door-card select,.lf .door-card textarea,.lf .fam-form select,.lf .fam-form input{border:2px solid var(--lf-border);width:100%;color:var(--lf-ink);background:#fff;border-radius:14px;padding:12px 14px;font:600 16px DM Sans,sans-serif}.lf .door-card textarea{resize:vertical}.lf .door-two{grid-template-columns:1fr 1fr;gap:12px;display:grid}.lf .check-line,.check-line{align-items:center;flex-direction:row!important;gap:10px!important;font-weight:600!important}.lf .check-line input{width:auto!important}.lf .lf-btn.small{border-radius:14px;padding:10px 16px;font-size:15px}.lf .lf-btn:disabled{opacity:.5;cursor:default;transform:none}.lf .field-label{text-align:left;margin:6px 0 8px;font-size:14px;font-weight:800}.lf .row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.lf .door-card .row .lf-btn{flex:1;width:auto}.lf .muted{color:var(--lf-muted)}.lf .small{font-size:13px}.lf .price-line{text-align:center;color:var(--lf-ink);max-width:760px;margin:26px auto 8px;font-size:17px}.lf .price-line strong{color:var(--lf-blue-dark);font:900 24px Nunito,sans-serif}.lf .cta-row.center{justify-content:center}.lf .teach-card{border:1px solid var(--lf-border);box-shadow:var(--lf-shadow);background:#fff;border-radius:28px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;margin:10px 0 40px;padding:30px 34px;display:flex}.lf .teach-card h2{margin:4px 0 6px;font:900 clamp(24px,3vw,32px) Nunito,sans-serif}.lf .teach-card p{color:var(--lf-muted);margin:0}.lf .apply-bar{background:var(--lf-blue-soft);border-radius:99px;height:8px;margin:4px 0 18px;overflow:hidden}.lf .apply-bar i{background:linear-gradient(90deg,#1e90ff,#32c875);border-radius:99px;height:100%;transition:width .3s;display:block}.lf .apply-levels{flex-wrap:wrap;gap:8px;margin-bottom:16px;display:flex}.lf .apply-file{cursor:pointer;background:var(--lf-blue-soft);border-radius:16px;align-items:center;border:2px dashed var(--lf-border)!important;text-align:center!important;padding:26px 16px!important}.lf .apply-file input{display:none}.fam .fam-hello{color:var(--lf-blue-dark);margin-right:4px;font-weight:800}.fam .fam-head h1{margin:10px 0 6px;font:900 clamp(32px,5vw,46px) Nunito,sans-serif}.fam .fam-head h1 em{color:var(--lf-blue);font-style:normal}.fam .fam-head .hero-lead{margin:0 0 22px}.fam .fam-banner{background:var(--lf-blue-soft);border-radius:16px;justify-content:space-between;align-items:center;gap:12px;margin:8px 0;padding:14px 18px;font-weight:700;display:flex}.fam .fam-banner.ok{color:#146c3b;background:#e8fbef}.fam .fam-banner.error{color:#a51d1d;background:#fdecec}.fam .fam-banner button{cursor:pointer;color:inherit;background:0 0;border:none;font-size:22px}.fam .fam-profile-card{border:2px solid var(--lf-blue);background:#fff;border-radius:20px;margin:12px 0 24px;padding:22px;box-shadow:0 10px 28px #1e90ff1f}.fam .fam-profile-card h2{color:var(--lf-ink);margin:2px 0 6px;font:900 25px Nunito,sans-serif}.fam .fam-profile-card .eyebrow{margin:0}.fam .fam-profile-card form{max-width:680px;margin-top:16px}.fam .fam-profile-card label{color:var(--lf-ink);flex-direction:column;gap:6px;margin-bottom:12px;font-size:14px;font-weight:800;display:flex}.fam .fam-profile-card input,.fam .fam-profile-card select{border:2px solid var(--lf-border);background:#fff;border-radius:12px;padding:12px 14px;font:600 16px DM Sans,sans-serif}.fam .fam-profile-card input:focus,.fam .fam-profile-card select:focus{border-color:var(--lf-blue);outline:none;box-shadow:0 0 0 4px #1e90ff1f}.fam .fam-profile-card .lf-btn{margin-top:4px}.fam .fam-grid{grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:20px;margin-bottom:30px;display:grid}.fam .fam-card{border:1px solid var(--lf-border);text-align:left;background:#fff;border-radius:26px;flex-direction:column;gap:14px;padding:22px;display:flex;box-shadow:0 14px 40px #1e66a617}.fam .fam-card h2{margin:0;font:900 24px Nunito,sans-serif}.fam .fam-card h3{margin:0 0 6px;font:800 15px Nunito,sans-serif}.fam .fam-card p{margin:0}.fam .fam-add{min-height:180px;color:var(--lf-blue-dark);cursor:pointer;border-style:dashed;justify-content:center;align-self:start;align-items:center;font:900 20px Nunito,sans-serif}.fam .fam-child{align-items:center;gap:14px;display:flex}.fam .fam-avatar{font-size:46px;line-height:1}.fam .fam-child>div{flex:1}.fam .fam-code{background:var(--lf-blue-soft);color:var(--lf-muted);border-radius:14px;flex-direction:column;align-items:center;padding:6px 12px;font-size:12px;font-weight:700;display:flex}.fam .fam-code strong{color:var(--lf-blue-dark);letter-spacing:.08em;font:900 22px Nunito,sans-serif}.fam .fam-stats{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.fam .fam-stats div{text-align:center;background:#f7fbff;border-radius:14px;flex-direction:column;padding:10px 6px;display:flex}.fam .fam-stats strong{color:var(--lf-ink);font:900 22px Nunito,sans-serif}.fam .fam-stats span{color:var(--lf-muted);font-size:12px;font-weight:700}.fam .fam-plan{background:#f3fbf6;border:1px solid #cdeedb;border-radius:18px;flex-direction:column;align-items:flex-start;gap:6px;padding:14px 16px;display:flex}.fam .fam-plan.past_due{background:#fff7e6;border-color:#f6d79a}.fam .fam-plan.none{border-color:var(--lf-border);background:#f7fbff}.fam .fam-plan>.lf-btn{text-align:center;justify-content:center;width:100%;margin:2px 0 12px}.fam .fam-plan>.lf-btn:last-child{margin-bottom:8px}.fam .fam-plan>p{margin:0}.fam .fam-plan>p+.lf-btn{margin-top:6px}.fam .fam-plan-top{justify-content:space-between;gap:10px;width:100%;display:flex}.fam .fam-warn{color:#9a5b00;font-weight:700}.fam .fam-refund{color:#1f7a4d;font-weight:700}.fam .fam-upcoming ul,.fam .fam-payments ul{margin:0 0 6px;padding:0;list-style:none}.fam .fam-upcoming li,.fam .fam-payments li{border-bottom:1px solid #eef4fa;justify-content:space-between;gap:10px;padding:8px 0;font-size:15px;display:flex}.fam .fam-payments{border:1px solid var(--lf-border);background:#fff;border-radius:22px;max-width:520px;margin-bottom:40px;padding:20px 22px}.fam .fam-payments h2{margin:0 0 8px;font:900 22px Nunito,sans-serif}.fam .fam-level{background:var(--lf-blue-soft);border-radius:12px;padding:10px 12px}.fam .fam-form label{flex-direction:column;gap:6px;font-size:14px;font-weight:800;display:flex}.lf .avatar-picker{flex-wrap:wrap;gap:6px;display:flex}.lf .avatar-picker button{cursor:pointer;background:#f7fbff;border:2px solid #0000;border-radius:12px;width:46px;height:46px;font-size:26px}.lf .avatar-picker button.selected{border-color:var(--lf-blue);background:#fff}.fam-modal{z-index:50;background:#102a4373;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.fam-sheet{background:#fff;border-radius:26px;flex-direction:column;gap:14px;width:min(640px,100%);max-height:calc(100vh - 32px);padding:26px 24px;display:flex;position:relative;overflow:auto;box-shadow:0 30px 80px #00000040}.fam-sheet h2{margin:0;font:900 26px Nunito,sans-serif}.fam-x{cursor:pointer;color:var(--lf-muted);background:0 0;border:none;font-size:28px;position:absolute;top:12px;right:14px}.fam-steps{color:var(--lf-muted);gap:8px;font-size:13px;font-weight:800;display:flex}.fam-steps span{background:#f1f6fb;border-radius:99px;padding:5px 10px}.fam-steps span.on{background:var(--lf-blue);color:#fff}.fam-steps span.done{color:#146c3b;background:#e8fbef}.plan-options{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px;display:grid}.plan-option{border:2px solid var(--lf-border);cursor:pointer;text-align:left;color:var(--lf-ink);background:#fff;border-radius:16px;flex-direction:column;align-items:flex-start;gap:2px;padding:14px;font-family:inherit;display:flex}.plan-option.on{border-color:var(--lf-blue);background:var(--lf-blue-soft)}.plan-option strong{font:900 18px Nunito,sans-serif}.plan-option span{color:var(--lf-blue-dark);font-weight:800}.plan-option small{color:var(--lf-muted)}.plan-mode{background:#f1f6fb;border-radius:99px;gap:6px;margin:4px 0 12px;padding:4px;display:flex}.plan-mode button{color:var(--lf-muted);cursor:pointer;background:0 0;border:0;border-radius:99px;flex:1;padding:9px 10px;font:800 14px Nunito,sans-serif}.plan-mode button.on{color:var(--lf-ink);background:#fff;box-shadow:0 2px 8px #102a431a}.plan-packages{flex-direction:column;gap:10px;margin-bottom:10px;display:flex}.plan-package{border:2px solid var(--lf-border);cursor:pointer;text-align:left;color:var(--lf-ink);background:#fff;border-radius:16px;grid-template-columns:1fr auto;align-items:center;gap:2px 12px;padding:12px 14px;font-family:inherit;display:grid}.plan-package.on{border-color:var(--lf-blue);background:var(--lf-blue-soft)}.plan-package.popular{border-color:#ffd43b}.plan-package.popular.on{border-color:var(--lf-blue)}.plan-package .pp-head{align-items:center;gap:8px;display:flex}.plan-package .pp-head strong{font:900 18px Nunito,sans-serif}.plan-package .pp-head em{text-transform:uppercase;letter-spacing:.04em;color:#8a6400;background:#fff4c2;border-radius:99px;padding:2px 8px;font-size:11px;font-style:normal;font-weight:900}.plan-package .pp-what{color:var(--lf-blue-dark);grid-column:1;font-size:14px;font-weight:800}.plan-package .pp-what small{color:var(--lf-muted);font-weight:700}.plan-package .pp-price{flex-direction:column;grid-area:1/2/span 2;align-items:flex-end;display:flex}.plan-package .pp-price strong{font:900 20px Nunito,sans-serif}.plan-package .pp-price s{color:var(--lf-muted);font-size:13px}.plan-package .pp-save{color:#146c3b;font-size:12px;font-weight:900}.plan-package .pp-per{grid-column:1/span 2}.plan-package .pp-note{color:#9a5b00;grid-column:1/span 2;font-weight:700}.fam-pkg-match{color:#146c3b;margin:6px 0 0;font-weight:700}.plan-week{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.plan-week button{border:2px solid var(--lf-border);cursor:pointer;width:44px;height:44px;color:var(--lf-blue-dark);background:#fff;border-radius:50%;font:900 22px Nunito,sans-serif}.plan-week button:disabled{opacity:.4;cursor:default}.plan-week strong{text-align:center;min-width:24px;font:900 30px Nunito,sans-serif}.plan-total{background:#f3fbf6;border-radius:16px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:14px 16px;display:flex}.plan-total strong{color:#146c3b;font:900 28px Nunito,sans-serif}.plan-summary{border-collapse:collapse;width:100%}.plan-summary td{vertical-align:top;border-bottom:1px solid #eef4fa;padding:10px 0}.plan-summary td:first-child{color:var(--lf-muted);width:34%}.time-days{grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:14px;display:grid}.time-day h4{margin:0 0 6px;font:800 15px Nunito,sans-serif}.time-list{flex-wrap:wrap;gap:6px;display:flex}.time-list.wide .time-chip{flex:220px}.lf .time-chip,.time-chip{border:2px solid var(--lf-border,#dceaf6);cursor:pointer;color:var(--lf-ink,#102a43);background:#fff;border-radius:12px;padding:8px 12px;font:800 15px DM Sans,sans-serif}.time-chip.on{background:var(--lf-blue,#1e90ff);border-color:var(--lf-blue,#1e90ff);color:#fff}.time-chip small{opacity:.8;font-weight:600}.avail{flex-direction:column;gap:12px;display:flex}.avail-top{align-items:flex-end}.avail-zone{flex-direction:column;gap:4px;font-size:.9rem;font-weight:700;display:flex}.avail-scroll{border:1px solid var(--line);border-radius:12px;max-height:460px;overflow:auto}.avail-grid{border-collapse:separate;border-spacing:3px;-webkit-user-select:none;user-select:none;touch-action:none}.avail-grid th{color:var(--muted);background:#fff;padding:0 6px;font-size:.75rem;font-weight:700;position:sticky;top:0}.avail-grid tbody th{text-align:right;position:sticky;left:0}.avail-grid td{cursor:pointer;background:#f1f3f9;border-radius:5px;width:56px;height:20px}.avail-grid td.on{background:#4f9cf9}.avail-grid td.booked,.avail-key.booked{cursor:not-allowed;background:#16a34a}.avail-grid td.held{cursor:not-allowed;background:#f5b13d}.avail-key{vertical-align:middle;border-radius:3px;width:12px;height:12px;margin:0 2px 0 8px;display:inline-block}.avail-msg{color:var(--ok)}.admin-tabs{flex-wrap:wrap;gap:6px;margin:4px 0 18px;display:flex}.admin-tabs button{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:99px;padding:8px 14px;font-weight:700}.admin-tabs button.on{background:var(--brand);color:#fff;border-color:var(--brand)}.admin-tiles{grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:14px;display:grid}.admin-tile{text-align:left;cursor:pointer;flex-direction:column;gap:4px;margin:0;display:flex}.admin-tile strong{font-size:2rem}.admin-tile.alert{background:#fffaf0;border-color:#f5b13d}.admin-table{border-collapse:collapse;border:1px solid var(--line);background:#fff;border-radius:12px;width:100%;margin-bottom:16px;font-size:.92rem;overflow:hidden}.admin-table th,.admin-table td{text-align:left;border-bottom:1px solid var(--line);padding:9px 10px}.admin-table th{color:var(--muted);background:#f8f9fd;font-size:.8rem}.admin-table tr.off td{color:var(--muted);text-decoration:line-through}.admin-table td.row{flex-wrap:nowrap}.app-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.app-head h3{margin:0}.app-about{white-space:pre-wrap;background:#f8f9fd;border-radius:10px;padding:10px}.tag-badge{color:#fff;vertical-align:middle;background:#f5b13d;border-radius:99px;margin-left:6px;padding:1px 9px;font-size:.85rem;display:inline-block}.admin-search{border:1px solid var(--line);border-radius:10px;min-width:240px;padding:8px 12px}.admin-settings{flex-direction:column;gap:12px;max-width:560px;display:flex}.admin-settings label{flex-direction:column;gap:4px;font-weight:700;display:flex}.admin-settings .check-line{font-weight:600}.admin-settings input,.admin-settings select{border:1px solid var(--line);font:inherit;border-radius:10px;padding:9px 12px}.my-week .admin-table{margin:0}@media (width<=640px){.lf .door-two,.fam .fam-grid{grid-template-columns:1fr}.fam .fam-stats{grid-template-columns:repeat(2,1fr)}.admin-table{display:block;overflow-x:auto}}.plan-week .plan-week-n{text-align:center;border:2px solid var(--lf-border);width:76px;color:var(--lf-ink);border-radius:12px;padding:4px 6px;font:900 26px Nunito,sans-serif}.records-top{justify-content:space-between}.records-month{align-items:center;gap:8px;font-size:.9rem;font-weight:700;display:flex}.records-month input{border:1px solid var(--line);font:inherit;border-radius:10px;padding:6px 10px}.records-tiles{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px;margin:6px 0 10px;display:grid}.records-tiles div{background:#f8f9fd;border-radius:12px;flex-direction:column;padding:10px 12px;display:flex}.records-tiles strong{font-size:1.5rem}.records-tiles span{color:var(--muted);font-size:.8rem}.records-tiles .pay{background:#effaf3}.records-tiles .alert{background:#fff6e5}.result{font-weight:600}.result.ok{color:var(--ok)}.result.warn{color:var(--amber)}.result.alert{color:var(--red)}.result.muted{color:var(--muted)}.records-mark{margin-top:4px}.cover-card{background:#fffaf0;border-color:#f5b13d}.away-form{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));align-items:end;gap:10px;display:grid}.away-form label{flex-direction:column;gap:4px;font-size:.9rem;font-weight:700;display:flex}.away-form input{border:1px solid var(--line);font:inherit;border-radius:10px;padding:8px 10px}.rates-edit input{border:1px solid var(--line);border-radius:8px;width:76px;padding:5px 8px}.admin-table tfoot td{background:#f8f9fd;font-weight:700}.earnings{background:linear-gradient(135deg,#effaf3,#f3f8ff);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.earnings>div:first-child{flex-direction:column;display:flex}.earnings strong{color:#146c3b;font-size:2rem}.earnings-parts{flex-wrap:wrap;align-items:center;gap:14px;font-size:.9rem;display:flex}.earnings-warn{color:var(--amber)}.away-days{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px;margin:6px 0 12px;display:grid}.away-day h4{margin:0 0 6px;font-size:.9rem}.away-lesson{text-align:left;border:2px solid var(--line);cursor:pointer;width:100%;font:inherit;background:#fff;border-radius:10px;flex-direction:column;align-items:flex-start;margin-bottom:6px;padding:8px 10px;display:flex}.away-lesson.on{border-color:var(--red);background:#fdecec}.away-lesson small{color:var(--amber);font-weight:700}.away-reason{flex-direction:column;gap:4px;max-width:520px;margin-bottom:10px;font-size:.9rem;font-weight:700;display:flex}.away-reason input{border:1px solid var(--line);font:inherit;border-radius:10px;padding:8px 10px}.away-msg{color:var(--ok)}.pipeline{flex-wrap:wrap;gap:6px;margin:0 0 6px;display:flex}.pipeline span{color:var(--muted);background:#f1f3f9;border-radius:99px;padding:6px 12px;font-size:.85rem;font-weight:700}.pipeline span.on{color:#9a5b00;background:#fff6e5}.pipeline span:not(:last-child):after{content:" →";color:var(--line)}.invite-form input{border:1px solid var(--line);font:inherit;border-radius:8px;padding:6px 8px;font-size:.85rem}.ob-admin{grid-template-columns:minmax(260px,1fr) 1fr;gap:16px;display:grid}.ob-mini{margin:0;padding:0;font-size:.88rem;list-style:none}.ob-mini li{color:var(--muted);padding:2px 0}.ob-mini li.done{color:var(--ok)}.getting-started{background:#f7fbff;border-color:#b9d8ff}.ob-bar{background:#e3edf9;border-radius:99px;height:8px;margin:6px 0 10px;overflow:hidden}.ob-bar i{background:linear-gradient(90deg,#4f9cf9,#16a34a);height:100%;display:block}.ob-steps{margin:0;padding:0;list-style:none}.ob-steps li{border-bottom:1px solid var(--line);grid-template-columns:28px 1fr auto;align-items:center;gap:10px;padding:10px 0;display:grid}.ob-steps li.done .ob-label{color:var(--muted);text-decoration:line-through}.ob-tick{border:2px solid var(--line);color:#fff;border-radius:50%;place-items:center;width:24px;height:24px;font-weight:900;display:grid}.ob-steps li.done .ob-tick{background:var(--ok);border-color:var(--ok)}.ob-action{text-align:right;justify-self:end;max-width:420px}.ob-file input{display:none}.ob-payout{flex-wrap:wrap;grid-column:2/-1;gap:8px;display:flex}.ob-payout input,.ob-payout select{border:1px solid var(--line);font:inherit;border-radius:8px;padding:7px 10px}.ob-payout input{flex:180px}.guide .guide-nav{flex-wrap:wrap;gap:14px;margin:0 0 14px;font-weight:700;display:flex}.guide section h3{margin:14px 0 6px}.guide section li{margin:4px 0;line-height:1.5}.guide-rules li{margin:8px 0}.guide-done{color:var(--ok);font-weight:700}.guide-agree{gap:8px;margin:10px 0;display:flex}.lf .interview-card{text-align:left}.lf .interview-tips{color:var(--lf-muted);margin:0 0 16px;padding-left:20px;line-height:1.6}.lf .interview-speako{aspect-ratio:1100/1240;justify-self:center;width:min(260px,60%)}@media (width<=720px){.ob-admin{grid-template-columns:1fr}.ob-steps li{grid-template-columns:28px 1fr}.ob-action{text-align:left;grid-column:2;justify-self:start}}.tour{z-index:900;pointer-events:none;position:fixed;inset:0}.tour-dim{background:#0f172a73;position:absolute;inset:0}.tour-spot{border-radius:14px;transition:all .25s;position:absolute;box-shadow:0 0 0 4px #ffd43b,0 0 0 9999px #0f172a73}.tour-card{pointer-events:auto;background:#fff;border-radius:16px;width:340px;max-width:calc(100vw - 24px);padding:14px 16px;position:absolute;box-shadow:0 20px 60px #0000004d}.tour-center{top:50%;left:50%;transform:translate(-50%,-50%)}.tour-card h3{margin:4px 0 6px;font-size:1.1rem}.tour-card p{margin:0 0 8px;font-size:.93rem;line-height:1.45}.tour-head{justify-content:space-between;align-items:center;display:flex}.tour-count{color:var(--muted);font-size:.78rem;font-weight:800}.tour-x{cursor:pointer;color:var(--muted);background:0 0;border:none;font-size:20px}.tour-do{color:#9a5b00;font-weight:700}.tour-btns{justify-content:flex-end}.tour-reopen{z-index:900;cursor:pointer;background:#ffd43b;border:none;border-radius:99px;padding:10px 14px;font-weight:800;position:fixed;bottom:16px;right:16px;box-shadow:0 8px 20px #0003}.tour-finish{z-index:950;text-align:center;background:#fff;border-radius:22px;width:min(420px,100vw - 24px);padding:22px;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 30px 80px #00000059}.tour-finish-speako{aspect-ratio:1180/1220;width:200px;margin:0 auto}.practice-card{background:#fbfdff;border-style:dashed;border-color:#b9d8ff}.practice-head{align-items:flex-start;gap:12px;display:flex}.practice-avatar{font-size:2.4rem;line-height:1}.practice-body{grid-template-columns:minmax(240px,300px) 1fr;align-items:start;gap:16px;margin-top:10px;display:grid}.practice-body .child-card{margin:0}.practice-side{flex-direction:column;align-items:flex-start;gap:10px;display:flex}@media (width<=640px){.practice-body{grid-template-columns:1fr}}.fam .fam-start{justify-content:center;width:100%;padding:14px 18px;font-size:18px}.fam .fam-plan-line{margin:2px 0 0}.fam .fam-help-btn{border-radius:50%;justify-content:center;width:40px;height:40px;padding:0;font-size:18px;font-weight:900}.fam .fam-help p{margin:0 0 10px;line-height:1.5}.fam .fam-away,.fam .fam-bill-list,.fam .fam-records{margin:0;padding:0;list-style:none}.fam .fam-away li{border-bottom:1px solid #eef4fa;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:10px 0;display:flex}.fam .fam-bill-plans{gap:8px;display:grid}.fam .fam-bill-plan{background:#f3fbf6;border:1px solid #cdeedb;border-radius:16px;gap:4px;padding:12px 14px;display:grid}.fam .fam-bill-plan.past_due{background:#fff7e6;border-color:#f6d79a}.fam .fam-bill-plan p{margin:0}.fam .fam-sheet h3{margin:6px 0 0;font:900 18px Nunito,sans-serif}.fam .fam-bill-list li{border-bottom:1px solid #eef4fa;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:9px 0;font-size:15px;display:grid}.fam .fam-bill-more summary{cursor:pointer}.fam .fam-bill-more .link-btn{margin-top:6px;display:block}.fam .fam-pick{flex-wrap:wrap;gap:8px;display:flex}.fam .fam-pick button{border:1px solid var(--lf-border);cursor:pointer;background:#fff;border-radius:99px;padding:7px 14px;font-weight:800}.fam .fam-pick button.on{background:var(--lf-blue);border-color:var(--lf-blue);color:#fff}.fam .fam-bar{background:#eef4fa;border-radius:99px;height:10px;overflow:hidden}.fam .fam-bar i{background:#2fbf71;border-radius:99px;height:100%;display:block}.fam .fam-records li{border-bottom:1px solid #eef4fa;gap:3px;padding:10px 0;display:grid}.fam .fam-rec-top{flex-wrap:wrap;justify-content:space-between;gap:10px;font-size:15px;display:flex}.fam .fam-tag{color:var(--lf-muted);white-space:nowrap;background:#f1f6fb;border-radius:99px;padding:3px 10px;font-size:12px;font-weight:800}.fam .fam-tag.ok{color:#146c3b;background:#e8fbef}.fam .fam-tag.warn{color:#9a5b00;background:#fff4e5}.fam .fam-play{justify-content:center;width:100%}.fam .fam-noplan-more{flex-direction:column;gap:18px;margin-top:14px;display:flex}.fam .fam-noplan-more .lf-btn{justify-content:center;width:100%;margin:0}.fam .fam-trial{justify-content:center;width:100%}.fam .fam-start.locked,.fam .fam-start.locked:disabled{color:#34506b;box-shadow:none;cursor:default;opacity:1;background:#eef3f9;font-size:16px;transform:none}.interview-room{color:#e2e8f0;background:#0f1729;grid-template-rows:auto minmax(0,1fr) auto;font-family:DM Sans,system-ui,sans-serif;display:grid;position:fixed;inset:0;overflow:hidden}.iv-top{background:#111a2e;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:10px 16px;font-size:.95rem;display:flex}.iv-chips{flex-wrap:wrap;gap:8px;display:flex}.iv-chip{background:#ffffff1a;border-radius:99px;padding:4px 10px;font-size:.82rem;font-weight:700}.iv-chip.live{color:#fff;background:#dc2626}.iv-main{min-height:0;display:flex;position:relative;overflow:hidden}.interview-videos{flex:1;min-width:0;min-height:0;position:relative;overflow:hidden}.interview-videos .video-tile{overflow:hidden}.interview-videos .video-tile video{object-fit:cover;width:100%;height:100%;display:block}.interview-remote{position:absolute;inset:0}.interview-self{aspect-ratio:4/3;z-index:2;border:2px solid #fff6;border-radius:14px;width:min(240px,30vw);position:absolute;bottom:16px;right:16px;box-shadow:0 8px 24px #0006}.interview-videos.with-screen{grid-template-rows:repeat(2,minmax(0,1fr));grid-template-columns:minmax(0,1fr) 220px;gap:8px;padding:8px;display:grid}.iv-screen{background:#000;border-radius:12px;grid-row:1/3}.iv-screen video{object-fit:contain!important}.iv-small{border-radius:12px}.interview-room .video-placeholder{color:#cbd5e1;text-align:center;place-items:center;height:100%;padding:12px;font-size:1.05rem;display:grid}.iv-walk{color:#102a43;background:#fff;border-left:4px solid #1e90ff;flex-direction:column;flex:none;gap:10px;width:min(440px,42vw);padding:14px;display:flex;overflow:auto}.iv-walk-top{justify-content:space-between;font-family:Nunito,sans-serif;font-size:1.05rem;display:flex}.iv-walk-top span{color:#627d98;font-weight:800}.iv-walk-img{border:1px solid #e4ebf3;border-radius:10px;width:100%;box-shadow:0 4px 14px #102a431f}.iv-walk h3{margin:4px 0 0;font:900 1.25rem Nunito,sans-serif}.iv-walk p{margin:0;line-height:1.5}.iv-walk-nav{justify-content:space-between;gap:8px;margin-top:auto;display:flex}.iv-walk-hint{color:#627d98;font-size:.85rem;margin-top:auto!important}.iv-note{z-index:6;color:#fff;background:#102a43;border-radius:12px;max-width:calc(100% - 32px);margin:0;padding:10px 16px;font-weight:700;position:absolute;bottom:96px;left:50%;translate:-50%;box-shadow:0 8px 24px #0006}.iv-bar{padding:10px 12px calc(10px + env(safe-area-inset-bottom));z-index:5;background:#111a2e;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;display:flex;position:relative}.iv-btn{color:#fff;cursor:pointer;background:#23304b;border:0;border-radius:14px;flex-direction:column;align-items:center;gap:2px;min-width:72px;padding:8px 12px;font:800 1.25rem DM Sans,sans-serif;display:inline-flex}.iv-btn span{font-size:.75rem}.iv-btn:hover{background:#2d3d5f}.iv-btn:disabled{opacity:.4;cursor:default}.iv-btn.off{color:#9b1c1c;background:#fde2e2}.iv-btn.on{background:#1e90ff}.iv-btn.primary{color:#fff;background:#1e90ff;flex-direction:row;padding:10px 16px;font-size:.95rem}.iv-walk .iv-btn:not(.primary){color:#102a43;background:#eef3f9;flex-direction:row;padding:10px 16px;font-size:.95rem}.iv-btn.leave{background:#dc2626}.iv-btn.end{background:#7f1d1d}.interview-audio{z-index:6;position:absolute;top:60px;left:50%;translate:-50%}@media (width<=760px){.iv-main{flex-direction:column}.iv-walk{border-top:4px solid #1e90ff;border-left:0;width:100%;max-height:55%}.interview-videos.with-screen{grid-template-rows:minmax(0,1fr) 110px;grid-template-columns:1fr 1fr}.iv-screen{grid-area:1/1/auto/3}.iv-btn{min-width:56px;padding:7px 8px}.iv-btn span{font-size:.68rem}}.iv-walk-pic{cursor:zoom-in;background:0 0;border:0;padding:0;position:relative}.iv-walk.zoom .iv-walk-pic{cursor:zoom-out}.iv-walk-pic span{color:#fff;background:#102a43cc;border-radius:8px;padding:3px 8px;font-size:.75rem;font-weight:800;position:absolute;bottom:8px;right:8px}.iv-walk.zoom{width:min(900px,68vw)}@media (width<=760px){.iv-walk.zoom{width:100%;max-height:75%}}.fam .fam-teacher{color:var(--lf-ink);margin:2px 0 0}.records-export{justify-content:flex-end;margin:4px 0 8px}.fam .fam-news{border-top:1px solid #eef4fa;justify-content:space-between;align-items:center;gap:14px;padding-top:12px;display:flex}.fam .fam-news p{margin:2px 0 0}.fam .fam-switch{cursor:pointer;background:#c7d3e2;border:0;border-radius:99px;flex:none;width:50px;height:28px;position:relative}.fam .fam-switch:after{content:"";background:#fff;border-radius:50%;width:22px;height:22px;transition:left .15s;position:absolute;top:3px;left:3px}.fam .fam-switch.on{background:#2fbf71}.fam .fam-switch.on:after{left:25px}.fam .fam-feedback{background:#fffaf0;border:1.5px solid #ffe2a8;border-radius:16px;flex-direction:column;gap:8px;margin:10px 0;padding:12px 14px;display:flex}.fam .fam-faces{gap:10px;display:flex}.fam .fam-faces button{cursor:pointer;font:inherit;background:#fff;border:1.5px solid #f0d9a8;border-radius:14px;flex-direction:column;flex:1;align-items:center;gap:2px;padding:8px 4px;display:flex}.fam .fam-faces button span{font-size:1.8rem;line-height:1}.fam .fam-faces button:hover{background:#fff3d6}.fam .fam-feedback textarea{box-sizing:border-box;width:100%;font:inherit;border:1.5px solid #e6dcc6;border-radius:12px;padding:8px 10px}.fam .fam-terms{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.fam .fam-concern{flex-direction:column;gap:12px;display:flex}.legal-page .legal-card{background:#fff;border-radius:24px;max-width:760px;margin:12px auto 40px;padding:22px 22px 30px;line-height:1.6;box-shadow:0 8px 30px #102a4314}.legal-page .legal-card h2{margin:18px 0 6px;font-size:1.15rem}.legal-page .legal-tabs{flex-wrap:wrap;gap:8px;margin-bottom:8px;display:flex}.legal-page .legal-tabs a{color:inherit;background:#eef3f9;border-radius:99px;padding:6px 12px;font-size:.9rem;font-weight:700;text-decoration:none}.legal-page .legal-tabs a.on{color:#fff;background:#102a43}.code-input{letter-spacing:.4em;text-align:center;font-size:1.6rem!important}.time-pick{gap:12px;display:grid}.time-day-name{color:var(--lf-ink,#102a43);margin-bottom:6px;font-size:14px;font-weight:800}.time-pick .time-list{flex-wrap:wrap;gap:8px;display:flex}.time-pick .time-chip.on{box-shadow:0 0 0 4px #1e90ff33}.time-confirm{background:#f3f8ff;border:1px solid #cfe2fb;border-radius:14px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-top:4px;padding:12px;display:flex;position:sticky;bottom:-1px}.time-confirm .lf-btn[disabled]{opacity:.5;cursor:not-allowed}.fam-ok{color:#14532d;background:#ecfdf3;border:1px solid #b7ebc8;border-radius:10px;padding:8px 10px;font-weight:700}.fam .fam-hello-m,.fam .pill-icon{display:none}@media (width<=560px){.lf.fam .site-header{flex-wrap:nowrap;gap:8px;height:64px}.lf.fam .brand img{width:38px;height:38px}.lf.fam .brand>span{display:none}.lf.fam .header-actions{flex-wrap:nowrap;gap:6px}.fam .fam-hello{display:none}.fam .fam-hello-m{color:var(--lf-blue-dark);margin:4px 0 0;font-weight:800;display:block}.lf.fam .header-actions .header-pill{justify-content:center;min-width:40px;height:40px;padding:0 10px;font-size:15px}.fam .pill-word{display:none}.fam .pill-icon{font-size:17px;line-height:1;display:inline}}@media (width<=360px){.lf.fam .header-actions{gap:4px}.lf.fam .header-actions .header-pill{min-width:36px;height:36px;padding:0 8px}}.fam-drawer{width:min(560px,100%)}.fam-drawer.fam-form{margin:0}@media (width<=560px){.fam-modal.fam-drawer-wrap{place-items:end stretch;padding:0}.fam-drawer{width:100%;max-height:90vh;padding:26px 18px calc(18px + env(safe-area-inset-bottom));border-radius:24px 24px 0 0;animation:.28s cubic-bezier(.2,.9,.3,1) both fam-drawer-up}.fam-drawer:before{content:"";background:#d5dee8;border-radius:99px;width:44px;height:5px;margin-left:-22px;position:absolute;top:8px;left:50%}}@keyframes fam-drawer-up{0%{transform:translateY(100%)}}@media (prefers-reduced-motion:reduce){.fam-drawer{animation:none}}[dir=rtl] .fam .fam-hello{margin-left:4px;margin-right:0}.fam .lr h3{margin:18px 0 8px}.fam .lr-skills{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.fam .lr-skill{background:#f7fbff;border-radius:14px;align-items:center;gap:10px;padding:10px;display:flex}.fam .lr-skill strong{color:var(--lf-ink);font:900 15px Nunito,sans-serif;display:block}.fam .lr-skill span{color:var(--lf-muted);font-size:12px;font-weight:700}.fam .lr-skill em{font-size:12px;font-style:normal;font-weight:800;display:block}.fam .lr-skill em.up{color:#16a34a}.fam .lr-skill em.down{color:#d97706}.fam .lr-ring{flex:none;width:58px}.fam .lr-ring-t{fill:var(--lf-ink);font:900 14px Nunito,sans-serif}.fam .lr-big{text-align:center;color:#b45309;flex:none;width:58px;font:900 20px Nunito,sans-serif}.fam .lr-big img{vertical-align:-2px;width:18px}.fam .lr-ladder{background:#eef4fa;border-radius:99px;gap:2px;height:16px;display:flex;overflow:hidden}.fam .lr-legend{color:var(--lf-muted);flex-wrap:wrap;gap:6px 12px;margin-top:6px;font-size:12px;font-weight:700;display:flex}.fam .lr-legend i{vertical-align:-1px;border-radius:3px;width:10px;height:10px;margin-right:4px;display:inline-block}.fam .lr-legend b{color:var(--lf-ink)}.fam .lr-chart{background:#f7fbff;border-radius:14px;align-items:flex-end;gap:6px;height:120px;padding:8px;display:flex;overflow-x:auto}.fam .lr-col{flex-direction:column;flex:1;align-items:center;gap:4px;min-width:28px;height:100%;display:flex}.fam .lr-bars{flex:1;justify-content:center;align-items:flex-end;gap:3px;width:100%;display:flex}.fam .lr-bars i{border-radius:4px 4px 0 0;width:40%;max-width:14px;min-height:2px}.fam .lr-right{background:#38bdf8}.fam .lr-said{background:#22c55e}.fam .lr-col small{color:var(--lf-muted);white-space:nowrap;font-size:10px}.fam .lr-units{gap:6px;display:grid}.fam .lr-unit{background:#f7fbff;border-radius:12px}.fam .lr-unit-h{width:100%;color:var(--lf-ink);cursor:pointer;text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;gap:8px;padding:10px 12px;font:800 14px Nunito,sans-serif;display:flex}.fam .lr-unit-h img{vertical-align:-3px;width:18px}.fam .lr-unit-n{color:var(--lf-muted);white-space:nowrap;font-size:12px}.fam .lr-chips{flex-wrap:wrap;gap:5px;padding:0 12px 12px;display:flex}.fam .lr-chip{color:#334155;background:#e2e8f0;border-radius:99px;padding:3px 10px;font-size:13px;font-weight:800}.fam .lr-chip.s1{color:#0369a1;background:#e0f2fe}.fam .lr-chip.s2{color:#92400e;background:#fef3c7}.fam .lr-chip.s3{color:#166534;background:#dcfce7}.fam .lr-chip.s4{color:#fff;background:#16a34a}@media (width<=640px){.fam .lr-skills{grid-template-columns:1fr}}.ladder-list{gap:4px;padding-left:22px;display:grid}.ladder-table td{vertical-align:top;min-width:130px;font-size:13px}.marking-practice{gap:14px;margin:10px 0;display:grid}.mp-sample{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:12px 14px}.mp-level{margin-bottom:6px;font-weight:800}.mp-line{margin:2px 0;font-style:italic}.mp-picks{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.mp-picks .chip.right{outline:2px solid #16a34a}.mp-why{margin:8px 0 0;font-size:14px}.mp-why.ok{color:#15803d}.mp-why.no{color:#b45309}.lr-four{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}@media (width>=720px){.lr-four{grid-template-columns:repeat(4,minmax(0,1fr))}}.lr-pace{background:#eff6ff;border-radius:12px;padding:10px 12px;font-size:14px}.lr-goals{gap:6px;margin:0;padding:0;list-style:none;display:grid}.lr-goals li{background:#f8fafc;border-radius:10px;justify-content:space-between;align-items:center;gap:10px;padding:8px 10px;font-size:14px;display:flex}.lr-goals li em{white-space:nowrap;border-radius:99px;padding:3px 8px;font-size:12px;font-style:normal;font-weight:800}.lr-goals li.secure em{color:#15803d;background:#dcfce7}.lr-goals li.growing em{color:#a16207;background:#fef3c7}.lr-goals li.notyet em{color:#475569;background:#e2e8f0}.lr-writing{gap:10px;display:grid}.lr-wr{background:#fffdf7;border:1px solid #f1e6c8;border-radius:12px;margin:0;padding:10px 12px}.lr-wr figcaption{color:#64748b;margin-bottom:6px;font-size:12px}.lr-wr blockquote{white-space:pre-wrap;overflow-wrap:anywhere;margin:0;font-size:15px;line-height:1.5}.lr-wr-marks{color:#475569;flex-wrap:wrap;gap:4px 12px;margin-top:6px;font-size:12px;display:flex}.level-check .lc-level{border-top:1px solid #e2e8f0;margin-top:10px;padding-top:10px}.lc-papers{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;margin:8px 0;display:grid}.lc-paper{background:#f8fafc;border-radius:10px;flex-direction:column;gap:2px;padding:8px 10px;font-size:14px;display:flex}.lc-shields small{color:#64748b;margin-left:4px}.lc-decide{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.lc-decide input{flex:1;min-width:200px}.lc-last{color:#15803d}.lr-home{background:#f0fdf4;border-radius:14px;margin:8px 0;padding:10px 12px}.lr-ideas{gap:6px;margin:6px 0;padding:0;list-style:none;display:grid}.lr-ideas li{background:#fff;border-radius:10px;justify-content:space-between;align-items:center;gap:10px;padding:8px 10px;font-size:14px;display:flex}.lr-ideas .btn.done{color:#fff;background:#16a34a}.fam .fam-edit{border:1px solid var(--lf-line,#e2e8f0);font:inherit;color:var(--lf-muted,#64748b);cursor:pointer;vertical-align:middle;background:#fff;border-radius:999px;margin-left:8px;padding:2px 10px;font-size:13px;font-weight:700}.fam .fam-edit:hover{color:var(--lf-blue,#1e90ff);border-color:currentColor}
