@import"https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700;800&family=JetBrains+Mono:wght@400;500&display=swap";.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:var(--spacing-xl);position:relative;overflow:hidden}.auth-bg-shapes{position:fixed;top:0;right:0;bottom:0;left:0;overflow:hidden;pointer-events:none;z-index:-1}.shape{position:absolute;border-radius:50%;filter:blur(80px);opacity:.5;animation:float 20s ease-in-out infinite}.shape-1{width:400px;height:400px;background:linear-gradient(135deg,#3b82f64d,#0ea5e933);top:-10%;right:-5%;animation-delay:0s}.shape-2{width:300px;height:300px;background:linear-gradient(135deg,#0ea5e942,#14b8a633);bottom:-5%;left:-5%;animation-delay:-5s}.shape-3{width:200px;height:200px;background:linear-gradient(135deg,#14b8a647,#3b82f633);top:50%;left:10%;animation-delay:-10s}.shape-4{width:250px;height:250px;background:linear-gradient(135deg,#3b82f62e,#14b8a62e);bottom:20%;right:15%;animation-delay:-15s}.auth-container{display:flex;align-items:center;gap:var(--spacing-2xl);max-width:1100px;width:100%;animation:fadeInUp .6s ease}.auth-card{flex:1;max-width:440px;background:#add8e6;backdrop-filter:blur(40px);-webkit-backdrop-filter:blur(40px);border:1px solid var(--border-color);border-radius:var(--radius-xl);padding:var(--spacing-2xl);box-shadow:var(--shadow-lg)}.login-page .auth-container{max-width:1160px}.login-card{position:relative;overflow:hidden;background:linear-gradient(155deg,#1e293bdb,#1e40af42 52%,#14b8a638);border:1px solid rgba(148,163,184,.34);box-shadow:0 24px 64px #0f172a7a,inset 0 1px #ffffff14}.login-card:before{content:"";position:absolute;width:260px;height:260px;border-radius:50%;top:-125px;right:-80px;background:radial-gradient(circle,#60a5fa52,#60a5fa00 72%);pointer-events:none}.login-card:after{content:"";position:absolute;width:240px;height:240px;border-radius:50%;bottom:-135px;left:-90px;background:radial-gradient(circle,#2dd4bf3d,#2dd4bf00 74%);pointer-events:none}.login-card>*{position:relative;z-index:1}.login-card .form-group input{background:#0f172a85;border-color:#94a3b857}.login-card .form-group input:focus{background:#0f172aad;border-color:#60a5facc;box-shadow:0 0 0 3px #3b82f61f}.login-card .auth-link-button{background:#0f172a57}.login-card .auth-link-button:hover{background:#3b82f624}[data-theme=light] .login-card{background:linear-gradient(155deg,#ffffffeb,#dbeafec7 55%,#ccfbf1bd);border:1px solid rgba(148,163,184,.36);box-shadow:0 20px 52px #94a3b852,inset 0 1px #ffffffb3}[data-theme=light] .login-card:before{background:radial-gradient(circle,#3b82f633,#3b82f600 72%)}[data-theme=light] .login-card:after{background:radial-gradient(circle,#14b8a62e,#14b8a600 74%)}[data-theme=light] .login-card .form-group input{background:#ffffffdb;border-color:#94a3b857}[data-theme=light] .login-card .form-group input:focus{background:#fffffff5}.register-card{max-width:480px}.auth-header{text-align:center;margin-bottom:var(--spacing-xl)}.auth-logo{width:60px;height:60px;margin:0 auto var(--spacing-lg);display:flex;align-items:center;justify-content:center;background:var(--accent-gradient);border-radius:var(--radius-lg);color:var(--bg-primary);box-shadow:0 8px 30px #3b82f64d;animation:glow 3s ease-in-out infinite}.auth-logo svg{width:32px;height:32px}.auth-header h1{font-size:1.75rem;font-weight:700;margin-bottom:var(--spacing-sm);background:var(--accent-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.auth-header p{color:var(--text-secondary);font-size:.95rem}.register-progress{display:flex;align-items:center;justify-content:center;gap:var(--spacing-md);margin-bottom:var(--spacing-xl)}.progress-step{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs)}.step-number{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:2px solid var(--border-color);border-radius:50%;font-weight:600;font-size:.9rem;color:var(--text-tertiary);transition:all var(--transition-base)}.progress-step.active .step-number{background:var(--accent-gradient);border-color:transparent;color:var(--bg-primary);box-shadow:0 4px 15px #3b82f64d}.progress-step span{font-size:.75rem;color:var(--text-tertiary);transition:color var(--transition-base)}.progress-step.active span{color:var(--text-primary)}.progress-line{width:60px;height:2px;background:var(--border-color);border-radius:1px;overflow:hidden;margin-bottom:20px}.progress-fill{height:100%;width:0;background:var(--accent-gradient);transition:width var(--transition-slow)}.progress-fill.filled{width:100%}.error-message{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md);background:var(--error-bg);border:1px solid rgba(239,68,68,.3);border-radius:var(--radius-md);color:var(--error);font-size:.9rem;margin-bottom:var(--spacing-lg);animation:scaleIn .3s ease}.error-message svg{width:18px;height:18px;flex-shrink:0}.auth-form,.form-step{display:flex;flex-direction:column;gap:var(--spacing-lg)}.form-group{position:relative}.form-group label{display:flex;align-items:center;gap:var(--spacing-sm);font-size:.9rem;font-weight:500;color:var(--text-secondary);margin-bottom:var(--spacing-sm);transition:color var(--transition-base)}.form-group label svg{width:16px;height:16px}.form-group.focused label{color:var(--accent-primary)}.form-group input{width:100%;padding:var(--spacing-md) var(--spacing-lg);background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-primary);font-size:1rem;transition:all var(--transition-base)}.input-glow{position:absolute;bottom:0;left:50%;transform:translate(-50%);width:0;height:2px;background:var(--accent-gradient);border-radius:1px;transition:width var(--transition-base)}.form-group.focused .input-glow{width:100%}.input-hint{display:block;font-size:.8rem;color:var(--text-tertiary);margin-top:var(--spacing-xs)}.password-input-wrapper{position:relative}.password-input-wrapper input{padding-right:48px}.password-toggle{position:absolute;right:var(--spacing-md);top:50%;transform:translateY(-50%);background:none;border:none;color:var(--text-tertiary);cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;transition:color var(--transition-base)}.password-toggle:hover{color:var(--text-primary)}.password-toggle svg{width:20px;height:20px}.password-strength{display:flex;align-items:center;gap:var(--spacing-sm);margin-top:var(--spacing-sm)}.strength-bar{flex:1;height:4px;background:var(--bg-tertiary);border-radius:2px;overflow:hidden}.strength-fill{height:100%;transition:all var(--transition-base);border-radius:2px}.password-strength span{font-size:.75rem;font-weight:500}.auth-button{display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);width:100%;padding:var(--spacing-md) var(--spacing-lg);background:var(--accent-gradient);border:none;border-radius:var(--radius-md);color:var(--bg-primary);font-size:1rem;font-weight:600;cursor:pointer;transition:all var(--transition-base);box-shadow:0 4px 15px #3b82f64d}.auth-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 25px #3b82f661}.auth-button:disabled{opacity:.7;cursor:not-allowed}.auth-button svg{width:18px;height:18px}.admin-login-toggle{align-self:flex-end;margin-top:calc(var(--spacing-sm) * -1);padding:0;background:transparent;border:none;color:var(--text-tertiary);font-size:.78rem;font-weight:500;letter-spacing:.01em}.admin-login-toggle:hover{color:var(--accent-primary)}.admin-login-hint{margin-top:var(--spacing-lg);color:var(--text-tertiary);text-align:center;font-size:.82rem}.button-spinner{width:18px;height:18px;border:2px solid rgba(15,23,42,.35);border-top-color:var(--bg-primary);border-radius:50%;animation:rotate .8s linear infinite}.form-buttons{display:flex;gap:var(--spacing-md)}.back-button{display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-md);background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-secondary);font-size:.95rem;font-weight:500;cursor:pointer;transition:all var(--transition-base)}.back-button:hover{background:var(--bg-card-hover);color:var(--text-primary)}.form-buttons .auth-button{flex:1}.auth-divider{display:flex;align-items:center;gap:var(--spacing-md);margin:var(--spacing-xl) 0}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background:var(--border-color)}.auth-divider span{color:var(--text-tertiary);font-size:.85rem;white-space:nowrap}.google-signin-wrap{display:flex;justify-content:center;margin-bottom:var(--spacing-md)}.google-signin-wrap.disabled{opacity:.6;pointer-events:none}.google-signin-hint{font-size:.82rem;color:var(--text-tertiary);text-align:center;margin:0 0 var(--spacing-md);line-height:1.5}.google-signin-hint code{font-size:.78rem}.verify-card .verify-status{margin-top:var(--spacing-md);line-height:1.6}.verify-card .verify-status.success{color:#22c55e}.verify-card .verify-status.error{color:#ef4444}.verify-email-target{margin-top:var(--spacing-sm);color:var(--text-secondary)}.verification-code-input{letter-spacing:.35em;font-size:1.25rem;font-weight:600;text-align:center}.resend-form{margin-top:calc(var(--spacing-sm) * -1)}.success-message{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md);margin-bottom:var(--spacing-md);background:#22c55e1a;border:1px solid rgba(34,197,94,.3);border-radius:var(--radius-md);color:#22c55e;font-size:.9rem}.auth-link-button{display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);width:100%;padding:var(--spacing-md) var(--spacing-lg);background:transparent;border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-primary);font-size:.95rem;font-weight:500;text-decoration:none;transition:all var(--transition-base)}.auth-link-button:hover{border-color:var(--accent-primary);background:#3b82f60f;color:var(--accent-primary)}.auth-link-button.secondary{border-color:var(--border-color)}.auth-link-button svg{width:18px;height:18px}.auth-features{flex:1;display:flex;flex-direction:column;gap:var(--spacing-lg);max-width:350px}.feature-card{padding:var(--spacing-lg);background:#4c7fed9e;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--border-color);border-radius:var(--radius-lg);transition:all var(--transition-base);animation:slideInRight .6s ease backwards}.feature-card:nth-child(1){animation-delay:.1s}.feature-card:nth-child(2){animation-delay:.2s}.feature-card:nth-child(3){animation-delay:.3s}.feature-card:hover{transform:translate(-5px);border-color:var(--border-accent);box-shadow:var(--shadow-glow)}.feature-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:var(--accent-gradient);border-radius:var(--radius-md);color:var(--bg-primary);margin-bottom:var(--spacing-md)}.feature-icon svg{width:24px;height:24px}.feature-card h3{font-size:1rem;font-weight:600;margin-bottom:var(--spacing-xs);color:var(--text-primary)}.feature-card p{font-size:.9rem;color:var(--text-secondary)}@media (max-width: 900px){.auth-container{flex-direction:column}.auth-card{max-width:100%}.auth-features{flex-direction:row;max-width:100%;overflow-x:auto;padding-bottom:var(--spacing-md)}.feature-card{min-width:200px;animation-name:fadeInUp}}@media (max-width: 480px){.auth-page{padding:var(--spacing-md)}.auth-card{padding:var(--spacing-lg)}.auth-features{display:none}}.dashboard{min-height:100vh;padding:100px var(--spacing-xl) var(--spacing-2xl)}.dashboard-container{max-width:1200px;margin:0 auto}.dashboard-loading{min-height:100vh;display:flex;align-items:center;justify-content:center}.loading-content p{color:var(--text-secondary)}.welcome-section{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-xl);margin-bottom:var(--spacing-2xl);padding:var(--spacing-xl);background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);animation:fadeInDown .5s ease}.welcome-content h1{font-size:1.75rem;font-weight:700;margin-bottom:var(--spacing-xs)}.welcome-content p{color:var(--text-secondary)}.upload-resume-btn{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg);background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-primary);font-weight:500;text-decoration:none;transition:all var(--transition-base)}.upload-resume-btn:hover{border-color:var(--accent-primary);background:#3b82f61a;color:var(--accent-primary);transform:translateY(-2px)}.upload-resume-btn svg{width:20px;height:20px}.stats-grid{position:relative;display:grid;grid-template-columns:repeat(4,1fr);gap:var(--spacing-lg);margin-bottom:var(--spacing-2xl);z-index:0}.stat-card{position:relative;display:flex;align-items:flex-start;gap:var(--spacing-md);padding:var(--spacing-lg);background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);transition:all var(--transition-base);animation:fadeInUp .5s ease backwards;overflow:hidden}.stat-card:nth-child(4){animation-delay:.25s}.stat-card:hover{transform:translateY(-4px);border-color:var(--border-accent);box-shadow:var(--shadow-glow)}.stat-card.highlight{background:linear-gradient(135deg,#3b82f61a,#0ea5e91a);border-color:var(--border-accent)}.stat-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md);flex-shrink:0}.stat-icon.total{background:var(--info-bg);color:var(--info)}.stat-icon.completed{background:var(--success-bg);color:var(--success)}.stat-icon.active{background:var(--warning-bg);color:var(--warning)}.stat-icon.score{background:linear-gradient(135deg,#3b82f633,#14b8a633);color:var(--accent-primary)}.stat-info{display:flex;flex-direction:column;gap:var(--spacing-xs)}.stat-value{font-size:1.75rem;font-weight:700;line-height:1}.stat-value.excellent{color:var(--success)}.stat-value.good{color:#22c55e}.stat-value.fair{color:var(--warning)}.stat-value.needs-work{color:var(--error)}.stat-trend{position:absolute;top:var(--spacing-md);right:var(--spacing-md);color:var(--success)}.stat-trend svg{width:20px;height:20px}.stat-progress{position:absolute;bottom:0;left:0;right:0;height:3px;background:var(--bg-tertiary)}.stat-progress .progress-fill{height:100%;background:var(--success);transition:width 1s ease}.stat-badge{position:absolute;top:var(--spacing-md);right:var(--spacing-md);padding:4px 10px;background:var(--warning-bg);color:var(--warning);font-size:.75rem;font-weight:600;border-radius:var(--radius-full)}.stat-badge.pulse{animation:pulse 2s ease-in-out infinite}.score-ring{position:absolute;top:var(--spacing-md);right:var(--spacing-md);width:48px;height:48px}.score-ring svg{width:100%;height:100%;transform:rotate(-90deg)}.ring-bg{fill:none;stroke:var(--bg-tertiary);stroke-width:3}.ring-fill{fill:none;stroke:var(--accent-primary);stroke-width:3;stroke-linecap:round;transition:stroke-dasharray 1s ease}.start-interview-section{margin-bottom:var(--spacing-2xl);padding:var(--spacing-xl);background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);animation:fadeInUp .5s ease backwards;animation-delay:.3s}.section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-lg)}.section-header h2{display:flex;align-items:center;gap:var(--spacing-sm);font-size:1.25rem;font-weight:600}.section-header h2 svg{width:24px;height:24px;color:var(--accent-primary)}.section-header p{color:var(--text-secondary);font-size:.9rem}.quick-roles{display:flex;flex-wrap:wrap;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg)}.quick-roles-empty{width:100%;padding:var(--spacing-md);background:var(--bg-tertiary);border:1px dashed var(--border-color);border-radius:var(--radius-md);color:var(--text-secondary);font-size:.9rem}.role-chip{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-full);color:var(--text-primary);font-size:.9rem;font-weight:500;cursor:pointer;transition:all var(--transition-base);animation:fadeInUp .4s ease backwards}.role-chip svg{width:16px;height:16px;opacity:0;transform:translate(-5px);transition:all var(--transition-base)}.role-chip:hover{background:var(--accent-gradient);border-color:transparent;color:var(--bg-primary);transform:translateY(-2px);box-shadow:0 4px 15px #3b82f64d}.role-chip:hover svg{opacity:1;transform:translate(0)}.role-chip:disabled{opacity:.6;cursor:not-allowed}.custom-role-section{padding-top:var(--spacing-lg);border-top:1px solid var(--border-color)}.custom-role-toggle{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md);background:transparent;border:1px dashed var(--border-color);border-radius:var(--radius-md);color:var(--text-secondary);font-size:.95rem;cursor:pointer;transition:all var(--transition-base);width:100%}.custom-role-toggle:hover{border-color:var(--accent-primary);color:var(--accent-primary);background:#3b82f60d}.custom-role-toggle svg{width:20px;height:20px}.custom-role-form{display:flex;flex-direction:column;gap:var(--spacing-md);animation:scaleIn .3s ease}.custom-role-form input{width:100%;padding:var(--spacing-md) var(--spacing-lg);background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-primary);font-size:1rem;transition:all var(--transition-base)}.custom-role-form input:focus{outline:none;border-color:var(--accent-primary)}.custom-role-form input::placeholder{color:var(--text-tertiary)}.form-actions{display:flex;gap:var(--spacing-md);justify-content:flex-end}.form-actions button{padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--radius-md);font-weight:500;cursor:pointer;transition:all var(--transition-base)}.form-actions button[type=submit]{background:var(--accent-gradient);border:none;color:var(--bg-primary)}.form-actions button[type=submit]:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 15px #3b82f64d}.form-actions button:disabled{opacity:.6;cursor:not-allowed}.sessions-section{animation:fadeInUp .5s ease backwards;animation-delay:.4s}.session-count{padding:4px 12px;background:var(--bg-tertiary);border-radius:var(--radius-full);font-size:.85rem;color:var(--text-secondary)}.empty-sessions{text-align:center;padding:var(--spacing-2xl);background:var(--bg-card);border:1px dashed var(--border-color);border-radius:var(--radius-xl)}.empty-icon{width:80px;height:80px;margin:0 auto var(--spacing-lg);display:flex;align-items:center;justify-content:center;background:var(--bg-tertiary);border-radius:50%;color:var(--text-tertiary)}.empty-icon svg{width:40px;height:40px}.empty-sessions h3{font-size:1.25rem;margin-bottom:var(--spacing-sm)}.empty-sessions p{color:var(--text-secondary)}.sessions-list{display:flex;flex-direction:column;gap:var(--spacing-md)}.session-filters{display:flex;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.filter-group{display:flex;flex-direction:column;gap:6px}.filter-group label{font-size:.8rem;font-weight:600;color:var(--text-secondary)}.filter-group select{min-width:180px;padding:8px 12px;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-primary);font-size:.9rem}.filter-group select:focus{outline:none;border-color:var(--accent-primary)}.session-card{position:relative;display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-lg);background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);transition:all var(--transition-base);animation:fadeInUp .5s ease backwards;overflow:hidden}.session-card:hover{border-color:var(--border-accent);transform:translate(5px)}.session-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:var(--bg-tertiary);border-radius:var(--radius-md);color:var(--text-secondary);flex-shrink:0}.session-icon svg{width:24px;height:24px}.session-info{flex:1;min-width:0}.session-info h3{font-size:1rem;font-weight:600;margin-bottom:var(--spacing-xs);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.session-meta{display:flex;align-items:center;gap:var(--spacing-md);font-size:.85rem;color:var(--text-secondary)}.session-meta span{display:flex;align-items:center;gap:var(--spacing-xs)}.session-meta svg{width:14px;height:14px}.status-badge{padding:2px 8px;border-radius:var(--radius-full);font-size:.75rem;font-weight:600}.mode-badge{padding:2px 8px;border-radius:var(--radius-full);font-size:.75rem;font-weight:600}.mode-badge.voice{background:#3b82f629;color:#1d4ed8}.mode-badge.text{background:#6b728026;color:#4b5563}.session-score{position:relative;display:inline-block;padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-tertiary);border-radius:var(--radius-md);flex-shrink:0;z-index:1;white-space:nowrap;font-size:1.25rem;font-weight:700;line-height:1.4}.session-score .score-label{font-size:.75rem;color:var(--text-tertiary);font-weight:400;margin-left:1px}.session-score.excellent{color:var(--success)}.session-score.good{color:#22c55e}.session-score.fair{color:var(--warning)}.session-score.needs-work{color:var(--error)}.session-action{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-primary);font-weight:500;font-size:.9rem;text-decoration:none;transition:all var(--transition-base)}.session-action:hover{background:var(--accent-primary);border-color:var(--accent-primary);color:var(--bg-primary)}.session-action svg{width:16px;height:16px}.view-more-btn{margin:var(--spacing-lg) auto 0;display:flex;align-items:center;justify-content:center;padding:var(--spacing-sm) var(--spacing-xl);background:transparent;border:1px solid var(--border-color);border-radius:var(--radius-full);color:var(--text-primary);font-size:.9rem;font-weight:600;cursor:pointer;transition:all var(--transition-base)}.view-more-btn:hover{border-color:var(--accent-primary);color:var(--accent-primary);background:#3b82f614}@media (max-width: 1024px){.stats-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.dashboard{padding:80px var(--spacing-md) var(--spacing-xl)}.welcome-section{flex-direction:column;align-items:flex-start;gap:var(--spacing-md)}.upload-resume-btn{width:100%;justify-content:center}.stats-grid{grid-template-columns:1fr}.session-filters{flex-direction:column;align-items:stretch}.filter-group select{min-width:100%}.session-card{flex-wrap:wrap}.session-score,.session-action{margin-left:60px}}.admin-users-page{min-height:100vh;padding:100px var(--spacing-xl) var(--spacing-2xl)}.admin-users-container{max-width:1200px;margin:0 auto;display:flex;flex-direction:column;gap:var(--spacing-lg)}.admin-users-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--spacing-lg)}.admin-label{display:inline-flex;align-items:center;padding:2px 10px;border-radius:var(--radius-full);background:#3b82f624;color:var(--accent-primary);font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.admin-users-header h1{margin-top:var(--spacing-sm);font-size:1.8rem}.admin-users-header p{color:var(--text-secondary);margin-top:var(--spacing-xs)}.admin-user-count{padding:6px 12px;border-radius:var(--radius-full);background:var(--bg-tertiary);color:var(--text-secondary);font-size:.85rem}.admin-message{border-radius:var(--radius-md);padding:var(--spacing-sm) var(--spacing-md);font-size:.9rem}.admin-message.error{border:1px solid rgba(239,68,68,.4);background:var(--error-bg);color:var(--error)}.admin-message.success{border:1px solid rgba(16,185,129,.35);background:var(--success-bg);color:var(--success)}.admin-users-layout{display:grid;grid-template-columns:320px 1fr;gap:var(--spacing-lg)}.admin-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--spacing-lg)}.admin-card h2{font-size:1.1rem;margin-bottom:var(--spacing-md)}.admin-user-form{display:flex;flex-direction:column;gap:var(--spacing-sm)}.admin-user-form label{font-size:.82rem;color:var(--text-secondary);font-weight:600;margin-top:4px}.admin-user-form input,.admin-user-form select,.users-list-header input,.edit-form input,.edit-form select{width:100%;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-primary);padding:9px 12px;font-size:.9rem}.admin-user-form input:focus,.admin-user-form select:focus,.users-list-header input:focus,.edit-form input:focus,.edit-form select:focus{outline:none;border-color:var(--accent-primary)}.primary-btn,.secondary-btn,.danger-btn{border-radius:var(--radius-md);padding:8px 12px;font-size:.86rem;font-weight:600;transition:all var(--transition-base)}.primary-btn{background:var(--accent-gradient);color:var(--bg-primary)}.primary-btn:hover:not(:disabled){transform:translateY(-1px)}.secondary-btn{background:transparent;border:1px solid var(--border-color);color:var(--text-primary)}.secondary-btn:hover:not(:disabled){border-color:var(--accent-primary);color:var(--accent-primary)}.danger-btn{background:transparent;border:1px solid rgba(239,68,68,.4);color:#ef4444}.danger-btn:hover:not(:disabled){background:#ef44441f}.primary-btn:disabled,.secondary-btn:disabled,.danger-btn:disabled{opacity:.55;cursor:not-allowed}.users-list-header{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.users-grid{display:grid;gap:var(--spacing-sm)}.users-loading{padding:var(--spacing-lg);border:1px dashed var(--border-color);border-radius:var(--radius-md);color:var(--text-secondary);text-align:center}.user-row-card{border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--spacing-md);background:var(--bg-tertiary);display:flex;flex-direction:column;gap:var(--spacing-sm)}.user-row-top{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--spacing-md)}.user-row-top h3{font-size:1rem;line-height:1.2}.user-row-top p{font-size:.82rem;color:var(--text-secondary)}.user-email{color:var(--text-secondary);font-size:.9rem;word-break:break-word}.user-plan-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:8px 0}.plan-pill{padding:3px 10px;border-radius:var(--radius-full);font-size:.72rem;font-weight:700}.plan-pill.free{background:#94a3b826;color:var(--text-secondary)}.plan-pill.premium{background:#fbbf2426;color:#fbbf24}.cancel-tag{color:#f59e0b;font-size:.75rem}.plan-admin-actions{display:flex;gap:8px;margin-bottom:10px}.secondary-btn.small{padding:6px 12px;font-size:.78rem}.role-pill{padding:2px 9px;border-radius:var(--radius-full);font-size:.72rem;font-weight:700;letter-spacing:.04em}.role-pill.admin{background:#f59e0b29;color:#f59e0b}.role-pill.user{background:#3b82f624;color:#60a5fa}.row-actions{display:flex;gap:var(--spacing-sm);flex-wrap:wrap}.edit-form{display:flex;flex-direction:column;gap:var(--spacing-sm)}@media (max-width: 980px){.admin-users-layout{grid-template-columns:1fr}}@media (max-width: 640px){.admin-users-page{padding:84px var(--spacing-md) var(--spacing-xl)}.admin-users-header{flex-direction:column}}.admin-activity-page{min-height:100vh;padding:100px var(--spacing-xl) var(--spacing-2xl)}.admin-activity-container{max-width:1300px;margin:0 auto;display:flex;flex-direction:column;gap:var(--spacing-lg)}.admin-activity-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--spacing-lg);flex-wrap:wrap}.admin-activity-label{display:inline-block;padding:2px 10px;border-radius:var(--radius-full);background:#3b82f624;color:var(--accent-primary);font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.admin-activity-header h1{margin-top:var(--spacing-xs);font-size:1.8rem}.admin-activity-header p{margin-top:2px;color:var(--text-secondary)}.admin-activity-note{max-width:420px;padding:var(--spacing-sm) var(--spacing-md);border:1px solid rgba(245,158,11,.3);background:#f59e0b1a;color:#b45309;border-radius:var(--radius-md);font-size:.85rem}.admin-activity-error{padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);border:1px solid rgba(239,68,68,.35);background:var(--error-bg);color:var(--error)}.admin-activity-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--spacing-md)}.activity-stat-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--spacing-md);display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-sm)}.activity-stat-card span{color:var(--text-secondary);font-size:.9rem}.activity-stat-card strong{font-size:1.3rem;color:var(--text-primary)}.admin-activity-filters{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--spacing-md);display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) auto;gap:var(--spacing-md);align-items:end}.activity-filter-group{display:flex;flex-direction:column;gap:6px}.activity-filter-group label{font-size:.8rem;font-weight:600;color:var(--text-secondary)}.activity-filter-group input,.activity-filter-group select{width:100%;border:1px solid var(--border-color);background:var(--bg-tertiary);color:var(--text-primary);border-radius:var(--radius-md);padding:8px 11px;font-size:.9rem}.activity-filter-group input:focus,.activity-filter-group select:focus{outline:none;border-color:var(--accent-primary)}.activity-filter-actions{display:flex;gap:var(--spacing-sm)}.activity-btn{border-radius:var(--radius-md);padding:8px 12px;font-weight:600;font-size:.86rem;transition:all var(--transition-base)}.activity-btn.apply{background:var(--accent-gradient);color:var(--bg-primary)}.activity-btn.reset{border:1px solid var(--border-color);background:transparent;color:var(--text-primary)}.activity-btn.reset:hover{border-color:var(--accent-primary);color:var(--accent-primary)}.admin-activity-table-wrap{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);overflow:hidden}.admin-activity-empty{padding:var(--spacing-xl);text-align:center;color:var(--text-secondary)}.admin-activity-table{width:100%;border-collapse:collapse}.admin-activity-table th,.admin-activity-table td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--border-color);vertical-align:top;font-size:.86rem}.admin-activity-table th{background:var(--bg-tertiary);color:var(--text-secondary);font-size:.8rem;letter-spacing:.02em}.admin-activity-table tr:last-child td{border-bottom:none}.activity-role{display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-full);padding:2px 8px;font-size:.72rem;font-weight:700}.activity-role.admin{background:#f59e0b2e;color:#b45309}.activity-role.user{background:#3b82f626;color:#1d4ed8}.activity-action{display:inline-flex;align-items:center;border-radius:var(--radius-full);padding:2px 8px;background:var(--bg-tertiary);font-size:.75rem;font-weight:600}.activity-action.login{background:#10b9812e;color:#047857}.activity-endpoint{color:var(--text-secondary);font-family:JetBrains Mono,monospace;font-size:.78rem}@media (max-width: 1080px){.admin-activity-filters{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 768px){.admin-activity-page{padding:84px var(--spacing-md) var(--spacing-xl)}.admin-activity-stats,.admin-activity-filters{grid-template-columns:1fr}.admin-activity-table-wrap{overflow-x:auto}.admin-activity-table{min-width:860px}}.resume-upload-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:100px var(--spacing-xl) var(--spacing-2xl)}.upload-container{max-width:700px;width:100%;animation:fadeInUp .5s ease}.upload-header{text-align:center;margin-bottom:var(--spacing-2xl)}.header-icon{width:80px;height:80px;margin:0 auto var(--spacing-lg);display:flex;align-items:center;justify-content:center;background:var(--accent-gradient);border-radius:var(--radius-xl);color:var(--bg-primary);box-shadow:0 8px 30px #3b82f64d;animation:float 3s ease-in-out infinite}.header-icon svg{width:40px;height:40px}.upload-header h1{font-size:2rem;font-weight:700;margin-bottom:var(--spacing-sm);background:var(--accent-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.upload-header p{color:var(--text-secondary);font-size:1.1rem;max-width:500px;margin:0 auto}.resume-upload-page .error-message{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md);background:var(--error-bg);border:1px solid rgba(239,68,68,.3);border-radius:var(--radius-md);color:var(--error);font-size:.9rem;margin-bottom:var(--spacing-lg);animation:scaleIn .3s ease}.resume-upload-page .error-message svg{width:20px;height:20px;flex-shrink:0}.upload-form{display:flex;flex-direction:column;gap:var(--spacing-lg)}.drop-zone{position:relative;padding:var(--spacing-2xl);background:var(--bg-card);border:2px dashed var(--border-color);border-radius:var(--radius-xl);transition:all var(--transition-base);cursor:pointer}.drop-zone:hover{border-color:var(--accent-primary);background:#3b82f605}.drop-zone.drag-active{border-color:var(--accent-primary);background:#3b82f60d;transform:scale(1.02);box-shadow:var(--shadow-glow)}.drop-zone.has-file{border-style:solid;cursor:default}.file-input{display:none}.drop-content{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-md);cursor:pointer}.drop-icon{width:80px;height:80px;display:flex;align-items:center;justify-content:center;background:var(--bg-tertiary);border-radius:50%;color:var(--text-secondary);transition:all var(--transition-base)}.drop-zone:hover .drop-icon,.drop-zone.drag-active .drop-icon{background:var(--accent-gradient);color:var(--bg-primary);transform:translateY(-5px);box-shadow:0 8px 30px #3b82f64d}.drop-icon svg{width:36px;height:36px}.drop-text{text-align:center}.drop-title{display:block;font-size:1.1rem;font-weight:600;color:var(--text-primary);margin-bottom:var(--spacing-xs)}.drop-subtitle{display:block;color:var(--text-secondary);font-size:.95rem}.file-types{display:flex;gap:var(--spacing-sm)}.file-type{padding:4px 12px;background:var(--bg-tertiary);border-radius:var(--radius-full);font-size:.8rem;font-weight:600;color:var(--text-secondary)}.file-limit{font-size:.85rem;color:var(--text-tertiary)}.file-preview{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);background:var(--bg-tertiary);border-radius:var(--radius-lg);animation:scaleIn .3s ease}.file-icon{width:56px;height:56px;display:flex;align-items:center;justify-content:center;background:var(--accent-gradient);border-radius:var(--radius-md);color:var(--bg-primary)}.file-icon svg{width:28px;height:28px}.file-info{flex:1}.file-name{display:block;font-weight:600;color:var(--text-primary);margin-bottom:2px;word-break:break-all}.file-size{font-size:.85rem;color:var(--text-secondary)}.remove-file{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-base)}.remove-file:hover{background:var(--error-bg);border-color:var(--error);color:var(--error)}.remove-file svg{width:18px;height:18px}.upload-progress{display:flex;flex-direction:column;gap:var(--spacing-sm)}.progress-bar{height:6px;background:var(--bg-tertiary);border-radius:3px;overflow:hidden}.progress-fill{height:100%;background:var(--accent-gradient);border-radius:3px;transition:width .3s ease}.progress-info{display:flex;justify-content:space-between;font-size:.85rem;color:var(--text-secondary)}.upload-button{display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-lg);background:var(--accent-gradient);border:none;border-radius:var(--radius-lg);color:var(--bg-primary);font-size:1.1rem;font-weight:600;cursor:pointer;transition:all var(--transition-base);box-shadow:0 4px 20px #3b82f64d}.upload-button:hover:not(:disabled){transform:translateY(-3px);box-shadow:0 8px 30px #3b82f666}.upload-button:disabled{opacity:.6;cursor:not-allowed}.upload-button svg{width:24px;height:24px}.button-spinner{width:20px;height:20px;border:2px solid rgba(10,10,15,.3);border-top-color:var(--bg-primary);border-radius:50%;animation:rotate .8s linear infinite}.features-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-lg);margin-top:var(--spacing-2xl)}.feature-item{text-align:center;padding:var(--spacing-lg);background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);transition:all var(--transition-base);animation:fadeInUp .5s ease backwards}.feature-item:nth-child(1){animation-delay:.1s}.feature-item:nth-child(2){animation-delay:.2s}.feature-item:nth-child(3){animation-delay:.3s}.feature-item:hover{transform:translateY(-5px);border-color:var(--border-accent);box-shadow:var(--shadow-glow)}.feature-icon{width:56px;height:56px;margin:0 auto var(--spacing-md);display:flex;align-items:center;justify-content:center;background:var(--bg-tertiary);border-radius:var(--radius-md);color:var(--accent-primary)}.feature-icon svg{width:28px;height:28px}.feature-item h3{font-size:1rem;font-weight:600;margin-bottom:var(--spacing-xs)}.feature-item p{font-size:.85rem;color:var(--text-secondary);line-height:1.5}@media (max-width: 768px){.resume-upload-page{padding:80px var(--spacing-md) var(--spacing-xl)}.features-grid{grid-template-columns:1fr}.drop-zone{padding:var(--spacing-xl)}}.resume-analysis-page{min-height:100vh;padding:100px var(--spacing-xl) var(--spacing-2xl)}.analysis-container{max-width:900px;margin:0 auto}.analysis-loading{min-height:100vh;display:flex;align-items:center;justify-content:center}.analysis-loading .loading-content{text-align:center}.analysis-loading .loading-spinner{width:60px;height:60px;border:4px solid var(--bg-tertiary);border-top-color:var(--accent-primary);border-radius:50%;animation:rotate .8s linear infinite;margin:0 auto var(--spacing-lg)}.analysis-loading h2{font-size:1.5rem;margin-bottom:var(--spacing-sm)}.analysis-loading p{color:var(--text-secondary)}.analysis-error-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:var(--spacing-xl)}.back-link{display:inline-flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-xl);background:var(--accent-gradient);border-radius:var(--radius-md);color:var(--bg-primary);font-weight:600;text-decoration:none}.analysis-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--spacing-xl);margin-bottom:var(--spacing-xl);animation:fadeInDown .5s ease}.header-content{flex:1}.success-badge{display:inline-flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:var(--success-bg);color:var(--success);font-size:.85rem;font-weight:600;border-radius:var(--radius-full);margin-bottom:var(--spacing-md)}.success-badge svg{width:16px;height:16px}.analysis-header h1{font-size:2rem;font-weight:700;margin-bottom:var(--spacing-xs);background:var(--accent-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.header-content p{color:var(--text-secondary)}.file-info-badge{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg)}.file-info-badge svg{width:36px;height:36px;color:var(--accent-primary)}.file-info-badge div{display:flex;flex-direction:column}.filename{font-weight:600;font-size:.95rem}.filetype{font-size:.8rem;color:var(--text-tertiary)}.analysis-tabs{display:flex;gap:var(--spacing-sm);padding:var(--spacing-sm);background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);margin-bottom:var(--spacing-lg);overflow-x:auto}.tab-btn{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:transparent;border:none;border-radius:var(--radius-md);color:var(--text-secondary);font-size:.9rem;font-weight:500;cursor:pointer;transition:all var(--transition-base);white-space:nowrap}.tab-btn svg{width:18px;height:18px}.tab-btn:hover{color:var(--text-primary);background:var(--bg-tertiary)}.tab-btn.active{color:var(--accent-primary);background:#3b82f61a}.tab-content{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);padding:var(--spacing-xl);margin-bottom:var(--spacing-xl);animation:fadeIn .3s ease}.stats-row{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-md);margin-bottom:var(--spacing-xl)}.stat-card{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-lg);background:var(--bg-tertiary);border-radius:var(--radius-lg);animation:fadeInUp .5s ease backwards}.stat-card:nth-child(1){animation-delay:.1s}.stat-card:nth-child(2){animation-delay:.15s}.stat-card:nth-child(3){animation-delay:.2s}.stat-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md)}.stat-icon svg{width:24px;height:24px}.stat-icon.skills-icon{background:#3b82f626;color:var(--accent-primary)}.stat-icon.roles-icon{background:#0ea5e926;color:var(--accent-secondary)}.stat-icon.date-icon{background:var(--success-bg);color:var(--success)}.stat-info{display:flex;flex-direction:column}.stat-value{font-size:1.5rem;font-weight:700;line-height:1.2}.stat-label{font-size:.85rem;color:var(--text-secondary)}.overview-section{margin-bottom:var(--spacing-xl)}.overview-section:last-child{margin-bottom:0}.overview-section h3{font-size:1rem;font-weight:600;margin-bottom:var(--spacing-md);color:var(--text-secondary)}.skills-preview{display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}.skill-tag{display:inline-flex;padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-full);font-size:.9rem;font-weight:500;color:var(--text-primary);animation:fadeInUp .4s ease backwards;transition:all var(--transition-base)}.skill-tag:hover{border-color:var(--accent-primary);background:#3b82f61a;color:var(--accent-primary)}.more-btn{display:inline-flex;align-items:center;padding:var(--spacing-sm) var(--spacing-md);background:transparent;border:1px dashed var(--border-color);border-radius:var(--radius-full);color:var(--text-secondary);font-size:.9rem;cursor:pointer;transition:all var(--transition-base)}.more-btn:hover{border-color:var(--accent-primary);color:var(--accent-primary)}.roles-preview{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-md)}.role-card{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);background:var(--bg-tertiary);border-radius:var(--radius-md);animation:fadeInUp .5s ease backwards}.role-number{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:var(--accent-gradient);border-radius:50%;color:var(--bg-primary);font-weight:700;font-size:.9rem}.role-name{font-weight:500}.skills-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-sm)}.skill-item{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md);background:var(--bg-tertiary);border-radius:var(--radius-md);animation:fadeInUp .4s ease backwards;transition:all var(--transition-base)}.skill-item:hover{background:#3b82f61a}.skill-icon{width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:var(--success-bg);border-radius:50%;color:var(--success)}.skill-icon svg{width:14px;height:14px}.roles-list{display:flex;flex-direction:column;gap:var(--spacing-md)}.role-item{display:flex;align-items:center;gap:var(--spacing-lg);padding:var(--spacing-lg);background:var(--bg-tertiary);border-radius:var(--radius-lg);animation:fadeInUp .5s ease backwards;transition:all var(--transition-base)}.role-item:hover{background:var(--bg-card-hover)}.role-rank{width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:var(--accent-gradient);border-radius:var(--radius-md);color:var(--bg-primary);font-size:1.25rem;font-weight:700;flex-shrink:0}.role-content{flex:1}.role-content h4{font-size:1.1rem;margin-bottom:2px}.role-content p{font-size:.85rem;color:var(--text-secondary)}.practice-btn{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:transparent;border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-primary);font-size:.9rem;font-weight:500;text-decoration:none;cursor:pointer;transition:all var(--transition-base)}.practice-btn:hover{background:var(--accent-gradient);border-color:transparent;color:var(--bg-primary)}.practice-btn svg{width:16px;height:16px}.practice-btn:disabled{opacity:.6;cursor:not-allowed}.text-content{background:var(--bg-tertiary);border-radius:var(--radius-lg);overflow:hidden}.text-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md);background:var(--bg-secondary);border-bottom:1px solid var(--border-color)}.text-header span{font-size:.9rem;color:var(--text-secondary)}.copy-btn{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm);background:transparent;border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:.8rem;cursor:pointer;transition:all var(--transition-base)}.copy-btn:hover{background:var(--accent-gradient);border-color:transparent;color:var(--bg-primary)}.copy-btn svg{width:14px;height:14px}.text-content pre{padding:var(--spacing-lg);font-family:JetBrains Mono,monospace;font-size:.85rem;line-height:1.6;color:var(--text-secondary);white-space:pre-wrap;word-wrap:break-word;max-height:400px;overflow-y:auto}.empty-state{text-align:center;padding:var(--spacing-2xl);color:var(--text-tertiary)}.analysis-actions{display:flex;gap:var(--spacing-md)}.vacancy-loading{text-align:center;padding:var(--spacing-2xl)}.vacancy-loading .loading-spinner{width:48px;height:48px;border:4px solid var(--bg-tertiary);border-top-color:var(--accent-primary);border-radius:50%;animation:rotate .8s linear infinite;margin:0 auto var(--spacing-lg)}.vacancy-loading h3{font-size:1.15rem;margin-bottom:var(--spacing-xs)}.vacancy-loading p{color:var(--text-secondary)}.vacancy-error{text-align:center;padding:var(--spacing-2xl);color:var(--error)}.vacancy-error p{margin-bottom:var(--spacing-lg)}.vacancy-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-lg)}.vacancy-meta{display:flex;align-items:center;gap:var(--spacing-sm)}.vacancy-count{font-weight:600}.vacancy-model{font-size:.8rem;color:var(--text-tertiary);padding:2px var(--spacing-sm);background:var(--bg-tertiary);border-radius:var(--radius-full)}.regenerate-btn{display:inline-flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);background:transparent;border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-secondary);font-size:.85rem;font-weight:500;cursor:pointer;transition:all var(--transition-base)}.regenerate-btn:hover:not(:disabled){border-color:var(--accent-primary);color:var(--accent-primary)}.regenerate-btn:disabled{opacity:.6;cursor:not-allowed}.regenerate-btn svg{width:15px;height:15px}.vacancy-list{display:flex;flex-direction:column;gap:var(--spacing-md)}.vacancy-card{padding:var(--spacing-lg);background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-lg);animation:fadeInUp .5s ease backwards;transition:all var(--transition-base)}.vacancy-card:hover{border-color:var(--accent-primary)}.vacancy-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.vacancy-title h4{font-size:1.1rem;margin-bottom:4px}.vacancy-category{font-size:.78rem;color:var(--text-tertiary);padding:2px var(--spacing-sm);background:var(--bg-card);border-radius:var(--radius-full)}.match-badge{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:64px;padding:var(--spacing-sm);border-radius:var(--radius-md);font-size:1.25rem;font-weight:700;line-height:1;flex-shrink:0}.match-badge span{font-size:.65rem;font-weight:500;text-transform:uppercase;letter-spacing:.04em;margin-top:2px;opacity:.85}.match-badge.high{background:var(--success-bg);color:var(--success)}.match-badge.medium{background:#3b82f626;color:var(--accent-primary)}.match-badge.low{background:var(--bg-card);color:var(--text-secondary)}.match-bar{height:8px;width:100%;background:var(--bg-card);border-radius:var(--radius-full);overflow:hidden;margin-bottom:var(--spacing-md)}.match-fill{height:100%;border-radius:var(--radius-full);transition:width .6s ease}.match-fill.high{background:var(--success)}.match-fill.medium{background:var(--accent-primary)}.match-fill.low{background:var(--text-tertiary)}.vacancy-reason{font-size:.9rem;color:var(--text-secondary);margin-bottom:var(--spacing-md)}.vacancy-skills{margin-bottom:var(--spacing-md)}.vacancy-skills-label{display:block;font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-tertiary);margin-bottom:var(--spacing-sm)}.chip-row{display:flex;flex-wrap:wrap;gap:var(--spacing-xs)}.chip{display:inline-flex;padding:4px var(--spacing-sm);border-radius:var(--radius-full);font-size:.82rem;font-weight:500;border:1px solid transparent}.chip-matched{background:var(--success-bg);color:var(--success)}.chip-missing{background:var(--bg-card);color:var(--text-secondary);border-color:var(--border-color)}.action-btn.inline{flex:none;display:inline-flex;margin-top:var(--spacing-lg);padding:var(--spacing-md) var(--spacing-xl)}.vacancy-upgrade{text-align:center;padding:var(--spacing-2xl)}.vacancy-upgrade-icon{width:64px;height:64px;margin:0 auto var(--spacing-lg);display:flex;align-items:center;justify-content:center;border-radius:50%;background:#3b82f61f;color:var(--accent-primary)}.vacancy-upgrade-icon svg{width:32px;height:32px}.vacancy-upgrade h3{font-size:1.2rem;margin-bottom:var(--spacing-sm)}.vacancy-upgrade p{color:var(--text-secondary);max-width:420px;margin:0 auto}@media (max-width: 768px){.resume-analysis-page{padding:80px var(--spacing-md) var(--spacing-xl)}.analysis-header{flex-direction:column}.file-info-badge{width:100%}.stats-row,.roles-preview{grid-template-columns:1fr}.skills-grid{grid-template-columns:repeat(2,1fr)}.role-item{flex-wrap:wrap}.practice-btn{width:100%;justify-content:center;margin-top:var(--spacing-sm)}.analysis-actions{flex-direction:column}}.mock-interview-page{min-height:100vh;padding:100px var(--spacing-xl) var(--spacing-2xl)}.interview-container{max-width:900px;margin:0 auto}.interview-container.voice-mode-active{max-width:1320px}.interview-loading{min-height:100vh;display:flex;align-items:center;justify-content:center}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000c;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease}.modal-content{max-width:400px;width:90%;padding:var(--spacing-xl);background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);text-align:center;animation:scaleIn .3s ease}.modal-icon{width:64px;height:64px;margin:0 auto var(--spacing-lg);display:flex;align-items:center;justify-content:center;border-radius:50%}.modal-icon.warning{background:var(--warning-bg);color:var(--warning)}.modal-icon svg{width:32px;height:32px}.modal-content h3{font-size:1.25rem;margin-bottom:var(--spacing-sm)}.modal-content p{color:var(--text-secondary);margin-bottom:var(--spacing-xl)}.modal-actions{display:flex;gap:var(--spacing-md)}.modal-actions button{flex:1;padding:var(--spacing-md);border-radius:var(--radius-md);font-weight:600;cursor:pointer;transition:all var(--transition-base)}.modal-actions .cancel-btn{background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-primary)}.modal-actions .cancel-btn:hover{background:var(--bg-card-hover)}.modal-actions .confirm-btn{background:var(--error);border:none;color:#fff}.modal-actions .confirm-btn:hover:not(:disabled){background:#dc2626}.interview-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--spacing-lg);margin-bottom:var(--spacing-xl);padding:var(--spacing-xl);background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);animation:fadeInDown .5s ease}.session-badge{display:inline-flex;align-items:center;gap:var(--spacing-xs);padding:4px 12px;background:var(--success-bg);color:var(--success);font-size:.8rem;font-weight:600;border-radius:var(--radius-full);margin-bottom:var(--spacing-sm)}.session-badge:before{content:"";width:8px;height:8px;background:var(--success);border-radius:50%;animation:pulse 2s ease-in-out infinite}.header-info h1{font-size:1.5rem;font-weight:700;margin-bottom:var(--spacing-sm);background:var(--accent-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.session-stats{display:flex;gap:var(--spacing-lg)}.session-stats span{display:flex;align-items:center;gap:var(--spacing-xs);color:var(--text-secondary);font-size:.9rem}.session-stats svg{width:16px;height:16px}.end-session-btn{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:transparent;border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-secondary);font-weight:500;cursor:pointer;transition:all var(--transition-base)}.end-session-btn:hover{background:var(--error-bg);border-color:var(--error);color:var(--error)}.end-session-btn svg{width:18px;height:18px}.mock-interview-page .error-message{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md);background:var(--error-bg);border:1px solid rgba(239,68,68,.3);border-radius:var(--radius-md);color:var(--error);font-size:.9rem;margin-bottom:var(--spacing-lg);animation:scaleIn .3s ease}.mock-interview-page .error-message svg{width:20px;height:20px;flex-shrink:0}.start-prompt{text-align:center;padding:var(--spacing-2xl);background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);animation:fadeInUp .5s ease}.prompt-icon{width:100px;height:100px;margin:0 auto var(--spacing-xl);display:flex;align-items:center;justify-content:center;background:var(--accent-gradient);border-radius:50%;color:var(--bg-primary);box-shadow:0 8px 40px #3b82f64d;animation:glow 3s ease-in-out infinite}.prompt-icon svg{width:48px;height:48px}.start-prompt h2{font-size:1.5rem;margin-bottom:var(--spacing-sm)}.start-prompt p{color:var(--text-secondary);max-width:560px;margin:0 auto var(--spacing-xl)}.start-mode-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--spacing-md)}.start-mode-single{display:flex;justify-content:center}.start-mode-single .start-btn{max-width:320px}.start-btn{width:100%;display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-xl);border-radius:var(--radius-lg);font-size:1.1rem;font-weight:600;cursor:pointer;transition:all var(--transition-base)}.text-interview-btn{background:var(--accent-gradient);border:none;color:var(--bg-primary);box-shadow:0 4px 20px #3b82f64d}.voice-interview-btn{position:relative;background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-primary)}.start-btn:hover{transform:translateY(-3px)}.text-interview-btn:hover{box-shadow:0 8px 30px #3b82f666}.voice-interview-btn:hover{border-color:var(--accent-primary);background:#3b82f614}.start-btn svg{width:24px;height:24px}.voice-connecting-panel{text-align:center;padding:var(--spacing-2xl);background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);animation:fadeInUp .4s ease}.voice-connecting-spinner{width:52px;height:52px;margin:0 auto var(--spacing-lg);border:3px solid var(--bg-tertiary);border-top-color:var(--accent-primary);border-radius:50%;animation:rotate .8s linear infinite}.voice-connecting-panel h2{font-size:1.45rem;margin-bottom:var(--spacing-sm)}.voice-connecting-panel p{color:var(--text-secondary);margin-bottom:var(--spacing-lg)}.voice-panel-preview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--spacing-sm)}.voice-preview-member{padding:var(--spacing-sm);background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-md)}.voice-preview-member span{display:block;font-size:.9rem;font-weight:600}.voice-preview-member small{color:var(--text-secondary);font-size:.78rem}.voice-interview-room{padding:var(--spacing-xl);background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);animation:fadeInUp .45s ease}.voice-room-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.voice-room-header h2{font-size:1.35rem;margin-bottom:4px}.voice-room-header p{color:var(--text-secondary);font-size:.9rem}.voice-live-badge{padding:4px 10px;background:var(--success-bg);color:var(--success);border-radius:var(--radius-full);font-size:.75rem;font-weight:700}.voice-room-layout{display:grid;grid-template-columns:minmax(0,2.4fr) minmax(320px,1fr);gap:var(--spacing-lg);margin-bottom:var(--spacing-md)}.voice-room-main{min-width:0}.voice-panel-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--spacing-lg);margin-bottom:var(--spacing-lg)}.voice-panel-grid .voice-member-card:nth-child(3){grid-column:1 / span 2;width:74%;min-width:380px;justify-self:center}.voice-member-card{display:flex;align-items:center;justify-content:center;min-height:270px;padding:var(--spacing-lg);background:linear-gradient(135deg,#e6ecf3f2,#f8fafcf5);border:1px solid rgba(148,163,184,.35);border-radius:var(--radius-lg);position:relative;overflow:hidden;gap:0;animation:fadeInUp .45s ease backwards}.voice-member-card:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 30% 20%,rgba(255,255,255,.45),transparent 55%);pointer-events:none}.voice-member-card:nth-child(2n){background:linear-gradient(135deg,#f3ecf4e6,#f8fafcf5)}.voice-member-card:nth-child(3n){background:linear-gradient(135deg,#ebeff5f0,#f8fafcf5)}.voice-member-avatar{width:124px;height:124px;flex-shrink:0;border-radius:50%;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;background:#3b82f62e;color:var(--accent-primary);font-weight:700;font-size:1.2rem;box-shadow:0 10px 26px #0f172a29;z-index:1}.voice-member-avatar.manager{background:#22c55e33;color:var(--success)}.voice-member-avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%;position:relative;z-index:1;background:var(--bg-card)}.avatar-fallback{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;z-index:0}.voice-member-info{position:absolute;left:12px;bottom:12px;display:inline-flex;flex-direction:column;gap:2px;max-width:calc(100% - 20px);padding:7px 12px;border-radius:8px;background:#334155d1;border:1px solid rgba(148,163,184,.35);z-index:2}.voice-member-info h3{font-size:1rem;margin:0;color:#f8fafc;white-space:normal;overflow:visible;text-overflow:unset;word-break:break-word;line-height:1.25}.voice-member-info p{font-size:.8rem;margin:0;color:#e2e8f0eb;white-space:normal;overflow:visible;text-overflow:unset;word-break:break-word;line-height:1.25}.voice-member-card.speaking{border-color:#22c55eb3;box-shadow:0 0 0 2px #22c55e40}.speaking-indicator{position:absolute;top:10px;right:10px;font-size:.72rem;font-weight:700;color:var(--success);z-index:2}.voice-controls-row{display:flex;flex-wrap:wrap;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.voice-control-btn{display:inline-flex;align-items:center;gap:8px;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);border:1px solid var(--border-color);background:var(--bg-tertiary);color:var(--text-primary);font-size:.85rem;font-weight:600;cursor:pointer;transition:all var(--transition-base)}.voice-control-btn svg{width:16px;height:16px}.voice-control-btn:hover{border-color:var(--accent-primary);color:var(--accent-primary)}.voice-control-btn.mic-toggle.muted{color:var(--warning);border-color:#f59e0b73}.voice-control-btn.mic-toggle.active{color:var(--success);border-color:#22c55e73;background:#22c55e1f}.voice-control-btn.leave{color:var(--error);border-color:#ef444459}.voice-status-panel{padding:var(--spacing-md);margin-bottom:var(--spacing-sm);background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-md)}.voice-stage-pill{display:inline-flex;padding:4px 10px;border-radius:var(--radius-full);font-size:.73rem;font-weight:700;margin-bottom:var(--spacing-sm);border:1px solid transparent}.voice-stage-pill.stage-awaiting-confirmation{background:#f59e0b26;color:var(--warning);border-color:#f59e0b59}.voice-stage-pill.stage-loading-question,.voice-stage-pill.stage-evaluating{background:#3b82f626;color:#60a5fa;border-color:#3b82f659}.voice-stage-pill.stage-asking-question{background:#a855f726;color:#c084fc;border-color:#a855f759}.voice-stage-pill.stage-panel-introductions{background:#0ea5e926;color:#38bdf8;border-color:#0ea5e959}.voice-stage-pill.stage-awaiting-answer{background:#22c55e26;color:var(--success);border-color:#22c55e59}.voice-stage-pill.stage-awaiting-self-intro{background:#facc1529;color:#facc15;border-color:#facc1559}.voice-status-text{margin-bottom:var(--spacing-xs);color:var(--text-secondary);font-size:.9rem}.voice-answer-timer{font-size:.84rem;color:var(--text-secondary);margin-bottom:4px}.voice-answer-timer span{color:var(--error);font-weight:700}.voice-answer-time-actions{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:6px}.voice-answer-action-btn{border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-card);color:var(--text-primary);font-size:.8rem;font-weight:700;padding:6px 10px;cursor:pointer;transition:all var(--transition-base)}.voice-answer-action-btn.add{border-color:#3b82f666;color:#60a5fa}.voice-answer-action-btn.end{border-color:#ef444466;color:#f87171}.voice-answer-action-btn:hover{transform:translateY(-1px)}.voice-mic-state{color:var(--text-tertiary);font-size:.8rem}.voice-mic-state strong{color:var(--text-primary)}.voice-question-brief{padding:var(--spacing-md);margin-bottom:var(--spacing-sm);background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-md)}.voice-question-brief span{display:block;font-size:.75rem;font-weight:700;color:var(--accent-primary);margin-bottom:6px}.voice-question-brief p{color:var(--text-primary);font-size:.9rem;line-height:1.5}.voice-transcript-panel{padding:var(--spacing-md);background:#3b82f614;border:1px solid rgba(59,130,246,.3);border-left:3px solid #3b82f6;border-radius:var(--radius-md)}.voice-transcript-panel span{display:flex;align-items:center;font-size:.75rem;font-weight:700;color:#3b82f6;margin-bottom:6px;text-transform:uppercase;letter-spacing:.04em}.voice-transcript-panel p{font-size:.9rem;color:var(--text-secondary);min-height:22px;line-height:1.5}.voice-participants-panel{padding:var(--spacing-md);background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-lg)}.participants-panel-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-md)}.participants-panel-header h3{font-size:1rem;font-weight:700}.participants-panel-header span{padding:2px 8px;border-radius:var(--radius-full);background:var(--bg-card);border:1px solid var(--border-color);font-size:.75rem;color:var(--text-secondary)}.participants-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.participant-item{display:flex;align-items:flex-start;gap:var(--spacing-sm);padding:var(--spacing-sm);background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md)}.participant-avatar{width:32px;height:32px;border-radius:50%;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:700;color:var(--accent-primary);background:#3b82f62e;flex-shrink:0}.participant-avatar.manager{color:var(--success);background:#22c55e33}.participant-avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%;position:relative;z-index:1;background:var(--bg-card)}.participant-info{flex:1;min-width:0}.participant-info strong{display:block;font-size:.9rem;white-space:normal;overflow:visible;text-overflow:unset;word-break:break-word;line-height:1.25}.participant-info small{color:var(--text-secondary);font-size:.78rem;line-height:1.25}.participant-mic{font-size:.72rem;font-weight:700;color:var(--text-secondary)}.voice-live-caption{margin-top:var(--spacing-sm);padding:10px 14px;border-radius:var(--radius-md);border:1px solid rgba(168,85,247,.35);border-left:3px solid #a855f7;background:#581c8740}.caption-label{display:inline-flex;align-items:center;margin-bottom:6px;font-size:.72rem;font-weight:700;color:#c4b5fd;letter-spacing:.04em;text-transform:uppercase}.voice-live-caption p{margin:0;color:#e2e8f0;font-size:.92rem;line-height:1.5}.voice-live-caption strong{color:#f8fafc}.caption-placeholder{color:#e2e8f073;font-style:italic;font-size:.88rem}.loading-question{text-align:center;padding:var(--spacing-2xl);background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-xl)}.typing-indicator{display:flex;justify-content:center;gap:6px;margin-bottom:var(--spacing-lg)}.typing-indicator span{width:12px;height:12px;background:var(--accent-primary);border-radius:50%;animation:typing 1.4s infinite ease-in-out both}.typing-indicator span:nth-child(1){animation-delay:-.32s}.typing-indicator span:nth-child(2){animation-delay:-.16s}@keyframes typing{0%,80%,to{transform:scale(.6);opacity:.5}40%{transform:scale(1);opacity:1}}.loading-question p{color:var(--text-secondary)}.question-section{animation:fadeInUp .5s ease}.question-card{padding:var(--spacing-xl);background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);margin-bottom:var(--spacing-lg)}.question-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-lg)}.question-number{padding:6px 14px;background:var(--accent-gradient);color:var(--bg-primary);font-size:.85rem;font-weight:600;border-radius:var(--radius-full)}.question-type{display:flex;align-items:center;gap:var(--spacing-xs);color:var(--text-tertiary);font-size:.85rem}.question-type svg{width:16px;height:16px}.question-text{font-size:1.25rem;font-weight:500;line-height:1.6;color:var(--text-primary)}.answer-form{display:flex;flex-direction:column;gap:var(--spacing-lg)}.textarea-wrapper{position:relative}.answer-form textarea{width:100%;padding:var(--spacing-lg);background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);color:var(--text-primary);font-size:1rem;font-family:inherit;line-height:1.6;resize:vertical;min-height:200px;transition:all var(--transition-base)}.answer-form textarea:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 3px #3b82f61a}.answer-form textarea::placeholder{color:var(--text-tertiary)}.char-count{position:absolute;bottom:var(--spacing-md);right:var(--spacing-md);font-size:.8rem;color:var(--text-tertiary)}.answer-actions{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-lg)}.answer-tips{display:flex;align-items:center;gap:var(--spacing-sm);color:var(--text-tertiary);font-size:.85rem}.answer-tips svg{width:16px;height:16px;color:var(--accent-primary)}.answer-buttons{display:flex;align-items:center;justify-content:flex-end;gap:var(--spacing-sm);margin-left:auto}.voice-btn{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg);background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-primary);font-size:.95rem;font-weight:600;cursor:pointer;transition:all var(--transition-base)}.voice-btn svg{width:18px;height:18px}.voice-countdown{color:var(--error);font-weight:700}.voice-btn:hover:not(:disabled){border-color:var(--accent-primary);color:var(--accent-primary);background:#3b82f614}.voice-btn.listening{border-color:var(--success);color:var(--success);background:var(--success-bg)}.voice-btn:disabled{opacity:.6;cursor:not-allowed}.submit-btn{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-xl);background:var(--accent-gradient);border:none;border-radius:var(--radius-md);color:var(--bg-primary);font-size:1rem;font-weight:600;cursor:pointer;transition:all var(--transition-base);box-shadow:0 4px 15px #3b82f64d}.submit-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #3b82f666}.submit-btn:disabled{opacity:.6;cursor:not-allowed}.submit-btn svg{width:18px;height:18px}.score-section{animation:fadeInUp .5s ease}.score-header{text-align:center;margin-bottom:var(--spacing-xl)}.score-icon{width:64px;height:64px;margin:0 auto var(--spacing-md);display:flex;align-items:center;justify-content:center;background:var(--success-bg);border-radius:50%;color:var(--success)}.score-icon svg{width:32px;height:32px}.score-header h2{font-size:1.5rem;margin-bottom:var(--spacing-xs)}.score-header p{color:var(--text-secondary)}.overall-score{text-align:center;margin-bottom:var(--spacing-xl)}.score-circle{position:relative;width:180px;height:180px;margin:0 auto var(--spacing-md)}.score-circle svg{width:100%;height:100%;transform:rotate(-90deg)}.score-circle .score-bg{fill:none;stroke:var(--bg-tertiary);stroke-width:8}.score-circle .score-fill{fill:none;stroke-width:8;stroke-linecap:round;transition:stroke-dasharray 1s ease}.score-circle.excellent .score-fill{stroke:var(--success)}.score-circle.good .score-fill{stroke:#22c55e}.score-circle.fair .score-fill{stroke:var(--warning)}.score-circle.needs-work .score-fill{stroke:var(--error)}.score-value{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center}.score-value .value{display:block;font-size:3rem;font-weight:700;line-height:1}.score-circle.excellent .score-value .value{color:var(--success)}.score-circle.good .score-value .value{color:#22c55e}.score-circle.fair .score-value .value{color:var(--warning)}.score-circle.needs-work .score-value .value{color:var(--error)}.score-value .max{font-size:1rem;color:var(--text-tertiary)}.score-label{font-size:1rem;color:var(--text-secondary)}.score-breakdown{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-md);padding:var(--spacing-xl);background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);margin-bottom:var(--spacing-lg)}.score-item{padding:var(--spacing-md);background:var(--bg-tertiary);border-radius:var(--radius-md)}.score-item-header{display:flex;justify-content:space-between;margin-bottom:var(--spacing-sm)}.item-label{font-size:.9rem;color:var(--text-secondary)}.item-value{font-weight:600}.score-item.excellent .item-value{color:var(--success)}.score-item.good .item-value{color:#22c55e}.score-item.fair .item-value{color:var(--warning)}.score-item.needs-work .item-value{color:var(--error)}.score-bar{height:6px;background:var(--bg-secondary);border-radius:3px;overflow:hidden}.bar-fill{height:100%;border-radius:3px;transition:width 1s ease}.score-item.excellent .bar-fill{background:var(--success)}.score-item.good .bar-fill{background:#22c55e}.score-item.fair .bar-fill{background:var(--warning)}.score-item.needs-work .bar-fill{background:var(--error)}.feedback-card{padding:var(--spacing-xl);background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);margin-bottom:var(--spacing-xl)}.feedback-header{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-md);color:var(--accent-primary);font-weight:600}.feedback-header svg{width:20px;height:20px}.feedback-card p{color:var(--text-secondary);line-height:1.7}.score-actions{display:flex;gap:var(--spacing-md)}.next-btn,.finish-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-md);border-radius:var(--radius-lg);font-size:1rem;font-weight:600;cursor:pointer;transition:all var(--transition-base)}.next-btn{background:var(--accent-gradient);border:none;color:var(--bg-primary);box-shadow:0 4px 15px #3b82f64d}.next-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #3b82f666}.finish-btn{background:transparent;border:1px solid var(--border-color);color:var(--text-primary)}.finish-btn:hover{background:var(--success-bg);border-color:var(--success);color:var(--success)}.next-btn svg,.finish-btn svg{width:20px;height:20px}@media (max-width: 768px){.mock-interview-page{padding:80px var(--spacing-md) var(--spacing-xl)}.interview-header{flex-direction:column;align-items:stretch}.end-session-btn{justify-content:center}.score-breakdown{grid-template-columns:1fr}.answer-actions{flex-direction:column;align-items:stretch}.start-mode-grid{grid-template-columns:1fr}.start-mode-single .start-btn{max-width:100%}.voice-panel-preview,.voice-panel-grid{grid-template-columns:1fr}.voice-panel-grid .voice-member-card:nth-child(3){grid-column:auto;width:100%;min-width:0}.voice-room-layout{grid-template-columns:1fr}.voice-room-header,.voice-controls-row{flex-direction:column}.voice-control-btn{justify-content:center}.voice-answer-time-actions{flex-direction:column}.answer-tips{justify-content:center}.answer-buttons{width:100%;flex-direction:column}.voice-btn,.submit-btn{width:100%;justify-content:center}.score-actions{flex-direction:column}}.answer-error-banner{display:flex;align-items:flex-start;gap:10px;padding:12px 16px;border-radius:10px;margin-top:var(--spacing-md);font-size:.9rem;line-height:1.5}.answer-error-banner.guardrail{background:#fff7ed;border:1px solid #fb923c;color:#92400e}.answer-error-banner.general{background:#fef2f2;border:1px solid #fca5a5;color:#991b1b}.answer-error-banner .error-icon{width:18px;height:18px;flex-shrink:0;margin-top:2px}.feedback-page{min-height:100vh;padding:100px var(--spacing-xl) var(--spacing-2xl)}.feedback-container{max-width:800px;margin:0 auto}.feedback-loading{min-height:100vh;display:flex;align-items:center;justify-content:center}.loading-content{text-align:center}.loading-spinner{width:48px;height:48px;border:3px solid var(--bg-tertiary);border-top-color:var(--accent-primary);border-radius:50%;animation:rotate .8s linear infinite;margin:0 auto var(--spacing-lg)}.feedback-error-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:var(--spacing-xl)}.error-content{text-align:center;max-width:400px}.error-icon{width:80px;height:80px;margin:0 auto var(--spacing-lg);display:flex;align-items:center;justify-content:center;background:var(--error-bg);border-radius:50%;color:var(--error)}.error-icon svg{width:40px;height:40px}.error-content h2{font-size:1.5rem;margin-bottom:var(--spacing-sm)}.error-content p{color:var(--text-secondary);margin-bottom:var(--spacing-xl)}.back-link{display:inline-flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-xl);background:var(--accent-gradient);border-radius:var(--radius-md);color:var(--bg-primary);font-weight:600;text-decoration:none;transition:all var(--transition-base)}.back-link:hover{transform:translateY(-2px);box-shadow:0 4px 15px #3b82f64d}.feedback-hero{text-align:center;margin-bottom:var(--spacing-2xl);animation:fadeInDown .5s ease}.hero-badge{display:inline-flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-lg);background:var(--success-bg);color:var(--success);font-size:.9rem;font-weight:600;border-radius:var(--radius-full);margin-bottom:var(--spacing-lg)}.hero-badge svg{width:18px;height:18px}.feedback-hero h1{font-size:2.5rem;font-weight:700;margin-bottom:var(--spacing-sm);background:var(--accent-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hero-role{font-size:1.25rem;color:var(--text-secondary)}.score-hero-card{display:flex;align-items:center;gap:var(--spacing-2xl);padding:var(--spacing-2xl);background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);margin-bottom:var(--spacing-xl);animation:fadeInUp .5s ease backwards;animation-delay:.1s}.score-ring-large{position:relative;width:200px;height:200px;flex-shrink:0}.score-ring-large svg{width:100%;height:100%;transform:rotate(-90deg)}.score-ring-large .ring-bg{fill:none;stroke:var(--bg-tertiary);stroke-width:10}.score-ring-large .ring-fill{fill:none;stroke-width:10;stroke-linecap:round;transition:stroke-dasharray 1.5s ease}.score-ring-large.excellent .ring-fill{stroke:var(--success)}.score-ring-large.good .ring-fill{stroke:#22c55e}.score-ring-large.fair .ring-fill{stroke:var(--warning)}.score-ring-large.needs-work .ring-fill{stroke:var(--error)}.score-center{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center}.score-number{display:block;font-size:3.5rem;font-weight:800;line-height:1}.score-ring-large.excellent .score-number{color:var(--success)}.score-ring-large.good .score-number{color:#22c55e}.score-ring-large.fair .score-number{color:var(--warning)}.score-ring-large.needs-work .score-number{color:var(--error)}.score-max{font-size:1.25rem;color:var(--text-tertiary)}.score-message{flex:1}.score-message h2{font-size:1.75rem;margin-bottom:var(--spacing-sm)}.score-message p{font-size:1.1rem;color:var(--text-secondary);line-height:1.6}.session-details-card{padding:var(--spacing-xl);background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);margin-bottom:var(--spacing-xl);animation:fadeInUp .5s ease backwards;animation-delay:.2s}.session-details-card h3{display:flex;align-items:center;gap:var(--spacing-sm);font-size:1.1rem;margin-bottom:var(--spacing-lg)}.session-details-card h3 svg{width:20px;height:20px;color:var(--accent-primary)}.details-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-md)}.detail-item{padding:var(--spacing-md);background:var(--bg-tertiary);border-radius:var(--radius-md)}.detail-label{display:block;font-size:.8rem;color:var(--text-tertiary);margin-bottom:var(--spacing-xs)}.detail-value{font-weight:600;color:var(--text-primary)}.detail-value.score.excellent{color:var(--success)}.detail-value.score.good{color:#22c55e}.detail-value.score.fair{color:var(--warning)}.detail-value.score.needs-work{color:var(--error)}.status-badge{display:inline-block;padding:4px 12px;border-radius:var(--radius-full);font-size:.85rem;font-weight:600}.status-badge.completed{background:var(--success-bg);color:var(--success)}.status-badge.active{background:var(--warning-bg);color:var(--warning)}.tips-section{margin-bottom:var(--spacing-xl);animation:fadeInUp .5s ease backwards;animation-delay:.3s}.tips-section h3{display:flex;align-items:center;gap:var(--spacing-sm);font-size:1.1rem;margin-bottom:var(--spacing-lg)}.tips-section h3 svg{width:20px;height:20px;color:var(--accent-primary)}.tips-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-md)}.tip-card{padding:var(--spacing-lg);background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);transition:all var(--transition-base)}.tip-card:hover{transform:translateY(-3px);border-color:var(--border-accent);box-shadow:var(--shadow-glow)}.tip-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:var(--bg-tertiary);border-radius:var(--radius-md);color:var(--accent-primary);margin-bottom:var(--spacing-md)}.tip-icon svg{width:24px;height:24px}.tip-card h4{font-size:1rem;margin-bottom:var(--spacing-xs)}.tip-card p{font-size:.9rem;color:var(--text-secondary);line-height:1.5}.feedback-actions{display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-2xl);animation:fadeInUp .5s ease backwards;animation-delay:.4s}.action-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-lg);border-radius:var(--radius-lg);font-size:1rem;font-weight:600;text-decoration:none;transition:all var(--transition-base)}.action-btn.primary{background:var(--accent-gradient);color:var(--bg-primary);box-shadow:0 4px 15px #3b82f64d}.action-btn.primary:hover{transform:translateY(-3px);box-shadow:0 8px 25px #3b82f666}.action-btn.secondary{background:var(--bg-card);border:1px solid var(--border-color);color:var(--text-primary)}.action-btn.secondary:hover{border-color:var(--accent-primary);color:var(--accent-primary)}.action-btn svg{width:20px;height:20px}.quote-section{text-align:center;padding:var(--spacing-2xl);background:linear-gradient(135deg,#3b82f60d,#0ea5e90d);border:1px solid var(--border-color);border-radius:var(--radius-xl);animation:fadeInUp .5s ease backwards;animation-delay:.5s}.quote-section blockquote{font-size:1.25rem;font-style:italic;color:var(--text-primary);margin-bottom:var(--spacing-md);line-height:1.6}.quote-section cite{color:var(--text-tertiary);font-size:.95rem}@media (max-width: 768px){.feedback-page{padding:80px var(--spacing-md) var(--spacing-xl)}.feedback-hero h1{font-size:1.75rem}.score-hero-card{flex-direction:column;text-align:center}.score-ring-large{width:160px;height:160px}.score-number{font-size:2.5rem}.details-grid{grid-template-columns:repeat(2,1fr)}.tips-grid{grid-template-columns:1fr}.feedback-actions{flex-direction:column}}.study-plan-section{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-xl);padding:var(--spacing-xl);margin-bottom:var(--spacing-xl)}.study-plan-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--spacing-md);margin-bottom:var(--spacing-lg);flex-wrap:wrap}.study-plan-title-row{display:flex;align-items:center;gap:var(--spacing-md)}.study-plan-icon{width:44px;height:44px;background:linear-gradient(135deg,var(--accent-primary),var(--accent-secondary));border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;flex-shrink:0}.study-plan-icon svg{width:22px;height:22px;color:#fff;stroke:#fff}.study-plan-header h3{font-size:1.25rem;font-weight:700;color:var(--text-primary);margin:0}.study-plan-subtitle{font-size:.85rem;color:var(--text-muted);margin:2px 0 0}.study-plan-actions{display:flex;gap:var(--spacing-sm)}.plan-btn{display:flex;align-items:center;gap:6px;padding:8px 14px;border-radius:var(--radius-md);font-size:.85rem;font-weight:600;cursor:pointer;border:none;transition:all .2s ease}.plan-btn svg{width:14px;height:14px}.plan-btn.download{background:var(--accent-primary);color:#fff}.plan-btn.download:hover{opacity:.85}.plan-btn.regenerate{background:var(--bg-tertiary);color:var(--text-secondary);border:1px solid var(--border-primary)}.plan-btn.regenerate:hover:not(:disabled){background:var(--bg-hover);color:var(--text-primary)}.plan-btn:disabled{opacity:.5;cursor:not-allowed}.plan-loading{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-lg);background:var(--bg-tertiary);border-radius:var(--radius-lg);color:var(--text-secondary);font-size:.9rem}.loading-spinner.small{width:24px;height:24px;border-width:2px;margin:0;flex-shrink:0}.plan-limit-banner{display:flex;align-items:flex-start;gap:var(--spacing-md);padding:var(--spacing-lg);background:#fbbf241a;border:1px solid rgba(251,191,36,.3);border-radius:var(--radius-lg);color:var(--text-primary)}.plan-limit-banner svg{width:20px;height:20px;flex-shrink:0;color:#f59e0b;margin-top:2px}.plan-limit-banner strong{display:block;margin-bottom:4px}.plan-limit-banner p{font-size:.875rem;color:var(--text-secondary);margin:0}.upgrade-btn-small{display:inline-flex;align-items:center;padding:6px 14px;background:linear-gradient(135deg,#f59e0b,#ef4444);color:#fff;border-radius:var(--radius-md);font-size:.8rem;font-weight:700;text-decoration:none;white-space:nowrap;flex-shrink:0;margin-top:4px;transition:opacity .2s}.upgrade-btn-small:hover{opacity:.85}.plan-error-banner{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-lg);background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:var(--radius-lg);font-size:.875rem;color:var(--text-secondary)}.plan-summary-card{background:var(--bg-tertiary);border-radius:var(--radius-lg);padding:var(--spacing-lg);margin-bottom:var(--spacing-lg)}.plan-meta{display:flex;gap:var(--spacing-lg);margin-bottom:var(--spacing-md);flex-wrap:wrap}.plan-meta-item{display:flex;align-items:center;gap:6px;font-size:.875rem;font-weight:600;color:var(--text-secondary)}.plan-meta-item svg{width:14px;height:14px;color:var(--accent-primary)}.plan-weakness-summary{font-size:.9rem;color:var(--text-secondary);line-height:1.6}.plan-weakness-summary strong{color:var(--text-primary)}.week-tabs{display:flex;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg);border-bottom:1px solid var(--border-primary);padding-bottom:var(--spacing-sm);flex-wrap:wrap}.week-tab{padding:6px 18px;border-radius:var(--radius-md);font-size:.875rem;font-weight:600;cursor:pointer;background:none;border:1px solid var(--border-primary);color:var(--text-secondary);transition:all .2s}.week-tab:hover{background:var(--bg-hover);color:var(--text-primary)}.week-tab.active{background:var(--accent-primary);color:#fff;border-color:var(--accent-primary)}.plan-tasks{display:flex;flex-direction:column;gap:var(--spacing-md)}.task-card{background:var(--bg-primary);border:1px solid var(--border-primary);border-left:4px solid var(--border-primary);border-radius:var(--radius-lg);padding:var(--spacing-lg);transition:border-color .2s}.task-card.priority-high{border-left-color:#ef4444}.task-card.priority-medium{border-left-color:#f59e0b}.task-card.priority-low{border-left-color:#22c55e}.task-header{display:flex;align-items:flex-start;gap:var(--spacing-md);margin-bottom:var(--spacing-sm)}.task-activity-icon{font-size:1.5rem;line-height:1;flex-shrink:0}.task-title-group{flex:1}.task-title-group h4{font-size:1rem;font-weight:700;color:var(--text-primary);margin:0 0 4px}.task-type-badge{font-size:.75rem;font-weight:600;color:var(--accent-primary);background:#6366f11a;padding:2px 8px;border-radius:999px}.task-meta-right{display:flex;flex-direction:column;align-items:flex-end;gap:4px;flex-shrink:0}.priority-badge{font-size:.7rem;font-weight:700;padding:2px 8px;border-radius:999px;text-transform:uppercase}.priority-badge.high{background:#ef444426;color:#ef4444}.priority-badge.medium{background:#f59e0b26;color:#f59e0b}.priority-badge.low{background:#22c55e26;color:#22c55e}.task-hours{font-size:.8rem;color:var(--text-muted);font-weight:600}.task-description{font-size:.875rem;color:var(--text-secondary);line-height:1.6;margin:0;padding-left:calc(1.5rem + var(--spacing-md))}.plan-generated-at{font-size:.78rem;color:var(--text-muted);text-align:right;margin-top:var(--spacing-md);margin-bottom:0}.profile-settings-page{min-height:100vh;padding:100px var(--spacing-xl) var(--spacing-2xl)}.profile-loading{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-lg)}.loading-spinner{width:48px;height:48px;border:3px solid var(--bg-tertiary);border-top-color:var(--accent-primary);border-radius:50%;animation:rotate .8s linear infinite}.profile-header{margin-bottom:var(--spacing-xl)}.back-button{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:transparent;border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-secondary);font-size:.9rem;cursor:pointer;transition:all var(--transition-base);margin-bottom:var(--spacing-lg)}.back-button:hover{border-color:var(--accent-primary);color:var(--accent-primary)}.back-button svg{width:18px;height:18px}.profile-header h1{font-size:2rem;font-weight:700;margin-bottom:var(--spacing-xs);background:var(--accent-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.profile-header p{color:var(--text-secondary)}.error-message,.success-message{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md);border-radius:var(--radius-md);margin-bottom:var(--spacing-lg);animation:scaleIn .3s ease}.error-message{background:var(--error-bg);border:1px solid rgba(239,68,68,.3);color:var(--error)}.success-message{background:var(--success-bg);border:1px solid rgba(16,185,129,.3);color:var(--success)}.error-message svg,.success-message svg{width:20px;height:20px;flex-shrink:0}.profile-content{display:flex;flex-direction:column;gap:var(--spacing-xl)}.profile-section{padding:var(--spacing-xl);background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-xl)}.profile-section h2{display:flex;align-items:center;gap:var(--spacing-sm);font-size:1.25rem;font-weight:600;margin-bottom:var(--spacing-lg)}.profile-section h2 svg{width:24px;height:24px;color:var(--accent-primary)}.picture-upload-section{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-lg)}.picture-preview{position:relative;width:150px;height:150px;border-radius:50%;overflow:hidden;border:3px solid var(--border-color);transition:all var(--transition-base)}.picture-preview:hover{border-color:var(--accent-primary)}.picture-preview img{width:100%;height:100%;object-fit:cover}.picture-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:var(--accent-gradient);color:var(--bg-primary);font-size:3rem;font-weight:700}.picture-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#0009;opacity:0;transition:opacity var(--transition-base)}.picture-preview:hover .picture-overlay{opacity:1}.change-picture-btn{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);background:var(--accent-primary);border:none;border-radius:var(--radius-md);color:var(--bg-primary);font-size:.9rem;font-weight:500;cursor:pointer;transition:all var(--transition-base)}.change-picture-btn:hover{background:var(--accent-secondary)}.change-picture-btn svg{width:18px;height:18px}.file-input-hidden{display:none}.picture-actions{display:flex;gap:var(--spacing-md)}.upload-btn,.cancel-btn{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--radius-md);font-weight:500;cursor:pointer;transition:all var(--transition-base)}.upload-btn{background:var(--accent-gradient);border:none;color:var(--bg-primary)}.upload-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 15px #3b82f64d}.upload-btn:disabled{opacity:.6;cursor:not-allowed}.cancel-btn{background:transparent;border:1px solid var(--border-color);color:var(--text-secondary)}.cancel-btn:hover{background:var(--bg-tertiary);color:var(--text-primary)}.upload-btn svg{width:18px;height:18px}.picture-hint{font-size:.85rem;color:var(--text-tertiary);text-align:center}.profile-form{display:flex;flex-direction:column;gap:var(--spacing-lg)}.form-group{display:flex;flex-direction:column;gap:var(--spacing-sm)}.form-group label{font-size:.9rem;font-weight:500;color:var(--text-secondary)}.form-group input{padding:var(--spacing-md) var(--spacing-lg);background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-primary);font-size:1rem;transition:all var(--transition-base)}.form-group input:focus{outline:none;border-color:var(--accent-primary);background:var(--bg-secondary)}.form-group input::placeholder{color:var(--text-tertiary)}.disabled-input{opacity:.6;cursor:not-allowed;background:var(--bg-secondary)!important}.input-hint{font-size:.8rem;color:var(--text-tertiary)}.save-btn{display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-xl);background:var(--accent-gradient);border:none;border-radius:var(--radius-md);color:var(--bg-primary);font-size:1rem;font-weight:600;cursor:pointer;transition:all var(--transition-base);box-shadow:0 4px 15px #3b82f64d;align-self:flex-start}.save-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #3b82f666}.save-btn:disabled{opacity:.6;cursor:not-allowed}.save-btn svg{width:20px;height:20px}.button-spinner{width:18px;height:18px;border:2px solid rgba(10,10,15,.3);border-top-color:var(--bg-primary);border-radius:50%;animation:rotate .8s linear infinite}.theme-section{display:flex;flex-direction:column;gap:var(--spacing-md)}.theme-options{display:flex;gap:var(--spacing-lg)}.theme-option{flex:1;display:flex;flex-direction:column;align-items:center;gap:var(--spacing-md);padding:var(--spacing-lg);background:var(--bg-tertiary);border:2px solid var(--border-color);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-base)}.theme-option:hover{border-color:var(--border-accent);transform:translateY(-2px)}.theme-option.active{border-color:var(--accent-primary);background:#3b82f61a;box-shadow:0 4px 15px #3b82f633}.theme-preview{width:80px;height:80px;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;border:2px solid var(--border-color);transition:all var(--transition-base)}.theme-preview.dark{background:linear-gradient(135deg,#0a0a0f,#12121a)}.theme-preview.light{background:linear-gradient(135deg,#fff,#f5f5f5)}.theme-option.active .theme-preview{border-color:var(--accent-primary)}.theme-icon{width:40px;height:40px;display:flex;align-items:center;justify-content:center;color:var(--accent-primary)}.theme-icon svg{width:100%;height:100%}.theme-option span{font-weight:600;color:var(--text-primary)}.theme-hint{font-size:.85rem;color:var(--text-tertiary);text-align:center}.profile-container{max-width:800px;margin:0 auto;animation:fadeInUp .5s ease}.profile-container.wide{max-width:960px}.profile-hero{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-xl);padding:var(--spacing-xl);margin-bottom:var(--spacing-lg)}.hero-content{display:flex;align-items:center;gap:var(--spacing-lg);margin-top:var(--spacing-md)}.hero-avatar{width:88px;height:88px;border-radius:50%;overflow:hidden;background:var(--accent-gradient);display:flex;align-items:center;justify-content:center;font-size:2rem;font-weight:700;color:#fff;cursor:pointer;position:relative;flex-shrink:0}.hero-avatar img{width:100%;height:100%;object-fit:cover}.avatar-edit-badge{position:absolute;bottom:0;right:0;width:28px;height:28px;background:var(--bg-primary);border:2px solid var(--border-color);border-radius:50%;display:flex;align-items:center;justify-content:center}.avatar-edit-badge svg{width:14px;height:14px}.hero-info h1{font-size:1.5rem;margin-bottom:4px}.hero-info p{color:var(--text-secondary);font-size:.9rem;margin-bottom:8px}.plan-badge{display:inline-block;padding:4px 12px;border-radius:999px;font-size:.78rem;font-weight:600}.plan-badge.free{background:#94a3b826;color:var(--text-secondary)}.plan-badge.premium{background:#fbbf2426;color:#fbbf24}.hero-upload-actions{display:flex;gap:var(--spacing-sm);margin-top:var(--spacing-md)}.profile-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-lg)}.profile-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--spacing-lg)}.profile-card h2{font-size:1rem;font-weight:600;margin-bottom:var(--spacing-md);display:flex;align-items:center;gap:8px}.profile-card h2 svg{width:18px;height:18px;color:var(--accent-primary)}.subscription-card{grid-column:1 / -1}.card-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md)}.card-head h2{margin-bottom:0}.card-link{font-size:.85rem;color:var(--accent-primary);text-decoration:none}.card-link:hover{text-decoration:underline}.sub-notice{padding:12px 14px;border-radius:var(--radius-md);font-size:.88rem;margin-bottom:var(--spacing-md);line-height:1.5}.sub-notice.warning{background:#fbbf241a;border:1px solid rgba(251,191,36,.3);color:#fbbf24}.sub-notice.info{background:#6366f114;border:1px solid rgba(99,102,241,.2);color:var(--text-secondary)}.usage-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.usage-item{background:var(--bg-primary);border-radius:var(--radius-md);padding:var(--spacing-md);text-align:center}.usage-label{display:block;font-size:.75rem;color:var(--text-tertiary);margin-bottom:4px}.usage-value{font-size:1.1rem;font-weight:700;color:var(--accent-primary)}.sub-actions{display:flex;gap:var(--spacing-sm);flex-wrap:wrap}.sub-btn{padding:10px 18px;border-radius:var(--radius-md);font-weight:600;font-size:.9rem;cursor:pointer;border:none}.sub-btn.primary{background:var(--accent-gradient);color:#fff}.sub-btn.danger-outline{background:transparent;border:1px solid rgba(239,68,68,.4);color:#ef4444}.sub-btn:disabled{opacity:.6;cursor:not-allowed}.form-row-readonly{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.form-row-readonly label{display:block;font-size:.78rem;color:var(--text-tertiary);margin-bottom:2px}.form-row-readonly span{font-size:.9rem;color:var(--text-secondary)}.theme-options.compact{display:flex;gap:var(--spacing-sm)}.theme-options.compact .theme-option{flex:1;padding:12px;border-radius:var(--radius-md);border:1px solid var(--border-color);background:var(--bg-primary);cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;color:var(--text-primary)}.theme-options.compact .theme-option.active{border-color:var(--accent-primary);background:#6366f11a}.quick-links{display:flex;flex-direction:column;gap:var(--spacing-sm)}.quick-links a{color:var(--accent-primary);text-decoration:none;font-size:.9rem;padding:8px 0;border-bottom:1px solid var(--border-color)}.quick-links a:last-child{border-bottom:none}.quick-links a:hover{text-decoration:underline}.profile-form.compact .form-group{margin-bottom:var(--spacing-md)}@media (max-width: 768px){.profile-grid,.usage-grid,.form-row-readonly{grid-template-columns:1fr}.hero-content{flex-direction:column;text-align:center}}@media (max-width: 768px){.profile-settings-page{padding:80px var(--spacing-md) var(--spacing-xl)}.theme-options{flex-direction:column}.picture-actions{flex-direction:column;width:100%}.upload-btn,.cancel-btn{width:100%;justify-content:center}}.subscription-page{min-height:100vh;padding:100px var(--spacing-xl) var(--spacing-2xl)}.subscription-container{max-width:960px;margin:0 auto}.subscription-loading{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-md);color:var(--text-secondary)}.subscription-loading .loading-spinner{width:48px;height:48px;border:4px solid var(--bg-tertiary);border-top-color:var(--accent-primary);border-radius:50%;animation:rotate .8s linear infinite}.subscription-header{text-align:center;margin-bottom:var(--spacing-xl)}.subscription-header h1{font-size:2rem;font-weight:700;margin-bottom:var(--spacing-xs);background:var(--accent-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.subscription-header p{color:var(--text-secondary)}.subscription-alert{padding:var(--spacing-md);border-radius:var(--radius-md);margin-bottom:var(--spacing-lg);font-size:.9rem}.subscription-alert.error{background:var(--error-bg);color:var(--error)}.subscription-alert.success{background:var(--success-bg);color:var(--success)}.current-plan-banner{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--spacing-md);padding:var(--spacing-lg);background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);margin-bottom:var(--spacing-xl)}.cancel-pending-label,.expires-label{font-size:.82rem;color:#fbbf24;margin-top:4px}.expires-label{color:var(--text-secondary)}.current-plan-actions{display:flex;gap:var(--spacing-sm)}.cancel-sub-btn{padding:8px 16px;border-radius:var(--radius-md);font-size:.85rem;font-weight:600;cursor:pointer;background:transparent;border:1px solid rgba(239,68,68,.4);color:#ef4444}.resume-sub-btn{padding:8px 16px;border-radius:var(--radius-md);font-size:.85rem;font-weight:600;cursor:pointer;background:var(--accent-gradient);border:none;color:#fff}.plan-current-note{font-size:.82rem;color:var(--text-tertiary);margin-top:8px;text-align:center}.current-plan-info{display:flex;flex-direction:column}.current-label{font-size:.8rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-tertiary)}.current-name{font-size:1.4rem;font-weight:700}.usage-pill{display:inline-flex;padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-tertiary);border-radius:var(--radius-full);font-size:.85rem;font-weight:500}.plans-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-lg)}.plan-card{position:relative;display:flex;flex-direction:column;padding:var(--spacing-xl);background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);transition:all var(--transition-base)}.plan-card.premium{border-color:var(--accent-primary)}.plan-card.current{outline:2px solid var(--success);outline-offset:-2px}.plan-ribbon{position:absolute;top:var(--spacing-md);right:var(--spacing-md);padding:4px var(--spacing-sm);background:var(--accent-gradient);color:var(--bg-primary);font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;border-radius:var(--radius-full)}.plan-card-head h3{font-size:1.25rem;margin-bottom:var(--spacing-sm)}.plan-price{display:flex;align-items:baseline;gap:var(--spacing-xs);margin-bottom:var(--spacing-sm)}.price-amount{font-size:1.9rem;font-weight:800}.price-period{color:var(--text-tertiary);font-size:.85rem}.plan-desc{color:var(--text-secondary);font-size:.9rem;margin-bottom:var(--spacing-md)}.plan-features{list-style:none;padding:0;margin:0 0 var(--spacing-xl);display:flex;flex-direction:column;gap:var(--spacing-sm);flex:1}.plan-features li{display:flex;align-items:center;gap:var(--spacing-sm);font-size:.9rem}.plan-features li.excluded .feature-text{color:var(--text-tertiary)}.feature-icon{width:22px;height:22px;display:flex;align-items:center;justify-content:center;border-radius:50%;flex-shrink:0}.plan-features li.included .feature-icon{background:var(--success-bg);color:var(--success)}.plan-features li.excluded .feature-icon{background:var(--bg-tertiary);color:var(--text-tertiary)}.feature-icon svg{width:13px;height:13px}.plan-action{padding:var(--spacing-md);border-radius:var(--radius-lg);font-size:1rem;font-weight:600;cursor:pointer;border:1px solid var(--border-color);transition:all var(--transition-base)}.plan-action.primary{background:var(--accent-gradient);border-color:transparent;color:var(--bg-primary)}.plan-action.primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 25px #3b82f666}.plan-action.secondary{background:transparent;color:var(--text-primary)}.plan-action.secondary:hover:not(:disabled){border-color:var(--accent-primary);color:var(--accent-primary)}.plan-action:disabled{opacity:.6;cursor:not-allowed}.subscription-footnote{text-align:center;color:var(--text-tertiary);font-size:.82rem;margin-top:var(--spacing-xl)}.payhere-btn{position:relative;display:flex;flex-direction:column;align-items:center;gap:4px}.payhere-badge{font-size:.68rem;font-weight:500;letter-spacing:.04em;opacity:.75}.payhere-trust{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-sm);margin-top:var(--spacing-xl);padding:var(--spacing-md);border-top:1px solid var(--border-color);color:var(--text-secondary);font-size:.82rem;text-align:center}.payhere-logo{max-height:32px;object-fit:contain}.payment-history{margin-top:var(--spacing-2xl)}.payment-history h2{font-size:1.2rem;font-weight:600;color:var(--text-primary);margin-bottom:var(--spacing-md)}.payment-table-wrap{overflow-x:auto;border-radius:12px;border:1px solid var(--border-color)}.payment-table{width:100%;border-collapse:collapse;font-size:.88rem}.payment-table th{background:var(--bg-secondary, #f5f5f5);color:var(--text-secondary);font-weight:600;text-align:left;padding:10px 14px;border-bottom:1px solid var(--border-color);white-space:nowrap}.payment-table td{padding:10px 14px;border-bottom:1px solid var(--border-color);color:var(--text-primary);vertical-align:middle}.payment-table tr:last-child td{border-bottom:none}.order-id{font-family:monospace;font-size:.78rem;color:var(--text-secondary)}.status-badge{display:inline-block;padding:2px 10px;border-radius:20px;font-size:.75rem;font-weight:600;letter-spacing:.02em}.badge-success{background:#d1fae5;color:#065f46}.badge-warning{background:#fef9c3;color:#92400e}.badge-error{background:#fee2e2;color:#991b1b}.badge-neutral{background:#f3f4f6;color:#374151}@media (max-width: 768px){.subscription-page{padding:80px var(--spacing-md) var(--spacing-xl)}.plans-grid{grid-template-columns:1fr}.current-plan-banner{flex-direction:column;align-items:flex-start}}.payment-result-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:var(--spacing-xl);background:var(--bg-primary)}.payment-result-card{max-width:500px;width:100%;background:var(--bg-secondary, #fff);border-radius:20px;padding:var(--spacing-2xl) var(--spacing-xl);text-align:center;box-shadow:0 8px 32px #0000001a;border-top:5px solid transparent}.result-success{border-color:#10b981}.result-checking{border-color:#6366f1}.result-pending{border-color:#f59e0b}.result-error{border-color:#ef4444}.result-cancelled{border-color:#9ca3af}.result-icon{font-size:3.5rem;margin-bottom:var(--spacing-md);line-height:1}.result-title{font-size:1.6rem;font-weight:700;color:var(--text-primary);margin-bottom:var(--spacing-sm)}.result-body{color:var(--text-secondary);font-size:.95rem;line-height:1.6;margin-bottom:var(--spacing-md)}.result-order{font-size:.8rem;color:var(--text-tertiary);margin-bottom:var(--spacing-lg)}.result-order code{background:var(--bg-tertiary, #f3f4f6);padding:2px 6px;border-radius:4px;font-family:monospace;font-size:.78rem}.result-actions{display:flex;flex-direction:column;gap:var(--spacing-sm)}.result-actions .btn-primary{padding:12px 24px;border-radius:10px;font-weight:600;font-size:.95rem;cursor:pointer;border:none;background:var(--color-primary, #6366f1);color:#fff;transition:opacity .2s}.result-actions .btn-primary:hover{opacity:.88}.result-actions .btn-secondary{padding:10px 24px;border-radius:10px;font-weight:500;font-size:.9rem;cursor:pointer;background:transparent;border:1px solid var(--border-color);color:var(--text-secondary);transition:background .2s}.result-actions .btn-secondary:hover{background:var(--bg-tertiary, #f3f4f6)}.sv-page{min-height:100vh;padding:100px var(--spacing-xl) var(--spacing-2xl)}.sv-container{max-width:1100px;margin:0 auto}.sv-loading{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-md);color:var(--text-secondary)}.sv-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-xl);flex-wrap:wrap;gap:var(--spacing-md)}.sv-header h1{display:flex;align-items:center;gap:10px;font-size:1.6rem;font-weight:700;color:var(--text-primary)}.sv-header h1 svg{width:26px;height:26px;color:#6366f1}.sv-refresh{padding:8px 18px;border-radius:8px;border:1px solid var(--border-color);background:transparent;color:var(--text-secondary);font-size:.88rem;cursor:pointer;transition:background .2s}.sv-refresh:hover{background:var(--bg-secondary)}.sv-alert.error{background:#fef2f2;border:1px solid #fca5a5;color:#991b1b;padding:12px 16px;border-radius:10px;margin-bottom:var(--spacing-lg);font-size:.9rem}.sv-stats-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:var(--spacing-md);margin-bottom:var(--spacing-xl)}.stat-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:var(--spacing-md) var(--spacing-lg);display:flex;flex-direction:column;gap:4px}.stat-card.breakdown{grid-column:span 2}.stat-value{font-size:2rem;font-weight:700;color:var(--text-primary);line-height:1}.stat-card.critical .stat-value{color:#dc2626}.stat-card.high .stat-value{color:#ea580c}.stat-card.total .stat-value{color:#6366f1}.stat-label{font-size:.78rem;color:var(--text-secondary);font-weight:500}.stat-card.breakdown ul{list-style:none;padding:0;margin:8px 0 0;display:flex;flex-direction:column;gap:4px;font-size:.85rem;color:var(--text-secondary)}.sv-table-section h2{font-size:1.1rem;font-weight:600;color:var(--text-primary);margin-bottom:var(--spacing-md)}.sv-empty{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-md);padding:var(--spacing-2xl);color:var(--text-secondary);background:var(--bg-secondary);border:1px dashed var(--border-color);border-radius:16px;text-align:center}.sv-empty svg{width:40px;height:40px;opacity:.35}.sv-table-wrap{overflow-x:auto;border-radius:12px;border:1px solid var(--border-color)}.sv-table{width:100%;border-collapse:collapse;font-size:.86rem}.sv-table th{background:var(--bg-secondary);color:var(--text-secondary);font-weight:600;text-align:left;padding:10px 14px;border-bottom:1px solid var(--border-color);white-space:nowrap}.sv-table td{padding:10px 14px;border-bottom:1px solid var(--border-color);color:var(--text-primary);vertical-align:middle}.sv-table tr:last-child td{border-bottom:none}.expanded-row td{background:var(--bg-secondary)}.sv-time{font-size:.78rem;color:var(--text-secondary);white-space:nowrap}.sv-user{font-weight:500}.anonymous{color:var(--text-tertiary);font-style:italic}.sv-type{font-size:.78rem;background:var(--bg-tertiary, #f3f4f6);padding:2px 6px;border-radius:4px}.sv-rule{font-size:.78rem;color:var(--text-secondary)}.sev-pill{display:inline-block;padding:2px 10px;border-radius:20px;font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.sev-critical{background:#fee2e2;color:#991b1b}.sev-high{background:#ffedd5;color:#c2410c}.sev-medium{background:#fef9c3;color:#92400e}.sev-low{background:#f0fdf4;color:#166534}.sv-expand{padding:4px 12px;border-radius:6px;font-size:.78rem;border:1px solid var(--border-color);background:transparent;color:var(--text-secondary);cursor:pointer;white-space:nowrap;transition:background .15s}.sv-expand:hover{background:var(--bg-tertiary, #f3f4f6)}.sv-detail-row td{background:var(--bg-tertiary, #f9fafb)}.sv-detail{padding:12px 4px;display:flex;flex-direction:column;gap:var(--spacing-sm)}.sv-detail-section strong{display:block;font-size:.78rem;color:var(--text-secondary);margin-bottom:4px}.sv-detail-section pre{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:6px;padding:10px 12px;font-size:.78rem;white-space:pre-wrap;word-break:break-all;color:#dc2626;margin:0;max-height:200px;overflow-y:auto}.sv-detail-section p{font-size:.83rem;color:var(--text-secondary);margin:0;line-height:1.5}@media (max-width: 768px){.sv-page{padding:80px var(--spacing-md) var(--spacing-xl)}.stat-card.breakdown{grid-column:span 1}}.eval-page{min-height:100vh;padding:100px var(--spacing-xl) var(--spacing-2xl)}.eval-container{max-width:1200px;margin:0 auto}.eval-header{display:flex;align-items:flex-start;margin-bottom:var(--spacing-xl)}.eval-header h1{display:flex;align-items:center;gap:10px;font-size:1.6rem;font-weight:700;color:var(--text-primary)}.eval-header h1 svg{width:26px;height:26px;color:#6366f1}.eval-header p{color:var(--text-secondary);font-size:.9rem;margin-top:4px}.eval-alert{padding:12px 16px;border-radius:10px;margin-bottom:var(--spacing-lg);font-size:.9rem}.eval-alert.error{background:#fef2f2;border:1px solid #fca5a5;color:#991b1b}.eval-alert.success{background:#f0fdf4;border:1px solid #86efac;color:#166534}.eval-split{display:grid;grid-template-columns:260px 1fr;gap:var(--spacing-lg);align-items:start}.dataset-sidebar{border:1px solid var(--border-color);border-radius:14px;overflow:hidden;background:var(--bg-secondary)}.sidebar-head{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;font-weight:600;font-size:.88rem;color:var(--text-secondary);border-bottom:1px solid var(--border-color)}.icon-btn{background:none;border:none;cursor:pointer;font-size:1.1rem;color:var(--text-secondary)}.new-dataset-form{padding:12px;display:flex;flex-direction:column;gap:6px;border-bottom:1px solid var(--border-color)}.new-dataset-form input{padding:7px 10px;border-radius:8px;border:1px solid var(--border-color);background:var(--bg-primary);color:var(--text-primary);font-size:.85rem;width:100%}.dataset-list{list-style:none;padding:8px;margin:0;max-height:420px;overflow-y:auto}.dataset-item{padding:10px 12px;border-radius:8px;cursor:pointer;margin-bottom:4px;transition:background .15s}.dataset-item:hover{background:var(--bg-primary)}.dataset-item.active{background:var(--color-primary, #6366f1);color:#fff}.dataset-item.active small{color:#ffffffbf}.dataset-item strong{display:block;font-size:.88rem}.dataset-item small{font-size:.75rem;color:var(--text-tertiary)}.dataset-empty{color:var(--text-tertiary);font-size:.82rem;padding:12px}.eval-main{border:1px solid var(--border-color);border-radius:14px;background:var(--bg-secondary);overflow:hidden}.eval-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-2xl);color:var(--text-tertiary);gap:var(--spacing-md);text-align:center}.eval-placeholder svg{width:48px;height:48px;opacity:.3}.eval-dataset-title{padding:16px 20px;border-bottom:1px solid var(--border-color)}.eval-dataset-title h2{font-size:1.15rem;font-weight:700}.eval-dataset-title p{font-size:.85rem;color:var(--text-secondary);margin-top:2px}.eval-tabs{display:flex;border-bottom:1px solid var(--border-color);padding:0 12px}.eval-tab{padding:10px 18px;background:none;border:none;border-bottom:2px solid transparent;color:var(--text-secondary);font-size:.88rem;cursor:pointer;transition:color .15s}.eval-tab.active{color:var(--color-primary, #6366f1);border-bottom-color:var(--color-primary, #6366f1);font-weight:600}.tab-content{padding:var(--spacing-md) var(--spacing-lg)}.tab-actions{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-md)}.cases-count{font-size:.85rem;color:var(--text-secondary)}.empty-state{padding:var(--spacing-xl);text-align:center;color:var(--text-tertiary);font-size:.88rem;background:var(--bg-primary);border-radius:10px;border:1px dashed var(--border-color)}.case-list{display:flex;flex-direction:column;gap:8px}.case-card{border:1px solid var(--border-color);border-radius:10px;overflow:hidden;background:var(--bg-primary)}.case-card-head{padding:12px 16px;cursor:pointer}.case-meta{display:flex;align-items:center;gap:8px;margin-bottom:6px}.case-idx{font-size:.75rem;color:var(--text-tertiary);font-weight:600}.case-question{font-size:.88rem;color:var(--text-primary);margin-bottom:8px;line-height:1.4}.case-scores{display:flex;align-items:center;justify-content:space-between;font-size:.82rem;color:var(--text-secondary)}.toggle-btn{background:none;border:none;cursor:pointer;font-size:.75rem;color:var(--text-tertiary)}.case-detail{padding:0 16px 14px;border-top:1px solid var(--border-color)}.case-section{margin-top:10px;font-size:.85rem;line-height:1.5;color:var(--text-secondary)}.case-section strong{color:var(--text-primary)}.case-scores-grid{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.score-chip{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:6px;padding:4px 10px;font-size:.78rem;display:flex;flex-direction:column;align-items:center}.score-chip span{color:var(--text-tertiary)}.case-notes{font-size:.78rem;color:var(--text-tertiary);margin-top:8px;font-style:italic}.difficulty-badge,.category-badge{padding:2px 9px;border-radius:20px;font-size:.72rem;font-weight:600;text-transform:uppercase}.diff-easy{background:#dcfce7;color:#166534}.diff-medium{background:#fef9c3;color:#92400e}.diff-hard{background:#fee2e2;color:#991b1b}.category-badge{background:var(--bg-tertiary, #f3f4f6);color:var(--text-secondary)}.run-progress{display:flex;align-items:center;gap:12px;padding:var(--spacing-md);font-size:.88rem;color:var(--text-secondary)}.runs-list{display:flex;flex-direction:column;gap:8px;margin-top:var(--spacing-md)}.run-card{border:1px solid var(--border-color);border-radius:10px;padding:14px 18px;background:var(--bg-primary)}.run-card.status-completed{border-left:4px solid #10b981}.run-card.status-failed{border-left:4px solid #ef4444}.run-card.status-running{border-left:4px solid #6366f1}.run-head{display:flex;align-items:center;gap:12px;margin-bottom:8px}.run-id{font-weight:700;font-size:.88rem}.run-time{font-size:.78rem;color:var(--text-tertiary);margin-left:auto}.run-status{padding:2px 10px;border-radius:20px;font-size:.72rem;font-weight:700;text-transform:uppercase}.run-status.completed{background:#dcfce7;color:#166534}.run-status.failed{background:#fee2e2;color:#991b1b}.run-status.running{background:#ede9fe;color:#6d28d9}.run-stats{font-size:.82rem;color:var(--text-secondary);display:flex;gap:16px;margin-bottom:10px}.run-failed{color:#ef4444;font-weight:600}.report-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:var(--spacing-md)}.report-title h3{font-size:1.1rem;font-weight:700}.report-title p{font-size:.85rem;color:var(--text-secondary);margin-top:2px}.quality-badge{color:#fff;padding:6px 18px;border-radius:20px;font-size:.82rem;font-weight:700;letter-spacing:.04em}.interpretation{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:10px;padding:14px 18px;font-size:.88rem;color:var(--text-secondary);line-height:1.7;margin-bottom:var(--spacing-lg)}.report-stats{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:var(--spacing-sm);margin-bottom:var(--spacing-lg)}.stat-card{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:10px;padding:10px 14px;display:flex;flex-direction:column;gap:2px}.stat-card.highlight{border-color:#fca5a5;background:#fef2f2}.stat-card .stat-label{font-size:.72rem;color:var(--text-tertiary);font-weight:500}.stat-card .stat-value{font-size:1.4rem;font-weight:700;color:var(--text-primary)}.stat-card small{font-size:.68rem;color:var(--text-tertiary)}.report-section{margin-bottom:var(--spacing-lg)}.report-section h4{font-size:.9rem;font-weight:600;color:var(--text-secondary);margin-bottom:var(--spacing-sm);text-transform:uppercase;letter-spacing:.04em}.criterion-bars{display:flex;flex-direction:column;gap:8px}.criterion-row{display:flex;align-items:center;gap:12px}.crit-label{width:100px;font-size:.82rem;color:var(--text-secondary);flex-shrink:0}.crit-bar-wrap{flex:1;background:var(--bg-primary);border-radius:4px;height:8px;overflow:hidden;border:1px solid var(--border-color)}.crit-bar{height:100%;background:#6366f1;border-radius:4px;transition:width .5s}.crit-val{width:36px;font-size:.82rem;font-weight:600;text-align:right}.dist-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-sm)}.dist-card{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:10px;padding:12px 16px}.dist-card span{display:block;font-size:.78rem;color:var(--text-secondary);margin-bottom:4px}.bias-lenient{color:#dc2626}.bias-strict{color:#2563eb}.bias-neutral{color:#6b7280}.strat-grid{display:flex;flex-wrap:wrap;gap:8px}.strat-card{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;padding:10px 18px;display:flex;flex-direction:column;align-items:center;gap:2px;min-width:100px}.strat-card span{font-size:.72rem;color:var(--text-secondary);text-transform:uppercase}.strat-card strong{font-size:1.2rem}.result-list{display:flex;flex-direction:column;gap:8px;max-height:600px;overflow-y:auto}.result-card{border:1px solid var(--border-color);border-radius:10px;overflow:hidden;background:var(--bg-primary)}.result-card.failed{border-left:4px solid #ef4444}.result-head{display:flex;align-items:center;gap:8px;padding:10px 14px;cursor:pointer;flex-wrap:wrap}.result-idx{font-size:.75rem;color:var(--text-tertiary);font-weight:600;flex-shrink:0}.result-q{flex:1;font-size:.82rem;color:var(--text-secondary);min-width:0}.result-scores{display:flex;align-items:center;gap:12px;font-size:.82rem}.result-scores strong{font-size:.9rem}.high-error,.failed-text{color:#ef4444}.result-detail{padding:12px 16px;border-top:1px solid var(--border-color)}.result-answer{font-size:.83rem;color:var(--text-secondary);line-height:1.5;margin-bottom:10px}.result-answer strong{color:var(--text-primary)}.result-scores-table table{width:100%;border-collapse:collapse;font-size:.82rem}.result-scores-table th{color:var(--text-secondary);text-align:left;padding:4px 8px;border-bottom:1px solid var(--border-color)}.result-scores-table td{padding:4px 8px}.result-feedback{margin-top:10px;font-size:.83rem;color:var(--text-secondary);line-height:1.5}.result-feedback strong{color:var(--text-primary)}.result-latency{font-size:.75rem;color:var(--text-tertiary);margin-top:6px}.btn-primary{padding:8px 18px;border-radius:8px;border:none;background:var(--color-primary, #6366f1);color:#fff;font-size:.88rem;font-weight:600;cursor:pointer;transition:opacity .15s}.btn-primary:hover:not(:disabled){opacity:.88}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-primary.sm{padding:6px 14px;font-size:.82rem}.btn-secondary{padding:8px 18px;border-radius:8px;border:1px solid var(--border-color);background:transparent;color:var(--text-secondary);font-size:.88rem;cursor:pointer;transition:background .15s}.btn-secondary:hover:not(:disabled){background:var(--bg-primary)}.btn-secondary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary.sm{padding:6px 14px;font-size:.82rem}.eval-info{font-size:.88rem;color:var(--text-secondary);padding:var(--spacing-md) 0}@media (max-width: 768px){.eval-split{grid-template-columns:1fr}.eval-page{padding:80px var(--spacing-md) var(--spacing-xl)}.dist-grid{grid-template-columns:1fr}}.sp-page{min-height:100vh;padding:100px var(--spacing-xl) var(--spacing-2xl)}.sp-container{max-width:860px;margin:0 auto}.sp-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;gap:var(--spacing-lg);color:var(--text-secondary)}.sp-page-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:var(--spacing-2xl);gap:var(--spacing-lg);flex-wrap:wrap}.sp-page-header h1{font-size:2rem;font-weight:800;color:var(--text-primary);margin:0 0 6px}.sp-page-header p{color:var(--text-muted);font-size:.95rem;margin:0}.sp-back-btn{display:flex;align-items:center;gap:6px;padding:10px 18px;background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-lg);color:var(--text-secondary);font-size:.875rem;font-weight:600;text-decoration:none;transition:all .2s;white-space:nowrap}.sp-back-btn svg{width:16px;height:16px}.sp-back-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.sp-error{padding:var(--spacing-lg);background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:var(--radius-lg);color:#ef4444;margin-bottom:var(--spacing-xl)}.sp-empty{text-align:center;padding:var(--spacing-2xl);background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-xl)}.sp-empty-icon{width:64px;height:64px;background:var(--bg-tertiary);border-radius:var(--radius-xl);display:flex;align-items:center;justify-content:center;margin:0 auto var(--spacing-lg)}.sp-empty-icon svg{width:32px;height:32px;color:var(--text-muted)}.sp-empty h3{font-size:1.25rem;font-weight:700;color:var(--text-primary);margin:0 0 var(--spacing-sm)}.sp-empty p{color:var(--text-secondary);margin:0 0 var(--spacing-xl)}.sp-cta-btn{display:inline-flex;padding:12px 24px;background:linear-gradient(135deg,var(--accent-primary),var(--accent-secondary));color:#fff;border-radius:var(--radius-lg);font-weight:700;text-decoration:none;transition:opacity .2s}.sp-cta-btn:hover{opacity:.85}.sp-list{display:flex;flex-direction:column;gap:var(--spacing-lg)}.sp-card{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-xl);overflow:hidden;transition:border-color .2s}.sp-card.expanded{border-color:var(--accent-primary)}.sp-card-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-lg) var(--spacing-xl);cursor:pointer;gap:var(--spacing-md)}.sp-card-header:hover{background:var(--bg-hover)}.sp-card-info{display:flex;align-items:center;gap:var(--spacing-md);flex:1;min-width:0}.sp-card-badge{width:42px;height:42px;background:linear-gradient(135deg,var(--accent-primary),var(--accent-secondary));border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;flex-shrink:0}.sp-card-badge svg{width:20px;height:20px;stroke:#fff}.sp-card-info h3{font-size:1rem;font-weight:700;color:var(--text-primary);margin:0 0 4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sp-card-meta{font-size:.8rem;color:var(--text-muted);margin:0}.sp-card-actions{display:flex;align-items:center;gap:var(--spacing-sm);flex-shrink:0}.sp-download-btn{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:var(--bg-tertiary);border:1px solid var(--border-primary);border-radius:var(--radius-md);cursor:pointer;transition:all .2s}.sp-download-btn svg{width:16px;height:16px;color:var(--text-secondary)}.sp-download-btn:hover{background:var(--accent-primary);border-color:var(--accent-primary)}.sp-download-btn:hover svg{color:#fff}.sp-chevron{transition:transform .2s}.sp-chevron.open{transform:rotate(180deg)}.sp-chevron svg{width:20px;height:20px;color:var(--text-muted)}.sp-card-body{padding:0 var(--spacing-xl) var(--spacing-xl);border-top:1px solid var(--border-primary)}.sp-weakness-summary{font-size:.9rem;color:var(--text-secondary);line-height:1.6;padding:var(--spacing-lg) 0}.sp-weakness-summary strong{color:var(--text-primary)}.sp-week-tabs{display:flex;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg);flex-wrap:wrap}.sp-week-tab{padding:6px 16px;border-radius:var(--radius-md);font-size:.85rem;font-weight:600;cursor:pointer;background:none;border:1px solid var(--border-primary);color:var(--text-secondary);transition:all .2s}.sp-week-tab:hover{background:var(--bg-hover);color:var(--text-primary)}.sp-week-tab.active{background:var(--accent-primary);color:#fff;border-color:var(--accent-primary)}.sp-tasks{display:flex;flex-direction:column;gap:var(--spacing-md)}.sp-task{display:flex;align-items:flex-start;gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-lg);background:var(--bg-primary);border-radius:var(--radius-lg);border-left:4px solid var(--border-primary)}.sp-task.priority-high{border-left-color:#ef4444}.sp-task.priority-medium{border-left-color:#f59e0b}.sp-task.priority-low{border-left-color:#22c55e}.sp-task-icon{font-size:1.4rem;flex-shrink:0;line-height:1;margin-top:2px}.sp-task-content{flex:1;min-width:0}.sp-task-title{display:flex;align-items:center;gap:var(--spacing-sm);font-size:.95rem;font-weight:700;color:var(--text-primary);margin-bottom:4px}.sp-task-type{font-size:.7rem;font-weight:600;color:var(--accent-primary);background:#6366f11a;padding:2px 7px;border-radius:999px}.sp-task-content p{font-size:.85rem;color:var(--text-secondary);margin:0;line-height:1.5}.sp-task-right{display:flex;flex-direction:column;align-items:flex-end;gap:4px;flex-shrink:0}.sp-priority{font-size:.7rem;font-weight:700;padding:2px 8px;border-radius:999px;text-transform:uppercase}.sp-priority.high{background:#ef444426;color:#ef4444}.sp-priority.medium{background:#f59e0b26;color:#f59e0b}.sp-priority.low{background:#22c55e26;color:#22c55e}.sp-hours{font-size:.75rem;color:var(--text-muted);font-weight:600}.sp-card-footer{padding-top:var(--spacing-lg);border-top:1px solid var(--border-primary);margin-top:var(--spacing-lg)}.sp-view-feedback{font-size:.875rem;color:var(--accent-primary);text-decoration:none;font-weight:600}.sp-view-feedback:hover{text-decoration:underline}.contact-page{min-height:100vh;padding:100px var(--spacing-xl) var(--spacing-2xl)}.contact-container{max-width:960px;margin:0 auto}.contact-back{display:inline-flex;align-items:center;gap:6px;color:var(--text-secondary);text-decoration:none;font-size:.9rem;margin-bottom:var(--spacing-md)}.contact-back svg{width:16px;height:16px}.contact-back:hover{color:var(--accent-primary)}.contact-header h1{font-size:2rem;font-weight:700;margin-bottom:var(--spacing-xs);background:var(--accent-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.contact-header p{color:var(--text-secondary);margin-bottom:var(--spacing-xl)}.contact-layout{display:grid;grid-template-columns:280px 1fr;gap:var(--spacing-xl)}.contact-info{display:flex;flex-direction:column;gap:var(--spacing-md)}.info-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--spacing-lg)}.info-icon{font-size:1.8rem;margin-bottom:var(--spacing-sm)}.info-card h3{font-size:1rem;margin-bottom:var(--spacing-xs)}.info-card p,.info-card li{font-size:.88rem;color:var(--text-secondary);line-height:1.6}.info-card ul{padding-left:1.1rem;margin:0}.info-card.signed-in{background:#6366f114;border-color:#6366f140}.info-card.signed-in span{font-size:.78rem;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em}.info-card.signed-in strong{display:block;margin-top:4px}.info-card.signed-in small{color:var(--text-secondary)}.contact-form{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--spacing-xl)}.contact-form .form-group{margin-bottom:var(--spacing-lg)}.contact-form label{display:block;font-size:.85rem;font-weight:600;margin-bottom:6px;color:var(--text-secondary)}.contact-form input,.contact-form select,.contact-form textarea{width:100%;padding:12px 14px;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-primary);font-size:.95rem;font-family:inherit}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 3px #6366f126}.char-hint{font-size:.78rem;color:var(--text-tertiary);margin-top:4px;display:block}.contact-submit{width:100%;padding:14px;background:var(--accent-gradient);border:none;border-radius:var(--radius-md);color:#fff;font-weight:600;font-size:1rem;cursor:pointer;transition:opacity .2s}.contact-submit:hover:not(:disabled){opacity:.9}.contact-submit:disabled{opacity:.6;cursor:not-allowed}.contact-alert{padding:12px 14px;border-radius:var(--radius-md);margin-bottom:var(--spacing-md);font-size:.9rem}.contact-alert.error{background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:#ef4444}.contact-alert.success{background:#22c55e1a;border:1px solid rgba(34,197,94,.3);color:#22c55e}@media (max-width: 768px){.contact-layout{grid-template-columns:1fr}}.navbar{position:fixed;top:0;left:0;right:0;z-index:1000;padding:var(--spacing-md) var(--spacing-xl);transition:all var(--transition-base);background:transparent}.navbar.scrolled{background:linear-gradient(115deg,#1e40afb8,#0ea5e994 55%,#14b8a685);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid rgba(191,219,254,.36);box-shadow:0 10px 24px #0f172a59,inset 0 1px #ffffff1f}[data-theme=light] .navbar.scrolled{background:linear-gradient(115deg,#fffffff2,#dbeafeeb 55%,#ccfbf1e6);border-bottom:1px solid rgba(59,130,246,.24);box-shadow:0 10px 22px #1e40af24,inset 0 1px #ffffffc7}.navbar.scrolled .navbar-link{color:#f1f5f9e6}[data-theme=light] .navbar.scrolled .navbar-link{color:#334155e0}.navbar.scrolled .navbar-link:hover{background:#0f172a33}[data-theme=light] .navbar.scrolled .navbar-link:hover{background:#3b82f61a}.navbar.scrolled .navbar-link.active{background:#ffffff38;color:#f8fafc}[data-theme=light] .navbar.scrolled .navbar-link.active{background:#3b82f624;color:#1d4ed8}.navbar-container{max-width:1400px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-xl)}.navbar-brand{display:flex;align-items:center;gap:var(--spacing-sm);text-decoration:none;transition:transform var(--transition-base)}.navbar-brand:hover{transform:scale(1.02)}.brand-icon{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:var(--accent-gradient);border-radius:var(--radius-md);color:var(--bg-primary);padding:8px;box-shadow:0 4px 15px #3b82f647}.brand-icon svg{width:100%;height:100%}.brand-text{font-size:1.25rem;font-weight:700;color:var(--text-primary);letter-spacing:-.02em}.brand-ai{background:var(--accent-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.mobile-toggle{display:none;flex-direction:column;gap:5px;padding:8px;background:transparent;border:none;cursor:pointer;z-index:1001}.mobile-toggle span{width:24px;height:2px;background:var(--text-primary);border-radius:2px;transition:all var(--transition-base)}.mobile-toggle.active span:nth-child(1){transform:rotate(45deg) translate(5px,5px)}.mobile-toggle.active span:nth-child(2){opacity:0}.mobile-toggle.active span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px)}.navbar-menu{display:flex;align-items:center;gap:var(--spacing-xl);flex:1;justify-content:space-between}.navbar-links{display:flex;align-items:center;gap:var(--spacing-sm)}.navbar-link{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);color:var(--text-secondary);font-weight:500;font-size:.95rem;border-radius:var(--radius-md);transition:all var(--transition-base);text-decoration:none}.navbar-link svg{width:18px;height:18px;stroke-width:2}.navbar-link:hover{color:var(--text-primary);background:var(--bg-tertiary)}.navbar-link.active{color:var(--accent-primary);background:#3b82f61f}.navbar-admin-link{font-size:.8rem;padding:6px 10px;opacity:.85}.navbar-user-section{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-sm);background:var(--bg-tertiary);border-radius:var(--radius-lg);border:1px solid var(--border-color)}.user-avatar-link{text-decoration:none;transition:transform var(--transition-base)}.user-avatar-link:hover{transform:scale(1.05)}.user-avatar{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:var(--accent-gradient);border-radius:var(--radius-md);font-weight:700;font-size:.95rem;color:var(--bg-primary);overflow:hidden;position:relative}.user-avatar img{width:100%;height:100%;object-fit:cover}.avatar-fallback{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:var(--accent-gradient);color:var(--bg-primary)}.user-info{display:flex;flex-direction:column}.user-name{font-weight:600;font-size:.9rem;color:var(--text-primary);line-height:1.2}.user-role{font-size:.75rem;color:var(--text-tertiary)}.settings-button{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:transparent;border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-secondary);text-decoration:none;transition:all var(--transition-base)}.settings-button svg{width:18px;height:18px}.settings-button:hover{background:var(--bg-card-hover);border-color:var(--accent-primary);color:var(--accent-primary)}.logout-button{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:transparent;border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-base)}.logout-button svg{width:18px;height:18px}.logout-button:hover{background:var(--error-bg);border-color:var(--error);color:var(--error)}@media (max-width: 768px){.navbar{padding:var(--spacing-md)}.mobile-toggle{display:flex}.navbar-menu{position:fixed;top:0;right:-100%;width:280px;height:100vh;flex-direction:column;justify-content:flex-start;padding:80px var(--spacing-lg) var(--spacing-lg);background:var(--bg-secondary);border-left:1px solid var(--border-color);transition:right var(--transition-base)}.navbar-menu.open{right:0}.navbar-links{flex-direction:column;width:100%;gap:var(--spacing-sm)}.navbar-link{width:100%;padding:var(--spacing-md)}.navbar-user-section{width:100%;margin-top:auto;padding:var(--spacing-md)}.user-info{flex:1}}.tut-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000a6;z-index:10000;display:flex;align-items:center;justify-content:center;animation:tut-fade-in .2s ease;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}@keyframes tut-fade-in{0%{opacity:0}to{opacity:1}}@keyframes tut-slide-up{0%{opacity:0;transform:translateY(20px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes tut-pop-in{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}.tut-prompt{background:var(--bg-secondary, #1e293b);border:1px solid var(--border-primary, #334155);border-radius:20px;padding:40px 36px 32px;width:400px;max-width:calc(100vw - 32px);text-align:center;box-shadow:0 24px 64px #00000080;animation:tut-slide-up .35s cubic-bezier(.34,1.56,.64,1)}.tut-prompt-icon{font-size:3rem;margin-bottom:16px;display:block}.tut-prompt h3{font-size:1.4rem;font-weight:800;color:var(--text-primary, #f1f5f9);margin:0 0 12px}.tut-prompt p{font-size:.95rem;color:var(--text-secondary, #94a3b8);line-height:1.6;margin:0 0 28px}.tut-prompt-actions{display:flex;gap:12px;justify-content:center}.tut-card.center{background:var(--bg-secondary, #1e293b);border:1px solid var(--border-primary, #334155);border-radius:20px;padding:36px 32px 28px;width:420px;max-width:calc(100vw - 32px);box-shadow:0 32px 80px #0000008c;animation:tut-slide-up .3s cubic-bezier(.34,1.56,.64,1)}.tut-big-icon{font-size:3rem;text-align:center;margin-bottom:12px;display:block}.tut-step-pill{display:inline-block;background:#6366f126;color:#818cf8;font-size:.72rem;font-weight:700;padding:3px 10px;border-radius:999px;margin-bottom:12px;letter-spacing:.04em;text-transform:uppercase}.tut-card h3,.tut-card h4{font-size:1.2rem;font-weight:800;color:var(--text-primary, #f1f5f9);margin:0 0 10px;line-height:1.3}.tut-body{font-size:.92rem;color:var(--text-secondary, #94a3b8);line-height:1.65;margin:0 0 20px;white-space:pre-line}.tut-body-hint{font-size:.85rem;color:var(--text-muted, #64748b);font-style:italic;margin-top:-12px}.tut-progress-bar{height:4px;background:var(--bg-tertiary, #0f172a);border-radius:2px;margin-bottom:20px;overflow:hidden}.tut-progress-fill{height:100%;background:linear-gradient(90deg,#6366f1,#8b5cf6);border-radius:2px;transition:width .4s ease}.tut-footer{display:flex;align-items:center;justify-content:space-between;gap:12px}.tut-nav{display:flex;gap:8px;align-items:center}.tut-btn-primary{padding:10px 20px;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;border:none;border-radius:10px;font-size:.875rem;font-weight:700;cursor:pointer;transition:opacity .2s,transform .15s}.tut-btn-primary:hover{opacity:.88;transform:translateY(-1px)}.tut-btn-back{padding:8px 14px;background:var(--bg-tertiary, #0f172a);border:1px solid var(--border-primary, #334155);color:var(--text-secondary, #94a3b8);border-radius:8px;font-size:.8rem;font-weight:600;cursor:pointer;transition:background .15s}.tut-btn-back:hover{background:var(--bg-hover, #1e293b)}.tut-btn-ghost{background:none;border:none;color:var(--text-muted, #64748b);font-size:.8rem;cursor:pointer;padding:4px 8px;border-radius:6px;transition:color .15s}.tut-btn-ghost:hover{color:var(--text-secondary, #94a3b8)}.tut-btn-ghost.small{font-size:.75rem}.tut-action-hint{display:inline-flex;align-items:center;gap:8px;font-size:.8rem;font-weight:600;color:#a5b4fc;padding:8px 12px;background:#6366f11f;border-radius:8px;border:1px dashed rgba(99,102,241,.35)}.tut-action-pulse{width:8px;height:8px;border-radius:50%;background:#818cf8;flex-shrink:0;animation:tut-pulse-dot 1.2s ease-in-out infinite}@keyframes tut-pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.75)}}.tut-spotlight-layer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10050;pointer-events:none}.tut-spotlight-layer .tut-tooltip{pointer-events:auto}.tut-highlight-target{position:relative;z-index:9990!important;isolation:isolate}.tut-spotlight-surround{position:fixed;border-radius:10px;z-index:1;pointer-events:none;box-shadow:0 0 0 9999px #000000ad;border:2px solid rgba(99,102,241,.85);outline:1px solid rgba(99,102,241,.3);animation:tut-spotlight-pulse 2s ease-in-out infinite;transition:top .15s ease-out,left .15s ease-out,width .15s ease-out,height .15s ease-out;will-change:top,left,width,height}@keyframes tut-spotlight-pulse{0%,to{box-shadow:0 0 0 9999px #000000ad,0 0 0 4px #6366f133}50%{box-shadow:0 0 0 9999px #000000ad,0 0 0 8px #6366f159}}.tut-tooltip{position:fixed;width:340px;max-width:calc(100vw - 32px);background:var(--bg-secondary, #1e293b);border:1px solid rgba(99,102,241,.4);border-radius:14px;padding:20px 22px 18px;z-index:10051;box-shadow:0 20px 60px #00000080;animation:tut-pop-in .25s cubic-bezier(.34,1.56,.64,1);transition:top .3s ease,left .3s ease}.tut-tooltip h4{font-size:1.05rem;font-weight:800;color:var(--text-primary, #f1f5f9);margin:0 0 8px}.tut-tooltip .tut-body{font-size:.875rem;margin-bottom:16px}.tut-tooltip:before{content:"";position:absolute;width:10px;height:10px;background:var(--bg-secondary, #1e293b);border:1px solid rgba(99,102,241,.4);border-right:none;border-bottom:none}.tut-tooltip.placement-bottom:before{top:-6px;left:28px;transform:rotate(45deg)}.tut-tooltip.placement-top:before{bottom:-6px;left:28px;transform:rotate(225deg)}.tut-tooltip.placement-right:before{left:-6px;top:28px;transform:rotate(-45deg)}.tut-tooltip.placement-left:before{right:-6px;top:28px;transform:rotate(135deg)}.tut-fab-wrap{position:fixed;bottom:28px;right:28px;z-index:9990;display:flex;flex-direction:column;align-items:flex-end;gap:10px}.tut-fab{width:52px;height:52px;border-radius:50%;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;border:none;font-size:1.4rem;font-weight:800;cursor:pointer;box-shadow:0 8px 24px #6366f173;transition:transform .2s,box-shadow .2s;display:flex;align-items:center;justify-content:center;line-height:1}.tut-fab:hover{transform:scale(1.08) translateY(-2px);box-shadow:0 12px 32px #6366f18c}.tut-fab.active{background:linear-gradient(135deg,#ef4444,#dc2626);box-shadow:0 8px 24px #ef444466;font-size:1rem;position:fixed;bottom:28px;right:28px;z-index:10052}.tut-fab-menu{background:var(--bg-secondary, #1e293b);border:1px solid var(--border-primary, #334155);border-radius:12px;overflow:hidden;box-shadow:0 12px 32px #00000059;animation:tut-pop-in .2s ease;min-width:170px}.tut-fab-item{display:flex;align-items:center;gap:10px;width:100%;padding:12px 16px;background:none;border:none;color:var(--text-secondary, #94a3b8);font-size:.875rem;font-weight:600;cursor:pointer;text-align:left;transition:background .15s,color .15s}.tut-fab-item:hover{background:var(--bg-hover, rgba(255,255,255,.05));color:var(--text-primary, #f1f5f9)}.tut-fab-item span{font-size:1.1rem}[data-tutorial]{position:relative}@media (max-width: 480px){.tut-card.center,.tut-prompt{padding:28px 20px 22px}.tut-tooltip{width:calc(100vw - 32px)}.tut-fab{width:46px;height:46px;font-size:1.2rem}.tut-fab-wrap{bottom:18px;right:18px}}:root{--accent-primary: #3b82f6;--accent-secondary: #0ea5e9;--accent-tertiary: #14b8a6;--accent-gradient: linear-gradient(135deg, #3b82f6 0%, #0ea5e9 50%, #14b8a6 100%);--accent-gradient-hover: linear-gradient(135deg, #60a5fa 0%, #38bdf8 50%, #2dd4bf 100%);--success: #10b981;--success-bg: rgba(16, 185, 129, .1);--warning: #f59e0b;--warning-bg: rgba(245, 158, 11, .1);--error: #ef4444;--error-bg: rgba(239, 68, 68, .1);--info: #3b82f6;--info-bg: rgba(59, 130, 246, .1);--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 24px;--radius-full: 9999px;--transition-fast: .15s ease;--transition-base: .25s ease;--transition-slow: .4s ease;--transition-spring: .5s cubic-bezier(.34, 1.56, .64, 1)}:root,[data-theme=dark]{--bg-primary: #0f172a;--bg-secondary: #111827;--bg-tertiary: #1f2937;--bg-card: #172033;--bg-card-hover: #1d2940;--text-primary: #f8fafc;--text-secondary: #cbd5e1;--text-tertiary: #94a3b8;--text-accent: #60a5fa;--border-color: rgba(148, 163, 184, .2);--border-accent: rgba(96, 165, 250, .42);--shadow-sm: 0 2px 8px rgba(15, 23, 42, .35);--shadow-md: 0 4px 20px rgba(15, 23, 42, .45);--shadow-lg: 0 8px 40px rgba(15, 23, 42, .55);--shadow-glow: 0 0 40px rgba(59, 130, 246, .18);--shadow-glow-purple: 0 0 40px rgba(20, 184, 166, .14)}[data-theme=light]{--bg-primary: #f4f8ff;--bg-secondary: #edf3fb;--bg-tertiary: #dbe6f3;--bg-card: #ffffff;--bg-card-hover: #f8fbff;--text-primary: #1e293b;--text-secondary: #475569;--text-tertiary: #64748b;--text-accent: #2563eb;--border-color: rgba(100, 116, 139, .2);--border-accent: rgba(37, 99, 235, .35);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .06);--shadow-md: 0 4px 20px rgba(0, 0, 0, .08);--shadow-lg: 0 8px 40px rgba(0, 0, 0, .1);--shadow-glow: 0 0 40px rgba(37, 99, 235, .15);--shadow-glow-purple: 0 0 40px rgba(20, 184, 166, .12)}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:Outfit,-apple-system,BlinkMacSystemFont,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--bg-primary);color:var(--text-primary);line-height:1.6;overflow-x:hidden}body:before{content:"";position:fixed;top:0;left:0;right:0;bottom:0;pointer-events:none;z-index:-1;transition:background var(--transition-slow)}[data-theme=dark] body:before,:root body:before{background:radial-gradient(ellipse 80% 50% at 50% -20%,rgba(59,130,246,.15),transparent),radial-gradient(ellipse 60% 40% at 100% 100%,rgba(14,165,233,.1),transparent),radial-gradient(ellipse 40% 30% at 0% 100%,rgba(20,184,166,.08),transparent)}[data-theme=light] body:before{background:radial-gradient(ellipse 80% 50% at 50% -20%,rgba(59,130,246,.06),transparent),radial-gradient(ellipse 60% 40% at 100% 100%,rgba(14,165,233,.03),transparent),radial-gradient(ellipse 40% 30% at 0% 100%,rgba(20,184,166,.03),transparent)}#root{min-height:100vh;display:flex;flex-direction:column}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:var(--bg-tertiary);border-radius:var(--radius-full);border:2px solid var(--bg-secondary)}::-webkit-scrollbar-thumb:hover{background:var(--accent-primary)}::selection{background:#3b82f647;color:var(--text-primary)}:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}code{font-family:JetBrains Mono,monospace;background:var(--bg-tertiary);padding:.2em .4em;border-radius:var(--radius-sm);font-size:.9em}a{color:var(--accent-primary);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--accent-secondary)}button{font-family:Outfit,sans-serif;cursor:pointer;border:none;outline:none}input,textarea,select{font-family:Outfit,sans-serif}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes glow{0%,to{box-shadow:0 0 20px #3b82f63d}50%{box-shadow:0 0 40px #3b82f66b}}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes borderGlow{0%,to{border-color:#3b82f652}50%{border-color:#14b8a66b}}.animate-fade-in{animation:fadeIn .5s ease forwards}.animate-fade-in-up{animation:fadeInUp .5s ease forwards}.animate-scale-in{animation:scaleIn .3s ease forwards}.spinner{width:40px;height:40px;border:3px solid var(--bg-tertiary);border-top-color:var(--accent-primary);border-radius:50%;animation:rotate .8s linear infinite}.skeleton{background:linear-gradient(90deg,var(--bg-tertiary) 0%,var(--bg-card-hover) 50%,var(--bg-tertiary) 100%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:var(--radius-md)}.glass{background:#172033b8;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--border-color)}.gradient-text{background:var(--accent-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.glow{box-shadow:var(--shadow-glow)}.glow-purple{box-shadow:var(--shadow-glow-purple)}
