.ui-btn{font-family:var(--font-display);font-weight:700;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);position:relative;transition:transform .1s,box-shadow .1s;text-decoration:none;white-space:nowrap;filter:url(#crayon)}@keyframes btn-wobble{0%{transform:translate(-2px,-2px) rotate(0)}25%{transform:translate(-3px,-3px) rotate(-.5deg)}75%{transform:translate(-2px,-3px) rotate(.5deg)}to{transform:translate(-2px,-2px) rotate(0)}}@keyframes btn-wobble-sm{0%{transform:translate(-1px,-1px) rotate(0)}25%{transform:translate(-2px,-2px) rotate(-.5deg)}75%{transform:translate(-1px,-2px) rotate(.5deg)}to{transform:translate(-1px,-1px) rotate(0)}}.ui-btn--primary{background:var(--btn-primary-bg);color:var(--btn-primary-text);border:3px solid var(--btn-primary-border);border-radius:12px 15px 13px 14px/14px 12px 15px 13px;box-shadow:4px 5px 0 var(--btn-primary-border);transform:translate(-2px,-2px);padding:var(--space-3) var(--space-6);font-size:var(--text-lg)}.ui-btn--primary:hover:not(:disabled){animation:btn-wobble .35s ease;box-shadow:5px 6px 0 var(--btn-primary-border)}.ui-btn--primary:active:not(:disabled){transform:translate(0);box-shadow:1px 2px 0 var(--btn-primary-border)}.ui-btn--primary:disabled{opacity:.5;cursor:not-allowed;transform:translate(-1px,-1px);box-shadow:2px 3px 0 var(--btn-primary-border)}.ui-btn--secondary{background:var(--btn-secondary-bg);color:var(--text);border:3px solid var(--btn-secondary-border);border-radius:11px 14px 12px 13px/13px 11px 14px 12px;box-shadow:3px 4px 0 var(--btn-secondary-border);transform:translate(-1px,-1px);padding:var(--space-3) var(--space-6);font-size:var(--text-lg)}.ui-btn--secondary:hover:not(:disabled){animation:btn-wobble-sm .35s ease;box-shadow:4px 5px 0 var(--btn-secondary-border)}.ui-btn--secondary:active:not(:disabled){transform:translate(0);box-shadow:1px 1px 0 var(--btn-secondary-border)}.ui-btn--back{background:transparent;color:var(--text);border:2px solid var(--btn-secondary-border, currentColor);border-radius:10px 12px 11px 13px/12px 10px 13px 11px;box-shadow:2px 3px 0 var(--btn-secondary-border, currentColor);transform:translate(-1px,-1px);padding:var(--space-2) var(--space-4);font-size:var(--text-base);font-weight:600}.ui-btn--back:hover{background:var(--card-bg);animation:btn-wobble-sm .35s ease;box-shadow:3px 4px 0 var(--btn-secondary-border, currentColor)}.ui-btn--back:active{transform:translate(0);box-shadow:none}.ui-btn--fab{background:var(--btn-primary-bg);color:var(--btn-primary-text);border:3px solid var(--btn-primary-border);border-radius:9999px;box-shadow:4px 5px 0 var(--btn-primary-border);transform:translate(-2px,-2px);padding:var(--space-3) var(--space-8);font-size:var(--text-base)}.ui-btn--fab:hover:not(:disabled){animation:btn-wobble .35s ease;box-shadow:5px 6px 0 var(--btn-primary-border)}.ui-btn--fab:active:not(:disabled){transform:translate(0);box-shadow:1px 2px 0 var(--btn-primary-border)}.ui-btn--sm{font-size:var(--text-sm);padding:var(--space-2) var(--space-4)}.ui-btn--lg{font-size:var(--text-xl);padding:var(--space-4) var(--space-8)}.ui-card{background:var(--card-bg);border:3px solid var(--card-border-color);border-radius:14px 17px 15px 16px/16px 14px 17px 15px;box-shadow:var(--card-shadow);padding:var(--space-4);transform:rotate(var(--card-tilt, 0deg));transition:transform .15s,box-shadow .15s}.ui-card--interactive{cursor:pointer}.ui-card--interactive:hover{transform:rotate(var(--card-tilt, 0deg)) translateY(-3px);box-shadow:var(--shadow-lg)}.ui-card--interactive:active{transform:rotate(var(--card-tilt, 0deg)) translateY(0);box-shadow:var(--shadow-sm)}.ui-heading{font-family:var(--font-display);font-weight:800;color:var(--text);text-shadow:var(--heading-shadow);line-height:1.15;margin:0}.ui-heading--1{font-size:var(--text-4xl)}.ui-heading--2{font-size:var(--text-2xl)}.ui-heading--3{font-size:var(--text-xl)}.ui-label{font-family:var(--font-body);font-size:var(--text-sm);font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin:0}.ui-badge{display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-3);border-radius:9999px;border:2px solid currentColor;font-family:var(--font-display);font-weight:700;font-size:var(--text-sm);white-space:nowrap}.ui-badge__icon{display:inline-flex;align-items:center}.ui-badge--streak{color:var(--color-amber);background:#f59e0b1f}.ui-badge--score{color:var(--text);background:var(--card-bg);border-color:var(--accent)}.ui-badge--new-best{color:var(--color-amber-dark);background:#ffd7002e;border-color:var(--color-amber)}.ui-badge--default{color:var(--text);background:var(--card-bg);border-color:var(--accent)}.ui-progress-dots{display:flex;gap:var(--space-1);align-items:center}.ui-dot{width:10px;height:10px;border-radius:9999px;border:2px solid var(--accent);transition:background .2s}.ui-dot--none{background:transparent}.ui-dot--tried{background:var(--accent);opacity:.4}.ui-dot--mastered{background:var(--color-star);border-color:var(--color-star-dark)}.ui-progress-bar{width:100%;height:8px;background:#0000001a;border-radius:9999px;border:2px solid var(--accent);overflow:hidden}.ui-progress-bar__fill{height:100%;background:var(--accent);border-radius:9999px;transition:width .4s ease}.ui-text-input{font-family:var(--font-display);font-size:var(--text-xl);font-weight:600;color:var(--text);background:transparent;border:none;border-bottom:4px solid var(--accent);border-radius:0;padding:var(--space-2) var(--space-2);width:100%;text-align:center;outline:none;transition:border-color .2s}.ui-text-input:focus{border-bottom-color:var(--btn-primary-bg)}.ui-text-input::placeholder{color:var(--text-muted);opacity:.6}.ui-modal-overlay{position:fixed;inset:0;background:#0000008c;display:flex;align-items:center;justify-content:center;z-index:100;padding:var(--space-4);animation:modal-fade-in .2s ease}@keyframes modal-fade-in{0%{opacity:0}to{opacity:1}}.ui-modal-content{width:100%;max-width:420px;animation:modal-slide-up .25s ease}@keyframes modal-slide-up{0%{transform:translateY(24px);opacity:0}to{transform:translateY(0);opacity:1}}.theme-picker{display:flex;gap:var(--space-2);align-items:center}.theme-picker__btn{background:#ffffff26;border:2px solid rgba(255,255,255,.3);border-radius:12px 14px 13px 12px/13px 12px 14px 13px;padding:var(--space-1);cursor:pointer;opacity:.6;transition:opacity .15s,transform .15s,box-shadow .15s;filter:url(#crayon);display:flex;align-items:center;box-shadow:2px 3px #0003;transform:translate(-1px,-1px)}.theme-picker__btn:hover{opacity:.85;transform:translate(-2px,-2px);box-shadow:3px 4px #0003}.theme-picker__btn--active{opacity:1;border-color:#fffc;transform:translate(-2px,-2px);box-shadow:3px 4px #00000040}@keyframes topic-node-bob{0%,to{transform:translate(-50%,-50%) scale(1.15) translateY(0)}50%{transform:translate(-50%,-50%) scale(1.15) translateY(-6px)}}.topic-node{position:absolute;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:5px;background:none;border:none;cursor:pointer;padding:0;font-family:inherit;transition:transform .2s ease;z-index:2;min-height:0}.topic-node:hover:not(:disabled){animation:topic-node-bob .9s ease-in-out infinite}.topic-node:active:not(:disabled){transform:translate(-50%,-50%) scale(.93);animation:none}.topic-node--locked{opacity:.4;cursor:default;filter:grayscale(.7)}.topic-node__shape{display:block;filter:url(#crayon) drop-shadow(3px 4px 0 rgba(0,0,0,.22)) drop-shadow(0 0 10px rgba(255,180,200,.35))}[data-theme=space] .topic-node__shape{filter:url(#crayon) drop-shadow(3px 4px 0 rgba(0,0,0,.45)) drop-shadow(0 0 12px rgba(100,220,255,.5))}.topic-node--locked .topic-node__shape{filter:url(#crayon) drop-shadow(2px 3px 0 rgba(0,0,0,.12)) grayscale(.8)}.topic-node__label{font-size:.75rem;font-weight:800;font-family:var(--font-display);color:#1a1a2e;white-space:nowrap;background:#ffffffeb;padding:2px 8px;border-radius:8px 10px 9px/10px 8px 10px 9px;border:2px solid rgba(0,0,0,.12);box-shadow:2px 3px #00000026;letter-spacing:.01em}[data-theme=space] .topic-node__label{background:#0d0d2beb;color:#e8e8ff;border-color:#64dcff4d;box-shadow:2px 3px #0006;text-shadow:0 0 6px rgba(0,229,255,.4)}.topic-node__lock{position:absolute;top:50%;left:50%;transform:translate(-50%,-60%);font-size:1.3rem;filter:drop-shadow(0 1px 3px rgba(0,0,0,.4))}.onboarding-overlay{position:fixed;inset:0;background:#000000a6;display:flex;align-items:center;justify-content:center;z-index:200;padding:var(--space-4)}.onboarding-modal{background:#fff;border-radius:var(--radius-xl, 20px);padding:var(--space-8, 2rem) var(--space-6, 1.5rem);max-width:360px;width:100%;text-align:center;box-shadow:0 8px 40px #00000040;display:flex;flex-direction:column;align-items:center;gap:var(--space-4, 1rem)}[data-theme=space] .onboarding-modal{background:#0d0d2b;color:#e2e8f0;box-shadow:0 8px 40px #0009}[data-theme=candy] .onboarding-modal{background:#fffaf4}.onboarding-modal__icon{font-size:3rem;line-height:1}.onboarding-modal__title{font-size:var(--text-xl, 1.25rem);font-weight:900;font-family:var(--font-display, sans-serif);margin:0;color:var(--text, #1a1a2e)}[data-theme=space] .onboarding-modal__title{color:#e2e8f0}.onboarding-modal__body{font-size:var(--text-base, 1rem);line-height:1.5;color:var(--text-muted, #64748b);margin:0;max-width:28ch}[data-theme=space] .onboarding-modal__body{color:#94a3b8}.onboarding-modal__dots{display:flex;gap:var(--space-2, .5rem);align-items:center}.onboarding-modal__dot{width:8px;height:8px;border-radius:50%;background:#cbd5e1;transition:background .2s,transform .2s}.onboarding-modal__dot--active{background:var(--accent, #6366f1);transform:scale(1.3)}.settings-panel{position:absolute;top:calc(100% + 8px);right:0;background:#fff;border-radius:var(--radius-lg, 14px);box-shadow:0 4px 24px #0000002e;padding:var(--space-3, .75rem) var(--space-4, 1rem);min-width:180px;z-index:50;display:flex;flex-direction:column;gap:var(--space-2, .5rem);border:1px solid rgba(0,0,0,.06)}[data-theme=space] .settings-panel{background:#0d0d2b;border:1px solid rgba(100,200,255,.15);color:#e2e8f0}[data-theme=candy] .settings-panel{background:#fffaf4}.settings-panel__row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4, 1rem)}.settings-panel__label{display:flex;align-items:center;gap:.4rem;font-size:var(--text-sm, .9rem);font-weight:700;white-space:nowrap;color:var(--text, #1a1a2e)}[data-theme=space] .settings-panel__label{color:#e2e8f0}.settings-panel__toggle{min-width:52px;padding:.3rem .75rem;border-radius:var(--radius-full, 999px);border:none;cursor:pointer;font-size:var(--text-sm, .85rem);font-weight:800;font-family:inherit;background:var(--accent, #6366f1);color:#fff;transition:background .15s,transform .1s}.settings-panel__toggle:hover{transform:scale(1.05)}.settings-panel__toggle--off{background:#cbd5e1;color:#475569}[data-theme=space] .settings-panel__toggle--off{background:#2d2d5e;color:#94a3b8}.settings-panel__divider{height:1px;background:#00000012;margin:var(--space-1, .25rem) 0}[data-theme=space] .settings-panel__divider{background:#ffffff14}.settings-panel__action{display:flex;align-items:center;gap:var(--space-2, .5rem);padding:var(--space-2, .5rem) var(--space-1, .25rem);background:none;border:none;cursor:pointer;font-size:var(--text-sm, .9rem);font-weight:700;font-family:inherit;color:var(--text, #1a1a2e);border-radius:var(--radius-md, 8px);text-align:left;width:100%;transition:background .15s}.settings-panel__action:hover{background:#0000000d}[data-theme=space] .settings-panel__action{color:#e2e8f0}[data-theme=space] .settings-panel__action:hover{background:#ffffff12}.kingdom-map{min-height:100vh;display:flex;flex-direction:column;align-items:stretch;background-color:var(--bg)}.kingdom-map__header{width:100%;display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) var(--space-6);position:sticky;top:0;z-index:10;background:#ffffff40;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid rgba(255,255,255,.2)}[data-theme=space] .kingdom-map__header{background:#0a0a2880;border-bottom:1px solid rgba(100,200,255,.1)}.kingdom-map__title{font-size:var(--text-xl);font-weight:900;color:var(--text-on-dark);font-family:var(--font-display);margin:0;text-shadow:0 1px 4px rgba(0,0,0,.3)}[data-theme=candy] .kingdom-map__title{color:#3b1f8c;text-shadow:none}.kingdom-map__profile-chip{display:flex;align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-3);background:#ffffffe6;border:none;border-radius:var(--radius-full);font-size:var(--text-sm);font-weight:700;cursor:pointer;box-shadow:var(--shadow-sm);color:var(--text);font-family:inherit;transition:transform .1s,box-shadow .1s;filter:url(#crayon)}.kingdom-map__profile-chip:hover{transform:scale(1.04);box-shadow:var(--shadow-md)}[data-theme=space] .kingdom-map__profile-chip{background:#1a1a3ee6;color:var(--text);border:1px solid var(--border)}.kingdom-map__canvas{position:relative;width:100%;height:1400px;background-image:var(--map-bg-image);background-size:100% 100%;background-repeat:no-repeat;flex-shrink:0}.kingdom-map__route{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.kingdom-map__route-glow{stroke:#fff3;stroke-width:2.2;fill:none;filter:blur(3px)}[data-theme=space] .kingdom-map__route-glow{stroke:#64dcff40;filter:blur(4px)}.kingdom-map__route-line{stroke:#ffffff6b;stroke-width:1.8;fill:none;stroke-dasharray:5 4;stroke-linecap:round}[data-theme=space] .kingdom-map__route-line{stroke:#78e6ff73;stroke-width:1.8}.kingdom-map__header-right{display:flex;align-items:center;gap:var(--space-2, .5rem);position:relative}.kingdom-map__settings-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;border:none;background:#ffffffd9;cursor:pointer;font-size:1.1rem;box-shadow:var(--shadow-sm);transition:transform .15s,box-shadow .15s;filter:url(#crayon)}.kingdom-map__settings-btn:hover{transform:scale(1.1);box-shadow:var(--shadow-md)}[data-theme=space] .kingdom-map__settings-btn{background:#1a1a3ee6;border:1px solid var(--border)}.kingdom-map__settings-wrap{position:relative}.kingdom-map__speed-fab{position:fixed;bottom:var(--space-6);right:var(--space-6);z-index:20}.cambridge-journey-btn{display:flex;align-items:center;gap:.3rem;padding:.3rem .65rem;border-radius:20px;border:2px solid var(--accent, #FF9500);background:var(--accent, #FF9500);color:#fff;font-size:.72rem;font-weight:800;cursor:pointer;transition:opacity .15s;font-family:inherit;white-space:nowrap}.cambridge-journey-btn:hover{opacity:.85}.world-entry{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem 1.5rem;background:var(--bg);gap:1.5rem;animation:screen-slide-in .22s ease both}.world-entry__emoji{font-size:5rem;animation:world-bounce .6s cubic-bezier(.36,.07,.19,.97) both}@keyframes world-bounce{0%{transform:scale(.5);opacity:0}60%{transform:scale(1.15)}to{transform:scale(1);opacity:1}}.world-entry__name{font-size:2.2rem;font-weight:900;color:var(--text);font-family:Fredoka One,cursive;margin:0;text-align:center}.world-entry__bubble{background:var(--card-bg, white);border-radius:20px;padding:1rem 1.5rem;font-size:1.1rem;font-weight:600;color:var(--text);text-align:center;box-shadow:0 4px 14px #00000014;max-width:300px;display:flex;align-items:center;gap:.5rem}.world-entry__bubble-owl{width:28px;height:34px;flex-shrink:0}.topic-screen{min-height:100vh;display:flex;flex-direction:column;align-items:center;padding:1.5rem 2rem 3rem;position:relative;overflow:hidden}.topic-screen[data-topic=addition]{background:var(--quiz-bg-addition)}.topic-screen[data-topic=subtraction]{background:var(--quiz-bg-subtraction)}.topic-screen[data-topic=multiplication]{background:var(--quiz-bg-multiplication)}.topic-screen[data-topic=fractions]{background:var(--quiz-bg-fractions)}.topic-screen[data-topic=geometry]{background:var(--quiz-bg-geometry)}.topic-screen[data-topic=time]{background:var(--quiz-bg-time)}.topic-screen[data-topic=money]{background:var(--quiz-bg-money)}.topic-screen__header{display:flex;flex-direction:column;align-items:center;gap:.5rem;margin:1rem 0 2rem;color:#fff}.topic-screen__title{margin:0}.level-map{display:flex;flex-direction:column;width:100%;max-width:300px;gap:0}.level-map__stop{display:flex;position:relative;padding:0 .5rem}.level-map__stop--left{justify-content:flex-start}.level-map__stop--right{justify-content:flex-end}.level-map__stop--center{justify-content:center}.level-map__connector{position:absolute;top:-18px;left:50%;transform:translate(-50%);width:3px;height:18px;background:repeating-linear-gradient(to bottom,rgba(255,255,255,.6) 0px,rgba(255,255,255,.6) 4px,transparent 4px,transparent 8px);background-size:100% 16px;animation:connector-flow 1s linear infinite}@keyframes connector-flow{0%{background-position-y:0}to{background-position-y:16px}}.level-node{width:90px;height:90px;border-radius:50%;border:4px solid rgba(255,255,255,.5);display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;font-family:inherit;transition:transform .15s;margin:.4rem 0;filter:url(#crayon)}.level-node--unlocked{background:#fff;color:#333;box-shadow:0 6px 18px #0003}.level-node--unlocked:hover:not(:disabled){animation:level-node-wobble .35s ease}@keyframes level-node-wobble{0%{transform:scale(1.12) rotate(0)}25%{transform:scale(1.13) rotate(-.6deg)}75%{transform:scale(1.12) rotate(.6deg)}to{transform:scale(1.12) rotate(0)}}.level-node--locked{background:#0003;color:#ffffff80;cursor:default}.level-node--complete{background:gold;border-color:#fff;box-shadow:0 6px 20px #ffd70080}.level-node__number{font-size:2rem;font-weight:800;line-height:1;font-family:var(--font-display)}.level-node__stars{display:flex;gap:2px;color:#f59e0b}.level-node--new{animation:beacon-pulse 1.5s ease-in-out infinite}@keyframes beacon-pulse{0%,to{box-shadow:0 6px 18px #0003,0 0 #ffffffb3}50%{box-shadow:0 6px 18px #0003,0 0 0 14px #fff0}}.level-node__type-label{display:block;font-size:.55rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em;opacity:.65;line-height:1;margin-top:1px;white-space:nowrap}.owl{position:relative;display:inline-block}.owl img{width:80px;height:96px}.owl--correct{animation:owl-bounce .4s ease}.owl--wrong{animation:owl-shake .4s ease}.owl--celebrate{animation:owl-dance .6s ease infinite alternate}@keyframes owl-bounce{0%{transform:translateY(0)}40%{transform:translateY(-16px)}70%{transform:translateY(-8px)}to{transform:translateY(0)}}@keyframes owl-shake{0%{transform:rotate(0)}25%{transform:rotate(-8deg)}75%{transform:rotate(8deg)}to{transform:rotate(0)}}@keyframes owl-dance{0%{transform:rotate(-10deg) translateY(0)}to{transform:rotate(10deg) translateY(-8px)}}.owl-sparkle{position:absolute;display:flex;animation:sparkle-fade .8s ease forwards;top:-10px;right:-10px}.owl-sparkle--1{top:-10px;left:-10px;animation-delay:0s}.owl-sparkle--2{top:-20px;right:-5px;animation-delay:.1s}.owl-sparkle--3{top:0;right:-20px;animation-delay:.2s}@keyframes sparkle-fade{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(-20px) scale(.5)}}.owl--perfect{animation:owl-backflip .6s ease}.owl--streak{animation:owl-vibrate .3s ease infinite}.owl--hint{animation:owl-wink .4s ease}.owl--sleeping{animation:owl-yawn 1s ease infinite alternate}@keyframes owl-backflip{0%{transform:rotate(0) translateY(0)}25%{transform:rotate(-90deg) translateY(-12px)}50%{transform:rotate(-180deg) translateY(-20px)}75%{transform:rotate(-270deg) translateY(-12px)}to{transform:rotate(-360deg) translateY(0)}}@keyframes owl-vibrate{0%,to{transform:translate(0)}25%{transform:translate(-3px) rotate(-3deg)}75%{transform:translate(3px) rotate(3deg)}}@keyframes owl-wink{0%{transform:scaleX(1)}30%{transform:scaleX(.95) rotate(5deg)}60%{transform:scaleX(1.05) rotate(-2deg)}to{transform:scaleX(1) rotate(0)}}@keyframes owl-yawn{0%{transform:rotate(-5deg) translateY(0)}to{transform:rotate(5deg) translateY(-4px)}}.owl--personality-luna img{filter:hue-rotate(240deg) saturate(1.3)}.owl--personality-pip img{filter:hue-rotate(90deg) saturate(1.2)}.hint-panel{width:100%;max-width:440px;animation:hint-slide-in .25s ease}@keyframes hint-slide-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.hint-panel__inner{background:#ffffffeb;border-radius:16px;padding:1rem 1.25rem;box-shadow:0 4px 20px #00000026}.hint-label{font-size:.9rem;font-weight:600;color:#555;margin:0 0 .75rem;text-align:center}.hint-fallback{text-align:center;font-size:1rem;color:#666;margin:0}.hint-numberline{width:100%}.nl-track{position:relative;height:48px;margin:28px 12px 0;border-top:3px solid #555}.nl-tick{position:absolute;top:0;transform:translate(-50%) translateY(-100%);display:flex;flex-direction:column;align-items:center}.nl-tick-line{width:2px;height:8px;background:#555}.nl-tick-label{font-size:.7rem;font-weight:600;color:#444;margin-bottom:2px}.nl-tick--start .nl-tick-line{background:#007aff;height:14px}.nl-tick--start .nl-tick-label{color:#007aff;font-size:.8rem}.nl-tick--end .nl-tick-line{background:var(--color-correct);height:14px}.nl-tick--end .nl-tick-label{color:var(--color-correct);font-size:.8rem;font-weight:800}.nl-arc{position:absolute;top:0;height:28px;border-radius:0 0 50% 50%;border-bottom:3px solid;border-left:3px solid;border-right:3px solid;animation:arc-grow .4s ease forwards;transform-origin:top center}.nl-arc--add{border-color:#ff9500}.nl-arc--sub{border-color:#007aff}@keyframes arc-grow{0%{transform:scaleX(0);opacity:0}to{transform:scaleX(1);opacity:1}}.nl-arrow-head{position:absolute;top:3px;transform:translate(-50%);width:0;height:0;border-left:6px solid transparent;border-right:6px solid transparent;border-top:8px solid var(--color-correct)}.hint-dots{text-align:center}.dot-grid-wrap{display:inline-flex;flex-direction:column;gap:10px;margin-top:.5rem}.dot-col-headers{display:flex;gap:8px;align-items:center}.dot-axis-spacer{width:18px;flex-shrink:0}.dot-col-num{width:18px;text-align:center;font-size:.65rem;font-weight:700;color:#aaa}.dot-row-wrap{display:flex;align-items:center;gap:8px}.dot-row-num{width:18px;text-align:right;font-size:.65rem;font-weight:700;color:#aaa;flex-shrink:0}.dot-axis-ellipsis{font-size:.75rem;color:#ccc;align-self:center}.dot-row{display:flex;gap:8px}.dot{width:18px;height:18px;border-radius:50%;display:inline-block;animation:dot-pop .3s ease backwards}.dot--col-0{background:#ff6b6b;animation-delay:0s}.dot--col-1{background:#ffd93d;animation-delay:.03s}.dot--col-2{background:#6bcb77;animation-delay:.06s}.dot--col-3{background:#4d96ff;animation-delay:.09s}.dot--col-4{background:#ff922b;animation-delay:.12s}@keyframes dot-pop{0%{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}.hint-column{display:flex;flex-direction:column;align-items:center;gap:.75rem}.col-equation{display:grid;grid-template-columns:1.2rem auto;align-items:center;gap:.1rem .5rem;font-size:1.4rem;font-weight:800;font-variant-numeric:tabular-nums}.col-op-placeholder{display:block}.col-num{text-align:right;color:#333}.col-op{color:#ff9500;font-size:1.2rem;text-align:center}.col-divider{grid-column:1 / -1;height:3px;background:#555;border-radius:2px;margin:.15rem 0}.col-answer{text-align:right;color:var(--color-correct)}.col-steps{list-style:none;padding:0;margin:0;width:100%;display:flex;flex-direction:column;gap:.3rem}.col-steps li{font-size:.8rem;color:#555;background:#0000000a;border-radius:8px;padding:.3rem .6rem;font-family:monospace}.hint-boxes{text-align:center}.box-groups{display:flex;gap:.5rem;justify-content:center;flex-wrap:wrap;margin:.5rem 0 .1rem}.group-box{width:52px;height:52px;border-radius:12px;border:3px solid #ddd;background:#f5f5f5;display:flex;align-items:center;justify-content:center}.group-box--answer{border-color:#ff9500;background:#fff3e0;box-shadow:0 0 8px #ff950059}.group-box__num{font-size:1.4rem;font-weight:800;color:#333}.group-box--answer .group-box__num{color:#ff9500}.box-arrow{font-size:.85rem;color:#ff9500;font-weight:700;margin:0 0 .25rem}.dg-rule{font-size:.85rem;color:#555;margin:.25rem 0 0}.hint-fracbars{display:flex;flex-direction:column;gap:.4rem;width:100%}.fracbar-row{display:flex;align-items:center;gap:.5rem}.fracbar-label{font-size:.85rem;font-weight:700;color:#555;min-width:2.5rem;text-align:right;font-variant-numeric:tabular-nums}.fracbar-track{display:flex;flex:1;height:22px;border-radius:4px;overflow:hidden;gap:2px;background:transparent}.fracbar-seg{flex:1;border-radius:3px;transition:background .2s}.fracbar-seg--filled{background:#4d96ff}.fracbar-seg--filled-hi{background:#ff9500}.fracbar-seg--empty{background:#e0e0e0}.frac-plus{text-align:center;font-size:1.2rem;font-weight:800;color:#888}.geo-single-shape{display:flex;flex-direction:column;align-items:center;gap:.5rem}.geo-shape-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem;width:100%;margin-top:.5rem}.geo-shape-cell{display:flex;flex-direction:column;align-items:center;gap:.25rem;transition:opacity .2s,filter .2s}.geo-shape-cell--dim{opacity:.3;filter:grayscale(80%)}.geo-shape-badge{font-size:.78rem;font-weight:800;color:#333;text-align:center}.geo-sym-line{stroke:#0006;stroke-width:2;stroke-dasharray:4 3}.geo-3d-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin-top:.5rem}.geo-3d-cell{display:flex;flex-direction:column;align-items:center;gap:.3rem}.geo-3d-label{font-size:.78rem;font-weight:700;color:#333;text-align:center}.geo-perimeter{display:flex;flex-direction:column;align-items:center;gap:.75rem}.geo-formula{font-size:1rem;font-weight:800;color:#333;text-align:center}.geo-area{display:flex;flex-direction:column;align-items:center;gap:.6rem}.geo-area-grid{display:inline-grid;gap:2px}.geo-area-cell{border-radius:3px;animation:dot-pop .3s ease backwards}.col-visual-boxes{display:flex;gap:.4rem;justify-content:center;margin:.4rem 0;flex-direction:row-reverse}.col-visual-box{display:flex;flex-direction:column;align-items:center;gap:.2rem}.col-visual-box__label{font-size:.65rem;font-weight:700;color:#888;text-transform:uppercase}.col-visual-box__digit{width:38px;height:42px;border-radius:10px;background:#f5f5f5;border:2.5px solid #ddd;display:flex;align-items:center;justify-content:center;font-size:1.3rem;font-weight:800;color:#333;font-variant-numeric:tabular-nums}.col-visual-box__digit--active{border-color:#ff9500;background:#fff3e0;color:#ff9500}.col-visual-box__carry{font-size:.7rem;font-weight:800;color:#ff9500;height:1rem}.col-visual-box__carry--borrow{color:#007aff}.times-strip{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.4rem}.times-cell{display:flex;flex-direction:column;align-items:center;padding:.3rem .45rem;border-radius:10px;background:#0000000d;min-width:40px}.times-cell--target{background:#ff922b;box-shadow:0 3px 8px #ff922b66}.times-cell__eq{font-size:.62rem;color:#888;font-weight:600}.times-cell--target .times-cell__eq{color:#fffc}.times-cell__val{font-size:1rem;font-weight:800;color:#333}.times-cell--target .times-cell__val{color:#fff;font-size:1.1rem}.bags-row{display:flex;gap:.6rem;justify-content:center;flex-wrap:wrap;margin-top:.4rem}.bag-cell{display:flex;flex-direction:column;align-items:center;gap:.2rem}.bag-label{font-size:.8rem;font-weight:800;color:#7b1fa2}.hint-multihop{width:100%}.multihop-track{position:relative;height:58px;margin:28px 12px 0;border-top:3px solid #555}.multihop-arc{position:absolute;top:0;height:36px;border-radius:0 0 50% 50%;border-bottom:2.5px solid #FF922B;border-left:2.5px solid #FF922B;border-right:2.5px solid #FF922B;animation:arc-grow .35s ease backwards}.multihop-step{position:absolute;top:40px;left:50%;transform:translate(-50%);font-size:.62rem;font-weight:800;color:#ff922b;white-space:nowrap}.multihop-tick{position:absolute;top:0;transform:translate(-50%) translateY(-100%);display:flex;flex-direction:column;align-items:center}.multihop-tick-line{width:2px;height:7px;background:#777}.multihop-label{font-size:.65rem;font-weight:800;color:#ff922b;white-space:nowrap;margin-bottom:1px}.multihop-label--hidden{color:#aaa}.hint-clock{display:flex;flex-direction:column;align-items:center;gap:.5rem}.days-strip{display:flex;gap:.25rem;justify-content:center;margin:.4rem 0}.day-box{width:32px;height:36px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:.72rem;font-weight:700;background:#0000000f;color:#555}.day-box--start{background:var(--accent);color:#fff}.day-box--end{background:var(--color-correct);color:#fff}.months-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.3rem;margin-top:.4rem}.month-card{display:flex;align-items:center;gap:.3rem;padding:.2rem .3rem;border-radius:8px;background:#0000000a}.month-badge{width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.65rem;font-weight:800;color:#fff;flex-shrink:0}.month-name{font-size:.72rem;font-weight:600;color:#444}.coin-row{display:flex;justify-content:space-around;align-items:flex-end;margin:.4rem 0;gap:.5rem}.coin-cell{display:flex;flex-direction:column;align-items:center;gap:.3rem}.coin-name{font-size:.72rem;font-weight:700;color:#666;text-align:center}.coin-value{font-size:.9rem;font-weight:800;color:#333}.money-coin-name{font-size:.75rem;font-weight:700;color:#666;min-width:44px}.money-question-legend{display:flex;justify-content:center;gap:16px;flex-wrap:wrap;padding:.5rem .75rem;background:#ffffff14;border-radius:12px;margin:.25rem 0 .5rem}.money-question-coin{display:flex;flex-direction:column;align-items:center;gap:3px}.money-question-coin-name{font-size:.68rem;font-weight:700;color:#666;text-align:center}.money-coin-group{display:flex;flex-direction:column;gap:6px;margin:.4rem 0}.money-coin-row{display:flex;align-items:center;gap:6px}.money-coin-row-coins{display:flex;gap:3px;flex-wrap:wrap}.money-coin-total{font-weight:800;font-size:.9rem;color:var(--accent, #FF9500);min-width:38px}.money-sum-row{display:flex;align-items:center;gap:8px;justify-content:center;margin:.5rem 0;flex-wrap:wrap}.money-tag{background:#f0f0f0;border:2.5px solid #ccc;border-radius:8px;padding:6px 14px;font-weight:800;font-size:1rem;color:#333}.money-tag--answer{background:#ffd93d;border-color:#e67e22;color:#7b4000}.money-tag--paid{background:#6bcb77;border-color:#27ae60;color:#fff}.money-op{font-size:1.3rem;font-weight:800;color:#aaa}.money-token-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin:.5rem 0;justify-content:center}.money-token{background:gold;border:2.5px solid #B8860B;border-radius:8px;padding:6px 10px;font-weight:800;font-size:.9rem;color:#7b4000}.money-bar-compare{display:flex;flex-direction:column;gap:8px;margin:.5rem 0}.money-bar-row{display:flex;align-items:center;gap:8px}.money-bar-label{min-width:42px;font-weight:800;font-size:.9rem;text-align:right;color:#555}.money-bar{height:22px;border-radius:4px;min-width:8px;transition:width .3s ease}.money-steps{display:flex;flex-direction:column;gap:6px;margin:.5rem 0}.money-step-row{display:flex;align-items:center;gap:8px;font-size:.95rem}.money-step-val{min-width:44px;font-weight:800;text-align:right;color:#333}.money-step-op{color:#888;font-weight:600}.money-step-result{font-weight:800;color:var(--accent, #FF9500)}.money-receipt{font-family:monospace;font-size:.9rem;background:#fffdf5;border:2px dashed #ddd;border-radius:12px;padding:.5rem .75rem;margin:.5rem auto;max-width:220px}.money-receipt__row{display:flex;justify-content:space-between;align-items:center;padding:.18rem 0;color:#555;text-transform:capitalize}.money-receipt__row--spend{color:#888}.money-receipt__row--subtotal{border-top:1px dashed #ccc;margin-top:.25rem;padding-top:.35rem;font-weight:800;color:#333}.money-receipt__row--answer{border-top:2px solid #ccc;margin-top:.25rem;padding-top:.35rem;font-weight:800}.money-receipt__amt{font-weight:800;font-variant-numeric:tabular-nums}.money-receipt__amt--budget{color:#27ae60}.money-receipt__amt--spend{color:#e74c3c}.money-receipt__amt--answer{color:#aaa;font-size:1.1rem}.hint-two-clocks{display:flex;align-items:center;justify-content:center;gap:.5rem;flex-wrap:wrap}.hint-clock-arrow{font-size:1.5rem;font-weight:800;color:var(--text, #333);align-self:center}.hint-ten-frame{display:flex;flex-direction:column;align-items:center;gap:.5rem}.ten-frame-grid{display:grid;grid-template-columns:repeat(5,32px);grid-template-rows:repeat(2,32px);gap:4px}.ten-frame-cell{width:32px;height:32px;border-radius:50%;border:2px solid #ccc}.ten-frame-cell--filled{background:#ff9500;border-color:#e67e22}.ten-frame-cell--empty{background:#f5f5f5;border-color:#ccc}.particles-host{position:absolute;top:50%;left:50%;width:0;height:0;pointer-events:none;z-index:10}.particle{position:absolute;width:10px;height:10px;border-radius:50%;background:var(--color);animation:particle-fly .6s ease-out forwards}@keyframes particle-fly{0%{transform:rotate(var(--angle)) translate(0) scale(1);opacity:1}to{transform:rotate(var(--angle)) translate(var(--distance)) scale(0);opacity:0}}.speech-bubble{background:#fff;color:#333;font-size:1rem;font-weight:700;padding:.5rem 1rem;border-radius:16px;box-shadow:0 3px 12px #00000026;position:absolute;bottom:100%;left:50%;transform:translate(-50%);margin-bottom:12px;max-width:220px;white-space:nowrap;text-align:center;font-family:Nunito,sans-serif;z-index:10}.speech-bubble:after{content:"";position:absolute;bottom:-8px;left:50%;transform:translate(-50%);border:8px solid transparent;border-top-color:#fff;border-bottom:0}.speech-bubble--visible{animation:bubble-pop .25s cubic-bezier(.175,.885,.32,1.275) both}.speech-bubble--hidden{animation:bubble-fade .3s ease forwards}@keyframes bubble-pop{0%{transform:translate(-50%) scale(.5);opacity:0}to{transform:translate(-50%) scale(1);opacity:1}}@keyframes bubble-fade{to{transform:translate(-50%) scale(.8);opacity:0}}.quiz{min-height:100vh;display:flex;flex-direction:column;align-items:center;padding:1.5rem;background:var(--quiz-bg-addition);gap:1.5rem}.quiz[data-topic=addition]{background:var(--quiz-bg-addition)}.quiz[data-topic=subtraction]{background:var(--quiz-bg-subtraction)}.quiz[data-topic=multiplication]{background:var(--quiz-bg-multiplication)}.quiz[data-topic=fractions]{background:var(--quiz-bg-fractions)}.quiz[data-topic=geometry]{background:var(--quiz-bg-geometry)}.quiz[data-topic=time]{background:var(--quiz-bg-time)}.quiz[data-topic=money]{background:var(--quiz-bg-money)}.quiz__header{display:flex;align-items:center;gap:1rem;width:100%;max-width:500px}.quiz__progress{flex:1;height:12px;background:#ffffff59;border-radius:6px;overflow:hidden}.quiz__progress-bar{height:100%;background:#fff;border-radius:6px;transition:width .3s ease}.quiz__counter{color:#fff;font-weight:700;min-width:40px;text-align:right;text-shadow:0 1px 3px rgba(0,0,0,.2)}.quiz__owl{margin:.5rem 0}.quiz__owl-wrap{display:flex;flex-direction:column;align-items:center;gap:.5rem;margin:2.5rem 0 .5rem;position:relative}.quiz__question{font-size:clamp(1.8rem,6vw,3rem);font-weight:800;color:#fff;text-shadow:1px 2px 6px rgba(0,0,0,.15);text-align:center;max-width:500px;line-height:1.3;background:#ffffff26;border-radius:20px;padding:1rem 1.5rem;width:100%}.quiz__choices{display:grid;grid-template-columns:1fr 1fr;gap:1rem;width:100%;max-width:400px}.choice-btn{padding:1.1rem .75rem;min-height:70px;font-size:1.4rem;font-weight:800;border:none;border-radius:20px;cursor:pointer;font-family:var(--font-display);box-shadow:0 5px 12px #00000026;position:relative;white-space:normal;word-break:break-word;transition:transform .1s,box-shadow .1s;filter:url(#crayon)}.quiz__choices--single{grid-template-columns:1fr}.quiz__choices--single .choice-btn{font-size:1.2rem}.choice-btn--default{background:#fff;color:#333}.choice-btn--default:hover:not(:disabled){transform:scale(1.05);box-shadow:0 8px 18px #0003}.choice-btn--correct{background:var(--color-correct);color:var(--text);animation:btn-bounce .4s cubic-bezier(.36,.07,.19,.97)}.choice-btn--wrong{background:var(--color-wrong);color:var(--text);animation:btn-shake .4s cubic-bezier(.36,.07,.19,.97)}.choice-btn:disabled{cursor:default}.hint-toggle-btn{background:#ffffffe6;border:2px dashed rgba(255,255,255,.6);border-radius:20px;padding:.5rem 1.25rem;font-size:1rem;font-weight:700;cursor:pointer;font-family:inherit;color:#555;transition:transform .1s,background .15s;animation:hint-btn-appear .3s ease;filter:url(#crayon)}.hint-toggle-btn:hover{transform:scale(1.05);background:#fff}@keyframes hint-btn-appear{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.quiz__wrong-actions{display:flex;gap:.75rem;align-items:center;justify-content:center;flex-wrap:wrap}.next-btn{background:#fff;border:none;border-radius:20px;padding:.5rem 1.5rem;font-size:1rem;font-weight:800;cursor:pointer;font-family:inherit;color:#333;box-shadow:0 3px 10px #00000026;transition:transform .1s;animation:hint-btn-appear .3s ease;filter:url(#crayon)}.next-btn:hover{transform:scale(1.05)}.geo-question__wrap{display:flex;justify-content:center;margin:.5rem 0 .25rem}.division-question-visual{display:flex;flex-direction:column;align-items:center;margin:.5rem auto .75rem;padding:.5rem;max-width:340px}.confetti-container{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;overflow:hidden;z-index:100}.confetti-piece{position:absolute;width:10px;height:14px;top:-20px;border-radius:2px;animation:confetti-fall linear forwards}@keyframes confetti-fall{0%{top:-20px;transform:rotate(0) translate(0);opacity:1}to{top:110vh;transform:rotate(720deg) translate(80px);opacity:0}}.result{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.5rem;padding:2rem;background:var(--quiz-bg-addition)}.result[data-topic=addition]{background:var(--quiz-bg-addition)}.result[data-topic=subtraction]{background:var(--quiz-bg-subtraction)}.result[data-topic=multiplication]{background:var(--quiz-bg-multiplication)}.result[data-topic=fractions]{background:var(--quiz-bg-fractions)}.result[data-topic=geometry]{background:var(--quiz-bg-geometry)}.result[data-topic=time]{background:var(--quiz-bg-time)}.result[data-topic=money]{background:var(--quiz-bg-money)}.result__score{font-size:4rem;font-weight:900;color:#fff;text-shadow:2px 2px 8px rgba(0,0,0,.3);font-variant-numeric:tabular-nums}.result__stars{display:flex;gap:.5rem}.result__star{font-size:2.5rem;transition:transform .2s}.result__star--earned{animation:star-pop .4s ease both}.result__star--earned:nth-child(2){animation-delay:.15s}.result__star--earned:nth-child(3){animation-delay:.3s}@keyframes star-pop{0%{transform:scale(0)}70%{transform:scale(1.3)}to{transform:scale(1)}}.result__message{font-size:1.3rem;color:#fff;font-weight:600;text-align:center;max-width:300px;margin:0}.result__actions{display:flex;flex-direction:column;gap:.8rem;width:100%;max-width:280px}.result__trophy{font-size:5rem;line-height:1;animation:trophy-zoom .6s cubic-bezier(.175,.885,.32,1.275)}@keyframes trophy-zoom{0%{transform:scale(0) rotate(-15deg);opacity:0}to{transform:scale(1) rotate(0);opacity:1}}.result__perfect{font-size:2.8rem;font-weight:900;background:linear-gradient(90deg,#ff6b6b,#ffd93d,#6bcb77,#4d96ff,#ff6b6b);background-size:200%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:.05em;animation:rainbow-shift 2s linear infinite,text-pop .4s ease .2s both}@keyframes rainbow-shift{0%{background-position:0%}to{background-position:200%}}@keyframes text-pop{0%{transform:scale(.5);opacity:0}to{transform:scale(1);opacity:1}}.mastery-medal{display:flex;justify-content:center;animation:medal-bounce .7s cubic-bezier(.175,.885,.32,1.275)}@keyframes medal-bounce{0%{transform:scale(0) rotate(-20deg);opacity:0}60%{transform:scale(1.2) rotate(5deg);opacity:1}to{transform:scale(1) rotate(0);opacity:1}}.mastery-title{font-size:1.8rem;font-weight:900;color:#333;margin:.5rem 0 0}.mastery-stars{display:flex;justify-content:center;gap:.4rem;font-size:1.6rem;margin:1rem 0}.mastery-stars span{animation:star-pop-in .4s cubic-bezier(.175,.885,.32,1.275) both}.mastery-stars span:nth-child(1){animation-delay:.1s}.mastery-stars span:nth-child(2){animation-delay:.2s}.mastery-stars span:nth-child(3){animation-delay:.3s}.mastery-stars span:nth-child(4){animation-delay:.4s}.mastery-stars span:nth-child(5){animation-delay:.5s}@keyframes star-pop-in{0%{transform:scale(0) rotate(-30deg)}to{transform:scale(1) rotate(0)}}.mastery-msg{font-size:1rem;color:#666;margin:0 0 1.5rem;line-height:1.4;text-align:center}.result__no-hints-badge{display:inline-flex;align-items:center;gap:.4rem;background:#4ade8040;border:1.5px solid rgba(74,222,128,.6);border-radius:999px;padding:.3rem .75rem;font-size:.9rem;font-weight:700;color:#fff;animation:badge-pop .4s cubic-bezier(.175,.885,.32,1.275) both;animation-delay:.2s}.result__no-hints-icon{font-size:1rem}@keyframes badge-pop{0%{transform:scale(.6);opacity:0}to{transform:scale(1);opacity:1}}.result__topic-tip{background:#ffffff26;border:1.5px solid rgba(255,255,255,.3);border-radius:12px;padding:.75rem 1rem;font-size:.9rem;font-weight:600;color:#fff;text-align:center;max-width:300px;line-height:1.4}.speed-setup{min-height:100vh;display:flex;flex-direction:column;align-items:center;padding:1.5rem;background:var(--speed-bg);gap:1.5rem}.speed-setup__header{text-align:center;margin-top:1rem}.speed-setup__bolt{font-size:3.5rem;animation:bolt-flash 1.5s ease-in-out infinite alternate}@keyframes bolt-flash{0%{filter:drop-shadow(0 0 4px #FFD700)}to{filter:drop-shadow(0 0 16px #FFD700)}}.speed-setup__title{margin:.25rem 0;color:#fff;text-shadow:0 2px 8px rgba(0,0,0,.4)}.speed-setup__subtitle{margin:0;color:#ffffffbf}.speed-setup__grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;width:100%;max-width:380px}.speed-topic-btn{background:var(--card-color);border:3px solid transparent;border-radius:16px;padding:1.25rem .75rem;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:.4rem;font-family:inherit;position:relative;transition:transform .15s,box-shadow .15s,opacity .15s;box-shadow:0 4px 12px #0000004d;filter:url(#crayon)}.speed-topic-btn--on{border-color:#fff;box-shadow:0 4px 20px #ffffff4d;transform:scale(1.03)}.speed-topic-btn--off{opacity:.45;transform:scale(.97)}.speed-topic-btn__emoji{font-size:2rem}.speed-topic-btn__label{font-size:.9rem;font-weight:700;color:#fff;text-shadow:0 1px 4px rgba(0,0,0,.5)}.speed-topic-btn__check{position:absolute;top:6px;right:8px;font-size:.85rem;font-weight:900;color:#fff;text-shadow:0 1px 4px rgba(0,0,0,.5)}.speed-setup>.ui-btn--back{color:#fff;border-color:#ffffff80;box-shadow:2px 3px #ffffff4d}.speed-start-btn{margin-top:.5rem}.speed-quiz{min-height:100vh;display:flex;flex-direction:column;align-items:center;padding:1rem 1.5rem 1.5rem;background:var(--speed-bg);gap:1.25rem}.speed-quiz[data-topic=addition]{background:var(--quiz-bg-addition);transition:background .2s}.speed-quiz[data-topic=subtraction]{background:var(--quiz-bg-subtraction);transition:background .2s}.speed-quiz[data-topic=multiplication]{background:var(--quiz-bg-multiplication);transition:background .2s}.speed-quiz[data-topic=fractions]{background:var(--quiz-bg-fractions);transition:background .2s}.speed-quiz[data-topic=geometry]{background:var(--quiz-bg-geometry);transition:background .2s}.speed-quiz[data-topic=time]{background:var(--quiz-bg-time);transition:background .2s}.speed-quiz[data-topic=money]{background:var(--quiz-bg-money);transition:background .2s}.speed-combo-float{position:fixed;top:38%;left:50%;transform:translate(-50%);font-size:2.2rem;font-weight:900;color:gold;font-family:Fredoka One,cursive;text-shadow:0 2px 8px rgba(0,0,0,.4);animation:combo-float-up .6s ease forwards;pointer-events:none;z-index:20}@keyframes combo-float-up{0%{opacity:1;transform:translate(-50%) translateY(0) scale(1.2)}to{opacity:0;transform:translate(-50%) translateY(-50px) scale(.9)}}.speed-quiz__header{display:flex;align-items:center;justify-content:space-between;width:100%;max-width:440px}.speed-quiz__hearts{display:flex;align-items:center;gap:.2rem}.speed-heart--lost{opacity:.25;filter:grayscale(1)}.speed-quiz__score-wrap{text-align:right;min-width:50px}.speed-quiz__score{font-size:1.6rem;font-weight:900;color:#fff;text-shadow:0 2px 6px rgba(0,0,0,.7)}.speed-quiz__streak{display:flex;align-items:center;gap:.2rem;font-size:.85rem;font-weight:700;color:#f59e0b}.speed-timer{width:100%;max-width:440px;height:8px;background:#ffffff26;border-radius:4px;overflow:hidden}.speed-timer__bar{height:100%;border-radius:4px;transition:width .9s linear,background .3s}.speed-quiz__question{font-size:clamp(1.8rem,6vw,3rem);font-weight:800;color:#1a1a2e;text-align:center;max-width:440px;width:100%;background:#ffffffeb;border-radius:20px;padding:1rem 1.5rem;line-height:1.3;box-shadow:0 4px 16px #00000040}.speed-quiz__choices{display:grid;grid-template-columns:1fr 1fr;gap:1rem;width:100%;max-width:400px}.speed-choice-btn{padding:1rem;font-size:1.4rem;font-weight:800;border:none;border-radius:20px;cursor:pointer;font-family:var(--font-display);transition:transform .1s,box-shadow .1s;box-shadow:0 5px 12px #0003;filter:url(#crayon)}.speed-choice-btn--default{background:#fff;color:#333}.speed-choice-btn--correct{background:var(--color-correct);color:var(--text);animation:btn-bounce .4s cubic-bezier(.36,.07,.19,.97)}.speed-choice-btn--wrong{background:var(--color-wrong);color:var(--text);animation:btn-shake .4s cubic-bezier(.36,.07,.19,.97)}.speed-choice-btn--default:hover:not(:disabled){transform:scale(1.05);box-shadow:0 8px 18px #00000040}.speed-choice-btn:disabled{cursor:default}@keyframes btn-bounce{0%{transform:scale(1)}30%{transform:scale(1.12)}60%{transform:scale(.96)}to{transform:scale(1.04)}}@keyframes btn-shake{0%,to{transform:translate(0)}20%{transform:translate(-6px)}40%{transform:translate(6px)}60%{transform:translate(-4px)}80%{transform:translate(4px)}}.speed-heart--shattering{animation:heart-shatter .4s ease forwards}@keyframes heart-shatter{0%{transform:scale(1) rotate(0);opacity:1}30%{transform:scale(1.4) rotate(-20deg)}60%{transform:scale(.7) rotate(15deg)}to{transform:scale(0) rotate(30deg);opacity:0}}.speed-quit-screen{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem 1.5rem;background:var(--speed-bg);gap:1rem;animation:screen-slide-in .22s ease both}@keyframes quit-icon-flash{0%{filter:drop-shadow(0 0 4px rgba(255,255,255,.4))}to{filter:drop-shadow(0 0 20px rgba(255,255,255,.8))}}@keyframes quit-score-pop{0%{transform:scale(.5);opacity:0}to{transform:scale(1);opacity:1}}.speed-quit-screen__icon{animation:quit-icon-flash 1.5s ease-in-out infinite alternate;margin-bottom:.5rem}.speed-quit-screen__title{color:#fff;font-family:var(--font-display);text-shadow:0 2px 8px rgba(0,0,0,.2);text-align:center;margin:0}.speed-quit-screen__score-label{font-size:1rem;font-weight:700;color:#fff9;text-transform:uppercase;letter-spacing:.1em}.speed-quit-screen__score{line-height:1;animation:quit-score-pop .5s cubic-bezier(.175,.885,.32,1.275);color:#fff;text-shadow:0 2px 12px rgba(0,0,0,.4)}.speed-quit-screen__actions{display:flex;flex-direction:column;gap:.8rem;width:100%;max-width:280px;margin-top:1rem}.speed-quit-screen__actions .ui-btn--secondary{color:#fff;border-color:#ffffff80;box-shadow:3px 4px #ffffff4d}.speed-result{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;padding:2rem;background:var(--speed-bg)}.speed-result__bolt{font-size:4rem;animation:bolt-flash 1.5s ease-in-out infinite alternate}@keyframes bolt-flash{0%{filter:drop-shadow(0 0 4px #FFD700)}to{filter:drop-shadow(0 0 20px #FFD700)}}.speed-result__label{font-size:1rem;font-weight:700;color:#fff9;text-transform:uppercase;letter-spacing:.1em}.speed-result__score{line-height:1;animation:score-pop .5s cubic-bezier(.175,.885,.32,1.275);color:#fff;text-shadow:0 2px 12px rgba(0,0,0,.4)}@keyframes score-pop{0%{transform:scale(.5);opacity:0}to{transform:scale(1);opacity:1}}.speed-result__best{font-size:1rem;color:#ffffff8c;font-weight:600}.speed-result__actions{display:flex;flex-direction:column;gap:.8rem;width:100%;max-width:280px;margin-top:1rem}.speed-result__actions .ui-btn--secondary{color:#fff;border-color:#ffffff80;box-shadow:3px 4px #ffffff4d}.profile-selector{min-height:100vh;display:flex;flex-direction:column;align-items:center;padding:2rem 1.5rem;background:var(--bg);gap:1.5rem}.profile-selector__title{margin:0;margin-top:1rem}.profile-selector__grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;width:100%;max-width:380px}.profile-card{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1.5rem 1rem;border:none;border-radius:20px;background:var(--card-bg, white);cursor:pointer;font-family:inherit;box-shadow:0 4px 14px #0000001a;transition:transform .15s;position:relative;filter:url(#crayon)}.profile-card:hover{transform:scale(1.04)}.profile-card__avatar{font-size:2.8rem;line-height:1}.profile-card__name{font-size:1.1rem;font-weight:700;color:var(--text)}.profile-card__streak{font-size:.8rem;color:#f59e0b;font-weight:700}.profile-card__delete{position:absolute;top:6px;right:8px;background:none;border:none;font-size:1rem;cursor:pointer;opacity:.4;line-height:1}.profile-card__delete:hover{opacity:.9}.profile-add-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.4rem;padding:1.5rem 1rem;border:3px dashed var(--border, #ddd);border-radius:20px;background:transparent;cursor:pointer;font-family:inherit;color:var(--text-muted, #888);transition:border-color .15s;filter:url(#crayon)}.profile-add-btn:hover{border-color:var(--accent, #4FC3F7)}.profile-add-btn__icon{font-size:2rem}.profile-add-btn__label{font-size:.9rem;font-weight:700}.profile-setup{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem 1.5rem;background:var(--bg);gap:1.5rem}.profile-setup__title{text-align:center;margin:0}.profile-setup__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.75rem;max-width:340px;width:100%}.profile-setup__option{aspect-ratio:1;font-size:1.8rem;border:3px solid transparent;border-radius:16px;background:var(--card-bg, white);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .1s,border-color .1s;box-shadow:0 2px 8px #00000014;filter:url(#crayon)}.profile-setup__option--selected{border-color:var(--accent, #4FC3F7);transform:scale(1.1)}.profile-setup__owl-grid{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.profile-setup__owl-card{display:flex;flex-direction:column;align-items:center;gap:.3rem;padding:1rem 1.5rem;border:3px solid transparent;border-radius:20px;background:var(--card-bg, white);cursor:pointer;font-family:inherit;transition:transform .1s;box-shadow:0 2px 8px #00000014;filter:url(#crayon)}.profile-setup__owl-card--selected{border-color:var(--accent, #4FC3F7);transform:scale(1.05)}.profile-setup__owl-name{font-size:1rem;font-weight:700;color:var(--text);text-transform:capitalize}.profile-setup__owl-trait{font-size:.75rem;color:var(--text-muted, #888)}.profile-setup__step-dots{display:flex;gap:.5rem}.profile-setup__dot{width:10px;height:10px;border-radius:50%;background:var(--border, #ddd)}.profile-setup__dot--active{background:var(--accent, #4FC3F7)}.profile-setup__color-swatch{filter:url(#crayon)}.profile-setup__age-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.75rem;width:100%;max-width:300px}.profile-setup__age-btn{aspect-ratio:1;border:3px solid transparent;border-radius:16px;background:var(--card-bg, white);color:var(--text);font-size:1.4rem;font-weight:800;cursor:pointer;font-family:inherit;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px #00000014;filter:url(#crayon);transition:transform .1s,border-color .1s}.profile-setup__age-btn--selected{border-color:var(--accent, #4FC3F7);transform:scale(1.1)}.journey-map{min-height:100vh;overflow-y:auto;-webkit-overflow-scrolling:touch;font-family:Architects Daughter,cursive;background:#04021a}.journey-map__header{position:sticky;top:0;z-index:20;padding:.6rem 1rem;background:#00000080;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:space-between}.journey-map__profile-chip{display:flex;align-items:center;gap:.4rem;background:#ffffff26;border:1.5px solid rgba(255,255,255,.4);border-radius:20px;padding:.25rem .65rem .25rem .35rem;color:#fff;font-family:inherit;font-size:.85rem;font-weight:600;cursor:pointer;white-space:nowrap}.journey-map__profile-chip:hover{background:#ffffff40}.journey-map__header-right{display:flex;align-items:center;gap:.5rem}.journey-map__settings-wrap{position:relative}.journey-map__settings-btn{background:none;border:none;color:#fff;cursor:pointer;padding:.25rem;display:flex;align-items:center;opacity:.85}.journey-map__title{font-family:Architects Daughter,cursive;font-size:1.1rem;color:#ffffffe6;margin:0}.journey-map__freeplay-btn{font-family:Architects Daughter,cursive;font-size:.8rem;color:#fff;background:#fff3;border:2px solid rgba(255,255,255,.6);border-radius:20px;padding:.3rem .75rem;cursor:pointer;transition:background .15s}.journey-map__freeplay-btn:hover{background:#ffffff59}.journey-canvas{position:relative;width:100%;height:1800px;overflow:hidden}.journey-canvas__bg{position:absolute;inset:0;z-index:0;pointer-events:none}.journey-canvas__path{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:1}.journey-stage-node{display:flex;flex-direction:column;align-items:center;gap:.5rem;background:none;border:none;cursor:pointer;padding:0}.journey-stage-node:disabled{cursor:not-allowed}.journey-stage-node__circle{position:relative;width:120px;height:120px;border-radius:50%;display:grid;place-items:center;transition:transform .18s ease,box-shadow .18s ease}.journey-stage-node:not(:disabled) .journey-stage-node__circle:hover{transform:scale(1.1)}@keyframes node-pulse{0%,to{filter:drop-shadow(0 0 8px rgba(255,255,255,.3))}50%{filter:drop-shadow(0 0 20px rgba(255,255,255,.7))}}.journey-stage-node__circle--active{animation:node-pulse 2s ease-in-out infinite}.journey-stage-node__ring{position:absolute;inset:-4px;transform:rotate(-90deg)}.journey-stage-node__inner{display:flex;flex-direction:column;align-items:center;gap:2px;z-index:1}.journey-stage-node__inner svg{width:52px;height:52px}.journey-stage-node__label{font-family:Architects Daughter,cursive;font-size:.7rem;color:#fff;white-space:nowrap;line-height:1}@keyframes ollie-idle{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.journey-ollie--active{animation:ollie-idle 1.8s ease-in-out infinite}.curriculum-stage-screen{min-height:100vh;padding:1rem 1rem 4rem;background:var(--bg)}.curriculum-stage-screen__header{display:flex;justify-content:center;margin:1rem 0 1.5rem}.curriculum-stage-screen__badge{display:flex;flex-direction:column;align-items:center;gap:.2rem;background:var(--card-bg, rgba(255,255,255,.7));border-radius:16px;padding:.75rem 1.5rem;border:2px solid var(--border, #eee)}.curriculum-stage-screen__label{font-size:var(--text-lg, 1.4rem);font-weight:900;color:var(--text)}.curriculum-stage-screen__subtitle{font-size:1rem;font-weight:700;color:var(--accent, #FF9500)}.curriculum-stage-screen__age{font-size:.8rem;color:var(--text-muted, #888)}.curriculum-stage-screen__heading{text-align:center;margin-bottom:1rem}.curriculum-stage-screen__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.75rem;max-width:480px;margin:0 auto}.curriculum-section-card{display:flex;flex-direction:column;align-items:center;gap:.4rem;padding:.9rem .5rem;border-radius:20px;border:2.5px solid var(--border, #ddd);background:var(--card-bg, rgba(255,255,255,.8));cursor:pointer;transition:transform .15s,box-shadow .15s}.curriculum-section-card:hover{transform:scale(1.03);box-shadow:0 4px 16px #0000001a}.curriculum-section-card--complete{border-color:gold;background:linear-gradient(135deg,#fffde7,#fff9c4)}.curriculum-section-card__label{font-size:.82rem;font-weight:800;color:var(--text);text-align:center}.curriculum-section-card__stars{display:flex;gap:2px}.curriculum-section-card__progress{font-size:.68rem;color:var(--text-muted, #999)}.grand-challenge-node{display:flex;justify-content:center;margin-top:2rem;padding-bottom:2rem}.grand-challenge-btn{display:flex;flex-direction:column;align-items:center;gap:.4rem;padding:1rem 2rem;border-radius:20px;border:3px solid var(--accent, #FF9500);background:var(--card-bg, white);cursor:pointer;font-family:inherit;transition:transform .15s,box-shadow .15s;position:relative}.grand-challenge-btn:hover{transform:scale(1.04);box-shadow:0 6px 20px #0000001f}.grand-challenge-btn--passed{border-color:gold;background:linear-gradient(135deg,#fffde7,#fff9c4)}.grand-challenge-btn--optional{border-style:dashed}.grand-challenge-btn__label{font-size:1rem;font-weight:900;color:var(--text)}.grand-challenge-btn__tag{font-size:.65rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--accent, #FF9500);background:#ff95001a;border-radius:10px;padding:.1rem .5rem}.grand-challenge-btn__stars{display:flex;gap:2px}.curriculum-topic-screen{min-height:100vh;display:flex;flex-direction:column;align-items:center;padding:1rem 1rem 4rem;background:var(--map-bg, var(--bg))}.curriculum-topic-screen__header{display:flex;flex-direction:column;align-items:center;gap:.5rem;margin:1rem 0 1.5rem}.curriculum-topic-screen__title{text-align:center;font-size:var(--text-lg, 1.5rem)}.curriculum-level-stop{display:flex;flex-direction:column;align-items:center;gap:.35rem}.curriculum-level-stop__label{font-size:.7rem;font-weight:700;text-align:center;max-width:100px;line-height:1.2;opacity:.75;color:var(--text, #333)}.ceremony{min-height:100vh;display:flex;flex-direction:column;align-items:center;padding:0 1rem 3rem;background:var(--bg)}.ceremony__header{width:100%;max-width:480px;display:flex;align-items:center;gap:1rem;padding:1rem 0}.ceremony__progress{flex:1;height:10px;background:#00000014;border-radius:5px;overflow:hidden}.ceremony__progress-bar{height:100%;background:var(--accent, #FF9500);border-radius:5px;transition:width .3s ease}.ceremony__counter{font-size:.85rem;font-weight:700;color:var(--text-muted, #888);white-space:nowrap}.ceremony__topic-badge{display:flex;align-items:center;gap:.4rem;background:var(--card-bg, rgba(255,255,255,.7));border:2px solid var(--border, #eee);border-radius:20px;padding:.3rem .8rem;font-size:.78rem;font-weight:700;color:var(--text-muted, #888);margin-bottom:.5rem}.ceremony__prompt{font-size:var(--text-lg, 1.4rem);font-weight:800;text-align:center;color:var(--text);margin:.5rem 0 1.5rem;max-width:340px;line-height:1.3}.ceremony__choices{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;width:100%;max-width:340px}.ceremony__choice{padding:.9rem .5rem;border-radius:16px;border:3px solid var(--border, #ddd);background:var(--card-bg, white);font-size:1.1rem;font-weight:800;cursor:pointer;transition:transform .1s;font-family:inherit}.ceremony__choice:active{transform:scale(.96)}.ceremony__choice--correct{border-color:#22c55e;background:#dcfce7}.ceremony__choice--wrong{border-color:#ef4444;background:#fee2e2}.ceremony__choice--disabled{opacity:.5;cursor:default}.ceremony-result{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem 1.5rem;background:var(--bg);text-align:center}.ceremony-result__badge{line-height:1;margin-bottom:.5rem;animation:badge-pop .6s cubic-bezier(.175,.885,.32,1.275)}@keyframes badge-pop{0%{transform:scale(0) rotate(-15deg);opacity:0}to{transform:scale(1) rotate(0);opacity:1}}.ceremony-result__title{font-size:2rem;font-weight:900;color:var(--text);margin:.25rem 0}.ceremony-result__score{font-size:1.3rem;font-weight:700;color:var(--text-muted, #888);margin:.5rem 0 1.5rem}.ceremony-result__actions{display:flex;flex-direction:column;gap:.75rem;width:100%;max-width:280px;margin-top:1rem}.ceremony-result__weak{margin:1rem 0;padding:.75rem 1rem;background:var(--card-bg, rgba(255,255,255,.7));border-radius:14px;border:2px solid var(--border, #eee);max-width:320px;width:100%}.ceremony-result__weak-title{font-size:.82rem;font-weight:700;color:var(--text-muted, #888);margin-bottom:.5rem}.ceremony-result__weak-topics{display:flex;gap:.5rem;justify-content:center;flex-wrap:wrap}.ceremony-result__weak-topic{display:flex;align-items:center;gap:.3rem;background:#fef3c7;border:1.5px solid #F59E0B;border-radius:20px;padding:.25rem .6rem;font-size:.78rem;font-weight:700}:root{--font-display: "Baloo 2", cursive;--font-body: "Be Vietnam Pro", sans-serif;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--text-4xl: 2.25rem;--text-5xl: 3rem;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-6: 24px;--space-8: 32px;--space-12: 48px;--radius-sm: 10px;--radius-md: 16px;--radius-lg: 24px;--radius-xl: 32px;--radius-full: 9999px;--shadow-sm: 0 2px 8px rgba(0,0,0,.08);--shadow-md: 0 4px 16px rgba(0,0,0,.12);--shadow-lg: 0 8px 32px rgba(0,0,0,.2);--container-max: 500px;--color-correct: #34C759;--color-wrong: #FF3B30;--color-star: #FFD700;--color-amber: #D97706;--color-amber-dark: #B45309;--color-star-dark: #B8860B;--color-locked: rgba(0,0,0,.2);--btn-primary-bg: #ff6b9d;--btn-primary-text: #fff;--btn-primary-border: #c0315f;--btn-secondary-bg: transparent;--btn-secondary-border: currentColor;--card-border-color: var(--accent, #7C5CF5);--card-shadow: 4px 6px 0 rgba(0,0,0,.18);--heading-shadow: 2px 3px 0 rgba(0,0,0,.12)}@media(min-width:640px){:root{--text-base: 1.0625rem;--container-max: 680px}}[data-theme=candy]{--bg: #F9F3FF;--card-bg: #FFFFFF;--border: #E0D5F0;--text: #1A1A2E;--text-muted: #888;--text-on-dark: #FFFFFF;--accent: #7C5CF5;--home-bg: linear-gradient(135deg, #667eea 0%, #764ba2 100%);--speed-bg: linear-gradient(160deg, #1D1D2E 0%, #2D1B69 100%);--quiz-bg-addition: linear-gradient(160deg, #FFD60A 0%, #FF9F0A 100%);--quiz-bg-subtraction: linear-gradient(160deg, #64D2FF 0%, #0A84FF 100%);--quiz-bg-multiplication: linear-gradient(160deg, #DA8FFF 0%, #7D5CF5 100%);--quiz-bg-fractions: linear-gradient(160deg, #5DE6D0 0%, #00B4A0 100%);--quiz-bg-geometry: linear-gradient(160deg, #F9A8D4 0%, #EC4899 100%);--quiz-bg-time: linear-gradient(160deg, #FCD34D 0%, #F59E0B 100%);--quiz-bg-money: linear-gradient(160deg, #6EE7B7 0%, #059669 100%);--map-scene-bg: radial-gradient(ellipse 110px 55px at 12% 9%, rgba(255,255,255,.92) 0%, rgba(255,255,255,0) 65%), radial-gradient(ellipse 90px 45px at 30% 6%, rgba(255,255,255,.85) 0%, rgba(255,255,255,0) 65%), radial-gradient(ellipse 140px 70px at 68% 11%, rgba(255,255,255,.92) 0%, rgba(255,255,255,0) 65%), radial-gradient(ellipse 80px 40px at 88% 5%, rgba(255,255,255,.8) 0%, rgba(255,255,255,0) 65%), radial-gradient(circle 38px at 88% 9%, #FDE68A 0%, #FCD34D 50%, rgba(252,211,77,0) 100%), radial-gradient(ellipse 80% 35% at 20% 100%, rgba(134,239,172,.75) 0%, transparent 60%), radial-gradient(ellipse 80% 35% at 82% 100%, rgba( 74,222,128,.75) 0%, transparent 60%), radial-gradient(ellipse 90% 32% at 50% 106%, rgba(34,197,94,.88) 0%, transparent 55%), linear-gradient(180deg, #93C5FD 0%, #BAE6FD 25%, #E0F2FE 50%, #FEF9C3 68%, #D9F99D 84%, #BBF7D0 100%);--map-bg-image: url(/images/candy/map-bg.svg);--map-path-color: rgba(255,255,255,.55);--world-btn-bg: #FFFFFF;--world-btn-border: rgba(124,92,245,.18);--color-correct: #4ADE80;--color-wrong: #F87171;--btn-primary-bg: #FF6B9D;--btn-primary-text: #fff;--btn-primary-border: #C0315F;--btn-secondary-bg: transparent;--btn-secondary-border: #C0315F;--card-border-color: #C0315F;--card-shadow: 4px 6px 0 rgba(192,49,95,.22);--heading-shadow: 2px 3px 0 rgba(192,49,95,.18)}[data-theme=space]{--bg: #0D0D2B;--card-bg: #1A1A3E;--border: #2A2A5A;--text: #E8E8FF;--text-muted: #8888BB;--text-on-dark: #FFFFFF;--accent: #00E5FF;--home-bg: linear-gradient(135deg, #0D0D2B 0%, #1A0533 100%);--speed-bg: linear-gradient(160deg, #030314 0%, #0A0028 100%);--quiz-bg-addition: linear-gradient(160deg, #3D0020 0%, #FF2D78 100%);--quiz-bg-subtraction: linear-gradient(160deg, #003344 0%, #00E5FF 100%);--quiz-bg-multiplication: linear-gradient(160deg, #1A0033 0%, #BF5AF2 100%);--quiz-bg-fractions: linear-gradient(160deg, #002200 0%, #30D158 100%);--quiz-bg-geometry: linear-gradient(160deg, #3D0030 0%, #DB2777 100%);--quiz-bg-time: linear-gradient(160deg, #2D1500 0%, #D97706 100%);--quiz-bg-money: linear-gradient(160deg, #002211 0%, #047857 100%);--map-scene-bg: radial-gradient(circle 1.5px at 8% 12%, #fff 100%, transparent 100%), radial-gradient(circle 1px at 18% 6%, rgba(255,255,255,.8) 100%, transparent 100%), radial-gradient(circle 2px at 28% 18%, #fff 100%, transparent 100%), radial-gradient(circle 1px at 38% 9%, rgba(255,255,255,.7) 100%, transparent 100%), radial-gradient(circle 2px at 52% 4%, #fff 100%, transparent 100%), radial-gradient(circle 1.5px at 63% 14%, rgba(255,255,255,.9) 100%, transparent 100%), radial-gradient(circle 1px at 72% 22%, rgba(255,255,255,.7) 100%, transparent 100%), radial-gradient(circle 2px at 82% 8%, #fff 100%, transparent 100%), radial-gradient(circle 1px at 93% 18%, rgba(255,255,255,.85) 100%, transparent 100%), radial-gradient(circle 1.5px at 5% 32%, rgba(255,255,255,.7) 100%, transparent 100%), radial-gradient(circle 1px at 15% 45%, #fff 100%, transparent 100%), radial-gradient(circle 2px at 35% 38%, rgba(255,255,255,.8) 100%, transparent 100%), radial-gradient(circle 1px at 58% 42%, rgba(255,255,255,.65) 100%, transparent 100%), radial-gradient(circle 2px at 75% 35%, #fff 100%, transparent 100%), radial-gradient(circle 1px at 95% 40%, rgba(255,255,255,.75) 100%, transparent 100%), radial-gradient(circle 1.5px at 48% 55%, rgba(255,255,255,.7) 100%, transparent 100%), radial-gradient(circle 1px at 20% 62%, rgba(255,255,255,.6) 100%, transparent 100%), radial-gradient(circle 2px at 88% 58%, #fff 100%, transparent 100%), radial-gradient(circle 3px at 42% 28%, rgba(200,180,255,.95) 100%, transparent 100%), radial-gradient(circle 2px at 67% 48%, rgba(180,220,255,.9) 100%, transparent 100%), radial-gradient(circle 22px at 80% 28%, #9B59F5 0%, #6C3BC2 60%, transparent 100%), radial-gradient(circle 34px at 80% 28%, rgba(155,89,245,.22) 0%, transparent 100%), radial-gradient(ellipse 200px 100px at 25% 55%, rgba(79,0,200,.09) 0%, transparent 100%), radial-gradient(ellipse 150px 70px at 68% 50%, rgba(0,80,220,.08) 0%, transparent 100%), linear-gradient(180deg, #03030F 0%, #0D0D2B 30%, #0F082E 65%, #070420 100%);--map-bg-image: url(/images/space/map-bg.svg);--map-path-color: rgba(100,200,255,.3);--world-btn-bg: #1A1A3E;--world-btn-border: rgba(0,229,255,.2);--color-correct: #22C55E;--color-wrong: #EF4444;--btn-primary-bg: #7C3AED;--btn-primary-text: #fff;--btn-primary-border: #4C1D95;--btn-secondary-bg: transparent;--btn-secondary-border: #7C3AED;--card-border-color: #7C3AED;--card-shadow: 4px 6px 0 rgba(76,29,149,.4);--heading-shadow: 2px 3px 0 rgba(124,58,237,.28)}*,*:before,*:after{box-sizing:border-box}html{overscroll-behavior:none}body{margin:0;font-family:var(--font-body);-webkit-font-smoothing:antialiased;transition:background .4s;overscroll-behavior:none;user-select:none;-webkit-user-select:none}button{font-family:inherit}h1,h2,.quiz__question,.speed-quiz__question,.speed-quiz__score,.speed-result__score,.level-node__number,.result__score,.result__perfect,.kingdom-map__title,.topic-screen__title,.topic-screen__speed-title{font-family:var(--font-display)}.profile-setup .back-btn,.profile-selector .back-btn,.world-entry .back-btn{background:var(--card-bg);color:var(--text);box-shadow:var(--shadow-sm)}.profile-setup .back-btn:hover,.profile-selector .back-btn:hover,.world-entry .back-btn:hover{background:var(--border)}.home,.topic-screen,.quiz,.result,.speed-setup,.speed-quiz,.speed-result{animation:screen-slide-in .22s ease both}@keyframes screen-slide-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}button{transition:transform .1s;min-height:48px}button:active:not(:disabled){transform:scale(.97)}:focus-visible{outline:3px solid rgba(255,255,255,.85);outline-offset:3px;border-radius:4px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
