.app-header{position:fixed;top:0;left:0;right:0;height:var(--header-height);display:flex;align-items:center;justify-content:space-between;padding:0 var(--space-5);background:var(--color-surface-glass);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid var(--color-border);z-index:var(--z-header)}.header-left{display:flex;align-items:center;gap:var(--space-3)}.header-logo-link{text-decoration:none;color:inherit}.header-logo{display:flex;align-items:center;gap:var(--space-2)}.logo-icon{font-size:1.5rem;display:flex;align-items:center}.logo-text{font-size:var(--text-md);font-weight:var(--weight-bold);color:var(--color-text-primary);letter-spacing:-.02em}.header-right{display:flex;align-items:center;gap:var(--space-2)}.sidebar-toggle-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--radius-md);transition:background var(--transition-fast)}.sidebar-toggle-btn:hover{background:var(--color-surface-active)}.hamburger-icon{display:flex;flex-direction:column;gap:4px;width:18px}.hamburger-icon span{display:block;height:2px;background:var(--color-text-secondary);border-radius:1px;transition:all var(--transition-fast)}.header-nav-link{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--color-text-secondary);background:var(--color-bg-tertiary);border:1px solid var(--color-border);text-decoration:none;transition:all var(--transition-fast)}.header-nav-link:hover{border-color:var(--color-border-hover);color:var(--color-text-primary)}.header-nav-link--active{background:var(--color-accent-light);color:var(--color-accent);border-color:var(--color-accent)}.header-nav-icon{font-size:var(--text-sm)}.header-nav-label{display:none}.mode-toggle-btn{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--color-text-secondary);background:var(--color-bg-tertiary);border:1px solid var(--color-border);transition:all var(--transition-fast)}.mode-toggle-btn:hover{border-color:var(--color-border-hover);color:var(--color-text-primary)}.mode-toggle-btn--active{background:var(--color-accent-light);color:var(--color-accent);border-color:var(--color-accent)}.mode-icon{font-size:var(--text-sm)}.mode-label{display:none}.theme-toggle-btn{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--color-text-secondary);background:var(--color-bg-tertiary);border:1px solid var(--color-border);transition:all var(--transition-fast)}.theme-toggle-btn:hover{border-color:var(--color-border-hover);color:var(--color-text-primary)}.theme-toggle-btn--active{background:var(--color-accent-light);color:var(--color-accent);border-color:var(--color-accent)}.theme-label{display:none}@media(min-width:768px){.mode-label,.theme-label,.header-nav-label{display:inline}}@media(max-width:767px){.logo-text{font-size:var(--text-sm)}}.app-sidebar{position:fixed;top:var(--header-height);left:0;bottom:0;width:var(--sidebar-width);background:var(--color-surface);border-right:1px solid var(--color-border);display:flex;flex-direction:column;z-index:var(--z-sidebar);transform:translate(-100%);transition:transform var(--transition-slow);overflow:hidden}.app-sidebar--open{transform:translate(0)}.sidebar-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--color-border)}.sidebar-title{font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--color-text-primary);text-transform:uppercase;letter-spacing:.05em}.sidebar-count{font-size:var(--text-xs);font-weight:var(--weight-bold);color:var(--color-accent);background:var(--color-accent-light);padding:2px 8px;border-radius:var(--radius-full)}.sidebar-progress{padding:var(--space-3) var(--space-5);border-bottom:1px solid var(--color-border);display:flex;align-items:center;gap:var(--space-3)}.sidebar-progress-bar{flex:1;height:4px;-moz-appearance:none;appearance:none;-webkit-appearance:none;background:var(--color-bg-tertiary);border:0;border-radius:var(--radius-full);overflow:hidden}.sidebar-progress-bar::-webkit-progress-bar{background:var(--color-bg-tertiary);border-radius:var(--radius-full)}.sidebar-progress-bar::-webkit-progress-value{background:linear-gradient(90deg,var(--color-accent),#a78bfa);border-radius:var(--radius-full)}.sidebar-progress-bar::-moz-progress-bar{background:linear-gradient(90deg,var(--color-accent),#a78bfa);border-radius:var(--radius-full)}.sidebar-progress-text{font-size:var(--text-xs);color:var(--color-text-tertiary);font-weight:var(--weight-medium);white-space:nowrap}.sidebar-nav{flex:1;overflow-y:auto;padding:var(--space-3) 0}.sidebar-group{margin-bottom:var(--space-2)}.sidebar-group-title{font-size:var(--text-xs);font-weight:var(--weight-semibold);color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.06em;padding:var(--space-2) var(--space-5);margin-bottom:var(--space-1)}.sidebar-list{list-style:none}.sidebar-link{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-5);color:var(--color-text-secondary);text-decoration:none;font-size:var(--text-sm);transition:all var(--transition-fast);border-left:3px solid transparent}.sidebar-link:hover{background:var(--color-surface-hover);color:var(--color-text-primary)}.sidebar-link--active{background:var(--color-accent-subtle);color:var(--color-accent);border-left-color:var(--color-accent);font-weight:var(--weight-medium)}.sidebar-link-index{font-size:var(--text-xs);font-family:var(--font-mono);color:var(--color-text-tertiary);min-width:20px}.sidebar-link--active .sidebar-link-index{color:var(--color-accent)}.sidebar-link-text{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-difficulty{font-size:10px;font-weight:var(--weight-bold);width:18px;height:18px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-xs)}.sidebar-difficulty--easy{color:var(--color-easy);background:var(--color-easy-bg)}.sidebar-difficulty--medium{color:var(--color-medium);background:var(--color-medium-bg)}.sidebar-difficulty--hard{color:var(--color-hard);background:var(--color-hard-bg)}.sidebar-footer{padding:var(--space-4) var(--space-5);border-top:1px solid var(--color-border)}.sidebar-home-link{font-size:var(--text-sm);color:var(--color-text-secondary);text-decoration:none;transition:color var(--transition-fast)}.sidebar-home-link:hover{color:var(--color-accent)}@media(min-width:1024px){.app-sidebar{transform:translate(0)}.app-sidebar:not(.app-sidebar--open){transform:translate(-100%)}.app-sidebar--open{transform:translate(0)}}.app-layout{min-height:100vh}.app-main{margin-top:var(--header-height);min-height:calc(100vh - var(--header-height));transition:margin-left var(--transition-slow);margin-left:0}.app-main--shifted{margin-left:var(--sidebar-width)}.app-content{max-width:var(--content-max-width);margin:0 auto;padding:var(--space-8) var(--space-6)}.sidebar-overlay,.sidebar-overlay[data-visible=true]{display:none}@media(max-width:1023px){.app-main--shifted{margin-left:0}.sidebar-overlay[data-visible=true]{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#0000004d;z-index:calc(var(--z-sidebar) - 1);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.app-content{padding:var(--space-6) var(--space-4)}}@media(max-width:640px){.app-content{padding:var(--space-4) var(--space-3)}}.assessment-card{background:var(--color-surface-glass);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--space-6);display:flex;flex-direction:column;gap:var(--space-3);transition:all var(--transition-base);box-shadow:var(--shadow-card)}.assessment-card:hover{box-shadow:var(--shadow-card-hover);transform:translateY(-3px);border-color:var(--color-border-hover)}.assessment-card-header{display:flex;align-items:center;justify-content:space-between}.assessment-time{font-size:var(--text-xs);color:var(--color-text-tertiary);font-weight:var(--weight-medium)}.assessment-card-title{font-size:var(--text-lg);font-weight:var(--weight-bold);color:var(--color-text-primary);letter-spacing:-.01em;line-height:var(--leading-tight)}.assessment-card-desc{font-size:var(--text-sm);color:var(--color-text-secondary);line-height:var(--leading-relaxed);flex:1}.assessment-card-tags{display:flex;flex-wrap:wrap;gap:var(--space-2)}.assessment-card-footer{margin-top:var(--space-2)}.assessment-card-btn{width:100%;text-align:center;text-decoration:none;padding:var(--space-3) var(--space-5)}.dashboard{animation:fadeIn .4s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.dashboard-hero{background:linear-gradient(135deg,var(--color-accent-light) 0%,var(--color-surface) 50%,#faf5ff 100%);border:1px solid var(--color-border);border-radius:var(--radius-2xl);padding:var(--space-10) var(--space-8);margin-bottom:var(--space-10);position:relative;overflow:hidden}.dashboard-hero:before{content:"";position:absolute;top:-60%;right:-20%;width:400px;height:400px;background:radial-gradient(circle,rgba(99,102,241,.08) 0%,transparent 70%);border-radius:50%}.dashboard-hero-content{position:relative;z-index:1}.dashboard-title{font-size:var(--text-4xl);font-weight:var(--weight-extrabold);color:var(--color-text-primary);letter-spacing:-.03em;margin-bottom:var(--space-3);display:flex;align-items:center;gap:var(--space-3)}.dashboard-title-icon{font-size:2.5rem}.dashboard-subtitle{font-size:var(--text-md);color:var(--color-text-secondary);line-height:var(--leading-relaxed);max-width:560px;margin-bottom:var(--space-6)}.dashboard-stats{display:flex;gap:var(--space-6);flex-wrap:wrap}.dashboard-stat{display:flex;flex-direction:column;gap:2px}.dashboard-stat-value{font-size:var(--text-2xl);font-weight:var(--weight-bold);color:var(--color-accent)}.dashboard-stat-label{font-size:var(--text-xs);color:var(--color-text-tertiary);font-weight:var(--weight-medium);text-transform:uppercase;letter-spacing:.05em}.dashboard-section{margin-bottom:var(--space-10)}.dashboard-section-title{font-size:var(--text-xl);font-weight:var(--weight-bold);color:var(--color-text-primary);margin-bottom:var(--space-5);letter-spacing:-.01em}.dashboard-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:var(--space-5)}@media(max-width:640px){.dashboard-hero{padding:var(--space-6) var(--space-5)}.dashboard-title{font-size:var(--text-2xl)}.dashboard-grid{grid-template-columns:1fr}.dashboard-stats{gap:var(--space-4)}}.code-block{position:relative;border-radius:var(--radius-lg);overflow:hidden;border:1px solid var(--color-border);margin-bottom:var(--space-4)}.code-block-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-2) var(--space-4);background:#1a2332;border-bottom:1px solid rgba(255,255,255,.06);flex-wrap:wrap;gap:var(--space-2)}.code-block-title{font-size:var(--text-sm);font-weight:var(--weight-semibold);color:#93c5fd;font-family:var(--font-mono)}.code-block-actions{display:flex;align-items:center;gap:var(--space-2)}.code-block-lang{font-size:var(--text-xs);color:#64748b;background:#ffffff0f;padding:2px 8px;border-radius:var(--radius-sm);font-family:var(--font-mono)}.code-block-btn{font-size:var(--text-xs);color:#94a3b8;padding:4px 10px;border-radius:var(--radius-sm);background:#ffffff0f;transition:all var(--transition-fast);font-family:var(--font-mono);white-space:nowrap}.code-block-pre{background:var(--color-bg-code);padding:var(--space-5);margin:0;overflow-x:auto;max-height:600px;overflow-y:auto}.code-block-code{font-family:var(--font-mono);font-size:var(--text-sm);line-height:1.7;color:var(--color-text-code);white-space:pre;-moz-tab-size:2;tab-size:2}.code-block-floating-copy{position:absolute;top:var(--space-2);right:var(--space-2);width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);background:#ffffff1a;font-size:var(--text-sm);transition:all var(--transition-fast);opacity:0}.code-block-floating-copy:hover{background:#fff3}.accordion{border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden;margin-bottom:var(--space-4)}.accordion-item{border-bottom:1px solid var(--color-border)}.accordion-item:last-child{border-bottom:none}.accordion-trigger{width:100%;display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) var(--space-5);background:var(--color-surface);font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--color-text-primary);transition:background var(--transition-fast);text-align:left}.accordion-trigger:hover{background:var(--color-surface-hover)}.accordion-trigger-left{display:flex;align-items:center;gap:var(--space-3)}.accordion-icon{font-size:var(--text-md)}.accordion-title{font-size:var(--text-sm)}.accordion-chevron{font-size:var(--text-sm);color:var(--color-text-tertiary);transition:transform var(--transition-base);display:inline-block}.accordion-chevron--open{transform:rotate(90deg)}.accordion-content{max-height:0;overflow:hidden;transition:max-height var(--transition-slow)}.accordion-content--open{max-height:2000px}.accordion-body{padding:var(--space-4) var(--space-5);background:var(--color-surface-hover);font-size:var(--text-sm);color:var(--color-text-secondary);line-height:var(--leading-relaxed)}.accordion-body ul{list-style:disc;padding-left:var(--space-5);margin:var(--space-2) 0}.accordion-body li{margin-bottom:var(--space-1)}.accordion-body p{margin-bottom:var(--space-2)}.accordion-body strong{color:var(--color-text-primary)}.accordion-item--open .accordion-trigger{background:var(--color-surface-hover);border-bottom:1px solid var(--color-border)}.working-demo{margin-top:var(--space-4)}.working-demo--empty{padding:var(--space-6);text-align:center;color:var(--color-text-tertiary);font-size:var(--text-sm)}.working-demo__loader{display:flex;align-items:center;justify-content:center;gap:var(--space-3);padding:var(--space-8);color:var(--color-text-tertiary);font-size:var(--text-sm)}.working-demo__spinner{width:20px;height:20px;border:2px solid var(--color-border);border-top-color:var(--color-accent);border-radius:50%;animation:demoSpin .6s linear infinite}@keyframes demoSpin{to{transform:rotate(360deg)}}.working-demo__container{padding:var(--space-5);background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:auto}.working-demo__container h2{font-size:var(--text-xl);font-weight:var(--weight-bold);color:var(--color-text-primary);margin-bottom:var(--space-4)}.working-demo__container h3{font-size:var(--text-base);font-weight:var(--weight-semibold);color:var(--color-text-primary);margin-top:var(--space-4);margin-bottom:var(--space-2)}.working-demo__container input[type=text],.working-demo__container input[type=email]{width:100%;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-secondary);color:var(--color-text-primary);font-size:var(--text-sm);margin-bottom:var(--space-3);outline:none;transition:border-color .2s ease}.working-demo__container input:focus{border-color:var(--color-accent)}.working-demo__container select{padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-secondary);color:var(--color-text-primary);font-size:var(--text-sm)}.working-demo__container button{padding:var(--space-1) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-secondary);color:var(--color-text-primary);font-size:var(--text-sm);cursor:pointer;transition:background .15s ease,border-color .15s ease;margin-right:var(--space-2);margin-bottom:var(--space-2)}.working-demo__container button:hover{background:var(--color-accent-light);border-color:var(--color-accent)}.working-demo__container button:disabled{opacity:.5;cursor:not-allowed}.working-demo__container ul,.working-demo__container ol{padding-left:var(--space-5);margin-bottom:var(--space-3)}.working-demo__container li{margin-bottom:var(--space-2);font-size:var(--text-sm);color:var(--color-text-secondary)}.working-demo__container p{font-size:var(--text-sm);color:var(--color-text-secondary);margin-bottom:var(--space-2)}.working-demo__container .role-badge{display:inline-block;margin-left:var(--space-2);padding:2px var(--space-2);background:var(--color-accent-light);color:var(--color-accent);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:var(--weight-medium)}.working-demo__container .user-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:var(--space-3)}.working-demo__container .user-card{padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-secondary)}.working-demo__container .user-card h3{margin-top:0;font-size:var(--text-sm)}.working-demo__container .error-text{color:#ef4444;font-size:var(--text-xs)}.working-demo__container .form-group{margin-bottom:var(--space-3)}.working-demo__container .form-group label{display:block;font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--color-text-primary);margin-bottom:var(--space-1)}.working-demo__container .form-summary{padding:var(--space-3);background:var(--color-bg-tertiary);border-radius:var(--radius-md);margin-top:var(--space-3);margin-bottom:var(--space-3)}.assessment-page{animation:fadeIn .4s ease}.assessment-progress{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-6)}.assessment-progress-bar{flex:1;height:4px;-moz-appearance:none;appearance:none;-webkit-appearance:none;background:var(--color-bg-tertiary);border:0;border-radius:var(--radius-full);overflow:hidden}.assessment-progress-bar::-webkit-progress-bar{background:var(--color-bg-tertiary);border-radius:var(--radius-full)}.assessment-progress-bar::-webkit-progress-value{background:linear-gradient(90deg,var(--color-accent),#a78bfa);border-radius:var(--radius-full)}.assessment-progress-bar::-moz-progress-bar{background:linear-gradient(90deg,var(--color-accent),#a78bfa);border-radius:var(--radius-full)}.assessment-progress-text{font-size:var(--text-xs);color:var(--color-text-tertiary);font-weight:var(--weight-medium);white-space:nowrap}.assessment-header{margin-bottom:var(--space-8)}.assessment-meta{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-3)}.assessment-time{font-size:var(--text-sm);color:var(--color-text-tertiary)}.assessment-title{font-size:var(--text-3xl);font-weight:var(--weight-extrabold);color:var(--color-text-primary);letter-spacing:-.02em;margin-bottom:var(--space-3)}.assessment-tags{display:flex;flex-wrap:wrap;gap:var(--space-2)}.assessment-section{margin-bottom:var(--space-8)}.section-heading{font-size:var(--text-lg);font-weight:var(--weight-bold);color:var(--color-text-primary);margin-bottom:var(--space-4);letter-spacing:-.01em}.section-text{font-size:var(--text-base);color:var(--color-text-secondary);line-height:var(--leading-relaxed)}.requirements-list{display:flex;flex-direction:column;gap:var(--space-3)}.requirement-item{display:flex;align-items:flex-start;gap:var(--space-3);font-size:var(--text-sm);color:var(--color-text-secondary);line-height:var(--leading-relaxed)}.requirement-number{display:flex;align-items:center;justify-content:center;min-width:24px;height:24px;border-radius:var(--radius-full);background:var(--color-accent-light);color:var(--color-accent);font-size:var(--text-xs);font-weight:var(--weight-bold);flex-shrink:0}.expected-output-box{background:var(--color-bg-tertiary);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-4) var(--space-5);font-family:var(--font-mono);font-size:var(--text-sm);color:var(--color-text-primary);line-height:var(--leading-relaxed)}.interviewer-section{margin-top:var(--space-8);margin-bottom:var(--space-8);padding-top:var(--space-6);border-top:2px dashed var(--color-accent)}.interviewer-badge{display:inline-flex;align-items:center;gap:var(--space-2);background:var(--color-accent-light);color:var(--color-accent);font-size:var(--text-sm);font-weight:var(--weight-bold);padding:var(--space-2) var(--space-4);border-radius:var(--radius-full);margin-bottom:var(--space-5)}.scoring-guide{display:flex;flex-direction:column;gap:var(--space-4)}.scoring-item{padding-bottom:var(--space-3);border-bottom:1px solid var(--color-border)}.scoring-item:last-child{border-bottom:none;padding-bottom:0}.scoring-key{display:block;font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--color-accent);margin-bottom:var(--space-1)}.followup-list{list-style:decimal;padding-left:var(--space-5)}.followup-list li{margin-bottom:var(--space-2)}.assessment-navigation{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding-top:var(--space-6);border-top:1px solid var(--color-border);margin-top:var(--space-8);flex-wrap:wrap}.nav-btn:disabled{opacity:.4;cursor:not-allowed}.assessment-not-found{text-align:center;padding:var(--space-16) 0;color:var(--color-text-secondary)}.assessment-not-found h2{font-size:var(--text-2xl);margin-bottom:var(--space-3)}@media(max-width:640px){.assessment-title{font-size:var(--text-2xl)}.assessment-navigation{flex-direction:column}.nav-btn{width:100%}}.eval-page{animation:fadeIn .4s ease}.eval-hero{background:linear-gradient(135deg,var(--color-accent-light) 0%,var(--color-surface) 50%,#faf5ff 100%);border:1px solid var(--color-border);border-radius:var(--radius-2xl);padding:var(--space-8);margin-bottom:var(--space-8);display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-5);flex-wrap:wrap;position:relative;overflow:hidden}.eval-hero:before{content:"";position:absolute;top:-60%;right:-20%;width:400px;height:400px;background:radial-gradient(circle,rgba(99,102,241,.08) 0%,transparent 70%);border-radius:50%}.eval-hero-content{position:relative;z-index:1}.eval-hero-title{font-size:var(--text-3xl);font-weight:var(--weight-extrabold);color:var(--color-text-primary);letter-spacing:-.03em;margin-bottom:var(--space-2);display:flex;align-items:center;gap:var(--space-3)}.eval-hero-icon{font-size:2rem}.eval-hero-subtitle{font-size:var(--text-md);color:var(--color-text-secondary);line-height:var(--leading-relaxed)}.eval-hero-actions{display:flex;gap:var(--space-2);flex-wrap:wrap;position:relative;z-index:1}.eval-action-btn{font-size:var(--text-sm)!important;padding:var(--space-2) var(--space-4)!important;white-space:nowrap}.eval-section{margin-bottom:var(--space-8)}.eval-section-title{font-size:var(--text-xl);font-weight:var(--weight-bold);color:var(--color-text-primary);margin-bottom:var(--space-5);letter-spacing:-.01em}.eval-label{display:block;font-size:var(--text-xs);font-weight:var(--weight-semibold);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.04em;margin-bottom:var(--space-1)}.eval-input{width:100%;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-secondary);color:var(--color-text-primary);font-size:var(--text-sm);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.eval-input:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-subtle)}.eval-textarea{width:100%;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-secondary);color:var(--color-text-primary);font-size:var(--text-sm);line-height:var(--leading-relaxed);resize:vertical;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.eval-textarea:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-subtle)}.eval-textarea--sm{font-size:var(--text-xs)}.eval-score-select{padding:var(--space-1) var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-secondary);color:var(--color-accent);font-size:var(--text-sm);font-weight:var(--weight-bold);min-width:56px;text-align:center;cursor:pointer;transition:border-color var(--transition-fast)}.eval-score-select:focus{border-color:var(--color-accent)}.eval-score-select--lg{font-size:var(--text-md);min-width:64px;padding:var(--space-2) var(--space-3)}.eval-score-select--wide{min-width:180px}.eval-field{display:flex;flex-direction:column;gap:var(--space-1)}.eval-field--full{grid-column:1 / -1}.eval-candidate-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:var(--space-4);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--space-6);box-shadow:var(--shadow-card)}.eval-skills-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:var(--space-4)}.eval-skill-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-4);box-shadow:var(--shadow-xs);transition:box-shadow var(--transition-fast),border-color var(--transition-fast),background-color var(--transition-fast);opacity:.7}.eval-skill-card--active{opacity:1;background:var(--color-bg-primary);border-color:var(--color-accent-subtle)}.eval-skill-card:hover{border-color:var(--color-border-hover);box-shadow:var(--shadow-sm)}.eval-skill-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-2)}.eval-skill-name{font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--color-text-primary)}.eval-checkbox-label{display:flex;align-items:flex-start;gap:var(--space-2);cursor:pointer;-webkit-user-select:none;user-select:none}.eval-checkbox-label input[type=checkbox]{margin-top:3px;cursor:pointer;accent-color:var(--color-accent)}.eval-tabs-scroll{margin-bottom:var(--space-5)}.eval-tabs{display:flex;flex-wrap:wrap;gap:var(--space-2);padding-bottom:0}.eval-tab{padding:var(--space-1) var(--space-3);font-size:var(--text-xs);font-weight:var(--weight-medium);color:var(--color-text-secondary);background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-full);transition:all var(--transition-fast);white-space:nowrap;cursor:pointer}.eval-tab:hover{color:var(--color-text-primary);border-color:var(--color-border-hover);background:var(--color-surface-hover)}.eval-tabs .eval-tab.eval-tab--active{color:var(--color-accent);background:var(--color-accent-light);border-color:var(--color-success);font-weight:var(--weight-bold)}.eval-tab-panel{display:flex;flex-direction:column;gap:var(--space-4)}.eval-question-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--space-5);box-shadow:var(--shadow-card);transition:box-shadow var(--transition-fast),border-color var(--transition-fast),background-color var(--transition-fast);opacity:.7}.eval-question-card--active{opacity:1;background:var(--color-bg-primary);border-color:var(--color-accent-subtle)}.eval-question-card:hover{box-shadow:var(--shadow-md)}.eval-q-header{display:flex;align-items:flex-start;gap:var(--space-3);margin-bottom:var(--space-3)}.eval-q-score-actions{display:flex;align-items:center;gap:var(--space-2);margin-left:auto}.eval-q-number{display:flex;align-items:center;justify-content:center;min-width:32px;height:32px;border-radius:var(--radius-full);background:var(--color-accent-light);color:var(--color-accent);font-size:var(--text-xs);font-weight:var(--weight-bold);flex-shrink:0}.eval-q-text{flex:1;font-size:var(--text-base);font-weight:var(--weight-semibold);color:var(--color-text-primary);line-height:var(--leading-tight)}.eval-q-topics{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-3)}.eval-q-answer{font-size:var(--text-sm);color:var(--color-text-secondary);line-height:var(--leading-relaxed)}.eval-q-answer-split{display:flex;flex-direction:column;gap:var(--space-4)}.eval-q-answer-section strong{display:block;font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-primary);margin-bottom:var(--space-1)}.eval-q-answer-section p{font-size:var(--text-sm);color:var(--color-text-secondary);line-height:var(--leading-relaxed)}.eval-q-answer-section pre{background:var(--color-bg-secondary);padding:var(--space-3);border-radius:var(--radius-md);border:1px solid var(--color-border);overflow-x:auto;font-size:var(--text-sm);color:var(--color-text-primary);margin-top:var(--space-1)}.eval-working-ui-container{margin-top:var(--space-2);padding:var(--space-3);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.eval-working-ui-container input,.eval-working-ui-container button{font-family:inherit;margin:4px}.eval-q-notes{margin-top:var(--space-3)}.eval-practical-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:var(--space-4);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--space-6);box-shadow:var(--shadow-card)}.eval-summary-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--space-6);box-shadow:var(--shadow-card)}.eval-layout{display:flex;align-items:flex-start;gap:var(--space-6)}.eval-main-content{flex:1;min-width:0}.eval-sidebar{width:280px;flex-shrink:0;position:sticky;top:calc(var(--header-height) + var(--space-6));z-index:10}.eval-scoreboard{padding:var(--space-5);background:var(--color-surface-glass);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--color-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl)}.eval-sidebar-title{margin-bottom:var(--space-4);font-size:var(--text-lg);font-weight:var(--weight-bold);color:var(--color-text-primary)}.eval-score-stack{display:flex;flex-direction:column;gap:var(--space-4)}.eval-score-card{display:flex;flex-direction:column;align-items:center;gap:var(--space-1);padding:var(--space-3);background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-lg)}.eval-score-card--highlight{background:var(--color-accent-light);border-color:var(--color-accent)}.eval-score-card-label{font-size:var(--text-xs);font-weight:var(--weight-semibold);color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.04em}.eval-score-card-value{font-size:var(--text-2xl);font-weight:var(--weight-extrabold);color:var(--color-accent);letter-spacing:-.02em}.eval-score-card-detail{font-size:var(--text-xs);color:var(--color-text-tertiary)}.eval-score-bar{width:100%;height:4px;background:var(--color-bg-tertiary);border-radius:var(--radius-full);overflow:hidden}.eval-score-bar-fill{height:100%;border-radius:var(--radius-full);transition:width var(--transition-slow)}.eval-rec-badge{display:inline-flex;align-items:center;padding:2px 10px;border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:var(--weight-bold);text-transform:uppercase;letter-spacing:.04em;margin-top:var(--space-1)}.eval-rec--strong-hire{background:var(--color-success-light);color:var(--color-success)}.eval-rec--hire{background:var(--color-info-light);color:var(--color-info)}.eval-rec--consider{background:var(--color-warning-light);color:var(--color-warning)}.eval-rec--hold{background:#fff7ed;color:#ea580c}.eval-rec--reject{background:var(--color-error-light);color:var(--color-error)}.eval-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:var(--z-modal);animation:fadeIn .2s ease}.eval-modal{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--space-8);max-width:440px;width:90%;box-shadow:var(--shadow-xl)}.eval-modal h3{font-size:var(--text-lg);font-weight:var(--weight-bold);color:var(--color-text-primary);margin-bottom:var(--space-2)}.eval-modal p{font-size:var(--text-sm);color:var(--color-text-secondary);margin-bottom:var(--space-5);line-height:var(--leading-relaxed)}.eval-modal-actions{display:flex;gap:var(--space-3);justify-content:flex-end}@media(max-width:1024px){.eval-layout{flex-direction:column-reverse}.eval-sidebar{width:100%;position:sticky;top:calc(var(--header-height) + var(--space-4))}.eval-score-stack{display:grid;grid-template-columns:repeat(4,1fr)}}@media(max-width:768px){.eval-hero{flex-direction:column;padding:var(--space-5)}.eval-hero-title{font-size:var(--text-2xl)}.eval-hero-actions{width:100%}.eval-action-btn{flex:1}.eval-candidate-grid,.eval-skills-grid{grid-template-columns:1fr}.eval-score-stack{grid-template-columns:repeat(2,1fr)}.eval-summary-grid,.eval-practical-grid{grid-template-columns:1fr}}@media(max-width:480px){.eval-score-stack{grid-template-columns:1fr}}:root{--color-bg-primary: #f0f4f8;--color-bg-secondary: #ffffff;--color-bg-tertiary: #e8edf2;--color-bg-code: #1e293b;--color-surface: #ffffff;--color-surface-hover: #f8fafc;--color-surface-active: #f1f5f9;--color-surface-glass: rgba(255, 255, 255, .72);--color-text-primary: #0f172a;--color-text-secondary: #475569;--color-text-tertiary: #94a3b8;--color-text-inverse: #ffffff;--color-text-code: #e2e8f0;--color-accent: #6366f1;--color-accent-hover: #4f46e5;--color-accent-light: #eef2ff;--color-accent-subtle: rgba(99, 102, 241, .08);--color-success: #10b981;--color-success-light: #ecfdf5;--color-warning: #f59e0b;--color-warning-light: #fffbeb;--color-error: #ef4444;--color-error-light: #fef2f2;--color-info: #3b82f6;--color-info-light: #eff6ff;--color-easy: #10b981;--color-easy-bg: #ecfdf5;--color-medium: #f59e0b;--color-medium-bg: #fffbeb;--color-hard: #ef4444;--color-hard-bg: #fef2f2;--color-border: #e2e8f0;--color-border-hover: #cbd5e1;--color-border-focus: #6366f1;--shadow-xs: 0 1px 2px rgba(0, 0, 0, .04);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .06), 0 1px 2px rgba(0, 0, 0, .04);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .07), 0 2px 4px -2px rgba(0, 0, 0, .05);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .08), 0 4px 6px -4px rgba(0, 0, 0, .04);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .08), 0 8px 10px -6px rgba(0, 0, 0, .04);--shadow-card: 0 1px 3px rgba(0, 0, 0, .08), 0 1px 2px rgba(0, 0, 0, .04);--shadow-card-hover: 0 8px 25px rgba(99, 102, 241, .12), 0 4px 10px rgba(0, 0, 0, .06);--shadow-glass: 0 8px 32px rgba(0, 0, 0, .06);--radius-xs: 4px;--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-2xl: 20px;--radius-full: 9999px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--space-16: 64px;--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "JetBrains Mono", "Fira Code", "Consolas", monospace;--text-xs: .75rem;--text-sm: .8125rem;--text-base: .875rem;--text-md: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--text-4xl: 2.25rem;--leading-tight: 1.25;--leading-normal: 1.5;--leading-relaxed: 1.625;--weight-regular: 400;--weight-medium: 500;--weight-semibold: 600;--weight-bold: 700;--weight-extrabold: 800;--header-height: 60px;--sidebar-width: 280px;--sidebar-collapsed-width: 0px;--content-max-width: 960px;--transition-fast: .15s ease;--transition-base: .2s ease;--transition-slow: .3s ease;--transition-spring: .3s cubic-bezier(.34, 1.56, .64, 1);--z-sidebar: 100;--z-header: 200;--z-overlay: 300;--z-modal: 400;--z-toast: 500}[data-theme=dark]{--color-bg-primary: #0b0f19;--color-bg-secondary: #111827;--color-bg-tertiary: #1e293b;--color-bg-code: #0d1117;--color-surface: #1e293b;--color-surface-hover: #273549;--color-surface-active: #334155;--color-surface-glass: rgba(30, 41, 59, .72);--color-text-primary: #f1f5f9;--color-text-secondary: #94a3b8;--color-text-tertiary: #64748b;--color-text-inverse: #0f172a;--color-text-code: #e2e8f0;--color-accent: #818cf8;--color-accent-hover: #6366f1;--color-accent-light: rgba(99, 102, 241, .15);--color-accent-subtle: rgba(129, 140, 248, .1);--color-success: #34d399;--color-success-light: rgba(16, 185, 129, .12);--color-warning: #fbbf24;--color-warning-light: rgba(245, 158, 11, .12);--color-error: #f87171;--color-error-light: rgba(239, 68, 68, .12);--color-info: #60a5fa;--color-info-light: rgba(59, 130, 246, .12);--color-easy: #34d399;--color-easy-bg: rgba(16, 185, 129, .12);--color-medium: #fbbf24;--color-medium-bg: rgba(245, 158, 11, .12);--color-hard: #f87171;--color-hard-bg: rgba(239, 68, 68, .12);--color-border: #1e293b;--color-border-hover: #334155;--color-border-focus: #818cf8;--shadow-xs: 0 1px 2px rgba(0, 0, 0, .2);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .3), 0 1px 2px rgba(0, 0, 0, .2);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .3), 0 2px 4px -2px rgba(0, 0, 0, .2);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .3), 0 4px 6px -4px rgba(0, 0, 0, .2);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .3), 0 8px 10px -6px rgba(0, 0, 0, .2);--shadow-card: 0 1px 3px rgba(0, 0, 0, .3), 0 1px 2px rgba(0, 0, 0, .2);--shadow-card-hover: 0 8px 25px rgba(129, 140, 248, .15), 0 4px 10px rgba(0, 0, 0, .2);--shadow-glass: 0 8px 32px rgba(0, 0, 0, .2)}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;scroll-behavior:smooth}body{font-family:var(--font-sans);font-size:var(--text-base);line-height:var(--leading-normal);color:var(--color-text-primary);background-color:var(--color-bg-primary);min-height:100vh;overflow-x:hidden}a{color:var(--color-accent);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-accent-hover)}ul,ol{list-style:none}img{max-width:100%;display:block}button{font-family:inherit;font-size:inherit;cursor:pointer;border:none;background:none;color:inherit}input,textarea,select{font-family:inherit;font-size:inherit;color:inherit;outline:none}code,pre{font-family:var(--font-mono)}::selection{background-color:var(--color-accent);color:var(--color-text-inverse)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background-color:var(--color-border);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background-color:var(--color-border-hover)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:var(--radius-sm)}.copy-toast{position:fixed;bottom:var(--space-6);right:var(--space-6);background:var(--color-accent);color:var(--color-text-inverse);padding:var(--space-3) var(--space-5);border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:var(--weight-medium);box-shadow:var(--shadow-lg);z-index:var(--z-toast);animation:toastSlideIn .3s ease,toastSlideOut .3s ease 1.7s forwards}@keyframes toastSlideIn{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes toastSlideOut{0%{transform:translateY(0);opacity:1}to{transform:translateY(20px);opacity:0}}.difficulty-badge{display:inline-flex;align-items:center;padding:2px 10px;border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:.05em}.difficulty-badge--easy{color:var(--color-easy);background-color:var(--color-easy-bg)}.difficulty-badge--medium{color:var(--color-medium);background-color:var(--color-medium-bg)}.difficulty-badge--hard{color:var(--color-hard);background-color:var(--color-hard-bg)}.tech-tag{display:inline-flex;align-items:center;padding:2px 8px;border-radius:var(--radius-sm);font-size:var(--text-xs);font-weight:var(--weight-medium);color:var(--color-accent);background-color:var(--color-accent-subtle);border:1px solid transparent}:root{--btn-font: inherit;--btn-radius: 10px;--btn-transition: .18s cubic-bezier(.4, 0, .2, 1);--btn-shadow-hover: 0 4px 14px rgba(0, 0, 0, .1);--btn-shadow-active: 0 1px 3px rgba(0, 0, 0, .08);--btn-primary-bg: var(--brand, var(--color-accent, #6366f1));--btn-primary-bg-hover: var(--brand-hover, var(--color-accent-hover, #4f46e5));--btn-primary-text: var(--btn-text-on-primary, #ffffff);--btn-secondary-bg: var(--panel, var(--color-surface, #ffffff));--btn-secondary-border: var(--line, var(--color-border, #e2e8f0));--btn-secondary-border-hover: var(--brand, var(--color-border-hover, #cbd5e1));--btn-secondary-text: var(--text, var(--color-text-primary, #0f172a));--btn-success-bg: #10b981;--btn-success-bg-hover: #059669;--btn-success-text: #ffffff;--btn-danger-bg: #ef4444;--btn-danger-bg-hover: #dc2626;--btn-danger-text: #ffffff;--btn-ghost-text: var(--muted, var(--color-text-secondary, #64748b));--btn-ghost-hover-bg: var(--panel-soft, var(--color-surface-hover, #f1f5f9));--btn-disabled-opacity: .45}button:not([class]),button:not([class*=btn-]):not([class*=button]):not([class*=theme-]):not([class*=code-block]):not([class*=sidebar-]):not([class*=mode-]):not([class*=accordion]):not([class*=hamburger]){display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:8px 16px;font-family:var(--btn-font);font-size:13px;font-weight:600;line-height:1;text-decoration:none;white-space:nowrap;background:var(--btn-secondary-bg);border:1.5px solid var(--btn-secondary-border);border-radius:var(--btn-radius);color:var(--btn-secondary-text);cursor:pointer;-webkit-user-select:none;user-select:none;transition:background var(--btn-transition),color var(--btn-transition),border-color var(--btn-transition),box-shadow var(--btn-transition),transform var(--btn-transition)}button:not([class]):hover,button:not([class*=btn-]):not([class*=button]):not([class*=theme-]):not([class*=code-block]):not([class*=sidebar-]):not([class*=mode-]):not([class*=accordion]):not([class*=hamburger]):hover{border-color:var(--btn-secondary-border-hover);background:var(--btn-ghost-hover-bg);box-shadow:var(--btn-shadow-hover);transform:translateY(-1px)}button:not([class]):active,button:not([class*=btn-]):not([class*=button]):not([class*=theme-]):not([class*=code-block]):not([class*=sidebar-]):not([class*=mode-]):not([class*=accordion]):not([class*=hamburger]):active{transform:translateY(0);box-shadow:var(--btn-shadow-active)}.btn-primary,.btn-secondary,.btn-success,.btn-danger,.btn-icon,.btn-ghost,.button,.theme-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 20px;font-family:var(--btn-font);font-size:14px;font-weight:600;line-height:1;letter-spacing:.01em;text-decoration:none;white-space:nowrap;border:1.5px solid transparent;border-radius:var(--btn-radius);cursor:pointer;-webkit-user-select:none;user-select:none;transition:background var(--btn-transition),color var(--btn-transition),border-color var(--btn-transition),box-shadow var(--btn-transition),transform var(--btn-transition);position:relative;overflow:hidden}.btn-primary:after,.btn-secondary:after,.btn-success:after,.btn-danger:after,.button:after,.button.primary:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at var(--ripple-x, 50%) var(--ripple-y, 50%),rgba(255,255,255,.25) 0%,transparent 60%);opacity:0;transition:opacity .3s ease;pointer-events:none}.btn-primary:active:after,.btn-secondary:active:after,.btn-success:active:after,.btn-danger:active:after,.button:active:after,.button.primary:active:after{opacity:1}.btn-primary,.button.primary{background:var(--btn-primary-bg);border-color:var(--btn-primary-bg);color:var(--btn-primary-text);box-shadow:0 1px 3px #6366f133}.btn-primary:hover,.button.primary:hover{background:var(--btn-primary-bg-hover);border-color:var(--btn-primary-bg-hover);box-shadow:var(--btn-shadow-hover),0 0 0 3px #6366f11f;transform:translateY(-1px)}.btn-primary:active,.button.primary:active{transform:translateY(0);box-shadow:var(--btn-shadow-active)}.btn-secondary,.button:not(.primary){background:var(--btn-secondary-bg);border-color:var(--btn-secondary-border);color:var(--btn-secondary-text)}.btn-secondary:hover,.button:not(.primary):hover{border-color:var(--btn-secondary-border-hover);background:var(--btn-ghost-hover-bg);box-shadow:var(--btn-shadow-hover);transform:translateY(-1px)}.btn-secondary:active,.button:not(.primary):active{transform:translateY(0);box-shadow:var(--btn-shadow-active)}.btn-success{background:var(--btn-success-bg);border-color:var(--btn-success-bg);color:var(--btn-success-text);box-shadow:0 1px 3px #10b98133}.btn-success:hover{background:var(--btn-success-bg-hover);border-color:var(--btn-success-bg-hover);box-shadow:var(--btn-shadow-hover),0 0 0 3px #10b9811f;transform:translateY(-1px)}.btn-success:active{transform:translateY(0);box-shadow:var(--btn-shadow-active)}.btn-danger{background:var(--btn-danger-bg);border-color:var(--btn-danger-bg);color:var(--btn-danger-text);box-shadow:0 1px 3px #ef444433}.btn-danger:hover{background:var(--btn-danger-bg-hover);border-color:var(--btn-danger-bg-hover);box-shadow:var(--btn-shadow-hover),0 0 0 3px #ef44441f;transform:translateY(-1px)}.btn-danger:active{transform:translateY(0);box-shadow:var(--btn-shadow-active)}.btn-ghost,.theme-button{background:transparent;border-color:var(--btn-secondary-border);color:var(--btn-ghost-text);padding:8px 14px}.btn-ghost:hover,.theme-button:hover{background:var(--btn-ghost-hover-bg);border-color:var(--btn-secondary-border-hover);color:var(--btn-secondary-text);box-shadow:var(--btn-shadow-hover);transform:translateY(-1px)}.btn-ghost:active,.theme-button:active{transform:translateY(0);box-shadow:var(--btn-shadow-active)}.btn-icon{width:38px;height:38px;padding:0;border-radius:var(--btn-radius);background:transparent;color:var(--btn-ghost-text);font-size:16px}.btn-icon:hover{background:var(--btn-ghost-hover-bg);color:var(--btn-secondary-text);box-shadow:var(--btn-shadow-hover)}.btn-sm{padding:6px 12px;font-size:12px;border-radius:7px;gap:4px}.btn-lg{padding:14px 28px;font-size:16px;border-radius:12px;gap:10px}.btn-primary:disabled,.btn-secondary:disabled,.btn-success:disabled,.btn-danger:disabled,.btn-icon:disabled,.btn-ghost:disabled,.button:disabled,.theme-button:disabled{opacity:var(--btn-disabled-opacity);cursor:not-allowed;pointer-events:none;transform:none!important;box-shadow:none!important}.btn-primary:focus-visible,.btn-secondary:focus-visible,.btn-success:focus-visible,.btn-danger:focus-visible,.btn-icon:focus-visible,.btn-ghost:focus-visible,.button:focus-visible,.theme-button:focus-visible{outline:2px solid var(--btn-primary-bg);outline-offset:2px}.nav-btn{flex:1;min-width:120px;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nav-btn--home{flex:0;min-width:auto}.grid .button{padding:14px 10px;font-size:18px;font-weight:700;border-radius:10px;min-height:52px}.grid .button.primary{font-size:20px}.code-block-btn{font-size:12px;color:#94a3b8;padding:4px 10px;border-radius:6px;background:#ffffff0f;transition:all var(--btn-transition);font-family:var(--font-mono, monospace);white-space:nowrap;cursor:pointer;border:none}.code-block-btn:hover{background:#ffffff1f;color:#e2e8f0}.code-block-copy{color:#93c5fd}.code-block-floating-copy{position:absolute;top:8px;right:8px;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px;background:#ffffff1a;font-size:14px;transition:all var(--btn-transition);opacity:0;cursor:pointer;border:none;color:#94a3b8}.code-block:hover .code-block-floating-copy{opacity:1}.code-block-floating-copy:hover{background:#ffffff2e}.sidebar-toggle-btn{display:flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:var(--btn-radius);transition:background var(--btn-transition);cursor:pointer;border:none;background:none}.sidebar-toggle-btn:hover{background:var(--btn-ghost-hover-bg)}.mode-toggle-btn,.theme-toggle-btn{display:inline-flex;align-items:center;gap:8px;padding:6px 14px;border-radius:9999px;font-size:13px;font-weight:500;color:var(--btn-ghost-text);background:var(--panel-soft, var(--color-bg-tertiary, #e8edf2));border:1px solid var(--btn-secondary-border);transition:all var(--btn-transition);cursor:pointer}.mode-toggle-btn:hover,.theme-toggle-btn:hover{border-color:var(--btn-secondary-border-hover);color:var(--btn-secondary-text)}.mode-toggle-btn--active,.theme-toggle-btn--active{background:var(--brand-soft, var(--color-accent-light, #eef2ff));color:var(--btn-primary-bg);border-color:var(--btn-primary-bg)}.accordion-trigger{width:100%;display:flex;align-items:center;justify-content:space-between;padding:16px 20px;background:var(--btn-secondary-bg);font-size:14px;font-weight:600;color:var(--btn-secondary-text);transition:background var(--btn-transition);text-align:left;border:none;cursor:pointer}.accordion-trigger:hover{background:var(--btn-ghost-hover-bg)}[data-theme=dark]{--btn-primary-bg: var(--brand, var(--color-accent, #818cf8));--btn-primary-bg-hover: var(--brand-hover, var(--color-accent-hover, #6366f1));--btn-secondary-bg: var(--panel, var(--color-surface, #1e293b));--btn-secondary-border: var(--line, var(--color-border, #1e293b));--btn-secondary-border-hover: var(--brand, var(--color-border-hover, #334155));--btn-secondary-text: var(--text, var(--color-text-primary, #f1f5f9));--btn-ghost-text: var(--muted, var(--color-text-secondary, #94a3b8));--btn-ghost-hover-bg: var(--panel-soft, var(--color-surface-hover, #273549));--btn-success-bg: #34d399;--btn-success-bg-hover: #10b981;--btn-danger-bg: #f87171;--btn-danger-bg-hover: #ef4444}.dark .btn-secondary,.dark .button:not(.primary){background:var(--btn-secondary-bg);border-color:var(--btn-secondary-border)}.dark .btn-ghost,.dark .theme-button{border-color:var(--btn-secondary-border);color:var(--btn-ghost-text)}@media(max-width:640px){.btn-primary,.btn-secondary,.btn-success,.btn-danger,.btn-ghost,.button,.theme-button{padding:9px 16px;font-size:13px}.nav-btn{width:100%;flex:unset}}#root{min-height:100vh}
