@keyframes expandDown{0%{opacity:0;transform:translateY(-20px) scaleY(.95);max-height:0}to{opacity:1;transform:translateY(0) scaleY(1);max-height:2000px}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}*{margin:0;padding:0;box-sizing:border-box}html,body{width:100%;max-width:100vw;overflow-x:hidden;box-sizing:border-box}*{box-sizing:border-box}body::-webkit-scrollbar{display:none}body{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;line-height:1.6;background:#fff}.font-game-title,.font-game-header,h1.hero-title,h2.section-title,.game-title,.game-header{font-family:"Press Start 2P",cursive;font-size:clamp(1rem,2vw,1.5rem);line-height:1.4;letter-spacing:.05em}.font-game-ui,.font-game-button,.cta-button,.game-button,.game-ui,.game-stats,.difficulty-name,.quiz-card-title:not(.teacher-layout .quiz-card-title){font-family:Orbitron,sans-serif;font-weight:600;letter-spacing:.02em}.hero-title{font-family:"Press Start 2P",cursive;font-size:clamp(1.2rem,3vw,2rem);line-height:1.4;letter-spacing:.05em}.section-title{font-family:"Press Start 2P",cursive;font-size:clamp(1rem,2.5vw,1.8rem);line-height:1.4;letter-spacing:.05em}.cta-button{font-family:Orbitron,sans-serif;font-weight:700;letter-spacing:.05em}.logo{font-family:"Press Start 2P",cursive;font-size:clamp(1rem,2vw,1.6rem);letter-spacing:.05em}body.quiz-home-page{background-color:#e8f4f8!important;background-image:url(/game-assets/maps/rpg-background.gif);background-position:center;background-size:cover;background-repeat:no-repeat;background-attachment:fixed;position:relative;transform:translateZ(0);-webkit-transform:translateZ(0)}body.quiz-home-page,html.dark body.quiz-home-page{background:url(/game-assets/maps/rpg-background.gif) center/cover no-repeat fixed!important;background-color:transparent!important}html:has(body.quiz-home-page),html.dark:has(body.quiz-home-page){background-color:transparent!important}html.dark body.quiz-home-page{background-color:transparent!important}body.quiz-home-page:before{content:"";position:fixed;top:0;left:0;width:100%;height:100%;background:#fff3;z-index:0;pointer-events:none;will-change:opacity}@media (prefers-reduced-motion: reduce){body.quiz-home-page{background-image:url(/game-assets/maps/rpg-background.gif)}}*{color:inherit}.app{width:100%;max-width:100vw;display:flex;flex-direction:column;position:relative;z-index:1;overflow-x:hidden;box-sizing:border-box}.header{background:linear-gradient(135deg,#0f3a47,#14545f);padding:.8rem 0;box-shadow:0 4px 12px #0a1e2299,0 2px 4px #e5a8234d,inset 0 1px #1a6c7b33;border-bottom:3px solid #E5A823;position:sticky;top:0;z-index:100;width:100%}.header-content{width:100%;margin:0 auto;padding:0 2rem;display:flex;justify-content:space-between;align-items:center;position:relative}.logo{font-family:"Press Start 2P",cursive;font-size:clamp(.8rem,1.8vw,1.4rem);font-weight:400;letter-spacing:.05em;color:#f4c43d;z-index:102;text-shadow:2px 2px 4px #0A1E22,0 0 8px rgba(244,196,61,.4)}.student-page .header .logo{font-family:"Press Start 2P",cursive;letter-spacing:.05em}.student-page .header .nav-link,.student-page .header .link-button{font-family:Orbitron,sans-serif;font-weight:600;letter-spacing:.02em}.nav{display:flex;gap:1.5rem}.nav-link{text-decoration:none;color:#f8d768;font-family:Orbitron,sans-serif;font-weight:600;letter-spacing:.02em;transition:color .3s ease,background-color .3s ease;font-size:.95rem;text-shadow:1px 1px 2px rgba(10,30,34,.5);display:flex;align-items:center;gap:.5rem}.student-page .nav-link{font-family:Orbitron,sans-serif;font-weight:600;letter-spacing:.02em}.nav-link:hover{color:#f4c43d;text-shadow:2px 2px 4px rgba(10,30,34,.7),0 0 8px rgba(244,196,61,.4)}.link-button{background:transparent;border:none;cursor:pointer;color:#f8d768;font-family:Orbitron,sans-serif;font-weight:600;letter-spacing:.02em;font-size:.95rem;display:flex;align-items:center;gap:.5rem;text-shadow:1px 1px 2px rgba(10,30,34,.5);transition:color .3s ease}.student-page .link-button{font-family:Orbitron,sans-serif;font-weight:600;letter-spacing:.02em}.link-button:hover{color:#f4c43d;text-shadow:2px 2px 4px rgba(10,30,34,.7),0 0 8px rgba(244,196,61,.4)}.nav-icon{width:18px;height:18px;filter:brightness(0) invert(1);transition:filter .3s ease}.nav-link:hover .nav-icon,.link-button:hover .nav-icon{filter:brightness(0) invert(1) sepia(1) saturate(5) hue-rotate(15deg)}.mobile-menu-toggle{display:none;background:transparent;border:none;cursor:pointer;padding:.5rem;z-index:102}.menu-icon{width:28px;height:28px;filter:brightness(0) invert(1);transition:transform .3s ease}.mobile-menu-toggle:hover .menu-icon{transform:scale(1.1)}.nav-desktop{display:flex}.nav-mobile{display:none}.mobile-menu-overlay{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;z-index:99;opacity:0;transition:opacity .3s ease}.mobile-menu-overlay.active{opacity:1}@media (max-width: 768px){.mobile-menu-toggle{display:block}.nav-desktop{display:none}.nav-mobile{display:flex;flex-direction:column;position:fixed;top:0;right:-280px;width:280px;height:100vh;background:linear-gradient(135deg,#0f3a47,#14545f);border-left:3px solid #E5A823;padding:5rem 1.5rem 2rem;gap:0;z-index:101;box-shadow:-4px 0 20px #0a1e2299,inset 2px 0 #f8d76833;transition:right .3s ease;overflow-y:auto}.nav-mobile.active{right:0}.nav-mobile .nav-link,.nav-mobile .link-button{padding:1rem;border-bottom:1px solid rgba(229,168,35,.3);font-size:1.1rem;width:100%;justify-content:flex-start;text-align:left;color:#f8d768}.nav-mobile .nav-link:hover,.nav-mobile .link-button:hover{background:#f4c43d26;border-radius:8px;color:#f4c43d;border-left:3px solid #F4C43D;padding-left:calc(1rem - 3px)}.nav-mobile .nav-icon{width:22px;height:22px}.mobile-menu-overlay{display:block;pointer-events:none}.mobile-menu-overlay.active{pointer-events:auto}.mobile-menu-toggle .menu-icon{filter:brightness(0) invert(1)}}.hero{background:linear-gradient(135deg,#e5a82333,#f4c43d26);padding:6rem 0;text-align:center;width:100%;position:relative;box-shadow:0 4px 20px #0a1e2233;border-bottom:3px solid #E5A823;overflow:hidden;min-height:500px}.hero:before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:100%;height:100%;background:radial-gradient(ellipse,rgba(255,255,255,.5) 0%,rgba(255,255,255,.35) 20%,rgba(255,255,255,.2) 40%,rgba(255,255,255,.1) 60%,rgba(255,255,255,.03) 80%,transparent 100%);border-radius:50%;backdrop-filter:blur(40px);-webkit-backdrop-filter:blur(40px);mask:radial-gradient(ellipse,black 0%,black 20%,rgba(0,0,0,.9) 35%,rgba(0,0,0,.7) 50%,rgba(0,0,0,.4) 65%,rgba(0,0,0,.15) 80%,rgba(0,0,0,.05) 90%,transparent 100%);-webkit-mask:radial-gradient(ellipse,black 0%,black 20%,rgba(0,0,0,.9) 35%,rgba(0,0,0,.7) 50%,rgba(0,0,0,.4) 65%,rgba(0,0,0,.15) 80%,rgba(0,0,0,.05) 90%,transparent 100%);z-index:0;pointer-events:none}.hero>*{position:relative;z-index:1}@media (max-width: 768px){.hero:before{backdrop-filter:blur(30px);-webkit-backdrop-filter:blur(30px)}}.hero-content{width:100%;margin:0 auto;padding:0 2rem;max-width:800px}.hero-title{font-family:"Press Start 2P",cursive;font-size:clamp(1.5rem,4vw,2.5rem);font-weight:400;color:#0a1e22;margin-bottom:1.5rem;line-height:1.4;letter-spacing:.05em;text-shadow:2px 2px 4px rgba(255,255,255,.8),0 0 10px rgba(255,255,255,.5)}.hero-subtitle{font-size:clamp(1.2rem,3vw,1.5rem);color:#0f3a47;margin-bottom:2.5rem;max-width:600px;margin-left:auto;margin-right:auto;font-weight:600;font-family:Orbitron,sans-serif;letter-spacing:.02em;text-shadow:1px 1px 3px rgba(255,255,255,.8),0 0 8px rgba(255,255,255,.4)}.cta-button{font-family:Orbitron,sans-serif;background:linear-gradient(135deg,#e5a823,#f4c43d);color:#0a1e22;border:3px solid #E5A823;padding:1rem 2.5rem;font-size:clamp(.9rem,2vw,1.2rem);font-weight:700;letter-spacing:.05em;border-radius:50px;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px #e5a82366,0 2px 4px #0a1e224d;text-shadow:0 1px 2px rgba(255,255,255,.3)}.cta-button:hover{background:linear-gradient(135deg,#f4c43d,#f8d768);border-color:#f4c43d;box-shadow:0 6px 16px #e5a82399,0 4px 8px #0a1e2266;transform:translateY(-2px)}.quiz-difficulty{background:linear-gradient(135deg,#0a1e22,#1a6c7b,#0f3a47);padding:4rem 0;text-align:center;width:100%;border-top:3px solid #E5A823;border-bottom:3px solid #E5A823;box-shadow:0 4px 20px #0a1e2266}.quiz-difficulty-content{width:100%;margin:0 auto;padding:0 2rem}.section-title{font-family:"Press Start 2P",cursive;font-size:clamp(1.2rem,3vw,2rem);font-weight:400;color:#f4c43d;margin-bottom:3rem;line-height:1.4;letter-spacing:.05em;text-shadow:2px 2px 6px rgba(10,30,34,.8),0 0 10px rgba(244,196,61,.3)}.gameplay-preview .section-title,.cta-section .section-title{color:#0a1e22;text-shadow:2px 2px 4px rgba(255,255,255,.8),0 0 10px rgba(255,255,255,.5)}.difficulty-boxes{display:flex;justify-content:center;gap:2rem;flex-wrap:wrap;max-width:800px;margin:0 auto}.difficulty-box{background:#fff;border:2px solid #ff6b35;border-radius:15px;padding:2rem;min-width:200px;min-height:200px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .3s ease,box-shadow .3s ease;flex:1;max-width:220px}.difficulty-box:hover{transform:translateY(-5px);box-shadow:0 10px 20px #0003}.difficulty-label{font-size:1.5rem;font-weight:700;color:#ff6b35}.features{background:#ffffffbf;padding:4rem 0;position:relative;overflow:hidden;width:100%;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px)}@media (max-width: 768px){.features{-webkit-backdrop-filter:none;backdrop-filter:none;background:#fffc}}.features-content{width:100%;margin:0 auto;padding:0 2rem;display:grid;grid-template-columns:1fr 1fr;gap:4rem;max-width:1200px}.features-left,.features-right{display:flex;flex-direction:column;gap:2.5rem}.feature-item{text-align:left}.feature-title{font-family:Orbitron,sans-serif;font-size:clamp(1.1rem,2.5vw,1.6rem);font-weight:700;letter-spacing:.02em;color:#f4c43d;margin-bottom:.8rem;text-shadow:1px 1px 3px rgba(10,30,34,.6)}.feature-subtitle{color:#0a1e22;margin-bottom:.8rem;font-size:1rem;font-weight:500}.feature-line{width:150px;height:4px;background:linear-gradient(90deg,#e5a823,#f4c43d);border-radius:2px;box-shadow:0 2px 4px #e5a82366}.decorative-circle{position:absolute;width:clamp(250px,30vw,400px);height:clamp(250px,30vw,400px);background:#e5a82326;border-radius:50%;z-index:1;border:2px solid rgba(244,196,61,.2)}.decorative-circle.left{left:clamp(-150px,-15vw,-200px);top:50%;transform:translateY(-50%)}.decorative-circle.right{right:clamp(-150px,-15vw,-200px);top:50%;transform:translateY(-50%)}.how-it-works{background:linear-gradient(135deg,#0a1e22e6,#1a6c7be6,#0f3a47e6);padding:5rem 0;width:100%;border-top:3px solid #E5A823;border-bottom:3px solid #E5A823;box-shadow:0 4px 20px #0a1e2266;position:relative;overflow:hidden;min-height:600px}.how-it-works-content{width:100%;margin:0 auto;padding:0 2rem;max-width:1200px;text-align:center}.steps-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;margin-top:3rem;max-width:1000px;margin-left:auto;margin-right:auto}.step-card{background:linear-gradient(135deg,#f4c43d26,#f8d7681a);border:3px solid #E5A823;border-radius:16px;padding:2rem;text-align:center;transition:all .3s ease;position:relative;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);box-shadow:0 4px 12px #0a1e224d}.step-card:hover{transform:translateY(-5px);box-shadow:0 8px 20px #e5a82380;border-color:#f4c43d}.step-number{position:absolute;top:-20px;left:50%;transform:translate(-50%);width:40px;height:40px;background:linear-gradient(135deg,#e5a823,#f4c43d);border:3px solid #E5A823;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:"Press Start 2P",cursive;font-size:1rem;color:#0a1e22;font-weight:700;box-shadow:0 4px 8px #0a1e2266}.step-icon{font-size:3rem;margin:1rem 0;display:block}.step-title{font-family:Orbitron,sans-serif;font-size:clamp(1.1rem,2vw,1.4rem);font-weight:700;letter-spacing:.02em;color:#f4c43d;margin-bottom:1rem;text-shadow:1px 1px 3px rgba(10,30,34,.8)}.step-description{font-family:Orbitron,sans-serif;font-size:clamp(.9rem,1.5vw,1rem);color:#f8d768;line-height:1.6;text-shadow:1px 1px 2px rgba(10,30,34,.6)}.gameplay-preview{background:linear-gradient(135deg,#e5a82333,#f4c43d26);padding:5rem 0;width:100%;border-top:3px solid #E5A823;border-bottom:3px solid #E5A823;position:relative;overflow:hidden;min-height:500px}.gameplay-preview:before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:100%;height:100%;background:radial-gradient(ellipse,rgba(255,255,255,.5) 0%,rgba(255,255,255,.35) 20%,rgba(255,255,255,.2) 40%,rgba(255,255,255,.1) 60%,rgba(255,255,255,.03) 80%,transparent 100%);border-radius:50%;backdrop-filter:blur(40px);-webkit-backdrop-filter:blur(40px);mask:radial-gradient(ellipse,black 0%,black 20%,rgba(0,0,0,.9) 35%,rgba(0,0,0,.7) 50%,rgba(0,0,0,.4) 65%,rgba(0,0,0,.15) 80%,rgba(0,0,0,.05) 90%,transparent 100%);-webkit-mask:radial-gradient(ellipse,black 0%,black 20%,rgba(0,0,0,.9) 35%,rgba(0,0,0,.7) 50%,rgba(0,0,0,.4) 65%,rgba(0,0,0,.15) 80%,rgba(0,0,0,.05) 90%,transparent 100%);z-index:0;pointer-events:none}.gameplay-preview>*{position:relative;z-index:1}@media (max-width: 768px){.gameplay-preview:before{backdrop-filter:blur(30px);-webkit-backdrop-filter:blur(30px)}}.gameplay-preview-content{width:100%;margin:0 auto;padding:0 2rem;max-width:1200px;text-align:center}.preview-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:2rem;margin-top:3rem;max-width:1000px;margin-left:auto;margin-right:auto}.preview-feature{background:linear-gradient(135deg,#0a1e22e6,#1a6c7be6,#0f3a47e6);border:3px solid #E5A823;border-radius:12px;padding:2rem 1.5rem;text-align:center;transition:all .3s ease;box-shadow:0 4px 12px #0a1e2266,inset 0 1px #f4c43d33;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);position:relative;overflow:hidden}.preview-feature:before{content:"";position:absolute;top:-50%;right:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(244,196,61,.1) 0%,transparent 70%);pointer-events:none}.preview-feature:hover{transform:translateY(-5px);border-color:#f4c43d;box-shadow:0 8px 20px #e5a82399,0 4px 8px #0a1e2266,inset 0 1px #f4c43d4d;background:linear-gradient(135deg,#0f3a47f2,#1a6c7bf2,#0a1e22f2)}.preview-icon{font-size:3rem;margin-bottom:1rem;display:block;filter:drop-shadow(0 2px 4px rgba(0,0,0,.1))}.preview-title{font-family:Orbitron,sans-serif;font-size:clamp(1rem,2vw,1.2rem);font-weight:700;letter-spacing:.02em;color:#f4c43d;margin-bottom:.75rem;text-shadow:2px 2px 4px rgba(10,30,34,.8),0 0 8px rgba(244,196,61,.4);position:relative;z-index:1}.preview-text{font-family:Orbitron,sans-serif;font-size:clamp(.85rem,1.5vw,.95rem);color:#f8d768;line-height:1.6;letter-spacing:.01em;font-weight:500;text-shadow:1px 1px 3px rgba(10,30,34,.6),0 0 6px rgba(248,215,104,.3);position:relative;z-index:1}.classroom-features{background:linear-gradient(135deg,#0a1e22e6,#1a6c7be6,#0f3a47e6);padding:5rem 0;width:100%;border-top:3px solid #E5A823;border-bottom:3px solid #E5A823;box-shadow:0 4px 20px #0a1e2266;position:relative;overflow:hidden;min-height:600px}.classroom-features-content{width:100%;margin:0 auto;padding:0 2rem;max-width:1200px;text-align:center}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;margin-top:3rem;max-width:1100px;margin-left:auto;margin-right:auto}.feature-card{background:linear-gradient(135deg,#f4c43d26,#f8d7681a);border:3px solid #E5A823;border-radius:16px;padding:2rem;text-align:center;transition:all .3s ease;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);box-shadow:0 4px 12px #0a1e224d}.feature-card:hover{transform:translateY(-5px);box-shadow:0 8px 20px #e5a82380;border-color:#f4c43d}.feature-card .feature-icon{font-size:3.5rem;margin-bottom:1.5rem;display:block}.feature-card-title{font-family:Orbitron,sans-serif;font-size:clamp(1.1rem,2vw,1.3rem);font-weight:700;letter-spacing:.02em;color:#f4c43d;margin-bottom:1rem;text-shadow:1px 1px 3px rgba(10,30,34,.8)}.feature-card-description{font-family:Orbitron,sans-serif;font-size:clamp(.9rem,1.5vw,1rem);color:#f8d768;line-height:1.6;text-shadow:1px 1px 2px rgba(10,30,34,.6);letter-spacing:.01em}.cta-section{background:linear-gradient(135deg,#e5a82333,#f4c43d26);padding:5rem 0;width:100%;border-top:3px solid #E5A823;text-align:center;position:relative;overflow:hidden;min-height:400px}.landing-sprite{pointer-events:none;-webkit-user-select:none;user-select:none}@media (max-width: 768px){.landing-sprite{display:none}}.cta-section:before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:100%;height:100%;background:radial-gradient(ellipse,rgba(255,255,255,.5) 0%,rgba(255,255,255,.35) 20%,rgba(255,255,255,.2) 40%,rgba(255,255,255,.1) 60%,rgba(255,255,255,.03) 80%,transparent 100%);border-radius:50%;backdrop-filter:blur(40px);-webkit-backdrop-filter:blur(40px);mask:radial-gradient(ellipse,black 0%,black 20%,rgba(0,0,0,.9) 35%,rgba(0,0,0,.7) 50%,rgba(0,0,0,.4) 65%,rgba(0,0,0,.15) 80%,rgba(0,0,0,.05) 90%,transparent 100%);-webkit-mask:radial-gradient(ellipse,black 0%,black 20%,rgba(0,0,0,.9) 35%,rgba(0,0,0,.7) 50%,rgba(0,0,0,.4) 65%,rgba(0,0,0,.15) 80%,rgba(0,0,0,.05) 90%,transparent 100%);z-index:0;pointer-events:none}.cta-section>*{position:relative;z-index:1}@media (max-width: 768px){.cta-section:before{backdrop-filter:blur(30px);-webkit-backdrop-filter:blur(30px)}}.cta-section-content{width:100%;margin:0 auto;padding:0 2rem;max-width:800px}.cta-title{font-family:"Press Start 2P",cursive;font-size:clamp(1.2rem,3vw,2rem);color:#0a1e22;margin-bottom:1.5rem;line-height:1.4;letter-spacing:.05em;text-shadow:2px 2px 4px rgba(255,255,255,.8),0 0 10px rgba(255,255,255,.5)}.cta-subtitle{font-family:Orbitron,sans-serif;font-size:clamp(1rem,2vw,1.3rem);color:#0f3a47;margin-bottom:2.5rem;line-height:1.6;letter-spacing:.02em;max-width:600px;margin-left:auto;margin-right:auto;text-shadow:1px 1px 3px rgba(255,255,255,.8),0 0 8px rgba(255,255,255,.4);font-weight:600}.cta-button-large{font-family:Orbitron,sans-serif;background:linear-gradient(135deg,#e5a823,#f4c43d);color:#0a1e22;border:3px solid #E5A823;padding:1.2rem 3rem;font-size:clamp(1rem,2.5vw,1.3rem);font-weight:700;letter-spacing:.05em;border-radius:50px;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px #e5a82366,0 2px 4px #0a1e224d;text-shadow:0 1px 2px rgba(255,255,255,.3)}.cta-button-large:hover{background:linear-gradient(135deg,#f4c43d,#f8d768);border-color:#f4c43d;box-shadow:0 6px 16px #e5a82399,0 4px 8px #0a1e2266;transform:translateY(-2px)}@media (max-width: 768px){.how-it-works,.classroom-features{padding:3rem 0}.steps-grid,.preview-grid,.features-grid{grid-template-columns:1fr;gap:1.5rem}.step-card,.feature-card{padding:1.5rem}.cta-section{padding:3rem 0}.cta-button-large{padding:1rem 2rem;font-size:1rem}}.footer{background:linear-gradient(135deg,#0a1e22,#1a6c7b,#0f3a47);color:#f8d768;padding:3rem 0 1rem;width:100%;border-top:3px solid #E5A823;box-shadow:0 -4px 20px #0a1e2266}.footer-content{width:100%;margin:0 auto;padding:0 2rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;margin-bottom:2rem;max-width:1200px}.footer-column{display:flex;flex-direction:column;gap:1rem}.footer-title{font-family:Orbitron,sans-serif;font-size:clamp(1rem,2vw,1.2rem);font-weight:700;letter-spacing:.02em;margin-bottom:.5rem;color:#f4c43d;text-shadow:1px 1px 3px rgba(10,30,34,.6)}.footer-description{line-height:1.6;font-size:.95rem}.footer-links{list-style:none;display:flex;flex-direction:column;gap:.5rem}.footer-links a{color:#f8d768;text-decoration:none;transition:all .3s ease;font-size:.95rem}.footer-links a:hover{color:#f4c43d;text-shadow:0 0 6px rgba(244,196,61,.5)}.footer-bottom{text-align:center;padding-top:2rem;border-top:1px solid rgba(255,255,255,.2)}.copyright,.contact-info{margin-bottom:.5rem;font-size:.9rem;opacity:.9}.auth-page{min-height:100vh;background:linear-gradient(135deg,#0a1e22,#1a6c7b 30%,#3e8e9e 70%,#4eaeae);background-attachment:fixed;display:flex;flex-direction:column;position:relative}.auth-page:before{content:"";position:fixed;top:0;left:0;width:100%;height:100%;background:radial-gradient(circle at 20% 30%,rgba(229,168,35,.15) 0%,transparent 50%),radial-gradient(circle at 80% 70%,rgba(244,196,61,.1) 0%,transparent 50%);pointer-events:none;z-index:0}.auth-container{flex:1;display:flex;align-items:center;justify-content:center;padding:2rem 1rem;padding-top:calc(20px + 2rem);position:relative;overflow:hidden;z-index:1}.auth-left{flex:1;display:flex;align-items:center;justify-content:center;padding:2rem;position:relative;z-index:2}.auth-branding{text-align:center;z-index:2;position:relative;background:#0a1e2299;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:2.5rem;border-radius:20px;border:2px solid rgba(244,196,61,.3);box-shadow:0 8px 32px #0000004d,inset 0 1px #f4c43d33}.auth-logo{font-size:3.5rem;font-weight:700;background:linear-gradient(135deg,#f4c43d,#f8d768,#e5a823);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:1rem;text-shadow:0 0 30px rgba(244,196,61,.5);filter:drop-shadow(2px 2px 4px rgba(10,30,34,.8))}.auth-description{font-size:1.1rem;color:#f8d768;max-width:400px;line-height:1.6;text-shadow:1px 1px 2px rgba(10,30,34,.6)}.auth-card{background:linear-gradient(135deg,#0a1e22f2,#0f3a47f2);border:3px solid #E5A823;border-radius:20px;box-shadow:0 8px 32px #0006,0 0 20px #e5a82333,inset 0 1px #f4c43d33;padding:2rem 1.75rem;margin:40px;width:100%;max-width:450px;position:relative;overflow:hidden;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:1}.auth-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#f4c43d,#f8d768,#e5a823);box-shadow:0 0 10px #f4c43d80}.auth-header{text-align:center;margin-bottom:1.25rem}.auth-title{font-size:clamp(1.8rem,4vw,2.5rem);font-weight:700;background:linear-gradient(135deg,#f4c43d,#f8d768);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:.5rem;text-shadow:0 0 20px rgba(244,196,61,.3);filter:drop-shadow(1px 1px 2px rgba(10,30,34,.8))}.auth-subtitle{color:#f8d768;font-size:1rem;line-height:1.5;text-shadow:1px 1px 2px rgba(10,30,34,.6)}.auth-form{display:flex;flex-direction:column;gap:.85rem;max-height:calc(100vh - 300px);overflow-y:auto;padding-right:.5rem}.auth-form::-webkit-scrollbar{width:6px}.auth-form::-webkit-scrollbar-track{background:#0a1e224d;border-radius:10px}.auth-form::-webkit-scrollbar-thumb{background:#f4c43d66;border-radius:10px}.auth-form::-webkit-scrollbar-thumb:hover{background:#f4c43d99}.form-group{display:flex;flex-direction:column;gap:.4rem;margin-bottom:.75rem}.form-group:last-child{margin-bottom:0}.modal .form-group{margin-bottom:1.5rem}.form-label{font-weight:600;color:#f8d768;font-size:.9rem;margin-bottom:.35rem;display:block;text-shadow:1px 1px 2px rgba(10,30,34,.6)}.modal .form-label{color:#374151;font-weight:600;font-size:.9rem;margin-bottom:.5rem;display:block}.form-input{padding:.7rem .9rem;border:2px solid rgba(244,196,61,.3);border-radius:8px;font-size:.95rem;transition:all .3s ease;background:#0a1e22b3;color:#f8d768;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.form-input::placeholder{color:#f8d76880}.form-input:focus{outline:none;border-color:#e5a823;background:#0a1e22e6;box-shadow:0 0 0 3px #e5a82333,0 0 15px #f4c43d4d;color:#f8d768}.modal .form-input{width:100%;padding:.75rem;border:1px solid #d1d5db;border-radius:8px;font-size:.9rem;color:#333;background:#fff;transition:all .2s ease;font-family:inherit}.modal .form-input:focus{outline:none;border-color:#f79133;background:#fff;box-shadow:0 0 0 3px #f791331a}.modal .form-input::placeholder{color:#9ca3af;opacity:1}.auth-card select.form-input{color:#f8d768;background:#0a1e22b3;cursor:pointer}.auth-card select.form-input option{background:#0a1e22;color:#f8d768;padding:.5rem}.auth-card select.form-input:focus{background:#0a1e22e6}.form-input:disabled{background:#f0f0f0;color:#666;cursor:not-allowed;opacity:.7;border-color:#ddd}.form-input:disabled:hover{border-color:#ddd;box-shadow:none}.form-row{display:flex;gap:.75rem;flex-wrap:wrap;margin-bottom:.75rem}.form-row .form-group{flex:1;min-width:calc(50% - .375rem);margin-bottom:0}@media (min-width: 900px){.form-row .form-group{min-width:calc(25% - .75rem)}}.signup-options{display:flex;gap:1rem;flex-wrap:wrap}.option-label{display:flex;align-items:center;gap:.5rem;cursor:pointer}.option-radio{width:18px;height:18px;appearance:none;-webkit-appearance:none;-moz-appearance:none;border:2px solid rgba(244,196,61,.5);border-radius:50%;background:#0a1e2280;cursor:pointer;position:relative;flex-shrink:0;transition:all .3s ease}.option-radio:hover{border-color:#f4c43d;background:#0a1e22b3}.option-radio:checked{background:#e5a823;border-color:#f4c43d;box-shadow:0 0 8px #f4c43d80}.option-radio:checked:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:8px;height:8px;background:#0a1e22;border-radius:50%}.option-text{color:#f8d768;font-size:.9rem;text-shadow:1px 1px 2px rgba(10,30,34,.6)}.form-options{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}.checkbox-label{display:flex;align-items:center;gap:.5rem;font-size:.9rem;color:#f8d768;cursor:pointer;text-shadow:1px 1px 2px rgba(10,30,34,.6)}.checkbox{width:18px;height:18px;appearance:none;-webkit-appearance:none;-moz-appearance:none;border:2px solid rgba(244,196,61,.5);border-radius:3px;background:#0a1e2280;cursor:pointer;position:relative;flex-shrink:0;transition:all .3s ease}.checkbox:hover{border-color:#f4c43d;background:#0a1e22b3}.checkbox:checked{background:#e5a823;border-color:#f4c43d;box-shadow:0 0 8px #f4c43d80}.checkbox:checked:after{content:"✓";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#0a1e22;font-size:14px;font-weight:700;line-height:1}.auth-button{background:linear-gradient(135deg,#e5a823,#f4c43d);color:#0a1e22;border:2px solid #E5A823;padding:.75rem 2rem;border-radius:100px;font-size:1rem;font-weight:700;cursor:pointer;transition:all .3s ease;margin-top:1rem;text-shadow:none;box-shadow:0 4px 12px #e5a82366,inset 0 1px #fff3}.auth-button:hover:not(:disabled){background:linear-gradient(135deg,#f4c43d,#f8d768);color:#0a1e22;border-color:#f4c43d;box-shadow:0 6px 20px #f4c43d80,0 0 20px #f4c43d4d,inset 0 1px #ffffff4d;transform:translateY(-2px)}.auth-button:disabled{background:#d1d5db;color:#9ca3af;border:solid #d1d5db;cursor:not-allowed;transform:none;box-shadow:none;opacity:.6}.auth-button[style*="background: #f79133"],.auth-button[style*="background:#f79133"]{background:#f79133!important;color:#fff!important;border-color:#f79133!important}.auth-button[style*="background: #f79133"]:hover:not(:disabled),.auth-button[style*="background:#f79133"]:hover:not(:disabled){background:#e0842f!important;border-color:#e0842f!important;transform:translateY(-2px);box-shadow:0 6px 16px #f7913366}.error-message{color:#f4c43d;background-color:#991b1b4d;border:2px solid rgba(252,165,165,.5);border-radius:8px;padding:.75rem;margin-bottom:1rem;font-size:.9rem;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);text-shadow:1px 1px 2px rgba(10,30,34,.8);font-weight:700;text-align:center}.success-message{color:#f4c43d;background-color:#27ae6033;border:2px solid rgba(195,230,203,.5);border-radius:8px;padding:.75rem;margin-bottom:1rem;font-size:.9rem;text-align:center;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);text-shadow:1px 1px 2px rgba(10,30,34,.8)}.auth-footer{text-align:center;margin-top:1.5rem;padding-top:1rem;border-top:1px solid rgba(244,196,61,.3)}.auth-text{color:#f8d768;font-size:.9rem;margin-bottom:1rem;text-shadow:1px 1px 2px rgba(10,30,34,.6)}.auth-link{color:#f4c43d;text-decoration:underline;font-weight:600;transition:all .3s ease;text-shadow:1px 1px 2px rgba(10,30,34,.6)}.auth-link:hover{color:#f8d768;text-shadow:0 0 8px rgba(244,196,61,.6)}.back-link{color:#f8d768;text-decoration:none;font-size:.9rem;transition:all .3s ease;cursor:pointer;background:transparent;border:none;text-shadow:1px 1px 2px rgba(10,30,34,.6)}.back-link:hover{color:#f4c43d;text-shadow:0 0 8px rgba(244,196,61,.6)}@media (max-width: 1024px){.auth-container{flex-direction:column;gap:2rem;padding:1.5rem 1rem}.auth-left{flex:0 0 auto;width:100%;padding:1.5rem}.auth-branding{padding:2rem 1.5rem}.auth-logo{font-size:clamp(2rem,5vw,3rem)}.auth-description{font-size:clamp(.9rem,2vw,1rem)}.auth-card{margin:0;max-width:100%;width:100%;min-width:320px;max-width:420px;padding:2rem 1.75rem}.auth-header{margin-bottom:1.25rem}.auth-form{gap:.85rem}.form-group{margin-bottom:.7rem}.form-row{gap:.7rem}.form-row .form-group{min-width:calc(50% - .35rem)}}@media (max-width: 768px){.auth-container{padding:1rem;gap:1.5rem}.auth-left{padding:1rem}.auth-branding{padding:1.5rem 1rem}.auth-logo{font-size:clamp(1.8rem,6vw,2.5rem);margin-bottom:.75rem}.auth-description{font-size:clamp(.85rem,2.5vw,.95rem);max-width:100%}.auth-card{padding:1.75rem 1.5rem;border-radius:15px;min-width:300px;max-width:400px}.auth-header{margin-bottom:1.1rem}.auth-title{font-size:clamp(1.5rem,5vw,2rem)}.auth-subtitle{font-size:clamp(.85rem,2vw,.95rem)}.auth-form{gap:.75rem;max-height:calc(100vh - 250px)}.form-group{margin-bottom:.6rem}.form-row{gap:.6rem}.form-row .form-group{min-width:calc(50% - .3rem)}.form-label{font-size:.85rem;margin-bottom:.3rem}.form-input{padding:.65rem .85rem;font-size:.9rem}}@media (max-width: 480px){.auth-container{padding:.75rem;gap:.75rem}.auth-left{padding:.5rem;width:100%}.auth-branding{padding:1rem .75rem;border-radius:12px}.auth-logo{font-size:clamp(1.5rem,7vw,2rem);margin-bottom:.5rem}.auth-description{font-size:clamp(.8rem,3vw,.9rem);line-height:1.5}.auth-card{padding:1.5rem 1rem;border-radius:12px;border-width:2px;min-width:280px;max-width:100%}.auth-header{margin-bottom:1rem}.auth-title{font-size:clamp(1.3rem,6vw,1.8rem);margin-bottom:.25rem}.auth-subtitle{font-size:clamp(.8rem,2.5vw,.9rem)}.auth-form{gap:.7rem;max-height:calc(100vh - 200px)}.form-group{margin-bottom:.5rem}.form-row{flex-direction:column;gap:.5rem}.form-row .form-group{min-width:100%;margin-bottom:.5rem}.form-label{font-size:.8rem;margin-bottom:.25rem}.form-input{padding:.6rem .8rem;font-size:.9rem}.auth-button{padding:.85rem 1.5rem;font-size:.95rem;margin-top:.5rem}.auth-footer{margin-top:1rem}}.modal-footer .back-link,.modal-body .back-link{color:#fff!important;font-weight:500!important;padding:.6rem 1.2rem!important;border-radius:8px!important;transition:all .2s ease!important;border:1px solid #d32f2f!important;background:linear-gradient(135deg,#f44336,#d32f2f)!important;font-size:.9rem!important;cursor:pointer!important;margin-top:0!important}.modal-footer .back-link:hover,.modal-body .back-link:hover{color:#fff;background:linear-gradient(135deg,#d32f2f,#c62828);border-color:#c62828;filter:brightness(.9)}.modal-footer .back-link:active,.modal-body .back-link:active{background:linear-gradient(135deg,#c62828,#b71c1c)}.modal-footer .back-link:disabled,.modal-body .back-link:disabled{background:#f3f4f6;color:#9ca3af;border-color:#e5e7eb;cursor:not-allowed;opacity:.6}.question-action-btn{font-weight:500;padding:.5rem 1rem;border-radius:6px;transition:all .2s ease;font-size:.85rem;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;border:1px solid transparent;font-family:inherit}.question-action-btn:hover:not(:disabled){background:linear-gradient(135deg,#4caf50,#388e3c);color:#fff;border-color:#4caf50;box-shadow:0 2px 8px #4caf504d}.question-action-btn:active:not(:disabled){transform:translateY(0);box-shadow:0 2px 4px #0000001a}.question-action-btn:disabled{background:#d1d5db!important;color:#9ca3af!important;border-color:#d1d5db!important;cursor:not-allowed;transform:none;box-shadow:none;opacity:.6}.question-action-btn[style*="background: #2196f3"],.question-action-btn[style*="background:#2196f3"]{background:#2196f3!important;color:#fff!important;border-color:#2196f3!important}.question-action-btn[style*="background: #2196f3"]:hover:not(:disabled),.question-action-btn[style*="background:#2196f3"]:hover:not(:disabled){background:linear-gradient(135deg,#4caf50,#388e3c)!important;color:#fff!important;border-color:#4caf50!important;box-shadow:0 2px 8px #4caf504d}.question-action-btn[style*="background: #f79133"],.question-action-btn[style*="background:#f79133"]{background:#f79133!important;color:#fff!important;border-color:#f79133!important}.question-action-btn[style*="background: #f79133"]:hover:not(:disabled),.question-action-btn[style*="background:#f79133"]:hover:not(:disabled){background:linear-gradient(135deg,#4caf50,#388e3c)!important;color:#fff!important;border-color:#4caf50!important;box-shadow:0 2px 8px #4caf504d}.question-action-btn[style*="background: #4caf50"],.question-action-btn[style*="background:#4caf50"]{background:#4caf50!important;color:#fff!important;border-color:#4caf50!important}.question-action-btn[style*="background: #4caf50"]:hover:not(:disabled),.question-action-btn[style*="background:#4caf50"]:hover:not(:disabled){background:linear-gradient(135deg,#45a049,#2e7d32)!important;border-color:#45a049!important;box-shadow:0 2px 8px #4caf504d}.question-action-btn[style*="background: #ff9800"],.question-action-btn[style*="background:#ff9800"]{background:#ff9800!important;color:#fff!important;border-color:#ff9800!important}.question-action-btn[style*="background: #ff9800"]:hover:not(:disabled),.question-action-btn[style*="background:#ff9800"]:hover:not(:disabled){background:linear-gradient(135deg,#4caf50,#388e3c)!important;color:#fff!important;border-color:#4caf50!important;box-shadow:0 2px 8px #4caf504d}.question-action-btn[style*="background: #f44336"],.question-action-btn[style*="background:#f44336"]{background:#f44336!important;color:#fff!important;border-color:#f44336!important}.question-action-btn[style*="background: #f44336"]:hover:not(:disabled),.question-action-btn[style*="background:#f44336"]:hover:not(:disabled){filter:brightness(1.1);box-shadow:0 2px 8px #f443364d}.question-action-btn[style*="border: '1px solid #f44336'"]:hover:not(:disabled),.question-action-btn[style*='border: "1px solid #f44336"']:hover:not(:disabled){background:#f4433626!important;border-color:#f4433680!important;filter:brightness(1.1);box-shadow:0 2px 8px #f443364d}.student-page table tbody tr{transition:all .3s cubic-bezier(.4,0,.2,1)}.student-page table tbody tr:hover{background:inherit!important}.student-page table tbody tr:nth-child(2n){background:inherit}.student-page table tbody tr:nth-child(2n):hover{background:inherit!important}table:not(.student-page table) tbody tr{transition:all .2s ease}table:not(.student-page table) tbody tr:hover{background:#f3f4f6!important}table:not(.student-page table) tbody tr:nth-child(2n){background:#fafafa}table:not(.student-page table) tbody tr:nth-child(2n):hover{background:#fef3e7!important}.forgot-link{color:#f4c43d;text-decoration:none;font-size:.9rem;transition:all .3s ease;text-shadow:1px 1px 2px rgba(10,30,34,.6)}.forgot-link:hover{color:#f8d768;text-shadow:0 0 8px rgba(244,196,61,.6)}.student-page{width:100%;overflow-x:hidden;background:#e8f4f8;min-height:100vh}.student-page button:not(.nav-link):not(.link-button){font-family:Orbitron,sans-serif;font-weight:600;letter-spacing:.02em}.student-page h1,.student-page h2,.student-page h3,.student-page h4,.student-page h5,.student-page h6{font-family:"Press Start 2P",cursive;letter-spacing:.05em;font-weight:400;line-height:1.4}.student-hero-title{font-family:"Press Start 2P",cursive;letter-spacing:.05em;font-weight:400}.student-page label,.student-page .badge,.student-page span[style*=font]{font-family:Orbitron,sans-serif;letter-spacing:.02em}.student-page th,.student-page td,.student-page input,.student-page select,.student-page textarea{font-family:Orbitron,sans-serif;letter-spacing:.01em}.teacher-layout *,.teacher-layout *:before,.teacher-layout *:after,.admin-layout *,.admin-layout *:before,.admin-layout *:after{font-family:Inter,Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,Arial,sans-serif!important;letter-spacing:0!important}.teacher-layout .font-game-title,.teacher-layout .font-game-header,.teacher-layout .font-game-ui,.teacher-layout .font-game-button,.teacher-layout .game-title,.teacher-layout .game-header,.teacher-layout .game-button,.teacher-layout .game-ui,.teacher-layout .game-stats,.teacher-layout .cta-button,.teacher-layout .hero-title,.teacher-layout .section-title,.admin-layout .font-game-title,.admin-layout .font-game-header,.admin-layout .font-game-ui,.admin-layout .font-game-button,.admin-layout .game-title,.admin-layout .game-header,.admin-layout .game-button,.admin-layout .game-ui,.admin-layout .game-stats,.admin-layout .cta-button,.admin-layout .hero-title,.admin-layout .section-title{font-family:Inter,Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,Arial,sans-serif!important;letter-spacing:0!important}.teacher-layout,.teacher-content,.teacher-content-body,.teacher-content-header,.admin-layout,.admin-content,.admin-content-body,.admin-content-header{font-family:Inter,Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,Arial,sans-serif!important;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"kern" 1;text-rendering:optimizeLegibility}.teacher-layout h1,.teacher-layout h2,.teacher-layout h3,.teacher-layout h4,.teacher-layout h5,.teacher-layout h6,.teacher-layout p,.teacher-layout span,.teacher-layout div,.teacher-layout label,.teacher-layout button,.teacher-layout input,.teacher-layout select,.teacher-layout textarea,.teacher-layout td,.teacher-layout th,.teacher-layout li,.teacher-layout a,.admin-layout h1,.admin-layout h2,.admin-layout h3,.admin-layout h4,.admin-layout h5,.admin-layout h6,.admin-layout p,.admin-layout span,.admin-layout div,.admin-layout label,.admin-layout button,.admin-layout input,.admin-layout select,.admin-layout textarea,.admin-layout td,.admin-layout th,.admin-layout li,.admin-layout a{font-family:Inter,Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,Arial,sans-serif!important;letter-spacing:0!important}.teacher-layout h1,.teacher-layout h2,.teacher-layout h3,.teacher-layout h4,.teacher-layout h5,.teacher-layout h6,.admin-layout h1,.admin-layout h2,.admin-layout h3,.admin-layout h4,.admin-layout h5,.admin-layout h6{font-weight:600!important;letter-spacing:-.01em!important;line-height:1.4!important}.teacher-layout button,.teacher-layout .auth-button,.teacher-layout .back-link,.teacher-layout .create-quiz-btn,.teacher-layout input[type=button],.teacher-layout input[type=submit],.teacher-sidebar-item,.teacher-sidebar-item span,.teacher-sidebar-logo h2,.admin-layout button,.admin-layout .auth-button,.admin-layout .back-link{font-family:Inter,Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,Arial,sans-serif!important;font-weight:500!important;letter-spacing:0!important}.teacher-layout input,.teacher-layout select,.teacher-layout textarea,.admin-layout input,.admin-layout select,.admin-layout textarea{font-family:Inter,Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,Arial,sans-serif!important;letter-spacing:0!important}.teacher-layout .quiz-card-title,.admin-layout .quiz-card-title{font-family:Inter,Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,Arial,sans-serif!important;font-weight:600!important;letter-spacing:0!important}.admin-layout table,.admin-layout .table,.admin-layout .card,.admin-layout .modal,.admin-layout .form-group,.admin-layout .badge,.admin-layout .alert,.teacher-layout table,.teacher-layout .table,.teacher-layout .card,.teacher-layout .modal,.teacher-layout .form-group,.teacher-layout .badge,.teacher-layout .alert,.admin-layout [style*=fontFamily],.teacher-layout [style*=fontFamily],.admin-layout [style*=font-family],.teacher-layout [style*=font-family]{font-family:Inter,Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,Arial,sans-serif!important}.teacher-layout button,.teacher-content button,.teacher-content-body button,.teacher-layout span[style*="View:"],.teacher-layout button[style*=viewMode],.teacher-layout button[onClick*=setViewMode],.teacher-layout button[onClick*=setActiveTab],.teacher-layout button[onClick*=setActivePage]{font-family:Inter,Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,Arial,sans-serif!important;font-weight:500!important;letter-spacing:0!important}.teacher-layout .stat-card,.teacher-layout .stat-card *,.teacher-layout .stat-card h3,.teacher-layout .stat-card p,.teacher-layout .stat-card span,.teacher-layout .stat-card div,.teacher-layout input[type=checkbox],.teacher-layout input[type=radio],.teacher-layout .toggle-switch,.teacher-layout .switch,.teacher-layout label[for*=toggle],.teacher-layout label[for*=switch],.teacher-layout .checkbox-label,.teacher-layout .radio-label,.teacher-layout label,.teacher-layout .form-label,.teacher-layout label span,.teacher-layout .checkbox-wrapper,.teacher-layout .toggle-wrapper,.teacher-layout .teacher-reports-section,.teacher-layout .teacher-reports-section *,.teacher-layout .teacher-management-section,.teacher-layout .teacher-management-section *,.teacher-layout [class*=reports],.teacher-layout [class*=management],.teacher-layout [class*=archived],.teacher-layout [class*=student-progress]{font-family:Inter,Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,Arial,sans-serif!important;letter-spacing:0!important}.teacher-layout *:not(script):not(style):not(link):not(meta):not(title):not(svg):not(path):not(img):not(canvas),.admin-layout *:not(script):not(style):not(link):not(meta):not(title):not(svg):not(path):not(img):not(canvas){font-family:Inter,Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,Arial,sans-serif!important;letter-spacing:0!important}.teacher-layout [style],.teacher-layout [style*=fontSize],.teacher-layout [style*=fontWeight],.teacher-layout [style*=color],.teacher-layout [style*=fontFamily],.teacher-layout [style*=font-family],.admin-layout [style],.admin-layout [style*=fontSize],.admin-layout [style*=fontWeight],.admin-layout [style*=color],.admin-layout [style*=fontFamily],.admin-layout [style*=font-family]{font-family:Inter,Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,Arial,sans-serif!important;letter-spacing:0!important}.teacher-layout,.teacher-layout *,.teacher-content,.teacher-content *,.teacher-content-body,.teacher-content-body *,.admin-layout,.admin-layout *,.admin-content,.admin-content *,.admin-content-body,.admin-content-body *{font-family:Inter,Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,Arial,sans-serif!important}.teacher-layout .font-game-title,.teacher-layout .font-game-header,.teacher-layout .font-game-ui,.teacher-layout .font-game-button,.teacher-layout .game-title,.teacher-layout .game-header,.teacher-layout .game-button,.teacher-layout .game-ui,.teacher-layout .game-stats,.teacher-layout .cta-button,.teacher-layout .hero-title,.teacher-layout .section-title,.teacher-layout .difficulty-name,.admin-layout .font-game-title,.admin-layout .font-game-header,.admin-layout .font-game-ui,.admin-layout .font-game-button,.admin-layout .game-title,.admin-layout .game-header,.admin-layout .game-button,.admin-layout .game-ui,.admin-layout .game-stats,.admin-layout .cta-button,.admin-layout .hero-title,.admin-layout .section-title,.admin-layout .difficulty-name{font-family:Inter,Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,Arial,sans-serif!important;letter-spacing:0!important}.teacher-layout .teacher-sidebar-item,.teacher-layout .teacher-sidebar-item span,.teacher-layout .teacher-sidebar-logo h2,.teacher-layout .teacher-sidebar-logout,.teacher-layout button:not(.student-page button),.teacher-layout .tab,.teacher-layout .tab-button,.teacher-layout [role=tab],.teacher-layout [role=tabbutton],.teacher-layout .view-mode-toggle,.teacher-layout .toggle-button,.teacher-layout .filter-button,.teacher-layout .action-button,.teacher-layout .export-button,.teacher-layout .dropdown-button,.teacher-layout .pagination button,.teacher-layout .badge,.teacher-layout .label,.teacher-layout .form-label,.teacher-layout .stat-label,.teacher-layout .card-title,.teacher-layout .section-title,.teacher-layout .subtitle,.teacher-layout .meta-text,.teacher-layout .helper-text,.teacher-layout .status-text,.teacher-layout .nav-link,.teacher-layout .breadcrumb,.teacher-layout .breadcrumb-item{font-family:Inter,Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,Arial,sans-serif!important;letter-spacing:0!important}.teacher-sidebar,.teacher-sidebar *,.teacher-sidebar-item,.teacher-sidebar-item span,.teacher-sidebar-logo,.teacher-sidebar-logo h2,.teacher-sidebar-nav,.teacher-sidebar-footer{font-family:Inter,Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,Arial,sans-serif!important;letter-spacing:0!important}.teacher-layout button,.teacher-content button,.teacher-content-body button,.teacher-layout [style*="View:"],.teacher-layout [style*=viewMode],.teacher-layout button[onClick*=setViewMode],.teacher-layout button[onClick*=setActiveTab],.teacher-layout button[onClick*=setActivePage]{font-family:Inter,Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,Arial,sans-serif!important;font-weight:500!important;letter-spacing:0!important}.student-page h1,.student-page h2,.student-page h3,.student-page h4,.student-page h5,.student-page h6,body:not(.teacher-layout) h1[style*=fontSize]:not(.teacher-layout h1),body:not(.teacher-layout) h1[style*=font-weight]:not(.teacher-layout h1),body:not(.teacher-layout) h2[style*=fontSize]:not(.teacher-layout h2),body:not(.teacher-layout) h2[style*=font-weight]:not(.teacher-layout h2),body:not(.teacher-layout) h3[style*=fontSize]:not(.teacher-layout h3),body:not(.teacher-layout) h3[style*=font-weight]:not(.teacher-layout h3){font-family:"Press Start 2P",cursive!important;letter-spacing:.05em!important;font-weight:400!important}.student-page button,body:not(.teacher-layout) button[style*=fontSize]:not(.teacher-layout button),body:not(.teacher-layout) button[style*=font-weight]:not(.teacher-layout button){font-family:Orbitron,sans-serif!important;letter-spacing:.02em!important}.student-page p,.student-page span:not([style*=emoji]):not([style*=🎲]):not([style*=←]):not(.header .logo span),body:not(.teacher-layout) p[style*=fontSize]:not(.teacher-layout p),body:not(.teacher-layout) span[style*=fontSize]:not(.teacher-layout span):not([style*=emoji]):not([style*=🎲]):not([style*=←]):not(.header .logo span){font-family:Orbitron,sans-serif!important;letter-spacing:.02em!important}body:not(.teacher-layout) button[style*=fontSize],body:not(.teacher-layout) button[style*=font-weight]{font-family:Orbitron,sans-serif!important;letter-spacing:.02em!important}body:not(.teacher-layout) p[style*=fontSize],body:not(.teacher-layout) p[style*=font-weight],body:not(.teacher-layout) span[style*=fontSize],body:not(.teacher-layout) span[style*=font-weight]:not([style*=emoji]){font-family:Orbitron,sans-serif!important;letter-spacing:.02em!important}body:not(.teacher-layout) div[style*=fontSize]{font-family:Orbitron,sans-serif!important;letter-spacing:.02em!important}.student-page h1,.student-page h2,.student-page h3,.student-page h4,.student-page h5,.student-page h6{font-family:"Press Start 2P",cursive!important;letter-spacing:.05em!important;font-weight:400!important}.student-page button{font-family:Orbitron,sans-serif!important;letter-spacing:.02em!important}.student-page p,.student-page span:not(.emoji):not(.header .logo span){font-family:Orbitron,sans-serif!important;letter-spacing:.02em!important}.student-page .header .logo span,.header .logo span{font-family:"Press Start 2P",cursive!important;letter-spacing:.05em!important;font-weight:400!important}.student-hero{background:#e8f4f8;padding:2rem 0}.student-hero-inner{max-width:1200px;margin:0 auto;padding:0 2rem}.student-hero-title{color:#e0842f;font-size:clamp(1.6rem,4vw,2rem);font-weight:700}.student-hero-subtitle{color:#f6ac69;font-size:.95rem}.student-main{max-width:1200px;margin:0 auto;padding:1rem 2rem 3rem;display:grid;grid-template-columns:280px 1fr;gap:2rem;background:#e8f4f8}@media (max-width: 768px){.student-main{grid-template-columns:1fr}.student-sidebar{border-right:none;padding-right:0;border-bottom:1px solid rgba(0,0,0,.08);padding-bottom:1.5rem;margin-bottom:1rem}}.student-sidebar{border-right:1px solid rgba(0,0,0,.08);padding-right:1rem}.student-usercard{background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:1rem;margin-bottom:1.5rem;box-shadow:0 1px 3px #0000000d}.achievements-section{background:#fff;border-radius:8px;padding:1.5rem;margin-top:1.5rem;box-shadow:0 1px 3px #0000000d;border:1px solid #e0e0e0}.achievements-section h4{color:#000;font-size:1.1rem;font-weight:700;margin-bottom:1rem;display:flex;align-items:center;gap:.5rem}.achievements-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(60px,1fr));gap:.75rem;max-height:300px;overflow-y:auto;scrollbar-width:none;-ms-overflow-style:none}.achievements-grid::-webkit-scrollbar{display:none}.achievement-card{background:#f5f5f5;border-radius:6px;padding:.75rem;text-align:center;cursor:pointer;transition:transform .2s ease;border:1px solid #ddd;opacity:.5;position:relative}.achievement-card.unlocked{opacity:1;border:1px solid #ccc}.achievement-card.unlocked.legendary{background:gold}.achievement-card.unlocked.epic{background:#9b59b6}.achievement-card.unlocked.rare{background:#3498db}.achievement-card.unlocked.common{background:#95a5a6}.achievement-card:hover{transform:scale(1.05)}.achievement-icon{font-size:2rem;margin-bottom:.25rem}.achievement-card:not(.unlocked) .achievement-icon{filter:grayscale(100%)}.achievement-checkmark{position:absolute;top:-5px;right:-5px;background:#4caf50;border-radius:50%;width:20px;height:20px;display:flex;align-items:center;justify-content:center;font-size:.7rem;border:2px solid #fff;color:#fff}.user-name{font-weight:700;color:#000;cursor:pointer;font-size:1.1rem;margin-bottom:.5rem;display:flex;align-items:center}.user-name:hover{color:#e0842f}.user-name img{width:20px;height:20px;margin-right:.5rem;vertical-align:middle}.user-name-display{font-size:.9rem;color:#333;margin-bottom:.5rem}.user-grade{color:#333;font-size:.9rem;margin-bottom:.5rem;cursor:default}.user-section-btn{background:#fe993d;color:#fff;border:none;border-radius:8px;padding:.5rem 1rem;cursor:pointer;font-weight:700;font-size:.9rem;transition:all .2s ease;width:100%;margin-top:.5rem}.user-section-btn:hover{background:#e0842f;transform:translateY(-1px);box-shadow:0 2px 4px #e0842f4d}.user-customize-btn:hover{background:#1976d2;transform:translateY(-1px);box-shadow:0 2px 4px #2196f34d}.character-customization-screen{background:#fff;border-radius:8px;padding:clamp(1rem,3vw,1.5rem);box-shadow:0 1px 3px #0000000d;border:1px solid #e0e0e0;margin-top:clamp(1rem,3vw,2rem);width:100%;max-width:100%;box-sizing:border-box;overflow-x:hidden}.character-customization-screen h1,.character-customization-screen h2,.character-customization-screen h3,.character-customization-screen h4,.character-customization-screen h5,.character-customization-screen h6{font-family:"Press Start 2P",cursive!important;letter-spacing:.05em!important;font-weight:400!important;line-height:1.4!important}.character-customization-screen button,.character-customization-screen .button,.character-customization-screen label,.character-customization-screen span:not(.emoji),.character-customization-screen p,.character-customization-screen div[style*=fontSize],.character-customization-screen div[style*=font-weight]{font-family:Orbitron,sans-serif!important;letter-spacing:.02em!important}.character-customization-screen *{font-family:Orbitron,sans-serif!important;letter-spacing:.02em!important}.character-customization-screen h1,.character-customization-screen h2,.character-customization-screen h3,.character-customization-screen h4,.character-customization-screen h5,.character-customization-screen h6{font-family:"Press Start 2P",cursive!important;letter-spacing:.05em!important}.character-customization-grid{display:grid;grid-template-columns:minmax(min(250px,100%),350px) 1fr;gap:clamp(1rem,4vw,2rem);align-items:start}@media (max-width: 900px){.character-customization-grid{grid-template-columns:1fr!important;gap:clamp(1rem,3vw,1.5rem)!important}.character-display{position:static!important;max-width:100%!important}}.character-customization-modal{max-width:900px;width:95%}.character-customization-modal .modal-body{max-height:70vh;overflow-y:auto}.character-list{max-height:500px;overflow-y:auto;padding-right:.5rem}.character-list::-webkit-scrollbar,.character-customization-modal .modal-body::-webkit-scrollbar{width:8px}.character-list::-webkit-scrollbar-track,.character-customization-modal .modal-body::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.character-list::-webkit-scrollbar-thumb,.character-customization-modal .modal-body::-webkit-scrollbar-thumb{background:#888;border-radius:4px}.character-list::-webkit-scrollbar-thumb:hover,.character-customization-modal .modal-body::-webkit-scrollbar-thumb:hover{background:#555}.equipment-section{display:flex;flex-direction:column;gap:1rem}.equipment-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(.5rem,2vw,1rem)}.equipment-slot{aspect-ratio:1;background:#2a2a2a;border:clamp(2px,.3vw,3px) solid #FFD700;border-radius:clamp(6px,1vw,8px);display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;position:relative;transition:all .2s ease;min-height:clamp(70px,12vw,100px);width:100%}.equipment-slot:hover{background:#333;border-color:orange}.equipment-slot.selected{background:#fff3e0;border-color:#e0842f}@media (max-width: 768px){.character-customization-screen{padding:clamp(.75rem,2vw,1rem);margin-top:clamp(1rem,2vw,1.5rem)}.character-customization-screen h2{font-size:clamp(1.25rem,4vw,1.75rem);margin-bottom:clamp(.75rem,2vw,1rem)}.equipment-grid{gap:clamp(.4rem,1.5vw,.75rem)!important}.equipment-slot{min-height:clamp(60px,10vw,80px);border-width:clamp(2px,.4vw,3px)}}.filters{display:flex;flex-direction:column;gap:1rem}.filters-group{background:linear-gradient(135deg,#fff,#f8f9fa);border:1px solid #e9ecef;border-radius:12px;padding:1.25rem;margin-bottom:1.5rem;box-shadow:0 4px 6px #00000012,0 2px 4px #0000000d;position:relative;overflow:hidden;transition:all .3s ease;width:100%;max-width:100%;box-sizing:border-box}.filters-group:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#667eea,#764ba2)}.filters-group:hover{transform:translateY(-2px);box-shadow:0 8px 12px #0000001a,0 4px 6px #00000014}.filters-title{font-weight:700;color:#2d3748;margin-bottom:.75rem;display:flex;align-items:center;font-size:1rem;letter-spacing:.3px}.filters-title img{flex-shrink:0}.section-item-card{background:linear-gradient(135deg,#fffffff2,#f8f9faf2);border:1px solid #e0e7ff;border-radius:10px;padding:.875rem;margin-bottom:.75rem;transition:all .3s ease;box-shadow:0 2px 4px #0000000f;width:100%;box-sizing:border-box}.section-item-card:hover{transform:translate(4px);box-shadow:0 4px 8px #667eea33;border-color:#667eea;background:linear-gradient(135deg,#fff,#f8f9fa)}.section-item-row{display:flex;align-items:center;gap:.5rem;margin-bottom:.25rem;flex-wrap:wrap;width:100%}.section-item-label{flex:1;min-width:0;display:flex;align-items:center;gap:.5rem}.section-item-label span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.section-item-actions{display:flex;gap:.25rem;flex-shrink:0;align-items:center}.section-action-btn{flex-shrink:0!important}.section-item-adviser{font-size:.85rem;color:#666;margin-left:1.5rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.filters-item{color:#000;font-size:.9rem}.filters-radio{display:flex;align-items:center;gap:.5rem;font-size:.9rem;color:#333}.filters-radio input[type=radio]{width:18px;height:18px;appearance:none;-webkit-appearance:none;-moz-appearance:none;border:2px solid #333;border-radius:50%;background:#fff;cursor:pointer;position:relative;flex-shrink:0}.filters-radio input[type=radio]:checked{background:#000;border-color:#000}.filters-radio input[type=radio]:checked:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:8px;height:8px;background:#fff;border-radius:50%}.student-content{display:flex;flex-direction:column;gap:1rem}.sorter-bar{display:flex;justify-content:space-between;align-items:center;background:linear-gradient(135deg,#fff,#f8f9fa);border:1px solid #e9ecef;border-radius:10px;padding:1rem 1.25rem;box-shadow:0 4px 6px #00000012,0 2px 4px #0000000d;transition:all .3s ease}.sorter-bar:hover{box-shadow:0 6px 8px #00000017,0 4px 6px #00000012}.class-panel .sorter-bar{box-shadow:0 4px 6px #00000012,0 2px 4px #0000000d}.sorter-left{color:#000;font-weight:600;display:flex;align-items:center}.sorter-left img{flex-shrink:0}.sorter-controls{display:flex;gap:1rem;align-items:center}.sorter-select{padding:.4rem .6rem;border-radius:8px;border:1px solid #e1e5e9;background:#fff;color:#000}.sorter-total{color:#e0842f;font-size:.85rem}.quiz-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem;padding:.5rem 0}.quiz-card{background:linear-gradient(135deg,#0a1e22,#243d40,#0f3a47);border:3px solid #E5A823;border-radius:12px;padding:1.5rem;display:flex;flex-direction:column;gap:0;box-shadow:0 8px 20px #0a1e22cc,0 4px 8px #e5a82380,inset 0 2px 4px #f8d76826,inset 0 -2px 4px #0a1e2299;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;min-height:240px;height:100%}.quiz-card:after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(248,215,104,.12) 0%,transparent 60%);pointer-events:none;z-index:0}.quiz-card:before{content:"";position:absolute;top:-20px;right:-20px;width:100px;height:100px;background:radial-gradient(circle,rgba(244,196,61,.15) 0%,transparent 70%);border-radius:50%;pointer-events:none}.quiz-card:hover{box-shadow:0 12px 28px #f4c43d99,0 6px 12px #e5a82380,inset 0 2px 4px #f8d76840,inset 0 -2px 4px #0a1e2280;transform:translateY(-5px);border-color:#f4c43d;background:linear-gradient(135deg,#243d40,#0f3a47,#14545f)}.quiz-card.difficulty-easy,.quiz-card[data-difficulty=Easy]{background:linear-gradient(135deg,#243d40,#0f3a47,#14545f);border-color:#e5a823;box-shadow:0 8px 16px #0a1e22b3,0 2px 4px #e5a82366,inset 0 1px #f8d76826,inset 0 -1px #0a1e2280}.quiz-card.difficulty-easy:hover,.quiz-card[data-difficulty=Easy]:hover{box-shadow:0 12px 28px #f4c43d99,0 4px 8px #e5a82380,inset 0 2px 4px #f8d76840,inset 0 -2px 4px #0a1e2266;border-color:#f4c43d;background:linear-gradient(135deg,#0f3a47,#14545f,#1a6c7b)}.quiz-card.difficulty-normal,.quiz-card[data-difficulty=Normal]{background:linear-gradient(135deg,#0a1e22,#243d40,#0f3a47);border-color:#e5a823;box-shadow:0 8px 16px #0a1e22cc,0 2px 4px #e5a82366,inset 0 1px #f8d76826,inset 0 -1px #0a1e2299}.quiz-card.difficulty-normal:hover,.quiz-card[data-difficulty=Normal]:hover{box-shadow:0 12px 28px #f4c43d99,0 4px 8px #e5a82380,inset 0 2px 4px #f8d76840,inset 0 -2px 4px #0a1e2280;border-color:#f4c43d;background:linear-gradient(135deg,#243d40,#0f3a47,#14545f)}.quiz-card.difficulty-hard,.quiz-card[data-difficulty=Hard]{background:linear-gradient(135deg,#0a1e22,#0f3a47);border-color:#e5a823;box-shadow:0 8px 16px #0a1e22e6,0 2px 4px #e5a82380,inset 0 1px #f8d7681f,inset 0 -1px #0a1e22b3}.quiz-card.difficulty-hard:hover,.quiz-card[data-difficulty=Hard]:hover{box-shadow:0 12px 28px #f4c43db3,0 4px 8px #e5a82399,inset 0 2px 4px #f8d76833,inset 0 -2px 4px #0a1e2299;border-color:#f4c43d;background:linear-gradient(135deg,#0f3a47,#243d40,#0f3a47)}.quiz-card-badge{display:flex;gap:.5rem;flex-wrap:wrap;position:relative;z-index:2;margin-bottom:.75rem;align-items:center}.badge{background:linear-gradient(135deg,#f4c43d4d,#e5a82340);color:#f4c43d;border:2px solid rgba(229,168,35,.5);box-shadow:0 2px 4px #0a1e224d,inset 0 1px #f8d7684d;border:1px solid rgba(255,255,255,.3);padding:.25rem .6rem;border-radius:12px;font-size:.7rem;font-weight:600;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);text-shadow:0 1px 2px rgba(0,0,0,.1);white-space:nowrap;line-height:1.2}.difficulty-easy,.difficulty-normal,.difficulty-hard{background:#f4c43d33;border-color:#e5a82366;color:#f4c43d}.quiz-card-title:not(.teacher-layout .quiz-card-title){font-weight:700;color:#f4c43d;min-height:auto;font-size:clamp(.9rem,1.5vw,1.1rem);text-shadow:2px 2px 4px #0A1E22,0 0 10px rgba(244,196,61,.5);position:relative;z-index:2;line-height:1.4;margin-bottom:.5rem;word-wrap:break-word;overflow-wrap:break-word}.student-page .quiz-card-title{font-family:Orbitron,sans-serif;letter-spacing:.02em}.quiz-card-description{color:#f8d768;font-size:.85rem;line-height:1.5;text-shadow:1px 1px 3px #0A1E22,0 0 4px rgba(248,215,104,.3);position:relative;z-index:2;margin-bottom:1rem;max-height:3.5em;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;flex-grow:1}.quiz-card-play{align-self:flex-start;background:#ffffff4d;color:#fff;border:1px solid rgba(255,255,255,.5);border-radius:6px;padding:.4rem .75rem;font-weight:600;font-size:.8rem;cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);text-shadow:0 1px 2px rgba(0,0,0,.1);transition:all .2s ease;white-space:nowrap;flex-shrink:0}.class-actions .quiz-card-play,.teacher-sidebar .quiz-card-play,.teacher-sidebar .filters-group .quiz-card-play{background:linear-gradient(135deg,#667eea,#764ba2)!important;color:#fff!important;border:1px solid #667eea!important;padding:.6rem 1.2rem;font-weight:600;font-size:.9rem;cursor:pointer;transition:all .2s ease;white-space:nowrap;border-radius:8px;text-shadow:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;align-self:auto;box-shadow:0 2px 4px #667eea33}.class-actions .quiz-card-play:hover:not(:disabled),.teacher-sidebar .quiz-card-play:hover:not(:disabled),.teacher-sidebar .filters-group .quiz-card-play:hover:not(:disabled){background:linear-gradient(135deg,#4caf50,#388e3c)!important;border-color:#4caf50!important;box-shadow:0 4px 8px #4caf504d!important}.class-actions .quiz-card-play:disabled,.teacher-sidebar .quiz-card-play:disabled,.teacher-sidebar .filters-group .quiz-card-play:disabled{background:#d1d5db!important;color:#9ca3af!important;border-color:#d1d5db!important;cursor:not-allowed;opacity:.6;filter:none!important;box-shadow:none!important}.pagination{display:flex;gap:.4rem;justify-content:center;margin-top:1rem}.page-btn{background:#fff;border:1px solid #eee;border-radius:8px;padding:.35rem .6rem;cursor:pointer}.page-btn.active{background:#e0842f;color:#fff;border-color:#e0842f}.teacher-page{width:100%;max-width:100vw;overflow-x:hidden;background:#e8f4f8;min-height:100vh;box-sizing:border-box}.teacher-main{max-width:1200px;width:100%;margin:0 auto;padding:2rem;display:grid;grid-template-columns:280px 1fr;gap:2rem;background:#e8f4f8;box-sizing:border-box;overflow-x:hidden}.teacher-hero{justify-items:center;padding:40px;color:#000;text-align:center}.teacher-sidebar{border-right:1px solid rgba(0,0,0,.08);padding-right:1rem}.quiz-filters-wrapper{margin-top:1.5rem;padding-top:0}.teacher-content{display:flex;flex-direction:column;gap:1rem;width:100%;max-width:100%;box-sizing:border-box;overflow-x:hidden}.teacher-title{color:#e0842f;font-weight:700;font-size:1.8rem}.class-panel{background:linear-gradient(135deg,#fff,#f8f9fa);border-radius:16px;padding:2rem;box-shadow:0 6px 12px #00000014,0 2px 4px #0000000f;border:1px solid #e9ecef;margin-bottom:2rem;position:relative;overflow:hidden;width:100%;max-width:100%;box-sizing:border-box}.class-panel:before{content:"";position:absolute;top:0;left:0;right:0;height:5px;background:linear-gradient(90deg,#f59e0b,#d97706)}.class-panel-title{color:#7a4d1b;font-weight:700;font-size:36px;text-align:center;margin-bottom:.5rem;text-shadow:0 2px 4px rgba(122,77,27,.1)}.class-table{border:none;border-radius:0;padding:0;min-height:200px;display:flex;flex-direction:column;background:transparent;box-shadow:none;overflow:hidden;width:100%;margin:0}.class-table-wrapper{overflow-x:auto!important;overflow-y:visible;-webkit-overflow-scrolling:touch;width:100%;max-width:100%;margin:0;position:relative;scrollbar-width:thin;scrollbar-color:#667eea #f3f4f6;border-radius:12px;background:#fff;box-shadow:0 2px 8px #00000014;border:1px solid #e9ecef;box-sizing:border-box;min-width:0}.class-table-wrapper::-webkit-scrollbar{height:14px;display:block!important;-webkit-appearance:none}.class-table-wrapper::-webkit-scrollbar-track{background:#e0e0e0;border-radius:7px;border:1px solid #d0d0d0}.class-table-wrapper::-webkit-scrollbar-thumb{background:#888;border-radius:7px;border:2px solid #e0e0e0;min-height:20px}.class-table-wrapper::-webkit-scrollbar-thumb:hover{background:#666;cursor:pointer}.class-table-wrapper::-webkit-scrollbar-thumb:active{background:#555}.class-table{min-width:800px!important;width:100%!important;box-sizing:border-box;display:table;table-layout:auto}.table-scroll-wrapper{overflow-x:auto;overflow-y:visible;-webkit-overflow-scrolling:touch;width:100%;margin:0}.table-scroll-wrapper::-webkit-scrollbar{height:8px}.table-scroll-wrapper::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.table-scroll-wrapper::-webkit-scrollbar-thumb{background:#888;border-radius:4px}.table-scroll-wrapper::-webkit-scrollbar-thumb:hover{background:#555}.table-scroll-wrapper table{min-width:800px}.admin-content-body>div[style*=overflowX]{overflow-x:auto!important;-webkit-overflow-scrolling:touch;width:100%}.admin-content-body>div[style*=overflowX]::-webkit-scrollbar{height:8px}.admin-content-body>div[style*=overflowX]::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.admin-content-body>div[style*=overflowX]::-webkit-scrollbar-thumb{background:#888;border-radius:4px}.admin-content-body>div[style*=overflowX]::-webkit-scrollbar-thumb:hover{background:#555}.class-row{display:grid;grid-template-columns:minmax(200px,2.5fr) minmax(100px,1fr) minmax(100px,1.2fr) minmax(120px,1.5fr) minmax(130px,1.5fr) minmax(130px,1.3fr) minmax(100px,1fr);padding:1.25rem 1.75rem;gap:.75rem;color:#000!important;align-items:center;border-bottom:1px solid #f0f0f0;min-height:65px;width:100%;box-sizing:border-box}.progress-table .class-row{grid-template-columns:minmax(200px,2.5fr) minmax(130px,1.5fr) minmax(90px,1fr) minmax(110px,1.3fr) minmax(130px,1.5fr) minmax(110px,1.3fr) minmax(100px,1fr);gap:.75rem;padding:1.5rem 2rem}.progress-table .class-row.head{padding:1.75rem 2rem;min-height:75px}.manage-class-table .class-row{grid-template-columns:minmax(200px,2.5fr) minmax(100px,1fr) minmax(90px,1fr) minmax(130px,1.5fr) minmax(100px,1fr);gap:.75rem;padding:1.25rem 1.75rem}.manage-class-table .class-row.head{padding:1.5rem 1.75rem;min-height:70px}.class-row:last-child{border-bottom:none}.cell-actions{display:flex;gap:.5rem;justify-content:center;align-items:center}.action-btn{background:transparent;border:1px solid #e2e8f0;cursor:pointer;padding:.4rem;border-radius:6px;transition:all .2s ease;display:flex;align-items:center;justify-content:center;width:32px;height:32px}.action-btn img{width:16px;height:16px;transition:transform .2s ease}.action-btn.edit-btn{background:#3b82f614;border-color:#3b82f633}.action-btn.edit-btn:hover:not(:disabled){background:linear-gradient(135deg,#4caf50,#388e3c);border-color:#4caf50;box-shadow:0 2px 4px #4caf504d}.action-btn.edit-btn:hover:not(:disabled) img{filter:brightness(0) invert(1)}.action-btn.delete-btn{background:#ef444414;border-color:#ef444433}.action-btn.delete-btn:hover:not(:disabled){background:linear-gradient(135deg,#d32f2f,#b71c1c);border-color:#d32f2f;box-shadow:0 2px 4px #d32f2f4d}.action-btn.delete-btn:hover:not(:disabled) img{filter:brightness(1.1)}.action-btn.delete-btn:disabled{background:#ef44440d;border-color:#ef44441a;cursor:not-allowed;opacity:.5}.class-row:not(.head){color:#2d3748!important;transition:all .2s ease;background:#fff}.class-row:not(.head):nth-child(2n){background:#f8f9fa}.class-row:not(.head):hover{background:linear-gradient(135deg,#f7913314,#f791330a)!important;transform:translate(3px);box-shadow:-3px 0 #f79133;transition:all .2s ease}.class-row.head{color:#fff!important;font-weight:700;font-size:.95rem;letter-spacing:.5px;text-transform:uppercase;background:linear-gradient(135deg,#667eea,#764ba2);padding:1.5rem 1.75rem;border-bottom:2px solid #5a67d8;box-shadow:0 2px 4px #667eea33;position:relative;min-height:70px}.class-row.head:after{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.3) 50%,transparent 100%)}.class-row .cell{color:#2d3748!important;padding:.75rem .5rem;text-align:center;font-size:.95rem;line-height:1.6;word-wrap:break-word;overflow-wrap:break-word;display:flex;align-items:center;justify-content:center;min-height:40px}.class-row .cell:first-child{text-align:left;justify-content:flex-start;font-weight:600;color:#1a202c!important;font-size:1rem;padding-left:.75rem}.class-row.head .cell{justify-content:center}.class-row.head .cell:first-child{justify-content:flex-start}.class-row.head .cell{color:#fff!important;text-shadow:0 1px 2px rgba(0,0,0,.1)}.class-empty{text-align:center;color:#718096;padding:3rem 1rem;width:100%;flex:1;display:flex;align-items:center;font-size:.95rem;background:linear-gradient(135deg,#f8f9fa,#fff);justify-content:center;font-size:1rem}.class-actions{display:flex;gap:.75rem;margin-top:.75rem}.modal-backdrop{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal{width:min(500px,92vw);background:#fff;border-radius:12px;border:none;overflow:hidden;color:#000;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-height:90vh;display:flex;flex-direction:column}.modal.modal-large{width:min(1200px,92vw)!important;max-width:1200px!important}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 2rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-bottom:2px solid #5a67d8}.modal-header h3{margin:0;font-size:1.5rem;font-weight:600;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.1)}.modal-body{padding:2rem;overflow-y:auto;flex:1;scrollbar-width:thin;scrollbar-color:#c0c0c0 #f0f0f0}.modal-body::-webkit-scrollbar{width:10px}.modal-body::-webkit-scrollbar-track{background:#f0f0f0;border-radius:10px}.modal-body::-webkit-scrollbar-thumb{background:silver;border-radius:10px;border:2px solid #f0f0f0}.modal-body::-webkit-scrollbar-thumb:hover{background:#a8a8a8}.modal-footer{display:flex;gap:.75rem;justify-content:flex-end;align-items:center;padding:1.5rem 2rem;background:#fff;border-top:1px solid #e5e7eb}.modal-footer .auth-button{margin-top:0;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:1px solid #667eea;padding:.6rem 1.2rem;border-radius:8px;font-size:.9rem;font-weight:600;transition:all .2s ease;box-shadow:0 2px 4px #667eea33}.modal-footer .auth-button:hover:not(:disabled){background:linear-gradient(135deg,#4caf50,#388e3c);border-color:#4caf50;box-shadow:0 4px 8px #4caf504d}.modal-footer .auth-button:disabled{background:#d1d5db;color:#9ca3af;border-color:#d1d5db;cursor:not-allowed;transform:none;box-shadow:none;opacity:.6}.modal-close{background:transparent;border:none;cursor:pointer;color:#ffffffe6;display:flex;align-items:center;justify-content:center;padding:.5rem;border-radius:6px;transition:all .2s ease;font-size:1.5rem;line-height:1}.modal-close:hover{background:#fff3;color:#fff}.modal-close img{display:block;width:20px;height:20px;filter:opacity(.7);transition:opacity .2s ease}.modal-close:hover img{filter:opacity(1)}.classroom-info{display:flex;flex-direction:column;gap:1rem}.adviser{font-size:1rem;color:#e0842f}.classmates{display:flex;flex-direction:column;gap:.5rem}.classmates-title{font-weight:600;color:#e0842f}.classmates-list{list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.5rem}.classmates-list li{padding:.25rem .5rem;background:#f8f9fa;border-radius:6px;font-size:.9rem}@media (max-width: 1024px){.student-main{padding:1rem 1.5rem 2rem}.difficulty-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem}.difficulty-card{min-height:190px}}@media (max-width: 768px){.header-content{padding:0 1rem}.hero{padding:4rem 0}.hero-content{padding:0 1rem}.quiz-difficulty{padding:3rem 0}.quiz-difficulty-content{padding:0 1rem}.difficulty-boxes{flex-direction:column;align-items:center;gap:1.5rem}.difficulty-box{min-width:250px;max-width:300px}.features{padding:3rem 0}.features-content{grid-template-columns:1fr;gap:2rem;padding:0 1rem}.footer-content{padding:0 1rem;gap:1.5rem}.auth-container{flex-direction:column;padding:1rem;padding-top:calc(80px + 1rem)}.auth-left{padding:1rem;margin-bottom:2rem}.auth-logo{font-size:2.5rem}.auth-description{font-size:1rem}.auth-card{padding:2rem 1.5rem;max-width:100%}.form-row{flex-direction:column}.form-row .form-group{min-width:100%}.signup-options{flex-direction:column;gap:.5rem}.auth-title{font-size:2rem}.student-main{grid-template-columns:1fr;padding:1rem 1rem 2rem;gap:1.5rem}.student-sidebar{border-right:none;padding-right:0;border-bottom:1px solid rgba(0,0,0,.08);padding-bottom:1.5rem;margin-bottom:1rem}.student-usercard{max-width:100%;margin-bottom:0}.teacher-main{padding:.75rem;gap:.75rem;width:100%;max-width:100vw;box-sizing:border-box}.teacher-sidebar{width:100%;max-width:100%}.quiz-grid{grid-template-columns:1fr;gap:1rem;padding:.25rem 0}.filters-group{padding:.875rem;margin-bottom:.875rem}.sorter-bar{padding:.75rem 1rem;flex-wrap:wrap;gap:.5rem}.difficulty-selection{padding:1.5rem}.difficulty-title{font-size:1.75rem;margin-bottom:1.5rem}.student-content{width:100%;overflow-x:hidden}.difficulty-grid{grid-template-columns:1fr;gap:1.5rem;max-width:100%}.difficulty-card{min-height:180px}.teacher-main{grid-template-columns:1fr;padding:1rem;gap:1rem;width:100%;max-width:100vw;box-sizing:border-box}.teacher-sidebar{border-right:none;padding-right:0;border-bottom:1px solid rgba(0,0,0,.08);padding-bottom:1.5rem;margin-bottom:1rem;width:100%;max-width:100%;box-sizing:border-box}.teacher-content{width:100%;max-width:100%;overflow-x:hidden}.class-panel{padding:1rem}.class-panel-title{font-size:1.5rem}.quiz-management{padding:1rem}.quiz-title{font-size:1.5rem}.create-quiz-btn{padding:.6rem 1rem;font-size:.9rem}.quiz-grid{grid-template-columns:1fr;gap:.75rem;width:100%;max-width:100%}.filters-group{padding:.875rem;margin-bottom:.875rem;width:100%;max-width:100%;box-sizing:border-box}.section-item-row{gap:.375rem}.section-item-actions{gap:.2rem}.section-action-btn{padding:.2rem .4rem!important;font-size:.7rem!important}.section-action-btn img{width:14px!important;height:14px!important}.section-item-adviser{margin-left:1rem;font-size:.8rem}.sorter-bar{padding:.75rem 1rem;flex-wrap:wrap;gap:.5rem;width:100%;max-width:100%;box-sizing:border-box}.class-panel{padding:1.25rem;width:100%;max-width:100%;box-sizing:border-box;overflow-x:hidden}.class-table-wrapper{width:100%;max-width:100%;overflow-x:auto!important;-webkit-overflow-scrolling:touch;margin:0}.class-table{min-width:750px!important;width:max-content!important}.class-panel-title{font-size:1.75rem}.quiz-management{padding:1.25rem;width:100%;max-width:100%;box-sizing:border-box;overflow-x:hidden}.quiz-header{flex-direction:column;align-items:flex-start;gap:1rem}.quiz-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.75rem}.filters-group{padding:1rem;margin-bottom:1rem}}@media (max-width: 480px){.header-content{padding:0 .8rem}.hero{padding:3rem 0}.hero-content,.quiz-difficulty-content{padding:0 .8rem}.difficulty-box{min-width:200px;min-height:150px;padding:1.5rem}.difficulty-label{font-size:1.3rem}.features-content{padding:0 .8rem}.feature-title{font-size:1.2rem}.footer-content{padding:0 .8rem;grid-template-columns:1fr}.footer-column{text-align:center}.auth-container{padding:.5rem;padding-top:calc(80px + .5rem);min-height:auto}.auth-left{padding:.75rem;margin-bottom:1.5rem}.auth-card{padding:1.5rem 1rem}.auth-logo{font-size:2rem}.auth-description{font-size:.9rem}.student-main{padding:1rem .75rem 2rem;gap:1rem}.student-hero-inner{padding:0 1rem}.student-hero-title{font-size:1.5rem}.student-hero-subtitle{font-size:.85rem}.student-sidebar{padding-bottom:1rem;margin-bottom:.75rem}.student-usercard{padding:.75rem;border-radius:8px}.achievements-section{padding:1rem;margin-top:1rem}.achievements-grid{grid-template-columns:repeat(auto-fill,minmax(50px,1fr));gap:.5rem;max-height:250px}.achievement-card{padding:.5rem}.achievement-icon{font-size:1.5rem}.leaderboard-section{padding:1rem;margin-top:1rem}.leaderboard-section h4{font-size:1rem;margin-bottom:.75rem}.user-name{font-size:1rem}.user-name img{width:18px;height:18px}.user-name-display,.user-grade{font-size:.85rem;margin-bottom:.4rem}.user-section-btn{padding:.4rem .75rem;font-size:.85rem}.progress-section{margin-top:.75rem;padding:.75rem}.progress-section h4{font-size:.95rem;margin-bottom:.5rem}.progress-item{font-size:.85rem;margin-bottom:.4rem}.difficulty-selection{padding:1rem;border-radius:8px}.difficulty-title{font-size:1.5rem;margin-bottom:1rem}.difficulty-grid{gap:1rem}.difficulty-card{min-height:160px;border-radius:10px}.difficulty-image{height:100px}.difficulty-content{padding:1rem}.difficulty-name{font-size:1.25rem}.difficulty-description{font-size:.85rem}.difficulty-stats{font-size:.8rem}}.form-input:focus{animation:inputFocus .3s ease}@keyframes inputFocus{0%{transform:scale(1)}50%{transform:scale(1.02)}to{transform:scale(1)}}.form-input.error{border-color:#dc3545;background:#fff5f5}.difficulty-selection{padding:clamp(1rem,3vw,2rem);text-align:center;background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000000d;border:1px solid #e0e0e0;width:100%;max-width:100%;box-sizing:border-box}.difficulty-title{font-size:clamp(1.5rem,4vw,2rem);font-weight:700;color:#e0842f;margin-bottom:2rem}.difficulty-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(.75rem,2vw,1.5rem);max-width:1200px;margin:0 auto;width:100%}.difficulty-card{background:linear-gradient(135deg,#0a1e22,#0f3a47);border:3px solid #E5A823;border-radius:12px;padding:0;text-decoration:none;color:inherit;transition:all .3s ease;overflow:hidden;cursor:pointer;display:block;min-height:clamp(160px,22vw,180px);width:100%;max-width:100%;box-sizing:border-box;box-shadow:0 4px 12px #0a1e2280,0 2px 4px #e5a8234d;position:relative}.difficulty-card:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,#f4c43d1a,#f8d7680d);opacity:0;transition:opacity .3s ease;pointer-events:none}.difficulty-card:hover{transform:translateY(-4px);box-shadow:0 8px 20px #e5a82380,0 4px 8px #0a1e2299;border-color:#f4c43d}.difficulty-card:hover:before{opacity:1;border-color:#f79133}.difficulty-card.easy{border-color:#4caf50}.difficulty-card.easy:hover{border-color:#45a049}.difficulty-card.normal{border-color:#ff9800}.difficulty-card.normal:hover{border-color:#f57c00}.difficulty-card.hard{border-color:#f44336}.difficulty-card.hard:hover{border-color:#d32f2f}.difficulty-card:hover .difficulty-card-overlay{background:#000000ab!important;border:solid 4px #f79133!important;transition:.4s ease!important}.difficulty-card:hover h3{color:#f79133!important;text-shadow:0 0px 10px #f79133!important}.difficulty-card:hover p{color:#f79133!important}.difficulty-card:hover .difficulty-stats-container span{color:#f4c43d!important;border-color:#f4c43d!important;background:#f4c43d4d!important}.difficulty-image{width:100%;height:clamp(100px,15vw,120px);object-fit:contain;overflow:hidden;background:linear-gradient(135deg,#0f3a474d,#1a6c7b33);display:flex;align-items:center;justify-content:center;border-bottom:2px solid rgba(229,168,35,.3)}.difficulty-image img{width:100%;height:100%;object-fit:cover}.difficulty-content{padding:clamp(.75rem,2vw,1rem);text-align:center}.difficulty-name{font-family:Orbitron,sans-serif;font-size:clamp(1.1rem,3vw,1.3rem);font-weight:700;letter-spacing:.02em;color:#f4c43d;margin-bottom:clamp(.25rem,.8vw,.4rem);text-shadow:1px 1px 3px rgba(10,30,34,.8),0 0 6px rgba(244,196,61,.3)}.difficulty-description{color:#f8d768;margin-bottom:clamp(.5rem,1vw,.75rem);font-size:clamp(.8rem,1.8vw,.85rem);text-shadow:1px 1px 2px rgba(10,30,34,.6)}.difficulty-stats{display:flex;justify-content:space-between;font-size:clamp(.7rem,1.5vw,.8rem);color:#f8d768;gap:.5rem}.difficulty-stats span{background:#f4c43d33;border:1px solid rgba(229,168,35,.4);padding:.3rem .6rem;border-radius:10px;color:#f8d768;text-shadow:0 1px 2px rgba(10,30,34,.6)}.progress-section{margin-top:1rem;padding:1rem;background:#f8f9fa;border-radius:10px;border:1px solid #e9ecef}.progress-section h4{color:#000;margin-bottom:.75rem;font-size:1rem;font-weight:700}.progress-item{display:flex;justify-content:space-between;margin-bottom:.5rem;font-size:.9rem;color:#333}.progress-item:last-child{margin-bottom:0}.progress-value{font-weight:700;color:#e0842f}.quiz-management{margin-top:2.5rem;padding:2rem;position:relative;background:linear-gradient(135deg,#fff,#f8f9fa);border-radius:16px;box-shadow:0 6px 12px #00000014,0 2px 4px #0000000f;border:1px solid #e9ecef;overflow:hidden;width:100%;max-width:100%;box-sizing:border-box}.quiz-management:before{content:"";position:absolute;top:0;left:0;right:0;height:5px;background:linear-gradient(90deg,#667eea,#764ba2);border-radius:16px 16px 0 0}.quiz-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.quiz-management .sorter-bar{margin-top:1rem;margin-bottom:1rem;padding-top:1rem;box-shadow:0 4px 6px #00000012,0 2px 4px #0000000d}.quiz-title{font-size:1.8rem;font-weight:700;color:#e0842f}.create-quiz-btn{background:linear-gradient(135deg,#4caf50,#388e3c);color:#fff;border:none;padding:.8rem 1.5rem;border-radius:8px;font-weight:700;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 4px #4caf504d}.create-quiz-btn:hover:not(:disabled){background:linear-gradient(135deg,#45a049,#2e7d32);box-shadow:0 4px 8px #4caf5066}.create-quiz-btn:disabled{background:#d1d5db;color:#9ca3af;cursor:not-allowed;opacity:.6}.section-management{margin-bottom:3rem;padding-bottom:2rem;border-bottom:4px solid #f79133}.section-quiz-management{margin-top:2rem;padding-top:2rem;border-top:2px solid #e0e0e0}.section-quiz-header{margin-bottom:1.5rem}.section-quiz-title{font-size:1.5rem;font-weight:700;color:#e0842f;margin-bottom:1rem}.section-filters,.quiz-filters{margin-bottom:1rem;padding:1rem;background:#f8f9fa;border-radius:8px;border:1px solid #e0e0e0}.admin-content input[type=text],.admin-content input[type=email],.admin-content input[type=password],.admin-content input[type=date],.admin-content select,.admin-content textarea{color:#333!important;background:#fff!important}.admin-content input::placeholder{color:#999!important}.admin-content select option{color:#333;background:#fff}.stage-page{min-height:100vh;background:linear-gradient(180deg,#fef3e7,#fff5f8);display:flex;flex-direction:column}.stage-page__content{flex:1;display:flex;justify-content:center;padding:4rem 1.5rem 3rem}.stage-page__wrapper{width:min(960px,100%);display:flex;flex-direction:column;gap:2.5rem;align-items:center}.stage-hero{text-align:center;display:flex;flex-direction:column;gap:.75rem;color:#4a3c2c}.stage-hero__badge{display:inline-flex;align-items:center;justify-content:center;padding:.4rem 1.25rem;border-radius:999px;background:#fff;font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:#e0842f;align-self:center;box-shadow:0 1px 3px #0000000d;border:1px solid #e0e0e0}.stage-hero__title{font-size:clamp(2rem,4vw,2.75rem);font-weight:800;color:#e0842f}.stage-hero__subtitle{font-size:1.05rem;color:#5f4f3f;max-width:580px;margin:0 auto}.stage-hero__greeting{font-size:.95rem;color:#7a6855;font-weight:600}.stage-map-section{width:100%;background:#fff;padding:2.5rem 2rem;border-radius:8px;box-shadow:0 1px 3px #0000000d;border:1px solid #e0e0e0;position:relative;overflow:hidden}.stage-map{position:relative;width:100%;display:flex;flex-direction:column;gap:1.5rem}.stage-map:before{content:"";position:absolute;left:50%;top:1.5rem;bottom:1.5rem;transform:translate(-50%);width:10px;background:linear-gradient(180deg,var(--stage-color, #f79133) 0%,rgba(255,255,255,0) 100%);border-radius:999px;opacity:.35;pointer-events:none}.stage-map__info{text-align:center;display:flex;flex-direction:column;gap:.75rem}.stage-map__badge{display:inline-flex;align-items:center;justify-content:center;padding:.4rem 1rem;border-radius:999px;font-size:.85rem;font-weight:600;align-self:center}.stage-map__hint{font-size:.95rem;color:#54606f;max-width:520px;margin:0 auto}.stage-map__path{position:relative;display:flex;flex-direction:column;gap:1.5rem;padding:.5rem 0}.stage-map__item{width:100%;display:flex;flex-direction:column;align-items:center;gap:1rem}.stage-map__item--left .stage-map__node{align-self:flex-start}.stage-map__item--right .stage-map__node{align-self:flex-end}.stage-map__node-wrapper{width:100%;display:flex;justify-content:center}.stage-map__node-link{text-decoration:none;display:inline-flex;cursor:pointer}.stage-map__node{width:clamp(160px,40vw,220px);padding:1.25rem 1.5rem;border-radius:8px;border:1px solid #e0e0e0;background:#fff;display:flex;flex-direction:column;align-items:center;gap:.4rem;transition:transform .2s ease,box-shadow .2s ease;text-align:center;box-shadow:0 1px 3px #0000000d}.stage-map__node:hover{transform:translateY(-2px);box-shadow:0 4px 8px #0000001a}.stage-map__node--completed{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.stage-map__node--locked{opacity:.6;filter:grayscale(.1);cursor:not-allowed}.stage-map__number{font-size:1.75rem;font-weight:700}.stage-map__label{font-size:.95rem;font-weight:600;opacity:.9}.stage-map__connector{width:100%;display:flex;justify-content:center}.stage-map__connector span{display:block;width:6px;height:80px;border-radius:999px;background:var(--stage-color, rgba(233, 141, 35, .35));opacity:.35}.stage-footer{display:flex;flex-direction:column;align-items:center;gap:.6rem;text-align:center}.stage-footer__link{color:#e0842f;font-weight:600;text-decoration:none}.stage-footer__link:hover{text-decoration:underline}.stage-footer__note{font-size:.9rem;color:#5c6572;max-width:360px}@keyframes fadeIn{0%{opacity:0;transform:translate(-50%,-60%) scale(.9)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}@keyframes pulse{0%,to{transform:translate(-50%,-50%) scale(1)}50%{transform:translate(-50%,-50%) scale(1.05)}}@keyframes glow{0%,to{text-shadow:2px 2px 4px rgba(0,0,0,.8),0 0 10px rgba(255,215,0,.5)}50%{text-shadow:2px 2px 4px rgba(0,0,0,.8),0 0 20px rgba(255,215,0,.8)}}.battle-screen{overflow-x:hidden;position:relative;overflow:hidden;transition:background-image .5s ease-in-out}.battle-screen h1,.battle-screen h2,.battle-screen h3,.battle-screen h4,.battle-screen h5,.battle-screen h6{font-family:"Press Start 2P",cursive;letter-spacing:.05em;font-weight:400;line-height:1.4}.battle-screen button,.battle-screen .button,.battle-screen label,.battle-screen span:not(.emoji),.battle-screen div[style*=fontSize],.battle-screen p{font-family:Orbitron,sans-serif;letter-spacing:.02em}.battle-screen .question-text,.battle-screen [style*=question]{font-family:Orbitron,sans-serif;letter-spacing:.01em}.battle-screen .answer-option,.battle-screen [style*=answer]{font-family:Orbitron,sans-serif;letter-spacing:.02em}.battle-screen .hp-text,.battle-screen .stat-text,.battle-screen [style*=HP],.battle-screen [style*=hp]{font-family:Orbitron,sans-serif;letter-spacing:.01em}.battle-screen:before{content:"";position:absolute;inset:0;background-color:#0000001a;z-index:0;pointer-events:none}.battle-screen>*{position:relative;z-index:1}.battle-arena{min-height:calc(100vh - 80px)!important}@media (max-width: 1024px){.enemy-section{top:clamp(1.5rem,5vw,5rem)!important;right:clamp(.75rem,5vw,5rem)!important}.player-section{bottom:clamp(100px,28vw,180px)!important;left:clamp(.75rem,5vw,5rem)!important}.action-prompt-panel{width:clamp(340px,44vw,650px)!important;max-width:44vw!important;left:54%!important;transform:translate(calc(-100% - clamp(.4rem,.8vw,.8rem)))!important}.action-buttons-grid{width:clamp(300px,40vw,480px)!important;max-width:40vw!important;left:54%!important;transform:translate(clamp(.4rem,.8vw,.8rem))!important}}@media (max-width: 768px){.enemy-section,.player-section{gap:clamp(.5rem,1.5vw,.75rem)!important}.enemy-section{top:clamp(1.5rem,5vw,4rem)!important;right:clamp(.25rem,2vw,1.5rem)!important}.player-section{bottom:clamp(100px,28vw,170px)!important;left:clamp(.25rem,2vw,1.5rem)!important}.action-prompt-panel{width:clamp(280px,44vw,560px)!important;max-width:44vw!important;left:50%!important;transform:translate(calc(-100% - clamp(.4rem,.8vw,.8rem)))!important;bottom:clamp(.75rem,2vw,1.5rem)!important}.action-prompt-panel>div{height:calc((clamp(.75rem,2vw,1rem)*2 + clamp(.9rem,2vw,1.05rem) + 6px)*2 + clamp(.4rem,1vw,.5rem))!important}.action-buttons-grid{width:clamp(240px,40vw,460px)!important;max-width:40vw!important;left:50%!important;transform:translate(clamp(.4rem,.8vw,.8rem))!important;bottom:clamp(.75rem,2vw,1.5rem)!important;gap:clamp(.3rem,1vw,.4rem)!important}}@media (max-width: 640px){.enemy-section{top:clamp(1.25rem,4vw,3.5rem)!important;right:clamp(.25rem,2vw,1.25rem)!important}.player-section{bottom:clamp(100px,26vw,160px)!important;left:clamp(.25rem,2vw,1.25rem)!important}.action-prompt-panel{width:clamp(240px,42vw,480px)!important;max-width:42vw!important;left:50%!important;transform:translate(calc(-100% - clamp(.35rem,.7vw,.7rem)))!important}.action-buttons-grid{width:clamp(200px,38vw,420px)!important;max-width:38vw!important;left:50%!important;transform:translate(clamp(.35rem,.7vw,.7rem))!important}}@media (max-width: 480px){.enemy-section{top:clamp(.75rem,3vw,2rem)!important;right:clamp(.15rem,1.5vw,.75rem)!important;flex-direction:column!important;align-items:flex-end!important;gap:clamp(.4rem,1.2vw,.6rem)!important}.player-section{bottom:clamp(120px,24vw,140px)!important;left:clamp(.15rem,1.5vw,.75rem)!important;flex-direction:column!important;align-items:flex-start!important;gap:clamp(.4rem,1.2vw,.6rem)!important}.action-prompt-panel{width:clamp(140px,40vw,300px)!important;max-width:40vw!important;left:50%!important;transform:translate(calc(-100% - clamp(.3rem,.6vw,.6rem)))!important;bottom:clamp(.4rem,1.2vw,.8rem)!important}.action-prompt-panel>div{height:calc((clamp(.6rem,1.5vw,.85rem)*2 + clamp(.8rem,1.8vw,.95rem) + 6px)*2 + clamp(.3rem,.8vw,.4rem))!important;padding:clamp(.4rem,1.2vw,.65rem) clamp(.6rem,1.6vw,.85rem)!important}.action-prompt-panel p{font-size:clamp(.75rem,1.9vw,.9rem)!important}.action-buttons-grid{width:clamp(130px,36vw,280px)!important;max-width:36vw!important;left:50%!important;transform:translate(clamp(.3rem,.6vw,.6rem))!important;bottom:clamp(.4rem,1.2vw,.8rem)!important;gap:clamp(.2rem,.6vw,.3rem)!important}.action-buttons-grid button{padding:clamp(.4rem,1.2vw,.65rem)!important;font-size:clamp(.7rem,1.7vw,.85rem)!important}}@media (max-width: 375px){.header-content{padding:0 .75rem}.quiz-grid{grid-template-columns:1fr;gap:.75rem;padding:.25rem 0}.quiz-card{padding:1rem;min-height:200px}.quiz-card-badge{gap:.35rem;margin-bottom:.6rem}.badge{font-size:.65rem;padding:.2rem .5rem}.sorter-bar{padding:.75rem .9rem;border-radius:10px}.sorter-controls{flex-wrap:wrap;gap:.5rem;justify-content:flex-end}.sorter-select{max-width:100%}.enemy-section{top:clamp(.5rem,2.5vw,1.5rem)!important;right:clamp(.1rem,1vw,.5rem)!important;gap:clamp(.3rem,1vw,.5rem)!important}.enemy-section .enemy-character div,.player-section .player-character div{width:clamp(70px,12vw,90px)!important;height:clamp(70px,12vw,90px)!important;font-size:clamp(2rem,5vw,3rem)!important}.player-section{bottom:clamp(110px,23vw,130px)!important;left:clamp(.1rem,1vw,.5rem)!important;gap:clamp(.3rem,1vw,.5rem)!important}.action-prompt-panel{width:clamp(120px,38vw,260px)!important;max-width:38vw!important;left:50%!important;transform:translate(calc(-100% - clamp(.25rem,.5vw,.5rem)))!important;bottom:clamp(.3rem,1vw,.7rem)!important}.action-prompt-panel>div{height:calc((clamp(.55rem,1.3vw,.75rem)*2 + clamp(.75rem,1.6vw,.85rem) + 6px)*2 + clamp(.25rem,.7vw,.35rem))!important;padding:clamp(.35rem,1vw,.55rem) clamp(.5rem,1.4vw,.75rem)!important}.action-prompt-panel p{font-size:clamp(.7rem,1.7vw,.85rem)!important}.action-buttons-grid{width:clamp(110px,34vw,240px)!important;max-width:34vw!important;left:50%!important;transform:translate(clamp(.25rem,.5vw,.5rem))!important;bottom:clamp(.3rem,1vw,.7rem)!important;gap:clamp(.15rem,.5vw,.25rem)!important}.action-buttons-grid button{padding:clamp(.35rem,1vw,.55rem)!important;font-size:clamp(.65rem,1.5vw,.8rem)!important}.teacher-layout table,.admin-layout table{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.teacher-content-header,.admin-content-header{padding:.6rem;font-size:1.15rem}.teacher-content-body,.admin-content-body{padding:.6rem}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.admin-layout{display:flex;min-height:100vh;background:#f5f5f5}.admin-sidebar{width:250px;background:linear-gradient(180deg,#667eea,#764ba2);color:#fff;display:flex;flex-direction:column;position:fixed;height:100vh;left:0;top:0;box-shadow:4px 0 20px #667eea40;z-index:1000;transition:width .3s cubic-bezier(.4,0,.2,1);overflow:hidden}.admin-sidebar.collapsed{width:80px}.admin-sidebar.collapsed .admin-sidebar-item{justify-content:center;padding:.875rem .5rem;margin-left:.5rem;margin-right:.5rem}.admin-sidebar.collapsed .admin-sidebar-item>div{margin:0 auto}.admin-sidebar-header{padding:1.5rem;border-bottom:1px solid rgba(255,255,255,.15);transition:padding .3s ease;display:flex;align-items:center;justify-content:flex-start;background:#ffffff0d}.admin-sidebar.collapsed .admin-sidebar-header{padding:1.5rem .5rem;justify-content:center}.admin-sidebar-logo{width:100%;display:flex;align-items:center}.admin-sidebar.collapsed .admin-sidebar-logo{justify-content:center}.admin-sidebar-logo h2{color:#fff;font-size:1.5rem;font-weight:700;letter-spacing:.5px;text-shadow:0 2px 4px rgba(0,0,0,.2);transition:opacity .3s ease,width .3s ease}.admin-sidebar-nav{flex:1;padding:1rem 0;overflow-y:auto;scrollbar-width:none;-ms-overflow-style:none}.admin-sidebar-nav::-webkit-scrollbar{display:none}.admin-sidebar-item{width:calc(100% - 1rem);padding:.875rem 1.5rem;background:none;border:none;color:#ffffffd9;display:flex;align-items:center;gap:.75rem;cursor:pointer;font-size:.95rem;transition:all .3s cubic-bezier(.4,0,.2,1);text-align:left;position:relative;margin-left:.5rem;margin-right:.5rem;border-radius:0 12px 12px 0}.admin-sidebar-item span{transition:opacity .3s ease,width .3s ease}.admin-sidebar-item:hover{background:#ffffff26;color:#fff;transform:translate(4px);box-shadow:0 2px 8px #0000001a}.admin-sidebar-item.active{background:linear-gradient(135deg,#ffffff40,#ffffff26);color:#fff;border-left:4px solid #fff;font-weight:600;box-shadow:0 4px 12px #00000026;transform:translate(4px)}.admin-sidebar-item.active:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:linear-gradient(180deg,#ff9800,#f57c00);border-radius:0 2px 2px 0}.admin-sidebar-item.active img{filter:brightness(0) invert(1)!important}.admin-sidebar-footer{padding:1rem 0;border-top:1px solid rgba(255,255,255,.15);background:#ffffff08}.admin-sidebar-logout{color:#ffffffb3}.admin-sidebar-logout:hover{background:#dc262633;color:#fff}.admin-content{margin-left:250px;flex:1;min-height:100vh;background:#f5f5f5;transition:margin-left .3s cubic-bezier(.4,0,.2,1)}.admin-layout.sidebar-collapsed .admin-content{margin-left:80px}.admin-content-header{background:#fff;padding:1.5rem 2rem;border-bottom:1px solid #e5e7eb;box-shadow:0 1px 3px #0000000d}.admin-content-body{padding:2rem}@media (max-width: 992px){.admin-content-body{padding:1.5rem}.admin-content-header{padding:1.25rem 1.5rem}}@media (max-width: 768px){.admin-content-body{padding:1rem}.admin-content-header{padding:1rem;font-size:1.5rem}.admin-dashboard-stats{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))!important;gap:1rem!important}.stat-card{padding:1rem!important}.stat-card h3{font-size:.85rem!important}.stat-card p{font-size:1.5rem!important}.stat-card img{width:20px!important;height:20px!important}}@media (max-width: 480px){.admin-content-body{padding:.75rem}.admin-content-header{padding:.75rem;font-size:1.25rem}.admin-dashboard-stats{grid-template-columns:1fr!important;gap:.75rem!important}.stat-card{padding:.75rem!important}.stat-card h3{font-size:.8rem!important}.stat-card p{font-size:1.25rem!important}}@media (max-width: 768px){.admin-dashboard-stats{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))!important;gap:1rem!important}.stat-card{padding:1rem!important}.stat-card h3{font-size:.85rem!important}.stat-card p{font-size:1.5rem!important}.stat-card img{width:20px!important;height:20px!important}}@media (max-width: 480px){.admin-dashboard-stats{grid-template-columns:1fr!important}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.teacher-layout{display:flex;min-height:100vh;background:#f5f5f5}.teacher-sidebar{width:250px;background:linear-gradient(180deg,#667eea,#764ba2);color:#fff;display:flex;flex-direction:column;position:fixed;height:100vh;left:0;top:0;box-shadow:4px 0 20px #667eea40;z-index:1000;transition:width .3s cubic-bezier(.4,0,.2,1);overflow:hidden}.teacher-sidebar.collapsed{width:80px}.teacher-sidebar.collapsed .teacher-sidebar-item{justify-content:center;padding:.875rem .5rem;margin-left:.5rem;margin-right:.5rem}.teacher-sidebar.collapsed .teacher-sidebar-item>div{margin:0 auto}.teacher-sidebar-header{padding:1.5rem;border-bottom:1px solid rgba(255,255,255,.15);transition:padding .3s ease;display:flex;align-items:center;justify-content:flex-start;background:#ffffff0d}.teacher-sidebar.collapsed .teacher-sidebar-header{padding:1.5rem .5rem;justify-content:center}.teacher-sidebar-logo{width:100%;display:flex;align-items:center}.teacher-sidebar.collapsed .teacher-sidebar-logo{justify-content:center}.teacher-sidebar-logo h2{color:#fff;font-size:1.5rem;font-weight:700;letter-spacing:.5px;text-shadow:0 2px 4px rgba(0,0,0,.2);transition:opacity .3s ease,width .3s ease}.teacher-sidebar-nav{flex:1;padding:1rem 0;overflow-y:auto;scrollbar-width:none;-ms-overflow-style:none}.teacher-sidebar-nav::-webkit-scrollbar{display:none}.teacher-sidebar-item{width:calc(100% - 1rem);padding:.875rem 1.5rem;background:none;border:none;color:#ffffffd9;display:flex;align-items:center;gap:.75rem;cursor:pointer;font-size:.95rem;font-family:Inter,Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,Arial,sans-serif!important;font-weight:500;letter-spacing:0;transition:all .3s cubic-bezier(.4,0,.2,1);text-align:left;position:relative;margin-left:.5rem;margin-right:.5rem;border-radius:0 12px 12px 0}.teacher-sidebar-item span{transition:opacity .3s ease,width .3s ease}.teacher-sidebar-item:hover{background:#ffffff26;color:#fff;transform:translate(4px);box-shadow:0 2px 8px #0000001a}.teacher-sidebar-item.active{background:linear-gradient(135deg,#ffffff40,#ffffff26);color:#fff;border-left:4px solid #fff;font-weight:600;box-shadow:0 4px 12px #00000026;transform:translate(4px)}.teacher-sidebar-item.active:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:linear-gradient(180deg,#ff9800,#f57c00);border-radius:0 2px 2px 0}.teacher-sidebar-item.active img{filter:brightness(0) invert(1)!important}.teacher-sidebar-footer{padding:1rem 0;border-top:1px solid rgba(255,255,255,.15);background:#ffffff08}.teacher-sidebar-logout{color:#ffffffb3}.teacher-sidebar-logout:hover{background:#dc262633;color:#fff}.teacher-content{margin-left:250px;flex:1;min-height:100vh;background:#f5f5f5;transition:margin-left .3s cubic-bezier(.4,0,.2,1)}.teacher-layout.sidebar-collapsed .teacher-content{margin-left:80px}.teacher-content-header{background:#fff;padding:1.5rem 2rem;border-bottom:1px solid #e5e7eb;box-shadow:0 1px 3px #0000000d}.teacher-content-body{padding:2rem}@media (max-width: 992px){.teacher-content-body{padding:1.5rem}.teacher-content-header{padding:1.25rem 1.5rem}}@media (max-width: 768px){.teacher-content-body{padding:1rem}.teacher-content-header{padding:1rem;font-size:1.5rem}.admin-dashboard-stats,.teacher-dashboard-stats{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))!important;gap:1rem!important}.stat-card{padding:1rem!important}.stat-card h3{font-size:.85rem!important}.stat-card p{font-size:1.5rem!important}.stat-card img{width:20px!important;height:20px!important}}@media (max-width: 480px){.teacher-content-body{padding:.75rem}.teacher-content-header{padding:.75rem;font-size:1.25rem}.admin-dashboard-stats,.teacher-dashboard-stats{grid-template-columns:1fr!important;gap:.75rem!important}.stat-card{padding:.75rem!important}.stat-card h3{font-size:.8rem!important}.stat-card p{font-size:1.25rem!important}}.character-grid-responsive{grid-template-columns:repeat(4,1fr)!important}@media (max-width: 1200px){.character-grid-responsive{grid-template-columns:repeat(3,1fr)!important}}@media (max-width: 900px){.character-grid-responsive{grid-template-columns:repeat(2,1fr)!important}}@media (max-width: 600px){.character-grid-responsive{grid-template-columns:1fr!important}}
