:root{--bg-deep-navy: #0A2342;--card-dark-slate: #1C2A35;--text-primary: #FFFFFF;--text-secondary: #D1D5DB;--accent-orange: #FF6B35;--accent-cyan: #00D1FF;--success-green: #9BE564;--warning-amber: #FFB020;--error-red: #F05454;--badge-steel: #4A6FA5;--gray-700: #374151;--gray-800: #1F2937}.dashboard-root{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;background:var(--bg-deep-navy);background-image:url("data:image/svg+xml,%3Csvg width='200' height='200' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' stroke='rgba(56, 189, 248, 0.08)' stroke-width='1.5' stroke-linecap='round'%3E%3C!-- Gear sketch --%3E%3Ccircle cx='30' cy='30' r='8'/%3E%3Cline x1='30' y1='16' x2='30' y2='20'/%3E%3Cline x1='30' y1='40' x2='30' y2='44'/%3E%3Cline x1='16' y1='30' x2='20' y2='30'/%3E%3Cline x1='40' y1='30' x2='44' y2='30'/%3E%3Cline x1='20' y1='20' x2='23' y2='23'/%3E%3Cline x1='37' y1='37' x2='40' y2='40'/%3E%3Cline x1='40' y1='20' x2='37' y2='23'/%3E%3Cline x1='23' y1='37' x2='20' y2='40'/%3E%3C!-- Pressure gauge --%3E%3Ccircle cx='170' cy='50' r='12'/%3E%3Cpath d='M165 50 Q170 45 175 50' stroke-dasharray='1,2'/%3E%3Cline x1='170' y1='50' x2='175' y2='45' stroke-width='2'/%3E%3C!-- Valve --%3E%3Ccircle cx='50' cy='170' r='6'/%3E%3Cline x1='44' y1='170' x2='36' y2='170'/%3E%3Cline x1='56' y1='170' x2='64' y2='170'/%3E%3Cline x1='50' y1='164' x2='50' y2='156'/%3E%3C!-- Bolt --%3E%3Ccircle cx='150' cy='150' r='4'/%3E%3Cline x1='147' y1='147' x2='153' y2='153'/%3E%3Cline x1='153' y1='147' x2='147' y2='153'/%3E%3C!-- Pipe connection --%3E%3Cpath d='M90 80 L90 100 L110 100' stroke-width='2'/%3E%3Ccircle cx='110' cy='100' r='3' fill='rgba(56, 189, 248, 0.08)'/%3E%3C/g%3E%3C/svg%3E");color:var(--text-primary);min-height:100vh;overflow:hidden}@keyframes dr-volt-pulse{0%,to{box-shadow:0 4px 20px #38bdf826}50%{box-shadow:0 4px 25px #38bdf840,0 0 15px #38bdf833}}.dr-volt-message{animation:dr-volt-pulse 3s ease-in-out infinite}.custom-scrollbar::-webkit-scrollbar{width:6px}.custom-scrollbar::-webkit-scrollbar-track{background:var(--bg-deep-navy)}.custom-scrollbar::-webkit-scrollbar-thumb{background:var(--badge-steel);border-radius:3px}.custom-scrollbar::-webkit-scrollbar-thumb:hover{background:var(--accent-cyan)}.custom-scrollbar{overflow-x:visible!important}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}@keyframes glow-pulse{0%,to{box-shadow:0 0 20px #00d1ff4d}50%{box-shadow:0 0 30px #00d1ff99}}@keyframes chatbox-glow{0%,to{border-color:var(--accent-cyan);box-shadow:0 0 20px #00d1ff99,0 0 40px #00d1ff4d}50%{border-color:var(--accent-orange);box-shadow:0 0 30px #ff6b3599,0 0 60px #ff6b354d}}@keyframes slide-in{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.sidebar-glow{box-shadow:2px 0 20px #00d1ff1a}.button-glow-orange{box-shadow:0 4px 20px #ff6b3566;transition:all .3s ease}.button-glow-orange:hover{box-shadow:0 6px 30px #ff6b3599;transform:translateY(-2px)}.button-glow-cyan{box-shadow:0 4px 20px #00d1ff66;transition:all .3s ease}.button-glow-cyan:hover{box-shadow:0 6px 30px #00d1ff99;transform:translateY(-2px)}.card-hover-cyan{transition:all .3s ease;border:1px solid transparent}.card-hover-cyan:hover{border-color:var(--accent-cyan);box-shadow:0 8px 30px #00d1ff33;transform:translateY(-2px)}.card-hover-orange{transition:all .3s ease;border:1px solid transparent}.card-hover-orange:hover{border-color:var(--accent-orange);box-shadow:0 8px 30px #ff6b3533;transform:translateY(-2px)}.xp-progress-bar{background:linear-gradient(90deg,var(--success-green),var(--accent-cyan));box-shadow:0 0 15px #9be56480;transition:all .5s ease}.badge-unlocked{background:linear-gradient(135deg,var(--badge-steel),var(--accent-cyan));box-shadow:0 4px 15px #00d1ff4d;animation:glow-pulse 3s infinite}.badge-locked{background:var(--bg-deep-navy);border:1px solid var(--gray-700);opacity:.5;filter:grayscale(1)}.ai-message{background:var(--card-dark-slate);border:1px solid var(--accent-cyan);box-shadow:0 4px 20px #00d1ff33;border-left:4px solid var(--accent-cyan);position:relative}.ai-message:before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background:linear-gradient(180deg,var(--accent-cyan),var(--success-green))}.user-message{background:linear-gradient(135deg,var(--accent-orange),var(--warning-amber));box-shadow:0 4px 20px #ff6b354d}.query-input-box{background:var(--bg-deep-navy);border:2px solid var(--gray-700);border-radius:16px;transition:all .3s ease;box-shadow:0 4px 15px #0000004d}.query-input-box:focus-within{border-color:var(--accent-cyan);box-shadow:0 4px 25px #00d1ff4d}.sidebar-nav-item{transition:all .2s ease;border:1px solid transparent}.sidebar-nav-item:hover{background:var(--bg-deep-navy);border-color:var(--accent-cyan);box-shadow:0 2px 10px #00d1ff33}.sidebar-nav-item.active{background:var(--bg-deep-navy);border-color:var(--accent-cyan);box-shadow:0 4px 15px #00d1ff33}.celebration-modal{background:linear-gradient(135deg,var(--accent-orange),var(--accent-cyan));animation:bounce .5s ease-in-out;box-shadow:0 10px 50px #ff6b3580}.upgrade-modal{background:var(--card-dark-slate);border:2px solid var(--accent-orange);box-shadow:0 10px 50px #ff6b354d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.learning-path-card{background:var(--card-dark-slate);border:1px solid var(--gray-700);transition:all .3s ease;cursor:pointer}.learning-path-card:hover{border-color:var(--accent-cyan);box-shadow:0 8px 30px #00d1ff33;transform:translateY(-4px)}.quick-topic-btn{background:var(--card-dark-slate);border:1px solid var(--gray-700);transition:all .3s ease}.quick-topic-btn:hover{border-color:var(--accent-orange);box-shadow:0 8px 30px #ff6b3533;transform:scale(1.05)}.quick-topic-btn:hover .quick-topic-icon{transform:scale(1.1)}.streak-indicator{color:var(--accent-orange);filter:drop-shadow(0 0 8px var(--accent-orange))}.rank-badge{background:linear-gradient(135deg,var(--success-green),var(--accent-cyan));color:var(--bg-deep-navy);font-weight:700;padding:4px 12px;border-radius:20px;box-shadow:0 2px 10px #9be56466}.pro-badge{background:linear-gradient(135deg,var(--warning-amber),var(--accent-orange));color:var(--text-primary);font-weight:700;padding:4px 12px;border-radius:20px;box-shadow:0 2px 10px #ff6b3566}.daily-challenge-card{background:var(--card-dark-slate);border:1px solid var(--gray-700);position:relative;overflow:hidden;transition:all .3s ease}.daily-challenge-card:before{content:"";position:absolute;top:0;right:0;width:150px;height:150px;background:var(--accent-orange);opacity:.05;border-radius:50%;transform:translate(50%,-50%);transition:all .3s ease}.daily-challenge-card:hover:before{transform:translate(50%,-50%) scale(1.5)}.daily-challenge-card:hover{border-color:var(--accent-orange);box-shadow:0 8px 30px #ff6b3533}.stat-value{font-size:2rem;font-weight:700;background:linear-gradient(135deg,var(--accent-cyan),var(--success-green));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.loading-modal-backdrop{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0a2342b3}@media(max-width:768px){.sidebar-nav-item{font-size:.875rem}.stat-value{font-size:1.5rem}}.terminal-message{font-family:Fira Code,Courier New,monospace;background:var(--card-dark-slate);border-left:3px solid var(--success-green);padding:1rem;border-radius:8px;box-shadow:0 2px 10px #0000004d}.control-panel{background:linear-gradient(135deg,var(--card-dark-slate),var(--bg-deep-navy));border:1px solid var(--badge-steel);box-shadow:inset 0 2px 10px #00000080}.animate-slide-in{animation:slide-in .5s ease-out forwards}.text-glow-cyan{text-shadow:0 0 10px rgba(0,209,255,.5)}.text-glow-orange{text-shadow:0 0 10px rgba(255,107,53,.5)}.bg-gradient-orange-amber{background:linear-gradient(135deg,var(--accent-orange),var(--warning-amber))}.bg-gradient-cyan-green{background:linear-gradient(135deg,var(--accent-cyan),var(--success-green))}.border-glow-cyan{border:1px solid var(--accent-cyan);box-shadow:0 0 15px #00d1ff4d}.border-glow-orange{border:1px solid var(--accent-orange);box-shadow:0 0 15px #ff6b354d}.chatbox-glow-active{animation:chatbox-glow 1s ease-in-out infinite}@keyframes typing-dot{0%,60%,to{opacity:.3;transform:translateY(0)}30%{opacity:1;transform:translateY(-8px)}}.typing-dot{width:8px;height:8px;border-radius:50%;background-color:var(--accent-cyan);display:inline-block;margin:0 2px;animation:typing-dot 1.4s infinite}.typing-dot:nth-child(1){animation-delay:0s}.typing-dot:nth-child(2){animation-delay:.2s}.typing-dot:nth-child(3){animation-delay:.4s}.level-tab{width:100%}.level-loading{text-align:center;padding:3rem;color:#8b95a5;font-size:1.1rem}.current-level-card{background:linear-gradient(135deg,#1e2540,#2a3150);border:2px solid rgba(255,184,0,.3);border-radius:20px;padding:2.5rem;margin-bottom:3rem;position:relative;overflow:hidden}.current-level-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#ffb800,#ff6b00)}.level-card-header{display:flex;align-items:center;gap:2rem;margin-bottom:2.5rem}.level-icon{font-size:5rem;filter:drop-shadow(0 0 30px rgba(255,184,0,.5));animation:pulseGlow 2s ease-in-out infinite}@keyframes pulseGlow{0%,to{filter:drop-shadow(0 0 20px rgba(255,184,0,.4))}50%{filter:drop-shadow(0 0 40px rgba(255,184,0,.7))}}.level-text{flex:1}.level-number{font-size:3rem;font-weight:700;color:#ffb800;line-height:1;text-shadow:0 0 30px rgba(255,184,0,.5)}.level-title{font-size:1.8rem;font-weight:600;color:#fff;margin-top:.5rem}.xp-progress-section{background:#0003;border-radius:16px;padding:2rem}.xp-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:2rem;margin-bottom:2rem}.xp-stat{display:flex;flex-direction:column;gap:.5rem}.xp-label{font-size:.9rem;color:#8b95a5;text-transform:uppercase;letter-spacing:.5px;font-weight:600}.xp-value{font-size:2rem;font-weight:700;color:#fff}.progress-bar-container{width:100%;height:16px;background:#0000004d;border-radius:8px;overflow:hidden;position:relative;margin-bottom:1rem}.progress-bar-fill{height:100%;background:linear-gradient(90deg,#ffb800,#ff6b00);border-radius:8px;box-shadow:0 0 20px #ffb80080;position:relative}.progress-bar-fill:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.4),transparent);animation:shimmer 2s infinite}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.progress-info{display:flex;justify-content:space-between;align-items:center;font-size:.95rem;color:#8b95a5;font-weight:600}.max-level-badge{display:flex;align-items:center;justify-content:center;gap:1rem;padding:1.5rem;background:linear-gradient(135deg,#d0021b33,#f5a62333);border:2px solid #D0021B;border-radius:12px;font-size:1.3rem;font-weight:700;color:#f5a623;text-transform:uppercase;letter-spacing:1px}.max-icon{font-size:2rem;filter:drop-shadow(0 0 15px rgba(245,166,35,.5))}.level-roadmap{margin-bottom:3rem}.roadmap-title{font-size:1.8rem;font-weight:700;color:#fff;margin-bottom:2rem;display:flex;align-items:center;gap:.75rem}.title-icon{font-size:2rem;filter:drop-shadow(0 0 15px rgba(255,184,0,.4))}.levels-list{display:flex;flex-direction:column;gap:1rem}.level-item{display:flex;align-items:center;gap:1.5rem;padding:1.5rem;background:#1e254066;border:2px solid rgba(139,149,165,.2);border-radius:16px;transition:all .3s ease;position:relative}.level-item.completed{background:#6cc24a1a;border-color:#6cc24a4d}.level-item.current{background:linear-gradient(135deg,#ffb80026,#ff6b001a);border-color:#ffb800;box-shadow:0 4px 20px #ffb8004d}.level-item.locked{opacity:.6}.level-item:hover{transform:translate(5px)}.level-item-icon{width:60px;height:60px;background:var(--level-color);border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.8rem;color:#fff;box-shadow:0 4px 15px #0000004d}.level-item.locked .level-item-icon{background:#5a6270;filter:grayscale(100%)}.level-item-content{flex:1}.level-item-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.level-item-number{font-size:1.1rem;font-weight:700;color:#fff}.level-item-xp{font-size:.85rem;color:#8b95a5;font-weight:600}.level-item-title{font-size:1.5rem;font-weight:700;color:var(--level-color)}.level-item.locked .level-item-title{color:#8b95a5}.current-indicator{position:absolute;top:-12px;right:20px;padding:.4rem .8rem;background:linear-gradient(135deg,#ffb800,#ff6b00);border-radius:8px;font-size:.7rem;font-weight:700;color:#fff;letter-spacing:.5px;box-shadow:0 4px 15px #ffb80066}.xp-history{margin-top:3rem}.history-title{font-size:1.8rem;font-weight:700;color:#fff;margin-bottom:2rem;display:flex;align-items:center;gap:.75rem}.history-list{display:flex;flex-direction:column;gap:1rem}.history-item{display:flex;align-items:center;gap:1.5rem;padding:1.25rem;background:#1e254066;border:1px solid rgba(255,184,0,.1);border-radius:12px;transition:all .3s ease}.history-item:hover{border-color:#ffb8004d;background:#1e254099;transform:translate(5px)}.history-icon{width:50px;height:50px;background:#ffb80026;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:1.5rem}.history-content{flex:1}.history-reason{font-size:1rem;font-weight:600;color:#fff;margin-bottom:.4rem}.history-details{display:flex;align-items:center;gap:.5rem;font-size:.85rem;color:#8b95a5}.history-source{text-transform:capitalize}.history-difficulty{text-transform:capitalize;color:#ffb800}.history-dot{opacity:.5}.history-xp{font-size:1.3rem;font-weight:700;color:#6cc24a;padding:.5rem 1rem;background:#6cc24a26;border-radius:8px}@media(max-width:768px){.current-level-card{padding:2rem 1.5rem}.level-card-header{flex-direction:column;text-align:center;gap:1rem}.level-icon{font-size:4rem}.level-number{font-size:2.5rem}.level-title{font-size:1.5rem}.xp-stats{grid-template-columns:1fr;gap:1.5rem}.level-item{flex-direction:column;text-align:center}.level-item-header{flex-direction:column;gap:.5rem}.history-item{flex-direction:column;text-align:center}}@media(max-width:480px){.roadmap-title,.history-title{font-size:1.4rem}.level-item-title{font-size:1.2rem}.current-indicator{font-size:.65rem;padding:.3rem .6rem}}.badge-card{position:relative;background:linear-gradient(135deg,#0f1419,#1a1f2e);border:2px solid var(--tier-primary, rgba(255, 184, 0, .4));border-radius:12px;padding:1rem;cursor:pointer;transition:all .4s cubic-bezier(.175,.885,.32,1.275);overflow:hidden;box-shadow:0 4px 12px #0009}.badge-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--tier-primary),var(--tier-secondary));transform:scaleX(0);transform-origin:left;transition:transform .4s ease}.badge-card:hover:before{transform:scaleX(1)}.badge-card:hover{border-color:var(--tier-primary);box-shadow:0 20px 40px #0006,0 0 40px var(--tier-glow)}.badge-card.locked{opacity:.8}.badge-card.locked:hover{opacity:1}.card-glow{position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle,var(--tier-glow) 0%,transparent 70%);opacity:0;transition:opacity .4s ease;pointer-events:none}.badge-card:hover .card-glow{opacity:.3}.badge-icon-container{position:relative;width:80px;height:80px;margin:0 auto 1rem;display:flex;align-items:center;justify-content:center}.badge-icon{font-size:3rem;transition:all .4s ease;position:relative;z-index:2}.badge-card:hover .badge-icon{transform:scale(1.1) rotate(5deg)}.badge-card.earned .badge-icon{animation:float 3s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.lock-overlay{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:1.8rem;z-index:3;filter:drop-shadow(0 0 10px rgba(0,0,0,.8));animation:lockPulse 2s ease-in-out infinite}@keyframes lockPulse{0%,to{opacity:.7;transform:translate(-50%,-50%) scale(1)}50%{opacity:1;transform:translate(-50%,-50%) scale(1.1)}}.tier-indicator{position:absolute;top:0;right:0;width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 15px #0006;z-index:3}.tier-number{font-weight:700;font-size:.9rem;color:#fff}.sparkle-container{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.sparkle{position:absolute;font-size:1rem;opacity:0;animation:sparkleFloat 3s ease-in-out infinite}.sparkle-1{top:10%;left:10%;animation-delay:0s}.sparkle-2{top:20%;right:15%;animation-delay:1s}.sparkle-3{bottom:15%;left:20%;animation-delay:2s}@keyframes sparkleFloat{0%,to{opacity:0;transform:translateY(0) scale(.5)}50%{opacity:1;transform:translateY(-20px) scale(1)}}.badge-info{text-align:center;position:relative;z-index:1}.badge-name{font-size:1rem;font-weight:700;color:#e0e0e0;margin-bottom:.5rem;line-height:1.2;text-shadow:0 2px 4px rgba(0,0,0,.5)}.badge-card.earned .badge-name{color:var(--tier-primary);text-shadow:0 0 10px var(--tier-glow)}.badge-description{font-size:.75rem;color:#a0a8b0;line-height:1.4;margin-bottom:.75rem;min-height:45px}.badge-category{display:inline-block;padding:.3rem .6rem;background:#ffb80026;border:1px solid rgba(255,184,0,.4);border-radius:6px;font-size:.65rem;font-weight:700;color:gold;text-transform:uppercase;letter-spacing:.8px;margin-bottom:.75rem;text-shadow:0 0 8px rgba(255,215,0,.5)}.progress-container{margin-top:1.5rem;padding:1rem;background:#0003;border-radius:12px}.progress-info{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.progress-label{font-size:.85rem;color:#8b95a5;font-weight:600}.progress-value{font-size:.9rem;font-weight:700;color:var(--tier-primary)}.progress-bar-bg{width:100%;height:8px;background:#0000004d;border-radius:4px;overflow:hidden;margin-bottom:.5rem;position:relative}.progress-bar-fill{height:100%;border-radius:4px;position:relative;box-shadow:0 0 10px var(--tier-glow)}.progress-bar-fill:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);animation:progressShine 2s ease-in-out infinite}@keyframes progressShine{0%{transform:translate(-100%)}to{transform:translate(100%)}}.progress-percentage{font-size:.8rem;color:#8b95a5;text-align:right;font-weight:600}.earned-date{margin-top:1rem;padding:.75rem;background:#0003;border-radius:10px;font-size:.85rem;color:#8b95a5;display:flex;align-items:center;justify-content:center;gap:.5rem}.date-icon{font-size:1rem}.shine-effect{position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:linear-gradient(45deg,transparent 30%,rgba(255,255,255,.1) 50%,transparent 70%);transform:translate(-100%) rotate(45deg);transition:transform .6s ease;pointer-events:none}.badge-card:hover .shine-effect{transform:translate(100%) rotate(45deg)}@media(max-width:768px){.badge-card{padding:1.25rem}.badge-icon-container{width:100px;height:100px}.badge-icon{font-size:4rem}.badge-name{font-size:1.1rem}.badge-description{font-size:.85rem;min-height:50px}}@media(max-width:480px){.badge-icon-container{width:80px;height:80px}.badge-icon{font-size:3rem}.badge-name{font-size:1rem}}.badge-modal-backdrop{position:fixed;inset:0;background:#000c;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:9998}.badge-modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:85%;max-width:450px;max-height:85vh;background:linear-gradient(135deg,#0a0e14,#1a1f2e);border:2px solid var(--tier-primary);border-radius:16px;padding:1.5rem;z-index:9999;overflow-y:auto;box-shadow:0 25px 50px #000c,0 0 40px var(--tier-glow)}.badge-modal::-webkit-scrollbar{width:8px}.badge-modal::-webkit-scrollbar-track{background:#0003;border-radius:4px}.badge-modal::-webkit-scrollbar-thumb{background:var(--tier-primary);border-radius:4px}.modal-close{position:absolute;top:1.5rem;right:1.5rem;width:40px;height:40px;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s ease;z-index:10}.modal-close span{font-size:1.5rem;color:#fff}.modal-close:hover{background:#fff3;border-color:var(--tier-primary);transform:rotate(90deg)}.modal-header{text-align:center;margin-bottom:1.5rem;padding-bottom:1.5rem;border-bottom:2px solid rgba(255,184,0,.3)}.modal-badge-icon-container{position:relative;width:100px;height:100px;margin:0 auto 1rem;display:flex;align-items:center;justify-content:center}.modal-badge-icon{font-size:4.5rem;transition:all .4s ease;animation:modalFloat 3s ease-in-out infinite}@keyframes modalFloat{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-15px) rotate(5deg)}}.modal-lock{position:absolute;font-size:3rem;z-index:3;filter:drop-shadow(0 0 15px rgba(0,0,0,.8));animation:lockBounce 2s ease-in-out infinite}@keyframes lockBounce{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.modal-tier-badge{position:absolute;top:-10px;right:-10px;padding:.5rem 1rem;border-radius:20px;font-weight:700;font-size:.9rem;color:#fff;box-shadow:0 4px 20px #0006}.modal-sparkles{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.modal-sparkle{position:absolute;font-size:1.5rem;animation:sparkleOrbit 4s ease-in-out infinite}.modal-sparkle:nth-child(1){top:0;left:0;animation-delay:0s}.modal-sparkle:nth-child(2){top:0;right:0;animation-delay:1s}.modal-sparkle:nth-child(3){bottom:0;left:0;animation-delay:2s}.modal-sparkle:nth-child(4){bottom:0;right:0;animation-delay:3s}@keyframes sparkleOrbit{0%,to{opacity:0;transform:scale(.5) rotate(0)}50%{opacity:1;transform:scale(1.2) rotate(180deg)}}.modal-badge-name{font-size:1.5rem;font-weight:700;margin-bottom:.5rem;line-height:1.2;color:#fff;text-shadow:0 2px 10px var(--tier-glow),0 0 20px var(--tier-glow)}.modal-tier-label{font-size:.85rem;font-weight:700;text-transform:uppercase;letter-spacing:1.5px;color:var(--tier-primary);text-shadow:0 0 10px var(--tier-glow)}.modal-content{display:flex;flex-direction:column;gap:1.25rem}.modal-section{background:#0006;border:1px solid rgba(255,184,0,.2);border-radius:12px;padding:1rem}.modal-section-title{font-size:1rem;font-weight:700;color:#fff;margin-bottom:.75rem;display:flex;align-items:center;gap:.5rem;text-shadow:0 0 10px rgba(255,255,255,.3)}.section-icon{font-size:1.25rem;filter:drop-shadow(0 0 10px rgba(255,184,0,.5))}.modal-description{font-size:.9rem;color:#d0d8e0;line-height:1.6}.modal-category-badge{display:inline-block;padding:.5rem 1rem;background:#ffb80033;border:1px solid rgba(255,184,0,.4);border-radius:8px;font-size:.8rem;font-weight:700;color:gold;text-transform:uppercase;letter-spacing:1px;text-shadow:0 0 10px rgba(255,215,0,.5)}.modal-progress-stats{display:flex;justify-content:center;align-items:center;gap:1.5rem;margin-bottom:1.5rem}.modal-progress-item{display:flex;flex-direction:column;align-items:center;gap:.5rem}.progress-item-label{font-size:.9rem;color:#8b95a5;text-transform:uppercase;letter-spacing:.5px}.progress-item-value{font-size:2rem;font-weight:700;color:#fff}.modal-progress-divider{font-size:2rem;font-weight:300;color:#8b95a5}.modal-progress-bar-container{display:flex;align-items:center;gap:1rem}.modal-progress-bar{flex:1;height:12px;background:#0000004d;border-radius:6px;overflow:hidden;position:relative}.modal-progress-fill{height:100%;border-radius:6px;box-shadow:0 0 20px var(--tier-glow);position:relative}.modal-progress-fill:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.4),transparent);animation:progressShimmer 2s ease-in-out infinite}@keyframes progressShimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.modal-progress-percentage{font-size:1.3rem;font-weight:700;min-width:60px;text-align:right}.modal-earned-info{display:flex;flex-direction:column;gap:1.5rem}.earned-date-display{display:flex;align-items:center;justify-content:center;gap:1rem;padding:1.25rem;background:#ffb8001a;border:1px solid rgba(255,184,0,.3);border-radius:12px}.earned-icon{font-size:2rem}.earned-text{font-size:1.05rem;font-weight:600;color:#fff}.earned-congratulations{display:flex;align-items:center;justify-content:center;gap:1rem;padding:1.25rem;background:linear-gradient(135deg,#6cc24a26,#3fa9f526);border:1px solid rgba(255,184,0,.2);border-radius:12px}.congrats-icon{font-size:2rem}.congrats-text{font-size:1.05rem;font-weight:600;color:#6cc24a}.modal-cta{background:linear-gradient(135deg,#ffb8001a,#ff6b001a);border-color:#ffb8004d;text-align:center}.modal-cta-text{font-size:1rem;color:#b0b8c3;line-height:1.6;margin-bottom:1.5rem}.modal-cta-button{width:100%;padding:1rem 2rem;background:linear-gradient(135deg,#ffb800,#ff6b00);border:none;border-radius:12px;font-size:1.1rem;font-weight:700;color:#fff;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #ffb8004d}.modal-cta-button:hover{transform:translateY(-2px);box-shadow:0 6px 20px #ffb80080}@media(max-width:768px){.badge-modal{padding:2rem 1.5rem;max-width:95%}.modal-badge-icon-container{width:120px;height:120px}.modal-badge-icon{font-size:5rem}.modal-badge-name{font-size:1.6rem}.modal-section{padding:1.25rem}.progress-item-value{font-size:1.6rem}}@media(max-width:480px){.modal-badge-icon-container{width:100px;height:100px}.modal-badge-icon{font-size:4rem}.modal-badge-name{font-size:1.4rem}.modal-close{width:35px;height:35px;top:1rem;right:1rem}.modal-progress-stats{flex-direction:column;gap:1rem}.modal-progress-divider{transform:rotate(90deg)}}.badges-tab{width:100%}.badges-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:1rem}.badges-header{margin-bottom:2rem}.badges-stats{display:flex;align-items:center;justify-content:space-around;background:linear-gradient(135deg,#ffb8001a,#ff6b000d);border:1px solid rgba(255,184,0,.2);border-radius:16px;padding:2rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.stat-item{display:flex;align-items:center;gap:1rem}.stat-icon{font-size:2.5rem;filter:drop-shadow(0 0 15px rgba(255,184,0,.4))}.stat-number{font-size:2rem;font-weight:700;color:#fff;line-height:1}.stat-text{font-size:.9rem;color:#8b95a5;margin-top:.25rem}.stat-divider{width:1px;height:50px;background:linear-gradient(to bottom,transparent,rgba(255,184,0,.3),transparent)}.category-filter{display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:2.5rem}.filter-btn{padding:.75rem 1.25rem;background:#1e254099;border:1px solid rgba(255,184,0,.2);border-radius:12px;display:flex;align-items:center;gap:.5rem;font-size:.9rem;font-weight:600;color:#8b95a5;cursor:pointer;transition:all .3s ease}.filter-btn:hover{background:#ffb8001a;border-color:#ffb80066;color:#fff;transform:translateY(-2px)}.filter-btn.active{background:linear-gradient(135deg,#ffb80033,#ff6b0033);border-color:#ffb800;color:#ffb800;box-shadow:0 4px 15px #ffb8004d}.filter-icon{font-size:1.2rem}.badges-section{margin-bottom:3rem}.section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:2rem;padding-bottom:1rem;border-bottom:2px solid rgba(255,184,0,.2)}.section-title{font-size:1.8rem;font-weight:700;color:#fff;display:flex;align-items:center;gap:.75rem}.title-icon{font-size:2rem;filter:drop-shadow(0 0 15px rgba(255,184,0,.5))}.section-subtitle{font-size:.95rem;color:#8b95a5;margin-top:.5rem}.tier-legend{display:flex;gap:1.5rem;align-items:center}.legend-item{display:flex;align-items:center;gap:.5rem;font-size:.85rem;color:#8b95a5}.tier-dot{width:12px;height:12px;border-radius:50%;box-shadow:0 0 10px currentColor}.tier-dot.tier-1{background:#6cc24a;color:#6cc24a80}.tier-dot.tier-2{background:#3fa9f5;color:#3fa9f580}.tier-dot.tier-3{background:#f5a623;color:#f5a62380}.tier-group{margin-bottom:2.5rem}.tier-header{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem}.tier-badge{padding:.5rem 1.25rem;border-radius:8px;font-weight:700;font-size:.9rem;color:#fff;text-transform:uppercase;letter-spacing:.5px;box-shadow:0 4px 15px #0000004d}.tier-count{font-size:.9rem;color:#8b95a5;padding:.5rem 1rem;background:#1e254099;border-radius:8px}.badges-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem}.empty-state{text-align:center;padding:4rem 2rem;background:#1e254066;border:2px dashed rgba(255,184,0,.2);border-radius:16px}.empty-icon{font-size:4rem;margin-bottom:1rem;filter:grayscale(100%) opacity(.3)}.empty-state h3{font-size:1.5rem;color:#fff;margin-bottom:.5rem}.empty-state p{font-size:1rem;color:#8b95a5}@media(max-width:1024px){.badges-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}}@media(max-width:768px){.badges-stats{flex-direction:column;gap:1.5rem;padding:1.5rem}.stat-divider{width:80%;height:1px;background:linear-gradient(to right,transparent,rgba(255,184,0,.3),transparent)}.section-header{flex-direction:column;align-items:flex-start;gap:1rem}.tier-legend{width:100%;justify-content:flex-start}.category-filter{justify-content:center}.badges-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem}}@media(max-width:480px){.section-title{font-size:1.4rem}.badges-grid{grid-template-columns:1fr}.filter-btn{flex:1;justify-content:center}.tier-header{flex-direction:column;align-items:flex-start}}.certificates-tab{width:100%;min-height:500px;display:flex;align-items:center;justify-content:center}.coming-soon-container{text-align:center;max-width:600px;padding:3rem 2rem}.coming-soon-icon{font-size:6rem;margin-bottom:2rem;filter:drop-shadow(0 0 30px rgba(255,184,0,.4));animation:floatIcon 3s ease-in-out infinite}@keyframes floatIcon{0%,to{transform:translateY(0)}50%{transform:translateY(-15px)}}.coming-soon-title{font-size:2.5rem;font-weight:700;color:#fff;margin-bottom:1rem;text-shadow:0 0 30px rgba(255,184,0,.3)}.coming-soon-description{font-size:1.1rem;color:#b0b8c3;line-height:1.7;margin-bottom:3rem}.coming-soon-features{display:flex;flex-direction:column;gap:1.5rem;align-items:flex-start;max-width:500px;margin:0 auto}.feature-item{display:flex;align-items:center;gap:1rem;padding:1.25rem 1.5rem;background:#1e254099;border:1px solid rgba(255,184,0,.2);border-radius:12px;width:100%;transition:all .3s ease}.feature-item:hover{border-color:#ffb80066;background:#1e2540cc;transform:translate(5px)}.feature-icon{width:32px;height:32px;background:linear-gradient(135deg,#6cc24a,#4a9932);border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;color:#fff;font-size:1.1rem;box-shadow:0 4px 15px #6cc24a4d;flex-shrink:0}.feature-text{font-size:1rem;color:#fff;font-weight:600;text-align:left}@media(max-width:768px){.coming-soon-icon{font-size:4.5rem}.coming-soon-title{font-size:2rem}.coming-soon-description{font-size:1rem}.feature-item{padding:1rem 1.25rem}}@media(max-width:480px){.coming-soon-icon{font-size:3.5rem}.coming-soon-title{font-size:1.6rem}.feature-text{font-size:.9rem}}.achievements-page{width:100%;min-height:100vh;background:linear-gradient(135deg,#0a0e27,#1a1f3a);padding:2rem;color:#e0e6ed}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:1rem}.loading-spinner{width:50px;height:50px;border:4px solid rgba(255,184,0,.2);border-top-color:#ffb800;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.achievements-header{margin-bottom:2.5rem}.header-content{margin-bottom:2rem}.page-title{font-size:2.5rem;font-weight:700;color:#fff;margin-bottom:.5rem;display:flex;align-items:center;gap:1rem}.title-icon{font-size:2.5rem;filter:drop-shadow(0 0 20px rgba(255,184,0,.5))}.page-subtitle{font-size:1.1rem;color:#8b95a5;margin-left:3.5rem}.quick-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-top:2rem}.stat-card{background:linear-gradient(135deg,#1e2540,#2a3150);border:1px solid rgba(255,184,0,.2);border-radius:16px;padding:1.5rem;display:flex;align-items:center;gap:1.5rem;transition:all .3s ease;position:relative;overflow:hidden}.stat-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#ffb800,#ff6b00);transform:scaleX(0);transform-origin:left;transition:transform .3s ease}.stat-card:hover{border-color:#ffb80080;transform:translateY(-4px);box-shadow:0 8px 24px #ffb80033}.stat-card:hover:before{transform:scaleX(1)}.stat-icon{font-size:2.5rem;filter:drop-shadow(0 0 10px rgba(255,184,0,.3))}.stat-content{flex:1}.stat-value{font-size:1.8rem;font-weight:700;color:#fff;line-height:1.2}.stat-label{font-size:.9rem;color:#8b95a5;margin-top:.25rem}.tab-navigation{display:flex;gap:1rem;background:#1e254099;padding:.5rem;border-radius:16px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,184,0,.1);margin-bottom:2rem}.tab-button{flex:1;padding:1rem 1.5rem;background:transparent;border:none;border-radius:12px;display:flex;align-items:center;justify-content:center;gap:.75rem;font-size:1rem;font-weight:600;color:#8b95a5;cursor:pointer;transition:all .3s ease;position:relative}.tab-button:hover{color:#fff;background:#ffb8001a}.tab-button.active{color:#ffb800;background:linear-gradient(135deg,#ffb80026,#ff6b0026)}.tab-icon{font-size:1.5rem;filter:drop-shadow(0 0 8px rgba(255,184,0,.3))}.tab-indicator{position:absolute;bottom:-.5rem;left:50%;transform:translate(-50%);width:60%;height:3px;background:linear-gradient(90deg,#ffb800,#ff6b00);border-radius:2px}.tab-content{background:#1e254066;border:1px solid rgba(255,184,0,.15);border-radius:20px;padding:2.5rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);min-height:500px}@media(max-width:768px){.achievements-page{padding:1rem}.page-title{font-size:2rem}.quick-stats{grid-template-columns:1fr}.tab-navigation{flex-direction:column}.tab-button{justify-content:flex-start}.tab-content{padding:1.5rem}}@media(max-width:480px){.page-title{font-size:1.5rem;flex-direction:column;align-items:flex-start}.page-subtitle{margin-left:0}.stat-card{padding:1rem}.stat-value{font-size:1.5rem}}.testing-controls{position:fixed;bottom:20px;right:20px;z-index:9999}.testing-toggle{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:linear-gradient(135deg,#9be564,#00d1ff);border:2px solid #9BE564;border-radius:12px;color:#fff;font-weight:700;font-size:.9rem;cursor:pointer;box-shadow:0 4px 20px #9be56466;transition:all .3s ease}.testing-toggle:hover{transform:translateY(-2px);box-shadow:0 6px 25px #9be56499}.testing-role-badge{font-size:.85rem;text-transform:uppercase;letter-spacing:.5px}.testing-panel{position:absolute;bottom:60px;right:0;width:400px;max-height:600px;overflow-y:auto;background:linear-gradient(135deg,#1e2540,#2a3150);border:2px solid #9BE564;border-radius:16px;padding:1.5rem;box-shadow:0 10px 40px #00000080;animation:slideUp .3s ease}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.testing-header{margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid rgba(155,229,100,.2)}.testing-header h3{font-size:1.3rem;font-weight:700;color:#9be564;margin-bottom:.5rem}.testing-description{font-size:.9rem;color:#b0b8c3}.developer-info{background:#9be5641a;border:1px solid rgba(155,229,100,.3);border-radius:12px;padding:1rem}.developer-info h4{font-size:1.1rem;font-weight:700;color:#9be564;margin-bottom:.75rem}.developer-info ul{list-style:none;padding:0;margin:0}.developer-info li{font-size:.9rem;color:#fff;padding:.4rem 0}.user-tester-controls h4{font-size:1.1rem;font-weight:700;color:#00d1ff;margin-bottom:.5rem}.control-subtitle{font-size:.85rem;color:#b0b8c3;margin-bottom:1rem}.level-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem;margin-bottom:1.5rem}.level-button{display:flex;flex-direction:column;align-items:center;padding:.75rem;background:#1e254099;border:2px solid rgba(139,149,165,.3);border-radius:12px;cursor:pointer;transition:all .3s ease;font-family:inherit}.level-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 15px #0000004d}.level-button:disabled{opacity:.6;cursor:not-allowed}.level-button.active{box-shadow:0 4px 20px #0006}.level-number{font-size:1.5rem;font-weight:700;margin-bottom:.25rem}.level-name{font-size:.75rem;color:#fff;text-align:center;font-weight:600}.reset-button{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:.75rem;background:linear-gradient(135deg,#ff6b35,#ffb020);border:none;border-radius:12px;color:#fff;font-weight:700;font-size:.9rem;cursor:pointer;transition:all .3s ease;margin-bottom:1rem;font-family:inherit}.reset-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 15px #ff6b3566}.reset-button:disabled{opacity:.6;cursor:not-allowed}.testing-tips{background:#00d1ff1a;border:1px solid rgba(0,209,255,.3);border-radius:12px;padding:1rem;font-size:.85rem}.testing-tips strong{color:#00d1ff;display:block;margin-bottom:.5rem}.testing-tips ul{list-style:none;padding:0;margin:0}.testing-tips li{color:#b0b8c3;padding:.3rem 0 .3rem 1rem;position:relative}.testing-tips li:before{content:"•";position:absolute;left:0;color:#00d1ff}.testing-panel::-webkit-scrollbar{width:8px}.testing-panel::-webkit-scrollbar-track{background:#0003;border-radius:10px}.testing-panel::-webkit-scrollbar-thumb{background:#9be56480;border-radius:10px}.testing-panel::-webkit-scrollbar-thumb:hover{background:#9be564b3}@media(max-width:768px){.testing-panel{width:calc(100vw - 40px);right:-10px}.level-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:480px){.testing-controls{bottom:10px;right:10px}.testing-toggle{padding:.6rem .8rem;font-size:.8rem}.testing-role-badge{font-size:.75rem}}
