:root{--bg-primary: #f5f7fa;--bg-secondary: #ede7f6;--bg-accent: #b39ddb;--text-primary: #333366;--text-secondary: #7f9cf5;--card-bg: #ffffffcc;--card-border: #d6d6f2;--shadow-light: rgba(127, 156, 245, .08);--shadow-medium: rgba(127, 156, 245, .18);--shadow-heavy: rgba(127, 156, 245, .28);--button-gradient: linear-gradient(135deg, #b39ddb 0%, #90caf9 100%);--particle-color: rgba(127, 156, 245, .18);--scrollbar-bg: #ede7f6;--scrollbar-thumb: linear-gradient(135deg, #b39ddb, #90caf9);--icon-filter: invert(0%);--ui-background-color: #f5f7faee;--ui-background-color-translucent: #f5f7fa99;--primary-color: #7f9cf5;--slider-track-color: #d6d6f2;--slider-thumb-border-color: #ede7f6}.dark-mode{--bg-primary: #1a1a2e;--bg-secondary: #16213e;--bg-accent: #0f3460;--text-primary: #ffffff;--text-secondary: #00d4ff;--card-bg: rgba(255, 255, 255, .05);--card-border: rgba(255, 255, 255, .1);--shadow-light: rgba(0, 0, 0, .3);--shadow-medium: rgba(0, 0, 0, .5);--shadow-heavy: rgba(0, 0, 0, .7);--button-gradient: linear-gradient(135deg, #00d4ff 0%, #0099cc 100%);--particle-color: rgba(0, 212, 255, .4);--scrollbar-bg: rgba(255, 255, 255, .05);--scrollbar-thumb: linear-gradient(135deg, #00d4ff, #0099cc);--icon-filter: invert(100%);--ui-background-color: rgba(40, 40, 40, .8);--ui-background-color-translucent: rgba(40, 40, 40, .6);--primary-color: #00d4ff;--slider-track-color: #555;--slider-thumb-border-color: #1a1a2e}*{box-sizing:border-box;margin:0;padding:0;transition:background-color .3s ease,color .3s ease,border-color .3s ease,box-shadow .3s ease}body{font-family:Comic Sans MS,cursive,sans-serif;background:linear-gradient(135deg,var(--bg-primary) 0%,var(--bg-secondary) 50%,var(--bg-accent) 100%);color:var(--text-primary);line-height:1.5;min-height:100vh;position:relative;overflow-x:hidden;transition:all .3s ease}body:after{content:"";position:fixed;top:0;left:0;width:100vw;height:100vh;background-image:url(/assets/images/CALogo.png);background-repeat:no-repeat;background-position:center;background-size:60vw 60vw;opacity:.08;pointer-events:none;z-index:0}body:before{content:"";position:fixed;top:0;left:0;width:100%;height:100%;background-image:radial-gradient(circle at 20% 80%,var(--card-bg) 0%,transparent 50%),radial-gradient(circle at 80% 20%,var(--card-bg) 0%,transparent 50%),radial-gradient(circle at 40% 40%,var(--card-bg) 0%,transparent 50%);animation:float 20s ease-in-out infinite;pointer-events:none;z-index:-1}@keyframes float{0%,to{transform:translateY(0) rotate(0)}33%{transform:translateY(-20px) rotate(1deg)}66%{transform:translateY(10px) rotate(-1deg)}}img{max-width:100%;height:auto;display:block;filter:drop-shadow(0 4px 8px var(--shadow-light));image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges}h1,h2,h3,h4,h5,h6{font-weight:700;text-align:center;color:var(--text-secondary);margin-bottom:1rem;font-size:clamp(1.5rem,3vw,2.5rem);text-shadow:2px 2px 4px var(--shadow-light);position:relative}h1:after,h2:after{content:"";position:absolute;bottom:-5px;left:50%;transform:translate(-50%);width:60px;height:3px;background:var(--button-gradient);border-radius:2px}button{font-family:inherit;padding:.8rem 1.5rem;font-size:clamp(1rem,2vw,1.1rem);border-radius:25px;border:none;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 6px 15px var(--shadow-medium);position:relative;overflow:hidden;background:var(--button-gradient);color:#fff;font-weight:700}button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:left .5s}button:hover:before{left:100%}button:hover{transform:translateY(-3px) scale(1.05);box-shadow:0 10px 25px var(--shadow-heavy)}button:active{transform:translateY(-1px) scale(1.02)}.container{width:100%;max-width:1200px;margin:0 auto;padding:1rem}.question-container{width:100%;display:flex;justify-content:center;align-items:center;min-height:100px;margin-bottom:2rem;background:var(--card-bg);border-radius:20px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--card-border)}.math-question{font-size:clamp(2rem,6vw,3rem);color:var(--text-secondary);text-align:center;margin:0;text-shadow:2px 2px 4px var(--shadow-light)}.floating-particles{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:-1}.particle{position:absolute;width:6px;height:6px;background:var(--particle-color);border-radius:50%;animation:float-particle 15s infinite linear}@keyframes float-particle{0%{transform:translateY(100vh) rotate(0);opacity:0}10%{opacity:1}90%{opacity:1}to{transform:translateY(-100px) rotate(360deg);opacity:0}}::-webkit-scrollbar{width:12px}::-webkit-scrollbar-track{background:var(--scrollbar-bg);border-radius:10px}::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:10px;border:2px solid var(--card-border)}::-webkit-scrollbar-thumb:hover{background:linear-gradient(135deg,#00AFB9,#F07167)}.optimized-image-container{position:relative;display:inline-block}.optimized-image-container img{max-width:100%;height:auto;display:block}.image-loading{position:absolute;top:0;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.8);border-radius:8px}.loading-spinner{width:20px;height:20px;border:2px solid #f3f3f3;border-top:2px solid #3498db;border-radius:50%;animation:spin 1s linear infinite}.image-error{position:absolute;top:0;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center;background:rgba(255,0,0,.1);border-radius:8px;font-size:24px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.preload-image{position:absolute;top:-9999px;left:-9999px;width:1px;height:1px;opacity:0}.asset-preloader{position:fixed;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);display:flex;align-items:center;justify-content:center;z-index:9999}.preloader-content{text-align:center;color:#fff;max-width:300px;padding:2rem}.preloader-logo{font-size:4rem;margin-bottom:1rem;filter:drop-shadow(0 4px 8px rgba(0,0,0,.3))}.preloader-content h2{font-size:2rem;margin-bottom:.5rem;text-shadow:0 2px 4px rgba(0,0,0,.3)}.preloader-content p{font-size:1.1rem;margin-bottom:2rem;opacity:.9}.progress-bar{width:100%;height:8px;background:rgba(255,255,255,.3);border-radius:4px;overflow:hidden;margin-bottom:1rem}.progress-fill{height:100%;background:linear-gradient(90deg,#00ff88,#00ccff);border-radius:4px;box-shadow:0 0 10px #00ff8880}.progress-text{font-size:1.2rem;font-weight:700;text-shadow:0 2px 4px rgba(0,0,0,.3)}.app-container{position:relative;min-height:100vh;background:#fdfcdc}.app-container:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(253,252,220,.7);z-index:1;pointer-events:none}.app-container>*{position:relative;z-index:2}.home-container{background:none!important;background-image:none!important}.home-menu{background:transparent;text-align:center;padding:2rem;font-family:Comic Sans MS,cursive,sans-serif;min-height:100vh;display:flex;flex-direction:column;justify-content:center;position:relative}.home-menu h1{font-size:clamp(2.5rem,8vw,4rem);background:linear-gradient(135deg,var(--text-secondary),#00AFB9,var(--bg-accent));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:.5rem;text-shadow:none;position:relative;z-index:2}.home-menu h1:before{content:"🌟";position:absolute;left:-40px;top:50%;transform:translateY(-50%);font-size:.6em;animation:sparkle 2s ease-in-out infinite}.home-menu h1:after{content:"🌟";position:absolute;right:-40px;top:50%;transform:translateY(-50%);font-size:.6em;animation:sparkle 2s ease-in-out infinite 1s}@keyframes sparkle{0%,to{transform:translateY(-50%) scale(1) rotate(0)}50%{transform:translateY(-50%) scale(1.2) rotate(180deg)}}.home-menu h2{font-size:clamp(1.4rem,5vw,2.2rem);color:#00afb9;margin-bottom:2rem;text-shadow:2px 2px 4px var(--shadow-light);position:relative}.game-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:2rem;justify-content:center;max-width:800px;width:100%;margin:0 auto 2rem;padding:0 1rem}.game-card{background:var(--card-bg);-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);border:2px solid var(--card-border);border-radius:25px;padding:1.5rem;box-shadow:0 8px 32px var(--shadow-light);transition:all .4s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;align-items:center;position:relative;overflow:hidden}.game-card:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .8s}.game-card:hover:before{left:100%}.game-card:hover{transform:translateY(-8px) scale(1.05);box-shadow:0 15px 45px var(--shadow-medium);border-color:#fff6}.game-card img{width:60px;height:60px;object-fit:contain;margin-bottom:1rem;filter:drop-shadow(0 4px 8px var(--shadow-light));transition:all .3s ease}.game-card:hover img{transform:scale(1.1) rotate(5deg)}.game-card button{background:var(--button-gradient);color:#fff;border:none;padding:.8rem 1.2rem;border-radius:20px;font-weight:700;font-size:.9rem;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px var(--shadow-medium);position:relative;overflow:hidden}.game-card button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:left .5s}.game-card button:hover:before{left:100%}.game-card button:hover{transform:translateY(-2px);box-shadow:0 6px 20px var(--shadow-heavy)}.decorative-elements{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:-1}.decorative-element{position:absolute;font-size:2rem;opacity:.3;animation:float-decorative 6s ease-in-out infinite}.decorative-element:nth-child(1){top:10%;left:10%;animation-delay:0s}.decorative-element:nth-child(2){top:20%;right:15%;animation-delay:1.5s}.decorative-element:nth-child(3){bottom:30%;left:20%;animation-delay:3s}.decorative-element:nth-child(4){bottom:20%;right:10%;animation-delay:4.5s}@keyframes float-decorative{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-20px) rotate(10deg)}}.menu-buttons{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap;margin-top:1rem}.menu-buttons button{background:var(--button-gradient);color:#fff;border:none;padding:1rem 2rem;border-radius:25px;font-weight:700;font-size:1rem;cursor:pointer;transition:all .3s ease;box-shadow:0 6px 20px var(--shadow-medium);position:relative;overflow:hidden}.menu-buttons button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:left .5s}.menu-buttons button:hover:before{left:100%}.menu-buttons button:hover{transform:translateY(-3px);box-shadow:0 8px 25px var(--shadow-heavy)}.statistics-btn{background:linear-gradient(135deg,#00AFB9 0%,#0081A7 100%)!important}.statistics-btn:hover{background:linear-gradient(135deg,#0081A7 0%,#00AFB9 100%)!important}.instructions-btn{background:linear-gradient(135deg,#FED9B7 0%,#F07167 100%)!important}.instructions-btn:hover{background:linear-gradient(135deg,#F07167 0%,#FED9B7 100%)!important}@media (max-width: 768px){.home-menu{padding:1rem}.game-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:1.5rem}.menu-buttons{flex-direction:column;align-items:center}.menu-buttons button{width:100%;max-width:300px}}@media (max-width: 480px){.game-grid{grid-template-columns:repeat(2,1fr);gap:1rem}.game-card{padding:1rem}.game-card img{width:50px;height:50px}.game-card button{font-size:.8rem;padding:.6rem 1rem}}.memory-game{background:transparent;text-align:center;padding:2rem 1rem;font-family:Comic Sans MS,cursive,sans-serif;min-height:100vh;display:flex;flex-direction:column;align-items:center;position:relative;gap:1.5rem;overflow:hidden}.memory-game h2{color:var(--text-secondary);font-size:clamp(1.8rem,4vw,2.4rem);margin-bottom:.5rem;text-shadow:2px 2px 4px var(--shadow-light);background:linear-gradient(135deg,var(--text-secondary),#00AFB9);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.memory-game p{font-size:clamp(1rem,3.5vw,1.3rem);color:var(--bg-accent);margin-bottom:1.5rem;text-shadow:1px 1px 2px var(--shadow-light)}.memory-stats{width:90%;max-width:600px;display:flex;justify-content:space-around;align-items:center;background:var(--card-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:20px;padding:.8rem 1rem;box-shadow:0 8px 25px var(--shadow-light);border:2px solid var(--card-border);flex-wrap:wrap;gap:.5rem}.memory-stats .stat-item{display:flex;flex-direction:column;align-items:center;gap:.2rem;text-align:center;flex-basis:0;flex-grow:1;min-width:80px}.memory-stats .stat-item span:first-child{font-size:.8rem;color:var(--text-secondary);font-weight:700;text-transform:uppercase;letter-spacing:1px}.memory-stats .stat-item span:last-child{font-size:1.5rem;font-weight:700;color:var(--bg-accent);text-shadow:2px 2px 4px var(--shadow-light)}.memory-stats .best-score span:last-child{color:#4caf50}.memory-stats .saving{animation:pulse 1.5s ease-in-out infinite}.memory-stats .saving span{color:var(--bg-accent);font-size:.8rem}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}.grid{display:grid;gap:1rem;max-width:800px;width:100%;margin:0 auto}.grid-8-cards{grid-template-columns:repeat(4,1fr);max-width:600px}.grid-16-cards{grid-template-columns:repeat(4,1fr)}.card{aspect-ratio:1;perspective:1000px;cursor:pointer}.card-inner{position:relative;width:100%;height:100%;text-align:center;transition:transform .5s;transform-style:preserve-3d}.card-face{position:absolute;width:100%;height:100%;backface-visibility:hidden;border-radius:15px;display:flex;align-items:center;justify-content:center;font-size:2rem;box-shadow:0 8px 25px var(--shadow-light);border:2px solid var(--card-border);transition:all .3s ease}.card-front{background:var(--button-gradient);color:#fff;font-size:3rem}.card-back{background:var(--card-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transform:rotateY(180deg);padding:.5rem}.card-back img{max-width:80%;max-height:80%;object-fit:contain;filter:drop-shadow(0 4px 8px var(--shadow-light))}.word-card-text{font-size:1.2rem;font-weight:700;color:var(--text-secondary);text-transform:capitalize}.card-back.matched{background:linear-gradient(135deg,#4CAF50,#8BC34A);border-color:#4caf50;box-shadow:0 0 20px #4caf5080}.card-back.matched img,.card-back.matched .word-card-text{filter:brightness(1.2)}.card-back.flipping{animation:flip-shake .5s ease-in-out}@keyframes flip-shake{0%,to{transform:rotateY(180deg) translate(0)}25%{transform:rotateY(180deg) translate(-5px)}75%{transform:rotateY(180deg) translate(5px)}}.memory-buttons{display:flex;gap:1rem;flex-wrap:wrap;justify-content:center;margin-top:1rem}.memory-buttons button{background:var(--card-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:2px solid var(--card-border);color:var(--text-secondary);padding:.8rem 1.5rem;border-radius:20px;font-weight:700;font-size:1rem;cursor:pointer;transition:all .3s ease;box-shadow:0 6px 20px var(--shadow-light)}.memory-buttons button:hover{background:rgba(255,255,255,.3);transform:translateY(-2px);box-shadow:0 8px 25px var(--shadow-medium)}.memory-game-end-wrapper{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.5);display:flex;justify-content:center;align-items:center;z-index:10000;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.memory-game-end-popup{background:var(--card-bg);-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);border:2px solid var(--card-border);border-radius:25px;padding:2rem;max-width:500px;width:90%;text-align:center;box-shadow:0 20px 60px var(--shadow-heavy)}.memory-game-end-popup h2{color:var(--text-secondary);font-size:2rem;margin-bottom:1rem}.memory-game-end-popup p{color:var(--text-primary);font-size:1.2rem;margin-bottom:1.5rem}.final-stats{background:var(--card-bg);border-radius:15px;padding:1rem;margin-bottom:1.5rem;border:1px solid var(--card-border)}.stat-row{display:flex;justify-content:space-between;align-items:center;padding:.8rem 1rem;border-bottom:1px solid var(--card-border);transition:background-color .3s}.stat-row:last-child{border-bottom:none}.stat-row:hover{background-color:#ffffff1a}.end-screen-buttons{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.end-screen-buttons button{background:var(--button-gradient);color:#fff;border:none;padding:1rem 2rem;border-radius:20px;font-weight:700;font-size:1rem;cursor:pointer;transition:all .3s ease;box-shadow:0 6px 20px var(--shadow-medium)}.end-screen-buttons button:hover{transform:translateY(-3px);box-shadow:0 8px 25px var(--shadow-heavy)}.saving-stats{background:rgba(0,175,185,.1);border-radius:10px;padding:.5rem;margin-top:.5rem}.saving-stats .stat-label-final{color:var(--bg-accent);font-size:.9rem}@media (max-width: 768px){.memory-game{padding:1rem}.grid{gap:.8rem}.grid-8-cards,.grid-16-cards{grid-template-columns:repeat(4,1fr)}.memory-stats{padding:.6rem .8rem}.memory-stats .stat-item{min-width:70px}.memory-buttons{gap:.8rem}.memory-buttons button{padding:.6rem 1.2rem;font-size:.9rem}.end-screen-buttons{flex-direction:column;align-items:center}.end-screen-buttons button{width:100%;max-width:250px}}@media (max-width: 480px){.grid{gap:.6rem}.grid-8-cards,.grid-16-cards{grid-template-columns:repeat(4,1fr)}.card-face{font-size:1.5rem}.word-card-text{font-size:1rem}.memory-game-end-popup{padding:1.5rem}.memory-game-end-popup h2{font-size:1.5rem}.memory-game-end-popup p{font-size:1rem}}.typing-selector{background:transparent;font-family:Comic Sans MS,cursive,sans-serif;padding:2rem 1rem;text-align:center;min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center}.typing-selector h2{font-size:clamp(1.8rem,5vw,2.5rem);color:var(--text-secondary);margin-bottom:2rem;text-shadow:2px 2px 4px var(--shadow-light)}.typing-selector h2:after{content:"";display:block;width:50%;height:4px;margin:.2rem auto 0;background:var(--button-gradient);border-radius:2px}.typing-selector .theme-btn{background:var(--card-bg);color:var(--text-primary);border:2px solid var(--card-border);padding:.8rem 2rem;margin:.8rem 0;border-radius:25px;font-size:clamp(1.1rem,3vw,1.4rem);width:min(80vw,300px);box-shadow:0 6px 15px var(--shadow-medium);cursor:pointer;transition:all .3s ease;font-weight:700;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.typing-selector .theme-btn:hover{transform:translateY(-3px);box-shadow:0 8px 20px var(--shadow-heavy);border-color:var(--text-secondary)}.typing-selector .theme-btn.active{background:var(--button-gradient);color:#fff;transform:scale(1.05);border:2px solid transparent}.dark-mode .typing-selector .theme-btn.active{border:2px solid var(--text-secondary)}.typing-selector .start-btn{background:linear-gradient(135deg,#4CAF50,#8BC34A);color:#fff;border:2px solid transparent;padding:.8rem 2rem;margin:2rem 0 .8rem;border-radius:25px;font-size:clamp(1.1rem,3vw,1.4rem);width:min(80vw,300px);box-shadow:0 6px 15px var(--shadow-medium);cursor:pointer;transition:all .3s ease;font-weight:700}.typing-selector .start-btn:hover{transform:translateY(-3px);box-shadow:0 8px 20px var(--shadow-heavy)}.typing-selector .back-to-menu-btn{background:transparent;color:var(--text-secondary);border:2px solid var(--text-secondary);padding:.8rem 2rem;margin-top:1rem;border-radius:25px;font-size:clamp(1rem,2.5vw,1.2rem);width:min(80vw,300px);cursor:pointer;transition:all .3s ease;font-weight:700}.typing-selector .back-to-menu-btn:hover{background:var(--text-secondary);color:var(--bg-primary);box-shadow:0 6px 15px var(--shadow-medium)}.typing-selector .theme-btn:disabled,.typing-selector .start-btn:disabled{background:var(--card-bg);opacity:.6;cursor:not-allowed;transform:none;box-shadow:0 6px 15px var(--shadow-medium);color:var(--text-primary)}.typing-selector .theme-btn:disabled:hover,.typing-selector .start-btn:disabled:hover{transform:none;box-shadow:0 6px 15px var(--shadow-medium)}.coming-soon-text{font-size:.9rem;opacity:.8;color:var(--text-primary)}.typing-game{background:transparent;font-family:Comic Sans MS,cursive,sans-serif;text-align:center;padding:2rem 1rem;min-height:100vh;display:flex;flex-direction:column;align-items:center;gap:1.5rem;position:relative;overflow-x:hidden}.typing-game h2,.typing-game h3{color:#0081a7;font-size:clamp(1.2rem,3vw,1.5rem);text-shadow:1px 1px 2px rgba(0,0,0,.1);margin:0;display:flex;align-items:center;gap:.5rem}.timer-bar-container{width:100%;max-width:200px;height:20px;background-color:#fff3;border-radius:10px;overflow:hidden;border:2px solid rgba(255,255,255,.5)}.timer-bar{height:100%;background:linear-gradient(90deg,#4CAF50,#8BC34A,#FFC107,#FF5722);background-size:300% 100%;animation:timer-gradient 2s linear infinite;border-radius:8px}@keyframes timer-gradient{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.image-container{margin:1rem 0;position:relative;box-shadow:0 10px 30px #0003}.image-container img{width:min(60vw,200px);height:min(60vw,200px);object-fit:contain;border-radius:25px;background-color:#ffffff4d;padding:1rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:2px solid rgba(255,255,255,.4);filter:drop-shadow(0 10px 20px rgba(0,0,0,.2))}.typing-area{font-size:2.5rem;margin:1.5rem 0;letter-spacing:.5rem;display:flex;justify-content:center;align-items:center;flex-wrap:wrap;padding:1.5rem 2rem;background-color:#ffffff1a;border-radius:20px;min-height:80px;width:100%;max-width:90%}.letter{font-weight:700;transition:all .2s ease;position:relative;padding:0 .2em;color:#ccc;text-shadow:2px 2px 4px rgba(0,0,0,.2);font-size:2.5rem}.letter.pending{color:#a0a0a0}.letter.typed{color:#1d3557}.letter.completed{color:#4caf50;text-shadow:0 0 10px #4caf4f8a}.final-stats{margin:1.5rem 0;display:flex;flex-direction:column;gap:.8rem}.stat-row{display:flex;justify-content:space-between;align-items:center;padding:.8rem 1rem;background:rgba(255,255,255,.2);border-radius:15px;border-bottom:1px solid var(--card-border);transition:background-color .3s}.stat-row:hover{background-color:#ffffff4d}.stat-label-final{color:var(--text-secondary);font-size:1.1rem;font-weight:700;text-shadow:1px 1px 3px var(--shadow-light)}.stat-value-final{color:var(--text-primary);font-size:1.2rem;font-weight:700;background:var(--button-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-shadow:2px 2px 4px var(--shadow-medium)}.modal-buttons{display:flex;gap:1rem;justify-content:center;margin-top:2rem}.play-again-btn,.menu-btn{padding:.8rem 1.5rem;border:none;border-radius:20px;font-size:1.1rem;font-weight:700;cursor:pointer;transition:all .3s ease;box-shadow:0 8px 25px #0003;font-family:Comic Sans MS,cursive,sans-serif;color:#fff}.play-again-btn{background:linear-gradient(135deg,#4CAF50,#8BC34A)}.menu-btn{background:linear-gradient(135deg,#F07167,#FED9B7)}@media (max-width: 600px){.game-stats{flex-direction:column;gap:1rem}}.virtual-keyboard{width:100%;max-width:600px;margin:1rem auto;padding:1rem;background:rgba(255,255,255,.1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:20px;border:2px solid rgba(255,255,255,.3);box-shadow:0 8px 25px #0000001a;display:flex;flex-wrap:wrap;justify-content:center;align-items:center}.keyboard-row{display:flex;justify-content:center;gap:.5rem;margin-bottom:.5rem;flex-wrap:wrap}.keyboard-row:last-child{margin-bottom:0}.keyboard-key{width:2.5rem;height:2.5rem;border:none;border-radius:12px;background:linear-gradient(135deg,#4CAF50,#8BC34A);color:#fff;font-weight:700;font-size:1.1rem;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 15px #0003;font-family:Comic Sans MS,cursive,sans-serif;display:flex;align-items:center;justify-content:center;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.keyboard-key:hover{transform:translateY(-2px);box-shadow:0 6px 20px #0000004d;background:linear-gradient(135deg,#45a049,#7cb342)}.keyboard-key:active{transform:translateY(0);box-shadow:0 2px 10px #0003}.keyboard-key:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:0 2px 10px #0000001a}@media (max-width: 480px){.virtual-keyboard{padding:.3rem;margin:.2rem auto;gap:.1rem}.keyboard-key{width:1.7rem;height:1.7rem;font-size:.85rem;border-radius:7px;margin:.05rem}.keyboard-row{gap:.1rem;margin-bottom:.1rem}}@media (max-width: 370px){.keyboard-key{width:1.3rem;height:1.3rem;font-size:.7rem;border-radius:5px;margin:.03rem}}@media (max-width: 768px){.typing-area{font-size:2rem;letter-spacing:.3rem;padding:1rem 1.5rem;min-height:60px}.letter{font-size:2rem}.image-container img{width:min(50vw,150px);height:min(50vw,150px)}.typing-stats{font-size:1rem;padding:.6rem 1rem}.typing-stats .stat-item span:last-child{font-size:1.3rem}}.hidden-word{display:flex;justify-content:center;align-items:center;min-height:60px;gap:.2em}.hidden-word .letter{color:#1d3557;font-size:2.5rem;font-weight:700;margin:0 .1em}@media (max-width: 768px){.hidden-word .letter{font-size:2rem}}.top-menu-btn{position:static;display:block;margin:18px auto 0;background:#fff;color:#333;border:1px solid #ccc;border-radius:8px;padding:8px 18px;font-size:1rem;font-weight:500;box-shadow:0 2px 8px #00000012;cursor:pointer;transition:background .2s,color .2s}.top-menu-btn:hover{background:#f0f0f0;color:#1976d2}.math-game{font-family:Comic Sans MS,cursive,sans-serif;min-height:100vh;padding:2rem 1rem;display:flex;flex-direction:column;align-items:center;gap:1.5rem;position:relative;overflow-x:hidden}.typing-stats{width:100%;max-width:500px;display:flex;justify-content:space-around;align-items:center;background:rgba(255,255,255,.2);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:20px;padding:.8rem 1.5rem;box-shadow:0 8px 25px #0000001a;border:2px solid rgba(255,255,255,.3);font-size:1.2rem;color:#0081a7}.typing-stats .stat-item{display:flex;flex-direction:column;align-items:center;gap:.3rem}.typing-stats .stat-item span:first-child{font-weight:700;text-transform:uppercase;font-size:.9rem;letter-spacing:1px}.typing-stats .stat-item span:last-child{font-size:1.5rem;font-weight:700;color:#f07167}.timer-bar-container{width:100%;max-width:500px;height:12px;background:rgba(255,255,255,.3);border-radius:10px;overflow:hidden;box-shadow:inset 0 2px 4px #0003;border:2px solid rgba(255,255,255,.5)}.timer-bar{height:100%;background:linear-gradient(90deg,#4CAF50,#8BC34A,#FFC107,#FF5722);border-radius:8px}.question-container-math{background:linear-gradient(135deg,rgba(255,255,255,.7),rgba(255,255,255,.4));-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:30px;padding:2rem 4rem;margin:1rem 0;box-shadow:0 10px 30px #0000001a;border:2px solid rgba(255,255,255,.8)}.math-question{font-size:clamp(2.5rem,8vw,4rem);color:#003459;text-shadow:2px 2px 4px rgba(0,0,0,.1)}.options-container-math{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem;width:100%;max-width:600px}.option-button-math{background:linear-gradient(135deg,#F07167,#FED9B7);border:3px solid transparent;border-radius:20px;padding:1.5rem;font-size:2rem;font-weight:700;color:#fff;cursor:pointer;box-shadow:0 8px 25px #00000026;transition:all .3s ease}.option-button-math:hover{transform:translateY(-5px);box-shadow:0 12px 30px #0003}.option-button-math.correct{background:linear-gradient(135deg,#4CAF50,#8BC34A);border-color:#fff;transform:scale(1.05)}.option-button-math.incorrect{background:linear-gradient(135deg,#d32f2f,#f44336);animation:shake .5s ease}.option-button-math.correct-answer{background:linear-gradient(135deg,#a5d6a7,#c8e6c9);color:#1b5e20;border-color:#4caf50}.option-button-math.disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}.math-end-popup{position:fixed;top:0;left:0;width:100vw;height:100vh;display:flex;justify-content:center;align-items:center;background:rgba(0,0,0,.5);z-index:2000;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.math-end-popup{flex-direction:column}.math-end-popup h2{color:var(--text-secondary);font-size:2.5rem;margin-bottom:1.5rem;text-shadow:2px 2px 4px var(--shadow-light)}.math-end-popup .final-stats-math,.math-end-popup .end-screen-buttons-math{width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center}.math-end-popup .final-stats-math{margin:1.5rem 0 .5rem;gap:.8rem}.math-end-popup .end-screen-buttons-math{flex-direction:row;gap:1rem;margin-top:2rem}.math-end-popup .stat-row-math{display:flex;justify-content:space-between;align-items:center;padding:.8rem 1rem;background:rgba(255,255,255,.1);border-radius:15px;border-bottom:1px solid var(--card-border);width:100%;max-width:300px}.math-end-popup .stat-label-final{color:var(--text-secondary);font-size:1.1rem;font-weight:700;text-shadow:1px 1px 3px var(--shadow-light)}.math-end-popup .stat-value-final{color:var(--text-primary);font-size:1.2rem;font-weight:700;background:var(--button-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-shadow:2px 2px 4px var(--shadow-medium)}.math-end-popup button{padding:.8rem 1.5rem;border:none;border-radius:20px;font-size:1.1rem;font-weight:700;cursor:pointer;transition:all .3s ease;box-shadow:0 8px 25px #0003;font-family:Comic Sans MS,cursive,sans-serif;color:#fff;background:var(--button-gradient)}@media (min-width: 768px){.math-game{flex-direction:column;flex-wrap:nowrap;justify-content:center;align-items:center;gap:2rem;padding:4rem 2rem}.math-game .body-img{margin:0;flex:0 1 300px}.math-game .options{justify-content:center!important;flex:unset;max-width:100%}.math-game h1,.math-game h2,.math-game h3{width:100%;text-align:center}}.option-button.correct{background-color:#4caf50!important;color:#fff}.option-button.incorrect{background-color:#f44336!important;color:#fff}.math-end-popup button:hover{transform:translateY(-2px);box-shadow:0 6px 15px #0003}.math-game-actions{margin-top:2rem;display:flex;justify-content:center}.menu-btn-math{background:var(--card-bg);color:var(--text-secondary);border:2px solid var(--card-border);padding:.8rem 1.5rem;border-radius:20px;font-weight:700;font-size:1rem;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 10px var(--shadow-light)}.menu-btn-math:hover{background:var(--card-bg);border-color:var(--text-secondary);transform:translateY(-2px);box-shadow:0 6px 15px var(--shadow-medium)}.options-math{display:flex;flex-direction:column;gap:2rem;width:100%;max-width:600px;align-items:center;margin:2rem 0 2.5rem}@media (min-width: 600px){.options-math{flex-direction:row;gap:3rem;justify-content:center;align-items:stretch}}.sorting-game{background:transparent;font-family:Comic Sans MS,cursive,sans-serif;min-height:100vh;padding:2rem 1rem;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.5rem;overflow:hidden;position:relative}.sorting-game h2{color:#0081a7;font-size:clamp(1.6rem,5vw,2.4rem);text-shadow:2px 2px 4px rgba(0,0,0,.1);margin-bottom:1rem}.items-list-sorting{display:flex;flex-direction:column;gap:1rem;width:100%;max-width:450px;list-style:none;padding:1rem;background-color:#ffffff1a;border-radius:25px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);transition:all .3s ease-in-out}.sortable-item-sorting{background:linear-gradient(135deg,#FED9B7,#F07167);color:#fff;padding:1rem 1.5rem;border-radius:20px;font-size:clamp(1.1rem,4vw,1.4rem);font-weight:700;cursor:grab;box-shadow:0 5px 15px #00000026;-webkit-user-select:none;user-select:none;display:flex;align-items:center;gap:1rem;position:relative}.sortable-item-sorting:active{cursor:grabbing}.drag-handle{font-size:1.5em;color:#ffffffb3;cursor:grab}.items-list-sorting.correct{border-color:#81c784;box-shadow:0 0 20px 5px #4caf5080}.items-list-sorting.incorrect{animation:shake-list .5s ease-in-out;border-color:#d32f2f;box-shadow:0 0 20px 5px #f4433680}@keyframes shake-list{0%,to{transform:translate(0)}20%,60%{transform:translate(-10px)}40%,80%{transform:translate(10px)}}.buttons-sorting{display:flex;justify-content:center;gap:1rem;margin-top:1.5rem;flex-wrap:wrap}.buttons-sorting button{background:linear-gradient(135deg,#00AFB9,#0081A7);color:#fff;border:none;padding:.8rem 1.8rem;border-radius:25px;font-size:clamp(1rem,3.5vw,1.2rem);font-weight:700}.sorting-end-wrapper{position:fixed;top:0;right:0;bottom:0;left:0;background-color:#0009;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:999;display:grid;place-items:center;padding:1rem}.sorting-end-popup{background:var(--card-bg);-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);border:2px solid var(--card-border);border-radius:30px;padding:2rem 3rem;width:100%;max-width:450px;box-shadow:0 15px 40px var(--shadow-heavy);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.sorting-end-popup h2{font-size:clamp(1.8rem,5vw,2.5rem);color:var(--text-secondary);text-shadow:2px 2px 4px var(--shadow-light)}.sorting-end-popup p{font-size:clamp(1.2rem,4vw,1.6rem);color:var(--text-primary);margin-bottom:2rem}.end-screen-buttons{display:flex;gap:1rem}.end-screen-buttons button{padding:.8rem 1.5rem;border:none;border-radius:20px;font-size:1.1rem;font-weight:700;cursor:pointer;transition:all .3s ease;box-shadow:0 8px 25px #0003;font-family:Comic Sans MS,cursive,sans-serif;color:#fff;background:var(--button-gradient)}@media (max-width: 400px){.end-screen{max-width:90vw;max-height:80vh;padding:1rem}}.buttons button{background-color:#00afb9;color:#fff;border:none;padding:.7rem 1.6rem;border-radius:25px;font-size:clamp(1rem,3vw,1.1rem);font-weight:700;cursor:pointer;box-shadow:0 3px 6px #0003;transition:background-color .2s ease;min-width:160px}.buttons button:hover{background-color:#0081a7}.result{margin-top:2rem;padding:1rem 2rem;border-radius:15px;width:fit-content;max-width:90%}.correct{background-color:#c2f970;color:#355e3b;box-shadow:0 0 10px #64c8644d}.incorrect{background-color:#ffb5b5;color:#900;box-shadow:0 0 10px #f003}.result h3{margin:.5rem 0;font-size:clamp(1.3rem,4vw,1.6rem)}.result p{font-size:clamp(1rem,3vw,1.1rem);margin-bottom:1rem}.result button{background-color:#00afb9;color:#fff;border:none;padding:.6rem 1.4rem;margin:.4rem;border-radius:25px;font-size:clamp(.9rem,3vw,1rem);font-weight:700;cursor:pointer;box-shadow:0 2px 5px #00000026;transition:background-color .2s ease}.result button:hover{background-color:#f07167}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background-color:#0006;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:9999;display:flex;justify-content:center;align-items:center;padding:1rem;overflow:hidden}.end-screen{background-color:#fff;border:4px solid #00AFB9;border-radius:20px;padding:1.5rem 1rem;width:100%;max-width:360px;max-height:80vh;box-sizing:border-box;text-align:center;box-shadow:0 4px 20px #00000040;z-index:1001;display:flex;flex-direction:column;justify-content:center;align-items:center}.end-screen h2{font-size:clamp(1.6rem,5vw,2.2rem);color:#0081a7;margin-bottom:1rem}.end-screen p{color:#f07167;font-size:clamp(1.2rem,4vw,1.4rem);margin-bottom:2rem}.end-screen button{background-color:#00afb9;color:#fff;border:none;padding:.6rem 1.5rem;margin:.5rem;border-radius:25px;font-size:clamp(1rem,3vw,1.2rem);cursor:pointer;box-shadow:0 3px 6px #00000026;transition:background-color .3s ease}.end-screen button:hover{background-color:#0081a7}.sorting-game{z-index:0}.overlay{z-index:9999}@media (max-height: 700px){.end-screen{position:absolute;top:50%;transform:translateY(-50%)}}.instructions-page{background:transparent;text-align:center;padding:2rem 1rem;font-family:Comic Sans MS,cursive,sans-serif;min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center}.instructions-page h1{font-size:clamp(2.5rem,8vw,4rem);background:linear-gradient(135deg,var(--text-secondary),#00AFB9,var(--bg-accent));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:2rem;text-shadow:none;position:relative}.instructions-page h1:before{content:"📚";position:absolute;left:-50px;top:50%;transform:translateY(-50%);font-size:.6em;animation:book-bounce 2s ease-in-out infinite}.instructions-page h1:after{content:"📖";position:absolute;right:-50px;top:50%;transform:translateY(-50%);font-size:.6em;animation:book-bounce 2s ease-in-out infinite 1s}@keyframes book-bounce{0%,to{transform:translateY(-50%) scale(1) rotate(0)}50%{transform:translateY(-50%) scale(1.2) rotate(10deg)}}.cards-container{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;max-width:1200px;width:100%;margin:0 auto 3rem;padding:0 1rem}.instruction-card{background:var(--card-bg);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:2px solid var(--card-border);border-radius:25px;padding:2rem;box-shadow:0 12px 40px var(--shadow-light);transition:all .4s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.instruction-card:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .8s}.instruction-card:hover:before{left:100%}.instruction-card:hover{transform:translateY(-8px);box-shadow:0 20px 60px var(--shadow-medium);border-color:#fff6}.instruction-icon{font-size:3rem;margin-bottom:1rem;display:block;animation:icon-float 3s ease-in-out infinite}@keyframes icon-float{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-10px) rotate(5deg)}}.instruction-card h2{color:var(--text-secondary);font-size:1.5rem;margin-bottom:1rem;font-weight:700;text-shadow:2px 2px 4px var(--shadow-light)}.instruction-card p{color:var(--text-primary);line-height:1.6;font-size:1rem;margin-bottom:1rem}.stats-card{background:linear-gradient(135deg,rgba(0,175,185,.15),rgba(0,129,167,.15));border-color:#00afb94d;position:relative}.stats-card:after{content:"📊";position:absolute;top:-10px;right:-10px;font-size:2rem;background:var(--card-bg);border-radius:50%;width:50px;height:50px;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 15px var(--shadow-medium);animation:stats-pulse 2s ease-in-out infinite}@keyframes stats-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.stats-hint{background:rgba(0,175,185,.1);border:1px solid rgba(0,175,185,.3);border-radius:15px;padding:.8rem;margin-top:1rem;font-size:.9rem;color:#00afb9;font-weight:700;animation:hint-glow 2s ease-in-out infinite}@keyframes hint-glow{0%,to{box-shadow:0 0 5px #00afb94d}50%{box-shadow:0 0 15px #00afb999}}.back-btn{background:var(--button-gradient);color:#fff;border:none;padding:1rem 2rem;border-radius:30px;font-size:1.2rem;font-weight:700;cursor:pointer;box-shadow:0 8px 25px var(--shadow-medium);transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;font-family:inherit}.back-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:left .5s}.back-btn:hover:before{left:100%}.back-btn:hover{transform:translateY(-5px) scale(1.05);box-shadow:0 15px 35px var(--shadow-heavy)}.instructions-decorative{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:-1}.decorative-icon{position:absolute;font-size:2rem;opacity:.3;animation:float-decorative 8s ease-in-out infinite}.decorative-icon:nth-child(1){top:15%;left:10%;animation-delay:0s}.decorative-icon:nth-child(2){top:25%;right:15%;animation-delay:2s}.decorative-icon:nth-child(3){bottom:35%;left:20%;animation-delay:4s}.decorative-icon:nth-child(4){bottom:25%;right:10%;animation-delay:6s}@keyframes float-decorative{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-25px) rotate(15deg)}}@media (max-width: 768px){.instructions-page{padding:1rem}.cards-container{grid-template-columns:1fr;gap:1.5rem}.instruction-card{padding:1.5rem}.instruction-card h2{font-size:1.3rem}.instruction-card p{font-size:.9rem}.back-btn{font-size:1rem;padding:.8rem 1.5rem}.instructions-page h1:before,.instructions-page h1:after{display:none}}@media (max-width: 480px){.instruction-icon{font-size:2.5rem}.stats-card:after{width:40px;height:40px;font-size:1.5rem}.stats-hint{font-size:.8rem;padding:.6rem}}.music-toggle{position:fixed;top:20px;right:20px;z-index:10000;background:rgba(0,175,185,.9);-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);border:2px solid var(--card-border);color:#fff;font-size:1.8rem;border-radius:50%;width:60px;height:60px;cursor:pointer;box-shadow:0 8px 25px var(--shadow-medium);transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.music-toggle:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:left .6s}.music-toggle:hover:before{left:100%}.music-toggle:hover{background:rgba(0,129,167,.9);transform:translateY(-3px) scale(1.1);box-shadow:0 12px 35px var(--shadow-heavy);border-color:#ffffff80}.music-toggle:active{transform:translateY(-1px) scale(1.05)}.music-toggle.muted{background:rgba(240,113,103,.9);animation:pulse-muted 2s ease-in-out infinite}@keyframes pulse-muted{0%,to{transform:scale(1);box-shadow:0 8px 25px var(--shadow-medium)}50%{transform:scale(1.05);box-shadow:0 12px 35px #f0716766}}.music-toggle:after{content:"";position:absolute;top:50%;left:50%;width:100%;height:100%;border:2px solid rgba(255,255,255,.3);border-radius:50%;transform:translate(-50%,-50%) scale(0);opacity:0;transition:all .3s ease}.music-toggle:not(.muted):after{animation:sound-wave 2s ease-out infinite}@keyframes sound-wave{0%{transform:translate(-50%,-50%) scale(0);opacity:1}to{transform:translate(-50%,-50%) scale(2);opacity:0}}.dark-mode .music-toggle{background:rgba(0,212,255,.9);border-color:#fff3;box-shadow:0 8px 25px var(--shadow-heavy)}.dark-mode .music-toggle:hover{background:rgba(0,153,204,.9);box-shadow:0 12px 35px #0009}.dark-mode .music-toggle.muted{background:rgba(255,107,107,.9)}@media (max-width: 768px){.music-toggle{width:50px;height:50px;font-size:1.5rem;top:15px;right:15px}}@media (max-width: 480px){.music-toggle{width:45px;height:45px;font-size:1.3rem;top:10px;right:10px}}.theme-toggle{position:fixed;top:20px;left:20px;z-index:10000;background:rgba(255,255,255,.2);-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);border:2px solid rgba(255,255,255,.3);color:#333;font-size:1.8rem;border-radius:50%;width:60px;height:60px;cursor:pointer;box-shadow:0 8px 25px #0003;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.theme-toggle:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:left .6s}.theme-toggle:hover:before{left:100%}.theme-toggle:hover{background:rgba(255,255,255,.3);transform:translateY(-3px) scale(1.1);box-shadow:0 12px 35px #0000004d;border-color:#ffffff80}.theme-toggle:active{transform:translateY(-1px) scale(1.05)}.theme-icon{font-size:1.5rem;z-index:2;position:relative}.theme-ripple{position:absolute;top:50%;left:50%;width:100%;height:100%;border:2px solid rgba(255,255,255,.3);border-radius:50%;transform:translate(-50%,-50%);pointer-events:none}.dark-mode .theme-toggle{background:rgba(0,0,0,.3);border-color:#fff3;color:#fff;box-shadow:0 8px 25px #0006}.dark-mode .theme-toggle:hover{background:rgba(0,0,0,.4);border-color:#ffffff4d;box-shadow:0 12px 35px #00000080}@media (max-width: 768px){.theme-toggle{width:50px;height:50px;font-size:1.5rem;top:15px;left:15px}.theme-icon{font-size:1.2rem}}@media (max-width: 480px){.theme-toggle{width:45px;height:45px;font-size:1.3rem;top:10px;left:10px}.theme-icon{font-size:1.1rem}}.volume-controls-container{position:fixed;top:20px;right:20px;background-color:var(--ui-background-color-translucent);color:var(--text-color);padding:15px;border-radius:12px;display:flex;flex-direction:column;gap:15px;z-index:1001;box-shadow:0 4px 12px #0003;border:1px solid var(--border-color);transition:background-color .3s,color .3s;max-width:180px}.volume-slider{display:flex;align-items:center;gap:10px}.volume-slider label{font-size:14px;font-weight:600;width:40px;text-align:center}.volume-slider input[type=range]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:120px;height:8px;background:var(--slider-track-color);border-radius:5px;outline:none;opacity:.8;transition:opacity .2s}.volume-slider input[type=range]:hover{opacity:1}.volume-slider input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:20px;height:20px;background:var(--primary-color);border-radius:50%;cursor:pointer;border:3px solid var(--slider-thumb-border-color)}.volume-slider input[type=range]::-moz-range-thumb{width:20px;height:20px;background:var(--primary-color);border-radius:50%;cursor:pointer;border:3px solid var(--slider-thumb-border-color)}@media (max-width: 600px){.volume-controls-container{top:10px;right:10px;left:auto;bottom:auto;padding:8px 10px;max-width:140px;gap:8px}.volume-slider label{font-size:12px;width:32px}.volume-slider input[type=range]{width:70px;height:6px}.volume-slider input[type=range]::-webkit-slider-thumb,.volume-slider input[type=range]::-moz-range-thumb{width:14px;height:14px}}.sound-matching-game{background:transparent;font-family:Comic Sans MS,cursive,sans-serif;min-height:100vh;padding:2rem 1rem;display:flex;flex-direction:column;align-items:center;gap:1.5rem;position:relative;overflow:hidden}.game-stats-sound{width:90%;max-width:600px;display:flex;justify-content:space-around;align-items:center;background:rgba(255,255,255,.2);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:20px;padding:.8rem 1rem;box-shadow:0 8px 25px #0000001a;border:2px solid rgba(255,255,255,.3)}.stat-item{display:flex;flex-direction:column;align-items:center;gap:.2rem;text-align:center;flex-basis:0;flex-grow:1}.stat-label{font-size:.9rem;color:#0081a7;font-weight:700;text-transform:uppercase;letter-spacing:1px}.stat-value{font-size:1.8rem;font-weight:700;color:#f07167;text-shadow:2px 2px 4px rgba(0,0,0,.2)}.time-warning{color:#f44336!important;animation:pulse 1s infinite}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.time-progress-container{width:100%;max-width:600px;margin:0 auto}.time-progress-bar{width:100%;height:12px;background:rgba(255,255,255,.3);border-radius:10px;overflow:hidden;box-shadow:inset 0 2px 4px #0003;border:2px solid rgba(255,255,255,.5)}.time-progress-fill{height:100%;background:linear-gradient(90deg,#4CAF50,#8BC34A,#FFC107,#FF5722);border-radius:8px;transition:width .5s ease}.sound-prompt{text-align:center}.play-sound-btn{background:linear-gradient(135deg,#F07167,#FED9B7);border:none;border-radius:50%;width:120px;height:120px;font-size:3rem;color:#fff;cursor:pointer;box-shadow:0 8px 25px #0003;display:grid;place-items:center;margin:0 auto 1rem}.sound-prompt p{font-size:1.2rem;color:#0081a7;font-weight:700}.image-options{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:1.5rem;width:100%;max-width:800px}.image-option-card{background-color:#fff6;border:4px solid transparent;border-radius:25px;padding:1rem;cursor:pointer;box-shadow:0 5px 15px #0000001a;transition:all .3s ease-in-out;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.image-option-card img{width:150px;height:150px;object-fit:contain;display:block}.image-option-card.correct{border-color:#4caf50;transform:scale(1.1);box-shadow:0 0 25px #4caf50b3}.image-option-card.incorrect{border-color:#f44336;animation:shake .5s ease-in-out;box-shadow:0 0 25px #f44336b3}.image-option-card.disabled{opacity:.5;cursor:not-allowed;transform:scale(.9)}.game-over-modal{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.6);display:flex;justify-content:center;align-items:center;z-index:1000;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.modal-content{background:linear-gradient(135deg,rgba(255,255,255,.9),rgba(255,255,255,.8));-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);border-radius:30px;padding:2rem 3rem;text-align:center;box-shadow:0 15px 50px #0000004d;border:2px solid rgba(255,255,255,.4);max-width:500px;width:90%}.modal-content h2{color:#0081a7;font-size:2.5rem;margin-bottom:1.5rem;text-shadow:2px 2px 4px rgba(0,0,0,.1)}.final-stats{margin:1.5rem 0;display:flex;flex-direction:column;gap:.8rem;text-align:left}.stat-row{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;font-size:1.1rem;font-weight:700;border-bottom:2px solid rgba(0,129,167,.1)}.stat-label-final{color:#0081a7}.stat-value-final{color:#f07167;font-size:1.3rem}.final-score{color:#4caf50!important;font-size:1.5rem!important;font-weight:700}.modal-buttons{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap;margin-top:2rem}.play-again-btn,.menu-btn{padding:1rem 2rem;border:none;border-radius:20px;font-size:1.1rem;font-weight:700;cursor:pointer;transition:all .3s ease;box-shadow:0 8px 25px #0003;font-family:Comic Sans MS,cursive,sans-serif}.play-again-btn{background:linear-gradient(135deg,#4CAF50,#8BC34A);color:#fff}.play-again-btn:hover{background:linear-gradient(135deg,#45a049,#7cb342);transform:translateY(-2px);box-shadow:0 12px 35px #0000004d}.menu-btn{background:linear-gradient(135deg,#F07167,#FED9B7);color:#fff}.menu-btn:hover{background:linear-gradient(135deg,#e65a50,#f0c8a0);transform:translateY(-2px);box-shadow:0 12px 35px #0000004d}@media (max-width: 768px){.game-stats-sound{flex-direction:column;gap:1rem;padding:1rem}.stat-item{flex-direction:row;gap:.5rem}.modal-content{padding:2rem;margin:1rem}.modal-content h2{font-size:2rem}.modal-buttons{flex-direction:column}.play-again-btn,.menu-btn{width:100%}}.identification-game{font-family:Comic Sans MS,cursive,sans-serif;min-height:100vh;padding:2rem 1rem;display:flex;flex-direction:column;align-items:center;gap:1.5rem;position:relative;overflow-x:hidden}.question-container-id{background:linear-gradient(135deg,rgba(255,255,255,.7),rgba(255,255,255,.4));-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:30px;padding:1.5rem;margin:1rem 0;box-shadow:0 10px 30px #0000001a;border:2px solid rgba(255,255,255,.8);text-align:center}.item-image-id{width:100%;max-width:250px;height:250px;object-fit:contain;border-radius:20px}.prompt-id{margin-top:1rem;font-size:clamp(1.5rem,5vw,2rem);color:#003459}.options-container-id{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem;width:100%;max-width:600px}.option-button-id{background:linear-gradient(135deg,#00AFB9,#0081A7);border:3px solid transparent;border-radius:20px;padding:1.5rem;font-size:1.5rem;font-weight:700;color:#fff;cursor:pointer;box-shadow:0 8px 25px #00000026;transition:all .3s ease;text-transform:capitalize}.option-button-id:hover{transform:translateY(-5px);box-shadow:0 12px 30px #0003}.option-button-id.correct{background:linear-gradient(135deg,#4CAF50,#8BC34A);border-color:#fff;transform:scale(1.05)}.option-button-id.incorrect{background:linear-gradient(135deg,#d32f2f,#f44336);animation:shake .5s ease}.option-button-id.correct-answer{background:linear-gradient(135deg,#a5d6a7,#c8e6c9);color:#1b5e20;border-color:#4caf50}.option-button-id.disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}@keyframes shake{0%,to{transform:translate(0)}20%,60%{transform:translate(-10px)}40%,80%{transform:translate(10px)}}.identification-game-end-wrapper{position:fixed;top:0;left:0;width:100vw;height:100vh;background:rgba(0,0,0,.18);display:flex;align-items:center;justify-content:center;z-index:1000}.identification-game-end-popup{background:rgba(255,255,255,.95);border-radius:24px;box-shadow:0 8px 32px #0000002e;padding:2.5rem 2rem 2rem;min-width:320px;max-width:95vw;text-align:center;display:flex;flex-direction:column;align-items:center}.end-screen-buttons{display:flex;gap:1.2rem;justify-content:center;margin-top:2rem}.end-screen-buttons .play-again-btn,.end-screen-buttons .menu-btn{font-size:1.1rem;padding:.8rem 1.6rem;border-radius:12px;border:none;font-weight:600;cursor:pointer;transition:background .2s,color .2s,transform .1s;box-shadow:0 2px 8px #00000012}.end-screen-buttons .play-again-btn{background:linear-gradient(135deg,#4CAF50,#8BC34A);color:#fff}.end-screen-buttons .menu-btn{background:linear-gradient(135deg,#ffb199,#ff0844);color:#fff}.end-screen-buttons .play-again-btn:hover{background:linear-gradient(135deg,#388e3c,#689f38)}.end-screen-buttons .menu-btn:hover{background:linear-gradient(135deg,#ff0844,#ffb199)}.statistics-page{background:transparent;font-family:Comic Sans MS,cursive,sans-serif;min-height:100vh;padding:2rem 1rem;position:relative;overflow-x:hidden}.statistics-container{max-width:1200px;margin:0 auto}.stats-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;flex-wrap:wrap;gap:1rem}.stats-header h1{font-size:clamp(2rem,5vw,3rem);background:linear-gradient(135deg,var(--text-secondary),#00AFB9,var(--bg-accent));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin:0;text-align:center;flex:1}.view-controls{display:flex;gap:.5rem;margin:0 1rem}.view-btn{background:var(--card-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:2px solid var(--card-border);border-radius:12px;padding:.6rem 1rem;color:var(--text-secondary);font-weight:700;transition:all .3s ease;cursor:pointer;font-size:.85rem}.view-btn.active{background:var(--bg-accent);color:#fff;border-color:var(--bg-accent);transform:translateY(-2px);box-shadow:0 6px 20px #00afb94d}.view-btn:hover:not(.active){background:rgba(255,255,255,.2);transform:translateY(-1px)}.back-button,.clear-button{background:var(--card-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:2px solid var(--card-border);border-radius:15px;padding:.8rem 1.2rem;color:var(--text-secondary);text-decoration:none;font-weight:700;transition:all .3s ease;cursor:pointer;font-size:.9rem}.back-button:hover,.clear-button:hover{background:rgba(255,255,255,.3);transform:translateY(-2px);box-shadow:0 8px 25px var(--shadow-light)}.clear-button{background:rgba(240,113,103,.2);color:var(--bg-accent)}.clear-button:hover{background:rgba(240,113,103,.3)}.general-summary{background:var(--card-bg);-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);border:2px solid var(--card-border);border-radius:25px;padding:2rem;margin-bottom:2rem;box-shadow:0 12px 40px var(--shadow-light)}.general-summary h2{text-align:center;margin-bottom:1.5rem;color:var(--text-secondary);font-size:clamp(1.5rem,4vw,2rem)}.summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem}.summary-card{background:var(--card-bg);border-radius:20px;padding:1.5rem;text-align:center;border:1px solid var(--card-border);transition:all .3s ease}.summary-card:hover{transform:translateY(-5px);box-shadow:0 10px 30px var(--shadow-medium)}.summary-icon{font-size:2.5rem;margin-bottom:.5rem}.summary-value{font-size:2rem;font-weight:700;color:var(--bg-accent);margin-bottom:.5rem}.summary-label{font-size:.9rem;color:var(--text-secondary);font-weight:700;text-transform:uppercase;letter-spacing:1px}.games-stats-section{background:var(--card-bg);-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);border:2px solid var(--card-border);border-radius:25px;padding:2rem;margin-bottom:2rem;box-shadow:0 12px 40px var(--shadow-light)}.games-stats-section h2{text-align:center;margin-bottom:1.5rem;color:var(--text-secondary);font-size:clamp(1.5rem,4vw,2rem)}.games-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem}.game-stats-card{background:var(--card-bg);border-radius:20px;padding:1.5rem;border:2px solid var(--card-border);transition:all .3s ease;cursor:pointer}.game-stats-card:hover{transform:translateY(-3px);box-shadow:0 10px 30px var(--shadow-medium)}.game-stats-card h3{margin:0 0 1rem;color:var(--text-secondary);font-size:1.3rem;text-align:center}.game-stats-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:1rem}.stat-item{text-align:center}.stat-label{display:block;font-size:.8rem;color:var(--text-primary);font-weight:700;text-transform:uppercase;margin-bottom:.3rem}.stat-value{display:block;font-size:1.2rem;color:var(--bg-accent);font-weight:700}.detailed-stats{border-top:1px solid var(--card-border);padding-top:1rem;margin-top:1rem}.detailed-stats-content{display:none}.detailed-stats-content.show{display:block}.theme-stats{margin-top:1rem;padding:1rem;background:var(--card-bg);border-radius:15px;border:1px solid var(--card-border)}.theme-stats h4{margin:0 0 .5rem;color:var(--text-secondary);font-size:1rem}.theme-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:.5rem}.theme-stat{text-align:center;padding:.5rem;background:var(--card-bg);border-radius:10px;border:1px solid var(--card-border)}.favorite-game{background:var(--card-bg);-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);border:2px solid var(--card-border);border-radius:25px;padding:2rem;margin-bottom:2rem;box-shadow:0 12px 40px var(--shadow-light)}.favorite-game h2{text-align:center;margin-bottom:1.5rem;color:var(--text-secondary);font-size:clamp(1.5rem,4vw,2rem)}.favorite-game-card{background:var(--card-bg);border-radius:20px;padding:1.5rem;text-align:center;border:2px solid var(--card-border);transition:all .3s ease}.favorite-icon{font-size:3rem;margin-bottom:1rem}.favorite-game-card h3{margin:0 0 .5rem;color:var(--text-secondary);font-size:1.5rem}.favorite-game-card p{margin:0;color:var(--text-primary);font-size:1rem}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.5);display:flex;justify-content:center;align-items:center;z-index:10000;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.confirm-modal{background:var(--card-bg);-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);border:2px solid var(--card-border);border-radius:20px;padding:2rem;max-width:400px;width:90%;text-align:center;box-shadow:0 20px 60px var(--shadow-heavy)}.confirm-modal h3{margin:0 0 1rem;color:var(--text-secondary);font-size:1.5rem}.confirm-modal p{margin:0 0 2rem;color:var(--text-primary);line-height:1.5}.modal-buttons{display:flex;gap:1rem;justify-content:center}.confirm-btn,.cancel-btn{padding:.8rem 1.5rem;border:none;border-radius:15px;font-weight:700;cursor:pointer;transition:all .3s ease;font-size:.9rem}.confirm-btn{background:var(--button-gradient);color:#fff}.confirm-btn:hover{transform:translateY(-2px);box-shadow:0 8px 25px var(--shadow-medium)}.cancel-btn{background:var(--card-bg);color:var(--text-primary);border:2px solid var(--card-border)}.cancel-btn:hover{background:rgba(255,255,255,.1);transform:translateY(-2px)}.loading{display:flex;justify-content:center;align-items:center;min-height:200px;font-size:1.2rem;color:var(--text-secondary)}.top-scores-section{background:var(--card-bg);-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);border:2px solid var(--card-border);border-radius:25px;padding:2rem;margin-bottom:2rem;box-shadow:0 12px 40px var(--shadow-light)}.top-scores-section h2{text-align:center;margin-bottom:1.5rem;color:var(--text-secondary);font-size:clamp(1.5rem,4vw,2rem)}.top-scores-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem}.top-score-card{background:var(--card-bg);border-radius:15px;padding:1rem;border:1px solid var(--card-border);display:flex;align-items:center;gap:1rem;transition:all .3s ease}.top-score-card:hover{transform:translateY(-3px);box-shadow:0 8px 25px var(--shadow-medium)}.rank{background:var(--bg-accent);color:#fff;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.1rem;flex-shrink:0}.score-info{flex:1}.game-name{font-weight:700;color:var(--text-secondary);font-size:1rem;margin-bottom:.3rem}.score{font-size:1.2rem;font-weight:700;color:var(--bg-accent);margin-bottom:.2rem}.date{font-size:.8rem;color:var(--text-primary);opacity:.8}.loading,.no-data{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;text-align:center;background:var(--card-bg);-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);border:2px solid var(--card-border);border-radius:25px;padding:3rem;margin:2rem auto;max-width:600px}.loading{font-size:1.5rem;color:var(--text-secondary);font-weight:700}.no-data h2{color:var(--text-secondary);margin-bottom:1rem;font-size:2rem}.no-data p{color:var(--text-primary);margin-bottom:2rem;font-size:1.1rem}@media (max-width: 768px){.stats-header{flex-direction:column;text-align:center}.summary-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.games-grid{grid-template-columns:1fr}.game-stats-summary{grid-template-columns:repeat(2,1fr)}.modal-buttons{flex-direction:column}}@media (max-width: 480px){.summary-grid{grid-template-columns:1fr}}
