:root{font-family:ui-rounded,system-ui,-apple-system,BlinkMacSystemFont,SF Pro Rounded,Inter,Segoe UI,sans-serif;line-height:1.5;font-weight:400;color-scheme:light;color:#14161a;background-color:#f7f9ff;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#5b21b6;text-decoration:inherit}a:hover{color:#6d28d9}body{margin:0;min-width:320px;min-height:100vh}h1{font-size:inherit;line-height:inherit}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#fff;cursor:pointer;transition:border-color .25s}button:hover{border-color:#5b21b673}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}.app{min-height:100vh;background:radial-gradient(1200px 600px at 50% 0%,#fff3c4,#f7f9ff 35%,#eef2ff);color:#14161a}.topbar{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:14px 18px;background:#fffc;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid rgba(20,22,26,.08)}.brand{font-weight:800;letter-spacing:.2px;font-size:1.05rem;color:inherit;text-decoration:none}.topnav a{color:inherit;text-decoration:none;padding:8px 10px;border-radius:10px}.topnav a:hover{background:#14161a0f}.voicePicker{display:flex;align-items:center;gap:8px}.voiceLabel{font-size:.9rem;color:#14161abf;font-weight:700}.voiceSelect{max-width:240px;border-radius:12px;padding:8px 10px;border:1px solid rgba(20,22,26,.12);background:#ffffffe6;font-weight:700}.voiceTestBtn{border-radius:12px;padding:8px 10px;border:1px solid rgba(20,22,26,.12);background:#ffffffe6;font-weight:800}.container{max-width:980px;margin:0 auto;padding:22px 16px 40px}.page{display:flex;flex-direction:column;gap:14px}.title{margin:0;font-size:clamp(1.6rem,3.2vw,2.3rem);line-height:1.05}.subtitle{margin:0;color:#14161ab8;font-size:1.05rem}.breadcrumbs{display:flex;align-items:center;gap:10px;color:#14161ab3;font-size:.95rem}.breadcrumbs a{color:inherit;text-decoration:none;padding:4px 8px;border-radius:10px}.breadcrumbs a:hover{background:#14161a0f}.backRow{display:flex;justify-content:flex-start;margin-bottom:8px}.backBtn{display:inline-flex;align-items:center;gap:8px}.backPath{flex:1}.grid{margin-top:8px;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}.cardLink{display:block;text-decoration:none;color:inherit;padding:16px;border-radius:16px;background:#ffffffdb;border:1px solid rgba(20,22,26,.08);box-shadow:0 10px 30px #10182814;transition:transform .12s ease,box-shadow .12s ease}.cardLink:hover{transform:translateY(-2px);box-shadow:0 14px 36px #1018281f}.cardDisabled{opacity:.55;cursor:not-allowed;-webkit-user-select:none;user-select:none}.cardDisabled:hover{transform:none;box-shadow:0 10px 30px #10182814}.cardTitle{font-weight:800;font-size:1.15rem;margin-bottom:6px}.cardBody{color:#14161abd}.numberStage{margin-top:10px;display:grid;gap:14px;padding:18px;border-radius:18px;background:#ffffffdb;border:1px solid rgba(20,22,26,.08);box-shadow:0 18px 48px #1018281a}.bigNumber{width:min(360px,100%);margin:0 auto;display:grid;place-items:center;aspect-ratio:1 / 1;border-radius:26px;border:0;cursor:pointer;background:linear-gradient(180deg,#7c3aed,#5b21b6);color:#fff;font-weight:900;font-size:clamp(4.5rem,12vw,7.2rem);letter-spacing:-2px;box-shadow:0 16px 42px #5b21b659;transition:transform .12s ease,filter .12s ease}.bigNumber:hover{filter:brightness(1.03);transform:translateY(-2px)}.bigNumber:disabled{cursor:progress;transform:none;filter:grayscale(.05) brightness(.97);opacity:.95}.countNow{text-align:center;font-weight:900;font-size:clamp(2.6rem,8vw,4rem);letter-spacing:-1px;color:#14161ae6}.candies{min-height:64px;display:flex;flex-wrap:wrap;justify-content:center;gap:8px}.kidCard .candies{justify-content:flex-end}.kidCard .candy{font-size:2.6rem}.candy{font-size:2rem;line-height:1;filter:drop-shadow(0 6px 10px rgba(16,24,40,.18))}.smallHelp{text-align:center;color:#14161ac7}.additionStage{margin-top:10px;display:grid;gap:14px;padding:18px;border-radius:18px;background:#ffffffdb;border:1px solid rgba(20,22,26,.08);box-shadow:0 18px 48px #1018281a}.twoKids{display:grid;grid-template-columns:1fr auto 1fr;gap:12px;align-items:center}@media (max-width: 720px){.twoKids{grid-template-columns:1fr}.plusBubble{justify-self:center}}.kidCard{border-radius:18px;border:2px solid rgba(20,22,26,.08);background:#ffffffe6;padding:14px;display:grid;gap:10px}.kidTop{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center}.kidEmoji{font-size:2.2rem}.kidName{font-weight:800;color:#14161ae6}.kidCount{display:grid;place-items:center;min-width:60px;height:60px;border-radius:16px;background:#14161a0f}.kidCount b{font-size:1.6rem;letter-spacing:-.5px}.plusBubble{width:44px;height:44px;border-radius:999px;display:grid;place-items:center;font-weight:900;font-size:1.6rem;background:#5b21b61f;color:#5b21b6}.minusBubble{width:44px;height:44px;border-radius:999px;display:grid;place-items:center;font-weight:900;font-size:1.8rem;background:#ec48991f;color:#db2777}.actionsRow{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}.listenRow{display:flex;justify-content:flex-end}.listenBtn{display:inline-flex;align-items:center;gap:8px}.primaryBtn,.secondaryBtn{border-radius:14px;padding:10px 14px;border:1px solid rgba(20,22,26,.12);font-weight:800}.primaryBtn{background:linear-gradient(180deg,#7c3aed,#5b21b6);color:#fff;border:0;box-shadow:0 14px 34px #5b21b640}.primaryBtn:disabled{opacity:.6;cursor:not-allowed}.secondaryBtn{background:#ffffffe6}.isActiveBtn{border-color:#5b21b659;background:#5b21b61a}.resultBox{border-radius:18px;padding:14px;border:1px dashed rgba(20,22,26,.18);background:#ffffffb3;display:grid;gap:12px}.resultEq{display:flex;align-items:baseline;justify-content:center;gap:10px;font-weight:900;font-size:clamp(1.8rem,6vw,2.6rem);letter-spacing:-1px}.eqOp{color:#14161a8c}.eqHidden{display:inline-grid;place-items:center;min-width:46px;border-radius:12px;padding:2px 10px;background:#14161a0f}.eqSolveBtn{display:inline-grid;place-items:center;min-width:120px;border-radius:12px;padding:6px 10px;border:1px solid rgba(20,22,26,.12);background:#5b21b61a;color:#14161ae6;font-weight:900;letter-spacing:-.3px}.eqSolveBtn:hover{border-color:#5b21b659;background:#5b21b624}.eqSolveBtn:disabled{opacity:.55;cursor:not-allowed}.eqAnswerForm{display:inline-flex}.eqAnswerRow{display:inline-flex;align-items:center;gap:10px}.eqAnswerInput{width:88px;text-align:center;border-radius:12px;padding:8px 10px;border:2px solid rgba(20,22,26,.14);background:#fffffff2;font-weight:1000;font-size:1.6rem;letter-spacing:-.6px}.eqAnswerInput::placeholder{color:#14161a59}.eqAnswerInput:disabled{opacity:.6}.eqAnswerInput.isBadFlash{border-color:#dc26268c;background:#dc26261f;animation:wrongFlash .28s ease-in-out 0s 3}.eqHelpBtn{border-radius:12px;padding:8px 10px;border:1px solid rgba(20,22,26,.12);background:#ffffffeb;font-weight:900;font-size:.95rem;white-space:nowrap}.eqHelpBtn:hover{border-color:#5b21b640}.eqHelpBtn:disabled{opacity:.6;cursor:not-allowed}.eqSolveBtnSmall{min-width:120px;padding:8px 10px;font-size:.95rem}.eqReveal{color:#16a34a}.problemStage,.tablesStage{margin-top:10px;display:grid;gap:14px;padding:18px;border-radius:18px;background:#ffffffdb;border:1px solid rgba(20,22,26,.08);box-shadow:0 18px 48px #1018281a}.tablesTop{display:grid;gap:12px}.tablesPicker{display:flex;flex-wrap:wrap;gap:10px}.tablesSpeed{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;border-radius:16px;border:1px solid rgba(20,22,26,.08);background:#14161a08;padding:12px}.tablesSpeedLabel{font-weight:900;color:#14161ac7}.tablesSpeedValue{min-width:58px;text-align:right;font-weight:900;color:#14161ac7}.tablesNumber{width:min(420px,100%);margin:0 auto;display:grid;place-items:center;aspect-ratio:16 / 9;border-radius:22px;border:1px solid rgba(20,22,26,.1);background:radial-gradient(900px 380px at 50% 0%,#7c3aed29,#ffffffeb 55%);box-shadow:0 18px 48px #1018281f;font-weight:900;font-size:clamp(3.2rem,8vw,5.4rem);letter-spacing:-1.5px;color:#14161aeb}.tablesPlaceholder{color:#14161a8c}.tablesSeq{display:flex;flex-wrap:wrap;gap:4px;justify-content:center;align-items:center}.tablesSeqItem{display:inline-flex;align-items:center;gap:4px}.tablesChip{border-radius:999px;padding:8px 12px;border:1px solid rgba(20,22,26,.12);background:#fffffff2;font-weight:900;color:#14161adb;font-variant-numeric:tabular-nums}.chip-hidden{opacity:.25}.chip-past{border-color:#16a34a40;background:#16a34a1a}.chip-now{border-color:#7c3aed59;background:#7c3aed1f;box-shadow:0 10px 24px #7c3aed2e}.tablesArrow{display:inline-block;vertical-align:middle;color:#7c3aed8c;transition:color .24s ease,transform .24s ease,opacity .24s ease}.tablesArrow.arrow-hidden{opacity:.25;color:#14161a59}.tablesArrow.arrow-past{color:#16a34ab3}.tablesArrow.arrow-now{color:#7c3aedf2;transform:translateY(-1px) scale(1.06)}.tablesArrow.arrow-next{color:#7c3aed80}.tablesNumberValue{display:inline-block}.tablesNumberDone{display:grid;place-items:center;gap:10px}.tablesNumberDone .tablesNumberValue{font-size:.7em;color:#16a34ae6}.tablesStartBtn{font-size:1.25rem;padding:14px 28px;letter-spacing:.5px;box-shadow:0 14px 32px #7c3aed4d}.pawsWrap{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:end;justify-items:center;padding-top:8px}@media (max-width: 560px){.pawsWrap{grid-template-columns:1fr}}.pawSvg{width:min(240px,100%);height:auto;display:block;filter:drop-shadow(0 10px 18px rgba(0,0,0,.22))}.pawSvg.paw-right{transform:scaleX(-1)}@media (prefers-reduced-motion: reduce){.pawSvg g[style*=transform]{transition:none!important}}.tablesHint{text-align:center;font-weight:900;color:#14161ac2}.storyRow{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.storyText{font-weight:800;color:#14161ae6;line-height:1.25}.flipWrap{display:grid;place-items:center;padding:6px 0 2px}.problemMain{display:grid;grid-template-columns:1fr;gap:14px;align-items:start}@media (min-width: 860px){.problemMain{grid-template-columns:1fr 320px}.flipWrap{place-items:start center}}.dataCard{border-radius:22px;border:1px solid rgba(20,22,26,.1);background:#ffffffeb;box-shadow:0 18px 48px #1018281f;padding:16px;display:grid;gap:12px}.dataTitle{font-weight:900;color:#14161ad1}.dataLine{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:10px;font-weight:800;color:#14161adb}.dataBadge{display:inline-grid;place-items:center;min-width:56px;padding:8px 10px;border-radius:16px;font-weight:900;font-size:1.25rem;letter-spacing:-.5px;border:1px solid rgba(20,22,26,.12);background:#14161a0a}.badgeA{border-color:#7c3aed40;background:#7c3aed1f}.badgeB{border-color:#ec489940;background:#ec48991f}.badgeSum{border-color:#16a34a40;background:#16a34a1f}.dataHint{text-align:center;color:#14161ab8;font-weight:800}.alphaGrid{margin-top:10px;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}.alphaCard{border:0;padding:0;background:transparent;cursor:pointer;perspective:1000px}.alphaInner{position:relative;width:100%;min-height:260px;transform-style:preserve-3d;transition:transform .52s ease}.alphaCard.isFlipped .alphaInner{transform:rotateY(180deg)}.alphaFace{position:absolute;top:0;right:0;bottom:0;left:0;backface-visibility:hidden;border-radius:22px;border:1px solid rgba(20,22,26,.1);background:#ffffffeb;box-shadow:0 18px 48px #1018281f;padding:18px;display:grid;align-content:start;gap:12px}.alphaFront{background:radial-gradient(900px 380px at 50% 0%,#fbbf2429,#ffffffeb 55%)}.alphaBack{transform:rotateY(180deg);background:radial-gradient(900px 380px at 50% 0%,#7c3aed29,#ffffffeb 55%);place-items:center;text-align:center}.alphaHint{margin-top:auto;text-align:center;color:#14161ab3;font-weight:800}.alphaLetter{font-weight:900;font-size:clamp(5rem,14vw,7rem);letter-spacing:-2px;color:#14161aeb}.alphaBackHint{font-weight:900;color:#14161ab8}.alphaPlaceholder{display:grid;place-items:center;gap:8px;min-height:170px}.alphaBig{font-weight:900;font-size:5.2rem;color:#14161ac7}.alphaSmall{font-weight:800;color:#14161aa6}.aSwing{display:grid;gap:10px;place-items:center;min-height:170px}.aPencilSvg{width:min(220px,100%);height:auto}.aCaption{font-weight:900;color:#14161abd}.dictationStage{margin-top:10px;display:grid;gap:14px;padding:18px;border-radius:18px;background:#ffffffdb;border:1px solid rgba(20,22,26,.08);box-shadow:0 18px 48px #1018281a}.dictationRow{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-start}.dictationText{width:100%;border-radius:16px;padding:12px 14px;border:1px solid rgba(20,22,26,.12);background:#fffffff2;font-weight:800;color:#14161ae6;resize:vertical}.dictationControls{display:grid;grid-template-columns:minmax(220px,1fr);gap:12px}.control{border-radius:16px;border:1px solid rgba(20,22,26,.08);background:#14161a08;padding:12px;display:grid;gap:10px}.controlLabel{font-weight:900;color:#14161ac7}.controlRow{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.controlRow input[type=number],.controlRow select{border-radius:12px;padding:8px 10px;border:1px solid rgba(20,22,26,.12);background:#fffffff2;font-weight:800}.controlRow input[type=range]{flex:1}.controlValue{min-width:52px;text-align:right;font-weight:900;color:#14161acc}.dictationActions{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}.dictationStatus{text-align:center;font-weight:900;color:#14161ac7}.dictationPreview{display:grid;gap:10px}.previewChips{display:flex;flex-wrap:wrap;gap:8px}.chip{display:inline-flex;align-items:center;border-radius:999px;padding:6px 10px;border:1px solid rgba(20,22,26,.1);background:#ffffffe6;font-weight:800;color:#14161acc}.geoLayout{margin-top:10px;display:grid;grid-template-columns:1fr;gap:14px;align-items:start}@media (min-width: 860px){.geoLayout{grid-template-columns:1fr 380px}}.mapCard{border-radius:18px;background:#ffffffdb;border:1px solid rgba(20,22,26,.08);box-shadow:0 18px 48px #1018281a;padding:14px;display:grid;gap:10px}.italySvg{width:100%;height:auto;max-height:70vh}.italyCanvas{display:block;width:auto;height:auto;max-width:100%;max-height:70vh;margin:0 auto}.mapLegend{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.mapNote{color:#14161aad;font-weight:800}.regionsPanel{border-radius:18px;background:#ffffffdb;border:1px solid rgba(20,22,26,.08);box-shadow:0 18px 48px #1018281a;padding:14px;display:grid;gap:10px;max-height:70vh;overflow:auto}.regionBtn{width:100%;display:grid;grid-template-columns:18px 1fr;align-items:center;gap:10px;text-align:left;border-radius:14px;padding:10px 12px;border:1px solid rgba(20,22,26,.12);background:#fffffff2;font-weight:900}.regionBtn:hover{border-color:#5b21b640}.swatch{width:14px;height:14px;border-radius:4px;border:1px solid rgba(20,22,26,.14)}.regionLabel{color:#14161adb}.canvasWrap{position:relative}.seedMarker{position:absolute;width:18px;height:18px;transform:translate(-50%,-50%);border-radius:999px;border:3px solid rgba(239,68,68,.9);box-shadow:0 10px 24px #10182833;pointer-events:none}.seaLabel{position:absolute;transform:translate(-50%,-50%);padding:6px 10px;border-radius:999px;border:1px solid rgba(20,22,26,.04);background:#ffffff61;font-weight:900;color:#14161adb;box-shadow:0 8px 18px #1018280d;pointer-events:none;text-align:center;max-width:220px;white-space:pre-line;z-index:2}.seaLabel:before{content:"";position:absolute;left:50%;top:50%;width:320px;height:320px;transform:translate(-50%,-50%);border-radius:999px;background:radial-gradient(closest-side,#38bdf861,#38bdf82e,#38bdf800 70%);filter:blur(10px);z-index:-1}.seaSelected{border-color:#7c3aed59;background:#7c3aed1f}.calibBox{border-radius:16px;border:1px solid rgba(20,22,26,.08);background:#14161a08;padding:12px;display:grid;gap:10px}.calibTitle{font-weight:900;color:#14161ac7}.calibRow{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.calibSelect{flex:1;min-width:220px;border-radius:12px;padding:8px 10px;border:1px solid rgba(20,22,26,.12);background:#fffffff2;font-weight:800}.calibHint{color:#14161ab8;font-weight:800}.exportBox{display:grid;gap:8px}.exportStatus{font-weight:900;color:#14161ac7}.exportArea{width:100%;border-radius:14px;padding:10px 12px;border:1px solid rgba(20,22,26,.12);background:#fffffff2;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:.85rem}.compStage{margin-top:10px}.compPicker{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:10px}.storyCard,.questionsCard{border-radius:18px;background:#ffffffdb;border:1px solid rgba(20,22,26,.08);box-shadow:0 18px 48px #1018281a;padding:18px;display:grid;gap:14px}.storyHeader{display:flex;align-items:center;justify-content:space-between;gap:12px}.storyTitle{font-weight:900;font-size:1.2rem;color:#14161ae6}.timerPill{border-radius:999px;padding:6px 10px;border:1px solid rgba(20,22,26,.12);background:#5b21b61a;font-weight:900;color:#14161adb}.storyBody{font-weight:800;color:#14161ad1;line-height:1.35}.qBlock{display:grid;gap:10px;padding:12px;border-radius:16px;background:#14161a08;border:1px solid rgba(20,22,26,.08)}.qPrompt{font-weight:900;color:#14161ae6}.qOptions{display:grid;gap:10px}.qOptionBtn{text-align:left;border-radius:14px;padding:10px 12px;border:1px solid rgba(20,22,26,.12);background:#fffffff2;font-weight:800}.qOptionActive{border-color:#5b21b659;background:#5b21b614}.qOptionCorrect{border-color:#16a34a59;background:#16a34a1f}.qOptionWrong{border-color:#dc262659;background:#dc26261f}.compActions{display:flex;justify-content:center;margin-top:4px}.grammarStage{margin-top:10px;display:grid;gap:14px}.gramSection{border-radius:18px;background:#ffffffdb;border:1px solid rgba(20,22,26,.08);box-shadow:0 18px 48px #1018281a;padding:18px;display:grid;gap:12px}.gramTitle{font-weight:900;font-size:1.15rem;color:#14161ae6}.explain{margin:0;font-weight:800;color:#14161ac7;line-height:1.35}.gramExample{border-radius:16px;background:#14161a08;border:1px solid rgba(20,22,26,.08);padding:12px;font-weight:900;color:#14161ae6;line-height:1.4}.gramActions{display:flex;justify-content:flex-end;margin-top:2px}.primaryBtnLink{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;border-radius:14px;padding:10px 14px;border:0;font-weight:800;background:linear-gradient(180deg,#7c3aed,#5b21b6);color:#fff;box-shadow:0 14px 34px #5b21b640}.primaryBtnLink:hover{filter:brightness(1.03)}.practiceStage{margin-top:10px;display:grid;gap:14px}.waterExLayout{margin-top:10px;display:grid;grid-template-columns:1fr;gap:14px;align-items:start}@media (min-width: 940px){.waterExLayout{grid-template-columns:1fr 320px}}.waterOvalCard{border-radius:18px;background:#ffffffdb;border:1px solid rgba(20,22,26,.08);box-shadow:0 18px 48px #1018281a;padding:18px;display:grid;gap:12px}.ovalWrap{position:relative;width:100%;aspect-ratio:13 / 8;max-height:420px}.ovalSvg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.ovalSlot{position:absolute;width:min(220px,44%);min-height:46px;display:grid;place-items:center;border-radius:18px;border:2px dashed rgba(20,22,26,.16);background:#ffffffbf}.slot-0{left:50%;top:10%;transform:translate(-50%)}.slot-1{right:6%;top:50%;transform:translateY(-50%)}.slot-2{left:50%;bottom:10%;transform:translate(-50%)}.slot-3{left:6%;top:50%;transform:translateY(-50%)}.slotHint{font-weight:900;color:#14161a8c}.phasePill{border-radius:999px;padding:10px 14px;border:1px solid rgba(20,22,26,.12);background:#fffffff2;font-weight:900;color:#14161ae0;box-shadow:0 12px 28px #1018281a}.phasePill.isFixed{border-color:#5b21b640;background:#5b21b614}.phaseExample{color:#14161ab3;font-weight:800}.phasePill.isDrag{cursor:grab;-webkit-user-select:none;user-select:none}.phasePill.isDrag:active{cursor:grabbing}.phasePill.isBadFlash{border-color:#dc26268c;background:#dc262629;animation:wrongFlash .28s ease-in-out 0s 3}.waterExStatus{text-align:center;font-weight:900;color:#14161ac7}.waterPool{border-radius:18px;background:#ffffffdb;border:1px solid rgba(20,22,26,.08);box-shadow:0 18px 48px #1018281a;padding:16px;display:grid;gap:10px}.poolList{display:grid;gap:10px}.waterPoolHint{text-align:center;font-weight:900;color:#14161ab8}.glossaryWrap{position:relative}.glossaryText{display:inline}.glossaryWord{border:0;background:#fbbf241f;border-radius:10px;padding:2px 6px;font-weight:900;color:#14161aeb;cursor:pointer}.glossaryWord:hover{background:#fbbf242e}.glossaryPopup{position:fixed;transform:translate(-50%,-12px);z-index:50;width:min(320px,calc(100vw - 32px));border-radius:16px;border:1px solid rgba(20,22,26,.12);background:#fffffff5;box-shadow:0 18px 48px #1018282e;padding:12px;display:grid;gap:8px}.glossaryTitle{font-weight:900;letter-spacing:.2px}.glossaryLine{font-weight:800;color:#14161ad1;line-height:1.25}.exerciseCard{position:relative;border-radius:18px;background:#ffffffdb;border:1px solid rgba(20,22,26,.08);box-shadow:0 18px 48px #1018281a;padding:18px;display:grid;gap:12px}.balloonsOverlay{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:hidden;z-index:3;border-radius:inherit}.balloon{position:absolute;bottom:-90px;width:46px;height:58px;padding:0;border:none;background:transparent;animation:balloonRise var(--balloon-duration, 3.8s) ease-in var(--balloon-delay, 0s) forwards;will-change:transform;cursor:pointer;pointer-events:auto;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.balloon:focus-visible{outline:2px solid rgba(255,255,255,.9);outline-offset:2px}.balloonBody{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%/55% 55% 45% 45%;background:radial-gradient(circle at 32% 30%,#ffffffa6,#fff0 45%),var(--balloon-color, #ef4444);box-shadow:inset -6px -10px 18px #00000024,0 6px 14px #0000001f;transform-origin:50% 50%;will-change:transform,opacity}.balloonBody:before{content:"";position:absolute;bottom:-6px;left:50%;transform:translate(-50%);width:0;height:0;border:5px solid transparent;border-top-color:var(--balloon-color, #ef4444)}.balloonBody:after{content:"";position:absolute;left:50%;top:100%;transform:translate(-50%);margin-top:2px;width:1.5px;height:90px;background:#14161a59}.balloon.isPopped{cursor:default;pointer-events:none}.balloon.isPopped .balloonBody{animation:balloonPop .22s ease-out forwards}.balloonBurst{position:absolute;left:50%;top:50%;width:0;height:0;pointer-events:none}.spark{position:absolute;left:0;top:0;width:9px;height:9px;margin:-4.5px 0 0 -4.5px;border-radius:50%;background:var(--balloon-color, #ef4444);box-shadow:0 0 10px 2px var(--balloon-color, #ef4444),0 0 2px 1px #fffc inset;transform-origin:0 0;animation:sparkFly .68s cubic-bezier(.2,.6,.2,1) forwards;will-change:transform,opacity}@keyframes balloonRise{0%{transform:translate(0) rotate(-4deg);opacity:0}12%{opacity:1}to{transform:translate(var(--balloon-drift, 0px),calc(-1 * var(--balloon-rise, 700px))) rotate(4deg);opacity:1}}@keyframes balloonPop{0%{transform:scale(1);opacity:1}35%{transform:scale(1.15);opacity:.6}to{transform:scale(.2);opacity:0}}@keyframes sparkFly{0%{transform:rotate(var(--spark-angle, 0deg)) translate(0) scale(1);opacity:1}60%{opacity:1}to{transform:rotate(var(--spark-angle, 0deg)) translate(var(--spark-distance, 60px)) scale(.35);opacity:0}}@media (prefers-reduced-motion: reduce){.spark{animation:none;opacity:0}}@media (prefers-reduced-motion: reduce){.balloon{animation:none;opacity:0}}.exerciseTitle{font-weight:900;font-size:1.15rem;color:#14161ae6}.exerciseHint{font-weight:800;color:#14161abd}.fillList{display:grid;gap:10px}.fillRow{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px;font-weight:900;color:#14161ae6}.blankInput{width:86px;border-radius:12px;padding:8px 10px;border:2px solid rgba(20,22,26,.14);background:#fffffff2;font-weight:900;text-transform:lowercase}.blankInput.ok{border-color:#16a34a73;background:#16a34a1a}.blankInput.bad{border-color:#dc262680;background:#dc26261a}.miniFeedback{font-weight:900;color:#14161ab3}.exerciseActions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}.exerciseResult{text-align:center;font-weight:900;color:#14161ac7}.wordLine{display:flex;flex-wrap:wrap;gap:4px;align-items:center}.wordWrap{display:inline-flex}.wordChip{border-radius:10px;padding:2px 4px;border:0;background:transparent;font-weight:900;color:#14161adb}.wordChip.isClickable{cursor:pointer}.wordChip.isClickable:hover{background:#14161a0f}.wordChip:disabled{cursor:default;opacity:.78}.wordChip.isGood{border-radius:999px;padding:6px 10px;border:1px solid rgba(22,163,74,.4);border-color:#16a34a66;background:#16a34a24;color:#14161ae6}.wordChip.isBadFlash{border-radius:999px;padding:6px 10px;border:1px solid rgba(220,38,38,.55);border-color:#dc26268c;background:#dc262629;animation:wrongFlash .28s ease-in-out 0s 3}@keyframes wrongFlash{0%{filter:none}50%{filter:brightness(.92)}to{filter:none}}.mark{display:inline-block;padding:2px 6px;border-radius:10px;border:1px solid rgba(20,22,26,.12);margin:0 2px}.mark-art{background:#fbbf2438;border-color:#fbbf2459}.mark-common{background:#3b82f629;border-color:#3b82f647}.mark-proper{background:#ec489929;border-color:#ec489947}.mark-verb{background:#22c55e29;border-color:#22c55e47}.mark-adj{background:#f973162e;border-color:#f9731652}.engGrid{margin-top:10px;display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px}.engCard{border:0;padding:0;background:transparent;cursor:pointer;perspective:1000px}.engInner{position:relative;width:100%;min-height:220px;transform-style:preserve-3d;transition:transform .52s ease}.engCard.isFlipped .engInner{transform:rotateY(180deg)}.engFace{position:absolute;top:0;right:0;bottom:0;left:0;backface-visibility:hidden;border-radius:22px;border:1px solid rgba(20,22,26,.1);background:#ffffffeb;box-shadow:0 18px 48px #1018281f;padding:18px;display:grid;place-items:center;gap:10px}.engFront{background:radial-gradient(900px 380px at 50% 0%,#0ea5e929,#ffffffeb 55%)}.engBack{transform:rotateY(180deg);background:radial-gradient(900px 380px at 50% 0%,#22c55e24,#ffffffeb 55%)}.engEmoji{font-size:4.5rem;line-height:1}.prepStage{position:relative;width:100%;max-width:720px;margin:8px auto 14px;aspect-ratio:3 / 2;border-radius:18px;overflow:hidden;border:2px solid rgba(20,22,26,.12);box-shadow:0 8px 22px #14161a1f;background:#e9efff}.prepScene{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:block}.prepCatBtn{position:absolute;transform:translate(-50%,-50%);-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;padding:4px;margin:0;line-height:0;cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:50%;transition:transform .12s ease,filter .12s ease;filter:drop-shadow(0 3px 3px rgba(20,22,26,.4));z-index:2}.prepCatBtn.onLight{filter:drop-shadow(0 3px 3px rgba(20,22,26,.5))}.prepCatBtn:hover{transform:translate(-50%,-50%) scale(1.1)}.prepCatBtn:focus-visible{outline:3px solid rgba(14,165,233,.55);outline-offset:3px}.prepCatBtn.isWalking{pointer-events:none;cursor:default}.prepCatBtn.isWalking:hover{transform:translate(-50%,-50%)}.prepCatImg{display:block;width:auto;pointer-events:none;-webkit-user-select:none;user-select:none;transition:opacity .3s ease;will-change:transform,opacity}.prepCatImg.faceRight{transform:scaleX(-1)}.prepCatImg.isWalking.faceLeft{animation:prepCatWalkLeft 2.6s linear forwards}.prepCatImg.isWalking.faceRight{animation:prepCatWalkRight 2.6s linear forwards}@keyframes prepCatWalkLeft{0%{transform:translate(0);opacity:1}10%{transform:translate(-14px,-2px);opacity:1}20%{transform:translate(-30px)}30%{transform:translate(-52px,-2px)}40%{transform:translate(-78px)}50%{transform:translate(-104px,-2px)}60%{transform:translate(-134px)}70%{transform:translate(-168px,-2px);opacity:1}85%{transform:translate(-218px);opacity:.55}to{transform:translate(-270px);opacity:0}}@keyframes prepCatWalkRight{0%{transform:scaleX(-1) translate(0);opacity:1}10%{transform:scaleX(-1) translate(-14px,-2px);opacity:1}20%{transform:scaleX(-1) translate(-30px)}30%{transform:scaleX(-1) translate(-52px,-2px)}40%{transform:scaleX(-1) translate(-78px)}50%{transform:scaleX(-1) translate(-104px,-2px)}60%{transform:scaleX(-1) translate(-134px)}70%{transform:scaleX(-1) translate(-168px,-2px);opacity:1}85%{transform:scaleX(-1) translate(-218px);opacity:.55}to{transform:scaleX(-1) translate(-270px);opacity:0}}@media (prefers-reduced-motion: reduce){.prepCatImg.isWalking.faceLeft,.prepCatImg.isWalking.faceRight{animation:none;opacity:0}}.prepLastSpoken{max-width:720px;margin:0 auto;text-align:center;font-size:20px;color:#14161a;padding:8px 12px}.prepLastIcon{font-size:22px;margin-right:4px}.prepLastHint{color:#6b7280;font-style:italic}.colorsExStage{display:grid;place-items:center;gap:14px;padding:8px 0 16px}.colorsExBallBig{width:168px!important;height:168px!important}.colorsExOptions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-width:460px;margin:0 auto}.colorsExName{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:2px solid rgba(20,22,26,.14);background:#fff;border-radius:14px;padding:14px 18px;font-size:22px;font-weight:800;letter-spacing:.02em;color:#14161a;cursor:pointer;transition:transform .1s ease,box-shadow .14s ease,background .14s ease}.colorsExName:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 16px #14161a1f}.colorsExName:disabled{cursor:default;opacity:.85}.colorsExName.isGood{background:#22c55e2e;border-color:#22c55e80;color:#15803d}.colorsExName.isBadFlash{border-color:#dc26268c;background:#dc262624;animation:wrongFlash .28s ease-in-out 0s 3}.colorsExBalls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;max-width:460px;margin:0 auto;place-items:center}.colorsExBallBtn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;padding:8px;cursor:pointer;border-radius:50%;transition:transform .1s ease}.colorsExBallBtn:hover:not(:disabled){transform:translateY(-2px) scale(1.03)}.colorsExBallBtn:disabled{cursor:default}.colorsExBallBtn.isGood{outline:4px solid rgba(34,197,94,.6);outline-offset:4px}.colorsExBallBtn.isBadFlash{animation:wrongFlash .28s ease-in-out 0s 3}.goalStage{position:relative;width:100%;max-width:520px;height:220px;margin:8px auto 14px;overflow:hidden}.soccerGoal{position:absolute;right:16px;top:50%;transform:translateY(-50%);width:160px;height:170px;z-index:1;pointer-events:none;filter:drop-shadow(0 4px 6px rgba(20,22,26,.15))}.goalBall{position:absolute;left:24px;top:50%;transform:translateY(-50%);z-index:2;will-change:transform,opacity}.goalBall.isRolling{animation:ballRollIn 1.5s cubic-bezier(.22,.82,.35,1) forwards}@keyframes ballRollIn{0%{transform:translateY(-50%) rotate(0) scale(1);opacity:1}70%{transform:translate(260px,-50%) rotate(720deg) scale(.92);opacity:1}to{transform:translate(320px,-50%) rotate(1080deg) scale(.48);opacity:.55}}@media (max-width: 520px){.goalStage{height:200px}.soccerGoal{width:130px;height:140px;right:8px}@keyframes ballRollIn{0%{transform:translateY(-50%) rotate(0) scale(1);opacity:1}70%{transform:translate(200px,-50%) rotate(720deg) scale(.88);opacity:1}to{transform:translate(250px,-50%) rotate(1080deg) scale(.46);opacity:.55}}}@media (prefers-reduced-motion: reduce){.goalBall.isRolling{animation:none;transform:translate(260px,-50%) scale(.7);opacity:.8}}.engBall{width:128px;height:128px;border-radius:50%;background-image:var(--soccer-ball-url, url(/kids-learning/soccer-ball.png));background-repeat:no-repeat;background-position:center;background-size:112% 112%;background-blend-mode:multiply;box-shadow:inset -10px -14px 28px #0003,0 10px 22px #14161a33}.engWord{font-weight:900;font-size:clamp(1.8rem,5vw,2.4rem);letter-spacing:-.6px;color:#14161aeb;text-align:center}.engHint,.engBackHint{font-weight:800;color:#14161ab3}@media (prefers-reduced-motion: reduce){.engInner{transition:none}}.flipCard{width:min(520px,100%);border:0;padding:0;background:transparent;cursor:pointer;perspective:1000px}.flipInner{position:relative;width:100%;min-height:280px;transform-style:preserve-3d;transition:transform .52s ease}.flipCard.isFlipped .flipInner{transform:rotateY(180deg)}.flipFace{position:absolute;top:0;right:0;bottom:0;left:0;backface-visibility:hidden;border-radius:22px;border:1px solid rgba(20,22,26,.1);background:#ffffffeb;box-shadow:0 18px 48px #1018281f;padding:18px;display:grid;align-content:start;gap:14px}.flipFront{background:radial-gradient(900px 380px at 50% 0%,#7c3aed29,#ffffffeb 55%)}.flipBack{transform:rotateY(180deg);background:radial-gradient(900px 380px at 50% 0%,#22c55e24,#ffffffeb 55%)}.flipTitle{font-weight:900;letter-spacing:.2px;color:#14161ad1}.flipProblemText{font-weight:900;color:#14161aeb;line-height:1.22;font-size:1.15rem}.flipButtons{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:6px}.flipAnswerRow{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px;margin-top:4px}.flipAnswerLabel{font-weight:800;color:#14161ad9;font-size:1.05rem}.flipAnswerRow .eqAnswerInput{width:90px;text-align:center}.flipHint{text-align:center;color:#14161ab3;font-weight:800}.columnAdd{width:160px;margin:6px auto 0;padding:14px 14px 12px;border-radius:16px;background:#14161a0a;border:1px solid rgba(20,22,26,.08);font-variant-numeric:tabular-nums}.colRow{display:grid;grid-template-columns:26px 1fr;align-items:center;justify-items:end;font-weight:900;font-size:2rem;line-height:1.15;color:#14161ae6}.colOp{justify-self:start;color:#14161a99}.colLine{height:2px;background:#14161a40;border-radius:999px;margin:8px 0}.colResult .colNum{color:#16a34a}.subColumn{width:200px}.borrowExplain{display:flex;justify-content:center;gap:10px;margin-bottom:8px}.borrowBadge{display:inline-flex;align-items:center;justify-content:center;min-width:110px;padding:8px 10px;border-radius:999px;border:1px solid rgba(20,22,26,.12);background:#fffc;font-weight:900;color:#14161ac7}.borrowExplain.isOn .borrowDec{border-color:#7c3aed4d;background:#7c3aed1f}.borrowExplain.isOn .borrowUnit{border-color:#ec48994d;background:#ec48991f}.borrowAnim.isBorrowOn{animation:borrowPulse .52s ease-in-out 0s 1}@keyframes borrowPulse{0%{transform:translateY(0)}50%{transform:translateY(-2px)}to{transform:translateY(0)}}.borrowRow2{display:grid;grid-template-columns:1fr 1fr;justify-items:end;gap:8px;margin-bottom:2px;padding:0 10px 0 36px}.borrowTiny2{font-weight:900;color:#7c3aedeb;font-size:.95rem;letter-spacing:-.2px}.borrowAnim.isBorrowOn .borrowTiny2:last-child{color:#ec4899eb}.borrowRow{display:grid;grid-template-columns:26px 1fr;align-items:end;justify-items:end;margin-bottom:-6px}.borrowTiny{display:inline-block;min-width:24px;text-align:right;font-weight:900;color:#7c3aede6;font-size:.95rem;letter-spacing:-.2px}.borrowRow .borrowTiny:first-child{justify-self:start;opacity:0}.subDigit{display:inline-block;min-width:20px;text-align:right}.isBorrowed{opacity:.55;text-decoration:line-through;text-decoration-thickness:2px}.flipBackActions{display:flex;justify-content:center}@media (prefers-reduced-motion: reduce){.flipInner{transition:none}}.quizPrompt{border-radius:18px;border:2px solid rgba(124,58,237,.22);background:radial-gradient(900px 380px at 50% 0%,#7c3aed2e,#fffffff0 62%);box-shadow:0 18px 48px #1018281f;padding:14px 16px;display:grid;gap:8px}.quizPromptTitle{font-weight:1000;color:#14161ac7;text-align:center;letter-spacing:-.2px}.quizPromptRegion{font-weight:1100;letter-spacing:-.9px;font-size:clamp(2.2rem,5.2vw,3.2rem);line-height:1.02;padding:12px 14px;border-radius:18px;border:3px solid rgba(124,58,237,.42);background:linear-gradient(180deg,#7c3aed2e,#7c3aed1a);color:#14161af0;text-align:center;text-transform:uppercase;text-shadow:0 2px 0 rgba(255,255,255,.65),0 10px 26px rgba(124,58,237,.22);animation:quizRegionPulse .9s ease-in-out infinite}.quizPromptHint{font-weight:900;color:#14161ab3;text-align:center}@keyframes quizRegionPulse{0%{transform:translateY(0);box-shadow:0 10px 26px #7c3aed24;filter:saturate(1)}50%{transform:translateY(-1px);box-shadow:0 16px 36px #7c3aed3d;filter:saturate(1.15)}to{transform:translateY(0);box-shadow:0 10px 26px #7c3aed24;filter:saturate(1)}}@media (prefers-reduced-motion: reduce){.quizPromptRegion{animation:none}}.fireworksOverlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;pointer-events:none}.fireworksCanvas{width:100%;height:100%;display:block}.flagEmoji{font-size:clamp(3.6rem,8vw,5rem);line-height:1}.flagQuizBig{font-size:clamp(6rem,16vw,10rem);line-height:1;margin:10px 0 4px;text-align:center;filter:drop-shadow(0 10px 24px rgba(16,24,40,.25))}.flagOptions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-width:640px;margin:10px auto 0}@media (min-width: 640px){.flagOptions{grid-template-columns:repeat(4,minmax(0,1fr))}}.flagOption{padding:14px 16px;border-radius:16px;background:#ffffffe6;border:2px solid rgba(20,22,26,.12);box-shadow:0 10px 22px #1018281a;font-weight:900;font-size:clamp(1rem,2.2vw,1.2rem);color:#14161ae6;cursor:pointer;transition:transform .14s ease,background .18s ease,border-color .18s ease}.flagOption:hover:not(:disabled){transform:translateY(-2px);border-color:#6366f173}.flagOption:disabled{cursor:default}.flagOption.isRight{background:linear-gradient(180deg,#bbf7d0,#86efac);border-color:#16a34a8c;color:#063c20f2}.flagOption.isBadFlash{background:linear-gradient(180deg,#fecaca,#fca5a5);border-color:#dc26268c;color:#64060cf2;animation:wrongFlashOption .56s ease-in-out 3}@keyframes wrongFlashOption{0%,to{transform:translate(0)}25%{transform:translate(-4px)}75%{transform:translate(4px)}}.compassWrap{display:grid;place-items:center;padding:10px}.cardinalPage .quizPromptRegion{animation:none}.starsRow{position:relative;display:flex;gap:10px;justify-content:center;align-items:center;margin:8px 0 4px;min-height:48px;font-size:clamp(1.8rem,4vw,2.4rem);line-height:1}.starSlot{color:#14161a2e;text-shadow:none;transform:scale(1);transition:color .16s ease,text-shadow .2s ease}.starSlot.isFilled{color:#facc15;text-shadow:0 0 8px rgba(250,204,21,.65),0 2px 0 rgba(180,120,0,.35)}.starSlot.isPop{animation:starPop .7s cubic-bezier(.2,1.4,.4,1) both}@keyframes starPop{0%{transform:scale(.2) rotate(-35deg);opacity:0}45%{transform:scale(1.45) rotate(10deg);opacity:1}to{transform:scale(1) rotate(0);opacity:1}}.starsBadge{position:absolute;left:50%;top:-8px;transform:translate(-50%,-100%);padding:10px 18px;border-radius:999px;background:linear-gradient(180deg,#facc15,#f59e0b);color:#281604f2;font-weight:1000;font-size:clamp(1.1rem,2.4vw,1.4rem);box-shadow:0 14px 32px #f59e0b59;white-space:nowrap;animation:badgePop .6s cubic-bezier(.2,1.6,.3,1) both}.starsRow.isCelebrate .starSlot.isFilled{animation:starCheer .9s ease-in-out 1}@keyframes badgePop{0%{transform:translate(-50%,-70%) scale(.4);opacity:0}60%{transform:translate(-50%,-100%) scale(1.1);opacity:1}to{transform:translate(-50%,-100%) scale(1);opacity:1}}@keyframes starCheer{0%,to{transform:translateY(0) rotate(0)}25%{transform:translateY(-6px) rotate(-8deg)}50%{transform:translateY(0) rotate(8deg)}75%{transform:translateY(-4px) rotate(-4deg)}}@media (prefers-reduced-motion: reduce){.starSlot.isPop,.starsBadge,.starsRow.isCelebrate .starSlot.isFilled{animation:none}}.compassRose{position:relative;width:min(360px,92vw);aspect-ratio:1 / 1;border-radius:999px;background:radial-gradient(circle at 50% 50%,#fffffff5,#f5f9fff2 70%);border:2px solid rgba(20,22,26,.1);box-shadow:0 18px 48px #1018281f}.compassArrow{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-weight:1000;font-size:clamp(3rem,8vw,5rem);color:#5b21b6d9}.compassPoint{position:absolute;transform:translate(-50%,-50%);min-width:48px;min-height:48px;padding:8px 10px;border-radius:999px;border:2px solid rgba(20,22,26,.12);background:#ffffffeb;font-weight:1000;font-size:1.05rem;cursor:pointer;box-shadow:0 10px 24px #1018281a}.compassPoint:hover{border-color:#5b21b659}.compassPoint.isRight{border-color:#16a34a73;background:#16a34a29}.clockWrap{display:grid;place-items:center;padding:8px 0;position:relative}.clockConfetti{position:absolute;top:-20px;right:-20px;bottom:-20px;left:-20px;pointer-events:none;overflow:hidden;z-index:5;border-radius:24px}.clockConfetti .confettiPiece{animation-name:clockConfettiFall}@keyframes clockConfettiFall{0%{transform:translateY(-20px) rotate(0);opacity:0}10%{opacity:1}to{transform:translate(var(--confetti-drift, 0px),420px) rotate(var(--confetti-rotate, 360deg));opacity:0}}.clockDigital{display:grid;place-items:center;gap:6px;margin-top:14px}.clockDigitalLabel{font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#6b7280}.clockDigitalValue{font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-weight:900;font-size:56px;line-height:1;letter-spacing:.08em;color:#14161a;background:linear-gradient(180deg,#fff,#eef2ff);border:2px solid rgba(20,22,26,.14);border-radius:14px;padding:10px 22px;box-shadow:0 2px #14161a0f,inset 0 -3px #14161a0d}.clockDigitalWords{font-size:16px;color:#374151;font-weight:600;text-align:center}@media (prefers-reduced-motion: reduce){.clockConfetti .confettiPiece{animation:none}}.clockSvg{width:min(320px,84vw);height:auto;filter:drop-shadow(0 18px 36px rgba(16,24,40,.12))}.clockAnswer{display:grid;justify-items:center;gap:10px;margin:14px 0 6px}.clockAnswerLabel{font-weight:900;color:#14161acc}.clockAnswerRow{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:18px;background:#ffffffeb;border:2px solid rgba(20,22,26,.1);box-shadow:0 10px 24px #1018281a}.clockAnswerInput{width:72px;text-align:center;font-weight:900;font-size:clamp(1.6rem,4vw,2.2rem);color:#14161af2;background:transparent;border:none;outline:none;padding:6px 4px;letter-spacing:1px}.clockAnswerInput::placeholder{color:#14161a40;font-weight:800}.clockAnswerInput:focus{color:#5b21b6}.clockAnswerColon{font-weight:1000;font-size:clamp(1.8rem,4.4vw,2.4rem);color:#14161a8c;line-height:1;padding-bottom:4px}.clockAnswerBtn{margin-left:6px}.clockAnswerRow.isBadFlash{animation:clockWrongFlash .3s ease-in-out 3}@keyframes clockWrongFlash{0%,to{background:#ffffffeb;border-color:#14161a1a;transform:translate(0)}50%{background:#fecacaf2;border-color:#dc262699;transform:translate(4px)}}@media (prefers-reduced-motion: reduce){.clockAnswerRow.isBadFlash{animation:none}}.surpriseWrap{display:grid;justify-items:center;gap:12px;margin:14px 0 6px;animation:surpriseEnter .42s ease-out both}.surpriseTitle{font-weight:1000;font-size:clamp(1.3rem,3.2vw,1.7rem);color:#14161ae6;letter-spacing:-.3px}.surpriseCard{width:min(240px,74vw);aspect-ratio:3 / 4;perspective:1000px;padding:0;border:none;background:transparent;cursor:pointer;-webkit-tap-highlight-color:transparent}.surpriseInner{position:relative;width:100%;height:100%;transform-style:preserve-3d;transition:transform .9s cubic-bezier(.2,.8,.2,1)}.surpriseCard.isFlipped .surpriseInner{transform:rotateY(180deg)}.surpriseFace{position:absolute;top:0;right:0;bottom:0;left:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;border-radius:22px;box-shadow:0 22px 50px #10182833;display:grid;place-items:center;padding:18px;text-align:center}.surpriseBack{background:radial-gradient(circle at 30% 25%,#ffffff59,#fff0 55%),linear-gradient(135deg,#7c3aed,#ec4899);color:#fff;border:3px dashed rgba(255,255,255,.55)}.surpriseQuestion{font-size:clamp(5rem,14vw,7rem);font-weight:1000;line-height:1;text-shadow:0 6px 0 rgba(0,0,0,.15)}.surpriseFront{transform:rotateY(180deg);background:linear-gradient(180deg,#fef3c7,#fde68a);border:3px solid rgba(245,158,11,.55);display:grid;grid-template-rows:1fr auto;gap:6px;align-items:center}.surpriseEmoji{font-size:clamp(5rem,16vw,8rem);line-height:1;align-self:end;filter:drop-shadow(0 8px 18px rgba(16,24,40,.2))}.surpriseLabel{font-weight:1000;font-size:clamp(1.05rem,2.6vw,1.35rem);color:#3c2004f2;align-self:start}@keyframes surpriseEnter{0%{transform:translateY(16px) scale(.92);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}@media (prefers-reduced-motion: reduce){.surpriseWrap{animation:none}.surpriseInner{transition:none}}.boardGame{display:grid;grid-template-columns:1fr;gap:18px;align-items:start;margin:8px 0 6px}@media (min-width: 860px){.boardGame{grid-template-columns:1fr minmax(180px,240px)}}.boardForest{position:relative;padding:22px 18px;border-radius:26px;overflow:hidden;border:3px solid rgba(46,75,45,.45);box-shadow:inset 0 0 0 2px #ffffff59,0 22px 50px #10182840;background:#89c26a}.boardSceneBg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:block;pointer-events:none;z-index:0}.boardSceneFg{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:1}.boardTree,.boardBush,.boardFlower,.boardMushroom{position:absolute;line-height:1;filter:drop-shadow(0 4px 4px rgba(16,24,40,.3));-webkit-user-select:none;user-select:none;pointer-events:none}.boardTree{font-size:clamp(30px,5vw,46px)}.boardBush{font-size:clamp(20px,3vw,30px);opacity:.95}.boardFlower,.boardMushroom{font-size:clamp(18px,2.6vw,26px)}.boardTree.t1{top:4px;left:1%}.boardTree.t2{top:-2px;left:22%;transform:rotate(-4deg)}.boardTree.t3{top:6px;left:44%}.boardTree.t4{top:0;left:66%;transform:rotate(3deg)}.boardTree.t5{top:-4px;right:12%}.boardTree.t6{top:8px;right:-2px;transform:rotate(-2deg)}.boardBush.b1{bottom:6px;left:4%}.boardBush.b2{bottom:4px;right:6%}.boardFlower.f1{bottom:8px;left:35%}.boardFlower.f2{bottom:10px;right:30%}.boardMushroom.m1{bottom:6px;left:60%}.boardGrid{position:relative;z-index:2;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;padding:28px 6px 18px}.boardCell{position:relative;aspect-ratio:1 / 1;display:grid;place-items:center;border-radius:50%;color:#40280eeb;font-weight:1000;font-size:clamp(1rem,1.8vw,1.25rem);background:radial-gradient(circle at 50% 50%,#5b300c00 28%,#5b300c38,#5b300c00 32%,#5b300c00 42%,#5b300c33,#5b300c00 46%,#5b300c00 58%,#5b300c33,#5b300c00 62%),radial-gradient(circle at 38% 32%,#f1d8a9,#d8a972 38%,#a87240 75%,#7a4f23);border:3px solid #5b3914;box-shadow:inset 0 -5px #5b300c47,inset 0 2px #ffffff59,0 8px #40280e8c,0 14px 22px #10182859;text-shadow:0 1px 0 rgba(255,255,255,.45);transition:transform .16s ease,box-shadow .22s ease}.boardCell.isStart{background:radial-gradient(circle at 50% 50%,#063c2000 35%,#063c202e,#063c2000 65%),radial-gradient(circle at 38% 32%,#d8f5cf,#9fe094 38%,#4ea842 80%,#1b6b25);border-color:#0f4a1a;color:#063c20f2;box-shadow:inset 0 -5px #063c204d,inset 0 2px #ffffff59,0 8px #063c208c,0 14px 22px #10182859;font-size:clamp(1.3rem,2.4vw,1.8rem)}.boardCell.isFinish{background:radial-gradient(circle at 50% 50%,#78350f00 35%,#78350f33,#78350f00 65%),radial-gradient(circle at 38% 32%,#fff1b8,#fbd34a,#e08a10 80%,#7b3b04);border-color:#6b3104;color:#503204f2;font-size:clamp(1.3rem,2.6vw,1.9rem);box-shadow:inset 0 -5px #78350f4d,inset 0 2px #fff6,0 8px #78350f8c,0 14px 22px #10182859}.boardCell.isHere{transform:translateY(-4px);box-shadow:inset 0 -5px #5b300c47,inset 0 2px #fff6,0 10px #40280e99,0 0 0 4px #7c3aed8c,0 18px 26px #7c3aed4d}.boardCell.isStart.isHere,.boardCell.isFinish.isHere{transform:translateY(-4px)}.boardCellNum{position:relative;z-index:1;opacity:.95}.pawn{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;font-size:clamp(1.8rem,3.6vw,2.4rem);line-height:1;filter:drop-shadow(0 5px 7px rgba(16,24,40,.4));animation:pawnHop .42s ease-out 1;pointer-events:none;z-index:3}.boardCell.isHere .boardCellNum{opacity:0}@keyframes pawnHop{0%{transform:translateY(-24px) scale(.7);opacity:0}60%{transform:translateY(-4px) scale(1.15);opacity:1}to{transform:translateY(0) scale(1);opacity:1}}.dicePad{display:grid;justify-items:center;gap:10px;padding:14px;border-radius:22px;background:#ffffffeb;border:2px solid rgba(20,22,26,.08);box-shadow:0 14px 28px #1018281a}.diceBtn{position:relative;width:clamp(96px,18vw,130px);height:clamp(96px,18vw,130px);border-radius:22px;border:3px solid rgba(20,22,26,.15);background:linear-gradient(180deg,#fff,#f3f4f6);box-shadow:inset 0 -6px #0000000f,0 14px 30px #1018282e;cursor:pointer;display:grid;place-items:center;padding:0;transition:transform .16s ease}.diceBtn:hover:not(:disabled){transform:translateY(-2px)}.diceBtn:disabled{cursor:default;opacity:.7}.diceBtn.isRolling{animation:diceShake 90ms ease-in-out infinite}@keyframes diceShake{0%,to{transform:rotate(-6deg)}50%{transform:rotate(6deg)}}.diceFace{font-size:clamp(3.6rem,9vw,5rem);line-height:1;color:#14161ae6}.diceNumber{position:absolute;right:-6px;top:-10px;background:#7c3aed;color:#fff;font-weight:1000;font-size:.9rem;padding:4px 8px;border-radius:999px;box-shadow:0 6px 14px #7c3aed59}.diceCaption{font-weight:900;color:#14161abf;text-align:center;min-height:1.4em}.quizOverlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#14161a73;display:grid;place-items:center;padding:18px;z-index:40;animation:quizOverlayIn .22s ease-out}@keyframes quizOverlayIn{0%{opacity:0}to{opacity:1}}.quizOverlayCard{width:min(640px,100%);background:#fff;border-radius:22px;padding:22px;display:grid;gap:14px;box-shadow:0 30px 60px #10182859;animation:quizCardIn .28s cubic-bezier(.2,1.4,.3,1)}@keyframes quizCardIn{0%{transform:translateY(24px) scale(.94);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.quizTopic{display:inline-block;justify-self:start;font-weight:900;font-size:.9rem;letter-spacing:.5px;text-transform:uppercase;padding:6px 12px;border-radius:999px;background:#7c3aed1f;color:#5b21b6}.quizQuestionText{font-weight:1000;font-size:clamp(1.15rem,3vw,1.5rem);color:#14161aeb;line-height:1.3}.quizOptions{display:grid;gap:10px}.quizOption{padding:14px 16px;border-radius:14px;border:2px solid rgba(20,22,26,.12);background:#fffffff2;font-weight:800;font-size:clamp(1rem,2.4vw,1.15rem);color:#14161ae6;cursor:pointer;text-align:left;transition:transform .14s ease,background .18s ease,border-color .18s ease}.quizOption:hover:not(:disabled){transform:translateY(-2px);border-color:#6366f173}.quizOption:disabled{cursor:default}.quizOption.isRight{background:linear-gradient(180deg,#bbf7d0,#86efac);border-color:#16a34a8c;color:#063c20f2}.quizOption.isBad{background:linear-gradient(180deg,#fecaca,#fca5a5);border-color:#dc26268c;color:#64060cf2;animation:quizShake .36s ease-in-out}@keyframes quizShake{0%,to{transform:translate(0)}25%{transform:translate(-6px)}75%{transform:translate(6px)}}.quizFeedback{display:flex;align-items:center;justify-content:center;gap:10px;padding:10px 14px;border-radius:14px;font-weight:900;font-size:clamp(1rem,2.6vw,1.2rem)}.quizFeedback.isOk{background:#22c55e26;color:#065f46}.quizFeedback.isBad{background:#dc26261f;color:#7f1d1d}.quizFace{font-size:1.6rem;line-height:1}.wonCard{text-align:center}.confettiOverlay{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:hidden;z-index:45}.confettiPiece{position:absolute;top:-20px;border-radius:2px;animation-name:confettiFall;animation-timing-function:cubic-bezier(.2,.6,.3,1);animation-fill-mode:forwards;will-change:transform,opacity}@keyframes confettiFall{0%{transform:translateY(-20px) rotate(0);opacity:0}10%{opacity:1}to{transform:translate(var(--confetti-drift, 0px),110vh) rotate(var(--confetti-rotate, 360deg));opacity:1}}@media (prefers-reduced-motion: reduce){.diceBtn.isRolling,.confettiPiece,.pawn{animation:none}}.seasQuizMap{min-height:240px}.seasQuizTarget{position:absolute;width:240px;height:240px;transform:translate(-50%,-50%);border-radius:999px;pointer-events:none;opacity:.18;background:radial-gradient(closest-side,#22c55e33,#22c55e0d,#22c55e00 70%);filter:blur(6px)}.seasQuizTarget.isDone{opacity:0}.seasQuizPlaced{background:#ffffff57;border-color:#14161a0a}.seasQuizPool{gap:10px}.seasQuizDraggable{cursor:grab;-webkit-user-select:none;user-select:none;touch-action:none}.seasQuizDraggable:active{cursor:grabbing}.storyList{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:18px;margin-top:8px}.storyCard{display:grid;grid-template-rows:auto auto;text-decoration:none;background:#fff8e8;border:2px solid rgba(90,69,48,.25);border-radius:18px;overflow:hidden;box-shadow:0 10px 22px #1018281f;transition:transform .16s ease,box-shadow .22s ease;color:#3a2c1c}.storyCard:hover{transform:translateY(-3px);box-shadow:0 14px 30px #1018282e}.storyCardIll{background:#f7edd5;padding:8px;border-bottom:1px dashed rgba(90,69,48,.35)}.storyCardIll .storyIll{width:100%;height:auto;display:block;border-radius:10px}.storyCardBody{padding:14px 16px 16px}.storyCardTitle{font-weight:900;font-size:1.25rem;letter-spacing:.2px;color:#3a2c1c}.storyCardSub{margin-top:4px;font-size:.95rem;color:#3a2c1cbf;line-height:1.3}.storyPaper{display:grid;grid-template-columns:1fr;gap:18px;background:repeating-linear-gradient(45deg,#8a73540a 0,#8a73540a 8px,#8a735400 8px,#8a735400 18px),radial-gradient(circle at 20% 10%,#fff9,#fff0 55%),#f7edd5;border:2px solid rgba(90,69,48,.35);border-radius:22px;padding:18px;box-shadow:0 20px 40px #1018282e,inset 0 0 0 3px #fff6;margin-top:8px}@media (min-width: 820px){.storyPaper{grid-template-columns:1.1fr 1fr;align-items:stretch}}.storyIllWrap{border-radius:14px;background:#fffef6;border:1px dashed rgba(90,69,48,.45);padding:10px;display:grid;place-items:center;overflow:hidden}.storyIll{width:100%;height:auto;max-height:360px;display:block;border-radius:8px}.storyTextWrap{display:grid;grid-template-rows:1fr auto;gap:12px}.storyText{font-family:Comic Sans MS,Chalkboard SE,Nunito,system-ui,-apple-system,sans-serif;font-size:clamp(1.25rem,2.6vw,1.7rem);line-height:1.6;color:#3a2c1c;text-transform:lowercase;letter-spacing:.3px;margin:0;padding:16px 6px 4px}.storyWord{display:inline-block;padding:2px;border-radius:6px;transition:background-color .14s ease,color .14s ease,transform .14s ease;white-space:pre-wrap}.storyWord.isReading{background:linear-gradient(180deg,#ffe37a,#f7c948);color:#3a2c1c;box-shadow:0 2px #aa780a59,inset 0 0 0 1px #aa780a40;transform:translateY(-1px)}.storyControls{display:flex;justify-content:flex-end;align-items:center;gap:10px;padding-top:6px}.storyPlayBtn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;padding:12px 18px;border-radius:999px;background:linear-gradient(180deg,#7fb36b,#4e7a3f);color:#fff;font-weight:900;font-size:1.05rem;cursor:pointer;display:inline-flex;align-items:center;gap:10px;box-shadow:0 10px 20px #4e7a3f59;transition:transform .14s ease,box-shadow .14s ease;letter-spacing:.3px}.storyPlayBtn:hover{transform:translateY(-2px);box-shadow:0 14px 26px #4e7a3f73}.storyPlayBtn.isSpeaking{background:linear-gradient(180deg,#e78a3a,#c25a20);box-shadow:0 10px 20px #c25a2059;animation:storyPulse 1.2s ease-in-out infinite}@keyframes storyPulse{0%,to{box-shadow:0 10px 20px #c25a2059}50%{box-shadow:0 10px 30px #c25a208c}}.storyPlayIcon{font-size:1.2rem;line-height:1}.storyNav{display:grid;grid-template-columns:auto 1fr auto auto;gap:12px;align-items:center;margin-top:14px;padding:10px 2px}@media (max-width: 560px){.storyNav{grid-template-columns:1fr 1fr;grid-auto-rows:auto}.storyDots,.storyPageNum{grid-column:1 / -1;justify-self:center;order:3}}.storyDots{display:flex;gap:6px;justify-self:center}.storyDot{width:10px;height:10px;border-radius:50%;background:#5a453047;transition:transform .14s ease,background-color .14s ease}.storyDot.isActive{background:#5a4530;transform:scale(1.25)}.storyPageNum{font-weight:800;color:#3a2c1cbf;font-size:.95rem;text-transform:lowercase;letter-spacing:.3px}@media (prefers-reduced-motion: reduce){.storyPlayBtn,.storyWord,.storyDot,.storyCard{transition:none;animation:none}}.prepStage.isCalibrating{outline:3px dashed rgba(14,165,233,.55);outline-offset:2px;cursor:crosshair}.prepCatBtn.isCalibrating{cursor:grab}.prepCatBtn.isCalibrating.isDragging,.prepCatBtn.isCalibrating:active{cursor:grabbing}.prepCatBtn.isCalibrating:after{content:"";position:absolute;left:50%;top:50%;width:10px;height:10px;transform:translate(-50%,-50%);border-radius:50%;background:#ec4899e6;box-shadow:0 0 0 2px #fff,0 0 0 3px #ec489999;pointer-events:none;z-index:4}.prepCatLabel{position:absolute;left:50%;top:100%;transform:translate(-50%,4px);background:#14161ae0;color:#fff;font-size:11px;font-weight:800;line-height:1.25;padding:4px 7px;border-radius:6px;white-space:nowrap;pointer-events:none;z-index:5;letter-spacing:.2px}.prepCalibrate{margin:14px auto 0;max-width:720px;padding:16px;border:2px solid rgba(14,165,233,.4);border-radius:14px;background:#f0f9ff;box-shadow:0 8px 20px #10182814;color:#0b1423}.prepCalibrateTitle{font-weight:900;font-size:1.1rem;margin-bottom:10px;color:#075985;letter-spacing:.3px}.prepCalibrateList{list-style:none;padding:0;margin:0 0 12px;display:grid;gap:6px}.prepCalibrateList li{display:grid;grid-template-columns:minmax(120px,auto) 1fr auto;gap:10px;align-items:center;padding:6px 8px;background:#fff;border:1px solid rgba(14,165,233,.2);border-radius:8px;font-size:14px}.prepCalibrateList code{font-family:JetBrains Mono,SF Mono,Menlo,monospace;font-size:13px;color:#075985}.prepCalibrateId{font-weight:800;color:#0b1423}.prepCalibrateNudge{display:inline-flex;gap:4px}.prepCalibrateNudge button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid rgba(14,165,233,.4);background:#fff;color:#075985;width:28px;height:28px;border-radius:6px;font-weight:900;cursor:pointer;font-size:14px;line-height:1;padding:0}.prepCalibrateNudge button:hover{background:#e0f2fe}.prepCalibrateExport{background:#0b1423;color:#e0f2fe;padding:12px;border-radius:10px;font-family:JetBrains Mono,SF Mono,Menlo,monospace;font-size:12px;line-height:1.5;max-height:260px;overflow:auto;margin:0 0 12px;white-space:pre}.prepCalibrateActions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.rainGame{display:grid;grid-template-columns:minmax(0,1fr) 200px;gap:18px;margin-top:14px;align-items:stretch}@media (max-width: 720px){.rainGame{grid-template-columns:1fr}}.rainGame.didShake .rainStage{animation:rainShake .42s ease-in-out}@keyframes rainShake{0%,to{transform:translate(0)}15%{transform:translate(-10px)}30%{transform:translate(10px)}45%{transform:translate(-8px)}60%{transform:translate(8px)}75%{transform:translate(-4px)}90%{transform:translate(4px)}}.rainStage{position:relative;width:100%;min-height:520px;aspect-ratio:4 / 3;background:linear-gradient(180deg,#a5d8ff,#c7e7ff 55%,#e0f2fe);border-radius:18px;border:2px solid #7dd3fc;overflow:hidden;box-shadow:inset 0 -30px 60px #1e40af14;-webkit-user-select:none;user-select:none}.rainClouds{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.rainCloud{position:absolute;font-size:48px;opacity:.85;filter:drop-shadow(0 2px 6px rgba(30,64,175,.15))}.rainCloud.c1{left:6%;top:6%}.rainCloud.c2{left:58%;top:10%;font-size:56px}.rainCloud.c3{left:32%;top:2%;font-size:40px;opacity:.7}.rainPromptBar{position:absolute;top:12px;left:50%;transform:translate(-50%);display:inline-flex;align-items:center;gap:8px;padding:8px 16px;background:#ffffffeb;border:2px solid rgba(30,64,175,.2);border-radius:999px;box-shadow:0 6px 16px #1e40af2e;font-size:18px;font-weight:600;color:#0f172a;z-index:2;pointer-events:auto}.rainPromptColor{font-weight:800;text-transform:uppercase;letter-spacing:1px;text-shadow:0 1px 0 rgba(255,255,255,.8)}.rainRepeatBtn{margin-left:4px;border:none;background:transparent;font-size:20px;cursor:pointer;padding:2px 4px;border-radius:8px}.rainRepeatBtn:hover{background:#3b82f61f}.rainBalloon{position:absolute;transform:translate(-50%,-50%);border:none;background:transparent;padding:0;cursor:pointer;filter:drop-shadow(0 4px 6px rgba(15,23,42,.2));transition:transform 80ms ease;z-index:1}.rainBalloon:hover{transform:translate(-50%,-50%) scale(1.05)}.rainBalloon:active{transform:translate(-50%,-50%) scale(.95)}.rainBalloon.isPopping{pointer-events:none;animation:rainPop .36s ease-out forwards}@keyframes rainPop{0%{transform:translate(-50%,-50%) scale(1);opacity:1}40%{transform:translate(-50%,-50%) scale(1.35);opacity:.9}to{transform:translate(-50%,-50%) scale(.2);opacity:0}}.rainBalloonSvg{width:100%;height:100%;display:block}.rainOverlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:24px;text-align:center;background:#ffffffc7;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:3;animation:rainOverlayIn .22s ease-out}@keyframes rainOverlayIn{0%{opacity:0;transform:scale(.98)}to{opacity:1;transform:scale(1)}}.rainOverlayTitle{font-size:clamp(22px,3.6vw,32px);font-weight:800;color:#0f172a;letter-spacing:.5px}.rainOverlayText{font-size:16px;color:#1e293b;margin:0;line-height:1.5}.rainOverlayEmoji{font-size:clamp(48px,8vw,72px);line-height:1;filter:drop-shadow(0 4px 8px rgba(0,0,0,.1))}.rainOverlayActions{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:8px}.rainOverlayBad{background:#78350fd1;color:#fef3c7}.rainOverlayBad .rainOverlayTitle,.rainOverlayBad .rainOverlayText{color:#fef3c7}.rainOverlayGood{background:#f0fdf4e6}.rainOverlayWin{background:linear-gradient(135deg,#fef08aeb,#fde047eb)}.rainSide{display:flex;flex-direction:column;align-items:center;gap:10px;padding:14px;background:#f8fafc;border:2px solid #e2e8f0;border-radius:16px}.rainSideTitle{font-weight:700;color:#334155;letter-spacing:1px;text-transform:uppercase;font-size:12px}.rainBottle{width:120px;height:220px;display:block}.rainProgress{font-weight:800;font-size:20px;color:#0f172a}.rainRounds{display:flex;gap:6px;margin-top:4px}.rainRoundDot{width:16px;height:16px;border-radius:50%;border:2px solid rgba(15,23,42,.25);opacity:.35;box-shadow:inset 0 -2px 3px #00000026;transition:opacity .2s ease,transform .2s ease}.rainRoundDot.isDone{opacity:1}.rainRoundDot.isActive{opacity:1;transform:scale(1.25);border-color:#0f172a99;box-shadow:0 0 0 3px #ffffffb3,inset 0 -2px 3px #0003}@media (prefers-reduced-motion: reduce){.rainBalloon,.rainBalloon.isPopping,.rainGame.didShake .rainStage,.rainOverlay{animation:none!important;transition:none!important}}.dressGame{margin-top:14px;display:flex;flex-direction:column;gap:12px}.dressStage{display:grid;grid-template-columns:minmax(280px,420px) minmax(0,1fr);gap:18px;background:linear-gradient(180deg,#fff7ed,#fef3c7);border:2px solid #fbbf24;border-radius:18px;padding:18px;min-height:560px;position:relative}@media (max-width: 760px){.dressStage{grid-template-columns:1fr}}.dressStage.didShake{animation:dressShake .42s ease-in-out}@keyframes dressShake{0%,to{transform:translate(0)}15%{transform:translate(-10px)}30%{transform:translate(10px)}45%{transform:translate(-8px)}60%{transform:translate(8px)}75%{transform:translate(-4px)}90%{transform:translate(4px)}}.dressBearWrap{position:relative;background:radial-gradient(ellipse at 50% 80%,rgba(251,191,36,.25) 0%,transparent 70%);border-radius:14px;padding:8px;display:flex;align-items:center;justify-content:center;min-height:480px}.dressBearSvg{width:100%;max-width:360px;height:auto;display:block;filter:drop-shadow(0 6px 10px rgba(124,85,57,.25))}.dressRight{display:flex;flex-direction:column;gap:14px}.dressPanel{background:#fff;border:2px solid #fbbf24;border-radius:14px;padding:16px;text-align:center;display:flex;flex-direction:column;gap:10px;align-items:center;justify-content:center;min-height:200px}.dressPanelTitle{font-size:clamp(20px,3vw,26px);font-weight:800;color:#78350f}.dressPanelText{font-size:15px;line-height:1.5;color:#1f2937;margin:0}.dressPanelEmoji{font-size:56px;line-height:1}.dressPanelWin{background:linear-gradient(135deg,#fef3c7,#fde68a)}.dressPanelActions{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:4px}.dressPrompt{display:flex;align-items:center;gap:10px;background:#fff;border:2px solid #fbbf24;border-radius:12px;padding:12px 14px;box-shadow:0 3px 10px #fbbf2440}.dressPromptText{display:flex;flex-direction:column;gap:4px;flex:1;color:#1f2937;font-size:20px;line-height:1.2}.dressPromptSub{font-size:12px;font-weight:700;color:#92400e;letter-spacing:1px;text-transform:uppercase}.dressRepeatBtn{border:none;background:#fef3c7;border:2px solid #fbbf24;border-radius:50%;width:40px;height:40px;font-size:20px;cursor:pointer;flex-shrink:0}.dressRepeatBtn:hover{background:#fde68a}.dressCards{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}@media (max-width: 420px){.dressCards{grid-template-columns:1fr}}.dressCard{position:relative;background:#fff;border:2px solid #d6d3d1;border-radius:14px;padding:10px 8px 8px;cursor:grab;display:flex;flex-direction:column;align-items:center;gap:4px;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;-webkit-user-select:none;user-select:none;touch-action:none;font-family:inherit}.dressCard:hover{border-color:#fbbf24;box-shadow:0 4px 12px #fbbf2440}.dressCard:active{cursor:grabbing}.dressCard.isDragging{z-index:10;cursor:grabbing;box-shadow:0 12px 24px #0f172a40;border-color:#f59e0b;transition:none}.dressCardSvg{width:100%;max-width:120px;height:90px;display:block}.dressCardLabel{font-size:12px;font-weight:700;color:#1f2937;text-align:center;line-height:1.2}.dressHint{font-size:13px;color:#78350f;text-align:center;font-style:italic}.dressProgress{display:flex;align-items:center;gap:6px;padding:6px 12px;background:#fff;border:1px solid #e5e7eb;border-radius:999px;align-self:flex-start}.dressDot{width:12px;height:12px;border-radius:50%;background:#d1d5db;transition:background .2s ease,transform .2s ease}.dressDot.isDone{background:#22c55e}.dressDot.isActive{background:#f59e0b;transform:scale(1.25)}.dressPhaseLabel{margin-left:8px;font-size:12px;font-weight:700;color:#374151;letter-spacing:1px;text-transform:uppercase}@media (prefers-reduced-motion: reduce){.dressStage.didShake,.dressCard{animation:none!important;transition:none!important}}
