.opening-splash[data-v-3cc61ee4]{position:fixed;inset:0;z-index:1000;display:block;overflow:hidden;background:#fff3c7;color:#243044;transition:opacity .36s ease,transform .36s ease}.opening-video[data-v-3cc61ee4]{position:absolute;inset:0;display:block;width:100%;height:100%;-o-object-fit:cover;object-fit:cover;-o-object-position:center;object-position:center}.opening-fallback-image[data-v-3cc61ee4]{z-index:1}.opening-sound-button[data-v-3cc61ee4]{position:absolute;right:max(1rem,env(safe-area-inset-right));bottom:max(1rem,env(safe-area-inset-bottom));z-index:4;display:grid;width:3rem;height:3rem;place-items:center;border:2px solid rgba(255,255,255,.82);border-radius:999px;background:#ffffffb8;color:#243044;font-size:1.35rem;font-weight:950;box-shadow:0 12px 28px #2430442e;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);animation:opening-sound-pulse-3cc61ee4 1.5s ease-in-out infinite}.opening-enter-button[data-v-3cc61ee4]{position:absolute;left:50%;top:50%;z-index:5;transform:translate(-50%,-50%);min-width:min(78vw,14.5rem);border:2px solid rgba(255,255,255,.86);border-radius:999px;background:linear-gradient(145deg,#ff786b,#ffad54);padding:.86rem 1.55rem;color:#fff;font-size:1.04rem;font-weight:1000;letter-spacing:0;box-shadow:0 18px 38px #ff786b57,0 7px #8448262e;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);animation:opening-enter-fade-3cc61ee4 .32s ease both}.opening-enter-button[data-v-3cc61ee4]:hover{box-shadow:0 18px 38px #ff786b57,0 6px #8448262e}@keyframes opening-enter-fade-3cc61ee4{0%{opacity:0}to{opacity:1}}@keyframes opening-sound-pulse-3cc61ee4{50%{transform:scale(1.08);box-shadow:0 0 0 10px #ffffff1f,0 12px 28px #2430442e}}.opening-splash.is-leaving[data-v-3cc61ee4]{opacity:0;transform:scale(1.025)}.opening-video-backdrop[data-v-3cc61ee4]{display:none}.opening-glow[data-v-3cc61ee4]{position:absolute;border-radius:999px;pointer-events:none;filter:blur(10px);opacity:.58}.opening-glow-left[data-v-3cc61ee4]{left:-8rem;top:18%;width:18rem;height:18rem;background:#ff786b38}.opening-glow-right[data-v-3cc61ee4]{right:-7rem;bottom:10%;width:20rem;height:20rem;background:#5fc6a53d}.opening-video-card[data-v-3cc61ee4]{position:absolute;inset:0;z-index:0;width:100%;height:100%;overflow:hidden;border:0;border-radius:0;background:#fff3c7;box-shadow:none}.opening-video[data-v-3cc61ee4]{display:block;width:100%;height:100%;-o-object-fit:cover;object-fit:cover;-o-object-position:center;object-position:center}.opening-brand[data-v-3cc61ee4]{position:absolute;left:max(.8rem,env(safe-area-inset-left));top:max(.8rem,env(safe-area-inset-top));z-index:2;display:inline-flex;align-items:center;gap:.55rem;border:2px solid rgba(255,255,255,.78);border-radius:999px;background:#ffffffb8;padding:.38rem .8rem .38rem .38rem;box-shadow:0 12px 24px #57371824;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.opening-logo[data-v-3cc61ee4]{display:grid;width:2.25rem;height:2.25rem;place-items:center;border-radius:999px;background:radial-gradient(circle,rgba(255,255,255,.95) 0 36%,transparent 38%),conic-gradient(from 0deg,#ff786b,#ffd36f,#78c596,#8bbcff,#ff786b);font-size:1.12rem;font-weight:950}.opening-brand strong[data-v-3cc61ee4],.opening-brand small[data-v-3cc61ee4]{display:block;line-height:1.05}.opening-brand strong[data-v-3cc61ee4]{font-weight:950}.opening-brand small[data-v-3cc61ee4]{margin-top:.12rem;color:#2430448c;font-size:.72rem;font-weight:850}.opening-progress[data-v-3cc61ee4]{position:absolute;left:max(1rem,env(safe-area-inset-left));right:max(1rem,env(safe-area-inset-right));bottom:max(.8rem,env(safe-area-inset-bottom));z-index:3;height:.35rem;overflow:hidden;border-radius:999px;background:#ffffff7a}.opening-progress span[data-v-3cc61ee4]{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#ff786b,#ffd36f,#5fc6a5);transition:width .18s ease}.opening-copy[data-v-3cc61ee4]{position:absolute;left:50%;bottom:max(4.5rem,calc(env(safe-area-inset-bottom) + 4.2rem));z-index:2;width:min(86vw,38rem);transform:translate(-50%);padding:.25rem .5rem;text-align:center;text-shadow:0 2px 10px rgba(255,255,255,.9),0 8px 22px rgba(91,58,25,.16)}.opening-eyebrow[data-v-3cc61ee4]{display:inline-flex;border-radius:999px;background:#ffffff80;padding:.38rem .8rem;color:#4b8063;font-size:clamp(.72rem,1.7vw,.9rem);font-weight:950}.opening-copy h1[data-v-3cc61ee4]{margin-top:.28rem;font-size:clamp(1.65rem,5.5vw,3.35rem);font-weight:1000;letter-spacing:-.06em;line-height:.95}.opening-copy p[data-v-3cc61ee4]:last-child{margin-top:.45rem;color:#243044ad;font-size:clamp(.82rem,2vw,1rem);font-weight:850}.opening-actions[data-v-3cc61ee4]{position:absolute;right:max(1rem,env(safe-area-inset-right));bottom:max(1.4rem,calc(env(safe-area-inset-bottom) + 1.2rem));z-index:4;display:flex;flex-wrap:wrap;justify-content:center;gap:.65rem;margin-top:0}.opening-button[data-v-3cc61ee4]{border:2px solid rgba(255,255,255,.7);border-radius:999px;background:#ffffff94;padding:.58rem 1rem;color:#243044;font-size:.92rem;font-weight:950;box-shadow:0 12px 24px #5c3c1a21;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);transition:transform .16s ease,box-shadow .16s ease,opacity .16s ease}.opening-button[data-v-3cc61ee4]:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 11px #5c3c1a1a,0 20px 28px #5c3c1a24}.opening-button[data-v-3cc61ee4]:disabled{cursor:not-allowed;opacity:.5}.opening-button.is-primary[data-v-3cc61ee4]{background:linear-gradient(145deg,#ff786b,#ff9d6c);color:#fff}.opening-button.is-light[data-v-3cc61ee4]{background:linear-gradient(145deg,#fff0a8,#fff)}.opening-status[data-v-3cc61ee4]{position:absolute;left:max(1rem,env(safe-area-inset-left));bottom:max(1.45rem,calc(env(safe-area-inset-bottom) + 1.25rem));z-index:4;margin-top:0;border-radius:999px;background:#ffffff7a;padding:.42rem .72rem;color:#2430448c;font-size:.72rem;font-weight:850;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}@media(max-width:640px)and (orientation:portrait){.opening-splash[data-v-3cc61ee4]{padding:0}.opening-video-card[data-v-3cc61ee4]{width:100%;height:100%;border-radius:0}.opening-video[data-v-3cc61ee4]{-o-object-fit:cover;object-fit:cover;-o-object-position:center center;object-position:center center;background:#fff3c7;transform:scale(1.58);transform-origin:center center}.opening-splash.is-mobile-opening .opening-video[data-v-3cc61ee4]{-o-object-fit:cover;object-fit:cover;-o-object-position:center center;object-position:center center;transform:none}.opening-brand[data-v-3cc61ee4]{transform:scale(.78);transform-origin:left top}.opening-progress[data-v-3cc61ee4]{left:.85rem;right:.85rem;bottom:.65rem}.opening-copy[data-v-3cc61ee4]{bottom:max(4.25rem,calc(env(safe-area-inset-bottom) + 4rem));width:min(90vw,26rem);padding:.25rem .35rem}.opening-copy h1[data-v-3cc61ee4]{font-size:clamp(1.6rem,8vw,2.35rem)}.opening-copy p[data-v-3cc61ee4]:last-child{font-size:.78rem}.opening-actions[data-v-3cc61ee4]{right:.75rem;bottom:max(1.18rem,calc(env(safe-area-inset-bottom) + 1rem));gap:.45rem}.opening-button[data-v-3cc61ee4]{padding:.5rem .74rem;font-size:.78rem}.opening-enter-button[data-v-3cc61ee4]{top:48%;min-width:min(74vw,15rem);padding:.82rem 1.2rem;font-size:.98rem}.opening-status[data-v-3cc61ee4]{left:.75rem;bottom:max(1.22rem,calc(env(safe-area-inset-bottom) + 1.02rem));max-width:42vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}@media(max-height:520px)and (orientation:landscape){.opening-splash[data-v-3cc61ee4]{padding:0}.opening-video-card[data-v-3cc61ee4]{width:100%;height:100%}.opening-copy[data-v-3cc61ee4]{left:max(1rem,env(safe-area-inset-left));bottom:max(1.15rem,env(safe-area-inset-bottom));width:min(34vw,24rem);transform:none;text-align:left}.opening-actions[data-v-3cc61ee4]{right:max(1rem,env(safe-area-inset-right));bottom:max(1.15rem,env(safe-area-inset-bottom));justify-content:flex-start;margin-top:0}.opening-enter-button[data-v-3cc61ee4]{top:50%}.opening-status[data-v-3cc61ee4]{display:none}}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.z-10{z-index:10}.mx-auto{margin-left:auto;margin-right:auto}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-5{margin-top:1.25rem}.mt-6{margin-top:1.5rem}.mt-7{margin-top:1.75rem}.block{display:block}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.h-full{height:100%}.min-h-0{min-height:0px}.min-h-14{min-height:3.5rem}.min-h-full{min-height:100%}.w-full{width:100%}.min-w-0{min-width:0px}.max-w-3xl{max-width:48rem}.max-w-xl{max-width:36rem}.flex-1{flex:1 1 0%}.rotate-1{--tw-rotate: 1deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-\[1\.03\]{--tw-scale-x: 1.03;--tw-scale-y: 1.03;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-center{align-items:center}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-5{gap:1.25rem}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rounded-3xl{border-radius:1.5rem}.rounded-full{border-radius:9999px}.border{border-width:1px}.border-2{border-width:2px}.border-white{--tw-border-opacity: 1;border-color:rgb(255 255 255 / var(--tw-border-opacity, 1))}.bg-amber-200\/50{background-color:#fde68a80}.bg-ink{--tw-bg-opacity: 1;background-color:rgb(36 48 68 / var(--tw-bg-opacity, 1))}.bg-lotus{--tw-bg-opacity: 1;background-color:rgb(255 111 97 / var(--tw-bg-opacity, 1))}.bg-rice{--tw-bg-opacity: 1;background-color:rgb(255 248 232 / var(--tw-bg-opacity, 1))}.bg-sky-100{--tw-bg-opacity: 1;background-color:rgb(224 242 254 / var(--tw-bg-opacity, 1))}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.bg-white\/70{background-color:#ffffffb3}.bg-white\/75{background-color:#ffffffbf}.bg-white\/80{background-color:#fffc}.bg-gradient-to-br{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops))}.via-white\/70{--tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), rgb(255 255 255 / .7) var(--tw-gradient-via-position), var(--tw-gradient-to)}.to-tea\/10{--tw-gradient-to: rgb(75 128 99 / .1) var(--tw-gradient-to-position)}.p-0{padding:0}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.pb-6{padding-bottom:1.5rem}.text-center{text-align:center}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-\[11px\]{font-size:11px}.text-base{font-size:1rem;line-height:1.5rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.font-black{font-weight:900}.font-bold{font-weight:700}.uppercase{text-transform:uppercase}.leading-6{line-height:1.5rem}.leading-7{line-height:1.75rem}.leading-tight{line-height:1.25}.tracking-\[0\.2em\]{letter-spacing:.2em}.tracking-\[0\.3em\]{letter-spacing:.3em}.tracking-widest{letter-spacing:.1em}.text-amber-700{--tw-text-opacity: 1;color:rgb(180 83 9 / var(--tw-text-opacity, 1))}.text-ginger{--tw-text-opacity: 1;color:rgb(246 163 64 / var(--tw-text-opacity, 1))}.text-ink{--tw-text-opacity: 1;color:rgb(36 48 68 / var(--tw-text-opacity, 1))}.text-ink\/40{color:#24304466}.text-ink\/45{color:#24304473}.text-ink\/50{color:#24304480}.text-ink\/55{color:#2430448c}.text-ink\/60{color:#24304499}.text-ink\/65{color:#243044a6}.text-ink\/70{color:#243044b3}.text-lotus{--tw-text-opacity: 1;color:rgb(255 111 97 / var(--tw-text-opacity, 1))}.text-sky-700{--tw-text-opacity: 1;color:rgb(3 105 161 / var(--tw-text-opacity, 1))}.text-tea{--tw-text-opacity: 1;color:rgb(75 128 99 / var(--tw-text-opacity, 1))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.opacity-70{opacity:.7}.opacity-90{opacity:.9}.shadow-md{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-soft{--tw-shadow: 0 24px 80px rgba(82, 46, 20, .16);--tw-shadow-colored: 0 24px 80px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.outline-none{outline:2px solid transparent;outline-offset:2px}.blur{--tw-blur: blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}:root{color:#243044;background:#fff8e8;font-family:Avenir Next,PingFang SC,Microsoft YaHei,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}body{margin:0;min-width:320px;min-height:100vh;overflow:hidden;background:radial-gradient(circle at top left,rgba(255,195,105,.35),transparent 32rem),linear-gradient(135deg,#fff8e8,#fff2d7 45%,#fde6d2)}#app{min-height:100vh}button,input,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}.game-viewport{position:relative;isolation:isolate;display:grid;width:100vw;height:100vh;height:100dvh;place-items:center;overflow:hidden;background-image:var(--case-bg-image),radial-gradient(circle at 18% 16%,rgba(255,211,111,.35),transparent 34rem),radial-gradient(circle at 82% 72%,rgba(75,128,99,.18),transparent 28rem),linear-gradient(135deg,#fff2bd,#ffe3cf 48%,#dff4dc);background-position:center;background-size:cover,cover,cover,cover}.game-viewport:before,.game-viewport:after{position:fixed;z-index:-1;border-radius:999px;content:"";filter:blur(10px);pointer-events:none}.game-viewport:before{right:-7rem;top:8rem;width:20rem;height:20rem;background:#ff6f6121}.game-viewport:after{left:-8rem;bottom:3rem;width:24rem;height:24rem;background:#4b80631f}.floating-decor{position:absolute;z-index:0;pointer-events:none;color:#ffffff75;filter:drop-shadow(0 14px 22px rgba(92,60,26,.1));animation:decor-float 7.5s ease-in-out infinite}.floating-decor svg,.floating-decor img{display:block;width:100%;height:100%}.decor-cloud{left:max(1.5rem,5vw);top:12%;width:clamp(7rem,18vw,14rem);height:clamp(3.8rem,9vw,7rem);color:#ffffff7a}.decor-star{right:max(1.2rem,8vw);top:20%;width:clamp(3.5rem,8vw,6.5rem);height:clamp(3.5rem,8vw,6.5rem);color:#ffd76f5c;animation-delay:1.4s;animation-duration:8.8s}.decor-spark{right:12%;bottom:12%;width:clamp(4rem,9vw,7rem);height:clamp(4rem,9vw,7rem);color:#75c99347;animation-delay:2.2s;animation-duration:9.6s}.decor-lantern{left:max(.7rem,3vw);bottom:10%;width:clamp(3.4rem,7vw,5.8rem);height:clamp(4.9rem,10vw,8.2rem);animation-delay:.8s;animation-duration:8.2s}.paper-card{border:2px solid rgba(83,50,25,.08);background:#ffffffd1;box-shadow:0 24px 80px #522e141f;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.game-frame{position:relative;z-index:1;display:flex;width:min(100vw,1180px);height:100vh;height:100dvh;max-height:860px;min-height:0;flex-direction:column;overflow:hidden;border:0;border-radius:clamp(0px,2vw,28px);background:linear-gradient(90deg,rgba(255,255,255,.18) 1px,transparent 1px),linear-gradient(180deg,rgba(255,255,255,.14) 1px,transparent 1px),radial-gradient(circle at 12% 14%,rgba(255,255,255,.72),transparent 14rem),linear-gradient(135deg,#fff7d5f5,#ffe7cff0);background-size:38px 38px,38px 38px,auto,auto;box-shadow:0 18px 70px #5b3a1938}.game-topbar{z-index:20;display:flex;align-items:center;justify-content:space-between;gap:.55rem;position:absolute;left:.75rem;right:.75rem;top:.75rem;border:2px solid rgba(255,255,255,.72);border-radius:999px;background:#ffffffa8;padding:.45rem .55rem;box-shadow:0 12px 26px #5737181f;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);transition:opacity .18s ease,transform .22s cubic-bezier(.2,.78,.24,1)}.game-content{position:relative;z-index:1;min-height:0;flex:1;overflow:hidden;padding-top:clamp(3.35rem,7vh,4.7rem)}.topbar-drawer-toggle{position:absolute;left:.85rem;top:.68rem;z-index:35;display:none;max-width:min(64vw,24rem);align-items:center;gap:.48rem;border:2px solid rgba(255,255,255,.76);border-radius:999px;background:#ffffffb3;padding:.28rem .78rem .28rem .34rem;color:#243044;text-align:left;box-shadow:0 12px 24px #57371824;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);transition:transform .16s ease,background .16s ease,box-shadow .16s ease}.topbar-drawer-toggle:hover{transform:translateY(-1px);background:#ffffffdb;box-shadow:0 14px 28px #57371829}.topbar-drawer-mark{display:grid;width:2rem;height:2rem;flex-shrink:0;place-items:center;border-radius:999px;background:radial-gradient(circle,rgba(255,255,255,.95) 0 36%,transparent 38%),conic-gradient(from 0deg,#ff786b,#ffd36f,#78c596,#8bbcff,#ff786b);color:#243044;font-family:Microsoft YaHei,PingFang SC,Noto Sans SC,sans-serif;font-size:1.05rem;font-weight:950;line-height:1;box-shadow:0 6px 14px #613d1629}.topbar-drawer-copy{display:grid;min-width:0;line-height:1.05}.topbar-drawer-label{color:#24304480;font-size:.66rem;font-weight:950}.topbar-drawer-title{overflow:hidden;font-size:.78rem;font-weight:950;text-overflow:ellipsis;white-space:nowrap}.game-frame.is-topbar-collapsed .topbar-drawer-toggle{display:inline-flex}.game-frame.is-topbar-collapsed.is-topbar-open .topbar-drawer-toggle{opacity:0;pointer-events:none;transform:translateY(-.45rem) scale(.96)}.game-frame.is-topbar-collapsed .game-topbar{opacity:0;pointer-events:none;transform:translateY(calc(-100% - 1rem))}.game-frame.is-topbar-collapsed.is-topbar-open .game-topbar{opacity:1;pointer-events:auto;transform:translateY(0)}.game-frame.is-topbar-collapsed .game-content{padding-top:3.25rem}.game-frame.is-story-mode .game-topbar{display:none}.game-frame.is-story-mode .game-content{padding-top:0}.game-toast{pointer-events:none;position:absolute;left:50%;top:clamp(4.3rem,8.5vh,5.8rem);z-index:60;max-width:min(72%,34rem);transform:translate(-50%);border:2px solid rgba(255,255,255,.78);border-radius:999px;background:#fff8e8f5;padding:.65rem 1.1rem;color:#243044;font-size:.85rem;font-weight:900;box-shadow:0 14px 30px #5c3c1a29}.game-toast.is-error{background:#ffebe8f7;color:#a33b35}.game-toast.is-success{background:#e0f8def7;color:#2d6e4a}.game-toast.is-warning{background:#fff6d0f7;color:#8a5a00}.hud-brand{display:flex;min-width:0;flex-shrink:0;align-items:center;gap:.65rem;border-radius:999px;padding-right:.5rem;text-align:left}.hud-logo{position:relative;display:grid;width:2.65rem;height:2.65rem;flex-shrink:0;place-items:center;border:3px solid rgba(255,255,255,.78);border-radius:999px;background:radial-gradient(circle at 50% 48%,rgba(255,255,255,.98) 0 35%,transparent 36%),conic-gradient(from -20deg,#ff7768,#ffd66f 26%,#69c389,#6fb0ff 74%,#ff7768);color:#243044;font-family:Microsoft YaHei,PingFang SC,Noto Sans SC,sans-serif;font-size:1.12rem;font-weight:950;line-height:1;box-shadow:0 8px 18px #613d162e,inset 0 0 0 1px #ffffff8c}.hud-logo-core{display:grid;width:1.68rem;height:1.68rem;place-items:center;overflow:hidden;border-radius:999px;background:#ffffffeb;line-height:1;transform:translateY(-.02rem);box-shadow:inset 0 1px #ffffffe6}.hud-logo-ribbon{position:absolute;right:-.1rem;bottom:.06rem;width:.72rem;height:.92rem;border-radius:.12rem .12rem .48rem .48rem;background:linear-gradient(180deg,#ff775f,#ffb04f);box-shadow:0 3px 8px #80442033;transform:rotate(-18deg)}.hud-logo-ribbon:after{content:"";position:absolute;left:50%;bottom:-.02rem;width:.28rem;height:.28rem;background:#fff8e8;transform:translate(-50%) rotate(45deg)}.hud-center{pointer-events:none;position:absolute;left:50%;transform:translate(-50%)}.hud-pill{display:inline-flex;max-width:24rem;align-items:center;overflow:hidden;border-radius:999px;background:#fff8e8e6;padding:.55rem 1rem;color:#243044b8;font-size:.8rem;font-weight:900;text-overflow:ellipsis;white-space:nowrap;box-shadow:inset 0 1px #ffffffbf}.hud-icon-button{display:grid;width:2.35rem;height:2.35rem;place-items:center;border-radius:999px;background:#ffffffd1;color:#243044;font-size:1.1rem;font-weight:900;box-shadow:0 8px 16px #5737181c;transition:transform .16s ease,background .16s ease}.hud-icon-button:hover{transform:translateY(-2px) scale(1.04);background:#fff}.game-topbar nav{flex-shrink:0}.hub-stage{position:relative;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain}.game-world{border-radius:0 0 28px 28px}.hub-sky{position:absolute;inset:0;background:linear-gradient(180deg,#fff6c4e0,#ffeed6b3),radial-gradient(circle at 72% 30%,rgba(130,195,147,.2),transparent 17rem)}.sun-orb{position:absolute;right:8%;top:8%;width:8rem;height:8rem;border-radius:999px;background:#ffd36f;box-shadow:0 0 0 18px #ffd36f2e;animation:sun-pulse 4s ease-in-out infinite}.cloud{position:absolute;border-radius:999px;background:#ffffffad;filter:blur(.5px)}.cloud:before,.cloud:after{position:absolute;border-radius:999px;background:inherit;content:""}.cloud-a{left:11%;top:12%;width:9rem;height:3rem;animation:drift-cloud 12s ease-in-out infinite}.cloud-a:before{left:1rem;top:-1.4rem;width:4rem;height:4rem}.cloud-a:after{right:1.2rem;top:-.9rem;width:3.2rem;height:3.2rem}.cloud-b{right:18%;bottom:12%;width:7rem;height:2.4rem;opacity:.62;animation:drift-cloud 15s ease-in-out 1s infinite reverse}.sparkle-field{position:absolute;inset:0;pointer-events:none}.sparkle-dot{position:absolute;width:.45rem;height:.45rem;border-radius:999px;background:#ffb954d1;box-shadow:0 0 14px #ffb954c2;animation:twinkle 2.5s ease-in-out infinite}.sparkle-dot:nth-child(3n){background:#4b80639e}.sparkle-dot:nth-child(1){left:9%;top:22%;animation-delay:.1s}.sparkle-dot:nth-child(2){left:18%;top:62%;animation-delay:1s}.sparkle-dot:nth-child(3){left:32%;top:28%;animation-delay:.4s}.sparkle-dot:nth-child(4){left:41%;top:78%;animation-delay:1.7s}.sparkle-dot:nth-child(5){left:52%;top:18%;animation-delay:.8s}.sparkle-dot:nth-child(6){left:62%;top:66%;animation-delay:1.2s}.sparkle-dot:nth-child(7){left:76%;top:36%;animation-delay:.2s}.sparkle-dot:nth-child(8){left:88%;top:72%;animation-delay:1.9s}.sparkle-dot:nth-child(9){left:24%;top:44%;animation-delay:2.1s}.sparkle-dot:nth-child(10){left:68%;top:48%;animation-delay:1.4s}.sparkle-dot:nth-child(11){left:83%;top:18%;animation-delay:.7s}.sparkle-dot:nth-child(12){left:47%;top:52%;animation-delay:1.1s}.sparkle-dot:nth-child(13){left:12%;top:82%;animation-delay:.6s}.sparkle-dot:nth-child(14){left:35%;top:12%;animation-delay:1.5s}.sparkle-dot:nth-child(15){left:58%;top:84%;animation-delay:.3s}.sparkle-dot:nth-child(16){left:93%;top:44%;animation-delay:2.4s}.adventure-board{position:relative;width:100%;min-width:0;overflow:hidden;border:4px solid rgba(255,255,255,.78);border-radius:34px;background:radial-gradient(circle at 22% 16%,rgba(255,255,255,.92),transparent 9rem),linear-gradient(145deg,#fffae5e6,#ffe6c6e0);box-shadow:0 18px 38px #5c3c1a21}.adventure-board:after{position:absolute;right:-2rem;bottom:-2.5rem;width:12rem;height:12rem;border-radius:999px;background:#ff786b1f;content:""}.portal-card{display:grid;place-items:center;border-radius:2rem;background:#ffffff94;padding:1rem;box-shadow:inset 0 1px #ffffffe6}.portal-ring{display:grid;width:8.8rem;height:8.8rem;place-items:center;border:9px solid rgba(255,255,255,.78);border-radius:999px;background:radial-gradient(circle,rgba(255,255,255,.94) 0 34%,transparent 36%),conic-gradient(from 0deg,#ff786b,#ffd36f,#78c596,#8bbcff,#ff786b);color:#243044;font-family:Microsoft YaHei,PingFang SC,Noto Sans SC,sans-serif;font-size:3rem;font-weight:900;line-height:1;box-shadow:0 18px 34px #613d162e;animation:portal-spin 8s linear infinite}.portal-ring span{display:grid;width:5.2rem;height:5.2rem;place-items:center;overflow:hidden;border-radius:999px;background:#ffffffe6;line-height:1;animation:portal-counter-spin 8s linear infinite}.mission-chip{border:2px solid rgba(255,255,255,.7);border-radius:999px;padding:.68rem 1rem;font-size:.95rem;font-weight:900;box-shadow:0 8px 18px #5c3c1a14}.adventure-map{position:relative}.adventure-map:before{position:absolute;left:8%;right:8%;top:50%;z-index:-1;height:.75rem;border-radius:999px;background:repeating-linear-gradient(90deg,#ffffffa6 0 1.2rem,#ffb8528c 1.2rem 2.2rem);content:"";transform:rotate(-4deg)}.cloud-b:before{left:.8rem;top:-1.1rem;width:3rem;height:3rem}.cloud-b:after{right:.8rem;top:-.8rem;width:2.6rem;height:2.6rem}.storybook-panel{border:3px solid rgba(117,83,44,.08);border-radius:32px;background:#ffffffc7;box-shadow:0 16px 36px #5c3c1a21;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.stage-story-shell{display:flex;height:100%;min-height:0;flex-direction:column;gap:clamp(.45rem,1.2vh,.75rem);padding:clamp(.55rem,1.3vh,.9rem)}.stage-story-header{display:flex;flex-shrink:0;align-items:center;justify-content:space-between;gap:1rem;border:3px solid rgba(255,255,255,.7);border-radius:1.8rem;background:#ffffff9e;padding:clamp(.65rem,1.6vh,1rem);box-shadow:0 10px 22px #5c3c1a1a}.storybook-player{display:flex;min-height:0;flex-direction:column;gap:clamp(.5rem,1.4vh,.8rem)}.storybook-frame{display:grid;min-height:0;flex:1;grid-template-rows:minmax(0,1fr) auto;overflow:hidden;border:4px solid rgba(255,255,255,.76);border-radius:2.2rem;background:radial-gradient(circle at 20% 15%,rgba(255,255,255,.84),transparent 12rem),linear-gradient(135deg,#fff5cdf0,#ffddc7e6);box-shadow:0 18px 36px #5c3c1a24}.storybook-art{position:relative;display:grid;min-height:0;place-items:center;overflow:hidden;padding:clamp(.75rem,2vh,1.2rem)}.storybook-image{width:100%;height:100%;-o-object-fit:contain;object-fit:contain;border-radius:1.6rem;filter:drop-shadow(0 18px 24px rgba(92,60,26,.14))}.storybook-placeholder{position:relative;display:grid;width:100%;height:100%;min-height:12rem;place-items:center;overflow:hidden;border:4px dashed rgba(255,255,255,.86);border-radius:1.8rem;background:linear-gradient(180deg,#a1d6ff8c,#fff6c6d9),#fff8e8}.placeholder-sun{position:absolute;right:12%;top:12%;width:5rem;height:5rem;border-radius:999px;background:#ffd36f;box-shadow:0 0 0 1rem #ffd36f29}.placeholder-hill{position:absolute;bottom:-18%;border-radius:999px 999px 0 0}.hill-a{left:-6%;width:58%;height:46%;background:#75c9938c}.hill-b{right:-8%;width:68%;height:52%;background:#ffbe6f80}.placeholder-card{position:relative;z-index:1;max-width:18rem;border:3px solid rgba(255,255,255,.82);border-radius:1.6rem;background:#ffffffc2;padding:1.25rem;text-align:center;box-shadow:0 14px 30px #5c3c1a1f}.storybook-caption{flex-shrink:0;border-top:2px solid rgba(120,78,42,.08);background:#ffffffbf;padding:clamp(.65rem,1.6vh,.95rem) clamp(.85rem,2vw,1.25rem)}.story-audio-button,.story-nav-button{border-radius:999px;font-weight:900;box-shadow:0 8px 16px #5c3c1a1f;transition:transform .16s ease,opacity .16s ease}.story-audio-button{background:#4b80631f;color:#4b8063;padding:.45rem .8rem;font-size:.75rem}.story-nav-button{background:#fff;color:#243044b8;padding:.65rem 1.25rem}.story-nav-button.is-primary{background:linear-gradient(135deg,#ff786b,#ffbd62);color:#fff}.story-audio-button:disabled,.story-nav-button:disabled{cursor:not-allowed;opacity:.42;box-shadow:none}.story-audio-button:not(:disabled):hover,.story-nav-button:not(:disabled):hover{transform:translateY(-2px)}.storybook-controls{display:flex;flex-shrink:0;align-items:center;justify-content:space-between;gap:.75rem}.story-dots{display:flex;min-width:0;flex:1;justify-content:center;gap:.35rem}.story-dot{width:.48rem;height:.48rem;border-radius:999px;background:#2430442e}.story-dot.is-active{width:1.25rem;background:#ff786b}.stage-map{border:3px solid rgba(255,255,255,.68);border-radius:28px;background:#ffffff80;padding:.65rem;box-shadow:0 10px 24px #5c3c1a1a}.level-path{position:relative;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.65rem}.level-path:before{position:absolute;left:8%;right:8%;top:50%;z-index:0;height:.45rem;border-radius:999px;background:#ffd36f8c;content:"";transform:translateY(-50%)}.level-node{position:relative;z-index:1;display:flex;min-width:0;align-items:center;gap:.65rem;overflow:hidden;border:3px solid rgba(255,255,255,.72);border-radius:999px;padding:.45rem .75rem .45rem .45rem;text-align:left;transition:transform .16s ease,box-shadow .16s ease}.level-node:hover{transform:translateY(-3px)}.level-node.is-active{background:linear-gradient(135deg,#243044,#3a4a68);color:#fff;box-shadow:0 12px 24px #24304433}.level-node.is-locked{background:#ffffffc7;color:#2430448c}.level-number{display:grid;width:2.25rem;height:2.25rem;flex-shrink:0;place-items:center;border-radius:999px;background:#ffffffe6;color:#ff786b;font-weight:900;box-shadow:0 6px 12px #5c3c1a1f}.cartoon-bubble{position:relative;border:2px solid rgba(105,73,39,.08);border-radius:28px;background:#ffffffc7;padding:1rem;box-shadow:0 10px 24px #5c3c1a1a}.cartoon-bubble:after{position:absolute;bottom:-.5rem;left:2rem;width:1.2rem;height:1.2rem;border-bottom:2px solid rgba(105,73,39,.08);border-right:2px solid rgba(105,73,39,.08);background:#ffffffc7;content:"";transform:rotate(45deg)}.cartoon-scene{border-radius:32px;background:radial-gradient(circle at 18% 18%,rgba(255,255,255,.88),transparent 9rem),linear-gradient(135deg,#fff0bf,#fffaf0 55%,#ffdcd8);box-shadow:0 18px 34px #7a492429}.case-map{width:100%;min-width:0;perspective:1100px}.case-card{width:100%;min-width:0;min-height:25rem;overflow:hidden;border:3px solid rgba(255,255,255,.75);border-radius:34px;padding:1.35rem;color:#243044;box-shadow:0 20px 38px #5b3a1926;transition:transform .18s ease,box-shadow .18s ease;animation:card-bob 4.2s ease-in-out infinite}.case-card:nth-child(2){animation-delay:.7s}.case-card:hover{transform:translateY(-6px) rotateX(2deg);box-shadow:0 28px 54px #5b3a1933}.hub-brief-card{align-self:center;max-height:min(100%,35rem);transform:rotate(-1.2deg)}.hub-brief-question{display:block;white-space:nowrap;font-size:clamp(2.15rem,3.45vw,2.45rem);line-height:1.04}.case-card.is-active{position:relative;z-index:2;transform:rotate(2deg) scale(1.05);box-shadow:0 12px #ff786b38,0 34px 70px #5b3a193d}.case-card.is-active:after{position:absolute;inset:.8rem;border:2px dashed rgba(255,255,255,.62);border-radius:28px;content:"";pointer-events:none}.case-card.is-active:hover{transform:translateY(-5px) rotate(2deg) scale(1.07);box-shadow:0 14px #ff786b3d,0 40px 78px #5b3a1947}.case-card.is-secondary{transform:translateY(1.15rem) rotate(-1.5deg) scale(.96);opacity:.84}.case-game-icon{display:grid;width:4.25rem;height:4.25rem;flex:0 0 auto;place-items:center;border:3px solid rgba(255,255,255,.78);border-radius:1.45rem;background:radial-gradient(circle at 24% 20%,rgba(255,255,255,.86),transparent 2.8rem),linear-gradient(135deg,#ffffffc7,#fff8e28a);color:#243044;font-size:2rem;font-weight:950;box-shadow:inset 0 -3px #81531214,0 10px 20px #5c3c1a24}.case-game-icon img{width:115%;height:115%;-o-object-fit:contain;object-fit:contain;filter:drop-shadow(0 7px 8px rgba(92,60,26,.12))}.case-start-button{border:3px solid rgba(255,255,255,.78);box-shadow:0 7px #8f3932b8,0 18px 26px #8f393238}.case-start-button:active{transform:translateY(5px);box-shadow:0 2px #8f3932c7,0 10px 18px #8f39322e}@media(min-width:1100px){.game-frame{width:min(calc(100vw - 2.5rem),1320px);max-height:min(900px,calc(100dvh - 2rem))}.game-content{padding-top:clamp(3.6rem,6.4vh,4.9rem)}.hub-stage>.relative.z-10{grid-template-columns:minmax(20rem,.52fr) minmax(0,1.48fr);gap:1.35rem;padding:1.35rem}.hub-brief-card{max-height:calc(100% - .4rem);transform:rotate(-.45deg)}.hub-step-list{grid-template-columns:repeat(5,minmax(0,1fr));gap:.42rem}.mission-chip{padding:.52rem .48rem;font-size:.72rem;text-align:center;box-shadow:none}.case-map{gap:1.15rem}.adventure-map:before{opacity:.45;transform:rotate(-2deg)}.case-card{min-height:27rem;border-radius:1.9rem;padding:1.55rem}.case-card h2{font-size:clamp(1.9rem,2.35vw,2.45rem);line-height:1.04}.case-card.is-active{transform:rotate(1deg) scale(1.035)}.case-card.is-active:hover{transform:translateY(-5px) rotate(1deg) scale(1.05)}.case-card.is-secondary{transform:translateY(.72rem) rotate(-.75deg) scale(.97)}.storybook-frame{border-radius:2.05rem}.story-speech-bubble{max-width:min(32vw,31rem);padding:.82rem 1.05rem;font-size:clamp(1rem,1.25vw,1.32rem)}.vocab-board{gap:.72rem;padding:.95rem}.memory-card{min-height:6rem}.challenge-stage-layout.challenge-redesign{grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);gap:.85rem;padding:.65rem}.challenge-score-content{padding:1.05rem}.challenge-score-heading h2{font-size:1.95rem}.challenge-target-card{min-height:5rem}.challenge-target-card img{width:3rem;height:2.32rem}.challenge-target-card span{font-size:.98rem}.challenge-pattern-card{min-height:3.8rem;font-size:1rem}.wechat-avatar{width:3rem;height:3rem}.wechat-bubble{padding:.78rem .92rem}.wechat-bubble span{font-size:.9rem}.wechat-bubble small{font-size:.72rem}}.tone-sunny{background:linear-gradient(135deg,#fff4b7,#ffd8b2)}.tone-jade{background:linear-gradient(135deg,#dff5d7,#b8e4cf)}.tone-moon{background:linear-gradient(135deg,#fff0b8,#d9e5ff)}.tone-opera{background:linear-gradient(135deg,#ffe0e6,#ffd1aa)}.tone-spring{background:linear-gradient(135deg,#e4f8d7,#fff4c7)}.scene-token{border-radius:1.4rem;padding:.8rem;text-align:center;box-shadow:0 8px 18px #5c3c1a17}.strategy-badge{position:relative;min-height:12rem;overflow:hidden;border:3px solid rgba(255,255,255,.88);border-radius:2rem;background:linear-gradient(135deg,#ffffffe6,#fff4c6e6);padding:1.25rem;text-align:left;box-shadow:0 15px 30px #5c3c1a21;transition:transform .18s ease,box-shadow .18s ease}.strategy-badge:hover{transform:translateY(-6px) rotate(-1deg);box-shadow:0 22px 40px #5c3c1a2e}.strategy-badge.is-practiced{border-color:#4b806366;background:linear-gradient(135deg,#dff5d7f5,#ffffffdb)}.badge-seal{position:absolute;right:1rem;top:1rem;display:grid;width:3.6rem;height:3.6rem;place-items:center;border-radius:999px;background:#ff786b;color:#fff;font-size:1.6rem;font-weight:900;box-shadow:0 10px 20px #ff786b47}.badge-seal img{width:122%;height:122%;-o-object-fit:contain;object-fit:contain;filter:drop-shadow(0 6px 7px rgba(92,60,26,.14))}.table-scene{display:grid;min-height:17rem;place-items:center;border-radius:2rem;background:radial-gradient(circle at 50% 50%,rgba(255,255,255,.52),transparent 9rem),linear-gradient(180deg,#ffffff61,#ffe7c28a);overflow:hidden}.table-plate{display:grid;width:min(100%,24rem);min-height:15rem;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;border:9px solid rgba(255,255,255,.78);border-radius:42%;background:radial-gradient(circle,#fff7da,#ffc58d);padding:1.3rem;box-shadow:0 18px 36px #633a1733;animation:table-float 4s ease-in-out infinite}.table-item{display:grid;place-items:center;border-radius:1.6rem;padding:.6rem;text-align:center;box-shadow:inset 0 1px #ffffffa6;transition:transform .16s ease}.table-item:hover{transform:translateY(-4px) scale(1.04)}.table-item-badge img,.food-collect-chip img{width:118%;height:118%;-o-object-fit:contain;object-fit:contain;filter:drop-shadow(0 5px 6px rgba(92,60,26,.12))}.dialogue-bubble-tim{border-radius:24px 24px 24px 8px;background:#ffffffe6;color:#243044}.dialogue-bubble-user{border-radius:24px 24px 8px;background:linear-gradient(135deg,#ff786b,#ff9d6e);color:#fff}.voice-console{display:flex;align-items:center;gap:.7rem;border:3px solid rgba(255,255,255,.72);border-radius:2rem;background:radial-gradient(circle at left,rgba(255,211,111,.32),transparent 10rem),#ffffffb8;padding:.55rem .7rem;box-shadow:0 12px 26px #5c3c1a1c}.voice-orb{position:relative;display:grid;width:clamp(4.1rem,9.5vh,5rem);height:clamp(4.1rem,9.5vh,5rem);flex-shrink:0;place-items:center;overflow:hidden;border:5px solid rgba(255,255,255,.78);border-radius:999px;background:linear-gradient(135deg,#ff786b,#ffbd62);box-shadow:0 16px 30px #ff786b42;transition:transform .16s ease,filter .16s ease}.voice-orb:hover:not(:disabled){transform:translateY(-3px) scale(1.04)}.voice-orb:disabled{opacity:.65}.voice-orb.is-listening{background:linear-gradient(135deg,#4b8063,#75c993);animation:mic-pulse .95s ease-in-out infinite}.voice-orb.is-processing{background:linear-gradient(135deg,#f6a340,#ff786b)}.voice-ring{position:absolute;inset:.55rem;border:3px solid rgba(255,255,255,.45);border-radius:999px;animation:voice-ring 1.8s ease-in-out infinite}.tim-card{position:relative;width:min(100%,11rem);text-align:center}.tim-svg{width:100%;max-height:14.5rem;animation:tim-float 3s ease-in-out infinite}.character-stage{min-height:13rem}.tim-bubble{position:absolute;left:50%;top:.2rem;z-index:2;width:-moz-max-content;width:max-content;max-width:11rem;transform:translate(-50%);border:2px solid rgba(36,48,68,.08);border-radius:999px;background:#ffffffe0;padding:.45rem .8rem;font-size:.8rem;font-weight:900;box-shadow:0 8px 18px #5c3c1a1f}.tim-name{margin-top:-.8rem;font-weight:900;color:#2430449e}.tim-wave{animation:tim-sparkle 1.8s ease-in-out infinite;transform-origin:50% 50%}.certificate-card{position:relative;width:min(92%,760px);overflow:hidden;border:8px solid rgba(255,226,132,.9);border-radius:38px;background:radial-gradient(circle at top,rgba(255,255,255,.9),transparent 12rem),linear-gradient(135deg,#fff7c9,#fffdf3 48%,#ffd787);padding:2rem;text-align:center;box-shadow:0 26px 60px #8153123b}.certificate-card:before,.certificate-card:after{position:absolute;width:9rem;height:9rem;border-radius:999px;background:#ff786b1f;content:""}.certificate-card:before{left:-3rem;top:-3rem}.certificate-card:after{right:-3rem;bottom:-3rem}.certificate-ribbon{position:absolute;right:-3.2rem;top:1.7rem;width:14rem;transform:rotate(38deg);background:#ff786b;color:#fff;font-size:.75rem;font-weight:900;letter-spacing:.08em;padding:.55rem 0}.certificate-trophy{position:relative;z-index:1;display:grid;width:5.4rem;height:5.4rem;place-items:center}.certificate-trophy img{width:100%;height:100%;-o-object-fit:contain;object-fit:contain;filter:drop-shadow(0 10px 13px rgba(129,83,18,.16))}.certificate-decor{position:absolute;z-index:0;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.certificate-flower-left{left:1.1rem;top:1.1rem;width:clamp(4.2rem,10vw,6.4rem);opacity:.92;transform:rotate(-12deg)}.certificate-cloud-right{right:1rem;bottom:1.1rem;width:clamp(5.4rem,14vw,9rem);opacity:.66;transform:rotate(7deg)}.flower-score{border:2px solid rgba(255,255,255,.74);border-radius:28px;background:#ffffff94;padding:1.25rem;box-shadow:0 12px 26px #8153121a}.vocab-game-stage{background:radial-gradient(circle at 18% 12%,rgba(255,226,132,.48),transparent 15rem),radial-gradient(circle at 84% 18%,rgba(130,221,208,.32),transparent 13rem),linear-gradient(180deg,#fffdedf0,#dffcf6e6)}.vocab-game-sky{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.15rem .75rem}.vocab-score-panel{display:grid;min-width:7.5rem;place-items:center;border:3px solid rgba(255,255,255,.9);border-radius:30px;background:linear-gradient(145deg,#fff4a7,#fff);padding:.8rem 1rem;box-shadow:0 14px 26px #d381002e}.vocab-score-panel strong{color:#ff786b;font-size:clamp(1.75rem,4vw,2.8rem);font-weight:1000;line-height:1}.vocab-progress-wrap{padding:0 1.15rem .65rem}.vocab-progress-track{overflow:hidden;height:.55rem;border-radius:999px;background:#24304414}.vocab-progress-track span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#ff786b,#ffd36f,#5fc6a5);transition:width .24s ease}.vocab-board-wrap{position:relative;min-height:0;flex:1;padding:0 1.15rem}.vocab-board{display:grid;height:100%;min-height:0;grid-template-columns:repeat(5,minmax(0,1fr));gap:clamp(.45rem,1.2vw,.85rem);overflow:auto;border:4px solid rgba(255,255,255,.72);border-radius:34px;background:linear-gradient(135deg,#ffffff9e,#ffffff47),repeating-linear-gradient(45deg,rgba(255,255,255,.18) 0 12px,transparent 12px 24px);padding:clamp(.7rem,1.4vw,1.15rem);box-shadow:inset 0 0 0 2px #ffffff61,0 18px 40px #4970661f;transition:filter .18s ease}.vocab-board.is-paused{filter:blur(5px) saturate(.8)}.memory-card{position:relative;display:grid;min-height:5.2rem;place-items:center;overflow:hidden;border:4px solid rgba(255,255,255,.78);border-radius:clamp(20px,2.4vw,34px);background:linear-gradient(145deg,#ffe56f,#ffd84c);color:#151b28;box-shadow:inset 0 -8px #8153121f,0 10px #d3810038,0 16px 24px #5c3c1a24;transform:translateY(0);transition:transform .16s ease,box-shadow .16s ease,opacity .16s ease,filter .16s ease}.memory-card:hover,.memory-card.is-selected{transform:translateY(-5px) scale(1.02);box-shadow:inset 0 -8px #8153121f,0 12px #d3810033,0 22px 32px #5c3c1a29}.memory-card.is-selected{border-color:#ff786bf2;outline:4px solid rgba(255,120,107,.2)}.memory-card.is-picture{background:radial-gradient(circle at 24% 20%,rgba(255,255,255,.75),transparent 2.5rem),linear-gradient(135deg,#99eff4,#fff1b9 48%,#ffd0dd)}.memory-card.is-matched{pointer-events:none;border-color:#5fc6a5e6;background:radial-gradient(circle at 50% 35%,rgba(255,255,255,.8),transparent 3rem),linear-gradient(145deg,#c9f8c9,#fff3a2);opacity:.88;transform:scale(.96);box-shadow:inset 0 -7px #2f8d6c24,0 8px #2f8d6c2e,0 14px 20px #2f8d6c1f}.memory-food-badge{display:grid;width:clamp(2.75rem,6vw,4.4rem);height:clamp(2.75rem,6vw,4.4rem);place-items:center;border-radius:28%;background:transparent;color:#ff786b;font-size:clamp(1.55rem,3.4vw,2.6rem);font-weight:1000;box-shadow:none}.memory-food-image{width:clamp(4.2rem,9vw,6.3rem);height:clamp(3.35rem,7.3vw,5.2rem);max-width:150%;max-height:140%;-o-object-fit:contain;object-fit:contain;filter:drop-shadow(0 9px 10px rgba(92,60,26,.14));transform:translateY(-.12rem)}.memory-word{padding:0 .25rem;font-size:clamp(1rem,2.4vw,1.9rem);font-weight:1000;letter-spacing:-.035em;text-align:center}.memory-caption{position:absolute;left:50%;bottom:.45rem;max-width:88%;transform:translate(-50%);color:#24304475;font-size:clamp(.5rem,1.2vw,.72rem);font-weight:900;line-height:1.15;text-align:center}.memory-check{position:absolute;right:.45rem;top:.45rem;display:grid;width:1.45rem;height:1.45rem;place-items:center;border-radius:999px;background:#5fc6a5;color:#fff;font-size:.9rem;font-weight:1000;box-shadow:0 6px 12px #2f8d6c2e}.tone-sunny .memory-food-badge{color:#ff8a00}.tone-jade .memory-food-badge{color:#2f9d78}.tone-moon .memory-food-badge{color:#5b74d6}.tone-spring .memory-food-badge{color:#ff6f91}.vocab-pause-card{position:absolute;left:50%;top:50%;display:grid;place-items:center;gap:.4rem;width:min(76%,22rem);transform:translate(-50%,-50%);border:4px solid rgba(255,255,255,.88);border-radius:34px;background:#ffffffe0;padding:1.5rem;text-align:center;box-shadow:0 22px 44px #5c3c1a29}.vocab-pause-card strong{color:#ff786b;font-size:2rem;font-weight:1000}.vocab-pause-card span{color:#2430449e;font-weight:800}.vocab-game-footer{display:flex;flex-wrap:wrap;justify-content:center;gap:.8rem;padding:.85rem 1rem 1rem}.game-pill-button{min-width:8.5rem;border:3px solid rgba(255,255,255,.68);border-radius:999px;padding:.75rem 1.5rem;color:#151b28;font-size:clamp(.95rem,1.7vw,1.35rem);font-weight:1000;box-shadow:0 9px #5c3c1a1f,0 16px 24px #5c3c1a1f;transition:transform .16s ease,box-shadow .16s ease,opacity .16s ease}.game-pill-button:hover:not(:disabled){transform:translateY(-3px);box-shadow:0 11px #5c3c1a1f,0 20px 28px #5c3c1a24}.game-pill-button:disabled{cursor:not-allowed;opacity:.45}.game-pill-button.is-warm{background:linear-gradient(145deg,#e28b00,#d67a00);color:#fff}.game-pill-button.is-light{background:linear-gradient(145deg,#fff0a8,#ffe28a)}.game-pill-button.is-primary{background:linear-gradient(145deg,#ff786b,#ff9d6c);color:#fff}.wave-active .audio-bar:nth-child(1){animation:wave-hop .68s ease-in-out infinite}.wave-active .audio-bar:nth-child(2){animation:wave-hop .68s ease-in-out .12s infinite}.wave-active .audio-bar:nth-child(3){animation:wave-hop .68s ease-in-out .24s infinite}.wave-active .audio-bar:nth-child(4){animation:wave-hop .68s ease-in-out .36s infinite}@keyframes wave-hop{0%,to{transform:scaleY(.6)}50%{transform:scaleY(1.2)}}@keyframes decor-float{0%,to{transform:translateZ(0) rotate(-2deg)}50%{transform:translate3d(0,-.7rem,0) rotate(2deg)}}@keyframes sun-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes drift-cloud{0%,to{transform:translate(0)}50%{transform:translate(1.3rem)}}@keyframes twinkle{0%,to{opacity:.35;transform:scale(.75)}50%{opacity:1;transform:scale(1.25)}}@keyframes portal-spin{to{transform:rotate(360deg)}}@keyframes portal-counter-spin{to{transform:rotate(-360deg)}}@keyframes card-bob{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-5px) rotate(-.5deg)}}@keyframes table-float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes mic-pulse{0%,to{box-shadow:0 0 #4b806352,0 16px 30px #4b80633d}50%{box-shadow:0 0 0 16px #4b806300,0 16px 30px #4b80633d}}@keyframes voice-ring{0%,to{transform:scale(.9);opacity:.45}50%{transform:scale(1.12);opacity:.95}}@keyframes tim-float{0%,to{transform:translateY(0)}50%{transform:translateY(-7px)}}@keyframes tim-sparkle{0%,to{opacity:.55;transform:scale(.96)}50%{opacity:1;transform:scale(1.06)}}.hand-drawn{box-shadow:0 1px #fffc inset,0 18px 50px #6f4a271f;border-radius:28px 22px 30px 24px}.scene-blob{filter:drop-shadow(0 18px 24px rgba(122,73,36,.18))}.audio-bar{width:.45rem;border-radius:999px;background:linear-gradient(180deg,#4b8063,#f6a340);opacity:.72}.chat-pattern{background:radial-gradient(circle at 12px 12px,rgba(75,128,99,.07) 0 2px,transparent 2px 100%),#fff8e873;background-size:24px 24px}.chat-scroll-panel{height:100%;max-height:100%;overscroll-behavior:contain;scroll-behavior:smooth}.courseware-flow{position:relative;min-height:0}.courseware-flow.is-listen{gap:0}.courseware-flow.is-listen .stage-map{display:none;position:relative;z-index:10;flex-shrink:0;background:#ffffff7a;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.stage-story-shell{position:relative;overflow:hidden;padding:0}.stage-story-header{position:absolute;left:clamp(.75rem,2vw,1.25rem);top:clamp(.75rem,2vw,1.25rem);z-index:8;max-width:min(28rem,64%);border:0;border-radius:999px;background:#ffffff94;padding:.6rem 1rem;box-shadow:0 14px 28px #5c3c1a1f;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.stage-story-header h2{font-size:clamp(1.05rem,2vw,1.55rem)}.stage-story-header>p{display:none}.storybook-player{position:relative;height:100%;min-height:0;overflow:hidden;border-radius:2rem}.storybook-frame{position:relative;display:block;height:100%;min-height:0;overflow:hidden;touch-action:pan-y;border:0;border-radius:2rem;background:linear-gradient(135deg,#ffebc2f0,#cfebffe0);box-shadow:0 20px 46px #5c3c1a26}.storybook-art{position:absolute;inset:0;display:block;overflow:hidden;padding:0}.story-motion-layer{transform-origin:var(--kb-origin, 50% 50%);transform:translate3d(var(--kb-from-x, 0%),var(--kb-from-y, 0%),0) scale(var(--kb-from-scale, 1.06)) rotate(var(--kb-from-rotate, 0deg));will-change:transform;animation:story-ken-burns var(--story-motion-duration, 7.8s) cubic-bezier(.25,.1,.25,1) both}.storybook-image{position:relative;z-index:1;display:block;width:100%;height:100%;border-radius:0;-o-object-fit:cover;object-fit:cover;filter:none}.storybook-image-backdrop,.story-popout-token{display:none}.storybook-placeholder{width:100%;height:100%;min-height:0;border:0;border-radius:0}.story-dialogue-layer{position:absolute;inset:0;z-index:8;pointer-events:none}.story-speech-bubble{position:absolute;left:8%;top:8%;max-width:min(34vw,28rem);border:2px solid rgba(255,255,255,.88);border-radius:1.45rem;background:linear-gradient(180deg,#fffffff0,#ffffffd1);padding:clamp(.52rem,1.1vw,.82rem) clamp(.78rem,1.55vw,1.08rem);color:#171923;font-size:clamp(.9rem,1.55vw,1.3rem);font-weight:900;line-height:1.28;white-space:pre-line;box-shadow:0 12px 24px #1c181229,inset 0 1px #fffc;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.story-speech-bubble:after{position:absolute;left:2rem;bottom:-.72rem;width:1.25rem;height:1.25rem;background:#ffffffe0;clip-path:polygon(0 0,100% 0,0 100%);content:"";transform:rotate(-12deg)}.story-speech-bubble.bubble-line-2:after{left:auto;right:2rem;transform:rotate(102deg)}.story-speech-bubble.speaker-tim{border-color:#92c8ffe0}.story-speech-bubble.speaker-xiangxiang{border-color:#ffc362e0}.story-speech-bubble.speaker-dad{border-color:#76ae7edb}.story-speech-bubble.speaker-mom{border-color:#ff998ad1}.story-speech-bubble.speaker-story{left:50%;top:8%;max-width:min(62vw,48rem);transform:translate(-50%);text-align:center}.story-speech-bubble.speaker-story:after{left:50%;transform:translate(-50%) rotate(45deg)}.story-speech-bubble.bubble-page-1.bubble-line-1{left:9%;top:5.2%;max-width:min(26vw,18rem)}.story-speech-bubble.bubble-page-1.bubble-line-2{inset:46% auto auto 36%;max-width:min(34vw,26rem)}.story-speech-bubble.bubble-page-1.bubble-line-2:after{left:28%;right:auto;top:-.62rem;bottom:auto;transform:rotate(180deg)}.story-speech-bubble.bubble-page-2,.story-speech-bubble.bubble-page-6{left:auto;right:5%;top:5%;max-width:min(38vw,29rem)}.story-speech-bubble.bubble-page-3,.story-speech-bubble.bubble-page-4{left:auto;right:5%;top:5%;max-width:min(38vw,30rem)}.story-speech-bubble.bubble-page-5{left:8%;top:5%;max-width:min(30vw,22rem)}.story-page-tools{position:absolute;right:clamp(.75rem,2vw,1.15rem);bottom:clamp(.75rem,2vw,1.15rem);z-index:10;display:flex;align-items:center;gap:.5rem;border:1px solid rgba(255,255,255,.72);border-radius:999px;background:#ffffff8f;padding:.35rem;box-shadow:0 12px 26px #37271324;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.story-page-count{padding:0 .55rem;color:#243044b3;font-size:.72rem;font-weight:900}.story-swipe-hint{display:none;padding:0 .45rem;color:#2430446b;font-size:.68rem;font-weight:1000}.story-voice-status{position:absolute;left:clamp(.85rem,2vw,1.25rem);bottom:clamp(.75rem,2vw,1.15rem);z-index:10;max-width:min(44vw,26rem);pointer-events:none}.story-voice-error,.story-voice-name{display:inline-block;border-radius:999px;background:#ffffff9e;padding:.35rem .65rem;font-size:.72rem;font-weight:900;box-shadow:0 10px 18px #3727131a;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.story-voice-error{color:#dc2626}.story-voice-name{color:#4b8063}.storybook-caption{position:absolute;left:50%;bottom:1.05rem;z-index:7;width:min(84%,42rem);transform:translate(-50%);border:1px solid rgba(255,255,255,.72);border-radius:1.45rem;background:#ffffffb3;padding:.85rem 1rem;box-shadow:0 18px 36px #37271324;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.story-audio-button{border:1px solid rgba(75,128,99,.1);background:#ffffffbd;color:#4b8063;padding:.45rem .8rem;font-size:.75rem}.story-nav-button{position:absolute;top:50%;z-index:9;display:grid;width:clamp(2.8rem,5.6vw,3.8rem);height:clamp(2.8rem,5.6vw,3.8rem);place-items:center;transform:translateY(-50%);border:2px solid rgba(255,255,255,.76);border-radius:999px;background:#ffffff6b;color:#243044c7;font-size:clamp(2rem,4vw,2.6rem);line-height:1;box-shadow:0 14px 28px #5c3c1a24;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.story-nav-left{left:clamp(.6rem,2vw,1.15rem)}.story-nav-right{right:clamp(.6rem,2vw,1.15rem)}.story-nav-button:not(:disabled):hover{transform:translateY(-50%) scale(1.08);background:#ffffffa8}.story-progress-line{position:absolute;left:0;right:0;bottom:0;z-index:8;height:3px;background:#ffffff57}.story-progress-line span{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#ff786b,#ffd36f,#75c993);box-shadow:0 0 12px #ff786b47;transition:width .26s ease}.storybook-controls,.story-dots,.story-dot{display:none}.story-mobile-button{border:2px solid rgba(255,255,255,.76);border-radius:999px;background:#ffffffbd;padding:.75rem 1.25rem;color:#243044b8;font-size:.9rem;font-weight:900;box-shadow:0 10px 18px #5c3c1a1f}.story-mobile-button.is-primary{background:linear-gradient(135deg,#ff786b,#ffbd62);color:#fff}@keyframes story-ken-burns{0%{transform:translate3d(var(--kb-from-x, 0%),var(--kb-from-y, 0%),0) scale(var(--kb-from-scale, 1.06)) rotate(var(--kb-from-rotate, 0deg))}to{transform:translate3d(var(--kb-to-x, 0%),var(--kb-to-y, 0%),0) scale(var(--kb-to-scale, 1.12)) rotate(var(--kb-to-rotate, 0deg))}}@media(prefers-reduced-motion:reduce){.story-motion-layer{animation:none;transform:scale(1.04)}}.challenge-stage-layout{display:grid;height:100%;min-height:0;grid-template-rows:minmax(0,.4fr) minmax(0,.6fr);gap:.55rem;padding:.5rem}.challenge-scene-panel,.challenge-chat-panel{min-height:0;overflow:hidden}.challenge-scene-panel,.challenge-chat-panel,.challenge-table-inner{display:flex;flex-direction:column}.challenge-scene-header,.challenge-chat-header{display:flex;flex-shrink:0;align-items:center;justify-content:space-between;gap:.65rem;padding:.62rem .75rem .35rem}.challenge-scene-scroll{display:grid;min-height:0;flex:1;grid-template-rows:minmax(0,1fr) auto;gap:.4rem;overflow:hidden;padding:0 .55rem .55rem}.challenge-table-card{min-height:0;overflow:hidden;padding:.45rem}.challenge-table-inner{height:100%;min-height:0;overflow:hidden}.challenge-table-scene{min-height:0;flex:1;border-radius:1.35rem}.challenge-table-scene.table-scene{min-height:0;align-items:stretch;justify-items:stretch;padding:.58rem}.challenge-table-scene .table-plate{width:100%;height:100%;min-height:0;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:minmax(0,1fr);gap:.55rem;border-width:0;border-radius:1.45rem;background:radial-gradient(circle at 50% 30%,rgba(255,213,153,.48),transparent 10rem),linear-gradient(135deg,#fff6dbb8,#ffddc294);padding:.72rem;box-shadow:inset 0 0 0 2px #ffffff8a;animation:none}.challenge-table-scene .table-item{min-width:0;min-height:0;align-content:center;border-radius:1.15rem;padding:.28rem .32rem}.challenge-table-scene .table-item-badge{width:2.15rem;height:2.15rem;overflow:visible}.challenge-mission-card{display:none;margin:.75rem;border-radius:1.35rem;background:#243044;color:#fff;padding:.85rem 1rem;box-shadow:0 12px 24px #24304424}.challenge-progress-card{min-height:0;overflow:hidden;border:2px solid rgba(255,255,255,.72);border-radius:1.35rem;background:#ffffffb8;padding:.55rem .65rem;box-shadow:0 8px 16px #5c3c1a14}.challenge-progress-mission{display:flex;align-items:flex-start;gap:.45rem;margin-bottom:.45rem;border:1.5px solid rgba(255,255,255,.78);border-radius:1rem;background:radial-gradient(circle at 8% 0%,rgba(255,211,111,.28),transparent 5rem),linear-gradient(135deg,#fffae8e6,#e4f6e2a8);padding:.45rem .55rem;box-shadow:inset 0 1px #ffffffc7}.challenge-progress-mission span{flex-shrink:0;border-radius:999px;background:#4b80631f;padding:.16rem .42rem;color:#4b8063;font-size:.64rem;font-weight:950;line-height:1.2}.challenge-progress-mission p{display:-webkit-box;min-width:0;overflow:hidden;color:#243044b8;font-size:.72rem;font-weight:850;line-height:1.35;-webkit-box-orient:vertical;-webkit-line-clamp:2}.food-collection-card{background:radial-gradient(circle at 12% 0%,rgba(255,211,111,.34),transparent 7rem),#ffffffc7}.food-collection-strip{display:flex;gap:.35rem;overflow-x:auto;padding:.45rem 0 .1rem}.food-collect-chip{display:grid;min-width:3.4rem;place-items:center;gap:.08rem;border:2px solid rgba(255,255,255,.76);border-radius:1rem;background:#24304414;color:#24304459;padding:.28rem .35rem;filter:grayscale(1);transition:transform .18s ease,background .18s ease,color .18s ease,filter .18s ease,box-shadow .18s ease}.food-collect-chip span{display:grid;width:1.45rem;height:1.45rem;place-items:center;overflow:visible;border-radius:999px;background:#ffffff9e;font-size:.8rem;font-weight:1000}.food-collect-chip small{max-width:3rem;overflow:hidden;font-size:.56rem;font-weight:1000;text-overflow:ellipsis;white-space:nowrap}.food-collect-chip.is-collected{background:linear-gradient(145deg,#fff1a6,#fff);color:#243044;filter:none;transform:translateY(-2px) scale(1.03);box-shadow:0 8px 16px #5c3c1a1f;animation:collect-pop .42s ease both}.table-item.is-collected{outline:3px solid rgba(255,211,111,.78);box-shadow:0 0 0 5px #ffd36f29,0 12px 20px #5c3c1a1f;transform:translateY(-2px)}.challenge-chat-panel{display:flex;flex-direction:column}.challenge-chat-main{display:grid;min-height:0;flex:1;grid-template-columns:minmax(4.75rem,.28fr) minmax(0,.72fr);gap:.45rem;overflow:hidden;padding:.5rem}.challenge-tim-slot{display:flex;min-height:0;align-items:center;justify-content:center;overflow:hidden;border-radius:1.5rem;background:linear-gradient(180deg,#dbedffb8,#ffffffb8);padding:.25rem;box-shadow:inset 0 1px #ffffffa6}.challenge-input-dock{flex-shrink:0;border-top:1px solid rgba(36,48,68,.08);background:#ffffffc2;padding:.55rem}.certificate-claim-button.is-locked{background:#2430441a;color:#24304466}.certificate-claim-button.is-ready{background:linear-gradient(135deg,#ff786b,#ffd36f);color:#fff;box-shadow:0 0 #ff786b6b,0 12px 22px #ff786b38;animation:certificate-breathe 1.35s ease-in-out infinite}.challenge-stage-layout.is-fading-out{pointer-events:none;animation:stage-fade-out .52s ease forwards}.premium-medal{width:-moz-max-content;width:max-content;border:3px solid rgba(255,255,255,.8);border-radius:999px;background:linear-gradient(135deg,#ffb000,#ffe98a);color:#7a4300;padding:.55rem 1rem;font-weight:1000;box-shadow:0 12px 24px #b266002e}@keyframes collect-pop{0%{transform:scale(.82)}58%{transform:translateY(-4px) scale(1.1)}to{transform:translateY(-2px) scale(1.03)}}@keyframes certificate-breathe{0%,to{transform:translateY(0);box-shadow:0 0 #ff786b61,0 12px 22px #ff786b38}50%{transform:translateY(-2px);box-shadow:0 0 0 8px #ff786b00,0 16px 26px #ff786b47}}@keyframes stage-fade-out{to{opacity:0;transform:scale(.985)}}@media(min-width:900px){.challenge-stage-layout{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);grid-template-rows:none;gap:1rem;padding:1rem}.challenge-scene-header,.challenge-chat-header{padding:1rem 1.1rem .65rem}.challenge-scene-scroll{gap:.8rem;padding:0 1rem 1rem}.challenge-table-card{padding:.55rem}.challenge-mission-card{display:none}.challenge-table-inner>div:first-child{padding:.62rem .72rem .35rem}.challenge-table-scene .table-plate{width:100%;min-height:0;gap:.42rem;padding:.58rem}.challenge-table-scene .table-item-badge{width:1.9rem;height:1.9rem}.challenge-progress-card{padding:.46rem .55rem}.challenge-progress-mission{gap:.38rem;margin-bottom:.36rem;border-radius:.88rem;padding:.34rem .44rem}.challenge-progress-mission p{font-size:.66rem;line-height:1.3}.food-collection-strip{padding-top:.32rem}.food-collect-chip{min-width:3.05rem;border-radius:.86rem;padding:.22rem .28rem}.food-collect-chip span{width:1.25rem;height:1.25rem}.food-collect-chip small{max-width:2.7rem;font-size:.5rem}.challenge-chat-main{grid-template-columns:minmax(0,.38fr) minmax(0,.62fr);gap:.75rem;padding:1rem}.challenge-input-dock{padding:.85rem 1rem 1rem}}@media(max-width:640px){.game-frame{width:100vw;max-width:none;height:100vh;height:100dvh;max-height:none;border-radius:0;box-shadow:none}.game-topbar{left:.45rem;right:.45rem;top:.45rem;padding:.35rem .42rem}.game-content{padding-top:3.25rem}.hud-center{display:none}.hand-drawn{border-radius:24px}.game-world{border-radius:0}.adventure-board{border-radius:26px;padding:.9rem 1rem}.hub-brief-card{max-height:none;transform:rotate(-.7deg)}.portal-card{display:none}.hub-brief-card h1{margin-top:.7rem;font-size:2.45rem;line-height:.98}.hub-brief-card p{margin-top:.8rem;font-size:.95rem;line-height:1.55}.hub-step-list{display:none}.mission-chip{padding:.52rem .75rem;font-size:.82rem}.case-card{min-height:auto;border-radius:26px;padding:1rem;animation-duration:5s}.case-card.is-active,.case-card.is-active:hover{transform:rotate(1deg) scale(1.01)}.case-card.is-secondary{transform:translateY(0) rotate(-.5deg) scale(.99)}.case-card h2{font-size:1.7rem}.case-game-icon{width:3.55rem;height:3.55rem;border-radius:1.2rem}.stage-story-header{display:none}.courseware-flow.is-listen .stage-map{border-radius:999px;margin-inline:.5rem}.stage-map{border-radius:22px;padding:.35rem}.level-path{gap:.35rem}.level-path:before{left:12%;right:12%;height:.35rem}.level-node{min-height:3.1rem;justify-content:center;border-width:2px;border-radius:999px;padding:.35rem}.level-node>span:not(.level-number){display:none}.level-number{width:2.15rem;height:2.15rem}.stage-story-shell{padding:0 .5rem .5rem}.storybook-player{display:block;height:100%;border-radius:0;overflow:hidden}.storybook-frame{height:100%;border-radius:1.5rem;background:linear-gradient(180deg,#d8f0fad6,#fff7daeb 62%,#ffefd0f5)}.storybook-art{position:absolute;inset:0 0 auto;height:63%;padding:0}.storybook-image{-o-object-fit:cover;object-fit:cover;-o-object-position:center;object-position:center;background:radial-gradient(circle at 72% 30%,rgba(255,211,111,.2),transparent 8rem),linear-gradient(180deg,#d6edffb8,#fff6d5db)}.story-dialogue-layer{inset:0 0 auto;height:63%}.storybook-placeholder{min-height:0}.story-speech-bubble{max-width:78%;border-radius:1.1rem;padding:.55rem .75rem;font-size:clamp(.82rem,4.2vw,1.05rem);line-height:1.22}.story-speech-bubble.bubble-page-1.bubble-line-1,.story-speech-bubble.bubble-page-5{left:5%;top:7%}.story-speech-bubble.bubble-page-1.bubble-line-2,.story-speech-bubble.bubble-page-2,.story-speech-bubble.bubble-page-3,.story-speech-bubble.bubble-page-4,.story-speech-bubble.bubble-page-6{left:auto;right:5%;top:8%;max-width:78%}.story-speech-bubble.bubble-page-1.bubble-line-2{inset:auto auto 8% 24%;max-width:70%}.story-speech-bubble.speaker-story{top:9%;max-width:82%}.story-nav-button{display:grid;width:2.65rem;height:2.65rem;font-size:2rem;top:34%}.story-page-tools{right:.55rem;bottom:.65rem;transform:scale(.92);transform-origin:right bottom}.story-voice-status{display:none}.story-swipe-hint{display:inline-flex}.storybook-controls{display:none}.strategy-badge{min-height:9rem;border-radius:1.55rem;padding:1rem}.badge-seal{width:3rem;height:3rem;font-size:1.35rem}.challenge-scene-header h2{max-width:12rem}.challenge-table-scene .table-plate{width:min(100%,15rem);min-height:7rem;gap:.35rem;border-width:5px;padding:.5rem}.challenge-table-scene .table-item{border-radius:1rem;padding:.25rem}.table-item-badge{width:2.35rem;height:2.35rem;font-size:1.05rem}.challenge-chat-main{grid-template-columns:4.7rem minmax(0,1fr)}.challenge-tim-slot .tim-card{transform:scale(.76)}.voice-console{border-radius:1.35rem;padding:.42rem .5rem}.voice-orb{width:3.35rem;height:3.35rem;border-width:4px}}@media(max-height:520px)and (orientation:landscape){.game-topbar{left:.5rem;right:.5rem;top:.5rem;padding:.38rem}.hud-logo{width:2.25rem;height:2.25rem;border-radius:999px;font-size:1.15rem}.hud-logo-core{width:1.42rem;height:1.42rem}.game-content{padding-top:3.25rem}.courseware-flow.is-listen{gap:0}.courseware-flow.is-listen .stage-map,.courseware-flow.is-listen .stage-story-header{display:none}.courseware-flow.is-listen .stage-story-shell{padding:0}.courseware-flow.is-listen .storybook-player,.courseware-flow.is-listen .storybook-frame{border-radius:0 0 24px 24px}.courseware-flow.is-listen .storybook-caption{bottom:1rem;width:min(78%,42rem)}.storybook-panel{border-radius:24px}.voice-console{border-radius:1.45rem;padding:.42rem .55rem}.voice-orb{width:3.75rem;height:3.75rem;border-width:4px}.storybook-caption p,.voice-console p{line-height:1.35}}@media(max-width:760px){.vocab-game-sky{align-items:flex-start;padding:.85rem .85rem .55rem}.vocab-score-panel{min-width:5.5rem;border-radius:24px;padding:.62rem .75rem}.vocab-progress-wrap,.vocab-board-wrap{padding-left:.85rem;padding-right:.85rem}.vocab-board{grid-template-columns:repeat(3,minmax(0,1fr));border-radius:26px}.memory-card{min-height:5rem;border-width:3px;box-shadow:inset 0 -6px #8153121f,0 7px #d3810033,0 12px 18px #5c3c1a1f}.vocab-game-footer{gap:.5rem;padding-top:.65rem}.game-pill-button{min-width:6.8rem;padding:.62rem 1rem}}@media(max-width:430px){.vocab-game-sky{flex-direction:column}.vocab-score-panel{display:flex;width:100%;justify-content:center;gap:.45rem}.vocab-board{grid-template-columns:repeat(2,minmax(0,1fr))}}@supports (height: 100svh){.game-viewport,.game-frame{height:100svh}}@media(max-width:640px){.floating-decor{display:none}.game-frame:not(.is-story-mode) .floating-decor.decor-cloud,.game-frame:not(.is-story-mode) .floating-decor.decor-star{z-index:0;display:block;opacity:.38;filter:blur(.2px) drop-shadow(0 10px 16px rgba(92,60,26,.08))}.game-frame:not(.is-story-mode) .decor-cloud{left:-1.4rem;top:5.8rem;width:8rem;height:4rem}.game-frame:not(.is-story-mode) .decor-star{right:.8rem;top:6.2rem;width:3.2rem;height:3.2rem}.game-viewport{place-items:stretch}.game-frame{min-height:0;background:radial-gradient(circle at 18% 10%,rgba(255,255,255,.72),transparent 10rem),linear-gradient(180deg,#fff6cffa,#ffecd5f5)}.game-topbar{top:max(.32rem,env(safe-area-inset-top));left:.38rem;right:.38rem;min-height:2.65rem;padding:.28rem .36rem;border-width:1.5px;box-shadow:0 8px 16px #5737181a}.hud-logo,.hud-icon-button{width:2.15rem;height:2.15rem}.hud-logo{border-radius:999px;font-size:1.18rem}.hud-logo-core{width:1.38rem;height:1.38rem}.hud-icon-button{font-size:.98rem}.game-content{padding-top:3.05rem}.game-toast{top:max(3.15rem,calc(env(safe-area-inset-top) + 3rem));max-width:86%;border-radius:1.25rem;padding:.55rem .85rem;font-size:.75rem;line-height:1.35}.courseware-flow{gap:.45rem}.courseware-flow.is-challenge{gap:0}.courseware-flow.is-challenge .stage-map{display:none}.courseware-flow.is-challenge>.min-h-0{height:100%}.challenge-stage-layout{grid-template-rows:minmax(8.1rem,.29fr) minmax(0,.71fr);gap:.38rem;padding:.34rem}.challenge-scene-panel,.challenge-chat-panel{border-width:1.5px;border-radius:1.35rem;box-shadow:0 8px 18px #5c3c1a14}.challenge-scene-header,.challenge-chat-header{padding:.46rem .58rem .22rem}.challenge-scene-header h2{max-width:none;font-size:1.28rem;line-height:1.05}.challenge-scene-header p:first-child,.challenge-chat-header p:last-child,.challenge-table-inner>div:first-child{display:none}.challenge-scene-scroll{display:block;padding:0 .48rem .48rem;overflow:hidden}.challenge-table-card{display:none}.challenge-progress-card{height:100%;border-width:1.5px;border-radius:1.1rem;padding:.48rem .54rem}.challenge-progress-mission{margin-bottom:.32rem;padding:.32rem .42rem}.challenge-progress-mission span{font-size:.58rem}.challenge-progress-mission p{font-size:.62rem;line-height:1.25;-webkit-line-clamp:1}.challenge-progress-card p{line-height:1.2}.challenge-progress-card .mt-2.h-2{height:.38rem;margin-top:.38rem}.food-collection-strip{gap:.28rem;padding-top:.36rem}.food-collect-chip{min-width:3rem;border-width:1.5px;border-radius:.82rem;padding:.2rem .28rem}.food-collect-chip span{width:1.22rem;height:1.22rem;font-size:.72rem}.food-collect-chip small{max-width:2.65rem;font-size:.5rem}.challenge-chat-header{min-height:2.8rem}.challenge-chat-header>div:first-child p:first-child{font-size:1.15rem;line-height:1.05}.challenge-chat-header>div:last-child{padding:.25rem .38rem}.challenge-chat-main{grid-template-columns:3.55rem minmax(0,1fr);gap:.28rem;padding:.36rem .45rem}.challenge-tim-slot{border-radius:1rem;padding:0}.challenge-tim-slot .tim-card{transform:scale(.58);transform-origin:center}.challenge-tim-slot .tim-bubble{display:none}.chat-scroll-panel{border-radius:1.05rem!important;padding:.48rem!important}.chat-scroll-panel .max-w-\[88\%\]{max-width:94%;padding:.48rem .62rem;font-size:.88rem;line-height:1.45}.challenge-input-dock{padding:.42rem .48rem .5rem}.voice-console{gap:.5rem;border-width:1.5px;border-radius:1.1rem;padding:.38rem .44rem}.voice-orb{width:2.9rem;height:2.9rem;border-width:3px}.voice-console p:first-child{font-size:.88rem;line-height:1.15}.voice-console p:last-child{margin-top:.12rem;font-size:.72rem}.challenge-input-dock .mt-2.flex.gap-2.overflow-x-auto{margin-top:.38rem;gap:.35rem;padding-bottom:.08rem}.challenge-input-dock .mt-2.flex.gap-2.overflow-x-auto button{padding:.34rem .58rem;font-size:.68rem;box-shadow:none}.challenge-input-dock>.mt-2.flex.items-center{margin-top:.42rem;gap:.42rem}.challenge-input-dock>.mt-2.flex.items-center>button:first-child{padding:.48rem .62rem;font-size:.72rem}.certificate-claim-button{padding:.52rem .75rem!important;font-size:.78rem!important}}@media(max-height:520px)and (orientation:landscape){.game-frame.is-story-mode .storybook-image{-o-object-fit:cover;object-fit:cover;-o-object-position:center;object-position:center}.game-frame.is-story-mode .story-speech-bubble{max-width:38%;padding:.42rem .62rem;font-size:clamp(.78rem,2vw,1rem);line-height:1.15}.game-frame.is-story-mode .story-speech-bubble.bubble-page-1.bubble-line-1{left:4%;top:14%}.game-frame.is-story-mode .story-speech-bubble.bubble-page-1.bubble-line-2{inset:auto auto 21% 36%;max-width:36%}.game-frame.is-story-mode .story-page-tools{right:.52rem;bottom:.48rem;transform:scale(.76);transform-origin:right bottom}.game-frame.is-story-mode .story-nav-button{width:2.45rem;height:2.45rem;font-size:1.78rem}}@media(max-width:640px)and (orientation:portrait){.game-frame.is-story-mode .stage-story-shell{padding:.28rem .36rem .42rem}.game-frame.is-story-mode .storybook-frame{display:flex;height:100%;flex-direction:column;border-radius:1.35rem;background:linear-gradient(180deg,#dbf1fad6,#fffae1f5 48%,#ffeecafa)}.game-frame.is-story-mode .storybook-art{position:absolute;inset:0;height:100%;flex:none;background:radial-gradient(circle at 72% 20%,rgba(255,211,111,.2),transparent 8rem),linear-gradient(180deg,#d6edffb8,#fff6d5db)}.game-frame.is-story-mode .storybook-image-backdrop{position:absolute;inset:-1.2rem;display:block;width:calc(100% + 2.4rem);height:calc(100% + 2.4rem);-o-object-fit:cover;object-fit:cover;-o-object-position:center;object-position:center;opacity:.38;filter:blur(18px) saturate(1.15) brightness(1.05);transform:scale(1.04)}.game-frame.is-story-mode .storybook-image{width:100%;height:auto;max-height:67%;-o-object-fit:contain;object-fit:contain;-o-object-position:center top;object-position:center top;filter:drop-shadow(0 16px 24px rgba(92,60,26,.13))}.game-frame.is-story-mode .story-dialogue-layer{inset:0;height:100%}.game-frame.is-story-mode .story-nav-button{top:min(38vw,15.5rem);width:2.45rem;height:2.45rem;font-size:1.8rem}.game-frame.is-story-mode .story-speech-bubble{max-width:76%;padding:.42rem .62rem;font-size:clamp(.72rem,3.55vw,.9rem);line-height:1.18}.game-frame.is-story-mode .story-speech-bubble.bubble-page-1.bubble-line-1,.game-frame.is-story-mode .story-speech-bubble.bubble-page-5{left:5%;top:5.5%}.game-frame.is-story-mode .story-speech-bubble.bubble-page-1.bubble-line-2,.game-frame.is-story-mode .story-speech-bubble.bubble-page-2,.game-frame.is-story-mode .story-speech-bubble.bubble-page-3,.game-frame.is-story-mode .story-speech-bubble.bubble-page-4,.game-frame.is-story-mode .story-speech-bubble.bubble-page-6{left:auto;right:4%;top:5.5%;max-width:76%}.game-frame.is-story-mode .story-speech-bubble.bubble-page-1.bubble-line-2{inset:auto auto 7% 23%;max-width:72%}.game-frame.is-story-mode .story-page-tools{right:.62rem;bottom:.7rem;transform:scale(.84);transform-origin:right bottom}.game-frame.is-story-mode .story-progress-line{bottom:0}}@media(max-width:640px){.courseware-flow.is-vocab{gap:0}.courseware-flow.is-vocab .stage-map{display:none}.courseware-flow.is-vocab>.min-h-0{height:100%}.vocab-game-stage{border-width:1.5px;border-radius:1.35rem}.vocab-game-sky{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.55rem;padding:.58rem .68rem .42rem}.vocab-game-sky h2{margin-top:.12rem;font-size:1.55rem;line-height:1.05}.vocab-game-sky p:nth-child(3){display:none}.vocab-score-panel{min-width:4.8rem;border-width:1.5px;border-radius:1.1rem;padding:.35rem .52rem}.vocab-score-panel strong{font-size:1.55rem}.vocab-progress-wrap{padding:0 .68rem .36rem}.vocab-progress-wrap .flex{font-size:.68rem}.vocab-progress-track{height:.36rem;margin-top:.2rem}.vocab-board-wrap{padding:0 .58rem}.vocab-board{grid-template-columns:repeat(4,minmax(0,1fr));gap:.36rem;overflow:hidden;border-width:2px;border-radius:1.25rem;padding:.46rem}.memory-card{min-height:4.15rem;border-width:2px;border-radius:1rem;box-shadow:inset 0 -4px #8153121f,0 4px #d381002e,0 7px 12px #5c3c1a1a}.memory-food-badge{width:2.15rem;height:2.15rem;font-size:1.32rem;border-radius:.72rem}.memory-word{padding:0 .12rem;font-size:clamp(.72rem,3.1vw,.96rem);line-height:1.05;word-break:break-word}.memory-caption{bottom:.22rem;font-size:.46rem}.memory-check{right:.22rem;top:.22rem;width:1.05rem;height:1.05rem;font-size:.7rem}.vocab-game-footer{gap:.45rem;padding:.5rem .58rem .58rem}.game-pill-button{min-width:0;flex:1;border-width:2px;padding:.52rem .42rem;font-size:.82rem;box-shadow:0 5px #5c3c1a1c,0 9px 14px #5c3c1a1a}}@media(max-width:640px)and (orientation:portrait){.game-frame.is-story-mode .stage-story-shell{padding:.32rem .42rem .48rem}.game-frame.is-story-mode .storybook-frame{display:flex;height:100%;min-height:0;flex-direction:column;isolation:isolate;border-radius:1.25rem;background:radial-gradient(circle at 50% 24%,rgba(255,255,255,.76),transparent 11rem),linear-gradient(180deg,#fff7dbfa,#ffeecdfa)}.game-frame.is-story-mode .storybook-frame:before{display:none}.game-frame.is-story-mode .storybook-art{position:relative!important;inset:auto!important;display:grid;z-index:1;width:100%;height:min(50svh,27.5rem)!important;min-height:21rem;aspect-ratio:auto;flex:0 0 auto;place-items:start center;overflow:hidden;border-radius:1.1rem 1.1rem .7rem .7rem;background:radial-gradient(circle at 70% 22%,rgba(255,211,111,.18),transparent 7rem),linear-gradient(180deg,#daeff9db,#fff8dde6);backface-visibility:hidden;transform:translateZ(0)}.game-frame.is-story-mode .story-motion-layer{animation:none!important;transform-origin:center center;will-change:auto}.game-frame.is-story-mode .storybook-image-backdrop{display:none!important}.game-frame.is-story-mode .storybook-image{position:relative;z-index:1;width:100%;height:100%;max-height:none;-o-object-fit:contain;object-fit:contain;-o-object-position:center top;object-position:center top;filter:drop-shadow(0 12px 18px rgba(92,60,26,.08));backface-visibility:hidden;transform:translateZ(0)}.game-frame.is-story-mode .story-dialogue-layer{position:relative!important;inset:auto!important;display:flex;z-index:5;min-height:0;height:auto!important;flex:1 1 auto;flex-direction:column;justify-content:flex-start;gap:.45rem;padding:.68rem .78rem .35rem;pointer-events:none}.game-frame.is-story-mode .story-speech-bubble,.game-frame.is-story-mode .story-speech-bubble.bubble-page-1.bubble-line-1,.game-frame.is-story-mode .story-speech-bubble.bubble-page-1.bubble-line-2,.game-frame.is-story-mode .story-speech-bubble.bubble-page-2,.game-frame.is-story-mode .story-speech-bubble.bubble-page-3,.game-frame.is-story-mode .story-speech-bubble.bubble-page-4,.game-frame.is-story-mode .story-speech-bubble.bubble-page-5,.game-frame.is-story-mode .story-speech-bubble.bubble-page-6,.game-frame.is-story-mode .story-speech-bubble.speaker-story{position:relative!important;inset:auto!important;width:100%;max-width:100%!important;transform:none!important;border-radius:1.15rem;padding:.64rem .78rem;font-size:clamp(.86rem,4.25vw,1.04rem);line-height:1.2;text-align:left}.game-frame.is-story-mode .story-speech-bubble:after{display:none}.game-frame.is-story-mode .story-nav-button{top:auto;bottom:.68rem;width:2.15rem;height:2.15rem;font-size:1.72rem;opacity:.46}.game-frame.is-story-mode .story-nav-left{left:.72rem}.game-frame.is-story-mode .story-nav-right{right:.72rem}.game-frame.is-story-mode .story-page-tools{position:relative;z-index:9;right:auto;bottom:auto;align-self:flex-end;margin:0 .62rem .66rem auto;transform:none}.game-frame.is-story-mode .story-swipe-hint{display:inline-flex}}@keyframes story-mobile-drift{0%,to{transform:translate3d(-.7%,-.2%,0) scale(1.012);filter:saturate(1) brightness(1)}50%{transform:translate3d(.7%,.35%,0) scale(1.032);filter:saturate(1.06) brightness(1.025)}}@keyframes story-atmosphere-flow{0%{filter:blur(24px) hue-rotate(-5deg) saturate(1.02);transform:translate3d(-1.5%,-.6%,0) scale(1)}to{filter:blur(26px) hue-rotate(9deg) saturate(1.12);transform:translate3d(1.6%,.8%,0) scale(1.04)}}@keyframes story-backdrop-flow{0%{filter:blur(16px) saturate(1.08) brightness(1.04) hue-rotate(-4deg);transform:scale(1.04) translate3d(-.8%,0,0)}to{filter:blur(18px) saturate(1.18) brightness(1.08) hue-rotate(7deg);transform:scale(1.08) translate3d(.8%,-.4%,0)}}@media(max-width:640px){.courseware-flow.is-vocab{gap:0!important}.courseware-flow.is-vocab>.min-h-0{height:100%}.vocab-game-stage{height:100%;border-width:1.5px;border-radius:1.25rem}.vocab-game-sky{display:grid;min-height:0;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.5rem;padding:.45rem .58rem .32rem}.vocab-game-sky h2{margin-top:.08rem;font-size:1.38rem;line-height:1}.vocab-game-sky p:nth-child(3){display:none}.vocab-score-panel{min-width:4.25rem;border-width:1.5px;border-radius:1rem;padding:.28rem .45rem}.vocab-score-panel strong{font-size:1.36rem}.vocab-progress-wrap{flex-shrink:0;padding:0 .58rem .3rem}.vocab-progress-wrap .flex{font-size:.64rem}.vocab-progress-track{height:.32rem;margin-top:.16rem}.vocab-board-wrap{min-height:0;flex:1 1 auto;padding:0 .52rem}.vocab-board{height:100%;min-height:0;grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:repeat(5,minmax(0,1fr));gap:.32rem;overflow:hidden;border-width:2px;border-radius:1.15rem;padding:.42rem}.memory-card{min-height:0;height:100%;border-width:2px;border-radius:.9rem;box-shadow:inset 0 -3px #8153121f,0 3px #d3810029,0 6px 10px #5c3c1a17}.memory-food-badge{width:clamp(1.72rem,8vw,2.08rem);height:clamp(1.72rem,8vw,2.08rem);font-size:clamp(1.08rem,5vw,1.28rem);border-radius:.66rem}.memory-food-image{width:clamp(2.65rem,12vw,3.15rem);height:clamp(2.12rem,9.8vw,2.62rem)}.memory-word{padding:0 .08rem;font-size:clamp(.62rem,2.9vw,.88rem);line-height:1.05;word-break:break-word}.memory-caption{bottom:.16rem;font-size:.42rem}.vocab-game-footer{flex-shrink:0;gap:.38rem;padding:.42rem .52rem .52rem}.game-pill-button{min-width:0;flex:1;border-width:2px;padding:.46rem .34rem;font-size:.78rem}}.game-frame.is-topbar-collapsed .topbar-drawer-toggle{width:2.76rem;height:2.76rem;max-width:2.76rem;justify-content:center;gap:0;padding:.22rem}.game-frame.is-topbar-collapsed .topbar-drawer-copy{display:none}.game-frame.is-topbar-collapsed .topbar-drawer-mark{width:2.16rem;height:2.16rem}@media(min-width:900px){.challenge-table-scene .table-plate{grid-template-columns:repeat(5,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));gap:.38rem;padding:.5rem}.challenge-table-scene .table-item{display:grid;place-items:center;gap:.06rem;border-radius:.95rem;padding:.22rem .16rem}.challenge-table-scene .table-item-badge{width:1.55rem;height:1.55rem}.challenge-table-scene .table-item p{max-width:100%;overflow:hidden;font-size:.56rem;line-height:1.05;text-overflow:ellipsis;white-space:nowrap}}@media(max-width:640px){.game-frame.is-topbar-collapsed .game-content{padding-top:3rem}.courseware-flow .stage-map{display:none}.courseware-flow{gap:0}.courseware-flow>.min-h-0{min-height:0;height:100%}.topbar-drawer-toggle{left:.42rem;top:max(.28rem,env(safe-area-inset-top));width:2.56rem;height:2.56rem;max-width:2.56rem;padding:.18rem}.topbar-drawer-mark{width:2.04rem;height:2.04rem;font-size:1.02rem}.game-toast{top:max(3.08rem,calc(env(safe-area-inset-top) + 2.9rem))}.vocab-game-stage{border-radius:1.12rem}.vocab-game-sky{grid-template-columns:minmax(0,1fr) auto;gap:.42rem;padding:.42rem .52rem .26rem}.vocab-game-sky h2{font-size:clamp(1.12rem,6.4vw,1.34rem)}.vocab-game-sky .text-xs{font-size:.62rem}.vocab-score-panel{min-width:3.75rem;border-radius:.9rem;padding:.22rem .38rem}.vocab-score-panel span{font-size:.54rem}.vocab-score-panel strong{font-size:1.18rem;line-height:.95}.vocab-progress-wrap{padding:0 .52rem .24rem}.vocab-progress-wrap .flex{font-size:.58rem}.vocab-board-wrap{min-height:0;flex:1 1 auto;padding:0 .52rem}.vocab-board{height:100%;min-height:0;grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:repeat(5,minmax(0,1fr));gap:.3rem;padding:.38rem}.memory-card{min-height:0;height:100%;border-width:1.5px;border-radius:.82rem}.memory-food-badge{width:clamp(1.72rem,12vw,2.18rem);height:clamp(1.72rem,12vw,2.18rem);border-radius:.62rem}.memory-food-image{width:clamp(2.42rem,17vw,3.04rem);height:clamp(1.96rem,13.5vw,2.46rem)}.memory-word{font-size:clamp(.62rem,3.35vw,.86rem);line-height:1.02;word-break:normal}.memory-caption{display:none}.vocab-game-footer{gap:.32rem;padding:.36rem .46rem .44rem}.game-pill-button{padding:.42rem .25rem;font-size:.7rem}.game-pill-button.is-primary{opacity:1;filter:none}.challenge-stage-layout{grid-template-rows:minmax(6.65rem,.23fr) minmax(0,.77fr);gap:.3rem;padding:.28rem}.challenge-scene-header{display:none}.challenge-scene-scroll{height:100%;padding:.38rem}.challenge-progress-card{display:flex;height:100%;min-height:0;flex-direction:column;justify-content:center;padding:.4rem .46rem}.challenge-progress-mission{align-items:center;gap:.32rem;margin-bottom:.26rem;padding:.26rem .34rem}.challenge-progress-mission p{-webkit-line-clamp:1;font-size:.58rem}.challenge-progress-summary p:first-child{font-size:.72rem}.food-collection-strip{gap:.22rem;padding-top:.24rem}.food-collect-chip{min-width:2.42rem;border-radius:.68rem;padding:.16rem .2rem}.food-collect-chip span{width:1.04rem;height:1.04rem}.food-collect-chip span img{width:1.28rem;height:1.04rem;-o-object-fit:contain;object-fit:contain}.food-collect-chip small{max-width:2.15rem;font-size:.44rem}.challenge-chat-header{min-height:2.45rem;padding:.38rem .5rem .18rem}.challenge-chat-header>div:first-child p:first-child{font-size:1rem}.challenge-chat-main{grid-template-columns:3.1rem minmax(0,1fr);gap:.24rem;padding:.28rem .36rem}.challenge-tim-slot .tim-card{transform:scale(.5)}.challenge-input-dock{padding:.34rem .4rem .42rem}.voice-console{gap:.4rem;padding:.3rem .36rem}.voice-orb{width:2.62rem;height:2.62rem}.voice-console p:first-child{font-size:.78rem}.voice-console p:last-child{font-size:.62rem}.challenge-input-dock .mt-2.flex.gap-2.overflow-x-auto button{padding:.3rem .5rem;font-size:.62rem}.certificate-claim-button{padding:.46rem .58rem!important;font-size:.7rem!important}}@media(max-width:640px)and (orientation:portrait){.game-frame.is-story-mode .stage-story-shell{padding:.22rem .26rem .34rem}.game-frame.is-story-mode .storybook-frame{border-radius:1.18rem}.game-frame.is-story-mode .storybook-art{height:min(50svh,27rem)!important;min-height:min(20rem,50svh);place-items:start center;border-radius:1.02rem 1.02rem .78rem .78rem}.game-frame.is-story-mode .storybook-image-backdrop{display:none!important}.game-frame.is-story-mode .storybook-image{width:min(112%,46rem);max-width:112%;height:auto;aspect-ratio:16 / 9;-o-object-fit:contain;object-fit:contain;-o-object-position:center top;object-position:center top}.game-frame.is-story-mode .story-dialogue-layer{margin-top:-1.15rem;padding:.56rem .72rem .28rem}.game-frame.is-story-mode .story-speech-bubble,.game-frame.is-story-mode .story-speech-bubble.bubble-page-1.bubble-line-1,.game-frame.is-story-mode .story-speech-bubble.bubble-page-1.bubble-line-2,.game-frame.is-story-mode .story-speech-bubble.bubble-page-2,.game-frame.is-story-mode .story-speech-bubble.bubble-page-3,.game-frame.is-story-mode .story-speech-bubble.bubble-page-4,.game-frame.is-story-mode .story-speech-bubble.bubble-page-5,.game-frame.is-story-mode .story-speech-bubble.bubble-page-6,.game-frame.is-story-mode .story-speech-bubble.speaker-story{padding:.58rem .7rem;font-size:clamp(.84rem,4vw,1rem)}.game-frame.is-story-mode .story-nav-button{display:none!important}.game-frame.is-story-mode .story-page-tools{margin:0 .48rem .52rem auto}}.player-creator-backdrop{position:fixed;inset:0;z-index:240;display:grid;place-items:center;overflow-y:auto;background:radial-gradient(circle at 16% 18%,rgba(255,211,111,.38),transparent 18rem),radial-gradient(circle at 82% 76%,rgba(117,201,147,.28),transparent 20rem),#24304485;padding:max(1rem,env(safe-area-inset-top)) max(1rem,env(safe-area-inset-right)) max(1rem,env(safe-area-inset-bottom)) max(1rem,env(safe-area-inset-left));-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.player-creator-card{width:min(94vw,42rem);max-height:min(92dvh,47rem);overflow-y:auto;border:4px solid rgba(255,255,255,.82);border-radius:2.2rem;background:radial-gradient(circle at 10% 0%,rgba(255,219,112,.32),transparent 14rem),linear-gradient(145deg,#fffdf1fa,#edfae8fa);padding:clamp(1.1rem,3vw,2rem);box-shadow:0 30px 80px #1a223052}.player-creator-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.player-creator-heading p,.player-avatar-fieldset legend,.player-name-field span{color:#4b8063;font-size:.78rem;font-weight:950;letter-spacing:.08em}.player-creator-heading p{color:#ff6f61;font-size:clamp(1.28rem,3.6vw,2.05rem);font-weight:1000;letter-spacing:0;line-height:1.12}.player-creator-close{display:grid;width:2.5rem;height:2.5rem;flex:none;place-items:center;border-radius:999px;background:#24304414;color:#243044;font-size:1.5rem;font-weight:900}.player-name-field{display:grid;gap:.45rem;margin-top:1.2rem}.player-name-field input{width:100%;border:3px solid rgba(255,177,83,.42);border-radius:1.2rem;outline:none;background:#ffffffe6;padding:.85rem 1rem;color:#243044;font-size:1.1rem;font-weight:900;box-shadow:inset 0 2px 8px #5c3c1a0f}.player-name-field input:focus{border-color:#ff786b;box-shadow:0 0 0 5px #ff786b1f}.player-avatar-fieldset{margin-top:1.1rem}.player-avatar-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(.45rem,1.5vw,.8rem);margin-top:.55rem}.player-avatar-option{position:relative;aspect-ratio:1;overflow:hidden;border:3px solid rgba(255,255,255,.88);border-radius:1.35rem;background:linear-gradient(145deg,#dff1ff,#fff4c4);box-shadow:0 8px 16px #5c3c1a1a;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}.player-avatar-option:nth-child(2n){background:linear-gradient(145deg,#ffe3dd,#e2f7e2)}.player-avatar-option img{width:100%;height:100%;-o-object-fit:contain;object-fit:contain;transform:scale(1.06)}.player-avatar-option span{position:absolute;right:.28rem;bottom:.28rem;display:grid;width:1.5rem;height:1.5rem;place-items:center;border:2px solid white;border-radius:999px;background:#ff786b;color:#fff;font-weight:950}.player-avatar-option.is-selected{z-index:1;border-color:#ff786b;transform:translateY(-3px) scale(1.04);box-shadow:0 14px 24px #ff786b3d}.player-start-button{width:100%;margin-top:1.25rem;border:3px solid rgba(255,255,255,.74);border-radius:999px;background:linear-gradient(180deg,#ff8277,#ff655f);padding:.85rem 1.2rem;color:#fff;font-size:1rem;font-weight:1000;box-shadow:0 8px #b84e48,0 15px 26px #b84e4838}.player-start-button:disabled{opacity:.45;filter:grayscale(.5);box-shadow:none}.player-chip{display:flex;width:100%;align-items:center;gap:.65rem;margin-top:.85rem;border:2px solid rgba(255,255,255,.78);border-radius:1.15rem;background:#ffffff9e;padding:.45rem .65rem;text-align:left}.player-chip img{width:2.55rem;height:2.55rem;border-radius:.8rem;background:#e8f4ff;-o-object-fit:contain;object-fit:contain}.player-chip span{display:grid;min-width:0;flex:1}.player-chip small{color:#2430447a;font-size:.62rem;font-weight:900}.player-chip strong{overflow:hidden;font-weight:1000;text-overflow:ellipsis;white-space:nowrap}.player-chip em{color:#ff786b;font-size:.72rem;font-style:normal;font-weight:950}.practice-card-grid .strategy-badge{position:relative;display:grid;min-height:12rem;align-content:center;justify-items:start;overflow:hidden;padding:1.25rem 5.7rem 1.25rem 1.25rem;text-align:left}.practice-card-grid .badge-seal{position:absolute;right:1rem;top:1rem;display:grid;width:4rem;height:4rem;place-items:center;overflow:hidden;border-radius:1.2rem;background:linear-gradient(145deg,#fffffff0,#ffe09cbd)}.practice-card-grid .badge-seal img{width:82%;height:82%;-o-object-fit:contain;object-fit:contain}.phrase-speaker-button{display:inline-flex;align-items:center;gap:.35rem;margin-top:.85rem;border-radius:999px;background:#4b80631a;padding:.42rem .72rem;color:#4b8063;font-size:.72rem;font-weight:950}.story-dialogue-layer.is-narration-page{align-items:flex-end;justify-content:center;padding:0 6% 4.4rem}.story-dialogue-layer.is-narration-page .story-speech-bubble.speaker-story{position:relative;left:auto;top:auto;width:min(88%,52rem);max-width:none;transform:none;border-color:#ffffff7a;background:#243044c7;color:#fff;text-align:left;box-shadow:0 16px 32px #141a263d}.story-dialogue-layer.is-narration-page .story-speech-bubble:after{display:none}.challenge-stage-layout.challenge-redesign{display:grid;height:100%;min-height:0;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);grid-template-rows:minmax(0,1fr);gap:.65rem;padding:.45rem}.challenge-score-panel,.challenge-wechat-panel{min-width:0;min-height:0;overflow:hidden;border:3px solid rgba(255,255,255,.72);border-radius:1.7rem;background:#fffdf6eb;box-shadow:0 16px 34px #48321921}.challenge-mobile-score-toggle{display:none}.challenge-score-content{display:flex;height:100%;min-height:0;flex-direction:column;background:radial-gradient(circle at 82% 6%,rgba(255,211,111,.26),transparent 8rem),linear-gradient(180deg,#fff9e4fa,#ffeedaf5);padding:1rem}.challenge-score-heading{display:flex;flex:none;align-items:center;justify-content:space-between;gap:.7rem}.challenge-score-heading p{color:#4b8063;font-size:.72rem;font-weight:1000}.challenge-score-heading h2{margin-top:.16rem;font-size:1.78rem;font-weight:1000;line-height:1}.challenge-score-heading>strong{color:#ff786b;font-size:2.28rem;font-weight:1000}.challenge-score-heading small{color:#24304475;font-size:.72rem}.challenge-rule{flex:none;margin-top:.7rem;border:2px solid rgba(75,128,99,.12);border-radius:1rem;background:#ffffffb8;padding:.62rem .72rem;color:#243044b8;font-size:.76rem;font-weight:850;line-height:1.45}.challenge-target-scroll{min-height:0;flex:1;overflow-y:auto;padding:.72rem .08rem .45rem;scrollbar-width:thin}.challenge-target-scroll section+section{margin-top:.78rem}.challenge-target-scroll h3{display:flex;align-items:center;justify-content:space-between;margin-bottom:.48rem;font-size:.9rem;font-weight:1000}.challenge-target-scroll h3 span{color:#2430446b;font-size:.68rem}.challenge-word-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.48rem}.challenge-target-card,.challenge-pattern-card{position:relative;overflow:hidden;border:2px solid rgba(255,255,255,.82);background:#e0e2dedb;color:#243044c7;filter:grayscale(1);transition:transform .22s ease,filter .22s ease,background .22s ease,box-shadow .22s ease}.challenge-target-card{display:grid;min-height:4.55rem;place-items:center;gap:.18rem;border-radius:1.05rem;padding:.44rem .2rem .38rem}.challenge-target-card img{width:2.6rem;height:2rem;-o-object-fit:contain;object-fit:contain}.challenge-target-card span{max-width:100%;font-size:.9rem;font-weight:1000;line-height:1.08;text-align:center;overflow-wrap:anywhere}.challenge-target-card em,.challenge-pattern-card em{position:absolute;right:.34rem;top:.28rem;color:#24304466;font-size:.56rem;font-style:normal;font-weight:1000}.challenge-pattern-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.46rem}.challenge-pattern-card{display:flex;min-height:3.35rem;align-items:center;border-radius:1rem;padding:.7rem 1.9rem .62rem .75rem;font-size:.92rem;font-weight:950;line-height:1.2}.challenge-target-card.is-lit,.challenge-pattern-card.is-lit{background:linear-gradient(145deg,#fff4a6,#dff6df);color:#243044;filter:none;transform:translateY(-2px) scale(1.02);box-shadow:0 8px 16px #ff9f5b2e;animation:challenge-card-light .52s ease both}.challenge-score-progress{flex:none;border-radius:1rem;background:#ffffffd6;padding:.55rem .65rem}.challenge-score-progress>div{display:flex;justify-content:space-between;font-size:.62rem;font-weight:950}.challenge-score-progress i{display:block;height:.42rem;overflow:hidden;margin-top:.3rem;border-radius:999px;background:#2430441a}.challenge-score-progress i span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#ff786b,#ffd36f,#75c993);transition:width .26s ease}.challenge-wechat-panel{display:flex;flex-direction:column}.challenge-wechat-header{display:flex;min-height:3.7rem;flex:none;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(36,48,68,.08);padding:.6rem .8rem}.challenge-wechat-header h2{font-size:1.05rem;font-weight:1000}.challenge-wechat-header p{color:#2430447a;font-size:.62rem;font-weight:850}.demo-secret-trigger{width:1.2rem;height:1.2rem;border-radius:999px;background:transparent}.wechat-message-list{min-height:0;flex:1;overflow-y:auto;background:linear-gradient(180deg,#fffdf6d1,#f8f6ebe6),var(--challenge-scene-image),radial-gradient(circle,rgba(75,128,99,.08) 1px,transparent 1.5px),linear-gradient(180deg,#f8f6ebd1,#eff6efb8);background-position:center,center,0 0,center;background-size:auto,cover,17px 17px,auto;padding:.8rem;scroll-behavior:smooth}.wechat-message-row{display:flex;align-items:flex-start;gap:.5rem;margin-bottom:.85rem}.wechat-message-row.is-student{flex-direction:row-reverse}.wechat-avatar{display:grid;width:2.7rem;height:2.7rem;flex:none;place-items:center;overflow:hidden;border:2px solid white;border-radius:.85rem;background:#dff0ff;box-shadow:0 6px 12px #2430441f}.wechat-avatar>img{width:100%;height:100%;-o-object-fit:contain;object-fit:contain}.wechat-avatar .tim-card{position:relative;width:100%;height:100%;transform:none}.wechat-avatar .tim-bubble,.wechat-avatar .tim-name{display:none}.wechat-avatar .tim-svg{width:100%;height:100%;max-height:none;animation:none}.wechat-avatar .tim-avatar-image{width:100%;height:100%;-o-object-fit:contain;object-fit:contain;-o-object-position:center;object-position:center}.wechat-message-column{display:grid;max-width:min(76%,29rem);justify-items:start}.wechat-message-row.is-student .wechat-message-column{justify-items:end}.wechat-sender-name{margin:0 .25rem .2rem;color:#24304473;font-size:.58rem;font-weight:900}.wechat-bubble{position:relative;border-radius:.45rem 1.1rem 1.1rem;background:#fff;padding:.65rem .78rem;color:#243044;text-align:left;box-shadow:0 7px 16px #2430441a}.wechat-bubble span,.wechat-bubble small{display:block}.wechat-bubble span{font-size:.82rem;font-weight:850;line-height:1.55}.wechat-bubble small{margin-top:.25rem;color:#24304494;font-size:.65rem;font-weight:750;line-height:1.45}.wechat-message-row.is-student .wechat-bubble{border-radius:1.1rem .45rem 1.1rem 1.1rem;background:#9ae485}.wechat-bubble.is-speaking{outline:4px solid rgba(117,201,147,.22);transform:translateY(-1px)}.wechat-message-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.3rem}.experience-source-label{border-radius:999px;background:#4e97701f;padding:.12rem .38rem;color:#327352;font-size:.5rem;font-weight:950;line-height:1.2}.experience-source-label.is-speech{background:#5c79be1f;color:#4563a0}.wechat-coaching-wrap{max-width:min(36rem,100%);margin-top:.45rem}.wechat-hint-toggle{display:inline-flex;align-items:center;gap:.42rem;border:1.5px solid rgba(255,210,104,.58);border-radius:999px;background:#fff8d6d1;padding:.36rem .62rem;color:#5c3c1ad1;font-size:.74rem;font-weight:950;box-shadow:0 6px 14px #5c3c1a0f}.wechat-hint-toggle em{color:#5c3c1a94;font-size:.66rem;font-style:normal}.wechat-coaching-hint{margin-top:.34rem;border:1.5px solid rgba(255,210,104,.66);border-radius:.95rem;background:#fff6bfeb;padding:.58rem .78rem;color:#5c3c1ae6;font-size:.86rem;font-weight:900;line-height:1.5;box-shadow:0 7px 16px #5c3c1a14}.demo-input-label{margin-top:.2rem;border-radius:999px;background:#ff786b1f;padding:.16rem .42rem;color:#b84e48;font-size:.52rem;font-weight:900}.wechat-thinking{width:-moz-max-content;width:max-content;max-width:80%;border-radius:999px;background:#ffffffb8;padding:.42rem .7rem;color:#2430448f;font-size:.62rem;font-weight:900}.challenge-composer{display:grid;flex:none;gap:.38rem;border-top:1px solid rgba(36,48,68,.08);background:#ffffffe6;padding:.55rem .7rem .65rem}.voice-action-row,.keyboard-composer{display:flex;gap:.38rem}.voice-main-button{display:flex;min-width:0;flex:1;align-items:center;justify-content:center;gap:.45rem;border-radius:999px;background:linear-gradient(135deg,#ff806f,#ffb45c);padding:.62rem .8rem;color:#fff;box-shadow:0 7px 15px #ff806f33}.voice-main-button .voice-icon{flex:none;font-size:1.2rem}.voice-waveform{display:flex;width:5rem;height:1.55rem;flex:none;align-items:center;justify-content:center;gap:2px;border-radius:999px;background:#fff3;padding:0 .35rem}.voice-waveform i{display:block;width:2px;min-height:4px;border-radius:999px;background:#fffffff2;transition:height 90ms linear}.voice-main-button strong{overflow:hidden;font-size:.72rem;font-weight:1000;text-overflow:ellipsis;white-space:nowrap}.voice-main-button.is-recording{background:#ef5350;animation:voice-recording-pulse 1.1s ease-in-out infinite}.voice-main-button.is-recording strong{max-width:15rem}.demo-voice-bubble{flex:none;border-radius:999px;background:#243044;padding:.55rem .75rem;color:#fff;font-size:.65rem;font-weight:950}.keyboard-composer input{min-width:0;flex:1;border:1.5px solid rgba(36,48,68,.1);border-radius:999px;outline:none;background:#f5f6f1f0;padding:.5rem .75rem;font-size:.68rem}.keyboard-composer button{border-radius:999px;background:#4b80631f;padding:.45rem .72rem;color:#4b8063;font-size:.66rem;font-weight:950}.challenge-submit-button{width:100%;border-radius:999px;background:#243044;padding:.58rem .8rem;color:#fff;font-size:.72rem;font-weight:1000}.challenge-submit-button:disabled{background:#2430441a;color:#2430445c}@keyframes challenge-card-light{45%{transform:translateY(-5px) scale(1.1) rotate(-2deg)}}@keyframes voice-recording-pulse{50%{box-shadow:0 0 0 8px #ef53501f}}.report-stage{align-items:flex-start;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;padding-bottom:max(1rem,env(safe-area-inset-bottom));scrollbar-gutter:stable both-edges;-webkit-overflow-scrolling:touch}.report-stage .certificate-card{width:min(96%,58rem);max-height:none;flex:none;margin-block:auto;overflow:hidden;padding:1rem 1.15rem .95rem}.certificate-player{position:relative;z-index:1;display:inline-flex;align-items:center;gap:.82rem;margin-top:.3rem;border-radius:999px;background:#ffffffb3;padding:.42rem 1rem .42rem .42rem}.certificate-player img{width:3.45rem;height:3.45rem;border-radius:1rem;background:#e1f1ff;-o-object-fit:contain;object-fit:contain}.certificate-player div{display:grid;text-align:left}.certificate-player span{color:#24304473;font-size:.66rem;font-weight:900}.certificate-player strong{font-size:1.32rem;font-weight:1000}.report-stage .certificate-card>p{margin-top:.45rem}.report-stage .certificate-card h2{margin-top:.48rem;font-size:2.35rem;line-height:1.04}.report-stage .certificate-card h3{margin-top:.35rem;font-size:1.55rem;line-height:1.08}.report-stage .certificate-card>.mt-6{margin-top:.72rem}.certificate-total-score{position:relative;z-index:1;display:grid;width:6.5rem;height:6.5rem;place-items:center;align-content:center;margin:.65rem auto 0;border:7px solid rgba(255,255,255,.8);border-radius:999px;background:linear-gradient(145deg,#ff786b,#ffd36f);color:#fff;box-shadow:0 12px 24px #b266002e}.certificate-total-score strong{font-size:2.7rem;font-weight:1000;line-height:.9}.certificate-total-score span{margin-top:.28rem;font-size:.62rem;font-weight:950}.certificate-score-grid{position:relative;z-index:1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.55rem;margin-top:.65rem}.certificate-score-grid>div{display:grid;align-content:start;border:2px solid rgba(255,255,255,.76);border-radius:1.2rem;background:#ffffff94;padding:.58rem .65rem}.certificate-score-grid p{color:#24304494;font-size:.65rem;font-weight:950}.certificate-score-grid strong{margin:.12rem 0;color:#243044;font-size:1.65rem;font-weight:1000}.certificate-score-grid small{color:#24304466;font-size:.65rem}.certificate-score-grid span{color:#24304485;font-size:.55rem;font-weight:800;line-height:1.45}.certificate-feedback{position:relative;z-index:1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.52rem;margin-top:.58rem;text-align:left}.certificate-feedback section{border-radius:1rem;background:#ffffff9e;padding:.5rem .65rem}.certificate-feedback h4{color:#4b8063;font-size:.68rem;font-weight:1000}.certificate-feedback p{margin-top:.18rem;color:#243044b3;font-size:.62rem;font-weight:800;line-height:1.45}.certificate-feedback .certificate-ai-comment{grid-column:1 / -1;border-radius:1rem;background:#fff5c9d1;padding:.5rem .65rem}.teacher-dashboard{position:fixed;inset:0;overflow-y:auto;background:radial-gradient(circle at 10% 4%,rgba(255,211,111,.34),transparent 25rem),radial-gradient(circle at 90% 30%,rgba(117,201,147,.2),transparent 30rem),#f5f7f2;padding:1.25rem;color:#243044}.teacher-dashboard-header,.teacher-kpi-grid,.teacher-analysis-grid,.teacher-presentation-grid,.teacher-workspace,.teacher-record-layout,.teacher-dashboard-error,.teacher-dashboard-attribution{width:min(100%,72rem);margin-right:auto;margin-left:auto}.teacher-dashboard-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;border:1px solid rgba(36,48,68,.08);border-radius:1.4rem;background:#ffffffe0;padding:1rem 1.15rem;box-shadow:0 12px 28px #24304414}.teacher-dashboard-header p,.teacher-card-title span,.teacher-student-detail header span{color:#4b8063;font-size:.68rem;font-weight:950;letter-spacing:.08em}.teacher-dashboard-header h1{font-size:1.75rem;font-weight:1000}.teacher-dashboard-header>div:first-child>span{color:#2430447a;font-size:.62rem;font-weight:800}.teacher-dashboard-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:.45rem}.teacher-dashboard-actions label,.teacher-dashboard-actions button{border-radius:999px;background:#243044;padding:.52rem .75rem;color:#fff;font-size:.65rem;font-weight:900}.teacher-dashboard-actions .is-soft{background:#4b806324;color:#315f49}.teacher-dashboard-actions label{display:inline-flex;align-items:center;gap:.35rem;background:#24304414;color:#243044}.teacher-dashboard-actions .is-danger{background:#ff786b}.teacher-dashboard-error{margin-top:.7rem;border-radius:1rem;background:#ffe8e4;padding:.65rem .8rem;color:#9a3832;font-size:.7rem;font-weight:900}.teacher-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.7rem;margin-top:.8rem}.teacher-kpi-grid article,.teacher-chart-card,.teacher-student-list,.teacher-student-detail{border:1px solid rgba(36,48,68,.07);border-radius:1.3rem;background:#ffffffeb;box-shadow:0 10px 24px #24304412}.teacher-kpi-grid article{padding:.85rem 1rem}.teacher-kpi-grid span,.teacher-kpi-grid small{color:#24304480;font-size:.65rem;font-weight:850}.teacher-kpi-grid strong{display:block;margin:.12rem 0;color:#ff786b;font-size:2rem;font-weight:1000;line-height:1}.teacher-analysis-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;margin-top:.7rem}.teacher-presentation-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(20rem,.75fr);gap:.7rem;margin:.7rem auto 0}.teacher-presentation-main{grid-row:span 2}.teacher-presentation-bars{display:grid;gap:1rem;margin-top:1.1rem}.teacher-presentation-bars>div{display:grid;grid-template-columns:5.5rem minmax(0,1fr) 4.2rem;align-items:center;gap:.85rem}.teacher-presentation-bars span,.teacher-presentation-bars strong{font-size:.9rem;font-weight:1000}.teacher-presentation-bars i{display:block;height:1.2rem;overflow:hidden;border-radius:999px;background:#edf0ec}.teacher-presentation-bars b{display:block;height:100%;border-radius:inherit}.teacher-live-list,.teacher-alert-list{display:grid;gap:.55rem;margin-top:.8rem}.teacher-live-list>div{display:flex;align-items:center;gap:.65rem;border-radius:1rem;background:#f4f6f1;padding:.52rem}.teacher-live-list img{width:2.7rem;height:2.7rem;flex:none;border-radius:.85rem;-o-object-fit:contain;object-fit:contain}.teacher-live-list span{display:grid;min-width:0}.teacher-live-list strong,.teacher-alert-list strong{font-size:.82rem;font-weight:1000}.teacher-live-list small,.teacher-alert-list span,.teacher-alert-list p{color:#24304494;font-size:.62rem;font-weight:850}.teacher-alert-list>div{display:flex;align-items:center;justify-content:space-between;gap:.65rem;border-radius:.9rem;background:#ffe8c4b8;padding:.55rem .65rem}.teacher-dashboard.is-presentation .teacher-analysis-grid,.teacher-dashboard.is-presentation .teacher-workspace{display:none}.teacher-chart-card{min-height:18rem;padding:.9rem 1rem}.teacher-card-title{display:flex;align-items:center;justify-content:space-between;gap:.7rem}.teacher-card-title h2{font-size:1.05rem;font-weight:1000}.teacher-card-title em{border-radius:999px;background:#4b80631a;padding:.3rem .55rem;color:#4b8063;font-size:.58rem;font-style:normal;font-weight:900}.teacher-bar-chart,.teacher-radar-chart{display:block;width:100%;height:13rem;margin-top:.35rem}.chart-label,.chart-value,.radar-label{fill:#243044;font-family:PingFang SC,Microsoft YaHei,sans-serif;font-size:13px;font-weight:800}.teacher-record-layout{display:grid;grid-template-columns:minmax(17rem,.55fr) minmax(0,1.45fr);gap:.7rem;margin-top:.7rem;padding-bottom:1.5rem}.teacher-student-list,.teacher-student-detail{padding:.9rem}.teacher-student-row{display:flex;width:100%;align-items:center;gap:.6rem;margin-top:.45rem;border-radius:1rem;padding:.45rem;text-align:left;transition:background .16s ease,transform .16s ease}.teacher-student-row:hover,.teacher-student-row.is-active{background:#fff1d3;transform:translate(2px)}.teacher-student-row img{width:2.8rem;height:2.8rem;flex:none;border-radius:.8rem;background:#e3f2ff;-o-object-fit:contain;object-fit:contain}.teacher-student-row span{display:grid;min-width:0;flex:1}.teacher-student-row strong{font-size:.78rem;font-weight:1000}.teacher-student-row small{color:#24304480;font-size:.58rem;font-weight:800}.teacher-student-row em{border-radius:999px;background:#ffb2482e;padding:.22rem .42rem;color:#9a5d00;font-size:.52rem;font-style:normal;font-weight:900}.teacher-student-row em.is-demo{background:#ff786b24;color:#a33b35}.teacher-empty{padding:1.5rem .4rem;color:#24304473;font-size:.72rem;font-weight:850;text-align:center}.teacher-student-detail>header{display:flex;align-items:center;gap:.7rem}.teacher-student-detail>header img{width:4.2rem;height:4.2rem;border-radius:1rem;background:#e1f1ff;-o-object-fit:contain;object-fit:contain}.teacher-student-detail>header>div{min-width:0;flex:1}.teacher-student-detail>header h2{font-size:1.35rem;font-weight:1000}.teacher-student-detail>header p{color:#2430447a;font-size:.6rem}.teacher-student-detail>header>strong{color:#ff786b;font-size:2.5rem;font-weight:1000}.teacher-student-detail>header small{font-size:.65rem}.teacher-detail-scores,.teacher-feedback-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;margin-top:.7rem}.teacher-detail-scores div{border-radius:.9rem;background:#f4f6f1;padding:.6rem}.teacher-detail-scores span{display:block;color:#24304480;font-size:.58rem;font-weight:850}.teacher-detail-scores strong{font-size:1rem;font-weight:1000}.teacher-feedback-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.teacher-feedback-grid section{border-radius:.9rem;background:#f7f5e8;padding:.65rem}.teacher-feedback-grid h3,.teacher-chat-log h3{color:#4b8063;font-size:.68rem;font-weight:1000}.teacher-feedback-grid p{margin-top:.18rem;font-size:.62rem;font-weight:800}.teacher-chat-log{margin-top:.7rem;border-top:1px solid rgba(36,48,68,.08);padding-top:.7rem}.teacher-chat-log>div{max-width:82%;margin-top:.45rem;border-radius:.85rem;background:#f1f3ef;padding:.5rem .6rem}.teacher-chat-log>div.is-student{margin-left:auto;background:#dff5d7}.teacher-chat-log strong{color:#24304480;font-size:.54rem;font-weight:900}.teacher-chat-log p{margin-top:.12rem;font-size:.68rem;font-weight:800;line-height:1.5}.teacher-chat-log small{color:#24304485;font-size:.56rem}@media(max-width:899px){.challenge-stage-layout.challenge-redesign{position:relative;display:flex;flex-direction:column;gap:.4rem;padding:.35rem}.challenge-score-panel{position:relative;z-index:22;flex:none;max-height:3.15rem;border-radius:1.2rem;transition:max-height .24s ease,box-shadow .24s ease}.challenge-score-panel.is-open{position:absolute;inset:.35rem;max-height:none;box-shadow:0 26px 60px #24304447}.challenge-mobile-score-toggle{display:flex;width:100%;min-height:3rem;align-items:center;justify-content:space-between;gap:.5rem;background:#fffffff0;padding:.65rem .8rem;color:#243044;font-size:.7rem;font-weight:1000}.challenge-mobile-score-toggle span:last-child{color:#ff786b}.challenge-score-content{height:calc(100% - 3rem);overflow:hidden;opacity:0;pointer-events:none}.challenge-score-panel.is-open .challenge-score-content{opacity:1;pointer-events:auto}.challenge-score-panel.is-open .challenge-target-scroll{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;touch-action:pan-y}.challenge-wechat-panel{min-height:0;flex:1;border-radius:1.25rem}.challenge-word-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.teacher-dashboard-header{align-items:flex-start;flex-direction:column}.teacher-dashboard-actions{justify-content:flex-start}.teacher-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.teacher-analysis-grid,.teacher-presentation-grid,.teacher-record-layout{grid-template-columns:1fr}.teacher-presentation-main{grid-row:auto}}@media(max-width:640px){.player-creator-card{border-radius:1.5rem;padding:1rem}.player-avatar-grid{gap:.38rem}.player-avatar-option{border-radius:.9rem}.practice-card-grid .strategy-badge{min-height:9.5rem}.practice-card-grid .badge-seal{width:3.15rem;height:3.15rem}.story-dialogue-layer.is-narration-page{padding:0 .65rem 5rem!important}.story-dialogue-layer.is-narration-page .story-speech-bubble.speaker-story{width:100%;padding:.65rem .75rem!important;font-size:.86rem!important}.challenge-wechat-header{min-height:3rem;padding:.45rem .62rem}.challenge-wechat-header h2{font-size:.88rem}.wechat-message-list{padding:.55rem}.wechat-avatar{width:2.35rem;height:2.35rem}.wechat-message-column{max-width:79%}.wechat-bubble{padding:.55rem .65rem}.wechat-bubble span{font-size:.75rem}.wechat-bubble small,.wechat-hint-toggle,.wechat-coaching-hint{font-size:.68rem}.wechat-coaching-wrap{margin-top:.32rem}.wechat-hint-toggle{padding:.3rem .48rem}.wechat-coaching-hint{margin-top:.26rem;border-radius:.78rem;padding:.42rem .56rem;line-height:1.42}.challenge-composer{padding:.42rem .5rem max(.48rem,env(safe-area-inset-bottom))}.voice-main-button{padding:.52rem .6rem}.voice-waveform{width:3.8rem;height:1.3rem;gap:1.5px;padding:0 .24rem}.voice-waveform i{width:1.5px}.voice-main-button strong{font-size:.64rem}.keyboard-composer input{font-size:.62rem}.report-stage .certificate-card{width:100%;max-height:none;border-width:5px;border-radius:1.5rem;padding:.85rem}.report-stage .certificate-card h2{font-size:1.75rem}.report-stage .certificate-card h3{font-size:1.1rem}.certificate-trophy{width:3.6rem;height:3.6rem}.certificate-total-score{width:5.5rem;height:5.5rem}.certificate-total-score strong{font-size:2rem}.certificate-score-grid{gap:.35rem}.certificate-score-grid>div{padding:.5rem}.certificate-score-grid strong{font-size:1.25rem}.certificate-feedback{grid-template-columns:1fr;gap:.35rem}.certificate-feedback .certificate-ai-comment{grid-column:auto}.teacher-dashboard{overflow-x:hidden;padding:.65rem}.teacher-dashboard-header,.teacher-kpi-grid,.teacher-analysis-grid,.teacher-presentation-grid,.teacher-record-layout,.teacher-dashboard-error{width:100%}.teacher-dashboard-header{border-radius:1.1rem;padding:.85rem}.teacher-dashboard-header h1{font-size:1.6rem}.teacher-dashboard-actions{display:grid;width:100%;grid-template-columns:repeat(2,minmax(0,1fr));gap:.42rem}.teacher-dashboard-actions button,.teacher-dashboard-actions label{min-height:2.5rem;justify-content:center;padding:.48rem .5rem;font-size:.58rem;text-align:center}.teacher-kpi-grid{gap:.4rem}.teacher-kpi-grid article{padding:.65rem}.teacher-kpi-grid strong{font-size:1.5rem}.teacher-chart-card,.teacher-student-list,.teacher-student-detail{min-width:0;overflow:hidden;border-radius:1.05rem;padding:.75rem}.teacher-bar-chart,.teacher-radar-chart{width:100%;max-width:100%;height:12rem}.teacher-presentation-bars>div{grid-template-columns:4.6rem minmax(0,1fr) 3.5rem;gap:.45rem}.teacher-presentation-bars span,.teacher-presentation-bars strong{font-size:.72rem}.teacher-record-layout{gap:.55rem}.teacher-student-detail>header{align-items:flex-start;flex-wrap:wrap}.teacher-student-detail>header>strong{margin-left:auto;font-size:2rem}.teacher-detail-scores,.teacher-feedback-grid{grid-template-columns:1fr}.teacher-chat-log>div{max-width:100%}}@media(max-height:500px)and (orientation:landscape){.courseware-flow.is-practice .stage-map,.courseware-flow.is-challenge .stage-map,.courseware-flow.is-report .stage-map{display:none!important}.courseware-flow.is-practice,.courseware-flow.is-challenge,.courseware-flow.is-report{gap:0}.courseware-flow.is-practice>.min-h-0,.courseware-flow.is-challenge>.min-h-0,.courseware-flow.is-report>.min-h-0{height:100%;flex:1 1 auto}.challenge-wechat-header{min-height:2.75rem;padding:.35rem .62rem}.challenge-composer{gap:.24rem;padding:.32rem .45rem}.voice-main-button,.challenge-submit-button{padding-top:.42rem;padding-bottom:.42rem}}@media print{body{overflow:visible;background:#fff}.teacher-dashboard{position:static;overflow:visible;background:#fff;padding:0}.teacher-dashboard-actions,.teacher-dashboard-error,.teacher-workspace-tabs,.teacher-workspace-filters,.teacher-dashboard-attribution{display:none!important}.teacher-dashboard-header,.teacher-kpi-grid,.teacher-analysis-grid,.teacher-workspace,.teacher-record-layout{width:100%;-moz-column-break-inside:avoid;break-inside:avoid}.teacher-record-layout{grid-template-columns:1fr}.teacher-student-list{display:none}.teacher-student-detail{-moz-column-break-inside:avoid;break-inside:avoid}}.challenge-submit-overlay{position:fixed;inset:0;z-index:120;display:grid;place-items:center;padding:24px;background:#1d293d94;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.challenge-submit-dialog{width:min(520px,92vw);padding:34px 28px;border:4px solid rgba(255,255,255,.9);border-radius:28px;background:#fffaf0;color:#24324a;text-align:center;box-shadow:0 24px 70px #1d293d4d}.challenge-submit-dialog h2{margin:14px 0 8px;font-size:clamp(20px,4vw,30px);font-weight:900}.challenge-submit-spinner{display:inline-block;width:48px;height:48px;border:6px solid #ffe0b7;border-top-color:#ff776e;border-radius:50%;animation:challenge-submit-spin .8s linear infinite}@keyframes challenge-submit-spin{to{transform:rotate(360deg)}}.site-attribution{position:fixed;right:max(12px,env(safe-area-inset-right));bottom:max(6px,env(safe-area-inset-bottom));z-index:80;max-width:calc(100vw - 24px);padding:4px 9px;border-radius:999px;background:#ffffffc7;color:#243044b8;font-size:11px;font-weight:700;line-height:1.25;text-decoration:none;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.teacher-workspace{margin-top:.7rem;padding:1rem;border:1px solid rgba(36,48,68,.07);border-radius:22px;background:#ffffffe6;box-shadow:0 12px 30px #24304414}.teacher-workspace-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-bottom:.85rem;border-bottom:1px solid rgba(36,48,68,.08)}.teacher-workspace-header span{color:#4b8063;font-size:.68rem;font-weight:950;letter-spacing:.08em}.teacher-workspace-header h2{font-size:1.15rem;font-weight:1000}.teacher-workspace-tabs{display:inline-flex;gap:.3rem;border-radius:999px;background:#eef1ec;padding:.25rem}.teacher-workspace-tabs button{border-radius:999px;padding:.52rem .8rem;color:#2430449e;font-size:.65rem;font-weight:950}.teacher-workspace-tabs button.is-active{background:#243044;color:#fff;box-shadow:0 5px 14px #2430442e}.teacher-workspace-filters{display:flex;flex-wrap:wrap;align-items:end;gap:.65rem;margin-top:.8rem;border-radius:1rem;background:#f6f7f2;padding:.65rem}.teacher-workspace-filters label{display:grid;min-width:10rem;flex:1 1 12rem;gap:.25rem;color:#2430449e;font-size:.6rem;font-weight:800}.teacher-workspace-filters select,.teacher-workspace-filters input{width:100%;min-height:2.35rem;border:1px solid #dce2dd;border-radius:.75rem;padding:.45rem .65rem;background:#fff;color:#243044;font-size:.68rem;font-weight:800}.teacher-workspace-filters>strong{align-self:center;border-radius:999px;background:#4b80631c;padding:.48rem .7rem;color:#3b6c52;font-size:.62rem;font-weight:950}.teacher-workspace-summary{display:flex;align-items:center;justify-content:space-between;gap:.7rem;margin-top:.8rem;color:#24304494;font-size:.64rem;font-weight:900}.teacher-workspace-summary em{font-style:normal}.teacher-ranking-list{display:grid;gap:0;margin-top:.4rem}.teacher-ranking-list button{display:grid;grid-template-columns:3rem minmax(0,1fr) auto;align-items:center;gap:.7rem;border-top:1px solid rgba(36,48,68,.07);padding:.72rem .65rem;text-align:left;transition:background .16s ease}.teacher-ranking-list button:hover{border-radius:.8rem;background:#fff4dc}.teacher-ranking-list span,.teacher-ranking-list small{display:block}.teacher-ranking-list button>strong,.teacher-ranking-list button>em{color:#ff776e;font-size:.78rem;font-style:normal;font-weight:1000}.teacher-ranking-list button>span{font-size:.76rem;font-weight:1000}.teacher-ranking-list button small{margin-top:.1rem;color:#24304480;font-size:.58rem;font-weight:800}.teacher-workspace .teacher-record-layout{width:100%;margin-top:.8rem;padding-bottom:0}.teacher-dashboard-attribution{padding:1.5rem 0 .5rem;color:#2430447a;font-size:.68rem;font-weight:800;text-align:center}@media(max-width:1024px){.teacher-workspace-header{align-items:flex-start;flex-direction:column}.teacher-workspace .teacher-record-layout{grid-template-columns:1fr}}@media(max-width:640px){.teacher-workspace{border-radius:1.05rem;padding:.75rem}.teacher-workspace-tabs{display:grid;width:100%;grid-template-columns:repeat(2,minmax(0,1fr));border-radius:.85rem}.teacher-workspace-tabs button{border-radius:.7rem;padding:.55rem .35rem;font-size:.58rem}.teacher-workspace-filters{display:grid;grid-template-columns:1fr}.teacher-workspace-filters label{min-width:0}.teacher-workspace-filters>strong{justify-self:stretch;border-radius:.75rem;text-align:center}.teacher-workspace-summary{align-items:flex-start;flex-direction:column}.teacher-ranking-list button{grid-template-columns:2.35rem minmax(0,1fr) auto;gap:.45rem;padding-right:.35rem;padding-left:.35rem}}.teacher-attempt-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.teacher-attempt-tabs button{border:1px solid #d7ddd8;border-radius:999px;padding:7px 12px;background:#fff}.teacher-attempt-tabs button.is-active{border-color:#ff776e;background:#fff0ed;color:#b33d35}.hover\:-translate-y-0\.5:hover{--tw-translate-y: -.125rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:-translate-y-1:hover{--tw-translate-y: -.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:bg-ink\/90:hover{background-color:#243044e6}.focus\:border-ginger:focus{--tw-border-opacity: 1;border-color:rgb(246 163 64 / var(--tw-border-opacity, 1))}.disabled\:opacity-50:disabled{opacity:.5}.group:hover .group-hover\:-translate-y-1{--tw-translate-y: -.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:bg-ink{--tw-bg-opacity: 1;background-color:rgb(36 48 68 / var(--tw-bg-opacity, 1))}@media(min-width:640px){.sm\:block{display:block}.sm\:rotate-2{--tw-rotate: 2deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.sm\:scale-105{--tw-scale-x: 1.05;--tw-scale-y: 1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:items-end{align-items:flex-end}.sm\:justify-between{justify-content:space-between}.sm\:p-4{padding:1rem}.sm\:p-5{padding:1.25rem}.sm\:text-3xl{font-size:1.875rem;line-height:2.25rem}.sm\:text-5xl{font-size:3rem;line-height:1}.sm\:text-base{font-size:1rem;line-height:1.5rem}.sm\:text-sm{font-size:.875rem;line-height:1.25rem}}@media(min-width:768px){.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:1024px){.lg\:h-full{height:100%}.lg\:grid-cols-\[0\.58fr_1\.42fr\]{grid-template-columns:.58fr 1.42fr}.lg\:grid-cols-\[0\.92fr_1\.08fr\]{grid-template-columns:.92fr 1.08fr}.lg\:content-center{align-content:center}.lg\:items-center{align-items:center}.lg\:gap-4{gap:1rem}.lg\:overflow-hidden{overflow:hidden}.lg\:p-6{padding:1.5rem}}@media(min-width:1280px){.xl\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}
