@keyframes fade-in-slide-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in-slide-up{animation:fade-in-slide-up .4s ease-out forwards}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.animate-fade-in{animation:fade-in .5s ease-out forwards}@keyframes blinking-cursor{0%,to{opacity:1}50%{opacity:0}}.blinking-cursor{display:inline-block;width:8px;height:1.2rem;background-color:#a1a1aa;animation:blinking-cursor 1.2s infinite;margin-left:4px;vertical-align:text-bottom}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#15251d}::-webkit-scrollbar-thumb{background-color:#30833b;border-radius:4px;border:2px solid #15251d}::-webkit-scrollbar-thumb:hover{background-color:#4ade80}html,body{overflow-x:hidden;width:100%;max-width:100vw}#root{min-height:-webkit-fill-available;min-height:100vh;display:flex;flex-direction:column}*{max-width:100%}.scrollbar-hide::-webkit-scrollbar{display:none}.scrollbar-hide{-ms-overflow-style:none;scrollbar-width:none}.level-badge-compact{display:inline-flex!important;align-items:center!important;gap:8px!important;padding:6px 14px!important;background:#ffffff0d!important;-webkit-backdrop-filter:blur(8px)!important;backdrop-filter:blur(8px)!important;border-radius:12px!important;transition:all .3s cubic-bezier(.4,0,.2,1)!important;border:1px solid rgba(255,255,255,.1)!important}.level-badge-compact.clickable{cursor:pointer!important}.level-badge-compact.clickable:hover{transform:translateY(-2px)!important;background:#ffffff1f!important;border-color:#22c55e66!important;box-shadow:0 4px 12px #0000004d!important}.badge-emoji{font-size:16px!important;filter:drop-shadow(0 0 8px rgba(255,255,255,.2))!important}.badge-name-compact{font-size:11px!important;font-weight:800!important;color:#a0aec0!important;text-transform:uppercase!important;letter-spacing:.1em!important}.level-badge-compact:hover .badge-name-compact{color:#fff!important}.level-badge-full{background:linear-gradient(145deg,#0d0d17,#151525)!important;-webkit-backdrop-filter:blur(12px)!important;backdrop-filter:blur(12px)!important;border-radius:24px!important;padding:24px!important;border:1px solid rgba(255,255,255,.1)!important;box-shadow:0 20px 40px #0009!important;transition:all .4s cubic-bezier(.4,0,.2,1)!important;width:100%!important}.badge-header{display:flex!important;align-items:center!important;gap:20px!important;margin-bottom:24px!important}.badge-icon{width:64px!important;height:64px!important;border-radius:20px!important;display:flex!important;align-items:center!important;justify-content:center!important;background:#ffffff08!important;border:1px solid rgba(255,255,255,.05)!important;box-shadow:0 8px 16px #0003!important}.badge-icon.level-1{background:#10b98126!important;border-color:#10b9814d!important}.badge-icon.level-2{background:#3b82f626!important;border-color:#3b82f64d!important}.badge-icon.level-3{background:#f59e0b26!important;border-color:#f59e0b4d!important}.badge-icon.level-4{background:#ef444426!important;border-color:#ef44444d!important}.badge-icon.level-5{background:#8b5cf626!important;border-color:#8b5cf64d!important}.badge-icon.level-6{background:#ec489926!important;border-color:#ec48994d!important}.badge-emoji-large{font-size:36px!important;filter:drop-shadow(0 0 12px rgba(255,255,255,.2))!important}.level-name{font-size:20px!important;font-weight:900!important;margin:0!important;color:#fff!important;letter-spacing:-.01em!important}.level-description{font-size:13px!important;color:#94a3b8!important;margin:4px 0 0!important;line-height:1.4!important}.badge-progress{margin-top:20px!important}.progress-header{display:flex!important;justify-content:space-between!important;align-items:center!important;margin-bottom:10px!important}.progress-label{font-size:12px!important;font-weight:800!important;color:#94a3b8!important;text-transform:uppercase!important;letter-spacing:.05em!important}.progress-percentage{font-size:14px!important;font-weight:900!important;color:#22c55e!important}.badge-progress-track{width:100%!important;height:10px!important;background:#ffffff14!important;border-radius:10px!important;overflow:hidden!important;margin-bottom:20px!important;border:1px solid rgba(255,255,255,.1)!important;position:relative!important}.badge-progress-bar{height:100%!important;transition:width 1s cubic-bezier(.19,1,.22,1)!important;border-radius:10px!important;position:relative!important}.badge-progress-bar.level-1{background:linear-gradient(90deg,#10b981,#34d399)!important}.badge-progress-bar.level-2{background:linear-gradient(90deg,#3b82f6,#60a5fa)!important}.badge-progress-bar.level-3{background:linear-gradient(90deg,#f59e0b,#fbbf24)!important}.badge-progress-bar.level-4{background:linear-gradient(90deg,#ef4444,#f87171)!important}.badge-progress-bar.level-5{background:linear-gradient(90deg,#8b5cf6,#a78bfa)!important}.badge-progress-bar.level-6{background:linear-gradient(90deg,#ec4899,#f472b6)!important}.badge-stats-container{display:flex!important;gap:12px!important;flex-wrap:wrap!important;margin-top:15px!important}.badge-stat-card{display:flex!important;align-items:center!important;gap:8px!important;padding:12px 16px!important;background:#0f172a99!important;border:1px solid rgba(255,255,255,.1)!important;border-radius:16px!important;font-size:14px!important;font-weight:800!important;color:#fff!important;transition:all .3s ease!important;flex:1!important;min-width:140px!important;box-shadow:0 4px 12px #0003!important}.xp-stat-v2{color:#fbbf24!important;background:#fbbf241a!important;border-color:#fbbf2440!important}.accuracy-stat-v2{color:#60a5fa!important;background:#60a5fa1a!important;border-color:#60a5fa40!important}.badge-stat-card:hover{background:#ffffff14!important;transform:translateY(-3px)!important;box-shadow:0 8px 20px #0006!important;border-color:#fff3!important}.recovery-badge{margin-top:20px!important;padding:10px 14px!important;background:#ef444426!important;border:1px solid rgba(239,68,68,.3)!important;border-radius:10px!important;color:#f87171!important;font-size:12px!important;font-weight:900!important;text-transform:uppercase!important;text-align:center!important}.assessment-modal-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:9999;padding:20px;animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.assessment-modal{background:#fff;border-radius:16px;max-width:600px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d;animation:slideUp .3s ease}@keyframes slideUp{0%{transform:translateY(50px);opacity:0}to{transform:translateY(0);opacity:1}}.assessment-header{padding:24px;border-bottom:2px solid #e2e8f0}.assessment-header h2{margin:0 0 8px;font-size:24px;color:#2d3748}.question-progress{font-size:14px;color:#718096;font-weight:600}.timer-section{margin-top:16px;padding:16px;background:#f7fafc;border-radius:12px;border:2px solid #e2e8f0}.timer-display{display:flex;align-items:center;justify-content:center;gap:8px;margin-bottom:12px}.timer-icon{font-size:20px}.timer-text{font-size:24px;font-weight:700;color:#2d3748;font-family:Courier New,monospace}.timer-text.warning{color:#f6ad55;animation:pulse 1s ease infinite}.timer-text.danger{color:#f56565;animation:pulse .5s ease infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.progress-bar-container{width:100%}.progress-bar{width:100%;height:8px;background:#e2e8f0;border-radius:4px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,#667eea,#764ba2);border-radius:4px;transition:width .3s ease}.progress-fill.warning{background:linear-gradient(90deg,#f6ad55,#ed8936)}.progress-fill.danger{background:linear-gradient(90deg,#f56565,#e53e3e)}.assessment-body{padding:24px}.question-text{font-size:18px;color:#2d3748;margin-bottom:24px;line-height:1.6;font-weight:500}.answer-options{display:flex;flex-direction:column;gap:12px}.option-button{display:flex;align-items:center;gap:12px;padding:16px;background:#f7fafc;border:2px solid #e2e8f0;border-radius:12px;cursor:pointer;transition:all .2s ease;font-size:16px;text-align:left}.option-button:hover{background:#edf2f7;border-color:#cbd5e0;transform:translate(4px)}.option-button.selected{background:linear-gradient(135deg,#667eea,#764ba2);border-color:#667eea;color:#fff;font-weight:600}.option-icon{font-size:20px;flex-shrink:0}.option-text{flex:1}.assessment-footer{padding:24px;border-top:2px solid #e2e8f0;display:flex;justify-content:space-between;gap:12px}.btn-cancel{padding:12px 24px;background:#e2e8f0;color:#4a5568;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-cancel:hover{background:#cbd5e0}.btn-next{padding:12px 32px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-next:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.btn-next:disabled{opacity:.5;cursor:not-allowed}.result-modal{max-width:500px}.result-header{padding:32px 24px;text-align:center;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:16px 16px 0 0}.result-header h2{margin:0;font-size:28px;color:#fff}.level-up-celebration{font-size:64px;animation:bounce 1s ease infinite;margin-bottom:16px}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.result-content{padding:32px 24px}.result-score{display:flex;justify-content:center;margin-bottom:24px}.score-circle{width:150px;height:150px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:0 8px 24px #667eea4d}.score-number{font-size:48px;font-weight:700;color:#fff}.score-label{font-size:14px;color:#fff;opacity:.9}.result-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:24px}.stat-box{text-align:center;padding:16px;background:#f7fafc;border-radius:12px}.stat-value{font-size:24px;font-weight:700;color:#2d3748;margin-bottom:4px}.stat-label{font-size:12px;color:#718096;text-transform:uppercase;letter-spacing:.5px}.result-encouragement{text-align:center;padding:16px;background:linear-gradient(135deg,#f6ad55,#ed8936);color:#fff;border-radius:12px;font-size:16px;font-weight:600;margin-bottom:16px}.level-up-message{text-align:center;padding:20px;background:linear-gradient(135deg,#48bb78,#38a169);color:#fff;border-radius:12px}.level-up-message h3{margin:0 0 8px;font-size:20px}.level-up-message p{margin:0;font-size:14px;opacity:.95}.result-actions{padding:24px;border-top:2px solid #e2e8f0;text-align:center}.btn-primary{padding:14px 32px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}@media(max-width:768px){.assessment-modal{max-width:100%;margin:0;border-radius:0;max-height:100vh}.result-stats{grid-template-columns:1fr}.score-circle{width:120px;height:120px}.score-number{font-size:36px}}.knowledge-level-integration{position:relative}.level-badge-container{position:fixed;top:20px;right:20px;z-index:9999;background:#0b0b14d9;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:16px;padding:6px;border:1px solid rgba(255,255,255,.1);box-shadow:0 10px 25px #00000080;transition:all .3s cubic-bezier(.4,0,.2,1)}.level-badge-container:hover{transform:translateY(-2px);background:#141423f2;border-color:#22c55e4d}.progress-detail-panel{position:fixed;top:0;right:0;width:420px;max-width:100vw;height:100vh;background:linear-gradient(to left,#0b0b14,#0f0f1d);box-shadow:-10px 0 40px #000000b3;z-index:9998;padding:30px;overflow-y:auto;animation:slideInRight .4s cubic-bezier(.19,1,.22,1);border-left:1px solid rgba(255,255,255,.05)}@keyframes slideInRight{0%{transform:translate(100%)}to{transform:translate(0)}}.btn-close-detail{width:100%;margin-top:24px;padding:14px;background:#ffffff0d;color:#fff;border:1px solid rgba(255,255,255,.1);border-radius:12px;font-size:14px;font-weight:700;cursor:pointer;transition:all .2s ease;text-transform:uppercase;letter-spacing:1px}.btn-close-detail:hover{background:#ffffff1a;border-color:#fff3;transform:translateY(-1px)}.assessment-offer{margin:24px 0;padding:24px;background:linear-gradient(135deg,#1e293bcc,#0f172ae6);border:1px solid rgba(59,130,246,.3);border-radius:20px;display:flex;flex-direction:column;gap:18px;animation:fadeInUp .5s cubic-bezier(.19,1,.22,1);position:relative;overflow:hidden;box-shadow:0 15px 35px #0006}.assessment-offer:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#3b82f6,#8b5cf6,#ec4899)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.offer-icon{font-size:40px;text-align:center;filter:drop-shadow(0 0 10px rgba(59,130,246,.5))}.offer-content{text-align:center}.offer-content h4{margin:0 0 10px;font-size:20px;font-weight:900;color:#fff;letter-spacing:-.02em}.offer-content p{margin:0;font-size:15px;color:#94a3b8;line-height:1.6}.offer-actions{display:flex;gap:16px;justify-content:center;margin-top:8px}.btn-accept{flex:1.5;padding:14px 28px;background:linear-gradient(135deg,#3b82f6,#7c3aed);color:#fff;border:none;border-radius:12px;font-size:15px;font-weight:800;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #3b82f64d}.btn-accept:hover{transform:translateY(-2px);box-shadow:0 8px 25px #3b82f680;filter:brightness(1.1)}.btn-decline{flex:1;padding:14px 20px;background:#ffffff0d;color:#94a3b8;border:1px solid rgba(255,255,255,.1);border-radius:12px;font-size:14px;font-weight:700;cursor:pointer;transition:all .2s ease}.btn-decline:hover{background:#ffffff1a;color:#fff}.timing-info{margin-top:10px;padding:10px 14px;background:#3b82f60d;border-radius:10px;border-left:3px solid #3b82f6;text-align:center}.timing-info small{color:#60a5fa;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.offer-footer{margin-top:16px;padding-top:16px;border-top:1px solid rgba(255,255,255,.05);text-align:center}.btn-info{background:none;border:none;color:#94a3b8;font-size:12px;cursor:pointer;padding:6px 12px;border-radius:20px;transition:all .2s ease}.btn-info:hover{color:#fff;background:#ffffff0d}.timing-explanation{margin-top:16px;padding:20px;background:#0000004d;border-radius:16px;border:1px solid rgba(59,130,246,.2);animation:slideDown .4s cubic-bezier(.19,1,.22,1);text-align:left}.timing-explanation p{margin:0 0 12px;font-size:14px;font-weight:700;color:#fff}.timing-explanation ul{margin:0;padding-left:18px;color:#94a3b8}.timing-explanation li{margin:6px 0;font-size:13px;line-height:1.5}@keyframes slideDown{0%{opacity:0;transform:translateY(-15px)}to{opacity:1;transform:translateY(0)}}@media(max-width:480px){.progress-detail-panel{width:100%;padding:20px}.level-badge-container{top:10px;right:10px}.assessment-offer{padding:20px}.offer-actions{flex-direction:column}.offer-icon{font-size:32px}}.analysis-dashboard{max-width:1200px;margin:0 auto;padding:20px;font-family:Inter,sans-serif}.dashboard-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;padding:20px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;color:#fff}.dashboard-header h2{margin:0;font-size:24px;font-weight:600}.refresh-btn,.retry-btn{background:#fff3;border:1px solid rgba(255,255,255,.3);color:#fff;padding:8px 16px;border-radius:8px;cursor:pointer;font-size:14px;transition:all .3s ease}.refresh-btn:hover,.retry-btn:hover{background:#ffffff4d;transform:translateY(-1px)}.analysis-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:20px;margin-bottom:30px}.analysis-card{background:#fff;border-radius:12px;padding:20px;box-shadow:0 4px 6px #0000001a;border:1px solid #e2e8f0}.analysis-card h3{margin:0 0 15px;font-size:18px;font-weight:600;color:#2d3748;display:flex;align-items:center;gap:8px}.status-indicator{display:inline-block;padding:6px 12px;border-radius:20px;font-size:14px;font-weight:600;margin-bottom:10px}.status-indicator.active{background:#c6f6d5;color:#22543d}.status-indicator.inactive{background:#fed7d7;color:#742a2a}.stats-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.stat-item{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background:#f7fafc;border-radius:8px}.stat-label{font-size:14px;color:#4a5568}.stat-value{font-weight:600;color:#2d3748}.levels-list{display:flex;flex-direction:column;gap:10px}.level-item{display:flex;justify-content:space-between;align-items:center;padding:12px;background:#f7fafc;border-radius:8px;border-left:4px solid #667eea}.focus-topic{font-weight:600;color:#2d3748;text-transform:capitalize}.level-badge{padding:4px 8px;border-radius:12px;font-size:12px;font-weight:600;color:#fff}.level-badge.level-1{background:#90ee90}.level-badge.level-2{background:#87ceeb}.level-badge.level-3{background:plum}.level-badge.level-4{background:khaki}.level-badge.level-5{background:#ffb6c1}.level-badge.level-6{background:#ffa07a}.level-badge.level-7{background:#98fb98}.xp{font-size:12px;color:#4a5568;font-weight:500}.profiles-list{display:flex;flex-direction:column;gap:12px}.profile-item{padding:12px;background:#f7fafc;border-radius:8px;border-left:4px solid #48bb78}.profile-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.last-update{font-size:12px;color:#718096}.profile-details{display:flex;gap:12px;font-size:12px;color:#4a5568}.profile-details span{background:#fff;padding:4px 8px;border-radius:4px}.sessions-list{display:flex;flex-direction:column;gap:10px}.session-item{padding:12px;background:#f7fafc;border-radius:8px;border-left:4px solid #ed8936}.session-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.session-date{font-size:12px;color:#718096}.session-details{display:flex;gap:12px;font-size:12px;color:#4a5568}.session-details span{background:#fff;padding:4px 8px;border-radius:4px}.session-details .status.active{background:#c6f6d5;color:#22543d}.session-details .status.inactive{background:#fed7d7;color:#742a2a}.assessments-list{display:flex;flex-direction:column;gap:10px}.assessment-item{padding:12px;background:#f7fafc;border-radius:8px;border-left:4px solid #9f7aea}.assessment-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.assessment-header .type{font-weight:600;color:#2d3748;text-transform:capitalize}.assessment-header .score{font-weight:600;color:#2d3748;background:#fff;padding:4px 8px;border-radius:4px}.assessment-details{display:flex;gap:12px;font-size:12px;color:#4a5568}.assessment-details span{background:#fff;padding:4px 8px;border-radius:4px}.loading,.error,.no-data{text-align:center;padding:40px 20px;font-size:16px;color:#4a5568}.error{color:#e53e3e}.dashboard-footer{text-align:center;padding:20px;background:#f7fafc;border-radius:8px;color:#4a5568;font-size:14px}.dashboard-footer p{margin:5px 0}.admin-warning{background:#fff3cd;border:1px solid #ffeaa7;border-radius:8px;padding:12px;margin-bottom:20px;color:#856404;text-align:center}.admin-controls{display:flex;gap:10px;align-items:center}.user-id-input{padding:8px 12px;border:1px solid #e2e8f0;border-radius:6px;font-size:14px;min-width:200px}.analyze-btn{background:#667eea;color:#fff;border:none;padding:8px 16px;border-radius:6px;cursor:pointer;font-size:14px;transition:background .3s ease}.analyze-btn:hover{background:#5a67d8}@media(max-width:768px){.analysis-grid{grid-template-columns:1fr}.dashboard-header{flex-direction:column;gap:15px;text-align:center}.admin-controls{flex-direction:column;width:100%}.user-id-input{min-width:auto;width:100%}.stats-grid{grid-template-columns:1fr}.level-item,.profile-header,.session-header,.assessment-header{flex-direction:column;align-items:flex-start;gap:8px}}
