@import"https://fonts.googleapis.com/css2?family=Fredoka:wght@400;500;600;700&family=Luckiest+Guy&family=Poppins:wght@400;500;600;700;800;900&display=swap";@import"https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700;800&display=swap";.landing-page{min-height:100vh;display:flex;flex-direction:column;background:transparent}.hero-section{flex:1;color:#fff;display:flex;align-items:center;justify-content:center;padding:calc(var(--topbar-height) + var(--space-2)) 0 0;position:relative;min-height:50vh}.hero-section:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 30% 40%,rgba(255,255,255,.12) 0%,transparent 50%);pointer-events:none}.hero-content{max-width:900px;width:100%;text-align:center;position:relative;z-index:1}.landing-page .hero-title{font-size:clamp(3.5rem,8vw,8rem);font-weight:900;margin:0 0 1rem;color:var(--text-primary);line-height:1;text-shadow:5px 15px 10px rgba(0,0,0,.3);letter-spacing:-.02em}.landing-page .hero-subtitle{font-size:clamp(1.75rem,4vw,2.5rem);font-weight:600;margin:0 auto 1rem;color:var(--text-primary);text-align:center;line-height:1;text-shadow:5px 15px 8px rgba(0,0,0,.3);letter-spacing:-.02em}.landing-page .hero-tagline{font-size:clamp(1.25rem,2.5vw,1.5rem);margin:0 auto 1rem;color:var(--text-primary);text-align:center;line-height:1.6;text-shadow:5px 15px 8px rgba(0,0,0,.3);letter-spacing:-.02em}.landing-page .hero-buttons{display:flex;gap:1.25rem;justify-content:center;flex-wrap:wrap;margin-bottom:1.5rem}.landing-page .hero-buttons .btn-glass{width:200px;font-size:1.7rem}.btn-ghost{background:#ffffff26;color:#fff;border:2px solid rgba(255,255,255,.5);font-weight:600;font-size:1rem;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);border-radius:10px}.btn-ghost:hover{background:#ffffff40;border-color:#fff;transform:translateY(-2px)}.features-section{background:transparent;padding:3rem 2rem;min-height:200px;display:flex;align-items:center;border-top:none}.features-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem;max-width:1400px;margin:0 auto;width:100%}.feature-card{background:var(--module-gradient-1);padding:1.5rem 1rem;border-radius:16px;text-align:center;border:2px solid rgba(0,0,0,.6);box-shadow:0 12px 32px #0000002e;transition:all .3s cubic-bezier(.4,0,.2,1);cursor:default;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:relative;overflow:hidden}.feature-card:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:#0000001f;pointer-events:none;z-index:0}.feature-card>*{position:relative;z-index:1}.feature-card:after{content:none}.feature-card:nth-child(2){background-image:var(--module-gradient-2)}.feature-card:nth-child(3){background-image:var(--module-gradient-3)}.feature-card:nth-child(4){background-image:var(--module-gradient-4)}.feature-card:hover{filter:brightness(1.3);border-color:#fffc;transform:translateY(-6px);box-shadow:0 16px 40px #00000040}.feature-icon{font-size:2.5rem;margin-bottom:1rem;display:inline-flex;align-items:center;justify-content:center;width:68px;height:68px;border-radius:16px;border:2px solid rgba(0,0,0,.6);background:#0f172a2e;filter:drop-shadow(0 4px 8px rgba(0,0,0,.1))}.feature-card h3{font-size:1.25rem;font-weight:700;margin:0 0 .75rem;color:#0b1220}.feature-card p{font-size:1rem;color:#0b1220c7;margin:0;line-height:1.6}@media (max-width: 1280px){.features-grid{gap:1.5rem}}@media (max-width: 1024px){.features-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.features-grid{grid-template-columns:1fr}.hero-section{padding:2rem 1.5rem}}.profile-setup-page{min-height:100vh;padding:calc(var(--topbar-height) + var(--space-4)) var(--space-6) var(--space-8);display:flex;align-items:center;justify-content:center}.profile-setup-container{width:min(900px,100%);background:#ffffffe6;border:2px solid rgba(255,255,255,.7);border-radius:24px;padding:var(--space-8);box-shadow:0 18px 40px #0000002e;text-align:center}.profile-setup-container h1{font-size:clamp(2rem,5vw,3rem);font-weight:var(--font-extrabold);margin-bottom:var(--space-3)}.profile-setup-container .subtitle{color:#0f172a;opacity:.75;margin-bottom:var(--space-6)}.profile-setup-container .form-group{text-align:left;margin-bottom:var(--space-5)}.profile-setup-container label{display:block;font-weight:var(--font-semibold);margin-bottom:var(--space-2)}.profile-setup-container .name-input{width:100%;padding:var(--space-4);border-radius:14px;border:2px solid rgba(15,23,42,.15);font-size:1.1rem;outline:none;transition:border-color .2s ease,box-shadow .2s ease}.profile-setup-container .name-input:focus{border-color:#2563eb99;box-shadow:0 0 0 4px #2563eb1f}.profile-setup-container .avatar-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(56px,1fr));gap:var(--space-2)}.profile-setup-container .avatar-button{background:#fffc;border:2px solid rgba(15,23,42,.12);border-radius:12px;font-size:2rem;padding:0;width:100%;aspect-ratio:1 / 1;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.profile-setup-container .avatar-button:hover{transform:translateY(-2px);border-color:#10b98199;box-shadow:0 8px 18px #0000001f}.profile-setup-container .avatar-button.selected{border-color:#10b981e6;box-shadow:0 10px 20px #10b98140}.profile-preview{margin:var(--space-5) 0;display:flex;flex-direction:column;align-items:center;gap:var(--space-2)}.profile-preview .preview-avatar{font-size:3rem}.profile-preview .preview-name{font-size:1.4rem;font-weight:var(--font-bold)}.profile-actions{display:flex;flex-direction:column;gap:var(--space-3);margin-top:var(--space-4)}.profile-actions .btn{justify-content:center}.profile-info{margin-top:var(--space-4);color:#0f172abf}@media (max-width: 640px){.profile-setup-container{padding:var(--space-8)}}.competition-page{min-height:100vh;background:var(--brand-gradient);padding:var(--space-6);padding-top:calc(var(--topbar-height) + var(--space-4));font-family:Poppins,sans-serif}.competition-page--join{display:flex;flex-direction:column;align-items:center;justify-content:center}.competition-card{background:linear-gradient(135deg,#bfdbfef2,#bbf7d0f2);border:2px solid rgba(0,0,0,.7);border-radius:24px;padding:var(--space-6);box-shadow:0 18px 40px #0000002e;text-align:center;transition:all .3s cubic-bezier(.4,0,.2,1)}.competition-page--join .competition-card{max-width:600px;width:100%}.competition-welcome-card{background:linear-gradient(135deg,#bfdbfef2,#bbf7d0f2);border:2px solid rgba(0,0,0,.7);border-radius:24px;padding:var(--space-6);box-shadow:0 18px 40px #0000002e;flex:1}.competition-action-card{background:linear-gradient(135deg,#fbcfe8f2,#fde68af2);border:2px solid rgba(0,0,0,.7);border-radius:24px;padding:var(--space-6);text-align:center;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 18px 40px #0000002e;flex:1}.competition-action-card:hover{transform:translateY(-4px);box-shadow:0 20px 50px #00000040;filter:brightness(1.05)}.competition-session-card{background:linear-gradient(135deg,#fde047f2,#fca5a5f2);border:2px solid rgba(0,0,0,.7);border-radius:16px;padding:var(--space-4);box-shadow:0 8px 20px #00000026;transition:all .3s cubic-bezier(.4,0,.2,1)}.competition-session-card:hover{transform:translateY(-4px);box-shadow:0 12px 30px #0003;filter:brightness(1.05)}.competition-dashboard-cards{display:flex;gap:var(--space-6);margin-bottom:var(--space-6)}.competition-icon{font-size:2.75rem;margin-bottom:var(--space-1)}.competition-title{font-size:var(--text-5xl);font-weight:var(--font-extrabold);color:var(--text-primary);margin-bottom:var(--space-1)}.competition-card-title{font-size:var(--text-3xl);font-weight:var(--font-bold);color:var(--text-primary);margin-bottom:var(--space-2)}.competition-subtitle{font-size:var(--text-xl);color:var(--text-primary);margin-bottom:var(--space-4)}.competition-section-title{font-size:var(--text-3xl);font-weight:var(--font-bold);color:#fff;margin-bottom:var(--space-4);margin-top:var(--space-8)}.competition-form-group{margin-bottom:var(--space-4);text-align:left}.competition-label{display:block;font-size:var(--text-base);font-weight:var(--font-semibold);color:var(--text-primary);margin-bottom:var(--space-2)}.competition-input{width:100%;padding:var(--space-4);font-size:var(--text-lg);border:2px solid var(--neutral-200);border-radius:12px;outline:none;transition:border-color .2s ease,box-shadow .2s ease;font-family:Poppins,sans-serif}.competition-input:focus{border-color:var(--eastway-blue);box-shadow:0 0 0 4px #0b4b8c1f}.competition-code-input{font-size:var(--text-2xl);font-weight:var(--font-bold);font-family:Courier New,monospace;text-align:center;letter-spacing:.25em;text-transform:uppercase}.competition-error{background:#ef44441a;color:#991b1b;padding:var(--space-4);border-radius:12px;margin-bottom:var(--space-4);font-size:var(--text-sm);font-weight:var(--font-semibold);border:2px solid rgba(239,68,68,.2)}.competition-session-code{font-size:var(--text-2xl);font-weight:var(--font-extrabold);color:var(--eastway-blue);margin-bottom:var(--space-2);font-family:Courier New,monospace;letter-spacing:.1em}.competition-session-info{font-size:var(--text-base);color:var(--text-secondary)}.competition-footer-link{margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--neutral-200)}.competition-footer-link a{color:var(--eastway-blue);text-decoration:none;font-size:var(--text-sm);font-weight:var(--font-semibold);transition:color .2s ease}.competition-footer-link a:hover{color:var(--eastway-green)}@media (max-width: 1024px){.competition-dashboard-cards{flex-direction:column}}@media (max-width: 768px){.competition-page{padding:var(--space-4);padding-top:calc(var(--topbar-height) + var(--space-4))}.competition-card,.competition-welcome-card,.competition-action-card{padding:var(--space-5)}.competition-title{font-size:var(--text-4xl)}.competition-card-title{font-size:var(--text-2xl)}.competition-icon{font-size:2.5rem}.competition-form-group,.competition-subtitle{margin-bottom:var(--space-3)}}@media (max-width: 640px){.competition-card,.competition-welcome-card,.competition-action-card{padding:var(--space-4)}.competition-code-input{font-size:var(--text-xl)}.competition-icon{font-size:2rem;margin-bottom:var(--space-1)}.competition-title{font-size:var(--text-3xl);margin-bottom:var(--space-1)}}.competition-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--space-6)}.competition-modal{background:linear-gradient(135deg,#e0f2fefa,#dcfce7fa);border:2px solid rgba(0,0,0,.7);border-radius:24px;max-width:900px;width:100%;max-height:92vh;overflow:auto;box-shadow:0 20px 60px #0000004d}.competition-modal-header{padding:var(--space-4) var(--space-6);border-bottom:2px solid rgba(0,0,0,.15);display:flex;justify-content:space-between;align-items:center}.competition-modal-title{font-size:var(--text-3xl);font-weight:var(--font-bold);color:var(--text-primary);margin:0}.competition-close-button{background:none;border:none;font-size:var(--text-2xl);color:var(--text-secondary);cursor:pointer;padding:var(--space-1);transition:color .2s ease}.competition-close-button:hover{color:var(--text-primary)}.competition-modal-content{padding:var(--space-6)}.competition-modal-section{margin-bottom:var(--space-4)}.competition-code-row{display:flex;gap:var(--space-2)}.competition-code-row .competition-input{flex:1}.competition-generate-button{padding:var(--space-3) var(--space-4);background:linear-gradient(135deg,#8a2be2e6,#4b0082e6);color:#fff;border:2px solid rgba(0,0,0,.7);border-radius:12px;font-size:var(--text-base);font-weight:var(--font-semibold);cursor:pointer;transition:all .2s ease}.competition-generate-button:hover{filter:brightness(1.1);transform:translateY(-1px)}.competition-input-valid{border-color:#10b981}.competition-input-invalid{border-color:#ef4444}.competition-valid-text{font-size:var(--text-sm);color:#10b981;margin-top:var(--space-1)}.competition-invalid-text{font-size:var(--text-sm);color:#ef4444;margin-top:var(--space-1)}.competition-mode-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3)}.competition-mode-card{background:linear-gradient(135deg,#fef3c7f2,#fce7f3f2);padding:var(--space-4);border:2px solid rgba(0,0,0,.5);border-radius:16px;text-align:center;cursor:pointer;transition:all .3s ease}.competition-mode-card:hover{filter:brightness(1.05);transform:translateY(-2px)}.competition-mode-card-selected{border-color:#000c;background:linear-gradient(135deg,#fde047f2,#fbcfe8f2);box-shadow:0 6px 20px #00000026}.competition-mode-icon{font-size:2.5rem;margin-bottom:var(--space-1)}.competition-mode-title{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--text-primary);margin-bottom:var(--space-1)}.competition-mode-text{font-size:var(--text-sm);color:var(--text-secondary)}.competition-level-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:var(--space-2)}.competition-level-button{padding:var(--space-2);border:2px solid rgba(0,0,0,.3);border-radius:8px;background:#fffc;font-size:var(--text-base);font-weight:var(--font-semibold);cursor:pointer;transition:all .3s ease;color:var(--text-primary)}.competition-level-button:hover{filter:brightness(1.05);transform:translateY(-1px)}.competition-level-button-selected{border-color:#000c;background:linear-gradient(135deg,#a78bfaf2,#8b5cf6f2);color:#fff}.competition-timer-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-2)}.competition-timer-button{padding:var(--space-3);border:2px solid rgba(0,0,0,.3);border-radius:8px;background:#fffc;font-size:var(--text-base);font-weight:var(--font-semibold);cursor:pointer;transition:all .3s ease;color:var(--text-primary)}.competition-timer-button:hover{filter:brightness(1.05);transform:translateY(-1px)}.competition-timer-button-selected{border-color:#000c;background:linear-gradient(135deg,#a78bfaf2,#8b5cf6f2);color:#fff}.competition-checkbox-label{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--text-primary);cursor:pointer}.competition-checkbox{width:20px;height:20px;cursor:pointer}.competition-info-text{font-size:var(--text-base);color:var(--text-secondary);margin-top:var(--space-2);margin-left:calc(20px + var(--space-2))}.competition-modal-actions{display:flex;gap:var(--space-3);justify-content:flex-end}.competition-cancel-button{padding:var(--space-3) var(--space-5);background:#0000001a;color:var(--text-secondary);border:2px solid rgba(0,0,0,.3);border-radius:12px;font-size:var(--text-lg);font-weight:var(--font-semibold);cursor:pointer;transition:all .2s ease}.competition-cancel-button:hover{background:#00000026}.competition-create-button{padding:var(--space-3) var(--space-5);background:linear-gradient(135deg,#10b981f2,#059669f2);color:#fff;border:2px solid rgba(0,0,0,.7);border-radius:12px;font-size:var(--text-lg);font-weight:var(--font-bold);cursor:pointer;transition:all .2s ease}.competition-create-button:hover{filter:brightness(1.1);transform:translateY(-1px)}.competition-create-button:disabled{background:#cbd5e1cc;cursor:not-allowed;filter:none;transform:none}.competition-lobby-container{min-height:100vh;background:var(--brand-gradient);padding:var(--space-6);padding-top:calc(var(--topbar-height) + var(--space-4));font-family:Poppins,sans-serif;position:relative}.competition-countdown-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000000e6;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:2000}.competition-countdown-number{font-size:10rem;font-weight:var(--font-extrabold);color:#fff;animation:pulse 1s ease-out}.competition-countdown-text{font-size:var(--text-4xl);font-weight:var(--font-semibold);color:#fff;margin-top:var(--space-4)}.competition-code-section{background:linear-gradient(135deg,#bfdbfefa,#bbf7d0fa);border:2px solid rgba(0,0,0,.7);border-radius:24px;padding:var(--space-6);text-align:center;margin-bottom:var(--space-5);box-shadow:0 10px 30px #0003}.competition-code-label{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--text-secondary);margin-bottom:var(--space-2);letter-spacing:.1em}.competition-code-display{font-size:4rem;font-weight:var(--font-extrabold);color:var(--eastway-blue);font-family:Courier New,monospace;letter-spacing:.5em;margin-bottom:var(--space-4)}.competition-link-section{background:#fff9;border-radius:16px;padding:var(--space-4);border:2px solid rgba(0,0,0,.2)}.competition-link-label{font-size:var(--text-sm);color:var(--text-secondary);margin-bottom:var(--space-2)}.competition-link{font-size:var(--text-base);font-weight:var(--font-semibold);color:var(--text-primary);margin-bottom:var(--space-3);word-break:break-all}.competition-copy-button{padding:var(--space-2) var(--space-4);background:linear-gradient(135deg,#8a2be2e6,#4b0082e6);color:#fff;border:2px solid rgba(0,0,0,.7);border-radius:12px;font-size:var(--text-sm);font-weight:var(--font-semibold);cursor:pointer;transition:all .2s ease}.competition-copy-button:hover{filter:brightness(1.1);transform:translateY(-1px)}.competition-players-section{background:linear-gradient(135deg,#fef3c7fa,#fde68afa);border:2px solid rgba(0,0,0,.7);border-radius:24px;padding:var(--space-6);margin-bottom:var(--space-5);box-shadow:0 10px 30px #0003;min-height:300px}.competition-players-header{margin-bottom:var(--space-4);border-bottom:2px solid rgba(0,0,0,.2);padding-bottom:var(--space-3)}.competition-players-title{font-size:var(--text-2xl);font-weight:var(--font-bold);color:var(--text-primary);margin:0}.competition-players-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:var(--space-4);max-height:400px;overflow-y:auto}.competition-empty-state{grid-column:1 / -1;text-align:center;padding:var(--space-8) var(--space-4)}.competition-empty-icon{font-size:4rem;margin-bottom:var(--space-4);opacity:.5}.competition-empty-text{font-size:var(--text-xl);font-weight:var(--font-semibold);color:var(--text-secondary);margin-bottom:var(--space-2)}.competition-empty-subtext{font-size:var(--text-sm);color:var(--text-secondary)}.competition-player-card{background:#fffc;border-radius:16px;padding:var(--space-4);display:flex;flex-direction:column;align-items:center;gap:var(--space-2);border:2px solid rgba(0,0,0,.3);transition:all .2s ease}.competition-player-card:hover{transform:translateY(-2px);box-shadow:0 6px 16px #00000026}.competition-player-card-you{border-color:#000000b3;background:linear-gradient(135deg,#e0e7fff2,#c7d2fef2)}.competition-player-avatar{width:60px;height:60px;border-radius:50%;background:var(--eastway-blue);display:flex;align-items:center;justify-content:center;margin-bottom:var(--space-2);overflow:hidden;border:2px solid rgba(0,0,0,.2)}.competition-avatar-image{width:100%;height:100%;object-fit:cover}.competition-player-name{font-size:var(--text-base);font-weight:var(--font-semibold);color:var(--text-primary);text-align:center}.competition-player-badge{font-size:var(--text-xs);font-weight:var(--font-semibold);color:#10b981;background:#d1fae5;padding:var(--space-1) var(--space-3);border-radius:12px}.competition-you-badge{color:var(--eastway-blue)}.competition-lobby-header{text-align:center;margin-bottom:var(--space-5)}.competition-lobby-title{font-size:var(--text-4xl);font-weight:var(--font-bold);color:#fff;margin:0}.competition-session-info{background:linear-gradient(135deg,#bfdbfefa,#bbf7d0fa);border:2px solid rgba(0,0,0,.7);border-radius:24px;padding:var(--space-6);text-align:center;margin-bottom:var(--space-5);box-shadow:0 10px 30px #0003}.competition-session-code-large{font-size:3rem;font-weight:var(--font-extrabold);color:var(--eastway-blue);font-family:Courier New,monospace;letter-spacing:.3em;margin-bottom:var(--space-4)}.competition-session-details{font-size:var(--text-base);color:var(--text-secondary)}.competition-session-levels{margin-top:var(--space-2);font-weight:var(--font-semibold);color:var(--text-primary)}.competition-session-timer{margin-top:var(--space-1);color:var(--eastway-green);font-weight:var(--font-semibold)}.competition-waiting-message{background:#fff3;border-radius:20px;padding:var(--space-6);text-align:center;color:#fff;border:2px solid rgba(255,255,255,.3)}.competition-waiting-icon{font-size:3rem;margin-bottom:var(--space-3)}.competition-waiting-text{font-size:var(--text-xl);font-weight:var(--font-semibold)}.competition-lobby-actions{display:flex;gap:var(--space-3);justify-content:center}.competition-cancel-session-button{padding:var(--space-4) var(--space-6);background:#fff3;color:#fff;border:2px solid white;border-radius:16px;font-size:var(--text-xl);font-weight:var(--font-semibold);cursor:pointer;transition:all .3s ease}.competition-cancel-session-button:hover{background:#ffffff4d;transform:translateY(-2px)}.competition-start-button{padding:var(--space-4) var(--space-8);background:linear-gradient(135deg,#10b981f2,#059669f2);color:#fff;border:2px solid rgba(0,0,0,.7);border-radius:16px;font-size:var(--text-2xl);font-weight:var(--font-bold);cursor:pointer;box-shadow:0 10px 20px #10b9814d;transition:all .3s ease}.competition-start-button:hover{filter:brightness(1.1);transform:translateY(-2px)}.competition-start-button:disabled{background:#cbd5e1cc;box-shadow:none;cursor:not-allowed;filter:none;transform:none}.competition-loading{color:#fff;font-size:var(--text-2xl);text-align:center;margin-top:var(--space-8)}@media (max-width: 768px){.competition-level-grid{grid-template-columns:repeat(6,1fr)}.competition-timer-grid{grid-template-columns:repeat(2,1fr)}.competition-code-display{font-size:3rem}.competition-players-list{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}}@media (max-width: 640px){.competition-modal{border-radius:16px}.competition-modal-title{font-size:var(--text-2xl)}.competition-level-grid{grid-template-columns:repeat(4,1fr)}.competition-mode-grid{grid-template-columns:1fr}.competition-code-display{font-size:2.5rem;letter-spacing:.3em}.competition-countdown-number{font-size:8rem}}.info-page{position:relative;min-height:100vh;padding:calc(var(--topbar-height) + var(--space-4)) var(--space-6) var(--space-8);color:var(--text-primary);overflow:hidden}.info-page .page-orbs{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:0}.info-page .page-orb{position:absolute;border-radius:50%;filter:blur(80px);opacity:.45;animation:float 22s ease-in-out infinite}.info-page .orb-1{top:-10%;right:-5%;width:520px;height:520px;background:radial-gradient(circle,rgba(255,255,255,.35) 0%,transparent 70%)}.info-page .orb-2{bottom:-15%;left:-8%;width:640px;height:640px;background:radial-gradient(circle,rgba(37,99,235,.35) 0%,transparent 70%);animation-direction:reverse}.info-page .orb-3{top:35%;left:45%;width:420px;height:420px;background:radial-gradient(circle,rgba(16,185,129,.25) 0%,transparent 70%)}.info-section{position:relative;z-index:1}.info-hero{text-align:center;max-width:980px;margin:0 auto var(--space-8)}.info-badge{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-5);border-radius:999px;background:#fff3;border:2px solid rgba(255,255,255,.35);color:#0f172a;font-size:var(--text-sm);font-weight:var(--font-semibold);margin-bottom:var(--space-6);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.info-hero-title{font-size:clamp(2.75rem,6vw,4.5rem);font-weight:var(--font-extrabold);line-height:1.05;color:#0f172a;margin-bottom:var(--space-3);text-shadow:5px 15px 10px rgba(0,0,0,.25)}.info-hero-subtitle{max-width:760px;margin:0 auto var(--space-6);font-size:clamp(1.1rem,2.5vw,1.35rem);line-height:1.7;color:#0f172acc}.info-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:var(--space-4);margin-top:var(--space-2)}.info-stat{text-align:center;padding:var(--space-2);border-radius:14px;background:var(--module-gradient-1);border:2px solid rgba(0,0,0,.55);box-shadow:0 8px 20px #0000001f;position:relative;overflow:hidden}.info-stat:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:#0000001f;pointer-events:none}.info-stat>*{position:relative;z-index:1}.info-stat:nth-child(2){background:var(--module-gradient-2)}.info-stat:nth-child(3){background:var(--module-gradient-3)}.info-stat-number{font-size:clamp(1.75rem,3vw,2.5rem);font-weight:var(--font-extrabold);color:#0b1220}.info-stat-label{text-transform:none;font-size:.95rem;letter-spacing:0;color:#0b1220c7;font-weight:var(--font-semibold)}.info-grid{max-width:1200px;margin:0 auto var(--space-8);display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:var(--space-6)}.info-card{background:var(--module-gradient-1);border-radius:16px;padding:var(--space-5);border:2px solid rgba(0,0,0,.6);box-shadow:0 12px 32px #0000002e;transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease;position:relative;overflow:hidden}.info-card:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:#0000001f;pointer-events:none;z-index:0}.info-card>*{position:relative;z-index:1}.info-card:nth-child(2){background-image:var(--module-gradient-2)}.info-card:nth-child(3){background-image:var(--module-gradient-3)}.info-card:nth-child(4){background-image:var(--module-gradient-4)}.info-card-icon{width:72px;height:72px;border-radius:16px;display:grid;place-items:center;font-size:2rem;background:#0f172a2e;margin-bottom:var(--space-5);box-shadow:0 10px 24px #00000026;border:2px solid rgba(0,0,0,.6)}.info-card-icon.icon-blue{background:#2563eb2e}.info-card-icon.icon-pink{background:#ec48992e}.info-card-icon.icon-amber{background:#f59e0b33}.info-card-icon.icon-cyan{background:#0ea5e92e}.info-card-title{font-size:1.4rem;font-weight:var(--font-bold);color:#0b1220;margin-bottom:var(--space-3)}.info-card-text{font-size:1rem;line-height:1.6;color:#0b1220c7;margin-bottom:var(--space-5)}.info-card-tags{display:flex;flex-wrap:wrap;gap:var(--space-2)}.info-tag{padding:.35rem .9rem;border-radius:999px;background:#ffffff8c;border:1px solid rgba(0,0,0,.4);font-size:.75rem;font-weight:var(--font-semibold);color:#0b1220}.about-page .info-card:hover{transform:translateY(-8px);border-color:#2563eb73;box-shadow:0 24px 60px #2563eb47}.info-story{max-width:900px;margin:0 auto}.info-story-kicker{display:inline-flex;padding:.35rem 1rem;border-radius:999px;background:#0f172a14;color:#0f172ab3;font-size:.85rem;font-weight:var(--font-semibold);text-transform:uppercase;letter-spacing:.12em;margin-bottom:var(--space-4)}.info-story-card{text-align:left;padding:clamp(1.75rem,3vw,2.5rem);border-radius:28px;background:linear-gradient(135deg,#ffffffeb,#e2e8f0bf);border:2px solid rgba(15,23,42,.12);box-shadow:0 20px 46px #0f172a26;display:grid;gap:var(--space-4)}.info-story-title{font-size:clamp(2rem,4vw,3rem);font-weight:var(--font-extrabold);color:#0f172a;margin-bottom:var(--space-4);line-height:1.1}.info-story-lede{font-size:clamp(1.05rem,2vw,1.2rem);line-height:1.8;color:#0f172ac7;margin:0}.info-story-quote{padding:var(--space-3) var(--space-4);border-radius:16px;background:#0f172aeb;color:#f8fafc;font-weight:var(--font-semibold);text-align:center;font-size:1.1rem}.info-story-quote span{display:inline-block;letter-spacing:.02em}.info-story-text{margin:0;font-size:1.05rem;line-height:1.8;color:#0f172ad1}.info-story-breaker{display:flex;justify-content:center}.info-story-breaker span{padding:.4rem 1.2rem;border-radius:999px;background:linear-gradient(135deg,#2563eb26,#10b98126);border:1px solid rgba(15,23,42,.2);font-weight:var(--font-semibold);font-size:.9rem;text-transform:uppercase;letter-spacing:.08em;color:#0b1220}.info-story-text--modules{font-weight:var(--font-semibold);color:#0f172ad9}.info-story-list{margin:0;padding-left:1.1rem;color:#0f172ad1;line-height:1.7;display:grid;gap:var(--space-2)}.info-story-signature{display:grid;gap:.2rem;text-align:center;font-size:1.2rem;color:#0b1220;padding-top:var(--space-2);border-top:2px solid rgba(15,23,42,.1)}.info-story-signature strong{font-size:1.6rem;color:#1d4ed8}.contact-wrapper{max-width:1200px;margin:0 auto;position:relative;z-index:1}.contact-hero{text-align:center;margin-bottom:var(--space-6)}.contact-hero-title{font-size:clamp(2.5rem,5.5vw,3.75rem);font-weight:var(--font-extrabold);color:#0f172a;margin-bottom:var(--space-3);text-shadow:5px 15px 10px rgba(0,0,0,.2)}.contact-hero-subtitle{font-size:clamp(1.1rem,2.5vw,1.3rem);line-height:1.7;color:#0f172a;max-width:720px;margin:0 auto}.contact-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--space-6);margin-bottom:var(--space-6)}.contact-card{background:var(--module-gradient-5);border:2px solid rgba(0,0,0,.6);border-radius:24px;padding:var(--space-5);box-shadow:0 16px 36px #00000029;transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease;position:relative;overflow:hidden}.contact-card:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:#0000001f;pointer-events:none;z-index:0}.contact-card>*{position:relative;z-index:1}.contact-card:nth-child(2){background-image:var(--module-gradient-6)}.contact-card:nth-child(3){background-image:var(--module-gradient-7)}.contact-card:hover{transform:translateY(-6px);border-color:#10b98166;box-shadow:0 22px 50px #10b98133}.contact-card-header{display:flex;align-items:center;gap:var(--space-4);margin-bottom:var(--space-3)}.contact-card-icon{width:72px;height:72px;border-radius:16px;display:grid;place-items:center;margin-bottom:0;background:#0f172a2e;font-size:2rem;border:2px solid rgba(0,0,0,.6)}.contact-card-icon.icon-blue{background:#2563eb33}.contact-card-icon.icon-emerald{background:#10b98133}.contact-card-icon.icon-amber{background:#f59e0b33}.contact-card-title{font-size:1.35rem;font-weight:var(--font-bold);color:#0b1220;margin:0}.contact-card-text{font-size:1rem;line-height:1.6;color:#0b1220d9;margin-bottom:var(--space-4)}.contact-email{display:inline-flex;justify-content:center;align-items:center;padding:.9rem 1.4rem;border-radius:12px;background:#fff9;border:2px solid rgba(0,0,0,.5);color:#0b1220;font-weight:var(--font-semibold);text-decoration:none;transition:transform .2s ease,box-shadow .2s ease}.contact-email:hover{transform:translateY(-2px);box-shadow:0 10px 24px #2563eb40}.contact-badge{display:inline-flex;align-items:center;gap:var(--space-2);padding:.4rem .9rem;border-radius:999px;background:#ffffff8c;color:#0b1220;font-size:.85rem;font-weight:var(--font-medium)}.contact-tip-list{display:grid;gap:var(--space-3);padding:var(--space-3);border-radius:16px;background:#fff9;border:1px solid rgba(0,0,0,.35)}.contact-tip-item{display:flex;align-items:center;gap:var(--space-3);color:#0b1220;font-size:.95rem}.contact-idea-tags{display:flex;flex-wrap:wrap;gap:var(--space-2)}.contact-idea-tag{padding:.45rem 1rem;border-radius:999px;border:1px solid rgba(0,0,0,.4);background:#ffffff8c;color:#0b1220;font-weight:var(--font-semibold);font-size:.9rem}.contact-cta{background:var(--module-gradient-8);border:2px solid rgba(0,0,0,.6);border-radius:24px;padding:var(--space-5);text-align:center;margin-bottom:var(--space-6);box-shadow:0 18px 40px #00000029;position:relative;overflow:hidden}.contact-cta:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:#0000001f;pointer-events:none;z-index:0}.contact-cta>*{position:relative;z-index:1}.contact-cta-title{font-size:1.75rem;font-weight:var(--font-bold);color:#0b1220;margin-bottom:var(--space-3)}.contact-cta-text{font-size:1rem;line-height:1.8;color:#0b1220d1;max-width:720px;margin:0 auto}.contact-teacher{text-align:center;color:#0f172a;font-size:1rem;line-height:1.7}.contact-divider{width:140px;height:2px;background:linear-gradient(90deg,transparent,rgba(15,23,42,.3),transparent);margin:0 auto var(--space-6)}.shake-on-move{display:inline-block;animation:shake .6s ease-in-out}.contact-page:hover .shake-on-move{animation:shake .6s ease-in-out infinite}@keyframes float{0%,to{transform:translate(0) rotate(0)}33%{transform:translate(30px,-30px) rotate(5deg)}66%{transform:translate(-20px,20px) rotate(-5deg)}}@keyframes shake{0%,to{transform:translate(0) rotate(0)}25%{transform:translate(-6px) rotate(-4deg)}75%{transform:translate(6px) rotate(4deg)}}@media (max-width: 768px){.info-page{padding:calc(var(--topbar-height) + var(--space-4)) var(--space-4) var(--space-10)}.info-story-card,.contact-cta{padding:var(--space-8)}.info-card,.contact-card{padding:var(--space-6)}}.info-card-header{display:flex;align-items:center;gap:var(--space-4);margin-bottom:var(--space-3)}.info-card-header .info-card-icon{margin-bottom:0}.info-card-header .info-card-title{margin:0}.info-story-header{display:flex;align-items:center;justify-content:center;gap:var(--space-4);margin-bottom:var(--space-4)}.info-story-header .info-card-icon{margin-bottom:0}.info-story-header .info-story-title{margin:0}*{margin:0;padding:0;box-sizing:border-box;font-family:Poppins,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}html,body{width:100%;height:100%;overflow:hidden}:root{--font-primary: "Poppins", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-size-small: .875rem;--font-size-medium: 1.125rem;--font-size-large: 1.5rem;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--text-4xl: 2.25rem;--text-5xl: 3rem;--region-basecamp-border: #D97940;--region-basecamp-glow: rgba(217, 121, 64, .3);--region-territory-border: #4CAF50;--region-territory-glow: rgba(76, 175, 80, .3);--region-frontier-border: #4A90E2;--region-frontier-glow: rgba(74, 144, 226, .3);--color-success: #10B981;--color-error: #EF4444;--color-warning: #F59E0B;--color-white: #FFFFFF;--color-gray-50: #F9FAFB;--color-gray-100: #F3F4F6;--color-gray-200: #E5E7EB;--color-gray-300: #D1D5DB;--color-gray-400: #9CA3AF;--color-gray-500: #6B7280;--color-gray-600: #4B5563;--color-gray-700: #374151;--color-gray-800: #1F2937;--color-gray-900: #111827;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--radius-sm: .25rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-full: 9999px;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1);--z-base: 1;--z-floating: 90;--z-modal: 100;--z-overlay: 110}body{font-family:var(--font-primary);font-size:var(--text-base);line-height:1.5;color:var(--color-gray-900);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{font-family:var(--font-primary);font-weight:700;line-height:1.2}.algebra-app{min-height:100vh;width:100%;position:relative;overflow:hidden}.base-camp-screen,.level-player[data-region=base-camp],.level-player[data-region=territory],.level-player[data-region=frontier]{background-size:cover;background-position:center;background-attachment:fixed;min-height:100vh;width:100%;position:relative;overflow:hidden}.base-camp-screen{background-image:url(/algebra/map-base-camp.png)}.level-player[data-region=base-camp]{background-image:url(/algebra/map-base-camp.png)}.level-player[data-region=territory]{background-image:url(/algebra/map-river.png)}.level-player[data-region=frontier]{background-image:url(/algebra/map-frontier.png)}.base-camp-screen:before,.level-player[data-region=base-camp]:before,.level-player[data-region=territory]:before,.level-player[data-region=frontier]:before{content:"";position:fixed;top:0;left:0;right:0;bottom:0;background:#ffffff59;pointer-events:none;z-index:1}.base-camp-screen>*,.level-player>*{position:relative;z-index:2}.btn-exit-game{position:fixed;top:var(--space-4);left:var(--space-4);z-index:var(--z-floating);background:#000000b3;color:var(--color-white);border:2px solid rgba(255,255,255,.3);padding:var(--space-2) var(--space-4);font-size:var(--text-sm);font-weight:600;font-family:var(--font-primary);border-radius:var(--radius-md);cursor:pointer;transition:all .2s ease;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.btn-exit-game:hover{background:#000000d9;transform:translateY(-2px);box-shadow:var(--shadow-md)}.btn-back-base{position:fixed!important;top:80px!important;left:var(--space-4)!important;z-index:1001;background:#fffffff2;color:var(--color-gray-800);border:2px solid rgba(0,0,0,.1);padding:var(--space-3) var(--space-5);font-size:var(--text-base);font-weight:600;font-family:var(--font-primary);border-radius:var(--radius-lg);cursor:pointer;transition:all .2s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:var(--shadow-md)}.btn-back-base:hover{background:var(--color-white);transform:translate(-3px);box-shadow:var(--shadow-lg)}.level-player{width:100%;height:100vh;position:fixed;top:0;left:0;right:0;bottom:0;overflow:hidden;display:flex;align-items:center;justify-content:center}.level-content{max-width:900px;margin:0 auto;padding:1rem;width:100%;display:flex;flex-direction:column;gap:1.5rem;align-items:center;justify-content:center;min-height:0;height:calc(100vh - 120px)}.progress-tracker{text-align:center;background:#fffffff2;padding:.75rem 1rem;border-radius:var(--radius-lg);box-shadow:var(--shadow-md);width:100%;max-width:750px}.progress-tracker-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem;gap:1rem;flex-wrap:wrap}.progress-tracker-info{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.progress-level-number{font-size:.875rem;font-weight:700;color:var(--color-gray-900);font-family:var(--font-primary)}.progress-level-name{font-size:.875rem;font-weight:600;color:var(--color-gray-700);font-family:var(--font-primary)}.progress-difficulty{font-size:.75rem;font-weight:600;color:var(--color-gray-600);font-family:var(--font-primary);background:#10b9811a;padding:.2rem .5rem;border-radius:var(--radius-md);border:1px solid rgba(16,185,129,.3)}.progress-label{font-size:.875rem;font-weight:600;color:var(--color-gray-700);font-family:var(--font-primary);white-space:nowrap}.progress-dots{display:flex;justify-content:center;gap:.5rem}.progress-dot{width:14px;height:14px;border-radius:50%;background:#d1d5db;border:2px solid #9CA3AF;transition:all .3s ease}.progress-dot.filled{background:#10b981;border-color:#059669;box-shadow:0 0 8px #10b98199;transform:scale(1.1)}.problem-container{background:#fffffffa;border:3px solid var(--color-success);border-radius:var(--radius-xl);padding:var(--space-3) var(--space-4);margin:0 auto;width:100%;max-width:750px;box-shadow:0 8px 20px #0000001f;max-height:80vh;flex-shrink:0;display:flex;flex-direction:column}.level-player[data-region=base-camp] .problem-container{border-color:var(--region-basecamp-border);box-shadow:0 8px 20px var(--region-basecamp-glow)}.level-player[data-region=territory] .problem-container{border-color:var(--region-territory-border);box-shadow:0 8px 20px var(--region-territory-glow)}.level-player[data-region=frontier] .problem-container{border-color:var(--region-frontier-border);box-shadow:0 8px 20px var(--region-frontier-glow)}.problem-display{font-size:2rem;font-weight:700;font-family:var(--font-primary);color:var(--color-gray-900);text-align:center;margin:0;line-height:1.4}.click-to-select-container,.answer-choices{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;width:100%;max-width:700px;margin:0 auto;padding:0 1rem}.click-to-select-container button,.answer-choice{background:#fff;border:3px solid #D1D5DB;border-radius:var(--radius-lg);padding:1.25rem 1rem;font-size:var(--font-size-large);font-weight:700;font-family:var(--font-primary);color:var(--color-gray-900);cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);box-shadow:var(--shadow-md);min-height:85px;display:flex;align-items:center;justify-content:center;text-align:center}.click-to-select-container button:hover:not(:disabled),.answer-choice:hover:not(:disabled){transform:translateY(-3px);box-shadow:0 8px 16px #10b98140;border-color:#10b981;background:linear-gradient(135deg,#f0fdf4,#fff)}.click-to-select-container button.selected,.answer-choice.selected{background:linear-gradient(135deg,#10b981,#059669);color:#fff;border-color:#047857;box-shadow:0 8px 20px #10b98166;transform:scale(1.02)}.click-to-select-container button:disabled,.answer-choice:disabled{cursor:not-allowed;opacity:.6}.base-camp-container{min-height:100vh;display:flex;flex-direction:column;align-items:center;padding:var(--space-12) var(--space-8) var(--space-8);position:relative;z-index:var(--z-base)}.base-camp-container h1{font-size:2.75rem;font-weight:700;color:var(--color-gray-900);margin-bottom:1rem;text-shadow:2px 2px 4px rgba(255,255,255,.9);font-family:var(--font-primary)}.base-camp-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;max-width:800px;width:100%;margin-top:auto;margin-bottom:auto}.base-camp-tile{background:#fffffff2;border-radius:var(--radius-xl);padding:2.5rem;text-align:center;cursor:pointer;transition:all .3s ease;box-shadow:var(--shadow-lg);border:3px solid transparent}.base-camp-tile:hover{transform:translateY(-6px);box-shadow:0 12px 30px #0003;border-color:#10b981}.base-camp-tile-button{background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;padding:.875rem 2rem;font-size:1.125rem;font-weight:700;font-family:var(--font-primary);border-radius:var(--radius-lg);cursor:pointer;transition:all .2s ease;box-shadow:0 4px 8px #10b9814d}.base-camp-tile-button:hover{transform:translateY(-2px);box-shadow:0 6px 12px #10b98166}.practice-mode-header h1{font-size:2.5rem;font-weight:700;color:var(--color-gray-900);margin-bottom:0;font-family:var(--font-primary);text-shadow:2px 2px 4px rgba(255,255,255,.9);text-align:center}.practice-section{margin-bottom:2rem}.practice-section-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem;font-size:1.375rem;font-weight:700;color:var(--color-gray-900);font-family:var(--font-primary);text-shadow:1px 1px 3px rgba(255,255,255,.95);background:#ffffff59;padding:.5rem 1rem;border-radius:var(--radius-md)}.practice-tiles-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1rem}.practice-tile{background:#fffffff2;border:3px solid #E5E7EB;border-radius:var(--radius-lg);padding:1.25rem;cursor:pointer;transition:all .2s ease;position:relative;min-height:130px;display:flex;flex-direction:column}.practice-tile:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:#10b981}.practice-tile.completed{border-color:#10b981;background:linear-gradient(135deg,#10b9811a,#fffffff2)}.practice-tile-completion{position:absolute;top:.5rem;right:.5rem;font-size:1.75rem;color:#10b981;filter:drop-shadow(0 2px 4px rgba(16,185,129,.5))}.practice-tile-level-num{font-size:.75rem;font-weight:700;color:#10b981;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.5rem;font-family:var(--font-primary)}.practice-tile-name{font-size:1.125rem;font-weight:700;color:var(--color-gray-900);margin-bottom:.5rem;font-family:var(--font-primary)}.practice-tile-skill{font-size:.875rem;color:var(--color-gray-600);line-height:1.4;font-family:var(--font-primary);flex-grow:1}.level-complete-container{background:#fffffffa;border-radius:var(--radius-xl);padding:2.5rem 2rem;max-width:550px;margin:0 auto;text-align:center;box-shadow:var(--shadow-xl);border:3px solid #10B981}.level-complete-icon{font-size:3.5rem;margin-bottom:.75rem}.level-complete-title{font-size:1.75rem;font-weight:700;margin-bottom:.5rem;font-family:var(--font-primary);color:var(--color-gray-900)}.level-complete-subtitle{font-size:1.25rem;color:var(--color-gray-600);margin-bottom:1.75rem;font-family:var(--font-primary)}.level-complete-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:.875rem;margin-bottom:1.75rem}.stat-box{background:var(--color-gray-50);border-radius:var(--radius-lg);padding:1rem;border:2px solid var(--color-gray-200)}.stat-value{font-size:1.75rem;font-weight:700;color:#10b981;font-family:var(--font-primary);margin-bottom:.25rem}.stat-label{font-size:.875rem;color:var(--color-gray-600);font-family:var(--font-primary)}.hidden{display:none}.visible{display:block}.fade-in{animation:fadeIn .3s ease}.slide-up{animation:slideUp .4s ease}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.math-worksheet-container{width:100%;max-width:1100px;margin:0 auto;padding:var(--space-3);display:flex;flex-direction:column;gap:var(--space-4);height:auto;overflow:visible}.worksheet-problem-display{font-family:var(--font-primary);font-size:var(--font-size-large);font-weight:700;color:var(--color-gray-900);text-align:center;padding:var(--space-2) var(--space-4);background:linear-gradient(135deg,#fffffff2,#f9fafbf2);border:3px solid var(--color-gray-300);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.worksheet-work-area{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-3);background:#f9fafb66;border-radius:var(--radius-lg);max-height:60vh;overflow-y:auto;overflow-x:hidden;scroll-behavior:smooth}.worksheet-row{padding:var(--space-3);border-radius:var(--radius-lg);transition:all .3s ease;min-height:50px}.worksheet-row-content{display:flex;align-items:center;gap:var(--space-3);justify-content:center;flex-wrap:wrap}.worksheet-row.active{background:linear-gradient(135deg,#10b9811a,#0596690d);border:2px solid var(--color-success);box-shadow:0 0 0 3px #10b9811a}.worksheet-row.completed{background:linear-gradient(135deg,#10b98126,#05966914);border:2px solid rgba(16,185,129,.5);animation:rowComplete .3s ease}@keyframes rowComplete{0%{transform:scale(1);box-shadow:0 0 #10b98166}50%{transform:scale(1.02);box-shadow:0 0 0 10px #10b98100}to{transform:scale(1);box-shadow:0 0 #10b98100}}.worksheet-row.locked{background:#d1d5db33;border:2px dashed var(--color-gray-300);opacity:.6}.worksheet-row-answer{display:flex;align-items:center;gap:var(--space-2);font-family:var(--font-primary);font-size:var(--font-size-large);font-weight:600;color:var(--color-gray-900)}.completed-term{padding:var(--space-2) var(--space-3);background:#fff;border:2px solid var(--color-success);border-radius:var(--radius-md);color:var(--color-success)}.worksheet-row-blanks{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;justify-content:center}.worksheet-blank{min-width:90px;padding:var(--space-2) var(--space-3);font-family:var(--font-primary);font-size:var(--font-size-medium);font-weight:700;background:#fff;border:3px dashed var(--color-gray-300);border-radius:var(--radius-lg);cursor:pointer;transition:all .2s ease;color:var(--color-gray-900)}.worksheet-blank.filled{background:linear-gradient(135deg,#ecfdf5,#d1fae5);border:3px solid var(--color-success);color:var(--color-gray-900)}.worksheet-blank.filled:hover{transform:translateY(-2px);box-shadow:0 4px 8px #10b98133}.worksheet-blank.empty{color:var(--color-gray-400);border-style:dashed}.worksheet-row-locked{display:flex;align-items:center;gap:var(--space-2);font-family:var(--font-primary);font-size:var(--font-size-large);color:var(--color-gray-400)}.locked-blank{padding:var(--space-2) var(--space-4);color:var(--color-gray-400)}.worksheet-check-btn-inline{padding:var(--space-3) var(--space-6);font-family:var(--font-primary);font-size:1.1rem;font-weight:700;color:#fff;background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:var(--radius-lg);cursor:pointer;transition:all .2s ease;box-shadow:0 4px 12px #10b9814d;white-space:nowrap}.worksheet-check-btn-inline:hover{transform:translateY(-2px);box-shadow:0 6px 16px #10b98166}.worksheet-check-btn-inline:active{transform:translateY(0)}.worksheet-term-bank,.worksheet-choices{padding:var(--space-3);background:linear-gradient(135deg,#fffffffa,#f9fafbf2);border:3px solid var(--color-gray-300);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.term-bank-label{font-family:var(--font-primary);font-size:var(--font-size-small);font-weight:700;color:var(--color-gray-700);margin-bottom:var(--space-3);text-transform:uppercase;letter-spacing:.05em;text-align:center}.term-bank-chips{display:grid;grid-template-columns:repeat(6,1fr);gap:var(--space-2);justify-items:center;max-width:800px;margin:0 auto}.term-chip{padding:var(--space-2) var(--space-4);font-family:var(--font-primary);font-size:var(--font-size-medium);font-weight:700;background:#fff;color:var(--color-gray-900);border:3px solid var(--color-gray-300);border-radius:var(--radius-lg);cursor:pointer;transition:all .2s ease;position:relative;min-width:65px;text-align:center}.term-chip:hover:not(:disabled){transform:translateY(-3px);box-shadow:0 6px 12px #10b98140;border-color:var(--color-success);background:linear-gradient(135deg,#f0fdf4,#fff)}.term-chip:active:not(:disabled){transform:translateY(-1px)}.term-chip.selected{background:linear-gradient(135deg,#10b981,#059669);color:#fff;border-color:#047857;box-shadow:0 4px 8px #10b9814d}.term-chip.choice-chip{min-width:120px;padding:var(--space-3) var(--space-5)}.worksheet-choices .term-bank-chips{display:grid;grid-template-columns:repeat(2,minmax(160px,1fr));gap:var(--space-3);justify-items:center;max-width:500px;margin:0 auto}.term-chip.used{opacity:.5}.term-chip:disabled{cursor:not-allowed;opacity:.4}.chip-badge{position:absolute;top:-8px;right:-8px;background:var(--color-error);color:#fff;font-size:.75rem;font-weight:700;padding:2px 6px;border-radius:var(--radius-full);border:2px solid white;min-width:20px;text-align:center}@media (max-width: 768px){.base-camp-tiles,.practice-tiles-grid,.click-to-select-container,.answer-choices,.level-complete-stats{grid-template-columns:1fr}.problem-display{font-size:1.5rem}}.stacked-equations-container{display:flex;flex-direction:column;gap:1rem;font-family:Courier New,monospace;font-size:1rem}.equation-step{display:flex;flex-direction:column;gap:.5rem}.step-description{font-weight:600;color:#374151;font-family:Poppins,sans-serif;font-size:.9rem;margin-bottom:.25rem}.step-work{background:#f9fafb;border:1px solid #E5E7EB;border-radius:.5rem;padding:1rem;font-family:Courier New,monospace;font-size:1.1rem;color:#1f2937;line-height:1.6;white-space:pre;overflow-x:auto;-moz-tab-size:4;tab-size:4}html,body,#root,.algebra-app{width:100%;height:100%;overflow:hidden;background:transparent}body{overflow:hidden!important}.equation-mode-container{display:flex;flex-direction:column;gap:1.25rem;max-width:900px;width:100%;margin:0 auto}.equation-content-wrapper-fixed{position:relative;width:100%;max-width:900px;margin:0 auto}.equation-stage{position:relative!important;max-width:900px!important;width:100%;display:flex;flex-direction:column;gap:1rem}.equation-problem-container-scrollable{background:#fffffffa;border-radius:.75rem;padding:.6rem!important;box-shadow:0 4px 6px -1px #0000001a;max-height:55vh;overflow-y:auto;overflow-x:hidden;position:relative;z-index:30!important;border:3px solid #4CAF50!important;scroll-behavior:smooth}.equation-problem-container-scrollable.equation-final-state{max-height:60vh}.level-player[data-region=base-camp] .equation-problem-container-scrollable,.level-player[data-region=base-camp] .equation-work-area,.level-player[data-region=base-camp] .equation-term-bank{border-color:#d97940!important;box-shadow:0 4px 6px -1px #d979404d}.level-player[data-region=territory] .equation-problem-container-scrollable,.level-player[data-region=territory] .equation-work-area,.level-player[data-region=territory] .equation-term-bank{border-color:#4caf50!important;box-shadow:0 4px 6px -1px #4caf504d}.level-player[data-region=frontier] .equation-problem-container-scrollable,.level-player[data-region=frontier] .equation-work-area,.level-player[data-region=frontier] .equation-term-bank{border-color:#4a90e2!important;box-shadow:0 4px 6px -1px #4a90e24d}.equation-row-3col{display:grid!important;grid-template-columns:1fr 60px 1fr!important;gap:.6rem!important;align-items:center!important;margin-bottom:.2rem!important;font-size:1.375rem!important;font-weight:600!important;min-height:42px!important;padding:.2rem 0!important}.equation-left-side{display:flex;align-items:center;gap:.35rem;flex-wrap:wrap;justify-content:flex-end!important;min-height:36px}.equation-right-side{display:flex;align-items:center;gap:.35rem;flex-wrap:wrap;justify-content:flex-start!important;min-height:36px}.equation-equals-col-centered,.equation-equals{font-size:1.5rem;font-weight:700;color:#111;text-align:center;display:flex;align-items:center;justify-content:center;position:relative;z-index:70!important}.equation-step-divider{height:4px;background:#111;margin:.35rem 0;border-radius:2px;width:100%}.equation-completed-row{opacity:1;color:#374151;font-size:1.375rem!important;font-weight:600!important}.equation-final-answer-highlight{background:linear-gradient(135deg,#10b98114,#22c55e14);border:2px solid rgba(16,185,129,.4);border-radius:.5rem;padding:.5rem!important;font-weight:700!important;font-size:1.375rem!important;animation:finalAnswerPulse .6s ease-out}@keyframes finalAnswerPulse{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}.equation-work-area{background:#fffffffa;border-radius:.75rem;padding:.8rem;box-shadow:0 4px 6px -1px #0000001a;position:relative;z-index:10;border:3px solid #4CAF50!important}.equation-work-row{margin-bottom:.6rem}.equation-work-row.active{background:#4caf500f;border-radius:.5rem;padding:.6rem;border:2px solid rgba(76,175,80,.2)}.equation-active-row-wrapper{position:relative}.equation-work-row-grid{width:100%}.equation-active-row-wrapper .equation-row-3col{width:100%;max-width:none}.equation-blank{background:#ffffffe6;border:2px solid #D1D5DB;border-radius:.5rem;padding:.5rem .75rem;min-width:70px;min-height:42px;font-size:1.2rem;font-weight:600;cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;justify-content:center;font-family:Poppins,sans-serif}.equation-blank.filled{background:#4caf501a;border-color:#4caf5066;color:#111}.equation-blank.filled:hover{background:#ef44441a;border-color:#ef444466;transform:translateY(-2px)}.equation-blank.empty{color:#9ca3af;font-style:italic}.equation-check-btn-absolute{position:absolute;right:0;top:50%;transform:translateY(-50%);background:linear-gradient(135deg,#4caf50,#388e3c);color:#fff;border:none;border-radius:.5rem;padding:.75rem 1.1rem;font-size:1rem;font-weight:700;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 4px #0000001a;white-space:nowrap;min-width:120px;font-family:Poppins,sans-serif}.equation-check-btn-absolute:hover{background:linear-gradient(135deg,#388e3c,#2e7d32);transform:translateY(-50%) translateY(-2px);box-shadow:0 4px 8px #00000026}.equation-single-choice-territory{display:flex;flex-direction:column;gap:.75rem;align-items:center}.equation-instruction-territory{font-size:1.125rem;font-weight:600;color:#374151;font-family:Poppins,sans-serif}.equation-draw-line-btn-territory{background:linear-gradient(135deg,#4caf50,#388e3c);color:#fff;border:none;border-radius:.5rem;padding:.75rem 1.5rem;font-size:1.125rem;font-weight:700;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 4px #0000001a;font-family:Poppins,sans-serif}.equation-draw-line-btn-territory:hover{background:linear-gradient(135deg,#388e3c,#2e7d32);transform:translateY(-2px);box-shadow:0 4px 8px #00000026}.equation-term-bank{background:#fffffffa;border-radius:.75rem;padding:.8rem;box-shadow:0 4px 6px -1px #0000001a;border:3px solid #4CAF50!important}.term-bank-label-territory{font-size:.95rem;font-weight:600;color:#4b5563;margin-bottom:.65rem;font-family:Poppins,sans-serif;text-align:center!important;width:100%}.equation-term-bank-2rows{display:flex;flex-direction:column;gap:.5rem}.term-bank-row{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center}.term-chip{background:#4caf5014;border:2px solid rgba(76,175,80,.25);border-radius:.5rem;padding:.4rem .65rem!important;font-size:1.15rem!important;font-weight:700!important;cursor:pointer;transition:all .2s ease;position:relative;min-width:65px;display:inline-flex;align-items:center;justify-content:center;gap:.3rem;font-family:Poppins,sans-serif;color:#111}.term-chip:hover:not(:disabled){background:#4caf5026;border-color:#4caf5066;transform:translateY(-2px);box-shadow:0 2px 6px #0000001a}.term-chip.used{background:#4caf501f;border-color:#4caf5059}.term-chip:disabled{opacity:.4;cursor:not-allowed}.use-badge{background:#4caf50e6!important;color:#fff;border-radius:50%;width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:700;margin-left:.2rem}.equation-vertical-line-overlay{position:absolute;width:4px;background:#111;border-radius:2px;transform:translate(-50%);pointer-events:none;z-index:60!important;left:50%!important;top:0!important;height:100%!important}.equation-stage .fraction-wrapper,.equation-work-area .fraction-wrapper,.equation-term-bank .fraction-wrapper{display:inline-flex!important;flex-direction:column!important;align-items:center!important;vertical-align:middle!important;margin:0 .2rem!important;line-height:1!important}.equation-stage .fraction-num,.equation-work-area .fraction-num,.equation-term-bank .fraction-num{padding:0 .3rem!important;line-height:1.1!important;font-size:1.2rem!important}.equation-stage .fraction-bar,.equation-work-area .fraction-bar,.equation-term-bank .fraction-bar{width:100%!important;min-width:22px!important;height:2px!important;background:currentColor!important;margin:3px 0!important}.equation-stage .fraction-den,.equation-work-area .fraction-den,.equation-term-bank .fraction-den{padding:0 .3rem!important;line-height:1.1!important;font-size:1.2rem!important}.term-chip .fraction-wrapper{margin:0 .15rem!important}.term-chip .fraction-num,.term-chip .fraction-den{font-size:1.15rem!important;line-height:1!important;font-weight:700!important;padding:0 .2rem!important}.equation-blank .fraction-wrapper{margin:0!important}.equation-blank .fraction-num,.equation-blank .fraction-den{font-size:1.2rem!important;font-weight:600!important}.coefficient-fraction-expression{display:inline-flex!important;align-items:center!important;gap:.25rem!important}.coefficient-fraction-expression .variable-x{font-style:italic!important;margin-left:.15rem!important;font-size:1.15em!important}.fraction-expression{display:inline-flex;align-items:center;gap:.25rem}.expression-separator{display:inline-block;width:.25rem}.has-fraction-operation{padding:.5rem 0!important}.multiply-symbol{font-weight:700;color:#2563eb;font-size:1.15em;margin:0 .15rem}.feedback-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000bf;display:flex;align-items:center;justify-content:center;z-index:1000;padding:.75rem}.feedback-modal-content-compact{background:#fff;border-radius:.875rem;max-width:650px;width:100%;max-height:92vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d;padding:1rem;display:flex;flex-direction:column;gap:.75rem}.feedback-header-compact{text-align:center;padding-bottom:.4rem;border-bottom:2px solid #EF4444}.feedback-title-compact{font-size:1.4rem;font-weight:700;color:#ef4444;margin:0;font-family:Poppins,sans-serif}.feedback-section-compact{padding:.6rem .8rem;border-radius:.5rem;background:#f9fafb}.feedback-section-label{font-size:.675rem;font-weight:700;color:#6b7280;text-transform:uppercase;letter-spacing:.5px;margin-bottom:.3rem;font-family:Poppins,sans-serif}.feedback-section-value{font-size:1.1rem;font-weight:600;color:#111827;font-family:Poppins,sans-serif}.feedback-answers-grid{display:grid;gap:.6rem}.feedback-answers-grid.two-col{grid-template-columns:1fr 1fr}.feedback-answers-grid.one-col{grid-template-columns:1fr}.feedback-answer-box{padding:.6rem .8rem;border-radius:.5rem;border:2px solid}.feedback-answer-box.feedback-wrong{background:#ef44440d;border-color:#ef4444}.feedback-answer-box.feedback-correct{background:#10b9810d;border-color:#10b981}.feedback-answer-box.full-width{grid-column:1 / -1}.feedback-answer-label{font-size:.675rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;margin-bottom:.3rem;font-family:Poppins,sans-serif}.feedback-answer-box.feedback-wrong .feedback-answer-label{color:#dc2626}.feedback-answer-box.feedback-correct .feedback-answer-label{color:#059669}.feedback-answer-value{font-size:1.1rem;font-weight:600;color:#111827;font-family:Poppins,sans-serif}.feedback-section-icon-label{display:flex;align-items:center;gap:.45rem;font-size:.75rem;font-weight:700;color:#374151;text-transform:uppercase;letter-spacing:.5px;margin-bottom:.45rem;font-family:Poppins,sans-serif}.feedback-section-icon-label span:first-child{font-size:1.05rem}.feedback-section-text{font-size:.925rem;line-height:1.5;color:#1f2937;font-family:Poppins,sans-serif}.feedback-rule{background:#3b82f60d;border-left:4px solid #3B82F6}.feedback-steps{background:#f59e0b0d;border-left:4px solid #F59E0B}.feedback-continue-btn-compact{background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;border-radius:.5rem;padding:.75rem 1.4rem;font-size:1rem;font-weight:700;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 4px #0000001a;font-family:Poppins,sans-serif;margin-top:.4rem}.feedback-continue-btn-compact:hover{background:linear-gradient(135deg,#059669,#047857);transform:translateY(-2px);box-shadow:0 4px 8px #00000026}.stacked-equations-container{display:flex;flex-direction:column;gap:.55rem}.equation-step{font-family:Courier New,monospace}.step-description{font-size:.825rem;font-weight:600;color:#4b5563;margin-bottom:.275rem;font-family:Poppins,sans-serif}.step-work{font-size:.925rem;line-height:1.4;color:#111827;margin:0;padding:.45rem;background:#00000005;border-radius:.25rem;white-space:pre-wrap;font-family:Courier New,monospace}@media (max-width: 768px){.equation-stage{max-width:100%}.equation-active-row-wrapper{padding-right:110px}.equation-check-btn-absolute{min-width:100px;font-size:.9rem;padding:.65rem .9rem}.term-chip{font-size:1rem!important;padding:.35rem .55rem!important}.equation-row-3col{gap:.5rem!important;font-size:1.2rem!important}.feedback-modal-content-compact{padding:.85rem;gap:.65rem}.feedback-answers-grid.two-col{grid-template-columns:1fr}}.problem-display{flex:1 1 auto;overflow-y:auto;min-height:0;padding-bottom:var(--space-4)}.click-to-select-container{flex-shrink:0;margin-top:auto}.algebra-modal-content{padding:12px 16px 16px;overflow-y:auto;flex:1;font-family:Poppins,sans-serif}.stats-grid-top{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:14px}.stat-card{background:#fff;border-radius:10px;padding:14px;text-align:center;transition:all .2s ease;border:2px solid;position:relative;overflow:hidden}.stat-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:currentColor}.stat-card.green{border-color:#d1fae5;background:linear-gradient(135deg,#f0fdf4,#dcfce7);color:#10b981}.stat-card.orange{border-color:#fed7aa;background:linear-gradient(135deg,#fffbeb,#fef3c7);color:#f59e0b}.stat-card.blue{border-color:#bfdbfe;background:linear-gradient(135deg,#eff6ff,#dbeafe);color:#3b82f6}.stat-card.purple{border-color:#ddd6fe;background:linear-gradient(135deg,#f5f3ff,#ede9fe);color:#8b5cf6}.stat-card:hover{transform:translateY(-4px);box-shadow:0 8px 20px #0000001a}.stat-icon{font-size:2rem;margin-bottom:8px}.stat-value{font-size:2.5rem;font-weight:700;margin-bottom:6px;font-family:Poppins,sans-serif}.stat-label{font-size:.75rem;color:#6b7280;text-transform:uppercase;letter-spacing:.5px;font-weight:600}.stats-section{margin-bottom:14px}.stats-section h3{color:#1f2937;font-size:1.05rem;font-weight:700;margin-bottom:12px;font-family:Poppins,sans-serif;display:flex;align-items:center;gap:6px}.mode-stats{display:flex;flex-direction:column;gap:16px}.mode-item{display:flex;flex-direction:column;gap:8px}.mode-label{font-size:.875rem;font-weight:600;color:#374151}.mode-bar-container{width:100%;height:36px;background:#f3f4f6;border-radius:8px;overflow:hidden;position:relative}.mode-bar{height:100%;display:flex;align-items:center;justify-content:flex-end;padding-right:12px;transition:width .5s ease;position:relative}.mode-bar.game{background:linear-gradient(90deg,#10b981,#059669)}.mode-bar.practice{background:linear-gradient(90deg,#3b82f6,#2563eb)}.mode-count{color:#fff;font-weight:700;font-size:.875rem}.level-stats-list{display:flex;flex-direction:column;gap:12px}.level-stat-row{background:#f9fafb;border:1px solid #E5E7EB;border-radius:8px;padding:14px;display:flex;justify-content:space-between;align-items:center;transition:all .2s ease}.level-stat-row:hover{background:#fff;border-color:#10b981;box-shadow:0 2px 8px #0000000d}.level-info{display:flex;flex-direction:column;gap:4px}.level-number{font-weight:700;color:#1f2937;font-size:.875rem}.level-attempts{font-size:.75rem;color:#6b7280}.level-metrics{display:flex;gap:16px;align-items:center}.metric-item{display:flex;align-items:center;gap:4px;font-size:.875rem;font-weight:600;color:#374151}.metric-icon{font-size:.875rem}.no-data{text-align:center;padding:32px;color:#9ca3af;font-style:italic;background:#f9fafb;border-radius:8px}.crystals-display{background:linear-gradient(135deg,#fffbeb,#fef3c7);border:2px solid #FDE68A;border-radius:12px;padding:16px;display:flex;align-items:center;gap:12px;margin-top:20px}.crystal-icon{width:60px;height:60px;flex-shrink:0;object-fit:contain}.crystal-info{flex:1}.crystal-count{font-size:1.5rem;font-weight:700;color:#92400e;font-family:Poppins,sans-serif;margin-bottom:4px}.crystal-subtext{font-size:.875rem;color:#78350f}@media (max-width: 768px){.algebra-modal-container{max-width:95%;max-height:95vh}.algebra-modal-header h2{font-size:1.5rem}.algebra-modal-header,.algebra-modal-content,.algebra-modal-footer{padding-left:20px;padding-right:20px}.stats-grid-top{grid-template-columns:repeat(2,1fr);gap:12px}.stat-value{font-size:2rem}.level-metrics{flex-direction:column;gap:8px;align-items:flex-end}}.skill-areas-list{display:flex;flex-direction:column;gap:8px}.skill-area-card{background:linear-gradient(135deg,#f9fafb,#fff);border:2px solid #E5E7EB;border-radius:8px;padding:10px 12px;transition:all .2s ease}.skill-area-card:hover{border-color:#10b981;box-shadow:0 2px 8px #10b98126}.skill-area-header{display:flex;align-items:center;gap:8px;margin-bottom:6px}.skill-emoji{font-size:18px}.skill-name{font-weight:600;font-size:14px;color:#1f2937}.skill-stats{display:flex;align-items:center;gap:6px;font-size:12px;color:#6b7280;flex-wrap:wrap}.skill-stat{white-space:nowrap}.top-performers-list{display:flex;flex-direction:column;gap:6px}.performer-row{display:flex;align-items:center;gap:8px;padding:8px 10px;background:linear-gradient(135deg,#f0fdf4,#fff);border:1px solid #D1FAE5;border-radius:6px;font-size:13px}.rank{font-weight:700;color:#059669;min-width:20px}.performer-stats{color:#6b7280;font-size:12px}.improvement-list{display:flex;flex-direction:column;gap:6px}.improvement-row{display:flex;align-items:center;justify-content:space-between;padding:8px 10px;background:linear-gradient(135deg,#fef3c7,#fff);border:1px solid #FDE68A;border-radius:6px;font-size:13px}.improvement-stats{color:#b45309;font-size:12px;font-weight:600}.stats-professional{max-width:700px;max-height:90vh}.crystals-display-top{background:linear-gradient(135deg,#fffbeb,#fef3c7);border:2px solid #FDE68A;border-radius:10px;padding:12px 16px;display:flex;align-items:center;gap:12px;margin-bottom:16px}.crystal-icon-small{width:40px;height:40px;object-fit:contain}.crystal-count-top{font-size:1.125rem;font-weight:700;color:#92400e;font-family:Poppins,sans-serif}.stats-summary-row{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:18px}.summary-stat{background:#fff;border:2px solid #E5E7EB;border-radius:8px;padding:12px;text-align:center}.summary-value{font-size:1.5rem;font-weight:700;color:#1f2937;font-family:Poppins,sans-serif;margin-bottom:4px}.summary-label{font-size:.7rem;color:#6b7280;text-transform:uppercase;letter-spacing:.5px;font-weight:600}.stats-section-pro{margin-bottom:0}.stats-section-pro h3{color:#1f2937;font-size:1rem;font-weight:700;margin-bottom:12px;font-family:Poppins,sans-serif}.stats-table-container{max-height:400px;overflow-y:auto;border:2px solid #E5E7EB;border-radius:8px}.stats-table{width:100%;border-collapse:collapse;font-family:Poppins,sans-serif;font-size:.875rem}.stats-table thead{background:linear-gradient(135deg,#f9fafb,#f3f4f6);position:sticky;top:0;z-index:1}.stats-table th{padding:10px 12px;text-align:left;font-weight:700;color:#374151;border-bottom:2px solid #D1D5DB;font-size:.75rem;text-transform:uppercase;letter-spacing:.5px;-webkit-user-select:none;user-select:none}.stats-table th:hover{background:linear-gradient(135deg,#f3f4f6,#e5e7eb);color:#10b981}.stats-table tbody tr{border-bottom:1px solid #E5E7EB;transition:background .15s ease}.stats-table tbody tr:hover{background:#f9fafb}.stats-table tbody tr:last-child{border-bottom:none}.stats-table td{padding:10px 12px;color:#1f2937}.stats-table .level-cell{font-weight:700;color:#10b981}.stats-table .acc-good{color:#10b981;font-weight:600}.stats-table .acc-ok{color:#f59e0b;font-weight:600}.stats-table .acc-poor{color:#ef4444;font-weight:600}.no-data-pro{text-align:center;padding:32px 16px;color:#9ca3af;font-style:italic;background:#f9fafb;border-radius:8px;border:2px dashed #E5E7EB}.stats-table-container::-webkit-scrollbar{width:8px}.stats-table-container::-webkit-scrollbar-track{background:#f3f4f6;border-radius:4px}.stats-table-container::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:4px}.stats-table-container::-webkit-scrollbar-thumb:hover{background:#9ca3af}.algebra-modal-footer{padding:16px 20px;border-top:2px solid #E5E7EB;display:flex;justify-content:center;background:linear-gradient(to top,#f9fafb,#fff)}.map-intro{background:linear-gradient(135deg,#f9fafb,#f3f4f6);border-left:4px solid #10B981;padding:12px 16px;border-radius:8px;margin-bottom:16px;font-style:italic;color:#374151;line-height:1.5;font-size:.875rem}.regions-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:16px}.region-card{background:#fff;border:2px solid #E5E7EB;border-radius:10px;padding:14px;transition:all .2s ease}.region-card:hover{border-color:#10b981;box-shadow:0 4px 16px #10b9811a;transform:translateY(-2px)}.region-header{display:flex;align-items:center;gap:8px;margin-bottom:10px}.region-icon{font-size:1.5rem;flex-shrink:0}.region-name{flex:1;margin:0;color:#1f2937;font-size:.95rem;font-weight:700;font-family:Poppins,sans-serif}.region-progress-bar{width:100%;height:24px;background:#f3f4f6;border-radius:12px;overflow:hidden;margin-bottom:10px;position:relative;border:1px solid #E5E7EB}.region-progress-fill{height:100%;transition:width .5s ease;border-radius:14px;position:relative}.region-progress-text{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:.75rem;font-weight:700;color:#1f2937;text-shadow:0 1px 2px rgba(255,255,255,.8);z-index:1}.region-levels-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(38px,1fr));gap:6px}.level-marker{width:38px;height:38px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.75rem;border:2px solid #E5E7EB;background:#fff;transition:all .2s ease;cursor:default}.level-marker.completed{background:linear-gradient(135deg,#10b981,#059669);color:#fff;border-color:#10b981;box-shadow:0 2px 6px #10b98133}.level-marker.current{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;border-color:#3b82f6;animation:pulse 2s infinite;box-shadow:0 2px 6px #3b82f64d}@keyframes pulse{0%,to{transform:scale(1);box-shadow:0 2px 6px #3b82f64d}50%{transform:scale(1.08);box-shadow:0 4px 12px #3b82f666}}.level-marker:hover:not(.completed):not(.current){border-color:#9ca3af;background:#f9fafb}.map-legend{display:flex;justify-content:center;gap:28px;padding:16px;background:#f9fafb;border-radius:10px}.legend-item{display:flex;align-items:center;gap:8px;font-size:.875rem;font-weight:500;color:#374151}.legend-dot{width:24px;height:24px;border-radius:6px;border:2px solid;flex-shrink:0}.legend-dot.completed{background:linear-gradient(135deg,#10b981,#059669);border-color:#10b981}.legend-dot.current{background:linear-gradient(135deg,#3b82f6,#2563eb);border-color:#3b82f6}.legend-dot.locked{background:#fff;border-color:#e5e7eb}@media (max-width: 768px){.algebra-modal-container{max-width:95%;max-height:95vh}.algebra-modal-header h2{font-size:1.5rem}.algebra-modal-header,.algebra-modal-content,.algebra-modal-footer{padding-left:20px;padding-right:20px}.regions-grid{grid-template-columns:1fr;gap:16px}.region-levels-grid{grid-template-columns:repeat(auto-fill,minmax(34px,1fr));gap:5px}.level-marker{width:34px;height:34px;font-size:.7rem}.map-legend{flex-direction:column;gap:12px}}.algebra-modal-overlay{position:fixed!important;top:0!important;left:0!important;right:0!important;bottom:0!important;background:#000000d9!important;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex!important;align-items:center!important;justify-content:center!important;z-index:1000!important;padding:20px!important;animation:fadeIn .2s ease;width:100vw!important;height:100vh!important}.algebra-modal-container{background:#fff!important;border-radius:16px!important;max-width:900px!important;width:90%!important;max-height:90vh!important;display:flex!important;flex-direction:column!important;box-shadow:0 20px 60px #0000004d!important;animation:slideUp .3s ease;overflow:hidden!important;position:relative!important}@keyframes slideUp{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}.algebra-modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:2px solid #E5E7EB;background:linear-gradient(to bottom,#f9fafb,#fff)}.algebra-modal-header h2{margin:0;color:#1f2937;font-size:1.5rem;font-weight:700;font-family:Poppins,sans-serif}.btn-close-modal{background:#fff;border:2px solid #EF4444;color:#ef4444;font-size:18px;width:36px;height:36px;min-width:36px;border-radius:50%;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;font-weight:700;flex-shrink:0}.btn-close-modal:hover{background:#ef4444;color:#fff;transform:rotate(90deg);box-shadow:0 4px 12px #ef44444d}.algebra-modal-content{padding:18px 20px 20px;overflow-y:auto;flex:1;font-family:Poppins,sans-serif}.algebra-modal-content::-webkit-scrollbar{width:8px}.algebra-modal-content::-webkit-scrollbar-track{background:#f3f4f6;border-radius:4px}.algebra-modal-content::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:4px}.algebra-modal-content::-webkit-scrollbar-thumb:hover{background:#9ca3af}.algebra-modal-footer{padding:20px 28px;border-top:2px solid #E5E7EB;display:flex;justify-content:center;background:linear-gradient(to top,#f9fafb,#fff)}.btn-modal-primary{background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;padding:14px 48px;font-size:1rem;font-weight:600;border-radius:10px;cursor:pointer;transition:all .2s ease;font-family:Poppins,sans-serif;box-shadow:0 4px 12px #10b98133}.btn-modal-primary:hover{background:linear-gradient(135deg,#059669,#047857);transform:translateY(-2px);box-shadow:0 6px 20px #10b9814d}.btn-modal-primary:active{transform:translateY(0)}.crystals-banner{background:linear-gradient(135deg,#fffbeb,#fef3c7);border:2px solid #FDE68A;border-radius:12px;padding:14px 16px;margin-bottom:16px;display:flex;align-items:center;gap:14px}.crystal-icon-large{width:60px;height:60px;flex-shrink:0;object-fit:contain}.crystal-details{flex:1}.crystal-amount{font-size:1.5rem;font-weight:700;color:#92400e;font-family:Poppins,sans-serif;margin-bottom:2px}.crystal-subtitle{font-size:.8rem;color:#78350f}.artifacts-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.artifacts-header h3{color:#1f2937;font-size:1.125rem;font-weight:700;font-family:Poppins,sans-serif;margin:0}.artifacts-count{background:linear-gradient(135deg,#10b981,#059669);color:#fff;padding:5px 12px;border-radius:20px;font-size:.8rem;font-weight:700;font-family:Poppins,sans-serif}.artifacts-description{color:#6b7280;font-size:.8rem;line-height:1.4;margin-bottom:14px}.artifacts-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.artifact-card{background:#fff;border:2px solid;border-radius:10px;padding:12px;text-align:center;transition:all .2s ease;position:relative}.artifact-card.earned{border-color:#d1fae5;background:linear-gradient(135deg,#f0fdf4,#dcfce7)}.artifact-card.earned:hover{transform:translateY(-4px);box-shadow:0 8px 20px #10b98126;border-color:#10b981}.artifact-card.locked{border-color:#e5e7eb;background:#f9fafb}.artifact-card.locked:hover{border-color:#d1d5db}.artifact-icon{font-size:2.75rem;height:60px;display:flex;align-items:center;justify-content:center;margin-bottom:8px}.artifact-emoji{filter:drop-shadow(0 4px 8px rgba(0,0,0,.1))}.artifact-locked{font-size:2.5rem;opacity:.3}.artifact-name{font-weight:700;font-size:.875rem;color:#1f2937;margin-bottom:6px;font-family:Poppins,sans-serif}.artifact-skill{font-size:.75rem;color:#6b7280;line-height:1.3;margin-bottom:10px}.artifact-progress{margin-top:12px}.artifact-progress-bar{width:100%;height:6px;background:#e5e7eb;border-radius:3px;overflow:hidden;margin-bottom:6px}.artifact-progress-fill{height:100%;background:linear-gradient(90deg,#3b82f6,#2563eb);transition:width .5s ease;border-radius:3px}.artifact-progress-text{font-size:.7rem;color:#6b7280;font-weight:600}.artifact-earned-badge{background:linear-gradient(135deg,#10b981,#059669);color:#fff;padding:6px 12px;border-radius:6px;font-size:.75rem;font-weight:700;margin-top:10px;display:inline-block}@media (max-width: 768px){.algebra-modal-container{max-width:95%;max-height:95vh}.algebra-modal-header h2{font-size:1.5rem}.algebra-modal-header,.algebra-modal-content,.algebra-modal-footer{padding-left:20px;padding-right:20px}.artifacts-grid{grid-template-columns:repeat(3,1fr);gap:10px}.artifact-icon{font-size:3rem;height:70px}.crystals-banner{flex-direction:column;text-align:center}.artifacts-header{flex-direction:column;align-items:flex-start;gap:10px}}.top-bar{position:fixed;top:0;left:0;right:0;height:var(--il-topbar-height);background:#000000d9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;justify-content:space-between;align-items:center;padding:0 30px;z-index:100;box-shadow:0 2px 10px #0000004d}.top-bar-left{display:flex;align-items:center;gap:20px;flex:1}.exit-btn{padding:8px 20px;background:linear-gradient(135deg,#6c5ce7eb,#a29bfee6);border:2px solid #000;color:#fff;border-radius:14px;cursor:pointer;font-size:1rem;font-weight:600;transition:all .3s;box-shadow:0 8px 20px #00000052;height:54px;display:flex;align-items:center;justify-content:center}.exit-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #ffd70066}.top-bar-center{flex:1;display:flex;justify-content:center;flex-direction:column;align-items:center;gap:2px}.center-badge{display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 20px;border-radius:14px;background:linear-gradient(135deg,#3498dbeb,#9b59b6e6);border:2px solid #000;min-height:54px;min-width:260px;justify-content:center;box-shadow:0 8px 20px #00000052}.center-text{color:#fff;font-size:1.1rem;font-weight:700;text-align:center}.center-subtext{color:#ffffffbf;font-size:.95rem;font-weight:600;text-align:center;min-height:1.1em}.top-bar-right{display:flex;align-items:center;gap:15px;flex:1;justify-content:flex-end}.top-bar .stat-box{display:flex;align-items:center;gap:10px;padding:6px 14px;border-radius:14px;border:2px solid #000;background:linear-gradient(135deg,#ff4757e6,#ff7f50e0);min-width:122px;height:54px;justify-content:center;box-shadow:0 8px 20px #00000052}.top-bar .streak-box{padding:4px 12px;background:linear-gradient(135deg,#2ed573eb,#1e90ffe6)}.top-bar .stat-icon-img{width:40px;height:40px;object-fit:contain;display:inline-block}.top-bar .streak-box .stat-icon-img{height:100%;width:auto}.top-bar .stat-value{color:#0b1220!important;font-size:1.5rem;font-weight:700}.top-bar .coins-box{background:linear-gradient(135deg,#ffd23ff2,#ff6b81e0)}.top-bar .stat-coin-icon{width:36px;height:36px;filter:drop-shadow(0 2px 6px rgba(0,0,0,.4))}@media (max-width: 768px){.top-bar{padding:0 15px}.top-bar-left,.top-bar-center,.top-bar-right{flex:auto}.center-badge{min-width:auto;padding:4px 12px;min-height:36px}.center-subtext{display:none}.top-bar .stat-icon-img{width:32px;height:32px}.top-bar .stat-value{font-size:1.3rem}}.top-bar .stat-box.clickable{cursor:pointer;transition:all .3s}.top-bar .stat-box.clickable:hover{transform:translateY(-2px);box-shadow:0 4px 12px #ffd70066}.top-bar .stat-box.clickable:active{transform:scale(.95)}.basecamp{min-height:100vh;position:relative;padding-top:calc(var(--il-topbar-height) + 20px)}.basecamp-background{position:fixed;top:0;left:0;width:100%;min-height:100%;background-image:url(/inequality-lab/lab-background.jpeg);background-size:cover;background-position:center;z-index:0;pointer-events:none}.basecamp-background:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:#0000004d}.level-selector{position:relative;z-index:10;max-width:1400px;margin:40px auto;padding:0 40px 40px}.section-title{color:#fff;font-size:4rem;margin-bottom:30px;text-align:center;text-shadow:0 2px 10px rgba(0,0,0,.5)}.levels-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.level-card{background:linear-gradient(135deg,#ff4757e6,#ff7f50e0);border-radius:15px;padding:18px;cursor:pointer;transition:all .3s;box-shadow:0 6px 22px #00000047;border:2px solid #000;position:relative;min-height:160px;color:#fff}.level-card:hover{transform:translateY(-5px);box-shadow:0 12px 34px #00000073;border-color:#ffffff80}.level-card.completed{background:linear-gradient(135deg,#d4edda,#a8d5ba);border:3px solid #000}.level-card:nth-child(2n){background:linear-gradient(135deg,#2ed573e6,#1e90ffe0)}.level-card:nth-child(3n){background:linear-gradient(135deg,#5352ede6,#a55eeae0)}.level-card:nth-child(4n){background:linear-gradient(135deg,#ff6b81e6,#ffa502e0)}.level-card:nth-child(5n){background:linear-gradient(135deg,#ff7f50e6,#2ed573e0)}.level-card:nth-child(6n){background:linear-gradient(135deg,#ffd23fe6,#ff6b81e0)}.level-card:nth-child(7n){background:linear-gradient(135deg,#18dcffe6,#5352ede0)}.level-card:nth-child(8n){background:linear-gradient(135deg,#ff9ff3e6,#ff6b81e0)}.level-card:nth-child(9n){background:linear-gradient(135deg,#48dbfbe6,#1dd1a1e0)}.level-card:nth-child(10n){background:linear-gradient(135deg,#ffdd59e6,#ff5e57e0)}.level-card:nth-child(11n){background:linear-gradient(135deg,#ffb347e6,#ff6348e0)}.level-card:nth-child(12n){background:linear-gradient(135deg,#5765f2e6,#341f97e0)}.level-card:nth-child(13n){background:linear-gradient(135deg,#00d2d3e6,#0abde3e0)}.level-card:nth-child(14n){background:linear-gradient(135deg,#ff6b6be6,#ffa69ee0)}.level-card:nth-child(15n){background:linear-gradient(135deg,#1dd1a1e6,#10ac84e0)}.level-card:nth-child(16n){background:linear-gradient(135deg,#f53b57e6,#ffffff40)}.basecamp .level-number{position:absolute;top:12px;left:12px;width:44px;height:44px;background:linear-gradient(135deg,#ffd32a,#ff9f1a);color:#111!important;border:2px solid #000;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700!important;font-size:1.25rem!important;font-family:Poppins,sans-serif!important;box-shadow:0 3px 12px #00000059;z-index:5}.basecamp .level-card.completed .level-number{background:linear-gradient(135deg,#34c759,#2ecc71);color:#111!important}.basecamp .level-name{color:#fff!important;font-size:1.6rem!important;margin:0 0 6px;padding-left:52px;font-weight:700!important;line-height:1.25;font-family:Poppins,sans-serif!important;letter-spacing:-.01em;text-shadow:0 2px 8px rgba(0,0,0,.45)}.basecamp .level-description{color:#ffffffe6;font-size:.98rem;line-height:1.55;margin:0;padding-left:52px;font-family:Poppins,sans-serif;text-shadow:0 1px 6px rgba(0,0,0,.4)}.completion-badge{position:absolute;bottom:15px;right:15px;background:#28a745;color:#fff;width:35px;height:35px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:700}@media (max-width: 768px){.level-selector{padding:0 20px 20px}.levels-grid{grid-template-columns:1fr}}.number-line-container{width:100%;max-width:900px;margin:20px auto;padding:20px}.number-line-svg{width:100%;height:auto;filter:drop-shadow(0 4px 6px rgba(0,0,0,.1))}.number-line-svg.is-animating .main-line{animation:lineGlow 1.2s ease-in-out}.number-line-svg.is-animating .tick-line{animation:tickPop 1.2s ease-in-out}.region-pulse{animation:pulse-grow 3s cubic-bezier(.16,1,.3,1)}.region-delay{animation-delay:1.8s}.region-grow-right{transform-origin:left center;transform-box:fill-box}.region-grow-left{transform-origin:right center;transform-box:fill-box}@keyframes pulse-grow{0%{opacity:0;transform:scaleX(.05)}40%{opacity:1}to{opacity:1;transform:scaleX(1.08)}}.boundary-drop-in{animation:drop-bounce 1s cubic-bezier(.16,1,.3,1);transform-origin:center}@keyframes drop-bounce{0%{transform:translateY(-60px) scale(.6) rotate(-18deg);opacity:0}60%{transform:translateY(6px) scale(1.08) rotate(6deg);opacity:1}to{opacity:1;transform:translateY(0) scale(1) rotate(0)}}@keyframes lineGlow{0%,to{filter:drop-shadow(0 0 0 rgba(255,215,0,0));stroke-width:4}50%{filter:drop-shadow(0 0 8px rgba(255,215,0,.45));stroke-width:5}}@keyframes tickPop{0%,to{transform:translateY(0);opacity:1}50%{transform:translateY(-3px);opacity:.9}}.arrow-pop{animation:arrow-pulse 3s ease-in-out 1;transform-origin:center}.arrow-delay{animation-delay:1.8s}@keyframes arrow-pulse{0%{transform:translate(0) scale(.9);opacity:.2}40%{transform:translate(0) scale(1.3);opacity:1}70%{transform:translate(0) scale(1.12)}to{transform:translate(0) scale(1);opacity:1}}.number-line-bar.bar-boost rect,.number-line-bar.bar-boost polygon{transform:scaleY(var(--bar-scale, 2));transform-origin:center;transform-box:fill-box}.number-line-bar.left-bar.bar-boost rect,.number-line-bar.left-bar.bar-boost polygon{transform-origin:right center}.number-line-bar.right-bar.bar-boost rect,.number-line-bar.right-bar.bar-boost polygon{transform-origin:left center}.boundary-swirl{animation:boundary-swirl 2.2s ease-in-out;transform-origin:center}.circle-grow{animation:circleGrow 3s ease-in-out}@keyframes circleGrow{0%{transform:scale(var(--circle-scale, 1))}60%{transform:scale(calc(var(--circle-scale, 1) * 1.2))}to{transform:scale(var(--circle-scale, 1))}}@keyframes boundary-pulse{0%{transform:scale(.8);opacity:.6;filter:drop-shadow(0 0 0 rgba(255,215,0,0))}50%{transform:scale(1.25);opacity:1;filter:drop-shadow(0 0 14px rgba(255,215,0,.6))}to{transform:scale(1);opacity:1;filter:drop-shadow(0 0 6px rgba(255,215,0,.35))}}.boundary-pulse{animation:boundary-pulse 2.6s ease-in-out;transform-origin:center}@keyframes boundary-swirl{0%{transform:translate(-180px) translateY(-80px) rotate(-540deg) scale(.2);opacity:0}60%{transform:translate(10px) translateY(6px) rotate(30deg) scale(1.25);opacity:1}to{transform:translate(0) translateY(0) rotate(0) scale(1);opacity:1}}.bar-region{transition:all .2s ease}.bar-region:hover{opacity:1!important}@media (max-width: 768px){.number-line-container{padding:10px}.number-line-svg{height:120px}}@media (prefers-reduced-motion: reduce){.boundary-drop-in,.boundary-pulse,.boundary-swirl,.region-pulse,.arrow-pop,.number-line-svg.is-animating .main-line,.number-line-svg.is-animating .tick-line{animation:none}}.question-display-wrapper{width:100%;max-width:1000px;margin:0 auto;padding:20px}.question-display{width:100%}.question-content-fixed{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:20px;padding:28px;box-shadow:0 20px 60px #0000004d;display:flex;flex-direction:column;justify-content:flex-start;align-items:center;overflow:visible;min-height:400px}.question-prompt{color:#fff;font-size:22px;margin:15px 0;text-align:center;text-shadow:0 2px 4px rgba(0,0,0,.2)}.symbol-consistent{font-family:"Latin Modern Math","STIX Two Math","Cambria Math",serif;font-weight:500;line-height:1;letter-spacing:.02em}.giant-symbol-display{display:flex;align-items:center;justify-content:center;margin:6px auto 10px;position:relative}.symbol-glow{font-size:165px;color:gold;text-shadow:0 2px 0 rgba(0,0,0,.25);animation:goldFloat 2.2s ease-in-out infinite;display:flex;align-items:center;justify-content:center}@keyframes goldFloat{0%,to{transform:translateY(0) scale(1);letter-spacing:.02em}50%{transform:translateY(-6px) scale(1.05);letter-spacing:.04em}}.circle-numberline-wrapper,.symbol-line-wrapper,.large-numberline-wrapper,.extra-large-numberline-wrapper{width:100%;max-width:850px;margin:20px 0;transform:scale(1.15);transform-origin:center}.comparison-display{display:flex;align-items:center;justify-content:center;gap:25px;margin:20px 0}.comparison-number{font-size:64px;font-weight:700;color:#fff;text-shadow:0 4px 8px rgba(0,0,0,.3);padding:15px 35px;background:#ffffff26;border-radius:15px;min-width:100px;text-align:center}.comparison-blank{width:90px;height:90px;display:flex;align-items:center;justify-content:center}.blank-slot{font-size:80px;color:gold;text-shadow:0 2px 0 rgba(0,0,0,.25);animation:goldFloat 2.2s ease-in-out infinite}.symbol-reveal{font-size:80px;color:gold;text-shadow:0 2px 0 rgba(0,0,0,.25);animation:symbol-pop .3s ease-out,goldFloat 2.2s ease-in-out infinite}@keyframes symbol-pop{0%{transform:scale(0);opacity:0}50%{transform:scale(1.2)}to{transform:scale(1);opacity:1}}.symbol-choice-buttons{display:flex;gap:25px;margin:15px 0}.symbol-button{font-size:84px;width:110px;height:110px;background:#fff;border:4px solid rgba(255,255,255,.3);border-radius:15px;cursor:pointer;transition:all .2s ease;box-shadow:0 6px 12px #0003;line-height:1}.symbol-button:hover{transform:scale(1.08);background:gold}.inequality-box{background:#ffffff1a;padding:20px 40px;border-radius:15px;margin:15px 0}.inequality-display{font-size:48px;color:#fff;margin:0;text-shadow:0 4px 8px rgba(0,0,0,.3)}.transform-container{display:flex;align-items:center;gap:25px;margin:16px 0 10px;flex-wrap:wrap;justify-content:center}.label{color:gold;font-size:14px;font-weight:700;margin-bottom:8px;text-transform:uppercase}.inequality-card{background:#fff;color:#667eea;padding:15px 35px;border-radius:12px;font-size:34px;font-weight:700}.transform-arrow{font-size:52px;color:gold;animation:arrowFloat 1.6s ease-in-out infinite}.target-box{background:#ffffff14;border:3px dashed rgba(255,255,255,.6);padding:20px 45px;border-radius:12px;min-width:140px;min-height:58px}@keyframes arrowFloat{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-6px) scale(1.05)}}.test-prompt{text-align:center;margin:15px 0}.test-prompt h3{color:#fff;font-size:26px;margin:0}.test-value-large{font-size:64px;color:gold;margin-top:15px;font-weight:700}.direction-buttons{display:flex;gap:18px;margin:20px 0}.direction-btn{padding:18px 35px;font-size:22px;font-weight:700;border:none;border-radius:12px;cursor:pointer;transition:all .2s ease;box-shadow:0 6px 12px #0003;color:#fff}.left-direction{background:linear-gradient(135deg,#667eea,#4a90e2)}.right-direction{background:linear-gradient(135deg,#4caf50,#45b7a8)}.direction-btn:hover{transform:translateY(-4px)}.value-selection-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin:20px 0;width:100%;max-width:450px}.value-select-button{padding:16px;font-size:34px;font-weight:700;background:#fff;color:#111;border:3px solid rgba(255,255,255,.3);border-radius:12px;cursor:pointer;transition:all .2s ease;position:relative;font-family:Poppins,sans-serif}.value-select-button:hover{transform:scale(1.05)}.value-select-button.selected{background:#111827;color:#fff}.checkmark{position:absolute;top:5px;right:10px;font-size:22px}.submit-selection-button{margin-top:18px;padding:14px 35px;font-size:19px;font-weight:700;background:gold;color:#333;border:none;border-radius:12px;cursor:pointer;transition:all .2s ease}.submit-selection-button:hover:not(:disabled){transform:translateY(-3px)}.submit-selection-button:disabled{opacity:.5;cursor:not-allowed}.sentence-box-simple{background:#ffffff26;padding:25px 40px;border-radius:15px;margin:15px 0;text-align:center}.sentence-display{font-size:26px;color:#fff;margin:0;line-height:1.5}.options-grid-4{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin:10px 0 6px;width:100%;max-width:550px}.options-grid-4-symbols{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin:10px 0 6px;width:100%;max-width:450px}.options-grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin:10px 0 6px;width:100%;max-width:650px}.option-button{padding:8px 12px;font-size:24px;font-weight:700;background:#fff;color:#111;border:3px solid rgba(255,255,255,.3);border-radius:12px;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 8px #0003;font-family:Poppins,sans-serif;line-height:1.1;display:flex;align-items:center;justify-content:center;min-height:56px}.option-button:hover{transform:translateY(-4px);background:#f3f4f6;color:#111}.no-animate-options .option-button{transition:none}.no-animate-options .option-button:hover{transform:none}.no-animate-options .symbol-consistent{animation:none}.symbol-btn-large,.equality-symbol-btn{font-size:92px;padding:4px}.symbol-button .symbol-consistent,.option-button .symbol-consistent{color:#111;text-shadow:none;animation:goldFloat 2.2s ease-in-out infinite}.inequality-option{font-size:24px}.flask-buttons-container{display:flex;gap:25px;margin:20px 0}.clickable-btn{pointer-events:auto!important;-webkit-user-select:none;user-select:none}.feedback-box-external{margin-top:18px;padding:18px 28px;background:#ff6b6be6;border-radius:12px;box-shadow:0 6px 12px #0003;display:flex;align-items:center;gap:14px;animation:feedback-slide-in .3s ease-out}@keyframes feedback-slide-in{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}.feedback-icon{font-size:30px}.feedback-text{color:#fff;font-size:17px;margin:0;line-height:1.5}@media (max-width: 768px){.question-content-fixed{padding:20px;min-height:300px}.circle-numberline-wrapper,.symbol-line-wrapper,.large-numberline-wrapper,.extra-large-numberline-wrapper{transform:scale(1)}.options-grid-4,.options-grid-2,.value-selection-grid{grid-template-columns:1fr}}.scientist-container{position:fixed;bottom:20px;right:20px;z-index:50;transition:all .3s ease}.scientist{width:200px;height:300px;position:relative;transition:transform .3s ease}.scientist-image{width:100%;height:100%;filter:drop-shadow(0 5px 15px rgba(0,0,0,.3));background-color:transparent}@supports not (mask-image: url()){.scientist-image{-webkit-mask-image:none;mask-image:none;background-color:#fff}}.scientist-container.excited .scientist{animation:excitedBounce .45s ease-in-out infinite,spin 1.2s ease-in-out infinite}.scientist-container.excited:before{content:"✨";position:absolute;font-size:2rem;animation:sparkle .5s ease-in-out infinite;left:-30px;top:20px}.scientist-container.excited:after{content:"🎉";position:absolute;font-size:2rem;animation:sparkle .5s ease-in-out infinite .2s;right:-40px;top:40px}.scientist-container.excited .scientist-image{animation:excitedSquash .35s ease-in-out infinite}.scientist-container.thinking .scientist{animation:thinkingTilt 1.2s ease-in-out infinite,headScratch .8s ease-in-out infinite}.scientist-container.thinking:before{content:"💭";position:absolute;font-size:2.5rem;animation:floatPulse 1.5s ease-in-out infinite;right:-50px;top:-30px}.scientist-container.thinking .scientist-image{animation:thinkingGlow 1.4s ease-in-out infinite}.scientist-container.thinking:after{content:"?";position:absolute;font-size:1.8rem;animation:questionBounce 1.2s ease-in-out infinite .3s;right:-60px;top:20px;color:gold;font-weight:700}@keyframes excitedBounce{0%,to{transform:translateY(0) scaleY(1)}25%{transform:translateY(-30px) scaleY(.95)}50%{transform:translateY(-5px) scaleY(1.05)}75%{transform:translateY(-20px) scaleY(.98)}}@keyframes spin{0%,to{transform:rotate(0)}25%{transform:rotate(5deg)}50%{transform:rotate(-5deg)}75%{transform:rotate(3deg)}}@keyframes sparkle{0%,to{opacity:0;transform:scale(.5) translateY(0)}50%{opacity:1;transform:scale(1) translateY(-10px)}}@keyframes excitedSquash{0%,to{transform:scale(1) rotate(0)}50%{transform:scale(1.04,.96) rotate(-2deg)}}@keyframes thinkingTilt{0%,to{transform:rotate(0) translate(0)}33%{transform:rotate(-8deg) translate(-5px)}66%{transform:rotate(8deg) translate(5px)}}@keyframes headScratch{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}@keyframes floatPulse{0%,to{opacity:.6;transform:translateY(0) scale(1)}50%{opacity:1;transform:translateY(-15px) scale(1.1)}}@keyframes questionBounce{0%,to{opacity:.5;transform:translateY(0) scale(.8)}50%{opacity:1;transform:translateY(-12px) scale(1.1)}}@keyframes thinkingGlow{0%,to{filter:drop-shadow(0 5px 15px rgba(0,0,0,.3)) saturate(1)}50%{filter:drop-shadow(0 8px 22px rgba(255,215,0,.35)) saturate(1.15)}}.speech-bubble{position:absolute;bottom:100%;right:0;margin-bottom:20px;background:#fff;color:#333;padding:15px 20px;border-radius:15px;box-shadow:0 5px 20px #0000004d;min-width:200px;max-width:300px;animation:bubbleAppear .3s ease-out,bubbleRattle 2.4s ease-in-out infinite;z-index:10}.speech-bubble-content{font-size:1.1rem;font-weight:600;text-align:center;line-height:1.4}.speech-bubble-tail{position:absolute;bottom:-10px;right:30px;width:0;height:0;border-left:10px solid transparent;border-right:10px solid transparent;border-top:10px solid white}@keyframes bubbleAppear{0%{opacity:0;transform:translateY(10px) scale(.8)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes bubbleRattle{0%,to{transform:translate(0) rotate(0)}15%{transform:translate(-1px) rotate(-.4deg)}30%{transform:translate(1px) rotate(.4deg)}45%{transform:translate(-.6px) rotate(-.3deg)}60%{transform:translate(.6px) rotate(.3deg)}75%{transform:translate(-.4px) rotate(-.2deg)}}@media (max-width: 768px){.scientist-container{bottom:10px;right:10px}.scientist{width:150px;height:225px}.speech-bubble{min-width:150px;max-width:250px;padding:12px 15px}.speech-bubble-content{font-size:.95rem}.scientist-container.excited:before,.scientist-container.excited:after,.scientist-container.thinking:before,.scientist-container.thinking:after{font-size:1.5rem}}.coin-animation-container{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:999;overflow:hidden}.coin{position:absolute;top:-60px;width:var(--coin-size, 32px);height:var(--coin-size, 32px);background:transparent;transform-origin:center;will-change:transform,opacity;animation:coinFall var(--duration, 1.2s) linear forwards}.coin:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:var(--global-coin-image);background-repeat:no-repeat;background-size:contain;background-position:center;transform-origin:center;animation:coinSpin var(--duration, 1.2s) linear infinite}@keyframes coinFall{0%{transform:translateY(0) rotate(0) scale(1);opacity:1}to{transform:translateY(100vh) rotate(var(--rotation)) scale(.9);opacity:.25}}@media (max-width: 768px){.coin{--coin-size: 24px}}@media (max-width: 480px){.coin{--coin-size: 18px}}.stats-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#0000001a;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .3s ease-out}.stats-panel{background:#fff;border-radius:20px;padding:30px;max-width:750px;width:90%;max-height:85vh;overflow-y:auto;box-shadow:0 20px 60px #00000080;animation:slideUp .4s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.stats-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:15px;border-bottom:2px solid #e0e0e0}.stats-header h2{margin:0;color:#333;font-size:1.8rem}.close-btn{background:none;border:none;font-size:1.8rem;cursor:pointer;color:#666;transition:all .3s;width:35px;height:35px;display:flex;align-items:center;justify-content:center}.close-btn:hover{color:#333;transform:scale(1.1)}.stats-tabs{display:flex;gap:10px;margin-bottom:20px}.stats-tab{flex:1;padding:12px;background:#f5f5f5;border:2px solid #ddd;border-radius:10px;cursor:pointer;font-size:1rem;font-weight:600;color:#666;transition:all .3s}.stats-tab.active{background:linear-gradient(135deg,#667eea,#764ba2);border-color:#667eea;color:#fff}.stats-tab:hover:not(.active){background:#e8e8e8}.stats-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:15px;margin-bottom:25px}.stat-card{background:linear-gradient(135deg,#f5f7fa,#c3cfe2);padding:16px;border-radius:12px;text-align:center;box-shadow:0 3px 10px #0000001a;display:flex;flex-direction:column;justify-content:space-between;min-height:110px}.stat-label{color:#666;font-size:.85rem;margin-bottom:8px;font-weight:600}.stat-value{color:#333;font-size:2rem;font-weight:700;margin-top:auto}.stat-value.success{color:#4caf50}.level-breakdown{background:#f9f9f9;padding:20px;border-radius:15px}.level-breakdown h3{margin:0 0 15px;color:#333;font-size:1.2rem}.level-stats-list{display:flex;flex-direction:column;gap:10px}.level-stat-item{background:#fff;padding:12px 15px;border-radius:10px;box-shadow:0 2px 8px #0000000d;display:flex;justify-content:space-between;align-items:center}.level-stat-header{display:flex;align-items:center;gap:10px;flex:1}.level-stat-num{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.9rem;flex-shrink:0}.level-stat-name{color:#333;font-weight:600;font-size:.95rem}.level-stat-data{display:flex;gap:15px;align-items:center}.stats-errors{margin-bottom:25px;padding:18px;border-radius:14px;background:#fff7ed;border:2px solid #fdba74}.stats-errors h3{margin:0 0 12px;color:#9a3412;font-size:1.1rem}.stats-error-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px}.stats-error-item{background:#fff;border-radius:10px;padding:10px 12px;display:flex;justify-content:space-between;align-items:center;box-shadow:0 2px 8px #00000014}.stats-error-tag{font-weight:700;color:#9a3412;font-size:.85rem}.stats-error-count{font-weight:700;color:#1f2937}.stats-clear{margin-top:25px;padding-top:20px;border-top:2px solid #e5e7eb}.stats-clear h3{margin:0 0 12px;color:#111827}.stats-clear-buttons{display:flex;gap:12px;flex-wrap:wrap}.clear-btn{padding:10px 16px;border-radius:10px;border:2px solid #111827;background:#fff;font-weight:700;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.clear-btn:hover{transform:translateY(-2px);box-shadow:0 6px 16px #0000001f}.clear-btn.danger{border-color:#b91c1c;color:#b91c1c}.confirm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000001a;display:flex;align-items:center;justify-content:center;z-index:2000}.confirm-modal{background:#111827;color:#f9fafb;border:2px solid #ef4444;border-radius:16px;padding:24px;max-width:420px;width:90%;text-align:center;box-shadow:0 20px 60px #0009;animation:slideUp .3s ease-out}.confirm-icon{font-size:2rem;margin-bottom:10px}.confirm-warning{color:#fca5a5;font-weight:700}.confirm-actions{display:flex;gap:12px;justify-content:center;margin-top:16px}.confirm-btn{padding:10px 16px;border-radius:10px;border:2px solid #f9fafb;background:transparent;color:#f9fafb;font-weight:700;cursor:pointer}.confirm-btn.danger{border-color:#ef4444;color:#ef4444}@media (max-width: 900px){.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.level-stat-score{color:#667eea;font-weight:700;font-size:1rem}.level-stat-accuracy{color:#28a745;font-weight:700;font-size:1rem;min-width:45px;text-align:right}.level-stat-time{color:#ff9800;font-weight:700;font-size:.9rem;min-width:35px;text-align:right}@media (max-width: 768px){.stats-panel{padding:25px 20px;max-height:90vh}.stats-grid{grid-template-columns:repeat(2,1fr)}.stat-value{font-size:1.8rem}.level-stat-item{flex-direction:column;align-items:flex-start;gap:8px}.level-stat-data{width:100%;justify-content:space-between}}.level-player{min-height:100vh;position:relative;overflow-x:hidden;display:flex;flex-direction:column}.level-background{position:fixed;top:0;left:0;width:100%;height:100%;background-image:url(/inequality-lab/lab-background.jpeg);background-size:cover;background-position:center;z-index:0}.level-background:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:#0006}.level-content{position:relative;z-index:10;flex:1;display:flex;align-items:flex-start;justify-content:center;padding:calc(var(--il-topbar-height) + 40px) 20px 60px;overflow:visible}.scientist-container{position:fixed;bottom:20px;right:20px;z-index:15}.question-container{width:100%;max-width:1200px;margin:0 auto;padding-bottom:40px}.level-player-loading{display:flex;align-items:center;justify-content:center;min-height:100vh;font-size:1.5rem;color:#fff;background:linear-gradient(135deg,#1e3c72,#2a5298)}.speech-overlay{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:auto;z-index:9000;display:flex;justify-content:center;align-items:center;padding:0 5vw;background:#00000073}.coin-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:8000;background:transparent}.speech-bubble-overlay{background:#fff;color:#1f2937;padding:28px 34px;border-radius:16px;box-shadow:0 12px 30px #00000040;max-width:700px;width:min(80vw,700px);position:relative;animation:bubbleAppear .25s ease-out;overflow:hidden}.speech-bubble-overlay .speech-bubble-content{font-size:1.5rem;font-weight:800;text-align:center;line-height:1.4}.speech-bubble-overlay .speech-bubble-tail{position:absolute;right:70px;bottom:-16px;width:0;height:0;border-left:16px solid transparent;border-right:16px solid transparent;border-top:16px solid white}@keyframes bubbleAppear{0%{opacity:0;transform:translateY(10px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes bubblePulse{0%,to{transform:scale(1)}50%{transform:scale(1.04)}}.speech-overlay.positive .speech-bubble-overlay{background:linear-gradient(135deg,#fff8e1,#fff,#e8f5e9);animation:bubbleAppear .3s cubic-bezier(.34,1.56,.64,1),bubbleRattle 2.6s ease-in-out .4s infinite;box-shadow:0 12px 30px #0003,0 0 0 3px #ffd70080,0 0 40px #ffd7004d;padding:40px 45px;max-width:min(90vw,720px);width:min(90vw,720px)}.speech-overlay.positive .speech-bubble-content{font-size:clamp(1.8rem,4.2vw,3.1rem);display:flex;flex-wrap:wrap;justify-content:center;gap:0;line-height:1.2}.speech-overlay.positive .speech-bubble-content .wave-word{display:inline-block;white-space:nowrap}.speech-overlay.positive .speech-bubble-content .wave-space{display:inline-block;width:.3em}.speech-overlay.positive .speech-bubble-content .wave-letter{display:inline-block;background:linear-gradient(90deg,#ff6b6b,#feca57,#48dbfb,#ff9ff3,#ff6b6b);background-size:300% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-stroke:.75px #222;paint-order:stroke fill;filter:drop-shadow(2px 2px 0 rgba(0,0,0,.3));animation:rainbowText 6s linear infinite,letterWave 1.5s ease-in-out infinite;animation-delay:calc(var(--i) * .05s),calc(var(--i) * .05s)}.speech-overlay.positive .speech-bubble-overlay:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 20% 20%,rgba(255,215,0,.3) 0%,transparent 20%),radial-gradient(circle at 80% 30%,rgba(72,219,251,.3) 0%,transparent 15%),radial-gradient(circle at 70% 80%,rgba(255,159,243,.3) 0%,transparent 18%),radial-gradient(circle at 30% 70%,rgba(46,213,115,.3) 0%,transparent 15%);animation:sparkleShimmer 1.5s ease-in-out infinite;pointer-events:none;border-radius:inherit}@keyframes rainbowText{0%{background-position:0% 50%}to{background-position:300% 50%}}@keyframes letterWave{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-8px) scale(1.1)}}@keyframes bubbleRattle{0%,to{transform:translate(0) rotate(0)}12%{transform:translate(-1px) rotate(-.4deg)}24%{transform:translate(1px) rotate(.4deg)}36%{transform:translate(-.8px) rotate(-.3deg)}48%{transform:translate(.8px) rotate(.3deg)}60%{transform:translate(-.6px) rotate(-.25deg)}72%{transform:translate(.6px) rotate(.25deg)}84%{transform:translate(-.4px) rotate(-.2deg)}}@keyframes sparkleShimmer{0%,to{opacity:.6;transform:scale(1)}50%{opacity:1;transform:scale(1.05)}}@keyframes wordPulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@media (max-width: 768px){.speech-overlay{padding:0 6vw}.speech-bubble-overlay{width:min(90vw,520px)}.speech-bubble-overlay .speech-bubble-content{font-size:1.5rem}}.milestone-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#0000001a;display:flex;align-items:center;justify-content:center;z-index:10000;animation:overlay-fade-in .3s ease-out}@keyframes overlay-fade-in{0%{opacity:0}to{opacity:1}}.milestone-modal{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:20px;padding:50px;box-shadow:0 20px 60px #00000080;text-align:center;max-width:500px;animation:modal-slide-up .4s cubic-bezier(.68,-.55,.265,1.55)}@keyframes modal-slide-up{0%{opacity:0;transform:translateY(50px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}.milestone-icon{font-size:80px;margin-bottom:20px;animation:icon-bounce 1s ease-in-out infinite}@keyframes icon-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.milestone-modal h2{color:#fff;font-size:36px;margin:0 0 15px;text-shadow:0 2px 4px rgba(0,0,0,.3)}.milestone-modal p{color:#ffffffe6;font-size:20px;margin:0 0 30px}.milestone-buttons{display:flex;flex-direction:column;gap:15px}.milestone-btn{padding:18px 40px;font-size:20px;font-weight:700;border:none;border-radius:12px;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 8px #0003}.continue-btn{background:linear-gradient(135deg,#4caf50,#45b7a8);color:#fff}.next-btn{background:#fff;color:#667eea}.milestone-btn:hover{transform:translateY(-3px);box-shadow:0 8px 16px #0000004d}.stats-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#0000001a;display:flex;align-items:center;justify-content:center;z-index:1000}.stats-modal{background:#fff;border-radius:20px;padding:30px;max-width:800px;max-height:80vh;overflow-y:auto}.close-stats{margin-top:20px;padding:12px 30px;font-size:18px;font-weight:700;background:#667eea;color:#fff;border:none;border-radius:8px;cursor:pointer}.close-stats:hover{background:#764ba2}@media (max-width: 768px){.milestone-modal{padding:30px;max-width:90%}.milestone-modal h2{font-size:28px}.milestone-btn{font-size:18px;padding:15px 30px}}.coin-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000001a;display:flex;align-items:center;justify-content:center;z-index:2000}.coin-modal{background:#fff;border-radius:18px;padding:26px;max-width:520px;width:90%;box-shadow:0 20px 60px #00000080;animation:slideUp .3s ease-out}.coin-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;border-bottom:2px solid #e5e7eb;padding-bottom:12px}.coin-header h2{margin:0;font-size:1.6rem;color:#111827}.coin-close{background:none;border:none;font-size:1.6rem;cursor:pointer;color:#6b7280}.coin-section{margin-top:16px}.coin-section h3{margin:0 0 8px;color:#111827}.coin-section ul{margin:0;padding-left:18px;color:#374151}.coin-muted{color:#6b7280;margin:0}.inequality-lab{position:relative;min-height:100vh;width:100%;background:linear-gradient(135deg,#1e3c72,#2a5298);overflow-x:hidden;font-family:Poppins,sans-serif!important;--il-topbar-height: 70px}.lab-background{position:fixed;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,#1e3c72,#2a5298);background-size:cover;background-position:center;z-index:0}.lab-background:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:radial-gradient(circle at 20% 50%,rgba(138,43,226,.1) 0%,transparent 50%),radial-gradient(circle at 80% 80%,rgba(0,191,255,.1) 0%,transparent 50%);animation:bubbleFloat 8s ease-in-out infinite}@keyframes bubbleFloat{0%,to{opacity:.5;transform:translateY(0)}50%{opacity:.8;transform:translateY(-20px)}}.lab-content{position:relative;z-index:1;max-width:1200px;margin:0 auto;padding:100px 20px 20px;min-height:calc(100vh - 80px);display:flex;align-items:center;justify-content:center}.level-complete-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#0000001a;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .3s ease-out}.level-complete-card{background:linear-gradient(135deg,#667eea,#764ba2);padding:40px;border-radius:20px;box-shadow:0 20px 60px #00000080;text-align:center;color:#fff;max-width:500px;animation:scaleIn .4s ease-out}.level-complete-card h2{font-size:2.5rem;margin-bottom:20px;text-shadow:0 2px 10px rgba(0,0,0,.3)}.level-complete-stats{background:#ffffff1a;padding:20px;border-radius:10px;margin:20px 0}.level-complete-stats p{font-size:1.2rem;margin:10px 0}.level-complete-actions{display:flex;gap:15px;justify-content:center;margin-top:30px}.btn-primary,.btn-secondary{padding:15px 30px;font-size:1.1rem;border:none;border-radius:10px;cursor:pointer;transition:all .3s ease;font-weight:700}.btn-primary{background:linear-gradient(135deg,#4caf50,#45a049);color:#fff}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 5px 20px #4caf5066}.btn-secondary{background:#fff3;color:#fff;border:2px solid white}.btn-secondary:hover{background:#ffffff4d;transform:translateY(-2px)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.inequality-lab-loading{display:flex;align-items:center;justify-content:center;min-height:100vh;font-size:1.5rem;color:#fff}@media (max-width: 768px){.inequality-lab{--il-topbar-height: 60px}.lab-content{padding:80px 15px 15px}.level-complete-card{padding:30px 20px;margin:20px}.level-complete-card h2{font-size:2rem}.level-complete-actions{flex-direction:column}.btn-primary,.btn-secondary{width:100%}}.lab-background{background-image:url(/inequality-lab/lab-background.jpg);background-size:cover;background-position:center}:root{--gold: #FFD700;--gold-bright: #FFF200;--red: #E74C3C;--red-dark: #C0392B;--green: #27AE60;--green-bright: #2ECC71;--blue: #3498DB;--dark-bg: #0A0A1E;--dark-purple: #1A1A2E;--metal-start: #667eea;--metal-end: #764ba2;--neon-cyan: #00F5FF;--neon-pink: #FF10F0;--fdp-bg-image: url(/FDP/slot-machine-background@2x.png);--fdp-bg-image-alt: url(/FDP/slot-machine-background-alt@2x.png);--fdp-frame-image: url(/FDP/slot-machine-frame@2x.png);--fdp-payline-frame: url(/FDP/payline-frame@2x.png);--fdp-message-banner: url(/FDP/message-banner@2x.png);--fdp-modal-frame: url(/FDP/modal-frame@2x.png);--fdp-wheel-fraction: url(/FDP/wheel-drum-fraction@2x.png);--fdp-wheel-decimal: url(/FDP/wheel-drum-decimal@2x.png);--fdp-wheel-percent: url(/FDP/wheel-drum-percent@2x.png);--fdp-arrow-up-idle: url(/FDP/arrow-up-idle@2x.png);--fdp-arrow-up-hover: url(/FDP/arrow-up-hover@2x.png);--fdp-arrow-up-disabled: url(/FDP/arrow-up-disabled@2x.png);--fdp-arrow-down-idle: url(/FDP/arrow-down-idle@2x.png);--fdp-arrow-down-hover: url(/FDP/arrow-down-hover@2x.png);--fdp-arrow-down-disabled: url(/FDP/arrow-down-disabled@2x.png);--fdp-btn-primary-idle: url(/FDP/action-primary-idle@2x.png);--fdp-btn-primary-hover: url(/FDP/action-primary-hover@2x.png);--fdp-btn-primary-pressed: url(/FDP/action-primary-pressed@2x.png);--fdp-btn-primary-disabled: url(/FDP/action-primary-disabled@2x.png);--fdp-btn-stats-idle: url(/FDP/btn-stats-idle@2x.png);--fdp-btn-stats-hover: url(/FDP/btn-stats-hover@2x.png);--fdp-btn-stats-pressed: url(/FDP/btn-stats-pressed@2x.png);--fdp-btn-stats-disabled: url(/FDP/btn-stats-disabled@2x.png);--fdp-btn-coins-idle: url(/FDP/btn-coins-idle@2x.png?v=2);--fdp-btn-coins-hover: url(/FDP/btn-coins-hover@2x.png?v=2);--fdp-btn-coins-pressed: url(/FDP/btn-coins-pressed@2x.png?v=2);--fdp-btn-coins-disabled: url(/FDP/btn-coins-disabled@2x.png?v=2);--fdp-btn-bet-idle: url(/FDP/btn-bet-idle@2x.png);--fdp-btn-bet-hover: url(/FDP/btn-bet-hover@2x.png);--fdp-btn-bet-pressed: url(/FDP/btn-bet-pressed@2x.png);--fdp-btn-bet-disabled: url(/FDP/btn-bet-disabled@2x.png);--fdp-btn-blue: url(/FDP/btn-blue.png);--fdp-btn-green: url(/FDP/btn-green.png);--fdp-btn-arrow: url(/FDP/btn-arrow.png);--fdp-coin-image: var(--global-coin-image);--fdp-btn-purple: url(/FDP/btn-purple.png?v=2);--fdp-wheel-bg: #ffffff;--fdp-wheel-bg-image: none;--fdp-wheel-font: "Luckiest Guy", "Fredoka", "Poppins", sans-serif;--fdp-wheel-text: #2f1630;--fdp-rig-offset: 0px;--fraction-bg: #E8F4F8;--fraction-border: #3498DB;--decimal-bg: #E8F8F0;--decimal-border: #27AE60;--percent-bg: #F3E8F8;--percent-border: #9B59B6;--heading-font: "Poppins", sans-serif;--display-font: "Luckiest Guy", "Poppins", sans-serif;--number-font: "Poppins", sans-serif;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-xxl: 3rem}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--heading-font);background:linear-gradient(135deg,#0a0a1e,#1a1a2e,#16213e);color:#fff;overflow-x:hidden}.fdp-jackpot-container{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(180deg,#080a1ee6,#080a1ebf 40%,#080a1ed9),radial-gradient(circle at 20% 80%,rgba(102,126,234,.2) 0%,transparent 55%),radial-gradient(circle at 80% 20%,rgba(118,75,162,.2) 0%,transparent 55%),var(--fdp-bg-image);background-size:cover;background-position:center;position:relative;overflow-x:visible;overflow-y:hidden}.fdp-exit-warning-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#050810b8;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:grid;place-items:center;z-index:9999}.fdp-exit-warning{width:min(420px,90vw);padding:20px;text-align:center}.fdp-exit-warning-title{margin:0 0 8px;font-size:1.2rem;letter-spacing:.08em}.fdp-exit-warning-text{margin:0 0 16px;color:#f8fafccc}.fdp-exit-warning-actions{display:flex;gap:12px;justify-content:center}.fdp-exit-warning-btn{border:1px solid rgba(255,255,255,.5);background:#0a0e1ab3;color:#f8fafc;padding:8px 16px;border-radius:8px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;cursor:pointer}.fdp-exit-warning-btn--danger{border-color:#ff5a5acc;color:#ffb3b3}.fdp-exit-warning-btn:hover{background:#0e1428d9;box-shadow:0 8px 16px #00000059}.fdp-jackpot-container:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background-image:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(255,255,255,.02) 2px,rgba(255,255,255,.02) 4px);pointer-events:none;animation:scan 8s linear infinite}@keyframes scan{0%{transform:translateY(0)}to{transform:translateY(100px)}}.fdp-jackpot-header{padding:6px 12px 0;text-align:center;position:relative;z-index:10;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;isolation:isolate}.fdp-logo-container{text-align:center}.fdp-neon-title{font-family:var(--display-font);font-size:clamp(1.9rem,6vw,3.75rem);font-weight:900;letter-spacing:.08em;color:var(--gold);-webkit-text-stroke:2px #000;text-stroke:2px #000;text-shadow:0 0 10px var(--neon-cyan),0 0 20px var(--neon-cyan),0 0 30px var(--neon-cyan),0 0 40px var(--gold),0 0 70px var(--gold);margin:0;animation:titlePulse 3s ease-in-out infinite}@keyframes titlePulse{0%,to{text-shadow:0 0 10px var(--neon-cyan),0 0 20px var(--neon-cyan),0 0 30px var(--neon-cyan),0 0 40px var(--gold),0 0 70px var(--gold)}50%{text-shadow:0 0 20px var(--gold-bright),0 0 30px var(--gold-bright),0 0 40px var(--gold-bright),0 0 70px var(--gold-bright),0 0 100px var(--gold-bright)}}.fdp-header-actions{display:flex;align-items:center;gap:var(--spacing-sm);justify-self:end}.fdp-header-btn{min-width:160px;min-height:110px;padding:0;border-radius:0;background-size:contain;color:transparent;text-shadow:none}.fdp-header-exit{justify-self:start;background-image:var(--fdp-btn-purple);background-repeat:no-repeat;background-position:center;background-size:contain;background-color:transparent!important;color:transparent;border:none;box-shadow:none;-moz-appearance:none;appearance:none;-webkit-appearance:none;mix-blend-mode:multiply}.fdp-sound-toggle{background:#ffffff1a;border:2px solid var(--neon-cyan);border-radius:50%;width:50px;height:50px;font-size:1.5rem;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.fdp-sound-toggle:hover{background:#fff3;transform:scale(1.1);box-shadow:0 0 20px var(--neon-cyan)}.fdp-sound-toggle-floating{position:fixed;right:24px;bottom:24px;z-index:50}.fdp-content{flex:1;padding:0 var(--spacing-md) var(--spacing-lg);display:flex;justify-content:center;align-items:flex-start;position:relative;z-index:5;width:100%}.fdp-btn{font-family:var(--heading-font);font-size:1.1rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;padding:var(--spacing-md) var(--spacing-xl);border:none;border-radius:12px;cursor:pointer;transition:all .3s ease;position:relative;overflow:hidden;box-shadow:0 4px 15px #0000004d;background-color:transparent;display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm)}.fdp-btn:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#ffffff4d;transform:translate(-50%,-50%);transition:width .6s,height .6s}.fdp-btn:hover:before{width:300px;height:300px}.fdp-btn:active{transform:scale(.95)}.fdp-btn-primary{background-image:var(--fdp-btn-primary-idle);background-repeat:no-repeat;background-position:center;background-size:100% 100%;color:#1a1a1a;border:none;min-height:64px;text-shadow:0 2px 6px rgba(0,0,0,.35)}.fdp-btn-primary:hover{background-image:var(--fdp-btn-primary-hover);box-shadow:0 0 30px #ffd70099,0 4px 20px #0006;color:#141414}.fdp-btn-primary:active:not(:disabled){background-image:var(--fdp-btn-primary-pressed);transform:scale(.98)}.fdp-btn-primary:disabled{background-image:var(--fdp-btn-primary-disabled);color:#ffffffb3;cursor:not-allowed;box-shadow:none}.fdp-btn-success{background:linear-gradient(135deg,var(--green) 0%,var(--green-bright) 100%);color:#fff}.fdp-btn-success:hover{box-shadow:0 0 30px var(--green),0 4px 20px #0006}.fdp-btn-danger{background:linear-gradient(135deg,var(--red) 0%,var(--red-dark) 100%);color:#fff}.fdp-btn-danger:hover{box-shadow:0 0 30px var(--red),0 4px 20px #0006}.fdp-btn-secondary{--fdp-btn-secondary-idle: var(--fdp-btn-coins-idle);--fdp-btn-secondary-hover: var(--fdp-btn-coins-hover);--fdp-btn-secondary-pressed: var(--fdp-btn-coins-pressed);--fdp-btn-secondary-disabled: var(--fdp-btn-coins-disabled);background-image:var(--fdp-btn-secondary-idle);background-repeat:no-repeat;background-position:center;background-size:100% 100%;color:#fff;border:none;min-height:56px;text-shadow:0 2px 6px rgba(0,0,0,.5)}.fdp-btn-secondary:hover{background-image:var(--fdp-btn-secondary-hover);box-shadow:0 0 20px #00f5ff66}.fdp-btn-secondary:active:not(:disabled){background-image:var(--fdp-btn-secondary-pressed);transform:scale(.98)}.fdp-btn-secondary:disabled{background-image:var(--fdp-btn-secondary-disabled);opacity:.7;cursor:not-allowed;box-shadow:none}.fdp-btn-secondary.fdp-header-exit,.fdp-btn-secondary.fdp-header-exit:hover,.fdp-btn-secondary.fdp-header-exit:active:not(:disabled),.fdp-btn-secondary.fdp-header-exit:disabled{background-image:var(--fdp-btn-purple);background-size:contain;background-color:transparent!important;border-radius:0;border:none;box-shadow:none;color:transparent;text-shadow:none;mix-blend-mode:multiply}.fdp-btn-secondary.fdp-btn-stats{--fdp-btn-secondary-idle: var(--fdp-btn-green);--fdp-btn-secondary-hover: var(--fdp-btn-green);--fdp-btn-secondary-pressed: var(--fdp-btn-green);--fdp-btn-secondary-disabled: var(--fdp-btn-green);background-size:contain;border-radius:0;border:none;box-shadow:none}.fdp-btn-secondary.fdp-btn-coins{--fdp-btn-secondary-idle: var(--fdp-btn-coins-idle);--fdp-btn-secondary-hover: var(--fdp-btn-coins-hover);--fdp-btn-secondary-pressed: var(--fdp-btn-coins-pressed);--fdp-btn-secondary-disabled: var(--fdp-btn-coins-disabled)}.fdp-btn-secondary.fdp-btn-bet{--fdp-btn-secondary-idle: var(--fdp-btn-bet-idle);--fdp-btn-secondary-hover: var(--fdp-btn-bet-hover);--fdp-btn-secondary-pressed: var(--fdp-btn-bet-pressed);--fdp-btn-secondary-disabled: var(--fdp-btn-bet-disabled)}.fdp-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;display:flex;align-items:flex-start;justify-content:center;z-index:120;padding:calc(var(--topbar-height) + var(--spacing-lg)) var(--spacing-lg) var(--spacing-xl);overflow-y:auto}.fdp-card{background:linear-gradient(135deg,#1a1a2ee6,#16213ee6);border:2px solid rgba(255,255,255,.1);border-radius:20px;padding:var(--spacing-xl);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:0 8px 32px #0006,inset 0 1px #ffffff1a;position:relative;overflow:hidden}.fdp-card:before{display:none}.fdp-rainbow-border>*{position:relative;z-index:1}@keyframes rainbowBorderSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.fdp-glass{background:#ffffff0d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1);border-radius:16px;position:relative}.fdp-glass:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,rgba(255,255,255,.1) 0%,transparent 50%,rgba(255,255,255,.05) 100%);border-radius:inherit;pointer-events:none}.fdp-coin-display{display:flex;align-items:center;gap:var(--spacing-sm);font-family:var(--number-font);font-size:1.5rem;font-weight:700;color:var(--gold);text-shadow:0 0 10px var(--gold)}.fdp-coin-icon{width:40px;height:40px;display:inline-block;background-image:var(--fdp-coin-image);background-repeat:no-repeat;background-position:center;background-size:contain;animation:coinRotate 3s ease-in-out infinite}.fdp-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.fdp-image-btn{min-width:clamp(160px,16vw,240px);min-height:clamp(90px,10vw,146px);padding:0;border-radius:0;background-repeat:no-repeat;background-position:center;background-size:contain;background-color:transparent!important;color:transparent;box-shadow:none;-moz-appearance:none;appearance:none;-webkit-appearance:none}.fdp-image-btn:before{display:none}@keyframes coinRotate{0%,to{transform:rotateY(0)}50%{transform:rotateY(180deg)}}.fdp-fade-in{animation:fadeIn .5s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.fdp-scale-in{animation:scaleIn .4s cubic-bezier(.175,.885,.32,1.275)}@keyframes scaleIn{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.fdp-shake{animation:shake .4s ease-in-out}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-10px)}75%{transform:translate(10px)}}@media (max-width: 768px){.fdp-jackpot-header{grid-template-columns:1fr;gap:var(--spacing-md)}.fdp-neon-title{font-size:2.5rem}.fdp-content{padding:var(--spacing-md)}.fdp-jackpot-container{background:linear-gradient(180deg,#080a1ee6,#080a1ecc,#080a1ee6),radial-gradient(circle at 20% 80%,rgba(102,126,234,.18) 0%,transparent 55%),radial-gradient(circle at 80% 20%,rgba(118,75,162,.18) 0%,transparent 55%),var(--fdp-bg-image-alt);background-size:cover;background-position:center}.fdp-btn{font-size:1rem;padding:var(--spacing-sm) var(--spacing-lg)}}.fdp-confetti{position:fixed;width:10px;height:10px;background:var(--gold);border-radius:50%;pointer-events:none;animation:confettiFall 3s ease-out forwards}@keyframes confettiFall{0%{transform:translateY(0) rotate(0);opacity:1}to{transform:translateY(100vh) rotate(720deg);opacity:0}}.fdp-spinner{width:50px;height:50px;border:4px solid rgba(255,255,255,.1);border-top-color:var(--gold);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.slot-machine-container{--sidepanel-gap: clamp(8px, 1.2vw, 18px);--sidepanel-ratio: .6667;--sidepanel-height-scale: .84;--rig-size: 86vw;--fdp-rig-offset: calc(var(--rig-size) * -.27);width:100%;max-width:none;margin:0 auto;padding:0;position:relative}.slot-machine-frame{background:transparent;border:none;padding:0;position:relative;margin-top:0}.slot-machine-scale{width:var(--rig-size);margin:0 auto;--rig-user-scale: 1.02;--rig-user-x: -145px;--rig-user-y: 0px;transform:translate(var(--rig-user-x),calc(var(--fdp-rig-offset) + var(--rig-user-y))) scale(var(--rig-user-scale));transform-origin:top center}.slot-machine-rig{position:relative;width:100%;aspect-ratio:1 / 1;margin:0;--fdp-wheel-font-size: calc(var(--rig-size) * .028);--fdp-controls-offset: -14%;--fdp-submit-x: 77.3%;--fdp-submit-y: 73%;--fdp-payline-y: 44.9%}.slot-machine-bezel{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:contain;pointer-events:none;z-index:6}.slot-machine-sidepanel{position:absolute;top:0;left:calc(100% + var(--sidepanel-gap));height:calc(var(--rig-size) * var(--sidepanel-height-scale) * var(--sidepanel-scale, 1));width:calc(var(--rig-size) * var(--sidepanel-ratio) * var(--sidepanel-height-scale) * var(--sidepanel-scale, 1));object-fit:contain;pointer-events:none;z-index:5;transform:translate(var(--sidepanel-x, 0px),var(--sidepanel-y, 0px))}.slot-machine-sidepanel-lights{position:absolute;top:0;left:calc(100% + var(--sidepanel-gap));height:calc(var(--rig-size) * var(--sidepanel-height-scale) * var(--sidepanel-scale, 1));width:calc(var(--rig-size) * var(--sidepanel-ratio) * var(--sidepanel-height-scale) * var(--sidepanel-scale, 1));transform:translate(var(--sidepanel-x, 0px),var(--sidepanel-y, 0px));pointer-events:none;z-index:6;overflow:hidden;mix-blend-mode:screen}.slot-machine-sidepanel-lights .slot-machine-light{opacity:.4;filter:brightness(1.15)}.slot-machine-left-arrow{position:absolute;left:50%;top:50%;transform:translate(var(--arrow-x, 0px),var(--arrow-y, 0px)) translateY(var(--arrow-lift, 0px)) scale(var(--arrow-scale, 1));width:clamp(44px,6vw,70px);height:clamp(44px,6vw,70px);border-radius:16px;border:none;background:transparent;box-shadow:none;cursor:pointer;z-index:9;-moz-appearance:none;appearance:none;-webkit-appearance:none}.slot-machine-left-arrow:disabled{pointer-events:none;--arrow-lift: 0px;filter:grayscale(.6);opacity:.6}.slot-machine-left-arrow-icon{font-size:clamp(1.6rem,3vw,2.2rem);font-weight:900;color:#f8fafc;text-shadow:0 2px 0 rgba(0,0,0,.6),0 4px 8px rgba(0,0,0,.45),0 0 12px rgba(0,245,255,.35);display:inline-block}.slot-machine-submit-label{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) translate(var(--submit-x, 0px),var(--submit-y, 0px)) translateY(var(--submit-lift, 0px)) scale(var(--submit-scale, 1));padding:0 2px;border-radius:6px;border:1px solid rgba(255,255,255,.85);background:transparent;color:#f8fafc;font-weight:800;letter-spacing:.2em;text-transform:uppercase;font-size:clamp(.9rem,2vw,1.1rem);z-index:20;text-shadow:0 2px 8px rgba(0,0,0,.45);cursor:pointer;-moz-appearance:none;appearance:none;-webkit-appearance:none;pointer-events:auto;display:inline-flex;align-items:center;justify-content:center;min-width:clamp(73px,7.3vw,113px);min-height:clamp(32px,3.2vw,52px);height:calc(clamp(32px,3.2vw,52px) - 8px)}.slot-machine-submit-label:disabled{pointer-events:none;--submit-lift: 0px}.slot-machine-action{--action-border: 1px solid rgba(255, 255, 255, .85);--action-glow: 0 0 12px rgba(255, 215, 120, .5);border:var(--action-border);box-shadow:var(--action-glow)}.slot-machine-action:disabled{opacity:.4;box-shadow:none}.slot-machine-rig:has(.slot-machine-submit-label.submit-ready:hover),.slot-machine-rig:has(.slot-machine-left-arrow:hover){--submit-lift: -6px;--arrow-lift: -6px}.slot-machine-rig:has(.slot-machine-left-arrow:disabled){--arrow-lift: 0px}.slot-machine-rig:has(.slot-machine-submit-label:disabled){--submit-lift: 0px}.slot-machine-submit-label.submit-ready:not(:disabled):hover{box-shadow:0 8px 18px #00000073,0 0 16px #ffd778bf}.slot-machine-submit-label.submit-ready:not(:disabled):active,.slot-machine-left-arrow:not(:disabled):active{--submit-lift: -2px;--arrow-lift: -2px}.slot-machine-submit-outline{position:absolute;left:var(--fdp-submit-x);top:var(--fdp-submit-y);width:calc(var(--rig-size) * .2 * var(--submit-outline-wide, 1) * .9);height:calc(var(--rig-size) * .13 * .9);transform:translate(-50%,-50%) translate(var(--submit-outline-x, 0px),var(--submit-outline-y, 0px)) scale(var(--submit-outline-scale, 1));border:none;border-radius:12px;background:transparent;z-index:8;pointer-events:none}.slot-machine-coin-badge{position:absolute;left:50%;top:50%;--coin-size: clamp(90px, 12vw, 140px);--coin-visual-scale: 1.56;width:calc(var(--coin-size) * var(--coin-scale, 1));height:calc(var(--coin-size) * var(--coin-scale, 1));background:none;display:grid;place-items:center;z-index:11;border-radius:50%;overflow:visible}.slot-machine-coin-badge-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:0;border:none;background-color:transparent;cursor:pointer;animation:coinIdlePulse 2.4s ease-in-out infinite;transition:transform .2s ease,filter .2s ease;display:grid;place-items:center;position:absolute;left:50%;top:50%;width:calc(var(--coin-size) * var(--coin-scale, 1));height:calc(var(--coin-size) * var(--coin-scale, 1));transform:translate(-50%,-50%) translate(var(--coin-x, 0px),var(--coin-y, 0px));z-index:12;border-radius:50%}.slot-machine-coin-badge:before{content:"";position:absolute;left:50%;top:50%;width:calc(var(--coin-size) * var(--coin-scale, 1) * var(--coin-visual-scale));height:calc(var(--coin-size) * var(--coin-scale, 1) * var(--coin-visual-scale));transform:translate(-50%,-50%);background-image:var(--global-coin-image);background-size:contain;background-repeat:no-repeat;background-position:center;pointer-events:none}.slot-machine-coin-badge-btn:disabled{cursor:default;filter:grayscale(.95) brightness(.45);opacity:.35;animation:none;pointer-events:none}.slot-machine-coin-badge-btn:not(:disabled):hover{transform:translate(-50%,-50%) translate(var(--coin-x, 0px),var(--coin-y, 0px)) translateY(-8px) scale(1.03);filter:drop-shadow(0 16px 24px rgba(0,0,0,.4)) drop-shadow(0 0 16px rgba(255,215,120,.7))}.slot-machine-rig--emoji-idle .slot-machine-coin-face{animation:coinRockFace 3s ease-in-out infinite;transform-origin:center}@keyframes coinRockFace{0%,70%,to{transform:translate(-50%,-50%) translateY(calc(-8% + 8px)) rotate(0)}75%{transform:translate(-50%,-50%) translateY(calc(-8% + 8px)) rotate(-6deg) scale(1.04)}85%{transform:translate(-50%,-50%) translateY(calc(-8% + 8px)) rotate(6deg) scale(1.04)}95%{transform:translate(-50%,-50%) translateY(calc(-8% + 8px)) rotate(-3deg)}}.slot-machine-container[data-debug-coins=true] .slot-machine-coin-badge-btn{outline:3px dashed rgba(255,80,80,.9);outline-offset:2px;background:#ff505026;box-shadow:0 0 0 2px #ff505073 inset}@keyframes coinIdlePulse{0%,to{filter:drop-shadow(0 4px 10px rgba(0,0,0,.35))}50%{filter:drop-shadow(0 8px 18px rgba(0,0,0,.45)) drop-shadow(0 0 12px rgba(255,215,120,.55))}}.slot-machine-coin-face{position:absolute;left:50%;top:50%;width:calc(var(--coin-size) * var(--coin-scale, 1) * var(--coin-visual-scale));height:calc(var(--coin-size) * var(--coin-scale, 1) * var(--coin-visual-scale));display:flex;flex-direction:column;align-items:center;justify-content:center;color:#3a1a00;text-shadow:0 1px 2px rgba(0,0,0,.35),0 0 10px rgba(255,215,120,.6);transform:translate(-50%,-50%) translateY(calc(-8% + 8px));mix-blend-mode:multiply;filter:drop-shadow(0 2px 2px rgba(255,235,150,.5));pointer-events:none;z-index:1}.slot-machine-coin-value{font-size:2.05rem;font-weight:800;letter-spacing:.02em;line-height:1;text-align:center}.slot-machine-coin-flight-layer{position:absolute;top:0;right:0;bottom:0;left:0;overflow:visible;pointer-events:none;z-index:30}.slot-machine-coin-flight{position:absolute;width:140px;height:140px;border-radius:50%;filter:drop-shadow(0 0 10px rgba(255,210,120,.35));will-change:transform,opacity}.slot-machine-coin-flight-img{width:100%;height:100%;object-fit:contain;display:block;pointer-events:none}.slot-machine-text-box{--textbox-lift: 0px;position:absolute;left:50%;top:50%;width:var(--textbox-width, 200px);height:var(--textbox-height, 48px);min-width:60px;min-height:24px;padding:2px 8px;border-radius:8px;border:2px solid rgba(155,246,255,.6);background:linear-gradient(180deg,#060a12e6,#060c1ce6);color:#c9f7ff;font-family:Special Elite,Letter Gothic Std,Courier New,Courier,monospace;font-weight:700;text-transform:uppercase;letter-spacing:.12em;font-size:clamp(.7rem,1.5vw,.95rem);display:flex;align-items:center;justify-content:center;text-align:center;overflow:hidden;white-space:normal;transform:translate(-50%,-50%) translate(var(--textbox-x, 0px),var(--textbox-y, 0px)) translateY(var(--textbox-lift));transform-origin:center;z-index:9;box-shadow:inset 0 0 0 1px #0effd21a,0 10px 24px #00000059;transition:transform .2s ease,box-shadow .2s ease;background-image:linear-gradient(180deg,#060a12eb,#060c1ce6),repeating-linear-gradient(to bottom,#ffffff0f,#ffffff0f 1px,#0000 4px,#0000 6px)}.slot-machine-text-box--button{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer}.slot-machine-text-box--button:disabled{cursor:default;opacity:.9}.slot-machine-text-box-a{border:none;background:transparent;background-image:none;box-shadow:none;padding:4px;pointer-events:none}.slot-machine-text-box-a--pulse .slot-machine-text-box__text{animation:goodLuckPulse 1.1s ease-in-out infinite;transform-origin:center}.slot-machine-text-box-a .slot-machine-text-box__text{white-space:pre-wrap;text-align:left}.slot-machine-text-box-a .slot-machine-text-box__text:after{content:"_";display:inline-block;margin-left:4px;color:#6ef6ff;animation:fdp-text-cursor .9s steps(1) infinite}.slot-machine-text-box-b{position:relative;white-space:nowrap;font-size:clamp(1.35rem,3.1vw,2.1rem);text-shadow:0 0 12px rgba(255,215,120,.6);padding:0 2px;z-index:20;pointer-events:auto;overflow:visible}.slot-machine-text-box-b .slot-machine-text-box__text{letter-spacing:.08em;position:relative;z-index:2}.slot-machine-info-btn{position:absolute;left:50%;top:50%;width:var(--info-size, 36px);height:var(--info-size, 36px);transform:translate(-50%,-50%) translate(var(--info-x, 0px),var(--info-y, 0px)) scale(var(--info-scale, 1));border-radius:50%;border:2px solid rgba(255,255,255,.8);background:#0a0e16e6;color:#f8fafc;font-size:1rem;line-height:1;cursor:pointer;z-index:20;display:grid;place-items:center;box-shadow:0 6px 14px #00000073}.slot-machine-tuner{position:fixed;left:16px;bottom:16px;background:#080c14eb;color:#e6f6ff;border:1px solid rgba(110,246,255,.3);border-radius:12px;padding:10px 12px;display:grid;gap:6px;z-index:1200;font-family:Special Elite,Letter Gothic Std,Courier New,Courier,monospace;font-size:.75rem}.slot-machine-tuner--info{left:220px}.slot-machine-tuner-title{font-size:.8rem;letter-spacing:.12em;text-transform:uppercase;margin-bottom:2px}.slot-machine-tuner label{display:flex;align-items:center;justify-content:space-between;gap:8px}.slot-machine-tuner input{width:80px;border-radius:6px;border:1px solid rgba(110,246,255,.4);background:#050a12e6;color:#e8f6ff;padding:2px 6px}.slot-machine-baseline-btn{position:fixed;left:16px;bottom:16px;border-radius:12px;border:1px solid rgba(110,246,255,.4);background:#080c14eb;color:#e6f6ff;padding:8px 12px;font-family:Special Elite,Letter Gothic Std,Courier New,Courier,monospace;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;z-index:1200}.slot-machine-multiplier-overlay{position:fixed;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;background:radial-gradient(circle,#0a0c1a73,#04060ed9);z-index:1300;pointer-events:none}.slot-machine-multiplier-card{position:relative;padding:18px 32px;border-radius:16px;border:2px solid rgba(255,215,120,.85);background:linear-gradient(135deg,#140a28eb,#0a1e3ceb);box-shadow:0 0 24px #ffd77866,0 0 48px #00f5ff4d;text-align:center;font-family:Luckiest Guy,Poppins,sans-serif;color:#fff6cf;animation:multiplierPop .4s ease-out,multiplierPulse 1.4s ease-in-out infinite}.slot-machine-multiplier-burst{position:absolute;top:-18px;right:-18px;bottom:-18px;left:-18px;border-radius:20px;background:conic-gradient(from 90deg,#ffd77880,#00f5ff66,#ff6ebe66,#ffd77880);filter:blur(12px);opacity:.6;z-index:-1;animation:multiplierSpin 2.2s linear infinite}.slot-machine-multiplier-title{font-size:1.6rem;letter-spacing:.08em;text-transform:uppercase}.slot-machine-multiplier-subtitle{margin-top:6px;font-size:.95rem;letter-spacing:.12em;text-transform:uppercase}@keyframes multiplierPop{0%{transform:scale(.85);opacity:0}to{transform:scale(1);opacity:1}}@keyframes multiplierPulse{0%,to{transform:scale(1)}50%{transform:scale(1.03)}}@keyframes multiplierSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.slot-machine-text-box__text{display:inline-block;padding-left:2px;text-shadow:0 0 6px rgba(0,255,220,.6),0 0 14px rgba(0,255,220,.3)}@keyframes coinsShimmer{0%,to{color:#f8e8a0}50%{color:#fff6c7}}@keyframes balanceGlow{0%,to{opacity:.35;transform:scale(.98)}50%{opacity:.75;transform:scale(1.04)}}@keyframes balanceFlash{0%,to{color:#f8e8a0;text-shadow:0 0 6px rgba(255,246,199,.7),0 0 16px rgba(255,220,120,.5),0 0 24px rgba(255,255,255,.35)}50%{color:#fff9df;text-shadow:0 0 10px rgba(255,255,255,.9),0 0 22px rgba(255,230,140,.7),0 0 32px rgba(255,255,255,.55)}}@keyframes balanceSparkle{0%,to{opacity:.15;transform:translateY(2px)}40%{opacity:.5;transform:translateY(-1px)}70%{opacity:.3;transform:translateY(1px)}}.slot-machine-text-box__cursor{display:inline-block;margin-left:4px;color:#6ef6ff;animation:fdp-text-cursor .9s steps(1) infinite}@keyframes fdp-text-cursor{0%,49%{opacity:1}50%,to{opacity:0}}@keyframes goodLuckPulse{0%,to{transform:scale(1)}50%{transform:scale(1.3)}}.slot-machine-lights{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:7}.slot-machine-light-panels{position:absolute;left:50%;top:50%;width:var(--panel-w, 320px);height:var(--panel-h, 220px);transform:translate(-50%,-50%) translate(var(--panel-x, 0px),var(--panel-y, 0px)) scale(var(--panel-scale, 1));pointer-events:none;z-index:7}.slot-machine-light{position:absolute;left:var(--light-x);top:var(--light-y);width:var(--light-w);height:var(--light-h);transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle,rgba(255,255,230,1) 0%,rgba(255,220,120,.95) 38%,rgba(255,170,50,.55) 70%,transparent 80%);box-shadow:0 0 16px #ffeb96,0 0 40px #ffbe50d9,0 0 70px #ff8c288c;opacity:.78;filter:brightness(1.7);mix-blend-mode:screen}.slot-machine-light:after{content:"";position:absolute;top:-120%;right:-120%;bottom:-120%;left:-120%;border-radius:50%;background:radial-gradient(circle,rgba(255,230,160,.7) 0%,rgba(255,170,70,.45) 45%,transparent 72%);filter:blur(14px);opacity:.6;pointer-events:none}.slot-machine-lights.chase-forward .slot-machine-light,.slot-machine-sidepanel-lights.chase-forward .slot-machine-light,.slot-machine-light-panels.chase-forward .slot-machine-light{animation:lightChase 2.2s steps(1,end) infinite;animation-delay:var(--light-delay)}.slot-machine-lights.chase-back .slot-machine-light,.slot-machine-sidepanel-lights.chase-back .slot-machine-light,.slot-machine-light-panels.chase-back .slot-machine-light{animation:lightChase 2.2s steps(1,end) infinite;animation-delay:var(--light-delay-reverse)}.slot-machine-lights.blink-slow .slot-machine-light,.slot-machine-sidepanel-lights.blink-slow .slot-machine-light,.slot-machine-light-panels.blink-slow .slot-machine-light{animation:lightBlink 1.05s ease-in-out infinite}.slot-machine-lights.blink-fast .slot-machine-light,.slot-machine-sidepanel-lights.blink-fast .slot-machine-light,.slot-machine-light-panels.blink-fast .slot-machine-light{animation:lightBlink .45s ease-in-out infinite}.slot-machine-lights.twinkle .slot-machine-light,.slot-machine-sidepanel-lights.twinkle .slot-machine-light,.slot-machine-light-panels.twinkle .slot-machine-light{animation:marqueeGlow 2.6s ease-in-out infinite;animation-delay:var(--light-delay-twinkle);opacity:.9;filter:brightness(1.1)}.slot-machine-lights.twinkle .slot-machine-light:after,.slot-machine-sidepanel-lights.twinkle .slot-machine-light:after,.slot-machine-light-panels.twinkle .slot-machine-light:after{opacity:.75;animation:marqueeRadiate 3s ease-in-out infinite;animation-delay:var(--light-delay-twinkle)}.slot-machine-light-panels.solid .slot-machine-light,.slot-machine-light-panels.solid .slot-machine-light:after{animation:none!important;opacity:1;filter:brightness(1.6)}@keyframes marqueeGlow{0%,to{opacity:.6;transform:translate(-50%,-50%) scale(.98)}50%{opacity:1;transform:translate(-50%,-50%) scale(1.22)}}@keyframes marqueeRadiate{0%,to{opacity:.35;transform:scale(.95)}50%{opacity:.7;transform:scale(1.15)}}@keyframes lightChase{0%{opacity:1;filter:brightness(1.6)}20%{opacity:.4;filter:brightness(.95)}to{opacity:.4;filter:brightness(.95)}}@keyframes lightBlink{0%,to{opacity:.08;filter:brightness(.35)}50%{opacity:1;filter:brightness(1.7)}}.rig-window{position:absolute;overflow:visible}.rig-window-left{left:23.730469%;top:31.591797%;width:13.525391%;height:26.611328%}.rig-window-middle{left:41.992188%;top:31.640625%;width:13.476563%;height:26.464844%}.rig-window-right{left:60.302734%;top:31.591797%;width:14.013672%;height:26.708984%}.slot-machine-payline-circle{position:absolute;left:50%;top:50%;width:86%;height:30%;transform:translate(-50%,-50%);border-radius:999px;border:6px solid rgba(30,150,90,.75);background:#1e965a33;box-shadow:0 0 14px #1e965a80;animation:paylineCorrectPulse 1.6s ease-in-out infinite;z-index:4;pointer-events:none}.slot-machine-payline-circle.is-wrong{border-color:#d72d2dcc;background:#d72d2d33;box-shadow:0 0 16px #d72d2d8c;animation:paylineWrongPulse 1.2s ease-in-out infinite}@keyframes paylineCorrectPulse{0%,to{transform:translate(-50%,-50%) scale(1);opacity:.9}50%{transform:translate(-50%,-50%) scale(1.05);opacity:1}}@keyframes paylineWrongPulse{0%,to{transform:translate(-50%,-50%) scale(1)}50%{transform:translate(-50%,-50%) scale(1.08)}}.slot-machine-rig .wheel-component{width:100%;height:100%;position:relative}.slot-machine-rig .wheel-window{width:100%;height:100%;border:none;border-radius:0;background:transparent;box-shadow:none}.slot-machine-rig .wheel-window-fraction{background:linear-gradient(180deg,#ffd28c,#ffb347 45%,#f09b2d)}.slot-machine-rig .wheel-window-decimal{background:linear-gradient(180deg,#7fe7e7,#2ec4c4 45%,#1aa3a3)}.slot-machine-rig .wheel-window-percent{background:linear-gradient(180deg,#d8ff7a,#b7f339 45%,#8ad61a)}.slot-machine-rig .wheel-window:before{display:none}.slot-machine-rig .wheel-values-container{height:100%}.slot-machine-rig .wheel-value{font-size:clamp(1.1rem,1.7vw,2rem);color:var(--fdp-wheel-text);text-shadow:none;background:transparent;font-family:var(--fdp-wheel-font)}.slot-machine-rig .wheel-value-payline{font-size:clamp(1.4rem,2.5vw,2.7rem);box-shadow:none;background:transparent;font-family:var(--fdp-wheel-font)}.slot-machine-rig .wheel-controls{position:absolute;left:50%;bottom:var(--fdp-controls-offset);transform:translate(-50%);gap:8px;z-index:12}.slot-machine-rig .wheel-controls,.slot-machine-submit-wrap{pointer-events:auto}.slot-machine-bezel{pointer-events:none}.slot-machine-rig .wheel-control-btn{width:calc(var(--rig-size) * .085);height:calc(var(--rig-size) * .07);background-size:135% 135%;filter:drop-shadow(0 2px 6px rgba(0,0,0,.4)) drop-shadow(0 0 10px rgba(255,196,64,.7));animation:none}.slot-machine-rig .wheel-control-btn:after{content:"";position:absolute;top:-18%;right:-18%;bottom:-18%;left:-18%;border-radius:12px;background:radial-gradient(circle,rgba(255,230,120,.6) 0%,rgba(255,160,60,.25) 45%,transparent 70%);opacity:.35;filter:blur(6px);animation:arrowHalo 1.8s ease-in-out infinite;pointer-events:none}.slot-machine-rig .wheel-control-up{animation:arrowNudgeUp 1.2s ease-in-out infinite}.slot-machine-rig .wheel-control-down{animation:arrowNudgeDown 1.2s ease-in-out infinite}@keyframes arrowNudgeUp{0%,to{transform:translateY(0) rotate(var(--arrow-rotate)) scale(1)}50%{transform:translateY(-6px) rotate(var(--arrow-rotate)) scale(1.05)}}@keyframes arrowNudgeDown{0%,to{transform:translateY(0) rotate(var(--arrow-rotate)) scale(1)}50%{transform:translateY(6px) rotate(var(--arrow-rotate)) scale(1.05)}}@keyframes arrowHalo{0%,to{opacity:.35;transform:scale(.95)}50%{opacity:.85;transform:scale(1.08)}}.slot-machine-payline{position:absolute;left:23.7%;top:var(--fdp-payline-y);width:50.6%;height:7.8%;transform:translateY(-50%);border:var(--action-border);border-radius:8px;box-shadow:var(--action-glow);background:transparent;mix-blend-mode:screen;pointer-events:none;z-index:8}.slot-machine-rig--locked .rig-window,.slot-machine-rig--locked .slot-machine-submit-outline,.slot-machine-rig--locked .slot-machine-left-arrow,.slot-machine-rig--locked .wheel-controls,.slot-machine-rig--locked .slot-machine-payline,.slot-machine-rig--controls-disabled .slot-machine-left-arrow,.slot-machine-rig--controls-disabled .wheel-controls{opacity:.35;filter:grayscale(.6);pointer-events:none}.slot-machine-rig--partial .wheel-controls,.slot-machine-rig--partial .slot-machine-left-arrow,.slot-machine-rig--partial .slot-machine-submit-label,.slot-machine-left-arrow--disabled{opacity:.35;filter:grayscale(.6)}.slot-machine-rig--emoji-idle .wheel-window{background:linear-gradient(135deg,#1f3c8cd9,#0ca09bbf,#ffaf5aa6);background-size:140% 140%;animation:emojiDrumGlow 6s ease-in-out infinite}@keyframes emojiDrumGlow{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.slot-machine-debug-box{position:absolute;left:50%;top:50%;width:var(--debug-w, 320px);height:var(--debug-h, 220px);transform:translate(-50%,-50%) translate(var(--debug-x, 0px),var(--debug-y, 0px)) scale(var(--debug-scale, 1));border:2px dashed rgba(255,150,80,.9);border-radius:22px 22px 12px 12px;box-shadow:0 0 14px #ffb45a66;pointer-events:none;z-index:9}.slot-machine-deposit-box{position:absolute;left:50%;top:50%;width:var(--deposit-w, 200px);height:var(--deposit-h, 120px);transform:translate(-50%,-50%) translate(var(--deposit-x, 0px),var(--deposit-y, 0px)) scale(var(--deposit-scale, 1));border:none;border-radius:16px;background:transparent;box-shadow:none;pointer-events:none;z-index:8}.slot-machine-light--panel{width:var(--light-w, 10px);height:var(--light-h, 10px);animation:marqueeGlow 2.4s ease-in-out infinite;opacity:.85;filter:brightness(1.2);box-shadow:0 0 6px #ffeb96a6,0 0 14px #ffbe5073}.slot-machine-light--panel:after{top:-80%;right:-80%;bottom:-80%;left:-80%;opacity:.25;filter:blur(8px)}.rig-window-locked .wheel-window{box-shadow:0 0 16px #ffd70099,0 0 34px #ff780059}.slot-machine-submit-btn:not(:disabled):hover{filter:none}.slot-machine-submit-btn:not(:disabled):active{filter:none}.slot-machine-submit-wrap{--submit-size: calc(var(--rig-size) * .2);position:absolute;left:var(--fdp-submit-x);top:var(--fdp-submit-y);transform:translate(-50%,-50%);z-index:20}.slot-machine-submit-wrap:before{content:"";position:absolute;top:-8%;right:-10%;bottom:-8%;left:-10%;border-radius:20px;background:radial-gradient(circle,rgba(255,255,255,.22) 0%,rgba(72,219,251,.15) 35%,transparent 70%);opacity:.6;filter:blur(10px);animation:none;pointer-events:none}.slot-machine-submit-btn{min-width:var(--submit-size);min-height:calc(var(--submit-size) * .65);padding:0;border:none;border-radius:0;background-image:var(--fdp-btn-blue);background-repeat:no-repeat;background-position:center;background-size:contain;background-color:transparent;color:transparent;cursor:pointer;box-shadow:none;-moz-appearance:none;appearance:none;-webkit-appearance:none;position:relative;transform:translateY(-2px);animation:none}.slot-machine-submit-btn:disabled{opacity:.6;cursor:not-allowed;animation:none;transform:none}@keyframes submitPulse{0%,to{transform:translateY(-2px) scale(1)}50%{transform:translateY(-6px) scale(1.08)}}@keyframes submitWrapGlow{0%,to{opacity:.45;transform:scale(.98)}50%{opacity:.85;transform:scale(1.05)}}@media (max-width: 768px){.slot-machine-submit-wrap{left:67.5%}.slot-machine-rig .wheel-controls{bottom:-20%}}.wheel-component{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-sm);background:var(--fdp-wheel-bg);font-size:var(--fdp-wheel-font-size, 2.3rem)}.wheel-window{width:240px;height:600px;border:2px solid transparent;border-radius:16px;background:var(--fdp-wheel-bg);background-image:var(--fdp-wheel-bg-image);background-size:cover;background-position:center;overflow:hidden;position:relative;box-shadow:none}.wheel-window:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-repeat:no-repeat;background-position:center;background-size:contain;pointer-events:none;z-index:1}.wheel-window:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,rgba(255,255,255,.22) 0%,rgba(255,255,255,.05) 35%,transparent 60%),linear-gradient(0deg,rgba(0,0,0,.15) 0%,transparent 35%,rgba(255,255,255,.06) 70%,transparent 100%);mix-blend-mode:screen;pointer-events:none;z-index:2}.wheel-window>*{position:relative;z-index:2}.wheel-component.wheel-wheel1 .wheel-spin-strip{animation-duration:.7s}.wheel-component.wheel-wheel2 .wheel-spin-strip{animation-duration:.8s}.wheel-component.wheel-wheel3 .wheel-spin-strip{animation-duration:.9s}.wheel-lock-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none;z-index:3}.wheel-locked-settled .wheel-value{opacity:0;transition:opacity .35s ease}.wheel-locked-settled .wheel-value-payline{opacity:1;color:#000;text-shadow:0 0 6px rgba(255,210,120,.65),0 0 12px rgba(255,150,40,.35);filter:none;animation:lockedGlow 1.8s ease-in-out infinite}.wheel-locked .wheel-value{transition:opacity .35s ease}@keyframes lockedGlow{0%,to{transform:scale(1)}50%{transform:scale(1.06)}}.wheel-window-fraction:before{background-image:none}.wheel-window-decimal:before{background-image:none}.wheel-window-percent:before{background-image:none}.wheel-window-fraction{background:#ffb347}.wheel-window-decimal{background:#2ec4c4}.wheel-window-percent{background:#b7f339}.wheel-spinning{width:100%;height:100%;display:flex;align-items:center;justify-content:center;filter:blur(4px)}.wheel-emoji-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-sm);animation:emojiSpin .5s linear infinite}@keyframes emojiSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.wheel-emoji{font-size:2rem;text-align:center;animation:emojiBounce .6s ease-in-out infinite}@keyframes emojiBounce{0%,to{transform:scale(1)}50%{transform:scale(1.2)}}.wheel-spin-window{width:100%;height:100%;overflow:hidden;filter:blur(1px);transition:filter .2s ease}.wheel-spin-strip{display:flex;flex-direction:column;height:200%;animation:wheelSpin .8s linear infinite}.wheel-spin-strip .wheel-value{height:calc(100% / 6);flex:0 0 calc(100% / 6)}@keyframes wheelSpin{0%{transform:translateY(-50%)}to{transform:translateY(0)}}.wheel-values-container{display:grid;grid-template-rows:repeat(3,1fr);height:100%;justify-content:center;transform:translateY(calc(var(--wheel-offset, 0) * 33.333%));transition:transform .22s ease}.wheel-values-container.resetting{transition:none}.wheel-value{height:auto;display:flex;align-items:center;justify-content:center;font-family:var(--fdp-wheel-font);font-size:1em;font-weight:700;color:var(--fdp-wheel-text);border:none;transition:all .3s ease;position:relative;text-shadow:none;background:transparent;font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}.wheel-value .ugmt-emoji{font-size:1.5em}.wheel-value-payline{font-size:1.18em;height:auto;border:none;z-index:10;background:transparent;font-variant-numeric:tabular-nums;font-feature-settings:"tnum";box-shadow:none}.wheel-value-blur{filter:blur(2px);opacity:.6}.wheel-fraction{display:inline-flex;flex-direction:column;align-items:center;gap:2px;font-family:var(--fdp-wheel-font)}.wheel-fraction-numerator,.wheel-fraction-denominator{display:block;line-height:1}.wheel-fraction-line{display:block;width:100%;height:2px;background:currentColor;margin:2px 0}.wheel-repeating{position:relative;display:inline-block;font-family:var(--fdp-wheel-font)}.wheel-window-spinning .wheel-spin-window{filter:blur(4px)}.wheel-repeating-digit{position:relative}.wheel-repeating-digit:after{content:"";position:absolute;top:-2px;left:0;right:0;height:2px;background:currentColor}.wheel-controls{display:flex;gap:var(--spacing-sm);justify-content:center;position:relative;z-index:6}.wheel-control-btn{--arrow-rotate: 0deg;width:56px;height:50px;border:none;border-radius:0;background-repeat:no-repeat;background-position:center;background-size:contain;color:transparent;font-size:1rem;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease;box-shadow:none;position:relative;background-color:transparent}.wheel-control-btn:hover:not(:disabled){background-image:var(--fdp-btn-arrow);box-shadow:none}.wheel-control-btn:active:not(:disabled){transform:scale(.9);background-image:var(--fdp-btn-arrow)}.wheel-control-btn:disabled{opacity:.3;cursor:not-allowed;background-image:var(--fdp-btn-arrow)}.wheel-control-up{animation:arrowPulse 2s ease-in-out infinite;background-image:var(--fdp-btn-arrow)}.wheel-control-down{--arrow-rotate: 180deg;animation:arrowPulse 2s ease-in-out infinite;animation-delay:1s;background-image:var(--fdp-btn-arrow)}.wheel-control-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}@keyframes arrowPulse{0%,to{transform:translateY(0) rotate(var(--arrow-rotate))}50%{transform:translateY(-3px) rotate(var(--arrow-rotate))}}@media (max-width: 968px){.wheel-window{width:220px;height:520px}.wheel-value{font-size:1.7rem}.wheel-value-payline{font-size:2rem}}@media (max-width: 768px){.wheel-window{width:210px;height:460px}.wheel-value{font-size:1.5rem}.wheel-value-payline{font-size:1.8rem}.wheel-control-btn{width:50px;height:44px}}.bet-selector{width:100%;max-width:900px;animation:fadeIn .5s ease-out}.bet-selector-card{width:100%;max-width:900px;max-height:none;overflow:visible;padding:0;position:relative}.bet-selector-card.fdp-card{padding:0}.bet-selector-header{display:flex;align-items:center;justify-content:flex-end;margin-bottom:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-sm) 0}.bet-info-btn{border:none;background:#ffffff1a;color:#fff;border-radius:999px;width:34px;height:34px;cursor:pointer;font-size:1.1rem;margin-left:auto}.bet-info-btn:hover{background:#fff3}.bet-selector-info{text-align:center;color:#ffffffbf;font-size:.95rem;margin:var(--spacing-sm) 0 var(--spacing-lg);padding-left:var(--spacing-sm)}.bet-selector-info p{margin-bottom:var(--spacing-sm)}.bet-selector-payout-title{margin-top:var(--spacing-sm);color:#ffffffe6;font-weight:700}.bet-selector-info-list{list-style:none;padding:0;margin:0;display:grid;gap:var(--spacing-xs);text-align:left}.bet-selector-info-list li{display:flex;gap:var(--spacing-sm);align-items:flex-start;color:#ffffffc7}.bet-selector-info-list strong{color:var(--gold);text-shadow:0 0 10px rgba(255,215,0,.35)}.bet-balance-display{display:flex;justify-content:center;align-items:center;gap:var(--spacing-md);padding:0;background:#ffffff0d;border-radius:12px;margin:var(--spacing-sm) var(--spacing-md);border:1px solid rgba(255,255,255,.1)}.bet-balance-label{font-size:1.4rem;color:#ffffffb3}.bet-balance-value{font-size:2.2rem}.bet-balance-display .fdp-coin-icon{width:56px;height:56px;animation:none}.bet-options-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:0;margin-bottom:var(--spacing-sm);justify-items:center}.bet-amount-btn{--bet-coin-size: 293px;background:transparent;border:none;border-radius:50%;padding:0;cursor:pointer;transition:all .2s ease;text-align:center;color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;width:var(--bet-coin-size);height:var(--bet-coin-size);position:relative;margin-inline:-14px;transform:translate(0);opacity:1;background-image:var(--global-coin-image);background-repeat:no-repeat;background-position:center;background-size:140%;animation:none}.bet-selector-card.fdp-card:before{display:none}.bet-selector-card.no-intro .bet-amount-btn{animation:coinPulseIdle 2.8s ease-in-out infinite!important}.bet-selector-card.no-intro .bet-amount-btn:nth-child(1),.bet-selector-card.no-intro .bet-amount-btn:nth-child(2),.bet-selector-card.no-intro .bet-amount-btn:nth-child(3),.bet-selector-card.no-intro .bet-amount-btn:nth-child(4),.bet-selector-card.no-intro .bet-amount-btn:nth-child(5){animation-delay:0s!important}.bet-balance-display .fdp-coin-icon{animation:none}.bet-amount-btn:hover:not(:disabled){transform:translateY(-4px) scale(1.03);filter:drop-shadow(0 15px 27px rgba(0,0,0,.35)) drop-shadow(0 0 18px rgba(255,215,0,.6))}.bet-amount-btn.selected{filter:drop-shadow(0 12px 22px rgba(0,0,0,.4)) drop-shadow(0 0 18px rgba(255,215,0,.85));transform:translateY(-6px) scale(1.05)}.bet-amount-btn:disabled{opacity:.4;cursor:not-allowed;animation:none}.bet-coin-face{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;color:#3a1a00;text-shadow:0 1px 2px rgba(0,0,0,.35),0 0 10px rgba(255,215,120,.6);transform:translateY(calc(-8% + 8px));mix-blend-mode:multiply;filter:drop-shadow(0 2px 2px rgba(255,235,150,.5))}.bet-coin-value{font-size:2.7rem;font-weight:800;letter-spacing:.02em;line-height:1;text-align:center}.bet-amount-warning{font-size:.75rem;color:var(--red);font-weight:700;position:absolute;bottom:6px}.bet-coin-btn:nth-child(5){animation:coinRollIn50 3.2s linear 0s both,coinBump50 4.4s ease-in-out .6s forwards,coinPulseIdle 2.8s ease-in-out infinite 3.6s}.bet-coin-btn:nth-child(4){animation:coinRollIn25 2.6s linear both .5s,coinPulseIdle 2.8s ease-in-out infinite 3.4s}.bet-coin-btn:nth-child(3){animation:coinRollIn10 2.4s linear both 1s,coinPulseIdle 2.8s ease-in-out infinite 3.3s}.bet-coin-btn:nth-child(2){animation:coinRollIn5 2.2s linear both 1.5s,coinPulseIdle 2.8s ease-in-out infinite 3.2s}.bet-coin-btn:nth-child(1){animation:coinRollIn1 2s linear both 2s,coinPulseIdle 2.8s ease-in-out infinite 3.1s}@keyframes coinFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes coinRollIn{0%{transform:translate(-120vw) rotate(-720deg) scale(.9);opacity:0}70%{transform:translate(12px) rotate(40deg) scale(1.02);opacity:1}85%{transform:translate(-6px) rotate(-10deg) scale(1)}to{transform:translate(0) rotate(0) scale(1);opacity:1}}@keyframes coinRollIn50{0%{transform:translate(-120vw) rotate(-720deg) scale(.92);opacity:0}55%{transform:translate(-12px) rotate(-120deg) scale(.98);opacity:1}85%{transform:translate(6px) rotate(-30deg) scale(1.02)}to{transform:translate(0) rotate(0) scale(1);opacity:1}}@keyframes coinRollIn25{0%{transform:translate(-120vw) rotate(-660deg) scale(.94);opacity:0}65%{transform:translate(10px) rotate(-60deg) scale(1.01);opacity:1}to{transform:translate(0) rotate(0) scale(1)}}@keyframes coinRollIn10{0%{transform:translate(-120vw) rotate(-620deg) scale(.94);opacity:0}65%{transform:translate(8px) rotate(-40deg) scale(1.01);opacity:1}to{transform:translate(0) rotate(0) scale(1)}}@keyframes coinRollIn5{0%{transform:translate(-120vw) rotate(-580deg) scale(.95);opacity:0}65%{transform:translate(6px) rotate(-30deg) scale(1.01);opacity:1}to{transform:translate(0) rotate(0) scale(1)}}@keyframes coinRollIn1{0%{transform:translate(-120vw) rotate(-520deg) scale(.96);opacity:0}65%{transform:translate(4px) rotate(-20deg) scale(1.01);opacity:1}to{transform:translate(0) rotate(0) scale(1)}}@keyframes coinPulseIdle{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes coinBump50{0%,14%{transform:translateY(0) scale(1)}18%{transform:translateY(-8px) scale(1.03)}24%{transform:translateY(3px) scale(.99)}32%{transform:translateY(-6px) scale(1.02)}40%{transform:translateY(2px) scale(1)}52%{transform:translateY(-5px) scale(1.02)}60%{transform:translateY(2px) scale(1)}72%{transform:translateY(-4px) scale(1.01)}80%{transform:translateY(2px) scale(1)}to{transform:translateY(0) scale(1)}}@keyframes coinWobble{0%,to{transform:rotate(0)}50%{transform:rotate(4deg)}}@keyframes coinRock{0%,to{transform:translate(0) rotate(0) scale(1)}25%{transform:translate(-12px) rotate(-4deg) scale(1.02)}50%{transform:translate(12px) rotate(4deg) scale(1.02)}75%{transform:translate(-8px) rotate(-2deg) scale(1.01)}}@keyframes coinPulse{0%,to{transform:scale(1)}50%{transform:scale(1.06)}}@keyframes coinSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes coinBob{0%,to{transform:translateY(0)}50%{transform:translateY(-14px)}}@keyframes coinOrbit{0%{transform:translate(-10px) translateY(0)}50%{transform:translate(10px) translateY(-6px)}to{transform:translate(-10px) translateY(0)}}@keyframes coinRattle{0%,70%{transform:translateY(0) rotate(0) scale(1)}75%{transform:translateY(0) rotate(2deg) scale(1.01)}82%{transform:translateY(0) rotate(-2deg) scale(1.01)}88%{transform:translateY(0) rotate(1deg) scale(1.01)}to{transform:translateY(0) rotate(0) scale(1)}}.bet-selector-actions{display:flex;justify-content:center;gap:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid rgba(255,255,255,.1)}.bet-selector-hint{color:#fff9;font-size:.95rem}@media (max-width: 768px){.bet-selector-title{font-size:1.5rem}.bet-balance-display{flex-direction:column;text-align:center}.bet-selector-actions{flex-direction:column}}.stats-panel-card{width:100%;max-width:1000px;max-height:88vh;overflow-y:auto;padding:12px}.stats-panel-card.fdp-card{padding:12px}.stats-panel-card.fdp-card:before{display:none}.stats-panel-title{font-family:var(--heading-font);font-size:1.6rem;font-weight:700;letter-spacing:.1em;color:var(--neon-cyan);text-align:center;margin-bottom:var(--spacing-md);text-transform:uppercase;text-shadow:0 0 20px var(--neon-cyan)}.stats-overview{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:var(--spacing-sm);margin-bottom:var(--spacing-lg)}.stats-overview-item{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm);background:#ffffff0d;border-radius:12px;border:1px solid rgba(255,255,255,.1);transition:all .3s ease}.stats-overview-item:hover{background:#ffffff1a;transform:translateY(-2px);box-shadow:0 4px 20px #00f5ff33}.stats-overview-icon{font-size:1.6rem;filter:drop-shadow(0 0 10px currentColor)}.stats-overview-content{flex:1}.stats-overview-label{font-size:.75rem;color:#fff9;text-transform:uppercase;letter-spacing:.1em;margin-bottom:2px}.stats-overview-value{font-family:var(--number-font);font-size:1.35rem;font-weight:700;color:var(--gold);text-shadow:0 0 10px var(--gold)}.stats-mastery-section{margin-bottom:var(--spacing-lg)}.stats-section-title{font-family:var(--heading-font);font-size:1.1rem;font-weight:700;letter-spacing:.08em;color:#fff;text-align:center;margin-bottom:var(--spacing-sm);text-transform:uppercase}.stats-mastery-header{display:grid;grid-template-columns:2.2fr 1fr 1fr 1.2fr 1fr 1fr 1.2fr;gap:var(--spacing-sm);padding:var(--spacing-sm);background:#ffffff1a;border-radius:8px;margin-bottom:var(--spacing-sm);font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:#fffc}.stats-mastery-header-item{text-align:center}.stats-mastery-header-item.sortable{cursor:pointer;transition:color .3s ease}.stats-mastery-header-item.sortable:hover{color:var(--neon-cyan)}.stats-mastery-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.stats-mastery-row{display:grid;grid-template-columns:2.2fr 1fr 1fr 1.2fr 1fr 1fr 1.2fr;gap:var(--spacing-sm);align-items:center;padding:var(--spacing-sm);background:#ffffff0d;border-radius:12px;border:1px solid rgba(255,255,255,.1);transition:all .3s ease}.stats-mastery-row:hover{background:#ffffff1a;border-color:var(--neon-cyan);box-shadow:0 4px 15px #00f5ff33}.stats-mastery-label{font-size:.95rem;color:#fff;font-weight:500}.stats-mastery-percent{font-family:var(--number-font);font-size:1rem;font-weight:700;text-align:center}.stats-mastery-status{font-size:.85rem;font-weight:600;text-align:center;display:flex;align-items:center;justify-content:center;gap:4px}.stats-mastery-details{font-family:var(--number-font);font-size:.85rem;color:#ffffffb3;text-align:center}.stats-legend{display:flex;justify-content:center;gap:var(--spacing-md);margin-top:var(--spacing-sm);padding:var(--spacing-sm);background:#ffffff0d;border-radius:8px;flex-wrap:wrap}.stats-legend-item{display:flex;align-items:center;gap:var(--spacing-sm);font-size:.9rem;color:#fffc}.stats-legend-icon{font-size:1.2rem}.stats-panel-actions{display:flex;justify-content:center;padding-top:var(--spacing-sm);border-top:1px solid rgba(255,255,255,.1)}.stats-close-btn{font-family:var(--heading-font);font-size:1rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:10px 18px;border-radius:10px;border:2px solid rgba(255,255,255,.3);background:#ffffff14;color:#f8fafc;cursor:pointer;transition:all .2s ease}.stats-close-btn:hover{border-color:#00f5ff99;box-shadow:0 0 16px #00f5ff59}@media (max-width: 968px){.stats-mastery-header,.stats-mastery-row{grid-template-columns:1.6fr 1fr 1fr 1.1fr 1fr 1fr 1.1fr;font-size:.7rem}.stats-mastery-label{font-size:.85rem}}@media (max-width: 768px){.stats-panel-title{font-size:1.5rem}.stats-overview{grid-template-columns:1fr}.stats-mastery-header{display:none}.stats-mastery-row{grid-template-columns:1fr 1fr;gap:var(--spacing-xs) var(--spacing-sm);text-align:center}.stats-mastery-label{font-size:1rem;grid-column:1 / -1}.stats-legend{flex-direction:column;align-items:center;gap:var(--spacing-sm)}}.home-screen{width:100%;max-width:1200px;display:flex;flex-direction:column;gap:var(--spacing-xl);animation:fadeIn .6s ease-out;justify-content:center;min-height:60vh;position:relative}.home-modes-container{display:flex;justify-content:center;align-items:center;gap:60px;flex-wrap:wrap;min-width:640px}.home-mode-card{--home-mode-size: 280px;--home-mode-content-scale: 1.275;--home-mode-icon-size: calc(var(--home-mode-size) * .255);--home-mode-title-size: calc(var(--home-mode-size) * .1);--home-mode-content-gap: calc(var(--home-mode-size) * .04);--home-mode-glow-size: calc(var(--home-mode-size) * .9);position:relative;width:var(--home-mode-size);height:var(--home-mode-size);flex:0 0 var(--home-mode-size);padding:var(--spacing-xl);background:linear-gradient(135deg,#1a1a2e80,#16213e80);border:3px solid transparent;border-radius:50%;aspect-ratio:1 / 1;cursor:pointer;overflow:hidden;text-align:center;transition:all .4s cubic-bezier(.175,.885,.32,1.275);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);display:flex;flex-direction:column;justify-content:center;align-items:center;flex-shrink:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;font:inherit;line-height:1;margin:0;box-sizing:border-box}.home-mode-content{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--home-mode-content-gap);transform:scale(var(--home-mode-content-scale));transform-origin:center}.home-mode-card:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,var(--gold) 0%,var(--gold-bright) 100%);opacity:0;transition:opacity .4s ease;z-index:-1}.home-mode-card:hover:before{opacity:.1}.play-mode-card{border-color:#ffd70080}.play-mode-card:hover{border-color:#ffd700cc;box-shadow:0 0 40px #ffd70080,0 0 80px #ffd7004d,0 8px 30px #0006}.practice-mode-card{border-color:#27ae6080}.practice-mode-card:hover{border-color:#27ae60cc;box-shadow:0 0 40px #27ae6080,0 0 80px #27ae604d,0 8px 30px #0006}.home-mode-icon{font-size:var(--home-mode-icon-size);filter:drop-shadow(0 0 20px currentColor);animation:float 3s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.home-mode-title{font-family:var(--heading-font);font-size:var(--home-mode-title-size);font-weight:700;letter-spacing:.1em;color:#fff;margin:0;padding:0;text-transform:uppercase;line-height:1;white-space:nowrap;overflow:visible}.home-mode-glow{position:absolute;top:50%;left:50%;width:var(--home-mode-glow-size);height:var(--home-mode-glow-size);background:radial-gradient(circle,rgba(255,215,0,.15) 0%,transparent 70%);transform:translate(-50%,-50%);opacity:0;transition:opacity .4s ease;pointer-events:none;border-radius:50%}.home-mode-card:hover .home-mode-glow{opacity:1;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{transform:translate(-50%,-50%) scale(1)}50%{transform:translate(-50%,-50%) scale(1.2)}}@media (max-width: 768px){.home-screen{gap:var(--spacing-lg)}.home-modes-container{flex-direction:column;gap:var(--spacing-lg);min-width:240px}.home-mode-card{--home-mode-size: 240px;--home-mode-icon-size: calc(var(--home-mode-size) * .235);--home-mode-title-size: calc(var(--home-mode-size) * .085);--home-mode-content-gap: calc(var(--home-mode-size) * .03);width:var(--home-mode-size);height:var(--home-mode-size);padding:var(--spacing-lg);box-sizing:border-box}.home-mode-title{letter-spacing:.08em}}.practice-mode-card{width:100%;max-width:900px;max-height:90vh;overflow-y:auto}.practice-mode-title{font-family:var(--heading-font);font-size:2rem;font-weight:700;letter-spacing:.15em;color:var(--green-bright);text-align:center;margin-bottom:var(--spacing-lg);text-transform:uppercase;text-shadow:0 0 20px var(--green)}.practice-denominator-selector{margin-bottom:var(--spacing-xl)}.practice-denominator-selector h3{font-family:var(--heading-font);font-size:1.1rem;color:#ffffffe6;margin-bottom:var(--spacing-md);text-align:center}.practice-denominator-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.practice-denominator-option{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);background:#ffffff0d;border:2px solid rgba(255,255,255,.2);border-radius:12px;cursor:pointer;transition:all .3s ease;text-align:left}.practice-denominator-option:hover{background:#ffffff1a;border-color:var(--green)}.practice-denominator-option.selected{background:#27ae6033;border-color:var(--green-bright);box-shadow:0 0 20px #27ae604d}.practice-denominator-checkbox{width:24px;height:24px;border:2px solid rgba(255,255,255,.4);border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:1.2rem;color:var(--green-bright);flex-shrink:0;transition:all .3s ease}.practice-denominator-option.selected .practice-denominator-checkbox{background:var(--green-bright);border-color:var(--green-bright);color:#fff}.practice-denominator-content{flex:1}.practice-denominator-label{font-size:1rem;color:#fff}.practice-denominator-example{font-family:var(--number-font);font-size:.85rem;color:#fff9}.practice-select-actions{display:flex;justify-content:center;gap:var(--spacing-md);flex-wrap:wrap}.practice-quick-option{display:flex;align-items:center;justify-content:center;padding:var(--spacing-sm) var(--spacing-md);border-radius:12px;border:2px solid rgba(255,255,255,.2);background:#ffffff0d;color:#fff;font-weight:700;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:all .2s ease}.practice-quick-option:hover{background:#ffffff1a;border-color:var(--green-bright)}.practice-quick-clear{border-color:#e74c3c66}.practice-quick-clear:hover{border-color:var(--red)}.practice-mode-actions{display:flex;justify-content:center;gap:var(--spacing-md);padding-top:var(--spacing-lg);border-top:1px solid rgba(255,255,255,.1);flex-wrap:wrap}.practice-mode-actions button:disabled{opacity:.5;cursor:not-allowed}.practice-mode-game{width:100%;max-width:1000px;margin-top:var(--spacing-lg)}@media (max-width: 768px){.practice-mode-title{font-size:1.5rem}.practice-denominator-grid{grid-template-columns:1fr}.practice-select-actions{flex-direction:column}.practice-select-actions button{width:100%}.practice-mode-actions{flex-direction:column}.practice-mode-actions button{width:100%}}.feedback-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000c;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);display:flex;align-items:flex-start;justify-content:center;z-index:1000;padding:calc(var(--topbar-height) + var(--spacing-lg)) var(--spacing-lg) var(--spacing-xl);overflow-y:auto}.feedback-modal{max-width:720px;width:100%;max-height:calc(100vh - var(--topbar-height) - var(--spacing-xxl));overflow-y:auto;position:relative}.feedback-modal.fdp-card{background:#0a0e1aeb;border:1px solid rgba(255,255,255,.08);padding:12px;box-shadow:0 20px 50px #00000073}.feedback-modal.fdp-card:before{display:none}.feedback-modal.fdp-card>*{position:relative;z-index:1}.feedback-content{text-align:center;padding:6px}.feedback-icon{font-size:5rem;margin-bottom:6px;filter:drop-shadow(0 0 20px currentColor)}.feedback-title{font-family:var(--display-font);font-size:2.3rem;font-weight:800;letter-spacing:.1em;margin-bottom:var(--spacing-sm);text-transform:uppercase;display:inline-flex;align-items:center;gap:var(--spacing-sm);color:#f8fafc}.feedback-title .fdp-coin-icon{width:36px;height:36px}.feedback-correct .feedback-title{color:#f8fafc;text-shadow:none;animation:none}@keyframes titleFlash{0%,to{opacity:1}50%{opacity:.7}}.feedback-partial .feedback-title{color:#f8fafc;text-shadow:none}.feedback-incorrect .feedback-title{color:#f8fafc;text-shadow:none;font-weight:700;font-size:2.1rem}.feedback-content.feedback-incorrect{padding:10px}.feedback-answer{display:flex;justify-content:center;align-items:center;gap:var(--spacing-md);font-family:var(--number-font);font-size:1.4rem;font-weight:700;margin:var(--spacing-sm) 0;flex-wrap:wrap}.feedback-answer span{padding:var(--spacing-xs) var(--spacing-sm);background:#ffffff0f;border-radius:6px;border:1px solid rgba(255,255,255,.12);color:#f8fafc}.feedback-answer-fraction{color:var(--blue)}.feedback-answer-decimal{color:var(--green)}.feedback-answer-percent{color:#9b59b6}.feedback-answer-equals{color:#fff6;background:none!important;border:none!important}.feedback-answer .correct{background:#27ae6033;border-color:var(--green);color:var(--green-bright)}.feedback-answer .incorrect{background:#e74c3c33;border-color:var(--red);color:var(--red)}.feedback-coins{display:flex;justify-content:center;align-items:center;gap:var(--spacing-md);margin:var(--spacing-sm) 0;font-size:1.2rem;font-weight:700}.feedback-coins-label{color:#f8fafc;text-shadow:none;font-family:var(--heading-font);letter-spacing:.1em}.feedback-coins-icon{font-size:2.5rem}.feedback-coins-partial{color:#f8fafc}.feedback-coins-lost{color:#f8fafc;text-shadow:none}.feedback-balance{font-family:var(--number-font);font-size:1.1rem;color:#fffc;margin:6px 0;display:inline-flex;align-items:center;gap:var(--spacing-sm)}.feedback-balance-value{color:#f8fafc;text-shadow:none;font-weight:700}.feedback-comparison{display:flex;flex-direction:column;gap:var(--spacing-md);margin:var(--spacing-sm) 0}.feedback-comparison-section{background:#ffffff0f;padding:10px;border-radius:10px;border:1px solid rgba(255,255,255,.12)}.feedback-comparison-section h3{font-family:var(--heading-font);font-size:1rem;color:#ffffffd9;margin-bottom:var(--spacing-sm);text-transform:uppercase;letter-spacing:.1em}.feedback-report{display:flex;flex-direction:column;gap:var(--spacing-sm);margin:var(--spacing-sm) 0}.feedback-report-item{display:flex;justify-content:space-between;align-items:center;padding:6px 10px;background:#ffffff0f;border-radius:8px;border:1px solid rgba(255,255,255,.12)}.feedback-report-label{font-size:.95rem;color:#fffc}.feedback-report-value{font-family:var(--number-font);font-size:1.1rem;font-weight:700;color:#f8fafc}.feedback-report-coins .feedback-report-value.positive{color:var(--green-bright)}.feedback-report-coins .feedback-report-value.negative{color:var(--red)}.feedback-actions{display:flex;justify-content:center;gap:var(--spacing-md);margin-top:var(--spacing-md);flex-wrap:wrap}.feedback-actions button{min-width:150px}.feedback-bet-grid .feedback-coin-btn{min-width:auto}.feedback-bet-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;width:100%;max-width:520px;margin:0 auto}.feedback-coin-btn{--bet-coin-size: min(14vw, 110px);animation:coinPulseIdle 2.8s ease-in-out infinite!important;animation-delay:0s!important;transform:none!important;margin-inline:0;background-size:130%}.feedback-coin-btn .bet-coin-face{width:var(--bet-coin-size);height:var(--bet-coin-size)}.feedback-coin-btn .bet-coin-value{font-size:clamp(1.1rem,2.6vw,1.6rem)}@media (max-width: 768px){.feedback-modal{margin:var(--spacing-md)}.feedback-icon{font-size:4rem}.feedback-title{font-size:2rem}.feedback-answer{font-size:1.4rem;gap:var(--spacing-sm)}.feedback-coins{flex-direction:column;gap:var(--spacing-sm)}.feedback-actions{flex-direction:column}.feedback-actions button{width:100%}}.fdpWheel{position:relative;width:560px;height:480px;-webkit-user-select:none;user-select:none}.fdpDrum{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none}.fdpWindow{position:absolute;left:84px;top:74px;width:392px;height:332px;overflow:hidden;border-radius:20px;pointer-events:none}.fdpStrip{will-change:transform;transition-property:transform;transition-timing-function:cubic-bezier(.16,1,.3,1)}.fdpNoTransition{transition:none!important}.fdpCell{display:flex;align-items:center;justify-content:center}.fdpValText{font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;font-size:56px;font-weight:800;color:#fffffff5;text-shadow:0 2px 10px rgba(0,0,0,.35)}.fdpFraction{display:inline-flex;flex-direction:column;align-items:center;line-height:1;font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;font-weight:900;color:#fffffff5;text-shadow:0 2px 10px rgba(0,0,0,.35)}.fdpFractionTop,.fdpFractionBottom{font-size:44px}.fdpFractionBar{width:86px;height:6px;background:#ffffffeb;border-radius:6px;margin:6px 0}.sp-shell{--ink: #10293a;--muted: #4f6f83;--panel: rgba(245, 252, 255, .92);--panel-strong: rgba(255, 255, 255, .96);--border: rgba(18, 76, 108, .22);--teal: #2aa598;--blue: #1c89c6;--orange: #f59d3d;--danger: #de5940;--success: #1e9e74;--shadow: 0 12px 26px rgba(8, 42, 61, .16);min-height:100vh;padding:1rem;color:var(--ink);background:radial-gradient(circle at 0% 20%,rgba(245,157,61,.28),transparent 45%),radial-gradient(circle at 100% 0%,rgba(42,165,152,.28),transparent 45%),radial-gradient(circle at 50% 100%,rgba(28,137,198,.2),transparent 45%),linear-gradient(165deg,#eff8ff,#eaf6ff 40%,#eafaf4)}.sp-shell *,.sp-shell *:before,.sp-shell *:after{box-sizing:border-box}.sp-shell.reduce-motion *{animation:none!important;transition:none!important}@media (prefers-reduced-motion: reduce){.sp-shell *{animation:none!important;transition:none!important}}.sp-app-header{max-width:1180px;margin:0 auto 1rem;display:flex;justify-content:space-between;align-items:center;gap:1rem;background:linear-gradient(130deg,#fffffff2,#f1faffeb);border:1px solid var(--border);border-radius:16px;padding:.9rem 1rem;box-shadow:var(--shadow)}.sp-branding h1{margin:0;font-size:clamp(1.4rem,2.7vw,2rem);letter-spacing:-.02em}.sp-branding p{margin:.25rem 0 0;color:var(--muted)}.sp-header-actions{display:flex;gap:.5rem;flex-wrap:wrap}.sp-announcement{max-width:1180px;margin:0 auto 1rem;border-left:5px solid var(--success);border-radius:10px;background:var(--panel-strong);box-shadow:var(--shadow);padding:.65rem .8rem;font-weight:700}.sp-hub-screen,.sp-game-screen,.sp-boss-screen{max-width:1180px;margin:0 auto;display:grid;gap:.9rem}.sp-panel{background:var(--panel);border:1px solid var(--border);border-radius:14px;padding:.95rem;box-shadow:var(--shadow)}.sp-panel h2,.sp-panel h3,.sp-panel h4{margin:0}.sp-panel p{margin:.35rem 0 0}.sp-status-panel{display:grid;gap:.8rem}.sp-level-row{display:flex;justify-content:space-between;gap:.8rem;flex-wrap:wrap}.sp-progress-row{display:grid;grid-template-columns:repeat(4,minmax(84px,1fr));gap:.5rem;width:min(540px,100%)}.sp-progress-row div{border:1px solid rgba(28,137,198,.2);background:linear-gradient(140deg,#fffffff2,#e6f5ffeb);border-radius:10px;padding:.45rem;text-align:center}.sp-progress-row strong{display:block;font-size:1rem}.sp-progress-row span{display:block;color:var(--muted);font-size:.72rem}.sp-xp-track{height:12px;border-radius:999px;background:#d4e9f6;overflow:hidden}.sp-xp-fill{height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--orange),var(--teal));transition:width .25s ease}.sp-controls-row{display:flex;gap:.9rem;flex-wrap:wrap}.sp-controls-row label{display:inline-flex;align-items:center;gap:.4rem;font-size:.86rem}.sp-mode-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.6rem;margin-top:.75rem}.sp-mode-card{border:1px solid var(--border);border-radius:12px;padding:.65rem;background:linear-gradient(140deg,#fffffff2,#edf7ffe0);display:grid;gap:.3rem;text-align:left;cursor:pointer;transition:transform .15s ease,border-color .15s ease}.sp-mode-card:hover{transform:translateY(-2px)}.sp-mode-card.active{border-color:#2aa598b3;box-shadow:0 0 0 1px #2aa59866}.sp-mode-card strong{font-size:.9rem}.sp-mode-card span{color:var(--muted);font-size:.75rem;line-height:1.35}.sp-mode-actions{margin-top:.8rem;display:grid;gap:.7rem}.sp-difficulty{display:grid;gap:.35rem}.sp-difficulty small,.sp-subtle{color:var(--muted);font-size:.8rem}.sp-world-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem;margin-top:.75rem}.sp-world-card{border:1px solid var(--border);border-radius:12px;padding:.7rem;background:var(--panel-strong);text-align:left;display:grid;gap:.3rem;cursor:pointer}.sp-world-card.active{border-width:2px}.sp-world-card.teal.active{border-color:#2aa598cc;background:linear-gradient(150deg,#2aa5981f,#fffffff5)}.sp-world-card.blue.active{border-color:#1c89c6bf;background:linear-gradient(150deg,#1c89c61f,#fffffff5)}.sp-world-card.orange.active{border-color:#f59d3dbf;background:linear-gradient(150deg,#f59d3d24,#fffffff5)}.sp-world-card strong{font-size:.9rem}.sp-world-card span{color:var(--muted);font-size:.78rem}.sp-world-stinger{min-height:1.3rem;margin-top:.35rem;font-size:.78rem;font-weight:700;letter-spacing:.04em;color:#1b5f7f;opacity:0;transform:translateY(-6px);transition:opacity .25s ease,transform .25s ease}.sp-world-stinger.active{opacity:1;transform:translateY(0)}.sp-world-stage{animation:spWorldReveal .42s ease}@keyframes spWorldReveal{0%{opacity:0;transform:translateY(9px) scale(.99)}to{opacity:1;transform:translateY(0) scale(1)}}.sp-mini-game-grid{margin-top:.75rem;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.65rem}.sp-mini-card{border:1px solid rgba(14,73,102,.18);border-radius:10px;background:linear-gradient(145deg,#fffffff2,#f0faffeb);padding:.7rem;display:grid;gap:.5rem}.sp-mini-card p{color:var(--muted);font-size:.82rem;line-height:1.4}.sp-boss-callout{margin-top:.8rem;border:1px solid rgba(222,89,64,.45);border-radius:12px;background:linear-gradient(140deg,#fff5f2f2,#ffeee8eb);display:flex;justify-content:space-between;gap:1rem;align-items:center;padding:.75rem}.sp-boss-callout p{margin:.2rem 0 0;font-size:.8rem}.sp-two-col{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem}.sp-task-list{list-style:none;margin:.6rem 0;padding:0;display:grid;gap:.35rem}.sp-task-list li{display:flex;justify-content:space-between;gap:.5rem;border-bottom:1px dashed rgba(13,74,104,.25);padding-bottom:.3rem}.sp-playlist-skills{margin:.65rem 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.4rem;max-height:220px;overflow:auto}.sp-playlist-item{border:1px solid transparent;border-radius:8px;padding:.35rem .45rem;display:flex;gap:.3rem;align-items:flex-start;font-size:.74rem}.sp-playlist-item.active{border-color:#1c89c659;background:#1c89c614}.sp-badge-grid{margin-top:.65rem;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.6rem}.sp-badge-card{border:1px solid rgba(14,73,102,.2);border-radius:10px;padding:.65rem;background:#fffffff0;display:grid;gap:.3rem}.sp-badge-card.earned{border-color:#1e9e7480;background:linear-gradient(150deg,#1e9e741f,#fffffff2)}.sp-badge-card p{margin:0;font-size:.76rem;color:var(--muted)}.sp-badge-progress span{font-size:.8rem;font-weight:700}.sp-game-header{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start}.sp-game-stats{display:grid;grid-template-columns:repeat(3,minmax(90px,1fr));gap:.45rem}.sp-meter-block{border:1px solid rgba(14,73,102,.2);border-radius:10px;padding:.4rem .45rem;text-align:center;background:#fffffff2}.sp-meter-block.urgent{border-color:#de594099;background:#ffe4dcf0;animation:spPulse .6s ease-in-out infinite alternate}@keyframes spPulse{0%{transform:scale(1)}to{transform:scale(1.03)}}.sp-meter-block span{display:block;color:var(--muted);font-size:.74rem}.sp-meter-block strong{font-size:.95rem}.sp-prompt-text{margin:0;border-left:4px solid var(--teal);border-radius:8px;background:#1e90b61a;padding:.55rem .65rem;line-height:1.45;color:#1f4f67}.sp-round-cue{position:fixed;top:1rem;left:50%;z-index:4;width:min(220px,70vw);border:1px solid rgba(15,79,109,.35);border-radius:999px;background:#fffffff5;color:#114866;text-align:center;padding:.35rem .8rem;font-size:1.2rem;font-weight:800;letter-spacing:.08em;opacity:0;transform:translate(-50%,-16px) scale(.96);pointer-events:none}.sp-round-cue.active{opacity:1;transform:translate(-50%) scale(1);animation:spCuePulse .25s ease}.sp-round-cue.go{color:#0f6a4f;border-color:#1e9e7473}@keyframes spCuePulse{0%{transform:translate(-50%,-10px) scale(.92)}to{transform:translate(-50%) scale(1)}}.sp-step-list{margin:.5rem 0;padding-left:1.15rem;display:grid;gap:.22rem;color:#1b4d64;font-size:.84rem}.sp-row-inline{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}.sp-row-actions{display:flex;gap:.55rem;align-items:center;flex-wrap:wrap}.sp-control-row{display:grid;gap:.3rem}.sp-control-row input,.sp-control-row select,.sp-control-row textarea{border:1px solid rgba(15,79,109,.28);border-radius:8px;padding:.45rem .55rem;font:inherit}.sp-control-row textarea{min-height:86px;resize:vertical}.sp-control-row input:focus,.sp-control-row select:focus,.sp-control-row textarea:focus{outline:2px solid rgba(28,137,198,.35);border-color:#1c89c68c}.sp-chip-row{display:flex;gap:.35rem;flex-wrap:wrap}.sp-chip{border:1px solid rgba(20,96,130,.3);border-radius:999px;background:#fffffff2;padding:.2rem .55rem;font-size:.72rem}.sp-chip.interactive{cursor:pointer}.sp-choice-grid{display:grid;gap:.45rem}.sp-choice-card{border:1px solid rgba(15,79,109,.3);border-radius:10px;background:#fffffff2;padding:.55rem .65rem;text-align:left;font:inherit;cursor:pointer}.sp-choice-card.selected{border-color:#2aa598a6;background:#2aa5981f}.sp-renderer-stack{display:grid;gap:.7rem}.sp-info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem}.sp-info-card{border:1px solid rgba(15,79,109,.2);border-radius:10px;padding:.55rem;background:#ffffffeb}.sp-info-card p{margin:.3rem 0 0;color:var(--muted);font-size:.8rem}.sp-method-list{display:grid;gap:.55rem}.sp-method-card{border:1px solid rgba(15,79,109,.2);border-radius:10px;padding:.55rem;background:#ffffffed}.sp-method-head{display:grid;gap:.4rem}.sp-method-select{width:fit-content;border:1px solid rgba(15,79,109,.3);border-radius:999px;background:#fff;padding:.2rem .6rem;cursor:pointer}.sp-method-select.selected{border-color:#2aa598a6;background:#2aa59826}.sp-toggle-pill{border:1px solid rgba(15,79,109,.3);border-radius:999px;padding:.22rem .55rem;background:#fff;cursor:pointer;font-size:.75rem}.sp-toggle-pill.active{border-color:#1c89c699;background:#1c89c61f}.sp-simulator-card{border:1px solid rgba(15,79,109,.2);border-radius:10px;padding:.65rem;display:grid;gap:.45rem;background:#ffffffed}.sp-meter{border-radius:10px;padding:.55rem;display:flex;justify-content:space-between;align-items:center;border:1px solid}.sp-meter.red{border-color:#de594080;background:#ffe4dceb}.sp-meter.yellow{border-color:#f59d3d80;background:#fff1deeb}.sp-meter.green{border-color:#1e9e7480;background:#e5f9f1eb}.sp-stack-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(88px,1fr));gap:.45rem}.sp-stack{border:1px solid rgba(15,79,109,.22);border-radius:10px;background:#fff;padding:.35rem;display:grid;justify-items:center;gap:.25rem;cursor:pointer}.sp-stack.source{border-color:#f59d3db3;box-shadow:inset 0 0 0 1px #f59d3d80}.sp-stack-bars{--h: 1;width:28px;height:calc(var(--h) * 5px + 8px);border-radius:6px;background:linear-gradient(180deg,#1c89c6,#2aa598)}.sp-target-chip,.sp-warning-banner{border:1px solid rgba(15,79,109,.25);border-radius:8px;padding:.4rem .55rem;font-size:.8rem;background:#f5fcffe6}.sp-warning-banner{border-color:#f59d3d73;background:#fff5e0e6}.sp-plot-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem}.sp-dot-plot{border:1px solid rgba(15,79,109,.2);border-radius:10px;background:#fffffff0;padding:.55rem}.sp-dot-plot h4{margin:0 0 .45rem;font-size:.84rem}.sp-dot-track{position:relative;height:52px;border-bottom:2px solid rgba(15,79,109,.35)}.sp-dot{position:absolute;width:10px;height:10px;border-radius:50%;background:var(--blue);bottom:16px;transform:translate(-50%)}.sp-dot-plot.b .sp-dot{background:var(--danger)}.sp-mean-line{position:absolute;top:4px;bottom:4px;width:2px;background:var(--orange);transform:translate(-50%)}.sp-dot-axis{display:flex;justify-content:space-between;font-size:.74rem;color:var(--muted);margin-top:.25rem}.sp-distance-grid,.sp-handle-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:.45rem}.sp-distance-grid label,.sp-handle-grid label{border:1px solid rgba(15,79,109,.2);border-radius:8px;padding:.4rem;display:grid;gap:.3rem;background:#ffffffe6;font-size:.78rem}.sp-grid-board{display:grid;grid-template-columns:repeat(auto-fill,minmax(48px,1fr));gap:.3rem}.sp-grid-board.two-col{grid-template-columns:repeat(6,minmax(0,1fr))}.sp-grid-cell{border:1px solid rgba(15,79,109,.28);border-radius:8px;background:#fff;min-height:38px;font-size:.8rem;cursor:pointer}.sp-grid-cell.selected{border-color:#2aa598b3;background:#2aa59826}.sp-roll-row{display:flex;gap:.65rem;align-items:center}.sp-die,.sp-coin{width:56px;height:56px;border-radius:12px;border:1px solid rgba(15,79,109,.28);font-size:1.2rem;font-weight:800;background:#fff;cursor:pointer}.sp-coin{border-radius:999px}.sp-die.rolling,.sp-coin.rolling{animation:spSpin .45s linear}@keyframes spSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.sp-step-card{border:1px solid rgba(15,79,109,.2);border-radius:10px;padding:.55rem;background:#ffffffed}.sp-step-card h4{margin:0 0 .35rem;font-size:.82rem}.sp-line-card{border:1px solid rgba(15,79,109,.22);border-radius:10px;padding:.55rem;background:#ffffffed;display:grid;gap:.25rem}.sp-line-labels{display:flex;justify-content:space-between;color:var(--muted);font-size:.75rem}.sp-banner-panel{border-radius:10px;border:1px solid rgba(245,157,61,.5);background:#fff5e0e6;padding:.5rem .6rem;display:inline-flex;gap:.4rem;align-items:center}.sp-bullet-list{margin:.45rem 0 0;padding-left:1.1rem;display:grid;gap:.25rem}.sp-feedback.ok{border-color:#1e9e7473;background:#e5f9f1e6;animation:spImpactWin .33s ease}.sp-feedback.nope{border-color:#de594073;background:#ffece6e6;animation:spImpactFail .33s ease}@keyframes spImpactWin{0%{transform:scale(.98);box-shadow:0 0 #1e9e7400}to{transform:scale(1);box-shadow:0 0 #1e9e7433}}@keyframes spImpactFail{0%{transform:translate(-3px)}50%{transform:translate(3px)}to{transform:translate(0)}}.sp-explanation-block{border-top:1px dashed rgba(15,79,109,.25);padding-top:.35rem;margin-top:.35rem}.sp-explanation-block p{margin:.25rem 0 0}.sp-boss-task-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:.75rem}.sp-boss-stinger{position:fixed;top:1rem;left:50%;z-index:4;width:min(400px,88vw);text-align:center;border-radius:999px;padding:.35rem .9rem;font-size:.82rem;font-weight:800;letter-spacing:.09em;opacity:0;transform:translate(-50%,-18px) scale(.96);pointer-events:none;border:1px solid rgba(15,79,109,.3)}.sp-boss-stinger.intro{background:#fff4e1f5;color:#8f5000}.sp-boss-stinger.clear{background:#e5f9f1f5;color:#0f6a4f;border-color:#1e9e7473}.sp-boss-stinger.retry{background:#ffece6f5;color:#9d2f1c;border-color:#de594073}.sp-boss-stinger.active{opacity:1;transform:translate(-50%) scale(1);animation:spBossPulse .35s ease}@keyframes spBossPulse{0%{transform:translate(-50%,-14px) scale(.94)}to{transform:translate(-50%) scale(1)}}.sp-check-pass{color:var(--success);font-weight:700}.sp-check-fail{color:var(--danger);font-weight:700}.sp-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#081c2694;display:grid;place-items:center;z-index:100;padding:1rem}.sp-modal-card{width:min(920px,96vw);max-height:90vh;overflow:auto;background:var(--panel-strong);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow);padding:.95rem;display:grid;gap:.75rem}.sp-modal-card.sp-center{width:min(520px,96vw);justify-items:center;text-align:center}.sp-modal-head{display:flex;justify-content:space-between;align-items:center;gap:.5rem}.sp-vocab-layout{display:grid;grid-template-columns:minmax(190px,240px) 1fr;gap:.75rem}.sp-vocab-list{display:grid;gap:.3rem;max-height:70vh;overflow:auto}.sp-vocab-term{border:1px solid rgba(15,79,109,.24);border-radius:8px;background:#fff;padding:.36rem .5rem;text-align:left;cursor:pointer}.sp-vocab-term.active{border-color:#1c89c6a6;background:#1c89c61f}.sp-vocab-detail{border:1px solid rgba(15,79,109,.2);border-radius:10px;padding:.65rem;background:#fffffff2;display:grid;gap:.35rem}.sp-vocab-detail h4{margin:0;text-transform:capitalize}.sp-vocab-detail p{margin:0;font-size:.88rem;line-height:1.45}.sp-vocab-student-line{border-radius:8px;background:#2aa5981a;padding:.35rem .45rem}.sp-fab{position:fixed;right:1rem;bottom:1rem;width:52px;height:52px;border-radius:50%;border:none;background:linear-gradient(135deg,var(--orange),var(--danger));color:#fff;box-shadow:0 10px 22px #9a4a3273;cursor:pointer}.sp-btn{border:1px solid transparent;border-radius:9px;padding:.42rem .7rem;font:inherit;font-size:.85rem;font-weight:700;cursor:pointer;display:inline-flex;align-items:center;gap:.32rem}.sp-btn:disabled{opacity:.45;cursor:not-allowed}.sp-btn.primary{background:linear-gradient(125deg,var(--blue),var(--teal));color:#fff}.sp-btn.secondary{border-color:#0f4f6d4d;background:#ffffffe6;color:#194f68}.sp-btn.ghost{border-color:#0f4f6d42;background:transparent;color:#194f68}.sp-btn.danger{background:linear-gradient(125deg,#d84833,#f07f45);color:#fff}.sp-icon{width:1.05rem;height:1.05rem}.sp-icon-button{border:1px solid rgba(15,79,109,.28);border-radius:8px;background:#fff;padding:.35rem .6rem;font:inherit;cursor:pointer}@media (max-width: 1000px){.sp-world-grid,.sp-mode-grid,.sp-progress-row{grid-template-columns:repeat(2,minmax(0,1fr))}.sp-two-col,.sp-plot-grid,.sp-vocab-layout{grid-template-columns:1fr}.sp-game-header{flex-direction:column}.sp-game-stats{width:100%;grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width: 720px){.sp-app-header{flex-direction:column;align-items:flex-start}.sp-mode-grid,.sp-world-grid,.sp-progress-row,.sp-playlist-skills,.sp-boss-task-grid,.sp-game-stats,.sp-mini-game-grid,.sp-grid-board.two-col{grid-template-columns:1fr}.sp-boss-callout{flex-direction:column;align-items:flex-start}}:root{--eastway-blue: #0B4B8C;--eastway-green: #0C6B4D;--brand-gradient: linear-gradient(135deg, var(--eastway-blue) 0%, var(--eastway-green) 100%);--title-gradient: linear-gradient(135deg, var(--eastway-blue) 0%, var(--eastway-green) 100%);--topbar-height: 96px;--neutral-50: #f9fafb;--neutral-100: #f3f4f6;--neutral-200: #e5e7eb;--neutral-300: #d1d5db;--neutral-400: #9ca3af;--neutral-500: #6b7280;--neutral-600: #4b5563;--neutral-700: #374151;--neutral-800: #1f2937;--neutral-900: #111827;--text-primary: var(--neutral-900);--text-secondary: var(--neutral-600);--text-tertiary: var(--neutral-500);--text-on-dark: #ffffff;--lab-purple: #8b5cf6;--lab-green: #22c55e;--lab-gradient: linear-gradient(135deg, var(--lab-purple) 0%, var(--lab-green) 100%);--adventure-red: #ef4444;--adventure-blue: #3b82f6;--adventure-gradient: linear-gradient(135deg, var(--adventure-blue) 0%, var(--adventure-red) 100%);--teacher-purple: #a855f7;--teacher-blue: #6366f1;--teacher-gradient: linear-gradient(135deg, var(--teacher-blue) 0%, var(--teacher-purple) 100%);--success: #10b981;--warning: #f59e0b;--error: #ef4444;--info: var(--eastway-blue);--bg-primary: #ffffff;--bg-secondary: var(--neutral-50);--bg-tertiary: var(--neutral-100);--shell-gradient: linear-gradient( 135deg, #eff6ff 0%, #f0fdf4 100% );--module-gradient-1: linear-gradient(135deg, #667eea 0%, #764ba2 50%, #f093fb 100%);--module-gradient-2: linear-gradient(135deg, #4facfe 0%, #00f2fe 50%, #43e97b 100%);--module-gradient-3: linear-gradient(135deg, #fa709a 0%, #fee140 50%, #ffd700 100%);--module-gradient-4: linear-gradient(135deg, #ff6b6b 0%, #ee5a6f 50%, #c44569 100%);--module-gradient-5: linear-gradient(135deg, #30cfd0 0%, #330867 100%);--module-gradient-6: linear-gradient(135deg, #a8edea 0%, #fed6e3 100%);--module-gradient-7: linear-gradient(135deg, #52c234 0%, #061700 100%);--module-gradient-8: linear-gradient(135deg, #f8b500 0%, #fceabb 50%, #f8b500 100%);--global-coin-image: url(/FDP/fdp-coin.png);--bg-dark: #0f172a;--bg-dark-secondary: #1e293b;--bg-dark-gradient: linear-gradient(135deg, #0f172a 0%, #1e293b 100%)}:root{--text-xs: clamp(.75rem, 1.5vw, .875rem);--text-sm: clamp(.875rem, 1.75vw, 1rem);--text-base: clamp(1rem, 2vw, 1.125rem);--text-lg: clamp(1.125rem, 2.25vw, 1.25rem);--text-xl: clamp(1.25rem, 2.5vw, 1.5rem);--text-2xl: clamp(1.5rem, 3vw, 1.75rem);--text-3xl: clamp(1.75rem, 3.5vw, 2rem);--text-4xl: clamp(2rem, 4vw, 2.5rem);--text-5xl: clamp(2.5rem, 5vw, 3.5rem);--font-normal: 400;--font-medium: 500;--font-semibold: 600;--font-bold: 700;--font-extrabold: 800;--leading-tight: 1.2;--leading-snug: 1.4;--leading-normal: 1.6;--leading-relaxed: 1.8}:root{--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--space-20: 5rem;--space-24: 6rem}:root{--card-bg: var(--bg-primary);--card-radius: 12px;--card-padding: var(--space-6);--card-padding-sm: var(--space-4);--card-shadow: 0 2px 8px rgba(0, 0, 0, .08);--card-shadow-hover: 0 8px 24px rgba(0, 0, 0, .12);--card-border: 1px solid var(--neutral-200);--card-transition: all .3s cubic-bezier(.4, 0, .2, 1)}.card{background:var(--card-bg);border-radius:var(--card-radius);padding:var(--card-padding);box-shadow:var(--card-shadow);border:var(--card-border);transition:var(--card-transition)}.card:hover{box-shadow:var(--card-shadow-hover);transform:translateY(-4px)}.card-sm{padding:var(--card-padding-sm)}:root{--button-radius: 10px;--button-transition: all .2s ease}.btn{padding:var(--space-3) var(--space-6);border-radius:var(--button-radius);font-weight:var(--font-semibold);font-size:var(--text-base);border:none;cursor:pointer;transition:var(--button-transition);display:inline-flex;align-items:center;gap:var(--space-2);text-decoration:none;line-height:1}.btn-primary{background:var(--brand-gradient);color:#fff;box-shadow:0 4px 12px #2563eb4d}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #2563eb66}.btn-secondary{background:var(--bg-primary);color:var(--eastway-blue);border:2px solid var(--eastway-blue)}.btn-secondary:hover{background:var(--eastway-blue);color:#fff;transform:translateY(-2px)}.btn-ghost{background:transparent;color:inherit;border:2px solid currentColor}.btn-ghost:hover{background:#ffffff1a;transform:translateY(-2px)}.btn-glass{display:inline-flex;justify-content:center;align-items:center;gap:v ar(--space-2);padding:.4rem 1.2rem;background:transparent;border:3px solid var(--text-on-dark);border-radius:12px;color:var(--text-on-dark)!important;font-weight:var(--font-bold);text-decoration:none;transition:var(--card-transition);cursor:pointer;font-size:1.25rem;box-shadow:0 8px 24px #0003}.btn-glass:hover{background:var(--text-on-dark);color:var(--eastway-blue)!important;transform:translateY(-4px);box-shadow:0 8px 20px #00000040}.btn-lg{padding:var(--space-4) var(--space-8);font-size:var(--text-lg)}.btn-sm{padding:var(--space-2) var(--space-4);font-size:var(--text-sm)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 var(--space-6)}.container-sm{max-width:800px}.container-lg{max-width:1400px}.top-bar{position:fixed;top:0;left:0;right:0;min-height:var(--topbar-height);background:transparent;border-bottom:none;display:flex;align-items:center;padding:var(--space-4) var(--space-6);z-index:1000;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.top-bar-content{width:100%;max-width:1400px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;gap:var(--space-6)}.top-bar-left,.top-bar-center,.top-bar-right{display:flex;align-items:center;gap:var(--space-4)}.top-bar-center{flex:1;justify-content:center}.page-with-topbar{padding-top:calc(var(--topbar-height) + var(--space-4))}.page-toolbar{max-width:1400px;margin:0 auto var(--space-6);padding:var(--space-4) var(--space-6);background:#ffffffbf;border:2px solid rgba(255,255,255,.6);border-radius:16px;box-shadow:0 12px 30px #0000001f;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.bg-shell-default{background:var(--shell-gradient);min-height:100vh}.bg-dark{background:var(--bg-dark-gradient);color:var(--text-on-dark)}.bg-branded{background:var(--brand-gradient);color:var(--text-on-dark)}.hero{text-align:center;padding:var(--space-12) var(--space-6);max-width:900px;margin:0 auto}.hero-badge{display:inline-block;padding:var(--space-2) var(--space-5);background:#2563eb1a;border:2px solid var(--eastway-blue);border-radius:50px;color:var(--eastway-blue);font-size:var(--text-sm);font-weight:var(--font-semibold);margin-bottom:var(--space-4);letter-spacing:.5px;text-transform:uppercase}.hero-title{font-size:var(--text-5xl);font-weight:var(--font-extrabold);line-height:var(--leading-tight);margin-bottom:var(--space-4);color:var(--text-primary)}.hero-subtitle{font-size:var(--text-xl);color:var(--text-secondary);line-height:var(--leading-relaxed);margin-bottom:var(--space-8);max-width:700px;margin-left:auto;margin-right:auto}.hero-actions{display:flex;gap:var(--space-4);justify-content:center;flex-wrap:wrap}.grid{display:grid;gap:var(--space-6)}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}.grid-auto-fit{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.grid-auto-fill{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.animate-fadeIn{animation:fadeIn .3s ease}.animate-slideDown{animation:slideDown .2s ease}.global-coin-icon{width:36px;height:36px;display:inline-block;background-image:var(--global-coin-image);background-size:contain;background-repeat:no-repeat;background-position:center;animation:globalCoinPulse 2.8s ease-in-out infinite}.global-coin-icon.spin{animation:globalCoinSpin 3.2s linear infinite}@keyframes globalCoinPulse{0%,to{transform:scale(1)}50%{transform:scale(1.06)}}@keyframes globalCoinSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width: 1024px){.grid-4,.grid-3{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.grid-4,.grid-3,.grid-2{grid-template-columns:1fr}.hero{padding:var(--space-8) var(--space-4)}.container,.top-bar{padding:0 var(--space-4)}}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.font-bold{font-weight:var(--font-bold)}.font-semibold{font-weight:var(--font-semibold)}.font-medium{font-weight:var(--font-medium)}.text-primary{color:var(--text-primary)}.text-secondary{color:var(--text-secondary)}.text-brand{color:var(--eastway-blue)}.mb-2{margin-bottom:var(--space-2)}.mb-4{margin-bottom:var(--space-4)}.mb-6{margin-bottom:var(--space-6)}.mb-8{margin-bottom:var(--space-8)}.mt-2{margin-top:var(--space-2)}.mt-4{margin-top:var(--space-4)}.mt-6{margin-top:var(--space-6)}.mt-8{margin-top:var(--space-8)}*:focus-visible{outline:3px solid var(--eastway-blue);outline-offset:2px}button:focus-visible,a:focus-visible{outline:3px solid var(--eastway-blue);outline-offset:3px}*{margin:0;padding:0;box-sizing:border-box;font-family:Poppins,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif!important}html{scroll-behavior:smooth}:root{--ugmt-emoji-size: clamp(2.7rem, 4vw, 4.6rem)}body{color:var(--text-primary);background:var(--brand-gradient);background-attachment:fixed;line-height:var(--leading-normal);font-size:var(--text-base);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.ugmt-emoji{font-size:var(--ugmt-emoji-size);line-height:1;display:inline-flex;align-items:center;justify-content:center;font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif;color:initial}.app{min-height:100vh;display:flex;flex-direction:column}.main-content{flex:1;display:flex;flex-direction:column}html,body{overflow-y:auto;height:auto}.main-footer{background:transparent;padding:1.5rem 2rem;color:#000!important;text-align:left;border-top:1px solid rgba(0,0,0,.2);margin-top:auto}.main-footer h3,.main-footer h4,.main-footer p{color:#000!important;margin:0;padding:0;line-height:1.4}h1{font-size:var(--text-5xl);font-weight:var(--font-extrabold);line-height:var(--leading-tight);color:var(--text-primary)}h2{font-size:var(--text-4xl);font-weight:var(--font-bold);line-height:var(--leading-tight);color:var(--text-primary)}h3{font-size:var(--text-2xl);font-weight:var(--font-semibold);line-height:var(--leading-snug);color:var(--text-primary)}p{font-size:var(--text-base);line-height:var(--leading-relaxed);color:var(--text-secondary)}button,input,textarea,select{font-family:Poppins,sans-serif!important}button{cursor:pointer}a{color:var(--eastway-blue);text-decoration:none;transition:color .2s ease}a:hover{color:var(--eastway-green)}.text-gradient{background:var(--title-gradient);background-size:120% 120%;-webkit-background-clip:text;background-clip:text;color:transparent;opacity:1}.wave-title{letter-spacing:.01em}.wave-text{display:inline-flex;gap:.01em}.wave-letter{display:inline-block;transform-origin:center bottom;animation:letter-wave 3s ease-in-out both;animation-delay:calc(var(--i) * .07s);-webkit-text-stroke:2px #000;text-stroke:2px #000;text-shadow:none;opacity:1}.wave-space{display:inline-block;width:.28em}@keyframes letter-wave{0%{transform:translateY(18px) rotate(-8deg)}20%{transform:translateY(-16px) rotate(8deg)}40%{transform:translateY(12px) rotate(-6deg)}60%{transform:translateY(-10px) rotate(5deg)}80%{transform:translateY(6px) rotate(-3deg)}to{transform:translateY(0) rotate(0)}}@media (prefers-reduced-motion: reduce){.wave-letter{animation:none}}.rainbow-wave-letter{display:inline-block;background:linear-gradient(90deg,#ff4757,coral,#ffa502,#2ed573,#1e90ff,#5352ed,#a55eea,#ff6b81,#ff4757);background-size:800% 100%;background-position:calc(var(--i) * 4%) 50%;-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-stroke:1px #111;paint-order:stroke fill;filter:drop-shadow(2px 2px 0 rgba(0,0,0,.4));animation:rainbowWave 20s linear infinite,letterBounce 2.5s ease-in-out infinite;animation-delay:0s,calc(var(--i) * .05s)}@keyframes rainbowWave{0%{background-position:calc(var(--i) * 4% + 800%) 50%}to{background-position:calc(var(--i) * 4%) 50%}}@keyframes letterBounce{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-8px) scale(1.1)}}@media (prefers-reduced-motion: reduce){.rainbow-wave-letter{animation:none}}
