html{font-size:16px}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f9fafb;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;line-height:1.5;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}#root{min-height:100vh}.toast-container{bottom:20px;display:flex;flex-direction:column;gap:10px;max-width:400px;position:fixed;right:20px;z-index:10000}.toast{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 4px 20px #00000026;color:#111827;font-size:14px;gap:12px;min-width:280px;padding:14px 16px}.toast,.toast-icon{align-items:center;display:flex}.toast-icon{border-radius:50%;flex-shrink:0;font-size:12px;font-weight:700;height:24px;justify-content:center;width:24px}.toast-message{flex:1 1;line-height:1.4}.toast-action{background:#e5e7eb;border:none;border-radius:4px;color:#374151;cursor:pointer;font-size:13px;font-weight:500;padding:6px 12px;transition:background .2s}.toast-action:hover{background:#d1d5db}.toast-close{background:none;border:none;color:#6b7280;cursor:pointer;font-size:14px;line-height:1;padding:4px;transition:color .2s}.toast-close:hover{color:#111827}.toast-info{background:#eff6ff;border-left:4px solid #2563eb;color:#1e3a8a}.toast-info .toast-icon{background:#2563eb;color:#fff}.toast-info .toast-close{color:#1e40af}.toast-success{background:#ecfdf5;border-left:4px solid #059669;color:#065f46}.toast-success .toast-icon{background:#059669;color:#fff}.toast-success .toast-close{color:#047857}.toast-warning{background:#fffbeb;border-left:4px solid #d97706;color:#78350f}.toast-warning .toast-icon{background:#d97706;color:#fff}.toast-warning .toast-close{color:#92400e}.toast-error{background:#fef2f2;border-left:4px solid #dc2626;color:#7f1d1d}.toast-error .toast-icon{background:#dc2626;color:#fff}.toast-error .toast-close{color:#991b1b}@media (max-width:480px){.toast-container{bottom:10px;left:10px;right:10px}.toast{min-width:auto}}[data-theme=dark] .toast{background:#252540;border-color:#374151;box-shadow:0 4px 20px #0006;color:#f3f4f6}[data-theme=dark] .toast-action{background:#374151;color:#d1d5db}[data-theme=dark] .toast-action:hover{background:#4b5563}[data-theme=dark] .toast-close{color:#9ca3af}[data-theme=dark] .toast-close:hover{color:#f3f4f6}[data-theme=dark] .toast-info{background:#1e3a5f;color:#93c5fd}[data-theme=dark] .toast-info .toast-close{color:#60a5fa}[data-theme=dark] .toast-success{background:#064e3b;color:#6ee7b7}[data-theme=dark] .toast-success .toast-close{color:#34d399}[data-theme=dark] .toast-warning{background:#78350f;color:#fcd34d}[data-theme=dark] .toast-warning .toast-close{color:#fbbf24}[data-theme=dark] .toast-error{background:#7f1d1d;color:#fca5a5}[data-theme=dark] .toast-error .toast-close{color:#f87171}.offline-status-dot{align-items:center;border-radius:50%;bottom:20px;box-shadow:0 2px 10px #0003;cursor:pointer;display:flex;height:40px;justify-content:center;position:fixed;right:20px;transition:all .3s ease;width:40px;z-index:1000}.offline-status-dot.online{background:linear-gradient(135deg,#10b981,#059669)}.offline-status-dot.offline{animation:pulse 2s infinite;background:linear-gradient(135deg,#ef4444,#dc2626)}.offline-status-dot.syncing{background:linear-gradient(135deg,#3b82f6,#2563eb)}.offline-status-dot:hover{transform:scale(1.1)}.sync-spinner{animation:spin 1s linear infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:20px;width:20px}.offline-icon{font-size:18px}.pending-badge{align-items:center;background:#fbbf24;border-radius:9px;color:#000;display:flex;font-size:10px;font-weight:700;height:18px;justify-content:center;min-width:18px;padding:0 4px;position:absolute;right:-5px;top:-5px}.offline-details-popup{animation:slideUp .2s ease;background:#1e293b;border-radius:12px;bottom:70px;box-shadow:0 10px 40px #0000004d;overflow:hidden;position:fixed;right:20px;width:280px;z-index:1001}.offline-details-header{align-items:center;background:#0f172a;border-bottom:1px solid #334155;display:flex;justify-content:space-between;padding:12px 16px}.status-indicator{font-size:14px;font-weight:600}.status-indicator.online{color:#10b981}.status-indicator.offline{color:#ef4444}.close-btn{background:none;color:#94a3b8;font-size:20px;line-height:1;padding:0}.close-btn:hover{color:#fff}.offline-details-body{padding:16px}.detail-row{border-bottom:1px solid #334155;color:#94a3b8;display:flex;font-size:14px;justify-content:space-between;padding:8px 0}.detail-row:last-of-type{border-bottom:none}.detail-row span:last-child{color:#fff;font-weight:500}.sync-button{background:linear-gradient(135deg,#3b82f6,#2563eb);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;margin-top:12px;padding:10px;transition:opacity .2s;width:100%}.sync-button:hover{opacity:.9}.sync-button:disabled{cursor:not-allowed;opacity:.5}.offline-message{background:#1e3a5f;border-radius:8px;color:#93c5fd;font-size:13px;line-height:1.4;margin-top:12px;padding:12px}.offline-banner{align-items:center;animation:slideDown .3s ease;display:flex;font-size:14px;font-weight:500;gap:10px;justify-content:center;left:0;padding:12px 20px;position:fixed;right:0;top:0;z-index:1002}.offline-banner.offline{background:linear-gradient(135deg,#dc2626,#b91c1c);color:#fff}.offline-banner.online{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.banner-icon{font-size:16px}.banner-icon.spinning{animation:spin 1s linear infinite}.offline-banner button{background:#fff3;border:1px solid #ffffff4d;border-radius:6px;color:#fff;cursor:pointer;font-size:13px;font-weight:600;padding:6px 12px;transition:background .2s}.offline-banner button:hover{background:#ffffff4d}@media (max-width:480px){.offline-status-dot{bottom:80px;height:36px;width:36px}.offline-details-popup{bottom:130px;left:10px;right:10px;width:auto}.offline-banner{font-size:13px;padding:10px 15px}}.install-prompt-overlay{animation:slideUp .3s ease-out;bottom:1.5rem;position:fixed;right:1.5rem;z-index:9999}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.install-prompt{background:#fff;border-radius:16px;box-shadow:0 10px 40px #0003;max-width:320px;padding:1.5rem;position:relative}.install-prompt .close-btn{background:none;border:none;color:#9ca3af;cursor:pointer;font-size:1.5rem;line-height:1;padding:.25rem;position:absolute;right:.75rem;top:.75rem}.install-prompt .close-btn:hover{color:#374151}.install-icon{color:#8b5cf6;display:flex;justify-content:center;margin-bottom:1rem}.install-prompt h3{color:#1f2937;font-size:1.25rem;font-weight:600;margin:0 0 .5rem;text-align:center}.install-description{color:#6b7280;font-size:.9rem;margin-bottom:1rem;text-align:center}.install-benefits{list-style:none;margin:0 0 1.5rem;padding:0}.install-benefits li{align-items:center;color:#374151;display:flex;font-size:.9rem;gap:.5rem;padding:.35rem 0}.install-benefits li:before{color:#10b981;content:"✓";font-weight:700}.install-actions{display:flex;flex-direction:column;gap:.75rem}.install-btn{border-radius:10px;cursor:pointer;font-size:1rem;font-weight:500;padding:.75rem 1rem;transition:all .2s ease}.install-btn.primary{background:linear-gradient(135deg,#8b5cf6,#6366f1);border:none;color:#fff}.install-btn.primary:hover{box-shadow:0 4px 12px #8b5cf666;transform:translateY(-1px)}.install-btn.secondary{background:#0000;border:1px solid #e5e7eb;color:#6b7280}.install-btn.secondary:hover{background:#f9fafb;border-color:#d1d5db}.ios-prompt .ios-instructions{background:#f3f4f6;border-radius:12px;margin-bottom:1rem;padding:1rem}.ios-step{align-items:center;color:#374151;display:flex;font-size:.9rem;gap:.75rem;padding:.5rem 0}.ios-step:not(:last-child){border-bottom:1px solid #e5e7eb}.ios-step .step-number{align-items:center;background:#8b5cf6;border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:.75rem;font-weight:600;height:24px;justify-content:center;width:24px}.ios-step .share-icon{color:#3b82f6;flex-shrink:0}.ios-prompt .install-btn.secondary{background:#8b5cf6;border:none;color:#fff;width:100%}.ios-prompt .install-btn.secondary:hover{background:#7c3aed}.install-icon img{border-radius:12px;box-shadow:0 2px 8px #0000001a}@media (max-width:640px){.install-prompt-overlay{bottom:0;left:0;padding:1rem;right:0}.install-prompt{border-radius:16px 16px 0 0;max-width:none}}@media (prefers-color-scheme:dark){.install-prompt{background:#1e293b;box-shadow:0 10px 40px #0006}.install-prompt h3{color:#f1f5f9}.install-description{color:#94a3b8}.install-benefits li{color:#e2e8f0}.install-prompt .close-btn{color:#64748b}.install-prompt .close-btn:hover{color:#f1f5f9}.install-btn.secondary{border-color:#475569;color:#94a3b8}.install-btn.secondary:hover{background:#334155;border-color:#64748b}.ios-prompt .ios-instructions{background:#334155}.ios-step{color:#e2e8f0}.ios-step:not(:last-child){border-bottom-color:#475569}}.maintenance-banner{align-items:center;display:flex;font-size:.875rem;font-weight:500;justify-content:space-between;padding:.75rem 1rem;position:-webkit-sticky;position:sticky;top:0;z-index:1100}.maintenance-banner-content{align-items:center;display:flex;flex:1 1;gap:.75rem;justify-content:center}.maintenance-banner-icon{align-items:center;border-radius:50%;display:inline-flex;font-size:.75rem;font-weight:700;height:1.5rem;justify-content:center;width:1.5rem}.maintenance-banner-message{max-width:800px;text-align:center}.maintenance-banner-dismiss{background:#0000;border:none;cursor:pointer;font-size:1.25rem;margin-left:1rem;opacity:.7;padding:.25rem .5rem;transition:opacity .2s}.maintenance-banner-dismiss:hover{opacity:1}.maintenance-banner-info{background:linear-gradient(135deg,#e0f2fe,#bae6fd);border-bottom:1px solid #7dd3fc;color:#0c4a6e}.maintenance-banner-info .maintenance-banner-icon{background:#0ea5e9;color:#fff}.maintenance-banner-info .maintenance-banner-dismiss{color:#0c4a6e}.maintenance-banner-warning{background:linear-gradient(135deg,#fef3c7,#fde68a);border-bottom:1px solid #fbbf24;color:#78350f}.maintenance-banner-warning .maintenance-banner-icon{background:#f59e0b;color:#fff}.maintenance-banner-warning .maintenance-banner-dismiss{color:#78350f}.maintenance-banner-success{background:linear-gradient(135deg,#d1fae5,#a7f3d0);border-bottom:1px solid #34d399;color:#065f46}.maintenance-banner-success .maintenance-banner-icon{background:#10b981;color:#fff}.maintenance-banner-success .maintenance-banner-dismiss{color:#065f46}.maintenance-banner-maintenance{background:linear-gradient(135deg,#ede9fe,#ddd6fe);border-bottom:1px solid #a78bfa;color:#4c1d95}.maintenance-banner-maintenance .maintenance-banner-icon{background:#8b5cf6;color:#fff;font-size:1rem}.maintenance-banner-maintenance .maintenance-banner-dismiss{color:#4c1d95}@media (max-width:768px){.maintenance-banner{font-size:.8125rem;padding:.625rem .75rem}.maintenance-banner-content{gap:.5rem}.maintenance-banner-message{text-align:left}}.quiz-interface{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;margin:0 auto;max-width:900px;padding:2rem}.quiz-progress{background:#fff;border-radius:12px;box-shadow:0 2px 4px #0000001a;contain:layout style;isolation:isolate;margin-bottom:2rem;padding:1.5rem;position:relative;z-index:10}.progress-bar{height:12px;margin-bottom:1rem}.progress-fill{background:linear-gradient(135deg,#667eea,#764ba2)}.progress-info{gap:1rem;position:relative;z-index:1}.progress-text{display:block;flex-shrink:0;font-size:1.1rem;position:static}.progress-score{color:#374151;flex-shrink:0;font-size:1rem}.offline-badge{animation:pulse-offline 2s infinite;background:linear-gradient(135deg,#f59e0b,#d97706);border-radius:20px;color:#fff;display:inline-block;font-size:.85rem;font-weight:600;margin-top:.75rem;padding:.35rem .75rem}@keyframes pulse-offline{0%,to{opacity:1}50%{opacity:.7}}.question-card{background:#fff;border-radius:12px;box-shadow:0 4px 6px #0000001a;contain:layout style;isolation:isolate;padding:2rem;position:relative;z-index:1}.question-header{align-items:center;border-bottom:2px solid #e5e7eb;display:flex;justify-content:space-between;margin-bottom:1.5rem;padding-bottom:1rem}.question-difficulty{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:20px;color:#fff;font-size:.9rem;font-weight:500;padding:.5rem 1rem}.question-number{color:#374151;font-size:1rem}.question-text{font-size:1.5rem;line-height:1.6;margin-bottom:2rem}.question-text .math-renderer{display:inline}.question-text .katex{font-size:1.1em}.question-text .katex-display{margin:.5rem 0}.answers-grid{grid-gap:1rem;display:grid;gap:1rem;margin-bottom:2rem}.answer-button{align-items:center;background:#f9fafb;border:2px solid #e5e7eb;border-radius:8px;cursor:pointer;display:flex;font-size:1rem;gap:1rem;overflow:visible;padding:1.25rem;position:relative;text-align:left;transition:all .2s}.answer-button:hover:not(:disabled){background:#f3f4f6;border-color:#667eea;transform:translateY(-2px)}.answer-button.selected{background:#667eea1a;border-color:#667eea}.answer-button.correct{background:#10b9811a;border-color:#10b981}.answer-button.incorrect{background:#ef44441a;border-color:#ef4444}.answer-button:disabled{cursor:not-allowed}.answer-letter{background:#fff;border:2px solid #e5e7eb;border-radius:50%;color:#374151;font-weight:600}.answer-button.selected .answer-letter{background:#667eea;border-color:#667eea;color:#fff}.answer-button.correct .answer-letter{background:#10b981;border-color:#10b981;color:#fff}.answer-button.incorrect .answer-letter{background:#ef4444;border-color:#ef4444;color:#fff}.answer-text{flex:1 1}.answer-text .math-renderer{display:inline}.answer-text .math-renderer .katex{display:inline;font-size:1em}.answer-text .math-renderer .katex-display{display:inline;margin:0}.answer-text .math-renderer .katex-display>.katex{display:inline}.answer-icon{font-size:1.5rem;font-weight:700}.answer-button.correct .answer-icon{color:#10b981}.answer-button.incorrect .answer-icon{color:#ef4444}.next-button,.submit-button{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:600;padding:1rem 2rem;transition:transform .2s;width:100%}.next-button:hover,.submit-button:hover:not(:disabled){transform:scale(1.02)}.submit-button:disabled{cursor:not-allowed;opacity:.5;transform:none}.next-button{margin-top:1rem}.result-feedback{align-items:center;border-radius:8px;display:flex;gap:1.5rem;margin-bottom:1.5rem;padding:1.5rem}.result-feedback.correct{background:#10b9811a;border:2px solid #10b981}.result-feedback.incorrect{background:#ef44441a;border:2px solid #ef4444}.result-icon{flex-shrink:0;font-size:3rem}.result-feedback.correct .result-icon{color:#10b981}.result-feedback.incorrect .result-icon{color:#ef4444}.result-text h3{color:#1f2937;margin:0 0 .5rem}.result-text p{color:#374151;margin:0}.xp-gain{animation:xpPop .4s ease-out;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:20px;box-shadow:0 2px 8px #667eea66;color:#fff;font-size:1.1rem;font-weight:700;margin-left:auto;padding:8px 16px}@keyframes xpPop{0%{opacity:0;transform:scale(.5)}50%{transform:scale(1.2)}to{opacity:1;transform:scale(1)}}.explanation-box{background:linear-gradient(135deg,#fef3c7,#fde68a);border:2px solid #f59e0b;margin-bottom:1.5rem;padding:1.5rem}.explanation-header{align-items:center;display:flex;gap:.75rem;margin-bottom:.75rem}.explanation-icon{font-size:1.5rem}.explanation-header h4{color:#92400e;font-size:1.1rem;font-weight:600;margin:0}.explanation-text{color:#78350f;font-size:1rem;line-height:1.6;margin:0}.pedagogical-feedback{background:#f9fafb;border:2px solid #e5e7eb;border-radius:8px;margin-bottom:1.5rem;padding:1.5rem}.pedagogical-feedback h4{color:#1f2937;font-size:1.1rem;margin:0 0 1rem}.feedback-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.feedback-item{display:flex;flex-direction:column;gap:.25rem}.feedback-label{color:#374151;font-size:.9rem}.feedback-value{color:#667eea;font-size:1.1rem;font-weight:600}.skill-feedback{background:linear-gradient(135deg,#f0fdf4,#ecfeff);border:2px solid #10b981;border-radius:8px;margin-bottom:1.5rem;padding:1.25rem}.skill-feedback h4{color:#064e3b;font-size:1rem;margin:0 0 .75rem}.skills-affected-list{display:flex;flex-wrap:wrap;gap:.5rem}.skill-affected-item{align-items:center;background:#fff;border-radius:9999px;box-shadow:0 1px 2px #0000000d;display:inline-flex;font-size:.875rem;gap:.5rem;padding:.375rem .75rem}.skill-affected-item .skill-name{color:#374151;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.skill-affected-item .skill-mastery{font-size:.8rem;font-weight:600}.skill-affected-item.more-skills{background:#f3f4f6;color:#374151;cursor:default;font-style:italic}.quiz-interface.complete{align-items:center;display:flex;justify-content:center;min-height:600px}.completion-card{background:#fff;border-radius:12px;box-shadow:0 4px 6px #0000001a;max-width:600px;padding:3rem;text-align:center}.completion-card h2{color:#1f2937;font-size:2.5rem;margin-bottom:2rem}.score-display{margin-bottom:2rem}.score-circle,.score-display{align-items:center;display:flex;flex-direction:column}.score-circle{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;color:#fff;height:150px;justify-content:center;margin-bottom:1rem;width:150px}.score-number{font-size:3rem;font-weight:700}.score-total{font-size:1.5rem}.score-percentage{color:#667eea;font-size:2rem;font-weight:600}.completion-stats{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(2,1fr);margin-bottom:2rem}.stat-item{background:#f9fafb;border-radius:8px;gap:.5rem;padding:1rem}.stat-value{font-weight:600}.stat-value.correct{color:#10b981}.stat-value.incorrect{color:#ef4444}.pedagogical-summary{background:#667eea1a;border:2px solid #667eea;border-radius:8px;margin-bottom:2rem;padding:1.5rem;text-align:left}.pedagogical-summary h3{color:#1f2937;margin:0 0 1rem}.pedagogical-summary ul{color:#374151;margin:0;padding-left:1.5rem}.pedagogical-summary li{margin:.5rem 0}.completion-actions{gap:1rem}.btn-primary,.btn-secondary{padding:1rem 2rem}.btn-primary:hover,.btn-secondary:hover{transform:scale(1.02)}.quiz-interface.empty,.quiz-interface.error,.quiz-interface.loading{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:400px}.quiz-interface.empty h2,.quiz-interface.error h2{color:#1f2937;margin-bottom:1rem}.quiz-interface.error button{background:#667eea;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:1rem;padding:.75rem 1.5rem}@media (max-width:768px){.quiz-interface{padding:1rem}.question-card{padding:1.5rem}.question-text{font-size:1.25rem}.answer-button{padding:1rem}.completion-stats{grid-template-columns:1fr}.completion-actions{width:100%}}[data-theme=dark] .quiz-interface{background:#0000}[data-theme=dark] .quiz-progress{background:#252540;box-shadow:0 2px 4px #0000004d}[data-theme=dark] .progress-bar{background:#3d3d5c}[data-theme=dark] .progress-text{color:#e0e0e0}[data-theme=dark] .progress-score{color:#b0b0b0}[data-theme=dark] .question-card{background:#252540;box-shadow:0 4px 6px #0000004d}[data-theme=dark] .question-header{border-bottom-color:#3d3d5c}[data-theme=dark] .question-number{color:#b0b0b0}[data-theme=dark] .question-text{color:#e0e0e0}[data-theme=dark] .answer-button{background:#2d2d4a;border-color:#3d3d5c}[data-theme=dark] .answer-button:hover:not(:disabled){background:#353555;border-color:#818cf8}[data-theme=dark] .answer-button.selected{background:#818cf826;border-color:#818cf8}[data-theme=dark] .answer-button.correct{background:#22c55e26;border-color:#22c55e}[data-theme=dark] .answer-button.incorrect{background:#ef444426;border-color:#ef4444}[data-theme=dark] .answer-letter{background:#353555;border-color:#3d3d5c;color:#e0e0e0}[data-theme=dark] .answer-button.selected .answer-letter{background:#818cf8;border-color:#818cf8}[data-theme=dark] .answer-text{color:#e0e0e0}[data-theme=dark] .result-feedback.correct{background:#22c55e1a;border-color:#22c55e}[data-theme=dark] .result-feedback.incorrect{background:#ef44441a;border-color:#ef4444}[data-theme=dark] .result-text h3{color:#e0e0e0}[data-theme=dark] .result-text p{color:#b0b0b0}[data-theme=dark] .explanation-box{background:#f59e0b1a;border:2px solid #f59e0b;border-left-width:4px}[data-theme=dark] .explanation-header h4{color:#fcd34d}[data-theme=dark] .explanation-text{color:#fde68a}[data-theme=dark] .pedagogical-feedback{background:#2d2d4a;border-color:#3d3d5c}[data-theme=dark] .pedagogical-feedback h4{color:#e0e0e0}[data-theme=dark] .feedback-label{color:#9ca3af}[data-theme=dark] .feedback-value{color:#a5b4fc}[data-theme=dark] .skill-feedback{background:#10b9811a;border-color:#22c55e}[data-theme=dark] .skill-feedback h4{color:#6ee7b7}[data-theme=dark] .skill-affected-item{background:#2d2d4a}[data-theme=dark] .skill-affected-item .skill-name{color:#e0e0e0}[data-theme=dark] .skill-affected-item.more-skills{background:#353555;color:#9ca3af}[data-theme=dark] .completion-card{background:#252540;box-shadow:0 4px 6px #0000004d}[data-theme=dark] .completion-card h2{color:#e0e0e0}[data-theme=dark] .score-percentage{color:#a5b4fc}[data-theme=dark] .stat-item{background:#2d2d4a}[data-theme=dark] .stat-value{color:#e0e0e0}[data-theme=dark] .stat-value.correct{color:#4ade80}[data-theme=dark] .stat-value.incorrect{color:#f87171}[data-theme=dark] .pedagogical-summary{background:#818cf81a;border-color:#818cf8}[data-theme=dark] .pedagogical-summary h3{color:#e0e0e0}[data-theme=dark] .pedagogical-summary ul{color:#b0b0b0}[data-theme=dark] .btn-secondary{background:#2d2d4a;border-color:#3d3d5c;color:#e0e0e0}[data-theme=dark] .btn-secondary:hover{background:#353555}[data-theme=dark] .loading-spinner{border-color:#a78bfa #3d3d5c #3d3d5c}[data-theme=dark] .quiz-interface.empty h2,[data-theme=dark] .quiz-interface.error h2{color:#e0e0e0}[data-theme=dark] .quiz-interface.error button{background:#6366f1}.xp-display{background:linear-gradient(135deg,#1a1a2e,#16213e);border-radius:16px;box-shadow:0 4px 20px #0003;color:#fff;padding:1.25rem}.xp-header{gap:1rem;margin-bottom:1rem}.level-badge,.xp-header{align-items:center;display:flex}.level-badge{background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:12px;box-shadow:0 4px 15px #6366f166;height:48px;justify-content:center;width:48px}.level-number{color:#fff;font-size:1.5rem;font-weight:800}.xp-info{display:flex;flex-direction:column;gap:.25rem}.level-title{color:#e0e7ff;font-size:1rem;font-weight:600}.xp-text{color:#a5b4fc;font-size:.85rem}.xp-progress-container{background:#ffffff1a;border-radius:10px;height:10px;overflow:hidden;position:relative}.xp-progress-bar{background:linear-gradient(90deg,#6366f1,#8b5cf6,#a855f7);border-radius:10px;height:100%;position:relative}.xp-progress-glow{animation:shimmer 2s infinite;background:linear-gradient(90deg,#0000 80%,#fff6);border-radius:10px;height:100%;left:0;position:absolute;top:0}.xp-gain-popup{align-items:center;background:linear-gradient(135deg,#10b981,#059669);border-radius:30px;box-shadow:0 8px 30px #10b98166;color:#fff;display:flex;font-weight:700;gap:.5rem;left:50%;padding:.75rem 1.5rem;position:fixed;top:20%;transform:translateX(-50%);z-index:1000}.xp-gain-icon{font-size:1.25rem}.xp-gain-amount{font-size:1.5rem}.xp-gain-label{font-size:1rem;opacity:.9}.level-up-overlay{align-items:center;background:#000c;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:2000}.level-up-modal{background:linear-gradient(135deg,#1a1a2e,#16213e);border:2px solid #6366f14d;border-radius:24px;box-shadow:0 20px 60px #00000080;max-width:400px;padding:3rem;text-align:center;width:90%}.level-up-stars{display:flex;gap:.5rem;justify-content:center;margin-bottom:1rem}.level-up-stars .star{color:#fbbf24;font-size:2rem;text-shadow:0 0 20px #fbbf2499}.level-up-title{-webkit-text-fill-color:#0000;background:linear-gradient(90deg,#6366f1,#a855f7);-webkit-background-clip:text;background-clip:text;color:#fff;font-size:2rem;font-weight:800;margin:0 0 1.5rem}.level-up-number{align-items:center;background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:50%;box-shadow:0 10px 40px #6366f180;color:#fff;display:flex;font-size:3rem;font-weight:800;height:100px;justify-content:center;margin:0 auto 1.5rem;width:100px}.level-up-message{color:#a5b4fc;font-size:1rem;margin:0 0 2rem}.level-up-btn{background:linear-gradient(135deg,#6366f1,#8b5cf6);border:none;border-radius:12px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:1rem 2rem;transition:transform .2s,box-shadow .2s}.level-up-btn:hover{box-shadow:0 8px 25px #6366f166;transform:scale(1.05)}@media (max-width:768px){.xp-display{padding:1rem}.level-badge{height:40px;width:40px}.level-number{font-size:1.25rem}.level-up-modal{padding:2rem}.level-up-number{font-size:2.5rem;height:80px;width:80px}}.achievements-container{background:linear-gradient(135deg,#1a1a2e,#16213e);border-radius:16px;color:#fff;padding:1.5rem}.achievements-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.5rem}.achievements-header h2{font-size:1.25rem;font-weight:700;margin:0}.achievement-count{background:#6366f133;border-radius:20px;color:#a5b4fc;font-size:.9rem;padding:.5rem 1rem}.achievement-category{margin-bottom:1.5rem}.achievement-category:last-child{margin-bottom:0}.category-title{color:#6b7280;font-size:.9rem;letter-spacing:.05em;margin:0 0 .75rem;text-transform:uppercase}.achievement-grid{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.achievement-card{align-items:center;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:12px;cursor:pointer;display:flex;gap:.75rem;overflow:hidden;padding:.75rem;position:relative;transition:all .2s}.achievement-card.unlocked{background:linear-gradient(135deg,#6366f126,#8b5cf626);border-color:#6366f14d}.achievement-card.locked{opacity:.5}.achievement-card:hover{border-color:#6366f180}.achievement-icon{align-items:center;background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:10px;color:#fff;display:flex;flex-shrink:0;font-size:1.25rem;height:40px;justify-content:center;width:40px}.achievement-card.locked .achievement-icon{background:linear-gradient(135deg,#4b5563,#374151)}.achievement-info{flex:1 1;min-width:0}.achievement-name{color:#fff;font-size:.9rem;font-weight:600}.achievement-desc,.achievement-name{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.achievement-desc{color:#9ca3af;font-size:.75rem}.achievement-lock{background:#00000080;border-radius:50%;color:#9ca3af;font-size:.75rem;height:20px;position:absolute;right:.5rem;top:.5rem;width:20px}.achievement-lock,.achievement-unlock-overlay{align-items:center;display:flex;justify-content:center}.achievement-unlock-overlay{background:#000000e6;bottom:0;left:0;position:fixed;right:0;top:0;z-index:2000}.achievement-unlock-modal{background:linear-gradient(135deg,#1a1a2e,#16213e);border:2px solid #6366f14d;border-radius:24px;box-shadow:0 20px 60px #00000080;max-width:400px;padding:3rem;position:relative;text-align:center;width:90%}.unlock-sparkles{left:50%;pointer-events:none;position:absolute;top:50%;transform:translate(-50%,-50%)}.sparkle{color:#fbbf24;font-size:1.5rem;position:absolute;text-shadow:0 0 10px #fbbf2499}.unlock-badge{align-items:center;background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:50%;box-shadow:0 10px 40px #6366f180;display:flex;height:100px;justify-content:center;margin:0 auto 1.5rem;width:100px}.unlock-badge .badge-icon{color:#fff;font-size:3rem}.unlock-title{color:#fbbf24;font-size:1.25rem;letter-spacing:.1em;margin:0 0 .5rem;text-transform:uppercase}.unlock-name{color:#fff;font-size:1.75rem;font-weight:800;margin:0 0 .5rem}.unlock-desc{color:#a5b4fc;font-size:1rem;margin:0 0 2rem}.unlock-btn{background:linear-gradient(135deg,#6366f1,#8b5cf6);border:none;border-radius:12px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:1rem 2.5rem;transition:transform .2s,box-shadow .2s}.unlock-btn:hover{box-shadow:0 8px 25px #6366f166;transform:scale(1.05)}.achievement-badge{align-items:center;background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:8px;color:#fff;display:inline-flex;justify-content:center}.achievement-badge.size-small{font-size:.75rem;height:24px;width:24px}.achievement-badge.size-medium{font-size:1rem;height:32px;width:32px}.achievement-badge.size-large{font-size:1.5rem;height:48px;width:48px}.recent-achievements{background:#ffffff0d;border-radius:12px;padding:1rem}.recent-title{color:#6b7280;font-size:.9rem;margin:0 0 .75rem}.recent-list{display:flex;flex-wrap:wrap;gap:.5rem}.recent-badge{align-items:center;background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:8px;cursor:pointer;display:flex;height:36px;justify-content:center;transition:transform .2s;width:36px}.recent-badge:hover{transform:scale(1.1)}.recent-icon{color:#fff;font-size:1rem}.no-achievements{color:#6b7280;font-size:.85rem}@media (max-width:768px){.achievements-container{padding:1rem}.achievement-grid{grid-template-columns:1fr}.achievement-unlock-modal{padding:2rem}.unlock-badge{height:80px;width:80px}.unlock-badge .badge-icon{font-size:2.5rem}}.confirmation-modal-overlay{align-items:center;animation:confirmationFadeIn .2s ease-out;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0009;display:flex;inset:0;justify-content:center;position:fixed;z-index:10000}@keyframes confirmationFadeIn{0%{opacity:0}to{opacity:1}}.confirmation-modal{animation:confirmationSlideIn .3s ease-out;background:#fff;border-radius:16px;border-top:6px solid #667eea;box-shadow:0 20px 60px #0000004d;max-width:400px;padding:32px;text-align:center;width:90%}.confirmation-modal-info{border-top-color:#667eea}.confirmation-modal-warning{border-top-color:#f59e0b}.confirmation-modal-error{animation:confirmationSlideIn .3s ease-out,confirmationShake .5s ease-in-out;border-top-color:#ef4444}.confirmation-modal-success{border-top-color:#10b981}@keyframes confirmationSlideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes confirmationShake{0%,to{transform:translateX(0)}20%{transform:translateX(-5px)}40%{transform:translateX(5px)}60%{transform:translateX(-5px)}80%{transform:translateX(5px)}}.confirmation-modal-icon{align-items:center;border-radius:50%;color:#fff;display:flex;font-size:28px;font-weight:700;height:60px;justify-content:center;margin:0 auto 20px;width:60px}.confirmation-modal-icon-info{background:linear-gradient(135deg,#667eea,#764ba2)}.confirmation-modal-icon-warning{background:linear-gradient(135deg,#f59e0b,#d97706)}.confirmation-modal-icon-error{background:linear-gradient(135deg,#ef4444,#dc2626)}.confirmation-modal-icon-success{background:linear-gradient(135deg,#10b981,#059669)}.confirmation-modal-title{color:#1f2937;font-size:1.5rem;font-weight:600;margin:0 0 12px}.confirmation-modal-desc{color:#6b7280;font-size:1rem;line-height:1.5;margin:0 0 24px}.confirmation-modal-content{margin-bottom:24px}.confirmation-modal-actions{display:flex;gap:12px;justify-content:center}.confirmation-modal-actions.has-cancel{justify-content:stretch}.confirmation-modal-actions.has-cancel .confirmation-modal-btn{flex:1 1}.confirmation-modal-btn{border-radius:8px;cursor:pointer;font-size:1rem;font-weight:600;min-width:120px;padding:14px 28px;transition:transform .2s,box-shadow .2s}.confirmation-modal-btn:hover{transform:translateY(-2px)}.confirmation-modal-btn:active{transform:translateY(0)}.confirmation-modal-btn.primary{border:none;color:#fff}.confirmation-modal-btn-info{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 4px 12px #667eea66}.confirmation-modal-btn-info:hover{box-shadow:0 6px 16px #667eea80}.confirmation-modal-btn-warning{background:linear-gradient(135deg,#f59e0b,#d97706);box-shadow:0 4px 12px #f59e0b66}.confirmation-modal-btn-warning:hover{box-shadow:0 6px 16px #f59e0b80}.confirmation-modal-btn-error{background:linear-gradient(135deg,#ef4444,#dc2626);box-shadow:0 4px 12px #ef444466}.confirmation-modal-btn-error:hover{box-shadow:0 6px 16px #ef444480}.confirmation-modal-btn-success{background:linear-gradient(135deg,#10b981,#059669);box-shadow:0 4px 12px #10b98166}.confirmation-modal-btn-success:hover{box-shadow:0 6px 16px #10b98180}.confirmation-modal-btn.secondary{background:#fff;border:2px solid #e5e7eb;color:#6b7280}.confirmation-modal-btn.secondary:hover{background:#f9fafb;border-color:#d1d5db}.confirmation-modal-hint{color:#9ca3af;font-size:.875rem;margin-top:16px}.confirmation-modal-hint kbd{background:#f3f4f6;border:1px solid #d1d5db;border-radius:4px;box-shadow:0 1px 2px #0000000d;display:inline-block;font-family:Monaco,Menlo,Consolas,monospace;font-size:.75rem;padding:2px 6px}@media (max-width:480px){.confirmation-modal{margin:16px;padding:24px}.confirmation-modal-actions{flex-direction:column}.confirmation-modal-btn{width:100%}}@font-face{font-display:block;font-family:KaTeX_AMS;font-style:normal;font-weight:400;src:url(/static/media/KaTeX_AMS-Regular.73ea273a72f4aca30ca5.woff2) format("woff2"),url(/static/media/KaTeX_AMS-Regular.d562e886c52f12660a41.woff) format("woff"),url(/static/media/KaTeX_AMS-Regular.853be92419a6c3766b9a.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:700;src:url(/static/media/KaTeX_Caligraphic-Bold.a1abf90dfd72792a577a.woff2) format("woff2"),url(/static/media/KaTeX_Caligraphic-Bold.d757c535a2e5902f1325.woff) format("woff"),url(/static/media/KaTeX_Caligraphic-Bold.7489a2fbfb9bfe704420.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:400;src:url(/static/media/KaTeX_Caligraphic-Regular.d6484fce1ef428d5bd94.woff2) format("woff2"),url(/static/media/KaTeX_Caligraphic-Regular.db074fa22cf224af93d7.woff) format("woff"),url(/static/media/KaTeX_Caligraphic-Regular.7e873d3833eb108a0758.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:700;src:url(/static/media/KaTeX_Fraktur-Bold.931d67ea207ab37ee693.woff2) format("woff2"),url(/static/media/KaTeX_Fraktur-Bold.354501bac435c3264834.woff) format("woff"),url(/static/media/KaTeX_Fraktur-Bold.4c761b3711973ab04edf.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:400;src:url(/static/media/KaTeX_Fraktur-Regular.172d3529b26f8cedef6b.woff2) format("woff2"),url(/static/media/KaTeX_Fraktur-Regular.6fdf0ac577be0ba82a4c.woff) format("woff"),url(/static/media/KaTeX_Fraktur-Regular.ed305b5434865e06ffde.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:700;src:url(/static/media/KaTeX_Main-Bold.39890742bc957b368704.woff2) format("woff2"),url(/static/media/KaTeX_Main-Bold.0c3b8929d377c0e9b2f3.woff) format("woff"),url(/static/media/KaTeX_Main-Bold.8169508bf58f8bd92ad8.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:700;src:url(/static/media/KaTeX_Main-BoldItalic.20f389c4120be058d80a.woff2) format("woff2"),url(/static/media/KaTeX_Main-BoldItalic.428978dc7837d46de091.woff) format("woff"),url(/static/media/KaTeX_Main-BoldItalic.828abcb200061cffbaae.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:400;src:url(/static/media/KaTeX_Main-Italic.fe2176f79edaa716e621.woff2) format("woff2"),url(/static/media/KaTeX_Main-Italic.fd947498bc16392e76c2.woff) format("woff"),url(/static/media/KaTeX_Main-Italic.fa675e5e4bec9eb250b6.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:400;src:url(/static/media/KaTeX_Main-Regular.f650f111a3b890d116f1.woff2) format("woff2"),url(/static/media/KaTeX_Main-Regular.4f35fbcc9ee8614c2bcc.woff) format("woff"),url(/static/media/KaTeX_Main-Regular.9eba1d77abcf2aa6e94e.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:700;src:url(/static/media/KaTeX_Math-BoldItalic.dcbcbd93bac0470b462d.woff2) format("woff2"),url(/static/media/KaTeX_Math-BoldItalic.3f07ed67f06c720120ce.woff) format("woff"),url(/static/media/KaTeX_Math-BoldItalic.bf2d440b3a42ea78a998.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:400;src:url(/static/media/KaTeX_Math-Italic.6d3d25f4820d0da8f01f.woff2) format("woff2"),url(/static/media/KaTeX_Math-Italic.96759856b4e70f3a8338.woff) format("woff"),url(/static/media/KaTeX_Math-Italic.8a5f936332e8028c7278.ttf) format("truetype")}@font-face{font-display:block;font-family:"KaTeX_SansSerif";font-style:normal;font-weight:700;src:url(/static/media/KaTeX_SansSerif-Bold.95591a929f0d32aa282a.woff2) format("woff2"),url(/static/media/KaTeX_SansSerif-Bold.b9cd458ac6d5889ff9c3.woff) format("woff"),url(/static/media/KaTeX_SansSerif-Bold.5b49f4993ae22d7975b4.ttf) format("truetype")}@font-face{font-display:block;font-family:"KaTeX_SansSerif";font-style:italic;font-weight:400;src:url(/static/media/KaTeX_SansSerif-Italic.7d393d382f3e7fb1c637.woff2) format("woff2"),url(/static/media/KaTeX_SansSerif-Italic.8d593cfaa96238d5e2f8.woff) format("woff"),url(/static/media/KaTeX_SansSerif-Italic.b257a18c016f37ee4543.ttf) format("truetype")}@font-face{font-display:block;font-family:"KaTeX_SansSerif";font-style:normal;font-weight:400;src:url(/static/media/KaTeX_SansSerif-Regular.cd5e231e0cc53b2cb2c0.woff2) format("woff2"),url(/static/media/KaTeX_SansSerif-Regular.02271ec5cb9f5b4588ac.woff) format("woff"),url(/static/media/KaTeX_SansSerif-Regular.2f7bc363fc5424ebda59.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Script;font-style:normal;font-weight:400;src:url(/static/media/KaTeX_Script-Regular.c81d1b2a4b75d3eded60.woff2) format("woff2"),url(/static/media/KaTeX_Script-Regular.073b3402d036714b4370.woff) format("woff"),url(/static/media/KaTeX_Script-Regular.fc9ba5249878cd8f8d88.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size1;font-style:normal;font-weight:400;src:url(/static/media/KaTeX_Size1-Regular.6eec866c69313624be60.woff2) format("woff2"),url(/static/media/KaTeX_Size1-Regular.0108e89c9003e8c14ea3.woff) format("woff"),url(/static/media/KaTeX_Size1-Regular.6de7d4b539221a49e9e2.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size2;font-style:normal;font-weight:400;src:url(/static/media/KaTeX_Size2-Regular.2960900c4f271311eb36.woff2) format("woff2"),url(/static/media/KaTeX_Size2-Regular.3a99e70aee4076660d38.woff) format("woff"),url(/static/media/KaTeX_Size2-Regular.57f5c1837853986ea1db.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size3;font-style:normal;font-weight:400;src:url(/static/media/KaTeX_Size3-Regular.e1951519f6f0596f7356.woff2) format("woff2"),url(/static/media/KaTeX_Size3-Regular.7947224e8a9914fa332b.woff) format("woff"),url(/static/media/KaTeX_Size3-Regular.8d6b6822586eea3d3b20.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size4;font-style:normal;font-weight:400;src:url(/static/media/KaTeX_Size4-Regular.e418bf257af1052628d8.woff2) format("woff2"),url(/static/media/KaTeX_Size4-Regular.aeffd8025cba3647f1a6.woff) format("woff"),url(/static/media/KaTeX_Size4-Regular.4ad7c7e8bb8d10a34bb7.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Typewriter;font-style:normal;font-weight:400;src:url(/static/media/KaTeX_Typewriter-Regular.c295e7f71970f03c0549.woff2) format("woff2"),url(/static/media/KaTeX_Typewriter-Regular.4c6b94fd1d07f8beff7c.woff) format("woff"),url(/static/media/KaTeX_Typewriter-Regular.c5c02d763c89380dcb4e.ttf) format("truetype")}.katex{font:normal 1.21em KaTeX_Main,Times New Roman,serif;line-height:1.2;text-indent:0;text-rendering:auto}.katex *{-ms-high-contrast-adjust:none!important;border-color:currentColor}.katex .katex-version:after{content:"0.16.27"}.katex .katex-mathml{clip:rect(1px,1px,1px,1px);border:0;height:1px;overflow:hidden;padding:0;position:absolute;width:1px}.katex .katex-html>.newline{display:block}.katex .base{position:relative;white-space:nowrap;width:-webkit-min-content;width:min-content}.katex .base,.katex .strut{display:inline-block}.katex .textbf{font-weight:700}.katex .textit{font-style:italic}.katex .textrm{font-family:KaTeX_Main}.katex .textsf{font-family:KaTeX_SansSerif}.katex .texttt{font-family:KaTeX_Typewriter}.katex .mathnormal{font-family:KaTeX_Math;font-style:italic}.katex .mathit{font-family:KaTeX_Main;font-style:italic}.katex .mathrm{font-style:normal}.katex .mathbf{font-family:KaTeX_Main;font-weight:700}.katex .boldsymbol{font-family:KaTeX_Math;font-style:italic;font-weight:700}.katex .amsrm,.katex .mathbb,.katex .textbb{font-family:KaTeX_AMS}.katex .mathcal{font-family:KaTeX_Caligraphic}.katex .mathfrak,.katex .textfrak{font-family:KaTeX_Fraktur}.katex .mathboldfrak,.katex .textboldfrak{font-family:KaTeX_Fraktur;font-weight:700}.katex .mathtt{font-family:KaTeX_Typewriter}.katex .mathscr,.katex .textscr{font-family:KaTeX_Script}.katex .mathsf,.katex .textsf{font-family:KaTeX_SansSerif}.katex .mathboldsf,.katex .textboldsf{font-family:KaTeX_SansSerif;font-weight:700}.katex .mathitsf,.katex .mathsfit,.katex .textitsf{font-family:KaTeX_SansSerif;font-style:italic}.katex .mainrm{font-family:KaTeX_Main;font-style:normal}.katex .vlist-t{border-collapse:collapse;display:inline-table;table-layout:fixed}.katex .vlist-r{display:table-row}.katex .vlist{display:table-cell;position:relative;vertical-align:bottom}.katex .vlist>span{display:block;height:0;position:relative}.katex .vlist>span>span{display:inline-block}.katex .vlist>span>.pstrut{overflow:hidden;width:0}.katex .vlist-t2{margin-right:-2px}.katex .vlist-s{display:table-cell;font-size:1px;min-width:2px;vertical-align:bottom;width:2px}.katex .vbox{align-items:baseline;display:inline-flex;flex-direction:column}.katex .hbox{width:100%}.katex .hbox,.katex .thinbox{display:inline-flex;flex-direction:row}.katex .thinbox{max-width:0;width:0}.katex .msupsub{text-align:left}.katex .mfrac>span>span{text-align:center}.katex .mfrac .frac-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .hdashline,.katex .hline,.katex .mfrac .frac-line,.katex .overline .overline-line,.katex .rule,.katex .underline .underline-line{min-height:1px}.katex .mspace{display:inline-block}.katex .clap,.katex .llap,.katex .rlap{position:relative;width:0}.katex .clap>.inner,.katex .llap>.inner,.katex .rlap>.inner{position:absolute}.katex .clap>.fix,.katex .llap>.fix,.katex .rlap>.fix{display:inline-block}.katex .llap>.inner{right:0}.katex .clap>.inner,.katex .rlap>.inner{left:0}.katex .clap>.inner>span{margin-left:-50%;margin-right:50%}.katex .rule{border:0 solid;display:inline-block;position:relative}.katex .hline,.katex .overline .overline-line,.katex .underline .underline-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .hdashline{border-bottom-style:dashed;display:inline-block;width:100%}.katex .sqrt>.root{margin-left:.2777777778em;margin-right:-.5555555556em}.katex .fontsize-ensurer.reset-size1.size1,.katex .sizing.reset-size1.size1{font-size:1em}.katex .fontsize-ensurer.reset-size1.size2,.katex .sizing.reset-size1.size2{font-size:1.2em}.katex .fontsize-ensurer.reset-size1.size3,.katex .sizing.reset-size1.size3{font-size:1.4em}.katex .fontsize-ensurer.reset-size1.size4,.katex .sizing.reset-size1.size4{font-size:1.6em}.katex .fontsize-ensurer.reset-size1.size5,.katex .sizing.reset-size1.size5{font-size:1.8em}.katex .fontsize-ensurer.reset-size1.size6,.katex .sizing.reset-size1.size6{font-size:2em}.katex .fontsize-ensurer.reset-size1.size7,.katex .sizing.reset-size1.size7{font-size:2.4em}.katex .fontsize-ensurer.reset-size1.size8,.katex .sizing.reset-size1.size8{font-size:2.88em}.katex .fontsize-ensurer.reset-size1.size9,.katex .sizing.reset-size1.size9{font-size:3.456em}.katex .fontsize-ensurer.reset-size1.size10,.katex .sizing.reset-size1.size10{font-size:4.148em}.katex .fontsize-ensurer.reset-size1.size11,.katex .sizing.reset-size1.size11{font-size:4.976em}.katex .fontsize-ensurer.reset-size2.size1,.katex .sizing.reset-size2.size1{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size2.size2,.katex .sizing.reset-size2.size2{font-size:1em}.katex .fontsize-ensurer.reset-size2.size3,.katex .sizing.reset-size2.size3{font-size:1.1666666667em}.katex .fontsize-ensurer.reset-size2.size4,.katex .sizing.reset-size2.size4{font-size:1.3333333333em}.katex .fontsize-ensurer.reset-size2.size5,.katex .sizing.reset-size2.size5{font-size:1.5em}.katex .fontsize-ensurer.reset-size2.size6,.katex .sizing.reset-size2.size6{font-size:1.6666666667em}.katex .fontsize-ensurer.reset-size2.size7,.katex .sizing.reset-size2.size7{font-size:2em}.katex .fontsize-ensurer.reset-size2.size8,.katex .sizing.reset-size2.size8{font-size:2.4em}.katex .fontsize-ensurer.reset-size2.size9,.katex .sizing.reset-size2.size9{font-size:2.88em}.katex .fontsize-ensurer.reset-size2.size10,.katex .sizing.reset-size2.size10{font-size:3.4566666667em}.katex .fontsize-ensurer.reset-size2.size11,.katex .sizing.reset-size2.size11{font-size:4.1466666667em}.katex .fontsize-ensurer.reset-size3.size1,.katex .sizing.reset-size3.size1{font-size:.7142857143em}.katex .fontsize-ensurer.reset-size3.size2,.katex .sizing.reset-size3.size2{font-size:.8571428571em}.katex .fontsize-ensurer.reset-size3.size3,.katex .sizing.reset-size3.size3{font-size:1em}.katex .fontsize-ensurer.reset-size3.size4,.katex .sizing.reset-size3.size4{font-size:1.1428571429em}.katex .fontsize-ensurer.reset-size3.size5,.katex .sizing.reset-size3.size5{font-size:1.2857142857em}.katex .fontsize-ensurer.reset-size3.size6,.katex .sizing.reset-size3.size6{font-size:1.4285714286em}.katex .fontsize-ensurer.reset-size3.size7,.katex .sizing.reset-size3.size7{font-size:1.7142857143em}.katex .fontsize-ensurer.reset-size3.size8,.katex .sizing.reset-size3.size8{font-size:2.0571428571em}.katex .fontsize-ensurer.reset-size3.size9,.katex .sizing.reset-size3.size9{font-size:2.4685714286em}.katex .fontsize-ensurer.reset-size3.size10,.katex .sizing.reset-size3.size10{font-size:2.9628571429em}.katex .fontsize-ensurer.reset-size3.size11,.katex .sizing.reset-size3.size11{font-size:3.5542857143em}.katex .fontsize-ensurer.reset-size4.size1,.katex .sizing.reset-size4.size1{font-size:.625em}.katex .fontsize-ensurer.reset-size4.size2,.katex .sizing.reset-size4.size2{font-size:.75em}.katex .fontsize-ensurer.reset-size4.size3,.katex .sizing.reset-size4.size3{font-size:.875em}.katex .fontsize-ensurer.reset-size4.size4,.katex .sizing.reset-size4.size4{font-size:1em}.katex .fontsize-ensurer.reset-size4.size5,.katex .sizing.reset-size4.size5{font-size:1.125em}.katex .fontsize-ensurer.reset-size4.size6,.katex .sizing.reset-size4.size6{font-size:1.25em}.katex .fontsize-ensurer.reset-size4.size7,.katex .sizing.reset-size4.size7{font-size:1.5em}.katex .fontsize-ensurer.reset-size4.size8,.katex .sizing.reset-size4.size8{font-size:1.8em}.katex .fontsize-ensurer.reset-size4.size9,.katex .sizing.reset-size4.size9{font-size:2.16em}.katex .fontsize-ensurer.reset-size4.size10,.katex .sizing.reset-size4.size10{font-size:2.5925em}.katex .fontsize-ensurer.reset-size4.size11,.katex .sizing.reset-size4.size11{font-size:3.11em}.katex .fontsize-ensurer.reset-size5.size1,.katex .sizing.reset-size5.size1{font-size:.5555555556em}.katex .fontsize-ensurer.reset-size5.size2,.katex .sizing.reset-size5.size2{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size5.size3,.katex .sizing.reset-size5.size3{font-size:.7777777778em}.katex .fontsize-ensurer.reset-size5.size4,.katex .sizing.reset-size5.size4{font-size:.8888888889em}.katex .fontsize-ensurer.reset-size5.size5,.katex .sizing.reset-size5.size5{font-size:1em}.katex .fontsize-ensurer.reset-size5.size6,.katex .sizing.reset-size5.size6{font-size:1.1111111111em}.katex .fontsize-ensurer.reset-size5.size7,.katex .sizing.reset-size5.size7{font-size:1.3333333333em}.katex .fontsize-ensurer.reset-size5.size8,.katex .sizing.reset-size5.size8{font-size:1.6em}.katex .fontsize-ensurer.reset-size5.size9,.katex .sizing.reset-size5.size9{font-size:1.92em}.katex .fontsize-ensurer.reset-size5.size10,.katex .sizing.reset-size5.size10{font-size:2.3044444444em}.katex .fontsize-ensurer.reset-size5.size11,.katex .sizing.reset-size5.size11{font-size:2.7644444444em}.katex .fontsize-ensurer.reset-size6.size1,.katex .sizing.reset-size6.size1{font-size:.5em}.katex .fontsize-ensurer.reset-size6.size2,.katex .sizing.reset-size6.size2{font-size:.6em}.katex .fontsize-ensurer.reset-size6.size3,.katex .sizing.reset-size6.size3{font-size:.7em}.katex .fontsize-ensurer.reset-size6.size4,.katex .sizing.reset-size6.size4{font-size:.8em}.katex .fontsize-ensurer.reset-size6.size5,.katex .sizing.reset-size6.size5{font-size:.9em}.katex .fontsize-ensurer.reset-size6.size6,.katex .sizing.reset-size6.size6{font-size:1em}.katex .fontsize-ensurer.reset-size6.size7,.katex .sizing.reset-size6.size7{font-size:1.2em}.katex .fontsize-ensurer.reset-size6.size8,.katex .sizing.reset-size6.size8{font-size:1.44em}.katex .fontsize-ensurer.reset-size6.size9,.katex .sizing.reset-size6.size9{font-size:1.728em}.katex .fontsize-ensurer.reset-size6.size10,.katex .sizing.reset-size6.size10{font-size:2.074em}.katex .fontsize-ensurer.reset-size6.size11,.katex .sizing.reset-size6.size11{font-size:2.488em}.katex .fontsize-ensurer.reset-size7.size1,.katex .sizing.reset-size7.size1{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size7.size2,.katex .sizing.reset-size7.size2{font-size:.5em}.katex .fontsize-ensurer.reset-size7.size3,.katex .sizing.reset-size7.size3{font-size:.5833333333em}.katex .fontsize-ensurer.reset-size7.size4,.katex .sizing.reset-size7.size4{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size7.size5,.katex .sizing.reset-size7.size5{font-size:.75em}.katex .fontsize-ensurer.reset-size7.size6,.katex .sizing.reset-size7.size6{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size7.size7,.katex .sizing.reset-size7.size7{font-size:1em}.katex .fontsize-ensurer.reset-size7.size8,.katex .sizing.reset-size7.size8{font-size:1.2em}.katex .fontsize-ensurer.reset-size7.size9,.katex .sizing.reset-size7.size9{font-size:1.44em}.katex .fontsize-ensurer.reset-size7.size10,.katex .sizing.reset-size7.size10{font-size:1.7283333333em}.katex .fontsize-ensurer.reset-size7.size11,.katex .sizing.reset-size7.size11{font-size:2.0733333333em}.katex .fontsize-ensurer.reset-size8.size1,.katex .sizing.reset-size8.size1{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size8.size2,.katex .sizing.reset-size8.size2{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size8.size3,.katex .sizing.reset-size8.size3{font-size:.4861111111em}.katex .fontsize-ensurer.reset-size8.size4,.katex .sizing.reset-size8.size4{font-size:.5555555556em}.katex .fontsize-ensurer.reset-size8.size5,.katex .sizing.reset-size8.size5{font-size:.625em}.katex .fontsize-ensurer.reset-size8.size6,.katex .sizing.reset-size8.size6{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size8.size7,.katex .sizing.reset-size8.size7{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size8.size8,.katex .sizing.reset-size8.size8{font-size:1em}.katex .fontsize-ensurer.reset-size8.size9,.katex .sizing.reset-size8.size9{font-size:1.2em}.katex .fontsize-ensurer.reset-size8.size10,.katex .sizing.reset-size8.size10{font-size:1.4402777778em}.katex .fontsize-ensurer.reset-size8.size11,.katex .sizing.reset-size8.size11{font-size:1.7277777778em}.katex .fontsize-ensurer.reset-size9.size1,.katex .sizing.reset-size9.size1{font-size:.2893518519em}.katex .fontsize-ensurer.reset-size9.size2,.katex .sizing.reset-size9.size2{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size9.size3,.katex .sizing.reset-size9.size3{font-size:.4050925926em}.katex .fontsize-ensurer.reset-size9.size4,.katex .sizing.reset-size9.size4{font-size:.462962963em}.katex .fontsize-ensurer.reset-size9.size5,.katex .sizing.reset-size9.size5{font-size:.5208333333em}.katex .fontsize-ensurer.reset-size9.size6,.katex .sizing.reset-size9.size6{font-size:.5787037037em}.katex .fontsize-ensurer.reset-size9.size7,.katex .sizing.reset-size9.size7{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size9.size8,.katex .sizing.reset-size9.size8{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size9.size9,.katex .sizing.reset-size9.size9{font-size:1em}.katex .fontsize-ensurer.reset-size9.size10,.katex .sizing.reset-size9.size10{font-size:1.2002314815em}.katex .fontsize-ensurer.reset-size9.size11,.katex .sizing.reset-size9.size11{font-size:1.4398148148em}.katex .fontsize-ensurer.reset-size10.size1,.katex .sizing.reset-size10.size1{font-size:.2410800386em}.katex .fontsize-ensurer.reset-size10.size2,.katex .sizing.reset-size10.size2{font-size:.2892960463em}.katex .fontsize-ensurer.reset-size10.size3,.katex .sizing.reset-size10.size3{font-size:.337512054em}.katex .fontsize-ensurer.reset-size10.size4,.katex .sizing.reset-size10.size4{font-size:.3857280617em}.katex .fontsize-ensurer.reset-size10.size5,.katex .sizing.reset-size10.size5{font-size:.4339440694em}.katex .fontsize-ensurer.reset-size10.size6,.katex .sizing.reset-size10.size6{font-size:.4821600771em}.katex .fontsize-ensurer.reset-size10.size7,.katex .sizing.reset-size10.size7{font-size:.5785920926em}.katex .fontsize-ensurer.reset-size10.size8,.katex .sizing.reset-size10.size8{font-size:.6943105111em}.katex .fontsize-ensurer.reset-size10.size9,.katex .sizing.reset-size10.size9{font-size:.8331726133em}.katex .fontsize-ensurer.reset-size10.size10,.katex .sizing.reset-size10.size10{font-size:1em}.katex .fontsize-ensurer.reset-size10.size11,.katex .sizing.reset-size10.size11{font-size:1.1996142719em}.katex .fontsize-ensurer.reset-size11.size1,.katex .sizing.reset-size11.size1{font-size:.2009646302em}.katex .fontsize-ensurer.reset-size11.size2,.katex .sizing.reset-size11.size2{font-size:.2411575563em}.katex .fontsize-ensurer.reset-size11.size3,.katex .sizing.reset-size11.size3{font-size:.2813504823em}.katex .fontsize-ensurer.reset-size11.size4,.katex .sizing.reset-size11.size4{font-size:.3215434084em}.katex .fontsize-ensurer.reset-size11.size5,.katex .sizing.reset-size11.size5{font-size:.3617363344em}.katex .fontsize-ensurer.reset-size11.size6,.katex .sizing.reset-size11.size6{font-size:.4019292605em}.katex .fontsize-ensurer.reset-size11.size7,.katex .sizing.reset-size11.size7{font-size:.4823151125em}.katex .fontsize-ensurer.reset-size11.size8,.katex .sizing.reset-size11.size8{font-size:.578778135em}.katex .fontsize-ensurer.reset-size11.size9,.katex .sizing.reset-size11.size9{font-size:.6945337621em}.katex .fontsize-ensurer.reset-size11.size10,.katex .sizing.reset-size11.size10{font-size:.8336012862em}.katex .fontsize-ensurer.reset-size11.size11,.katex .sizing.reset-size11.size11{font-size:1em}.katex .delimsizing.size1{font-family:KaTeX_Size1}.katex .delimsizing.size2{font-family:KaTeX_Size2}.katex .delimsizing.size3{font-family:KaTeX_Size3}.katex .delimsizing.size4{font-family:KaTeX_Size4}.katex .delimsizing.mult .delim-size1>span{font-family:KaTeX_Size1}.katex .delimsizing.mult .delim-size4>span{font-family:KaTeX_Size4}.katex .nulldelimiter{display:inline-block;width:.12em}.katex .delimcenter,.katex .op-symbol{position:relative}.katex .op-symbol.small-op{font-family:KaTeX_Size1}.katex .op-symbol.large-op{font-family:KaTeX_Size2}.katex .accent>.vlist-t,.katex .op-limits>.vlist-t{text-align:center}.katex .accent .accent-body{position:relative}.katex .accent .accent-body:not(.accent-full){width:0}.katex .overlay{display:block}.katex .mtable .vertical-separator{display:inline-block;min-width:1px}.katex .mtable .arraycolsep{display:inline-block}.katex .mtable .col-align-c>.vlist-t{text-align:center}.katex .mtable .col-align-l>.vlist-t{text-align:left}.katex .mtable .col-align-r>.vlist-t{text-align:right}.katex .svg-align{text-align:left}.katex svg{fill:currentColor;stroke:currentColor;fill-rule:nonzero;fill-opacity:1;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:block;height:inherit;position:absolute;width:100%}.katex svg path{stroke:none}.katex img{border-style:none;max-height:none;max-width:none;min-height:0;min-width:0}.katex .stretchy{display:block;overflow:hidden;position:relative;width:100%}.katex .stretchy:after,.katex .stretchy:before{content:""}.katex .hide-tail{overflow:hidden;position:relative;width:100%}.katex .halfarrow-left{left:0;overflow:hidden;position:absolute;width:50.2%}.katex .halfarrow-right{overflow:hidden;position:absolute;right:0;width:50.2%}.katex .brace-left{left:0;overflow:hidden;position:absolute;width:25.1%}.katex .brace-center{left:25%;overflow:hidden;position:absolute;width:50%}.katex .brace-right{overflow:hidden;position:absolute;right:0;width:25.1%}.katex .x-arrow-pad{padding:0 .5em}.katex .cd-arrow-pad{padding:0 .55556em 0 .27778em}.katex .mover,.katex .munder,.katex .x-arrow{text-align:center}.katex .boxpad{padding:0 .3em}.katex .fbox,.katex .fcolorbox{border:.04em solid;box-sizing:border-box}.katex .cancel-pad{padding:0 .2em}.katex .cancel-lap{margin-left:-.2em;margin-right:-.2em}.katex .sout{border-bottom-style:solid;border-bottom-width:.08em}.katex .angl{border-right:.049em solid;border-top:.049em solid;box-sizing:border-box;margin-right:.03889em}.katex .anglpad{padding:0 .03889em}.katex .eqn-num:before{content:"(" counter(katexEqnNo) ")";counter-increment:katexEqnNo}.katex .mml-eqn-num:before{content:"(" counter(mmlEqnNo) ")";counter-increment:mmlEqnNo}.katex .mtr-glue{width:50%}.katex .cd-vert-arrow{display:inline-block;position:relative}.katex .cd-label-left{display:inline-block;position:absolute;right:calc(50% + .3em);text-align:left}.katex .cd-label-right{display:inline-block;left:calc(50% + .3em);position:absolute;text-align:right}.katex-display{display:block;margin:1em 0;text-align:center}.katex-display>.katex{display:block;text-align:center;white-space:nowrap}.katex-display>.katex>.katex-html{display:block;position:relative}.katex-display>.katex>.katex-html>.tag{position:absolute;right:0}.katex-display.leqno>.katex>.katex-html>.tag{left:0;right:auto}.katex-display.fleqn>.katex{padding-left:2em;text-align:left}body{counter-reset:katexEqnNo mmlEqnNo}.dnd-question{padding:4px 0}.dnd-instructions{color:#6b7280;font-size:.85rem;margin-bottom:14px}.dnd-list{display:flex;flex-direction:column;gap:8px}.dnd-item{align-items:center;background:#f9fafb;border:2px solid #e5e7eb;border-radius:10px;cursor:default;display:flex;gap:10px;min-height:52px;padding:12px 14px;transition:all .15s ease;-webkit-user-select:none;user-select:none}.dnd-item.dragging{background:#ede9fe;border-color:#6366f1;box-shadow:0 8px 24px #0000001f;z-index:10}.dnd-item.correct{background:#f0fdf4;border-color:#16a34a}.dnd-item.wrong{background:#fef2f2;border-color:#dc2626}.dnd-position{align-items:center;background:#e5e7eb;border-radius:50%;color:#6b7280;display:flex;flex-shrink:0;font-size:.8rem;font-weight:700;height:28px;justify-content:center;width:28px}.dnd-item.correct .dnd-position{background:#dcfce7;color:#16a34a}.dnd-item.wrong .dnd-position{background:#fee2e2;color:#dc2626}.dnd-item-image{border-radius:6px;flex-shrink:0;height:40px;object-fit:cover;width:40px}.dnd-item-content{flex:1 1;font-size:.95rem;line-height:1.4}.dnd-status-icon{color:#16a34a;flex-shrink:0;font-size:1.1rem;font-weight:700;text-align:center;width:20px}.dnd-item.wrong .dnd-status-icon{color:#dc2626}.dnd-drag-handle{border-radius:4px;color:#9ca3af;cursor:grab;flex-shrink:0;font-size:1.3rem;line-height:1;padding:2px 4px;touch-action:none}.dnd-drag-handle:hover{background:#e5e7eb;color:#6b7280}.dnd-drag-handle:active{cursor:grabbing}.dnd-submit-btn{background:#6366f1;border:none;border-radius:10px;color:#fff;cursor:pointer;font-family:inherit;font-size:.95rem;font-weight:600;margin-top:16px;padding:12px;transition:background .15s;width:100%}.dnd-submit-btn:hover{background:#4f46e5}.dnd-explanation{background:#f0f9ff;border-left:3px solid #6366f1;border-radius:0 8px 8px 0;color:#1e293b;font-size:.88rem;margin-top:16px;padding:12px 14px}.dnd-explanation p{margin:0}.match-pair-question{padding:8px 0}.match-pair-instructions{color:#6b7280;color:var(--color-text-secondary,#6b7280);font-size:.85rem;margin-bottom:16px}.match-pair-columns{grid-gap:8px;align-items:start;display:grid;gap:8px;grid-template-columns:1fr 32px 1fr}.match-pair-col{display:flex;flex-direction:column;gap:8px}.match-item{align-items:center;background:#f9fafb;border:2px solid #e5e7eb;border-radius:10px;cursor:pointer;display:flex;font-family:inherit;font-size:.9rem;justify-content:space-between;min-height:52px;padding:12px 14px;text-align:left;transition:all .15s ease;width:100%}.match-item:hover:not(:disabled){background:#f0f0ff;border-color:#6366f1}.match-item.selected{background:#ede9fe;border-color:#6366f1;box-shadow:0 0 0 3px #6366f133}.match-item.connected{background:#f5f3ff;border-color:#8b5cf6}.match-item.highlighted{background:#f8f7ff;border-color:#6366f1;border-style:dashed}.match-item.correct{background:#f0fdf4;border-color:#16a34a;cursor:default}.match-item.wrong{background:#fef2f2;border-color:#dc2626;cursor:default}.match-item:disabled{cursor:not-allowed;opacity:.6}.match-item-text{flex:1 1;line-height:1.4}.match-item-connector{color:#8b5cf6;flex-shrink:0;font-size:1rem;margin-left:8px}.match-item.correct .match-item-connector{color:#16a34a}.match-item.wrong .match-item-connector{color:#dc2626}.match-pair-divider{align-items:center;display:flex;flex-direction:column;gap:8px;padding-top:4px}.match-connector-dot{background:#d1d5db;border-radius:50%;height:8px;margin-top:22px;transition:background .15s;width:8px}.match-connector-dot.active{background:#8b5cf6}.match-pair-progress{align-items:center;color:#6b7280;display:flex;font-size:.85rem;justify-content:space-between;margin-top:16px}.match-reset-btn{background:none;border:1px solid #d1d5db;border-radius:6px;color:#6b7280;cursor:pointer;font-size:.8rem;padding:4px 12px;transition:all .15s}.match-reset-btn:hover{background:#f3f4f6;border-color:#9ca3af}.match-pair-explanation{background:#f0f9ff;border-left:3px solid #6366f1;border-radius:0 8px 8px 0;color:#1e293b;font-size:.88rem;margin-top:16px;padding:12px 14px}.match-pair-explanation p{margin:0}@media (max-width:480px){.match-pair-columns{grid-template-columns:1fr}.match-pair-divider{display:none}.match-pair-col.match-pair-right{border-top:1px solid #e5e7eb;padding-top:8px}}.mr-question{padding:4px 0}.mr-instructions{color:#6b7280;font-size:.85rem;margin-bottom:14px}.mr-options{display:flex;flex-direction:column;gap:8px}.mr-option{align-items:center;background:#f9fafb;border:2px solid #e5e7eb;border-radius:10px;cursor:pointer;display:flex;font-family:inherit;font-size:.9rem;gap:10px;padding:12px 14px;text-align:left;transition:all .15s ease;width:100%}.mr-option:hover:not(:disabled){background:#f0f0ff;border-color:#6366f1}.mr-option.selected{background:#ede9fe;border-color:#6366f1}.mr-option.correct{background:#f0fdf4;border-color:#16a34a;cursor:default}.mr-option.wrong{background:#fef2f2;border-color:#dc2626;cursor:default}.mr-option.missed{background:#f0fdf4;border-color:#16a34a;border-style:dashed;cursor:default}.mr-checkbox{flex-shrink:0;font-size:1.2rem;line-height:1}.mr-option.correct .mr-checkbox{color:#16a34a}.mr-option.wrong .mr-checkbox{color:#dc2626}.mr-option.missed .mr-checkbox{color:#16a34a}.mr-option-text{flex:1 1;line-height:1.4}.mr-badge{border-radius:12px;flex-shrink:0;font-size:.72rem;font-weight:600;padding:2px 8px}.mr-badge.missed{background:#dcfce7;color:#16a34a}.mr-submit-btn{background:#6366f1;border:none;border-radius:10px;color:#fff;cursor:pointer;font-family:inherit;font-size:.95rem;font-weight:600;margin-top:14px;padding:12px;transition:background .15s;width:100%}.mr-submit-btn:hover{background:#4f46e5}.mr-hint{color:#6b7280;font-size:.82rem;margin-top:8px;text-align:center}.mr-explanation{background:#f0f9ff;border-left:3px solid #6366f1;border-radius:0 8px 8px 0;font-size:.88rem;margin-top:16px;padding:12px 14px}.mr-explanation p{margin:0}.fib-question{padding:4px 0}.fib-template{color:#1e293b;font-size:1rem;font-weight:500;line-height:2.2}.fib-inline-wrap{align-items:center;display:inline-flex;gap:4px;position:relative}.fib-input{background:#f8f7ff;border:2px solid #6366f1;border-radius:6px;color:#1e293b;display:inline-block;font-family:inherit;font-size:.95rem;font-weight:600;min-width:80px;outline:none;padding:3px 8px;text-align:center;transition:all .15s}.fib-input:focus{background:#ede9fe;border-color:#4f46e5;box-shadow:0 0 0 3px #6366f133}.fib-input.filled{background:#ede9fe;border-color:#8b5cf6}.fib-input.correct{background:#f0fdf4;border-color:#16a34a;color:#15803d}.fib-input.wrong{background:#fef2f2;border-color:#dc2626;color:#dc2626;text-decoration:line-through}.fib-input:disabled{cursor:default}.fib-correct-label{background:#dcfce7;border-radius:4px;color:#16a34a;font-size:.75rem;font-weight:700;padding:2px 6px;white-space:nowrap}.fib-hints{display:flex;flex-direction:column;gap:4px;margin-top:12px}.fib-hint{color:#6b7280;font-size:.82rem;margin:0}.fib-submit-btn{background:#6366f1;border:none;border-radius:10px;color:#fff;cursor:pointer;display:block;font-family:inherit;font-size:.95rem;font-weight:600;margin-top:16px;padding:12px;transition:background .15s;width:100%}.fib-submit-btn:hover{background:#4f46e5}.fib-result{font-size:.9rem;font-weight:600;margin-top:10px}.fib-result.correct{color:#16a34a}.fib-result.wrong{color:#dc2626}.fib-explanation{background:#f0f9ff;border-left:3px solid #6366f1;border-radius:0 8px 8px 0;font-size:.88rem;margin-top:16px;padding:12px 14px}.fib-explanation p{margin:0}.hotspot-question{padding:4px 0}.hotspot-instructions{color:#6b7280;font-size:.85rem;margin-bottom:12px}.hotspot-image-wrap{border:2px solid #e5e7eb;border-radius:10px;cursor:crosshair;display:inline-block;overflow:hidden;position:relative;width:100%}.hotspot-image{display:block;height:auto;pointer-events:none;-webkit-user-select:none;user-select:none;width:100%}.hotspot-marker{align-items:center;background:#6366f126;border:3px solid #6366f1;border-radius:50%;cursor:pointer;display:flex;justify-content:center;position:absolute;transition:all .2s ease}.hotspot-marker:hover{background:#6366f14d;transform:translate(-50%,-50%) scale(1.1)!important}.hotspot-marker.pulsing{animation:hotspot-pulse 1.5s ease-in-out infinite}@keyframes hotspot-pulse{0%,to{box-shadow:0 0 0 0 #6366f166}50%{box-shadow:0 0 0 8px #6366f100}}.hotspot-marker.selected{animation:none;background:#8b5cf640;border-color:#8b5cf6}.hotspot-marker.correct{animation:none;background:#16a34a33;border-color:#16a34a}.hotspot-marker.wrong{animation:none;background:#dc262633;border-color:#dc2626}.hotspot-label{background:#000000bf;border-radius:4px;bottom:calc(100% + 4px);color:#fff;font-size:.72rem;left:50%;padding:3px 8px;pointer-events:none;position:absolute;transform:translateX(-50%);white-space:nowrap}.hotspot-result{background:#f3f4f6;border-radius:8px;color:#374151;font-size:.88rem;font-weight:500;margin-top:10px;padding:10px 14px}.hotspot-result.correct{background:#f0fdf4;color:#15803d}.hotspot-result.wrong{background:#fef2f2;color:#dc2626}.hotspot-explanation{background:#f0f9ff;border-left:3px solid #6366f1;border-radius:0 8px 8px 0;font-size:.88rem;margin-top:14px;padding:12px 14px}.hotspot-explanation p{margin:0}.slider-question{padding:4px 0}.slider-value-badge{color:#6366f1;font-size:2.4rem;font-weight:800;margin-bottom:20px;text-align:center;transition:color .2s}.slider-value-badge.correct{color:#16a34a}.slider-value-badge.wrong{color:#dc2626}.slider-track-wrap{margin-bottom:8px;position:relative}.slider-input{-webkit-appearance:none;appearance:none;background:linear-gradient(90deg,#6366f1 0,#6366f1 50%,#e5e7eb 0,#e5e7eb);background:linear-gradient(to right,#6366f1 0,#6366f1 var(--pct,50%),#e5e7eb var(--pct,50%),#e5e7eb 100%);border-radius:4px;cursor:pointer;height:8px;outline:none;transition:background .15s;width:100%}.slider-input.correct{background:linear-gradient(90deg,#16a34a 0,#16a34a)}.slider-input.wrong{background:linear-gradient(90deg,#dc2626 0,#dc2626)}.slider-input::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:#6366f1;border-radius:50%;box-shadow:0 2px 6px #00000026;cursor:pointer;height:24px;-webkit-transition:transform .1s;transition:transform .1s;width:24px}.slider-input::-webkit-slider-thumb:hover{transform:scale(1.15)}.slider-input.correct::-webkit-slider-thumb{background:#16a34a}.slider-input.wrong::-webkit-slider-thumb{background:#dc2626}.slider-input:disabled{cursor:default}.slider-input:disabled::-webkit-slider-thumb{cursor:default;transform:none}.slider-correct-marker{background:#16a34a;border-radius:2px;height:16px;position:absolute;top:-4px;transform:translateX(-50%);width:3px}.slider-correct-marker-label{background:#f0fdf4;border-radius:4px;color:#16a34a;font-size:.72rem;font-weight:700;left:50%;padding:2px 6px;position:absolute;top:20px;transform:translateX(-50%);white-space:nowrap}.slider-labels{color:#6b7280;display:flex;font-size:.8rem;justify-content:space-between;margin-top:24px}.slider-labels em{color:#9ca3af;font-style:normal}.slider-result{font-size:.9rem;font-weight:600;margin-top:12px;text-align:center}.slider-result.correct{color:#16a34a}.slider-result.wrong{color:#dc2626}.slider-submit-btn{background:#6366f1;border:none;border-radius:10px;color:#fff;cursor:pointer;display:block;font-family:inherit;font-size:.95rem;font-weight:600;margin-top:16px;padding:12px;transition:background .15s;width:100%}.slider-submit-btn:hover{background:#4f46e5}.slider-explanation{background:#f0f9ff;border-left:3px solid #6366f1;border-radius:0 8px 8px 0;font-size:.88rem;margin-top:14px;padding:12px 14px}.slider-explanation p{margin:0}.video-question{padding:4px 0}.video-instructions{color:#6b7280;font-size:.85rem;margin-bottom:12px}.video-wrapper{background:#000;border-radius:10px;overflow:hidden;position:relative}.video-player{display:block;max-height:360px;object-fit:contain;width:100%}.video-overlay{align-items:center;background:#000000d1;display:flex;inset:0;justify-content:center;padding:20px;position:absolute;z-index:10}.video-overlay-inner{animation:overlay-in .3s ease;max-width:480px;width:100%}@keyframes overlay-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.video-overlay-question{color:#fff;font-size:1rem;font-weight:600;line-height:1.5;margin-bottom:16px;text-align:center}.video-overlay-choices{display:flex;flex-direction:column;gap:8px}.video-overlay-btn{align-items:center;background:#ffffff14;border:2px solid #fff3;border-radius:10px;color:#fff;cursor:pointer;display:flex;font-family:inherit;font-size:.9rem;gap:10px;padding:10px 14px;text-align:left;transition:all .15s;width:100%}.video-overlay-btn:hover{background:#ffffff2e;border-color:#ffffff80}.video-overlay-btn.selected{background:#6366f166;border-color:#6366f1}.video-overlay-btn.correct{background:#16a34a4d;border-color:#16a34a}.video-overlay-btn.wrong{background:#dc26264d;border-color:#dc2626}.video-overlay-letter{align-items:center;background:#ffffff26;border-radius:50%;display:flex;flex-shrink:0;font-size:.8rem;font-weight:700;height:26px;justify-content:center;width:26px}.video-fallback{background:#f9fafb;border:2px solid #e5e7eb;border-radius:10px;padding:16px}.video-fallback-label{color:#6b7280;font-size:.82rem;margin-bottom:12px}.video-overlay-choices.static{margin-top:10px}.video-overlay-choices.static .video-overlay-btn{background:#f9fafb;border-color:#e5e7eb;color:#1e293b}.video-overlay-choices.static .video-overlay-btn:hover:not(:disabled){background:#f0f0ff;border-color:#6366f1}.video-overlay-choices.static .video-overlay-btn.selected{background:#ede9fe;border-color:#6366f1}.video-overlay-choices.static .video-overlay-btn.correct{background:#f0fdf4;border-color:#16a34a}.video-overlay-choices.static .video-overlay-btn.wrong{background:#fef2f2;border-color:#dc2626}.video-overlay-choices.static .video-overlay-letter{background:#e5e7eb;color:#374151}.video-result{border-radius:8px;font-size:.88rem;font-weight:500;margin-top:10px;padding:10px 14px}.video-result.correct{background:#f0fdf4;color:#15803d}.video-result.wrong{background:#fef2f2;color:#dc2626}.video-result.pending{background:#f3f4f6;color:#6b7280}.video-explanation{background:#f0f9ff;border-left:3px solid #6366f1;border-radius:0 8px 8px 0;font-size:.88rem;margin-top:14px;padding:12px 14px}.video-explanation p{margin:0}.mastery-dashboard{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0 auto;max-width:1200px;padding:2rem}.dashboard-header h1{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;font-size:2.5rem}.dashboard-header .subtitle{font-size:1.1rem}.dashboard-summary{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:2rem}.summary-card{align-items:center;border:1px solid #e5e7eb;box-shadow:0 4px 12px #00000014;display:flex;gap:1rem;padding:1.5rem;transition:transform .2s,box-shadow .2s}.summary-card:hover{box-shadow:0 8px 20px #0000001f;transform:translateY(-4px)}.summary-icon{font-size:2.5rem}.summary-content{color:#1f2937}.summary-content h3{color:#111827;font-size:2rem;font-weight:700;margin:0}.summary-content p{color:#6b7280;font-size:.9rem;margin:.25rem 0 0}.srs-stats-panel{background:#fff;border:2px solid #e5e7eb;border-radius:12px;box-shadow:0 2px 4px #0000001a;margin-bottom:2rem;padding:2rem}.srs-stats-panel h2{color:#1f2937;margin-top:0}.srs-stats-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin:1.5rem 0}.srs-stat{background:#f9fafb;border-radius:8px;padding:1rem;text-align:center}.srs-stat strong{color:#667eea;display:block;font-size:2rem;margin-bottom:.25rem}.srs-stat span{color:#6b7280;font-size:.9rem}.maturity-breakdown{margin-top:1.5rem}.maturity-breakdown h3{color:#1f2937;margin-bottom:1rem}.maturity-bars{display:flex;flex-direction:column;gap:.75rem}.maturity-bar{grid-gap:1rem;align-items:center;display:grid;gap:1rem;grid-template-columns:80px 1fr 60px}.bar-label{color:#4b5563;font-size:.9rem;font-weight:500}.bar-container{background:#e5e7eb;border-radius:8px;height:24px;overflow:hidden}.bar-fill{border-radius:8px;height:100%;transition:width .3s ease}.bar-fill.new{background:#ef4444}.bar-fill.learning{background:#f59e0b}.bar-fill.young{background:#3b82f6}.bar-fill.mature{background:#10b981}.bar-value{color:#4b5563;font-size:.9rem;font-weight:500;text-align:right}.nano-skill-preview{background:linear-gradient(135deg,#f0fdf4,#ecfeff);border:2px solid #10b981;border-radius:12px;box-shadow:0 2px 4px #0000000d;margin-bottom:2rem;padding:2rem}.preview-header{margin-bottom:1.5rem}.preview-header h2{color:#064e3b}.view-all-link{color:#10b981;font-weight:500;text-decoration:none;transition:color .2s ease}.view-all-link:hover{color:#059669;text-decoration:underline}.skill-stats-row{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));margin-bottom:1.5rem}.skill-stat{background:#fff;border-radius:8px;box-shadow:0 1px 2px #0000000d;padding:1rem;text-align:center}.skill-stat .stat-value{color:#1f2937;display:block;font-size:1.5rem;font-weight:700}.skill-stat .stat-label{color:#6b7280;font-size:.75rem}.skill-stat.mastered{border-left:3px solid #10b981}.skill-stat.learning{border-left:3px solid #f59e0b}.skill-stat.weak{border-left:3px solid #ef4444}.skill-preview-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:1.5rem}.skill-preview-section{background:#fff;border-radius:8px;padding:1rem}.skill-preview-section h3{color:#374151;font-size:.875rem;font-weight:600;margin:0 0 .75rem}.skill-preview-list{list-style:none;margin:0;padding:0}.skill-preview-item{align-items:center;border-bottom:1px solid #f3f4f6;display:flex;gap:.75rem;padding:.5rem 0}.skill-preview-item:last-child{border-bottom:none}.skill-preview-item .skill-name{color:#1f2937;flex:1 1;font-size:.875rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.skill-preview-item .skill-progress-bar{width:80px}.skills-cta-button{background:#10b981;border-radius:8px;color:#fff;display:block;font-weight:500;padding:.75rem 1rem;text-align:center;text-decoration:none;transition:background .2s ease;width:100%}.skills-cta-button:hover{background:#059669}.review-button{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:600;margin-top:1.5rem;padding:1rem;transition:transform .2s;width:100%}.review-button:hover{transform:scale(1.02)}.dashboard-controls{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;display:flex;gap:2rem;margin-bottom:2rem;padding:1rem}.control-group{gap:.5rem}.control-group label{color:#4b5563;font-weight:500}.control-group select{border:2px solid #e5e7eb;border-radius:6px;cursor:pointer;font-size:1rem;padding:.5rem 1rem;transition:border-color .2s}.control-group select:hover{border-color:#667eea}.topics-list{grid-gap:1.5rem;display:grid;gap:1.5rem}.topic-card{box-shadow:0 2px 4px #0000001a;padding:1.5rem;transition:all .3s}.topic-card:hover{box-shadow:0 4px 8px #00000026;transform:translateY(-2px)}.topic-header{margin-bottom:1rem}.topic-info{align-items:center;display:flex;gap:.75rem}.topic-icon{font-size:2rem}.topic-info h3{color:#1f2937;font-size:1.3rem;margin:0}.topic-level{background:#667eea1a;border-radius:20px;font-size:1.1rem;font-weight:600;padding:.5rem 1rem}.mastery-progress{align-items:center;display:flex;gap:1rem;margin-bottom:1rem}.progress-bar{height:20px}.progress-fill{border-radius:10px}.progress-label{color:#4b5563;font-weight:600;min-width:50px;text-align:right}.topic-stats{border-bottom:1px solid #e5e7eb;border-top:1px solid #e5e7eb;gap:1.5rem;margin-bottom:1rem;padding:.75rem 0}.stat{align-items:center;color:#6b7280;display:flex;gap:.5rem}.stat-icon{font-size:1.2rem}.stat.review-due{color:#f59e0b;font-weight:500}.topic-actions{gap:.75rem}.action-btn{border-radius:6px;padding:.75rem 1rem}.action-btn.practice{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.action-btn.practice:hover{box-shadow:0 4px 8px #667eea4d;transform:scale(1.02)}.action-btn.review{background:#f59e0b;color:#fff}.action-btn.review:hover{background:#d97706}.action-btn.refresh{background:#e5e7eb;color:#4b5563}.action-btn.refresh:hover{background:#d1d5db}.empty-state{background:#fff;box-shadow:0 2px 4px #0000001a;padding:4rem 2rem}.empty-state h2{color:#1f2937;margin-bottom:1rem}.empty-state p{margin-bottom:2rem}.empty-state button{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:600;padding:1rem 2rem;transition:transform .2s}.empty-state button:hover{transform:scale(1.05)}.info-panel{background:#f9fafb;border:2px solid #e5e7eb;border-radius:12px;margin-top:3rem;padding:2rem}.info-panel h3{color:#1f2937;margin-top:0}.info-content{color:#4b5563;line-height:1.7}.info-content strong{color:#1f2937}.info-content ul{margin:.5rem 0 1rem 1rem}.info-content li{margin:.5rem 0}.mastery-dashboard.error,.mastery-dashboard.loading{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:400px}.mastery-dashboard.error h2{color:#ef4444}.mastery-dashboard.error button{background:#667eea;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:1rem;padding:.75rem 1.5rem}@media (max-width:768px){.mastery-dashboard{padding:1rem}.dashboard-header h1{font-size:2rem}.dashboard-summary{grid-template-columns:repeat(2,1fr)}.dashboard-controls{flex-direction:column;gap:1rem}.srs-stats-grid{grid-template-columns:repeat(2,1fr)}.topic-actions{flex-direction:column}}[data-theme=dark] .mastery-dashboard{background:#0000}[data-theme=dark] .dashboard-header h1{background:linear-gradient(135deg,#a5b4fc,#c4b5fd);-webkit-background-clip:text;background-clip:text}[data-theme=dark] .dashboard-header .subtitle{color:#d1d5db}[data-theme=dark] .summary-card{background:#252540;border-color:#374151}[data-theme=dark] .summary-content{color:#e5e7eb}[data-theme=dark] .summary-content h3{color:#f3f4f6}[data-theme=dark] .summary-content p{color:#d1d5db}[data-theme=dark] .srs-stats-panel{background:#252540;border-color:#374151}[data-theme=dark] .srs-stats-panel h2{color:#f3f4f6}[data-theme=dark] .srs-stat{background:#1a1a2e}[data-theme=dark] .srs-stat span{color:#d1d5db}[data-theme=dark] .maturity-breakdown h3{color:#f3f4f6}[data-theme=dark] .bar-label,[data-theme=dark] .bar-value{color:#d1d5db}[data-theme=dark] .bar-container{background:#374151}[data-theme=dark] .dashboard-controls{background:#252540}[data-theme=dark] .control-group label{color:#d1d5db}[data-theme=dark] .control-group select{background:#1a1a2e;border-color:#374151;color:#f3f4f6}[data-theme=dark] .topic-card{background:#252540}[data-theme=dark] .topic-info h3{color:#f3f4f6}[data-theme=dark] .progress-label{color:#d1d5db}[data-theme=dark] .topic-stats{border-color:#374151}[data-theme=dark] .stat{color:#d1d5db}[data-theme=dark] .empty-state h2{color:#f3f4f6}[data-theme=dark] .empty-state p{color:#e5e7eb}[data-theme=dark] .info-panel{background:#252540;border-color:#374151}[data-theme=dark] .info-panel h3{color:#f3f4f6}[data-theme=dark] .info-content{color:#d1d5db}[data-theme=dark] .info-content strong{color:#f3f4f6}[data-theme=dark] .nano-skill-preview{background:linear-gradient(135deg,#1a3328,#1a2e38);border-color:#059669}[data-theme=dark] .preview-header h2{color:#6ee7b7}[data-theme=dark] .skill-stat{background:#252540}[data-theme=dark] .skill-stat .stat-value{color:#f3f4f6}[data-theme=dark] .skill-stat .stat-label{color:#d1d5db}[data-theme=dark] .skill-preview-section{background:#1a1a2e}[data-theme=dark] .skill-preview-section h3{color:#e5e7eb}[data-theme=dark] .skill-preview-item{border-color:#374151}[data-theme=dark] .skill-preview-item .skill-name{color:#f3f4f6}.tooltip-wrapper{position:relative}.tooltip-trigger,.tooltip-wrapper{align-items:center;display:inline-flex}.tooltip-trigger{cursor:help;gap:4px}.tooltip-trigger:focus-visible{border-radius:4px;outline:2px solid #667eea;outline-offset:2px}.tooltip-icon{align-items:center;background:#e5e7eb;border-radius:50%;color:#6b7280;display:inline-flex;font-size:10px;font-weight:600;height:16px;justify-content:center;margin-left:4px;transition:all .2s;width:16px}.tooltip-trigger:focus .tooltip-icon,.tooltip-wrapper:hover .tooltip-icon{background:#667eea;color:#fff}.tooltip-content{animation:tooltipFadeIn .2s ease;background:#1f2937;border-radius:6px;box-shadow:0 4px 12px #00000026;color:#fff;font-size:13px;line-height:1.4;max-width:250px;min-width:150px;padding:8px 12px;position:absolute;text-align:left;white-space:normal;z-index:1000}@keyframes tooltipFadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.tooltip-top{bottom:100%;left:50%;margin-bottom:8px;transform:translateX(-50%)}.tooltip-top .tooltip-arrow{border:6px solid #0000;border-top-color:#1f2937;position:absolute}.tooltip-bottom,.tooltip-top .tooltip-arrow{left:50%;top:100%;transform:translateX(-50%)}.tooltip-bottom{margin-top:8px}.tooltip-bottom .tooltip-arrow{border:6px solid;border-color:#0000 #0000 #1f2937;bottom:100%;left:50%;position:absolute;transform:translateX(-50%)}.tooltip-left{margin-right:8px;right:100%;top:50%;transform:translateY(-50%)}.tooltip-left .tooltip-arrow{border:6px solid #0000;border-left-color:#1f2937;position:absolute}.tooltip-left .tooltip-arrow,.tooltip-right{left:100%;top:50%;transform:translateY(-50%)}.tooltip-right{margin-left:8px}.tooltip-right .tooltip-arrow{border:6px solid #0000;border-right-color:#1f2937;position:absolute;right:100%;top:50%;transform:translateY(-50%)}@media (prefers-reduced-motion:reduce){.tooltip-content{animation:none}}.skill-progress-bar{align-items:center;display:flex;gap:8px;width:100%}.skill-progress-bar.compact{gap:4px}.progress-label-text{color:#6b7280;font-size:.75rem;min-width:80px}.progress-track{background-color:#e5e7eb;border-radius:4px;flex:1 1;height:8px;overflow:hidden}.skill-progress-bar.compact .progress-track{height:6px}.progress-fill{transition:width .3s ease-out,background-color .3s ease}.progress-percentage{color:#374151;font-size:.875rem;font-weight:600;min-width:40px;text-align:right}.skill-progress-bar.compact .progress-percentage{font-size:.75rem;min-width:32px}.career-readiness-card{background:#fff;border:2px solid #e5e7eb;border-radius:12px;box-shadow:0 2px 4px #0000001a;padding:1.5rem;transition:all .3s ease}.career-readiness-card:hover{border-color:#667eea;box-shadow:0 4px 8px #00000026}.career-readiness-card.compact{padding:1rem}.career-readiness-card.error,.career-readiness-card.loading{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:200px;text-align:center}.career-readiness-card .loading-spinner{animation:spin 1s linear infinite;border:3px solid #e5e7eb;border-radius:50%;border-top-color:#667eea;height:40px;margin-bottom:1rem;width:40px}.career-readiness-card.error button{background:#667eea;border:none;border-radius:6px;color:#fff;cursor:pointer;margin-top:.5rem;padding:.5rem 1rem}.readiness-header{margin-bottom:1rem}.readiness-header h3{color:#1f2937;font-size:1.25rem;margin:0 0 .25rem}.career-category{background:#667eea1a;border-radius:4px;color:#667eea;display:inline-block;font-size:.75rem;font-weight:500;padding:.25rem .5rem}.readiness-content{align-items:center;display:flex;gap:1.5rem;margin-bottom:1rem}.compact .readiness-content{gap:1rem}.progress-circle-container{flex-shrink:0;height:120px;position:relative;width:120px}.compact .progress-circle-container{height:80px;width:80px}.progress-circle{height:100%;width:100%}.progress-bg{stroke:#e5e7eb}.progress-fill{transition:stroke-dashoffset .5s ease}.progress-text .percentage{display:block;font-size:1.75rem;font-weight:700;line-height:1}.compact .progress-text .percentage{font-size:1.25rem}.progress-text .level{color:#6b7280;display:block;font-size:.75rem;margin-top:.25rem}.compact .progress-text .level{font-size:.625rem}.readiness-stats{grid-gap:.5rem;display:grid;flex:1 1;gap:.5rem;grid-template-columns:repeat(3,1fr)}.readiness-stats .stat{background:#f9fafb;border-radius:6px;padding:.5rem;text-align:center}.readiness-stats .stat-value{color:#667eea;display:block;font-size:1.5rem;font-weight:700}.readiness-stats .stat-label{color:#6b7280;font-size:.7rem}.skill-breakdown{border-top:1px solid #e5e7eb;margin-bottom:1rem;padding-top:1rem}.skill-breakdown h4{color:#4b5563;font-size:.875rem;margin:0 0 .75rem}.breakdown-bars{display:flex;flex-direction:column;gap:.5rem}.breakdown-item{align-items:center;display:flex;gap:.75rem}.breakdown-label{align-items:center;display:flex;gap:.5rem;min-width:140px}.importance-badge{padding:.125rem .5rem}.importance-badge.core{background:#10b9811a;color:#059669}.importance-badge.standard{background:#3b82f61a;color:#2563eb}.importance-badge.optional{background:#9ca3af1a;color:#6b7280}.breakdown-count{color:#6b7280;font-size:.75rem}.breakdown-item .skill-progress-bar-container{flex:1 1}.skill-gaps{border-top:1px solid #e5e7eb;margin-bottom:1rem;padding-top:1rem}.skill-gaps h4{color:#4b5563;font-size:.875rem;margin:0 0 .75rem}.gap-list{list-style:none;margin:0;padding:0}.gap-item{align-items:center;border-bottom:1px solid #f3f4f6;display:flex;justify-content:space-between;padding:.5rem 0}.gap-item:last-child{border-bottom:none}.gap-name{color:#1f2937;flex:1 1;font-size:.875rem;overflow:hidden;padding-right:1rem;text-overflow:ellipsis;white-space:nowrap}.gap-mastery{border-radius:4px;font-size:.75rem;font-weight:600;padding:.125rem .5rem}.gap-mastery.practiced{background:#f59e0b1a;color:#d97706}.gap-mastery.not-practiced{background:#ef44441a;color:#dc2626}.more-gaps{color:#6b7280;font-size:.75rem;font-style:italic;margin:.5rem 0 0}.readiness-actions{display:flex;gap:.75rem;margin-top:1rem}.compact .readiness-actions{flex-direction:column}.btn-practice,.btn-view-career{border-radius:6px;flex:1 1;font-size:.875rem;font-weight:500;padding:.625rem 1rem;text-align:center;text-decoration:none;transition:all .2s ease}.btn-view-career{background:#f3f4f6;border:1px solid #e5e7eb;color:#4b5563}.btn-view-career:hover{background:#e5e7eb;color:#1f2937}.btn-practice{background:linear-gradient(135deg,#667eea,#764ba2);border:none}.btn-practice:hover{box-shadow:0 4px 8px #667eea4d;transform:scale(1.02)}.readiness-description{border-top:1px solid #e5e7eb;color:#6b7280;font-size:.875rem;line-height:1.5;margin:1rem 0 0;padding-top:1rem}@media (max-width:640px){.readiness-content{flex-direction:column;text-align:center}.readiness-stats{width:100%}.breakdown-item{align-items:flex-start;flex-direction:column;gap:.25rem}.breakdown-label{min-width:auto}.breakdown-item .skill-progress-bar-container{width:100%}.readiness-actions{flex-direction:column}}.nano-skill-dashboard{margin:0 auto;max-width:1200px;padding:2rem}.nano-skill-dashboard.error,.nano-skill-dashboard.loading{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:400px;text-align:center}.loading-spinner{border-top-color:#3b82f6}.dashboard-header{text-align:center}.dashboard-header h1{font-size:2rem;margin-bottom:.5rem}.dashboard-header .subtitle{color:#6b7280;font-size:1rem}.dashboard-tabs{border-bottom:2px solid #e5e7eb;gap:.5rem;margin-bottom:2rem;padding-bottom:.5rem}.dashboard-tabs button{background:#0000;border:none;border-radius:8px 8px 0 0;color:#6b7280;cursor:pointer;font-size:1rem;font-weight:500;padding:.75rem 1.5rem;transition:all .2s ease}.dashboard-tabs button:hover{background:#f3f4f6;color:#3b82f6}.dashboard-tabs button.active{background:#eff6ff;border-bottom:2px solid #3b82f6;color:#3b82f6;margin-bottom:-2px}.stats-overview{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.stat-card{transition:transform .2s ease,box-shadow .2s ease}.stat-card:hover{box-shadow:0 4px 12px #00000026}.stat-card.proficient{border-left:4px solid #3b82f6}.stat-card.learning{border-left:4px solid #f59e0b}.stat-card.weak{border-left:4px solid #ef4444}.stat-icon{display:block;font-size:1.5rem;margin-bottom:.5rem}.overall-accuracy{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;margin-bottom:2rem;padding:1.5rem}.overall-accuracy h3{color:#374151;margin:0 0 1rem}.accuracy-bar-container{background:#e5e7eb;border-radius:12px;height:24px;overflow:hidden;position:relative}.accuracy-bar{border-radius:12px;height:100%;transition:width .5s ease-out}.accuracy-label{color:#fff;font-weight:600;position:absolute;right:12px;text-shadow:0 1px 2px #0000004d;top:50%;transform:translateY(-50%)}.attempts-info{color:#6b7280;font-size:.875rem;margin-top:.5rem}.skills-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(350px,1fr))}.strengths-section,.weaknesses-section{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:1.5rem}.strengths-section h2,.weaknesses-section h2{color:#1f2937;font-size:1.25rem;margin:0 0 1rem}.skill-list{list-style:none;margin:0;padding:0}.skill-item{align-items:center;border-bottom:1px solid #f3f4f6;display:flex;gap:1rem;padding:.75rem 0}.skill-item:last-child{border-bottom:none}.skill-info{align-items:center;display:flex;gap:.75rem}.skill-icon{font-size:1.25rem}.skill-details{display:flex;flex-direction:column;min-width:0}.skill-name{color:#1f2937;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.skill-category{color:#9ca3af;font-size:.75rem}.skill-item .skill-progress-bar{flex-shrink:0;width:120px}.no-data{color:#9ca3af}.practice-button{background:#3b82f6;border-radius:8px;color:#fff;display:block;font-weight:500;margin-top:1rem;padding:.75rem 1.5rem;text-align:center;text-decoration:none;transition:background .2s ease;width:100%}.practice-button:hover{background:#2563eb}.categories-section h2{color:#1f2937;margin:0 0 1.5rem}.category-cards{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.category-card{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:1.5rem}.category-card h3{color:#1f2937;font-size:1rem;margin:0 0 1rem}.category-stats{color:#6b7280;display:flex;font-size:.875rem;gap:1rem;margin-bottom:1rem}.category-stats strong{color:#1f2937}.all-skills-section h2{color:#1f2937;margin:0 0 1.5rem}.skills-table{background:#fff;border-collapse:collapse;border-radius:12px;box-shadow:0 1px 3px #0000001a;overflow:hidden;width:100%}.skills-table td,.skills-table th{border-bottom:1px solid #f3f4f6;padding:1rem;text-align:left}.skills-table th{color:#374151;font-size:.875rem;font-weight:600}.skills-table th,.skills-table tr:hover{background:#f9fafb}.skill-name-cell{color:#1f2937;font-weight:500;max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.status-badge{align-items:center;display:inline-flex;gap:.25rem;text-transform:capitalize}.status-badge.mastered{background:#d1fae5;color:#065f46}.status-badge.proficient{background:#dbeafe;color:#1e40af}.status-badge.learning{background:#fef3c7;color:#92400e}.status-badge.started{background:#f3f4f6;color:#374151}.status-badge.not_started{background:#fee2e2;color:#991b1b}.careers-section{padding:1rem 0}.careers-header{margin-bottom:1.5rem}.careers-header h2{color:#1f2937;margin:0 0 .5rem}.careers-header p{color:#6b7280;font-size:.95rem;margin:0}.career-cards-grid{grid-template-columns:repeat(auto-fit,minmax(350px,1fr));margin-bottom:2rem}.no-careers{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;margin-bottom:2rem;padding:3rem 2rem;text-align:center}.no-careers p{color:#4b5563;margin:0 0 .5rem}.no-careers .hint{color:#6b7280;font-size:.875rem;margin-bottom:1.5rem}.start-practice-btn{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:8px;color:#fff;display:inline-block;font-weight:500;padding:.75rem 1.5rem;text-decoration:none;transition:transform .2s ease}.start-practice-btn:hover{transform:scale(1.02)}.explore-careers-cta{background:linear-gradient(135deg,#f0fdf4,#ecfeff);border:2px solid #10b981;border-radius:12px;padding:1.5rem;text-align:center}.explore-btn{background:#10b981;font-size:1rem;font-weight:600;padding:.875rem 2rem;transition:all .2s ease}.explore-btn:hover{background:#059669;transform:scale(1.02)}@media (max-width:768px){.nano-skill-dashboard{padding:1rem}.dashboard-header h1{font-size:1.5rem}.stats-overview{grid-template-columns:repeat(2,1fr)}.skills-grid{grid-template-columns:1fr}.dashboard-tabs{flex-wrap:wrap}.skills-table{font-size:.875rem}.skills-table td,.skills-table th{padding:.75rem .5rem}.career-cards-grid{grid-template-columns:1fr}}[data-theme=dark] .nano-skill-dashboard{background:#0000}[data-theme=dark] .dashboard-header h1{color:#f3f4f6}[data-theme=dark] .dashboard-header .subtitle{color:#9ca3af}[data-theme=dark] .dashboard-tabs{border-color:#374151}[data-theme=dark] .dashboard-tabs button{color:#9ca3af}[data-theme=dark] .dashboard-tabs button:hover{background:#2d2d4a;color:#a5b4fc}[data-theme=dark] .dashboard-tabs button.active{background:#252540;border-bottom-color:#a5b4fc;color:#a5b4fc}[data-theme=dark] .overall-accuracy{background:#252540;box-shadow:0 1px 3px #0000004d}[data-theme=dark] .overall-accuracy h3{color:#f3f4f6}[data-theme=dark] .accuracy-bar-container{background:#374151}[data-theme=dark] .attempts-info{color:#9ca3af}[data-theme=dark] .strengths-section,[data-theme=dark] .weaknesses-section{background:#252540;box-shadow:0 1px 3px #0000004d}[data-theme=dark] .strengths-section h2,[data-theme=dark] .weaknesses-section h2{color:#f3f4f6}[data-theme=dark] .skill-item{border-color:#374151}[data-theme=dark] .no-data,[data-theme=dark] .skill-category{color:#9ca3af}[data-theme=dark] .categories-section h2{color:#f3f4f6}[data-theme=dark] .category-card{background:#252540;box-shadow:0 1px 3px #0000004d}[data-theme=dark] .category-card h3{color:#f3f4f6}[data-theme=dark] .category-stats{color:#9ca3af}[data-theme=dark] .all-skills-section h2,[data-theme=dark] .category-stats strong{color:#f3f4f6}[data-theme=dark] .skills-table{background:#252540;box-shadow:0 1px 3px #0000004d}[data-theme=dark] .skills-table th{background:#1a1a2e;color:#d1d5db}[data-theme=dark] .skills-table td{border-color:#374151}[data-theme=dark] .skills-table tr:hover{background:#2d2d4a}[data-theme=dark] .skill-name-cell{color:#f3f4f6}[data-theme=dark] .status-badge.mastered{background:#10b98133;color:#6ee7b7}[data-theme=dark] .status-badge.proficient{background:#3b82f633;color:#93c5fd}[data-theme=dark] .status-badge.learning{background:#fbbf2433;color:#fcd34d}[data-theme=dark] .status-badge.started{background:#6b728033;color:#d1d5db}[data-theme=dark] .status-badge.not_started{background:#ef444433;color:#fca5a5}[data-theme=dark] .careers-header h2{color:#f3f4f6}[data-theme=dark] .careers-header p{color:#9ca3af}[data-theme=dark] .no-careers{background:#252540;box-shadow:0 1px 3px #0000004d}[data-theme=dark] .no-careers p{color:#d1d5db}[data-theme=dark] .no-careers .hint{color:#9ca3af}[data-theme=dark] .explore-careers-cta{background:linear-gradient(135deg,#1a2e1a,#1a2e2e);border-color:#10b981}.career-explorer{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0 auto;max-width:1400px;padding:2rem}.explorer-header{margin-bottom:2rem;text-align:center}.explorer-header h1{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;font-size:2.5rem;margin-bottom:.5rem}.explorer-header .subtitle{color:#6b7280;font-size:1.1rem}.top-matches-section{background:linear-gradient(135deg,#f0fdf4,#ecfeff);border:2px solid #10b981;border-radius:12px;margin-bottom:2.5rem;padding:1.5rem}.top-matches-section h2{color:#064e3b;font-size:1.25rem;margin:0 0 1rem}.matches-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}.match-card{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;padding:1rem}.match-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:.5rem}.match-header h3{color:#1f2937;flex:1 1;font-size:.95rem;margin:0;padding-right:.5rem}.readiness-badge{border-radius:4px;font-size:.7rem;font-weight:600;padding:.25rem .5rem;white-space:nowrap}.readiness-badge.ready{background:#d1fae5;color:#059669}.readiness-badge.proficient{background:#dbeafe;color:#2563eb}.readiness-badge.developing{background:#fef3c7;color:#d97706}.readiness-badge.beginning{background:#fed7aa;color:#ea580c}.readiness-badge.not-ready{background:#fee2e2;color:#dc2626}.match-category{color:#6b7280;font-size:.75rem;margin:0 0 .5rem}.match-stats{color:#4b5563;display:flex;font-size:.75rem;justify-content:space-between;margin-bottom:.75rem}.match-stats .salary{color:#059669;font-weight:500}.btn-view-readiness{background:#10b981;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.8rem;font-weight:500;padding:.5rem;transition:background .2s ease;width:100%}.btn-view-readiness:hover{background:#059669}.explorer-controls{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1.5rem;padding:1rem}.search-box{display:flex}.search-box input{border-radius:6px 0 0 6px;border-right:none;flex:1 1;padding:.625rem 1rem}.search-box button{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:0 6px 6px 0;color:#fff;cursor:pointer;font-weight:500;padding:.625rem 1.25rem;transition:transform .2s ease}.search-box button:hover{transform:scale(1.02)}.category-filter{align-items:center;display:flex;gap:.5rem}.category-filter label{color:#4b5563;font-weight:500}.category-filter select{border:2px solid #e5e7eb;border-radius:6px;cursor:pointer;font-size:1rem;padding:.625rem 1rem}.category-filter select:focus{border-color:#667eea;outline:none}.subcategory-filter{animation:slideIn .2s ease-out}.sort-controls{align-items:center;display:flex;gap:.5rem}.sort-label{color:#4b5563;font-weight:500;margin-right:.25rem}.sort-btn{background:#fff;border:2px solid #e5e7eb;border-radius:6px;color:#6b7280;cursor:pointer;font-size:.875rem;font-weight:500;padding:.5rem .875rem;transition:all .2s ease}.sort-btn:hover:not(.active){background:#f3f4f6;border-color:#d1d5db}.sort-btn.active{background:linear-gradient(135deg,#667eea,#764ba2);border-color:#0000;color:#fff}.readiness-filter{align-items:center;display:flex;gap:.5rem}.readiness-filter .filter-label{color:#4b5563;font-size:.875rem;font-weight:500}.readiness-select{background:#fff;border:2px solid #e5e7eb;border-radius:6px;color:#374151;cursor:pointer;font-size:.875rem;min-width:150px;padding:.5rem .75rem}.readiness-select:focus{border-color:#667eea;outline:none}.view-toggle{border:2px solid #e5e7eb;border-radius:6px}.view-toggle button{color:#6b7280;font-weight:500;padding:.625rem 1rem;transition:all .2s ease}.view-toggle button.active{background:linear-gradient(135deg,#667eea,#764ba2)}.view-toggle button:not(.active):hover{background:#f3f4f6}.error-message,.loading-state{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:3rem;text-align:center}.error-message button{background:#667eea;border:none;border-radius:6px;color:#fff;cursor:pointer;margin-top:1rem;padding:.5rem 1rem}.results-info{color:#6b7280;font-size:.9rem;margin-bottom:1rem}.careers-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.career-card{border:2px solid #e5e7eb;box-shadow:0 2px 4px #0000001a;flex-direction:column;padding:1.5rem;transition:all .3s ease}.career-card:hover{box-shadow:0 4px 8px #00000026;transform:translateY(-2px)}.readiness-badge-card{align-items:center;border-radius:8px;box-shadow:0 2px 4px #0000001a;display:flex;flex-direction:column;font-weight:600;padding:.5rem .75rem;position:absolute;right:.75rem;top:.75rem}.readiness-badge-card .readiness-percent{font-size:1.1rem;line-height:1}.readiness-badge-card .readiness-label{font-size:.6rem;letter-spacing:.05em;opacity:.9;text-transform:uppercase}.readiness-badge-card.ready{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.readiness-badge-card.proficient{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff}.readiness-badge-card.developing{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff}.readiness-badge-card.beginning{background:linear-gradient(135deg,#f97316,#ea580c);color:#fff}.readiness-badge-card.not-ready{background:linear-gradient(135deg,#6b7280,#4b5563);color:#fff}.skills-progress{background:#667eea1a;border-radius:4px;color:#667eea;font-size:.75rem;font-weight:500;padding:.25rem .5rem}.card-header{justify-content:space-between}.card-header h3{color:#1f2937;font-size:1.1rem;padding-right:.5rem}.category-tag{background:#667eea1a;color:#667eea;font-size:.7rem;font-weight:500;padding:.25rem .5rem}.career-description{color:#6b7280;font-size:.875rem;line-height:1.5;margin:0 0 1rem}.career-meta{margin-bottom:1rem}.salary-range{background:#10b9811a;color:#059669;font-weight:500}.experience-level,.salary-range{border-radius:4px;font-size:.75rem;padding:.25rem .5rem}.experience-level{background:#f3f4f6;color:#4b5563}.growth-outlook{border-radius:4px;font-size:.75rem;font-weight:500;padding:.25rem .5rem}.growth-outlook.high{background:#d1fae5;color:#059669}.growth-outlook.medium{background:#fef3c7;color:#d97706}.growth-outlook.low{background:#fee2e2;color:#dc2626}.card-actions{margin-top:auto}.btn-check-readiness{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:500;padding:.625rem 1rem;transition:transform .2s ease;width:100%}.btn-check-readiness:hover{box-shadow:0 4px 8px #667eea4d;transform:scale(1.02)}.matches-view{padding:1rem 0}.matches-view h2{color:#1f2937;margin:0 0 1.5rem}.career-cards-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.no-matches{background:#fff;border-radius:12px;box-shadow:0 2px 4px #0000001a;padding:3rem;text-align:center}.no-matches p{color:#6b7280;margin-bottom:1rem}.pagination{gap:1rem;padding:1rem}.pagination button{background:#fff;border:2px solid #e5e7eb;border-radius:6px;color:#4b5563;cursor:pointer;font-weight:500;padding:.5rem 1rem;transition:all .2s ease}.pagination button:hover:not(:disabled){border-color:#667eea;color:#667eea}.pagination button:disabled{cursor:not-allowed;opacity:.5}.pagination span{color:#6b7280}.readiness-modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:1rem;position:fixed;right:0;top:0;z-index:1000}.readiness-modal{animation:modalSlideIn .3s ease;max-height:90vh;max-width:500px;overflow-y:auto;position:relative;width:100%}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.modal-close{align-items:center;background:#fff;border:2px solid #e5e7eb;border-radius:50%;box-shadow:0 2px 4px #0000001a;cursor:pointer;display:flex;font-size:1.25rem;height:30px;justify-content:center;position:absolute;right:-10px;top:-10px;width:30px;z-index:10}.modal-close:hover{background:#f3f4f6}.guest-cta-banner{background:linear-gradient(135deg,#f5f3ff,#ede9fe);border:1px solid #c4b5fd}.guest-cta-banner .cta-btn-primary{background:linear-gradient(135deg,#667eea,#764ba2)}.guest-cta-banner .cta-btn-primary:hover{box-shadow:0 4px 12px #667eea66}.guest-cta-banner .cta-btn-secondary{border:1px solid #c4b5fd}.guest-cta-banner .cta-btn-secondary:hover{border-color:#a78bfa}@media (max-width:768px){.career-explorer{padding:1rem}.explorer-header h1{font-size:2rem}.explorer-controls{flex-direction:column}.category-filter,.search-box{width:100%}.category-filter select{flex:1 1}.view-toggle{width:100%}.view-toggle button{flex:1 1}.career-cards-grid,.careers-grid,.matches-grid{grid-template-columns:1fr}.guest-cta-banner{align-items:flex-start;flex-direction:column;text-align:left}.guest-cta-banner .cta-content{align-items:flex-start;flex-direction:column;gap:12px}.guest-cta-banner .cta-actions{flex-direction:column;width:100%}.guest-cta-banner .cta-btn-primary,.guest-cta-banner .cta-btn-secondary{justify-content:center;width:100%}}[data-theme=dark] .career-explorer{background:#0000}[data-theme=dark] .explorer-header h1{color:#f3f4f6}[data-theme=dark] .explorer-header .subtitle{color:#d1d5db}[data-theme=dark] .guest-cta-banner{background:linear-gradient(135deg,#2a2a4a,#252540);border-color:#374151}[data-theme=dark] .cta-text strong{color:#f3f4f6}[data-theme=dark] .cta-text p{color:#d1d5db}[data-theme=dark] .cta-btn-secondary{background:#0000;border-color:#6b7280;color:#f3f4f6}[data-theme=dark] .cta-btn-secondary:hover{background:#ffffff1a;border-color:#9ca3af}[data-theme=dark] .explorer-controls{background:#252540;border-color:#374151}[data-theme=dark] .search-box input{background:#1a1a2e;border-color:#374151;color:#f3f4f6}[data-theme=dark] .search-box input::placeholder{color:#6b7280}[data-theme=dark] .search-box button{background:#6366f1;color:#fff}[data-theme=dark] .category-filter label,[data-theme=dark] .sort-label{color:#d1d5db}[data-theme=dark] .category-filter select{background:#1a1a2e;border-color:#374151;color:#f3f4f6}[data-theme=dark] .sort-btn{background:#1a1a2e;border-color:#374151;color:#d1d5db}[data-theme=dark] .sort-btn:hover{background:#2d2d4a;border-color:#6366f1}[data-theme=dark] .sort-btn.active{background:#6366f1;color:#fff}[data-theme=dark] .view-toggle button{background:#1a1a2e}[data-theme=dark] .results-info{color:#9ca3af}[data-theme=dark] .career-card{background:#252540}[data-theme=dark] .career-card:hover{border-color:#6366f1;box-shadow:0 8px 25px #6366f133}[data-theme=dark] .career-card h3{color:#f3f4f6}[data-theme=dark] .category-tag{background:#6366f133;color:#a5b4fc}[data-theme=dark] .career-description{color:#d1d5db}[data-theme=dark] .career-meta{color:#9ca3af}[data-theme=dark] .salary-range{color:#6ee7b7}[data-theme=dark] .experience-level{color:#a5b4fc}[data-theme=dark] .btn-check-readiness{background:#6366f1;color:#fff}[data-theme=dark] .btn-login-required{background:#374151;color:#d1d5db}[data-theme=dark] .btn-login-required:hover{background:#4b5563}[data-theme=dark] .pagination button{background:#252540;border-color:#374151;color:#d1d5db}[data-theme=dark] .pagination button:hover{background:#2d2d4a;border-color:#6366f1}[data-theme=dark] .pagination button.active{background:#6366f1;color:#fff}[data-theme=dark] .no-results{background:#252540}[data-theme=dark] .no-results h3{color:#f3f4f6}[data-theme=dark] .no-results p{color:#d1d5db}.target-success-banner{align-items:center;animation:slideDown .3s ease-out;background:linear-gradient(135deg,#10b981,#059669);border-radius:12px;color:#fff;display:flex;gap:.75rem;margin-bottom:1.5rem;padding:1rem 1.5rem}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.target-success-banner .success-icon{align-items:center;background:#fff3;border-radius:50%;display:flex;font-weight:700;height:28px;justify-content:center;width:28px}.target-success-banner .view-dashboard-link{background:#fff3;border-radius:6px;color:#fff;font-weight:500;margin-left:auto;padding:.5rem 1rem;text-decoration:none;transition:background .2s}.target-success-banner .view-dashboard-link:hover{background:#ffffff4d}.btn-set-target{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:500;padding:.625rem 1rem;transition:all .2s}.btn-set-target:hover:not(:disabled){box-shadow:0 4px 12px #667eea66;transform:translateY(-1px)}.btn-set-target:disabled{cursor:not-allowed;opacity:.7;transform:none}.btn-set-target.is-target{background:linear-gradient(135deg,#10b981,#059669)}.card-actions{flex-wrap:wrap;gap:.5rem}[data-theme=dark] .target-success-banner{background:linear-gradient(135deg,#059669,#047857)}[data-theme=dark] .btn-set-target{background:linear-gradient(135deg,#6366f1,#8b5cf6)}[data-theme=dark] .btn-set-target.is-target{background:linear-gradient(135deg,#059669,#047857)}.review-mode{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;margin:0 auto;max-width:900px;padding:2rem}.review-header{margin-bottom:2rem;text-align:center}.review-header h1{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#f59e0b,#ea580c);-webkit-background-clip:text;background-clip:text;font-size:2rem;margin-bottom:.5rem}.review-subtitle{color:#6b7280;font-size:1rem;margin-bottom:1.5rem}.review-stats-bar{background:#fff;border-radius:12px;box-shadow:0 2px 4px #0000001a;display:flex;gap:3rem;justify-content:center;padding:1rem}.review-stats-bar .stat{align-items:center;display:flex;flex-direction:column;gap:.25rem}.review-stats-bar .stat-value{color:#f59e0b;font-size:1.5rem;font-weight:700}.review-stats-bar .stat-label{color:#6b7280;font-size:.8rem}.review-progress{background:#fff;border-radius:12px;box-shadow:0 2px 4px #0000001a;margin-bottom:1.5rem;padding:1rem}.progress-fill{background:linear-gradient(135deg,#f59e0b,#ea580c)}.progress-text{color:#6b7280;font-size:.9rem;text-align:center}.flashcard{background:#fff;border-radius:16px;box-shadow:0 4px 20px #0000001a;margin-bottom:1.5rem;min-height:400px;padding:2rem;transition:opacity .3s ease,transform .3s ease}.flashcard.transitioning{opacity:0;transform:translateX(30px)}.card-label{background:linear-gradient(135deg,#f59e0b,#ea580c);border-radius:20px;color:#fff;display:inline-block;font-size:.85rem;font-weight:600;margin-bottom:1.5rem;padding:.5rem 1rem}.card-label.answer-label{background:linear-gradient(135deg,#10b981,#059669)}.flashcard-question{color:#1f2937;font-size:1.4rem;line-height:1.6;margin-bottom:2rem}.think-prompt{margin:2rem 0;text-align:center}.think-prompt p{color:#6b7280;font-size:1.1rem;margin-bottom:1rem}.auto-reveal-bar{background:#e5e7eb;border-radius:3px;height:6px;margin:1rem auto;max-width:300px;overflow:hidden}.auto-reveal-progress{background:linear-gradient(135deg,#f59e0b,#ea580c);height:100%;transition:width 1s linear}.auto-reveal-text{color:#9ca3af;font-size:.85rem}.reveal-btn{background:linear-gradient(135deg,#f59e0b,#ea580c);border:none;border-radius:12px;color:#fff;cursor:pointer;display:block;font-size:1.1rem;font-weight:600;margin:2rem auto 0;padding:1rem 3rem;transition:transform .2s,box-shadow .2s}.reveal-btn:hover{box-shadow:0 6px 20px #f59e0b66;transform:translateY(-2px)}.flashcard-back{animation:fadeIn .3s ease}.correct-answer-display{align-items:flex-start;background:linear-gradient(135deg,#10b9811a,#0596691a);border:2px solid #10b981;border-radius:12px;display:flex;gap:1rem;margin-bottom:1.5rem;padding:1.5rem}.answer-letter{align-items:center;background:linear-gradient(135deg,#10b981,#059669);border-radius:10px;color:#fff;display:flex;flex-shrink:0;font-size:1.2rem;font-weight:700;height:40px;justify-content:center;width:40px}.answer-text{color:#1f2937;font-size:1.15rem;line-height:1.5;padding-top:.25rem}.explanation-box{background:#f9fafb;border-left:4px solid #f59e0b;border-radius:10px;margin-bottom:2rem;padding:1.25rem}.explanation-box strong{color:#f59e0b;display:block;margin-bottom:.5rem}.explanation-box p{color:#4b5563;line-height:1.6;margin:0}.recall-section{border-top:2px solid #e5e7eb;margin-top:1.5rem;padding-top:1.5rem}.recall-section h3{color:#1f2937;font-size:1.1rem;margin-bottom:1rem;text-align:center}.recall-buttons{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(5,1fr)}.recall-btn{align-items:center;background:#fff;border:2px solid #e5e7eb;border-radius:12px;cursor:pointer;display:flex;flex-direction:column;gap:.4rem;padding:1rem .5rem;transition:all .2s}.recall-btn:hover{box-shadow:0 6px 15px #0000001a;transform:translateY(-3px)}.recall-btn.forgot{border-color:#ef4444}.recall-btn.forgot:hover{background:#ef44440d}.recall-btn.hard{border-color:#f59e0b}.recall-btn.hard:hover{background:#f59e0b0d}.recall-btn.good{border-color:#3b82f6}.recall-btn.good:hover{background:#3b82f60d}.recall-btn.easy{border-color:#8b5cf6}.recall-btn.easy:hover{background:#8b5cf60d}.recall-btn.perfect{border-color:#10b981}.recall-btn.perfect:hover{background:#10b9810d}.recall-icon{font-size:1.75rem}.recall-label{color:#1f2937;font-size:.9rem;font-weight:600}.recall-hint{color:#9ca3af;font-size:.7rem;text-align:center}.srs-info-compact{background:#f9fafb;border-radius:8px;color:#6b7280;display:flex;font-size:.85rem;gap:2rem;justify-content:center;padding:.75rem}.srs-info-compact span{align-items:center;display:flex;gap:.5rem}.review-mode.complete{align-items:center;display:flex;justify-content:center;min-height:500px}.session-complete-card{background:#fff;border-radius:16px;box-shadow:0 4px 20px #0000001a;max-width:500px;padding:2.5rem;text-align:center;width:100%}.session-complete-card h2{color:#1f2937;font-size:1.75rem;margin-bottom:1rem}.completion-icon{align-items:center;background:linear-gradient(135deg,#10b981,#059669);border-radius:50%;color:#fff;display:flex;font-size:2.5rem;height:80px;justify-content:center;margin:1.5rem auto;width:80px}.completion-stats{margin:1.5rem 0}.stat-large{align-items:center;display:flex;flex-direction:column}.stat-number{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#f59e0b,#ea580c);-webkit-background-clip:text;background-clip:text;font-size:3.5rem}.stat-label{font-size:1rem}.srs-impact{background:#f59e0b1a;border:2px solid #f59e0b;border-radius:12px;margin-bottom:1.5rem;padding:1.25rem;text-align:left}.srs-impact h3{color:#1f2937;font-size:1rem;margin:0 0 .75rem}.srs-impact ul{color:#4b5563;margin:0;padding-left:1.25rem}.srs-impact li{font-size:.9rem;margin:.4rem 0}.next-session-info{background:#f9fafb;border-radius:10px;margin-bottom:1.5rem;padding:1rem}.next-session-info h3{color:#1f2937;font-size:.95rem;margin:0 0 .5rem}.next-session-info p{color:#4b5563;margin:0}.no-reviews-icon{font-size:4rem;margin-bottom:1rem}.no-reviews-message{color:#6b7280;margin-bottom:1.5rem}.completion-actions{display:flex;flex-direction:column;gap:.75rem}.btn-primary,.btn-secondary{border-radius:10px;font-size:1rem;font-weight:600;padding:.875rem 1.5rem;transition:transform .2s}.btn-primary{background:linear-gradient(135deg,#f59e0b,#ea580c)}.btn-secondary{color:#4b5563}.review-mode.error,.review-mode.loading{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:400px}.loading-spinner{border-top-color:#f59e0b;height:50px;margin-bottom:1rem;width:50px}.review-mode.error h2{color:#ef4444;margin-bottom:.5rem}.review-mode.error button{background:#f59e0b;border:none;border-radius:8px;color:#fff;cursor:pointer;margin-top:1rem;padding:.75rem 1.5rem}@media (max-width:768px){.review-mode{padding:1rem}.review-header h1{font-size:1.5rem}.review-stats-bar{gap:1.5rem;padding:.75rem}.review-stats-bar .stat-value{font-size:1.25rem}.flashcard{min-height:350px;padding:1.5rem}.flashcard-question{font-size:1.2rem}.recall-buttons{grid-template-columns:repeat(3,1fr)}.recall-buttons .recall-btn:nth-child(4),.recall-buttons .recall-btn:nth-child(5){grid-column:span 1}.recall-icon{font-size:1.5rem}.recall-label{font-size:.8rem}.recall-hint{display:none}.srs-info-compact{flex-wrap:wrap;gap:1rem}.session-complete-card{padding:1.5rem}.stat-number{font-size:2.5rem}}@media (max-width:480px){.recall-buttons{grid-template-columns:repeat(2,1fr)}.recall-buttons .recall-btn:last-child{grid-column:1/-1}}.xp-stat-header .xp-value{color:#8b5cf6}.xp-stat .xp-number{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#8b5cf6,#6d28d9);-webkit-background-clip:text;background-clip:text}.completion-stats{display:flex;flex-wrap:wrap;gap:2rem;justify-content:center}.xp-notification{align-items:center;display:flex;flex-direction:column;gap:.5rem;left:50%;pointer-events:none;position:fixed;top:20%;transform:translateX(-50%);z-index:1000}.xp-popup{animation:xpPopIn .3s ease-out,xpFloat 1s ease-in-out .3s forwards;background:linear-gradient(135deg,#8b5cf6,#6d28d9);border-radius:25px;box-shadow:0 4px 20px #8b5cf666;color:#fff;font-size:1.25rem;font-weight:700;padding:.75rem 1.5rem}.level-up-popup{animation:levelUpBounce .5s ease-out;background:linear-gradient(135deg,#f59e0b,#ea580c);border-radius:20px;box-shadow:0 4px 20px #f59e0b66;color:#fff;font-size:1rem;font-weight:600;padding:.5rem 1.25rem}@keyframes xpPopIn{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}@keyframes xpFloat{0%{opacity:1;transform:scale(1) translateY(0)}to{opacity:0;transform:scale(1.1) translateY(-30px)}}@keyframes levelUpBounce{0%{opacity:0;transform:scale(.3)}50%{transform:scale(1.1)}to{opacity:1;transform:scale(1)}}[data-theme=dark] .review-mode{background:#0000}[data-theme=dark] .review-header h1{color:#f3f4f6}[data-theme=dark] .review-header .subtitle{color:#d1d5db}[data-theme=dark] .flashcard{background:#252540;box-shadow:0 8px 32px #0000004d}[data-theme=dark] .flashcard-back,[data-theme=dark] .flashcard-front{background:#252540}[data-theme=dark] .flashcard h2{color:#f3f4f6}[data-theme=dark] .flashcard p{color:#e5e7eb}[data-theme=dark] .progress-text{color:#d1d5db}[data-theme=dark] .stats-panel{background:#252540;border-color:#374151}[data-theme=dark] .stats-panel h3{color:#f3f4f6}[data-theme=dark] .stat-item{color:#d1d5db}[data-theme=dark] .stat-item strong{color:#f3f4f6}[data-theme=dark] .review-complete{background:#252540}[data-theme=dark] .review-complete h2{color:#f3f4f6}[data-theme=dark] .review-complete p{color:#e5e7eb}.review-landing{margin:0 auto;max-width:1200px;min-height:calc(100vh - 200px);padding:2rem}.review-hero{border-bottom:1px solid #e5e7eb;margin-bottom:2rem;padding-bottom:1.5rem;text-align:center}.review-hero h1{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;color:#1a1a2e;font-size:2.5rem;margin:0 0 .5rem}.hero-subtitle{color:#6b7280;font-size:1.1rem;margin:0}.loading-state{padding:4rem 2rem}.loading-state .spinner{animation:spin .8s linear infinite;border:4px solid #e5e7eb;border-radius:50%;border-top-color:#667eea;height:48px;margin-bottom:1rem;width:48px}.login-prompt{background:#fff;border-radius:16px;box-shadow:0 4px 20px #00000014;margin:2rem auto;max-width:400px;padding:3rem 2rem;text-align:center}.prompt-icon{font-size:3rem;margin-bottom:1rem}.login-prompt h2{color:#1a1a2e;margin:0 0 .5rem}.login-prompt p{color:#6b7280;margin-bottom:1.5rem}.stats-overview{grid-gap:1rem;gap:1rem;grid-template-columns:repeat(4,1fr)}.stat-card{box-shadow:0 2px 8px #0000000f}.stat-card.due{border-left:4px solid #ef4444}.stat-card.total{border-left:4px solid #667eea}.stat-card.mastered{border-left:4px solid #10b981}.stat-card.streak{border-left:4px solid #f59e0b}.stat-value{margin-bottom:.25rem}.quick-actions{margin-bottom:2rem;text-align:center}.btn-large{font-size:1.1rem;padding:1rem 2rem}.btn-secondary{border:2px solid #667eea;color:#667eea;font-size:.875rem;padding:.5rem 1rem}.btn-secondary:hover{background:#667eea;color:#fff}.btn-secondary:disabled{background:#f3f4f6;border-color:#e5e7eb;opacity:.5}.btn-text{color:#667eea;font-weight:500;text-decoration:none}.btn-text:hover{text-decoration:underline}.topics-section{margin-bottom:2rem}.section-header{flex-wrap:wrap;margin-bottom:1.5rem}.section-header h2{color:#1a1a2e}.search-box input{border:2px solid #e5e7eb;transition:border-color .2s ease;width:250px}.search-box input:focus{border-color:#667eea}.topic-group{margin-bottom:2rem}.group-title{border-bottom:2px solid #e5e7eb;color:#374151;font-size:1.1rem;margin:0 0 .5rem;padding-bottom:.5rem}.group-description{color:#6b7280;font-size:.9rem;margin:0 0 1rem}.topics-grid{grid-gap:1rem;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.topic-card{border:2px solid #e5e7eb;border-radius:12px;box-shadow:0 2px 8px #0000000f;padding:1.25rem;transition:all .2s ease}.topic-card:hover{box-shadow:0 4px 12px #667eea26}.topic-card.selected{background:linear-gradient(135deg,#667eea0d,#764ba20d);border-color:#667eea}.topic-card.browse{cursor:default}.topic-header{align-items:flex-start;justify-content:space-between;margin-bottom:.75rem}.topic-header h4{color:#1a1a2e;flex:1 1;font-size:1rem;margin:0;padding-right:.5rem}.due-badge{background:#fef2f2;color:#dc2626}.cards-badge,.due-badge{border-radius:12px;font-size:.75rem;font-weight:600;padding:.25rem .5rem;white-space:nowrap}.cards-badge{background:#f0fdf4;color:#16a34a}.topic-meta{font-size:.85rem;justify-content:space-between;margin-bottom:.75rem}.topic-actions{gap:.5rem}.btn-review-topic{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.875rem;font-weight:600;padding:.5rem 1rem;transition:all .2s ease;width:100%}.btn-review-topic:hover{box-shadow:0 2px 8px #667eea66;transform:translateY(-1px)}.show-more{margin-top:1rem;text-align:center}.all-done-state,.empty-state{background:#fff;border-radius:16px;box-shadow:0 2px 8px #0000000f;padding:3rem 2rem;text-align:center}.done-icon,.empty-icon{font-size:3rem;margin-bottom:1rem}.all-done-state h3,.empty-state h3{color:#1a1a2e;margin:0 0 .5rem}.all-done-state p,.empty-state p{color:#6b7280;margin-bottom:1.5rem}.how-it-works{background:linear-gradient(135deg,#667eea0d,#764ba20d);border-radius:16px;margin-top:2rem;padding:2rem}.how-it-works h3{color:#1a1a2e;margin:0 0 1.5rem;text-align:center}.steps{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(3,1fr)}.step{align-items:flex-start;display:flex;gap:1rem}.step-number{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;flex-shrink:0;font-weight:700}.step-content h4{color:#1a1a2e;font-size:1rem;margin:0 0 .25rem}.step-content p{color:#6b7280;font-size:.9rem;margin:0}@media (max-width:768px){.review-landing{padding:1rem}.review-hero h1{font-size:1.75rem}.stats-overview{grid-template-columns:repeat(2,1fr)}.section-header{align-items:stretch;flex-direction:column}.search-box input{width:100%}.steps,.topics-grid{grid-template-columns:1fr}.steps{gap:1.5rem}}[data-theme=dark] .review-hero{border-color:#374151}[data-theme=dark] .review-hero h1{background:linear-gradient(135deg,#a5b4fc,#c4b5fd);-webkit-background-clip:text;background-clip:text}[data-theme=dark] .hero-subtitle{color:#d1d5db}[data-theme=dark] .login-prompt{background:#252540;box-shadow:0 4px 20px #0000004d}[data-theme=dark] .login-prompt h2{color:#f3f4f6}[data-theme=dark] .login-prompt p{color:#e5e7eb}[data-theme=dark] .stat-card .stat-value{color:#f3f4f6}[data-theme=dark] .stat-card .stat-label{color:#d1d5db}[data-theme=dark] .review-cards{background:#252540;border-color:#374151}[data-theme=dark] .review-cards h2{color:#f3f4f6}[data-theme=dark] .topic-card{background:#1a1a2e;border-color:#374151}[data-theme=dark] .topic-card .topic-stats{color:#d1d5db}[data-theme=dark] .empty-review{background:#252540}[data-theme=dark] .empty-review h3{color:#f3f4f6}[data-theme=dark] .empty-review p{color:#e5e7eb}[data-theme=dark] .loading-state .spinner{border-color:#a5b4fc #374151 #374151}.study-advice-page{margin:0 auto;max-width:1000px;padding:2rem}.study-advice-header{margin-bottom:2rem;text-align:center}.study-advice-header h1{color:#1f2937;font-size:2rem;margin-bottom:.5rem}.study-advice-subtitle{color:#6b7280;font-size:1.1rem}.study-advice-error,.study-advice-loading,.study-advice-login-prompt{padding:4rem 2rem;text-align:center}.study-advice-loading .loading-spinner{animation:spin 1s linear infinite;border:4px solid #e5e7eb;border-radius:50%;border-top-color:#6366f1;height:48px;margin:0 auto 1rem;width:48px}.study-advice-summary{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-radius:12px;display:flex;gap:2rem;justify-content:center;margin-bottom:2rem;padding:1.5rem}.summary-stat{text-align:center}.summary-stat .stat-value{color:#1f2937;display:block;font-size:2rem;font-weight:700}.summary-stat .stat-value.high{color:#ef4444}.summary-stat .stat-value.medium{color:#f59e0b}.summary-stat .stat-label{color:#6b7280;font-size:.85rem}.study-advice-filters{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem}.filter-btn{background:#fff;border:1px solid #e5e7eb;border-radius:20px;color:#374151;font-size:.9rem}.filter-btn:hover{background:#f9fafb}.filter-btn.active{background:#6366f1;color:#fff}.filter-btn.high.active{background:#ef4444;border-color:#ef4444}.filter-btn.medium.active{background:#f59e0b;border-color:#f59e0b}.filter-btn.low.active{background:#10b981;border-color:#10b981}.study-advice-empty{background:#f8fafc;border-radius:16px;padding:4rem 2rem;text-align:center}.study-advice-empty .empty-icon{font-size:3rem;margin-bottom:1rem}.study-advice-empty h3{color:#1f2937;margin-bottom:.5rem}.study-advice-empty p{color:#6b7280;margin-bottom:1.5rem}.recommendation-card{background:#fff;border:1px solid #e5e7eb;padding:1.5rem;transition:box-shadow .2s}.recommendation-card:hover{box-shadow:0 4px 12px #00000014}.rec-header{align-items:center;gap:1rem;margin-bottom:1rem}.rec-priority-badge{border-radius:12px;color:#fff;font-size:.75rem;font-weight:600;padding:.25rem .75rem;text-transform:uppercase}.rec-mastery{background:#f3f4f6;border-radius:12px;flex:1 1;height:24px;overflow:hidden;position:relative}.mastery-bar{border-radius:12px;height:100%;left:0;position:absolute;top:0;transition:width .3s}.mastery-text{color:#374151;font-size:.75rem;font-weight:600;position:absolute;right:.75rem;top:50%;transform:translateY(-50%)}.rec-title{color:#1f2937;font-size:1.25rem;margin:0 0 .5rem}.rec-why{color:#6b7280;font-size:.9rem;margin-bottom:1rem}.rec-lecture{background:#f8fafc;border-radius:8px;padding:1rem}.lecture-info{align-items:flex-start;display:flex;gap:.75rem;margin-bottom:.75rem}.lecture-icon{font-size:1.5rem}.lecture-details{display:flex;flex-direction:column}.lecture-title{font-size:.95rem}.lecture-section{color:#6366f1;font-size:.85rem}.lecture-excerpt{color:#4b5563;font-size:.9rem;font-style:italic;line-height:1.5;margin-bottom:1rem}.rec-actions{align-items:center;display:flex;justify-content:space-between}.read-time{color:#6b7280;font-size:.85rem}.btn-read{background:#6366f1;border-radius:8px;color:#fff;font-weight:500;padding:.5rem 1.25rem;text-decoration:none;transition:background .2s}.btn-read:hover{background:#4f46e5}.btn-primary,.btn-secondary{display:inline-block}.btn-secondary{text-decoration:none}.btn-secondary:hover{border-color:#d1d5db}.study-advice-widget{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:1.25rem}.study-advice-widget.empty,.study-advice-widget.loading{min-height:200px}.widget-header{align-items:center;margin-bottom:1rem}.widget-header h3{color:#1f2937;font-size:1rem;font-weight:600;margin:0}.see-all-link{color:#6366f1;font-size:.85rem}.widget-loading{align-items:center;display:flex;justify-content:center;padding:2rem}.loading-dots{display:flex;gap:.5rem}.loading-dots span{animation:bounce .6s infinite alternate;background:#6366f1;border-radius:50%;height:8px;width:8px}.loading-dots span:nth-child(2){animation-delay:.2s}.loading-dots span:nth-child(3){animation-delay:.4s}@keyframes bounce{0%{transform:translateY(0)}to{transform:translateY(-8px)}}.widget-empty{padding:1.5rem 1rem;text-align:center}.widget-empty .empty-icon{display:block;font-size:2rem;margin-bottom:.5rem}.widget-empty p{color:#6b7280;font-size:.9rem;margin-bottom:1rem}.widget-link{color:#6366f1;font-size:.9rem;text-decoration:none}.widget-link:hover{text-decoration:underline}.widget-recommendations{display:flex;flex-direction:column;gap:.75rem}.widget-rec-item{background:#f8fafc;border-radius:8px;padding:.75rem}.widget-rec-header{align-items:center;display:flex;gap:.5rem;margin-bottom:.5rem}.priority-dot{border-radius:50%;flex-shrink:0;height:8px;width:8px}.widget-rec-name{color:#1f2937;flex:1 1;font-size:.9rem;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.widget-rec-mastery{font-size:.85rem;font-weight:600}.widget-rec-lecture{align-items:center;display:flex;gap:.5rem;justify-content:space-between}.lecture-section-name{color:#6b7280;flex:1 1;font-size:.8rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.widget-read-btn{background:#6366f1;border-radius:6px;color:#fff;font-size:.75rem;padding:.25rem .75rem;text-decoration:none;white-space:nowrap}.widget-read-btn:hover{background:#4f46e5}.widget-footer{border-top:1px solid #e5e7eb;margin-top:1rem;padding-top:.75rem;text-align:center}.study-time{color:#6b7280;font-size:.8rem}@media (max-width:768px){.study-advice-page{padding:1rem}.study-advice-summary{flex-wrap:wrap;gap:1rem}.summary-stat{flex:1 1 45%}.rec-header{align-items:flex-start;flex-direction:column}.rec-mastery{width:100%}.rec-actions{align-items:stretch;flex-direction:column;gap:.75rem}.btn-read{text-align:center}}[data-theme=dark] .study-advice-page{background:#0000}[data-theme=dark] .study-advice-header h1{color:#f3f4f6}[data-theme=dark] .study-advice-subtitle{color:#9ca3af}[data-theme=dark] .study-advice-summary{background:linear-gradient(135deg,#252540,#2d2d4a)}[data-theme=dark] .summary-stat .stat-value{color:#f3f4f6}[data-theme=dark] .summary-stat .stat-label{color:#9ca3af}[data-theme=dark] .filter-btn.active{border-color:#6366f1}[data-theme=dark] .study-advice-empty{background:#252540}[data-theme=dark] .study-advice-empty h3{color:#f3f4f6}[data-theme=dark] .study-advice-empty p{color:#9ca3af}[data-theme=dark] .recommendation-card{background:#252540;border-color:#374151}[data-theme=dark] .recommendation-card:hover{box-shadow:0 4px 12px #0000004d}[data-theme=dark] .rec-mastery{background:#374151}[data-theme=dark] .mastery-text,[data-theme=dark] .rec-title{color:#f3f4f6}[data-theme=dark] .rec-why{color:#9ca3af}[data-theme=dark] .rec-lecture{background:#1a1a2e}[data-theme=dark] .lecture-title{color:#f3f4f6}[data-theme=dark] .lecture-excerpt{color:#d1d5db}[data-theme=dark] .read-time{color:#9ca3af}[data-theme=dark] .study-advice-widget{background:#252540;border-color:#374151}[data-theme=dark] .widget-header h3{color:#f3f4f6}[data-theme=dark] .widget-empty p{color:#9ca3af}[data-theme=dark] .widget-rec-item{background:#1a1a2e}[data-theme=dark] .widget-rec-name{color:#f3f4f6}[data-theme=dark] .lecture-section-name{color:#9ca3af}[data-theme=dark] .widget-footer{border-color:#374151}[data-theme=dark] .study-time{color:#9ca3af}[data-theme=dark] .btn-secondary{background:#252540;border-color:#374151}[data-theme=dark] .btn-secondary:hover{background:#2d2d4a;border-color:#4b5563}[data-theme=dark] .loading-dots span{background:#a5b4fc}.docs-container{background:#f8f9fa;display:flex;min-height:calc(100vh - 200px)}.docs-sidebar{background:#fff;border-right:1px solid #e5e7eb;flex-shrink:0;height:calc(100vh - 80px);overflow-y:auto;position:-webkit-sticky;position:sticky;top:0;width:280px}.docs-sidebar-header{background:linear-gradient(135deg,#3b82f6,#2563eb);border-bottom:2px solid #3b82f6;padding:1.5rem 1rem}.docs-sidebar-header h2{color:#fff;font-size:1.5rem;font-weight:700;margin:0 0 1rem}.docs-search{border:1px solid #d1d5db;border-radius:6px;font-size:.9rem;padding:.5rem .75rem;transition:all .2s;width:100%}.docs-search:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.docs-nav{padding:1rem 0}.docs-category{margin-bottom:1.5rem}.docs-category-title{color:#6b7280;font-size:.75rem;font-weight:700;letter-spacing:.05em;margin:0 0 .5rem;padding:.5rem 1rem;text-transform:uppercase}.docs-list{list-style:none;margin:0;padding:0}.docs-list li{margin:0}.docs-list li a{border-left:3px solid #0000;color:#374151;display:block;font-size:.9rem;padding:.5rem 1rem .5rem 2rem;text-decoration:none;transition:all .2s}.docs-list li a:hover{background:#f3f4f6;border-left-color:#93c5fd;color:#3b82f6}.docs-list li.active a{background:#eff6ff;border-left-color:#3b82f6;color:#3b82f6;font-weight:600}.docs-content{flex:1 1;margin:0 auto;max-width:1200px;padding:2rem 3rem}.docs-welcome{padding:2rem 0;text-align:center}.docs-welcome h1{color:#111827;font-size:2.5rem;margin-bottom:1rem}.docs-welcome-subtitle{color:#6b7280;font-size:1.25rem;margin-bottom:3rem}.docs-stats{display:flex;gap:3rem;justify-content:center;margin:3rem 0}.docs-stat{text-align:center}.docs-stat-value{color:#3b82f6;font-size:3rem;font-weight:700;margin-bottom:.5rem}.docs-stat-label{color:#6b7280;font-size:1rem;letter-spacing:.05em;text-transform:uppercase}.docs-featured{margin-top:4rem}.docs-featured h2{color:#111827;font-size:2rem;margin-bottom:2rem;text-align:center}.docs-featured-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin-top:2rem}.docs-featured-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 1px 3px #0000001a;padding:1.5rem;text-decoration:none;transition:all .3s}.docs-featured-card:hover{border-color:#3b82f6;box-shadow:0 10px 25px #3b82f626;transform:translateY(-4px)}.docs-featured-card h3{color:#111827;font-size:1.25rem;margin:0 0 .75rem}.docs-featured-card p{color:#6b7280;font-size:.95rem;margin:0}.docs-breadcrumbs{align-items:center;color:#6b7280;display:flex;font-size:.9rem;gap:.5rem;margin-bottom:2rem}.docs-breadcrumbs a{color:#3b82f6;text-decoration:none}.docs-breadcrumbs a:hover{text-decoration:underline}.breadcrumb-separator{color:#d1d5db}.docs-article{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;line-height:1.7;padding:3rem}.docs-article h1{border-bottom:2px solid #e5e7eb;font-size:2.5rem}.docs-article h1,.docs-article h2{color:#111827;margin-bottom:1rem;padding-bottom:.5rem}.docs-article h2{border-bottom:1px solid #e5e7eb;font-size:2rem;margin-top:2.5rem}.docs-article h3{color:#374151;font-size:1.5rem;margin-bottom:1rem;margin-top:2rem}.docs-article h4{color:#4b5563;font-size:1.25rem;margin-bottom:.75rem;margin-top:1.5rem}.docs-article p{color:#374151;font-size:1rem;margin-bottom:1rem}.docs-article ol,.docs-article ul{color:#374151;margin-bottom:1rem;padding-left:2rem}.docs-article li{margin-bottom:.5rem}.docs-article code{background:#f3f4f6;border-radius:3px;color:#dc2626;font-family:Monaco,Courier New,monospace;font-size:.9em;padding:.2rem .4rem}.docs-article pre{background:#1f2937;border-radius:6px;color:#f3f4f6;margin-bottom:1.5rem;overflow-x:auto;padding:1.5rem}.docs-article pre code{background:#0000;color:inherit;font-size:.9rem;padding:0}.docs-article blockquote{border-left:4px solid #3b82f6;color:#6b7280;font-style:italic;margin:1.5rem 0;padding-left:1.5rem}.docs-article table{border-collapse:collapse;margin-bottom:1.5rem;width:100%}.docs-article td,.docs-article th{border:1px solid #e5e7eb;padding:.75rem;text-align:left}.docs-article th{background:#f9fafb;color:#111827;font-weight:600}.docs-article a{color:#3b82f6;text-decoration:none}.docs-article a:hover{text-decoration:underline}.docs-article img{border-radius:6px;height:auto;margin:1.5rem 0;max-width:100%}.docs-loading{padding:4rem 2rem;text-align:center}.spinner{border:4px solid #f3f4f6;border-top-color:#3b82f6;height:50px;width:50px}.docs-loading p{color:#6b7280;font-size:1.1rem}.docs-error{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;padding:4rem 2rem;text-align:center}.docs-error h2{color:#dc2626;margin-bottom:1rem}.docs-error p{color:#6b7280;margin-bottom:2rem}.btn-back{background:#3b82f6;border-radius:6px;color:#fff;display:inline-block;text-decoration:none;transition:all .2s}.btn-back:hover{background:#2563eb;box-shadow:0 4px 12px #3b82f64d;transform:translateY(-2px)}@media (max-width:1024px){.docs-sidebar{width:240px}.docs-content{padding:1.5rem 2rem}.docs-article{padding:2rem}}@media (max-width:768px){.docs-container{flex-direction:column}.docs-sidebar{border-bottom:1px solid #e5e7eb;border-right:none;height:auto;position:static;width:100%}.docs-content{padding:1rem}.docs-article{padding:1.5rem}.docs-welcome h1{font-size:2rem}.docs-featured-grid{grid-template-columns:1fr}.docs-stat-value{font-size:2rem}}@media print{.docs-breadcrumbs,.docs-sidebar{display:none}.docs-article{box-shadow:none;padding:0}}.image-with-fallback{align-items:center;display:inline-flex;justify-content:center;position:relative}.asset-icon{border-radius:8px;object-fit:cover;transition:opacity .2s ease}.asset-icon.hidden{opacity:0;position:absolute}.asset-icon-sm,.fallback-icon.asset-icon-sm{font-size:14px;height:32px;width:32px}.asset-icon-md,.fallback-icon.asset-icon-md{font-size:18px;height:48px;width:48px}.asset-icon-lg,.fallback-icon.asset-icon-lg{font-size:24px;height:64px;width:64px}.asset-icon-xl,.fallback-icon.asset-icon-xl{font-size:36px;height:96px;width:96px}.fallback-icon{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:8px;box-shadow:0 2px 4px #667eea33;color:#fff;display:flex;font-weight:600;justify-content:center;letter-spacing:.5px;text-transform:uppercase}.fallback-icon.loading{background:linear-gradient(135deg,#e0e5ec,#d0d5dc)}.loading-pulse{animation:pulse 1.5s ease-in-out infinite;background:#ffffff80;border-radius:50%;height:50%;width:50%}.career-icon .fallback-icon{background:linear-gradient(135deg,#10b981,#059669)}.cert-icon .fallback-icon{background:linear-gradient(135deg,#8b5cf6,#6d28d9)}.topic-icon .fallback-icon{background:linear-gradient(135deg,#f59e0b,#d97706)}.fallback-icon:hover,.image-with-fallback:hover .asset-icon{transform:scale(1.05);transition:transform .2s ease}@media (max-width:768px){.asset-icon-lg,.fallback-icon.asset-icon-lg{font-size:18px;height:48px;width:48px}.asset-icon-xl,.fallback-icon.asset-icon-xl{font-size:24px;height:64px;width:64px}}.error-banner{animation:errorBannerSlideIn .3s ease-out;gap:12px}@keyframes errorBannerSlideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.error-banner-error{background:linear-gradient(135deg,#fef2f2,#fee2e2);border:1px solid #fecaca;color:#991b1b}.error-banner-warning{background:linear-gradient(135deg,#fffbeb,#fef3c7);border:1px solid #fde68a;color:#92400e}.error-banner-info{background:linear-gradient(135deg,#eff6ff,#dbeafe);border:1px solid #bfdbfe;color:#1e40af}.error-banner-icon{align-items:center;border-radius:50%;display:flex;flex-shrink:0;font-size:14px;font-weight:700;height:28px;justify-content:center;width:28px}.error-banner-icon-error{background:#ef4444;color:#fff}.error-banner-icon-warning{background:#f59e0b;color:#fff}.error-banner-icon-info{background:#3b82f6;color:#fff}.error-banner-content{flex:1 1;min-width:0}.error-banner-message{font-size:.9375rem;line-height:1.4;word-break:break-word}.error-banner-actions{align-items:center;display:flex;flex-shrink:0;gap:8px}.error-banner-btn{border-radius:6px;cursor:pointer;font-size:.875rem;font-weight:500;padding:6px 12px;transition:background .2s,transform .2s}.error-banner-btn:hover{transform:translateY(-1px)}.error-banner-btn:active{transform:translateY(0)}.error-banner-retry{background:#fff;border:1px solid;color:inherit}.error-banner-error .error-banner-retry{border-color:#dc2626;color:#dc2626}.error-banner-error .error-banner-retry:hover{background:#fee2e2}.error-banner-warning .error-banner-retry{border-color:#d97706;color:#d97706}.error-banner-warning .error-banner-retry:hover{background:#fef3c7}.error-banner-dismiss{background:#0000;border:none;color:inherit;font-size:1rem;line-height:1;opacity:.7;padding:6px 8px}.error-banner-dismiss:hover{background:#0000001a;opacity:1}@media (max-width:480px){.error-banner{flex-wrap:wrap;padding:12px}.error-banner-content{flex-basis:calc(100% - 50px)}.error-banner-actions{flex-basis:100%;justify-content:flex-end;margin-top:8px}}.download-offline-btn{align-items:center;background:#fff;border:2px solid #e5e7eb;border-radius:8px;color:#374151;cursor:pointer;display:inline-flex;font-size:.875rem;font-weight:500;gap:.5rem;padding:.5rem 1rem;transition:all .2s ease}.download-offline-btn:hover:not(:disabled){background:#f5f3ff;border-color:#8b5cf6;color:#8b5cf6}.download-offline-btn:disabled{cursor:not-allowed;opacity:.6}.download-offline-btn.downloading{background:#fffbeb;border-color:#f59e0b;color:#d97706}.download-offline-btn.downloaded{background:#ecfdf5;border-color:#10b981;color:#059669}.download-offline-btn.downloaded:hover{background:#d1fae5;border-color:#10b981;color:#059669}.download-offline-btn.compact{border-radius:50%;justify-content:center;min-height:32px;min-width:32px;padding:.4rem}.download-spinner{animation:spin-download 1s linear infinite}@keyframes spin-download{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.download-check{color:#10b981;font-weight:700}.download-icon{font-size:1rem}.download-error{color:#ef4444;font-size:.75rem;margin-left:.5rem}.content-browser{margin:0 auto;max-width:1400px;padding:2rem}.content-browser-loading{align-items:center;display:flex;flex-direction:column;gap:1rem;justify-content:center;min-height:400px}.browser-header{margin-bottom:2rem}.header-top{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.browser-header h1{color:#1a1a2e;color:var(--text-primary,#1a1a2e);font-size:2rem;font-weight:700;margin:0}.view-controls{display:flex;gap:.5rem}.view-btn{background:#f8f9fa;background:var(--surface-color,#f8f9fa);border:1px solid #e0e0e0;border:1px solid var(--border-color,#e0e0e0);border-radius:8px;cursor:pointer;padding:.5rem;transition:all .2s}.view-btn svg{fill:#6c757d;fill:var(--text-secondary,#6c757d)}.view-btn:hover{background:#e9ecef;background:var(--surface-hover,#e9ecef)}.view-btn.active{background:#6366f1;background:var(--primary-color,#6366f1);border-color:#6366f1;border-color:var(--primary-color,#6366f1)}.view-btn.active svg{fill:#fff}.breadcrumb{align-items:center;display:flex;font-size:.9rem;gap:.5rem;margin-bottom:1rem}.breadcrumb-item{color:#6c757d;color:var(--text-secondary,#6c757d);cursor:pointer;transition:color .2s}.breadcrumb-item:hover:not(.active){color:#6366f1;color:var(--primary-color,#6366f1)}.breadcrumb-item.active{color:#1a1a2e;color:var(--text-primary,#1a1a2e);cursor:default;font-weight:600}.breadcrumb-separator{color:#6c757d;color:var(--text-secondary,#6c757d)}.search-bar{align-items:center;display:flex;gap:.5rem;max-width:600px;position:relative}.search-bar input{border:2px solid #e0e0e0;border:2px solid var(--border-color,#e0e0e0);border-radius:12px;font-size:1rem;padding:.75rem 2.5rem .75rem 1rem;transition:border-color .2s;width:100%}.search-bar input:focus{border-color:#6366f1;border-color:var(--primary-color,#6366f1);outline:none}.clear-search{color:#6c757d;color:var(--text-secondary,#6c757d);font-size:1.2rem;padding:.25rem;right:.75rem;top:50%;transform:translateY(-50%)}.back-btn{color:#1a1a2e;color:var(--text-primary,#1a1a2e)}.content-grid{grid-gap:1.5rem;display:grid;gap:1.5rem}.content-grid.grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.content-grid.list{grid-template-columns:1fr}.content-card{background:#fff;border:1px solid #e0e0e0;border:1px solid var(--border-color,#e0e0e0);border-radius:16px;color:inherit;cursor:pointer;padding:1.5rem;text-decoration:none;transition:all .3s ease}.content-card:hover{border-color:#6366f1;border-color:var(--primary-color,#6366f1);box-shadow:0 8px 25px #6366f126}.content-card h3{color:#1a1a2e;color:var(--text-primary,#1a1a2e);font-size:1.1rem;font-weight:600;margin:0 0 .5rem}.card-icon{background:linear-gradient(135deg,#6366f1,#8b5cf6);background:linear-gradient(135deg,var(--primary-color,#6366f1),#8b5cf6);font-size:1.2rem;font-weight:700;margin-bottom:1rem}.card-description{font-size:.9rem;line-height:1.5;margin-bottom:.75rem}.card-count,.card-description{color:#6c757d;color:var(--text-secondary,#6c757d)}.card-count{font-size:.85rem;margin:0}.genre-card{background:linear-gradient(135deg,#f8f9ff,#fff)}.category-card{background:linear-gradient(135deg,#faf8ff,#fff)}.topic-card{background:#fff!important;cursor:default;position:relative}.topic-card .topic-header{margin-bottom:1rem}.topic-card .topic-actions{position:absolute;right:.75rem;top:.75rem;z-index:10}.topic-stats{display:flex;gap:1rem;margin-top:.5rem}.topic-stats .stat{color:#6c757d;color:var(--text-secondary,#6c757d);font-size:.9rem}.topic-stats .stat strong{color:#1a1a2e;color:var(--text-primary,#1a1a2e)}.topic-buttons{display:flex;flex-wrap:wrap;gap:.75rem}.topic-btn{align-items:center;border-radius:8px;display:inline-flex;font-size:.9rem;font-weight:500;gap:.5rem;padding:.6rem 1rem;text-decoration:none;transition:all .2s}.topic-btn .btn-icon{font-size:1rem}.topic-btn.quiz-btn{background:linear-gradient(135deg,#6366f1,#8b5cf6);background:linear-gradient(135deg,var(--primary-color,#6366f1),#8b5cf6);color:#fff}.topic-btn.quiz-btn:hover{box-shadow:0 4px 12px #6366f14d;transform:translateY(-2px)}.topic-btn.lecture-btn{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.topic-btn.lecture-btn:hover{box-shadow:0 4px 12px #10b9814d;transform:translateY(-2px)}.loading-topics{align-items:center;display:flex;flex-direction:column;gap:1rem;grid-column:1/-1;justify-content:center;padding:3rem}.filter-btn{background:#f8f9fa;background:var(--surface-color,#f8f9fa);border:1px solid #e0e0e0;border:1px solid var(--border-color,#e0e0e0);border-radius:8px;cursor:pointer;font-size:.85rem;margin-left:1rem;padding:.5rem 1rem;transition:all .2s;white-space:nowrap}.filter-btn:hover{background:#e9ecef;background:var(--surface-hover,#e9ecef)}.filter-btn.active{background:#e0e7ff;background:var(--primary-light,#e0e7ff);border-color:#6366f1;border-color:var(--primary-color,#6366f1);color:#6366f1;color:var(--primary-color,#6366f1)}.empty-state{color:#6c757d;color:var(--text-secondary,#6c757d);grid-column:1/-1}.empty-hint{font-size:.9rem;margin-top:.5rem}.show-empty-btn{background:#f8f9fa;background:var(--surface-color,#f8f9fa);border:1px solid #e0e0e0;border:1px solid var(--border-color,#e0e0e0);border-radius:8px;color:#6c757d;color:var(--text-secondary,#6c757d);cursor:pointer;font-size:.9rem;margin-top:1rem;padding:.5rem 1rem;transition:all .2s}.show-empty-btn:hover{background:#e9ecef;background:var(--surface-hover,#e9ecef);color:#1a1a2e;color:var(--text-primary,#1a1a2e)}.content-grid.list .content-card{align-items:center;display:flex;gap:1.5rem}.content-grid.list .card-icon{flex-shrink:0;margin-bottom:0}.content-grid.list .topic-stats{margin-bottom:0}.guest-cta-banner .cta-text{color:#fff}.guest-cta-banner .cta-text p{color:#94a3b8}.guest-cta-banner .cta-btn-secondary{border:1px solid #475569;color:#94a3b8}.guest-cta-banner .cta-btn-secondary:hover{border-color:#64748b;color:#fff}.subcategory-card{background:#fff;cursor:default}.subcategory-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:1rem}.subcategory-stats{display:flex;gap:.75rem}.subcategory-stats .stat{color:#6c757d;color:var(--text-secondary,#6c757d);font-size:.85rem}.subcategory-stats .stat strong{color:#1a1a2e;color:var(--text-primary,#1a1a2e)}.subcategory-buttons{display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:.75rem}.subcategory-btn{align-items:center;border-radius:8px;display:inline-flex;font-size:.9rem;font-weight:500;gap:.5rem;padding:.6rem 1rem;text-decoration:none;transition:all .2s}.subcategory-btn .btn-icon{font-size:1rem}.subcategory-btn.quiz-btn{background:linear-gradient(135deg,#6366f1,#8b5cf6);background:linear-gradient(135deg,var(--primary-color,#6366f1),#8b5cf6);color:#fff}.subcategory-btn.quiz-btn:hover{box-shadow:0 4px 12px #6366f14d;transform:translateY(-2px)}.subcategory-btn.lecture-btn{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.subcategory-btn.lecture-btn:hover{box-shadow:0 4px 12px #10b9814d;transform:translateY(-2px)}.subcategory-actions{margin-top:.5rem}.loading-subcategories{align-items:center;display:flex;flex-direction:column;gap:1rem;grid-column:1/-1;justify-content:center;padding:3rem}@media (max-width:768px){.content-browser{padding:1rem}.browser-header h1{font-size:1.5rem}.content-grid.grid{grid-template-columns:1fr}.header-top{align-items:flex-start;flex-direction:column;gap:1rem}.search-bar{max-width:100%;width:100%}.guest-cta-banner{align-items:flex-start;flex-direction:column;text-align:left}.guest-cta-banner .cta-content{align-items:flex-start;flex-direction:column;gap:12px}.guest-cta-banner .cta-actions{flex-direction:column;width:100%}.guest-cta-banner .cta-btn-primary,.guest-cta-banner .cta-btn-secondary{justify-content:center;width:100%}}[data-theme=dark] .content-browser{background:#0000}[data-theme=dark] .browser-header h1{background:linear-gradient(135deg,#a5b4fc,#c4b5fd);-webkit-background-clip:text;background-clip:text}[data-theme=dark] .browser-header .subtitle{color:#d1d5db}[data-theme=dark] .content-card{background:#252540;border-color:#374151}[data-theme=dark] .content-card:hover{border-color:#6366f1;box-shadow:0 8px 25px #6366f140}[data-theme=dark] .content-card h3{color:#f3f4f6}[data-theme=dark] .card-description{color:#d1d5db}[data-theme=dark] .card-count{color:#9ca3af}[data-theme=dark] .genre-card{background:linear-gradient(135deg,#2a2a4a,#252540)}[data-theme=dark] .category-card{background:linear-gradient(135deg,#2d2a4a,#252540)}[data-theme=dark] .topic-card{background:#252540!important}[data-theme=dark] .topic-card h3{color:#f3f4f6}[data-theme=dark] .search-container input{background:#1a1a2e;border-color:#374151;color:#f3f4f6}[data-theme=dark] .search-container input::placeholder{color:#6b7280}[data-theme=dark] .filter-btn:hover{border-color:#6366f1}[data-theme=dark] .view-toggle button{background:#252540;border-color:#374151;color:#d1d5db}[data-theme=dark] .view-toggle button.active{background:#6366f1;color:#fff}[data-theme=dark] .breadcrumb{color:#9ca3af}[data-theme=dark] .breadcrumb a{color:#a5b4fc}[data-theme=dark] .breadcrumb a:hover{color:#c4b5fd}[data-theme=dark] .stat-badge{background:#6366f133;color:#a5b4fc}.curriculum-browser{margin:0 auto;max-width:1400px;padding:2rem}.curriculum-loading{align-items:center;display:flex;flex-direction:column;gap:1rem;justify-content:center;min-height:400px}.loading-spinner{border:3px solid var(--border-color,#e0e0e0);border-top-color:var(--primary-color,#6366f1)}.curriculum-header{border-bottom:1px solid #e0e0e0;border-bottom:1px solid var(--border-color,#e0e0e0);margin-bottom:2rem;padding-bottom:1.5rem}.curriculum-header h1{color:#111827;font-size:2rem;font-weight:700;margin:0 0 .5rem}.header-subtitle{color:#6c757d;color:var(--text-secondary,#6c757d)}.country-selector{align-items:center;background:#f8f9fa;background:var(--surface-color,#f8f9fa);border:1px solid #e0e0e0;border:1px solid var(--border-color,#e0e0e0);border-radius:10px;display:flex;gap:.75rem;margin-top:1rem;padding:.75rem 1rem}.country-selector label{color:#111827;font-size:.95rem;font-weight:600;white-space:nowrap}.country-dropdown{background:#fff;border:2px solid #e0e0e0;border:2px solid var(--border-color,#e0e0e0);border-radius:8px;color:#111827;cursor:pointer;flex:1 1;font-size:.95rem;max-width:400px;min-width:200px;padding:.6rem 1rem;transition:border-color .2s,box-shadow .2s}.country-dropdown:focus,.country-dropdown:hover{border-color:#6366f1;border-color:var(--primary-color,#6366f1)}.country-dropdown:focus{box-shadow:0 0 0 3px #6366f126;outline:none}.coverage-overview{background:linear-gradient(135deg,#f0f4ff,#fff);border:1px solid #e0e0e0;border:1px solid var(--border-color,#e0e0e0);border-radius:12px;display:flex;gap:2rem;margin-top:1.5rem;padding:1rem 1.5rem}.coverage-stat{align-items:center;display:flex;flex-direction:column}.coverage-stat .stat-value{color:#6366f1;color:var(--primary-color,#6366f1);font-size:1.75rem;font-weight:700}.coverage-stat .stat-label{color:#6c757d;color:var(--text-secondary,#6c757d);font-size:.85rem}.curriculum-filters{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1.5rem}.search-box input{border:2px solid #e0e0e0;border:2px solid var(--border-color,#e0e0e0);border-radius:10px;font-size:1rem;min-width:250px;padding:.75rem 1rem;transition:border-color .2s}.search-box input:focus{border-color:var(--primary-color,#6366f1)}.grade-filters{display:flex;flex-wrap:wrap;gap:.5rem}.grade-btn{background:#f8f9fa;background:var(--surface-color,#f8f9fa);border:1px solid #e0e0e0;border:1px solid var(--border-color,#e0e0e0);border-radius:8px;font-size:.9rem;padding:.5rem 1rem;transition:all .2s}.grade-btn:hover{background:#e9ecef;background:var(--surface-hover,#e9ecef)}.grade-btn.active{background:#6366f1;background:var(--primary-color,#6366f1);border-color:#6366f1;border-color:var(--primary-color,#6366f1);color:#fff}.code-group-filters{align-items:center;border-top:1px solid #e0e0e0;border-top:1px solid var(--border-color,#e0e0e0);display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.5rem;padding-top:.75rem;width:100%}.code-group-filters .filter-label{color:#6c757d;color:var(--text-secondary,#6c757d);font-size:.85rem;font-weight:600;margin-right:.5rem}.code-group-btn{background:#f8f9fa;background:var(--surface-color,#f8f9fa);border:1px solid #e0e0e0;border:1px solid var(--border-color,#e0e0e0);border-radius:16px;cursor:pointer;font-size:.8rem;padding:.35rem .75rem;transition:all .2s;white-space:nowrap}.code-group-btn:hover{background:#e9ecef;background:var(--surface-hover,#e9ecef);border-color:#6366f1;border-color:var(--primary-color,#6366f1)}.code-group-btn.active{background:linear-gradient(135deg,#10b981,#059669);border-color:#0000;color:#fff}.back-btn{align-items:center;background:#f8f9fa;background:var(--surface-color,#f8f9fa);border:1px solid #e0e0e0;border:1px solid var(--border-color,#e0e0e0);border-radius:8px;color:#111827;cursor:pointer;display:inline-flex;font-size:.9rem;gap:.5rem;margin-bottom:1.5rem;transition:all .2s}.back-btn:hover{background:#e9ecef;background:var(--surface-hover,#e9ecef)}.subject-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}.subject-card{background:#fff;border:1px solid #e0e0e0;border:1px solid var(--border-color,#e0e0e0);border-radius:16px;cursor:pointer;padding:1.5rem;position:relative;transition:all .3s ease}.subject-card:hover{border-color:#6366f1;border-color:var(--primary-color,#6366f1);box-shadow:0 8px 25px #6366f126}.subject-icon{align-items:center;background:linear-gradient(135deg,#6366f1,#8b5cf6);background:linear-gradient(135deg,var(--primary-color,#6366f1),#8b5cf6);border-radius:14px;color:#fff;display:flex;font-size:1.25rem;font-weight:700;height:56px;justify-content:center;margin-bottom:1rem;width:56px}.subject-card h3{color:#111827;font-size:1.1rem;font-weight:600;margin:0 0 .5rem}.standard-count{color:#6c757d;color:var(--text-secondary,#6c757d);font-size:.9rem;margin:0}.universal-badge{background:linear-gradient(135deg,#a855f7,#6366f1);border-radius:20px;color:#fff;font-size:.75rem;font-weight:600;padding:.25rem .75rem;position:absolute;right:1rem;top:1rem}.standards-list{max-width:800px}.standards-list h2{color:#111827;font-size:1.5rem;margin:0 0 .5rem}.standards-count{color:#6c757d;color:var(--text-secondary,#6c757d);font-size:.9rem;margin:0 0 1.5rem}.standard-card{background:#fff;border:1px solid #e0e0e0;border:1px solid var(--border-color,#e0e0e0);border-radius:12px;margin-bottom:1rem;padding:1.25rem;transition:all .2s}.standard-card:hover{border-color:#6366f1;border-color:var(--primary-color,#6366f1)}.standard-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.5rem}.standard-code{background:#f8f9fa;background:var(--surface-color,#f8f9fa);border-radius:4px;color:#6366f1;color:var(--primary-color,#6366f1);font-family:monospace;font-size:.85rem;padding:.25rem .5rem}.standard-grade{color:#6c757d;color:var(--text-secondary,#6c757d);font-size:.85rem}.standard-card h4{color:#111827;font-size:1rem;font-weight:600;margin:0 0 .5rem}.standard-description{color:#6c757d;color:var(--text-secondary,#6c757d);font-size:.9rem;line-height:1.5;margin:0 0 1rem}.study-btn{background:linear-gradient(135deg,#6366f1,#8b5cf6);background:linear-gradient(135deg,var(--primary-color,#6366f1),#8b5cf6);border-radius:8px;color:#fff;display:inline-block;font-size:.9rem;font-weight:500;padding:.5rem 1rem;text-decoration:none;transition:transform .2s}.study-btn:hover{transform:scale(1.05)}.no-standards{color:#6c757d;color:var(--text-secondary,#6c757d);padding:3rem;text-align:center}@media (max-width:768px){.curriculum-browser{padding:1rem}.curriculum-header h1{font-size:1.5rem}.country-selector{align-items:stretch;flex-direction:column}.country-dropdown{max-width:none;width:100%}.coverage-overview{align-items:flex-start;flex-direction:column;gap:1rem}.subject-grid{grid-template-columns:1fr}.curriculum-filters{flex-direction:column}.search-box input{min-width:auto;width:100%}.code-group-filters,.grade-filters{overflow-x:auto;padding-bottom:.5rem}.code-group-filters{flex-wrap:nowrap}}[data-theme=dark] .curriculum-browser{background:#0000}[data-theme=dark] .curriculum-browser .curriculum-header{border-color:#374151}[data-theme=dark] .curriculum-browser .curriculum-header h1{color:#f3f4f6}[data-theme=dark] .curriculum-browser .header-subtitle{color:#d1d5db}[data-theme=dark] .curriculum-browser .country-selector{background:#252540;border-color:#374151}[data-theme=dark] .curriculum-browser .country-selector label{color:#f3f4f6}[data-theme=dark] .curriculum-browser .country-dropdown{background:#1a1a2e;border-color:#374151;color:#f3f4f6}[data-theme=dark] .curriculum-browser .country-dropdown:focus,[data-theme=dark] .curriculum-browser .country-dropdown:hover{border-color:#6366f1}[data-theme=dark] .curriculum-browser .coverage-overview{background:linear-gradient(135deg,#2a2a4a,#252540);border-color:#374151}[data-theme=dark] .curriculum-browser .coverage-stat .stat-label{color:#d1d5db}[data-theme=dark] .curriculum-browser .search-box input{background:#1a1a2e;border-color:#374151;color:#f3f4f6}[data-theme=dark] .curriculum-browser .search-box input::placeholder{color:#6b7280}[data-theme=dark] .curriculum-browser .grade-btn{background:#252540;border-color:#374151;color:#d1d5db}[data-theme=dark] .curriculum-browser .grade-btn:hover{background:#2d2d4a}[data-theme=dark] .curriculum-browser .grade-btn.active{background:#6366f1;border-color:#6366f1;color:#fff}[data-theme=dark] .curriculum-browser .code-group-filters{border-color:#374151}[data-theme=dark] .curriculum-browser .code-group-filters .filter-label{color:#d1d5db}[data-theme=dark] .curriculum-browser .code-group-btn{background:#252540;border-color:#374151;color:#d1d5db}[data-theme=dark] .curriculum-browser .code-group-btn:hover{background:#2d2d4a;border-color:#6366f1}[data-theme=dark] .curriculum-browser .back-btn{background:#252540;border-color:#374151;color:#f3f4f6}[data-theme=dark] .curriculum-browser .back-btn:hover{background:#2d2d4a}[data-theme=dark] .curriculum-browser .subject-card{background:#252540;border-color:#374151}[data-theme=dark] .curriculum-browser .subject-card:hover{border-color:#6366f1;box-shadow:0 8px 25px #6366f133}[data-theme=dark] .curriculum-browser .subject-card h3{color:#f3f4f6}[data-theme=dark] .curriculum-browser .standard-count{color:#9ca3af}[data-theme=dark] .curriculum-browser .standards-list h2{color:#f3f4f6}[data-theme=dark] .curriculum-browser .standards-count{color:#9ca3af}[data-theme=dark] .curriculum-browser .standard-card{background:#252540;border-color:#374151}[data-theme=dark] .curriculum-browser .standard-card:hover{border-color:#6366f1}[data-theme=dark] .curriculum-browser .standard-code{background:#1a1a2e;color:#a5b4fc}[data-theme=dark] .curriculum-browser .standard-grade{color:#9ca3af}[data-theme=dark] .curriculum-browser .standard-card h4{color:#f3f4f6}[data-theme=dark] .curriculum-browser .standard-description{color:#d1d5db}[data-theme=dark] .curriculum-browser .no-standards{color:#9ca3af}[data-theme=dark] .curriculum-browser .curriculum-loading{color:#d1d5db}[data-theme=dark] .curriculum-browser .loading-spinner{border-color:#a5b4fc #374151 #374151}.topic-filter-bar{background:linear-gradient(135deg,#1e293b,#0f172a);border:1px solid #6366f133;border-radius:12px;margin-bottom:1.5rem;padding:1rem 1.25rem}.filter-controls{align-items:flex-end;flex-wrap:wrap;gap:1rem}.filter-group{display:flex;flex-direction:column;gap:.375rem;min-width:160px}.filter-group label{color:#94a3b8;font-size:.7rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.filter-group select{background:#0f172acc;border:1px solid #6366f14d;border-radius:8px;color:#e2e8f0;cursor:pointer;font-size:.875rem;min-width:160px;padding:.5rem .75rem;transition:all .2s ease}.filter-group select:hover{background:#1e293bcc;border-color:#6366f180}.filter-group select:focus{border-color:#6366f1;box-shadow:0 0 0 3px #6366f133;outline:none}.filter-group select:disabled{cursor:not-allowed;opacity:.5}.filter-group.toggle{min-width:auto}.toggle-label{align-items:center;color:#e2e8f0;cursor:pointer;display:flex;font-size:.875rem;font-weight:400;gap:.5rem;padding:.5rem 0;text-transform:none}.toggle-label input[type=checkbox]{accent-color:#6366f1;cursor:pointer;height:18px;width:18px}.clear-filters-btn{background:#ef44441a;border:1px solid #ef44444d;border-radius:8px;color:#f87171;cursor:pointer;font-size:.875rem;font-weight:500;margin-left:auto;padding:.5rem 1rem;transition:all .2s ease}.clear-filters-btn:hover{background:#ef444433;border-color:#ef444480}.active-filters{border-top:1px solid #6366f11a;display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.75rem;padding-top:.75rem}.filter-pill{align-items:center;border-radius:20px;display:inline-flex;font-size:.8125rem;font-weight:500;gap:.5rem;padding:.375rem .75rem;transition:all .2s ease}.filter-pill.country{background:linear-gradient(135deg,#22c55e26,#22c55e0d);border:1px solid #22c55e4d;color:#4ade80}.filter-pill.career{background:linear-gradient(135deg,#3b82f626,#3b82f60d);border:1px solid #3b82f64d;color:#60a5fa}.filter-pill .pill-icon{font-size:.875rem}.filter-pill .pill-note{font-size:.75rem;font-style:italic;opacity:.7}.filter-pill button{background:none;border:none;color:inherit;cursor:pointer;font-size:1rem;font-weight:700;margin-left:.25rem;opacity:.7;padding:0 .25rem;transition:opacity .2s ease}.filter-pill button:hover{opacity:1}@media (max-width:768px){.topic-filter-bar{padding:1rem}.filter-controls{align-items:stretch;flex-direction:column;gap:.75rem}.filter-group,.filter-group select{min-width:0;min-width:auto;width:100%}.filter-group.toggle{align-items:center;flex-direction:row}.clear-filters-btn{margin-left:0;width:100%}.active-filters{justify-content:center}}@media (min-width:769px) and (max-width:1024px){.filter-group,.filter-group select{min-width:140px}}.topic-actions-container{position:relative;width:100%}.topic-actions{border-top:1px solid #e5e7eb;border-top:1px solid var(--border-color,#e5e7eb);display:flex;gap:8px;margin-top:12px;padding:8px 0}.action-btn{background:#0000;border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);color:#666;color:var(--text-secondary,#666);font-size:.85rem;gap:6px;justify-content:center;padding:8px 12px;transition:all .2s ease}.action-btn:hover{border-color:#8b5cf6;border-color:var(--primary-color,#8b5cf6);color:#8b5cf6;color:var(--primary-color,#8b5cf6)}.action-btn:disabled{opacity:.6}.action-icon{font-size:1rem}.action-label{font-weight:500}.focus-btn.active{background:#ede9fe;background:var(--primary-light,#ede9fe);border-color:#8b5cf6;border-color:var(--primary-color,#8b5cf6);color:#8b5cf6;color:var(--primary-color,#8b5cf6)}.focus-btn.active .action-icon{color:#f59e0b}.streak-mini{background:linear-gradient(135deg,#f97316,#ea580c);border-radius:10px;color:#fff;font-size:.7rem;margin-left:4px;padding:2px 6px}.skip-btn.active{background:#d1fae5;background:var(--success-light,#d1fae5);border-color:#10b981;border-color:var(--success-color,#10b981)}.skip-btn.active,.skip-btn.active .action-icon{color:#10b981;color:var(--success-color,#10b981)}.focus-modal-backdrop{align-items:center;background:#0006;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.focus-modal{background:#fff;background:var(--surface-color,#fff);border-radius:16px;box-shadow:0 20px 60px #00000026;max-width:400px;overflow:hidden;width:100%}.modal-header{position:relative}.modal-header h3{color:#666;color:var(--text-secondary,#666);font-size:.85rem;font-weight:500;letter-spacing:.5px;margin:0 0 4px;text-transform:uppercase}.modal-header .topic-name{color:#1a1a2e;color:var(--text-primary,#1a1a2e);display:block;font-size:1.25rem;font-weight:600;padding-right:40px}.close-btn{background:#0000;border:none;border-radius:8px;color:#666;color:var(--text-secondary,#666);cursor:pointer;padding:8px;position:absolute;right:16px;top:16px;transition:background .2s ease}.close-btn:hover{background:#f8f9fa;background:var(--surface-secondary,#f8f9fa)}.streak-display{align-items:center;background:linear-gradient(135deg,#fff7ed,#fef3c7);border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--border-color,#e5e7eb);display:flex;gap:8px;justify-content:center;padding:16px}.streak-icon{animation:pulse 1.5s infinite;font-size:1.5rem}.streak-count{color:#ea580c;font-size:2rem}.streak-label{color:#9a3412}.modal-description{color:#666;color:var(--text-secondary,#666);line-height:1.5;margin:0 0 20px}.option-row{align-items:flex-start;background:#f8f9fa;background:var(--surface-secondary,#f8f9fa);border-radius:8px;cursor:pointer;display:flex;gap:12px;margin-bottom:16px;padding:12px;transition:background .2s ease}.option-row:hover{background:#ede9fe;background:var(--primary-light,#ede9fe)}.option-row input[type=checkbox]{accent-color:#8b5cf6;accent-color:var(--primary-color,#8b5cf6);height:20px;margin-top:2px;width:20px}.option-text{flex:1 1}.option-text strong{color:#1a1a2e;color:var(--text-primary,#1a1a2e);display:block;margin-bottom:2px}.option-text small{color:#666;color:var(--text-secondary,#666);font-size:.85rem}.primary-btn{background:#8b5cf6;background:var(--primary-color,#8b5cf6);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:500;padding:12px 20px;transition:background .2s ease;width:100%}.primary-btn:hover{background:#7c3aed;background:var(--primary-dark,#7c3aed)}.modal-actions{flex-direction:column}.danger-btn{background:#0000;border:1px solid #dc2626;border-radius:8px;color:#dc2626;cursor:pointer;font-size:1rem;font-weight:500;padding:12px 20px;transition:all .2s ease;width:100%}.danger-btn:hover{background:#fee2e2}@media (max-width:480px){.topic-actions{flex-direction:column}.focus-modal{margin:0 10px;max-width:100%}}@media (prefers-color-scheme:dark){.focus-modal{background:#1e1e2e;background:var(--surface-color-dark,#1e1e2e)}.streak-display{background:linear-gradient(135deg,#422006,#451a03)}.option-row{background:#2a2a3e;background:var(--surface-secondary-dark,#2a2a3e)}.option-row:hover{background:#7c3aed;background:var(--primary-dark,#7c3aed)}}.practice-landing{background:#1f2937;border-radius:16px;margin:0 auto;max-width:1200px;min-height:calc(100vh - 200px);padding:24px}.practice-landing-wrapper{background:#111827;min-height:100vh;padding:24px}.practice-error,.practice-loading{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:400px;text-align:center}.loading-spinner{border:4px solid #374151;border-top-color:#667eea;margin-bottom:16px}.practice-error h2{color:#ef4444;margin-bottom:12px}.retry-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;margin-top:16px;padding:12px 24px;transition:transform .2s,box-shadow .2s}.retry-btn:hover{box-shadow:0 4px 12px #667eea66;transform:translateY(-2px)}.practice-hero{background:linear-gradient(135deg,#1a1a2e,#16213e);border:1px solid #374151;border-radius:16px;margin-bottom:32px;padding:48px 24px;text-align:center}.hero-content h1{color:#f9fafb;font-size:36px;margin:0 0 12px}.hero-content p{color:#9ca3af;font-size:18px;margin:0 0 24px}.quick-start-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:12px;box-shadow:0 4px 20px #667eea4d;color:#fff;cursor:pointer;font-size:18px;font-weight:600;padding:16px 48px;transition:all .3s}.quick-start-btn:hover{box-shadow:0 6px 24px #667eea80}.guest-cta-banner{background:linear-gradient(135deg,#1e3a5f,#0d2137);border:1px solid #3b82f6;margin-bottom:24px}.guest-cta-banner .cta-icon{font-size:32px}.guest-cta-banner .cta-text strong{color:#f9fafb}.guest-cta-banner .cta-text p{color:#9ca3af}.guest-cta-banner .cta-btn-primary{background:linear-gradient(135deg,#3b82f6,#2563eb);padding:10px 24px}.guest-cta-banner .cta-btn-primary:hover{background:linear-gradient(135deg,#2563eb,#1d4ed8)}.guest-cta-banner .cta-btn-secondary{background:#0000;border:1px solid #4b5563;color:#d1d5db;padding:10px 24px}.guest-cta-banner .cta-btn-secondary:hover{background:#ffffff0d;border-color:#6b7280}@media (max-width:600px){.guest-cta-banner,.guest-cta-banner .cta-content{flex-direction:column;text-align:center}.guest-cta-banner .cta-actions{justify-content:center;width:100%}}.stats-section{margin-bottom:32px}.stats-header{flex-wrap:wrap;gap:12px;margin-bottom:20px}.stats-header h2{color:#f9fafb;font-size:24px;font-weight:600}.local-stats-notice{align-items:center;background:#f59e0b26;border:1px solid #f59e0b4d;border-radius:20px;display:flex;font-size:13px;gap:8px;padding:6px 12px}.local-stats-notice .notice-icon{font-size:14px}.local-stats-notice .notice-text{color:#fbbf24;font-weight:500}.local-stats-notice .notice-link{color:#3b82f6;font-weight:500;margin-left:4px;text-decoration:none}.local-stats-notice .notice-link:hover{text-decoration:underline}.synced-stats-badge{align-items:center;background:#10b98126;border:1px solid #10b9814d;border-radius:20px;color:#34d399;display:flex;font-size:13px;font-weight:500;gap:6px;padding:6px 12px}.synced-stats-badge .badge-icon{font-size:12px}@media (max-width:900px){.stats-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:500px){.stats-grid{grid-template-columns:1fr}}.stat-card{transition:transform .2s,box-shadow .2s}.stat-card:hover{background:#f9fafb;box-shadow:0 8px 24px #00000026;transform:translateY(-4px)}.stats-empty-state{background:#667eea1a;border:1px dashed #667eea4d;border-radius:8px;margin-bottom:16px;padding:12px 20px;text-align:center}.stats-empty-state p{color:#9ca3af;font-size:14px;margin:0}.stat-icon{font-size:28px;margin-bottom:8px}.stat-value{font-size:32px;margin-bottom:4px}.stat-label{font-size:14px}.stat-card.accuracy .stat-value{color:#10b981}.stat-card.streak .stat-value{color:#f59e0b}.accuracy-bar{background:#374151;border-radius:3px;height:6px;margin-top:12px;overflow:hidden}.accuracy-fill{background:linear-gradient(90deg,#10b981,#34d399);border-radius:3px;height:100%;transition:width .5s ease}.achievements-section{background:#3d4351;border:1px solid #4b5563;border-radius:12px;margin-bottom:32px;padding:24px}.section-header h2{color:#f9fafb;font-size:20px;font-weight:600}.see-all-link{color:#667eea;font-size:14px;font-weight:500;text-decoration:none}.see-all-link:hover{text-decoration:underline}.achievement-progress{border-top:1px solid #374151;color:#9ca3af;font-size:14px;margin-top:16px;padding-top:12px}.recommendations-section{margin-bottom:32px}.recommendations-section h2{color:#f9fafb;font-size:24px;font-weight:600;margin:0 0 8px}.section-subtitle{color:#9ca3af;font-size:14px;margin:0 0 20px}.recommendations-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(3,1fr)}@media (max-width:900px){.recommendations-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:600px){.recommendations-grid{grid-template-columns:1fr}}.recommendation-card{background:#3d4351;border:1px solid #4b5563;border-radius:12px;cursor:pointer;padding:20px;transition:all .2s}.recommendation-card:hover{background:#454b5a;border-color:#667eea;box-shadow:0 8px 24px #667eea33;transform:translateY(-4px)}.rec-header{align-items:flex-start;display:flex;gap:12px;margin-bottom:8px}.rec-icon{flex-shrink:0}.rec-title-wrap{align-items:flex-start;display:flex;flex:1 1;justify-content:space-between;min-width:0}.rec-header h3{color:#f9fafb;flex:1 1;font-size:16px;font-weight:600;margin:0}.rec-count{background:#667eea1a;border-radius:4px;color:#667eea;font-size:12px;font-weight:500;margin-left:8px;padding:4px 8px;white-space:nowrap}.rec-description{color:#9ca3af;font-size:14px;line-height:1.4;margin:0 0 16px}.rec-footer{align-items:center;display:flex;justify-content:space-between}.rec-quizzes{color:#6b7280;font-size:12px}.start-btn{background:linear-gradient(135deg,#667eea,#764ba2);font-size:13px;padding:8px 16px;transition:transform .2s}.start-btn:hover{transform:scale(1.05)}.browse-section{margin-bottom:32px}.browse-section h2{color:#f9fafb;font-size:24px;font-weight:600;margin:0 0 16px}.search-bar{margin-bottom:20px}.search-input{background:#2d323c;border:1px solid #374151;color:#f9fafb;font-size:15px;max-width:400px;padding:12px 16px}.search-input::placeholder{color:#6b7280}.topics-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(4,1fr)}@media (max-width:1000px){.topics-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:700px){.topics-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:500px){.topics-grid{grid-template-columns:1fr}}.topic-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;cursor:pointer;padding:16px;transition:all .2s}.topic-card:hover{background:#f9fafb;border-color:#667eea}.topic-card h4{color:#1f2937;font-size:14px;font-weight:600;margin:0 0 8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topic-meta{color:#6b7280;display:flex;font-size:12px;gap:12px}.topic-card-content{cursor:pointer}.topic-card.is-focused{background:#8b5cf61a;border-color:#8b5cf6}.topic-card.is-focused:hover{background:#8b5cf626;border-color:#a78bfa}.topic-streak-badge{align-items:center;background:linear-gradient(135deg,#f97316,#ea580c);border-radius:12px;color:#fff;display:inline-flex;font-size:11px;font-weight:600;gap:4px;margin-top:8px;padding:4px 8px}.browse-more{margin-top:20px;text-align:center}.browse-all-btn{background:#0000;border:1px solid #667eea;border-radius:8px;color:#667eea;display:inline-block;font-weight:500;padding:12px 24px;text-decoration:none;transition:all .2s}.browse-all-btn:hover{background:#667eea1a}.focus-section{margin-bottom:32px}.focus-section h2{color:#f9fafb;font-size:24px;font-weight:600;margin:0 0 8px}.focus-cards{grid-template-columns:repeat(2,1fr)}@media (max-width:700px){.focus-cards{grid-template-columns:1fr}}.focus-card{background:#3d4351;border:1px solid #4b5563}.focus-card.needs-work{border-left:4px solid #f59e0b}.focus-card.doing-well{border-left:4px solid #10b981}.focus-icon{font-size:24px;margin-bottom:8px}.focus-card.needs-work .focus-icon{color:#f59e0b}.focus-card.doing-well .focus-icon{color:#10b981}.focus-card h4{color:#f9fafb;font-size:16px;font-weight:600;margin:0 0 8px}.focus-card p{color:#9ca3af;font-size:14px;margin:0 0 12px}.focus-card ul{list-style:none;margin:0;padding:0}.focus-card li{border-bottom:1px solid #ffffff0d;color:#e5e7eb;font-size:14px;padding:6px 0}.focus-card li:last-child{border-bottom:none}.career-filter-header{background:linear-gradient(135deg,#1e1b4b,#312e81);border:1px solid #4c1d95;border-radius:12px;margin-bottom:16px;padding:20px 24px}.career-filter-content{gap:16px;justify-content:space-between}.career-filter-content,.career-filter-info{align-items:center;display:flex;flex-wrap:wrap}.career-filter-info{gap:12px}.filter-label{color:#a78bfa;font-size:13px;font-weight:500}.career-filter-name{color:#f9fafb;font-size:22px;font-weight:700;margin:0}.career-filter-category{background:#8b5cf633;border-radius:20px;color:#c4b5fd;font-size:14px;padding:4px 12px}.clear-filter-btn{align-items:center;background:#0000;border:1px solid #8b5cf6;border-radius:8px;color:#c4b5fd;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:6px;padding:10px 18px;transition:all .2s}.clear-filter-btn:hover{background:#8b5cf633;color:#f9fafb}.clear-filter-btn svg{flex-shrink:0}.career-filter-stats{border-top:1px solid #8b5cf64d;display:flex;gap:24px;margin-top:12px;padding-top:12px}.career-filter-stats .stat{color:#c4b5fd;font-size:14px}.career-skills-section{margin-bottom:32px}.career-skills-section h2{color:#f9fafb;font-size:24px;font-weight:600;margin:0 0 8px}.skill-group{margin-bottom:28px}.skill-group-title{align-items:center;color:#c4b5fd;display:flex;font-size:16px;font-weight:600;gap:8px;margin:0 0 16px}.skill-group-title:after{background:linear-gradient(90deg,#8b5cf64d,#0000);content:"";flex:1 1;height:1px}.career-skills-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(3,1fr)}.career-skills-grid.compact{gap:12px;grid-template-columns:repeat(4,1fr)}@media (max-width:1000px){.career-skills-grid{grid-template-columns:repeat(2,1fr)}.career-skills-grid.compact{grid-template-columns:repeat(3,1fr)}}@media (max-width:700px){.career-skills-grid,.career-skills-grid.compact{grid-template-columns:repeat(2,1fr)}}@media (max-width:500px){.career-skills-grid,.career-skills-grid.compact{grid-template-columns:1fr}}.career-skill-card{background:#3d4351;border:1px solid #4b5563;border-radius:12px;cursor:pointer;padding:20px;transition:all .2s}.career-skill-card:hover{box-shadow:0 8px 24px #0003;transform:translateY(-4px)}.career-skill-card.core{background:linear-gradient(135deg,#3d4351,#4a3f6b);border-left:4px solid #8b5cf6}.career-skill-card.core:hover{border-color:#a78bfa;box-shadow:0 8px 24px #8b5cf633}.career-skill-card.recommended{border-left:4px solid #10b981}.career-skill-card.recommended:hover{border-color:#34d399;box-shadow:0 8px 24px #10b98133}.career-skill-card.helpful{border-left:2px solid #6b7280;padding:14px 16px}.career-skill-card.helpful:hover{border-color:#9ca3af}.skill-header{gap:12px;margin-bottom:10px}.skill-icon{flex-shrink:0}.skill-title-wrap{flex:1 1;min-width:0}.skill-title-wrap h3{color:#f9fafb;font-size:16px;font-weight:600;margin:0 0 6px}.relevance-badge{align-items:center;border-radius:4px;display:inline-flex;font-size:11px;font-weight:600;letter-spacing:.5px;padding:3px 8px;text-transform:uppercase}.skill-description{color:#9ca3af;font-size:13px;line-height:1.4;margin:0 0 14px}.skill-footer{align-items:center;display:flex;gap:12px}.skill-questions,.skill-quizzes{color:#6b7280;font-size:12px}.skill-footer .start-btn{margin-left:auto}.career-skill-card.helpful h4{color:#e5e7eb;font-size:14px;font-weight:600;margin:0 0 8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.career-skill-card.helpful .skill-meta{align-items:center;display:flex;justify-content:space-between}.career-skill-card.helpful .skill-meta span{color:#6b7280;font-size:12px}.start-btn-small{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:12px;font-weight:500;padding:5px 12px;transition:transform .2s}.start-btn-small:hover{transform:scale(1.05)}[data-theme=dark] .practice-landing{background:#0000}[data-theme=dark] .practice-header h1{color:#f3f4f6}[data-theme=dark] .practice-header .subtitle{color:#d1d5db}[data-theme=dark] .practice-section h2,[data-theme=dark] .practice-section h3,[data-theme=dark] .practice-section h4,[data-theme=dark] .section-header h2,[data-theme=dark] .section-header h3,[data-theme=dark] .section-header h4,[data-theme=dark] h4{color:#f3f4f6}[data-theme=dark] .practice-section p,[data-theme=dark] .section-header p{color:#d1d5db}[data-theme=dark] .practice-card,[data-theme=dark] .quiz-card,[data-theme=dark] .topic-card{background:#252540;border-color:#374151}[data-theme=dark] .practice-card:hover,[data-theme=dark] .quiz-card:hover,[data-theme=dark] .topic-card:hover{border-color:#6366f1;box-shadow:0 8px 25px #6366f133}[data-theme=dark] .practice-card h3,[data-theme=dark] .practice-card h4,[data-theme=dark] .quiz-card h3,[data-theme=dark] .quiz-card h4,[data-theme=dark] .topic-card h3,[data-theme=dark] .topic-card h4{color:#f3f4f6}[data-theme=dark] .practice-card p,[data-theme=dark] .quiz-card p,[data-theme=dark] .topic-card p{color:#d1d5db}[data-theme=dark] .category-label,[data-theme=dark] .subject-label{color:#9ca3af}[data-theme=dark] .curriculum-section{background:#252540;border-color:#374151}[data-theme=dark] .curriculum-section h4{color:#f3f4f6}[data-theme=dark] .curriculum-item{background:#1a1a2e;border-color:#374151}[data-theme=dark] .curriculum-item:hover{border-color:#6366f1}[data-theme=dark] .curriculum-item h4,[data-theme=dark] .curriculum-item h5{color:#f3f4f6}[data-theme=dark] .curriculum-item p{color:#d1d5db}[data-theme=dark] .empty-state{background:#252540}[data-theme=dark] .empty-state h3{color:#f3f4f6}[data-theme=dark] .empty-state p{color:#d1d5db}[data-theme=dark] .btn-secondary{border-color:#6b7280;color:#f3f4f6}[data-theme=dark] .btn-secondary:hover{border-color:#9ca3af}[data-theme=dark] .filter-btn{background:#252540;border-color:#374151;color:#d1d5db}[data-theme=dark] .filter-btn:hover{background:#2d2d4a}[data-theme=dark] .filter-btn.active{background:#6366f1;color:#fff}[data-theme=dark] input[type=search],[data-theme=dark] input[type=text]{background:#1a1a2e;border-color:#374151;color:#f3f4f6}[data-theme=dark] input::placeholder{color:#6b7280}[data-theme=dark] .loading-state{color:#d1d5db}.slide-preview{font-family:Inter,-apple-system,sans-serif;margin:0 auto;max-width:1200px;padding:2rem}.slide-preview-empty,.slide-preview-error,.slide-preview-loading{align-items:center;color:#6b7280;display:flex;flex-direction:column;justify-content:center;min-height:400px}.slide-preview-error{color:#ef4444}.slide-header{align-items:center;border-bottom:2px solid #e5e7eb;display:flex;justify-content:space-between;margin-bottom:2rem;padding-bottom:1rem}.slide-header h2{color:#1f2937;font-size:1.5rem;font-weight:600;margin:0}.slide-controls{align-items:center;display:flex;gap:1rem}.slide-counter{background:#f3f4f6;border-radius:.5rem;color:#6b7280;font-size:1rem;font-weight:500;padding:.5rem 1rem}.notes-toggle{background:#667eea;border:none;border-radius:.5rem;color:#fff;cursor:pointer;font-size:.875rem;padding:.5rem 1rem;transition:background .2s}.notes-toggle:hover{background:#5a67d8}.slide-container{gap:1rem;margin-bottom:1.5rem}.nav-btn,.slide-container{align-items:center;display:flex}.nav-btn{background:#fff;border:2px solid #e5e7eb;border-radius:50%;color:#374151;cursor:pointer;font-size:1.5rem;height:48px;justify-content:center;transition:all .2s;width:48px}.nav-btn:hover:not(:disabled){background:#667eea;border-color:#667eea;color:#fff}.nav-btn:disabled{cursor:not-allowed;opacity:.3}.slide-content{flex:1 1}.slide-card{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:1rem;box-shadow:0 20px 40px #667eea4d;min-height:400px;padding:3rem}.slide-title{color:#fff;font-size:2rem;font-weight:700;margin:0 0 2rem;text-shadow:0 2px 4px #0000001a}.slide-bullets{list-style:none;margin:0;padding:0}.slide-bullets li{color:#fffffff2;font-size:1.25rem;line-height:1.6;padding:.75rem 0 .75rem 2rem;position:relative}.slide-bullets li:before{background:#fffc;border-radius:50%;content:"";height:10px;left:0;position:absolute;top:50%;transform:translateY(-50%);width:10px}.speaker-notes{background:#fef3c7;border:1px solid #fcd34d;border-radius:.75rem;margin-bottom:1.5rem;padding:1.5rem}.speaker-notes h4{color:#92400e;font-size:.875rem;font-weight:600;letter-spacing:.05em;margin:0 0 .75rem;text-transform:uppercase}.speaker-notes p{color:#78350f;line-height:1.6;margin:0}.slide-thumbnails{display:flex;gap:.5rem;margin-bottom:1rem;overflow-x:auto;padding:1rem 0}.thumbnail{background:#f3f4f6;border:2px solid #0000;border-radius:.5rem;cursor:pointer;flex-shrink:0;min-width:100px;padding:.5rem;transition:all .2s}.thumbnail:hover{background:#e5e7eb}.thumbnail.active{background:#667eea;border-color:#667eea;color:#fff}.thumbnail-number{display:block;font-size:.75rem;font-weight:600;margin-bottom:.25rem}.thumbnail-title{display:block;font-size:.625rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.slide-help{border-top:1px solid #e5e7eb;color:#9ca3af;padding-top:1rem;text-align:center}.slide-help small{font-size:.75rem}@media (max-width:768px){.slide-preview{padding:1rem}.slide-header{flex-direction:column;gap:1rem}.slide-card{min-height:300px;padding:1.5rem}.slide-title{font-size:1.5rem}.slide-bullets li{font-size:1rem}.nav-btn{font-size:1.25rem;height:36px;width:36px}}[data-theme=dark] .slide-preview{background:#1a1a2e}[data-theme=dark] .slide-preview-empty,[data-theme=dark] .slide-preview-error,[data-theme=dark] .slide-preview-loading{color:#9ca3af}[data-theme=dark] .slide-preview-error{color:#f87171}[data-theme=dark] .slide-header{border-color:#374151}[data-theme=dark] .slide-header h2{color:#f3f4f6}[data-theme=dark] .notes-toggle,[data-theme=dark] .slide-counter{background:#252540;color:#d1d5db}[data-theme=dark] .notes-toggle{border:1px solid #374151}[data-theme=dark] .notes-toggle:hover{background:#2d2d4a}[data-theme=dark] .slide-thumbnails{background:#0000}[data-theme=dark] .thumbnail{background:#252540;border-color:#374151}[data-theme=dark] .thumbnail:hover{background:#2d2d4a;border-color:#6366f1}[data-theme=dark] .thumbnail.active{background:#6366f1;border-color:#6366f1;color:#fff}[data-theme=dark] .thumbnail-number{color:#d1d5db}[data-theme=dark] .thumbnail-title{color:#9ca3af}[data-theme=dark] .thumbnail.active .thumbnail-number,[data-theme=dark] .thumbnail.active .thumbnail-title{color:#fff}[data-theme=dark] .slide-card{background:linear-gradient(135deg,#4c51bf,#5b21b6)}[data-theme=dark] .speaker-notes{background:#252540;border-color:#374151;color:#d1d5db}[data-theme=dark] .speaker-notes h4{color:#fbbf24}[data-theme=dark] .speaker-notes p{color:#d1d5db}[data-theme=dark] .nav-btn{background:#252540;border-color:#374151;color:#d1d5db}[data-theme=dark] .nav-btn:hover:not(:disabled){background:#6366f1;border-color:#6366f1;color:#fff}[data-theme=dark] .nav-btn:disabled{opacity:.4}[data-theme=dark] .slide-help{border-top-color:#374151;color:#9ca3af}[data-theme=dark] .spinner{border-color:#a5b4fc #374151 #374151}.lecture-browser{margin:0 auto;max-width:1400px;padding:2rem}.lecture-browser-error,.lecture-browser-loading{align-items:center;color:#6b7280;display:flex;flex-direction:column;justify-content:center;min-height:400px}.lecture-browser-error{color:#ef4444}.lecture-browser-error button{background:#667eea;border:none;border-radius:.5rem;color:#fff;cursor:pointer;margin-top:1rem;padding:.5rem 1rem}.lecture-browser-header{border-bottom:2px solid #e5e7eb;margin-bottom:1.5rem;padding-bottom:1rem}.header-content h1{color:#1f2937;font-weight:700}.header-subtitle{color:#6b7280}.category-tabs{border-bottom:1px solid #e5e7eb;display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem;padding-bottom:1rem}.category-tab{background:#f3f4f6;border:1px solid #e5e7eb;border-radius:9999px;color:#4b5563;cursor:pointer;font-size:.875rem;padding:.5rem 1rem;transition:all .2s;white-space:nowrap}.category-tab:hover{background:#e5e7eb;color:#1f2937}.category-tab.active{background:#667eea;border-color:#667eea;color:#fff}.category-more{background:#f3f4f6;border:1px solid #e5e7eb;border-radius:9999px;color:#4b5563;cursor:pointer;font-size:.875rem;padding:.5rem 1rem}.lecture-browser-controls{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1.5rem}.search-box{min-width:250px;position:relative}.search-input{border:2px solid #e5e7eb;border-radius:.5rem;font-size:1rem;padding:.75rem 2.5rem .75rem 1rem;width:100%}.search-input:focus{outline:none}.search-clear{align-items:center;background:#9ca3af;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:.75rem;height:20px;justify-content:center;position:absolute;right:.75rem;top:50%;transform:translateY(-50%);width:20px}.search-clear:hover{background:#6b7280}.filter-controls{gap:.75rem}.sort-select{background:#fff;border:2px solid #e5e7eb;border-radius:.5rem;cursor:pointer;font-size:.875rem;min-width:150px;padding:.75rem 1rem}.sort-select:focus{border-color:#667eea;outline:none}.lecture-results-info{color:#6b7280;font-size:.875rem;margin-bottom:1.5rem}.lecture-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.no-results{color:#6b7280;grid-column:1/-1;padding:3rem}.no-results button{background:#667eea;border:none;border-radius:.5rem;color:#fff;cursor:pointer;margin-top:1rem;padding:.5rem 1rem}.lecture-card{background:#fff;border:1px solid #e5e7eb;border-radius:1rem;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;display:flex;flex-direction:column;padding:1.5rem;transition:transform .2s,box-shadow .2s}.lecture-card:hover{box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;transform:translateY(-4px)}.lecture-card-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.75rem}.lecture-category{background:#eef2ff;border-radius:9999px;color:#667eea;font-size:.75rem;font-weight:600;letter-spacing:.025em;max-width:55%;overflow:hidden;padding:.25rem .75rem;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.lecture-reading-time{color:#6b7280;font-size:.75rem}.lecture-title{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#1f2937;display:-webkit-box;flex:1 1;font-size:1.125rem;font-weight:600;line-height:1.4;margin:0 0 1rem;overflow:hidden}.lecture-card-footer{margin-bottom:1rem;min-height:24px}.has-slides-badge{background:#d1fae5;border-radius:.25rem;color:#059669;font-size:.75rem;padding:.25rem .5rem}.lecture-card-actions{display:flex;gap:.75rem}.action-btn{border-radius:.5rem;flex:1 1;text-align:center;text-decoration:none}.read-btn{background:#667eea;color:#fff}.read-btn:hover{background:#5a67d8}.slides-btn{background:#fff;border:2px solid #667eea;color:#667eea}.slides-btn:hover{background:#eef2ff}.pagination{align-items:center;border-top:1px solid #e5e7eb;display:flex;gap:.5rem;justify-content:center;margin-top:2rem;padding-top:2rem}.page-btn{background:#fff;border:1px solid #e5e7eb;border-radius:.5rem;color:#374151;cursor:pointer;font-size:.875rem;padding:.5rem 1rem;transition:all .2s}.page-btn:hover:not(:disabled){background:#667eea;border-color:#667eea;color:#fff}.page-btn:disabled{cursor:not-allowed;opacity:.5}.page-info{color:#6b7280;font-size:.875rem;padding:0 1rem}.guest-cta-banner{background:linear-gradient(135deg,#eef2ff,#e0e7ff);border:1px solid #c7d2fe;border-radius:12px;flex-wrap:wrap;justify-content:space-between;margin-bottom:1.5rem;padding:16px 24px}.guest-cta-banner,.guest-cta-banner .cta-content{align-items:center;display:flex;gap:16px}.guest-cta-banner .cta-icon{flex-shrink:0;font-size:28px}.guest-cta-banner .cta-text{color:#1f2937}.guest-cta-banner .cta-text strong{color:#1f2937;display:block;font-size:16px;font-weight:600;margin-bottom:4px}.guest-cta-banner .cta-text p{color:#4b5563;font-size:14px;line-height:1.4;margin:0}.guest-cta-banner .cta-actions{display:flex;flex-shrink:0;gap:12px}.guest-cta-banner .cta-btn-primary{align-items:center;background:#667eea;border:none;border-radius:8px;color:#fff;display:inline-flex;font-size:14px;font-weight:600;padding:10px 20px;text-decoration:none;transition:all .2s}.guest-cta-banner .cta-btn-primary:hover{background:#5a67d8;transform:translateY(-1px)}.guest-cta-banner .cta-btn-secondary{align-items:center;background:#fff;border:1px solid #c7d2fe;border-radius:8px;color:#667eea;display:inline-flex;font-size:14px;font-weight:500;padding:10px 20px;text-decoration:none;transition:all .2s}.guest-cta-banner .cta-btn-secondary:hover{background:#f5f3ff;border-color:#a5b4fc}@media (max-width:768px){.lecture-browser{padding:1rem}.lecture-browser-controls{flex-direction:column}.filter-controls{flex-wrap:wrap}.sort-select{flex:1 1;min-width:120px}.lecture-grid{grid-template-columns:1fr}.header-content h1{font-size:1.5rem}.category-tabs{flex-wrap:nowrap;overflow-x:auto;padding-bottom:.5rem}.category-tab{flex-shrink:0}.pagination{flex-wrap:wrap}.guest-cta-banner{align-items:flex-start;flex-direction:column;text-align:left}.guest-cta-banner .cta-content{align-items:flex-start;flex-direction:column;gap:12px}.guest-cta-banner .cta-actions{flex-direction:column;width:100%}.guest-cta-banner .cta-btn-primary,.guest-cta-banner .cta-btn-secondary{justify-content:center;width:100%}}[data-theme=dark] .lecture-browser-error,[data-theme=dark] .lecture-browser-loading{color:#9ca3af}[data-theme=dark] .lecture-browser-error{color:#f87171}[data-theme=dark] .lecture-browser-error button{background:#6366f1}[data-theme=dark] .lecture-browser-header{border-bottom-color:#3d3d5c}[data-theme=dark] .header-content h1{color:#e0e0e0}[data-theme=dark] .category-tabs{border-bottom-color:#3d3d5c}[data-theme=dark] .category-tab{background:#2d2d4a;border-color:#3d3d5c;color:#b0b0b0}[data-theme=dark] .category-tab:hover{background:#353555;color:#e0e0e0}[data-theme=dark] .category-tab.active{background:#6366f1;border-color:#6366f1}[data-theme=dark] .category-more{background:#2d2d4a;border-color:#3d3d5c;color:#b0b0b0}[data-theme=dark] .search-input{background:#2d2d4a;border-color:#3d3d5c;color:#e0e0e0}[data-theme=dark] .search-input::placeholder{color:#6b7280}[data-theme=dark] .search-input:focus{border-color:#818cf8}[data-theme=dark] .search-clear{background:#6b7280}[data-theme=dark] .search-clear:hover{background:#9ca3af}[data-theme=dark] .sort-select{background:#2d2d4a;border-color:#3d3d5c;color:#e0e0e0}[data-theme=dark] .sort-select:focus{border-color:#818cf8}[data-theme=dark] .lecture-results-info,[data-theme=dark] .no-results{color:#9ca3af}[data-theme=dark] .no-results button{background:#6366f1}[data-theme=dark] .lecture-card{background:#252540;border-color:#3d3d5c;box-shadow:0 4px 6px -1px #0000004d}[data-theme=dark] .lecture-card:hover{box-shadow:0 20px 25px -5px #0006}[data-theme=dark] .lecture-category{background:#6366f126;color:#a5b4fc}[data-theme=dark] .lecture-reading-time{color:#9ca3af}[data-theme=dark] .lecture-title{color:#e0e0e0}[data-theme=dark] .has-slides-badge{background:#10b98126;color:#6ee7b7}[data-theme=dark] .slides-btn{background:#2d2d4a;border-color:#818cf8;color:#a5b4fc}[data-theme=dark] .slides-btn:hover{background:#353555}[data-theme=dark] .pagination{border-top-color:#3d3d5c}[data-theme=dark] .page-btn{background:#2d2d4a;border-color:#3d3d5c;color:#e0e0e0}[data-theme=dark] .page-btn:hover:not(:disabled){background:#6366f1;border-color:#6366f1}[data-theme=dark] .page-info{color:#9ca3af}[data-theme=dark] .guest-cta-banner{background:linear-gradient(135deg,#6366f126,#8b5cf626);border-color:#6366f14d}[data-theme=dark] .guest-cta-banner .cta-text,[data-theme=dark] .guest-cta-banner .cta-text strong{color:#e0e0e0}[data-theme=dark] .guest-cta-banner .cta-text p{color:#b0b0b0}[data-theme=dark] .guest-cta-banner .cta-btn-primary{background:#6366f1}[data-theme=dark] .guest-cta-banner .cta-btn-primary:hover{background:#818cf8}[data-theme=dark] .guest-cta-banner .cta-btn-secondary{background:#2d2d4a;border-color:#6366f14d;color:#a5b4fc}[data-theme=dark] .guest-cta-banner .cta-btn-secondary:hover{background:#353555;border-color:#818cf8}.search-suggestions{background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 4px 12px #0000001a;left:0;margin-top:4px;max-height:200px;overflow-y:auto;position:absolute;right:0;top:100%;z-index:100}.suggestion-item{background:none;border:none;cursor:pointer;display:flex;justify-content:space-between;padding:.75rem 1rem;text-align:left;transition:background .15s;width:100%}.suggestion-item:hover{background:#f3f4f6}.suggestion-name{color:#1f2937;font-weight:500}.suggestion-count{color:#6b7280;font-size:.85rem}[data-theme=dark] .search-suggestions{background:#252540;border-color:#374151;box-shadow:0 4px 12px #0000004d}[data-theme=dark] .suggestion-item:hover{background:#2d2d4a}[data-theme=dark] .suggestion-name{color:#f3f4f6}[data-theme=dark] .suggestion-count{color:#9ca3af}.lecture-reader{background:#fafafa;display:flex;flex-direction:column;min-height:100vh}.continue-prompt{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1100}.continue-prompt-content{background:#fff;border-radius:1rem;box-shadow:0 20px 40px #0003;max-width:400px;padding:2rem;text-align:center}.continue-prompt-content p{color:#1f2937;font-size:1.125rem;margin:0 0 1.5rem}.continue-prompt-actions{display:flex;gap:1rem;justify-content:center}.continue-btn{border:none;border-radius:.5rem;cursor:pointer;font-size:.875rem;font-weight:500;padding:.75rem 1.5rem;transition:all .2s}.continue-btn.primary{background:#667eea;color:#fff}.continue-btn.primary:hover{background:#5a67d8}.continue-btn.secondary{background:#fff;border:2px solid #667eea;color:#667eea}.continue-btn.secondary:hover{background:#eef2ff}.lecture-reader-error,.lecture-reader-loading{align-items:center;color:#6b7280;display:flex;flex-direction:column;justify-content:center;min-height:400px}.lecture-reader-error{color:#ef4444}.back-link{color:#667eea;margin-top:1rem;text-decoration:none}.back-link:hover{text-decoration:underline}.reading-progress-bar{background:#e5e7eb;height:4px;left:0;position:fixed;right:0;top:0;z-index:1000}.reading-progress-fill{background:linear-gradient(90deg,#667eea,#764ba2);height:100%;transition:width .1s ease-out}.reader-header{align-items:center;background:#fff;border-bottom:1px solid #e5e7eb;box-shadow:0 2px 4px #0000000d;display:flex;justify-content:space-between;padding:.75rem 1.5rem;position:-webkit-sticky;position:sticky;top:4px;z-index:100}.header-left{flex:1 1;min-width:0}.back-btn{background:#f3f4f6;border-radius:.5rem;color:#374151;flex-shrink:0;font-size:.875rem;font-weight:500;padding:.5rem 1rem;text-decoration:none;transition:background .2s}.back-btn:hover{background:#e5e7eb}.reader-title{color:#1f2937;font-size:1.125rem;font-weight:600;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.header-controls{align-items:center;display:flex;flex-shrink:0;gap:.75rem}.font-controls{background:#f3f4f6;border-radius:.5rem;gap:.5rem;padding:.25rem}.font-btn,.font-controls{align-items:center;display:flex}.font-btn{background:#0000;border:none;border-radius:.375rem;color:#374151;cursor:pointer;font-size:.875rem;font-weight:600;height:32px;justify-content:center;transition:background .2s;width:32px}.font-btn:hover{background:#e5e7eb}.font-size{color:#6b7280;font-size:.75rem;min-width:40px;text-align:center}.toc-toggle{background:#fff;border:2px solid #e5e7eb;border-radius:.5rem;color:#374151;cursor:pointer;font-size:.875rem;font-weight:500;padding:.5rem 1rem;transition:all .2s}.toc-toggle:hover{border-color:#667eea;color:#667eea}.toc-toggle.active{background:#667eea;border-color:#667eea;color:#fff}.slides-link{background:#667eea;border-radius:.5rem;color:#fff;font-size:.875rem;font-weight:500;padding:.5rem 1rem;text-decoration:none;transition:background .2s}.slides-link:hover{background:#5a67d8}.reader-body{display:flex;flex:1 1;margin:0 auto;max-width:1400px;width:100%}.toc-sidebar{background:#fff;border-right:1px solid #e5e7eb;flex-shrink:0;height:calc(100vh - 60px);overflow-y:auto;padding:1.5rem;position:-webkit-sticky;position:sticky;top:60px;width:280px}.toc-sidebar h2{color:#6b7280;font-size:.875rem;font-weight:600;letter-spacing:.05em;margin:0 0 1rem;text-transform:uppercase}.toc-nav{display:flex;flex-direction:column;gap:.25rem}.toc-item{background:none;border:none;border-radius:.375rem;color:#4b5563;cursor:pointer;font-size:.875rem;line-height:1.4;padding:.5rem .75rem;text-align:left;transition:all .2s}.toc-item:hover{background:#f3f4f6;color:#1f2937}.toc-item.active{background:#eef2ff;color:#667eea;font-weight:500}.toc-item.level-1{font-weight:600;padding-left:.75rem}.toc-item.level-2{padding-left:1.5rem}.toc-item.level-3{font-size:.8125rem;padding-left:2.25rem}.reader-content{flex:1 1;max-height:calc(100vh - 60px);overflow-y:auto;padding:2rem 3rem;scroll-behavior:smooth}.lecture-content{background:#fff;border-radius:1rem;box-shadow:0 4px 6px -1px #0000001a;margin:0 auto;max-width:720px;padding:3rem}.lecture-category-badge{background:#eef2ff;border-radius:9999px;color:#667eea;display:inline-block;font-size:.75rem;font-weight:600;letter-spacing:.025em;margin-bottom:1.5rem;padding:.375rem .875rem;text-transform:uppercase}.lecture-content h1{color:#1f2937;font-size:2rem;font-weight:700;line-height:1.3;margin:0 0 1.5rem;padding-top:.5rem}.lecture-content h2{border-top:1px solid #e5e7eb;color:#1f2937;font-size:1.5rem;font-weight:600;margin:2.5rem 0 1rem;padding-top:1rem}.lecture-content h3{color:#374151;font-size:1.25rem;font-weight:600;margin:2rem 0 .75rem}.lecture-content p{color:#374151;line-height:1.8;margin:0 0 1.25rem}.lecture-content ol,.lecture-content ul{margin:0 0 1.25rem;padding-left:1.5rem}.lecture-content li{color:#374151;line-height:1.7;margin-bottom:.5rem}.lecture-content blockquote{border-left:4px solid #667eea;color:#4b5563;font-style:italic;margin:1.5rem 0;padding-left:1.5rem}.lecture-content code{background:#f3f4f6;border-radius:.25rem;font-family:Fira Code,Monaco,monospace;font-size:.875em;padding:.2rem .5rem}.lecture-content pre{background:#1f2937;border-radius:.5rem;color:#e5e7eb;margin:1.5rem 0;overflow-x:auto;padding:1.5rem}.lecture-content pre code{background:none;color:inherit;padding:0}.lecture-content a{color:#667eea;text-decoration:underline}.lecture-content a:hover{color:#5a67d8}.lecture-content img{border-radius:.5rem;height:auto;margin:1.5rem 0;max-width:100%}.lecture-content table{border-collapse:collapse;margin:1.5rem 0;width:100%}.lecture-content td,.lecture-content th{border:1px solid #e5e7eb;padding:.75rem 1rem;text-align:left}.lecture-content th{background:#f9fafb;font-weight:600}.reading-complete{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:1rem;color:#fff;margin-top:2rem;padding:3rem;text-align:center}.reading-complete h3{font-size:1.5rem;margin:0 0 .5rem}.reading-complete p{margin:0 0 1.5rem;opacity:.9}.complete-actions{display:flex;gap:1rem;justify-content:center}.complete-actions .action-btn{border-radius:.5rem;font-weight:500;padding:.75rem 1.5rem;text-decoration:none;transition:all .2s}.complete-actions .action-btn.primary{background:#fff;color:#667eea}.complete-actions .action-btn.primary:hover{background:#f3f4f6}.complete-actions .action-btn.secondary{background:#fff3;border:2px solid #fff;color:#fff}.complete-actions .action-btn.secondary:hover{background:#ffffff4d}.reader-help{background:#fff;border-top:1px solid #e5e7eb;color:#9ca3af;padding:.75rem;text-align:center}.reader-help small{font-size:.75rem}@media (max-width:1024px){.toc-sidebar{display:none}.reader-content{padding:1.5rem}.lecture-content{padding:2rem}}@media (max-width:768px){.reader-header{flex-direction:column;gap:.75rem;padding:.75rem 1rem}.header-left{width:100%}.header-controls{justify-content:space-between;width:100%}.reader-title{font-size:1rem}.reader-content{padding:1rem}.lecture-content{border-radius:.5rem;padding:1.5rem}.lecture-content h1{font-size:1.5rem}.lecture-content h2{font-size:1.25rem}.complete-actions{flex-direction:column}}@media print{.reader-header,.reader-help,.reading-complete,.reading-progress-bar,.toc-sidebar{display:none}.reader-content{max-height:none;overflow:visible}.lecture-content{box-shadow:none;padding:0}}[data-theme=dark] .lecture-reader{background:#1a1a2e}[data-theme=dark] .continue-prompt{background:#000000b3}[data-theme=dark] .continue-prompt-content{background:#252540;box-shadow:0 20px 40px #00000080}[data-theme=dark] .continue-prompt-content p{color:#e0e0e0}[data-theme=dark] .continue-btn.secondary{background:#2d2d4a;border-color:#a5b4fc;color:#a5b4fc}[data-theme=dark] .continue-btn.secondary:hover{background:#353555}[data-theme=dark] .lecture-reader-error,[data-theme=dark] .lecture-reader-loading{color:#9ca3af}[data-theme=dark] .lecture-reader-error{color:#f87171}[data-theme=dark] .back-link{color:#a5b4fc}[data-theme=dark] .reading-progress-bar{background:#3d3d5c}[data-theme=dark] .reader-header{background:#252540;border-bottom-color:#3d3d5c;box-shadow:0 2px 4px #0000004d}[data-theme=dark] .back-btn{background:#2d2d4a;color:#e0e0e0}[data-theme=dark] .back-btn:hover{background:#353555}[data-theme=dark] .reader-title{color:#e0e0e0}[data-theme=dark] .font-controls{background:#2d2d4a}[data-theme=dark] .font-btn{color:#e0e0e0}[data-theme=dark] .font-btn:hover{background:#353555}[data-theme=dark] .font-size{color:#9ca3af}[data-theme=dark] .toc-toggle{background:#2d2d4a;border-color:#3d3d5c;color:#e0e0e0}[data-theme=dark] .toc-toggle:hover{border-color:#818cf8;color:#a5b4fc}[data-theme=dark] .toc-toggle.active{background:#6366f1;border-color:#6366f1}[data-theme=dark] .toc-sidebar{background:#252540;border-right-color:#3d3d5c}[data-theme=dark] .toc-sidebar h2{color:#9ca3af}[data-theme=dark] .toc-item{color:#b0b0b0}[data-theme=dark] .toc-item:hover{background:#2d2d4a;color:#e0e0e0}[data-theme=dark] .toc-item.active{background:#6366f126;color:#a5b4fc}[data-theme=dark] .reader-content{background:#1a1a2e}[data-theme=dark] .lecture-content{background:#252540;box-shadow:0 4px 6px -1px #0000004d}[data-theme=dark] .lecture-category-badge{background:#6366f126;color:#a5b4fc}[data-theme=dark] .lecture-content h1{color:#e0e0e0}[data-theme=dark] .lecture-content h2{border-top-color:#3d3d5c;color:#e0e0e0}[data-theme=dark] .lecture-content h3{color:#d0d0d0}[data-theme=dark] .lecture-content li,[data-theme=dark] .lecture-content p{color:#b0b0b0}[data-theme=dark] .lecture-content blockquote{border-left-color:#818cf8;color:#9ca3af}[data-theme=dark] .lecture-content code{background:#2d2d4a;color:#e0e0e0}[data-theme=dark] .lecture-content pre{background:#16213e}[data-theme=dark] .lecture-content a{color:#a5b4fc}[data-theme=dark] .lecture-content a:hover{color:#c7d2fe}[data-theme=dark] .lecture-content img{filter:brightness(.85) contrast(1.1)}[data-theme=dark] .lecture-content td,[data-theme=dark] .lecture-content th{border-color:#3d3d5c}[data-theme=dark] .lecture-content th{background:#2d2d4a;color:#e0e0e0}[data-theme=dark] .lecture-content td{color:#b0b0b0}[data-theme=dark] .reader-help{background:#252540;border-top-color:#3d3d5c;color:#6b7280}[data-theme=dark] .spinner{border-color:#a78bfa #3d3d5c #3d3d5c}.learning-tasks-page{margin:0 auto;max-width:1200px;min-height:calc(100vh - 200px);padding:2rem}.tasks-header{align-items:flex-start;border-bottom:1px solid #e1e5eb;border-bottom:1px solid var(--border-color,#e1e5eb);display:flex;flex-wrap:wrap;gap:1.5rem;justify-content:space-between;margin-bottom:2rem;padding-bottom:1.5rem}.header-content h1{color:#1a1a2e;color:var(--text-primary,#1a1a2e);font-size:2rem;margin:0 0 .5rem}.header-subtitle{color:var(--text-secondary,#666);font-size:1rem;margin:0}.header-stats{align-items:center;display:flex;gap:1.5rem}.stat-value{color:#6c63ff;color:var(--primary-color,#6c63ff)}.stat-label{letter-spacing:.5px;text-transform:uppercase}.refresh-btn{background:#6c63ff;background:var(--primary-color,#6c63ff);border-radius:8px;font-weight:600;padding:.75rem 1.5rem;transition:all .2s ease}.refresh-btn:hover:not(:disabled){background:#5a52d5;background:var(--primary-hover,#5a52d5);transform:translateY(-1px)}.refresh-btn:disabled{cursor:not-allowed;opacity:.6}.task-section{margin-bottom:2.5rem}.section-title{color:#1a1a2e;color:var(--text-primary,#1a1a2e);font-size:1.25rem;gap:.75rem;margin-bottom:1rem}.section-icon{background:#f0efff;background:var(--primary-light,#f0efff);border-radius:4px;color:#6c63ff;color:var(--primary-color,#6c63ff);font-family:monospace;font-size:1rem;padding:.25rem .5rem}.section-count{color:#666;color:var(--text-secondary,#666);font-size:.875rem;font-weight:400;margin-left:auto}.task-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.task-card{background:#fff;border:1px solid #e1e5eb;border:1px solid var(--border-color,#e1e5eb);border-radius:12px;box-shadow:0 2px 8px #0000000f;padding:1.25rem;transition:all .2s ease}.task-card:hover{box-shadow:0 4px 16px #0000001a;transform:translateY(-2px)}.task-card.completed{background:#f0fff4;background:var(--success-light,#f0fff4);border-color:#48bb78;border-color:var(--success-color,#48bb78);opacity:.75}.task-card.daily{border-left:4px solid #f6ad55}.task-card.topic{border-left:4px solid #6c63ff}.task-card.challenge{border-left:4px solid #fc8181}.task-card.milestone{border-left:4px solid #48bb78}.task-header{align-items:flex-start;display:flex;gap:.75rem;margin-bottom:.75rem}.task-icon{color:#666;color:var(--text-secondary,#666);flex-shrink:0;font-family:monospace;font-size:.875rem}.task-title{color:#1a1a2e;color:var(--text-primary,#1a1a2e);flex-grow:1;font-size:1rem;font-weight:600;margin:0}.xp-badge{background:linear-gradient(135deg,#ffd93d,#ff9f1c);border-radius:12px;color:#1a1a2e;flex-shrink:0;font-size:.75rem;font-weight:700;padding:.25rem .5rem}.task-description{color:#666;color:var(--text-secondary,#666);font-size:.875rem;line-height:1.4;margin:0 0 1rem}.task-progress{margin-bottom:1rem}.progress-bar{background:#f4f5f7;background:var(--bg-secondary,#f4f5f7);margin-bottom:.5rem}.progress-fill{background:linear-gradient(90deg,#6c63ff,#a78bfa);background:linear-gradient(90deg,var(--primary-color,#6c63ff),#a78bfa)}.task-card.completed .progress-fill{background:linear-gradient(90deg,#48bb78,#68d391)}.progress-text{color:#666;color:var(--text-secondary,#666);font-weight:500}.task-footer{align-items:center;display:flex;gap:1rem;justify-content:space-between}.time-remaining{color:#e53e3e;color:var(--warning-color,#e53e3e);font-size:.75rem;font-weight:500}.start-btn{background:#6c63ff;background:var(--primary-color,#6c63ff);border-radius:6px;font-size:.875rem;font-weight:600;padding:.5rem 1rem;text-decoration:none;transition:all .2s ease}.start-btn:hover{background:#5a52d5;background:var(--primary-hover,#5a52d5);transform:translateY(-1px)}.completed-badge{align-items:center;color:#48bb78;color:var(--success-color,#48bb78);display:flex;font-size:.875rem;font-weight:600;gap:.5rem}.check-icon{font-family:monospace}.no-tasks-message{background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border-radius:12px;margin:2rem 0;padding:3rem;text-align:center}.no-tasks-message h2{color:#1a1a2e;color:var(--text-primary,#1a1a2e);margin:0 0 .5rem}.no-tasks-message p{color:#666;color:var(--text-secondary,#666);margin:0 0 1.5rem}.generate-btn{background:#6c63ff;background:var(--primary-color,#6c63ff);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:.75rem 2rem;transition:all .2s ease}.generate-btn:hover:not(:disabled){background:#5a52d5;background:var(--primary-hover,#5a52d5)}.generate-btn:disabled{cursor:not-allowed;opacity:.6}.loading-container{align-items:center;display:flex;flex-direction:column;gap:1rem;justify-content:center;padding:4rem}.loading-spinner{animation:spin .8s linear infinite;border:3px solid #e1e5eb;border-top-color:#6c63ff;border:3px solid var(--border-color,#e1e5eb);border-top-color:var(--primary-color,#6c63ff)}.error-container{padding:3rem;text-align:center}.error-container h2{color:#1a1a2e;color:var(--text-primary,#1a1a2e);margin:0 0 1rem}.error-container p{color:#666;color:var(--text-secondary,#666);margin:0 0 1.5rem}.cta-btn{background:#6c63ff;background:var(--primary-color,#6c63ff);border-radius:8px;color:#fff;padding:.75rem 2rem;transition:all .2s ease}.cta-btn:hover{background:#5a52d5;background:var(--primary-hover,#5a52d5)}.completed-section{opacity:.9}.completed-section .section-title{color:#48bb78;color:var(--success-color,#48bb78)}.milestones .task-card{background:linear-gradient(135deg,#f0fff4,#fff 50%)}@media (max-width:768px){.learning-tasks-page{padding:1rem}.tasks-header{flex-direction:column}.header-stats{justify-content:space-between;width:100%}.task-grid{grid-template-columns:1fr}.task-footer{align-items:stretch;flex-direction:column}.start-btn{text-align:center}}[data-theme=dark] .learning-tasks-page{background:#0000}[data-theme=dark] .tasks-header{border-color:#374151}[data-theme=dark] .header-content h1,[data-theme=dark] .section-title{color:#f3f4f6}[data-theme=dark] .section-icon{background:#6366f133;color:#a5b4fc}[data-theme=dark] .section-count{color:#9ca3af}[data-theme=dark] .task-card{background:#252540;border-color:#374151;box-shadow:0 2px 8px #0000004d}[data-theme=dark] .task-card:hover{box-shadow:0 4px 16px #0006}[data-theme=dark] .task-card.completed{background:#48bb781a;border-color:#48bb78}[data-theme=dark] .task-title{color:#f3f4f6}[data-theme=dark] .task-description,[data-theme=dark] .task-icon{color:#9ca3af}[data-theme=dark] .progress-bar{background:#374151}[data-theme=dark] .no-tasks-message{background:#252540}[data-theme=dark] .no-tasks-message h2{color:#f3f4f6}[data-theme=dark] .no-tasks-message p{color:#9ca3af}[data-theme=dark] .error-container h2{color:#f3f4f6}[data-theme=dark] .error-container p{color:#9ca3af}[data-theme=dark] .loading-spinner{border-color:#a5b4fc #374151 #374151}[data-theme=dark] .milestones .task-card{background:linear-gradient(135deg,#48bb781a,#252540 50%)}.gantt-container{border-radius:12px;overflow-x:auto;padding:16px;position:relative;width:100%}.gantt-container,.gantt-header{background:#1a1a2e;background:var(--bg-secondary,#1a1a2e)}.gantt-header{border-bottom:2px solid #3d3d5c;border-bottom:2px solid var(--border-color,#3d3d5c);display:flex;margin-bottom:8px;padding-bottom:8px;position:-webkit-sticky;position:sticky;top:0;z-index:10}.gantt-label-column{align-items:center;display:flex;flex-shrink:0;gap:8px;max-width:250px;min-width:250px;padding-right:16px}.gantt-label-header{color:#a0a0b0;color:var(--text-secondary,#a0a0b0);font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.gantt-timeline-area{flex:1 1;min-width:800px;position:relative}.gantt-months{display:flex;width:100%}.gantt-month{flex:1 1;padding-top:20px;position:relative;text-align:center}.gantt-month-label{color:#a0a0b0;color:var(--text-secondary,#a0a0b0);font-size:11px}.gantt-month-january{border-left:2px solid #6366f1;border-left:2px solid var(--primary-color,#6366f1)}.gantt-year-label{color:#6366f1;color:var(--primary-color,#6366f1);font-size:12px;font-weight:600;left:4px;position:absolute;top:0}.gantt-body{position:relative}.gantt-phase-group{margin-bottom:4px}.gantt-row{align-items:center;border-radius:4px;display:flex;min-height:40px;transition:background-color .15s ease}.gantt-row:hover{background:#ffffff08}.gantt-phase-row{background:#ffffff05}.gantt-phase-row .gantt-label-column{font-weight:600}.gantt-feature-row .gantt-label-column{padding-left:32px}.gantt-expand-btn{align-items:center;background:#0000;border:1px solid #3d3d5c;border:1px solid var(--border-color,#3d3d5c);border-radius:4px;color:#fff;color:var(--text-primary,#fff);cursor:pointer;display:flex;flex-shrink:0;font-size:14px;font-weight:600;height:20px;justify-content:center;transition:all .15s ease;width:20px}.gantt-expand-btn:hover{background:#6366f1;background:var(--primary-color,#6366f1);border-color:#6366f1;border-color:var(--primary-color,#6366f1)}.gantt-phase-name{color:#fff;color:var(--text-primary,#fff);font-size:14px}.gantt-feature-name,.gantt-phase-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gantt-feature-name{color:#a0a0b0;color:var(--text-secondary,#a0a0b0);font-size:13px}.gantt-grid{bottom:0;display:flex;left:0;pointer-events:none;position:absolute;right:0;top:0}.gantt-grid-cell{border-left:1px solid #ffffff0d;flex:1 1}.gantt-grid-cell:first-child{border-left:none}.gantt-bar{align-items:center;border-radius:4px;cursor:pointer;display:flex;height:24px;justify-content:center;overflow:hidden;position:absolute;top:50%;transform:translateY(-50%);transition:transform .15s ease,box-shadow .15s ease}.gantt-bar:hover{box-shadow:0 4px 12px #0000004d;transform:translateY(-50%) scale(1.02);z-index:5}.gantt-phase-bar{height:28px}.gantt-feature-bar{height:20px}.gantt-progress{border-radius:4px 0 0 4px;height:100%;left:0;position:absolute;top:0;transition:width .3s ease}.gantt-bar-label{color:#fff;font-size:11px;font-weight:600;padding:0 8px;position:relative;text-shadow:0 1px 2px #0000004d;white-space:nowrap;z-index:2}.gantt-legend{border-top:1px solid #3d3d5c;border-top:1px solid var(--border-color,#3d3d5c);display:flex;flex-wrap:wrap;gap:20px;margin-top:16px;padding-top:16px}.gantt-legend-item{align-items:center;color:#a0a0b0;color:var(--text-secondary,#a0a0b0);display:flex;font-size:12px;gap:8px}.gantt-legend-color,.gantt-legend-progress{border-radius:4px;height:16px;width:16px}.gantt-legend-progress{background:linear-gradient(90deg,#059669 50%,#10b981 0)}.gantt-tooltip{background:#252540;background:var(--bg-tertiary,#252540);border:1px solid #3d3d5c;border:1px solid var(--border-color,#3d3d5c);border-radius:8px;bottom:20px;box-shadow:0 8px 24px #0006;min-width:200px;padding:12px 16px;position:fixed;right:20px;z-index:100}.gantt-tooltip strong{color:#fff;color:var(--text-primary,#fff);display:block;font-size:14px;margin-bottom:8px}.gantt-tooltip-dates,.gantt-tooltip-progress,.gantt-tooltip-status{color:#a0a0b0;color:var(--text-secondary,#a0a0b0);font-size:12px;margin-top:4px}.gantt-tooltip-progress{color:#10b981}.gantt-today-marker{background:#ef4444;bottom:0;position:absolute;top:0;width:2px;z-index:5}.gantt-today-label{color:#ef4444;font-size:10px;font-weight:600;left:50%;position:absolute;top:-20px;transform:translateX(-50%);white-space:nowrap}@media (max-width:1024px){.gantt-label-column{max-width:180px;min-width:180px}.gantt-timeline-area{min-width:600px}}@media (max-width:768px){.gantt-container{padding:12px}.gantt-label-column{max-width:140px;min-width:140px}.gantt-feature-name,.gantt-phase-name{font-size:12px}.gantt-feature-row .gantt-label-column{padding-left:24px}.gantt-legend{gap:12px}.gantt-legend-item{font-size:11px}}:root{--bg-secondary:#1a1a2e;--bg-tertiary:#252540;--border-color:#3d3d5c;--text-primary:#fff;--text-secondary:#a0a0b0;--primary-color:#6366f1}.roadmap-page{margin:0 auto;max-width:1200px;min-height:calc(100vh - 200px);padding:2rem}.roadmap-header{border-bottom:1px solid #e1e5eb;border-bottom:1px solid var(--border-color,#e1e5eb);text-align:center}.roadmap-header h1{color:#1a1a2e;font-size:2.5rem;margin:0 0 .5rem}.header-subtitle{color:#666;font-size:1.1rem;margin:0 0 .5rem}.last-updated{align-items:center;color:#888;display:flex;font-size:.875rem;gap:.5rem;justify-content:center;margin:0}.version-tag{background:linear-gradient(135deg,#6c63ff,#5a52d5);border-radius:4px;color:#fff;font-size:.75rem;font-weight:500;padding:.2rem .5rem}.roadmap-tabs{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;margin-bottom:2rem}.tab-btn{border:1px solid #e1e5eb;border-radius:8px;color:#1a1a2e;padding:.75rem 1.5rem}.tab-btn:hover{background:#f4f5f7}.tab-btn.active{background:#6c63ff;border-color:#6c63ff}.roadmap-content{margin-bottom:2rem}.current-features h2{color:#1a1a2e;margin-bottom:1.5rem;text-align:center}.features-grid{grid-gap:1.5rem;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.feature-category{background:#fff;border:1px solid #e1e5eb;border:1px solid var(--border-color,#e1e5eb);border-radius:12px;box-shadow:0 2px 8px #0000000f;padding:1.5rem}.feature-category h3{color:#6c63ff;font-size:1.1rem;margin:0 0 1rem}.feature-category ul{margin:0;padding-left:1.25rem}.feature-category li{color:#666;margin-bottom:.5rem}.roadmap-phases h2{color:#1a1a2e;margin:0}.roadmap-header-row{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-bottom:1.5rem}.view-toggle{background:#f4f5f7;background:var(--bg-secondary,#f4f5f7);gap:.25rem;padding:4px}.view-toggle-btn{background:#0000;border:none;border-radius:6px;color:#666;cursor:pointer;font-size:.875rem;font-weight:500;padding:.5rem 1rem;transition:all .2s ease}.view-toggle-btn:hover{color:#1a1a2e}.view-toggle-btn.active{background:#fff;box-shadow:0 1px 3px #0000001a;color:#6c63ff}.phases-timeline{grid-gap:1.5rem;display:grid;gap:1.5rem}.phase-card{background:#fff;border:1px solid #e1e5eb;border-left:4px solid #6c63ff;border:1px solid var(--border-color,#e1e5eb);border-left:4px solid var(--primary-color,#6c63ff);border-radius:12px;box-shadow:0 2px 8px #0000000f;padding:1.5rem}.phase-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.phase-header h3{color:#1a1a2e;margin:0}.phase-quarter{background:#f0efff;background:var(--primary-light,#f0efff);border-radius:20px;color:#6c63ff;color:var(--primary-color,#6c63ff);font-size:.875rem;font-weight:500;padding:.25rem .75rem}.phase-features{list-style:none;margin:0;padding:0}.phase-features li{align-items:center;border-bottom:1px solid #e1e5eb;border-bottom:1px solid var(--border-color,#e1e5eb);display:flex;justify-content:space-between;padding:.5rem 0}.phase-features li:last-child{border-bottom:none}.feature-name{color:#1a1a2e}.status-badge{border-radius:4px;padding:.25rem .5rem}.status-completed{background:#d4edda;color:#155724}.status-in-progress{background:#fff3cd;color:#856404}.status-planned{background:#d1ecf1;color:#0c5460}.status-future{background:#e2e3e5;color:#383d41}.most-requested h2{color:#1a1a2e;margin-bottom:.5rem;text-align:center}.section-intro{color:#666;margin-bottom:1.5rem;text-align:center}.requested-list{grid-gap:1rem;display:grid;gap:1rem;margin:0 auto;max-width:600px}.requested-item{align-items:center;background:#fff;border:1px solid #e1e5eb;border:1px solid var(--border-color,#e1e5eb);border-radius:12px;box-shadow:0 2px 8px #0000000f;display:flex;gap:1rem;padding:1rem 1.5rem}.requested-rank{color:#6c63ff;color:var(--primary-color,#6c63ff);font-size:1.5rem;font-weight:700;min-width:40px}.requested-info{flex:1 1}.requested-info h4{color:#1a1a2e;margin:0}.votes{color:#666;font-size:.875rem}.requested-timeline{background:#f0efff;background:var(--primary-light,#f0efff);border-radius:20px;color:#6c63ff;color:var(--primary-color,#6c63ff);font-size:.875rem;font-weight:500;padding:.25rem .75rem}.requested-item.completed{border-left:4px solid #22c55e}.timeline-completed{background:#dcfce7!important;color:#16a34a!important}.completed-check{color:#22c55e;font-weight:700;margin-right:.25rem}.release-notes h2{color:#1a1a2e;margin-bottom:1.5rem;text-align:center}.releases-list{grid-gap:1rem;display:grid;gap:1rem;margin:0 auto;max-width:800px}.release-card{background:#fff;border:1px solid #e1e5eb;border:1px solid var(--border-color,#e1e5eb);border-radius:12px;box-shadow:0 2px 8px #0000000f;padding:1.5rem}.release-card h3{color:#6c63ff;margin:0 0 1rem}.release-card ul{margin:0;padding-left:1.25rem}.release-card li{color:#666;margin-bottom:.5rem}.roadmap-footer{border-top:1px solid #e1e5eb;border-top:1px solid var(--border-color,#e1e5eb);padding-top:2rem;text-align:center}.priorities-grid{display:flex;flex-wrap:wrap;gap:1.5rem;justify-content:center;margin-bottom:1rem}.priority-item{color:#666;font-size:.875rem}.disclaimer{color:#888;font-size:.875rem;margin-bottom:1rem}.full-roadmap-link{color:#6c63ff;display:inline-block;font-weight:500;text-decoration:none}.full-roadmap-link:hover{text-decoration:underline}@media (max-width:768px){.roadmap-page{padding:1rem}.roadmap-header h1{font-size:1.75rem}.roadmap-tabs{gap:.25rem}.tab-btn{font-size:.875rem;padding:.5rem 1rem}.phase-header,.requested-item{align-items:flex-start}.phase-header,.priorities-grid,.requested-item{flex-direction:column;gap:.5rem}.roadmap-header-row{justify-content:center;text-align:center}.roadmap-header-row h2{width:100%}}[data-theme=dark] .roadmap-page{background:#0000}[data-theme=dark] .roadmap-header{border-bottom-color:#3d3d5c}[data-theme=dark] .roadmap-header h1{color:#e0e0e0}[data-theme=dark] .header-subtitle{color:#9ca3af}[data-theme=dark] .last-updated{color:#6b7280}[data-theme=dark] .version-tag{background:linear-gradient(135deg,#7c73ff,#6a62e5)}[data-theme=dark] .tab-btn{background:#2d2d4a;border-color:#3d3d5c;color:#e0e0e0}[data-theme=dark] .tab-btn:hover{background:#353555}[data-theme=dark] .tab-btn.active{background:#6366f1;border-color:#6366f1}[data-theme=dark] .feature-category{background:#252540;border-color:#3d3d5c;box-shadow:0 2px 8px #0000004d}[data-theme=dark] .feature-category h3{color:#a5b4fc}[data-theme=dark] .feature-category li{color:#9ca3af}[data-theme=dark] .roadmap-phases h2{color:#e0e0e0}[data-theme=dark] .phase-card{background:#252540;border-color:#3d3d5c;box-shadow:0 2px 8px #0000004d}[data-theme=dark] .phase-header h3{color:#e0e0e0}[data-theme=dark] .phase-quarter{background:#6366f126;color:#a5b4fc}[data-theme=dark] .phase-features li{border-bottom-color:#3d3d5c}[data-theme=dark] .feature-name{color:#e0e0e0}[data-theme=dark] .status-completed{background:#22c55e26;color:#6ee7b7}[data-theme=dark] .status-in-progress{background:#fbbf2426;color:#fcd34d}[data-theme=dark] .status-planned{background:#0ea5e926;color:#7dd3fc}[data-theme=dark] .status-future{background:#9ca3af26;color:#9ca3af}[data-theme=dark] .view-toggle{background:#2d2d4a}[data-theme=dark] .view-toggle-btn{color:#9ca3af}[data-theme=dark] .view-toggle-btn:hover{color:#e0e0e0}[data-theme=dark] .view-toggle-btn.active{background:#353555;color:#a5b4fc}[data-theme=dark] .most-requested h2{color:#e0e0e0}[data-theme=dark] .section-intro{color:#9ca3af}[data-theme=dark] .requested-item{background:#252540;border-color:#3d3d5c;box-shadow:0 2px 8px #0000004d}[data-theme=dark] .requested-rank{color:#a5b4fc}[data-theme=dark] .requested-info h4{color:#e0e0e0}[data-theme=dark] .votes{color:#9ca3af}[data-theme=dark] .requested-timeline{background:#6366f126;color:#a5b4fc}[data-theme=dark] .requested-item.completed{border-left-color:#4ade80}[data-theme=dark] .timeline-completed{background:#22c55e33!important;color:#4ade80!important}[data-theme=dark] .completed-check{color:#4ade80}[data-theme=dark] .release-notes h2{color:#e0e0e0}[data-theme=dark] .release-card{background:#252540;border-color:#3d3d5c;box-shadow:0 2px 8px #0000004d}[data-theme=dark] .release-card h3{color:#a5b4fc}[data-theme=dark] .release-card li{color:#9ca3af}[data-theme=dark] .roadmap-footer{border-top-color:#3d3d5c}[data-theme=dark] .priority-item{color:#9ca3af}[data-theme=dark] .disclaimer{color:#6b7280}[data-theme=dark] .full-roadmap-link{color:#a5b4fc}.quiz-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden;transition:all .2s}.quiz-card:hover{border-color:#c7d2fe;box-shadow:0 4px 6px -1px #0000001a}.quiz-card.grid{display:flex;flex-direction:column}.quiz-card.grid .card-main{cursor:pointer;flex:1 1;padding:20px}.quiz-card.grid .card-actions{background:#f9fafb;border-top:1px solid #e5e7eb;display:flex}.quiz-card.grid .card-actions button{background:none;border:none;border-right:1px solid #e5e7eb;cursor:pointer;flex:1 1;padding:12px;transition:background .2s}.quiz-card.grid .card-actions button:last-child{border-right:none}.quiz-card.grid .card-actions button:hover{background:#f3f4f6}.quiz-card.grid .card-actions button.btn-delete:hover{background:#fef2f2}.quiz-card.list,.quiz-card.list .card-main{align-items:center;display:flex}.quiz-card.list .card-main{cursor:pointer;flex:1 1;gap:20px;padding:16px 20px}.quiz-card.list .card-header{flex:1 1;min-width:0}.quiz-card.list .quiz-description{display:none}.quiz-card.list .quiz-meta{flex-shrink:0}.quiz-card.list .quiz-footer{flex-shrink:0;min-width:150px;text-align:right}.quiz-card.list .card-actions{display:flex;gap:4px;opacity:0;padding:0 12px;transition:opacity .2s}.quiz-card.list:hover .card-actions{opacity:1}.quiz-card.list .card-actions button{background:none;border:none;border-radius:6px;cursor:pointer;padding:8px;transition:background .2s}.quiz-card.list .card-actions button:hover{background:#f3f4f6}.quiz-card.list .card-actions button.btn-delete:hover{background:#fef2f2}.card-header{align-items:flex-start;gap:12px}.quiz-title{color:#374151;flex:1 1;font-size:1.1rem;font-weight:600;line-height:1.4;margin:0}.status-badge{font-size:.7rem;white-space:nowrap}.status-badge.archived{background:#e5e7eb;color:#6b7280}.quiz-description{color:#6b7280;font-size:.9rem;line-height:1.5;margin:0 0 12px}.quiz-meta{display:flex;gap:12px;margin-bottom:12px}.meta-item{color:#6b7280;font-size:.85rem}.quiz-footer{border-top:1px solid #f3f4f6;padding-top:12px}.date{color:#9ca3af;font-size:.8rem}.btn-action{font-size:1rem}@media (max-width:640px){.quiz-card.list{align-items:stretch;flex-direction:column}.quiz-card.list .card-main{align-items:flex-start;flex-direction:column;gap:8px}.quiz-card.list .quiz-footer{text-align:left}.quiz-card.list .card-actions{border-top:1px solid #e5e7eb;justify-content:flex-end;opacity:1;padding:12px}}.teacher-quiz-list{margin:0 auto;max-width:1200px;padding:20px}.teacher-quiz-list.embedded{padding:0}.list-header{margin-bottom:24px}.list-header h1{color:#374151;font-size:1.75rem;font-weight:600;margin:0}.quiz-list-loading{align-items:center;display:flex;flex-direction:column;gap:16px;justify-content:center;min-height:300px}.list-controls{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:24px}.search-box{flex:1 1;min-width:200px}.search-box input{border:1px solid #d1d5db;border-radius:8px;font-size:.95rem;padding:10px 14px;width:100%}.search-box input:focus{border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a;outline:none}.filter-controls{align-items:center;display:flex;gap:8px}.filter-controls select{background:#fff;border:1px solid #d1d5db;border-radius:8px;cursor:pointer;font-size:.95rem;padding:10px 14px}.view-toggle button{font-size:1rem;padding:10px 14px;transition:background .2s}.view-toggle button:first-child{border-right:1px solid #d1d5db}.quizzes-container{grid-gap:16px;display:grid;gap:16px}.quizzes-container.grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.quizzes-container.list{grid-template-columns:1fr}.view-all{margin-top:20px;text-align:center}.btn-link{padding:8px 16px}@media (max-width:768px){.list-header{align-items:stretch;gap:16px}.list-controls,.list-header{flex-direction:column}.filter-controls{flex-wrap:wrap}.quizzes-container.grid{grid-template-columns:1fr}}.teacher-dashboard{margin:0 auto;max-width:1200px;padding:20px}.dashboard-tabs{border-bottom:2px solid #e0e0e0;display:flex;gap:8px;margin-bottom:24px;padding-bottom:0}.dashboard-tabs .tab{background:none;border:none;border-bottom:2px solid #0000;color:#666;cursor:pointer;font-size:1rem;margin-bottom:-2px;padding:12px 24px;transition:all .2s ease}.dashboard-tabs .tab:hover{color:#667eea}.dashboard-tabs .tab.active{border-bottom-color:#667eea;color:#667eea;font-weight:600}.section-header{margin-bottom:20px}.btn-secondary{border-radius:6px;padding:8px 16px}.btn-danger{background:#fff;border:1px solid #dc3545;border-radius:6px;color:#dc3545;font-size:.9rem;padding:8px 16px}.btn-danger:hover{background:#dc3545;color:#fff}.btn-icon{color:#667eea;font-size:.85rem;padding:4px 8px}.btn-icon:hover{text-decoration:underline}.classrooms-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.classroom-card{background:#fff;border:1px solid #e8e8e8;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:20px;transition:box-shadow .2s ease}.classroom-card:hover{box-shadow:0 4px 16px #0000001f}.classroom-card.inactive{background:#f9f9f9;opacity:.6}.classroom-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:8px}.classroom-header h3{color:#333;font-size:1.1rem;margin:0}.grade-badge{background:#e8f4ff;border-radius:12px;color:#06c;font-size:.8rem;font-weight:500;padding:4px 10px}.classroom-card .subject{color:#666;font-size:.9rem;margin:0 0 8px}.classroom-card .description{color:#888;font-size:.85rem;line-height:1.4;margin:0 0 16px}.classroom-stats{border-bottom:1px solid #f0f0f0;border-top:1px solid #f0f0f0;display:flex;gap:24px;margin-bottom:16px;padding:12px 0}.classroom-stats .stat{display:flex;flex-direction:column}.classroom-stats .stat-value{color:#667eea;font-size:1.5rem;font-weight:600}.classroom-stats .stat-label{color:#888;font-size:.8rem}.join-code-section{margin-bottom:16px}.join-code-section label{color:#666;display:block;font-size:.85rem;margin-bottom:6px}.code-display{align-items:center;background:#f8f9fa;border-radius:6px;display:flex;gap:8px;padding:8px 12px}.code-display code{color:#333;flex:1 1;font-family:SF Mono,Consolas,monospace;font-size:1.2rem;font-weight:600;letter-spacing:2px}.classroom-actions{display:flex;gap:8px}.empty-state{background:#f9f9f9}.empty-state p{margin-bottom:20px}.analytics-summary{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.summary-card{background:#fff;box-shadow:0 2px 8px #00000014;padding:24px;text-align:center}.summary-card h4{color:#666;font-size:.9rem;font-weight:500;margin:0 0 12px}.summary-card .big-number{color:#667eea;font-size:2.5rem;font-weight:700}.modal-content{max-height:90vh}.form-group input,.form-group select,.form-group textarea{border:1px solid #ddd;border-radius:8px;font-size:1rem;padding:10px 12px;transition:border-color .2s ease;width:100%}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#667eea}.loading-spinner{color:#666;font-size:1.1rem;padding:60px}.quizzes-section{margin-bottom:24px}.view-all-link{margin-top:20px;text-align:center}.schedule-section{margin-bottom:24px}.schedule-preview{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:24px}.schedule-info{color:#666;font-size:1rem;margin-bottom:20px}.schedule-features{display:flex;flex-wrap:wrap;gap:24px;margin-bottom:24px}.feature-item{align-items:center;border-radius:8px;gap:8px;padding:12px 16px}.feature-icon{font-size:1.2rem}.quick-schedule-links{border-top:1px solid #e0e0e0;padding-top:20px}.quick-schedule-links h4{color:#666;font-size:.9rem;margin:0 0 12px}.classroom-links{display:flex;flex-wrap:wrap;gap:8px}.btn-outline{border:1px solid #667eea;border-radius:6px;font-size:.9rem;padding:8px 16px}@media (max-width:768px){.teacher-dashboard{padding:16px}.section-header{align-items:stretch;flex-direction:column;gap:12px}.classrooms-grid{grid-template-columns:1fr}.classroom-actions{flex-direction:column}.modal-content{padding:24px}}.quiz-settings{max-width:800px}.settings-section{border-bottom:1px solid #e5e7eb;margin-bottom:32px;padding-bottom:24px}.settings-section:last-child{border-bottom:none;margin-bottom:0}.settings-section h2{color:#374151;font-size:1.1rem;font-weight:600;margin-bottom:16px}.form-group{position:relative}.form-group input[type=number],.form-group input[type=text],.form-group select,.form-group textarea{border:1px solid #d1d5db;border-radius:8px;font-size:.95rem;padding:10px 14px;transition:border-color .2s,box-shadow .2s;width:100%}.char-count{bottom:-18px;color:#9ca3af;font-size:.75rem;position:absolute;right:12px}.form-row{grid-gap:20px;gap:20px;grid-template-columns:repeat(2,1fr)}.visibility-options{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(2,1fr)}.visibility-option{cursor:pointer;position:relative}.visibility-option input{opacity:0;position:absolute}.visibility-option .option-content{align-items:flex-start;background:#fff;border:2px solid #e5e7eb;border-radius:12px;display:flex;gap:12px;padding:16px;transition:all .2s}.visibility-option:hover .option-content{background:#f5f3ff;border-color:#c7d2fe}.visibility-option.selected .option-content{background:#eef2ff;border-color:#6366f1}.visibility-option .option-icon{font-size:1.5rem}.visibility-option strong{color:#374151;display:block;margin-bottom:2px}.visibility-option p{color:#6b7280;font-size:.85rem;margin:0}.view-mode-options{display:flex;gap:12px}.view-mode-option{cursor:pointer;flex:1 1;position:relative}.view-mode-option input{opacity:0;position:absolute}.view-mode-option{align-items:center;background:#fff;border:2px solid #e5e7eb;border-radius:12px;display:flex;flex-direction:column;padding:16px;text-align:center;transition:all .2s}.view-mode-option:hover{background:#f5f3ff;border-color:#c7d2fe}.view-mode-option.selected{background:#eef2ff;border-color:#6366f1}.view-mode-option .option-icon{font-size:1.5rem;margin-bottom:8px}.view-mode-option strong{color:#374151;display:block;font-size:.9rem}.view-mode-option small{color:#6b7280;font-size:.75rem}@media (max-width:640px){.form-row,.visibility-options{grid-template-columns:1fr}.view-mode-options{flex-direction:column}}.question-list{width:100%}.list-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.list-header h2{color:#374151;font-size:1.25rem;font-weight:600;margin:0}.btn-add-question{background:#6366f1;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.95rem;font-weight:500;padding:10px 20px;transition:background .2s}.btn-add-question:hover{background:#4f46e5}.empty-state{padding:60px 20px}.empty-icon{font-size:3rem;margin-bottom:16px}.empty-state h3{color:#374151}.empty-state p{margin:0}.questions-container{display:flex;flex-direction:column;gap:8px}.question-item{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:10px;display:flex;gap:12px;padding:16px;transition:all .2s}.question-item:hover{border-color:#c7d2fe;box-shadow:0 2px 4px #0000000d}.question-item.dragging{background:#f3f4f6;opacity:.5}.question-item.drag-over{background:#eef2ff;border-color:#6366f1}.drag-handle{color:#9ca3af;cursor:grab;font-size:1.25rem;padding:4px;-webkit-user-select:none;user-select:none}.drag-handle:active{cursor:grabbing}.question-number{align-items:center;background:#f3f4f6;border-radius:50%;color:#6b7280;display:flex;flex-shrink:0;font-size:.9rem;font-weight:600;height:32px;justify-content:center;width:32px}.question-content{flex:1 1;min-width:0}.question-text{color:#374151;font-size:.95rem;margin-bottom:4px}.question-meta{color:#9ca3af;display:flex;font-size:.8rem;gap:12px}.has-hint,.has-image{align-items:center;display:inline-flex}.question-actions{display:flex;gap:4px;opacity:0;transition:opacity .2s}.question-item:hover .question-actions{opacity:1}.btn-icon{height:36px;transition:background .2s;width:36px}.btn-icon:hover{background:#f3f4f6}.btn-icon.btn-delete:hover{background:#fef2f2}@media (max-width:640px){.list-header{align-items:stretch;flex-direction:column;gap:12px}.question-item{padding:12px}.question-actions{opacity:1}.drag-handle{display:none}}.modal-overlay{padding:20px}.question-editor-modal{background:#fff;border-radius:16px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;display:flex;flex-direction:column;max-height:90vh;max-width:700px;width:100%}.modal-header h2{color:#374151}.btn-close{line-height:1;padding:4px}.btn-close:hover{color:#374151}.modal-body{flex:1 1}.form-group{margin-bottom:24px}.form-group label{font-size:.95rem}.hint-text{color:#6b7280;font-size:.85rem;margin:0 0 12px}.form-group input[type=text],.form-group textarea{border:1px solid #d1d5db;border-radius:8px;font-size:.95rem;padding:10px 14px;transition:border-color .2s,box-shadow .2s;width:100%}.form-group input:focus,.form-group textarea:focus{border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a;outline:none}.form-group input.error,.form-group textarea.error{border-color:#ef4444}.error-text{color:#ef4444;display:block;font-size:.85rem;margin-top:4px}.image-upload-section{margin-top:12px}.image-upload-btn{align-items:center;background:#f3f4f6;border:1px dashed #d1d5db;border-radius:8px;color:#6b7280;cursor:pointer;display:inline-flex;font-size:.9rem;gap:6px;padding:8px 16px;transition:all .2s}.image-upload-btn:hover{background:#e5e7eb;border-color:#9ca3af}.image-upload-btn.small{font-size:.85rem;margin-top:8px;padding:6px 12px}.image-preview{display:inline-block;margin-top:8px;position:relative}.image-preview img{border-radius:8px;max-height:150px;max-width:200px;object-fit:cover}.image-preview.small img{max-height:80px;max-width:100px}.image-preview button{background:#ef4444;border:none;border-radius:50%;color:#fff;cursor:pointer;font-size:.75rem;height:24px;position:absolute;right:-8px;top:-8px;width:24px}.choices-editor{display:flex;flex-direction:column;gap:8px}.choice-item{align-items:center;background:#fff;border:2px solid #e5e7eb;border-radius:10px;display:flex;gap:10px;padding:12px;transition:all .2s}.choice-item.correct{background:#f0fdf4;border-color:#10b981}.choice-item input[type=radio]{accent-color:#10b981;cursor:pointer;height:20px;width:20px}.choice-text-input{flex:1 1}.choice-image-preview{height:50px;position:relative;width:50px}.choice-image-preview img{border-radius:6px;height:100%;object-fit:cover;width:100%}.choice-image-preview button{background:#ef4444;border:none;border-radius:50%;color:#fff;font-size:.7rem;height:18px;position:absolute;right:-6px;top:-6px;width:18px}.choice-image-preview button,.choice-image-upload{align-items:center;cursor:pointer;display:flex;justify-content:center}.choice-image-upload{border:2px dashed #d1d5db;border-radius:8px;flex-shrink:0;height:40px;transition:all .2s;width:40px}.choice-image-upload:hover{background:#f5f3ff;border-color:#6366f1}.btn-remove-choice{background:none;border:none;cursor:pointer;font-size:1rem;opacity:.5;transition:opacity .2s}.btn-remove-choice:hover{opacity:1}.btn-add-choice{background:#f9fafb;border:2px dashed #d1d5db;border-radius:10px;color:#6b7280;cursor:pointer;font-size:.95rem;padding:12px;transition:all .2s}.btn-add-choice:hover{background:#f3f4f6;border-color:#9ca3af;color:#374151}.difficulty-slider{-webkit-appearance:none;appearance:none;background:linear-gradient(90deg,#10b981,#f59e0b,#ef4444);border-radius:4px;height:8px;margin:12px 0 8px;outline:none;width:100%}.difficulty-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:#fff;border:2px solid #6366f1;border-radius:50%;box-shadow:0 2px 4px #0000001a;cursor:pointer;height:20px;width:20px}.difficulty-labels{color:#6b7280;display:flex;font-size:.8rem;justify-content:space-between}.btn-secondary:hover{border-color:#9ca3af}@media (max-width:640px){.modal-overlay{padding:0}.question-editor-modal{border-radius:0;max-height:100vh}.choice-item{flex-wrap:wrap}.choice-text-input{margin-top:8px;order:2;width:100%}}.quiz-preview{margin:0 auto;max-width:800px}.preview-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.preview-header h2{color:#374151;font-size:1.25rem;margin:0}.preview-badge{background:#e0e7ff;border-radius:9999px;color:#4338ca;font-size:.8rem;font-weight:500;padding:4px 12px;text-transform:capitalize}.quiz-preview-empty{color:#6b7280;padding:60px;text-align:center}.preview-progress{margin-bottom:24px}.preview-progress span{color:#6b7280;display:block;font-size:.9rem;margin-bottom:8px}.progress-bar{background:#e5e7eb}.progress-fill{background:#6366f1}.preview-question{background:#f9fafb;border-radius:16px;margin-bottom:24px;padding:24px}.question-content{margin-bottom:24px;text-align:center}.question-content h3{color:#374151;font-size:1.25rem;line-height:1.5;margin:0 0 16px}.question-image{border-radius:12px;max-height:300px;max-width:100%;object-fit:contain}.choices-container.list{display:flex;flex-direction:column;gap:12px}.choices-container.list .choice-button{align-items:center;background:#fff;border:2px solid #e5e7eb;border-radius:12px;cursor:pointer;display:flex;font-size:1rem;gap:16px;padding:16px;text-align:left;transition:all .2s}.choices-container.list .choice-button:hover:not(:disabled){background:#f5f3ff;border-color:#6366f1}.choices-container.list .choice-button.selected{background:#eef2ff;border-color:#6366f1}.choices-container.list .choice-button.correct{background:#d1fae5;border-color:#10b981}.choices-container.list .choice-button.incorrect{background:#fee2e2;border-color:#ef4444}.choices-container.list .choice-inline-image{border-radius:8px;flex-shrink:0;height:60px;object-fit:cover;width:60px}.choices-container.grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(2,1fr)}.choices-container.grid .choice-button{align-items:center;background:#fff;border:3px solid #e5e7eb;border-radius:16px;cursor:pointer;display:flex;flex-direction:column;justify-content:center;min-height:150px;padding:20px;transition:all .2s}.choices-container.grid .choice-button:hover:not(:disabled){border-color:#6366f1;transform:scale(1.02)}.choices-container.grid .choice-button.selected{border-color:#6366f1;box-shadow:0 0 0 4px #6366f133}.choices-container.grid .choice-button.correct{background:#d1fae5;border-color:#10b981}.choices-container.grid .choice-button.incorrect{background:#fee2e2;border-color:#ef4444}.choices-container.grid .choice-image-container{align-items:center;display:flex;height:100px;justify-content:center;margin-bottom:12px;width:100px}.choices-container.grid .choice-image-container img{border-radius:8px;max-height:100%;max-width:100%;object-fit:contain}.choices-container.grid .choice-text{font-weight:500;text-align:center}.choices-container.kahoot{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(2,1fr)}.choices-container.kahoot .choice-button{align-items:center;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;flex-direction:column;font-size:1.1rem;font-weight:700;justify-content:center;min-height:120px;padding:24px;text-shadow:0 1px 2px #0003;transition:all .15s}.choices-container.kahoot .choice-button:hover:not(:disabled){filter:brightness(1.1);transform:scale(1.03)}.choices-container.kahoot .choice-button.selected{box-shadow:inset 0 4px 8px #0000004d;filter:brightness(.9);transform:scale(.97)}.choices-container.kahoot .choice-button.correct{box-shadow:0 0 0 4px #10b981,inset 0 0 20px #10b98180}.choices-container.kahoot .choice-button.incorrect{opacity:.5}.choices-container.kahoot .choice-image-container{align-items:center;background:#fff3;border-radius:8px;display:flex;height:80px;justify-content:center;margin-bottom:12px;width:80px}.choices-container.kahoot .choice-image-container img{max-height:90%;max-width:90%;object-fit:contain}.correct-indicator{font-size:1.25rem;margin-left:auto}.explanation-box{border-radius:12px;margin-top:24px;padding:16px}.explanation-box.correct{background:#d1fae5;border:1px solid #10b981}.explanation-box.incorrect{background:#fee2e2;border:1px solid #ef4444}.explanation-header{font-size:1.1rem;font-weight:600;margin-bottom:8px}.explanation-content p{color:#374151;margin:0 0 12px}.explanation-content img{border-radius:8px;max-height:200px;max-width:100%;object-fit:contain}.preview-navigation{display:flex;justify-content:space-between}.btn-nav{background:#fff;border:1px solid #d1d5db;border-radius:8px;cursor:pointer;font-size:.95rem;padding:10px 24px;transition:all .2s}.btn-nav:hover:not(:disabled){background:#f3f4f6;border-color:#9ca3af}.btn-nav:disabled{cursor:not-allowed;opacity:.5}@media (max-width:640px){.choices-container.grid,.choices-container.kahoot{grid-template-columns:1fr}.choices-container.list .choice-inline-image{height:50px;width:50px}}.date-range-picker{margin-top:12px}.date-inputs{display:flex;gap:12px;margin-bottom:16px}.date-input{flex:1 1}.date-input label{color:#6b7280;display:block;font-size:.85rem;margin-bottom:4px}.date-input input{border:1px solid #d1d5db;border-radius:8px;font-size:.9rem;padding:8px 12px;width:100%}.date-input input:focus{border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a;outline:none}.date-input input.active{border-color:#6366f1}.calendar{background:#f9fafb;border:1px solid #e5e7eb;border-radius:12px;padding:16px}.calendar-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.calendar-header button{background:none;border:none;border-radius:4px;color:#6b7280;cursor:pointer;font-size:1rem;padding:4px 8px}.calendar-header button:hover{background:#e5e7eb;color:#374151}.calendar-header span{color:#374151;font-weight:600}.calendar-weekdays{grid-gap:4px;gap:4px;margin-bottom:8px}.weekday{color:#9ca3af;font-size:.75rem;padding:4px}.calendar-grid{grid-gap:4px;gap:4px}.calendar-day{align-items:center;aspect-ratio:1;background:#fff;border:none;border-radius:8px;display:flex;font-size:.9rem;justify-content:center;transition:all .15s}.calendar-day:hover:not(:disabled):not(.empty){background:#e0e7ff}.calendar-day.empty{background:#0000;cursor:default}.calendar-day.in-range{background:#e0e7ff;border-radius:0}.calendar-day.range-start{background:#6366f1;border-radius:8px 0 0 8px;color:#fff}.calendar-day.range-end{background:#6366f1;border-radius:0 8px 8px 0;color:#fff}.calendar-day.range-start.range-end,.date-summary{border-radius:8px}.date-summary{background:#eef2ff;color:#374151;font-size:.9rem;margin-top:16px;padding:12px}.date-summary strong{margin-right:8px}.duration{color:#6b7280;margin-left:8px}.share-modal{background:#fff;border-radius:16px;box-shadow:0 20px 25px -5px #0000001a;display:flex;flex-direction:column;max-height:90vh;max-width:500px;width:100%}.share-type-options{display:flex;gap:12px}.share-type-option{align-items:center;border:2px solid #e5e7eb;border-radius:12px;cursor:pointer;display:flex;flex:1 1;flex-direction:column;padding:16px;transition:all .2s}.share-type-option input{display:none}.share-type-option:hover{background:#f5f3ff;border-color:#c7d2fe}.share-type-option.selected{background:#eef2ff;border-color:#6366f1}.share-type-option .option-icon{font-size:1.5rem;margin-bottom:8px}.permission-options{display:flex;flex-direction:column;gap:8px}.permission-option{align-items:flex-start;border:2px solid #e5e7eb;border-radius:10px;cursor:pointer;display:flex;gap:12px;padding:12px;transition:all .2s}.permission-option input{margin-top:4px}.permission-option:hover{border-color:#c7d2fe}.permission-option.selected{background:#eef2ff;border-color:#6366f1}.permission-option strong{color:#374151;display:block}.permission-option p{color:#6b7280;font-size:.85rem;margin:0}.period-options{display:flex;gap:16px;margin-bottom:12px}.period-option{align-items:center;cursor:pointer;display:flex;gap:8px}.period-option.selected{color:#6366f1;font-weight:500}.term-select{border:1px solid #d1d5db;border-radius:8px;font-size:.95rem;padding:10px 14px;width:100%}.loading-state{color:#6b7280;padding:40px;text-align:center}.form-group label{margin-bottom:8px}.form-group select,.form-group textarea{border:1px solid #d1d5db;border-radius:8px;font-size:.95rem;padding:10px 14px;width:100%}.form-group textarea{min-height:60px}.share-list{width:100%}.share-list-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.share-list-header h3{color:#374151;font-size:1.1rem;margin:0}.share-list-loading{color:#6b7280;padding:40px;text-align:center}.empty-state{background:#f9fafb;border:2px dashed #e5e7eb}.shares-container{display:flex;flex-direction:column;gap:12px}.share-item{align-items:flex-start;background:#fff;border:1px solid #e5e7eb;border-radius:12px;display:flex;gap:16px;padding:16px;transition:all .2s}.share-item:hover{border-color:#c7d2fe}.share-item.inactive{background:#f9fafb;opacity:.7}.share-icon{flex-shrink:0;font-size:1.5rem}.share-info{flex:1 1;min-width:0}.share-target{color:#374151;font-weight:600;margin-bottom:4px}.share-meta{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:4px}.permission-badge{background:#e5e7eb;border-radius:9999px;color:#374151;font-size:.75rem;padding:2px 8px}.permission-badge.assign{background:#d1fae5;color:#065f46}.term-badge{background:#e0e7ff;border-radius:9999px;color:#4338ca;font-size:.75rem;padding:2px 8px}.share-dates{color:#6b7280;font-size:.85rem}.inactive-badge{background:#fef3c7;border-radius:4px;color:#92400e;font-size:.75rem;margin-left:8px;padding:2px 6px}.share-notes{color:#6b7280;font-size:.85rem;font-style:italic;margin-top:8px}.share-actions{flex-shrink:0}.btn-icon{background:none;border:none;border-radius:8px;cursor:pointer;font-size:1rem;opacity:.6;padding:8px;transition:all .2s}.btn-icon:hover{background:#fef2f2;opacity:1}.btn-primary:hover{background:#4f46e5}.quiz-builder{margin:0 auto;max-width:1200px;min-height:100vh;padding:20px}.quiz-builder-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;margin-bottom:24px;padding-bottom:16px}.header-left{gap:16px}.header-left h1{font-size:1.75rem;font-weight:600;margin:0}.btn-back{background:none;border:none;color:#6366f1;padding:8px}.btn-back:hover{text-decoration:underline}.status-badge{border-radius:9999px;font-size:.75rem;font-weight:500;padding:4px 12px;text-transform:uppercase}.status-badge.draft{background:#fef3c7;color:#92400e}.status-badge.published{background:#d1fae5;color:#065f46}.header-actions{display:flex;gap:12px}.quiz-builder-tabs{border-bottom:1px solid #e5e7eb;display:flex;gap:8px;margin-bottom:24px;padding-bottom:0}.quiz-builder-tabs button{background:none;border:none;border-bottom:2px solid #0000;color:#6b7280;cursor:pointer;font-size:.95rem;padding:12px 24px;transition:all .2s}.quiz-builder-tabs button:hover:not(:disabled){color:#4f46e5}.quiz-builder-tabs button.active{border-bottom-color:#4f46e5;color:#4f46e5;font-weight:500}.quiz-builder-tabs button:disabled{color:#d1d5db;cursor:not-allowed}.quiz-builder-content{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:24px}.quiz-builder-loading{align-items:center;display:flex;flex-direction:column;gap:16px;justify-content:center;min-height:400px}.error-banner{margin-bottom:16px}.error-banner button{color:#991b1b;font-size:1.25rem}.btn-primary{transition:background .2s}.btn-secondary:hover:not(:disabled){background:#f9fafb;border-color:#9ca3af}.btn-secondary:disabled{color:#9ca3af}.sharing-placeholder{color:#6b7280;padding:48px;text-align:center}.sharing-placeholder h2{color:#374151;margin-bottom:8px}@media (max-width:768px){.quiz-builder{padding:12px}.quiz-builder-header{align-items:flex-start;flex-direction:column;gap:16px}.header-actions{width:100%}.header-actions button{flex:1 1}.quiz-builder-tabs{-webkit-overflow-scrolling:touch;overflow-x:auto}.quiz-builder-tabs button{padding:12px 16px;white-space:nowrap}}.schedule-modal{background:#fff;border-radius:16px;box-shadow:0 20px 25px -5px #0000001a;display:flex;flex-direction:column;max-height:90vh;max-width:500px;width:100%}.content-type-options{display:flex;gap:8px}.content-type-options label{align-items:center;border:2px solid #e5e7eb;border-radius:10px;cursor:pointer;display:flex;flex:1 1;flex-direction:column;padding:16px;transition:all .2s}.content-type-options label input{display:none}.content-type-options label:hover{background:#f5f3ff;border-color:#c7d2fe}.content-type-options label.selected{background:#eef2ff;border-color:#6366f1}.content-type-options label span{font-size:1.5rem;margin-bottom:4px}.form-group{margin-bottom:16px}.form-group input[type=date],.form-group input[type=text],.form-group select,.form-group textarea{border:1px solid #d1d5db;border-radius:8px;font-size:.95rem;padding:10px 14px;width:100%}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a;outline:none}.form-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.checkbox-label{align-items:center;cursor:pointer;display:flex!important;gap:8px}.checkbox-label input{accent-color:#6366f1;height:18px;width:18px}.error-message{color:#991b1b;margin-bottom:16px;padding:12px}.modal-header h2{font-size:1.25rem;font-weight:600;margin:0}.btn-close{background:none}.modal-body{overflow-y:auto;padding:24px}.modal-footer{background:#f9fafb;border-radius:0 0 16px 16px;border-top:1px solid #e5e7eb;display:flex;gap:12px;justify-content:flex-end;padding:16px 24px}.btn-primary:disabled{background:#c7d2fe}.btn-secondary:hover{background:#f9fafb}@media (max-width:480px){.content-type-options{flex-direction:column}.form-row{grid-template-columns:1fr}}.study-plan-calendar{margin:0 auto;max-width:1200px;padding:20px}.calendar-header{margin-bottom:24px}.calendar-header h1{color:#374151;font-size:1.75rem;font-weight:600;margin:0 0 16px}.calendar-controls{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.calendar-controls select{background:#fff;font-size:.9rem;padding:8px 12px}.calendar-controls select,.view-toggle{border:1px solid #d1d5db;border-radius:8px}.view-toggle{display:flex;overflow:hidden}.view-toggle button{background:#fff;border:none;cursor:pointer;font-size:.9rem;padding:8px 16px;transition:all .2s}.view-toggle button:not(:last-child){border-right:1px solid #d1d5db}.view-toggle button:hover{background:#f3f4f6}.view-toggle button.active{background:#6366f1;color:#fff}.date-nav{align-items:center;display:flex;gap:8px}.date-nav button{background:#fff;border:1px solid #d1d5db;border-radius:8px;cursor:pointer;font-size:.9rem;padding:8px 12px}.date-nav button:hover{background:#f3f4f6}.current-period{font-weight:600;min-width:150px;text-align:center}.btn-today{border-color:#6366f1!important;color:#6366f1!important}.btn-add{background:#6366f1;margin-left:auto}.btn-add:hover{background:#4f46e5}.study-plan-loading{align-items:center;display:flex;flex-direction:column;gap:16px;justify-content:center;min-height:400px}.calendar-grid-container{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden}.calendar-weekdays{background:#f9fafb;border-bottom:1px solid #e5e7eb;display:grid;grid-template-columns:repeat(7,1fr)}.weekday{color:#6b7280;font-size:.85rem;font-weight:600;padding:12px;text-align:center}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr)}.calendar-day{border-bottom:1px solid #e5e7eb;border-right:1px solid #e5e7eb;cursor:pointer;min-height:120px;padding:8px;transition:background .2s}.calendar-day:hover{background:#f9fafb}.calendar-day:nth-child(7n){border-right:none}.calendar-day.other-month{background:#f9fafb}.calendar-day.other-month .day-number{color:#9ca3af}.calendar-day.today{background:#eef2ff}.calendar-day.today .day-number{align-items:center;background:#6366f1;border-radius:50%;color:#fff;display:flex;height:28px;justify-content:center;width:28px}.day-number{color:#374151;font-weight:600;margin-bottom:8px}.day-items{display:flex;flex-direction:column;gap:4px}.day-item{border-radius:4px;cursor:pointer;font-size:.75rem;overflow:hidden;padding:4px 6px;text-overflow:ellipsis;white-space:nowrap}.day-item.quiz{background:#dbeafe;color:#1e40af}.day-item.category{background:#d1fae5;color:#065f46}.day-item.learning_topic{background:#fef3c7;color:#92400e}.more-items{color:#6b7280;font-size:.75rem;padding:2px 4px}.list-view{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:20px}.empty-state{color:#6b7280;padding:40px}.list-items{display:flex;flex-direction:column;gap:12px}.list-item{align-items:flex-start;background:#f9fafb;border-radius:10px;display:flex;gap:16px;padding:16px;transition:background .2s}.list-item:hover{background:#f3f4f6}.item-info{flex:1 1;min-width:0}.item-title{color:#374151;font-weight:600;margin-bottom:4px}.item-meta{color:#6b7280;display:flex;font-size:.85rem;gap:12px}.required-badge{background:#fee2e2;border-radius:9999px;color:#991b1b;font-size:.75rem;padding:2px 8px}.item-notes{color:#6b7280;font-size:.85rem;font-style:italic;margin-top:8px}.btn-delete{background:none;border:none;opacity:.6;padding:8px;transition:opacity .2s}.btn-delete:hover{opacity:1}@media (max-width:768px){.calendar-controls{align-items:stretch;flex-direction:column}.date-nav{justify-content:center}.btn-add{margin-left:0;width:100%}.calendar-day{min-height:80px;padding:4px}.day-item{font-size:.65rem;padding:2px 4px}}.parent-dashboard{margin:0 auto;max-width:1200px;padding:20px}.dashboard-header{margin-bottom:24px}.dashboard-header h1{color:#333;margin-bottom:8px}.welcome-text{color:#666;font-size:1.1rem}.dashboard-content{grid-gap:24px;display:grid;gap:24px;grid-template-columns:300px 1fr}.children-section{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;height:-webkit-fit-content;height:fit-content;padding:20px}.section-header h2{color:#333;font-size:1.1rem}.children-list{display:flex;flex-direction:column;gap:12px}.child-card{align-items:center;border:2px solid #0000;border-radius:8px;cursor:pointer;display:flex;gap:12px;padding:12px;transition:all .2s ease}.child-card:hover{background:#f8f9fa}.child-card.selected{background:#f0f4ff;border-color:#667eea}.child-card.unverified{opacity:.7}.child-avatar{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;color:#fff;display:flex;font-size:1.2rem;font-weight:600;height:40px;justify-content:center;width:40px}.child-info{flex:1 1}.child-info h3{color:#333;font-size:1rem;margin:0}.child-info .relationship{color:#888;font-size:.8rem;text-transform:capitalize}.pending-badge{background:#fff3cd;border-radius:10px;color:#856404;display:inline-block;font-size:.7rem;margin-left:8px;padding:2px 8px}.btn-icon-danger{color:#dc3545;font-size:1.2rem;opacity:0;padding:4px 8px;transition:opacity .2s ease}.child-card:hover .btn-icon-danger{opacity:1}.progress-section{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:24px}.progress-section h2{color:#333;margin:0 0 20px}.select-child-prompt{align-items:center;color:#888;display:flex;height:200px;justify-content:center}.verification-needed{background:#fff8e1;border-radius:8px;padding:40px;text-align:center}.verification-needed h3{color:#f57c00;margin-bottom:8px}.verification-needed p{color:#666;margin-bottom:16px}.stats-grid{grid-gap:16px;gap:16px;grid-template-columns:repeat(4,1fr);margin-bottom:24px}.stat-card{background:linear-gradient(135deg,#f8f9fa,#e9ecef);padding:20px}.stat-card .stat-value{color:#667eea;display:block;font-size:2rem;font-weight:700}.stat-card .stat-label{color:#666;font-size:.85rem}.score-section{margin-bottom:24px}.score-section h3{color:#333;font-size:1rem;margin:0 0 12px}.score-bar{background:#e9ecef;border-radius:12px;height:24px;overflow:hidden;position:relative}.score-fill{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;height:100%;transition:width .5s ease}.score-text{color:#333;font-weight:600;position:absolute;right:12px;top:50%;transform:translateY(-50%)}.recent-activity{margin-bottom:24px}.recent-activity h3{color:#333;font-size:1rem;margin:0 0 12px}.activity-list{list-style:none;margin:0;padding:0}.activity-item{align-items:center;border-bottom:1px solid #f0f0f0;display:flex;justify-content:space-between;padding:12px}.activity-item:last-child{border-bottom:none}.activity-info{align-items:center;display:flex;gap:8px}.activity-score{color:#333;font-weight:600}.activity-percent{color:#667eea}.activity-date{color:#888;font-size:.85rem}.no-activity{color:#888;padding:20px;text-align:center}.classrooms-section h3{color:#333;font-size:1rem;margin:0 0 12px}.classroom-list{list-style:none;margin:0;padding:0}.classroom-item{background:#f8f9fa;border-radius:8px;margin-bottom:8px;padding:12px}.classroom-item .teacher{color:#666;display:block;font-size:.85rem;margin-top:4px}.btn-primary{transition:transform .2s ease,box-shadow .2s ease}.btn-primary:hover{transform:translateY(-2px)}.btn-secondary{background:#f0f0f0;border:1px solid #ddd;transition:background .2s ease}.btn-secondary:hover{background:#e0e0e0}.empty-state{padding:40px 20px}.empty-state h3{color:#333;margin-bottom:8px}.empty-state p{color:#666;margin-bottom:16px}.modal-overlay{align-items:center;display:flex;justify-content:center;position:fixed;z-index:1000}.modal-content{max-width:450px;padding:32px}.modal-content h2{color:#333;margin:0 0 24px}.form-group{margin-bottom:20px}.form-group label{margin-bottom:6px}.form-group input,.form-group select{border:1px solid #ddd;border-radius:8px;font-size:1rem;padding:10px 12px;transition:border-color .2s ease;width:100%}.form-group input:focus,.form-group select:focus{border-color:#667eea;outline:none}.form-note{color:#666;font-size:.85rem;margin-bottom:20px}.error-banner{background:#fff3f3;border:1px solid #fcc;color:#c00;justify-content:space-between;margin-bottom:20px;padding:12px 16px}.error-banner button{background:none;border:none;color:#c00;cursor:pointer;font-size:.9rem}.loading-progress,.loading-spinner{color:#666;padding:40px;text-align:center}@media (max-width:900px){.dashboard-content{grid-template-columns:1fr}.children-section{order:1}.progress-section{order:2}}@media (max-width:600px){.stats-grid{grid-template-columns:repeat(2,1fr)}.section-header{flex-direction:column;gap:12px}}.bulk-import{margin:0 auto;max-width:900px;padding:2rem}.bulk-import-header{margin-bottom:2rem}.bulk-import-header h1{color:#1a1a2e;color:var(--color-text-primary,#1a1a2e);font-size:2rem;margin:0 0 .5rem}.bulk-import-header .subtitle{color:#666;color:var(--color-text-secondary,#666);font-size:1rem;margin:0}.loading-state{align-items:center;display:flex;flex-direction:column;gap:1rem;justify-content:center;padding:4rem}.spinner{border:3px solid #e0e0e0;border-top-color:#6366f1;border:3px solid var(--color-border,#e0e0e0);border-top-color:var(--color-primary,#6366f1)}.spinner-small{animation:spin .6s linear infinite;border:2px solid #ffffff4d;border-top-color:#fff;display:inline-block;height:16px;margin-right:8px;width:16px}.error-banner{align-items:center;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#991b1b;display:flex;gap:.75rem;margin-bottom:1.5rem;padding:1rem}.error-banner .error-icon{font-size:1.25rem}.error-banner .close-btn{background:none;border:none;color:#991b1b;cursor:pointer;font-size:1.25rem;line-height:1;margin-left:auto;padding:0}.error-banner .close-btn:hover{color:#7f1d1d}.section{background:#fff;background:var(--color-surface,#fff);border:1px solid #e0e0e0;border:1px solid var(--color-border,#e0e0e0);border-radius:12px;margin-bottom:1.5rem;padding:1.5rem}.section h2{font-size:1.125rem;margin:0 0 1rem}.section h2,.section h3{color:#1a1a2e;color:var(--color-text-primary,#1a1a2e)}.section h3{font-size:1rem;margin:0 0 .75rem}.org-selector{align-items:center;display:flex;gap:1rem}.org-selector select{background:#fff;border:1px solid #d1d5db;border:1px solid var(--color-border,#d1d5db);border-radius:8px;cursor:pointer;flex:1 1;font-size:1rem;max-width:400px;padding:.75rem 1rem}.org-selector select:focus{border-color:#6366f1;border-color:var(--color-primary,#6366f1);box-shadow:0 0 0 3px #6366f11a;outline:none}.org-info{font-size:.875rem}.no-orgs,.org-info{color:#666;color:var(--color-text-secondary,#666)}.no-orgs{font-style:italic}.class-codes-section{background:#f0fdf4;border-color:#bbf7d0}.class-codes{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.75rem}.class-code-tag{background:#dcfce7;border-radius:16px;color:#166534;font-family:monospace;font-size:.875rem;padding:.375rem .75rem}.hint{color:#15803d;font-size:.875rem;margin:0}.input-options{align-items:center;display:flex;gap:1rem;margin-bottom:1rem}.file-input{display:none}.file-label{cursor:pointer}.btn-primary,.btn-secondary{align-items:center;border:none;border-radius:8px;cursor:pointer;display:inline-flex;font-size:.9375rem;font-weight:500;justify-content:center;padding:.75rem 1.5rem;transition:all .2s ease}.btn-primary{background:#6366f1;background:var(--color-primary,#6366f1)}.btn-primary:hover:not(:disabled){background:#4f46e5;background:var(--color-primary-dark,#4f46e5)}.btn-secondary{background:var(--color-surface,#f3f4f6);border:1px solid var(--color-border,#d1d5db);color:var(--color-text-primary,#374151)}.btn-secondary:hover{background:var(--color-surface-hover,#e5e7eb)}.btn-import{min-width:200px}.json-input{border:1px solid #d1d5db;border:1px solid var(--color-border,#d1d5db);border-radius:8px;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.875rem;line-height:1.5;min-height:200px;padding:1rem;resize:vertical;transition:border-color .2s ease;width:100%}.json-input:focus{border-color:#6366f1;border-color:var(--color-primary,#6366f1);box-shadow:0 0 0 3px #6366f11a;outline:none}.json-input.has-error{border-color:#ef4444}.json-input.has-error:focus{box-shadow:0 0 0 3px #ef44441a}.json-input.valid{border-color:#22c55e}.json-input.valid:focus{box-shadow:0 0 0 3px #22c55e1a}.parse-error{align-items:flex-start;background:#fef2f2;border-radius:6px;color:#991b1b;display:flex;font-size:.875rem;gap:.5rem;margin-top:.75rem;padding:.75rem}.parse-error .error-icon{flex-shrink:0}.parse-error pre{font-family:inherit;margin:0;white-space:pre-wrap}.preview-table-container{overflow-x:auto}.preview-table{border-collapse:collapse;font-size:.875rem;width:100%}.preview-table td,.preview-table th{border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--color-border,#e5e7eb);padding:.75rem 1rem;text-align:left}.preview-table th{background:#f9fafb;background:var(--color-surface,#f9fafb);color:#6b7280;color:var(--color-text-secondary,#6b7280);font-size:.75rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.preview-table tbody tr:hover{background:#f3f4f6;background:var(--color-surface-hover,#f3f4f6)}.user-type-badge{border-radius:4px;display:inline-block;font-size:.75rem;font-weight:500;padding:.25rem .5rem;text-transform:capitalize}.user-type-badge.student{background:#dbeafe;color:#1e40af}.user-type-badge.teacher{background:#dcfce7;color:#166534}.user-type-badge.aide{background:#fef3c7;color:#92400e}.no-classes{color:#9ca3af;color:var(--color-text-secondary,#9ca3af)}.more-users{background:#f9fafb;background:var(--color-surface,#f9fafb);border-radius:0 0 8px 8px;color:#6b7280;color:var(--color-text-secondary,#6b7280);font-size:.875rem;margin:0;padding:.75rem;text-align:center}.options-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.option-checkbox{background:#f9fafb;background:var(--color-surface,#f9fafb);border-radius:8px;cursor:pointer;display:flex;flex-direction:column;padding:1rem;transition:background-color .2s ease}.option-checkbox:hover{background:#f3f4f6;background:var(--color-surface-hover,#f3f4f6)}.option-checkbox input[type=checkbox]{height:0;opacity:0;position:absolute;width:0}.option-checkbox span{color:#1f2937;color:var(--color-text-primary,#1f2937);font-weight:500;padding-left:28px;position:relative}.option-checkbox span:before{background:#fff;border:2px solid #d1d5db;border:2px solid var(--color-border,#d1d5db);border-radius:4px;content:"";height:18px;left:0;position:absolute;top:50%;transform:translateY(-50%);transition:all .2s ease;width:18px}.option-checkbox input:checked+span:before{background:#6366f1;background:var(--color-primary,#6366f1);border-color:#6366f1;border-color:var(--color-primary,#6366f1)}.option-checkbox input:checked+span:after{color:#fff;content:"✓";font-size:12px;left:3px;position:absolute;top:50%;transform:translateY(-50%)}.option-checkbox small{color:#6b7280;color:var(--color-text-secondary,#6b7280);display:block;font-size:.8125rem;margin-top:.375rem;padding-left:28px}.action-section{display:flex;gap:1rem;justify-content:center;padding:1.5rem}.results-section{background:#f0fdf4;border-color:#bbf7d0}.results-summary{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(4,1fr);margin-bottom:1.5rem}.result-stat{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:1rem;text-align:center}.result-stat.success{background:#dcfce7;border-color:#86efac}.result-stat.warning{background:#fef3c7;border-color:#fcd34d}.result-stat.error{background:#fee2e2;border-color:#fca5a5}.stat-value{color:var(--color-text-primary,#1f2937)}.stat-label{color:var(--color-text-secondary,#6b7280);font-size:.8125rem}.results-details{margin-top:1.5rem}.results-details h3{margin-bottom:1rem}.results-list{display:flex;flex-direction:column;gap:.5rem;max-height:300px;overflow-y:auto}.result-item{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:6px;display:flex;gap:.75rem;padding:.75rem 1rem}.result-item.success{border-left:3px solid #22c55e}.result-item.error{border-left:3px solid #ef4444}.result-icon{font-size:1rem;font-weight:700}.result-item.success .result-icon{color:#22c55e}.result-item.error .result-icon{color:#ef4444}.result-email{flex:1 1;font-family:monospace;font-size:.875rem}.result-action{border-radius:4px;font-size:.75rem;font-weight:500;padding:.25rem .5rem;text-transform:uppercase}.result-action.created{background:#dcfce7;color:#166534}.result-action.skipped{background:#fef3c7;color:#92400e}.result-action.failed{background:#fee2e2;color:#991b1b}.result-enrollments{color:#0891b2;font-size:.8125rem}.result-error{color:#dc2626;font-size:.8125rem;margin-left:auto}.import-errors{background:#fef2f2;border-radius:8px;margin-top:1.5rem;padding:1rem}.import-errors h3{color:#991b1b;margin:0 0 .75rem}.import-errors ul{color:#991b1b;font-size:.875rem;margin:0;padding-left:1.5rem}.import-errors li{margin-bottom:.25rem}.results-actions{border-top:1px solid #bbf7d0;display:flex;gap:1rem;justify-content:center;margin-top:1.5rem;padding-top:1.5rem}.help-section{background:#f8fafc;background:var(--color-surface,#f8fafc)}.help-content{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:1fr 1fr}.field-reference h4{color:#1f2937;color:var(--color-text-primary,#1f2937);font-size:.9375rem;margin:0 0 .75rem}.field-reference h4:not(:first-child){margin-top:1.25rem}.field-reference ul{color:#4b5563;color:var(--color-text-secondary,#4b5563);font-size:.875rem;margin:0;padding-left:1.25rem}.field-reference li{margin-bottom:.5rem}.field-reference code{background:#e5e7eb;border-radius:4px;color:#1f2937;font-size:.8125rem;padding:.125rem .375rem}.example-json h4{color:#1f2937;color:var(--color-text-primary,#1f2937);font-size:.9375rem;margin:0 0 .75rem}.example-json pre{background:#1f2937;border-radius:8px;color:#e5e7eb;font-size:.8125rem;line-height:1.6;margin:0;overflow-x:auto;padding:1rem}@media (max-width:768px){.bulk-import{padding:1rem}.bulk-import-header h1{font-size:1.5rem}.input-options{align-items:stretch;flex-direction:column}.results-summary{grid-template-columns:repeat(2,1fr)}.help-content,.options-grid{grid-template-columns:1fr}.action-section{flex-direction:column}.action-section .btn-primary,.action-section .btn-secondary{width:100%}}.k12-landing{overflow-x:hidden;width:100%}.hero-section{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;gap:60px;justify-content:center;min-height:80vh;padding:80px 20px}.hero-content{max-width:600px}.hero-content h1{font-size:3rem;font-weight:700;line-height:1.2;margin-bottom:20px}.hero-subtitle{font-size:1.3rem;line-height:1.6;margin-bottom:40px;opacity:.95}.hero-subtitle strong{color:gold}.hero-stats{display:flex;gap:40px;margin-bottom:40px}.stat-item{display:flex;flex-direction:column}.stat-number{font-size:2.5rem;font-weight:700}.stat-label{font-size:.9rem}.hero-cta{display:flex;gap:16px}.btn-primary-large{background:#fff;border:none;border-radius:12px;color:#667eea;cursor:pointer;font-size:1.1rem;font-weight:600;padding:16px 32px;transition:transform .2s ease,box-shadow .2s ease}.btn-primary-large:hover{box-shadow:0 8px 20px #0003;transform:translateY(-3px)}.btn-secondary-large{background:#0000;border:2px solid #fff;border-radius:12px;color:#fff;font-size:1.1rem;font-weight:600;padding:14px 32px;text-decoration:none;transition:background .2s ease}.btn-secondary-large:hover{background:#ffffff1a}.hero-visual{height:300px;position:relative;width:300px}.floating-cards{height:100%;position:relative;width:100%}.floating-cards .subject-card{animation:float 3s ease-in-out infinite;border-radius:12px;box-shadow:0 10px 30px #0003;font-size:1.2rem;font-weight:600;padding:20px 30px;position:absolute}.floating-cards .math{animation-delay:0s;background:#4caf50;left:10%;top:20%}.floating-cards .science{animation-delay:.5s;background:#2196f3;right:10%;top:40%}.floating-cards .english{animation-delay:1s;background:#9c27b0;bottom:20%;left:30%}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-15px)}}.grade-section{background:#f8f9fa;padding:80px 20px;text-align:center}.grade-section h2{color:#333;font-size:2.2rem;margin-bottom:12px}.section-subtitle{color:#666;font-size:1.1rem;margin-bottom:40px}.grade-selector{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin:0 auto 40px;max-width:900px}.grade-btn{align-items:center;background:#fff;border:2px solid #e0e0e0;border-radius:12px;cursor:pointer;display:flex;flex-direction:column;min-width:80px;padding:16px 24px;transition:all .2s ease}.grade-btn:hover{border-color:#667eea;transform:translateY(-2px)}.grade-btn.selected{background:linear-gradient(135deg,#667eea,#764ba2);border-color:#0000;color:#fff}.grade-id{font-size:1.5rem;font-weight:700}.grade-ages{font-size:.75rem;opacity:.8}.grade-content{margin:0 auto;max-width:1000px;text-align:left}.grade-content h3{color:#333;margin-bottom:24px;text-align:center}.subjects-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.subject-card-large{background:#fff;border-left:4px solid;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:24px;transition:transform .2s ease,box-shadow .2s ease}.subject-card-large:hover{box-shadow:0 8px 20px #0000001f;transform:translateY(-4px)}.subject-icon{display:block;font-size:2rem;margin-bottom:12px}.subject-card-large h4{color:#333;margin:0 0 8px}.subject-card-large p{color:#666;font-size:.9rem;margin:0 0 16px}.subject-link{color:#667eea;font-weight:600;text-decoration:none}.subject-link:hover{text-decoration:underline}.features-section{padding:80px 20px;text-align:center}.features-section h2{color:#333;font-size:2.2rem;margin-bottom:48px}.features-grid{grid-gap:32px;display:grid;gap:32px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin:0 auto;max-width:1200px}.feature-card{border-radius:16px;box-shadow:0 4px 12px #00000014;padding:32px;text-align:left}.feature-icon{margin-bottom:16px}.feature-card h3{color:#333;font-size:1.2rem;margin:0 0 12px}.feature-card p{color:#666;line-height:1.6;margin:0}.pricing-section{background:linear-gradient(135deg,#f8f9fa,#e9ecef);padding:80px 20px;text-align:center}.pricing-section h2{color:#333;font-size:2.2rem;margin-bottom:12px}.pricing-cards{display:flex;flex-wrap:wrap;gap:24px;justify-content:center;margin:40px auto;max-width:1000px}.pricing-card{background:#fff;border-radius:16px;box-shadow:0 4px 12px #00000014;flex:1 1;max-width:320px;min-width:280px;padding:32px;position:relative}.pricing-card.premium{border:2px solid #667eea;transform:scale(1.05)}.popular-badge{background:#667eea;border-radius:20px;color:#fff;font-size:.8rem;font-weight:600;left:50%;padding:6px 16px;position:absolute;top:-12px;transform:translateX(-50%)}.pricing-card h3{color:#333;font-size:1.4rem;margin:0 0 16px}.price{color:#667eea;font-size:3rem;font-weight:700;margin-bottom:24px}.price span{color:#666;font-size:1rem;font-weight:400}.pricing-card ul{list-style:none;margin:0 0 24px;padding:0;text-align:left}.pricing-card li{color:#666;padding:8px 0 8px 24px;position:relative}.pricing-card li:before{color:#4caf50;content:"✓";font-weight:600;left:0;position:absolute}.btn-outline{background:#0000;border:2px solid #667eea;border-radius:8px;color:#667eea;cursor:pointer;font-size:1rem;font-weight:600;padding:12px 24px;transition:all .2s ease;width:100%}.btn-outline:hover{background:#667eea;color:#fff}.pricing-note{color:#666;font-size:.9rem}.pricing-note a{color:#667eea}.testimonials-section{padding:80px 20px;text-align:center}.testimonials-section h2{color:#333;font-size:2.2rem;margin-bottom:48px}.testimonials-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin:0 auto;max-width:1000px}.testimonial-card{background:#fff;border-radius:16px;box-shadow:0 4px 12px #00000014;padding:32px;text-align:left}.testimonial-text{color:#333;font-size:1.05rem;font-style:italic;line-height:1.6;margin:0 0 20px}.testimonial-author{display:flex;flex-direction:column}.author-name{color:#333;font-weight:600}.author-role{color:#888;font-size:.9rem}.cta-section{padding:80px 20px}.cta-section h2{font-size:2.2rem;margin-bottom:16px}.cta-section p{font-size:1.2rem;margin-bottom:32px;opacity:.9}.cta-section .btn-primary-large{font-size:1.2rem;padding:18px 40px}.loading{color:#666;padding:40px}@media (max-width:900px){.hero-section{flex-direction:column;padding:60px 20px;text-align:center}.hero-content h1{font-size:2.2rem}.hero-stats{justify-content:center}.hero-cta{align-items:center;flex-direction:column}.hero-visual{display:none}.pricing-card.premium{transform:none}}@media (max-width:600px){.hero-content h1{font-size:1.8rem}.hero-subtitle{font-size:1.1rem}.stat-number{font-size:2rem}.cta-section h2,.features-section h2,.grade-section h2,.pricing-section h2,.testimonials-section h2{font-size:1.8rem}.grade-btn{min-width:60px;padding:12px 16px}.grade-id{font-size:1.2rem}}[data-theme=dark] .k12-landing{background:#0000}[data-theme=dark] .grade-section{background:#1a1a2e}[data-theme=dark] .grade-section h2{color:#f3f4f6}[data-theme=dark] .section-subtitle{color:#9ca3af}[data-theme=dark] .grade-btn{background:#252540;border-color:#374151;color:#d1d5db}[data-theme=dark] .grade-btn:hover{border-color:#6366f1}[data-theme=dark] .grade-btn.selected{background:linear-gradient(135deg,#667eea,#764ba2);border-color:#0000;color:#fff}[data-theme=dark] .grade-content h3{color:#f3f4f6}[data-theme=dark] .subject-card-large{background:#252540;box-shadow:0 2px 8px #0000004d}[data-theme=dark] .subject-card-large h4{color:#f3f4f6}[data-theme=dark] .subject-card-large p{color:#9ca3af}[data-theme=dark] .features-section{background:#0000}[data-theme=dark] .features-section h2{color:#f3f4f6}[data-theme=dark] .feature-card{box-shadow:0 4px 12px #0000004d}[data-theme=dark] .feature-card h3{color:#f3f4f6}[data-theme=dark] .pricing-section{background:linear-gradient(135deg,#1a1a2e,#252540)}[data-theme=dark] .pricing-section h2{color:#f3f4f6}[data-theme=dark] .pricing-card{background:#252540;box-shadow:0 4px 12px #0000004d}[data-theme=dark] .pricing-card h3{color:#f3f4f6}[data-theme=dark] .pricing-card li,[data-theme=dark] .pricing-note{color:#9ca3af}[data-theme=dark] .testimonials-section{background:#0000}[data-theme=dark] .testimonials-section h2{color:#f3f4f6}[data-theme=dark] .testimonial-card{background:#252540;box-shadow:0 4px 12px #0000004d}[data-theme=dark] .testimonial-text{color:#d1d5db}[data-theme=dark] .author-name{color:#f3f4f6}[data-theme=dark] .author-role,[data-theme=dark] .loading{color:#9ca3af}.nav-dropdown{position:relative}.nav-dropdown-trigger{align-items:center;background:#0000;border:none;border-radius:8px;color:#333;cursor:pointer;display:flex;font-size:.9rem;font-weight:500;gap:.5rem;padding:.625rem 1rem;transition:all .2s ease;white-space:nowrap}.nav-dropdown-trigger:hover{background:#00000014;color:#1f2937}.nav-dropdown-trigger:focus-visible{outline:2px solid #667eea;outline-offset:2px}.nav-dropdown.active .nav-dropdown-trigger{background:#667eea26;color:#667eea}.nav-dropdown.open .nav-dropdown-trigger{background:#0000001a}.nav-dropdown-trigger .nav-icon{font-size:1.1rem}.nav-dropdown-trigger .nav-text{font-weight:500}.nav-dropdown-trigger .dropdown-arrow{font-size:.6rem;margin-left:.25rem;opacity:.7;transition:transform .2s ease}.nav-dropdown.open .dropdown-arrow{transform:rotate(180deg)}.nav-dropdown-menu{animation:dropdownFadeIn .15s ease-out;background:#fff;border-radius:12px;box-shadow:0 10px 40px #00000026,0 2px 10px #0000001a;left:50%;min-width:200px;padding:.5rem;position:absolute;top:calc(100% + .5rem);transform:translateX(-50%);z-index:1200}.nav-dropdown-item{align-items:center;border-radius:8px;color:#374151;display:flex;font-size:.9rem;gap:.75rem;padding:.75rem 1rem;text-decoration:none;transition:all .15s ease}.nav-dropdown-item:hover{background:#f3f4f6;color:#1f2937}.nav-dropdown-item.active{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.nav-dropdown-item .item-icon{font-size:1.1rem;text-align:center;width:1.5rem}.nav-dropdown-item .item-label{font-weight:500}@media (max-width:768px){.nav-dropdown{width:100%}.nav-dropdown-trigger{border-bottom:1px solid #e5e7eb;border-radius:0;color:#1f2937;font-size:1rem;justify-content:flex-start;padding:1rem 1.25rem;width:100%}.nav-dropdown-trigger:hover{background:#f3f4f6;color:#1f2937}.nav-dropdown.active .nav-dropdown-trigger{background:#f0f4ff;border-left:3px solid #667eea;color:#667eea}.nav-dropdown.open .nav-dropdown-trigger{background:#f9fafb}.nav-dropdown-trigger .dropdown-arrow{font-size:.7rem;margin-left:auto}.nav-dropdown-menu{animation:none;background:#f9fafb;border-bottom:1px solid #e5e7eb;border-radius:0;box-shadow:none;min-width:100%;padding:0;position:static;transform:none}.nav-dropdown-item{border-radius:0;font-size:.95rem;padding:.875rem 1.25rem .875rem 3rem}.nav-dropdown-item:hover{background:#e5e7eb}.nav-dropdown-item.active{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:0}}.nav-dropdown.open{z-index:100}[data-theme=dark] .nav-dropdown-trigger{color:#f0f0f0}[data-theme=dark] .nav-dropdown-trigger:hover{background:#ffffff26;color:#fff}[data-theme=dark] .nav-dropdown.active .nav-dropdown-trigger{background:#fff3;color:#fff}[data-theme=dark] .nav-dropdown.open .nav-dropdown-trigger{background:#ffffff40}[data-theme=dark] .nav-dropdown-menu{background:#252540;box-shadow:0 10px 40px #0006}[data-theme=dark] .nav-dropdown-item{color:#d1d5db}[data-theme=dark] .nav-dropdown-item:hover{background:#2d2d4a;color:#f0f0f0}.two-factor-setup,.two-factor-verify{align-items:center;background:linear-gradient(135deg,#f5f7fa,#e4e8ed);display:flex;justify-content:center;min-height:100vh;padding:2rem}.setup-container,.verify-container{background:#fff;border-radius:16px;box-shadow:0 4px 24px #00000014;max-width:480px;padding:2.5rem;width:100%}.setup-progress{border-bottom:1px solid #e5e7eb;margin-bottom:2rem;padding-bottom:1.5rem}.setup-progress,.step-number{align-items:center;display:flex;justify-content:center}.step-number{background:#e5e7eb;border-radius:50%;color:#6b7280;font-size:.875rem;font-weight:600;height:32px;transition:all .3s;width:32px}.progress-step.active .step-number{background:#6366f1;background:var(--primary-color,#6366f1);color:#fff}.progress-step.completed .step-number{background:#10b981;color:#fff}.step-label{color:#6b7280;letter-spacing:.05em}.progress-step.active .step-label,.progress-step.completed .step-label{color:#1a1a2e;color:var(--text-primary,#1a1a2e)}.progress-line{background:#e5e7eb;height:2px;margin:0 1rem 1.5rem;width:60px}.setup-step{text-align:center}.setup-step h2{color:#1a1a2e;color:var(--text-primary,#1a1a2e);font-size:1.5rem;font-weight:700;margin:0 0 .75rem}.step-description{color:#6b7280;color:var(--text-secondary,#6b7280);font-size:.95rem}.qr-code-container{background:#fff;border:2px solid #e5e7eb;border-radius:12px;display:inline-block;margin-bottom:1.5rem;padding:1rem}.qr-code-image{display:block;height:200px;width:200px}.manual-key-section{background:#f9fafb;border-radius:8px;margin:1rem 0 1.5rem;padding:1rem;text-align:center}.manual-key-label{color:#6b7280;font-size:.875rem;margin:0 0 .5rem}.manual-key{background:#fff;border:1px solid #e5e7eb;border-radius:6px;display:block;font-family:SF Mono,Consolas,monospace;font-size:1rem;margin-bottom:.5rem;padding:.75rem 1rem;-webkit-user-select:all;user-select:all;word-break:break-all}.manual-key-hint{color:#9ca3af;font-size:.8rem;margin:0}.verify-form{margin-top:1.5rem}.form-group{margin-bottom:1.25rem;text-align:left}.form-group label{color:#1a1a2e;color:var(--text-primary,#1a1a2e);margin-bottom:.5rem}.form-group input{border:2px solid #e5e7eb;padding:.75rem 1rem;transition:border-color .2s}.form-group input:focus{border-color:#6366f1;border-color:var(--primary-color,#6366f1);outline:none}.code-input{font-family:SF Mono,Consolas,monospace;font-size:1.5rem!important;letter-spacing:.5em;padding:1rem!important;text-align:center}.backup-code-input{font-size:1.25rem!important;letter-spacing:.1em!important}.btn-primary{padding:.875rem 1.5rem}.btn-primary:hover:not(:disabled){box-shadow:0 4px 12px #6366f14d}.btn-secondary{padding:.75rem 1.25rem}.btn-link{color:#6366f1;color:var(--primary-color,#6366f1);display:block;font-size:.9rem;margin-top:1rem;padding:.5rem;width:100%}.cancel-link{color:#6b7280;margin-top:.5rem}.button-group{display:flex;gap:1rem;margin-top:1.5rem}.button-group .btn-secondary{flex:1 1}.button-group .btn-primary{flex:2 1}.backup-codes-container{background:#f9fafb;border-radius:12px;margin:1.5rem 0;padding:1.5rem}.backup-codes-grid{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(2,1fr)}.backup-code{background:#fff;border:1px solid #e5e7eb;border-radius:6px;color:#1a1a2e;color:var(--text-primary,#1a1a2e);font-family:SF Mono,Consolas,monospace;font-size:.9rem;padding:.5rem .75rem;text-align:center}.backup-actions{display:flex;gap:1rem;justify-content:center;margin-bottom:1.5rem}.backup-warning{background:#fef3c7;border:1px solid #fbbf24;border-radius:8px;color:#92400e;font-size:.875rem;margin-bottom:1.5rem;padding:1rem;text-align:left}.complete-step{padding:2rem 0}.success-icon{align-items:center;border-radius:50%;display:flex;height:64px;justify-content:center;margin:0 auto 1.5rem;width:64px}.success-icon svg{height:32px;width:32px}.verify-header{margin-bottom:1.5rem;text-align:center}.verify-icon{align-items:center;background:linear-gradient(135deg,#6366f1,#8b5cf6);background:linear-gradient(135deg,var(--primary-color,#6366f1),#8b5cf6);border-radius:14px;display:flex;height:56px;justify-content:center;margin:0 auto 1rem;width:56px}.verify-icon svg{stroke:#fff;height:28px;width:28px}.verify-header h2{color:#1a1a2e;color:var(--text-primary,#1a1a2e);font-size:1.25rem;font-weight:700;margin:0 0 .5rem}.verify-header p{color:#6b7280;color:var(--text-secondary,#6b7280);font-size:.95rem;margin:0}.verify-help{border-top:1px solid #e5e7eb;margin-top:1.5rem;padding-top:1.5rem}.verify-help p{color:#6b7280;font-size:.85rem;line-height:1.5;margin:0}.setup-loading{padding:3rem;text-align:center}.loading-spinner{margin:0 auto 1rem}@media (max-width:480px){.two-factor-setup,.two-factor-verify{padding:1rem}.setup-container,.verify-container{padding:1.5rem}.qr-code-image{height:160px;width:160px}.backup-codes-grid{grid-template-columns:1fr}.backup-actions{flex-direction:column}.progress-line{width:30px}}.auth-page{align-items:center;background:linear-gradient(135deg,#1a1a2e,#16213e 50%,#0f3460);display:flex;justify-content:center;min-height:100vh;padding:2rem 1rem}.auth-container{background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-width:420px;padding:2.5rem;width:100%}.auth-header{margin-bottom:2rem;text-align:center}.auth-header h1{color:#1a1a2e;font-size:1.75rem;font-weight:700;margin:0 0 .5rem}.auth-header p{color:#374151;font-size:.95rem;margin:0}.btn-google{align-items:center;background:#fff;border:2px solid #e1e5eb;border-radius:10px;color:#333;cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:12px;justify-content:center;padding:14px 24px;transition:all .2s ease;width:100%}.btn-google:hover:not(:disabled){background:#f8f9fa;border-color:#4285f4;box-shadow:0 4px 12px #4285f433}.btn-google:disabled{cursor:not-allowed;opacity:.6}.google-icon{height:20px;width:20px}.btn-passkey{align-items:center;background:linear-gradient(135deg,#6366f1,#8b5cf6);border:none;border-radius:10px;color:#fff;cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:12px;justify-content:center;padding:14px 24px;transition:all .2s ease;width:100%}.btn-passkey:hover:not(:disabled){box-shadow:0 4px 16px #6366f159;transform:translateY(-1px)}.btn-passkey:disabled{cursor:not-allowed;opacity:.6}.passkey-icon{height:20px;width:20px}.auth-divider{align-items:center;display:flex;margin:1.5rem 0}.auth-divider:after,.auth-divider:before{background:#e1e5eb;content:"";flex:1 1;height:1px}.auth-divider span{color:#6b7280;font-size:.85rem;letter-spacing:.5px;padding:0 1rem;text-transform:uppercase}.auth-form{display:flex;flex-direction:column;gap:1.25rem}.form-group input{border:2px solid #e1e5eb;border-radius:10px;font-size:1rem;padding:12px 16px;transition:all .2s ease}.form-group input:focus{border-color:#4285f4;box-shadow:0 0 0 3px #4285f41a}.form-group input:disabled{background:#f5f5f5;cursor:not-allowed}.form-hint{color:#4b5563}.form-hint.error{color:#dc3545}.form-hint.success{color:#28a745}.form-group input.input-error{border-color:#dc3545}.form-group input.input-error:focus{border-color:#dc3545;box-shadow:0 0 0 3px #dc35451a}.auth-error{background:#fee;border:1px solid #fcc;border-radius:8px;color:#c00;font-size:.9rem;padding:12px 16px}.auth-form .btn-primary{background:linear-gradient(135deg,#4285f4,#1a73e8);border:none;border-radius:10px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;margin-top:.5rem;padding:14px 24px;transition:all .2s ease;width:100%}.auth-form .btn-primary:hover:not(:disabled){box-shadow:0 6px 20px #4285f466;transform:translateY(-2px)}.auth-form .btn-primary:disabled{cursor:not-allowed;opacity:.6;transform:none}.auth-footer{border-top:1px solid #e1e5eb;margin-top:1.5rem;padding-top:1.5rem;text-align:center}.auth-footer p{color:#374151;font-size:.95rem;margin:0}.auth-footer a{color:#4285f4;font-weight:600;text-decoration:none}.auth-footer a:hover{text-decoration:underline}.auth-loading{align-items:center;color:#fff;display:flex;flex-direction:column;justify-content:center;padding:3rem}.auth-loading .loading-spinner{animation:spin 1s linear infinite;border:4px solid #fff3;border-radius:50%;border-top-color:#fff;height:48px;width:48px}.auth-loading p{font-size:1.1rem;margin-top:1rem}.forgot-password-link{margin-bottom:.5rem;text-align:right}.forgot-password-link a{color:#4285f4;font-size:.9rem;text-decoration:none}.forgot-password-link a:hover{text-decoration:underline}.error-icon,.success-icon{align-items:center;border-radius:50%;display:flex;height:64px;justify-content:center;margin:0 auto 1rem;width:64px}.success-icon{background:linear-gradient(135deg,#10b981,#059669)}.success-icon svg{stroke:#fff;height:36px;width:36px}.error-icon{background:linear-gradient(135deg,#ef4444,#dc2626)}.error-icon svg{stroke:#fff;height:36px;width:36px}.auth-info-box{background:#f8f9fa;border-radius:10px;margin:1.5rem 0;padding:1.25rem}.auth-info-box h3{color:#333;font-size:.95rem;margin:0 0 .75rem}.auth-info-box ol{margin:0;padding-left:1.25rem}.auth-info-box ol li{color:#555;font-size:.9rem;margin-bottom:.5rem}.auth-info-box p{color:#374151;font-size:.875rem;margin:.75rem 0 0}.auth-info-box .note{color:#4b5563;font-style:italic}.password-requirements{background:#f8f9fa;border-radius:8px;margin-bottom:1rem;padding:1rem}.password-requirements p{color:#555;font-size:.875rem;margin:0 0 .5rem}.password-requirements ul{margin:0;padding-left:1.25rem}.password-requirements li{color:#4b5563;font-size:.85rem;margin-bottom:.25rem;transition:color .2s}.password-requirements li.met{color:#10b981}.password-requirements li.met::marker{content:"✓ "}.btn-primary{display:block;text-decoration:none;width:100%}.auth-container .auth-loading{color:#333}.auth-container .auth-loading .loading-spinner{border-color:#4285f4 #4285f433 #4285f433}@media (max-width:480px){.auth-container{border-radius:12px;padding:1.5rem}.auth-header h1{font-size:1.5rem}.auth-form .btn-primary,.btn-google,.btn-primary{font-size:.95rem;padding:12px 20px}.error-icon,.success-icon{height:56px;width:56px}.error-icon svg,.success-icon svg{height:32px;width:32px}}[data-theme=dark] .auth-container{background:#252540;box-shadow:0 20px 60px #00000080}[data-theme=dark] .auth-header h1{color:#f3f4f6}[data-theme=dark] .auth-header p{color:#9ca3af}[data-theme=dark] .btn-google{background:#1a1a2e;border-color:#374151;color:#f3f4f6}[data-theme=dark] .btn-google:hover:not(:disabled){background:#252540;border-color:#4285f4}[data-theme=dark] .auth-divider:after,[data-theme=dark] .auth-divider:before{background:#374151}[data-theme=dark] .auth-divider span{color:#9ca3af}[data-theme=dark] .form-group label{color:#f3f4f6}[data-theme=dark] .form-group input{background:#1a1a2e;border-color:#374151;color:#f3f4f6}[data-theme=dark] .form-group input:focus{border-color:#4285f4;box-shadow:0 0 0 3px #4285f433}[data-theme=dark] .form-group input:disabled{background:#252540}[data-theme=dark] .form-hint{color:#9ca3af}[data-theme=dark] .auth-error{background:#dc354526;border-color:#dc35454d;color:#f87171}[data-theme=dark] .auth-footer{border-color:#374151}[data-theme=dark] .auth-footer p{color:#9ca3af}[data-theme=dark] .auth-info-box{background:#1a1a2e}[data-theme=dark] .auth-info-box h3{color:#f3f4f6}[data-theme=dark] .auth-info-box ol li{color:#d1d5db}[data-theme=dark] .auth-info-box p{color:#9ca3af}[data-theme=dark] .password-requirements{background:#1a1a2e}[data-theme=dark] .password-requirements p{color:#d1d5db}[data-theme=dark] .password-requirements li{color:#9ca3af}[data-theme=dark] .auth-container .auth-loading{color:#f3f4f6}[data-theme=dark] .auth-container .auth-loading .loading-spinner{border-color:#4285f4 #374151 #374151}.security-settings{background:linear-gradient(135deg,#f5f7fa,#e4e8ed);min-height:100vh;padding:2rem}.security-container{margin:0 auto;max-width:800px}.security-loading{align-items:center;display:flex;flex-direction:column;gap:1rem;justify-content:center;min-height:400px}.loading-spinner{border:3px solid #e5e7eb;border-top:3px solid var(--primary-color,#6366f1)}.security-header{margin-bottom:2rem}.back-button{align-items:center;background:none;border:none;border-radius:8px;color:#6b7280;color:var(--text-secondary,#6b7280);cursor:pointer;display:inline-flex;font-size:.9rem;gap:.5rem;margin-bottom:1rem;padding:.5rem 1rem;transition:all .2s}.back-button:hover{background:#0000000d;color:#1a1a2e;color:var(--text-primary,#1a1a2e)}.back-button svg{height:18px;width:18px}.security-header h1{color:#1a1a2e;color:var(--text-primary,#1a1a2e);font-size:2rem;font-weight:700;margin:0 0 .5rem}.security-header p{color:#6b7280;color:var(--text-secondary,#6b7280);font-size:1rem;margin:0}.security-section{background:#fff;border-radius:16px;box-shadow:0 2px 12px #0000000f;margin-bottom:1.5rem;padding:1.5rem}.section-header{align-items:flex-start;gap:1rem}.section-icon{align-items:center;background:linear-gradient(135deg,#6366f1,#8b5cf6);background:linear-gradient(135deg,var(--primary-color,#6366f1),#8b5cf6);border-radius:12px;display:flex;flex-shrink:0;height:48px;justify-content:center;width:48px}.section-icon svg{stroke:#fff;height:24px;width:24px}.section-icon.passkey-icon{background:linear-gradient(135deg,#10b981,#059669)}.section-info{flex:1 1}.section-info h2{color:#1a1a2e;color:var(--text-primary,#1a1a2e);font-size:1.25rem;font-weight:600;margin:0 0 .25rem}.section-info p{color:#6b7280;color:var(--text-secondary,#6b7280);font-size:.9rem;line-height:1.4;margin:0}.section-status{border-radius:20px;flex-shrink:0;font-size:.8rem;font-weight:600;padding:.375rem .75rem}.section-status.enabled{background:#dcfce7;color:#166534}.section-status.disabled{background:#f3f4f6;color:#6b7280}.section-content{border-top:1px solid #e5e7eb;margin-top:1rem;padding-top:1rem}.status-details{display:flex;gap:2rem;margin-bottom:1rem}.detail-item{display:flex;flex-direction:column;gap:.25rem}.detail-label{color:#6b7280;color:var(--text-secondary,#6b7280);font-size:.8rem}.detail-value{color:#1a1a2e;color:var(--text-primary,#1a1a2e);font-size:1.25rem;font-weight:600}.section-actions{display:flex;gap:1rem;margin-top:1rem}.passkey-list{margin-bottom:1rem}.passkey-item{align-items:center;background:#f9fafb;border-radius:10px;display:flex;justify-content:space-between;margin-bottom:.75rem;padding:1rem}.passkey-info{display:flex;flex-direction:column;gap:.25rem}.passkey-name{color:#1a1a2e;color:var(--text-primary,#1a1a2e);font-weight:500}.passkey-meta{color:#6b7280;color:var(--text-secondary,#6b7280);font-size:.8rem}.btn-icon-danger{align-items:center;background:none;border:none;border-radius:8px;color:#dc2626;cursor:pointer;display:flex;height:36px;justify-content:center;transition:all .2s;width:36px}.btn-icon-danger:hover{background:#fef2f2}.btn-icon-danger svg{height:18px;width:18px}.btn-primary{background:linear-gradient(135deg,#6366f1,#8b5cf6);background:linear-gradient(135deg,var(--primary-color,#6366f1),#8b5cf6)}.btn-primary:hover{box-shadow:0 4px 12px #6366f14d}.btn-secondary{background:#f3f4f6;color:#1a1a2e;color:var(--text-primary,#1a1a2e)}.btn-secondary:hover{background:#e5e7eb}.btn-danger{background:#dc2626;font-size:.95rem;padding:.75rem 1.5rem;transition:all .2s}.btn-danger:hover{background:#b91c1c}.btn-danger:disabled{opacity:.6}.disable-modal{align-items:center;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal-overlay{background:#00000080;bottom:0;left:0;position:absolute;right:0;top:0}.modal-content{max-width:400px;padding:2rem;position:relative;width:90%}.modal-content h3{color:#1a1a2e;color:var(--text-primary,#1a1a2e);font-size:1.25rem;font-weight:600;margin:0 0 .5rem}.modal-content p{color:#6b7280;color:var(--text-secondary,#6b7280);font-size:.9rem;line-height:1.5;margin:0 0 1.5rem}.modal-content input{border:2px solid #e5e7eb;border-radius:8px;font-size:1rem;margin-bottom:1rem;padding:.75rem 1rem;width:100%}.modal-content input:focus{border-color:#6366f1;border-color:var(--primary-color,#6366f1);outline:none}.modal-actions{gap:1rem}.error-message{border:1px solid #fecaca;color:#dc2626;font-size:.9rem;margin-bottom:1rem;padding:.75rem 1rem}.security-tips{background:#eff6ff;border:1px solid #bfdbfe;border-radius:12px;margin-top:2rem;padding:1.5rem}.security-tips h3{color:#1e40af;font-size:1rem;font-weight:600;margin:0 0 .75rem}.security-tips ul{margin:0;padding-left:1.25rem}.security-tips li{color:#3b82f6;font-size:.9rem;line-height:1.6}.section-icon.passwordless-icon{background:linear-gradient(135deg,#f59e0b,#d97706)}.passwordless-toggle{align-items:center;display:flex;gap:1rem}.toggle-label{color:#1a1a2e;color:var(--text-primary,#1a1a2e);font-size:.95rem}.toggle-switch{display:inline-block;height:28px;position:relative;width:52px}.toggle-switch input{height:0;opacity:0;width:0}.toggle-slider{background-color:#cbd5e1;border-radius:28px;bottom:0;cursor:pointer;left:0;position:absolute;right:0;top:0;transition:.3s}.toggle-slider:before{background-color:#fff;border-radius:50%;bottom:3px;box-shadow:0 2px 4px #0003;content:"";height:22px;left:3px;position:absolute;transition:.3s;width:22px}.toggle-switch input:checked+.toggle-slider{background:linear-gradient(135deg,#10b981,#059669)}.toggle-switch input:checked+.toggle-slider:before{transform:translateX(24px)}.toggle-switch input:disabled+.toggle-slider{cursor:not-allowed;opacity:.5}.passwordless-warning{align-items:center;background:#fef3c7;border:1px solid #fcd34d;border-radius:8px;color:#92400e;display:flex;font-size:.9rem;gap:.75rem;margin-top:1rem;padding:.75rem 1rem}.passwordless-warning svg{stroke:#f59e0b;flex-shrink:0;height:20px;width:20px}.passwordless-info{align-items:center;background:#dcfce7;border:1px solid #86efac;border-radius:8px;color:#166534;display:flex;font-size:.9rem;gap:.75rem;margin-top:1rem;padding:.75rem 1rem}.passwordless-info svg{stroke:#10b981;flex-shrink:0;height:20px;width:20px}@media (max-width:640px){.security-settings{padding:1rem}.section-header{flex-wrap:wrap}.section-status{margin-top:.5rem;text-align:center;width:100%}.status-details{gap:1rem}.section-actions,.status-details{flex-direction:column}.modal-actions{flex-direction:column-reverse}.modal-actions button{width:100%}.passwordless-toggle{align-items:flex-start;flex-direction:column}}.education-tab{max-width:700px}.education-error,.education-loading{color:#666;color:var(--text-secondary,#666);padding:40px;text-align:center}.education-error{color:#dc3545;color:var(--error-color,#dc3545)}.education-section{border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--border-color,#e5e7eb);margin-bottom:32px;padding-bottom:24px}.education-section:last-child{border-bottom:none}.education-section h3{color:#1a1a2e;color:var(--text-primary,#1a1a2e);font-size:1.1rem;font-weight:600;margin:0 0 16px}.section-header{margin-bottom:16px}.section-description{color:var(--text-secondary,#666);margin-bottom:12px}.education-level-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}.level-option{align-items:center;background:#f8f9fa;background:var(--surface-secondary,#f8f9fa);border:2px solid #0000;border-radius:8px;cursor:pointer;display:flex;gap:10px;padding:12px 16px;transition:all .2s ease}.level-option.selected,.level-option:hover{background:#ede9fe;background:var(--primary-light,#ede9fe)}.level-option.selected{border-color:#8b5cf6;border-color:var(--primary-color,#8b5cf6)}.level-option input{accent-color:#8b5cf6;accent-color:var(--primary-color,#8b5cf6)}.level-label{color:#1a1a2e;color:var(--text-primary,#1a1a2e);font-size:.9rem}.btn-add{background:#8b5cf6;background:var(--primary-color,#8b5cf6);border-radius:8px;font-size:.9rem;padding:8px 16px;transition:background .2s ease}.btn-add:hover{background:#7c3aed;background:var(--primary-dark,#7c3aed)}.btn-delete{align-items:center;background:#0000;border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:6px;color:#666;color:var(--text-secondary,#666);cursor:pointer;display:flex;font-size:1.2rem;height:32px;justify-content:center;transition:all .2s ease;width:32px}.btn-delete:hover{background:#fee2e2;border-color:#dc2626;color:#dc2626}.empty-state{background:#f8f9fa;background:var(--surface-secondary,#f8f9fa);border-radius:8px;color:#666;color:var(--text-secondary,#666);font-style:italic;padding:20px}.degrees-list{display:flex;flex-direction:column;gap:12px}.degree-card{align-items:flex-start;background:#f8f9fa;background:var(--surface-secondary,#f8f9fa);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:12px;display:flex;justify-content:space-between;padding:16px}.degree-info h4{color:#1a1a2e;color:var(--text-primary,#1a1a2e);font-size:1rem;margin:0 0 4px}.degree-field{color:#8b5cf6;color:var(--primary-color,#8b5cf6);font-weight:500;margin:0 0 4px}.degree-institution,.degree-year{color:#666;color:var(--text-secondary,#666);font-size:.85rem;margin:0}.mapped-categories{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.category-tag{background:#ede9fe;background:var(--primary-light,#ede9fe);border-radius:12px;color:#8b5cf6;color:var(--primary-color,#8b5cf6);padding:2px 8px}.certifications-list{display:flex;flex-direction:column;gap:12px}.cert-card{align-items:flex-start;background:#f8f9fa;background:var(--surface-secondary,#f8f9fa);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:12px;display:flex;justify-content:space-between;padding:16px}.cert-info h4{color:#1a1a2e;color:var(--text-primary,#1a1a2e);font-size:1rem;margin:0 0 4px}.cert-vendor{color:#666;color:var(--text-secondary,#666);font-size:.85rem;margin:0 0 8px}.cert-status{border-radius:12px;display:inline-block;font-size:.75rem;font-weight:500;padding:2px 8px;text-transform:capitalize}.cert-status.status-achieved{background:#d1fae5;color:#065f46}.cert-status.status-in_progress{background:#fef3c7;color:#92400e}.cert-status.status-planned{background:#dbeafe;color:#1e40af}.cert-status.status-expired{background:#fee2e2;color:#991b1b}.cert-date{color:#666;color:var(--text-secondary,#666);font-size:.8rem;margin:4px 0 0}.inferred-section{background:#f8f9fa;background:var(--surface-secondary,#f8f9fa);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:12px;padding:20px}.inferred-skills-list{display:flex;flex-wrap:wrap;gap:8px}.skill-tag{align-items:center;background:#fff;border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:20px;display:inline-flex;font-size:.85rem;gap:6px;padding:6px 12px}.skill-level{border-radius:10px;font-size:.7rem;font-weight:600;padding:2px 6px;text-transform:capitalize}.skill-level.level-advanced{background:#d1fae5;color:#065f46}.skill-level.level-intermediate{background:#dbeafe;color:#1e40af}.skill-level.level-beginner{background:#fef3c7;color:#92400e}.skill-source{color:#999;color:var(--text-secondary,#999);font-size:.7rem}.more-skills{color:#666;color:var(--text-secondary,#666);font-size:.85rem;padding:6px 12px}.modal-backdrop{bottom:0;left:0;padding:20px;right:0;top:0}.modal-content{box-shadow:0 20px 60px #0003;max-height:80vh;max-width:500px;overflow-y:auto;width:100%}.modal-header{border-bottom:1px solid var(--border-color,#e5e7eb);padding:20px 24px}.modal-header h3{color:#1a1a2e;color:var(--text-primary,#1a1a2e)}.btn-close{background:#0000;color:#666;color:var(--text-secondary,#666);font-size:1.5rem}.btn-close:hover{background:#f8f9fa;background:var(--surface-secondary,#f8f9fa)}.modal-form{padding:24px}.modal-form .form-group{margin-bottom:20px}.modal-form label{color:#1a1a2e;color:var(--text-primary,#1a1a2e);display:block;font-weight:500;margin-bottom:6px}.modal-form input,.modal-form select{border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:8px;font-size:1rem;padding:10px 14px;transition:border-color .2s ease;width:100%}.modal-form input:focus,.modal-form select:focus{border-color:#8b5cf6;border-color:var(--primary-color,#8b5cf6);outline:none}.checkbox-group label{align-items:center;cursor:pointer;display:flex;gap:8px}.checkbox-group input{width:auto}.modal-actions{border-top:1px solid var(--border-color,#e5e7eb);gap:12px;margin-top:24px;padding-top:16px}.btn-secondary{background:#0000;border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);color:#666;color:var(--text-secondary,#666)}.btn-secondary:hover{background:#f8f9fa;background:var(--surface-secondary,#f8f9fa)}.btn-primary{background:#8b5cf6;background:var(--primary-color,#8b5cf6);padding:10px 20px;transition:background .2s ease}.btn-primary:hover{background:#7c3aed;background:var(--primary-dark,#7c3aed)}.cert-search-results{border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:8px;margin-bottom:16px;max-height:200px;overflow-y:auto}.cert-option{border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--border-color,#e5e7eb);cursor:pointer;padding:12px 16px;transition:background .2s ease}.cert-option:last-child{border-bottom:none}.cert-option:hover{background:#f8f9fa;background:var(--surface-secondary,#f8f9fa)}.cert-option.selected{background:#ede9fe;background:var(--primary-light,#ede9fe)}.cert-option .cert-name{color:#1a1a2e;color:var(--text-primary,#1a1a2e);display:block;font-weight:500}.cert-option .cert-vendor{font-size:.8rem}.cert-option .cert-vendor,.no-results{color:#666;color:var(--text-secondary,#666)}.no-results{padding:20px;text-align:center}.selected-cert-info{background:#ede9fe;background:var(--primary-light,#ede9fe);border-radius:8px;color:#1a1a2e;color:var(--text-primary,#1a1a2e);margin-bottom:16px;padding:12px 16px}@media (max-width:600px){.education-level-grid{grid-template-columns:1fr}.section-header{align-items:flex-start;flex-direction:column;gap:12px}.modal-content{margin:10px;max-height:calc(100vh - 40px)}}@media (prefers-color-scheme:dark){.level-option{background:#2a2a3e;background:var(--surface-secondary-dark,#2a2a3e)}.level-option.selected,.level-option:hover{background:#7c3aed;background:var(--primary-dark,#7c3aed)}.cert-card,.degree-card,.inferred-section{background:#2a2a3e;background:var(--surface-secondary-dark,#2a2a3e)}.cert-card,.degree-card,.inferred-section,.skill-tag{border-color:#374151;border-color:var(--border-color-dark,#374151)}.modal-content,.skill-tag{background:#1e1e2e;background:var(--surface-color-dark,#1e1e2e)}.cert-option,.cert-search-results{border-color:#374151;border-color:var(--border-color-dark,#374151)}}.career-selector-modal{display:flex;flex-direction:column;max-height:90vh;max-width:600px;width:95%}.modal-backdrop{align-items:center;background:#00000080;display:flex;inset:0;justify-content:center;padding:1rem;position:fixed;z-index:1000}.modal-content{background:#fff;border-radius:16px;box-shadow:0 20px 40px #0003;overflow:hidden}.modal-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:1.25rem 1.5rem}.modal-header h3{color:#1f2937;font-size:1.25rem;margin:0}.btn-close{align-items:center;background:#f3f4f6;border:none;border-radius:8px;color:#6b7280;cursor:pointer;display:flex;font-size:1rem;height:32px;justify-content:center;transition:all .2s;width:32px}.btn-close:hover{background:#e5e7eb;color:#1f2937}.modal-description{color:#6b7280;font-size:.9rem;margin:0;padding:1rem 1.5rem 0}.search-filters{display:flex;gap:.75rem;padding:1rem 1.5rem}.search-input{border:1px solid #e5e7eb;border-radius:8px;flex:1 1;font-size:.9rem;outline:none;padding:.625rem 1rem;transition:border-color .2s}.search-input:focus{border-color:#667eea}.category-filter{background:#fff;border:1px solid #e5e7eb;border-radius:8px;cursor:pointer;font-size:.9rem;min-width:150px;outline:none;padding:.625rem 1rem}.category-filter:focus{border-color:#667eea}.career-list{flex:1 1;margin:0 0 1rem;max-height:300px;padding:0 1.5rem}.career-list-empty,.career-list-loading{color:#9ca3af;padding:2rem;text-align:center}.career-option{align-items:center;border:2px solid #0000;border-radius:10px;cursor:pointer;display:flex;gap:.75rem;padding:.75rem;transition:all .15s}.career-option:hover{background:#f3f4f6}.career-option.selected{background:#eef2ff;border-color:#667eea}.career-option-icon{align-items:center;background:linear-gradient(135deg,#e0e7ff,#c7d2fe);border-radius:8px;display:flex;flex-shrink:0;height:40px;justify-content:center;overflow:hidden;width:40px}.career-option-icon img{height:100%;object-fit:cover;width:100%}.career-option-icon span{color:#667eea;font-size:1rem;font-weight:600}.career-option-info{flex:1 1;min-width:0}.career-option-name{color:#1f2937;display:block;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.career-option-category{color:#9ca3af;display:block;font-size:.75rem}.checkmark{color:#667eea;font-size:1.25rem}.more-results{color:#9ca3af;font-size:.8rem;margin:0;padding:.5rem;text-align:center}.additional-fields{margin-bottom:1rem;padding:0 1.5rem}.form-group{margin-bottom:.75rem}.form-group label{color:#374151;display:block;font-size:.875rem;font-weight:500;margin-bottom:.375rem}.form-group input{border:1px solid #e5e7eb;border-radius:8px;font-size:.9rem;outline:none;padding:.625rem 1rem;width:100%}.form-group input:focus{border-color:#667eea}.form-group small{color:#9ca3af;display:block;font-size:.75rem;margin-top:.25rem}.year-range{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr}.selected-preview{background:#f0fdf4;color:#166534;font-size:.9rem;padding:.75rem 1.5rem}.modal-actions{background:#f9fafb;border-top:1px solid #e5e7eb;display:flex;gap:.75rem;justify-content:flex-end;padding:1rem 1.5rem}.btn-secondary{border:1px solid #d1d5db;padding:.625rem 1.25rem}.btn-secondary:hover{background:#f3f4f6}.btn-primary{border-radius:8px;font-size:.9rem;padding:.625rem 1.25rem}.btn-primary:hover:not(:disabled){box-shadow:0 4px 12px #667eea66;transform:translateY(-1px)}[data-theme=dark] .modal-content{background:#1a1a2e}[data-theme=dark] .modal-header{border-color:#374151}[data-theme=dark] .modal-header h3{color:#f3f4f6}[data-theme=dark] .btn-close{background:#374151;color:#9ca3af}[data-theme=dark] .btn-close:hover{background:#4b5563;color:#f3f4f6}[data-theme=dark] .modal-description{color:#9ca3af}[data-theme=dark] .category-filter,[data-theme=dark] .form-group input,[data-theme=dark] .search-input{background:#252540;border-color:#374151;color:#f3f4f6}[data-theme=dark] .category-filter:focus,[data-theme=dark] .form-group input:focus,[data-theme=dark] .search-input:focus{border-color:#667eea}[data-theme=dark] .career-option:hover{background:#252540}[data-theme=dark] .career-option.selected{background:#2d2d4a;border-color:#667eea}[data-theme=dark] .career-option-name{color:#f3f4f6}[data-theme=dark] .form-group label{color:#d1d5db}[data-theme=dark] .selected-preview{background:#064e3b;color:#6ee7b7}[data-theme=dark] .modal-actions{background:#252540;border-color:#374151}[data-theme=dark] .btn-secondary{background:#374151;border-color:#4b5563;color:#d1d5db}[data-theme=dark] .btn-secondary:hover{background:#4b5563}@media (max-width:640px){.search-filters{flex-direction:column}.category-filter{min-width:100%}.year-range{grid-template-columns:1fr}}.career-goals-tab{max-width:800px}.career-goals-tab h2{color:#1f2937;font-size:1.5rem;margin:0}.career-goals-tab .tab-description{color:#6b7280;font-size:.95rem;margin:.5rem 0 0}.tab-header-row{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:1.5rem}.btn-view-roadmap{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:8px;color:#fff;font-size:.875rem;font-weight:500;padding:.5rem 1rem;text-decoration:none;transition:transform .2s,box-shadow .2s}.btn-view-roadmap:hover{box-shadow:0 4px 12px #667eea66;transform:translateY(-1px)}.message{margin-bottom:1rem;padding:.75rem 1rem}.career-section{background:#f9fafb;border-radius:12px;margin-bottom:1rem;padding:1.25rem}.section-header h3{color:#374151;font-size:1.1rem;margin:0}.section-header.collapsible{cursor:pointer;-webkit-user-select:none;user-select:none}.btn-add{background:#667eea;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.8rem;font-weight:500;padding:.375rem .75rem;transition:background .2s}.btn-add:hover:not(:disabled){background:#5a67d8}.btn-add:disabled{cursor:not-allowed;opacity:.6}.career-card{background:#fff;border:1px solid #e5e7eb;border-radius:10px;gap:1rem;position:relative}.career-card.current{border-color:#667eea;border-width:2px}.career-card.goal{margin-bottom:.75rem}.career-icon{background:linear-gradient(135deg,#e0e7ff,#c7d2fe);border-radius:10px;flex-shrink:0;overflow:hidden}.career-icon.small{border-radius:8px;height:36px;width:36px}.career-icon img{height:100%;object-fit:cover;width:100%}.icon-placeholder{color:#667eea;font-size:1.25rem;font-weight:600}.career-info{min-width:0}.career-info h4{color:#1f2937;font-size:1rem;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.career-category{color:#6b7280;font-size:.8rem;margin:.25rem 0 0}.goal-target{color:#667eea;font-weight:500}.career-years,.goal-target{font-size:.75rem;margin:.25rem 0 0}.career-years{color:#9ca3af}.goal-order{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;color:#fff;display:flex;font-size:.75rem;font-weight:600;height:24px;justify-content:center;left:-8px;position:absolute;top:-8px;width:24px}.readiness-bar{height:6px;margin-top:.5rem;position:relative}.readiness-bar,.readiness-fill{border-radius:3px}.readiness-text{font-size:.7rem;position:absolute;right:0;top:-16px}.transition-info{align-items:center;display:flex;flex-direction:column;padding:0 .5rem}.btn-remove,.transition-years{color:#9ca3af}.btn-remove{align-items:center;background:#f3f4f6;border:none;border-radius:50%;cursor:pointer;display:flex;font-size:.8rem;height:24px;justify-content:center;position:absolute;right:.5rem;top:.5rem;transition:all .2s;width:24px}.btn-remove:hover{background:#fee2e2;color:#ef4444}.past-section details{margin:0}.past-section summary{list-style:none}.past-section summary::-webkit-details-marker{display:none}.past-section summary:before{border:5px solid #0000;border-left-color:#9ca3af;content:"";display:inline-block;margin-right:.5rem;transition:transform .2s}.past-section details[open] summary:before{transform:rotate(90deg)}.past-careers-list{grid-gap:.5rem;display:grid;gap:.5rem;margin-top:1rem}.career-card.past{padding:.75rem}.stats-section{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.stats-section h3{color:#fff;margin-bottom:1rem}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(100px,1fr))}.stat-card{border-radius:8px;padding:1rem}.empty-state{color:#9ca3af;font-size:.9rem;margin:0;padding:1rem}.career-error,.career-loading{align-items:center;color:#6b7280;display:flex;justify-content:center;min-height:200px}.career-error{color:#ef4444}[data-theme=dark] .career-goals-tab h2{color:#f3f4f6}[data-theme=dark] .career-goals-tab .tab-description{color:#9ca3af}[data-theme=dark] .career-section{background:#252540}[data-theme=dark] .section-header h3{color:#e5e7eb}[data-theme=dark] .career-card{background:#1a1a2e;border-color:#374151}[data-theme=dark] .career-info h4{color:#f3f4f6}[data-theme=dark] .career-category{color:#9ca3af}[data-theme=dark] .btn-remove{background:#374151;color:#9ca3af}[data-theme=dark] .btn-remove:hover{background:#7f1d1d;color:#fca5a5}@media (max-width:640px){.tab-header-row{flex-direction:column;gap:1rem}.btn-view-roadmap{text-align:center;width:100%}.career-card{flex-wrap:wrap}.stats-grid{grid-template-columns:repeat(2,1fr)}}.roadmap-timeline{padding:1rem 0}.timeline-section{margin-bottom:2rem}.section-title{align-items:center;color:#6b7280;display:flex;font-size:1rem;font-weight:500;gap:.5rem;margin:0 0 1rem}.section-icon{font-size:1.1rem}.past-careers-grid{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));margin-bottom:1rem}.btn-add-past,.btn-add-past-first{background:#0000;border:2px dashed #d1d5db;border-radius:8px;color:#667eea;cursor:pointer;font-size:.875rem;padding:.5rem 1rem;transition:all .2s}.btn-add-past-first:hover,.btn-add-past:hover{background:#eef2ff;border-color:#667eea}.add-past-section{align-items:center;border-top:1px dashed #e5e7eb;display:flex;gap:1rem;padding-top:1rem}.add-hint{color:#9ca3af;font-size:.8rem}.timeline-main{align-items:center;display:flex;flex-direction:column;gap:0}.timeline-current{max-width:300px;width:100%}.timeline-goals{flex-direction:column}.timeline-goals,.timeline-node{align-items:center;display:flex;width:100%}.timeline-node{background:#fff;border:2px solid #e5e7eb;border-radius:12px;gap:1rem;max-width:320px;padding:1rem 1.25rem;position:relative;transition:all .2s}.timeline-node.current{background:linear-gradient(135deg,#eef2ff,#e0e7ff);border-color:#667eea}.timeline-node.past{background:#f9fafb;border-color:#d1d5db}.timeline-node.goal{border-color:#10b981}.timeline-node.add-goal,.timeline-node.empty-current{border-style:dashed;cursor:pointer}.timeline-node.add-goal:hover,.timeline-node.empty-current:hover{background:#f9fafb;border-color:#667eea}.node-badge{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:10px;font-size:.65rem;left:50%;letter-spacing:.05em;padding:.125rem .75rem;transform:translateX(-50%)}.node-badge,.node-order{color:#fff;font-weight:700;position:absolute;top:-10px}.node-order{background:linear-gradient(135deg,#10b981,#059669);border-radius:50%;box-shadow:0 2px 6px #10b98166;font-size:.75rem;height:28px;left:-10px;width:28px}.node-icon,.node-order{align-items:center;display:flex;justify-content:center}.node-icon{background:linear-gradient(135deg,#e0e7ff,#c7d2fe);border-radius:10px;flex-shrink:0;height:48px;overflow:hidden;width:48px}.node-icon.large{border-radius:12px;height:56px;width:56px}.node-icon.small{border-radius:8px;height:36px;width:36px}.node-icon.empty{background:#f3f4f6;border:2px dashed #d1d5db}.node-icon img{height:100%;object-fit:cover;width:100%}.node-icon span{color:#667eea;font-size:1.25rem;font-weight:600}.node-icon.empty span{color:#9ca3af;font-size:1.5rem}.node-content{flex:1 1;min-width:0}.node-content h4{color:#1f2937;font-size:1rem;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.node-category{color:#6b7280;display:block;font-size:.75rem}.node-years{color:#9ca3af;font-size:.7rem}.node-target,.node-years{display:block;margin-top:.125rem}.node-target{color:#667eea;font-size:.75rem;font-weight:500}.node-hint{color:#9ca3af;display:block;font-size:.75rem;font-style:italic}.node-readiness{margin-top:.5rem}.readiness-bar{background:#e5e7eb;border-radius:2px;height:4px;overflow:hidden}.readiness-fill{background:linear-gradient(90deg,#10b981,#34d399);height:100%;transition:width .3s ease}.readiness-text{color:#10b981;font-size:.65rem;font-weight:500}.btn-change{background:#0000;border:1px solid #667eea;border-radius:6px;color:#667eea;cursor:pointer;font-size:.75rem;padding:.375rem .75rem;transition:all .2s}.btn-change:hover{background:#667eea;color:#fff}.btn-remove-node{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:50%;color:#9ca3af;cursor:pointer;display:flex;font-size:.8rem;height:24px;justify-content:center;opacity:0;position:absolute;right:-8px;top:-8px;transition:all .2s;width:24px}.timeline-node:hover .btn-remove-node{opacity:1}.btn-remove-node:hover{background:#fee2e2;border-color:#ef4444;color:#ef4444}.transition-connector{align-items:center;display:flex;flex-direction:column;padding:.5rem 0;position:relative}.connector-line{background:#10b981;height:30px;width:2px}.connector-line.dashed{background:repeating-linear-gradient(180deg,#d1d5db 0,#d1d5db 4px,#0000 0,#0000 8px)}.connector-arrow{color:#10b981;font-size:1.25rem}.transition-details{align-items:flex-start;display:flex;flex-direction:column;gap:.125rem;left:calc(50% + 20px);position:absolute;top:50%;transform:translateY(-50%)}.transition-years{background:#f3f4f6;border-radius:4px;color:#6b7280;font-size:.7rem;padding:.125rem .5rem}.transition-difficulty{border-radius:4px;font-size:.65rem;font-weight:500;padding:.125rem .375rem}.transition-difficulty.easy{background:#d1fae5;color:#065f46}.transition-difficulty.medium{background:#fef3c7;color:#92400e}.transition-difficulty.hard{background:#fee2e2;color:#991b1b}[data-theme=dark] .timeline-node{background:#252540;border-color:#374151}[data-theme=dark] .timeline-node.current{background:linear-gradient(135deg,#2d2d4a,#3d3d5c);border-color:#667eea}[data-theme=dark] .timeline-node.past{background:#1a1a2e}[data-theme=dark] .timeline-node.goal{border-color:#10b981}[data-theme=dark] .node-content h4{color:#f3f4f6}[data-theme=dark] .node-category{color:#9ca3af}[data-theme=dark] .btn-remove-node{background:#374151;border-color:#4b5563}[data-theme=dark] .transition-years{background:#374151;color:#d1d5db}[data-theme=dark] .readiness-bar{background:#374151}@media (max-width:640px){.past-careers-grid{grid-template-columns:1fr}.timeline-node{max-width:100%}.transition-details{flex-direction:row;gap:.5rem;margin-top:.25rem;position:static;transform:none}}.career-roadmap-page{margin:0 auto;max-width:1200px;min-height:100vh;padding:2rem}.roadmap-header{align-items:flex-start;border-bottom:2px solid #e5e7eb;display:flex;justify-content:space-between;margin-bottom:2rem;padding-bottom:1.5rem}.roadmap-header h1{color:#1f2937;font-size:2rem;margin:0}.header-description{color:#6b7280;font-size:1rem;margin:.5rem 0 0}.btn-add-career{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:10px;color:#fff;cursor:pointer;font-size:1rem;font-weight:500;padding:.75rem 1.5rem;transition:transform .2s,box-shadow .2s}.btn-add-career:hover{box-shadow:0 6px 20px #667eea66;transform:translateY(-2px)}.message{border-radius:10px;font-size:.95rem;margin-bottom:1.5rem;padding:1rem 1.5rem}.message.success{background:#d1fae5;border:1px solid #10b981;color:#065f46}.message.error{background:#fee2e2;border:1px solid #ef4444;color:#991b1b}.progress-overview{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:16px;color:#fff;margin-bottom:2rem;padding:2rem}.progress-card{margin-bottom:1.5rem;text-align:center}.progress-value{display:block;font-size:3rem;font-weight:700}.progress-label{display:block;font-size:1rem;margin-bottom:1rem;opacity:.9}.progress-bar{background:#fff3;border-radius:4px;height:8px;margin:0 auto;max-width:400px}.progress-fill{background:#fff;border-radius:4px}.stat-cards{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.stat-card{background:#ffffff26;text-align:center}.stat-value{font-size:1.75rem}.stat-label{opacity:.9}.view-tabs{background:#f3f4f6;border-radius:10px;display:flex;gap:.5rem;margin-bottom:1.5rem;padding:.25rem;width:-webkit-fit-content;width:fit-content}.view-tab{background:#0000;border:none;border-radius:8px;color:#6b7280;cursor:pointer;font-size:.9rem;font-weight:500;padding:.625rem 1.25rem;transition:all .2s}.view-tab:hover{color:#374151}.view-tab.active{background:#fff;box-shadow:0 2px 8px #0000001a;color:#667eea}.roadmap-main{background:#fff;border-radius:16px;box-shadow:0 4px 20px #0000000d;padding:2rem}.empty-roadmap,.empty-skills{padding:4rem 2rem;text-align:center}.empty-icon{font-size:4rem;margin-bottom:1rem;opacity:.3}.empty-roadmap h3,.empty-skills h3{color:#374151;margin:0 0 .5rem}.empty-roadmap p,.empty-skills p{color:#6b7280;margin-bottom:1.5rem}.empty-actions{display:flex;gap:1rem;justify-content:center}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);font-size:.95rem;font-weight:500;padding:.75rem 1.5rem;transition:all .2s}.btn-primary:hover{box-shadow:0 4px 12px #667eea66;transform:translateY(-1px)}.btn-secondary{border:2px solid #e5e7eb;border-radius:10px;color:#374151;font-size:.95rem;font-weight:500;padding:.75rem 1.5rem;transition:all .2s}.btn-secondary:hover{border-color:#667eea;color:#667eea}.skill-gaps-list h3{color:#1f2937;margin:0 0 .5rem}.skills-description{color:#6b7280;margin-bottom:1.5rem}.skill-gap-card{align-items:flex-start;background:#f9fafb;border-radius:12px;display:flex;gap:1rem;margin-bottom:.75rem;padding:1.25rem}.skill-priority{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:.8rem;font-weight:600;height:28px;justify-content:center;width:28px}.skill-info{flex:1 1;min-width:0}.skill-info h4{color:#1f2937;margin:0 0 .5rem}.skill-meta{color:#6b7280;display:flex;font-size:.8rem;gap:1rem;margin-bottom:.25rem}.careers-needing{color:#9ca3af;font-size:.75rem}.btn-practice{background:#10b981;border-radius:8px;color:#fff;font-size:.8rem;font-weight:500;padding:.5rem 1rem;text-decoration:none;transition:background .2s}.btn-practice:hover{background:#059669}.auth-required,.roadmap-error,.roadmap-loading{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:400px;text-align:center}.spinner{animation:spin .8s linear infinite;border:3px solid #e5e7eb;height:40px;margin-bottom:1rem;width:40px}.auth-required .btn-primary,.roadmap-error button{margin-top:1rem}[data-theme=dark] .career-roadmap-page{background:#1a1a2e}[data-theme=dark] .roadmap-header{border-color:#374151}[data-theme=dark] .roadmap-header h1{color:#f3f4f6}[data-theme=dark] .header-description{color:#9ca3af}[data-theme=dark] .view-tabs{background:#252540}[data-theme=dark] .view-tab{color:#9ca3af}[data-theme=dark] .view-tab.active{background:#374151;color:#a5b4fc}[data-theme=dark] .roadmap-main{background:#252540}[data-theme=dark] .skill-gap-card{background:#1a1a2e}[data-theme=dark] .skill-info h4{color:#f3f4f6}[data-theme=dark] .message.success{background:#064e3b;border-color:#10b981;color:#6ee7b7}[data-theme=dark] .message.error{background:#7f1d1d;border-color:#ef4444;color:#fca5a5}@media (max-width:768px){.career-roadmap-page{padding:1rem}.roadmap-header{flex-direction:column;gap:1rem}.btn-add-career{width:100%}.progress-value{font-size:2.5rem}.stat-cards{grid-template-columns:repeat(2,1fr)}.empty-actions{flex-direction:column}.skill-gap-card{flex-wrap:wrap}}.streaks-container{background:linear-gradient(135deg,#1a1a2e,#16213e);border-radius:16px;color:#fff;padding:1.5rem;text-align:center}.streak-main{gap:1rem;margin-bottom:.75rem}.streak-flame,.streak-main{align-items:center;display:flex;justify-content:center}.streak-flame{border-radius:50%;font-size:1.75rem;height:56px;transition:all .3s;width:56px}.streak-flame.cold{background:linear-gradient(135deg,#6b7280,#4b5563)}.streak-flame.warm{background:linear-gradient(135deg,#f59e0b,#d97706);box-shadow:0 4px 20px #f59e0b4d}.streak-flame.hot{background:linear-gradient(135deg,#ef4444,#dc2626);box-shadow:0 4px 25px #ef444466}.streak-flame.epic{background:linear-gradient(135deg,#8b5cf6,#6366f1);box-shadow:0 4px 30px #8b5cf680}.streak-flame.legendary{animation:legendary-glow 2s ease-in-out infinite;background:linear-gradient(135deg,#fbbf24,#f59e0b 50%,#ef4444);box-shadow:0 4px 35px #fbbf2499}@keyframes legendary-glow{0%,to{box-shadow:0 4px 35px #fbbf2499}50%{box-shadow:0 6px 45px #fbbf24cc}}.flame-icon{color:#fff;text-shadow:0 2px 10px #0000004d}.streak-info{align-items:flex-start}.streak-count{-webkit-text-fill-color:#0000;background:linear-gradient(90deg,#fbbf24,#f59e0b);-webkit-background-clip:text;background-clip:text;font-size:2.5rem;font-weight:800}.streak-label{color:#a5b4fc;font-size:.9rem}.streak-message{color:#e0e7ff;font-size:.9rem;margin:0 0 1.25rem}.week-calendar{gap:.5rem;margin-bottom:1.25rem}.day-cell,.week-calendar{display:flex;justify-content:center}.day-cell{align-items:center;background:#ffffff0d;border-radius:8px;flex-direction:column;gap:.25rem;height:48px;transition:all .2s;width:36px}.day-cell.active{background:linear-gradient(135deg,#10b981,#059669);box-shadow:0 2px 10px #10b9814d}.day-cell.today{border:2px solid #f59e0b;box-shadow:0 0 12px #f59e0b66}.day-cell.today.active{border:2px solid #10b981;box-shadow:0 0 12px #10b98180}.day-cell.future{opacity:.4}.day-letter{color:#6b7280;font-size:.7rem;font-weight:600}.day-cell.active .day-letter{color:#fffc}.day-cell.today .day-letter{color:#f59e0b;font-weight:700}.day-cell.today.active .day-letter{color:#fff}.day-indicator{color:#374151;font-size:1rem}.day-cell.active .day-indicator{color:#fff}.longest-streak{border-top:1px solid #ffffff1a;display:flex;justify-content:space-between;padding-top:1rem}.longest-label{color:#6b7280;font-size:.85rem}.longest-value{color:#a5b4fc;font-size:.85rem;font-weight:600}.streak-reminder{align-items:center;background:linear-gradient(135deg,#f59e0b,#d97706);border-radius:12px;color:#fff;display:flex;gap:1rem;margin-bottom:1rem;padding:1rem}.reminder-icon{align-items:center;background:#fff3;border-radius:50%;display:flex;flex-shrink:0;font-size:1.25rem;height:32px;justify-content:center;width:32px}.reminder-content{flex:1 1;text-align:left}.reminder-title{display:block;font-size:.9rem;font-weight:600}.reminder-text{display:block;font-size:.8rem;opacity:.9}.reminder-dismiss{background:#fff3;border:none;border-radius:50%;color:#fff;cursor:pointer;font-size:1rem;height:28px;transition:background .2s;width:28px}.reminder-dismiss:hover{background:#ffffff4d}.streak-milestone-overlay{align-items:center;background:#000000d9;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:2000}.streak-milestone-modal{background:linear-gradient(135deg,#1a1a2e,#16213e);border:2px solid #fbbf244d;border-radius:24px;box-shadow:0 20px 60px #00000080;max-width:400px;padding:3rem;text-align:center;width:90%}.milestone-flames{display:flex;font-size:2.5rem;gap:.5rem;justify-content:center;margin-bottom:1rem}.milestone-flame{color:#fbbf24;text-shadow:0 0 20px #fbbf2499}.milestone-title{-webkit-text-fill-color:#0000;background:linear-gradient(90deg,#fbbf24,#f59e0b);-webkit-background-clip:text;background-clip:text;color:#fff;font-size:1.75rem;font-weight:800;margin:0 0 1.5rem}.milestone-days{align-items:center;background:linear-gradient(135deg,#f59e0b,#d97706);border-radius:50%;box-shadow:0 10px 40px #f59e0b80;color:#fff;display:flex;font-size:2.5rem;font-weight:800;height:100px;justify-content:center;margin:0 auto 1.5rem;width:100px}.milestone-text{color:#a5b4fc;font-size:1rem;margin:0 0 2rem}.milestone-btn{background:linear-gradient(135deg,#f59e0b,#d97706);border:none;border-radius:12px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:1rem 2rem;transition:transform .2s,box-shadow .2s}.milestone-btn:hover{box-shadow:0 8px 25px #f59e0b66;transform:scale(1.05)}@media (max-width:768px){.streaks-container{padding:1.25rem}.day-cell{height:44px;width:32px}.streak-count{font-size:2rem}.streak-milestone-modal{padding:2rem}}.contributor-badges-container{background:linear-gradient(135deg,#1a1a2e,#16213e);border-radius:16px;color:#fff;padding:1.5rem}.contributor-badges-container.compact{padding:1rem}.badges-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.5rem}.badges-header h2{font-size:1.25rem;font-weight:700;margin:0}.badges-summary{align-items:center;display:flex;gap:1rem}.unlocked-count{background:#6366f133;border-radius:20px;color:#a5b4fc;font-size:.9rem;padding:.5rem 1rem}.completion-percent{color:#6b7280;font-size:.85rem}.badge-category{margin-bottom:2rem}.badge-category:last-child{margin-bottom:0}.category-title{align-items:center;color:#fff;display:flex;font-size:1rem;gap:.5rem;margin:0 0 .5rem}.category-icon{background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:6px;font-size:.85rem;padding:.25rem .5rem}.category-desc{color:#6b7280;font-size:.85rem;margin:0 0 1rem}.badges-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.contributor-badge-card{background:#ffffff0d;border:2px solid #ffffff1a;border-radius:12px;display:flex;gap:1rem;overflow:hidden;padding:1rem;position:relative;transition:all .2s}.contributor-badge-card.unlocked{background:linear-gradient(135deg,#6366f126,#8b5cf626);background:linear-gradient(135deg,rgba(var(--tier-color-rgb,99,102,241),.15) 0,rgba(var(--tier-color-rgb,139,92,246),.15) 100%);border-color:#6366f1;border-color:var(--tier-color,#6366f1)}.contributor-badge-card.locked{opacity:.7}.contributor-badge-card:hover{border-color:#6366f1;border-color:var(--tier-color,#6366f1);transform:translateY(-2px)}.badge-icon-container{flex-shrink:0;position:relative}.badge-icon{align-items:center;background:linear-gradient(135deg,#4b5563,#374151);border-radius:12px;color:#fff;display:flex;font-size:1.25rem;font-weight:700;height:50px;justify-content:center;width:50px}.badge-icon.earned{background:linear-gradient(135deg,#6366f1,#8b5cf6);background:linear-gradient(135deg,var(--tier-color,#6366f1) 0,#8b5cf6 100%);box-shadow:0 4px 15px #6366f14d}.badge-tier{border-radius:10px;bottom:-4px;color:#fff;font-size:.65rem;font-weight:600;left:50%;padding:2px 8px;position:absolute;text-transform:uppercase;transform:translateX(-50%)}.badge-info{display:flex;flex:1 1;flex-direction:column;gap:.25rem;min-width:0}.badge-name{color:#fff;font-size:.9rem;font-weight:600}.badge-points{color:#fbbf24;font-size:.8rem;font-weight:500}.badge-earned-date{color:#22c55e;font-size:.75rem}.badge-progress{background:#ffffff1a;border-radius:10px;height:20px;margin-top:.5rem;overflow:hidden;position:relative}.progress-bar{background:linear-gradient(90deg,#6366f1,#8b5cf6);border-radius:10px;height:100%;min-width:2px;transition:width .3s ease}.progress-text{color:#fff;font-size:.7rem;left:50%;text-shadow:0 1px 2px #00000080;top:50%;transform:translate(-50%,-50%)}.contributor-badges-compact{align-items:center;display:flex;gap:.5rem}.compact-badges{display:flex;flex-wrap:wrap;gap:.5rem}.compact-badge{align-items:center;background:linear-gradient(135deg,#6366f1,#8b5cf6);background:linear-gradient(135deg,var(--tier-color,#6366f1) 0,#8b5cf6 100%);border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:.75rem;font-weight:700;height:32px;justify-content:center;transition:transform .2s;width:32px}.compact-badge:hover{transform:scale(1.1)}.no-badges{color:#6b7280;font-size:.85rem}.no-badges-message{color:#9ca3af;padding:2rem;text-align:center}.no-badges-message p{font-size:1rem;margin:0 0 1rem}.no-badges-message ul{list-style:none;margin:0;padding:0}.no-badges-message li{color:#6b7280;font-size:.9rem;padding:.5rem 0}@media (max-width:768px){.contributor-badges-container{padding:1rem}.badges-header{align-items:flex-start;flex-direction:column;gap:.75rem}.badges-grid{grid-template-columns:1fr}.contributor-badge-card{padding:.75rem}.badge-icon{font-size:1rem;height:40px;width:40px}}.contributor-stats-container{background:linear-gradient(135deg,#1a1a2e,#16213e);border-radius:16px;color:#fff;padding:1.5rem}.contributor-stats-container.compact{padding:1rem}.stats-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.5rem}.stats-header h2{font-size:1.25rem;font-weight:700;margin:0}.rank-badge{align-items:center;background:linear-gradient(135deg,#f59e0b,#d97706);border-radius:20px;display:flex;font-weight:600;gap:.25rem;padding:.5rem 1rem}.rank-icon{font-size:.9rem}.rank-number{font-size:1.1rem}.rank-label{font-size:.75rem;opacity:.8}.contributor-score-card{align-items:center;background:linear-gradient(135deg,#6366f133,#8b5cf633);border:2px solid #6366f14d;border-radius:12px;display:flex;gap:1rem;margin-bottom:1.5rem;padding:1.5rem}.score-icon{align-items:center;background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:50%;box-shadow:0 4px 20px #6366f166;color:#fff;display:flex;font-size:1.5rem;font-weight:700;height:60px;justify-content:center;width:60px}.score-info{flex:1 1}.score-value{color:#fff;display:block;font-size:2rem;font-weight:800;line-height:1}.score-label{color:#a5b4fc;display:block;font-size:.9rem;margin-top:.25rem}.accuracy-badge{background:#ffffff1a;border:1px solid #22c55e;border:1px solid var(--accuracy-color,#22c55e);border-radius:20px;color:#22c55e;color:var(--accuracy-color,#22c55e);font-size:.85rem;font-weight:600;padding:.5rem 1rem}.stats-grid{grid-gap:1rem;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin-bottom:1.5rem}.contributor-stat-card{align-items:center;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:12px;display:flex;gap:.75rem;padding:1rem}.stat-icon{background:linear-gradient(135deg,#6366f1 0,rgba(var(--stat-color-rgb),.5) 100%);background:linear-gradient(135deg,var(--stat-color,#6366f1) 0,rgba(var(--stat-color-rgb),.5) 100%);color:#fff;flex-shrink:0;font-size:1rem;font-weight:700;height:40px;width:40px}.stat-info{flex:1 1;min-width:0}.stat-value{color:#fff}.stat-label{color:#6b7280;font-size:.75rem}.stat-sub{color:#6366f1;color:var(--stat-color,#6366f1);display:block;font-size:.7rem;margin-top:.25rem}.contribution-timeline{border-top:1px solid #ffffff1a;display:flex;gap:2rem;padding-top:1rem}.timeline-item{display:flex;flex-direction:column;gap:.25rem}.timeline-label{color:#6b7280;font-size:.75rem}.timeline-date{color:#a5b4fc;font-size:.9rem;font-weight:500}.no-contributions-message{padding:2rem;text-align:center}.message-icon{align-items:center;background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:50%;color:#fff;display:flex;font-size:2rem;font-weight:700;height:80px;justify-content:center;margin:0 auto 1rem;width:80px}.no-contributions-message h3{color:#fff;font-size:1.25rem;margin:0 0 .5rem}.no-contributions-message p{color:#9ca3af;font-size:.9rem;margin:0 0 1.5rem}.contribution-tips{display:flex;flex-direction:column;gap:.75rem;margin:0 auto;max-width:300px;text-align:left}.tip{background:#ffffff0d;color:#d1d5db;font-size:.85rem;gap:.75rem;padding:.75rem}.tip,.tip-icon{align-items:center;border-radius:8px;display:flex}.tip-icon{background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;flex-shrink:0;font-size:.9rem;font-weight:700;height:32px;justify-content:center;width:32px}.contributor-stats-compact{align-items:center;display:flex;gap:1rem}.compact-stat{align-items:center;background:#6366f11a;border-radius:6px;cursor:default;display:flex;gap:.25rem;padding:.25rem .5rem}.compact-icon{color:#6366f1;font-size:.75rem}.compact-value{color:#fff;font-size:.85rem;font-weight:600}.no-contributions{color:#6b7280;font-size:.85rem}.loading-spinner{color:#6b7280}.error-message,.loading-spinner{padding:2rem;text-align:center}@media (max-width:768px){.contributor-stats-container{padding:1rem}.stats-header{align-items:flex-start;flex-direction:column;gap:.75rem}.contributor-score-card{flex-direction:column;padding:1rem;text-align:center}.score-info{text-align:center}.stats-grid{grid-template-columns:repeat(2,1fr)}.contribution-timeline{flex-direction:column;gap:1rem}}.contribution-guide{padding:1rem}.guide-header{margin-bottom:1.5rem;text-align:center}.guide-header h3{color:#fff;font-size:1.5rem;font-weight:700;margin:0 0 .5rem}.guide-header p{color:#9ca3af;font-size:.95rem;margin:0}.quick-actions{margin-bottom:1.5rem}.email-display{background:#6366f11a;border:1px solid #6366f14d;border-radius:12px;padding:1rem 1.25rem}.email-label{color:#9ca3af;display:block;font-size:.85rem;margin-bottom:.5rem}.email-row{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem}.email-link{color:#a5b4fc;font-size:1.1rem;font-weight:600;text-decoration:none;transition:color .2s}.email-link:hover{color:#c4b5fd;text-decoration:underline}.copy-btn{background:#6366f133;border:1px solid #6366f166;border-radius:8px;color:#a5b4fc;cursor:pointer;font-size:.85rem;font-weight:500;padding:.5rem 1rem;transition:all .2s}.copy-btn:hover{background:#6366f14d;border-color:#6366f199}.copy-btn.copied{background:#22c55e33;border-color:#22c55e66;color:#4ade80}.copy-btn.small{font-size:.8rem;padding:.35rem .75rem}.contribution-types{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem}.contribution-card{background:#ffffff08;border:1px solid #ffffff14;border-radius:12px;overflow:hidden;transition:border-color .2s}.contribution-card:hover{border-color:#ffffff26}.contribution-card.active{border-color:#6366f180}.contribution-card .card-header{align-items:center;cursor:pointer;display:flex;gap:1rem;padding:1rem 1.25rem;transition:background .2s}.contribution-card .card-header:hover{background:#ffffff05}.card-icon{border-radius:12px;flex-shrink:0;font-size:1.5rem;height:48px;width:48px}.card-icon.bug{background:linear-gradient(135deg,#3b82f6,#2563eb)}.card-icon.content{background:linear-gradient(135deg,#8b5cf6,#7c3aed);color:#fff;font-size:1.75rem;font-weight:700}.card-info{flex:1 1;min-width:0}.card-info h4{color:#fff;font-size:1rem;font-weight:600;margin:0 0 .25rem}.card-info p{color:#9ca3af;font-size:.85rem;margin:0}.card-reward{background:linear-gradient(135deg,#22c55e,#16a34a);border-radius:20px;color:#fff;flex-shrink:0;font-size:.8rem;font-weight:700;padding:.35rem .75rem}.expand-icon{color:#6b7280;flex-shrink:0;font-size:.75rem}.card-content{border-top:1px solid #ffffff0d;padding:0 1.25rem 1.25rem}.template-section{margin-bottom:1rem}.template-header{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem;justify-content:space-between;margin-bottom:.75rem;padding-top:1rem}.template-header span{color:#9ca3af;font-size:.85rem;font-weight:500}.template-actions{display:flex;flex-wrap:wrap;gap:.5rem}.send-email-btn{background:linear-gradient(135deg,#6366f1,#8b5cf6);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.8rem;font-weight:500;padding:.35rem .75rem;text-decoration:none;transition:opacity .2s}.send-email-btn:hover{opacity:.9}.template-preview{background:#0000004d;border:1px solid #ffffff1a;border-radius:8px;color:#d1d5db;font-family:Monaco,Consolas,monospace;font-size:.8rem;line-height:1.5;margin:0;max-height:200px;overflow-y:auto;padding:1rem;white-space:pre-wrap}.tips-section{background:#6366f10d;border-radius:8px;padding:1rem}.tips-section h5{color:#a5b4fc;font-size:.85rem;font-weight:600;margin:0 0 .5rem}.tips-section ul{margin:0;padding-left:1.25rem}.tips-section li{color:#9ca3af;font-size:.8rem;line-height:1.4;margin-bottom:.35rem}.tips-section li:last-child{margin-bottom:0}.rewards-info{background:linear-gradient(135deg,#f59e0b1a,#d977061a);border:1px solid #f59e0b33;border-radius:12px;padding:1.25rem}.rewards-info h4{color:#fbbf24;font-size:1rem;font-weight:600;margin:0 0 1rem}.reward-items{display:flex;flex-direction:column;gap:.75rem}.reward-item{align-items:center;color:#d1d5db;display:flex;font-size:.85rem;gap:.75rem}.reward-badge{flex-shrink:0;font-size:1.25rem;text-align:center;width:32px}.quick-contribute-section{border-top:1px solid #ffffff1a;margin-top:1.5rem;padding-top:1.5rem}.quick-contribute-header{margin-bottom:1rem}.quick-contribute-header h4{color:#fff;font-size:1rem;font-weight:600;margin:0}.quick-contribute-actions{display:flex;gap:1rem;margin-bottom:1rem}.quick-action-btn{align-items:center;border-radius:12px;display:flex;flex:1 1;font-size:.9rem;font-weight:600;gap:.75rem;justify-content:center;padding:1rem;text-decoration:none;transition:all .2s}.quick-action-btn.bug{background:linear-gradient(135deg,#3b82f633,#2563eb33);border:1px solid #3b82f64d;color:#93c5fd}.quick-action-btn.bug:hover{background:linear-gradient(135deg,#3b82f64d,#2563eb4d);border-color:#3b82f680;transform:translateY(-2px)}.quick-action-btn.content{background:linear-gradient(135deg,#8b5cf633,#7c3aed33);border:1px solid #8b5cf64d;color:#c4b5fd}.quick-action-btn.content:hover{background:linear-gradient(135deg,#8b5cf64d,#7c3aed4d);border-color:#8b5cf680;transform:translateY(-2px)}.action-icon{font-size:1.25rem}.action-text{white-space:nowrap}.email-hint{color:#6b7280;font-size:.85rem;text-align:center}.email-hint a{color:#a5b4fc;text-decoration:none}.email-hint a:hover{text-decoration:underline}@media (max-width:768px){.contribution-guide{padding:.75rem}.guide-header h3{font-size:1.25rem}.email-display{padding:.85rem 1rem}.email-link{font-size:.95rem}.email-row{align-items:flex-start;flex-direction:column;gap:.5rem}.contribution-card .card-header{flex-wrap:wrap;padding:.85rem 1rem}.card-icon{font-size:1.25rem;height:40px;width:40px}.card-reward{margin-bottom:.5rem;margin-left:auto;order:-1}.expand-icon{order:1}.template-header{align-items:flex-start;flex-direction:column}.template-actions{width:100%}.template-actions .copy-btn,.template-actions .send-email-btn{flex:1 1;text-align:center}.template-preview{font-size:.75rem;max-height:150px}.rewards-info{padding:1rem}.quick-contribute-actions{flex-direction:column;gap:.75rem}.quick-action-btn{padding:.85rem}.action-icon{font-size:1.1rem}.action-text{font-size:.85rem}}.profile-page{background:#f5f7fa;min-height:100vh;padding:2rem 1rem}.profile-container{margin:0 auto;max-width:800px}.profile-loading{align-items:center;color:#666;display:flex;flex-direction:column;justify-content:center;min-height:60vh}.profile-loading .loading-spinner{animation:spin 1s linear infinite;border:4px solid #e1e5eb;border-radius:50%;border-top-color:#4285f4;height:48px;width:48px}.profile-header{align-items:center;background:#fff;border-radius:16px;box-shadow:0 2px 8px #0000000f;display:flex;gap:1.5rem;margin-bottom:1.5rem;padding:2rem}.profile-avatar-large{align-items:center;background:linear-gradient(135deg,#4285f4,#1a73e8);border-radius:50%;display:flex;flex-shrink:0;height:100px;justify-content:center;overflow:hidden;width:100px}.profile-avatar-large img{height:100%;object-fit:cover;width:100%}.profile-avatar-large span{color:#fff;font-size:2.5rem;font-weight:700}.profile-info h1{color:#1a1a2e;font-size:1.75rem;margin:0 0 .25rem}.profile-email{color:#666;margin:0 0 .25rem}.profile-member-since{color:#999;font-size:.85rem;margin:0}.profile-tabs{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem}.tab-btn{align-items:center;background:#fff;border:2px solid #0000;border-radius:10px;box-shadow:0 2px 4px #0000000a;display:flex;font-size:.95rem;gap:.5rem;padding:.75rem 1.25rem}.tab-btn:hover{background:#f8f9fa;border-color:#e1e5eb}.tab-btn.active{background:#4285f4;border-color:#4285f4;box-shadow:0 4px 12px #4285f44d;color:#fff}.tab-icon{font-size:1.1rem}.profile-content{background:#fff;border-radius:16px;box-shadow:0 2px 8px #0000000f;padding:2rem}.tab-content h2{color:#1a1a2e;font-size:1.5rem;margin:0 0 .5rem}.tab-description{color:#666;margin:0 0 1.5rem}.profile-form{gap:1.25rem;max-width:500px}.form-group,.profile-form{display:flex;flex-direction:column}.form-group{gap:.5rem}.form-group label{color:#333;font-size:.9rem;font-weight:600}.form-group input,.form-group textarea{border:2px solid #e1e5eb;border-radius:10px;font-family:inherit;font-size:1rem;outline:none;padding:12px 16px;transition:all .2s ease}.form-group input:focus,.form-group textarea:focus{border-color:#4285f4;box-shadow:0 0 0 3px #4285f41a}.form-group textarea{min-height:100px;resize:vertical}.form-hint{color:#888;font-size:.8rem}.preferences-section{border-bottom:1px solid #e1e5eb;margin-bottom:2rem;padding-bottom:1.5rem}.preferences-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.preferences-section h3{color:#1a1a2e;font-size:1.1rem;font-weight:600;margin:0 0 .5rem}.section-description{color:#666;font-size:.9rem;line-height:1.5;margin:0 0 1rem}.select-input{-webkit-appearance:none;appearance:none;background:#fff;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cpath fill='%23666' d='M6 8 1 3h10z'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;border:2px solid #e1e5eb;border-radius:10px;cursor:pointer;font-family:inherit;font-size:1rem;min-width:200px;outline:none;padding:12px 36px 12px 16px;transition:all .2s ease}.select-input:focus{border-color:#4285f4;box-shadow:0 0 0 3px #4285f41a}.select-input:hover:not(:focus){border-color:#c1c5cb}.preferences-list,.radio-group{display:flex;flex-direction:column;gap:.75rem}.checkbox-option,.radio-option{align-items:flex-start;background:#f8f9fa;border-radius:8px;cursor:pointer;display:flex;gap:.75rem;padding:.75rem 1rem;transition:background .2s}.checkbox-option:hover,.radio-option:hover{background:#f0f2f5}.checkbox-option input,.radio-option input{accent-color:#4285f4;margin-top:2px}.checkbox-content{display:flex;flex-direction:column}.checkbox-description{color:#666;font-size:.85rem}.info-tooltip{cursor:help;margin-left:6px;position:relative}.info-icon,.info-tooltip{align-items:center;display:inline-flex}.info-icon{background:#e1e5eb;border-radius:50%;color:#666;font-family:Georgia,serif;font-size:10px;font-style:italic;font-weight:700;height:16px;justify-content:center;transition:all .2s;width:16px}.info-tooltip:hover .info-icon{background:#4285f4;color:#fff}.info-tooltip:after{background:#333;border-radius:8px;bottom:calc(100% + 8px);box-shadow:0 4px 12px #0003;color:#fff;content:attr(title);font-size:.8rem;font-style:normal;font-weight:400;line-height:1.4;padding:10px 14px;pointer-events:none;text-align:left;white-space:normal;width:220px}.info-tooltip:after,.info-tooltip:before{left:50%;opacity:0;position:absolute;transform:translateX(-50%);transition:opacity .2s,visibility .2s;visibility:hidden;z-index:100}.info-tooltip:before{border:6px solid #0000;border-top-color:#333;bottom:calc(100% + 2px);content:""}.info-tooltip:hover:after,.info-tooltip:hover:before{opacity:1;visibility:visible}.message{border-radius:8px;font-size:.9rem;padding:12px 16px}.message.success{background:#d4edda;border:1px solid #c3e6cb;color:#155724}.message.error{background:#fee;border:1px solid #fcc;color:#c00}.btn-primary{align-self:flex-start;background:linear-gradient(135deg,#4285f4,#1a73e8);border:none;border-radius:10px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:14px 24px;transition:all .2s ease}.btn-primary:hover:not(:disabled){box-shadow:0 6px 20px #4285f466;transform:translateY(-2px)}.btn-primary:disabled{cursor:not-allowed;opacity:.6;transform:none}.btn-secondary{background:#fff;border:2px solid #e1e5eb;border-radius:8px;color:#333;cursor:pointer;font-size:.9rem;font-weight:600;padding:10px 20px;transition:all .2s ease}.btn-secondary:hover:not(:disabled){border-color:#4285f4;color:#4285f4}.btn-secondary:disabled{cursor:not-allowed;opacity:.6}.btn-danger{background:linear-gradient(135deg,#dc3545,#c82333);border:none;border-radius:10px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:14px 24px;transition:all .2s ease}.btn-danger:hover:not(:disabled){box-shadow:0 6px 20px #dc354566;transform:translateY(-2px)}.btn-danger:disabled{cursor:not-allowed;opacity:.5;transform:none}.connected-accounts-list{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem}.account-item{align-items:center;background:#f8f9fa;border:2px solid #e1e5eb;border-radius:12px;display:flex;justify-content:space-between;padding:1rem 1.25rem}.account-item.connected{background:#f0fff4;border-color:#34a853}.account-info{align-items:center;display:flex;gap:1rem}.account-info h3{color:#333;font-size:1rem;margin:0}.account-email{color:#34a853;font-size:.85rem}.account-status{color:#999;font-size:.85rem}.btn-link{background:#f0f7ff;border-color:#4285f4}.btn-unlink{background:#fff;color:#666}.btn-unlink:hover:not(:disabled){border-color:#dc3545;color:#dc3545}.danger-zone h2{color:#dc3545}.danger-warning{background:#fff5f5;border:2px solid #fcc;border-radius:12px;display:flex;gap:1rem;margin-bottom:1.5rem;padding:1.5rem}.warning-icon{flex-shrink:0;font-size:2rem}.danger-warning strong{color:#dc3545;font-size:1.1rem}.danger-warning p,.danger-warning ul{color:#666;margin:.5rem 0}.danger-warning ul{padding-left:1.5rem}.danger-warning li{margin:.25rem 0}.delete-form{display:flex;flex-direction:column;gap:1rem;max-width:400px}@media (max-width:768px){.profile-header{flex-direction:column;padding:1.5rem;text-align:center}.profile-avatar-large{height:80px;width:80px}.profile-avatar-large span{font-size:2rem}.profile-info h1{font-size:1.5rem}.profile-tabs{justify-content:center}.tab-btn{font-size:.85rem;padding:.6rem 1rem}.tab-label{display:none}.profile-content{padding:1.5rem}}@media (max-width:480px){.profile-page{padding:1rem .5rem}.profile-content,.profile-header{border-radius:12px}.profile-content{padding:1.25rem}.account-item{gap:1rem;text-align:center}.account-info,.account-item{flex-direction:column}}.security-section{border-top:1px solid #e1e5eb;margin-top:2rem;padding-top:2rem}.security-section h3{color:#333;font-size:1.1rem;font-weight:600;margin:0 0 .5rem}.security-section .section-description{color:#666;font-size:.9rem;margin:0 0 1rem}.security-status-card{align-items:center;background:#f8f9fa;border:1px solid #e1e5eb;border-radius:10px;display:flex;justify-content:space-between;padding:1rem 1.25rem}.status-info{display:flex;flex-direction:column;gap:.25rem}.status-badge{border-radius:20px;display:inline-block;font-size:.8rem;font-weight:600;padding:4px 10px}.status-badge.enabled{background:#d4edda;color:#155724}.status-badge.disabled{background:#f8d7da;color:#721c24}.status-detail{color:#666;font-size:.85rem}.security-loading-inline{color:#666;font-size:.9rem;padding:1rem}.security-link{margin-top:1.5rem;text-align:center}.btn-link{background:none;border:none;color:#4285f4;cursor:pointer;font-size:.95rem;font-weight:500;padding:.5rem 1rem;transition:color .2s}.btn-link:hover{color:#1a73e8;text-decoration:underline}@media (max-width:480px){.security-status-card{flex-direction:column;gap:1rem;text-align:center}}.contributions-grid{display:flex;flex-direction:column;gap:1.5rem;margin-bottom:2rem}.contributions-help{background:#f8fafc;border-radius:12px;margin-top:1.5rem;padding:1.5rem}.contributions-help h3{color:#1a1a2e;font-size:1.1rem;margin:0 0 1rem}.help-cards{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.help-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:1.5rem;transition:box-shadow .2s,transform .2s}.help-card:hover{box-shadow:0 4px 12px #00000014;transform:translateY(-2px)}.help-icon{align-items:center;background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:12px;color:#fff;display:inline-flex;font-size:1.25rem;font-weight:700;height:48px;justify-content:center;margin-bottom:1rem;width:48px}.help-card h4{color:#1a1a2e;font-size:1rem;margin:0 0 .5rem}.help-card p{color:#6b7280;font-size:.9rem;line-height:1.5;margin:0 0 1rem}.reward-tag{background:linear-gradient(135deg,#6366f11a,#8b5cf61a);border:1px solid #6366f133;border-radius:20px;color:#6366f1;display:inline-block;font-size:.8rem;font-weight:600;padding:.35rem .75rem}@media (max-width:768px){.help-cards{grid-template-columns:1fr}.contributions-help{padding:1rem}}.session-timeout-overlay{align-items:center;animation:fadeIn .2s ease-out;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0009;display:flex;inset:0;justify-content:center;position:fixed;z-index:10000}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.session-timeout-modal{animation:slideIn .3s ease-out;background:#fff;border-radius:16px;border-top:6px solid #667eea;box-shadow:0 20px 60px #0000004d;max-width:400px;padding:32px;text-align:center;width:90%}.session-timeout-modal.warning{border-top-color:#f59e0b}.session-timeout-modal.critical{animation:slideIn .3s ease-out,shake .5s ease-in-out;border-top-color:#ef4444}@keyframes slideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes shake{0%,to{transform:translateX(0)}20%{transform:translateX(-5px)}40%{transform:translateX(5px)}60%{transform:translateX(-5px)}80%{transform:translateX(5px)}}.session-timeout-icon{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;color:#fff;display:flex;font-size:32px;font-weight:700;height:60px;justify-content:center;margin:0 auto 20px;width:60px}.session-timeout-modal.warning .session-timeout-icon{background:linear-gradient(135deg,#f59e0b,#d97706)}.session-timeout-modal.critical .session-timeout-icon{animation:pulse 1s infinite;background:linear-gradient(135deg,#ef4444,#dc2626)}.session-timeout-title{color:#1f2937;font-size:1.5rem;font-weight:600;margin:0 0 12px}.session-timeout-desc{color:#6b7280;font-size:1rem;line-height:1.5;margin:0 0 24px}.session-timeout-timer{color:#667eea;font-family:Monaco,Menlo,Consolas,monospace;font-size:3.5rem;font-weight:700;letter-spacing:2px;margin:16px 0}.session-timeout-timer.warning{color:#f59e0b}.session-timeout-timer.critical{animation:timerFlash 1s infinite;color:#ef4444}@keyframes timerFlash{0%,to{opacity:1}50%{opacity:.6}}.session-timeout-progress-container{background:#e5e7eb;border-radius:4px;height:8px;margin:20px 0;overflow:hidden}.session-timeout-progress-bar{background:linear-gradient(90deg,#667eea,#764ba2);border-radius:4px;height:100%;transition:width 1s linear,background .3s ease}.session-timeout-progress-bar.warning{background:linear-gradient(90deg,#f59e0b,#d97706)}.session-timeout-progress-bar.critical{background:linear-gradient(90deg,#ef4444,#dc2626)}.session-timeout-actions{display:flex;gap:12px;margin-top:24px}.session-timeout-btn{border-radius:8px;cursor:pointer;flex:1 1;font-size:1rem;font-weight:600;padding:14px 20px;transition:transform .2s,box-shadow .2s}.session-timeout-btn:hover{transform:translateY(-2px)}.session-timeout-btn:active{transform:translateY(0)}.session-timeout-btn.primary{background:linear-gradient(135deg,#667eea,#764ba2);border:none;box-shadow:0 4px 12px #667eea66;color:#fff}.session-timeout-btn.primary:hover{box-shadow:0 6px 16px #667eea80}.session-timeout-btn.secondary{background:#fff;border:2px solid #e5e7eb;color:#6b7280}.session-timeout-btn.secondary:hover{background:#f9fafb;border-color:#d1d5db}.session-timeout-hint{color:#9ca3af;font-size:.875rem;margin-top:16px}.session-timeout-hint kbd{background:#f3f4f6;border:1px solid #d1d5db;border-radius:4px;box-shadow:0 1px 2px #0000000d;display:inline-block;font-family:Monaco,Menlo,Consolas,monospace;font-size:.75rem;padding:2px 6px}.sr-only{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}@media (max-width:480px){.session-timeout-modal{margin:16px;padding:24px}.session-timeout-timer{font-size:2.5rem}.session-timeout-actions{flex-direction:column}.session-timeout-btn{width:100%}}.logout-banner{background:linear-gradient(135deg,#ff6b6b,#ee5a24);box-shadow:0 4px 16px #ee5a2459;color:#fff;left:0;padding:14px 20px;position:fixed;right:0;top:0;z-index:10001}.logout-banner-content{gap:14px;margin:0 auto;max-width:1200px}.logout-banner-content,.logout-banner-icon{align-items:center;display:flex;justify-content:center}.logout-banner-icon{flex-shrink:0}.logout-banner-icon svg{opacity:.9}.logout-banner-message{font-size:.95rem;font-weight:500;letter-spacing:.01em}.logout-banner-login{background:#fff;border:none;border-radius:6px;color:#ee5a24;cursor:pointer;font-size:.9rem;font-weight:600;margin-left:8px;padding:8px 20px;transition:transform .2s,box-shadow .2s;white-space:nowrap}.logout-banner-login:hover{box-shadow:0 2px 8px #00000026;transform:scale(1.05)}.logout-banner-login:active{transform:scale(.98)}.logout-banner-dismiss{align-items:center;background:#0000;border:none;border-radius:4px;color:#fff;cursor:pointer;display:flex;justify-content:center;margin-left:4px;opacity:.7;padding:6px;transition:opacity .2s,background .2s}.logout-banner-dismiss:hover{background:#ffffff26;opacity:1}@media (max-width:600px){.logout-banner{padding:12px 16px}.logout-banner-content{flex-wrap:wrap;gap:10px}.logout-banner-message{flex:1 1 100%;font-size:.875rem;order:-1;text-align:center}.logout-banner-icon{display:none}.logout-banner-login{flex:1 1;margin-left:0;padding:10px 16px}.logout-banner-dismiss{margin-left:0}}@media (prefers-color-scheme:dark){.logout-banner{background:linear-gradient(135deg,#d63031,#c0392b);box-shadow:0 4px 16px #c0392b66}.logout-banner-login{background:#fffffff2;color:#c0392b}}.onboarding-container{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;justify-content:center;min-height:100vh;padding:2rem 1rem}.onboarding-card{background:#fff;border-radius:20px;box-shadow:0 20px 60px #0003;max-width:700px;padding:2rem;position:relative;width:100%}.onboarding-progress{align-items:center;display:flex;justify-content:space-between;margin-bottom:2rem;padding:0 1rem;position:relative}.progress-step{flex-direction:column;gap:.5rem;z-index:1}.progress-step,.step-dot{align-items:center;display:flex}.step-dot{background:#e1e5eb;border-radius:50%;color:#666;font-size:.9rem;font-weight:600;height:32px;justify-content:center;transition:all .3s ease;width:32px}.progress-step.active .step-dot{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;transform:scale(1.1)}.progress-step.completed .step-dot{background:#34a853;color:#fff}.step-label{color:#999;font-size:.75rem;letter-spacing:.5px;text-transform:uppercase}.progress-step.active .step-label,.progress-step.completed .step-label{color:#333;font-weight:600}.progress-line{background:#e1e5eb;height:3px;left:60px;position:absolute;right:60px;top:16px;z-index:0}.progress-fill{background:linear-gradient(90deg,#34a853,#667eea);border-radius:2px;transition:width .5s ease}.onboarding-error{align-items:center;background:#fee;border:1px solid #fcc;border-radius:10px;color:#c00;display:flex;justify-content:space-between;margin-bottom:1.5rem;padding:1rem}.onboarding-error button{background:none;border:none;color:#c00;cursor:pointer;font-weight:600}.onboarding-content{min-height:400px}.onboarding-navigation{align-items:center;border-top:1px solid #e1e5eb;display:flex;justify-content:space-between;margin-top:2rem;padding-top:1.5rem}.nav-left,.nav-right{align-items:center;display:flex;gap:1rem}.btn-back{background:#fff;border:2px solid #e1e5eb;border-radius:10px;color:#666;cursor:pointer;font-size:1rem;font-weight:600;padding:.75rem 1.5rem;transition:all .2s ease}.btn-back:hover:not(:disabled){border-color:#667eea;color:#667eea}.btn-skip{background:none;border:none;color:#999;cursor:pointer;font-size:.95rem;padding:.75rem 1.5rem;transition:color .2s}.btn-skip:hover:not(:disabled){color:#666}.btn-continue{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:10px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:.75rem 2rem;transition:all .2s ease}.btn-continue:hover:not(:disabled){box-shadow:0 6px 20px #667eea66;transform:translateY(-2px)}.btn-back:disabled,.btn-continue:disabled{cursor:not-allowed;opacity:.6}.onboarding-welcome{padding:1rem;text-align:center}.welcome-icon{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;color:#fff;display:flex;height:100px;justify-content:center;margin:0 auto 1.5rem;width:100px}.welcome-title{color:#1a1a2e;font-size:2rem;margin:0 0 .5rem}.welcome-subtitle{color:#666;font-size:1.1rem;line-height:1.6;margin:0 0 2rem}.welcome-features{display:flex;flex-direction:column;gap:1rem;margin-bottom:2rem;text-align:left}.feature-item{background:#f8f9fa;gap:1rem;padding:1rem}.feature-icon,.feature-item{border-radius:12px;display:flex}.feature-icon{align-items:center;background:#fff;color:#667eea;flex-shrink:0;height:48px;justify-content:center;width:48px}.feature-content h3{color:#1a1a2e;font-size:1rem;margin:0 0 .25rem}.feature-content p{color:#666;font-size:.9rem;margin:0}.welcome-note{color:#999;font-size:.9rem;margin-bottom:1.5rem}.welcome-actions{display:flex;gap:1rem;justify-content:center}.btn-skip-all{background:none;border:2px solid #e1e5eb;border-radius:10px;color:#666;cursor:pointer;font-size:1rem;padding:.75rem 1.5rem;transition:all .2s}.btn-skip-all:hover{border-color:#999}.btn-get-started{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:10px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:.75rem 2rem;transition:all .2s}.btn-get-started:hover{box-shadow:0 6px 20px #667eea66;transform:translateY(-2px)}.career-selection h2{color:#1a1a2e;font-size:1.5rem;margin:0 0 .5rem}.step-description{color:#666;line-height:1.5;margin:0 0 1.5rem}.career-search{margin-bottom:1rem}.search-input-wrapper{align-items:center;display:flex;position:relative}.search-input-wrapper .search-icon{color:#999;left:14px;position:absolute}.search-input-wrapper input{border:2px solid #e1e5eb;border-radius:10px;font-size:1rem;outline:none;padding:12px 40px;transition:border-color .2s;width:100%}.search-input-wrapper input:focus{border-color:#667eea}.clear-search{background:none;border:none;color:#999;cursor:pointer;padding:4px;position:absolute;right:12px}.category-pills{flex-wrap:wrap;margin-bottom:1rem}.category-pills,.pill{display:flex;gap:.5rem}.pill{align-items:center;background:#f8f9fa;border:1px solid #e1e5eb;border-radius:20px;color:#666;cursor:pointer;font-size:.85rem;padding:.5rem 1rem;transition:all .2s}.pill:hover{background:#f0f2f5}.pill.active{background:#667eea;border-color:#667eea;color:#fff}.pill-count{font-size:.75rem;opacity:.7}.selected-summary{background:#f0f7ff;border:1px solid #cce0ff;border-radius:10px;margin-bottom:1rem;padding:1rem}.selected-primary{align-items:center;display:flex;gap:.5rem;margin-bottom:.5rem}.selected-primary .label{color:#666;font-size:.85rem}.selected-primary .career-name{color:#667eea;font-weight:600}.selected-primary button{background:none;border:none;color:#999;cursor:pointer;padding:2px}.selected-secondary{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem}.selected-secondary .label{color:#666;font-size:.85rem}.secondary-chip{align-items:center;background:#fff;border:1px solid #e1e5eb;border-radius:16px;display:inline-flex;font-size:.85rem;gap:.25rem;padding:.25rem .75rem}.secondary-chip button{background:none;border:none;color:#999;cursor:pointer;line-height:1;padding:0}.career-list{margin-bottom:1rem;max-height:350px;overflow-y:auto}.loading-careers,.no-careers{color:#999;padding:3rem;text-align:center}.spinner{animation:spin 1s linear infinite;border:3px solid #e1e5eb;border-radius:50%;border-top-color:#667eea;height:32px;margin:0 auto 1rem;width:32px}.career-card{align-items:flex-start;border:2px solid #e1e5eb;margin-bottom:.75rem;padding:1rem;transition:all .2s}.career-card:hover{background:#f8f9ff;border-color:#667eea}.career-card.primary{background:#f0f4ff;border-color:#667eea}.career-card.secondary{background:#f0fff4;border-color:#34a853}.career-main{display:flex;flex:1 1;gap:1rem}.career-radio{padding-top:2px}.radio-outer{align-items:center;border:2px solid #ccc;border-radius:50%;display:flex;height:20px;justify-content:center;transition:all .2s;width:20px}.radio-outer.selected{border-color:#667eea}.radio-inner{background:#667eea;border-radius:50%;height:10px;width:10px}.career-info h3{color:#1a1a2e;font-size:1rem;margin:0 0 .25rem}.career-meta{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.5rem}.category-tag{background:#f0f2f5;border-radius:4px;color:#666;font-size:.75rem;padding:.2rem .5rem}.salary{color:#34a853}.growth,.salary{font-size:.75rem;font-weight:500}.growth{border-radius:4px;padding:.2rem .5rem}.growth.high{background:#e6f4ea;color:#1e8e3e}.growth.medium{background:#fef7e0;color:#b36b00}.growth.low{background:#fce8e6;color:#c5221f}.career-description{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#666;display:-webkit-box;font-size:.85rem;margin:0;overflow:hidden}.secondary-toggle{align-items:center;background:#fff;border:2px solid #e1e5eb;border-radius:8px;color:#999;cursor:pointer;display:flex;flex-shrink:0;height:36px;justify-content:center;transition:all .2s;width:36px}.secondary-toggle:hover:not(:disabled){border-color:#34a853;color:#34a853}.secondary-toggle.active{background:#34a853;border-color:#34a853;color:#fff}.secondary-toggle:disabled{cursor:not-allowed;opacity:.5}.selection-hint{color:#999;font-size:.85rem;margin:0;text-align:center}.education-selection h2{color:#1a1a2e;font-size:1.5rem;margin:0 0 .5rem}.education-selection .step-description{color:#666;line-height:1.5;margin:0 0 1.5rem}.education-selection .education-section{margin-bottom:1.5rem}.education-selection .education-section h3{color:#1a1a2e;font-size:1.1rem;margin:0 0 .75rem}.education-selection .section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.75rem}.education-selection .section-header h3{margin:0}.education-selection .section-hint{color:#666;font-size:.9rem;margin:0 0 1rem}.education-selection .education-level-grid{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}.education-selection .level-option{align-items:center;background:#f8f9fa;border:2px solid #0000;border-radius:10px;cursor:pointer;display:flex;gap:.75rem;padding:1rem;transition:all .2s}.education-selection .level-option:hover{background:#f0f2f5}.education-selection .level-option.selected{background:#f0f4ff;border-color:#667eea}.education-selection .level-option input{accent-color:#667eea}.education-selection .level-label{color:#333;font-weight:500}.education-selection .btn-add-degree{background:#667eea;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:500;padding:.5rem 1rem;transition:background .2s}.education-selection .btn-add-degree:hover{background:#5a6fd6}.education-selection .degrees-list{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1rem}.education-selection .degree-card{align-items:flex-start;background:#fff;border:1px solid #e1e5eb;border-radius:10px;display:flex;justify-content:space-between;padding:1rem}.education-selection .degree-info h4{color:#1a1a2e;font-size:1rem;margin:0 0 .25rem}.education-selection .degree-field{color:#667eea;font-size:.9rem;font-weight:500;margin:0 0 .25rem}.education-selection .degree-institution,.education-selection .degree-year{color:#999;font-size:.85rem;margin:0}.education-selection .btn-remove{align-items:center;background:#fff;border:1px solid #e1e5eb;border-radius:6px;color:#999;cursor:pointer;display:flex;font-size:1rem;height:28px;justify-content:center;transition:all .2s;width:28px}.education-selection .btn-remove:hover{background:#fee;border-color:#c00;color:#c00}.education-selection .add-degree-form{background:#f8f9fa;border:1px solid #e1e5eb;border-radius:10px;padding:1rem}.education-selection .form-row{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr;margin-bottom:1rem}.education-selection .form-group{margin-bottom:1rem}.education-selection .form-group:last-child{margin-bottom:0}.education-selection .form-group label{color:#333;display:block;font-size:.9rem;font-weight:500;margin-bottom:.5rem}.education-selection .form-group input,.education-selection .form-group select{border:1px solid #e1e5eb;border-radius:8px;font-size:1rem;outline:none;padding:.75rem;transition:border-color .2s;width:100%}.education-selection .form-group input:focus,.education-selection .form-group select:focus{border-color:#667eea}.education-selection .form-actions{border-top:1px solid #e1e5eb;display:flex;gap:.75rem;justify-content:flex-end;margin-top:1rem;padding-top:1rem}.education-selection .btn-cancel{background:#fff;border:1px solid #e1e5eb;border-radius:8px;color:#666;cursor:pointer;padding:.5rem 1rem;transition:all .2s}.education-selection .btn-cancel:hover{border-color:#999}.education-selection .btn-add{background:#667eea;border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:500;padding:.5rem 1rem;transition:background .2s}.education-selection .btn-add:hover:not(:disabled){background:#5a6fd6}.education-selection .btn-add:disabled{cursor:not-allowed;opacity:.6}.education-selection .info-box{background:#f0f7ff;border:1px solid #cce0ff;border-radius:10px;margin-top:1.5rem;padding:1rem}.education-selection .info-box h4{color:#333;font-size:.95rem;margin:0 0 .75rem}.education-selection .info-box ul{color:#666;font-size:.9rem;line-height:1.6;margin:0;padding-left:1.25rem}.curriculum-selection h2{color:#1a1a2e;font-size:1.5rem;margin:0 0 .5rem}.curriculum-section{margin-bottom:1.5rem}.curriculum-section h3{color:#1a1a2e;font-size:1.1rem;margin:0 0 .75rem}.section-hint{color:#666;font-size:.9rem;margin:0 0 1rem}.country-search{margin-bottom:1rem;position:relative}.country-search .search-icon{color:#999;left:12px;position:absolute;top:50%;transform:translateY(-50%)}.country-search input{border:2px solid #e1e5eb;border-radius:10px;font-size:1rem;outline:none;padding:10px 12px 10px 38px;width:100%}.country-search input:focus{border-color:#667eea}.popular-countries{margin-bottom:1rem}.section-label{color:#999;display:block;font-size:.85rem;margin-bottom:.5rem}.country-pills{display:flex;flex-wrap:wrap;gap:.5rem}.country-pill{align-items:center;background:#f8f9fa;border:1px solid #e1e5eb;border-radius:8px;color:#333;cursor:pointer;display:flex;font-size:.9rem;gap:.5rem;padding:.5rem 1rem;transition:all .2s}.country-pill:hover{background:#667eea;border-color:#667eea;color:#fff}.country-pill .count{font-size:.75rem;opacity:.7}.country-list{border:1px solid #e1e5eb;border-radius:10px;max-height:200px;overflow-y:auto}.country-item{align-items:center;background:#fff;border:none;border-bottom:1px solid #f0f2f5;cursor:pointer;display:flex;padding:.75rem 1rem;text-align:left;transition:background .2s;width:100%}.country-item:last-child{border-bottom:none}.country-item:hover{background:#f8f9fa}.country-item .country-name{color:#333;flex:1 1;font-weight:500}.country-item .country-code{color:#999;font-size:.85rem;margin-right:1rem}.country-item .standard-count{color:#667eea;font-size:.85rem}.selected-country{align-items:center;background:#f0f4ff;border:1px solid #cce0ff;border-radius:10px;display:flex;gap:.5rem;padding:1rem}.selected-country .country-name{color:#333;font-weight:600}.selected-country .country-code{color:#666}.selected-country .change-btn{background:#fff;border:1px solid #e1e5eb;border-radius:6px;color:#666;cursor:pointer;font-size:.85rem;margin-left:auto;padding:.5rem 1rem}.selected-country .change-btn:hover{border-color:#667eea;color:#667eea}.mode-toggle{display:flex;gap:1rem}.mode-btn{align-items:center;background:#fff;border:2px solid #e1e5eb;border-radius:10px;color:#666;cursor:pointer;display:flex;flex:1 1;font-size:1rem;gap:.5rem;justify-content:center;padding:1rem;transition:all .2s}.mode-btn:hover{border-color:#667eea}.mode-btn.active{background:linear-gradient(135deg,#667eea,#764ba2);border-color:#0000;color:#fff}.checkbox-grid{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.checkbox-item{align-items:center;background:#f8f9fa;border:2px solid #0000;border-radius:10px;cursor:pointer;display:flex;gap:.75rem;padding:.75rem 1rem;transition:all .2s}.checkbox-item:hover{background:#f0f2f5}.checkbox-item.selected{background:#f0f4ff;border-color:#667eea}.checkbox-item input{accent-color:#667eea}.checkbox-label{color:#333;flex:1 1;font-weight:500}.checkbox-count{color:#999;font-size:.8rem}.no-data{color:#999;grid-column:1/-1}.selection-summary{background:#f8f9fa;border-radius:10px;padding:1rem}.selection-summary h4{color:#666;font-size:.9rem;margin:0 0 .5rem}.summary-chips{display:flex;flex-wrap:wrap;gap:.5rem}.summary-chip{align-items:center;border-radius:16px;display:inline-flex;font-size:.85rem;gap:.25rem;padding:.25rem .75rem}.summary-chip.grade{background:#e6f4ea;color:#1e8e3e}.summary-chip.subject{background:#f0f4ff;color:#667eea}.summary-chip button{background:none;border:none;cursor:pointer;line-height:1;opacity:.6;padding:0}.summary-chip button:hover{opacity:1}.onboarding-complete{padding:1rem;text-align:center}.complete-icon{color:#34a853;height:80px;margin:0 auto 1.5rem;width:80px}.onboarding-complete h2{color:#1a1a2e;font-size:2rem;margin:0 0 .5rem}.complete-subtitle{color:#666;font-size:1.1rem;margin:0 0 2rem}.summary-cards{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem}.summary-card{background:#f8f9fa;border-radius:12px;padding:1rem;text-align:left}.card-header{gap:.75rem;margin-bottom:.75rem}.card-icon{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:10px;color:#fff;display:flex;height:40px;justify-content:center;width:40px}.card-header h3{color:#1a1a2e;flex:1 1;font-size:1rem;margin:0}.edit-btn{background:#fff;border:1px solid #e1e5eb;border-radius:6px;color:#666;cursor:pointer;font-size:.8rem;padding:.4rem .75rem}.edit-btn:hover{border-color:#667eea;color:#667eea}.card-content{padding-left:52px}.not-set,.skipped-text{color:#999;font-style:italic;margin:0}.summary-item{margin-bottom:.5rem}.summary-item:last-child{margin-bottom:0}.item-label{color:#666;font-size:.85rem;margin-right:.5rem}.item-value{color:#333;font-weight:500}.summary-item.primary .item-value{color:#667eea}.item-chips{display:inline-flex;flex-wrap:wrap;gap:.25rem;margin-top:.25rem}.item-chips .chip{background:#fff;border:1px solid #e1e5eb;border-radius:12px;color:#333;font-size:.8rem;padding:.2rem .6rem}.complete-note{color:#999;font-size:.9rem;margin:0}@media (max-width:600px){.onboarding-container{padding:1rem .5rem}.onboarding-card{border-radius:16px;padding:1.5rem 1rem}.onboarding-progress{padding:0}.step-label{display:none}.progress-line{left:40px;right:40px}.welcome-title{font-size:1.5rem}.welcome-subtitle{font-size:1rem}.welcome-actions{flex-direction:column}.btn-get-started,.btn-skip-all{width:100%}.mode-toggle{flex-direction:column}.checkbox-grid{grid-template-columns:1fr}.onboarding-navigation{flex-direction:column;gap:1rem}.nav-left,.nav-right{justify-content:center;width:100%}.btn-continue{width:100%}}.todays-focus{background:#fff;background:var(--surface-color,#fff);border-radius:16px;box-shadow:0 2px 12px #0000000f;margin-bottom:24px;padding:24px}.todays-focus.loading{min-height:200px}.focus-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.focus-header h2{color:#1a1a2e;color:var(--text-primary,#1a1a2e);font-size:1.25rem;font-weight:600;margin:0}.focus-subtitle{color:#666;color:var(--text-secondary,#666);font-size:.9rem;margin-top:4px}.progress-ring-container{align-items:center;display:flex;height:48px;justify-content:center;position:relative;width:48px}.progress-ring{height:100%;transform:rotate(-90deg);width:100%}.progress-ring-bg{opacity:.1}.progress-ring-bg,.progress-ring-fill{color:#8b5cf6;color:var(--primary-color,#8b5cf6)}.progress-ring-fill{transition:stroke-dashoffset .5s ease}.progress-text{color:#1a1a2e;color:var(--text-primary,#1a1a2e);font-weight:600;position:absolute}.focus-cards{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.focus-card{background:#f8f9fa;background:var(--surface-secondary,#f8f9fa);border-radius:12px;cursor:pointer;padding:20px;transition:transform .2s ease,box-shadow .2s ease}.focus-card:hover{box-shadow:0 4px 16px #00000014;transform:translateY(-2px)}.focus-card.review-card{border-left:4px solid #3b82f6}.focus-card.focus-card{border-left:4px solid #8b5cf6}.focus-card.streak-card{background:linear-gradient(135deg,#fff7ed,#fef3c7);border-left:4px solid #f97316}.card-header{align-items:center;display:flex;gap:8px;margin-bottom:12px}.type-icon{font-size:1.2rem}.type-label{color:#666;color:var(--text-secondary,#666);font-size:.75rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.focus-card .topic-name{color:#1a1a2e;color:var(--text-primary,#1a1a2e);font-size:1rem;font-weight:600;margin:0 0 8px}.focus-card .topic-reason{color:#666;color:var(--text-secondary,#666);font-size:.85rem;margin:0 0 16px}.streak-badge{background:linear-gradient(135deg,#f97316,#ea580c);border-radius:20px;color:#fff;display:inline-flex;font-size:.8rem;font-weight:600;gap:4px;margin-bottom:12px;padding:4px 10px}.streak-fire{animation:pulse 1.5s infinite}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.start-btn{align-items:center;background:#8b5cf6;background:var(--primary-color,#8b5cf6);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:.9rem;font-weight:500;gap:8px;justify-content:center;padding:10px 16px;transition:background .2s ease,transform .1s ease;width:100%}.start-btn:hover{background:#7c3aed;background:var(--primary-dark,#7c3aed)}.start-btn:active{transform:scale(.98)}.btn-arrow{transition:transform .2s ease}.start-btn:hover .btn-arrow{transform:translateX(4px)}.todays-focus.new-user{text-align:center}.todays-focus.new-user .focus-header{align-items:center;flex-direction:column}.todays-focus.new-user .focus-header h2{font-size:1.5rem}.suggested-topics{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));margin-top:20px}.suggested-topic-card{background:#f8f9fa;background:var(--surface-secondary,#f8f9fa);border-radius:12px;cursor:pointer;padding:16px;text-align:center;transition:all .2s ease}.suggested-topic-card:hover{background:#ede9fe;background:var(--primary-light,#ede9fe);transform:translateY(-2px)}.suggested-topic-card .topic-name{color:#1a1a2e;color:var(--text-primary,#1a1a2e);display:block;font-weight:600;margin-bottom:4px}.suggested-topic-card .topic-reason{color:#666;color:var(--text-secondary,#666);font-size:.75rem}.profile-prompt{border-top:1px solid #e5e7eb;border-top:1px solid var(--border-color,#e5e7eb);color:#666;color:var(--text-secondary,#666);font-size:.9rem;margin-top:20px;padding-top:16px}.setup-link{color:#8b5cf6;color:var(--primary-color,#8b5cf6);font-weight:500;margin-left:8px;text-decoration:none}.setup-link:hover{text-decoration:underline}.todays-focus.empty .focus-header{margin-bottom:0}.all-done{padding:20px 0;text-align:center}.done-icon{display:block;font-size:2rem;margin-bottom:12px}.all-done p{color:#666;color:var(--text-secondary,#666);margin-bottom:16px}.explore-btn{background:#8b5cf6;background:var(--primary-color,#8b5cf6);border-radius:8px;color:#fff;display:inline-block;font-weight:500;padding:10px 20px;text-decoration:none;transition:background .2s ease}.explore-btn:hover{background:#7c3aed;background:var(--primary-dark,#7c3aed)}.more-suggestions{border-top:1px solid #e5e7eb;border-top:1px solid var(--border-color,#e5e7eb);margin-top:20px;padding-top:16px}.suggestions-label{color:#666;color:var(--text-secondary,#666);font-size:.85rem;margin-right:12px}.suggestion-chips{display:inline-flex;flex-wrap:wrap;gap:8px;margin-top:8px}.suggestion-chip{background:#0000;border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:20px;color:#666;color:var(--text-secondary,#666);cursor:pointer;font-size:.85rem;padding:6px 14px;transition:all .2s ease}.suggestion-chip:hover{background:#ede9fe;background:var(--primary-light,#ede9fe);border-color:#8b5cf6;border-color:var(--primary-color,#8b5cf6);color:#8b5cf6;color:var(--primary-color,#8b5cf6)}.focus-skeleton{animation:shimmer 1.5s infinite}.skeleton-header{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200% 100%;border-radius:8px;height:28px;margin-bottom:20px;width:180px}.skeleton-cards{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(3,1fr)}.skeleton-card{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200% 100%;border-radius:12px;height:160px}@media (max-width:768px){.todays-focus{margin-bottom:16px;padding:16px}.focus-cards{grid-template-columns:1fr}.suggested-topics{grid-template-columns:repeat(2,1fr)}.skeleton-cards{grid-template-columns:1fr}}@media (max-width:480px){.suggested-topics{grid-template-columns:1fr}}@media (prefers-color-scheme:dark){.todays-focus{background:#1e1e2e;background:var(--surface-color-dark,#1e1e2e)}.focus-card{background:#2a2a3e;background:var(--surface-secondary-dark,#2a2a3e)}.focus-card.streak-card{background:linear-gradient(135deg,#422006,#451a03)}.suggested-topic-card{background:#2a2a3e;background:var(--surface-secondary-dark,#2a2a3e)}.skeleton-card,.skeleton-header{background:linear-gradient(90deg,#2a2a3e 25%,#3a3a4e 50%,#2a2a3e 75%);background-size:200% 100%}}.profile-setup-prompt{background:linear-gradient(135deg,#f0f7ff,#e8f4fd);border:1px solid #c5dff8;border-radius:12px;margin-bottom:1.5rem;padding:1.25rem}.prompt-header{align-items:flex-start;display:flex;gap:.75rem;margin-bottom:1rem}.prompt-icon{align-items:center;background:linear-gradient(135deg,#4285f4,#1a73e8);border-radius:10px;display:flex;flex-shrink:0;height:40px;justify-content:center;width:40px}.prompt-icon svg{color:#fff}.prompt-title{flex:1 1}.prompt-title h3{color:#1a1a2e;font-size:1.1rem;font-weight:600;margin:0}.prompt-title p{color:#666;font-size:.875rem;margin:.25rem 0 0}.prompt-dismiss{background:none;border:none;border-radius:8px;color:#999;cursor:pointer;padding:.5rem;transition:all .2s}.prompt-dismiss:hover{background:#0000000d;color:#666}.prompt-items{display:flex;flex-direction:column;gap:.75rem}.prompt-item{align-items:center;background:#fff;border-radius:10px;box-shadow:0 2px 8px #0000000a;display:flex;gap:1rem;padding:1rem;transition:transform .2s,box-shadow .2s}.prompt-item:hover{box-shadow:0 4px 12px #00000014;transform:translateY(-1px)}.item-icon{align-items:center;background:#f5f7fa;border-radius:12px;display:flex;flex-shrink:0;font-size:1.5rem;height:48px;justify-content:center;width:48px}.item-content{flex:1 1;min-width:0}.item-content h4{color:#1a1a2e;font-size:.95rem;font-weight:600;margin:0}.item-content p{color:#666;font-size:.8rem;margin:.25rem 0 0}.item-action{align-items:center;background:linear-gradient(135deg,#4285f4,#1a73e8);border-radius:8px;color:#fff;display:flex;font-size:.85rem;font-weight:500;gap:.25rem;padding:.5rem 1rem;text-decoration:none;transition:all .2s;white-space:nowrap}.item-action:hover{box-shadow:0 4px 12px #4285f44d;transform:translateX(2px)}.item-action svg{flex-shrink:0}.prompt-progress{align-items:center;border-top:1px solid #d4e4f7;display:flex;gap:.75rem;margin-top:1rem;padding-top:1rem}.progress-label{white-space:nowrap}.progress-bar{background:#d4e4f7;border-radius:3px;flex:1 1;height:6px;overflow:hidden}.progress-fill{background:linear-gradient(90deg,#4285f4,#34a853);border-radius:3px;transition:width .3s ease}.progress-percent{color:#4285f4;font-size:.8rem;font-weight:600;min-width:32px;text-align:right}@media (max-width:600px){.prompt-item{flex-wrap:wrap}.item-action{justify-content:center;margin-top:.5rem;width:100%}.item-content{flex-basis:calc(100% - 64px);flex-grow:1;flex-shrink:1}}.career-explorer{background:#fff;background:var(--surface-color,#fff);border-radius:16px;box-shadow:0 2px 12px #0000000f;margin-bottom:24px;padding:24px}.career-explorer.compact{padding:20px}.explorer-header{align-items:flex-start;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:20px}.header-titles h2{color:#1a1a2e;color:var(--text-primary,#1a1a2e);font-size:1.25rem;font-weight:600;margin:0}.transition-label{color:#666;color:var(--text-secondary,#666);display:block;font-size:.85rem;margin-top:4px}.tab-buttons{background:#f8f9fa;background:var(--surface-secondary,#f8f9fa);border-radius:8px;display:flex;gap:8px;padding:4px}.tab-btn{background:#0000;border:none;border-radius:6px;color:#666;color:var(--text-secondary,#666);cursor:pointer;font-size:.85rem;font-weight:500;padding:8px 16px;transition:all .2s ease}.tab-btn.active{background:#fff;box-shadow:0 1px 4px #00000014;color:#8b5cf6;color:var(--primary-color,#8b5cf6)}.tab-btn:hover:not(.active){color:#1a1a2e;color:var(--text-primary,#1a1a2e)}.skill-progress-section{margin-bottom:24px}.progress-labels{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.progress-label{color:#666;color:var(--text-secondary,#666);font-size:.8rem}.progress-percentage{color:#8b5cf6;color:var(--primary-color,#8b5cf6);font-size:1.25rem;font-weight:700}.skill-progress-bar{background:#f0f0f0;background:var(--surface-secondary,#f0f0f0);height:12px;overflow:hidden}.progress-fill,.skill-progress-bar{border-radius:6px;position:relative}.progress-fill{background:linear-gradient(90deg,#8b5cf6,#a78bfa);height:100%}.progress-fill:after{animation:shimmer 2s infinite;background:linear-gradient(90deg,#0000,#fff3 50%,#0000);bottom:0;content:"";left:0;position:absolute;right:0;top:0}@keyframes shimmer{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}.progress-stats{display:flex;justify-content:center;margin-top:12px}.stat-item{text-align:center}.stat-value{color:#1a1a2e;color:var(--text-primary,#1a1a2e)}.stat-label{font-size:.8rem}.section-title,.stat-label{color:#666;color:var(--text-secondary,#666)}.section-title{font-size:.9rem;font-weight:600;letter-spacing:.5px;margin:0 0 16px;text-transform:uppercase}.priority-topics{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.skill-card{background:#f8f9fa;background:var(--surface-secondary,#f8f9fa);border-radius:12px;padding:16px;transition:transform .2s ease,box-shadow .2s ease}.skill-card:hover{box-shadow:0 4px 16px #00000014;transform:translateY(-2px)}.skill-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:12px}.skill-name{color:#1a1a2e;color:var(--text-primary,#1a1a2e);font-size:1rem;font-weight:600}.importance-badge{border-radius:4px;font-size:.7rem;font-weight:600;padding:4px 8px;text-transform:uppercase}.skill-level{align-items:center;display:flex;gap:8px;margin-bottom:16px}.level-label{color:#666;color:var(--text-secondary,#666);font-size:.75rem;white-space:nowrap}.level-bar{background:#e5e7eb;background:var(--border-color,#e5e7eb);border-radius:3px;flex:1 1;height:6px;overflow:hidden}.level-fill{background:#8b5cf6;background:var(--primary-color,#8b5cf6);border-radius:3px;height:100%;transition:width .3s ease}.level-text{color:#666;color:var(--text-secondary,#666);font-size:.75rem;min-width:70px;text-align:right;text-transform:capitalize}.skill-actions{display:flex;gap:8px}.skill-btn{border-radius:8px;cursor:pointer;flex:1 1;font-size:.85rem;font-weight:500;padding:10px 16px;transition:all .2s ease}.skill-btn.primary{background:#8b5cf6;background:var(--primary-color,#8b5cf6);border:none;color:#fff}.skill-btn.primary:hover{background:#7c3aed;background:var(--primary-dark,#7c3aed)}.skill-btn.secondary{background:#0000;border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);color:#666;color:var(--text-secondary,#666);flex:0 1;font-size:1.2rem;min-width:40px;padding:8px}.skill-btn.secondary:hover{border-color:#8b5cf6;border-color:var(--primary-color,#8b5cf6);color:#8b5cf6;color:var(--primary-color,#8b5cf6)}.view-all-btn{background:#0000;border:1px dashed #e5e7eb;border:1px dashed var(--border-color,#e5e7eb);border-radius:8px;color:#666;color:var(--text-secondary,#666);cursor:pointer;display:block;font-size:.9rem;margin-top:16px;padding:12px;transition:all .2s ease;width:100%}.view-all-btn:hover{border-color:#8b5cf6;border-color:var(--primary-color,#8b5cf6);color:#8b5cf6;color:var(--primary-color,#8b5cf6)}.similar-careers{display:flex;flex-direction:column;gap:12px}.career-card{align-items:center;background:#f8f9fa;background:var(--surface-secondary,#f8f9fa);border-radius:12px;cursor:pointer;display:flex;justify-content:space-between;padding:16px;transition:all .2s ease}.career-card:hover{background:#ede9fe;background:var(--primary-light,#ede9fe)}.career-info{flex:1 1}.career-name{color:#1a1a2e;color:var(--text-primary,#1a1a2e);display:block;margin-bottom:6px}.career-stats{display:flex;gap:12px}.overlap-badge{color:#10b981;color:var(--success-color,#10b981);font-size:.8rem;font-weight:500}.extra-skills{font-size:.8rem}.career-arrow,.extra-skills{color:#666;color:var(--text-secondary,#666)}.career-arrow{font-size:1.2rem;transition:transform .2s ease}.career-card:hover .career-arrow{color:#8b5cf6;color:var(--primary-color,#8b5cf6);transform:translateX(4px)}.compact-similar{border-top:1px solid #e5e7eb;border-top:1px solid var(--border-color,#e5e7eb);margin-top:20px;padding-top:16px}.compact-label{color:#666;color:var(--text-secondary,#666);font-size:.85rem;margin-right:12px}.compact-career-chips{display:inline-flex;flex-wrap:wrap;gap:8px;margin-top:8px}.career-chip{align-items:center;background:#0000;border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:20px;color:#666;color:var(--text-secondary,#666);cursor:pointer;display:inline-flex;font-size:.85rem;gap:6px;padding:6px 12px;transition:all .2s ease}.career-chip:hover{background:#ede9fe;background:var(--primary-light,#ede9fe);border-color:#8b5cf6;border-color:var(--primary-color,#8b5cf6);color:#8b5cf6;color:var(--primary-color,#8b5cf6)}.chip-overlap{color:#10b981;color:var(--success-color,#10b981);font-size:.7rem;font-weight:600}.career-skeleton{animation:skeleton-shimmer 1.5s infinite}.skeleton-bar{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200% 100%;border-radius:6px;height:12px;margin-bottom:24px}.skeleton-topics{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(3,1fr)}.skeleton-topic{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200% 100%;border-radius:12px;height:140px}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (max-width:768px){.career-explorer{padding:16px}.explorer-header{align-items:stretch;flex-direction:column}.tab-buttons{justify-content:stretch;width:100%}.tab-btn{flex:1 1;text-align:center}.priority-topics,.skeleton-topics{grid-template-columns:1fr}.career-stats{flex-direction:column;gap:4px}}@media (max-width:480px){.skill-level{flex-wrap:wrap}.level-bar{flex:none;margin-top:4px;order:3;width:100%}.level-text{min-width:auto;text-align:left}}[data-theme=dark] .career-explorer{background:#252540}[data-theme=dark] .tab-buttons{background:#2d2d4a}[data-theme=dark] .tab-btn{color:#9ca3af}[data-theme=dark] .tab-btn.active{background:#1a1a2e;box-shadow:0 1px 4px #0000004d;color:#a5b4fc}[data-theme=dark] .tab-btn:hover:not(.active){color:#f3f4f6}[data-theme=dark] .skill-card,[data-theme=dark] .skill-progress-bar{background:#2d2d4a}[data-theme=dark] .skill-card:hover{box-shadow:0 4px 16px #0000004d}[data-theme=dark] .skill-name{color:#f3f4f6}[data-theme=dark] .level-label,[data-theme=dark] .level-text{color:#9ca3af}[data-theme=dark] .level-bar{background:#374151}[data-theme=dark] .skill-btn.secondary{border-color:#374151;color:#9ca3af}[data-theme=dark] .skill-btn.secondary:hover{border-color:#a5b4fc;color:#a5b4fc}[data-theme=dark] .view-all-btn{border-color:#374151;color:#9ca3af}[data-theme=dark] .view-all-btn:hover{border-color:#a5b4fc;color:#a5b4fc}[data-theme=dark] .career-card{background:#2d2d4a}[data-theme=dark] .career-card:hover{background:#3d3d5c}[data-theme=dark] .career-arrow,[data-theme=dark] .extra-skills{color:#9ca3af}[data-theme=dark] .career-card:hover .career-arrow{color:#a5b4fc}[data-theme=dark] .compact-similar{border-color:#374151}[data-theme=dark] .compact-label{color:#9ca3af}[data-theme=dark] .career-chip{border-color:#374151;color:#9ca3af}[data-theme=dark] .career-chip:hover{background:#6366f11a;border-color:#a5b4fc;color:#a5b4fc}[data-theme=dark] .header-titles h2{color:#f3f4f6}[data-theme=dark] .progress-label,[data-theme=dark] .section-title,[data-theme=dark] .transition-label{color:#9ca3af}[data-theme=dark] .skeleton-bar,[data-theme=dark] .skeleton-topic{background:linear-gradient(90deg,#2a2a3e 25%,#3a3a4e 50%,#2a2a3e 75%);background-size:200% 100%}.dashboard-loading{align-items:center;display:flex;flex-direction:column;gap:1rem;justify-content:center;min-height:60vh}.loading-spinner{border:4px solid #e5e7eb;border-top-color:#8b5cf6;height:48px;width:48px}.dashboard-error{flex-direction:column;gap:1rem;min-height:60vh;text-align:center}.dashboard-error,.dashboard-error .error-icon{align-items:center;display:flex;justify-content:center}.dashboard-error .error-icon{background:#fee2e2;border-radius:50%;color:#ef4444;font-size:2rem;font-weight:700;height:64px;width:64px}.offline-notice{align-items:center;background:linear-gradient(135deg,#fef3c7,#fde68a);border:1px solid #f59e0b;border-radius:8px;color:#92400e;display:flex;font-size:.9rem;gap:.75rem;margin-bottom:1.5rem;padding:.75rem 1rem}.offline-notice .offline-icon{font-size:1.2rem}.dashboard-error h2{color:#1f2937;margin:0}.dashboard-error p{color:#374151;margin:0}.dashboard-error button{background:#8b5cf6;border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:500;padding:.75rem 1.5rem;transition:background .2s}.dashboard-error button:hover{background:#7c3aed}.personalized-dashboard{margin:0 auto;max-width:1200px;padding:2rem}.dashboard-header{align-items:flex-start}.greeting-section h1{color:#1f2937;font-size:2rem;margin:0 0 .5rem}.greeting-section .user-name{color:#8b5cf6}.greeting-section .subtitle{color:#374151;margin:0}.header-right{gap:1rem}.header-right,.streak-badge{align-items:center;display:flex}.streak-badge{background:linear-gradient(135deg,#fef3c7,#fde68a);border:1px solid #fcd34d;border-radius:12px;gap:.75rem;padding:.75rem 1rem}.streak-icon{color:#f59e0b;display:flex}.streak-info{display:flex;flex-direction:column}.streak-count{color:#92400e;font-size:1.25rem;font-weight:700;line-height:1}.streak-label{color:#78350f;font-size:.75rem}.profile-link{align-items:center;background:#f3f4f6;border-radius:50%;color:#374151;display:flex;height:40px;justify-content:center;transition:all .2s;width:40px}.profile-link:hover{background:#e5e7eb;color:#374151}.quick-stats-row{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(4,1fr);margin-bottom:2rem}.stat-link{text-decoration:none}.stat-card{align-items:center;display:flex;gap:1rem;padding:1.25rem;transition:all .2s}.stat-card:hover{box-shadow:0 4px 6px #0000001a;transform:translateY(-2px)}.stat-card.highlight{background:linear-gradient(135deg,#fff,color-mix(in srgb,var(--stat-color) 5%,#fff));border-color:var(--stat-color)}.stat-icon{align-items:center;background:color-mix(in srgb,var(--stat-color) 15%,#fff);border-radius:10px;color:var(--stat-color);display:flex;height:44px;justify-content:center;width:44px}.stat-content{display:flex;flex-direction:column}.stat-value{font-size:1.5rem}.stat-label{color:#374151;font-size:.875rem;margin-top:.25rem}.career-readiness-widget{background:#fff;border:1px solid #e5e7eb;border-radius:16px;box-shadow:0 1px 3px #0000001a;margin-bottom:2rem;padding:1.5rem}.widget-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:1.25rem}.header-left{gap:1rem}.career-icon,.header-left{align-items:center;display:flex}.career-icon{background:linear-gradient(135deg,#ede9fe,#ddd6fe);border-radius:12px;color:#8b5cf6;height:48px;justify-content:center;width:48px}.career-info{display:flex;flex-direction:column}.widget-label{color:#374151;font-size:.75rem;letter-spacing:.05em;text-transform:uppercase}.career-name{color:#1f2937;font-size:1.25rem;font-weight:600;margin:.25rem 0 0}.view-details{align-items:center;color:#8b5cf6;display:flex;font-size:.875rem;font-weight:500;gap:.25rem;text-decoration:none;transition:color .2s}.view-details:hover{color:#7c3aed}.readiness-progress{margin-bottom:1rem}.progress-bar-container{background:#f3f4f6;border-radius:6px;height:12px;margin-bottom:.75rem;overflow:hidden}.progress-bar-fill{border-radius:6px;height:100%;transition:width .5s ease-out}.progress-info{align-items:center;display:flex;justify-content:space-between}.readiness-percent{font-size:1.125rem;font-weight:600}.readiness-level{color:#374151;font-size:.875rem}.skills-summary{align-items:center;border-top:1px solid #e5e7eb;display:flex;gap:.5rem;padding-top:1rem}.skills-stat{align-items:baseline;display:flex;gap:.25rem}.skills-stat .stat-number{color:#1f2937;font-size:1.25rem;font-weight:600}.skills-stat .stat-text{color:#374151;font-size:.875rem}.skills-divider{color:#d1d5db;font-size:1.25rem}.recommendations-section{margin-bottom:2rem}.section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.section-header h2{color:#1f2937;font-size:1.5rem;margin:0}.view-all{color:#8b5cf6;font-size:.875rem;font-weight:500;text-decoration:none}.view-all:hover{text-decoration:underline}.filter-tabs{display:flex;gap:.5rem;margin-bottom:1.5rem;overflow-x:auto;padding-bottom:.5rem}.filter-tab{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:20px;color:#374151;cursor:pointer;display:flex;font-size:.875rem;gap:.5rem;padding:.625rem 1rem;transition:all .2s;white-space:nowrap}.filter-tab:hover{border-color:#d1d5db;color:#374151}.filter-tab.active{background:#8b5cf6;border-color:#8b5cf6;color:#fff}.filter-tab .count{background:#0000001a;border-radius:10px;font-size:.75rem;padding:.125rem .5rem}.filter-tab.active .count{background:#fff3}.recommendations-list{display:flex;flex-direction:column;gap:1rem}.no-recommendations{background:#fff;border:1px solid #e5e7eb;border-radius:16px;padding:3rem 2rem;text-align:center}.no-recommendations .empty-icon{color:#10b981;margin-bottom:1rem}.no-recommendations h3{color:#1f2937;margin:0 0 .5rem}.no-recommendations p{color:#374151;margin:0 0 1.5rem}.no-recommendations .btn-explore{background:#8b5cf6;border-radius:8px;color:#fff;display:inline-block;font-weight:500;padding:.75rem 1.5rem;text-decoration:none;transition:background .2s}.no-recommendations .btn-explore:hover{background:#7c3aed}.no-recommendations button{background:#0000;border:1px solid #8b5cf6;border-radius:6px;color:#8b5cf6;cursor:pointer;font-weight:500;padding:.5rem 1rem;transition:all .2s}.no-recommendations button:hover{background:#8b5cf6;color:#fff}.topic-recommendation-card{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 1px 3px #0000001a;display:flex;gap:1.5rem;justify-content:space-between;padding:1.25rem;transition:all .2s}.topic-recommendation-card:hover{border-color:#d1d5db;box-shadow:0 4px 6px #0000001a}.card-content{flex:1 1;min-width:0}.topic-info{margin-bottom:.75rem}.topic-header{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:.25rem}.topic-name{color:#1f2937;font-size:1rem;font-weight:600;margin:0}.source-badge{align-items:center;border-radius:4px;display:inline-flex;font-size:.75rem;font-weight:500;gap:.25rem;padding:.25rem .5rem}.category-name,.source-detail{color:#374151;font-size:.8125rem}.source-detail{font-style:italic;margin:.5rem 0 0}.progress-section{align-items:center;display:flex;gap:1rem}.progress-bar-bg{background:#f3f4f6;border-radius:4px;flex:1 1;height:8px;overflow:hidden}.progress-bar-bg .progress-bar-fill{border-radius:4px;height:100%}.progress-text{color:#374151;font-size:.75rem;white-space:nowrap}.card-actions{display:flex;gap:.75rem}.action-btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;font-size:.875rem;font-weight:500;gap:.5rem;padding:.625rem 1rem;transition:all .2s}.action-btn:disabled{cursor:not-allowed;opacity:.5}.study-btn{background:#ede9fe;color:#7c3aed}.study-btn:hover:not(:disabled){background:#ddd6fe}.practice-btn{background:#8b5cf6;color:#fff}.practice-btn:hover:not(:disabled){background:#7c3aed}.quick-actions{margin-top:2rem}.quick-actions h3{color:#1f2937;font-size:1.125rem;margin:0 0 1rem}.action-buttons{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(4,1fr)}.action-buttons .action-btn{background:#fff;border:1px solid #e5e7eb;border-radius:12px;color:#374151;flex-direction:column;padding:1.25rem;position:relative;text-decoration:none}.action-buttons .action-btn:hover{background:#faf5ff;border-color:#8b5cf6}.action-buttons .action-btn svg{color:#8b5cf6;margin-bottom:.5rem}.action-buttons .action-btn .badge{background:#ef4444;border-radius:10px;color:#fff;font-size:.75rem;font-weight:600;padding:.125rem .5rem;position:absolute;right:.75rem;top:.75rem}.action-buttons .action-btn.import{border-color:#10b981}.action-buttons .action-btn.import:hover{background:#ecfdf5;border-color:#059669}.action-buttons .action-btn.import svg{color:#10b981}@media (max-width:1024px){.action-buttons,.quick-stats-row{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.personalized-dashboard{padding:1rem}.dashboard-header{flex-direction:column;gap:1rem}.greeting-section h1{font-size:1.5rem}.header-right{justify-content:space-between;width:100%}.topic-recommendation-card{align-items:stretch;flex-direction:column}.card-actions{justify-content:stretch}.card-actions .action-btn{flex:1 1;justify-content:center}.filter-tabs{-webkit-overflow-scrolling:touch}}@media (max-width:480px){.action-buttons,.quick-stats-row{grid-template-columns:1fr}.stat-card{padding:1rem}.stat-value{font-size:1.25rem}}[data-theme=dark] .personalized-dashboard{background:#0000}[data-theme=dark] .loading-spinner{border-color:#a78bfa #374151 #374151}[data-theme=dark] .dashboard-error .error-icon{background:#ef444433}[data-theme=dark] .dashboard-error h2{color:#f3f4f6}[data-theme=dark] .dashboard-error p{color:#9ca3af}[data-theme=dark] .offline-notice{background:linear-gradient(135deg,#78350f,#92400e);border-color:#b45309;color:#fcd34d}[data-theme=dark] .greeting-section h1{color:#f3f4f6}[data-theme=dark] .greeting-section .subtitle{color:#9ca3af}[data-theme=dark] .profile-link{background:#374151;color:#d1d5db}[data-theme=dark] .profile-link:hover{background:#4b5563;color:#f3f4f6}[data-theme=dark] .stat-card{background:#252540;border-color:#374151;box-shadow:0 1px 3px #0000004d}[data-theme=dark] .stat-card:hover{box-shadow:0 4px 6px #0006}[data-theme=dark] .stat-card.highlight{background:linear-gradient(135deg,#252540,color-mix(in srgb,var(--stat-color) 10%,#252540))}[data-theme=dark] .stat-icon{background:color-mix(in srgb,var(--stat-color) 20%,#252540)}[data-theme=dark] .stat-value{color:#f3f4f6}[data-theme=dark] .stat-label{color:#9ca3af}[data-theme=dark] .career-readiness-widget{background:#252540;border-color:#374151;box-shadow:0 1px 3px #0000004d}[data-theme=dark] .career-icon{background:linear-gradient(135deg,#8b5cf633,#a78bfa33)}[data-theme=dark] .widget-label{color:#9ca3af}[data-theme=dark] .career-name{color:#f3f4f6}[data-theme=dark] .progress-bar-container{background:#374151}[data-theme=dark] .readiness-level{color:#9ca3af}[data-theme=dark] .skills-summary{border-color:#374151}[data-theme=dark] .skills-stat .stat-number{color:#f3f4f6}[data-theme=dark] .skills-stat .stat-text{color:#9ca3af}[data-theme=dark] .skills-divider{color:#4b5563}[data-theme=dark] .section-header h2{color:#f3f4f6}[data-theme=dark] .filter-tab{background:#252540;border-color:#374151;color:#d1d5db}[data-theme=dark] .filter-tab:hover{border-color:#4b5563;color:#f3f4f6}[data-theme=dark] .filter-tab.active{background:#8b5cf6;border-color:#8b5cf6;color:#fff}[data-theme=dark] .no-recommendations{background:#252540;border-color:#374151}[data-theme=dark] .no-recommendations h3{color:#f3f4f6}[data-theme=dark] .no-recommendations p{color:#9ca3af}[data-theme=dark] .topic-recommendation-card{background:#252540;border-color:#374151;box-shadow:0 1px 3px #0000004d}[data-theme=dark] .topic-recommendation-card:hover{border-color:#4b5563;box-shadow:0 4px 6px #0006}[data-theme=dark] .topic-name{color:#f3f4f6}[data-theme=dark] .category-name,[data-theme=dark] .source-detail{color:#9ca3af}[data-theme=dark] .progress-bar-bg{background:#374151}[data-theme=dark] .progress-text{color:#9ca3af}[data-theme=dark] .quick-actions h3{color:#f3f4f6}[data-theme=dark] .action-buttons .action-btn{background:#252540;border-color:#374151;color:#d1d5db}[data-theme=dark] .action-buttons .action-btn:hover{background:#2d2d4a;border-color:#8b5cf6}[data-theme=dark] .action-buttons .action-btn.import:hover{background:#10b9811a;border-color:#10b981}.engagement-dashboard{margin:0 auto;max-width:1400px;padding:2rem}.engagement-dashboard.loading{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:400px}.loading-spinner{animation:spin 1s linear infinite;border:3px solid #e0e0e0;border-radius:50%;border-top-color:#6366f1;height:40px;width:40px}.engagement-dashboard.error{padding:3rem;text-align:center}.error-message{background:#fef2f2;border-radius:8px;color:#ef4444;margin:1rem 0;padding:1rem}.dashboard-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:2rem}.dashboard-header h1{color:#1f2937;font-size:1.75rem;font-weight:700;margin:0}.refresh-btn{background:#6366f1;border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:500;padding:.5rem 1rem;transition:background .2s}.refresh-btn:hover{background:#4f46e5}.stats-overview{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:2rem}.stat-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:1.5rem}.stat-card.primary{background:linear-gradient(135deg,#6366f1,#8b5cf6);border:none;color:#fff}.stat-card.primary h3{color:#ffffffe6}.stat-card h3{color:#6b7280;font-size:.875rem;font-weight:500;letter-spacing:.05em;margin:0 0 .75rem;text-transform:uppercase}.stat-value{color:#1f2937;font-size:2.5rem;line-height:1;margin-bottom:.75rem}.stat-card.primary .stat-value{color:#fff}.stat-total{font-size:1rem;font-weight:400;opacity:.7}.stat-breakdown{color:#6b7280;display:flex;font-size:.875rem;gap:1rem}.stat-card.primary .stat-breakdown{color:#fffc}.quiz-rankings{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));margin-bottom:2rem}.ranking-panel{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:1.5rem}.ranking-panel h2{color:#1f2937;font-size:1.125rem;font-weight:600;margin:0 0 1rem}.ranking-table{border-collapse:collapse;width:100%}.ranking-table td,.ranking-table th{border-bottom:1px solid #e5e7eb;padding:.75rem .5rem;text-align:left}.ranking-table th{color:#6b7280;font-size:.75rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.ranking-table td.rank{color:#6366f1;font-weight:600;width:40px}.ranking-table td.quiz-title{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ranking-table td.category{color:#6b7280;font-size:.875rem}.ranking-table td.plays{font-weight:600;text-align:right}.difficulty-analysis{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));margin-bottom:2rem}.analysis-panel{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:1.5rem}.analysis-panel h2{color:#1f2937;font-size:1.125rem;font-weight:600;margin:0 0 .25rem}.panel-subtitle{color:#6b7280;font-size:.875rem;margin:0 0 1rem}.question-list{display:flex;flex-direction:column;gap:.75rem}.question-item{border-left:4px solid;border-radius:8px;padding:1rem}.question-item.hard{background:#fef2f2;border-color:#ef4444}.question-item.easy{background:#f0fdf4;border-color:#22c55e}.question-text{color:#1f2937;font-size:.875rem;line-height:1.4;margin-bottom:.5rem}.question-stats{display:flex;font-size:.75rem;gap:1rem}.success-rate{font-weight:600}.question-item.hard .success-rate{color:#ef4444}.question-item.easy .success-rate{color:#22c55e}.attempts,.no-data{color:#6b7280}.no-data{font-style:italic;padding:2rem;text-align:center}.empty-state{background:linear-gradient(135deg,#f3f4f6,#e5e7eb);border-radius:12px;margin-top:2rem;padding:3rem;text-align:center}.empty-state h3{color:#1f2937;font-size:1.25rem;margin:0 0 1rem}.empty-state p{color:#6b7280;line-height:1.6;margin:0 auto;max-width:500px}@media (prefers-color-scheme:dark){.engagement-dashboard{background:#111827}.dashboard-header h1{color:#f9fafb}.stat-card{background:#1f2937;border-color:#374151}.stat-card h3{color:#9ca3af}.stat-value{color:#f9fafb}.stat-breakdown{color:#9ca3af}.analysis-panel,.ranking-panel{background:#1f2937;border-color:#374151}.analysis-panel h2,.ranking-panel h2{color:#f9fafb}.ranking-table th{color:#9ca3af}.ranking-table td{border-color:#374151;color:#f9fafb}.question-text{color:#f9fafb}.empty-state{background:linear-gradient(135deg,#1f2937,#374151)}.empty-state h3{color:#f9fafb}}@media (max-width:768px){.engagement-dashboard{padding:1rem}.difficulty-analysis,.quiz-rankings,.stats-overview{grid-template-columns:1fr}.stat-value{font-size:2rem}}.react-flow{direction:ltr}.react-flow__container{height:100%;left:0;position:absolute;top:0;width:100%}.react-flow__pane{cursor:grab;z-index:1}.react-flow__pane.selection{cursor:pointer}.react-flow__pane.dragging{cursor:grabbing}.react-flow__viewport{pointer-events:none;transform-origin:0 0;z-index:2}.react-flow__renderer{z-index:4}.react-flow__selection{z-index:6}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible{outline:none}.react-flow .react-flow__edges{overflow:visible;pointer-events:none}.react-flow__connection-path,.react-flow__edge-path{stroke:#b1b1b7;stroke-width:1;fill:none}.react-flow__edge{cursor:pointer;pointer-events:visibleStroke}.react-flow__edge.animated path{stroke-dasharray:5;animation:dashdraw .5s linear infinite}.react-flow__edge.animated path.react-flow__edge-interaction{stroke-dasharray:none;animation:none}.react-flow__edge.inactive{pointer-events:none}.react-flow__edge.selected,.react-flow__edge:focus,.react-flow__edge:focus-visible{outline:none}.react-flow__edge.selected .react-flow__edge-path,.react-flow__edge:focus .react-flow__edge-path,.react-flow__edge:focus-visible .react-flow__edge-path{stroke:#555}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge-textbg{fill:#fff}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;user-select:none}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;animation:dashdraw .5s linear infinite}.react-flow__connectionline{z-index:1001}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{box-sizing:border-box;cursor:grab;pointer-events:all;position:absolute;transform-origin:0 0;-webkit-user-select:none;user-select:none}.react-flow__node.dragging{cursor:grabbing}.react-flow__nodesselection{pointer-events:none;transform-origin:left top;z-index:3}.react-flow__nodesselection-rect{cursor:grab;pointer-events:all;position:absolute}.react-flow__handle{background:#1a192b;border:1px solid #fff;border-radius:100%;height:6px;min-height:5px;min-width:5px;pointer-events:none;position:absolute;width:6px}.react-flow__handle.connectionindicator{cursor:crosshair;pointer-events:all}.react-flow__handle-bottom{bottom:-4px;left:50%;top:auto;transform:translate(-50%)}.react-flow__handle-top{left:50%;top:-4px;transform:translate(-50%)}.react-flow__handle-left{left:-4px;top:50%;transform:translateY(-50%)}.react-flow__handle-right{right:-4px;top:50%;transform:translateY(-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__panel{margin:15px;position:absolute;z-index:5}.react-flow__panel.top{top:0}.react-flow__panel.bottom{bottom:0}.react-flow__panel.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.center{left:50%;transform:translateX(-50%)}.react-flow__attribution{background:#ffffff80;font-size:10px;margin:0;padding:2px 3px}.react-flow__attribution a{color:#999;text-decoration:none}@keyframes dashdraw{0%{stroke-dashoffset:10}}.react-flow__edgelabel-renderer{height:100%;pointer-events:none;position:absolute;-webkit-user-select:none;user-select:none;width:100%}.react-flow__edge.updating .react-flow__edge-path{stroke:#777}.react-flow__edge-text{font-size:10px}.react-flow__node.selectable:focus,.react-flow__node.selectable:focus-visible{outline:none}.react-flow__node-default,.react-flow__node-group,.react-flow__node-input,.react-flow__node-output{background-color:#fff;border:1px solid #1a192b;border-radius:3px;color:#222;font-size:12px;padding:10px;text-align:center;width:150px}.react-flow__node-default.selectable:hover,.react-flow__node-group.selectable:hover,.react-flow__node-input.selectable:hover,.react-flow__node-output.selectable:hover{box-shadow:0 1px 4px 1px #00000014}.react-flow__node-default.selectable.selected,.react-flow__node-default.selectable:focus,.react-flow__node-default.selectable:focus-visible,.react-flow__node-group.selectable.selected,.react-flow__node-group.selectable:focus,.react-flow__node-group.selectable:focus-visible,.react-flow__node-input.selectable.selected,.react-flow__node-input.selectable:focus,.react-flow__node-input.selectable:focus-visible,.react-flow__node-output.selectable.selected,.react-flow__node-output.selectable:focus,.react-flow__node-output.selectable:focus-visible{box-shadow:0 0 0 .5px #1a192b}.react-flow__node-group{background-color:#f0f0f040}.react-flow__nodesselection-rect,.react-flow__selection{background:#0059dc14;border:1px dotted #0059dccc}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible,.react-flow__selection:focus,.react-flow__selection:focus-visible{outline:none}.react-flow__controls{box-shadow:0 0 2px 1px #00000014}.react-flow__controls-button{align-items:center;background:#fefefe;border:none;border-bottom:1px solid #eee;box-sizing:initial;cursor:pointer;display:flex;height:16px;justify-content:center;padding:5px;-webkit-user-select:none;user-select:none;width:16px}.react-flow__controls-button:hover{background:#f4f4f4}.react-flow__controls-button svg{max-height:12px;max-width:12px;width:100%}.react-flow__controls-button:disabled{pointer-events:none}.react-flow__controls-button:disabled svg{fill-opacity:.4}.react-flow__minimap{background-color:#fff}.react-flow__minimap svg{display:block}.react-flow__resize-control{position:absolute}.react-flow__resize-control.left,.react-flow__resize-control.right{cursor:ew-resize}.react-flow__resize-control.bottom,.react-flow__resize-control.top{cursor:ns-resize}.react-flow__resize-control.bottom.right,.react-flow__resize-control.top.left{cursor:nwse-resize}.react-flow__resize-control.bottom.left,.react-flow__resize-control.top.right{cursor:nesw-resize}.react-flow__resize-control.handle{background-color:#3367d9;border:1px solid #fff;border-radius:1px;height:4px;transform:translate(-50%,-50%);width:4px}.react-flow__resize-control.handle.left{left:0;top:50%}.react-flow__resize-control.handle.right{left:100%;top:50%}.react-flow__resize-control.handle.top{left:50%;top:0}.react-flow__resize-control.handle.bottom{left:50%;top:100%}.react-flow__resize-control.handle.bottom.left,.react-flow__resize-control.handle.top.left{left:0}.react-flow__resize-control.handle.bottom.right,.react-flow__resize-control.handle.top.right{left:100%}.react-flow__resize-control.line{border:0 solid #3367d9}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{height:100%;top:0;transform:translate(-50%);width:1px}.react-flow__resize-control.line.left{border-left-width:1px;left:0}.react-flow__resize-control.line.right{border-right-width:1px;left:100%}.react-flow__resize-control.line.bottom,.react-flow__resize-control.line.top{height:1px;left:0;transform:translateY(-50%);width:100%}.react-flow__resize-control.line.top{border-top-width:1px;top:0}.react-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}.knowledge-graph{background:linear-gradient(180deg,#0d1117,#161b22);border-radius:12px;overflow:hidden;position:relative;width:100%}.particle-background{height:100%;left:0;pointer-events:none;position:absolute;top:0;width:100%;z-index:1}.graph-controls{align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0d1117e6;border-bottom:1px solid #37415180;display:flex;justify-content:space-between;left:0;padding:12px 16px;position:absolute;right:0;top:0;z-index:100}.graph-controls-left,.graph-controls-right{align-items:center;display:flex;gap:16px}.control-group{align-items:center;display:flex;gap:8px}.control-label{color:#9ca3af;font-size:12px;font-weight:500;white-space:nowrap}.control-input,.control-select{background:#1f2937;border:1px solid #374151;border-radius:6px;color:#e5e7eb;font-size:13px;outline:none;padding:6px 12px;transition:all .2s ease}.control-input:hover,.control-select:hover{border-color:#4b5563}.control-input:focus,.control-select:focus{border-color:#667eea;box-shadow:0 0 0 2px #667eea33}.control-select{cursor:pointer;min-width:180px}.control-input{min-width:150px}.control-input::placeholder{color:#6b7280}.control-button{align-items:center;background:#1f2937;border:1px solid #374151;border-radius:6px;color:#9ca3af;cursor:pointer;display:flex;height:32px;justify-content:center;padding:0;transition:all .2s ease;width:32px}.control-button:hover{background:#374151;color:#e5e7eb}.control-button:disabled{cursor:not-allowed;opacity:.5}.refresh-icon{font-size:16px}.spinner-small{animation:spin 1s linear infinite;border:2px solid #374151;border-radius:50%;border-top-color:#667eea;height:14px;width:14px}.graph-stats{display:flex;gap:16px}.graph-stats .stat{align-items:center;display:flex;flex-direction:column}.graph-stats .stat-value{color:#e5e7eb;font-size:16px;font-weight:600}.graph-stats .stat-label{color:#6b7280;font-size:10px;letter-spacing:.5px;text-transform:uppercase}.view-mode-toggle{background:#1f2937e6;border:1px solid #374151;border-radius:8px;cursor:pointer;font-size:18px;height:40px;padding:0;position:absolute;right:16px;top:60px;transition:all .2s ease;width:40px;z-index:100}.view-mode-toggle:hover{background:#374151;transform:scale(1.05)}.interactive-graph{height:100%;position:relative;width:100%;z-index:10}.interactive-graph.loading{align-items:center;color:#9ca3af;display:flex;flex-direction:column;gap:12px;justify-content:center}.graph-loading-spinner{animation:spin 1s linear infinite;border:3px solid #374151;border-radius:50%;border-top-color:#667eea;height:32px;width:32px}@keyframes spin{to{transform:rotate(1turn)}}.interactive-graph .react-flow__background{background:#0000!important}.interactive-graph .react-flow__controls{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#1f2937e6;border:1px solid #374151;border-radius:8px;box-shadow:0 4px 12px #0000004d}.interactive-graph .react-flow__controls-button{fill:#9ca3af;background:#0000;border-bottom:1px solid #374151;height:28px;width:28px}.interactive-graph .react-flow__controls-button:hover{background:#37415180}.interactive-graph .react-flow__controls-button svg{fill:#9ca3af}.interactive-graph .react-flow__minimap{border:1px solid #374151;border-radius:8px;overflow:hidden}.interactive-graph .react-flow__attribution{display:none}.hierarchy-node{background:#1f2937f2;border:2px solid #4b5563;border-radius:10px;box-shadow:0 4px 12px #0000004d;cursor:pointer;min-width:140px;overflow:hidden;transition:all .2s ease}.hierarchy-node:hover{box-shadow:0 8px 20px #0006;transform:translateY(-2px)}.hierarchy-node.selected{border-color:#667eea;border-color:var(--node-color,#667eea);box-shadow:0 0 20px #667eea66}.hierarchy-node.expanded{border-style:dashed}.hierarchy-node-header{align-items:center;color:#fff;display:flex;font-size:10px;font-weight:600;justify-content:space-between;letter-spacing:.5px;padding:6px 10px;text-transform:uppercase}.hierarchy-node-expand{font-size:8px;opacity:.8}.hierarchy-node-content{padding:10px}.hierarchy-node-label{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#f9fafb;display:-webkit-box;font-size:12px;font-weight:600;line-height:1.3;margin-bottom:4px;overflow:hidden}.hierarchy-node-count{color:#9ca3af;font-size:10px}.hierarchy-node.level-0{border-color:#667eea}.hierarchy-node.level-0.selected{box-shadow:0 0 20px #667eea80}.hierarchy-node.level-1{border-color:#10b981}.hierarchy-node.level-1.selected{box-shadow:0 0 20px #10b98180}.hierarchy-node.level-2{border-color:#f59e0b}.hierarchy-node.level-2.selected{box-shadow:0 0 20px #f59e0b80}.hierarchy-node.level-3{border-color:#ec4899}.hierarchy-node.level-3.selected{box-shadow:0 0 20px #ec489980}.hierarchy-node.level-4{border-color:#8b5cf6}.hierarchy-node.level-4.selected{box-shadow:0 0 20px #8b5cf680}.interactive-graph-legend{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#1f2937e6;border:1px solid #374151;border-radius:8px;bottom:50px;display:flex;flex-wrap:wrap;gap:12px;left:16px;padding:10px 14px;position:absolute;z-index:50}.legend-item{align-items:center;color:#9ca3af;display:flex;font-size:11px;gap:6px}.legend-dot{border-radius:50%;flex-shrink:0;height:10px;width:10px}.interactive-graph-help{bottom:16px;color:#6b7280;display:flex;font-size:11px;gap:16px;left:16px;position:absolute;z-index:50}.interactive-graph-help span:before{color:#4b5563;content:"\2022";margin-right:6px}.ambient-stats-overlay{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0d1117cc;border:1px solid #37415180;border-radius:12px;bottom:40px;display:flex;gap:32px;left:50%;padding:16px 24px;position:absolute;transform:translateX(-50%);z-index:50}.ambient-stat{align-items:center;display:flex;flex-direction:column;gap:4px}.ambient-stat-value{color:#e5e7eb;font-size:24px;font-weight:700;text-shadow:0 0 20px #667eea4d}.ambient-stat-label{color:#9ca3af;font-size:11px;font-weight:500;letter-spacing:.5px;text-transform:uppercase}.knowledge-graph-error{align-items:center;background:#1f2937f2;border:1px solid #ef4444;border-radius:12px;display:flex;flex-direction:column;gap:12px;left:50%;padding:24px 32px;position:absolute;top:50%;transform:translate(-50%,-50%);z-index:100}.knowledge-graph-error .error-icon{font-size:24px}.knowledge-graph-error span{color:#f87171;font-size:14px}.retry-button{background:#374151;border:1px solid #4b5563;border-radius:6px;color:#e5e7eb;cursor:pointer;font-size:13px;font-weight:500;padding:8px 16px;transition:all .2s ease}.retry-button:hover{background:#4b5563}.knowledge-network{background:#0d1117;border-radius:12px;height:100%;overflow:hidden;width:100%}.knowledge-network.loading{align-items:center;display:flex;justify-content:center}.knowledge-network-loading{align-items:center;color:#9ca3af;display:flex;flex-direction:column;gap:12px}.knowledge-network-loading .loading-spinner{animation:spin 1s linear infinite;border:3px solid #374151;border-radius:50%;border-top-color:#667eea;height:32px;width:32px}.knowledge-network-legend{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#1f2937e6;border:1px solid #374151;border-radius:8px;bottom:16px;display:flex;flex-wrap:wrap;gap:12px;left:16px;padding:10px 14px;position:absolute;z-index:10}.knowledge-network-legend .legend-item{align-items:center;color:#9ca3af;display:flex;font-size:11px;gap:6px}.knowledge-network-legend .legend-dot{border-radius:50%;flex-shrink:0;height:10px;width:10px}.knowledge-network-stats{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#1f2937e6;border:1px solid #374151;border-radius:8px;bottom:16px;color:#6b7280;display:flex;font-size:11px;gap:16px;padding:8px 12px;position:absolute;right:16px;z-index:10}@media (max-width:768px){.graph-controls{flex-direction:column;gap:12px;padding:10px 12px}.graph-controls-left,.graph-controls-right{justify-content:space-between;width:100%}.control-select{min-width:140px}.control-input{min-width:100px}.view-mode-toggle{bottom:16px;right:16px;top:auto}.interactive-graph-legend{bottom:auto;gap:8px;left:8px;padding:8px 10px;top:100px}.interactive-graph-help{display:none}.ambient-stats-overlay{gap:16px;padding:12px 16px}.ambient-stat-value{font-size:18px}.hierarchy-node{min-width:120px}.hierarchy-node-label{font-size:11px}}.hero-knowledge-graph{bottom:0;opacity:.6;position:absolute;top:0}.hero-knowledge-graph .particle-background{pointer-events:auto}.hero-section-with-graph{position:relative;z-index:1}.hero-section-with-graph .hero-subtitle,.hero-section-with-graph .hero-title{text-shadow:0 2px 8px #000c}*{box-sizing:border-box;margin:0;padding:0}.app{background:#f9fafb;display:flex;flex-direction:column;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;min-height:100vh}.main-navigation{background:#f0f0f0;box-shadow:0 2px 4px #0000001a;position:-webkit-sticky;position:sticky;top:0;z-index:1000}.nav-container{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:1200px;padding:.5rem 1.5rem}.nav-brand{flex-shrink:0}.nav-brand a{color:#333;display:flex;flex-direction:column;gap:.25rem;text-decoration:none}.nav-brand h1{font-size:1.25rem;font-weight:700;margin:0}.nav-logo{filter:invert(1) hue-rotate(180deg);height:50px;transition:filter .3s ease;width:50px}[data-theme=dark] .nav-logo{filter:none}.brand-tagline{color:#666;font-size:.85rem}.nav-links{display:flex;gap:1rem}.nav-link{align-items:center;background:#0000000d;border:2px solid #0000;border-radius:8px;color:#333;display:flex;font-weight:500;gap:.5rem;padding:.75rem 1.25rem;text-decoration:none;transition:all .2s}.nav-link:hover{background:#0000001a;transform:translateY(-1px)}.nav-link.active{background:#667eea;border-color:#667eea;color:#fff}.nav-icon{font-size:1.25rem}.nav-text{font-size:1rem}.nav-user-stats{align-items:center;display:flex;gap:.75rem;margin-left:auto;margin-right:1rem}.nav-week-streak{align-items:center;background:#ffa50026;border-radius:12px;display:flex;flex-direction:column;gap:.25rem;padding:.4rem .6rem}.week-days{display:flex;gap:.2rem}.week-day{align-items:center;background:#ffffff1a;border-radius:4px;display:flex;flex-direction:column;padding:.15rem 0;transition:all .2s;width:22px}.week-day.active{background:linear-gradient(135deg,#10b981,#059669)}.week-day.today{border:2px solid #f59e0b;box-shadow:0 0 6px #f59e0b80}.week-day.today.active{border-color:#10b981;box-shadow:0 0 6px #10b98180}.week-day.future{opacity:.4}.week-day .day-letter{color:#9ca3af;font-size:.55rem;font-weight:600}.week-day.active .day-letter{color:#ffffffe6}.week-day.today .day-letter{color:#f59e0b}.week-day.today.active .day-letter{color:#fff}.week-day .day-check{color:#6b7280;font-size:.65rem}.week-day.active .day-check{color:#fff}.streak-label{color:orange;font-size:.65rem;font-weight:600}.nav-level{align-items:center;display:flex;flex-direction:column;gap:3px}.level-badge{background:#fff3;border:1px solid #ffffff4d;border-radius:20px;color:#fff;font-size:.85rem;font-weight:600;padding:.4rem .75rem}.level-xp-bar{background:#fff3;border-radius:2px;height:4px;overflow:hidden;width:100%}.level-xp-fill{background:linear-gradient(90deg,#22c55e,#4ade80);border-radius:2px;height:100%;transition:width .5s ease-out}@media (max-width:768px){.nav-user-stats{display:none}}.profile-menu-container{margin-left:1rem;position:relative}.profile-button{background:none;border:none;cursor:pointer;padding:0}.profile-avatar,.profile-button{align-items:center;display:flex;justify-content:center}.profile-avatar{background:linear-gradient(135deg,#667eea,#764ba2);border:2px solid #ffffff4d;border-radius:50%;color:#fff;font-size:1rem;font-weight:600;height:40px;transition:all .2s;width:40px}.profile-button:hover .profile-avatar{border-color:#fff;transform:scale(1.05)}.profile-dropdown{animation:dropdownFadeIn .2s ease;background:#fff;border-radius:12px;box-shadow:0 4px 20px #00000026;min-width:200px;overflow:hidden;position:absolute;right:0;top:calc(100% + .5rem);z-index:1000}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.profile-dropdown-item{align-items:center;color:#333;display:flex;gap:.75rem;padding:.875rem 1rem;text-decoration:none;transition:background .2s}.profile-dropdown-item:hover{background:#f4f5f7}.dropdown-icon{font-size:1.1rem;text-align:center;width:24px}.profile-dropdown-divider{background:#e1e5eb;height:1px;margin:.5rem 0}.profile-dropdown-header{display:flex;flex-direction:column;gap:.25rem;padding:1rem}.dropdown-username{color:#333;font-weight:600}.dropdown-email{color:#666;font-size:.85rem}.profile-avatar img{border-radius:50%;height:100%;object-fit:cover;width:100%}.logout-btn{background:none;border:none;color:#dc3545;cursor:pointer;font-size:.95rem;width:100%}.logout-btn:hover{background:#fff5f5}.auth-buttons{align-items:center;display:flex;gap:.75rem;margin-left:1rem}.nav-auth-btn{border-radius:8px;font-size:.9rem;font-weight:600;padding:.5rem 1rem;text-decoration:none;transition:all .2s}.nav-auth-btn.login-btn{background:#0000;color:#667eea}.nav-auth-btn.login-btn:hover{background:#667eea1a}.nav-auth-btn.signup-btn{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.nav-auth-btn.signup-btn:hover{box-shadow:0 4px 12px #667eea66;transform:translateY(-1px)}@media (max-width:768px){.profile-menu-container{position:static}.profile-dropdown{border-radius:16px 16px 0 0;bottom:0;left:0;min-width:100%;position:fixed;right:0;top:auto}.auth-buttons{flex-direction:column;gap:.5rem;padding:1rem;width:100%}.nav-auth-btn{padding:.75rem 1rem;text-align:center;width:100%}}.main-content{flex:1 1;padding:1rem 0}.home-page{margin:0 auto;max-width:1200px;padding:0 1.5rem}.home-page-with-graph{min-height:calc(100vh - 80px);position:relative}.hero-knowledge-graph{height:450px;left:0;opacity:.7;pointer-events:auto;position:fixed;right:0;top:60px;z-index:0}.hero-knowledge-graph .knowledge-network{border-radius:0}.hero-knowledge-graph .knowledge-network-legend,.hero-knowledge-graph .knowledge-network-stats{display:none}.home-page-with-graph>:not(.hero-knowledge-graph){position:relative;z-index:1}.hero-section-with-graph{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#252540e6!important;border:1px solid #667eea4d;margin-top:1rem}.hero-section-with-graph .hero-subtitle,.hero-section-with-graph .hero-title{text-shadow:0 2px 12px #000000b3}.hero-graph-note{color:#a5b4fc;font-size:.85rem;margin-top:.75rem;opacity:.9}.hero-graph-note a{color:#667eea;text-decoration:underline}.login-prompt{background:linear-gradient(135deg,#667eea1a,#764ba21a);border:1px solid #667eea4d;border-radius:12px;color:#4b5563;font-size:.95rem;gap:12px;margin-bottom:2rem;padding:14px 20px}.login-prompt,.login-prompt-icon{align-items:center;display:flex;justify-content:center}.login-prompt-icon{background:#667eea;border-radius:50%;color:#fff;flex-shrink:0;font-size:12px;font-weight:700;height:22px;width:22px}.login-prompt-link{background:#667eea1a;border-radius:6px;color:#667eea;font-weight:600;padding:6px 16px;text-decoration:none;transition:all .2s}.login-prompt-link:hover{background:#667eea;color:#fff}.hero-section{background:linear-gradient(135deg,#252540,#252540);border-radius:8px;margin-bottom:1rem;min-height:auto;padding:.75rem 1rem;text-align:center}.hero-section>*{position:relative;z-index:1}.hero-title{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;font-size:1.5rem;margin-bottom:.35rem}.hero-subtitle{color:#d1d5db;font-size:.9rem;margin-bottom:.25rem}.feature-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-top:1.5rem}.feature-card{background:#fff;border-radius:10px;box-shadow:0 4px 6px #0000001a;padding:1.25rem;text-align:center;transition:transform .3s}.feature-card:hover{box-shadow:0 6px 12px #00000026;transform:translateY(-4px)}.feature-icon{font-size:2.5rem;margin-bottom:.75rem}.feature-card h3{color:#1f2937;font-size:1.1rem;margin-bottom:.5rem}.feature-card p{color:#6b7280;font-size:.9rem;line-height:1.5;margin-bottom:1rem}.feature-link{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:6px;color:#fff;display:inline-block;font-size:.85rem;font-weight:600;padding:.5rem 1rem;text-decoration:none;transition:transform .2s}.feature-link:hover{transform:scale(1.05)}.stats-section{background:#fff;border-radius:12px;box-shadow:0 2px 4px #0000001a;margin-bottom:2rem;padding:1.5rem;text-align:center}.stats-section h2{color:#1f2937;font-size:1.75rem;margin-bottom:1.5rem}.stats-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:2rem}.stat-item{padding:1.5rem}.stat-value{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;display:block;font-size:2rem;font-weight:700;margin-bottom:.35rem}.stat-label{color:#1f2937;display:block;font-size:1.1rem;font-weight:600;margin-bottom:.25rem}.stat-desc{color:#6b7280;font-size:.9rem}.research-note{background:#f9fafb;border-radius:8px;margin-top:2rem;padding:1.5rem}.research-note p{color:#4b5563;line-height:1.7;margin:0}.cta-section{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;color:#fff;margin-bottom:2rem;padding:1.5rem;text-align:center}.cta-section h2{font-size:1.5rem;margin-bottom:1rem}.cta-buttons{display:flex;gap:1rem;justify-content:center}.cta-btn{border:none;border-radius:6px;display:inline-block;font-size:.95rem;font-weight:600;padding:.6rem 1.25rem;text-decoration:none;transition:transform .2s}.cta-btn.primary{background:#fff;color:#667eea}.cta-btn.secondary{background:#fff3;border:2px solid #fff;color:#fff}.cta-btn:hover{transform:scale(1.05)}.app-footer{background:#1f2937;color:#fff;margin-top:2rem;padding:1rem;text-align:center}.app-footer p{margin:.25rem 0}.footer-note{font-size:.9rem;opacity:.8}.footer-links{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;margin-bottom:1rem}.footer-links a{color:#fffc;text-decoration:none;transition:color .2s}.footer-links a:hover{color:#fff;text-decoration:underline}.footer-separator{color:#fff6}.not-found{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:400px;text-align:center}.not-found h1{color:#667eea;font-size:6rem;margin-bottom:1rem}.not-found p{color:#6b7280;font-size:1.5rem;margin-bottom:2rem}.btn-home{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:8px;color:#fff;font-weight:600;padding:1rem 2rem;text-decoration:none;transition:transform .2s}.btn-home:hover{transform:scale(1.05)}@media (max-width:1024px){.nav-container{padding:1rem}.nav-links{gap:.5rem}.nav-link{padding:.5rem 1rem}.nav-link>.nav-text{display:none}.nav-dropdown-trigger .nav-text{display:inline}.hero-title{font-size:2.5rem}.hero-subtitle{font-size:1.25rem}.feature-grid,.stats-grid{grid-template-columns:1fr}.cta-buttons{align-items:center;flex-direction:column}}@media (max-width:768px){.home-page{padding:0 1rem}.main-content{padding:1rem 0}.hero-title{font-size:2rem}.hero-subtitle{font-size:1.1rem}.cta-section h2,.stats-section h2{font-size:2rem}.nav-brand h1{font-size:1.25rem}.brand-tagline{font-size:.75rem}}.skip-link{background:#667eea;border-radius:0 0 4px 0;color:#fff;font-weight:600;left:0;padding:8px 16px;position:absolute;text-decoration:none;top:-40px;transition:top .2s;z-index:10000}.skip-link:focus{outline:2px solid #fff;outline-offset:2px;top:0}:focus-visible{outline:2px solid #667eea;outline-offset:2px}.nav-link:focus-visible{background:#ffffff4d;outline:2px solid #fff;outline-offset:2px}.btn-home:focus-visible,.cta-btn:focus-visible,.feature-link:focus-visible{outline:2px solid #fff;outline-offset:2px;transform:scale(1.02)}.mobile-menu-toggle{align-items:center;background:#fff3;border:2px solid #0000;border-radius:8px;cursor:pointer;display:none;height:44px;justify-content:center;transition:all .2s;width:44px;z-index:1002}.mobile-menu-toggle:hover{background:#ffffff4d}.mobile-menu-toggle:focus-visible{outline:2px solid #fff;outline-offset:2px}.hamburger-icon{color:#fff;font-size:1.5rem;line-height:1}.mobile-menu-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#00000080;height:100vh;left:0;position:fixed;top:0;width:100vw;z-index:1000}@media (max-width:768px){.mobile-menu-toggle{display:flex}.nav-links{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:-4px 0 20px #0000004d;display:none;flex-direction:column;gap:.5rem;height:100vh;overflow-y:auto;padding:5rem 1.5rem 2rem;position:fixed;right:0;top:0;width:280px;z-index:1001}.nav-links.open{display:flex}.nav-links .nav-link{justify-content:flex-start;padding:1rem;width:100%}.nav-links .nav-text{display:inline}.nav-links .nav-dropdown{width:100%}.nav-links .nav-dropdown-trigger{background:#ffffff1a;border-radius:8px;color:#fff;font-size:1rem;justify-content:flex-start;padding:1rem;width:100%}.nav-links .nav-dropdown-trigger:hover{background:#fff3;color:#fff}.nav-links .nav-dropdown.active .nav-dropdown-trigger{background:#ffffff40;color:#fff}.nav-links .nav-dropdown.open .nav-dropdown-trigger{background:#ffffff4d;border-radius:8px 8px 0 0}.nav-links .nav-dropdown-menu{animation:none;background:#ffffff1a;border-radius:0 0 8px 8px;box-shadow:none;padding:0;position:static;transform:none}.nav-links .nav-dropdown-item{border-radius:0;color:#ffffffe6;padding:.875rem 1rem .875rem 2.5rem}.nav-links .nav-dropdown-item:hover{background:#ffffff26;color:#fff}.nav-links .nav-dropdown-item.active{background:#ffffff40;color:#fff}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.home-loading{align-items:center;display:flex;flex-direction:column;gap:1rem;justify-content:center;min-height:60vh}.home-loading .loading-spinner{animation:homeSpinner 1s linear infinite;border:4px solid #e5e7eb;border-radius:50%;border-top-color:#8b5cf6;height:48px;width:48px}@keyframes homeSpinner{to{transform:rotate(1turn)}}.home-loading p{color:#6b7280;font-size:1rem}.theme-toggle-btn{align-items:center;background:#ffffff26;border:2px solid #ffffff4d;border-radius:50%;cursor:pointer;display:flex;font-size:1.25rem;height:40px;justify-content:center;margin-right:.5rem;transition:all .2s ease;width:40px}.theme-toggle-btn:hover{background:#ffffff40;border-color:#ffffff80;transform:scale(1.05)}.theme-toggle-btn:focus-visible{outline:2px solid #06b6d4;outline-offset:2px}[data-theme=dark] .app{background:#1a1a2e;color:#e0e0e0}[data-theme=dark] .main-navigation{background:#1a1a2e}[data-theme=dark] .nav-brand a{color:#f0f0f0}[data-theme=dark] .brand-tagline{color:#9ca3af}[data-theme=dark] .nav-link{background:#ffffff1a;color:#f0f0f0}[data-theme=dark] .nav-link:hover{background:#fff3}[data-theme=dark] .nav-link.active{background:#667eea;color:#fff}[data-theme=dark] .profile-dropdown{background:#252540;box-shadow:0 4px 20px #0006}[data-theme=dark] .profile-dropdown-item{color:#e0e0e0}[data-theme=dark] .profile-dropdown-item:hover{background:#2d2d4a}[data-theme=dark] .profile-dropdown-divider{background:#3d3d5c}[data-theme=dark] .profile-dropdown-header{border-bottom:1px solid #3d3d5c}[data-theme=dark] .dropdown-username{color:#e0e0e0}[data-theme=dark] .dropdown-email{color:#9ca3af}[data-theme=dark] .logout-btn{color:#f87171}[data-theme=dark] .logout-btn:hover{background:#f871711a}.knowledge-graph-page{margin:0 auto;max-width:1600px;padding:1rem 1.5rem}.knowledge-graph-header{margin-bottom:1.5rem;text-align:center}.knowledge-graph-header h1{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;font-size:2rem;font-weight:700;margin-bottom:.5rem}.knowledge-graph-header p{color:#6b7280;font-size:1rem}[data-theme=dark] .knowledge-graph-header p{color:#9ca3af}[data-theme=dark] .home-page,[data-theme=dark] .main-content{background:#1a1a2e}[data-theme=dark] .login-prompt{background:linear-gradient(135deg,#6366f166,#8b5cf666);border-color:#6366f1b3;color:#fff}[data-theme=dark] .login-prompt-icon{background:#6366f1}[data-theme=dark] .login-prompt-link{background:#6366f180;color:#fff;font-weight:600}[data-theme=dark] .login-prompt-link:hover{background:#6366f1;color:#fff}[data-theme=dark] .hero-section:before{filter:invert(1) hue-rotate(180deg);opacity:.2}[data-theme=dark] .hero-section:after{filter:invert(1) hue-rotate(180deg);opacity:.1}[data-theme=dark] .hero-title{background:linear-gradient(135deg,#a5b4fc,#c4b5fd);-webkit-background-clip:text;background-clip:text}[data-theme=dark] .hero-subtitle{color:#9ca3af}[data-theme=dark] .feature-card{background:#252540;box-shadow:0 4px 6px #0000004d}[data-theme=dark] .feature-card:hover{box-shadow:0 6px 12px #0006}[data-theme=dark] .feature-card h3{color:#e0e0e0}[data-theme=dark] .feature-card p{color:#9ca3af}[data-theme=dark] .stats-section{background:#252540;box-shadow:0 2px 4px #0000004d}[data-theme=dark] .stat-label,[data-theme=dark] .stats-section h2{color:#e0e0e0}[data-theme=dark] .stat-desc{color:#9ca3af}[data-theme=dark] .research-note{background:#2d2d4a}[data-theme=dark] .research-note p{color:#b0b0b0}[data-theme=dark] .cta-section{background:linear-gradient(135deg,#252540,#1a1a2e)}[data-theme=dark] .app-footer{background:#16213e}[data-theme=dark] .not-found p{color:#9ca3af}[data-theme=dark] .mobile-menu-overlay{background:#000000b3}[data-theme=dark] .nav-links{background:linear-gradient(135deg,#4c51bf,#5b21b6)}[data-theme=dark] .nav-auth-btn.login-btn{color:#a5b4fc}[data-theme=dark] .nav-auth-btn.login-btn:hover{background:#a5b4fc26}[data-theme=dark] .home-loading .loading-spinner{border-color:#a78bfa #3d3d5c #3d3d5c}[data-theme=dark] .home-loading p{color:#9ca3af}[data-theme=dark] :focus-visible{outline-color:#06b6d4}[data-theme=dark] .skip-link{background:#6366f1}[data-theme=dark] body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}[data-theme=dark] .btn-secondary{background:#0000;border-color:#6b7280!important;color:#f3f4f6!important}[data-theme=dark] .btn-secondary:hover{background:#ffffff1a;border-color:#9ca3af!important;color:#fff!important}
/*# sourceMappingURL=main.e263e3a9.css.map*/