*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--color-primary:#00d9ff;--color-primary-dark:#00b8d9;--color-secondary:#0f8;--color-accent:#667eea;--color-accent-dark:#764ba2;--primary-color:var(--color-primary);--primary-color-dark:var(--color-primary-dark);--bg-dark:#0f0f1a;--bg-darker:#0a0a12;--bg-card:#1e1e2e;--bg-card-hover:#2a2a3e;--text-primary:#fff;--text-secondary:#e0e0f0;--text-muted:#a0aec0;--text-dark:#718096;--color-success:#48bb78;--color-success-light:#68d391;--color-warning:#ed8936;--color-warning-light:#fbd38d;--color-error:#f56565;--color-error-light:#fc8181;--color-gold:gold;--color-silver:silver;--color-bronze:#cd7f32;--border-color:#ffffff1a;--border-color-hover:#fff3;--shadow-sm:0 2px 4px #0000001a;--shadow-md:0 4px 12px #00000026;--shadow-lg:0 10px 30px #0003;--shadow-xl:0 20px 50px #0000004d;--shadow-glow:0 0 30px #00d9ff4d;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:24px;--radius-full:50px;--font-primary:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono:"Fira Code", "Consolas", "Monaco", monospace;--transition-fast:.15s ease;--transition-normal:.3s ease;--transition-slow:.5s ease;--z-dropdown:100;--z-modal:200;--z-toast:300;--z-tooltip:400}html{scroll-behavior:smooth;font-size:16px}body{font-family:var(--font-primary);color:var(--text-secondary);background:linear-gradient(180deg, var(--bg-dark) 0%, var(--bg-darker) 100%);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizespeed;background-attachment:fixed;min-height:100vh;font-size:1rem;line-height:1.6}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--bg-darker)}::-webkit-scrollbar-thumb{background:#fff3;border-radius:5px}::-webkit-scrollbar-thumb:hover{background:#ffffff4d}::selection{background:var(--color-primary);color:var(--bg-dark)}a{color:var(--color-primary);transition:color var(--transition-fast);text-decoration:none}a:hover{color:var(--color-secondary)}button{font-family:inherit;font-size:inherit;cursor:pointer;background:0 0;border:none}button:disabled{cursor:not-allowed;opacity:.6}img{max-width:100%;height:auto;display:block}ul,ol{list-style:none}input,textarea,select{font-family:inherit;font-size:inherit}input:focus,textarea:focus,select:focus,button:focus{outline:none}h1,h2,h3,h4,h5,h6{color:var(--text-primary);font-weight:700;line-height:1.2}h1{font-size:2.5rem}h2{font-size:2rem}h3{font-size:1.5rem}h4{font-size:1.25rem}h5{font-size:1rem}h6{font-size:.875rem}code,pre{font-family:var(--font-mono)}pre{overflow-x:auto}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translate(-50%)translateY(20px)}to{opacity:1;transform:translate(-50%)translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@keyframes float{0%,to{transform:translateY(0)rotate(-5deg)}50%{transform:translateY(-20px)rotate(5deg)}}@keyframes sparkle{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.1)}}@keyframes glow{0%,to{box-shadow:0 0 5px #667eea4d}50%{box-shadow:0 0 15px #667eea80}}@keyframes rainbow{0%{filter:hue-rotate()}to{filter:hue-rotate(360deg)}}@keyframes confetti{0%{opacity:1;top:50%;transform:rotate(0)}to{opacity:0;top:-20%;transform:rotate(720deg)}}@keyframes wiggle{0%,to{transform:rotate(-3deg)}50%{transform:rotate(3deg)}}@keyframes pop{0%{opacity:0;transform:scale(.8)}50%{transform:scale(1.1)}to{opacity:1;transform:scale(1)}}@keyframes typewriter{0%{width:0}to{width:100%}}.animate-bounce{animation:1s infinite bounce}.animate-float{animation:3s ease-in-out infinite float}.animate-sparkle{animation:1.5s ease-in-out infinite sparkle}.animate-glow{animation:2s ease-in-out infinite glow}.animate-wiggle{animation:.5s ease-in-out infinite wiggle}.animate-pop{animation:.3s ease-out pop}.animate-slide-up{animation:.4s ease-out slideUp}.animate-fade-in{animation:.3s ease-out fadeIn}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.hidden{display:none}.visible{visibility:visible}.invisible{visibility:hidden}.container{width:100%;max-width:1400px;margin:0 auto;padding:0 1rem}@media (min-width:768px){.container{padding:0 2rem}}@media (max-width:768px){html{font-size:14px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (pointer:coarse){button,.btn,a.header__nav-link,.world-card,.shop-item,.achievement-card,.mission-card{min-height:var(--touch-target-min)}input,textarea,select{min-height:var(--touch-target-min);font-size:16px}p a,li a{padding:.25rem 0}}@media (max-width:768px){.header__container{flex-wrap:wrap;padding:.5rem 1rem}.header__logo-text{font-size:1rem}.header__nav{-webkit-overflow-scrolling:touch;border-top:1px solid #ffffff1a;order:3;justify-content:center;gap:.5rem;width:100%;margin-top:.5rem;padding-top:.5rem;padding-bottom:.25rem;display:flex;overflow-x:auto}.header__nav-link{white-space:nowrap;margin:0;padding:.5rem .75rem;font-size:.75rem}.header__user{order:2}.header__user-details{flex-direction:column;gap:.25rem}.header__user-name{font-size:.85rem}.header__user-stars{font-size:.75rem}.game-page__content{padding:.75rem}.game-page__header{text-align:center;flex-direction:column;gap:.5rem}.game-page__world-info{font-size:1rem}.question-card{border-radius:16px;padding:1rem}.question-card__header{flex-wrap:wrap;gap:.5rem}.question-card__title{width:100%;font-size:1rem}.question-card__prompt{padding:.75rem;font-size:.9rem}.options-grid{grid-template-columns:1fr;gap:.5rem}.option-button{min-height:60px;padding:1rem;font-size:.9rem}.true-false-buttons{flex-direction:column;gap:.75rem}.true-false-btn{padding:1rem 1.5rem;font-size:1rem}.python-editor{min-height:200px}.python-editor__textarea,.CodeMirror{line-height:1.4;font-size:14px!important}.python-editor__toolbar{flex-wrap:wrap;gap:.5rem}.python-editor__run-btn{width:100%;padding:1rem;font-size:1rem}.python-editor__output{max-height:150px;font-size:.85rem;overflow-y:auto}.world-map{padding:1rem}.world-map__header{text-align:center;flex-direction:column;gap:.75rem}.world-map__score{margin:0 auto}.world-map__grid{grid-template-columns:1fr;gap:1rem}.world-card{padding:1.25rem}.world-card__icon{font-size:2.5rem}.result-panel{margin:.5rem;padding:1rem}.result-panel__icon{font-size:2.5rem}.result-panel__title{font-size:1.25rem}.result-panel__actions{flex-direction:column;gap:.5rem}.result-panel__btn{width:100%;padding:1rem}.result-panel__explanation{padding:.75rem;font-size:.85rem}.gamification-page{padding:.75rem}.gamification-page__header{padding:1rem}.gamification-page__avatar{width:60px;height:60px;font-size:2rem}.gamification-page__name{font-size:1.25rem}.gamification-page__tabs{gap:.25rem}.gamification-page__tab{padding:.5rem .75rem;font-size:.8rem}.gamification-page__tab-name{display:none}.achievement-grid__list{grid-template-columns:1fr}.achievement-card{padding:.75rem}.mission-card{flex-wrap:wrap;padding:1rem}.mission-card__icon{font-size:2rem}.mission-card__rewards{border-top:1px solid #ffffff1a;border-left:none;flex-direction:row;justify-content:center;width:100%;padding-top:.75rem}.avatar-shop__grid{grid-template-columns:repeat(2,1fr);gap:.75rem}.shop-item{padding:.75rem}.shop-item__icon{font-size:2rem}.leaderboard__podium{flex-direction:column;gap:.75rem}.podium-card{width:100%}.podium-card--1{transform:none}.features__grid{grid-template-columns:1fr;gap:1rem;padding:0}.feature-card{padding:1.25rem 1rem}.login-page,.register-page{padding:1rem}.login-page__form,.register-page__form{border-radius:16px;padding:1.5rem}.login-page__title,.register-page__title{font-size:1.5rem}.form-group input{padding:1rem;font-size:16px}.profile-page{padding:1rem}.profile-page__header{text-align:center;flex-direction:column}.profile-page__avatar{margin:0 auto 1rem}.profile-page__stats{grid-template-columns:repeat(2,1fr);gap:.75rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (max-height:500px) and (orientation:landscape){.header{padding:.25rem 1rem}.header__logo-icon{font-size:1.25rem}.game-page__content{padding:.5rem}.question-card{padding:.75rem}.python-editor{min-height:120px}}:root{--touch-target-min:44px;--safe-area-top:env(safe-area-inset-top,0px);--safe-area-bottom:env(safe-area-inset-bottom,0px);--safe-area-left:env(safe-area-inset-left,0px);--safe-area-right:env(safe-area-inset-right,0px)}.app{padding-top:var(--safe-area-top);padding-bottom:var(--safe-area-bottom);padding-left:var(--safe-area-left);padding-right:var(--safe-area-right)}@media (max-width:768px){.question-play{padding:.75rem .5rem calc(var(--safe-area-bottom) + 1rem)}.question-play__header{flex-direction:column;align-items:stretch;gap:.5rem}.question-play__powerups{margin-bottom:.75rem}.question-actions,.question-submit-btn{margin-bottom:calc(var(--safe-area-bottom) + .5rem)}.question-submit-btn{width:100%;min-height:50px;font-size:1.05rem}}@media (max-width:374px){html{font-size:14px}.container{padding:0 .5rem}.question-card{padding:.75rem}.question-card__title{font-size:.95rem}.world-card{padding:.85rem}.gamification-page__stat{padding:.4rem}.gamification-page__stat-value{font-size:1rem}.user-progress__grid{grid-template-columns:1fr!important}.python-editor{min-height:150px}}@media (max-width:768px){::-webkit-scrollbar{width:0;height:0}.world-map__grid,.gamification-page__tabs{scroll-snap-type:x mandatory}.world-card,.gamification-page__tab{scroll-snap-align:start}}@media (display-mode:standalone){.header{padding-top:calc(var(--safe-area-top) + .5rem)}.footer{padding-bottom:calc(var(--safe-area-bottom) + 1rem)}.install-prompt{display:none}}.level-badge{border:2px solid var(--level-color,#667eea);cursor:pointer;background:linear-gradient(135deg,#1e1e2ee6 0%,#2a2a3ee6 100%);border-radius:50px;align-items:center;gap:.75rem;padding:.5rem 1rem;transition:all .3s;display:flex}.level-badge:hover{box-shadow:0 5px 20px color-mix(in srgb, var(--level-color) 30%, transparent);transform:translateY(-2px)}.level-badge__icon{font-size:1.5rem;animation:3s ease-in-out infinite float}.level-badge__info{flex-direction:column;display:flex}.level-badge__level{text-transform:uppercase;letter-spacing:.5px;color:var(--level-color);font-size:.7rem;font-weight:600}.level-badge__name{color:#fff;font-size:.9rem;font-weight:700}.level-badge__progress{flex-direction:column;gap:.25rem;min-width:80px;display:flex}.level-badge__progress-bar{background:#ffffff1a;border-radius:3px;height:6px;overflow:hidden}.level-badge__progress-fill{background:linear-gradient(90deg, var(--level-color), color-mix(in srgb, var(--level-color) 70%, white));border-radius:3px;height:100%;transition:width .5s}.level-badge__progress-text{color:#a0aec0;text-align:center;font-size:.65rem}.level-badge--small{gap:.5rem;padding:.25rem .5rem}.level-badge--small .level-badge__icon{font-size:1.2rem}.level-badge--small .level-badge__level{font-size:.6rem}.level-badge--small .level-badge__name{font-size:.75rem}.level-badge--large{gap:1rem;padding:.75rem 1.5rem}.level-badge--large .level-badge__icon{font-size:2rem}.level-badge--large .level-badge__level{font-size:.8rem}.level-badge--large .level-badge__name{font-size:1.1rem}.streak-display{background:linear-gradient(135deg,#1e1e2e 0%,#2a2a3e 100%);border:2px solid #ff88004d;border-radius:16px;padding:1.25rem}.streak-display--compact{background:linear-gradient(135deg,#ff880026 0%,#ff440026 100%);border:2px solid #f806;border-radius:50px;align-items:center;gap:.25rem;padding:.25rem .75rem;display:inline-flex}.streak-display--compact .streak-display__fire{font-size:1rem}.streak-display--compact .streak-display__count{color:#f80;font-size:.9rem;font-weight:700}.streak-display__header{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.streak-display__current{align-items:center;gap:.75rem;display:flex}.streak-display__fire{font-size:2.5rem;animation:1.5s ease-in-out infinite pulse}.streak-display__info{flex-direction:column;display:flex}.streak-display__count{background:linear-gradient(90deg,#f80,#f40);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:1.75rem;font-weight:800;line-height:1}.streak-display__label{color:#a0aec0;font-size:.85rem}.streak-display__best{background:#ffd7001a;border:1px solid #ffd7004d;border-radius:8px;align-items:center;gap:.5rem;padding:.5rem .75rem;display:flex}.streak-display__best-icon{font-size:1rem}.streak-display__best-value{color:gold;font-size:.8rem;font-weight:600}.streak-display__calendar{justify-content:space-between;gap:.5rem;margin-bottom:1rem;display:flex}.streak-display__day{background:#ffffff0d;border-radius:8px;flex-direction:column;flex:1;align-items:center;gap:.25rem;padding:.5rem;transition:all .3s;display:flex}.streak-display__day--active{background:#f803}.streak-display__day--today{border:2px solid #ff880080}.streak-display__day-label{text-transform:uppercase;color:#a0aec0;font-size:.65rem}.streak-display__day-icon{font-size:1.25rem}.streak-display__bonus{background:linear-gradient(135deg,#667eea33 0%,#764ba233 100%);border:1px solid #667eea66;border-radius:8px;justify-content:center;align-items:center;gap:.5rem;padding:.75rem;display:flex}.streak-display__bonus-icon{font-size:1.25rem;animation:1.5s ease-in-out infinite sparkle}.streak-display__bonus-text{color:#a0b4f0;font-size:.85rem;font-weight:600}.achievement-grid{background:linear-gradient(135deg,#1e1e2e 0%,#2a2a3e 100%);border-radius:16px;padding:1.5rem}.achievement-grid__header{flex-wrap:wrap;align-items:center;gap:1rem;margin-bottom:1.5rem;display:flex}.achievement-grid__title{color:#fff;align-items:center;gap:.75rem;margin:0;font-size:1.25rem;font-weight:700;display:flex}.achievement-grid__count{color:#a0aec0;font-size:.9rem;font-weight:500}.achievement-grid__filters{gap:.5rem;margin-left:auto;display:flex}.achievement-grid__filter{color:#a0aec0;cursor:pointer;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:8px;padding:.5rem .75rem;font-size:.85rem;transition:all .3s}.achievement-grid__filter:hover{background:#ffffff1a}.achievement-grid__filter--active{color:#667eea;background:#667eea33;border-color:#667eea}.achievement-grid__toggle{color:#a0aec0;cursor:pointer;align-items:center;gap:.5rem;font-size:.85rem;display:flex}.achievement-grid__toggle input{accent-color:#667eea}.achievement-grid__list{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem;display:grid}.achievement-card{text-align:left;cursor:pointer;background:#ffffff08;border:2px solid #ffffff1a;border-radius:12px;align-items:center;gap:1rem;padding:1rem;transition:all .3s;display:flex;position:relative;overflow:hidden}.achievement-card:before{content:"";background:var(--rarity-color);opacity:.5;width:4px;position:absolute;top:0;bottom:0;left:0}.achievement-card--unlocked{border-color:var(--rarity-color)}.achievement-card--unlocked:before{opacity:1}.achievement-card--unlocked:hover{box-shadow:0 5px 20px color-mix(in srgb, var(--rarity-color) 30%, transparent);transform:translateY(-3px)}.achievement-card--locked{opacity:.6}.achievement-card__icon{text-align:center;min-width:2.5rem;font-size:2rem}.achievement-card--unlocked .achievement-card__icon{animation:.6s bounce}.achievement-card__info{flex:1;min-width:0}.achievement-card__name{color:#fff;margin-bottom:.25rem;font-size:.95rem;font-weight:600;display:block}.achievement-card__description{color:#a0aec0;font-size:.8rem;line-height:1.4;display:block}.achievement-card__rarity-dot{background:var(--rarity-color);border-radius:50%;width:10px;height:10px}.achievement-card__rarity-dot--legendary{animation:2s ease-in-out infinite glow}.achievement-card__reward{color:#48bb78;background:#48bb7833;border-radius:4px;padding:.2rem .5rem;font-size:.7rem;font-weight:600;position:absolute;top:.5rem;right:.5rem}.achievement-grid__empty{text-align:center;color:#a0aec0;padding:3rem 1rem}.achievement-grid__empty-icon{margin-bottom:1rem;font-size:3rem;display:block}@media (max-width:768px){.achievement-grid__header{flex-direction:column;align-items:flex-start}.achievement-grid__filters{flex-wrap:wrap;margin-left:0}.achievement-grid__list{grid-template-columns:1fr}}.mission-list{flex-direction:column;gap:2rem;display:flex}.mission-list__section-title{color:#fff;align-items:center;gap:.5rem;margin:0 0 1rem;font-size:1.15rem;font-weight:700;display:flex}.mission-list__section-icon{font-size:1.25rem}.mission-list__section-timer{color:#a0aec0;background:#ffffff0d;border-radius:4px;margin-left:auto;padding:.25rem .5rem;font-size:.75rem;font-weight:500}.mission-list__grid{flex-direction:column;gap:1rem;display:flex}.mission-card{background:linear-gradient(135deg,#1e1e2e 0%,#2a2a3e 100%);border:2px solid #ffffff1a;border-radius:16px;align-items:center;gap:1rem;padding:1.25rem;transition:all .3s;display:flex}.mission-card:hover{border-color:#fff3;transform:translateY(-2px)}.mission-card--completed,.mission-card--claimed{background:linear-gradient(135deg,#1e2e24 0%,#2a3e30 100%);border-color:#48bb7880}.mission-card--claimed .mission-card__progress-fill{background:linear-gradient(90deg,#48bb78,#68d391)}.mission-card__icon{text-align:center;min-width:3rem;font-size:2.5rem}.mission-card__content{flex:1;min-width:0}.mission-card__header{align-items:center;gap:.75rem;margin-bottom:.25rem;display:flex}.mission-card__title{color:#fff;font-size:1rem;font-weight:700}.mission-card__type{text-transform:uppercase;border-radius:4px;padding:.2rem .5rem;font-size:.65rem;font-weight:600}.mission-card__type--daily{color:#00d9ff;background:#00d9ff33}.mission-card__type--weekly{color:#9f7aea;background:#9f7aea33}.mission-card__description{color:#a0aec0;margin:0 0 .75rem;font-size:.85rem;line-height:1.4}.mission-card__progress{align-items:center;gap:.75rem;display:flex}.mission-card__progress-bar{background:#ffffff1a;border-radius:4px;flex:1;height:8px;overflow:hidden}.mission-card__progress-fill{background:linear-gradient(90deg,#00d9ff,#0f8);border-radius:4px;height:100%;transition:width .5s}.mission-card--completed .mission-card__progress-fill{background:linear-gradient(90deg,#48bb78,#68d391)}.mission-card__progress-text{color:#a0aec0;min-width:45px;font-size:.8rem;font-weight:600}.mission-card__rewards{border-left:1px solid #ffffff1a;flex-direction:column;gap:.5rem;padding-left:1rem;display:flex}.mission-card__reward{color:gold;align-items:center;gap:.25rem;font-size:.8rem;font-weight:600;display:flex}.mission-card__reward-icon{font-size:.9rem}.mission-card__claim-btn{color:#1a1a2e;cursor:pointer;background:linear-gradient(135deg,#48bb78 0%,#68d391 100%);border:none;border-radius:8px;padding:.75rem 1.25rem;font-size:.9rem;font-weight:700;transition:all .3s;animation:2s ease-in-out infinite pulse}.mission-card__claim-btn:hover{transform:scale(1.05);box-shadow:0 5px 20px #48bb7866}.mission-card__claimed-badge{color:#48bb78;background:#48bb781a;border-radius:8px;padding:.5rem 1rem;font-size:.85rem;font-weight:600}@media (max-width:768px){.mission-card{text-align:center;flex-direction:column}.mission-card__content{width:100%}.mission-card__header{justify-content:center}.mission-card__rewards{border-top:1px solid #ffffff1a;border-left:none;flex-direction:row;justify-content:center;width:100%;padding-top:1rem;padding-left:0}}.avatar-shop{background:linear-gradient(135deg,#1e1e2e 0%,#2a2a3e 100%);border-radius:20px;padding:1.5rem}.avatar-shop__header{justify-content:space-between;align-items:center;margin-bottom:1.5rem;display:flex}.avatar-shop__title{color:#fff;margin:0;font-size:1.5rem;font-weight:800}.avatar-shop__balance{background:linear-gradient(135deg,#ffd70026 0%,#ffa50026 100%);border:2px solid #ffd70066;border-radius:50px;align-items:center;gap:.5rem;padding:.75rem 1.25rem;display:flex}.avatar-shop__balance-icon{font-size:1.25rem}.avatar-shop__balance-value{color:gold;font-size:1.1rem;font-weight:700}.avatar-shop__tabs{gap:.5rem;margin-bottom:1.5rem;padding-bottom:.5rem;display:flex;overflow-x:auto}.avatar-shop__tab{color:#a0aec0;cursor:pointer;white-space:nowrap;background:#ffffff0d;border:2px solid #ffffff1a;border-radius:12px;align-items:center;gap:.5rem;padding:.75rem 1.25rem;font-size:.9rem;font-weight:600;transition:all .3s;display:flex}.avatar-shop__tab:hover{background:#ffffff1a}.avatar-shop__tab--active{color:#fff;background:#667eea33;border-color:#667eea}.avatar-shop__tab-icon{font-size:1.1rem}.avatar-shop__grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem;display:grid}.shop-item{background:#ffffff08;border:2px solid #ffffff1a;border-radius:16px;flex-direction:column;padding:1.25rem;transition:all .3s;display:flex;position:relative}.shop-item:hover{border-color:#fff3;transform:translateY(-3px)}.shop-item--owned{border-color:#48bb784d}.shop-item--equipped{border-color:#48bb78;box-shadow:0 0 20px #48bb7833}.shop-item--expensive{opacity:.7}.shop-item__limited{color:#fff;text-transform:uppercase;background:linear-gradient(135deg,#f56565 0%,#ed64a6 100%);border-radius:4px;padding:.25rem .5rem;font-size:.65rem;font-weight:700;position:absolute;top:-8px;right:10px}.shop-item__preview{justify-content:center;align-items:center;height:80px;margin-bottom:1rem;display:flex;position:relative}.shop-item__icon{font-size:3.5rem;transition:transform .3s}.shop-item:hover .shop-item__icon{transform:scale(1.1)}.shop-item__equipped-badge{color:#fff;background:#48bb78;border-radius:4px;padding:.2rem .5rem;font-size:.65rem;font-weight:700;position:absolute;bottom:-5px;left:50%;transform:translate(-50%)}.shop-item__info{text-align:center;flex:1;margin-bottom:1rem}.shop-item__name{color:#fff;margin:0 0 .25rem;font-size:.95rem;font-weight:700}.shop-item__description{color:#a0aec0;margin:0;font-size:.75rem;line-height:1.4}.shop-item__purchase{flex-direction:column;align-items:center;gap:.5rem;display:flex}.shop-item__level-req{color:#a0aec0;background:#ffffff0d;border-radius:4px;padding:.25rem .5rem;font-size:.75rem}.shop-item__price{align-items:center;gap:.25rem;display:flex}.shop-item__price-icon{font-size:.9rem}.shop-item__price-value{color:gold;font-size:1rem;font-weight:700}.shop-item__price-value--expensive{color:#f56565}.shop-item__buy-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border:none;border-radius:8px;width:100%;padding:.75rem;font-size:.85rem;font-weight:700;transition:all .3s}.shop-item__buy-btn:hover:not(:disabled){transform:scale(1.02);box-shadow:0 5px 20px #667eea66}.shop-item__buy-btn:disabled{opacity:.5;cursor:not-allowed}.shop-item__buy-btn--buying{animation:.5s infinite pulse}.shop-item__equip-btn{color:#48bb78;cursor:pointer;background:#48bb7833;border:2px solid #48bb78;border-radius:8px;width:100%;padding:.75rem;font-size:.85rem;font-weight:700;transition:all .3s}.shop-item__equip-btn:hover:not(:disabled){background:#48bb784d}.shop-item__equip-btn--equipped{color:#fff;cursor:default;background:#48bb78}.avatar-shop__empty{text-align:center;color:#a0aec0;padding:3rem 1rem}.avatar-shop__empty-icon{margin-bottom:1rem;font-size:3rem;display:block}@media (max-width:768px){.avatar-shop{padding:1rem}.avatar-shop__grid{grid-template-columns:repeat(2,1fr)}.shop-item{padding:1rem}.shop-item__icon{font-size:2.5rem}}@media (max-width:480px){.avatar-shop__grid{grid-template-columns:1fr}}.powerup-bar{background:linear-gradient(135deg,#1e1e2e 0%,#2a2a3e 100%);border-radius:16px;padding:1.25rem}.powerup-bar__title{color:#fff;align-items:center;gap:.5rem;margin-bottom:1rem;font-size:1.1rem;font-weight:700;display:flex}.powerup-bar__title-icon{font-size:1.25rem}.powerup-bar__items{flex-direction:column;gap:.75rem;display:flex}.powerup-item{background:#ffffff08;border:1px solid #ffffff1a;border-radius:12px;align-items:center;gap:1rem;padding:.75rem 1rem;transition:all .3s;display:flex;position:relative}.powerup-item:hover{background:#ffffff0f}.powerup-item--active{background:#667eea33;border-color:#667eea;animation:2s ease-in-out infinite glow}.powerup-item--disabled{opacity:.5}.powerup-item__icon{text-align:center;min-width:2rem;font-size:1.75rem}.powerup-item__info{flex-direction:column;flex:1;min-width:0;display:flex}.powerup-item__name{color:#fff;font-size:.9rem;font-weight:600}.powerup-item__quantity{color:#a0aec0;font-size:.75rem}.powerup-item__actions{gap:.5rem;display:flex}.powerup-item__use-btn{color:#1a1a2e;cursor:pointer;background:linear-gradient(135deg,#48bb78 0%,#68d391 100%);border:none;border-radius:8px;padding:.5rem 1rem;font-size:.8rem;font-weight:700;transition:all .3s}.powerup-item__use-btn:hover:not(:disabled){transform:scale(1.05)}.powerup-item__use-btn:disabled{opacity:.5;cursor:not-allowed}.powerup-item__buy-btn{color:gold;cursor:pointer;background:#ffd70033;border:1px solid #ffd70066;border-radius:8px;align-items:center;gap:.25rem;padding:.5rem 1rem;font-size:.8rem;font-weight:700;transition:all .3s;display:flex}.powerup-item__buy-btn:hover:not(:disabled){background:#ffd7004d}.powerup-item__buy-btn:disabled{opacity:.5;cursor:not-allowed}.powerup-item__buy-icon{font-size:.8rem}.powerup-item__uses-left{color:#a0aec0;font-size:.6rem;position:absolute;bottom:.25rem;right:.5rem}.powerup-bar-compact{gap:.5rem;display:flex}.powerup-compact{color:#fff;cursor:pointer;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:8px;align-items:center;gap:.25rem;padding:.5rem .75rem;transition:all .3s;display:flex}.powerup-compact:hover:not(:disabled){background:#ffffff1a;border-color:#fff3}.powerup-compact:disabled{opacity:.5;cursor:not-allowed}.powerup-compact--active{background:#667eea33;border-color:#667eea}.powerup-compact__icon{font-size:1.25rem}.powerup-compact__count{color:#a0aec0;text-align:center;min-width:1rem;font-size:.75rem;font-weight:700}.powerup-bar-compact-wrapper{flex-direction:column;align-items:center;display:flex;position:relative}.powerup-compact--buy{background:#ffd7000d;border:1px dashed #ffd70066}.powerup-compact--buy:hover:not(:disabled){background:#ffd70026;border-color:gold}.powerup-compact--buy .powerup-compact__count{color:gold;font-size:.7rem}.powerup-buy-confirm-overlay{z-index:100;text-align:center;background:#1e1e2e;border:2px solid #667eea;border-radius:12px;min-width:240px;margin-bottom:.5rem;padding:1rem;animation:.2s ease-out fadeInSlideUp;position:absolute;bottom:100%;box-shadow:0 10px 25px #00000080}@keyframes fadeInSlideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.powerup-buy-confirm-box h4{color:#fff;margin:0 0 .25rem;font-size:.95rem}.powerup-buy-confirm-box p{color:#a0aec0;margin:0 0 .75rem;font-size:.8rem}.powerup-buy-confirm-actions{justify-content:center;gap:.5rem;display:flex}.powerup-buy-btn-cancel,.powerup-buy-btn-confirm{cursor:pointer;border:none;border-radius:6px;padding:.4rem .75rem;font-size:.8rem;font-weight:600;transition:all .2s}.powerup-buy-btn-cancel{color:#cbd5e0;background:#ffffff1a}.powerup-buy-btn-cancel:hover{background:#fff3}.powerup-buy-btn-confirm{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%)}.powerup-buy-btn-confirm:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #667eea66}.powerup-buy-btn-confirm:disabled{color:#a0aec0;cursor:not-allowed;opacity:.6;background:#4a5568}.toast-container{z-index:9999;pointer-events:none;flex-direction:column;gap:1rem;display:flex;position:fixed;top:20px;right:20px}.toast{pointer-events:auto;background:linear-gradient(135deg,#1e1e2e 0%,#2a2a3e 100%);border:2px solid #ffd70080;border-radius:16px;align-items:center;gap:1rem;min-width:350px;max-width:450px;padding:1.25rem 1.5rem;transition:transform .3s,opacity .3s;display:flex;position:relative;overflow:hidden;transform:translate(120%);box-shadow:0 10px 40px #0006}.toast--visible{transform:translate(0)}.toast__glow{background:linear-gradient(135deg,#ffd7001a 0%,#ffa5000d 100%);animation:2s ease-in-out infinite pulse;position:absolute;top:0;bottom:0;left:0;right:0}.toast__glow--levelup{background:linear-gradient(135deg, color-mix(in srgb, var(--level-color) 20%, transparent) 0%, color-mix(in srgb, var(--level-color) 5%, transparent) 100%)}.toast--levelup{border-color:var(--level-color)}.toast__icon{z-index:1;font-size:2.5rem;animation:.6s bounce}.toast__icon--levelup{animation:1s levelup}@keyframes levelup{0%{transform:scale(0)rotate(-180deg)}50%{transform:scale(1.3)rotate(10deg)}to{transform:scale(1)rotate(0)}}.toast__content{z-index:1;flex-direction:column;flex:1;display:flex}.toast__label{text-transform:uppercase;letter-spacing:1px;color:gold;margin-bottom:.25rem;font-size:.7rem;font-weight:700}.toast--levelup .toast__label{color:var(--level-color);animation:.5s infinite flash}@keyframes flash{0%,to{opacity:1}50%{opacity:.7}}.toast__title{color:#fff;font-size:1.1rem;font-weight:800}.toast__description{color:#a0aec0;font-size:.85rem}.toast__rewards{z-index:1;flex-direction:column;gap:.25rem;display:flex}.toast__reward{color:#48bb78;white-space:nowrap;background:#48bb7826;border-radius:4px;padding:.25rem .5rem;font-size:.8rem;font-weight:700}.toast__close{color:#a0aec0;cursor:pointer;z-index:2;background:#ffffff1a;border:none;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;font-size:.75rem;transition:all .3s;display:flex;position:absolute;top:.5rem;right:.5rem}.toast__close:hover{color:#fff;background:#fff3}.toast__confetti{pointer-events:none;position:absolute;top:0;bottom:0;left:0;right:0;overflow:hidden}.confetti-piece{animation:2s forwards confetti;animation-delay:var(--delay);opacity:0;font-size:1.25rem;position:absolute}.confetti-piece:first-child{left:10%}.confetti-piece:nth-child(2){left:20%}.confetti-piece:nth-child(3){left:30%}.confetti-piece:nth-child(4){left:40%}.confetti-piece:nth-child(5){left:50%}.confetti-piece:nth-child(6){left:60%}.confetti-piece:nth-child(7){left:70%}.confetti-piece:nth-child(8){left:80%}.confetti-piece:nth-child(9){left:90%}.confetti-piece:nth-child(10){left:95%}@media (max-width:768px){.toast-container{top:auto;bottom:20px;left:20px;right:20px}.toast{min-width:auto;max-width:none;transform:translateY(120%)}.toast--visible{transform:translateY(0)}}.leaderboard{background:linear-gradient(135deg,#1e1e2e 0%,#2a2a3e 100%);border-radius:20px;padding:1.5rem}.leaderboard__header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.5rem;display:flex}.leaderboard__title{color:#fff;margin:0;font-size:1.5rem;font-weight:800}.leaderboard__periods{gap:.5rem;display:flex}.leaderboard__period{color:#a0aec0;cursor:pointer;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:8px;padding:.5rem 1rem;font-size:.85rem;font-weight:600;transition:all .3s}.leaderboard__period:hover{background:#ffffff1a}.leaderboard__period--active{color:#667eea;background:#667eea33;border-color:#667eea}.leaderboard__podium{justify-content:center;align-items:flex-end;gap:1rem;margin-bottom:2rem;padding:1rem 0;display:flex}.podium-card{background:#ffffff08;border:2px solid #ffffff1a;border-radius:16px;flex-direction:column;align-items:center;min-width:140px;padding:1.25rem;transition:all .3s;display:flex}.podium-card--1{background:linear-gradient(135deg,#ffd7001a 0%,#ffa5001a 100%);border-color:#ffd70066;order:2;transform:scale(1.1)}.podium-card--2{background:linear-gradient(135deg,#c0c0c01a 0%,#a0a0a01a 100%);border-color:#c0c0c066;order:1}.podium-card--3{background:linear-gradient(135deg,#cd7f321a 0%,#b4641e1a 100%);border-color:#cd7f3266;order:3}.podium-card--current{box-shadow:0 0 20px #667eea66}.podium-card__rank{margin-bottom:.5rem;font-size:2rem;animation:1s infinite bounce}.podium-card__avatar{margin-bottom:.5rem;font-size:2.5rem}.podium-card__name{color:#fff;text-align:center;text-overflow:ellipsis;white-space:nowrap;max-width:120px;margin-bottom:.25rem;font-size:.9rem;font-weight:700;overflow:hidden}.podium-card__score{color:gold;align-items:center;gap:.25rem;font-size:1rem;font-weight:700;display:flex}.podium-card__score-icon{font-size:.9rem}.podium-card__level{color:#a0aec0;margin-top:.25rem;font-size:.75rem}.leaderboard__list{flex-direction:column;gap:.5rem;display:flex}.leaderboard__entry{background:#ffffff08;border-radius:12px;align-items:center;gap:1rem;padding:.75rem 1rem;transition:all .3s;display:flex}.leaderboard__entry:hover{background:#ffffff0f}.leaderboard__entry--current{background:#667eea26;border:1px solid #667eea4d}.leaderboard__entry-rank{color:#a0aec0;text-align:center;min-width:30px;font-size:1rem;font-weight:700}.leaderboard__entry-avatar{font-size:1.5rem}.leaderboard__entry-info{flex-direction:column;flex:1;min-width:0;display:flex}.leaderboard__entry-name{color:#fff;text-overflow:ellipsis;white-space:nowrap;font-size:.9rem;font-weight:600;overflow:hidden}.leaderboard__entry-level{color:#a0aec0;font-size:.75rem}.leaderboard__entry-score{color:gold;align-items:center;gap:.25rem;font-size:.9rem;font-weight:600;display:flex}.leaderboard__entry-score-icon{font-size:.8rem}.leaderboard__current-user{margin-top:1rem}.leaderboard__separator{text-align:center;color:#a0aec0;letter-spacing:3px;margin:.5rem 0;font-size:.75rem}.leaderboard__empty{text-align:center;color:#a0aec0;padding:3rem 1rem}.leaderboard__empty-icon{margin-bottom:1rem;font-size:3rem;display:block}@media (max-width:768px){.leaderboard__header{flex-direction:column;align-items:flex-start}.leaderboard__podium{flex-direction:column;align-items:center}.podium-card{width:100%;max-width:200px}.podium-card--1{order:1;transform:none}.podium-card--2{order:2}.podium-card--3{order:3}}.header{-webkit-backdrop-filter:blur(16px);z-index:1000;background:#0f0f1ad9;border-bottom:1px solid #ffffff14;min-height:64px;transition:all .3s;position:sticky;top:0;box-shadow:0 8px 32px #0000005e}.header__container{justify-content:space-between;align-items:center;gap:1.5rem;max-width:1400px;margin:0 auto;padding:.75rem 1.5rem;display:flex}.header__logo{align-items:center;gap:.75rem;text-decoration:none;transition:transform .25s cubic-bezier(.34,1.56,.64,1);display:flex}.header__logo:hover{transform:scale(1.04)}.header__logo-icon-wrapper{justify-content:center;align-items:center;display:inline-flex}.header__logo-emoji{filter:drop-shadow(0 0 8px #00d9ff80);font-size:1.8rem;line-height:1}.header__logo-avatar-frame{border-radius:50%;justify-content:center;align-items:center;width:42px;height:42px;padding:2px;display:inline-flex;box-shadow:0 0 12px #00d9ff66}.header__logo-text{background:linear-gradient(135deg,#00d9ff 0%,#0f8 100%);-webkit-text-fill-color:transparent;letter-spacing:-.5px;filter:drop-shadow(0 2px 10px #00d9ff33);-webkit-background-clip:text;background-clip:text;font-size:1.6rem;font-weight:800}.header__quick-stats{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff0f;border:1px solid #ffffff1f;border-radius:20px;align-items:center;gap:.5rem;padding:.35rem .75rem;display:none}.quick-stat{color:gold;align-items:center;gap:.25rem;font-size:.85rem;font-weight:700;display:inline-flex}.header__actions{align-items:center;gap:1rem;display:flex}.header__hamburger{cursor:pointer;z-index:1001;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff12;border:1px solid #ffffff1f;border-radius:12px;flex-direction:column;justify-content:center;gap:5px;width:42px;height:42px;padding:10px;transition:all .3s;display:none}.header__hamburger:hover{background:#ffffff1f;border-color:#00d9ff66}.header__hamburger-bar{background-color:var(--text-primary,#fff);border-radius:2px;width:100%;height:2px;transition:all .3s cubic-bezier(.68,-.6,.32,1.6)}.header__hamburger--active .header__hamburger-bar:first-child{background-color:#00d9ff;transform:translateY(7px)rotate(45deg)}.header__hamburger--active .header__hamburger-bar:nth-child(2){opacity:0;transform:scaleX(0)}.header__hamburger--active .header__hamburger-bar:nth-child(3){background-color:#00d9ff;transform:translateY(-7px)rotate(-45deg)}.header__nav{align-items:center;gap:1.5rem;display:flex}.header__mobile-profile{display:none}.header__nav-links{align-items:center;gap:.5rem;display:flex}.header__nav-link{color:#a0aec0;background:0 0;border-radius:12px;align-items:center;gap:.5rem;padding:.6rem 1rem;font-size:.92rem;font-weight:600;text-decoration:none;transition:all .25s;display:inline-flex}.header__nav-link:hover{color:#fff;background:#ffffff14;transform:translateY(-1px)}.header__nav-link--active{color:#fff;background:linear-gradient(135deg,#667eea40 0%,#764ba240 100%);border:1px solid #667eea80;box-shadow:0 4px 15px #667eea33}.nav-icon{font-size:1.1rem}.header__user-desktop{align-items:center;display:flex}.header__user-pill{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff0a;border:1px solid #ffffff1a;border-radius:50px;align-items:center;gap:1rem;padding:.4rem .8rem .4rem 1rem;display:flex}.user-pill__stats{border-right:1px solid #ffffff1a;align-items:center;gap:.75rem;padding-right:.75rem;display:flex}.stat-item{color:gold;align-items:center;gap:.3rem;font-size:.85rem;font-weight:700;display:flex}.user-pill__profile{align-items:center;gap:.6rem;display:flex}.user-pill__avatar{border:2px solid var(--color-primary,#00d9ff);object-fit:cover;border-radius:50%;width:34px;height:34px}.user-pill__details{flex-direction:column;display:flex}.user-pill__name{color:#fff;font-size:.85rem;font-weight:700;line-height:1.2}.user-pill__level{color:#a0aec0;font-size:.75rem;font-weight:500}.header__logout-btn{color:#ff6b6b;cursor:pointer;background:#ff6b6b1a;border:1px solid #ff6b6b4d;border-radius:20px;align-items:center;gap:.3rem;padding:.4rem .85rem;font-size:.8rem;font-weight:600;transition:all .25s;display:inline-flex}.header__logout-btn:hover{color:#fff;background:#ff6b6b40;border-color:#ff6b6b;transform:scale(1.03)}.header__auth-links{align-items:center;gap:.75rem;display:flex}.header__auth-link{color:#a0aec0;border-radius:10px;padding:.55rem 1.2rem;font-size:.9rem;font-weight:600;text-decoration:none;transition:all .25s}.header__auth-link:hover{color:#fff;background:#ffffff14}.header__auth-link--primary{color:#0f0f1a;background:linear-gradient(135deg,#00d9ff 0%,#0f8 100%);box-shadow:0 4px 15px #00d9ff4d}.header__auth-link--primary:hover{color:#0f0f1a;transform:translateY(-2px);box-shadow:0 6px 20px #00d9ff80}@media (max-width:768px){.header__container{padding:.65rem 1rem}.header__logo-text{font-size:1.3rem}.header__quick-stats,.header__hamburger{display:flex}.header__nav{-webkit-backdrop-filter:blur(20px);height:calc(100vh - 60px);padding:1.25rem 1.25rem calc(var(--safe-area-bottom,0px) + 2rem);z-index:999;opacity:0;pointer-events:none;background:linear-gradient(#0f0f1af5 0%,#16213efa 100%);border-top:1px solid #ffffff14;flex-direction:column;justify-content:flex-start;align-items:stretch;gap:1.25rem;transition:all .3s cubic-bezier(.16,1,.3,1);position:fixed;top:60px;bottom:0;left:0;right:0;overflow-y:auto;transform:translateY(-10px)}.header__nav--open{opacity:1;pointer-events:auto;transform:translateY(0)}.header__mobile-profile{background:linear-gradient(135deg,#667eea26 0%,#764ba226 100%);border:1px solid #667eea4d;border-radius:16px;align-items:center;gap:1rem;padding:1rem;display:flex;box-shadow:0 8px 25px #0003}.mobile-profile__avatar-container{position:relative}.mobile-profile__avatar{object-fit:cover;border:2px solid #00d9ff;border-radius:50%;width:48px;height:48px;box-shadow:0 0 12px #00d9ff66}.mobile-profile__level-badge{color:#0f0f1a;white-space:nowrap;background:linear-gradient(135deg,#00d9ff 0%,#0f8 100%);border-radius:10px;padding:1px 6px;font-size:.65rem;font-weight:800;position:absolute;bottom:-6px;left:50%;transform:translate(-50%);box-shadow:0 2px 6px #0000004d}.mobile-profile__info{flex-direction:column;display:flex}.mobile-profile__name{color:#fff;font-size:1.1rem;font-weight:800}.mobile-profile__title{color:#00d9ff;font-size:.85rem;font-weight:600}.header__nav-links{flex-direction:column;gap:.5rem;width:100%}.header__nav-link{background:#ffffff0a;border:1px solid #ffffff0f;border-radius:14px;justify-content:flex-start;width:100%;padding:.9rem 1.25rem;font-size:1rem}.header__nav-link--active{background:linear-gradient(135deg,#667eea4d 0%,#764ba24d 100%);border-color:#667eea99}.header__user-desktop{border-top:1px solid #ffffff14;width:100%;margin-top:auto;padding-top:1rem}.header__user-pill{background:#ffffff0d;border-radius:14px;justify-content:space-between;width:100%;padding:.75rem 1rem}.user-pill__stats{display:none}.header__auth-links{flex-direction:column;gap:.75rem;width:100%}.header__auth-link{text-align:center;width:100%;padding:.85rem;font-size:1rem}}.footer{contain:layout style;background:linear-gradient(#0f0f1a 0%,#1a1a2e 100%);border-top:2px solid #0f3460;min-height:200px;margin-top:auto}.footer__container{max-width:1400px;margin:0 auto;padding:3rem 2rem 1.5rem}.footer__content{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:3rem;margin-bottom:3rem;display:flex}.footer__brand{max-width:300px}.footer__logo{background:linear-gradient(90deg,#00d9ff,#0f8);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:1.5rem;font-weight:800}.footer__tagline{color:#a0aec0;margin-top:.75rem;font-size:.95rem;line-height:1.6}.footer__links{gap:4rem;display:flex}.footer__link-group{flex-direction:column;gap:.75rem;display:flex}.footer__link-title{color:#fff;text-transform:uppercase;letter-spacing:1px;margin-bottom:.5rem;font-size:.9rem;font-weight:700}.footer__link{color:#a0aec0;font-size:.9rem;text-decoration:none;transition:all .3s}.footer__link:hover{color:#fff;transform:translate(5px)}.footer__link--highlight{align-items:center;gap:.5rem;font-weight:700;display:inline-flex;color:gold!important}.footer__link--highlight:hover{text-shadow:0 0 10px #ffd70080}.footer__bottom{border-top:1px solid #ffffff1a;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding-top:1.5rem;display:flex}.footer__copyright{color:#a0aec0;font-size:.85rem}.footer__badges{flex-wrap:wrap;gap:1rem;display:flex}.footer__badge{color:#a0aec0;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:20px;padding:.4rem .8rem;font-size:.75rem}@media (max-width:768px){.footer__container{padding:2rem 1rem 1rem}.footer__content{text-align:center;flex-direction:column;align-items:center;gap:2rem}.footer__brand{max-width:100%}.footer__links{gap:2rem}.footer__bottom{text-align:center;flex-direction:column}.footer__badges{justify-content:center}}.protected-route__loading{flex-direction:column;justify-content:center;align-items:center;gap:1.5rem;min-height:50vh;display:flex}.protected-route__spinner{border:4px solid #00d9ff33;border-top-color:#00d9ff;border-radius:50%;width:50px;height:50px;animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.protected-route__loading-text{color:#a0aec0;font-size:1rem;font-weight:500}.offline-indicator{z-index:9999;background:linear-gradient(135deg,#1e1e2e 0%,#2a2a3e 100%);border-radius:50px;align-items:center;gap:.75rem;padding:.75rem 1.25rem;animation:.3s slideUp;display:flex;position:fixed;bottom:20px;left:50%;transform:translate(-50%);box-shadow:0 10px 30px #0006}.offline-indicator--offline{border:2px solid #f5656580}.offline-indicator--syncing{border:2px solid #ed893680}.offline-indicator--install{border:2px solid #667eea80}.offline-indicator--update{border:2px solid #48bb7880}.offline-indicator__icon{font-size:1.25rem}.offline-indicator__text{color:#fff;font-size:.9rem;font-weight:600}.offline-indicator__pending{color:#a0aec0;background:#ffffff1a;border-radius:4px;padding:.25rem .5rem;font-size:.8rem}.offline-indicator__btn{color:#fff;cursor:pointer;background:#ffffff1a;border:1px solid #fff3;border-radius:8px;padding:.5rem 1rem;font-size:.8rem;font-weight:600;transition:all .3s}.offline-indicator__btn:hover{background:#fff3}.offline-indicator__btn--primary{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border:none}.offline-indicator__btn--primary:hover{transform:scale(1.05)}@media (max-width:480px){.offline-indicator{text-align:center;border-radius:16px;flex-wrap:wrap;justify-content:center;left:10px;right:10px;transform:none}}.home-page{min-height:100vh}.hero{justify-content:space-between;align-items:center;gap:4rem;max-width:1400px;margin:0 auto;padding:4rem 2rem 6rem;display:flex}.hero__content{flex:1;max-width:600px}.hero__badge{color:#a0b4f0;background:linear-gradient(135deg,#667eea33 0%,#764ba233 100%);border:1px solid #667eea66;border-radius:50px;margin-bottom:1.5rem;padding:.5rem 1rem;font-size:.875rem;font-weight:600;display:inline-block}.hero__title{color:#fff;margin:0 0 1.5rem;font-size:3.5rem;font-weight:900;line-height:1.15}.hero__highlight{background:linear-gradient(90deg,#00d9ff,#0f8);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.hero__description{color:#a0aec0;margin:0 0 2.5rem;font-size:1.25rem;line-height:1.7}.hero__actions{flex-wrap:wrap;gap:1rem;display:flex}.hero__btn{border-radius:14px;align-items:center;gap:.5rem;padding:1rem 2rem;font-size:1.1rem;font-weight:700;text-decoration:none;transition:all .3s;display:inline-flex}.hero__btn--primary{color:#1a1a2e;background:linear-gradient(135deg,#00d9ff 0%,#0f8 100%);box-shadow:0 4px 20px #00d9ff4d}.hero__btn--primary:hover{color:#1a1a2e;transform:translateY(-3px);box-shadow:0 8px 30px #00d9ff66}.hero__btn--secondary{color:#e0e0f0;background:0 0;border:2px solid #fff3}.hero__btn--secondary:hover{background:#ffffff0d;border-color:#fff6}.hero__illustration{flex:0 0 300px;justify-content:center;align-items:center;min-width:300px;min-height:250px;display:flex;position:relative}.hero__snake{font-size:clamp(6rem,14vw,10rem);line-height:1;display:inline-block;transform:translateZ(0)}.home-page--animate-hero .hero__snake{filter:drop-shadow(0 12px 20px #00d9ff38);animation:4s ease-in-out infinite float}.hero__illustration:before,.hero__illustration:after{content:"⭐";pointer-events:none;font-size:1.5rem;animation:2s ease-in-out infinite twinkle;position:absolute}.hero__illustration:before{top:10%;left:10%}.hero__illustration:after{content:"✨";animation-delay:.5s;top:20%;right:10%}.features{content-visibility:auto;contain-intrinsic-size:auto 600px;background:linear-gradient(#0000 0%,#0f346033 100%);padding:6rem 2rem}.user-progress{z-index:1;background:linear-gradient(#667eea14 0%,#0000 100%);border-radius:32px;max-width:1200px;margin:-2rem auto 0;padding:3rem 2rem 4rem;position:relative}.user-progress__header{text-align:center;margin-bottom:2rem}.user-progress__title{color:#fff;margin:0 0 .5rem;font-size:1.75rem;font-weight:700}.user-progress__subtitle{color:#a0aec0;margin:0;font-size:1rem}.user-progress__grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.25rem;margin-bottom:2rem;display:grid}.progress-card{background:#ffffff0a;border:1px solid #ffffff14;border-radius:20px;align-items:flex-start;gap:1rem;padding:1.5rem;transition:all .3s;display:flex}.progress-card:hover{background:#ffffff12;border-color:#667eea4d;transform:translateY(-3px)}.progress-card__icon{flex-shrink:0;font-size:2.5rem}.progress-card__content{flex:1;min-width:0}.progress-card__label{color:#a0aec0;margin-bottom:.25rem;font-size:.85rem;font-weight:500;display:block}.progress-card__value{color:#fff;margin-bottom:.5rem;font-size:1.5rem;font-weight:700;display:block}.progress-card__detail{color:#718096;font-size:.8rem;display:block}.xp-bar{background:#ffffff1a;border-radius:3px;width:100%;height:6px;margin-bottom:.5rem;overflow:hidden}.xp-bar__fill{background:linear-gradient(90deg,#00d9ff,#0f8);border-radius:3px;height:100%;transition:width .5s ease-out}.progress-card--level{border-color:#00d9ff33}.progress-card--streak{border-color:#f803}.progress-card--stars{border-color:#ffd70033}.progress-card--questions{border-color:#0f83}.user-progress__cta{flex-wrap:wrap;justify-content:center;gap:1.5rem;display:flex}@media (max-width:576px){.user-progress{border-radius:0;margin-top:0;padding:2rem 1rem 3rem}.user-progress__title{font-size:1.5rem}.user-progress__grid{grid-template-columns:repeat(2,1fr)}.progress-card{text-align:center;flex-direction:column;align-items:center;padding:1rem}.progress-card__value{font-size:1.25rem}.user-progress__cta{flex-direction:column}.user-progress__cta .hero__btn{justify-content:center;width:100%}}.features__title{text-align:center;color:#fff;margin:0 0 4rem;font-size:2.5rem;font-weight:800}.features__grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;max-width:1200px;margin:0 auto;display:grid}.feature-card{text-align:center;background:#ffffff08;border:1px solid #ffffff14;border-radius:20px;padding:2rem;transition:all .3s}.feature-card:hover{background:#ffffff0f;border-color:#667eea4d;transform:translateY(-5px)}.feature-card--link{cursor:pointer;text-decoration:none}.feature-card__icon{margin-bottom:1rem;font-size:3rem;display:block}.feature-card__title{color:#fff;margin:0 0 .75rem;font-size:1.25rem;font-weight:700}.feature-card__description{color:#a0aec0;margin:0;font-size:.95rem;line-height:1.6}@keyframes twinkle{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.8)}}.worlds-preview{text-align:center;content-visibility:auto;contain-intrinsic-size:auto 300px;padding:6rem 2rem}.worlds-preview__title{color:#fff;margin:0 0 3rem;font-size:2.25rem;font-weight:800}.worlds-preview__list{flex-wrap:wrap;justify-content:center;gap:1rem;max-width:1000px;margin:0 auto;display:flex}.world-preview{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:50px;align-items:center;gap:.75rem;padding:.75rem 1.5rem;transition:all .3s;display:flex}.world-preview:first-child{background:linear-gradient(135deg,#00d9ff33 0%,#0f83 100%);border-color:#00d9ff66}.world-preview--locked{opacity:.5}.world-preview__icon{font-size:1.5rem}.world-preview__name{color:#e0e0f0;font-size:.95rem;font-weight:600}.cta{text-align:center;content-visibility:auto;contain-intrinsic-size:auto 350px;background:linear-gradient(#667eea1a 0%,#764ba21a 100%);padding:6rem 2rem}.cta__content{max-width:600px;margin:0 auto}.cta__title{color:#fff;margin:0 0 1rem;font-size:2.25rem;font-weight:800}.cta__description{color:#a0aec0;margin:0 0 2rem;font-size:1.15rem}.cta__btn{color:#1a1a2e;background:linear-gradient(135deg,#00d9ff 0%,#0f8 100%);border-radius:14px;padding:1.25rem 3rem;font-size:1.25rem;font-weight:800;text-decoration:none;transition:all .3s;display:inline-block;box-shadow:0 4px 20px #00d9ff4d}.cta__btn:hover{color:#1a1a2e;transform:translateY(-3px)scale(1.02);box-shadow:0 8px 30px #00d9ff66}@media (max-width:992px){.hero{text-align:center;flex-direction:column;gap:1.5rem;padding:2.5rem 1.5rem 1.5rem}.hero__title{font-size:2.2rem}.hero__actions{justify-content:center}.hero__illustration{flex:none;min-width:auto;min-height:auto}.hero__snake{font-size:6rem}}@media (max-width:768px){.hero{gap:1.25rem;padding:2rem 1.25rem 1rem}.home-page--animate-hero .hero__snake{filter:none;animation:none}.hero__illustration{min-width:auto;min-height:auto;margin-top:.5rem;margin-bottom:0}.hero__snake{font-size:5rem}.hero__illustration:before,.hero__illustration:after{content:none;animation:none}.hero__title{margin-bottom:1rem;font-size:1.85rem}.hero__description{margin-bottom:1.75rem;font-size:1rem}.hero__actions{flex-direction:column;width:100%;max-width:320px;margin:0 auto 1rem;display:flex;gap:1.25rem!important}.hero__btn{box-sizing:border-box;border-radius:14px;justify-content:center;width:100%;padding:1rem 1.5rem;font-size:1.05rem;margin:0!important}.hero__btn--primary{box-shadow:0 4px 14px #00d9ff40}.hero__btn--secondary{background:#ffffff0d;border:1px solid #fff3}.features{padding:2.5rem 1.25rem}.features__title,.worlds-preview__title,.cta__title{margin-bottom:2rem;font-size:1.6rem}}.app{flex-direction:column;min-height:100vh;display:flex}.skip-to-content{background:var(--color-primary);color:var(--bg-dark);z-index:2000;border-bottom-right-radius:8px;padding:.5rem 1rem;font-weight:700;text-decoration:none;transition:top .2s;position:absolute;top:-100px;left:0}.skip-to-content:focus{outline:2px solid var(--text-primary);top:0}.app__main{flex-direction:column;flex:1;display:flex}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.page-loader{flex-direction:column;justify-content:center;align-items:center;gap:1rem;min-height:300px;display:flex}.page-loader__spinner{border:4px solid #8b5cf633;border-top-color:#8b5cf6;border-radius:50%;width:48px;height:48px;animation:1s linear infinite spin}.page-loader__text{color:#a0aec0;font-size:1rem}
