@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&family=Fira+Code:wght@400;500;600;700&display=swap";*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--color-primary: #00d9ff;--color-primary-dark: #00b8d9;--color-secondary: #00ff88;--color-accent: #667eea;--color-accent-dark: #764ba2;--bg-dark: #0f0f1a;--bg-darker: #0a0a12;--bg-card: #1e1e2e;--bg-card-hover: #2a2a3e;--text-primary: #ffffff;--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: #ffd700;--color-silver: #c0c0c0;--color-bronze: #cd7f32;--border-color: rgba(255, 255, 255, .1);--border-color-hover: rgba(255, 255, 255, .2);--shadow-sm: 0 2px 4px rgba(0, 0, 0, .1);--shadow-md: 0 4px 12px rgba(0, 0, 0, .15);--shadow-lg: 0 10px 30px rgba(0, 0, 0, .2);--shadow-xl: 0 20px 50px rgba(0, 0, 0, .3);--shadow-glow: 0 0 30px rgba(0, 217, 255, .3);--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{font-size:16px;scroll-behavior:smooth}body{font-family:var(--font-primary);font-size:1rem;line-height:1.6;color:var(--text-secondary);background:linear-gradient(180deg,var(--bg-dark) 0%,var(--bg-darker) 100%);background-attachment:fixed;min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}::-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);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-secondary)}button{font-family:inherit;font-size:inherit;cursor:pointer;border:none;background: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{font-weight:700;line-height:1.2;color:var(--text-primary)}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 slideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-15px)}60%{transform:translateY(-8px)}}@keyframes sparkle{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(1.1)}}@keyframes glow{0%,to{box-shadow:0 0 5px var(--color-primary),0 0 10px var(--color-primary)}50%{box-shadow:0 0 20px var(--color-primary),0 0 30px var(--color-primary)}}@keyframes rainbow{0%{filter:hue-rotate(0deg)}to{filter:hue-rotate(360deg)}}@keyframes confetti{0%{transform:translateY(0) rotate(0);opacity:1}to{transform:translateY(-100vh) rotate(720deg);opacity:0}}@keyframes wiggle{0%,to{transform:rotate(-3deg)}50%{transform:rotate(3deg)}}@keyframes pop{0%{transform:scale(.8);opacity:0}50%{transform:scale(1.1)}to{transform:scale(1);opacity:1}}@keyframes typewriter{0%{width:0}to{width:100%}}.animate-bounce{animation:bounce 1s ease infinite}.animate-float{animation:float 3s ease-in-out infinite}.animate-sparkle{animation:sparkle 1.5s ease-in-out infinite}.animate-glow{animation:glow 2s ease-in-out infinite}.animate-wiggle{animation:wiggle .5s ease-in-out infinite}.animate-pop{animation:pop .3s ease-out}.animate-slide-up{animation:slideUp .4s ease-out}.animate-fade-in{animation:fadeIn .3s ease-out}.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}}: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(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}a{padding:.5rem;margin:-.5rem}}@media(max-width:768px){.header__container{padding:.5rem 1rem;flex-wrap:wrap}.header__logo-text{font-size:1rem}.header__nav{order:3;width:100%;display:flex;justify-content:center;gap:.5rem;padding-top:.5rem;border-top:1px solid rgba(255,255,255,.1);margin-top:.5rem;overflow-x:auto;-webkit-overflow-scrolling:touch}.header__nav-link{padding:.5rem .75rem;font-size:.75rem;white-space:nowrap}.header__user{order:2}.header__user-details{flex-direction:column;gap:.25rem}.header__user-name{font-size:.85rem}.header__user-stars{font-size:.75rem}}@media(max-width:768px){.game-page__content{padding:.75rem}.game-page__header{flex-direction:column;gap:.5rem;text-align:center}.game-page__world-info{font-size:1rem}}@media(max-width:768px){.question-card{padding:1rem;border-radius:16px}.question-card__header{flex-wrap:wrap;gap:.5rem}.question-card__title{font-size:1rem;width:100%}.question-card__prompt{font-size:.9rem;padding:.75rem}.options-grid{grid-template-columns:1fr;gap:.5rem}.option-button{padding:1rem;font-size:.9rem;min-height:60px}.true-false-buttons{flex-direction:column;gap:.75rem}.true-false-btn{padding:1rem 1.5rem;font-size:1rem}}@media(max-width:768px){.python-editor{min-height:200px}.python-editor__textarea,.CodeMirror{font-size:14px!important;line-height:1.4}.python-editor__toolbar{flex-wrap:wrap;gap:.5rem}.python-editor__run-btn{width:100%;padding:1rem;font-size:1rem}.python-editor__output{font-size:.85rem;max-height:150px;overflow-y:auto}}@media(max-width:768px){.world-map{padding:1rem}.world-map__header{flex-direction:column;text-align:center;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}}@media(max-width:768px){.result-panel{padding:1rem;margin:.5rem}.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{font-size:.85rem;padding:.75rem}}@media(max-width:768px){.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{padding:1rem;flex-wrap:wrap}.mission-card__icon{font-size:2rem}.mission-card__rewards{width:100%;flex-direction:row;justify-content:center;border-left:none;border-top:1px solid rgba(255,255,255,.1);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}}@media(max-width:768px){.home-page__hero{padding:2rem 1rem}.home-page__title{font-size:2rem}.home-page__subtitle{font-size:1rem}.home-page__features{grid-template-columns:1fr;gap:1rem;padding:1rem}.home-page__feature{padding:1.25rem}.home-page__cta-buttons{flex-direction:column;gap:.75rem}.home-page__cta-btn{width:100%;padding:1rem;font-size:1rem}}@media(max-width:768px){.login-page,.register-page{padding:1rem}.login-page__form,.register-page__form{padding:1.5rem;border-radius:16px}.login-page__title,.register-page__title{font-size:1.5rem}.form-group input{padding:1rem;font-size:16px}}@media(max-width:768px){.profile-page{padding:1rem}.profile-page__header{flex-direction:column;text-align:center}.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{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!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}}@media(max-width:374px){html{font-size:14px}.header__nav-link{padding:.4rem .5rem;font-size:.7rem}.world-card{padding:1rem}.gamification-page__stat{padding:.4rem}.gamification-page__stat-value{font-size:1rem}}@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}}.header{background:linear-gradient(135deg,#1a1a2e,#16213e);border-bottom:2px solid #0f3460;padding:0;position:sticky;top:0;z-index:1000;box-shadow:0 4px 20px #0000004d}.header__container{max-width:1400px;margin:0 auto;padding:.75rem 2rem;display:flex;align-items:center;justify-content:space-between;gap:2rem}.header__logo{display:flex;align-items:center;gap:.75rem;text-decoration:none;transition:transform .3s ease}.header__logo:hover{transform:scale(1.05)}.header__logo-icon{font-size:2rem;animation:bounce 2s infinite}.header__logo-text{font-size:1.75rem;font-weight:800;background:linear-gradient(90deg,#00d9ff,#0f8);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:-.5px}.header__nav{display:flex;gap:.5rem}.header__nav-link{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;border-radius:12px;text-decoration:none;color:#a0aec0;font-weight:600;font-size:.95rem;transition:all .3s ease;background:transparent}.header__nav-link:hover{background:#ffffff1a;color:#fff;transform:translateY(-2px)}.header__nav-link--active{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;box-shadow:0 4px 15px #667eea66}.header__user{display:flex;align-items:center}.header__loading{color:#a0aec0;font-size:.875rem}.header__user-info{display:flex;align-items:center;gap:1.5rem}.header__user-details{display:flex;flex-direction:column;align-items:flex-end;gap:.125rem}.header__user-name{color:#fff;font-weight:700;font-size:.95rem}.header__user-stars{color:gold;font-size:.85rem;font-weight:600}.header__user-guest{color:#a0aec0;font-size:.75rem;font-style:italic}.header__logout-btn{padding:.5rem 1rem;border-radius:8px;border:2px solid rgba(255,107,107,.5);background:#ff6b6b1a;color:#ff6b6b;font-weight:600;font-size:.85rem;cursor:pointer;transition:all .3s ease}.header__logout-btn:hover{background:#ff6b6b33;border-color:#ff6b6b;transform:translateY(-2px)}.header__auth-links{display:flex;align-items:center;gap:.75rem}.header__auth-link{padding:.6rem 1.25rem;border-radius:8px;text-decoration:none;font-weight:600;font-size:.9rem;transition:all .3s ease;color:#a0aec0}.header__auth-link:hover{color:#fff;background:#ffffff1a}.header__auth-link--primary{background:linear-gradient(135deg,#00d9ff,#0f8);color:#1a1a2e}.header__auth-link--primary:hover{background:linear-gradient(135deg,#00e5ff,#0f9);color:#1a1a2e;transform:translateY(-2px);box-shadow:0 4px 15px #00d9ff66}@media(max-width:768px){.header__container{padding:.75rem 1rem;flex-wrap:wrap;gap:1rem}.header__nav{order:3;width:100%;justify-content:center;flex-wrap:wrap}.header__nav-link{padding:.5rem .75rem;font-size:.85rem}.header__logo-text{font-size:1.4rem}}.footer{background:linear-gradient(180deg,#0f0f1a,#1a1a2e);border-top:2px solid #0f3460;margin-top:auto}.footer__container{max-width:1400px;margin:0 auto;padding:3rem 2rem 1.5rem}.footer__content{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:3rem;margin-bottom:3rem}.footer__brand{max-width:300px}.footer__logo{font-size:1.5rem;font-weight:800;background:linear-gradient(90deg,#00d9ff,#0f8);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.footer__tagline{color:#a0aec0;margin-top:.75rem;font-size:.95rem;line-height:1.6}.footer__links{display:flex;gap:4rem}.footer__link-group{display:flex;flex-direction:column;gap:.75rem}.footer__link-title{color:#fff;font-size:.9rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;margin-bottom:.5rem}.footer__link{color:#a0aec0;text-decoration:none;font-size:.9rem;transition:all .3s ease}.footer__link:hover{color:#00d9ff;transform:translate(5px)}.footer__bottom{border-top:1px solid rgba(255,255,255,.1);padding-top:1.5rem;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}.footer__copyright{color:#718096;font-size:.85rem}.footer__badges{display:flex;gap:1rem;flex-wrap:wrap}.footer__badge{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:20px;padding:.4rem .8rem;font-size:.75rem;color:#a0aec0}@media(max-width:768px){.footer__container{padding:2rem 1rem 1rem}.footer__content{flex-direction:column;align-items:center;text-align:center;gap:2rem}.footer__brand{max-width:100%}.footer__links{gap:2rem}.footer__bottom{flex-direction:column;text-align:center}.footer__badges{justify-content:center}}.protected-route__loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:50vh;gap:1.5rem}.protected-route__spinner{width:50px;height:50px;border:4px solid rgba(0,217,255,.2);border-top-color:#00d9ff;border-radius:50%;animation:spin 1s linear infinite}.protected-route__loading-text{color:#a0aec0;font-size:1rem;font-weight:500}.offline-indicator{position:fixed;bottom:20px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:.75rem;padding:.75rem 1.25rem;background:linear-gradient(135deg,#1e1e2e,#2a2a3e);border-radius:50px;box-shadow:0 10px 30px #0006;z-index:9999;animation:slideUp .3s ease}@keyframes slideUp{0%{opacity:0;transform:translate(-50%) translateY(20px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.offline-indicator--offline{border:2px solid rgba(245,101,101,.5)}.offline-indicator--syncing{border:2px solid rgba(237,137,54,.5)}.offline-indicator--install{border:2px solid rgba(102,126,234,.5)}.offline-indicator--update{border:2px solid rgba(72,187,120,.5)}.offline-indicator__icon{font-size:1.25rem}.offline-indicator__text{font-size:.9rem;font-weight:600;color:#fff}.offline-indicator__pending{font-size:.8rem;color:#a0aec0;background:#ffffff1a;padding:.25rem .5rem;border-radius:4px}.offline-indicator__btn{padding:.5rem 1rem;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:8px;color:#fff;font-size:.8rem;font-weight:600;cursor:pointer;transition:all .3s ease}.offline-indicator__btn:hover{background:#fff3}.offline-indicator__btn--primary{background:linear-gradient(135deg,#667eea,#764ba2);border:none}.offline-indicator__btn--primary:hover{transform:scale(1.05)}@media(max-width:480px){.offline-indicator{left:10px;right:10px;transform:none;border-radius:16px;flex-wrap:wrap;justify-content:center;text-align:center}}.mascot{position:fixed;z-index:9999;cursor:pointer;-webkit-user-select:none;user-select:none;transition:transform .3s ease;background:none;border:none;padding:0;text-align:inherit;font:inherit}.mascot:hover{transform:scale(1.05)}.mascot--bottom-right{bottom:20px;right:20px}.mascot--bottom-left{bottom:20px;left:20px}.mascot--center{top:50%;left:50%;transform:translate(-50%,-50%)}.mascot--inline{position:relative;display:inline-flex;flex-direction:column;align-items:center}.mascot--small .mascot__body{width:50px;height:50px}.mascot--small .mascot__face{font-size:1.75rem}.mascot--medium .mascot__body{width:70px;height:70px}.mascot--medium .mascot__face{font-size:2.5rem}.mascot--large .mascot__body{width:100px;height:100px}.mascot--large .mascot__face{font-size:3.5rem}.mascot__body{position:relative;background:linear-gradient(145deg,#1e1e2e,#2a2a3e);border:3px solid var(--mascot-color, #667eea);border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .3s ease}.mascot__face{position:relative;z-index:2;line-height:1}.mascot__glow{position:absolute;inset:-5px;background:var(--mascot-color, #667eea);border-radius:50%;opacity:.3;filter:blur(10px);z-index:-1;animation:glowPulse 2s ease infinite}@keyframes glowPulse{0%,to{opacity:.3;transform:scale(1)}50%{opacity:.5;transform:scale(1.1)}}.mascot__tail{position:absolute;bottom:-5px;right:-15px;width:40px;height:20px;transform:rotate(-30deg)}.mascot__tail-svg{width:100%;height:100%;animation:wiggle 1s ease infinite}@keyframes wiggle{0%,to{transform:translate(0)}25%{transform:translate(-2px)}75%{transform:translate(2px)}}.mascot__name{display:block;margin-top:.5rem;font-size:.7rem;font-weight:600;color:var(--mascot-color, #667eea);text-align:center;opacity:.8}.mascot__bubble{position:absolute;bottom:calc(100% + 15px);right:0;max-width:200px;padding:.75rem 1rem;background:linear-gradient(145deg,#1e1e2e,#2a2a3e);border:2px solid var(--mascot-color, #667eea);border-radius:16px;box-shadow:0 5px 20px #0000004d;animation:bubblePop .3s ease}@keyframes bubblePop{0%{opacity:0;transform:scale(.8) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}.mascot__message{margin:0;font-size:.85rem;line-height:1.4;color:#fff;text-align:center}.mascot__bubble-tail{position:absolute;bottom:-10px;right:20px;width:0;height:0;border-left:10px solid transparent;border-right:10px solid transparent;border-top:12px solid var(--mascot-color, #667eea)}.mascot__body--float{animation:float 3s ease-in-out infinite}.mascot__body--bounce{animation:bounce .6s ease infinite}@keyframes bounce{0%,to{transform:translateY(0)}40%{transform:translateY(-20px)}60%{transform:translateY(-10px)}}.mascot__body--shake{animation:shake .5s ease infinite}@keyframes shake{0%,to{transform:translate(0) rotate(0)}25%{transform:translate(-5px) rotate(-5deg)}75%{transform:translate(5px) rotate(5deg)}}.mascot__body--tilt{animation:tilt 2s ease infinite}@keyframes tilt{0%,to{transform:rotate(0)}25%{transform:rotate(-15deg)}75%{transform:rotate(15deg)}}.mascot__body--wobble{animation:wobble .8s ease infinite}@keyframes wobble{0%,to{transform:rotate(0)}15%{transform:rotate(-10deg)}30%{transform:rotate(8deg)}45%{transform:rotate(-6deg)}60%{transform:rotate(4deg)}75%{transform:rotate(-2deg)}}.mascot__body--pulse{animation:mascotPulse 1s ease infinite}@keyframes mascotPulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.mascot__body--confetti{animation:celebrate .8s ease infinite}@keyframes celebrate{0%,to{transform:scale(1) rotate(0)}25%{transform:scale(1.1) rotate(-5deg)}50%{transform:scale(1.15) rotate(0)}75%{transform:scale(1.1) rotate(5deg)}}.mascot__body--wave{animation:wave 1s ease infinite}@keyframes wave{0%,to{transform:rotate(0)}10%{transform:rotate(20deg)}20%{transform:rotate(-10deg)}30%{transform:rotate(20deg)}40%{transform:rotate(-10deg)}50%{transform:rotate(0)}}[data-color-mode=light] .mascot__body{background:linear-gradient(145deg,#fff,#f0f0f0)}[data-color-mode=light] .mascot__bubble{background:linear-gradient(145deg,#fff,#f5f5f5)}[data-color-mode=light] .mascot__message{color:#333}@media(max-width:768px){.mascot--bottom-right,.mascot--bottom-left{bottom:80px}.mascot--medium .mascot__body{width:55px;height:55px}.mascot--medium .mascot__face{font-size:2rem}.mascot__bubble{max-width:160px;right:-10px}.mascot__name{display:none}}@media(prefers-reduced-motion:reduce){.mascot__body,.mascot__tail-svg,.mascot__glow{animation:none!important}}.home-page{min-height:100vh}.hero{display:flex;align-items:center;justify-content:space-between;gap:4rem;padding:4rem 2rem 6rem;max-width:1400px;margin:0 auto}.hero__content{flex:1;max-width:600px}.hero__badge{display:inline-block;background:linear-gradient(135deg,#667eea33,#764ba233);border:1px solid rgba(102,126,234,.4);border-radius:50px;padding:.5rem 1rem;font-size:.875rem;font-weight:600;color:#a0b4f0;margin-bottom:1.5rem}.hero__title{font-size:3.5rem;font-weight:900;color:#fff;line-height:1.15;margin:0 0 1.5rem}.hero__highlight{background:linear-gradient(90deg,#00d9ff,#0f8);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hero__description{font-size:1.25rem;color:#a0aec0;line-height:1.7;margin:0 0 2.5rem}.hero__actions{display:flex;gap:1rem;flex-wrap:wrap}.hero__btn{padding:1rem 2rem;border-radius:14px;font-size:1.1rem;font-weight:700;text-decoration:none;transition:all .3s ease;display:inline-flex;align-items:center;gap:.5rem}.hero__btn--primary{background:linear-gradient(135deg,#00d9ff,#0f8);color:#1a1a2e;box-shadow:0 4px 20px #00d9ff4d}.hero__btn--primary:hover{transform:translateY(-3px);box-shadow:0 8px 30px #00d9ff66}.hero__btn--secondary{background:transparent;border:2px solid rgba(255,255,255,.2);color:#e0e0f0}.hero__btn--secondary:hover{border-color:#fff6;background:#ffffff0d}.hero__illustration{flex:0 0 300px;position:relative;display:flex;align-items:center;justify-content:center}.hero__snake{font-size:12rem;animation:float 4s ease-in-out infinite;filter:drop-shadow(0 20px 40px rgba(0,217,255,.3))}@keyframes float{0%,to{transform:translateY(0) rotate(-5deg)}50%{transform:translateY(-20px) rotate(5deg)}}.hero__stars{position:absolute;width:100%;height:100%}.star{position:absolute;font-size:2rem;animation:twinkle 2s ease-in-out infinite}.star--1{top:10%;left:10%;animation-delay:0s}.star--2{top:20%;right:10%;animation-delay:.5s}.star--3{bottom:20%;left:5%;animation-delay:1s}.star--4{bottom:10%;right:15%;animation-delay:1.5s}@keyframes twinkle{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.8)}}.features{padding:6rem 2rem;background:linear-gradient(180deg,transparent 0%,rgba(15,52,96,.2) 100%)}.features__title{text-align:center;font-size:2.5rem;font-weight:800;color:#fff;margin:0 0 4rem}.features__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;max-width:1200px;margin:0 auto}.feature-card{background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:20px;padding:2rem;text-align:center;transition:all .3s ease}.feature-card:hover{background:#ffffff0f;border-color:#667eea4d;transform:translateY(-5px)}.feature-card__icon{font-size:3rem;margin-bottom:1rem}.feature-card__title{font-size:1.25rem;font-weight:700;color:#fff;margin:0 0 .75rem}.feature-card__description{font-size:.95rem;color:#a0aec0;line-height:1.6;margin:0}.worlds-preview{padding:6rem 2rem;text-align:center}.worlds-preview__title{font-size:2.25rem;font-weight:800;color:#fff;margin:0 0 3rem}.worlds-preview__list{display:flex;justify-content:center;flex-wrap:wrap;gap:1rem;max-width:1000px;margin:0 auto}.world-preview{display:flex;align-items:center;gap:.75rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:50px;padding:.75rem 1.5rem;transition:all .3s ease}.world-preview:first-child{background:linear-gradient(135deg,#00d9ff33,#0f83);border-color:#00d9ff66}.world-preview--locked{opacity:.5}.world-preview__icon{font-size:1.5rem}.world-preview__name{font-size:.95rem;font-weight:600;color:#e0e0f0}.cta{padding:6rem 2rem;text-align:center;background:linear-gradient(180deg,#667eea1a,#764ba21a)}.cta__content{max-width:600px;margin:0 auto}.cta__title{font-size:2.25rem;font-weight:800;color:#fff;margin:0 0 1rem}.cta__description{font-size:1.15rem;color:#a0aec0;margin:0 0 2rem}.cta__btn{display:inline-block;padding:1.25rem 3rem;background:linear-gradient(135deg,#00d9ff,#0f8);color:#1a1a2e;border-radius:14px;font-size:1.25rem;font-weight:800;text-decoration:none;transition:all .3s ease;box-shadow:0 4px 20px #00d9ff4d}.cta__btn:hover{transform:translateY(-3px) scale(1.02);box-shadow:0 8px 30px #00d9ff66}@media(max-width:992px){.hero{flex-direction:column;text-align:center;padding:3rem 1.5rem 4rem;gap:2rem}.hero__title{font-size:2.5rem}.hero__actions{justify-content:center}.hero__illustration{flex:0 0 auto}.hero__snake{font-size:8rem}}@media(max-width:576px){.hero__title{font-size:2rem}.hero__description{font-size:1.05rem}.hero__btn{width:100%;justify-content:center}.features__title,.worlds-preview__title,.cta__title{font-size:1.75rem}}.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem;background:linear-gradient(180deg,#1a1a2e,#0f0f1a)}.auth-card{width:100%;max-width:440px;background:linear-gradient(145deg,#1e1e2e,#2a2a3e);border:2px solid #3d3d5c;border-radius:24px;padding:2.5rem;box-shadow:0 20px 60px #0006}.auth-card__header{text-align:center;margin-bottom:2rem}.auth-card__icon{font-size:4rem;margin-bottom:1rem;animation:bounce 2s infinite}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.auth-card__title{font-size:1.75rem;font-weight:800;color:#fff;margin:0 0 .5rem}.auth-card__subtitle{color:#a0aec0;font-size:1rem;margin:0}.auth-alert{padding:1rem;border-radius:12px;margin-bottom:1.5rem;font-size:.95rem;font-weight:500}.auth-alert--error{background:#f5656526;border:1px solid rgba(245,101,101,.3);color:#fc8181}.auth-alert--warning{background:#ed893626;border:1px solid rgba(237,137,54,.3);color:#fbd38d}.auth-alert--success{background:#48bb7826;border:1px solid rgba(72,187,120,.3);color:#68d391}.auth-form{display:flex;flex-direction:column;gap:1.25rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-label{color:#e0e0f0;font-size:.95rem;font-weight:600}.form-input{padding:1rem 1.25rem;background:#0000004d;border:2px solid rgba(255,255,255,.1);border-radius:12px;color:#fff;font-size:1rem;transition:all .3s ease}.form-input::placeholder{color:#6b6b8a}.form-input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 4px #667eea33}.form-input:disabled{opacity:.6;cursor:not-allowed}.auth-btn{padding:1rem 2rem;border-radius:12px;font-size:1.1rem;font-weight:700;cursor:pointer;transition:all .3s ease;border:none;display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%}.auth-btn--primary{background:linear-gradient(135deg,#00d9ff,#0f8);color:#1a1a2e;box-shadow:0 4px 20px #00d9ff4d}.auth-btn--primary:hover:not(:disabled){transform:translateY(-3px);box-shadow:0 8px 30px #00d9ff66}.auth-btn--primary:disabled{opacity:.6;cursor:not-allowed;transform:none}.auth-btn--guest{background:#667eea33;border:2px solid rgba(102,126,234,.4);color:#a0b4f0}.auth-btn--guest:hover{background:#667eea4d;border-color:#667eea}.auth-divider{display:flex;align-items:center;margin:1.5rem 0}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background:#ffffff1a}.auth-divider span{padding:0 1rem;color:#6b6b8a;font-size:.875rem}.auth-guest-note{text-align:center;font-size:.85rem;color:#6b6b8a;margin:1rem 0 0;font-style:italic}.auth-links{margin-top:2rem;text-align:center}.auth-links p{color:#a0aec0;font-size:.95rem;margin:0}.auth-link{color:#00d9ff;text-decoration:none;font-weight:600;transition:color .3s ease}.auth-link:hover{color:#0f8;text-decoration:underline}@media(max-width:576px){.auth-page{padding:1rem}.auth-card{padding:1.75rem}.auth-card__icon{font-size:3rem}.auth-card__title{font-size:1.5rem}}.tutorial-modal__overlay{position:fixed;inset:0;background:#000000d9;display:flex;align-items:center;justify-content:center;z-index:10000;padding:1rem;animation:fadeIn .3s ease}.tutorial-modal{background:linear-gradient(145deg,#1e1e2e,#2a2a3e);border-radius:20px;max-width:600px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 25px 80px #00000080,0 0 100px #667eea33;border:1px solid rgba(102,126,234,.3);animation:slideUp .4s ease}.tutorial-modal--animating{opacity:.8;transform:scale(.98);transition:all .2s ease}.tutorial-modal__header{padding:1.5rem;border-bottom:1px solid rgba(255,255,255,.1)}.tutorial-modal__title-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.tutorial-modal__title{font-size:1.5rem;font-weight:700;color:#fff;margin:0;background:linear-gradient(135deg,#667eea,#00d9ff);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.tutorial-modal__close{background:#ffffff1a;border:none;border-radius:50%;width:32px;height:32px;color:#a0aec0;font-size:1rem;cursor:pointer;transition:all .2s ease}.tutorial-modal__close:hover{background:#fff3;color:#fff}.tutorial-modal__progress{height:6px;background:#ffffff1a;border-radius:3px;overflow:hidden}.tutorial-modal__progress-bar{height:100%;background:linear-gradient(90deg,#667eea,#0f8);border-radius:3px;transition:width .3s ease}.tutorial-modal__step-counter{font-size:.8rem;color:#a0aec0;text-align:center;margin-top:.5rem}.tutorial-modal__content{padding:2rem;text-align:center}.tutorial-modal__content--fadeIn{animation:fadeIn .5s ease}.tutorial-modal__content--slideUp{animation:slideUp .5s ease}.tutorial-modal__content--bounce{animation:bounce .6s ease}@keyframes bounce{0%,to{transform:translateY(0)}30%{transform:translateY(-15px)}50%{transform:translateY(-5px)}70%{transform:translateY(-10px)}}.tutorial-modal__content--typewriter .tutorial-modal__step-text{animation:fadeIn .5s ease}.tutorial-modal__step-icon{font-size:4rem;margin-bottom:1rem;animation:pulse 2s ease infinite}.tutorial-modal__step-title{font-size:1.4rem;font-weight:700;color:#fff;margin:0 0 1rem}.tutorial-modal__step-text{font-size:1.1rem;line-height:1.7;color:#e2e8f0;margin:0 0 1.5rem}.tutorial-modal__code-section{background:#0000004d;border-radius:12px;padding:1rem;text-align:left;margin-top:1rem}.tutorial-modal__code-header{font-size:.85rem;color:#a0aec0;margin-bottom:.5rem}.tutorial-modal__code{background:#0d1117;border-radius:8px;padding:1rem;margin:0;font-family:Fira Code,Monaco,monospace;font-size:.9rem;color:#0f8;overflow-x:auto;white-space:pre-wrap;word-break:break-word}.tutorial-modal__cursor{animation:blink .8s infinite;color:#fff}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:0}}.tutorial-modal__output{margin-top:.75rem;padding-top:.75rem;border-top:1px dashed rgba(255,255,255,.2)}.tutorial-modal__output-header{font-size:.85rem;color:#a0aec0;margin-bottom:.5rem}.tutorial-modal__output-text{background:#00ff881a;border-radius:8px;padding:.75rem 1rem;margin:0;font-family:monospace;font-size:.9rem;color:#00d9ff;white-space:pre-wrap}.tutorial-modal__exercise{background:linear-gradient(135deg,#667eea33,#764ba233);border:1px solid rgba(102,126,234,.3);border-radius:12px;padding:1rem;margin-top:1.5rem;text-align:left}.tutorial-modal__exercise-header{font-weight:600;color:#667eea;margin-bottom:.5rem}.tutorial-modal__exercise p{color:#e2e8f0;margin:0 0 .75rem}.tutorial-modal__footer{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;border-top:1px solid rgba(255,255,255,.1);gap:1rem}.tutorial-modal__btn{padding:.75rem 1.5rem;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;border:none}.tutorial-modal__btn--secondary{background:#ffffff1a;color:#a0aec0}.tutorial-modal__btn--secondary:hover:not(:disabled){background:#fff3;color:#fff}.tutorial-modal__btn--secondary:disabled{opacity:.4;cursor:not-allowed}.tutorial-modal__btn--primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;box-shadow:0 4px 15px #667eea66}.tutorial-modal__btn--primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea99}.tutorial-modal__concepts{flex:1;text-align:center}.tutorial-modal__concepts-label{display:block;font-size:.75rem;color:#a0aec0;margin-bottom:.5rem}.tutorial-modal__concepts-list{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center}.tutorial-modal__concept-tag{background:#0f83;color:#0f8;padding:.25rem .75rem;border-radius:20px;font-size:.75rem;font-weight:600}.tutorial-modal__dots{display:flex;justify-content:center;gap:.5rem;padding:1rem}.tutorial-modal__dot{width:10px;height:10px;border-radius:50%;border:none;background:#fff3;cursor:pointer;transition:all .2s ease;padding:0}.tutorial-modal__dot:hover{background:#fff6}.tutorial-modal__dot--active{background:linear-gradient(135deg,#667eea,#00d9ff);transform:scale(1.2)}@media(max-width:600px){.tutorial-modal{max-height:100vh;border-radius:0;margin:0}.tutorial-modal__overlay{padding:0}.tutorial-modal__content{padding:1.5rem}.tutorial-modal__step-icon{font-size:3rem}.tutorial-modal__step-title{font-size:1.2rem}.tutorial-modal__step-text{font-size:1rem}.tutorial-modal__footer{flex-wrap:wrap}.tutorial-modal__concepts{order:-1;width:100%;margin-bottom:.5rem}.tutorial-modal__btn{flex:1;min-width:120px}}.flashcard-deck__overlay{position:fixed;inset:0;background:#000000e6;display:flex;align-items:center;justify-content:center;z-index:10000;padding:1rem;animation:fadeIn .3s ease}.flashcard-deck{background:linear-gradient(145deg,#1e1e2e,#2a2a3e);border-radius:20px;max-width:500px;width:100%;padding:1.5rem;box-shadow:0 25px 80px #00000080,0 0 100px #ffd7001a;border:1px solid rgba(255,215,0,.2)}.flashcard-deck__empty{text-align:center;padding:2rem;color:#a0aec0}.flashcard-deck__empty-icon{font-size:4rem;display:block;margin-bottom:1rem}.flashcard-deck__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.flashcard-deck__close{background:#ffffff1a;border:none;border-radius:50%;width:36px;height:36px;color:#a0aec0;font-size:1.1rem;cursor:pointer;transition:all .2s ease}.flashcard-deck__close:hover{background:#fff3;color:#fff}.flashcard-deck__title{font-size:1.25rem;font-weight:700;color:#fff;margin:0}.flashcard-deck__counter{font-size:.9rem;color:#a0aec0;font-weight:600}.flashcard-deck__progress{height:6px;background:#ffffff1a;border-radius:3px;overflow:hidden;margin-bottom:1rem}.flashcard-deck__progress-bar{height:100%;background:linear-gradient(90deg,gold,#ff8c00);border-radius:3px;transition:width .3s ease}.flashcard-deck__stats{display:flex;justify-content:center;gap:1.5rem;margin-bottom:1.5rem}.flashcard-deck__stat{font-size:.85rem;font-weight:600;padding:.4rem .8rem;border-radius:20px}.flashcard-deck__stat--known{background:#48bb7833;color:#48bb78}.flashcard-deck__stat--review{background:#ed893633;color:#ed8936}.flashcard{perspective:1000px;height:280px;cursor:pointer;margin-bottom:1.5rem}.flashcard--animating{opacity:.7;transform:scale(.95);transition:all .2s ease}.flashcard__inner{position:relative;width:100%;height:100%;transition:transform .6s;transform-style:preserve-3d}.flashcard--flipped .flashcard__inner{transform:rotateY(180deg)}.flashcard__front,.flashcard__back{position:absolute;width:100%;height:100%;backface-visibility:hidden;-webkit-backface-visibility:hidden;border-radius:16px;padding:1.5rem;display:flex;flex-direction:column;align-items:center;justify-content:center}.flashcard__front{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 10px 30px #667eea66}.flashcard__back{background:linear-gradient(135deg,#1e1e2e,#2a2a3e);border:2px solid rgba(255,215,0,.5);transform:rotateY(180deg)}.flashcard__emoji{font-size:3rem;margin-bottom:1rem;animation:pulse 2s ease infinite}.flashcard__question{font-size:1.3rem;font-weight:700;color:#fff;text-align:center;margin:0;line-height:1.5}.flashcard__hint-text{font-size:.8rem;color:#fff9;margin-top:auto}.flashcard__difficulty{position:absolute;top:1rem;right:1rem;font-size:.75rem;font-weight:600;padding:.25rem .5rem;border-radius:12px;background:#0000004d}.flashcard__answer-label{font-size:.85rem;color:#a0aec0;margin-bottom:.5rem}.flashcard__answer{font-size:1.5rem;font-weight:700;color:#0f8;text-align:center;margin:0}.flashcard__code{background:#0d1117;border-radius:8px;padding:.75rem 1rem;margin:1rem 0 0;font-family:Fira Code,monospace;font-size:.85rem;color:#00d9ff}.flashcard__extra-hint{font-size:.85rem;color:#a0aec0;margin:.75rem 0 0;background:#ffffff0d;padding:.5rem .75rem;border-radius:8px}.flashcard-deck__actions{display:flex;gap:.75rem;justify-content:center}.flashcard-deck__action{padding:.75rem 1.25rem;border-radius:12px;border:none;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s ease}.flashcard-deck__action:disabled{opacity:.4;cursor:not-allowed}.flashcard-deck__action--review{background:#ed893633;color:#ed8936}.flashcard-deck__action--review:hover:not(:disabled){background:#ed89364d}.flashcard-deck__action--known{background:#48bb7833;color:#48bb78}.flashcard-deck__action--known:hover:not(:disabled){background:#48bb784d}.flashcard-deck__action--nav{background:#ffffff1a;color:#a0aec0}.flashcard-deck__action--nav:hover:not(:disabled){background:#fff3;color:#fff}.flashcard-deck__complete{text-align:center;padding:2rem 1rem}.flashcard-deck__complete-icon{font-size:4rem;display:block;margin-bottom:1rem;animation:bounce 1s ease}@keyframes bounce{0%,to{transform:translateY(0)}30%{transform:translateY(-20px)}50%{transform:translateY(-10px)}70%{transform:translateY(-15px)}}.flashcard-deck__complete h3{font-size:1.5rem;color:#fff;margin:0 0 .5rem}.flashcard-deck__complete p{color:#a0aec0;margin:0}.flashcard-deck__final-stats{display:flex;justify-content:center;gap:2rem;margin:2rem 0}.flashcard-deck__final-stat{text-align:center}.flashcard-deck__final-stat-value{display:block;font-size:2.5rem;font-weight:700;color:#0f8}.flashcard-deck__final-stat-label{font-size:.85rem;color:#a0aec0}.flashcard-deck__complete-actions{display:flex;gap:1rem;justify-content:center}.flashcard-deck__btn{padding:.75rem 1.5rem;border-radius:12px;border:none;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease}.flashcard-deck__btn--secondary{background:#ffffff1a;color:#a0aec0}.flashcard-deck__btn--secondary:hover{background:#fff3;color:#fff}.flashcard-deck__btn--primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.flashcard-deck__btn--primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}@media(max-width:480px){.flashcard-deck{padding:1rem}.flashcard{height:260px}.flashcard__question{font-size:1.1rem}.flashcard__answer{font-size:1.25rem}.flashcard-deck__actions{flex-wrap:wrap}.flashcard-deck__action{flex:1;min-width:80px}}.hints{background:linear-gradient(145deg,#1e1e2ef2,#2a2a3ef2);border-radius:16px;padding:1.25rem;border:1px solid rgba(255,215,0,.2)}.hints__header{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid rgba(255,255,255,.1)}.hints__icon{font-size:1.5rem}.hints__title{font-size:1rem;font-weight:600;color:#fff;flex:1}.hints__stars{font-size:.9rem;font-weight:600;color:gold;background:#ffd7001a;padding:.3rem .6rem;border-radius:12px}.hints__levels{display:flex;flex-direction:column;gap:.75rem}.hints__level{background:#ffffff0d;border-radius:12px;padding:1rem;transition:all .3s ease}.hints__level--revealed{background:#00ff8814;border:1px solid rgba(0,255,136,.2)}.hints__level--animating{animation:revealHint .5s ease}@keyframes revealHint{0%{transform:scale(1);opacity:1}50%{transform:scale(1.02);opacity:.8}to{transform:scale(1);opacity:1}}.hints__level-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem}.hints__level-icon{font-size:1.25rem}.hints__level-label{font-size:.9rem;font-weight:600;color:#e2e8f0;flex:1}.hints__level-cost{font-size:.8rem;font-weight:600;padding:.2rem .5rem;border-radius:8px;background:#ffd70026;color:gold}.hints__level-cost--free{background:#48bb7826;color:#48bb78}.hints__level-content{animation:fadeIn .5s ease}.hints__level-content p{margin:0;font-size:.95rem;line-height:1.6;color:#0f8}.hints__reveal-btn{width:100%;padding:.75rem;border-radius:8px;border:none;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s ease;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.hints__reveal-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 15px #667eea66}.hints__reveal-btn--disabled{background:#ffffff1a;color:#666;cursor:not-allowed}.hints__level-progress{display:flex;justify-content:center;gap:.5rem;margin-top:.75rem}.hints__dot{width:8px;height:8px;border-radius:50%;background:#fff3;transition:all .3s ease}.hints__dot--filled{background:#ffd70080}.hints__dot--revealed{background:#0f8;box-shadow:0 0 8px #00ff8880}.hints__confirm-overlay{position:fixed;inset:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:10001;animation:fadeIn .2s ease}.hints__confirm-modal{background:linear-gradient(145deg,#1e1e2e,#2a2a3e);border-radius:16px;padding:1.5rem;max-width:360px;width:90%;text-align:center;border:1px solid rgba(255,215,0,.3);animation:slideUp .3s ease}.hints__confirm-icon{font-size:3rem;display:block;margin-bottom:.75rem}.hints__confirm-modal h4{color:#fff;margin:0 0 .5rem;font-size:1.2rem}.hints__confirm-modal p{color:#a0aec0;margin:.25rem 0;font-size:.95rem}.hints__confirm-balance{font-size:.85rem!important;color:#666!important}.hints__confirm-actions{display:flex;gap:.75rem;margin-top:1.25rem}.hints__confirm-btn{flex:1;padding:.75rem;border-radius:10px;border:none;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s ease}.hints__confirm-btn--cancel{background:#ffffff1a;color:#a0aec0}.hints__confirm-btn--cancel:hover{background:#ffffff26}.hints__confirm-btn--confirm{background:linear-gradient(135deg,gold,#ff8c00);color:#1a1a2e}.hints__confirm-btn--confirm:hover{transform:translateY(-2px);box-shadow:0 4px 15px #ffd70066}.hints--compact{background:#1e1e2ecc;padding:.75rem;border-radius:12px}.hints__compact-row{display:flex;gap:.5rem;justify-content:center}.hints__compact-btn{position:relative;width:44px;height:44px;border-radius:50%;border:2px solid rgba(255,255,255,.2);background:#ffffff0d;font-size:1.25rem;cursor:pointer;transition:all .2s ease}.hints__compact-btn:hover:not(:disabled){background:#ffffff1a;border-color:gold}.hints__compact-btn--revealed{background:#0f83;border-color:#0f8}.hints__compact-btn--disabled{opacity:.4;cursor:not-allowed}.hints__compact-cost{position:absolute;bottom:-6px;right:-6px;font-size:.6rem;background:gold;color:#1a1a2e;padding:.15rem .3rem;border-radius:8px;font-weight:700}.hints__compact-revealed{margin-top:.75rem;display:flex;flex-direction:column;gap:.5rem}.hints__compact-hint{background:#00ff881a;border-radius:8px;padding:.5rem .75rem;font-size:.85rem;color:#0f8;line-height:1.5}.hints__confirm{display:flex;align-items:center;gap:.5rem;margin-top:.75rem;padding:.5rem;background:#ffd7001a;border-radius:8px}.hints__confirm p{margin:0;font-size:.85rem;color:gold;flex:1}.hints__confirm button{width:32px;height:32px;border-radius:50%;border:none;font-size:.9rem;cursor:pointer}.hints__confirm button:first-of-type{background:#48bb784d;color:#48bb78}.hints__confirm button:last-of-type{background:#f565654d;color:#f56565}@media(max-width:480px){.hints{padding:1rem}.hints__level{padding:.75rem}.hints__level-header{flex-wrap:wrap}.hints__confirm-modal{padding:1rem;margin:.5rem}}.world-map{padding:2rem;max-width:1200px;margin:0 auto;position:relative}.world-map__header{text-align:center;margin-bottom:3rem}.world-map__title{font-size:2.5rem;font-weight:800;background:linear-gradient(90deg,#00d9ff,#0f8);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin:0 0 .75rem}.world-map__subtitle{color:#a0aec0;font-size:1.15rem;margin:0 0 1.5rem}.world-map__score{display:inline-flex;align-items:center;gap:.5rem;background:linear-gradient(135deg,#ffd70026,#ffa50026);border:2px solid rgba(255,215,0,.4);border-radius:50px;padding:.75rem 1.5rem}.world-map__score-icon{font-size:1.5rem}.world-map__score-value{font-size:1.1rem;font-weight:700;color:gold}.world-map__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;position:relative;z-index:1}.world-card{position:relative;background:linear-gradient(145deg,#1e1e2e,#2a2a3e);border:3px solid rgba(255,255,255,.1);border-radius:24px;padding:2rem;text-align:center;cursor:pointer;transition:all .4s cubic-bezier(.175,.885,.32,1.275);overflow:hidden}.world-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--world-color);opacity:.5}.world-card--unlocked:hover{transform:translateY(-10px) scale(1.02);border-color:var(--world-color);box-shadow:0 20px 40px #0000004d,0 0 30px color-mix(in srgb,var(--world-color) 30%,transparent)}.world-card--unlocked:hover:before{opacity:1}.world-card--locked{opacity:.6;cursor:not-allowed;filter:grayscale(.5)}.world-card--complete{border-color:#48bb7880;background:linear-gradient(145deg,#1e2e24,#2a3e30)}.world-card--complete:before{background:linear-gradient(90deg,#48bb78,#68d391);opacity:1}.world-card__number{position:absolute;top:1rem;left:1rem;width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:#ffffff1a;border-radius:50%;font-size:.875rem;font-weight:700;color:#a0aec0}.world-card__icon{font-size:4rem;margin-bottom:1rem;transition:transform .3s ease}.world-card--unlocked:hover .world-card__icon{transform:scale(1.1);animation:bounce .6s ease infinite}@keyframes bounce{0%,to{transform:scale(1.1) translateY(0)}50%{transform:scale(1.1) translateY(-10px)}}.world-card__name{font-size:1.25rem;font-weight:700;color:#fff;margin:0 0 .5rem}.world-card--unlocked .world-card__name{color:var(--world-color)}.world-card__description{font-size:.9rem;color:#a0aec0;margin:0 0 1.25rem;line-height:1.5}.world-card__progress{display:flex;align-items:center;gap:.75rem}.world-card__progress-bar{flex:1;height:8px;background:#ffffff1a;border-radius:50px;overflow:hidden}.world-card__progress-fill{height:100%;background:var(--world-color);border-radius:50px;transition:width .5s ease}.world-card__progress-text{font-size:.8rem;color:#a0aec0;font-weight:600;min-width:40px}.world-card__requirement{font-size:.85rem;color:#a0aec0;background:#ffffff0d;padding:.5rem 1rem;border-radius:8px}.world-card__badge{position:absolute;top:1rem;right:1rem;font-size:1.5rem;animation:pulse 2s infinite}.world-map__path{display:none;position:absolute;top:50%;left:0;right:0;z-index:0}.world-map__path-segment{height:4px;background:#ffffff1a;margin:0 -10px;border-radius:2px}.world-map__path-segment--active{background:linear-gradient(90deg,#00d9ff,#667eea)}@media(max-width:768px){.world-map{padding:1rem}.world-map__title{font-size:1.75rem}.world-map__grid{grid-template-columns:1fr}.world-card{padding:1.5rem}.world-card__icon{font-size:3rem}}.world-card-wrapper{position:relative}.world-card__tutorial-badge{position:absolute;top:1rem;left:1rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:.3rem .6rem;border-radius:8px;font-size:.75rem;font-weight:600;animation:glow 2s ease infinite}@keyframes glow{0%,to{box-shadow:0 0 5px #667eea80}50%{box-shadow:0 0 15px #667eeacc}}.world-card__actions{position:absolute;bottom:-12px;left:50%;transform:translate(-50%);display:flex;gap:.5rem;z-index:2;opacity:0;visibility:hidden;transition:all .3s ease}.world-card-wrapper:hover .world-card__actions{opacity:1;visibility:visible;bottom:-20px}.world-card__action-btn{width:40px;height:40px;border-radius:50%;border:none;background:linear-gradient(145deg,#1e1e2e,#2a2a3e);box-shadow:0 4px 15px #0000004d;font-size:1.1rem;cursor:pointer;transition:all .2s ease}.world-card__action-btn:hover{transform:scale(1.15);background:linear-gradient(135deg,#667eea,#764ba2)}@media(max-width:768px){.world-card__actions{opacity:1;visibility:visible;bottom:-20px}}.question-container{background:linear-gradient(145deg,#1e1e2e,#2a2a3e);border-radius:24px;padding:2rem;border:2px solid #3d3d5c;box-shadow:0 10px 40px #0000004d;max-width:900px;margin:0 auto}.question-container--code{max-width:1000px}.question-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;flex-wrap:wrap;gap:.75rem}.question-type-badge{padding:.5rem 1rem;border-radius:50px;font-size:.875rem;font-weight:700;display:inline-flex;align-items:center;gap:.5rem}.question-type-badge--choice{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.question-type-badge--tf{background:linear-gradient(135deg,#f093fb,#f5576c);color:#fff}.question-type-badge--code{background:linear-gradient(135deg,#4facfe,#00f2fe);color:#1a1a2e}.question-type-badge--partial{background:linear-gradient(135deg,#fa709a,#fee140);color:#1a1a2e}.question-type-badge--full{background:linear-gradient(135deg,#00d9ff,#0f8);color:#1a1a2e}.question-difficulty{padding:.4rem .8rem;border-radius:12px;font-size:.8rem;font-weight:600;background:#ffffff1a;color:#a0aec0}.question-difficulty--easy{background:#48bb7833;color:#68d391}.question-difficulty--medium{background:#ed893633;color:#f6ad55}.question-difficulty--hard{background:#f5656533;color:#fc8181}.question-title{font-size:1.75rem;font-weight:800;color:#fff;margin:0 0 1rem;line-height:1.3}.question-prompt{font-size:1.1rem;color:#c4c4d4;line-height:1.7;margin-bottom:2rem}.question-options{display:flex;flex-direction:column;gap:1rem;margin-bottom:2rem}.question-option{display:flex;align-items:center;gap:1rem;padding:1.25rem 1.5rem;background:#ffffff0d;border:2px solid rgba(255,255,255,.1);border-radius:16px;cursor:pointer;transition:all .3s ease;text-align:left;color:#e0e0f0;font-size:1rem}.question-option:hover:not(:disabled){background:#ffffff1a;border-color:#667eea80;transform:translate(5px)}.question-option--selected{background:#667eea33;border-color:#667eea;box-shadow:0 0 20px #667eea4d}.question-option--correct{background:#48bb7833!important;border-color:#48bb78!important;box-shadow:0 0 20px #48bb784d}.question-option--incorrect{background:#f5656533!important;border-color:#f56565!important;box-shadow:0 0 20px #f565654d}.question-option__letter{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:#ffffff1a;font-weight:700;font-size:1rem;flex-shrink:0}.question-option--selected .question-option__letter{background:#667eea;color:#fff}.question-option__text{flex:1}.question-option__icon{font-size:1.25rem;font-weight:700}.tf-options{display:flex;gap:1.5rem;margin-bottom:2rem;justify-content:center}.tf-option{display:flex;flex-direction:column;align-items:center;gap:.75rem;padding:2rem 3rem;border-radius:20px;border:3px solid;cursor:pointer;transition:all .3s ease;background:#ffffff0d;min-width:150px}.tf-option--true{border-color:#48bb7866}.tf-option--false{border-color:#f5656566}.tf-option:hover:not(:disabled){transform:translateY(-5px);box-shadow:0 10px 30px #0000004d}.tf-option--true:hover:not(:disabled){background:#48bb781a;border-color:#48bb78}.tf-option--false:hover:not(:disabled){background:#f565651a;border-color:#f56565}.tf-option--selected.tf-option--true{background:#48bb7833;border-color:#48bb78;box-shadow:0 0 30px #48bb7866}.tf-option--selected.tf-option--false{background:#f5656533;border-color:#f56565;box-shadow:0 0 30px #f5656566}.tf-option--correct{background:#48bb784d!important;border-color:#48bb78!important}.tf-option--incorrect{background:#f565654d!important;border-color:#f56565!important}.tf-option__icon{font-size:2.5rem}.tf-option--true .tf-option__icon{color:#48bb78}.tf-option--false .tf-option__icon{color:#f56565}.tf-option__text{font-size:1.1rem;font-weight:700;color:#e0e0f0}.question-code-block{background:#0d0d14;border:1px solid #3d3d5c;border-radius:12px;padding:1.25rem;margin-bottom:2rem;overflow-x:auto}.question-code-block pre{margin:0}.question-code-block code{font-family:Fira Code,Consolas,monospace;font-size:.95rem;color:#00d9ff;line-height:1.6}.question-hint{background:#667eea26;border:1px solid rgba(102,126,234,.3);border-radius:12px;padding:1rem 1.25rem;margin-bottom:1.5rem;color:#a0b4f0;font-size:.95rem}.question-editor-container{border-radius:16px;overflow:hidden;margin-bottom:1.5rem;border:2px solid #3d3d5c}.question-editor-header{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1.25rem;background:#16161e;color:#a0aec0;font-size:.875rem;font-weight:600}.editor-loading{color:#f6ad55;font-size:.8rem;animation:pulse 1.5s infinite}.editor-tests-badge{background:#f5656533;color:#fc8181;padding:.25rem .75rem;border-radius:20px;font-size:.75rem}.editor-tests-badge--passed{background:#48bb7833;color:#68d391}.question-function-signature{display:flex;align-items:center;gap:.75rem;margin-bottom:1.5rem;flex-wrap:wrap}.question-function-label{color:#a0aec0;font-size:.95rem}.question-function-name{background:linear-gradient(135deg,#00d9ff,#0f8);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-family:Fira Code,monospace;font-size:1.1rem;font-weight:700}.question-examples{background:#00d9ff0d;border:1px solid rgba(0,217,255,.2);border-radius:12px;padding:1.25rem;margin-bottom:1.5rem}.question-examples__title{font-weight:700;color:#00d9ff;margin-bottom:.75rem}.question-examples__list{display:flex;flex-direction:column;gap:.5rem}.question-example code{font-family:Fira Code,monospace;font-size:.9rem;color:#e0e0f0;background:#0000004d;padding:.5rem 1rem;border-radius:8px;display:inline-block}.question-output{background:#0d0d14;border:1px solid #3d3d5c;border-radius:12px;margin-bottom:1.5rem;overflow:hidden}.question-output__header{padding:.75rem 1rem;background:#16161e;color:#a0aec0;font-size:.875rem;font-weight:600;border-bottom:1px solid #3d3d5c}.question-output__content{padding:1rem 1.25rem;margin:0;font-family:Fira Code,monospace;font-size:.875rem;color:#e0e0f0;line-height:1.6;white-space:pre-wrap;word-break:break-word;max-height:300px;overflow-y:auto}.question-actions{display:flex;gap:1rem;justify-content:flex-end;flex-wrap:wrap}.question-run-btn{padding:.875rem 1.5rem;border-radius:12px;border:2px solid #667eea;background:transparent;color:#667eea;font-size:1rem;font-weight:700;cursor:pointer;transition:all .3s ease}.question-run-btn:hover:not(:disabled){background:#667eea1a;transform:translateY(-2px)}.question-run-btn:disabled{opacity:.5;cursor:not-allowed}.question-submit-btn{padding:1rem 2rem;border-radius:12px;border:none;background:linear-gradient(135deg,#00d9ff,#0f8);color:#1a1a2e;font-size:1.1rem;font-weight:800;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 20px #00d9ff4d}.question-submit-btn:hover:not(:disabled){transform:translateY(-3px);box-shadow:0 8px 30px #00d9ff66}.question-submit-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}@media(max-width:768px){.question-container{padding:1.5rem;border-radius:16px}.question-title{font-size:1.4rem}.question-prompt{font-size:1rem}.tf-options{flex-direction:column}.tf-option{padding:1.5rem 2rem;flex-direction:row}.question-actions{flex-direction:column}.question-run-btn,.question-submit-btn{width:100%}}.python-editor{border-radius:12px;overflow:hidden;background:#1e1e1e}.python-editor--disabled{opacity:.7;pointer-events:none}.python-editor__loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;min-height:200px;gap:1rem;color:#a0aec0;background:#1e1e1e}.python-editor__loading-spinner{width:40px;height:40px;border:3px solid rgba(0,217,255,.2);border-top-color:#00d9ff;border-radius:50%;animation:spin 1s linear infinite}.monaco-editor{border-radius:12px}.monaco-editor .margin{background:transparent!important}.monaco-editor .scrollbar{border-radius:5px}.monaco-editor .slider{background:#00d9ff4d!important;border-radius:5px}.monaco-editor .slider:hover{background:#00d9ff80!important}.question-type-badge--parsons{background-color:#6f42c1;color:#fff}.parsons-instructions{font-size:.95rem;color:#666;margin-bottom:20px;background-color:#f8f9fa;padding:10px;border-radius:8px;border-left:4px solid #6f42c1}.parsons-area{min-height:200px;background-color:#f0f2f5;padding:20px;border-radius:12px;border:2px dashed #ced4da;display:flex;flex-direction:column;gap:10px;margin-bottom:25px}.parsons-block{background-color:#fff;border:1px solid #dee2e6;border-radius:8px;padding:10px 15px;display:flex;justify-content:space-between;align-items:center;box-shadow:0 2px 4px #0000000d;cursor:grab;transition:all .2s ease;transition:margin-left .2s ease,transform .2s ease,box-shadow .2s ease}.parsons-block:active{cursor:grabbing;box-shadow:0 5px 15px #0000001a;transform:scale(1.01);z-index:10}.parsons-block--disabled{cursor:default;opacity:.9;background-color:#f8f9fa}.parsons-block__content{display:flex;align-items:center;gap:12px}.parsons-block__drag-handle{color:#adb5bd;font-size:1.2rem;cursor:grab}.parsons-block code{font-family:Fira Code,Consolas,monospace;font-size:1rem;color:#212529}.parsons-block__controls{display:flex;gap:4px}.parsons-block__controls button{background:#e9ecef;border:none;border-radius:4px;width:28px;height:28px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:.8rem;color:#495057;transition:background .2s}.parsons-block__controls button:hover:not(:disabled){background:#dee2e6;color:#212529}.parsons-block__controls button:disabled{opacity:.3;cursor:not-allowed}.turtle-container{position:relative;width:100%;height:400px;background-color:#f8f9fa;border:2px solid #e9ecef;border-radius:12px;overflow:hidden;display:flex;justify-content:center;align-items:center}.turtle-canvas{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1}.turtle-sprite{position:absolute;width:32px;height:32px;font-size:24px;line-height:1;z-index:2;transform-origin:center center;transition:transform .1s linear,top .1s linear,left .1s linear;pointer-events:none;display:flex;justify-content:center;align-items:center}.question-container--turtle{max-width:1000px}.turtle-workspace{display:flex;gap:20px;margin-bottom:20px}.turtle-editor-section{flex:1;min-width:300px}.turtle-canvas-section{flex:0 0 400px}.question-type-badge--turtle{background-color:#20c997;color:#fff}@media(max-width:800px){.turtle-workspace{flex-direction:column}.turtle-canvas-section{flex:auto;width:100%;display:flex;justify-content:center}}.result-panel{position:relative;background:linear-gradient(145deg,#1e1e2e,#2a2a3e);border-radius:24px;padding:2.5rem;text-align:center;border:3px solid;overflow:hidden;animation:slideUp .4s ease}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.result-panel--success{border-color:#48bb7880;box-shadow:0 0 40px #48bb7833}.result-panel--error{border-color:#ed893680;box-shadow:0 0 40px #ed893633}.result-panel__icon{font-size:4rem;margin-bottom:1rem;animation:bounce .6s ease}.result-panel__title{font-size:2rem;font-weight:800;margin:0 0 .75rem}.result-panel--success .result-panel__title{background:linear-gradient(90deg,#48bb78,#9ae6b4);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.result-panel--error .result-panel__title{background:linear-gradient(90deg,#ed8936,#fbd38d);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.result-panel__message{font-size:1.15rem;color:#c4c4d4;margin:0 0 1.5rem;line-height:1.6}.result-panel__points{display:inline-flex;align-items:center;gap:.5rem;background:linear-gradient(135deg,#ffd70033,#ffa50033);border:2px solid rgba(255,215,0,.5);border-radius:50px;padding:.75rem 1.5rem;margin-bottom:1.5rem;animation:glow 2s infinite alternate}@keyframes glow{0%{box-shadow:0 0 10px #ffd70033}to{box-shadow:0 0 20px #ffd70066}}.result-panel__points-icon{font-size:1.5rem;animation:spin 2s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.result-panel__points-value{font-size:1.25rem;font-weight:700;color:gold}.result-panel__explanation-container{margin-bottom:1.5rem}.result-panel__explanation-toggle{background:#667eea1a;border:1px solid rgba(102,126,234,.3);border-radius:12px;padding:.75rem 1.5rem;color:#a0b4f0;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .3s ease}.result-panel__explanation-toggle:hover{background:#667eea33;border-color:#667eea}.result-panel__explanation{margin-top:1rem;padding:1.25rem;background:#0000004d;border-radius:12px;text-align:left;color:#e0e0f0;font-size:1rem;line-height:1.7;animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.result-panel__actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.result-panel__btn{padding:1rem 2rem;border-radius:12px;border:none;font-size:1rem;font-weight:700;cursor:pointer;transition:all .3s ease}.result-panel__btn--retry{background:#ed893633;border:2px solid #ed8936;color:#fbd38d}.result-panel__btn--retry:hover{background:#ed89364d;transform:translateY(-3px)}.result-panel__btn--next{background:linear-gradient(135deg,#00d9ff,#0f8);color:#1a1a2e;box-shadow:0 4px 20px #00d9ff4d}.result-panel__btn--next:hover{transform:translateY(-3px);box-shadow:0 8px 30px #00d9ff66}.result-panel__confetti{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;overflow:hidden}.confetti{position:absolute;font-size:1.5rem;animation:fall 3s linear forwards;animation-delay:var(--delay);opacity:0}.confetti:nth-child(1){left:5%}.confetti:nth-child(2){left:15%}.confetti:nth-child(3){left:25%}.confetti:nth-child(4){left:35%}.confetti:nth-child(5){left:45%}.confetti:nth-child(6){left:55%}.confetti:nth-child(7){left:65%}.confetti:nth-child(8){left:75%}.confetti:nth-child(9){left:85%}.confetti:nth-child(10){left:95%}.confetti:nth-child(11){left:10%}.confetti:nth-child(12){left:90%}@keyframes fall{0%{top:-20px;opacity:1;transform:rotate(0)}to{top:100%;opacity:0;transform:rotate(720deg)}}@media(max-width:768px){.result-panel{padding:1.5rem}.result-panel__icon{font-size:3rem}.result-panel__title{font-size:1.5rem}.result-panel__actions{flex-direction:column}.result-panel__btn{width:100%}}.question-engine{width:100%;max-width:1000px;margin:0 auto}.question-engine__result{margin-top:2rem;animation:slideUp .4s ease}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.question-engine__unsupported{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;background:#f565651a;border:2px solid rgba(245,101,101,.3);border-radius:20px;text-align:center}.question-engine__unsupported-icon{font-size:3rem;margin-bottom:1rem}.question-engine__unsupported p{color:#fc8181;font-size:1.1rem}.question-engine__hints-section{margin-top:1.5rem}.question-engine__hints-toggle{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:#ffd7001a;border:2px solid rgba(255,215,0,.3);border-radius:12px;color:gold;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .3s ease}.question-engine__hints-toggle:hover{background:#ffd70033;border-color:#ffd70080}.question-engine__hints-toggle--active{background:#ffd70033;border-color:gold}.question-engine__hints-count{background:#ffd7004d;padding:.2rem .5rem;border-radius:8px;font-size:.8rem}.question-engine__hints-used{margin-top:1rem;text-align:center;padding:.5rem 1rem;background:#ed893626;border-radius:8px;color:#ed8936;font-size:.85rem}.question-engine__hints-section>.hints{margin-top:1rem;animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.question-card{display:flex;align-items:center;gap:1.25rem;padding:1.25rem 1.5rem;background:#ffffff08;border:2px solid rgba(255,255,255,.08);border-radius:16px;cursor:pointer;transition:all .3s ease;text-align:left;width:100%}.question-card:hover{background:#ffffff0f;border-color:#667eea66;transform:translate(5px)}.question-card--completed{border-color:#48bb784d}.question-card--completed:hover{border-color:#48bb7880}.question-card--in_progress{border-color:#ed89364d}.question-card__status{width:44px;height:44px;display:flex;align-items:center;justify-content:center;border-radius:50%;font-size:1rem;font-weight:700;flex-shrink:0;background:#ffffff1a;color:#a0aec0}.question-card__status--completed{background:linear-gradient(135deg,#48bb78,#68d391);color:#fff}.question-card__status--in_progress{background:linear-gradient(135deg,#ed8936,#fbd38d);color:#fff}.question-card__content{flex:1;min-width:0}.question-card__header{display:flex;align-items:center;gap:.75rem;margin-bottom:.5rem;flex-wrap:wrap}.question-card__type{font-size:.8rem;color:#667eea;font-weight:600;background:#667eea1a;padding:.25rem .6rem;border-radius:6px}.question-card__difficulty{font-size:.75rem;opacity:.8}.question-card__difficulty--easy{color:#68d391}.question-card__difficulty--medium{color:#f6ad55}.question-card__difficulty--hard{color:#fc8181}.question-card__title{font-size:1.05rem;font-weight:700;color:#e0e0f0;margin:0 0 .35rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.question-card__preview{font-size:.875rem;color:#8a8aaa;margin:0;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.question-card__arrow{font-size:1.25rem;color:#667eea;opacity:0;transition:all .3s ease;flex-shrink:0}.question-card:hover .question-card__arrow{opacity:1;transform:translate(5px)}@media(max-width:768px){.question-card{padding:1rem;gap:1rem}.question-card__status{width:36px;height:36px;font-size:.875rem}.question-card__title{font-size:.95rem}.question-card__arrow{display:none}}.game-page{min-height:calc(100vh - 120px);padding:1rem}.game-page--loading{display:flex;align-items:center;justify-content:center}.pyodide-loading{text-align:center;padding:3rem}.pyodide-loading__icon{font-size:6rem;animation:pulse 1.5s ease-in-out infinite;margin-bottom:1.5rem}@keyframes pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.1);opacity:.8}}.pyodide-loading__title{font-size:1.75rem;font-weight:700;color:#fff;margin:0 0 1.5rem}.pyodide-loading__bar{width:300px;height:12px;background:#ffffff1a;border-radius:50px;margin:0 auto 1rem;overflow:hidden}.pyodide-loading__progress{height:100%;background:linear-gradient(90deg,#00d9ff,#0f8);border-radius:50px;transition:width .3s ease}.pyodide-loading__text{color:#a0aec0;margin:0}.world-questions{max-width:800px;margin:0 auto;padding:1rem}.world-questions__header{display:flex;flex-direction:column;gap:1rem;margin-bottom:2rem}.world-questions__title{font-size:2rem;font-weight:800;color:#fff;margin:0;text-align:center}.world-questions__stats{text-align:center;color:#a0aec0;font-size:1rem}.world-questions__list{display:flex;flex-direction:column;gap:1rem}.world-questions__empty{text-align:center;padding:4rem 2rem;background:#ffffff08;border-radius:20px;border:2px dashed rgba(255,255,255,.1)}.world-questions__empty-icon{font-size:4rem;display:block;margin-bottom:1rem}.world-questions__empty p{color:#a0aec0;margin:.5rem 0}.question-play{max-width:1000px;margin:0 auto;padding:1rem}.question-play__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;flex-wrap:wrap;gap:1rem}.question-play__progress{color:#a0aec0;font-size:.95rem;font-weight:600;background:#ffffff0d;padding:.5rem 1rem;border-radius:8px}.back-button{display:inline-flex;align-items:center;gap:.5rem;padding:.6rem 1rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#a0aec0;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .3s ease}.back-button:hover{background:#ffffff1a;color:#fff}@media(max-width:768px){.pyodide-loading__icon{font-size:4rem}.pyodide-loading__title{font-size:1.35rem}.pyodide-loading__bar{width:250px}.world-questions__title{font-size:1.5rem}}.progress-bar{width:100%}.progress-bar__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.progress-bar__label{color:#e0e0f0;font-weight:600;font-size:.95rem}.progress-bar__percentage{color:#a0aec0;font-size:.875rem}.progress-bar__track{width:100%;background:#ffffff1a;border-radius:50px;overflow:hidden}.progress-bar--small .progress-bar__track{height:8px}.progress-bar--medium .progress-bar__track{height:12px}.progress-bar--large .progress-bar__track{height:20px}.progress-bar__fill{height:100%;border-radius:50px;transition:width .5s ease;position:relative}.progress-bar__fill--animated{animation:shimmer 2s infinite}@keyframes shimmer{0%{background-position:-200% center}to{background-position:200% center}}.progress-bar__fill--primary{background:linear-gradient(90deg,#667eea,#764ba2)}.progress-bar__fill--success{background:linear-gradient(90deg,#48bb78,#68d391)}.progress-bar__fill--warning{background:linear-gradient(90deg,#ed8936,#fbd38d)}.progress-bar__fill--danger{background:linear-gradient(90deg,#f56565,#fc8181)}.progress-bar__fill--rainbow{background:linear-gradient(90deg,#ff6b6b,#feca57,#48bb78,#00d9ff,#667eea,#764ba2);background-size:200% 100%}.progress-bar__shine{position:absolute;inset:0;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.3) 50%,transparent 100%);animation:shine 2s infinite}@keyframes shine{0%{transform:translate(-100%)}to{transform:translate(100%)}}.world-progress{display:flex;align-items:center;gap:1rem;padding:1rem 1.25rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:16px;transition:all .3s ease}.world-progress:hover{background:#ffffff14;border-color:#667eea4d}.world-progress--complete{background:#48bb781a;border-color:#48bb784d}.world-progress__icon{font-size:2rem;flex-shrink:0}.world-progress__content{flex:1;min-width:0}.world-progress__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.world-progress__name{font-weight:700;color:#e0e0f0;font-size:.95rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.world-progress__count{font-size:.85rem;color:#a0aec0;font-weight:600;flex-shrink:0}.world-progress__track{height:8px;background:#ffffff1a;border-radius:50px;overflow:hidden}.world-progress__fill{height:100%;background:linear-gradient(90deg,#00d9ff,#667eea);border-radius:50px;transition:width .5s ease}.world-progress__fill--complete{background:linear-gradient(90deg,#48bb78,#68d391)}.world-progress__badge{font-size:1.5rem;flex-shrink:0;animation:bounce 1s infinite}.profile-page{min-height:calc(100vh - 120px);padding:2rem}.profile-container{max-width:900px;margin:0 auto;display:flex;flex-direction:column;gap:2rem}.profile-empty{text-align:center;padding:4rem;font-size:3rem}.profile-empty p{font-size:1.1rem;color:#a0aec0;margin-top:1rem}.profile-card{background:linear-gradient(145deg,#1e1e2e,#2a2a3e);border:2px solid #3d3d5c;border-radius:24px;padding:2.5rem;text-align:center}.profile-card__avatar{display:flex;flex-direction:column;align-items:center;gap:.5rem;margin-bottom:1.5rem}.profile-card__avatar-emoji{font-size:5rem;filter:drop-shadow(0 10px 20px rgba(0,0,0,.3));animation:float 3s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.profile-card__avatar-name{font-size:.9rem;color:#a0aec0;font-weight:600}.profile-card__name{font-size:2rem;font-weight:800;color:#fff;margin:0 0 .75rem}.profile-card__guest-badge{display:inline-block;background:#ed893633;border:1px solid rgba(237,137,54,.4);border-radius:20px;padding:.4rem 1rem;font-size:.85rem;color:#fbd38d;margin-bottom:1.5rem}.profile-card__level{max-width:300px;margin:0 auto 2rem}.profile-card__level-badge{display:inline-block;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:.5rem 1.5rem;border-radius:20px;font-weight:700;font-size:1rem;margin-bottom:.75rem}.profile-card__level-progress{height:8px;background:#ffffff1a;border-radius:50px;overflow:hidden;margin-bottom:.5rem}.profile-card__level-bar{height:100%;background:linear-gradient(90deg,#667eea,#764ba2);border-radius:50px;transition:width .5s ease}.profile-card__level-text{font-size:.85rem;color:#a0aec0}.profile-card__stats{display:flex;justify-content:center;gap:2rem;flex-wrap:wrap}.stat-item{display:flex;flex-direction:column;align-items:center;gap:.25rem}.stat-item__value{font-size:1.5rem;font-weight:700;color:#fff}.stat-item__label{font-size:.85rem;color:#a0aec0}.profile-section{background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:20px;padding:2rem}.profile-section__title{font-size:1.35rem;font-weight:700;color:#fff;margin:0 0 1.5rem}.profile-worlds{display:flex;flex-direction:column;gap:1rem}.profile-achievements{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1rem}.achievement{display:flex;align-items:center;gap:1rem;padding:1rem;background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:12px;opacity:.5;filter:grayscale(1);transition:all .3s ease}.achievement--unlocked{opacity:1;filter:grayscale(0);border-color:#48bb7866;background:#48bb781a}.achievement__icon{font-size:2rem}.achievement__name{font-weight:700;color:#e0e0f0;font-size:.95rem;display:block}.achievement__desc{font-size:.8rem;color:#8a8aaa;display:block;margin-top:.25rem}.profile-guest-warning{display:flex;align-items:flex-start;gap:1rem;padding:1.5rem;background:#ed89361a;border:2px solid rgba(237,137,54,.3);border-radius:16px}.profile-guest-warning__icon{font-size:2rem;flex-shrink:0}.profile-guest-warning__title{font-weight:700;color:#fbd38d;margin:0 0 .5rem}.profile-guest-warning__text{font-size:.95rem;color:#a0aec0;margin:0;line-height:1.5}@media(max-width:768px){.profile-page{padding:1rem}.profile-card{padding:1.5rem}.profile-card__avatar-emoji{font-size:4rem}.profile-card__name{font-size:1.5rem}.profile-card__stats{gap:1.5rem}.profile-section{padding:1.5rem}.profile-achievements{grid-template-columns:1fr}}.level-badge{display:flex;align-items:center;gap:.75rem;padding:.5rem 1rem;background:linear-gradient(135deg,#1e1e2ee6,#2a2a3ee6);border:2px solid var(--level-color, #667eea);border-radius:50px;cursor:pointer;transition:all .3s ease}.level-badge:hover{transform:translateY(-2px);box-shadow:0 5px 20px color-mix(in srgb,var(--level-color) 30%,transparent)}.level-badge__icon{font-size:1.5rem;animation:float 3s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}.level-badge__info{display:flex;flex-direction:column}.level-badge__level{font-size:.7rem;text-transform:uppercase;letter-spacing:.5px;color:var(--level-color);font-weight:600}.level-badge__name{font-size:.9rem;font-weight:700;color:#fff}.level-badge__progress{display:flex;flex-direction:column;gap:.25rem;min-width:80px}.level-badge__progress-bar{height:6px;background:#ffffff1a;border-radius:3px;overflow:hidden}.level-badge__progress-fill{height:100%;background:linear-gradient(90deg,var(--level-color),color-mix(in srgb,var(--level-color) 70%,white));border-radius:3px;transition:width .5s ease}.level-badge__progress-text{font-size:.65rem;color:#a0aec0;text-align:center}.level-badge--small{padding:.25rem .5rem;gap:.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{padding:.75rem 1.5rem;gap:1rem}.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,#2a2a3e);border:2px solid rgba(255,136,0,.3);border-radius:16px;padding:1.25rem}.streak-display--compact{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .75rem;background:linear-gradient(135deg,#ff880026,#ff440026);border:2px solid rgba(255,136,0,.4);border-radius:50px}.streak-display--compact .streak-display__fire{font-size:1rem}.streak-display--compact .streak-display__count{font-size:.9rem;font-weight:700;color:#f80}.streak-display__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.streak-display__current{display:flex;align-items:center;gap:.75rem}.streak-display__fire{font-size:2.5rem;animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.streak-display__info{display:flex;flex-direction:column}.streak-display__count{font-size:1.75rem;font-weight:800;background:linear-gradient(90deg,#f80,#f40);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1}.streak-display__label{font-size:.85rem;color:#a0aec0}.streak-display__best{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:#ffd7001a;border:1px solid rgba(255,215,0,.3);border-radius:8px}.streak-display__best-icon{font-size:1rem}.streak-display__best-value{font-size:.8rem;color:gold;font-weight:600}.streak-display__calendar{display:flex;justify-content:space-between;gap:.5rem;margin-bottom:1rem}.streak-display__day{display:flex;flex-direction:column;align-items:center;gap:.25rem;padding:.5rem;background:#ffffff0d;border-radius:8px;flex:1;transition:all .3s ease}.streak-display__day--active{background:#f803}.streak-display__day--today{border:2px solid rgba(255,136,0,.5)}.streak-display__day-label{font-size:.65rem;text-transform:uppercase;color:#a0aec0}.streak-display__day-icon{font-size:1.25rem}.streak-display__bonus{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem;background:linear-gradient(135deg,#667eea33,#764ba233);border:1px solid rgba(102,126,234,.4);border-radius:8px}.streak-display__bonus-icon{font-size:1.25rem;animation:sparkle 1.5s ease-in-out infinite}@keyframes sparkle{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.1)}}.streak-display__bonus-text{font-size:.85rem;color:#a0b4f0;font-weight:600}.achievement-grid{background:linear-gradient(135deg,#1e1e2e,#2a2a3e);border-radius:16px;padding:1.5rem}.achievement-grid__header{display:flex;flex-wrap:wrap;align-items:center;gap:1rem;margin-bottom:1.5rem}.achievement-grid__title{display:flex;align-items:center;gap:.75rem;font-size:1.25rem;font-weight:700;color:#fff;margin:0}.achievement-grid__count{font-size:.9rem;color:#a0aec0;font-weight:500}.achievement-grid__filters{display:flex;gap:.5rem;margin-left:auto}.achievement-grid__filter{padding:.5rem .75rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#a0aec0;font-size:.85rem;cursor:pointer;transition:all .3s ease}.achievement-grid__filter:hover{background:#ffffff1a}.achievement-grid__filter--active{background:#667eea33;border-color:#667eea;color:#667eea}.achievement-grid__toggle{display:flex;align-items:center;gap:.5rem;font-size:.85rem;color:#a0aec0;cursor:pointer}.achievement-grid__toggle input{accent-color:#667eea}.achievement-grid__list{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem}.achievement-card{display:flex;align-items:center;gap:1rem;padding:1rem;background:#ffffff08;border:2px solid rgba(255,255,255,.1);border-radius:12px;text-align:left;cursor:pointer;transition:all .3s ease;position:relative;overflow:hidden}.achievement-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--rarity-color);opacity:.5}.achievement-card--unlocked{border-color:var(--rarity-color)}.achievement-card--unlocked:before{opacity:1}.achievement-card--unlocked:hover{transform:translateY(-3px);box-shadow:0 5px 20px color-mix(in srgb,var(--rarity-color) 30%,transparent)}.achievement-card--locked{opacity:.6}.achievement-card__icon{font-size:2rem;min-width:2.5rem;text-align:center}.achievement-card--unlocked .achievement-card__icon{animation:bounce .6s ease}.achievement-card__info{flex:1;min-width:0}.achievement-card__name{display:block;font-size:.95rem;font-weight:600;color:#fff;margin-bottom:.25rem}.achievement-card__description{display:block;font-size:.8rem;color:#a0aec0;line-height:1.4}.achievement-card__rarity-dot{width:10px;height:10px;border-radius:50%;background:var(--rarity-color)}.achievement-card__rarity-dot--legendary{animation:glow 2s ease-in-out infinite}@keyframes glow{0%,to{box-shadow:0 0 5px var(--rarity-color)}50%{box-shadow:0 0 15px var(--rarity-color)}}.achievement-card__reward{position:absolute;top:.5rem;right:.5rem;font-size:.7rem;font-weight:600;color:#48bb78;background:#48bb7833;padding:.2rem .5rem;border-radius:4px}.achievement-grid__empty{text-align:center;padding:3rem 1rem;color:#a0aec0}.achievement-grid__empty-icon{font-size:3rem;display:block;margin-bottom:1rem}@media(max-width:768px){.achievement-grid__header{flex-direction:column;align-items:flex-start}.achievement-grid__filters{margin-left:0;flex-wrap:wrap}.achievement-grid__list{grid-template-columns:1fr}}.mission-list{display:flex;flex-direction:column;gap:2rem}.mission-list__section-title{display:flex;align-items:center;gap:.5rem;font-size:1.15rem;font-weight:700;color:#fff;margin:0 0 1rem}.mission-list__section-icon{font-size:1.25rem}.mission-list__section-timer{font-size:.75rem;font-weight:500;color:#a0aec0;margin-left:auto;background:#ffffff0d;padding:.25rem .5rem;border-radius:4px}.mission-list__grid{display:flex;flex-direction:column;gap:1rem}.mission-card{display:flex;align-items:center;gap:1rem;padding:1.25rem;background:linear-gradient(135deg,#1e1e2e,#2a2a3e);border:2px solid rgba(255,255,255,.1);border-radius:16px;transition:all .3s ease}.mission-card:hover{border-color:#fff3;transform:translateY(-2px)}.mission-card--completed{border-color:#48bb7880;background:linear-gradient(135deg,#1e2e24,#2a3e30)}.mission-card--claimed{opacity:.6}.mission-card__icon{font-size:2.5rem;min-width:3rem;text-align:center}.mission-card__content{flex:1;min-width:0}.mission-card__header{display:flex;align-items:center;gap:.75rem;margin-bottom:.25rem}.mission-card__title{font-size:1rem;font-weight:700;color:#fff}.mission-card__type{font-size:.65rem;font-weight:600;text-transform:uppercase;padding:.2rem .5rem;border-radius:4px}.mission-card__type--daily{background:#00d9ff33;color:#00d9ff}.mission-card__type--weekly{background:#9f7aea33;color:#9f7aea}.mission-card__description{font-size:.85rem;color:#a0aec0;margin:0 0 .75rem;line-height:1.4}.mission-card__progress{display:flex;align-items:center;gap:.75rem}.mission-card__progress-bar{flex:1;height:8px;background:#ffffff1a;border-radius:4px;overflow:hidden}.mission-card__progress-fill{height:100%;background:linear-gradient(90deg,#00d9ff,#0f8);border-radius:4px;transition:width .5s ease}.mission-card--completed .mission-card__progress-fill{background:linear-gradient(90deg,#48bb78,#68d391)}.mission-card__progress-text{font-size:.8rem;font-weight:600;color:#a0aec0;min-width:45px}.mission-card__rewards{display:flex;flex-direction:column;gap:.5rem;padding-left:1rem;border-left:1px solid rgba(255,255,255,.1)}.mission-card__reward{display:flex;align-items:center;gap:.25rem;font-size:.8rem;color:gold;font-weight:600}.mission-card__reward-icon{font-size:.9rem}.mission-card__claim-btn{padding:.75rem 1.25rem;background:linear-gradient(135deg,#48bb78,#68d391);border:none;border-radius:8px;color:#1a1a2e;font-size:.9rem;font-weight:700;cursor:pointer;transition:all .3s ease;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.mission-card__claim-btn:hover{transform:scale(1.05);box-shadow:0 5px 20px #48bb7866}.mission-card__claimed-badge{font-size:.85rem;font-weight:600;color:#48bb78;background:#48bb781a;padding:.5rem 1rem;border-radius:8px}@media(max-width:768px){.mission-card{flex-direction:column;text-align:center}.mission-card__content{width:100%}.mission-card__header{justify-content:center}.mission-card__rewards{flex-direction:row;justify-content:center;padding-left:0;padding-top:1rem;border-left:none;border-top:1px solid rgba(255,255,255,.1);width:100%}}.avatar-shop{background:linear-gradient(135deg,#1e1e2e,#2a2a3e);border-radius:20px;padding:1.5rem}.avatar-shop__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.avatar-shop__title{font-size:1.5rem;font-weight:800;color:#fff;margin:0}.avatar-shop__balance{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:linear-gradient(135deg,#ffd70026,#ffa50026);border:2px solid rgba(255,215,0,.4);border-radius:50px}.avatar-shop__balance-icon{font-size:1.25rem}.avatar-shop__balance-value{font-size:1.1rem;font-weight:700;color:gold}.avatar-shop__tabs{display:flex;gap:.5rem;margin-bottom:1.5rem;overflow-x:auto;padding-bottom:.5rem}.avatar-shop__tab{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:#ffffff0d;border:2px solid rgba(255,255,255,.1);border-radius:12px;color:#a0aec0;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .3s ease;white-space:nowrap}.avatar-shop__tab:hover{background:#ffffff1a}.avatar-shop__tab--active{background:#667eea33;border-color:#667eea;color:#fff}.avatar-shop__tab-icon{font-size:1.1rem}.avatar-shop__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem}.shop-item{position:relative;display:flex;flex-direction:column;padding:1.25rem;background:#ffffff08;border:2px solid rgba(255,255,255,.1);border-radius:16px;transition:all .3s ease}.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{position:absolute;top:-8px;right:10px;padding:.25rem .5rem;background:linear-gradient(135deg,#f56565,#ed64a6);color:#fff;font-size:.65rem;font-weight:700;border-radius:4px;text-transform:uppercase}.shop-item__preview{position:relative;display:flex;align-items:center;justify-content:center;height:80px;margin-bottom:1rem}.shop-item__icon{font-size:3.5rem;transition:transform .3s ease}.shop-item:hover .shop-item__icon{transform:scale(1.1)}.shop-item__equipped-badge{position:absolute;bottom:-5px;left:50%;transform:translate(-50%);padding:.2rem .5rem;background:#48bb78;color:#fff;font-size:.65rem;font-weight:700;border-radius:4px}.shop-item__info{text-align:center;margin-bottom:1rem;flex:1}.shop-item__name{font-size:.95rem;font-weight:700;color:#fff;margin:0 0 .25rem}.shop-item__description{font-size:.75rem;color:#a0aec0;margin:0;line-height:1.4}.shop-item__purchase{display:flex;flex-direction:column;align-items:center;gap:.5rem}.shop-item__level-req{font-size:.75rem;color:#a0aec0;padding:.25rem .5rem;background:#ffffff0d;border-radius:4px}.shop-item__price{display:flex;align-items:center;gap:.25rem}.shop-item__price-icon{font-size:.9rem}.shop-item__price-value{font-size:1rem;font-weight:700;color:gold}.shop-item__price-value--expensive{color:#f56565}.shop-item__buy-btn{width:100%;padding:.75rem;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;font-size:.85rem;font-weight:700;cursor:pointer;transition:all .3s ease}.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:pulse .5s ease infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.shop-item__equip-btn{width:100%;padding:.75rem;background:#48bb7833;border:2px solid #48bb78;border-radius:8px;color:#48bb78;font-size:.85rem;font-weight:700;cursor:pointer;transition:all .3s ease}.shop-item__equip-btn:hover:not(:disabled){background:#48bb784d}.shop-item__equip-btn--equipped{background:#48bb78;color:#fff;cursor:default}.avatar-shop__empty{text-align:center;padding:3rem 1rem;color:#a0aec0}.avatar-shop__empty-icon{font-size:3rem;display:block;margin-bottom:1rem}@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}}.leaderboard{background:linear-gradient(135deg,#1e1e2e,#2a2a3e);border-radius:20px;padding:1.5rem}.leaderboard__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;flex-wrap:wrap;gap:1rem}.leaderboard__title{font-size:1.5rem;font-weight:800;color:#fff;margin:0}.leaderboard__periods{display:flex;gap:.5rem}.leaderboard__period{padding:.5rem 1rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#a0aec0;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .3s ease}.leaderboard__period:hover{background:#ffffff1a}.leaderboard__period--active{background:#667eea33;border-color:#667eea;color:#667eea}.leaderboard__podium{display:flex;justify-content:center;align-items:flex-end;gap:1rem;margin-bottom:2rem;padding:1rem 0}.podium-card{display:flex;flex-direction:column;align-items:center;padding:1.25rem;background:#ffffff08;border:2px solid rgba(255,255,255,.1);border-radius:16px;transition:all .3s ease;min-width:140px}.podium-card--1{order:2;background:linear-gradient(135deg,#ffd7001a,#ffa5001a);border-color:#ffd70066;transform:scale(1.1)}.podium-card--2{order:1;background:linear-gradient(135deg,#c0c0c01a,#a0a0a01a);border-color:#c0c0c066}.podium-card--3{order:3;background:linear-gradient(135deg,#cd7f321a,#b4641e1a);border-color:#cd7f3266}.podium-card--current{box-shadow:0 0 20px #667eea66}.podium-card__rank{font-size:2rem;margin-bottom:.5rem;animation:bounce 1s ease infinite}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.podium-card__avatar{font-size:2.5rem;margin-bottom:.5rem}.podium-card__name{font-size:.9rem;font-weight:700;color:#fff;text-align:center;margin-bottom:.25rem;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.podium-card__score{display:flex;align-items:center;gap:.25rem;font-size:1rem;font-weight:700;color:gold}.podium-card__score-icon{font-size:.9rem}.podium-card__level{font-size:.75rem;color:#a0aec0;margin-top:.25rem}.leaderboard__list{display:flex;flex-direction:column;gap:.5rem}.leaderboard__entry{display:flex;align-items:center;gap:1rem;padding:.75rem 1rem;background:#ffffff08;border-radius:12px;transition:all .3s ease}.leaderboard__entry:hover{background:#ffffff0f}.leaderboard__entry--current{background:#667eea26;border:1px solid rgba(102,126,234,.3)}.leaderboard__entry-rank{font-size:1rem;font-weight:700;color:#a0aec0;min-width:30px;text-align:center}.leaderboard__entry-avatar{font-size:1.5rem}.leaderboard__entry-info{flex:1;display:flex;flex-direction:column;min-width:0}.leaderboard__entry-name{font-size:.9rem;font-weight:600;color:#fff;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.leaderboard__entry-level{font-size:.75rem;color:#a0aec0}.leaderboard__entry-score{display:flex;align-items:center;gap:.25rem;font-size:.9rem;font-weight:600;color:gold}.leaderboard__entry-score-icon{font-size:.8rem}.leaderboard__current-user{margin-top:1rem}.leaderboard__separator{text-align:center;color:#a0aec0;margin:.5rem 0;font-size:.75rem;letter-spacing:3px}.leaderboard__empty{text-align:center;padding:3rem 1rem;color:#a0aec0}.leaderboard__empty-icon{font-size:3rem;display:block;margin-bottom:1rem}@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}}.powerup-bar{background:linear-gradient(135deg,#1e1e2e,#2a2a3e);border-radius:16px;padding:1.25rem}.powerup-bar__title{display:flex;align-items:center;gap:.5rem;font-size:1.1rem;font-weight:700;color:#fff;margin-bottom:1rem}.powerup-bar__title-icon{font-size:1.25rem}.powerup-bar__items{display:flex;flex-direction:column;gap:.75rem}.powerup-item{display:flex;align-items:center;gap:1rem;padding:.75rem 1rem;background:#ffffff08;border:1px solid rgba(255,255,255,.1);border-radius:12px;transition:all .3s ease;position:relative}.powerup-item:hover{background:#ffffff0f}.powerup-item--active{background:#667eea33;border-color:#667eea;animation:glow 2s ease-in-out infinite}@keyframes glow{0%,to{box-shadow:0 0 5px #667eea4d}50%{box-shadow:0 0 15px #667eea80}}.powerup-item--disabled{opacity:.5}.powerup-item__icon{font-size:1.75rem;min-width:2rem;text-align:center}.powerup-item__info{flex:1;display:flex;flex-direction:column;min-width:0}.powerup-item__name{font-size:.9rem;font-weight:600;color:#fff}.powerup-item__quantity{font-size:.75rem;color:#a0aec0}.powerup-item__actions{display:flex;gap:.5rem}.powerup-item__use-btn{padding:.5rem 1rem;background:linear-gradient(135deg,#48bb78,#68d391);border:none;border-radius:8px;color:#1a1a2e;font-size:.8rem;font-weight:700;cursor:pointer;transition:all .3s ease}.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{display:flex;align-items:center;gap:.25rem;padding:.5rem 1rem;background:#ffd70033;border:1px solid rgba(255,215,0,.4);border-radius:8px;color:gold;font-size:.8rem;font-weight:700;cursor:pointer;transition:all .3s ease}.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{position:absolute;bottom:.25rem;right:.5rem;font-size:.6rem;color:#a0aec0}.powerup-bar-compact{display:flex;gap:.5rem}.powerup-compact{display:flex;align-items:center;gap:.25rem;padding:.5rem .75rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#fff;cursor:pointer;transition:all .3s ease}.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{font-size:.75rem;font-weight:700;color:#a0aec0;min-width:1rem;text-align:center}.toast-container{position:fixed;top:20px;right:20px;display:flex;flex-direction:column;gap:1rem;z-index:9999;pointer-events:none}.toast{position:relative;display:flex;align-items:center;gap:1rem;padding:1.25rem 1.5rem;background:linear-gradient(135deg,#1e1e2e,#2a2a3e);border:2px solid rgba(255,215,0,.5);border-radius:16px;box-shadow:0 10px 40px #0006;transform:translate(120%);transition:transform .3s ease,opacity .3s ease;pointer-events:auto;overflow:hidden;min-width:350px;max-width:450px}.toast--visible{transform:translate(0)}.toast__glow{position:absolute;inset:0;background:linear-gradient(135deg,#ffd7001a,#ffa5000d);animation:pulse 2s ease-in-out infinite}.toast__glow--levelup{background:linear-gradient(135deg,color-mix(in srgb,var(--level-color) 20%,transparent),color-mix(in srgb,var(--level-color) 5%,transparent))}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.toast--levelup{border-color:var(--level-color)}.toast__icon{font-size:2.5rem;z-index:1;animation:bounce .6s ease}.toast__icon--levelup{animation:levelup 1s ease}@keyframes bounce{0%,to{transform:scale(1)}50%{transform:scale(1.2)}}@keyframes levelup{0%{transform:scale(0) rotate(-180deg)}50%{transform:scale(1.3) rotate(10deg)}to{transform:scale(1) rotate(0)}}.toast__content{flex:1;display:flex;flex-direction:column;z-index:1}.toast__label{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:gold;margin-bottom:.25rem}.toast--levelup .toast__label{color:var(--level-color);animation:flash .5s ease infinite}@keyframes flash{0%,to{opacity:1}50%{opacity:.7}}.toast__title{font-size:1.1rem;font-weight:800;color:#fff}.toast__description{font-size:.85rem;color:#a0aec0}.toast__rewards{display:flex;flex-direction:column;gap:.25rem;z-index:1}.toast__reward{font-size:.8rem;font-weight:700;color:#48bb78;background:#48bb7826;padding:.25rem .5rem;border-radius:4px;white-space:nowrap}.toast__close{position:absolute;top:.5rem;right:.5rem;width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:#ffffff1a;border:none;border-radius:50%;color:#a0aec0;font-size:.75rem;cursor:pointer;transition:all .3s ease;z-index:2}.toast__close:hover{background:#fff3;color:#fff}.toast__confetti{position:absolute;inset:0;pointer-events:none;overflow:hidden}.confetti-piece{position:absolute;font-size:1.25rem;animation:confetti 2s ease forwards;animation-delay:var(--delay);opacity:0}.confetti-piece:nth-child(1){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%}@keyframes confetti{0%{top:50%;opacity:1;transform:rotate(0)}to{top:-20%;opacity:0;transform:rotate(720deg)}}@media(max-width:768px){.toast-container{inset:auto 20px 20px}.toast{min-width:auto;max-width:none;transform:translateY(120%)}.toast--visible{transform:translateY(0)}}.gamification-page{min-height:100vh;padding:2rem;max-width:1200px;margin:0 auto}.gamification-page__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding:1.5rem;background:linear-gradient(135deg,#1e1e2e,#2a2a3e);border-radius:20px;flex-wrap:wrap;gap:1.5rem}.gamification-page__user{display:flex;align-items:center;gap:1rem}.gamification-page__avatar{width:80px;height:80px;display:flex;align-items:center;justify-content:center;font-size:3rem;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;border:3px solid rgba(255,255,255,.2)}.gamification-page__user-info{display:flex;flex-direction:column;gap:.5rem}.gamification-page__name{font-size:1.5rem;font-weight:800;color:#fff;margin:0}.gamification-page__stats{display:flex;gap:2rem}.gamification-page__stat{display:flex;flex-direction:column;align-items:center;gap:.25rem;padding:.75rem 1.5rem;background:#ffffff0d;border-radius:12px}.gamification-page__stat-icon{font-size:1.5rem}.gamification-page__stat-value{font-size:1.5rem;font-weight:800;color:#fff}.gamification-page__stat-label{font-size:.75rem;color:#a0aec0;text-transform:uppercase}.gamification-page__tabs{display:flex;gap:.5rem;margin-bottom:2rem;overflow-x:auto;padding-bottom:.5rem}.gamification-page__tab{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:#ffffff0d;border:2px solid rgba(255,255,255,.1);border-radius:12px;color:#a0aec0;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .3s ease;white-space:nowrap}.gamification-page__tab:hover{background:#ffffff1a}.gamification-page__tab--active{background:linear-gradient(135deg,#667eea33,#764ba233);border-color:#667eea;color:#fff}.gamification-page__tab-icon{font-size:1.1rem}.gamification-page__content{animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.gamification-page__overview{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}.gamification-page__section{background:linear-gradient(135deg,#1e1e2e,#2a2a3e);border-radius:16px;padding:1.5rem}.gamification-page__section-title{font-size:1.1rem;font-weight:700;color:#fff;margin:0 0 1rem}.gamification-page__mini-missions{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1rem}.mini-mission{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:#ffffff08;border-radius:10px}.mini-mission__icon{font-size:1.5rem}.mini-mission__info{flex:1}.mini-mission__title{display:block;font-size:.85rem;font-weight:600;color:#fff;margin-bottom:.25rem}.mini-mission__bar{height:6px;background:#ffffff1a;border-radius:3px;overflow:hidden}.mini-mission__fill{height:100%;background:linear-gradient(90deg,#00d9ff,#0f8);border-radius:3px;transition:width .5s ease}.mini-mission__progress{font-size:.8rem;font-weight:600;color:#a0aec0}.gamification-page__recent-achievements{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem;margin-bottom:1rem}.recent-achievement{display:flex;align-items:center;gap:.5rem;padding:.75rem;background:#ffffff08;border-radius:10px}.recent-achievement__icon{font-size:1.25rem}.recent-achievement__name{font-size:.8rem;font-weight:600;color:#fff}.gamification-page__empty{font-size:.85rem;color:#a0aec0;text-align:center;padding:1rem}.gamification-page__see-all{display:block;width:100%;padding:.75rem;background:#667eea1a;border:1px solid rgba(102,126,234,.3);border-radius:8px;color:#667eea;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .3s ease}.gamification-page__see-all:hover{background:#667eea33}@media(max-width:900px){.gamification-page__overview{grid-template-columns:1fr}}@media(max-width:768px){.gamification-page{padding:1rem}.gamification-page__header{flex-direction:column;align-items:flex-start}.gamification-page__stats{width:100%;justify-content:space-between}.gamification-page__stat{flex:1;padding:.5rem}.gamification-page__stat-value{font-size:1.25rem}.gamification-page__recent-achievements{grid-template-columns:1fr}}.learn-page{min-height:100vh;padding-bottom:4rem}.learn-hero{background:linear-gradient(135deg,var(--primary-dark) 0%,var(--secondary-dark) 100%);padding:4rem 2rem;text-align:center;margin-bottom:3rem}.learn-hero__title{font-size:2.5rem;color:var(--text-primary);margin-bottom:1rem}.learn-hero__subtitle{font-size:1.2rem;color:var(--text-secondary);max-width:600px;margin:0 auto}.learn-section{max-width:1200px;margin:0 auto 4rem;padding:0 1.5rem}.learn-section__title{font-size:1.8rem;color:var(--text-primary);margin-bottom:.5rem}.learn-section__description{color:var(--text-secondary);margin-bottom:2rem}.learn-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem}.article-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:16px;padding:1.5rem;text-decoration:none;transition:all .3s ease;display:flex;gap:1rem}.article-card:hover{border-color:var(--primary-color);transform:translateY(-4px);box-shadow:0 8px 24px #00ff881a}.article-card__icon{font-size:2.5rem;flex-shrink:0}.article-card__content{flex:1}.article-card__title{font-size:1.1rem;color:var(--text-primary);margin-bottom:.5rem;line-height:1.4}.article-card__description{font-size:.9rem;color:var(--text-secondary);margin-bottom:1rem;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.article-card__meta{display:flex;gap:1rem;font-size:.8rem;color:var(--text-muted)}.article-card__time{display:flex;align-items:center;gap:.25rem}.learn-cta{background:linear-gradient(135deg,var(--primary-color) 0%,#00cc6a 100%);padding:3rem 2rem;text-align:center;margin-top:4rem}.learn-cta__content h2{font-size:1.8rem;color:var(--primary-dark);margin-bottom:.5rem}.learn-cta__content p{color:var(--primary-dark);margin-bottom:1.5rem;opacity:.9}.learn-cta__button{display:inline-block;background:var(--primary-dark);color:var(--primary-color);padding:1rem 2rem;border-radius:50px;font-weight:600;text-decoration:none;transition:all .3s ease}.learn-cta__button:hover{transform:scale(1.05);box-shadow:0 4px 16px #0000004d}@media(max-width:768px){.learn-hero{padding:3rem 1.5rem}.learn-hero__title{font-size:2rem}.learn-grid{grid-template-columns:1fr}.article-card{flex-direction:column;text-align:center}.article-card__meta{justify-content:center;flex-wrap:wrap}}.article-page{max-width:800px;margin:0 auto;padding:2rem 1.5rem 4rem}.article-breadcrumb{display:flex;align-items:center;gap:.5rem;font-size:.9rem;color:var(--text-muted);margin-bottom:2rem}.article-breadcrumb a{color:var(--text-secondary);text-decoration:none;transition:color .2s}.article-breadcrumb a:hover{color:var(--primary-color)}.article-breadcrumb span:last-child{color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px}.article-header{text-align:center;margin-bottom:3rem;padding-bottom:2rem;border-bottom:1px solid var(--border-color)}.article-header__icon{font-size:4rem;display:block;margin-bottom:1rem}.article-header__title{font-size:2rem;color:var(--text-primary);margin-bottom:1rem;line-height:1.3}.article-header__description{font-size:1.1rem;color:var(--text-secondary);max-width:600px;margin:0 auto 1.5rem;line-height:1.6}.article-header__meta{display:flex;justify-content:center;gap:1.5rem;font-size:.9rem;color:var(--text-muted);flex-wrap:wrap}.article-content{margin-bottom:3rem}.markdown-content{color:var(--text-primary);line-height:1.8}.markdown-content h1{font-size:2rem;margin:2rem 0 1rem;color:var(--text-primary)}.markdown-content h2{font-size:1.5rem;margin:2.5rem 0 1rem;padding-bottom:.5rem;border-bottom:2px solid var(--primary-color);color:var(--text-primary)}.markdown-content h3{font-size:1.25rem;margin:2rem 0 .75rem;color:var(--primary-color)}.markdown-content p{margin-bottom:1.5rem}.markdown-content strong{color:var(--primary-color);font-weight:600}.markdown-content li{margin-left:1.5rem;margin-bottom:.5rem;list-style-type:disc}.markdown-content li.check{list-style-type:none;margin-left:0}.code-block{background:var(--primary-dark);border:1px solid var(--border-color);border-radius:12px;padding:1.5rem;margin:1.5rem 0;overflow-x:auto;font-family:Fira Code,Consolas,monospace;font-size:.9rem;line-height:1.6}.code-block code{color:var(--text-primary)}.code-block--python{border-left:4px solid var(--primary-color)}.code-block--java{border-left:4px solid #f89820}.inline-code{background:var(--secondary-dark);color:var(--primary-color);padding:.2rem .5rem;border-radius:4px;font-family:Fira Code,Consolas,monospace;font-size:.9em}.markdown-content table{width:100%;border-collapse:collapse;margin:1.5rem 0}.markdown-content tr{border-bottom:1px solid var(--border-color)}.markdown-content td{padding:.75rem;color:var(--text-secondary)}.markdown-content tr:first-child td{font-weight:600;color:var(--text-primary);background:var(--secondary-dark)}.article-cta{background:linear-gradient(135deg,var(--primary-color) 0%,#00cc6a 100%);border-radius:16px;padding:2.5rem;text-align:center;margin:3rem 0}.article-cta h2{font-size:1.5rem;color:var(--primary-dark);margin-bottom:.5rem}.article-cta p{color:var(--primary-dark);opacity:.9;margin-bottom:1.5rem}.article-cta__button{display:inline-block;background:var(--primary-dark);color:var(--primary-color);padding:1rem 2rem;border-radius:50px;font-weight:600;text-decoration:none;transition:all .3s ease}.article-cta__button:hover{transform:scale(1.05);box-shadow:0 4px 16px #0000004d}.article-related{margin-top:3rem}.article-related h2{font-size:1.5rem;color:var(--text-primary);margin-bottom:1.5rem}.article-related__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem}.article-related__card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:12px;padding:1.25rem;text-decoration:none;transition:all .3s ease;text-align:center}.article-related__card:hover{border-color:var(--primary-color);transform:translateY(-2px)}.article-related__icon{font-size:2rem;display:block;margin-bottom:.75rem}.article-related__card h3{font-size:.95rem;color:var(--text-primary);margin-bottom:.5rem;line-height:1.4}.article-related__card span{font-size:.8rem;color:var(--text-muted)}.article-back{margin-top:3rem;text-align:center}.article-back__link{color:var(--text-secondary);text-decoration:none;font-size:.95rem;transition:color .2s}.article-back__link:hover{color:var(--primary-color)}@media(max-width:768px){.article-page{padding:1.5rem 1rem 3rem}.article-header__title{font-size:1.6rem}.article-header__meta{gap:1rem}.markdown-content h1{font-size:1.6rem}.markdown-content h2{font-size:1.3rem}.code-block{padding:1rem;font-size:.85rem}.article-related__grid{grid-template-columns:1fr}}.about-page{min-height:100vh;padding-bottom:4rem}.about-hero{background:linear-gradient(135deg,var(--primary-dark) 0%,var(--secondary-dark) 100%);padding:6rem 2rem;text-align:center;color:var(--text-primary);margin-bottom:4rem}.about-hero h1{font-size:3rem;margin-bottom:1rem;background:linear-gradient(90deg,var(--primary-color),#00cc6a);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.about-hero p{font-size:1.25rem;color:var(--text-secondary);max-width:600px;margin:0 auto}.about-content{max-width:900px;margin:0 auto;padding:0 1.5rem}.about-story{margin-bottom:5rem;text-align:center}.about-story h2{font-size:2rem;color:var(--text-primary);margin-bottom:1.5rem}.about-story p{font-size:1.1rem;color:var(--text-secondary);line-height:1.8;margin-bottom:1.5rem}.about-values{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;margin-bottom:5rem}.value-card{background:var(--card-bg);border:1px solid var(--border-color);padding:2rem;border-radius:16px;text-align:center;transition:transform .3s ease}.value-card:hover{transform:translateY(-5px);border-color:var(--primary-color)}.value-icon{font-size:3rem;display:block;margin-bottom:1rem}.value-card h3{font-size:1.25rem;color:var(--text-primary);margin-bottom:.75rem}.value-card p{color:var(--text-secondary);line-height:1.6;font-size:.95rem}.about-tech{background:var(--bg-secondary);padding:3rem;border-radius:20px;margin-bottom:5rem;text-align:center}.about-tech h2{font-size:1.8rem;color:var(--text-primary);margin-bottom:1.5rem}.about-tech p{color:var(--text-secondary);line-height:1.7;margin-bottom:1rem}.about-cta{text-align:center;background:linear-gradient(135deg,var(--primary-color) 0%,#00cc6a 100%);padding:4rem 2rem;border-radius:20px}.about-cta h2{color:var(--primary-dark);font-size:2rem;margin-bottom:1rem}.about-cta p{color:var(--primary-dark);font-size:1.1rem;margin-bottom:2rem;opacity:.9}.about-button{display:inline-block;background:var(--primary-dark);color:var(--primary-color);padding:1rem 2.5rem;border-radius:50px;font-weight:700;font-size:1.1rem;text-decoration:none;transition:transform .2s}.about-button:hover{transform:scale(1.05);box-shadow:0 4px 15px #0003}@media(max-width:768px){.about-hero h1{font-size:2.5rem}.about-values{grid-template-columns:1fr}}.app{display:flex;flex-direction:column;min-height:100vh}.app__main{flex:1;display:flex;flex-direction:column}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
