@import "https://fonts.googleapis.com/css2?family=Fredoka:wght@400;500;600;700&display=swap";#app{position:relative;top:0;left:0}#background{z-index:-1;pointer-events:none;min-height:100dvh;position:fixed;inset:0}.page-bg-primary,.page-primary{background:var(--ww-background,#dcf3ef);margin:0}.page-bg-rekenen,.page-rekenen{background:#fff7b3;background:var(--gradient-rekenen)}.page-bg-taal,.page-taal{background:var(--gradient-taal)}.page-bg-playground,.page-playground{background:#ff6b6b;background:var(--gradient-playground)}.page-bg-secondary,.page-secondary{background-color:#4ecdc4}.themed-page-background{isolation:isolate;position:relative;background:0 0!important}.themed-page-background:before{z-index:-1;pointer-events:none;content:"";background:var(--page-background,transparent);min-height:100dvh;position:fixed;inset:0}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-text-size-adjust:100%;height:100%;min-height:100%;font-size:16px}body{font-family:var(--font-family);background-color:var(--ww-background,#dcf3ef);color:var(--color-text);line-height:var(--line-height-normal);touch-action:pan-x pan-y;-webkit-tap-highlight-color:transparent;-webkit-overflow-scrolling:touch;min-height:100vh;padding-top:var(--safe-area-top-adjusted);padding-left:var(--safe-area-inset-left);padding-right:var(--safe-area-inset-right);padding-bottom:var(--safe-area-inset-bottom);position:relative;overflow-x:hidden}div,h1,h2,h3,h4,h5,h6,p,span{-webkit-user-select:text;user-select:text}a,button{touch-action:manipulation;-webkit-tap-highlight-color:transparent}.btn:active,.game-button:active,.level-button:active,.profile-card:active,a:active,button:active,.btn:focus:not(:focus-visible),a:focus:not(:focus-visible),button:focus:not(:focus-visible){outline:none}@media (hover:hover) and (pointer:fine){.btn-ghost:hover,.btn-primary:hover,.btn-secondary:hover,.btn:hover,.emoji-option:hover,.game-button:hover,.level-card:hover,.profile-card:hover,.world-card:hover,a:hover,button:hover{cursor:pointer}}@media (hover:none){.btn:active,a:active,button:active{opacity:.8;transition:none;transform:scale(.95)}.btn-primary:active{filter:brightness(.9)}.game-button:active,.level-card:active,.profile-card:active,.world-card:active{transform:scale(.98)}}.glass-surface{background:var(--color-surface-glass);-webkit-backdrop-filter:blur(var(--blur-md))}.card{background:var(--color-surface);border-radius:var(--radius-lg);padding:var(--spacing-lg);box-shadow:var(--shadow-md)}.card-glass{padding:var(--spacing-lg)}.card-glass,.page-header{background:var(--color-surface-glass);-webkit-backdrop-filter:blur(var(--blur-md));backdrop-filter:blur(var(--blur-md));border-radius:var(--radius-lg)}.page-header{margin-bottom:var(--spacing-xl);padding:var(--spacing-md);justify-content:space-between;align-items:center;gap:var(--spacing-md);display:flex}.page-header h1{font-size:var(--font-size-3xl);color:var(--color-text-inverse);margin:0}.btn,.page-header h1{font-weight:var(--font-weight-semibold)}.btn{justify-content:center;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-sm);font-family:var(--font-family);font-size:var(--font-size-base);cursor:pointer;transition:all var(--transition-base);border:none;text-decoration:none;display:inline-flex}.btn-primary{background:var(--color-primary);color:var(--color-text-inverse)}.btn-primary:hover{background:var(--color-primary-dark);transform:translateY(-2px)}.btn-secondary{background:var(--color-surface);color:var(--color-text);border:var(--border-width-medium) solid var(--color-border)}.btn-secondary:hover{background:var(--color-border)}.btn-ghost{color:var(--color-text-inverse);background:#fff3}.btn-ghost:hover{background:#ffffff4d}.btn:disabled{opacity:var(--opacity-disabled);cursor:not-allowed}.form-group{margin-bottom:var(--spacing-lg)}.form-label{margin-bottom:var(--spacing-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-inverse);display:block}.form-input,.form-select{width:100%;padding:var(--spacing-sm) var(--spacing-md);border:var(--border-width-medium) solid var(--color-border);border-radius:var(--radius-sm);font-family:var(--font-family);font-size:var(--font-size-base);background:var(--color-surface);color:var(--color-text);transition:border-color var(--transition-base)}.form-input:focus,.form-select:focus{border-color:var(--color-primary);outline:none}.modal-overlay{z-index:var(--z-modal);padding:var(--spacing-md);background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal{background:var(--color-surface-glass);-webkit-backdrop-filter:blur(var(--blur-md));backdrop-filter:blur(var(--blur-md));padding:var(--spacing-xl);border-radius:var(--radius-lg);width:100%;max-width:500px;animation:.3s ease-out slideInUp}.modal h2{margin-bottom:var(--spacing-lg);font-size:var(--font-size-2xl)}.coins,.modal h2{color:var(--color-text-inverse)}.coins{align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-sm);font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);white-space:nowrap;background:#fff3;display:flex}.coin-icon{font-size:1.5rem}.coin-count{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-text-inverse)}.stat,.stat-card{align-items:center;gap:var(--spacing-md);padding:var(--spacing-lg);background:var(--color-surface-glass);-webkit-backdrop-filter:blur(var(--blur-md));backdrop-filter:blur(var(--blur-md));border-radius:var(--radius-md);display:flex}.stat-icon{font-size:2.5rem}.stat-value{font-size:var(--font-size-4xl);font-weight:var(--font-weight-bold);color:var(--color-text-inverse);margin:0}.stat-label{font-size:var(--font-size-sm);color:var(--color-text);text-transform:uppercase;letter-spacing:.05em;margin:0}.stat-item{gap:var(--spacing-sm);padding:var(--spacing-md);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);border-radius:var(--radius-md);background:#ffffff80;border:1px solid #fffc;flex-direction:column;display:flex}.stat-item .stat-label{color:#666}.stat-item .stat-value{font-size:var(--font-size-2xl);color:var(--color-primary)}.container{z-index:0;margin:0 auto;position:relative}.game-button,.interactive-card,.world-card{padding:var(--spacing-lg);background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);transition:all var(--transition-base);cursor:pointer;border:3px solid #0000;position:relative}@media (width>=768px){.game-button,.interactive-card,.world-card{padding:var(--spacing-xl)}}.game-button:not(:disabled):hover,.interactive-card:hover,.world-card:not(.locked):hover{box-shadow:var(--shadow-xl);transform:translateY(-4px)}.game-button:disabled,.world-card.locked{opacity:.6;cursor:not-allowed}.button-content h2,.card-title,.world-header h2{font-size:var(--font-size-3xl);margin:0 0 var(--spacing-sm) 0;font-weight:var(--font-weight-semibold)}.button-content p,.card-description,.world-description{font-size:var(--font-size-lg);margin-bottom:var(--spacing-lg)}.progress-section{max-width:1000px;padding:var(--spacing-md);margin:0 auto}@media (width>=768px){.progress-section{padding:var(--spacing-lg)}}.progress-section h2{font-size:var(--font-size-3xl);color:var(--color-text-inverse);margin-bottom:var(--spacing-xl);text-align:center;max-width:100%}.progress-stats,.quick-stats,.stats-grid{gap:var(--spacing-lg);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));display:grid}@media (width<=640px){.progress-stats,.quick-stats,.stats-grid{gap:var(--spacing-md);grid-template-columns:1fr}}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}:focus:not(:focus-visible),*,:focus{outline:none}:focus-visible{outline:3px solid var(--color-accent);outline-offset:2px}button{cursor:pointer;font-family:inherit;font-size:inherit;background:0 0;border:none}.text-center{text-align:center}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.gap-1{gap:.5rem}.gap-2{gap:1rem}.gap-4{gap:2rem}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes shake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-5px)}20%,40%,60%,80%{transform:translate(5px)}}.animate-fadeIn{animation:.3s ease-out fadeIn}.animate-slideInUp{animation:.4s ease-out slideInUp}.animate-bounce{animation:.6s ease-in-out infinite bounce}.animate-pulse{animation:2s ease-in-out infinite pulse}.animate-shake{animation:.5s ease-in-out shake}@media (prefers-reduced-motion:reduce){*,:after,:before{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.page-container{min-height:100vh;padding:var(--spacing-sm)}@media (width>=768px){.page-container{padding:var(--spacing-lg)}}.main-menu-page{min-height:100vh;padding:.75rem}@media (width>=768px){.main-menu-page{padding:1rem}}.emoji-grid{justify-content:center;gap:var(--spacing-sm);flex-wrap:wrap;padding:0;display:flex}.emoji-grid button{flex:60px;max-width:60px}.emoji-option{border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);aspect-ratio:1;background:#fff3;border:2px solid #0000;justify-content:center;align-items:center;padding:.75rem .5rem;font-size:1.5rem;display:flex}@media (width>=768px){.emoji-option{font-size:1.8rem}}.emoji-option.selected,.emoji-option:hover{border-color:var(--color-primary);transform:scale(1.1)}.auth-card,.intro-card{background:var(--color-surface);border-radius:var(--radius-lg);padding:var(--spacing-xl);box-shadow:var(--shadow-lg);max-width:600px;margin:0 auto}@media (width>=768px){.auth-card,.intro-card{padding:var(--spacing-xl)}}.auth-header,.intro-header{text-align:center;margin-bottom:var(--spacing-xl)}.auth-header .intro-icon,.intro-header .intro-icon{margin-bottom:var(--spacing-md);font-size:4rem;display:block}.auth-header h2,.intro-header h2{font-size:var(--font-size-3xl);color:var(--color-text);margin:0}.intro-stats{gap:var(--spacing-md);margin:var(--spacing-xl) 0;grid-template-columns:repeat(2,1fr);display:grid}@media (width<=640px){.intro-stats{grid-template-columns:1fr}}.intro-story{font-size:var(--font-size-lg);line-height:var(--line-height-relaxed);color:var(--color-text);margin-bottom:var(--spacing-xl);text-align:center}.profiles-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:.75rem;display:grid}@media (width>=768px){.profiles-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:1rem}}.profile-card{align-items:center;gap:var(--spacing-sm);background:var(--color-surface-glass);-webkit-backdrop-filter:blur(var(--blur-md));backdrop-filter:blur(var(--blur-md));border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-base);border:2px solid #0000;flex-direction:column;padding:1rem;display:flex}@media (width>=768px){.profile-card{border:3px solid #0000;padding:1.5rem}}.profile-card:focus,.profile-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-md);transform:translateY(-4px)}.profile-card.create-new{border:3px dashed var(--color-border);opacity:.7}.profile-card.create-new:hover{opacity:1;border-color:var(--color-secondary)}.profile-emoji{font-size:3rem}.profile-emoji,.profile-name{color:var(--color-text-inverse)}.profile-name{font-size:1rem;font-weight:var(--font-weight-semibold)}.levels-grid,.worlds-grid{gap:var(--spacing-lg);grid-template-columns:1fr;display:grid}@media (width>=768px){.levels-grid,.worlds-grid{grid-template-columns:repeat(2,1fr)}}@media (width>=1024px){.levels-grid,.worlds-grid{grid-template-columns:repeat(3,1fr)}}.level-card,.world-card{padding:var(--spacing-lg);background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);transition:all var(--transition-base);cursor:pointer;color:inherit;border:3px solid #0000;text-decoration:none;position:relative}@media (width>=768px){.level-card,.world-card{padding:var(--spacing-xl)}}.level-card:not(.locked):hover,.world-card:not(.locked):hover{box-shadow:var(--shadow-xl);transform:translateY(-4px)}.level-card.locked,.world-card.locked{opacity:.6;cursor:not-allowed}.level-icon,.world-icon{margin-bottom:var(--spacing-md);font-size:3rem;display:block}.level-header h2,.world-header h2{font-size:var(--font-size-3xl);margin:0 0 var(--spacing-sm) 0;font-weight:var(--font-weight-semibold)}.level-description,.world-description{font-size:var(--font-size-lg);margin-bottom:var(--spacing-lg)}.btn-start-large{width:100%;padding:var(--spacing-lg) var(--spacing-xl);background:var(--gradient-primary);color:var(--color-text-inverse);border-radius:var(--radius-md);font-family:var(--font-family);font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);cursor:pointer;transition:all var(--transition-base);box-shadow:var(--shadow-md);border:none}.btn-start-large:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.btn-start-large:active{transform:translateY(0)}.btn-icon{border-radius:var(--radius-full);cursor:pointer;width:2.5rem;height:2.5rem;transition:all var(--transition-base);font-size:var(--font-size-xl);background:#fff3;border:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.btn-icon:hover{background:#ffffff4d;transform:scale(1.1)}.greeting-banner{width:100%;font-weight:var(--font-weight-semibold);color:var(--color-text-inverse);margin-bottom:var(--spacing-xl);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:.75rem;font-size:2rem;display:flex}.greeting-banner .greeting-emoji{font-size:4rem}@media (width>=768px){.greeting-banner{flex-direction:row}.greeting-banner .greeting-emoji{font-size:2rem}}.error-message{border:2px solid var(--color-error);border-radius:var(--radius-md);color:var(--color-error);font-weight:var(--font-weight-semibold);text-align:center;margin-bottom:var(--spacing-md);background:#fee;padding:1rem;animation:.4s shake}.admin-section{background:var(--color-surface);border-radius:var(--radius-xl);padding:var(--spacing-2xl);box-shadow:var(--shadow-lg);margin-bottom:var(--spacing-2xl)}.admin-section h2{margin-bottom:var(--spacing-lg);font-size:var(--font-size-2xl);color:var(--color-primary)}.admin-section h3{margin-bottom:var(--spacing-md);font-size:var(--font-size-xl);color:var(--color-primary)}.tassie-help-button{bottom:calc(var(--safe-area-inset-bottom,0px) + 1.5rem);right:calc(var(--safe-area-inset-right,0px) + 1rem);background:var(--ww-paper,#fffdf5);width:44px;height:44px;color:var(--ww-teal,#167c80);cursor:pointer;box-shadow:var(--ww-shadow);z-index:100;border:3px solid #fff;border-radius:1rem;justify-content:center;align-items:center;font-size:1.25rem;font-weight:700;transition:all .2s;display:flex;position:fixed}.tassie-help-button:hover{transform:scale(1.1);box-shadow:0 6px 20px #214f5522}.tassie-help-button:active{transform:scale(.95)}.tassie-help-button.small{border-width:2px;width:36px;height:36px;font-size:1rem}.game-page{min-height:100vh;padding:var(--spacing-md)}.game-center,.game-results{text-align:center;max-width:820px;margin:2rem auto}.game-content{text-align:center;width:min(100%,1100px);margin:2rem auto}.exercise-number{color:#fff;text-shadow:0 2px 4px #0003;margin-bottom:1rem;font-weight:600}.prompt-text{margin-bottom:1.5rem;font-size:1.25rem;font-weight:600;line-height:1.4}@media (width>=768px){.prompt-text{margin-bottom:2rem;font-size:1.5rem}}.prompt-math{margin-bottom:1.5rem;font-family:Courier New,monospace;font-size:2rem;font-weight:700}@media (width>=768px){.prompt-math{margin-bottom:2rem;font-size:2.5rem}}.prompt-emoji{margin-bottom:1.5rem;font-size:3rem}@media (width>=768px){.prompt-emoji{margin-bottom:2rem;font-size:4rem}}.prompt-visual{letter-spacing:.25rem;margin-bottom:1.5rem;font-size:2.5rem}@media (width>=768px){.prompt-visual{margin-bottom:2rem;font-size:3rem}}.game-options{gap:.75rem;margin-top:1.5rem;display:grid}@media (width>=768px){.game-options{gap:1rem;margin-top:2rem}}.game-option{font-size:1.25rem;font-weight:700;font-family:var(--font-family);cursor:pointer;background:#fff;border:3px solid #e0e0e0;border-radius:1rem;padding:1rem;transition:all .2s}@media (width>=768px){.game-option{padding:1.5rem;font-size:1.5rem}}.game-option:hover:not(:disabled){background:#e8f5e9;border-color:#4caf50;transform:scale(1.02)}.game-option:disabled{opacity:.6;cursor:not-allowed}.game-option:active:not(:disabled){transform:scale(.98)}.results-card{text-align:center;background:#fff;border-radius:1.5rem;padding:2rem 1.5rem;box-shadow:0 8px 32px #0000001a}@media (width>=768px){.results-card{padding:3rem 2rem}}.results-card h1{margin-bottom:1rem;font-size:2rem}@media (width>=768px){.results-card h1{font-size:2.5rem}}.results-card .score{color:#4caf50;margin:1rem 0;font-size:3rem;font-weight:700}@media (width>=768px){.results-card .score{font-size:4rem}}.results-card p{color:#666;margin-bottom:1.5rem;font-size:1.25rem}@media (width>=768px){.results-card p{margin-bottom:2rem;font-size:1.5rem}}.results-card .coins-earned{color:#ff9800;margin:.5rem 0;font-size:1.5rem;font-weight:700}@media (width>=768px){.results-card .coins-earned{font-size:1.8rem}}.game-results.treasure-results{width:100%;max-width:1120px;margin-block:clamp(.75rem,2vh,1.5rem)}.results-card--treasure{background:#fffffff2;border:4px solid #ffffffb8;border-radius:clamp(1.5rem,3vw,2.25rem);width:100%;padding:clamp(1rem,2.5vw,1.75rem)}.results-card--treasure .result-score-strip{flex-wrap:wrap;justify-content:center;align-items:center;gap:.55rem;margin:0 0 .55rem;display:flex}.results-card--treasure .result-score-strip .attempts,.results-card--treasure .result-score-strip .coins-earned,.results-card--treasure .result-score-strip .score{color:#286050;background:#e7f7ec;border:3px solid #fff;border-radius:999px;justify-content:center;align-items:center;min-height:42px;margin:0;padding:.35rem .85rem;font-size:clamp(1rem,2vw,1.3rem);line-height:1;display:inline-flex;box-shadow:0 4px #214f551f}.results-card--treasure .result-score-strip .coins-earned{color:#9a5a00;background:#fff1bd}.results-card--treasure .result-score-strip .attempts{color:#4c4c85;background:#eeebff}.results-card--treasure.results-card--treasure>.reward-banner.reward-banner{border-width:2px;border-radius:999px;width:auto;min-height:54px;margin:.2rem auto 0;padding:.4rem .75rem;display:inline-flex;box-shadow:0 4px #704c1224}.results-card--treasure.results-card--treasure>.reward-banner.reward-banner .reward-emoji{font-size:2rem}@media (width<=620px){.results-card--treasure{padding:.65rem}.results-card--treasure .result-score-strip{gap:.35rem;margin-bottom:.35rem}.results-card--treasure .result-score-strip .attempts,.results-card--treasure .result-score-strip .coins-earned,.results-card--treasure .result-score-strip .score{border-width:2px;min-height:36px;padding:.25rem .65rem;font-size:.9rem}}.results-actions{flex-wrap:wrap;justify-content:center;gap:1rem;display:flex}.results-actions button{font-size:1.1rem;font-weight:700;font-family:var(--font-family);cursor:pointer;border:none;border-radius:.75rem;padding:.875rem 1.5rem;transition:all .2s}@media (width>=768px){.results-actions button{padding:1rem 2rem;font-size:1.2rem}}.results-actions button:hover{transform:scale(1.05)}.results-actions .btn-primary{color:#fff;background:#4caf50}.results-actions .btn-primary:hover{background:#43a047}.results-actions .btn-secondary{color:#333;background:#e0e0e0}.results-actions .btn-secondary:hover{background:#d0d0d0}.highlight-active{border-radius:var(--radius-md);animation:1.5s ease-in-out infinite guide-highlight-pulse;position:relative;z-index:10000!important}@keyframes guide-highlight-pulse{0%,to{box-shadow:0 0 0 4px #667eea99,0 0 20px #667eea66}50%{box-shadow:0 0 0 8px #667eea4d,0 0 30px #667eea33}}:root{--safe-area-inset-top:env(safe-area-inset-top);--safe-area-inset-right:env(safe-area-inset-right);--safe-area-inset-bottom:env(safe-area-inset-bottom);--safe-area-inset-left:env(safe-area-inset-left);--safe-area-top-adjusted:max(5px, calc(env(safe-area-inset-top) - 5px));--color-primary:#667eea;--color-primary-dark:#5568d3;--color-primary-light:#8097f0;--color-primary-rgb:102, 126, 234;--color-secondary:#4ecdc4;--color-secondary-dark:#3db8af;--color-secondary-light:#6fd9d1;--color-secondary-rgb:78, 205, 196;--color-accent:#ffe66d;--color-accent-dark:#f0d45a;--color-accent-light:#fff080;--color-accent-rgb:255, 230, 109;--color-success:#06d6a0;--color-success-light:#4caf50;--color-success-rgb:6, 214, 160;--color-error:#ef476f;--color-error-light:#f44336;--color-error-rgb:239, 71, 111;--color-warning:orange;--color-warning-light:#f39c12;--color-warning-rgb:255, 165, 0;--color-info:#4ecdc4;--color-info-light:#3498db;--color-info-rgb:78, 205, 196;--color-bg:#fff8f0;--color-bg-alt:#f8f9fa;--color-surface:#fff;--color-surface-rgb:255, 255, 255;--color-surface-glass:var(--color-overlay-dark-medium);--color-surface-elevated:#fff;--color-text:#2d3142;--color-text-light:#5a6175;--color-text-inverse:#fff;--color-text-rgb:45, 49, 66;--color-border:#e8ded2;--color-border-light:#dee2e6;--color-divider:#e0e0e0;--color-overlay-light:#ffffff1a;--color-overlay-medium:#fff3;--color-overlay-strong:#ffffff4d;--color-overlay-opaque:#ffffff80;--color-overlay-solid:#ffffffb3;--color-overlay-bright:#fffc;--color-overlay-near-white:#fffffff2;--color-overlay-dark-light:#0000000d;--color-overlay-dark-medium:#0000001a;--color-overlay-dark-strong:#0003;--color-overlay-dark-opaque:#00000080;--color-overlay-dark-modal:#000000b3;--color-success-alpha-light:#06d6a033;--color-success-alpha-medium:#4caf50f2;--color-error-alpha-light:#ef476f33;--color-warning-alpha-light:#ff9800f2;--color-bg-error:#fff5f5;--color-bg-error-light:#fee;--color-bg-success:#d4edda;--color-bg-danger:#f8d7da;--color-bg-info:#e3f2fd;--color-bg-muted:#d4cabe;--color-bg-orange:#e67e22;--text-shadow-sm:2px 2px 4px #0000004d;--text-shadow-md:3px 3px 6px #0003;--text-shadow-lg:4px 4px 8px #00000040;--spacing-xs:.25rem;--spacing-sm:.5rem;--spacing-md:1rem;--spacing-lg:1.5rem;--spacing-xl:2rem;--spacing-2xl:3rem;--spacing-3xl:4rem;--font-family:"Fredoka", sans-serif;--font-size-xs:.75rem;--font-size-sm:.875rem;--font-size-base:1rem;--font-size-lg:1.125rem;--font-size-xl:1.25rem;--font-size-2xl:1.5rem;--font-size-3xl:1.75rem;--font-size-4xl:2rem;--font-size-5xl:2.5rem;--font-size-6xl:3rem;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--line-height-tight:1.2;--line-height-normal:1.5;--line-height-relaxed:1.6;--shadow-color:0, 0, 0;--shadow-sm:0 2px 4px rgba(var(--shadow-color), .1);--shadow-md:0 4px 8px rgba(var(--shadow-color), .12);--shadow-lg:0 8px 16px rgba(var(--shadow-color), .15);--shadow-xl:0 12px 24px rgba(var(--shadow-color), .18);--shadow-2xl:0 10px 40px rgba(var(--shadow-color), .2);--shadow-focus:0 0 0 3px rgba(var(--color-primary-rgb), .1);--blur-sm:5px;--blur-md:10px;--blur-lg:20px;--opacity-disabled:.5;--opacity-hover:.8;--opacity-subtle:.6;--opacity-muted:.9;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:24px;--radius-2xl:32px;--radius-full:9999px;--border-width-thin:1px;--border-width-medium:2px;--border-width-thick:3px;--border-width-heavy:4px;--transition-fast:.15s ease-out;--transition-base:.25s ease-out;--transition-slow:.35s ease-out;--z-dropdown:1000;--z-modal:2000;--z-tooltip:3000;--z-notification:4000;--z-helper:4000;--gradient-primary:linear-gradient(135deg, #667eea, #764ba2);--gradient-secondary:linear-gradient(135deg, #4ecdc4, #e8f4f3);--gradient-accent:linear-gradient(135deg, #ffe66d, #fff8f0);--gradient-warm:linear-gradient(135deg, var(--color-accent) 0%, var(--color-secondary) 100%);--gradient-rekenen:linear-gradient(135deg, #66a6ff, #66a6ff 50%, #89f7fe);--gradient-playground:linear-gradient(135deg, #ff9f43, #feca57 50%, #ff6b6b);--gradient-taal:linear-gradient(135deg, var(--color-accent) 0%, var(--color-secondary) 100%);--gradient-success:linear-gradient(90deg, #4caf50, #8bc34a 50%, #ffc107);--gradient-world-green:linear-gradient(135deg, #a8e6cf, #e8f5e9);--gradient-world-blue:linear-gradient(135deg, #81c4e8, #e3f2fd);--gradient-world-yellow:linear-gradient(135deg, #ffd966, #fff3e0);--gradient-world-purple:linear-gradient(135deg, #e1bee7, #f3e5f5);--color-glass-bg:var(--color-overlay-dark-medium);--color-glass-text:var(--color-text-inverse);--color-muted-text:rgba(var(--color-surface-rgb), .8);--color-input-bg:var(--color-surface);--color-input-border:var(--color-border);--color-input-focus:var(--color-primary);--icon-sm:1.5rem;--icon-md:2.5rem;--icon-lg:3rem;--icon-xl:4rem;--ww-background:#dcf3ef;--ww-paper:#fffdf5;--ww-ink:#214f55;--ww-muted:#47726e;--ww-teal:#167c80;--ww-gold:#efbd51;--ww-line:#d3e7df;--ww-radius:1.5rem;--ww-shadow:0 5px 0 #43696318}.ww-app-shell{min-height:calc(100dvh - var(--safe-area-top-adjusted) - var(--safe-area-inset-bottom));color:var(--ww-ink);--ww-action:var(--world-accent,var(--ww-teal))}.ww-app-shell:before{content:"";background:var(--page-background,var(--ww-background))}.ww-app-shell:before,.ww-game-scenery{z-index:-1;pointer-events:none;position:fixed;inset:0}.ww-app-shell:not([data-world]):before{background:radial-gradient(circle at 105% 0,transparent 0 170px,#ffffff50 171px 210px,transparent 211px),radial-gradient(circle at -5% 100%,transparent 0 110px,#ffffff50 111px 145px,transparent 146px),var(--ww-background)}.ww-page{min-height:calc(100dvh - var(--safe-area-top-adjusted) - var(--safe-area-inset-bottom));padding:clamp(.9rem,3vw,2rem)}.ww-container{width:min(100%,1000px);margin-inline:auto}.ww-surface{border-radius:var(--ww-radius);border:3px solid #fff}.ww-button,.ww-icon-button,.ww-surface{color:var(--ww-ink);background:var(--ww-paper);box-shadow:var(--ww-shadow)}.ww-button,.ww-icon-button{min-height:48px;font:inherit;cursor:pointer;border:0;border-radius:1rem;justify-content:center;align-items:center;gap:.6rem;padding:.65rem 1rem;font-weight:700;text-decoration:none;display:inline-flex}.ww-button:focus-visible,.ww-icon-button:focus-visible{outline-offset:4px;outline:3px solid #174bab}.ww-button:disabled,.ww-icon-button:disabled{cursor:wait;opacity:.65}.ww-icon-button{min-width:48px;height:48px;padding:.5rem .8rem}.ww-button--primary{color:#fff;background:var(--ww-action,var(--ww-teal));box-shadow:0 4px 0 color-mix(in srgb,var(--ww-action,var(--ww-teal)) 75%,#173a40)}.ww-kicker{color:var(--ww-muted);letter-spacing:.06em;text-transform:uppercase;font-size:.75rem;font-weight:700}.ww-footer{justify-content:space-between;align-items:center;gap:1rem;margin-top:1.25rem;padding-bottom:3rem;display:flex}.ww-app-shell[data-game] .exercise-number{color:var(--ww-ink);text-shadow:none}.tassie-sprite{background-image:url(../sprites/tassie-atlas.webp);background-size:600% 600%}.tassie-sprite[data-tassie=happy]{background-position:0 0}.tassie-sprite[data-tassie=wink]{background-position:20% 0}.tassie-sprite[data-tassie=curious]{background-position:40% 0}.tassie-sprite[data-tassie=thinking]{background-position:60% 0}.tassie-sprite[data-tassie=surprised]{background-position:80% 0}.tassie-sprite[data-tassie=proud]{background-position:100% 0}.tassie-sprite[data-tassie=encouraging]{background-position:0 20%}.tassie-sprite[data-tassie=sleepy]{background-position:20% 20%}.tassie-sprite[data-tassie=joy]{background-position:40% 20%}.tassie-sprite[data-tassie=pleading]{background-position:60% 20%}.tassie-sprite[data-tassie=yummy]{background-position:80% 20%}.tassie-sprite[data-tassie=heart-eyes]{background-position:100% 20%}.tassie-sprite[data-tassie=loved]{background-position:0 40%}.tassie-sprite[data-tassie=cool]{background-position:20% 40%}.tassie-sprite[data-tassie=zany]{background-position:40% 40%}.tassie-sprite[data-tassie=tongue-wink]{background-position:60% 40%}.tassie-sprite[data-tassie=angry]{background-position:80% 40%}.tassie-sprite[data-tassie=dizzy]{background-position:100% 40%}.tassie-sprite[data-tassie=starstruck]{background-position:0 60%}.tassie-sprite[data-tassie=pensive]{background-position:20% 60%}.tassie-sprite[data-tassie=original]{background-position:40% 60%}.tassie-sprite[data-tassie=beach]{background-position:60% 60%}.tassie-sprite[data-tassie=forest]{background-position:80% 60%}.tassie-sprite[data-tassie=underwater]{background-position:100% 60%}.tassie-sprite[data-tassie=castle]{background-position:0 80%}.tassie-sprite[data-tassie=space]{background-position:20% 80%}.tassie-sprite[data-tassie=jungle]{background-position:40% 80%}.tassie-sprite[data-tassie=dinosaurs]{background-position:60% 80%}.tassie-sprite[data-tassie=jungle-binoculars]{background-position:80% 80%}.tassie-sprite[data-tassie=dinosaur-magnifier]{background-position:100% 80%}.tassie-sprite[data-tassie=castle-key]{background-position:0 100%}.tassie-sprite[data-tassie=toy-conductor]{background-position:20% 100%}.tassie-sprite[data-tassie=candy-chef]{background-position:40% 100%}.tassie-sprite[data-tassie=cyber-inventor]{background-position:60% 100%}.tassie-sprite[data-tassie=school-explorer]{background-position:80% 100%}.tassie-sprite{width:var(--tassie-size,96px);aspect-ratio:1;vertical-align:middle;pointer-events:none;-webkit-user-select:none;user-select:none;transform-origin:50% 85%;animation-duration:var(--tassie-duration,8s);animation-delay:var(--tassie-delay,0s);background-repeat:no-repeat;flex:none;animation-timing-function:ease-in-out;animation-iteration-count:infinite;display:inline-block}.tassie-sprite[data-motion=float]{animation-name:tassie-sprite-float}.tassie-sprite[data-motion=swim]{animation-name:tassie-sprite-swim}.tassie-sprite[data-motion=walk]{animation-name:tassie-sprite-walk}.tassie-sprite[data-motion=orbit]{animation-name:tassie-sprite-orbit}.tassie-sprite--paused{animation-play-state:paused}@keyframes tassie-sprite-float{0%,to{transform:translateY(0)rotate(-3deg)}50%{transform:translateY(-8%)rotate(3deg)}}@keyframes tassie-sprite-swim{0%,to{transform:translate(-8%,2%)rotate(-7deg)}50%{transform:translate(8%,-8%)rotate(6deg)}}@keyframes tassie-sprite-walk{0%,to{transform:translate(-5%)rotate(-4deg)}25%,75%{transform:translateY(-4%)}50%{transform:translate(5%)rotate(4deg)}}@keyframes tassie-sprite-orbit{0%,to{transform:translate(-5%)rotate(-12deg)}50%{transform:translate(5%,-10%)rotate(12deg)}}@media (prefers-reduced-motion:reduce){.tassie-sprite{animation:none}}.world-scenery[data-v-1e7a5278]{pointer-events:none;isolation:isolate;border-radius:inherit;position:absolute;inset:0;overflow:hidden}.scenery-trail[data-v-1e7a5278]{border-radius:0}.scenery-trail .world-actor[data-v-1e7a5278]{opacity:.65;font-size:clamp(1.4rem,3.5vw,2.4rem)}.world-light[data-v-1e7a5278]{background:radial-gradient(at 35% -10%,#fff8 0,#0000 55%);position:absolute;inset:0}.world-tassie[data-v-1e7a5278]{--tassie-size:clamp(64px, 8vw, 104px);--tassie-duration:9s;--tassie-delay:-2s;position:absolute;top:78%;left:48%;transform:translate(-50%,-50%)}.scenery-banner .world-tassie[data-v-1e7a5278]{--tassie-size:clamp(80px, 10vw, 110px);top:52%;left:auto;right:10px;transform:translateY(-50%)}.scenery-game .world-tassie[data-v-1e7a5278]{--tassie-size:clamp(56px, 7vw, 88px);--tassie-duration:14s;transform:translate(-50%,-50%)}@media (width<=650px){.scenery-map .world-tassie[data-v-1e7a5278]{display:none}}.world-ground[data-v-1e7a5278]{background:var(--world-ground);opacity:.5;border-radius:50% 60% 0 0;width:120%;height:30%;position:absolute;bottom:-15%;left:-10%}.world-ground.back[data-v-1e7a5278]{opacity:.25;bottom:-8%;left:-35%;transform:rotate(-8deg)}.world-current[data-v-1e7a5278]{border-block:12px solid #ffffff20;border-radius:45%;height:55%;animation:12s ease-in-out infinite alternate world-tide-1e7a5278;position:absolute;inset:25% -10% auto;transform:rotate(-6deg)}.world-actor[data-v-1e7a5278]{font-size:calc(clamp(1.7rem, 4vw, 3.5rem)*var(--actor-scale));opacity:.72;filter:drop-shadow(0 3px 1px #24576518);line-height:1;position:absolute;transform:translate(-50%,-50%)}.drifting[data-v-1e7a5278]{animation:world-drift-1e7a5278 var(--duration) ease-in-out var(--delay) infinite var(--direction)}.rooted[data-v-1e7a5278]{transform-origin:bottom;animation:world-sway-1e7a5278 var(--duration) ease-in-out var(--delay) infinite var(--direction)}.underwater .drifting[data-v-1e7a5278]{animation-name:world-swim-1e7a5278}.underwater .world-light[data-v-1e7a5278]{background:repeating-linear-gradient(108deg,#0000 0 12%,#ffffff18 14% 18%,#0000 22% 32%)}.space .drifting[data-v-1e7a5278]{animation-name:world-orbit-1e7a5278}.space .world-light[data-v-1e7a5278]{background-color:#0000;background-image:radial-gradient(circle at 14% 26%,#fff 0 1px,#0000 2px),radial-gradient(circle at 66% 20%,#fff 0 2px,#0000 3px),radial-gradient(circle at 44% 66%,#fff 0 1px,#0000 2px);background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:110px 130px;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box}.toys .world-light[data-v-1e7a5278]{background:radial-gradient(circle at 20% 25%,#fff6 0 5px,#0000 6px) 0 0/110px 130px,linear-gradient(35deg,#0000 45%,#eabc7540 46% 54%,#0000 55%) 0 0/160px 160px}.toys .world-ground[data-v-1e7a5278]{background:repeating-linear-gradient(90deg,#edb976 0 60px,#e6a876 0 120px);border-radius:12px 12px 0 0}.candy .world-ground[data-v-1e7a5278]{background:repeating-linear-gradient(115deg,#edb6d7 0 28px,#fff0d4 0 56px)}.candy .world-light[data-v-1e7a5278]{background:radial-gradient(at 50% 0,#fff9,#0000 65%)}.cyber .world-light[data-v-1e7a5278]{background-color:#0000;background-image:linear-gradient(#6c8fb51a 1px,#0000 0),linear-gradient(90deg,#6c8fb51a 1px,#0000 0),radial-gradient(circle at 0 0,#ffffff80 0 3px,#0000 4px);background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:48px 48px;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box}.cyber .world-ground[data-v-1e7a5278]{border-top:2px solid #d3ffff;border-radius:14px 14px 0 0}.school .world-light[data-v-1e7a5278]{background:linear-gradient(90deg,#0000 7%,#d1888030 0 calc(7% + 2px),#0000 0),repeating-linear-gradient(#0000 0 35px,#689fb322 0 36px)}.toys .drifting[data-v-1e7a5278]{animation-name:world-bounce-1e7a5278}.candy .drifting[data-v-1e7a5278]{animation-name:world-orbit-1e7a5278}.cyber .drifting[data-v-1e7a5278]{animation-name:world-hover-1e7a5278}.school .drifting[data-v-1e7a5278]{animation-name:world-flutter-1e7a5278}.miniature .world-light[data-v-1e7a5278],.scenery-game .world-light[data-v-1e7a5278]{opacity:.4}.jungle-canopy[data-v-1e7a5278]{background:radial-gradient(at 8% 0,#3b8757b3 0 28%,#0000 29%),radial-gradient(at 90% 0,#55975499 0 30%,#0000 31%);height:30%;position:absolute;inset:-10% -5% auto}.jungle-vine[data-v-1e7a5278]{transform-origin:top;border-right:3px solid #43825388;border-radius:0 0 80%;width:4%;height:29%;animation:11s ease-in-out infinite alternate jungle-sway-1e7a5278;position:absolute;top:-4%}.jungle-vine.vine-1[data-v-1e7a5278]{left:5%}.jungle-vine.vine-2[data-v-1e7a5278]{height:22%;animation-delay:-4s;right:7%}.jungle-vine.vine-3[data-v-1e7a5278]{height:13%;animation-delay:-7s;right:18%}.scenery-game .jungle-canopy[data-v-1e7a5278],.scenery-game .jungle-vine[data-v-1e7a5278]{opacity:.35}.miniature .jungle-vine[data-v-1e7a5278]{animation:none}@keyframes jungle-sway-1e7a5278{0%{transform:rotate(-5deg)}to{transform:rotate(5deg)}}.bubble[data-v-1e7a5278]{width:9px;height:9px;animation:world-bubble-1e7a5278 15s linear var(--delay) infinite;border:2px solid #ffffff80;border-radius:50%;position:absolute;bottom:-15px}.world-hero[data-v-1e7a5278]{filter:drop-shadow(0 8px 2px #24576525);font-size:clamp(3.3rem,6vw,5rem);line-height:1;position:absolute;top:48%;left:50%;transform:translate(-50%,-50%)}.miniature .world-actor[data-v-1e7a5278]{font-size:calc(1.7rem*var(--actor-scale));opacity:.8;animation:none}.scenery-game .world-actor[data-v-1e7a5278]{opacity:.55}.scenery-game .world-current[data-v-1e7a5278],.scenery-game .world-ground[data-v-1e7a5278]{opacity:.2}.miniature .bubble[data-v-1e7a5278]:nth-last-child(n+4),.miniature .world-actor[data-v-1e7a5278]:nth-of-type(n+6){display:none}@keyframes world-drift-1e7a5278{0%{transform:translate(-50%,-50%)rotate(-4deg)}to{transform:translate(calc(-50% + var(--travel)),calc(-50% - var(--travel))) rotate(5deg)}}@keyframes world-swim-1e7a5278{0%{transform:translate(-70%,-50%)rotate(-6deg)}50%{transform:translate(-40%,-75%)rotate(3deg)}to{transform:translate(-20%,-40%)rotate(-3deg)}}@keyframes world-bounce-1e7a5278{0%,to{transform:translate(-50%,-50%)rotate(-5deg)}50%{transform:translate(calc(-50% + var(--travel)),calc(-50% - var(--travel))) rotate(8deg)}}@keyframes world-hover-1e7a5278{0%,to{transform:translate(-50%,-50%)}40%{transform:translate(calc(-50% + var(--travel)),-50%)}70%{transform:translate(calc(-50% + var(--travel)),calc(-50% - var(--travel)))}}@keyframes world-flutter-1e7a5278{0%{transform:translate(-50%,-50%)rotate(-9deg)}to{transform:translate(calc(-50% + var(--travel)/2),calc(-50% - var(--travel))) rotate(9deg)}}@keyframes world-sway-1e7a5278{0%{transform:translate(-50%,-50%)rotate(-3deg)}to{transform:translate(-50%,-50%)rotate(4deg)}}@keyframes world-orbit-1e7a5278{0%{transform:translate(-65%,-35%)rotate(-10deg)}to{transform:translate(-30%,-70%)rotate(12deg)}}@keyframes world-tide-1e7a5278{to{transform:translate(3%,8%)rotate(3deg)}}@keyframes world-bubble-1e7a5278{0%{opacity:0;transform:translate(0)}15%{opacity:.7}to{opacity:0;transform:translate(15px,-65vh)}}.motion-paused[data-v-1e7a5278] *{animation:none!important}@media (prefers-reduced-motion:reduce){.world-scenery[data-v-1e7a5278] *{animation:none!important}}.install-prompt[data-v-76d61b01],.update-prompt[data-v-76d61b01]{z-index:9999;animation:.3s ease-out slideUp-76d61b01;position:fixed;bottom:2rem;right:2rem}@keyframes slideUp-76d61b01{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.install-content[data-v-76d61b01],.update-content[data-v-76d61b01]{border-radius:var(--radius-lg);box-shadow:0 10px 40px var(--color-overlay-dark-strong);background:#fff;align-items:center;gap:1rem;max-width:400px;padding:1.5rem;display:flex}.install-icon[data-v-76d61b01],.update-icon[data-v-76d61b01]{font-size:2rem}.install-text[data-v-76d61b01],.update-text[data-v-76d61b01]{flex:1}.install-text strong[data-v-76d61b01],.update-text strong[data-v-76d61b01]{color:var(--color-primary);margin-bottom:.25rem;display:block}.install-text p[data-v-76d61b01],.update-text p[data-v-76d61b01]{color:var(--color-text-light);margin:0;font-size:.9rem}.install-btn[data-v-76d61b01],.update-btn[data-v-76d61b01]{background:var(--color-primary);color:var(--color-text-inverse);border-radius:var(--radius-md);cursor:pointer;border:none;padding:.75rem 1.5rem;font-weight:600;transition:all .2s}.install-btn[data-v-76d61b01]:hover,.update-btn[data-v-76d61b01]:hover{background:var(--color-primary-dark);transform:translateY(-2px)}.dismiss-btn[data-v-76d61b01]{color:var(--color-text-light);border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;background:0 0;padding:.75rem 1rem;transition:all .2s}.dismiss-btn[data-v-76d61b01]:hover{border-color:var(--color-text);color:var(--color-text)}@media (width<=640px){.install-prompt[data-v-76d61b01],.update-prompt[data-v-76d61b01]{bottom:1rem;left:1rem;right:1rem}.install-content[data-v-76d61b01],.update-content[data-v-76d61b01]{text-align:center;flex-direction:column}.dismiss-btn[data-v-76d61b01],.install-btn[data-v-76d61b01],.update-btn[data-v-76d61b01]{width:100%}}.coin-animation-overlay[data-v-c5a580a4]{pointer-events:none;z-index:9999;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.coin-burst[data-v-c5a580a4]{position:absolute;top:50%;left:50%}.flying-coin[data-v-c5a580a4]{animation:1s ease-out forwards fly-out-c5a580a4;animation-delay:var(--delay);font-size:2rem;position:absolute}@keyframes fly-out-c5a580a4{0%{opacity:1;transform:translate(0)scale(0)}30%{transform:translate(var(--x),-100px) scale(1.2);opacity:1}to{transform:translate(var(--x),-200px) scale(.5);opacity:0}}.coin-total[data-v-c5a580a4]{color:gold;text-shadow:0 2px 4px #0000004d,0 0 20px #ffd70080;font-size:3rem;font-weight:700}.pop-enter-active[data-v-c5a580a4]{animation:.4s ease-out pop-in-c5a580a4}.pop-leave-active[data-v-c5a580a4]{animation:.3s ease-in pop-out-c5a580a4}@keyframes pop-in-c5a580a4{0%{opacity:0;transform:scale(0)}70%{transform:scale(1.3)}to{opacity:1;transform:scale(1)}}@keyframes pop-out-c5a580a4{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(0)}}.achievement-popup-overlay[data-v-86b11c42]{z-index:10000;background:#0009;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.achievement-popup[data-v-86b11c42]{text-align:center;background:#fff;border-radius:1.5rem;width:100%;max-width:320px;padding:2rem;animation:.5s ease-out bounce-in-86b11c42;box-shadow:0 20px 60px #0000004d}@keyframes bounce-in-86b11c42{0%{opacity:0;transform:scale(.5)}70%{transform:scale(1.1)}to{opacity:1;transform:scale(1)}}.popup-header[data-v-86b11c42]{justify-content:center;align-items:center;gap:.5rem;margin-bottom:1rem;display:flex}.popup-header h2[data-v-86b11c42]{color:#333;margin:0;font-size:1.5rem}.popup-header .celebration[data-v-86b11c42]{font-size:1.5rem;animation:.5s ease-in-out infinite wiggle-86b11c42}@keyframes wiggle-86b11c42{0%,to{transform:rotate(-10deg)}50%{transform:rotate(10deg)}}.badge-display[data-v-86b11c42]{margin:1rem 0}.badge-icon[data-v-86b11c42]{font-size:5rem;animation:.5s ease-out .3s both pop-scale-86b11c42;display:inline-block}@keyframes pop-scale-86b11c42{0%{transform:scale(0)}70%{transform:scale(1.2)}to{transform:scale(1)}}.badge-name[data-v-86b11c42]{color:#333;margin:0 0 .5rem;font-size:1.5rem}.badge-description[data-v-86b11c42]{color:#666;margin:0 0 1rem}.coin-bonus[data-v-86b11c42]{color:#f9a825;margin-bottom:1.5rem;font-size:1.5rem;font-weight:700;animation:1s ease-in-out infinite pulse-86b11c42}@keyframes pulse-86b11c42{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.dismiss-btn[data-v-86b11c42]{color:#fff;cursor:pointer;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:2rem;padding:.75rem 2rem;font-size:1.1rem;font-weight:700;transition:transform .2s}.dismiss-btn[data-v-86b11c42]:hover{transform:scale(1.05)}.achievement-popup-enter-active[data-v-86b11c42]{transition:opacity .3s}.achievement-popup-leave-active[data-v-86b11c42]{transition:opacity .2s}.achievement-popup-enter-from[data-v-86b11c42],.achievement-popup-leave-to[data-v-86b11c42]{opacity:0}@font-face{font-family:Fredoka Launch;src:url(../fonts/fredoka-bold.ttf)format("truetype");font-weight:700;font-display:block}.brand-launch[data-v-a2d18392]{z-index:30000;color:#244f56;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);background:#dcf3ef;place-items:center;display:grid;position:fixed;inset:0}.brand-launch__ring[data-v-a2d18392]{z-index:0;aspect-ratio:1;box-sizing:border-box;border:12cqw solid #b8e0ea;border-radius:50%;width:95%;position:absolute;top:-42%;right:-55%}.brand-launch__identity[data-v-a2d18392]{aspect-ratio:4/5;z-index:1;width:min(72vw,400px,62dvh);position:relative;container-type:inline-size}.brand-launch__tassie[data-v-a2d18392]{z-index:1;-o-object-fit:contain;object-fit:contain;width:70%;height:60%;position:absolute;top:4%;left:15%}.brand-launch__name[data-v-a2d18392]{text-align:center;width:100%;font:700 16.5cqw/.98 Fredoka Launch,sans-serif;position:absolute;top:67%}.brand-launch.is-playing[data-v-a2d18392]{animation:1s both launch-away-a2d18392}.brand-launch.is-playing .brand-launch__tassie[data-v-a2d18392]{animation:.7s ease-in-out both launch-hello-a2d18392}@media (width>=768px) and (height>=600px){.brand-launch__identity[data-v-a2d18392]{width:min(62vw,500px,62dvh)}}@keyframes launch-hello-a2d18392{0%,to{transform:translateY(0)rotate(0)}45%{transform:translateY(-3%)rotate(-3deg)}70%{transform:translateY(-1%)rotate(2deg)}}@keyframes launch-away-a2d18392{0%,75%{opacity:1}to{opacity:0}}@media (prefers-reduced-motion:reduce){.brand-launch.is-playing[data-v-a2d18392],.brand-launch.is-playing .brand-launch__tassie[data-v-a2d18392]{animation:none}}
