@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap";:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,sans-serif;font-size:15px;color:#0f172a;background:#f0f4f8;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"cv02","cv03","cv04","cv11"}*,*:before,*:after{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;overflow-x:hidden;line-height:1.6}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}p{margin:0}button,input,select,textarea{font:inherit}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:99px}::-webkit-scrollbar-thumb:hover{background:#94a3b8}#root{min-height:100vh}.adm-dash{display:grid;gap:24px}.adm-dash-loading{align-items:center;display:flex;flex-direction:column;gap:14px;justify-content:center;min-height:280px;color:var(--muted);font-size:14px}.adm-dash-spinner{display:block;width:36px;height:36px;border:3px solid var(--border);border-top-color:var(--blue);border-radius:50%;animation:dashSpin .7s linear infinite}@keyframes dashSpin{to{transform:rotate(360deg)}}.adm-dash-hero{align-items:flex-start;background:linear-gradient(120deg,#0f172a,#1e3a5f 55%,#0f766e);border-radius:var(--r-xl);box-shadow:var(--shadow-xl);display:flex;gap:24px;justify-content:space-between;overflow:hidden;padding:32px 36px;position:relative}.adm-dash-hero:before{background:radial-gradient(ellipse at top right,rgba(14,165,233,.22),transparent 60%);content:"";top:0;right:0;bottom:0;left:0;pointer-events:none;position:absolute}.adm-dash-hero:after{background:radial-gradient(ellipse at bottom left,rgba(109,40,217,.14),transparent 55%);content:"";top:0;right:0;bottom:0;left:0;pointer-events:none;position:absolute}.adm-dash-hero-left{position:relative;z-index:1}.adm-dash-hero-left .eyebrow{color:#7dd3fc;letter-spacing:.1em}.adm-dash-hero-left h1{color:#fff;font-size:28px;margin-top:6px}.adm-dash-hero-sub{color:#fff9;font-size:14px;line-height:1.7;margin-top:8px;max-width:520px}.adm-dash-hero-kpis{align-items:center;background:#ffffff12;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.13);border-radius:var(--r-lg);display:flex;flex-shrink:0;gap:0;overflow:hidden;position:relative;z-index:1}.adm-dash-hero-kpi{border-right:1px solid rgba(255,255,255,.1);display:grid;gap:4px;padding:18px 28px;text-align:center}.adm-dash-hero-kpi:last-child{border-right:none}.adm-dash-hero-kpi strong{color:#fff;display:block;font-size:30px;font-weight:800;letter-spacing:-.04em;line-height:1}.adm-dash-hero-kpi span{color:#ffffff8c;font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.adm-dash-section{display:grid;gap:14px}.adm-dash-section-head{align-items:flex-start;display:flex;gap:16px;justify-content:space-between}.adm-dash-section-head h2{font-size:18px;margin:0}.adm-dash-section-head .muted{font-size:13px;margin-top:4px}.adm-log-count{background:var(--blue-light);border:1px solid #bfdbfe;border-radius:var(--r-pill);color:var(--blue-dark);flex-shrink:0;font-size:12px;font-weight:800;padding:4px 12px;white-space:nowrap}.adm-kpi-grid{display:grid;gap:12px}.adm-kpi-grid.cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.adm-kpi-grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.adm-kpi-card{align-items:center;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);box-shadow:var(--shadow-sm);display:flex;gap:14px;overflow:hidden;padding:18px 20px;position:relative;transition:box-shadow .18s,transform .18s,border-color .18s}.adm-kpi-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.adm-kpi-card:before{border-radius:0;bottom:0;content:"";left:0;position:absolute;top:0;width:4px}.kpi-blue:before{background:linear-gradient(to bottom,#3b82f6,#1d4ed8)}.kpi-indigo:before{background:linear-gradient(to bottom,#6366f1,#4338ca)}.kpi-teal:before{background:linear-gradient(to bottom,#0d9488,#0f766e)}.kpi-green:before{background:linear-gradient(to bottom,#22c55e,#15803d)}.kpi-danger:before{background:linear-gradient(to bottom,#f87171,#dc2626)}.kpi-orange:before{background:linear-gradient(to bottom,#fb923c,#ea580c)}.adm-kpi-icon{align-items:center;background:var(--surface-soft);border:1px solid var(--border);border-radius:var(--r);display:flex;flex-shrink:0;font-size:22px;height:48px;justify-content:center;width:48px}.adm-kpi-body{display:grid;gap:3px;min-width:0}.adm-kpi-value{color:var(--text);display:block;font-size:28px;font-weight:800;letter-spacing:-.04em;line-height:1}.adm-kpi-label{color:var(--muted);font-size:12px;font-weight:700;letter-spacing:.02em}.adm-chart-panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);display:grid;gap:0;grid-template-columns:1fr 260px;overflow:hidden}.adm-bar-chart{align-items:flex-end;border-right:1px solid var(--border);display:flex;gap:0;height:220px;padding:24px 24px 0}.adm-bar-col{align-items:center;display:flex;flex:1;flex-direction:column;gap:6px;height:100%;justify-content:flex-end}.adm-bar-value{color:var(--text-soft);font-size:11px;font-weight:800;line-height:1}.adm-bar-track{align-self:stretch;background:var(--surface-soft);border-radius:var(--r-xs) var(--r-xs) 0 0;display:flex;flex-direction:column;flex:1;justify-content:flex-end;margin:0 6px;overflow:hidden;position:relative}.adm-bar-fill{border-radius:var(--r-xs) var(--r-xs) 0 0;min-height:6px;transition:height .6s cubic-bezier(.34,1.56,.64,1);width:100%}.adm-bar-label{background:var(--surface-soft);border-top:1px solid var(--border);color:var(--muted);font-size:10px;font-weight:700;letter-spacing:.01em;padding:8px 0;text-align:center;width:100%}.adm-quick-stats{display:flex;flex-direction:column;gap:0;padding:20px 22px}.adm-quick-stats-title{color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.08em;margin:0 0 14px;text-transform:uppercase}.adm-quick-stat-row{align-items:center;border-bottom:1px solid var(--border-soft);display:flex;gap:10px;padding:12px 0}.adm-quick-stat-row:last-child{border-bottom:none}.adm-quick-stat-dot{border-radius:50%;flex-shrink:0;height:8px;width:8px}.adm-quick-stat-label{color:var(--muted);flex:1;font-size:13px;font-weight:500}.adm-quick-stat-val{color:var(--text);font-size:14px;font-weight:800;letter-spacing:-.02em;white-space:nowrap}.adm-log-table-wrap{border:1px solid var(--border);border-radius:var(--r-md);overflow:hidden;overflow-x:auto}.adm-log-table{border-collapse:collapse;min-width:740px;width:100%}.adm-log-table thead{background:var(--surface-soft)}.adm-log-table th{border-bottom:1px solid var(--border);color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.07em;padding:11px 14px;text-align:left;text-transform:uppercase;white-space:nowrap}.adm-log-table td{border-bottom:1px solid var(--border-soft);color:var(--text-soft);font-size:13.5px;padding:11px 14px;vertical-align:middle}.adm-log-table tbody tr:last-child td{border-bottom:none}.adm-log-table tbody tr:hover td{background:#f8faff}.adm-log-table tbody tr:nth-child(2n) td{background:#fafbfd}.adm-log-table tbody tr:nth-child(2n):hover td{background:#f0f5ff}.col-idx{color:var(--muted-light);font-size:12px;width:42px}.adm-log-idx{font-variant-numeric:tabular-nums}.adm-log-user{align-items:center;display:flex;gap:9px}.adm-user-avatar{align-items:center;background:linear-gradient(135deg,#dbeafe,#ede9fe);border-radius:50%;color:#3730a3;display:inline-flex;flex-shrink:0;font-size:10px;font-weight:800;height:30px;justify-content:center;width:30px}.adm-log-username{color:var(--text);font-weight:600}.adm-log-lesson{color:var(--muted);font-size:13px;max-width:240px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.adm-score-cell{align-items:center;display:flex;flex-direction:column;gap:4px}.adm-score-chip{border-radius:var(--r-pill);font-size:11px;font-weight:800;letter-spacing:.02em;padding:3px 9px;white-space:nowrap}.chip-good{background:var(--success-bg);border:1px solid var(--success-bdr);color:var(--success)}.chip-mid{background:var(--warning-bg);border:1px solid var(--warning-bdr);color:var(--warning)}.chip-bad{background:var(--danger-bg);border:1px solid var(--danger-bdr);color:var(--danger)}.adm-score-bar-track{background:var(--border);border-radius:var(--r-pill);height:4px;overflow:hidden;width:64px}.adm-score-bar-fill{border-radius:var(--r-pill);height:100%}.bar-good{background:var(--success)}.bar-mid{background:var(--warning)}.bar-bad{background:var(--danger)}.adm-status-chip{border-radius:var(--r-pill);display:inline-block;font-size:11px;font-weight:800;letter-spacing:.02em;padding:4px 10px;white-space:nowrap}.adm-log-time{color:var(--muted);font-size:12px;font-variant-numeric:tabular-nums;white-space:nowrap}@media (max-width: 1024px){.adm-kpi-grid.cols-4,.adm-kpi-grid.cols-3{grid-template-columns:repeat(2,minmax(0,1fr))}.adm-chart-panel{grid-template-columns:1fr}.adm-bar-chart{border-right:none;border-bottom:1px solid var(--border)}.adm-quick-stats{border-top:none;padding:16px 20px}.adm-dash-hero{flex-direction:column}.adm-dash-hero-kpis{width:100%}}@media (max-width: 640px){.adm-dash-hero{padding:22px 20px}.adm-kpi-grid.cols-4,.adm-kpi-grid.cols-3{grid-template-columns:repeat(2,minmax(0,1fr))}.adm-dash-hero-kpi{padding:14px 16px}.adm-dash-hero-kpi strong{font-size:22px}.adm-bar-chart{height:160px}}:root{--bg: #f1f5f9;--surface: #ffffff;--surface-soft: #f8fafc;--text: #0f172a;--text-soft: #1e293b;--muted: #64748b;--muted-light: #94a3b8;--muted-lighter: #cbd5e1;--border: #e2e8f0;--border-soft: #f1f5f9;--blue: #2563eb;--blue-dark: #1d4ed8;--blue-light: #eff6ff;--blue-ring: rgba(37,99,235,.2);--indigo: #4f46e5;--teal: #0f766e;--teal-bg: #f0fdf9;--success: #16a34a;--success-bg: #f0fdf4;--success-bdr: #bbf7d0;--danger: #dc2626;--danger-bg: #fef2f2;--danger-bdr: #fecaca;--warning: #d97706;--warning-bg: #fffbeb;--warning-bdr: #fde68a;--shadow-xs: 0 1px 2px rgba(15,23,42,.04);--shadow-sm: 0 1px 3px rgba(15,23,42,.06), 0 2px 8px rgba(15,23,42,.04);--shadow-md: 0 4px 8px rgba(15,23,42,.08), 0 12px 28px rgba(15,23,42,.06);--shadow-lg: 0 8px 16px rgba(15,23,42,.09), 0 24px 48px rgba(15,23,42,.08);--shadow-xl: 0 12px 24px rgba(15,23,42,.1), 0 40px 80px rgba(15,23,42,.1);--r-xs: 4px;--r-sm: 6px;--r: 10px;--r-md: 12px;--r-lg: 16px;--r-xl: 20px;--r-pill: 999px}.app-layout{background:radial-gradient(ellipse 70% 40% at 20% -5%,rgba(37,99,235,.07),transparent),radial-gradient(ellipse 60% 35% at 80% 5%,rgba(14,165,233,.05),transparent),#f0f4f8;min-height:100vh}.app-main{padding:36px 20px 80px}.page-shell{margin:0 auto;max-width:780px;width:100%}.wide-shell{max-width:1200px}.navbar{background:#ffffffe0;backdrop-filter:blur(16px) saturate(180%);-webkit-backdrop-filter:blur(16px) saturate(180%);border-bottom:1px solid rgba(226,232,240,.8);position:sticky;top:0;z-index:50}.navbar-inner{align-items:center;display:grid;gap:16px;grid-template-columns:auto minmax(0,1fr) auto;margin:0 auto;max-width:1240px;min-height:64px;padding:0 24px}.brand{align-items:center;color:var(--text);display:inline-flex;gap:10px;min-width:max-content;text-decoration:none}.brand span{align-items:center;background:linear-gradient(135deg,#1d4ed8,#0ea5e9);border-radius:var(--r-sm);box-shadow:0 2px 10px #1d4ed859,inset 0 1px #ffffff26;color:#fff;display:inline-flex;font-size:14px;font-weight:900;height:34px;justify-content:center;letter-spacing:-.03em;width:34px}.brand strong{background:linear-gradient(135deg,var(--text) 30%,var(--blue) 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;font-size:17px;font-weight:800;letter-spacing:-.03em}.nav-links{align-items:center;display:flex;gap:2px;justify-content:center}.nav-links a,.link-button,.admin-dropdown summary{background:transparent;border:0;border-radius:var(--r-sm);color:var(--muted);cursor:pointer;font-size:13.5px;font-weight:600;padding:7px 11px;text-decoration:none;transition:background .15s,color .15s;white-space:nowrap}.nav-links a:hover,.link-button:hover,.admin-dropdown summary:hover,.admin-dropdown[open] summary{background:var(--blue-light);color:var(--blue-dark)}.nav-links a.active{background:var(--blue-light);color:var(--blue-dark);font-weight:700;position:relative}.nav-links a.active:after{background:var(--blue);border-radius:2px;bottom:-2px;content:"";height:2px;left:11px;position:absolute;right:11px}.adm-nav-dropdown{position:relative}.adm-nav-trigger{align-items:center;background:transparent;border:0;border-radius:var(--r-sm);color:var(--muted);cursor:pointer;display:inline-flex;font-size:13.5px;font-weight:600;gap:5px;padding:7px 11px;transition:background .15s,color .15s}.adm-nav-trigger:hover,.adm-nav-trigger.is-open{background:var(--blue-light);color:var(--blue-dark)}.adm-nav-trigger.is-active{background:var(--blue-light);color:var(--blue-dark);font-weight:700}.adm-nav-chevron{flex-shrink:0;opacity:.55;transition:transform .18s ease}.adm-nav-trigger.is-open .adm-nav-chevron{transform:rotate(180deg);opacity:.8}.adm-nav-menu{animation:dropIn .16s cubic-bezier(.16,1,.3,1);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-xl),0 0 0 1px #2563eb0d;min-width:280px;overflow:hidden;position:absolute;right:0;top:calc(100% + 8px);z-index:100}@keyframes dropIn{0%{opacity:0;transform:translateY(-8px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.adm-nav-menu-header{align-items:center;background:linear-gradient(110deg,#0f172a,#1e3a5f);color:#ffffffbf;display:flex;font-size:11px;font-weight:800;gap:7px;letter-spacing:.06em;padding:10px 14px;text-transform:uppercase}.adm-nav-group{padding:6px 6px 2px}.adm-nav-group+.adm-nav-group{border-top:1px solid var(--border-soft);margin-top:2px}.adm-nav-group-label{color:var(--muted-lighter);font-size:9px;font-weight:800;letter-spacing:.1em;margin:2px 8px 4px;text-transform:uppercase}.adm-nav-item{align-items:center;border-radius:var(--r-sm);color:var(--text-soft);display:flex;gap:10px;padding:7px 10px;text-decoration:none;transition:background .12s,color .12s}.adm-nav-item:hover{background:var(--surface-soft);color:var(--text)}.adm-nav-item.is-active{background:var(--blue-light);color:var(--blue-dark)}.adm-nav-item-icon{align-items:center;background:var(--surface-soft);border:1px solid var(--border);border-radius:var(--r-xs);display:inline-flex;flex-shrink:0;font-size:14px;height:30px;justify-content:center;width:30px}.adm-nav-item.is-active .adm-nav-item-icon{background:#dbeafe;border-color:#bfdbfe}.adm-nav-item-body{display:flex;flex-direction:column;gap:1px;min-width:0}.adm-nav-item-label{font-size:13px;font-weight:700;line-height:1.2}.adm-nav-item-desc{color:var(--muted-light);font-size:11px;line-height:1.2}.adm-nav-item.is-active .adm-nav-item-desc{color:#93c5fd}.adm-nav-menu-footer{border-top:1px solid var(--border);margin-top:2px;padding:6px}.adm-nav-dashboard-link{align-items:center;background:linear-gradient(to right,#eff6ff,#f0f9ff);border:1px solid #bfdbfe;border-radius:var(--r-sm);color:var(--blue-dark);display:flex;font-size:12.5px;font-weight:700;gap:7px;padding:8px 12px;text-decoration:none;transition:background .12s,border-color .12s}.adm-nav-dashboard-link:hover{background:var(--blue-light);border-color:#93c5fd}.adm-nav-arrow{margin-left:auto;opacity:.6}.user-menu{align-items:center;display:flex;gap:6px}.user-menu span,.user-profile-link{background:var(--surface-soft);border:1px solid var(--border);border-radius:var(--r-pill);color:var(--text-soft);display:inline-block;font-size:13px;font-weight:700;max-width:148px;overflow:hidden;padding:6px 14px;text-decoration:none;text-overflow:ellipsis;white-space:nowrap;transition:background .15s,border-color .15s,color .15s}.user-profile-link:hover{background:var(--blue-light);border-color:#bfdbfe;color:var(--blue-dark)}h1,h2,h3,h4{color:var(--text);letter-spacing:-.025em;line-height:1.2;margin:0}h1{font-size:30px;font-weight:800}h2{font-size:21px;font-weight:700}h3{font-size:16px;font-weight:700}h4{font-size:14px;font-weight:700}.eyebrow{color:var(--blue);font-size:11px;font-weight:800;letter-spacing:.08em;margin:0 0 6px;text-transform:uppercase}.muted,.form-footer{color:var(--muted);line-height:1.65;margin:8px 0 0}.form-footer{text-align:center}.form-footer a,.text-link{color:var(--blue);font-weight:700;text-decoration:none}.form-footer a:hover,.text-link:hover{text-decoration:underline}.text-link{display:inline-flex;margin-bottom:16px}label{color:var(--text-soft);display:grid;font-size:13px;font-weight:700;gap:6px;min-width:0;text-align:left}input,select,textarea{background:var(--surface);border:1px solid #d1d5db;border-radius:var(--r-sm);color:var(--text);min-height:42px;padding:9px 13px;transition:border-color .15s,box-shadow .15s;width:100%}textarea{min-height:unset;resize:vertical}input::placeholder,textarea::placeholder{color:var(--muted-light)}input:focus,select:focus,textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px var(--blue-ring);outline:none}.auth-form,.home-panel{display:grid;gap:20px}.auth-form{margin:0 auto;max-width:420px}.panel.auth-form{border-radius:var(--r-lg);box-shadow:var(--shadow-xl);padding:32px 36px;position:relative;overflow:hidden}.panel.auth-form:before{background:linear-gradient(90deg,#2563eb,#0ea5e9,#6366f1);content:"";height:4px;left:0;position:absolute;right:0;top:0}.primary-button,.secondary-button,.ghost-button,.danger-button{align-items:center;border-radius:var(--r-sm);cursor:pointer;display:inline-flex;font-size:14px;font-weight:700;gap:6px;justify-content:center;letter-spacing:-.01em;min-height:40px;padding:9px 18px;text-decoration:none;transition:background .15s,border-color .15s,box-shadow .15s,transform .12s,opacity .15s;white-space:nowrap}.primary-button{background:linear-gradient(to bottom,#3b82f6,var(--blue));border:1px solid var(--blue-dark);box-shadow:inset 0 1px #ffffff26,0 2px 6px #2563eb4d;color:#fff}.primary-button:hover{background:linear-gradient(to bottom,var(--blue),var(--blue-dark));box-shadow:inset 0 1px #ffffff1a,0 4px 14px #2563eb6b;transform:translateY(-1px)}.primary-button:active{transform:translateY(0);box-shadow:none}.primary-button:disabled,.secondary-button:disabled,.ghost-button:disabled,.danger-button:disabled{cursor:not-allowed;opacity:.5;transform:none!important;box-shadow:none!important}.secondary-button{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-xs);color:var(--text-soft)}.secondary-button:hover{background:var(--surface-soft);border-color:#cbd5e1}.ghost-button{background:transparent;border:1px solid transparent;color:var(--blue)}.ghost-button:hover{background:var(--blue-light);color:var(--blue-dark)}.danger-button{background:var(--surface);border:1px solid var(--danger-bdr);color:var(--danger)}.danger-button:hover{background:var(--danger-bg);border-color:#fca5a5}.actions,.admin-form-actions,.table-actions{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.panel,.course-card,.course-detail,.lesson-card,.lesson-detail,.question-card,.quiz-result,.feedback-dashboard,.dashboard-card,.dashboard-panel,.admin-form,.admin-table-panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--r);box-shadow:var(--shadow-sm)}.panel{padding:28px}.alert,.success-alert,.state-message{border-radius:var(--r);font-size:14px;line-height:1.55;margin:0;padding:12px 16px}.alert{background:var(--danger-bg);border:1px solid var(--danger-bdr);color:var(--danger)}.success-alert{background:var(--success-bg);border:1px solid var(--success-bdr);color:var(--success)}.state-message{background:var(--surface-soft);border:1px dashed var(--border);color:var(--muted);padding:32px 20px;text-align:center}.compact-alert{font-size:13px;padding:9px 13px}.section-heading{align-items:flex-end;display:flex;gap:20px;justify-content:space-between;margin-bottom:20px}.section-heading .muted{max-width:480px;margin:6px 0 0}.compact-heading{align-items:center;margin-bottom:14px}.home-page{display:grid;gap:24px;margin:0 auto;max-width:1200px;width:100%}.home-hero{background:linear-gradient(115deg,#0a1223f5,#055a4eb3),url(/assets/hero-CLDdwZDr.png) center / cover;border-radius:var(--r-xl);box-shadow:var(--shadow-xl);color:#fff;min-height:360px;overflow:hidden;padding:clamp(28px,5vw,60px);position:relative}.home-hero:after{background:radial-gradient(ellipse at top right,rgba(14,165,233,.22),transparent 60%);content:"";top:0;right:0;bottom:0;left:0;position:absolute;pointer-events:none}.home-hero-content{display:grid;gap:16px;max-width:560px;position:relative;z-index:1}.home-hero .eyebrow{color:#7dd3fc;letter-spacing:.1em}.home-hero h1{color:#fff;font-size:clamp(28px,5vw,56px);line-height:1.07;text-shadow:0 2px 16px rgba(0,0,0,.2)}.home-hero p:not(.eyebrow){color:#bfdbfe;font-size:16px;line-height:1.75;max-width:480px}.home-hero .secondary-button{background:#ffffff1a;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border-color:#ffffff4d;color:#fff}.home-hero .secondary-button:hover{background:#fff3}.home-section{display:grid;gap:14px}.home-section-heading{align-items:center;display:flex;gap:12px;justify-content:space-between}.home-section-heading h2{margin:0}.home-section-heading span{color:var(--muted);font-size:13px;font-weight:600}.home-stat-grid{display:grid;gap:14px;grid-template-columns:repeat(4,minmax(0,1fr))}.home-stat-card,.continue-learning-card,.home-trending-card,.home-footer{background:var(--surface);border:1px solid var(--border);border-radius:var(--r);box-shadow:var(--shadow-sm)}.home-stat-card{display:grid;gap:6px;padding:18px 20px;overflow:hidden;position:relative;transition:box-shadow .18s,transform .18s}.home-stat-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.home-stat-card span{color:var(--muted);font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.home-stat-card strong{color:var(--text);font-size:32px;font-weight:800;letter-spacing:-.04em;line-height:1}.home-stat-card p{color:var(--muted);font-size:13px;margin:0}.continue-learning-card{align-items:center;display:grid;gap:14px;grid-template-columns:minmax(0,1fr) auto;padding:20px 22px}.continue-learning-card h3,.continue-learning-card p{margin:0}.continue-learning-card p:not(.eyebrow){color:var(--muted);margin-top:4px}.continue-learning-card>strong{color:var(--blue);font-size:32px;font-weight:800;letter-spacing:-.04em}.continue-learning-card .course-progress-bar{grid-column:1/-1}.continue-learning-card .primary-button{justify-self:start}.home-trending-list{display:grid;gap:12px}.home-trending-card{align-items:center;color:inherit;display:grid;gap:16px;grid-template-columns:160px minmax(0,1fr);overflow:hidden;padding:12px;text-decoration:none;transition:box-shadow .18s,transform .18s,border-color .18s}.home-trending-card:hover{border-color:#93c5fd;box-shadow:var(--shadow-md);transform:translateY(-2px)}.home-trending-thumb{align-items:center;background:linear-gradient(135deg,#dbeafe,#e0f2fe);border-radius:var(--r-sm);color:var(--blue-dark);display:flex;font-weight:800;height:104px;justify-content:center;overflow:hidden}.home-trending-thumb img{height:100%;object-fit:cover;width:100%}.home-trending-card h3{font-size:15px;margin:0}.home-trending-card p{color:var(--muted);display:-webkit-box;font-size:13px;line-height:1.6;margin:5px 0 0;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}.home-trending-meta{display:flex;flex-wrap:wrap;gap:5px;margin-top:8px}.home-trending-meta span{background:var(--surface-soft);border:1px solid var(--border);border-radius:var(--r-pill);color:var(--muted);font-size:11px;font-weight:700;padding:3px 9px}.home-footer{align-items:center;display:flex;gap:12px;justify-content:space-between;padding:16px 20px}.home-footer span{color:var(--muted);font-size:13px}.status-badge{background:var(--teal-bg);border:1px solid #99f6e4;border-radius:var(--r-pill);color:var(--teal);flex:0 0 auto;font-size:11px;font-weight:800;letter-spacing:.02em;padding:4px 10px}.trend-badge{background:#fff7ed;border:1px solid #fed7aa;border-radius:var(--r-pill);color:#c2410c;flex:0 0 auto;font-size:11px;font-weight:800;padding:4px 10px}.status-pill{border-radius:var(--r-pill);display:inline-block;font-size:11px;font-weight:800;letter-spacing:.02em;padding:3px 9px}.courses-page{display:grid;gap:22px}.course-section{display:grid;gap:14px}.course-list-hero{background:linear-gradient(135deg,#eff6ff,#ecfdf5);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);padding:28px}.course-list-hero h1{margin:0}.course-list-hero p:not(.eyebrow){color:var(--muted);line-height:1.7;margin-top:8px;max-width:640px}.course-toolbar{align-items:end;background:var(--surface);border:1px solid var(--border);border-radius:var(--r);box-shadow:var(--shadow-sm);display:grid;gap:14px;grid-template-columns:minmax(240px,1fr) auto;padding:14px 16px}.course-search{display:grid;gap:5px}.course-search span{color:var(--muted);font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.course-filter-group{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}.course-filter-group button{background:var(--surface-soft);border:1px solid var(--border);border-radius:var(--r-pill);color:var(--muted);cursor:pointer;font-size:13px;font-weight:700;min-height:34px;padding:5px 14px;transition:background .15s,border-color .15s,color .15s}.course-filter-group button.active,.course-filter-group button:hover{background:var(--blue-light);border-color:#93c5fd;color:var(--blue-dark)}.course-grid{display:grid;gap:16px;grid-template-columns:repeat(3,minmax(0,1fr))}.course-card{color:inherit;display:grid;overflow:hidden;text-decoration:none;transition:border-color .18s,box-shadow .18s,transform .18s}.course-card:hover{border-color:#93c5fd;box-shadow:var(--shadow-lg),0 0 0 1px #93c5fd;transform:translateY(-4px)}.course-thumbnail,.course-detail-media{align-items:center;background:linear-gradient(135deg,#dbeafe,#e0f2fe);color:var(--blue-dark);display:flex;font-size:38px;font-weight:800;justify-content:center;overflow:hidden}.course-thumbnail{height:186px;position:relative}.course-thumbnail img,.course-detail-media img{height:100%;object-fit:cover;width:100%}.thumbnail-placeholder{align-items:center;display:grid;gap:8px;justify-items:center}.thumbnail-placeholder span{align-items:center;background:#2563eb1a;border:1px solid rgba(37,99,235,.18);border-radius:var(--r-pill);display:flex;height:64px;justify-content:center;width:64px}.thumbnail-placeholder small{color:var(--muted);font-size:12px}.course-card-content{display:grid;gap:11px;padding:15px 16px}.course-card-header,.course-title-row{align-items:flex-start;display:flex;gap:10px;justify-content:space-between}.course-card h2{display:-webkit-box;font-size:16px;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}.course-card p{color:var(--muted);display:-webkit-box;font-size:13px;line-height:1.6;margin:0;min-height:42px;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}.course-card-action{color:var(--blue);font-size:13px;font-weight:700}.product-course-card{min-height:100%}.product-course-card:hover{box-shadow:var(--shadow-xl),0 0 0 1px #93c5fd;transform:translateY(-5px)}.course-metric-row{display:grid;gap:5px;grid-template-columns:repeat(3,minmax(0,1fr))}.course-metric-row span{background:var(--surface-soft);border:1px solid var(--border);border-radius:var(--r-sm);color:var(--muted);font-size:11px;font-weight:700;padding:7px;text-align:center}.trending-course-card{border-color:#dbeafe}.trend-stats{display:grid;gap:5px;grid-template-columns:repeat(3,minmax(0,1fr))}.trend-stats span{background:var(--surface-soft);border:1px solid var(--border);border-radius:var(--r-sm);color:var(--muted);display:grid;font-size:11px;font-weight:700;gap:2px;padding:8px}.trend-stats strong{color:var(--text);font-size:18px;font-weight:800;letter-spacing:-.03em;line-height:1}.course-detail-page,.lesson-watch-page{display:grid;gap:20px}.course-detail{display:grid;grid-template-columns:minmax(220px,340px) 1fr;overflow:hidden}.course-detail-hero{box-shadow:var(--shadow-md)}.course-detail-media{min-height:240px}.course-detail-body{display:grid;gap:18px;padding:26px 28px}.course-description{color:var(--muted);font-size:15px;line-height:1.75;margin:0}.course-hero-stats{display:grid;gap:8px;grid-template-columns:repeat(4,minmax(0,1fr))}.course-hero-stats div{background:var(--surface-soft);border:1px solid var(--border);border-radius:var(--r);display:grid;gap:4px;padding:13px}.course-hero-stats strong{color:var(--text);font-size:22px;font-weight:800;letter-spacing:-.04em;line-height:1}.course-hero-stats span{color:var(--muted);font-size:11px;font-weight:700}.course-start-button{justify-self:start}.detail-list{border-top:1px solid var(--border);display:grid;gap:14px;grid-template-columns:repeat(2,minmax(0,1fr));margin:0;padding-top:18px}.detail-list div{display:grid;gap:4px}.inline-button,.lessons-section,.learning-path-section{margin-top:4px}.lesson-list{display:grid;gap:8px}.learning-path-list{display:grid;gap:0;padding-left:20px;position:relative}.learning-path-list:before{background:linear-gradient(to bottom,var(--blue-light),var(--border));content:"";left:20px;position:absolute;top:24px;bottom:24px;width:2px}.lesson-card{align-items:center;color:inherit;display:grid;gap:12px;grid-template-columns:auto minmax(0,1fr) auto;padding:13px 16px;text-decoration:none;transition:border-color .15s,box-shadow .15s,background .15s}.lesson-card:hover{background:#f8faff;border-color:#93c5fd;box-shadow:var(--shadow-sm)}.learning-path-card{border-color:transparent;border-left:none;border-radius:0 var(--r) var(--r) 0;margin-bottom:6px;margin-left:20px;position:relative}.learning-path-card:before{background:var(--border);content:"";height:2px;left:-20px;position:absolute;top:50%;transform:translateY(-50%);width:20px}.roadmap-marker{align-items:center;display:flex}.roadmap-status-dot{background:var(--muted-lighter);border:2px solid var(--surface);border-radius:50%;height:14px;left:-27px;position:absolute;top:50%;transform:translateY(-50%);width:14px}.roadmap-status-dot.completed{background:var(--success);border-color:var(--success-bg);box-shadow:0 0 0 3px #16a34a26}.lesson-order{align-items:center;background:var(--surface-soft);border:1px solid var(--border);border-radius:var(--r-sm);color:var(--muted);display:flex;font-size:11px;font-weight:800;height:28px;justify-content:center;min-width:28px}.lesson-content{display:grid;gap:3px;min-width:0}.lesson-title-line{align-items:center;display:flex;gap:8px;justify-content:space-between}.lesson-meta{align-items:center;display:flex;flex-wrap:wrap;gap:4px;margin-top:2px}.lesson-meta span{background:var(--surface-soft);border:1px solid var(--border);border-radius:var(--r-pill);color:var(--muted);font-size:11px;font-weight:700;padding:2px 8px}.lesson-watch-layout{display:grid;gap:20px;grid-template-columns:minmax(0,1fr) 330px}.lesson-media-column{display:grid;gap:16px;min-width:0}.lesson-video-card,.webcam-focus-panel,.lesson-info-panel,.next-lesson-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-sm)}.lesson-video-card{padding:16px}.lesson-card-heading{align-items:flex-start;display:flex;gap:12px;justify-content:space-between;margin-bottom:12px}.lesson-video-frame{aspect-ratio:16/9;background:#0f172a;border-radius:var(--r);min-height:180px;overflow:hidden;position:relative}.lesson-video-frame .lesson-video{background:#0f172a;border:none;border-radius:var(--r);display:block;height:100%;min-height:0;object-fit:contain;width:100%}.lesson-video-frame iframe.lesson-video{object-fit:unset}.lesson-video-frame .video-placeholder{height:100%}.video-placeholder{align-items:center;background:linear-gradient(135deg,#f8fafc,#eff6ff);border-radius:var(--r);color:var(--muted);display:flex;flex-direction:column;gap:12px;justify-content:center;min-height:260px;padding:40px 20px;text-align:center}.lesson-empty-video{background:linear-gradient(135deg,#f8fafc,#eff6ff);height:100%}.video-placeholder h2{font-size:18px;color:var(--text-soft)}.video-placeholder p{font-size:14px;max-width:300px}.video-play-orb{align-items:center;background:linear-gradient(135deg,var(--blue),#0ea5e9);border-radius:50%;box-shadow:0 6px 20px #2563eb4d;color:#fff;display:flex;font-size:22px;height:72px;justify-content:center;width:72px}.webcam-focus-panel{padding:18px}.webcam-focus-header{align-items:flex-start;display:flex;gap:10px;justify-content:space-between;margin-bottom:12px}.webcam-focus-header h2{font-size:16px}.webcam-focus-header p{color:var(--muted);font-size:13px;margin-top:4px}.webcam-status{border-radius:var(--r-pill);flex-shrink:0;font-size:11px;font-weight:800;letter-spacing:.04em;padding:4px 11px;white-space:nowrap}.webcam-status.is-off{background:var(--surface-soft);border:1px solid var(--border);color:var(--muted)}.webcam-status.is-denied{background:var(--danger-bg);border:1px solid var(--danger-bdr);color:var(--danger)}.webcam-status.is-focused{background:var(--success-bg);border:1px solid var(--success-bdr);color:var(--success)}.webcam-status.is-distracted{background:var(--warning-bg);border:1px solid var(--warning-bdr);color:var(--warning)}.webcam-status.is-no-face,.webcam-status.is-drowsy{background:var(--danger-bg);border:1px solid var(--danger-bdr);color:var(--danger)}.webcam-preview{background:#0f172a;border-radius:var(--r);overflow:hidden}.webcam-preview video{display:block;height:170px;object-fit:cover;transform:scaleX(-1);width:100%}.webcam-placeholder{align-items:center;color:var(--muted);display:flex;flex-direction:column;font-size:13px;gap:8px;height:170px;justify-content:center}.webcam-placeholder span{font-size:26px;opacity:.35}.webcam-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.webcam-note{color:var(--muted);font-size:12px;line-height:1.55;margin:8px 0 0}.lesson-info-panel{align-self:start;display:grid;gap:0;overflow:hidden;position:sticky;top:80px}.lesson-title-block{border-bottom:1px solid var(--border);padding:18px 20px}.lesson-title-block h1{font-size:18px;margin-top:6px}.lesson-title-block .eyebrow{color:var(--blue)}.lesson-course-badge,.lesson-progress-badge{border-radius:var(--r-pill);display:inline-block;font-size:11px;font-weight:800;letter-spacing:.02em;padding:3px 10px}.lesson-course-badge{background:var(--blue-light);color:var(--blue-dark)}.lesson-progress-badge{background:var(--success-bg);border:1px solid var(--success-bdr);color:var(--success)}.lesson-info-grid{border-bottom:1px solid var(--border);display:grid;gap:0;grid-template-columns:repeat(2,minmax(0,1fr));padding:14px 20px}.lesson-info-grid>div{display:grid;gap:3px}.lesson-info-grid dt{color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.lesson-info-grid dd{color:var(--text);font-size:14px;font-weight:600;margin:0}.lesson-interaction-panel{border-bottom:1px solid var(--border);padding:14px 20px}.lesson-primary-actions{display:flex;flex-direction:column;gap:8px}.lesson-primary-actions .primary-button{width:100%}.quiz-cta-button{background:linear-gradient(to bottom,#7c3aed,#6d28d9);border-color:#5b21b6;box-shadow:0 2px 8px #6d28d94d;color:#fff}.quiz-cta-button:hover{background:linear-gradient(to bottom,#6d28d9,#5b21b6);box-shadow:0 4px 16px #6d28d966}.lesson-progress-panel{padding:14px 20px}.lesson-stat-grid{display:grid;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:10px}.lesson-compact-stats{display:grid;gap:6px;margin-top:8px}.lesson-compact-stat{align-items:center;display:flex;justify-content:space-between}.lesson-compact-stat span:first-child{color:var(--muted);font-size:13px}.lesson-compact-stat span:last-child{font-weight:700}.reaction-actions{display:flex;gap:8px;margin-top:10px}.reaction-button{align-items:center;background:var(--surface-soft);border:1px solid var(--border);border-radius:var(--r-sm);color:var(--muted);cursor:pointer;display:flex;font-size:13px;font-weight:700;gap:5px;padding:6px 12px;transition:background .15s,border-color .15s,color .15s}.reaction-button:hover{background:var(--blue-light);border-color:#bfdbfe;color:var(--blue)}.reaction-button.active{background:var(--blue-light);border-color:#93c5fd;color:var(--blue-dark)}.reaction-button.is-like.active{background:var(--success-bg);border-color:var(--success-bdr);color:var(--success)}.reaction-button.is-dislike.active{background:var(--danger-bg);border-color:var(--danger-bdr);color:var(--danger)}.reaction-button.is-view{cursor:default}.next-lesson-section{display:grid;gap:8px}.next-lesson-card{align-items:center;color:inherit;display:flex;gap:14px;justify-content:space-between;padding:15px 18px;text-decoration:none;transition:box-shadow .15s,border-color .15s}.next-lesson-card:hover{border-color:#93c5fd;box-shadow:var(--shadow-md)}.next-lesson-card p{color:var(--muted);font-size:13px;margin:4px 0 0}.focus-score-display{align-items:center;background:var(--surface-soft);border:1px solid var(--border);border-radius:var(--r);display:flex;font-size:14px;gap:10px;justify-content:space-between;margin-top:10px;padding:10px 14px}.score-good{color:var(--success);font-size:18px;font-weight:800}.score-mid{color:var(--warning);font-size:18px;font-weight:800}.score-low{color:var(--danger);font-size:18px;font-weight:800}.lesson-notes-panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--r);display:grid;gap:10px;padding:16px}.lesson-note-textarea{border-color:var(--border);border-radius:var(--r-sm);font-size:14px;line-height:1.65;min-height:100px}.quiz-layout{display:grid;gap:20px;margin:0 auto;max-width:700px}.quiz-header{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);padding:18px 22px}.quiz-progress{align-items:center;display:flex;gap:12px;justify-content:space-between}.quiz-progress-bar-wrap{background:var(--surface-soft);border-radius:var(--r-pill);flex:1;height:7px;overflow:hidden}.quiz-progress-bar-fill{background:linear-gradient(90deg,var(--blue),#0ea5e9);border-radius:var(--r-pill);height:100%;transition:width .35s ease}.quiz-form{display:grid;gap:14px}.question-card{display:grid;gap:16px;padding:22px 24px}.question-heading{font-size:17px;font-weight:700;line-height:1.55}.answer-list{display:grid;gap:8px;list-style:none;margin:0;padding:0}.answer-option{align-items:center;background:var(--surface-soft);border:1.5px solid var(--border);border-radius:var(--r);cursor:pointer;display:flex;gap:12px;padding:13px 16px;text-align:left;transition:background .15s,border-color .15s,box-shadow .15s;width:100%}.answer-option:hover{background:var(--blue-light);border-color:#93c5fd}.answer-option.selected{background:var(--blue-light);border-color:var(--blue);box-shadow:0 0 0 3px var(--blue-ring)}.answer-option input[type=radio]{accent-color:var(--blue);height:16px;min-height:unset;width:16px}.answer-letter{align-items:center;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-sm);color:var(--muted);display:inline-flex;flex-shrink:0;font-size:12px;font-weight:800;height:28px;justify-content:center;width:28px}.answer-option.selected .answer-letter{background:var(--blue);border-color:var(--blue);color:#fff}.quiz-submit-button{width:100%}.quiz-result{display:grid;gap:20px;padding:28px;text-align:center}.result-grid,.feedback-metrics{display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr));margin:0}.result-grid dt,.feedback-metrics dt{color:var(--muted);font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.result-grid dd,.feedback-metrics dd{color:var(--text);font-size:24px;font-weight:800;letter-spacing:-.04em;margin:4px 0 0}.feedback-dashboard{display:grid;gap:20px;padding:28px}.feedback-hero{border-bottom:1px solid var(--border);padding-bottom:20px}.feedback-hero h1{font-size:24px;margin-top:6px}.feedback-hero p:not(.eyebrow){color:var(--muted);font-size:15px;line-height:1.7;margin-top:8px;max-width:600px}.feedback-score-grid{display:grid;gap:10px;grid-template-columns:repeat(3,minmax(0,1fr))}.feedback-score-card{background:var(--surface-soft);border:1px solid var(--border);border-radius:var(--r);display:grid;gap:4px;padding:14px 16px}.feedback-score-card span{color:var(--muted);font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.feedback-score-card strong{color:var(--text);font-size:26px;font-weight:800;letter-spacing:-.04em;line-height:1}.learning-suggestion-card{background:linear-gradient(135deg,var(--blue-light),#f0fdf9);border:1px solid #bfdbfe;border-radius:var(--r);padding:18px}.learning-suggestion-card h3{font-size:15px;margin-bottom:6px}.learning-suggestion-card p{color:var(--muted);font-size:14px;line-height:1.65}.feedback-status{background:var(--success-bg);border:1px solid var(--success-bdr);border-radius:var(--r-pill);color:var(--success);display:inline-block;font-size:11px;font-weight:800;padding:3px 10px}.feedback-summary-list,.learning-suggestion-list{display:grid;gap:10px}.feedback-summary-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);overflow:hidden}.feedback-summary-header{border-bottom:1px solid var(--border);padding:18px 22px}.feedback-summary-status{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.dashboard-page{display:grid;gap:20px}.dashboard-grid{display:grid;gap:12px;grid-template-columns:repeat(4,minmax(0,1fr))}.dashboard-overview-grid{display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr))}.dashboard-section{display:grid;gap:12px}.dashboard-section-header{align-items:center;display:flex;gap:12px;justify-content:space-between}.dashboard-card{display:grid;gap:8px;overflow:hidden;padding:18px 20px;position:relative;transition:box-shadow .18s,transform .18s}.dashboard-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.dashboard-stat-card{overflow:hidden;position:relative}.stat-icon{align-items:center;border-radius:var(--r-sm);display:inline-flex;font-size:18px;height:40px;justify-content:center;width:40px}.stat-blue{border-left:3px solid var(--blue)}.stat-teal{border-left:3px solid var(--teal)}.stat-indigo{border-left:3px solid var(--indigo)}.stat-green{border-left:3px solid var(--success)}.stat-orange{border-left:3px solid #ea580c}.dashboard-main-column{display:grid;gap:14px}.dashboard-main-grid{display:grid;gap:16px;grid-template-columns:minmax(0,2fr) minmax(0,1fr)}.dashboard-panel{display:grid;gap:14px;padding:20px}.dashboard-panel-heading{align-items:center;border-bottom:1px solid var(--border);display:flex;gap:12px;justify-content:space-between;margin:0 0 14px;padding-bottom:12px}.dashboard-panel-heading h3{font-size:15px;margin:0}.dashboard-columns{display:grid;gap:14px;grid-template-columns:repeat(2,minmax(0,1fr))}.chart-placeholder{align-items:center;background:var(--surface-soft);border:1px dashed var(--border);border-radius:var(--r);color:var(--muted);display:flex;font-size:13px;height:150px;justify-content:center}.progress-list,.activity-list{display:grid;gap:8px}.user-summary{border-top:1px solid var(--border);display:grid;gap:14px;margin:0;padding-top:18px}.user-summary div{display:grid;gap:4px}.user-summary dt,.detail-list dt,.result-grid dt,.feedback-metrics dt{color:var(--muted);font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.user-summary dd,.detail-list dd,.result-grid dd,.feedback-metrics dd{color:var(--text);margin:0;overflow-wrap:anywhere}.course-progress-panel{display:grid;gap:14px}.course-progress-list{display:grid;gap:10px}.course-progress-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r);box-shadow:var(--shadow-sm);color:inherit;display:grid;gap:10px;padding:15px 16px;text-decoration:none;transition:box-shadow .15s,border-color .15s}.course-progress-card:hover{border-color:#93c5fd;box-shadow:var(--shadow-md)}.course-progress-header{align-items:flex-start;display:flex;gap:12px;justify-content:space-between}.compact-progress-card{display:grid;gap:8px;padding:13px 15px}.course-progress-actions{display:flex;gap:8px;margin-top:4px}.course-progress-detail-hero{border-radius:var(--r-lg);padding:22px 24px}.course-progress-bar{background:var(--surface-soft);border-radius:var(--r-pill);height:5px;overflow:hidden}.course-progress-bar>div{background:linear-gradient(90deg,var(--blue),#0ea5e9);border-radius:var(--r-pill);height:100%;transition:width .4s ease}.lesson-progress-grid{display:grid;gap:8px}.lesson-progress-card{align-items:center;background:var(--surface);border:1px solid var(--border);border-radius:var(--r);box-shadow:var(--shadow-xs);display:grid;gap:10px;grid-template-columns:auto minmax(0,1fr) auto;padding:11px 14px}.lesson-progress-card-header{display:grid;gap:3px}.lesson-progress-badge{border-radius:var(--r-pill);flex-shrink:0;font-size:11px;font-weight:800;padding:3px 9px}.lesson-progress-badge.completed{background:var(--success-bg);border:1px solid var(--success-bdr);color:var(--success)}.lesson-progress-badge.pending{background:var(--surface-soft);border:1px solid var(--border);color:var(--muted)}.lesson-progress-meta{color:var(--muted);font-size:12px;margin-top:2px}.lesson-status-columns{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.quiz-history-list{display:grid;gap:8px}.quiz-history-card{align-items:center;background:var(--surface);border:1px solid var(--border);border-radius:var(--r);box-shadow:var(--shadow-xs);display:flex;gap:12px;justify-content:space-between;padding:12px 16px}.quiz-history-result{align-items:center;display:flex;flex-shrink:0;gap:8px}.profile-page{display:grid;gap:20px}.profile-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);overflow:hidden}.profile-hero{background:linear-gradient(130deg,#1e3a5f,#0f766e);padding:30px 28px 28px;position:relative;overflow:hidden}.profile-hero:after{background:radial-gradient(ellipse at top right,rgba(14,165,233,.2),transparent 60%);content:"";top:0;right:0;bottom:0;left:0;position:absolute;pointer-events:none}.profile-hero .eyebrow{color:#7dd3fc;position:relative;z-index:1}.profile-hero h1{color:#fff;font-size:24px;margin-top:6px;position:relative;z-index:1}.profile-hero p:not(.eyebrow){color:#ffffffa6;font-size:14px;line-height:1.6;margin-top:6px;position:relative;z-index:1}.profile-avatar{align-items:center;background:#ffffff1f;border:2px solid rgba(255,255,255,.25);border-radius:50%;color:#fff;display:inline-flex;font-size:26px;font-weight:800;height:66px;justify-content:center;margin-bottom:12px;position:relative;width:66px;z-index:1}.profile-info-grid{display:grid;gap:16px;grid-template-columns:repeat(2,minmax(0,1fr));padding:22px 24px}.profile-info-grid>div{display:grid;gap:4px}.profile-actions{border-top:1px solid var(--border);display:flex;gap:8px;padding:16px 24px}.admin-page{display:grid;gap:20px}.admin-form{display:grid;gap:14px;grid-template-columns:repeat(3,minmax(0,1fr));padding:24px}.full-field{grid-column:1/-1}.admin-table-panel{display:grid;gap:14px;padding:22px 24px}.table-scroll{border:1px solid var(--border);border-radius:var(--r);overflow-x:auto}.admin-table{border-collapse:collapse;min-width:760px;width:100%}.admin-table th{background:var(--surface-soft);border-bottom:1px solid var(--border);color:var(--muted);font-size:11px;font-weight:800;letter-spacing:.06em;padding:10px 14px;text-align:left;text-transform:uppercase;white-space:nowrap}.admin-table td{border-bottom:1px solid var(--border-soft);color:var(--text-soft);font-size:14px;padding:11px 14px;text-align:left;vertical-align:middle}.admin-table tbody tr:last-child td{border-bottom:none}.admin-table tbody tr:hover td{background:#f8faff}.compact-button{min-height:32px;padding:5px 10px}.small-action{font-size:12px;font-weight:700;min-height:32px;padding:5px 10px;white-space:nowrap}.upload-form{grid-template-columns:repeat(2,minmax(0,1fr))}.lesson-admin-form{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);display:flex;flex-direction:column}.lesson-form-header{align-items:center;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;padding:16px 22px}.lesson-form-header h2{font-size:16px;margin:0}.lesson-form-body{display:grid}.lesson-form-section{border-bottom:1px solid var(--border);display:grid;gap:14px;padding:18px 22px}.lesson-form-section:last-child{border-bottom:none}.lesson-form-section-label{color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.08em;margin:0;text-transform:uppercase}.lesson-form-row{display:grid;gap:14px;grid-template-columns:repeat(3,minmax(0,1fr))}.lesson-form-field{display:flex;flex-direction:column;font-size:13px;font-weight:700;gap:6px}.lesson-form-field input,.lesson-form-field select,.lesson-form-field textarea{font-size:14px;font-weight:400}.lesson-form-field.span-2{grid-column:span 2}.lesson-form-field.span-1{grid-column:span 1}.field-required{color:var(--danger)}.video-source-tabs{background:var(--surface-soft);border:1px solid var(--border);border-radius:var(--r);display:inline-flex;gap:3px;padding:3px;width:fit-content}.video-source-tab{align-items:center;background:transparent;border:none;border-radius:var(--r-sm);color:var(--muted);cursor:pointer;display:flex;font-size:13px;font-weight:700;gap:6px;padding:7px 16px;transition:background .15s,color .15s,box-shadow .15s}.video-source-tab:hover{background:var(--surface);color:var(--text-soft)}.video-source-tab.active{background:var(--surface);box-shadow:var(--shadow-xs);color:var(--blue)}.tab-icon{font-size:11px}.youtube-input-wrap{align-items:center;background:var(--surface);border:1px solid #d1d5db;border-radius:var(--r-sm);display:flex;gap:10px;padding:0 14px;transition:border-color .15s,box-shadow .15s}.youtube-input-wrap:focus-within{border-color:var(--blue);box-shadow:0 0 0 3px var(--blue-ring)}.youtube-icon{color:#ef4444;flex-shrink:0;font-size:14px}.youtube-url-input{background:transparent;border:none;box-shadow:none;flex:1;font-size:14px;min-height:unset;outline:none;padding:11px 0;width:100%}.youtube-url-input:focus{box-shadow:none}.upload-drop-zone{align-items:center;background:var(--surface-soft);border:2px dashed var(--border);border-radius:var(--r);cursor:pointer;display:flex;flex-direction:column;gap:6px;padding:28px 20px;text-align:center;transition:background .15s,border-color .15s}.upload-drop-zone:hover{background:var(--blue-light);border-color:#93c5fd}.upload-drop-zone input[type=file]{display:none}.upload-drop-icon{align-items:center;background:var(--blue-light);border-radius:50%;color:var(--blue);display:inline-flex;font-size:18px;height:44px;justify-content:center;width:44px}.upload-drop-text{color:var(--text-soft);font-size:14px;font-weight:600}.upload-drop-hint{color:var(--muted);font-size:12px}.lesson-form-footer{border-top:1px solid var(--border);display:flex;gap:10px;padding:14px 22px}.content-hero,.content-lesson-card,.question-management-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r);box-shadow:var(--shadow-sm)}.content-hero{align-items:flex-start;display:flex;gap:16px;justify-content:space-between;padding:22px 24px}.content-hero p:not(.eyebrow){color:var(--muted);font-size:14px;line-height:1.7;margin:8px 0 0;max-width:640px}.content-form{align-items:end}.content-form h2{margin-bottom:6px}.file-picker input{border-style:dashed;cursor:pointer}.file-picker span{background:var(--surface-soft);border:1px solid var(--border);border-radius:var(--r-sm);color:var(--muted);display:block;font-size:13px;font-weight:700;overflow-wrap:anywhere;padding:9px 12px}.content-lesson-list,.content-question-list{display:grid;gap:10px}.content-lesson-card{align-items:center;display:grid;gap:14px;grid-template-columns:auto minmax(0,1fr) auto;padding:13px 16px}.content-actions{display:flex;gap:6px}.question-management-card{display:grid;gap:14px;padding:18px}.question-options-grid{display:grid;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr))}.focus-log-table-wrapper{border:1px solid var(--border);border-radius:var(--r);overflow:hidden;overflow-x:auto}.focus-log-table{border-collapse:collapse;font-size:13px;width:100%}.focus-log-table th{background:var(--surface-soft);border-bottom:1px solid var(--border);color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.07em;padding:9px 12px;text-align:left;text-transform:uppercase}.focus-log-table td{border-bottom:1px solid var(--border-soft);color:var(--text-soft);padding:10px 12px;vertical-align:middle}.focus-log-table tbody tr:last-child td{border-bottom:none}.focus-log-table tbody tr:hover td{background:#f8faff}.focus-score-chip,.focus-status-chip{border-radius:var(--r-pill);display:inline-block;font-size:11px;font-weight:800;letter-spacing:.02em;padding:3px 9px;white-space:nowrap}.focus-status-good{background:var(--success-bg);border:1px solid var(--success-bdr);color:var(--success)}.focus-status-warn{background:var(--warning-bg);border:1px solid var(--warning-bdr);color:var(--warning)}.focus-status-bad{background:var(--danger-bg);border:1px solid var(--danger-bdr);color:var(--danger)}.lesson-button{width:100%}.muted-text{color:var(--muted);font-size:13px}.lesson-detail-body{display:grid;gap:18px;padding:22px 24px}.log-index{color:var(--muted-light);font-size:12px;font-variant-numeric:tabular-nums;width:36px}.log-time{color:var(--muted);font-size:12px;white-space:nowrap}@media (max-width: 1024px){.home-stat-grid,.course-grid,.course-hero-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.lesson-watch-layout{grid-template-columns:1fr}.lesson-info-panel{position:static}.dashboard-main-grid{grid-template-columns:1fr}.dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.course-detail{grid-template-columns:1fr}.admin-form,.lesson-form-row{grid-template-columns:repeat(2,minmax(0,1fr))}.lesson-form-field.span-2{grid-column:span 2}}@media (max-width: 640px){.app-main{padding:18px 14px 56px}.navbar-inner{gap:8px;padding:0 14px}.nav-links a,.link-button,.adm-nav-trigger{font-size:13px;padding:6px 8px}.adm-nav-menu{min-width:260px;right:-60px}.brand strong{display:none}h1{font-size:23px}h2{font-size:18px}.home-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.course-grid,.course-toolbar{grid-template-columns:1fr}.course-hero-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.course-detail,.dashboard-grid,.dashboard-overview-grid,.dashboard-columns,.lesson-status-columns,.result-grid,.feedback-metrics,.feedback-score-grid,.profile-info-grid,.admin-form,.lesson-form-row{grid-template-columns:1fr}.lesson-form-field.span-2{grid-column:span 1}.continue-learning-card,.home-trending-card{grid-template-columns:1fr}.home-trending-thumb{height:130px}.lesson-video-frame{min-height:160px}.section-heading{align-items:flex-start;flex-direction:column;gap:8px}.panel.auth-form{padding:24px 20px}.adm-table-filters{flex-direction:column;align-items:stretch}.adm-table-header{flex-direction:column;align-items:flex-start;gap:12px}.adm-page-header{flex-direction:column;align-items:flex-start}}.adm-page-header{align-items:flex-start;display:flex;gap:20px;justify-content:space-between}.adm-page-header h1{margin:0}.adm-page-header .muted{margin-top:6px}.adm-header-meta{align-items:flex-start;display:flex;flex-shrink:0;gap:8px;padding-top:6px}.adm-total-badge{background:var(--blue-light);border:1px solid #bfdbfe;border-radius:var(--r-pill);color:var(--blue-dark);font-size:13px;font-weight:800;padding:5px 14px;white-space:nowrap}.adm-form-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);overflow:hidden;position:relative}.adm-form-card:before{background:linear-gradient(90deg,#2563eb,#0ea5e9,#6366f1);content:"";height:3px;left:0;position:absolute;right:0;top:0}.adm-form-card-head{align-items:flex-start;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;padding:18px 24px 16px}.adm-form-card-head .eyebrow{color:var(--blue)}.adm-form-card-head h2{font-size:17px;margin:4px 0 0}.adm-form-body{border-radius:0;box-shadow:none;margin:0;padding:20px 24px 24px}.adm-table-header{align-items:flex-start;display:flex;gap:16px;justify-content:space-between;margin-bottom:2px}.adm-table-header h2{font-size:17px;margin:0}.adm-table-header .muted{font-size:13px;margin-top:4px}.adm-table-filters{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.adm-search-box{align-items:center;background:var(--surface);border:1px solid #d1d5db;border-radius:var(--r-sm);display:flex;gap:6px;min-width:220px;padding:0 10px;transition:border-color .15s,box-shadow .15s}.adm-search-box:focus-within{border-color:var(--blue);box-shadow:0 0 0 3px var(--blue-ring)}.adm-search-icon{color:var(--muted-light);flex-shrink:0;font-size:13px}.adm-search-input{background:transparent;border:none;box-shadow:none;flex:1;font-size:13.5px;min-height:38px;padding:0;width:100%}.adm-search-input:focus{box-shadow:none;outline:none}.adm-search-clear{background:none;border:none;color:var(--muted-light);cursor:pointer;flex-shrink:0;font-size:12px;min-height:unset;padding:2px 4px;transition:color .12s}.adm-search-clear:hover{color:var(--danger)}.adm-filter-select{background:var(--surface);border:1px solid #d1d5db;border-radius:var(--r-sm);color:var(--text-soft);cursor:pointer;font-size:13.5px;font-weight:500;min-height:40px;min-width:150px;padding:0 12px;width:auto}.col-id{color:var(--muted-light);font-size:12px;width:56px}.adm-id-cell{color:var(--muted);font-size:12px;font-variant-numeric:tabular-nums;font-weight:700}.adm-name-cell{color:var(--text);font-weight:600;max-width:240px}.adm-muted-cell{color:var(--muted);font-size:13px}.adm-desc-cell{color:var(--muted);font-size:13px;max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.adm-question-cell{color:var(--text-soft);max-width:340px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.adm-status-badge{border-radius:var(--r-pill);display:inline-block;font-size:11px;font-weight:800;letter-spacing:.02em;padding:4px 10px;white-space:nowrap}.badge-published{background:var(--success-bg);border:1px solid var(--success-bdr);color:var(--success)}.badge-draft{background:var(--surface-soft);border:1px solid var(--border);color:var(--muted)}.adm-diff-badge{border-radius:var(--r-pill);display:inline-block;font-size:11px;font-weight:800;padding:3px 9px;white-space:nowrap}.diff-basic{background:#eff6ff;border:1px solid #bfdbfe;color:#1d4ed8}.diff-medium{background:var(--warning-bg);border:1px solid var(--warning-bdr);color:var(--warning)}.diff-hard{background:var(--danger-bg);border:1px solid var(--danger-bdr);color:var(--danger)}.adm-answer-badge{align-items:center;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:var(--r-sm);color:#15803d;display:inline-flex;font-size:13px;font-weight:800;height:26px;justify-content:center;min-width:26px}.adm-video-chip{border-radius:var(--r-pill);display:inline-block;font-size:11px;font-weight:800;padding:3px 9px;white-space:nowrap}.chip-has-video{background:var(--teal-bg);border:1px solid #99f6e4;color:var(--teal)}.chip-no-video{background:var(--surface-soft);border:1px solid var(--border);color:var(--muted)}.pagination-bar{align-items:center;border-top:1px solid var(--border);display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;padding:14px 18px}.pagination-info{color:var(--muted);font-size:13px}.pagination-info strong{color:var(--text-soft)}.pagination-controls{align-items:center;display:flex;gap:4px}.pg-btn{align-items:center;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-sm);color:var(--text-soft);cursor:pointer;display:inline-flex;font-size:13px;font-weight:700;height:34px;justify-content:center;min-width:34px;padding:0 6px;transition:background .12s,border-color .12s,color .12s,box-shadow .12s}.pg-btn:hover:not(:disabled){background:var(--blue-light);border-color:#93c5fd;color:var(--blue-dark)}.pg-btn:disabled{cursor:not-allowed;opacity:.38}.pg-btn.pg-active{background:var(--blue);border-color:var(--blue-dark);box-shadow:0 2px 6px #2563eb4d;color:#fff}.pg-ellipsis{color:var(--muted-light);font-size:13px;padding:0 2px;-webkit-user-select:none;user-select:none}.pagination-left{align-items:center;display:flex;flex-wrap:wrap;gap:14px}.page-size-selector{align-items:center;display:flex;gap:6px}.page-size-selector span{color:var(--muted);font-size:13px;white-space:nowrap}.page-size-select{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-sm);color:var(--text-soft);cursor:pointer;font-size:13px;font-weight:600;min-height:32px;min-width:unset;padding:0 28px 0 10px;width:auto;transition:border-color .15s,box-shadow .15s}.page-size-select:focus{border-color:var(--blue);box-shadow:0 0 0 3px var(--blue-ring);outline:none}.adm-course-hero{background:linear-gradient(115deg,#0f172a,#1e3a5f 60%,#0f5132);border-radius:var(--r-xl);box-shadow:var(--shadow-lg);overflow:hidden;padding:28px 32px;position:relative}.adm-course-hero:before{background:radial-gradient(ellipse at top right,rgba(14,165,233,.18),transparent 55%);content:"";top:0;right:0;bottom:0;left:0;pointer-events:none;position:absolute}.adm-course-hero-left{position:relative;z-index:1}.adm-course-hero .eyebrow{color:#7dd3fc}.adm-course-hero h1{color:#fff;font-size:24px;margin-top:6px}.adm-course-hero-desc{color:#ffffff8c;font-size:14px;line-height:1.65;margin-top:6px;max-width:600px}.adm-course-hero-meta{align-items:center;display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.adm-course-hero-count{background:#ffffff1f;border:1px solid rgba(255,255,255,.18);border-radius:var(--r-pill);color:#fffc;font-size:12px;font-weight:700;padding:4px 12px}.adm-lesson-card-list{display:grid;gap:8px}.adm-lesson-row{align-items:center;background:var(--surface);border:1px solid var(--border);border-radius:var(--r);box-shadow:var(--shadow-xs);display:grid;gap:14px;grid-template-columns:48px minmax(0,1fr) auto;padding:14px 16px;transition:border-color .15s,box-shadow .15s}.adm-lesson-row:hover{border-color:#93c5fd;box-shadow:var(--shadow-sm)}.adm-lesson-order{align-items:center;background:var(--surface-soft);border:1px solid var(--border);border-radius:var(--r-sm);color:var(--muted);display:flex;font-size:13px;font-weight:800;height:40px;justify-content:center;width:40px}.adm-lesson-info{display:grid;gap:4px;min-width:0}.adm-lesson-info h3{font-size:15px;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.adm-lesson-desc{color:var(--muted);font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.adm-lesson-chips{align-items:center;display:flex;flex-wrap:wrap;gap:5px;margin-top:3px}.adm-lesson-chips>span:first-child{background:var(--surface-soft);border:1px solid var(--border);border-radius:var(--r-pill);color:var(--muted);font-size:11px;font-weight:700;padding:2px 8px}.adm-lesson-actions{display:flex;flex-wrap:wrap;gap:5px}.adm-question-card-list{display:grid;gap:10px}.adm-question-row{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);box-shadow:var(--shadow-xs);display:grid;gap:12px;padding:16px 18px;transition:border-color .15s,box-shadow .15s}.adm-question-row:hover{border-color:#93c5fd;box-shadow:var(--shadow-sm)}.adm-question-row-head{align-items:center;display:flex;justify-content:space-between}.adm-question-meta-row{align-items:center;display:flex;flex-wrap:wrap;gap:6px}.adm-q-index{color:var(--muted);font-size:12px;font-variant-numeric:tabular-nums;font-weight:800}.adm-question-row-actions{display:flex;gap:6px}.adm-question-content{color:var(--text);font-size:15px;font-weight:600;line-height:1.55;margin:0}.adm-options-grid{display:grid;gap:6px;grid-template-columns:repeat(2,minmax(0,1fr))}.adm-option-item{align-items:center;background:var(--surface-soft);border:1px solid var(--border);border-radius:var(--r-sm);display:flex;gap:8px;padding:8px 12px}.adm-option-item.is-correct{background:var(--success-bg);border-color:var(--success-bdr)}.adm-option-letter{align-items:center;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-xs);color:var(--muted);display:inline-flex;flex-shrink:0;font-size:11px;font-weight:800;height:22px;justify-content:center;width:22px}.adm-option-item.is-correct .adm-option-letter{background:var(--success);border-color:var(--success);color:#fff}.adm-option-text{color:var(--text-soft);flex:1;font-size:13px}.adm-option-item.is-correct .adm-option-text{color:var(--success);font-weight:600}.adm-option-check{color:var(--success);flex-shrink:0;font-size:13px;font-weight:800}.adm-file-name-cell{align-items:center;display:flex;gap:8px}.adm-file-icon{flex-shrink:0;font-size:16px}.adm-mime-cell{color:var(--muted);font-family:monospace;font-size:12px}.adm-ftype-badge{border-radius:var(--r-pill);display:inline-block;font-size:11px;font-weight:800;padding:3px 9px;white-space:nowrap}.ftype-video{background:#ede9fe;border:1px solid #c4b5fd;color:#5b21b6}.ftype-image{background:#dcfce7;border:1px solid #86efac;color:#15803d}.ftype-doc{background:#fef3c7;border:1px solid #fcd34d;color:#92400e}@media (max-width: 768px){.adm-lesson-row{grid-template-columns:40px minmax(0,1fr)}.adm-lesson-actions{grid-column:1/-1}.adm-options-grid{grid-template-columns:1fr}.pagination-bar{flex-direction:column;align-items:flex-start;gap:10px}}.adm-user-stats{display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr))}.adm-user-stat-card{align-items:center;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);box-shadow:var(--shadow-sm);display:flex;gap:14px;overflow:hidden;padding:16px 20px;position:relative;transition:box-shadow .18s,transform .18s}.adm-user-stat-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.adm-user-stat-card:before{bottom:0;content:"";left:0;position:absolute;top:0;width:4px}.adm-user-stat-card.kpi-blue:before{background:linear-gradient(to bottom,#3b82f6,#1d4ed8)}.adm-user-stat-card.kpi-indigo:before{background:linear-gradient(to bottom,#6366f1,#4338ca)}.adm-user-stat-card.kpi-teal:before{background:linear-gradient(to bottom,#0d9488,#0f766e)}.adm-user-stat-icon{flex-shrink:0;font-size:24px}.adm-user-stat-card>div{display:grid;gap:3px}.adm-user-stat-card strong{color:var(--text);font-size:28px;font-weight:800;letter-spacing:-.04em;line-height:1}.adm-user-stat-card span{color:var(--muted);font-size:12px;font-weight:700}.adm-user-cell{align-items:center;display:flex;gap:10px}.adm-user-avatar{align-items:center;background:linear-gradient(135deg,#dbeafe,#ede9fe);border-radius:50%;color:#3730a3;display:inline-flex;flex-shrink:0;font-size:11px;font-weight:800;height:32px;justify-content:center;width:32px}.adm-user-name{color:var(--text);font-weight:600}.adm-email-cell{color:var(--muted);font-size:13px}.adm-role-badge{border-radius:var(--r-pill);display:inline-block;font-size:11px;font-weight:800;letter-spacing:.02em;padding:4px 10px;white-space:nowrap}.role-admin{background:#ede9fe;border:1px solid #c4b5fd;color:#5b21b6}.role-student{background:var(--blue-light);border:1px solid #bfdbfe;color:var(--blue-dark)}@media (max-width: 1024px){.adm-user-stats{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width: 640px){.adm-user-stats{grid-template-columns:1fr}}.auth-scene{background:#070d1a;display:flex;min-height:100vh;overflow:hidden;position:relative}.auth-blob{border-radius:50%;filter:blur(80px);pointer-events:none;position:absolute}.auth-blob-1{animation:blobFloat 14s ease-in-out infinite alternate;background:radial-gradient(circle,rgba(99,102,241,.35) 0%,transparent 70%);height:600px;left:-100px;top:-100px;width:600px}.auth-blob-2{animation:blobFloat 18s ease-in-out infinite alternate-reverse;background:radial-gradient(circle,rgba(14,165,233,.28) 0%,transparent 70%);bottom:-120px;height:500px;left:200px;width:500px}.auth-blob-3{animation:blobFloat 22s ease-in-out infinite alternate;background:radial-gradient(circle,rgba(16,185,129,.18) 0%,transparent 70%);height:400px;right:-60px;top:40%;width:400px}@keyframes blobFloat{0%{transform:translate(0) scale(1)}50%{transform:translate(30px,-40px) scale(1.08)}to{transform:translate(-20px,30px) scale(.95)}}.auth-split{display:flex;min-height:100vh;position:relative;width:100%;z-index:1}.auth-showcase{color:#fff;display:flex;flex:0 0 52%;flex-direction:column;gap:36px;justify-content:center;padding:64px 60px}.auth-logo{align-items:center;display:flex;gap:10px}.auth-logo-mark{align-items:center;background:linear-gradient(135deg,#6366f1,#0ea5e9);border-radius:10px;color:#fff;display:flex;font-size:14px;font-weight:800;height:36px;justify-content:center;letter-spacing:-.5px;width:36px}.auth-logo-name{color:#ffffffe6;font-size:16px;font-weight:700;letter-spacing:-.2px}.auth-headline h1{color:#fff;font-size:40px;font-weight:900;letter-spacing:-1.2px;line-height:1.18;margin:0 0 14px}.auth-gradient-text{background:linear-gradient(90deg,#38bdf8,#818cf8,#a78bfa);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.auth-headline p{color:#ffffff8c;font-size:15px;line-height:1.7;max-width:380px}.auth-preview-card{background:#ffffff0a;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.1);border-radius:16px;max-width:400px;overflow:hidden}.auth-preview-header{align-items:center;border-bottom:1px solid rgba(255,255,255,.07);display:flex;gap:6px;padding:12px 16px}.auth-preview-dot{border-radius:50%;display:block;height:10px;width:10px}.dot-red{background:#f87171}.dot-yellow{background:#fbbf24}.dot-green{background:#34d399}.auth-preview-title{color:#fff6;font-size:12px;font-weight:500;margin-left:6px}.auth-preview-body{padding:18px 20px;display:flex;flex-direction:column;gap:14px}.auth-preview-stat{display:flex;flex-direction:column;gap:6px}.auth-preview-stat-bar{background:#ffffff14;border-radius:99px;height:6px;overflow:hidden;width:100%}.auth-preview-stat-fill{background:linear-gradient(90deg,#6366f1,#38bdf8);border-radius:99px;height:100%}.auth-preview-stat-row{align-items:center;color:#ffffff8c;display:flex;font-size:12px;justify-content:space-between}.auth-preview-stat-row strong{color:#ffffffd9;font-weight:700}.auth-preview-badges{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}.auth-badge-pill{background:#ffffff12;border:1px solid rgba(255,255,255,.12);border-radius:99px;color:#ffffffb3;font-size:12px;font-weight:500;padding:3px 10px}.auth-feat-list{display:flex;flex-direction:column;gap:16px}.auth-feat-item{align-items:flex-start;display:flex;gap:14px}.auth-feat-icon{align-items:center;background:#ffffff12;border:1px solid rgba(255,255,255,.1);border-radius:10px;display:flex;flex-shrink:0;font-size:18px;height:40px;justify-content:center;width:40px}.auth-feat-item>div{display:flex;flex-direction:column;gap:2px}.auth-feat-item strong{color:#ffffffe6;font-size:14px;font-weight:700}.auth-feat-item p{color:#ffffff73;font-size:13px;line-height:1.5}.auth-social-proof{align-items:center;display:flex;gap:12px}.auth-avatars{display:flex}.auth-av{align-items:center;border:2px solid #070d1a;border-radius:50%;color:#fff;display:flex;font-size:11px;font-weight:700;height:30px;justify-content:center;margin-left:-6px;width:30px}.auth-av:first-child{margin-left:0}.auth-av-count{background:#ffffff1f;color:#ffffffb3;font-size:10px}.auth-social-proof p{color:#ffffff73;font-size:13px}.auth-social-proof p strong{color:#fffc}.auth-trust-badge{align-items:center;background:#fbbf2414;border:1px solid rgba(251,191,36,.2);border-radius:99px;color:#fbbf24d9;display:inline-flex;font-size:13px;font-weight:500;gap:7px;padding:7px 14px;width:fit-content}.auth-form-side{align-items:center;display:flex;flex:1;justify-content:center;padding:48px 40px}.auth-glass-card{background:#0f172abf;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);border:1px solid rgba(255,255,255,.1);border-radius:24px;box-shadow:0 0 0 1px #ffffff0a inset,0 32px 80px #00000080;max-width:420px;padding:40px 38px;position:relative;width:100%}.auth-glass-card:before{background:linear-gradient(90deg,#6366f1,#0ea5e9,#10b981);border-radius:24px 24px 0 0;content:"";height:2px;left:0;position:absolute;top:0;width:100%}.auth-card-head{margin-bottom:28px}.auth-eyebrow{color:#818cf8;font-size:11px;font-weight:700;letter-spacing:.12em;margin-bottom:6px;text-transform:uppercase}.auth-card-head h2{color:#f1f5f9;font-size:26px;font-weight:800;letter-spacing:-.6px;margin:0 0 6px}.auth-card-sub{color:#fff6;font-size:13.5px}.auth-error-box{align-items:center;background:#f43f5e14;border:1px solid rgba(244,63,94,.25);border-radius:10px;color:#fb7185;display:flex;font-size:13.5px;font-weight:500;gap:8px;margin-bottom:20px;padding:10px 14px}.auth-form{display:flex;flex-direction:column;gap:18px}.auth-field{display:flex;flex-direction:column;gap:7px}.auth-field label{color:#ffffffb3;font-size:13px;font-weight:600}.auth-input-row{align-items:center;background:#ffffff0a;border:1.5px solid rgba(255,255,255,.1);border-radius:10px;display:flex;transition:border-color .15s,box-shadow .15s}.auth-input-row:focus-within{border-color:#6366f199;box-shadow:0 0 0 3px #6366f11f}.auth-field-icon{color:#ffffff4d;flex-shrink:0;margin-left:12px}.auth-input-row input{background:transparent;border:none;border-radius:10px;box-shadow:none;color:#f1f5f9;flex:1;font-size:14px;outline:none;padding:11px 12px}.auth-input-row input::placeholder{color:#ffffff38}.auth-pw-eye{background:transparent;border:none;color:#ffffff4d;cursor:pointer;flex-shrink:0;line-height:1;padding:0 12px;transition:color .15s}.auth-pw-eye:hover{color:#ffffffb3}.auth-strength-wrap{align-items:center;display:flex;gap:10px;margin-top:4px}.auth-strength-track{background:#ffffff14;border-radius:99px;flex:1;height:4px;overflow:hidden}.auth-strength-bar{border-radius:99px;height:100%;transition:width .3s ease,background .3s ease}.auth-strength-bar[data-lv=weak]{background:#f43f5e}.auth-strength-bar[data-lv=fair]{background:#f59e0b}.auth-strength-bar[data-lv=strong]{background:#10b981}.auth-strength-label{flex-shrink:0;font-size:11px;font-weight:600}.auth-strength-label[data-lv=weak]{color:#f43f5e}.auth-strength-label[data-lv=fair]{color:#f59e0b}.auth-strength-label[data-lv=strong]{color:#10b981}.auth-cta{align-items:center;background:linear-gradient(135deg,#6366f1,#0ea5e9);border:none;border-radius:10px;box-shadow:0 4px 20px #6366f159;color:#fff;cursor:pointer;display:flex;font-size:15px;font-weight:700;gap:8px;justify-content:center;margin-top:4px;padding:13px 20px;transition:opacity .15s,transform .15s,box-shadow .15s;width:100%}.auth-cta:hover:not(:disabled){box-shadow:0 8px 28px #6366f180;opacity:.95;transform:translateY(-1px)}.auth-cta:active:not(:disabled){transform:translateY(0)}.auth-cta:disabled{cursor:not-allowed;opacity:.55}.auth-cta-arrow{font-size:16px;transition:transform .2s}.auth-cta:hover .auth-cta-arrow{transform:translate(3px)}.auth-spin{animation:dashSpin .7s linear infinite;border:2px solid rgba(255,255,255,.3);border-radius:50%;border-top-color:#fff;display:inline-block;flex-shrink:0;height:15px;width:15px}.auth-switch-row{color:#ffffff59;font-size:13.5px;margin-top:22px;text-align:center}.auth-switch-row a{color:#818cf8;font-weight:600;text-decoration:none}.auth-switch-row a:hover{color:#a5b4fc;text-decoration:underline}@media (max-width: 900px){.auth-split{flex-direction:column}.auth-showcase{flex:0 0 auto;gap:24px;padding:44px 32px 36px}.auth-headline h1{font-size:30px}.auth-form-side{padding:36px 24px 56px}}@media (max-width: 560px){.auth-showcase{display:none}.auth-form-side{align-items:flex-start;min-height:100vh;padding:48px 20px}.auth-glass-card{border-radius:20px;padding:32px 22px}}.page-shell{margin:0 auto;max-width:1140px;padding:28px 24px 56px;width:100%}.wide-shell{max-width:1280px}.navbar{background:#ffffffe0;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-bottom:1px solid rgba(15,23,42,.08);box-shadow:0 1px #0f172a0d,0 4px 24px #0f172a0a;position:sticky;top:0;z-index:200}.navbar-inner{align-items:center;display:flex;gap:0;justify-content:space-between;margin:0 auto;max-width:1280px;padding:0 24px;height:60px}.brand{align-items:center;display:flex;gap:9px;text-decoration:none}.brand>span{align-items:center;background:linear-gradient(135deg,#2563eb,#0ea5e9);border-radius:8px;color:#fff;display:flex;font-size:13px;font-weight:800;height:32px;justify-content:center;letter-spacing:-.5px;width:32px}.brand>strong{color:#0f172a;font-size:15px;font-weight:800;letter-spacing:-.3px}.nav-links{align-items:center;display:flex;gap:2px}.nav-links>a{border-radius:7px;color:#475569;font-size:14px;font-weight:600;padding:7px 12px;text-decoration:none;transition:background .13s,color .13s}.nav-links>a:hover{background:#f1f5f9;color:#0f172a}.nav-links>a.active{background:#eff6ff;color:#1d4ed8}.home-hero{background:linear-gradient(135deg,#0f172a,#1e3a5f 45%,#065f46);border-radius:20px;box-shadow:0 20px 60px #0f172a2e;min-height:400px;overflow:hidden;position:relative}.home-hero:before{background:radial-gradient(ellipse at top right,rgba(14,165,233,.25) 0%,transparent 55%);content:"";top:0;right:0;bottom:0;left:0;pointer-events:none;position:absolute}.home-hero:after{background:radial-gradient(ellipse at bottom left,rgba(99,102,241,.18) 0%,transparent 55%);content:"";top:0;right:0;bottom:0;left:0;pointer-events:none;position:absolute}.home-hero-content{position:relative;z-index:1}.home-hero h1{font-size:clamp(30px,5vw,56px);letter-spacing:-1.5px}.home-stat-card{background:#fff;border:1px solid #e2e8f0;border-radius:14px;box-shadow:0 1px 3px #0f172a0f,0 4px 16px #0f172a0a;padding:20px 22px;position:relative;overflow:hidden;transition:box-shadow .2s,transform .2s}.home-stat-card:after{background:linear-gradient(135deg,#2563eb,#0ea5e9);border-radius:99px;content:"";height:3px;left:0;position:absolute;top:0;width:40px}.home-stat-card:nth-child(2):after{background:linear-gradient(135deg,#0d9488,#10b981)}.home-stat-card:nth-child(3):after{background:linear-gradient(135deg,#7c3aed,#a78bfa)}.home-stat-card:nth-child(4):after{background:linear-gradient(135deg,#ea580c,#fb923c)}.home-stat-card:hover{box-shadow:0 8px 32px #0f172a1f;transform:translateY(-3px)}.home-stat-card strong{color:#0f172a;font-size:36px}.continue-learning-card{background:linear-gradient(135deg,#eff6ff,#f0fdf4);border:1px solid #bfdbfe;border-radius:16px;box-shadow:0 2px 12px #2563eb14;padding:24px}.continue-learning-card>strong{color:#1d4ed8;font-size:36px}.course-progress-bar>div,.course-progress-bar span{background:linear-gradient(90deg,#2563eb,#0ea5e9)}.home-trending-card{background:#fff;border:1px solid #e2e8f0;border-radius:14px;box-shadow:0 1px 4px #0f172a0d;overflow:hidden;padding:14px;transition:box-shadow .2s,transform .2s,border-color .2s}.home-trending-card:hover{border-color:#93c5fd;box-shadow:0 8px 28px #2563eb1f;transform:translateY(-3px)}.home-trending-thumb{border-radius:10px;background:linear-gradient(135deg,#dbeafe,#e0f2fe);height:110px}.course-list-hero{background:linear-gradient(135deg,#0f172a,#1e3a5f 60%,#0c4a6e);border:none;border-radius:18px;box-shadow:0 16px 48px #0f172a29;padding:36px 40px;position:relative;overflow:hidden}.course-list-hero:after{background:radial-gradient(ellipse at top right,rgba(14,165,233,.22) 0%,transparent 60%);content:"";top:0;right:0;bottom:0;left:0;pointer-events:none;position:absolute}.course-list-hero .eyebrow{color:#7dd3fc;position:relative;z-index:1}.course-list-hero h1{color:#fff;font-size:30px;font-weight:800;letter-spacing:-.8px;margin:0;position:relative;z-index:1}.course-list-hero p:not(.eyebrow){color:#fff9;position:relative;z-index:1}.course-toolbar{background:#fff;border:1px solid #e2e8f0;border-radius:14px;box-shadow:0 1px 4px #0f172a0d;padding:14px 18px}.course-filter-group button{background:#f8fafc;border:1px solid #e2e8f0;border-radius:99px;color:#64748b;font-size:13px;font-weight:600;padding:6px 16px;transition:all .15s}.course-filter-group button.active{background:#1d4ed8;border-color:#1d4ed8;color:#fff}.course-filter-group button:hover:not(.active){background:#eff6ff;border-color:#93c5fd;color:#1d4ed8}.course-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 1px 4px #0f172a0d;overflow:hidden;transition:box-shadow .2s,transform .2s,border-color .2s}.course-card:hover,.product-course-card:hover{border-color:#93c5fd;box-shadow:0 12px 40px #2563eb24;transform:translateY(-5px)}.course-thumbnail{border-radius:0;height:192px}.course-thumbnail,.course-detail-media{background:linear-gradient(135deg,#1e3a5f,#0c4a6e)}.thumbnail-placeholder span{background:#ffffff1f;border:1px solid rgba(255,255,255,.18);border-radius:50%;color:#ffffffb3;font-size:28px;font-weight:800;height:64px;width:64px}.thumbnail-placeholder small{color:#ffffff73}.course-card-content{gap:12px;padding:16px 18px}.course-card h2{font-size:15.5px;font-weight:700}.course-metric-row span{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;color:#64748b;font-size:11px;font-weight:700;padding:6px 8px;text-align:center}.course-card-action{align-items:center;color:#1d4ed8;display:inline-flex;font-size:13px;font-weight:700;gap:4px}.course-card-action:after{content:"→";font-size:14px;transition:transform .15s}.course-card:hover .course-card-action:after{transform:translate(4px)}.course-detail-hero{background:#fff;border:1px solid #e2e8f0;border-radius:18px;box-shadow:0 4px 20px #0f172a14;overflow:hidden}.course-detail-media{min-height:260px}.course-detail-body{padding:28px 30px}.course-hero-stats>div{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:14px}.course-hero-stats strong{color:#0f172a;font-size:24px}.learning-path-list:before{background:linear-gradient(to bottom,#2563eb,#e2e8f0)}.roadmap-status-dot{background:#e2e8f0}.roadmap-status-dot.is-completed{background:#16a34a;border-color:#dcfce7;box-shadow:0 0 0 3px #16a34a26}.lesson-progress-badge.is-completed{background:#dcfce7;border:1px solid #bbf7d0;color:#15803d}.lesson-progress-badge.is-pending{background:#f8fafc;border:1px solid #e2e8f0;color:#94a3b8}.dashboard-page{display:grid;gap:22px}.dashboard-page>.section-heading{background:linear-gradient(120deg,#0f172a,#1e3a5f 55%,#0f766e);border-radius:18px;box-shadow:0 8px 32px #0f172a24;overflow:hidden;padding:28px 32px;position:relative}.dashboard-page>.section-heading:after{background:radial-gradient(ellipse at top right,rgba(14,165,233,.2),transparent 60%);content:"";top:0;right:0;bottom:0;left:0;pointer-events:none;position:absolute}.dashboard-page>.section-heading .eyebrow{color:#7dd3fc;position:relative;z-index:1}.dashboard-page>.section-heading h1{color:#fff;position:relative;z-index:1}.dashboard-page>.section-heading .muted{color:#ffffff8c;position:relative;z-index:1}.dashboard-stat-card{background:#fff;border:1px solid #e2e8f0;border-left-width:4px;border-radius:14px;box-shadow:0 1px 4px #0f172a0d;padding:18px 20px;transition:box-shadow .2s,transform .2s}.dashboard-stat-card:hover{box-shadow:0 6px 24px #0f172a1a;transform:translateY(-2px)}.stat-blue{border-left-color:#2563eb}.stat-teal{border-left-color:#0d9488}.stat-indigo{border-left-color:#6366f1}.stat-green{border-left-color:#16a34a}.stat-orange{border-left-color:#ea580c}.dashboard-stat-card span{color:#64748b;font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.dashboard-stat-card strong{color:#0f172a;font-size:32px;font-weight:800;letter-spacing:-.04em;line-height:1}.stat-icon{background:#f1f5f9;border-radius:10px;font-size:16px;font-weight:800}.dashboard-panel{background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 1px 4px #0f172a0d;padding:22px 24px}.dashboard-panel-heading{border-bottom:1px solid #f1f5f9;margin-bottom:16px;padding-bottom:14px}.dashboard-panel h2{color:#0f172a;font-size:16px;font-weight:700}.quiz-history-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;box-shadow:none;padding:12px 16px;transition:border-color .15s,background .15s}.quiz-history-card:hover{background:#eff6ff;border-color:#bfdbfe}.quiz-history-card strong{color:#0f172a;font-size:14px;font-weight:700}.quiz-history-card span{color:#64748b;font-size:12px}.quiz-history-card small{color:#94a3b8;font-size:11px}.quiz-history-result b{color:#0f172a;font-size:18px;font-weight:800;letter-spacing:-.03em}.status-pill.is-pass{background:#dcfce7;border:1px solid #bbf7d0;color:#15803d}.status-pill.is-fail{background:#fee2e2;border:1px solid #fecaca;color:#dc2626}.course-progress-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;box-shadow:none;padding:14px 16px;transition:border-color .15s,background .15s,box-shadow .15s}.course-progress-card:hover{background:#fff;border-color:#93c5fd;box-shadow:0 4px 16px #2563eb1a}.feedback-summary-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:none;overflow:hidden}.feedback-summary-header{background:#f8fafc;border-bottom:1px solid #f1f5f9;padding:14px 18px}.feedback-summary-header strong{color:#0f172a;font-size:14px;font-weight:700}.feedback-summary-header span{color:#64748b;font-size:12px}.feedback-summary-status.is-good{background:#dcfce7;border:1px solid #bbf7d0;border-radius:99px;color:#15803d;font-size:11px;font-weight:700;padding:3px 10px}.feedback-summary-status.is-review{background:#fef3c7;border:1px solid #fde68a;border-radius:99px;color:#92400e;font-size:11px;font-weight:700;padding:3px 10px}.feedback-summary-status.is-practice{background:#fee2e2;border:1px solid #fecaca;border-radius:99px;color:#dc2626;font-size:11px;font-weight:700;padding:3px 10px}.learning-suggestion-card{align-items:flex-start;background:linear-gradient(135deg,#eff6ff,#f0fdf4);border:1px solid #bfdbfe;border-radius:12px;display:flex;flex-direction:column;gap:4px;padding:16px 18px;text-decoration:none;transition:border-color .15s,box-shadow .15s,transform .15s}.learning-suggestion-card:hover{border-color:#93c5fd;box-shadow:0 4px 16px #2563eb1a;transform:translateY(-2px)}.learning-suggestion-card strong{color:#1d4ed8;font-size:14px;font-weight:700}.learning-suggestion-card span{color:#475569;font-size:13px}.lesson-video-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 2px 12px #0f172a0f;padding:18px}.lesson-video-frame{background:#0a0f1e;border-radius:12px}.webcam-focus-panel{background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 1px 4px #0f172a0d;padding:18px}.webcam-preview{background:#0a0f1e;border-radius:10px;overflow:hidden}.webcam-placeholder{color:#64748b;font-size:13px;height:170px}.lesson-info-panel{background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 2px 12px #0f172a0f;overflow:hidden;position:sticky;top:72px}.lesson-title-block{background:linear-gradient(135deg,#0f172a,#1e3a5f);border-bottom:none;padding:22px 22px 18px}.lesson-title-block .eyebrow{color:#7dd3fc}.lesson-title-block h1{color:#fff;font-size:18px;margin-top:6px}.lesson-title-block .course-description{color:#ffffff8c}.lesson-course-badge{background:#ffffff1f;color:#ffffffd9}.lesson-compact-stats{display:flex;gap:12px;margin-top:10px}.lesson-compact-stat{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;display:flex;flex:1;flex-direction:column;gap:2px;padding:10px 8px;text-align:center}.lesson-compact-stat span{color:#94a3b8;font-size:18px}.lesson-compact-stat strong{color:#0f172a;font-size:16px;font-weight:800;line-height:1}.lesson-compact-stat small{color:#94a3b8;font-size:10px;font-weight:600}.lesson-notes-panel{background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 1px 4px #0f172a0d;padding:18px}.next-lesson-card{background:#fff;border:1px solid #e2e8f0;border-radius:14px;box-shadow:0 1px 4px #0f172a0d;padding:16px 20px;transition:border-color .15s,box-shadow .15s}.next-lesson-card:hover{border-color:#93c5fd;box-shadow:0 6px 24px #2563eb1a}.quiz-cta-button{background:linear-gradient(135deg,#6d28d9,#7c3aed);border-color:#5b21b6;box-shadow:0 4px 16px #6d28d94d}.quiz-cta-button:hover{box-shadow:0 8px 24px #6d28d966}.quiz-layout{max-width:720px}.quiz-header{background:linear-gradient(120deg,#0f172a,#1e3a5f 60%,#312e81);border:none;border-radius:18px;box-shadow:0 8px 28px #0f172a24;padding:24px 28px;position:relative;overflow:hidden}.quiz-header:after{background:radial-gradient(ellipse at top right,rgba(99,102,241,.25),transparent 60%);content:"";top:0;right:0;bottom:0;left:0;pointer-events:none;position:absolute}.quiz-header .eyebrow{color:#a5b4fc;position:relative;z-index:1}.quiz-header h1{color:#fff;font-size:22px;position:relative;z-index:1}.quiz-header .muted-text{color:#ffffff80;font-size:14px;position:relative;z-index:1}.quiz-progress{color:#ffffffb3;font-size:14px;font-weight:600;position:relative;z-index:1}.question-card{background:#fff;border:1px solid #e2e8f0;border-radius:18px;box-shadow:0 4px 20px #0f172a12;display:grid;gap:18px;padding:28px}.question-heading{align-items:center;color:#64748b;display:flex;font-size:13px;font-weight:700;justify-content:space-between;letter-spacing:.04em;text-transform:uppercase}.question-card h2{color:#0f172a;font-size:18px;font-weight:700;line-height:1.55}.answer-option{background:#f8fafc;border:1.5px solid #e2e8f0;border-radius:12px;font-size:14.5px;padding:14px 18px;transition:background .15s,border-color .15s,box-shadow .15s,transform .1s}.answer-option:hover{background:#eff6ff;border-color:#93c5fd;transform:translate(2px)}.answer-option.selected{background:#eff6ff;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a;transform:translate(2px)}.answer-letter{background:#fff;border:1.5px solid #e2e8f0;border-radius:8px;color:#64748b;font-size:13px;font-weight:800;height:32px;width:32px}.answer-option.selected .answer-letter{background:#2563eb;border-color:#2563eb;color:#fff}.quiz-result{background:#fff;border:1px solid #e2e8f0;border-radius:18px;box-shadow:0 4px 20px #0f172a12;padding:36px 32px;text-align:center}.quiz-result h2{font-size:32px;font-weight:900;letter-spacing:-.8px}.result-grid>div{background:#f8fafc;border:1px solid #e2e8f0;border-radius:14px;display:grid;gap:6px;padding:18px}.profile-card{background:#fff;border:1px solid #e2e8f0;border-radius:20px;box-shadow:0 4px 24px #0f172a14;max-width:680px;overflow:hidden}.profile-hero{background:linear-gradient(135deg,#0f172a,#1e3a5f,#0c4a6e);display:flex;flex-direction:column;gap:12px;padding:32px 28px 28px}.profile-hero:after{background:radial-gradient(ellipse at top right,rgba(14,165,233,.22),transparent 55%)}.profile-avatar{background:#ffffff1a;border:2px solid rgba(255,255,255,.22);border-radius:50%;color:#fff;font-size:28px;font-weight:800;height:68px;width:68px}.profile-hero h2{color:#fff;font-size:22px;margin:0;position:relative;z-index:1}.profile-hero p:not(.eyebrow){color:#ffffff8c;font-size:14px;position:relative;z-index:1}.profile-info-grid{background:#fff;display:grid;gap:0;grid-template-columns:1fr 1fr;padding:0}.profile-info-grid>div{border-bottom:1px solid #f1f5f9;border-right:1px solid #f1f5f9;display:grid;gap:4px;padding:18px 22px}.profile-info-grid>div:nth-child(2n){border-right:none}.profile-info-grid>div:nth-last-child(-n+2){border-bottom:none}.profile-info-grid dt{color:#94a3b8;font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.profile-info-grid dd{color:#0f172a;font-size:14px;font-weight:600;margin:0}.profile-actions{border-top:1px solid #f1f5f9;display:flex;gap:10px;padding:18px 22px}.primary-button{background:linear-gradient(135deg,#2563eb,#1d4ed8);border:none;border-radius:10px;box-shadow:0 2px 8px #2563eb40;color:#fff;font-size:14px;font-weight:700;padding:10px 20px}.primary-button:hover{background:linear-gradient(135deg,#1d4ed8,#1e40af);box-shadow:0 6px 20px #2563eb61;transform:translateY(-1px)}.primary-button:active{transform:translateY(0)}.secondary-button{background:#fff;border:1.5px solid #e2e8f0;border-radius:10px;box-shadow:0 1px 3px #0f172a0f;color:#374151;font-size:14px;font-weight:600}.secondary-button:hover{background:#f8fafc;border-color:#cbd5e1}.panel,.lesson-card,.dashboard-card{background:#fff;border:1px solid #e2e8f0;border-radius:14px}.app-main{min-height:calc(100vh - 60px);padding:32px 20px 80px}@keyframes fadeInUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes shimmer{0%{background-position:-400px 0}to{background-position:400px 0}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.page-shell{animation:fadeIn .25s ease}.home-stat-card,.course-card,.dashboard-stat-card,.quiz-history-card,.course-progress-card,.cpd-lesson-row,.fb-rec-card{animation:fadeInUp .3s ease both}.home-stat-card:nth-child(1){animation-delay:.05s}.home-stat-card:nth-child(2){animation-delay:.1s}.home-stat-card:nth-child(3){animation-delay:.15s}.home-stat-card:nth-child(4){animation-delay:.2s}.dashboard-stat-card:nth-child(1){animation-delay:.04s}.dashboard-stat-card:nth-child(2){animation-delay:.08s}.dashboard-stat-card:nth-child(3){animation-delay:.12s}.dashboard-stat-card:nth-child(4){animation-delay:.16s}.dashboard-stat-card:nth-child(5){animation-delay:.2s}.course-card:nth-child(1){animation-delay:.05s}.course-card:nth-child(2){animation-delay:.1s}.course-card:nth-child(3){animation-delay:.15s}.course-card:nth-child(4){animation-delay:.2s}.course-card:nth-child(5){animation-delay:.25s}.course-card:nth-child(6){animation-delay:.3s}.ui-skeleton{background:linear-gradient(90deg,#f1f5f9 25%,#e9eef4,#f1f5f9 75%);background-size:400px 100%;animation:shimmer 1.4s ease-in-out infinite;border-radius:14px}.ui-skeleton-page{display:flex;flex-direction:column;gap:16px}.ui-sk-hero{height:180px;width:100%}.ui-sk-card{flex:1;height:100px}.ui-sk-list{height:320px;width:100%}.ui-sk-line{height:16px;width:100%;border-radius:8px}.ui-sk-line.short{width:60%}.ui-sk-line.xshort{width:35%}.ui-empty-state{align-items:center;background:#fff;border:1.5px dashed #e2e8f0;border-radius:18px;display:flex;flex-direction:column;gap:10px;padding:52px 24px;text-align:center}.ui-empty-icon{background:#f8fafc;border:1px solid #e2e8f0;border-radius:16px;font-size:32px;height:72px;line-height:72px;margin-bottom:4px;width:72px}.ui-empty-state h3{color:#0f172a;font-size:18px;font-weight:700;margin:0}.ui-empty-state p{color:#64748b;font-size:14px;margin:0;max-width:320px}.ui-empty-state .primary-button,.ui-empty-state .secondary-button{margin-top:6px}.state-message{background:#fff;border:1.5px dashed #e2e8f0;border-radius:14px;color:#94a3b8;font-size:14px;padding:40px 20px;text-align:center}.fb-page{display:flex;flex-direction:column;gap:18px;max-width:760px}.fb-hero{align-items:center;border-radius:20px;display:flex;gap:28px;justify-content:space-between;overflow:hidden;padding:36px 40px;position:relative}.fb-hero:after{content:"";top:0;right:0;bottom:0;left:0;pointer-events:none;position:absolute}.fb-hero-pass{background:linear-gradient(135deg,#064e3b,#065f46,#0f766e);box-shadow:0 12px 40px #064e3b40}.fb-hero-pass:after{background:radial-gradient(ellipse at top right,rgba(52,211,153,.22),transparent 55%)}.fb-hero-fail{background:linear-gradient(135deg,#450a0a,#7f1d1d,#991b1b);box-shadow:0 12px 40px #450a0a40}.fb-hero-fail:after{background:radial-gradient(ellipse at top right,rgba(248,113,113,.18),transparent 55%)}.fb-hero-left{flex:1;position:relative;z-index:1}.fb-hero-badge{background:#ffffff26;border:1px solid rgba(255,255,255,.25);border-radius:99px;color:#fff;display:inline-block;font-size:13px;font-weight:700;margin-bottom:12px;padding:4px 14px}.fb-hero h1{color:#fff;font-size:28px;font-weight:800;letter-spacing:-.6px;margin:0 0 10px}.fb-hero-msg{color:#ffffffa6;font-size:14px;line-height:1.7;margin:0;max-width:400px}.fb-hero-scores{align-items:center;display:flex;flex-shrink:0;gap:16px;position:relative;z-index:1}.fb-score-ring{flex-shrink:0;position:relative}.fb-score-ring-inner{align-items:center;display:flex;flex-direction:column;top:0;right:0;bottom:0;left:0;justify-content:center;position:absolute}.fb-score-ring-inner strong{font-size:18px;font-weight:800;letter-spacing:-.5px;line-height:1}.fb-score-ring-inner span{color:#ffffff8c;font-size:10px;font-weight:700;margin-top:2px}.fb-rec-card{align-items:center;background:#fff;border:1.5px solid #e2e8f0;border-left:4px solid var(--rec-color, #2563eb);border-radius:14px;box-shadow:0 2px 10px #0f172a0f;display:flex;gap:16px;padding:18px 22px}.fb-rec-icon{align-items:center;background:#f8fafc;border-radius:10px;display:flex;flex-shrink:0;font-size:22px;height:48px;justify-content:center;width:48px}.fb-rec-card strong{color:#0f172a;display:block;font-size:15px;font-weight:700;margin-bottom:3px}.fb-rec-card p{color:#64748b;font-size:13.5px;margin:0}.fb-actions{display:flex;flex-wrap:wrap;gap:10px}.cpd-page{display:flex;flex-direction:column;gap:20px}.cpd-hero{align-items:center;background:linear-gradient(120deg,#0f172a,#1e3a5f 55%,#065f46);border-radius:20px;box-shadow:0 12px 40px #0f172a2e;display:flex;gap:24px;justify-content:space-between;overflow:hidden;padding:36px 40px;position:relative}.cpd-hero:after{background:radial-gradient(ellipse at top right,rgba(14,165,233,.2),transparent 55%);content:"";top:0;right:0;bottom:0;left:0;pointer-events:none;position:absolute}.cpd-hero-left{flex:1;position:relative;z-index:1}.cpd-hero .eyebrow{color:#7dd3fc}.cpd-hero h1{color:#fff;font-size:26px;font-weight:800;letter-spacing:-.6px;margin:8px 0 10px}.cpd-hero-sub{color:#fff9;font-size:14px;margin:0 0 14px}.cpd-done{color:#38bdf8;font-size:20px;font-weight:800}.cpd-hero-bar-wrap{background:#ffffff1f;border-radius:99px;height:6px;overflow:hidden;width:100%}.cpd-hero-bar{background:linear-gradient(90deg,#38bdf8,#34d399);border-radius:99px;height:100%;transition:width 1s ease}.cpd-ring{flex-shrink:0;position:relative;z-index:1}.cpd-lesson-panel{background:#fff;border:1px solid #e2e8f0;border-radius:18px;box-shadow:0 2px 12px #0f172a0f;overflow:hidden}.cpd-panel-head{border-bottom:1px solid #f1f5f9;padding:20px 24px 16px}.cpd-panel-head h2{color:#0f172a;font-size:17px;font-weight:700;margin:0 0 4px}.cpd-panel-head p{color:#64748b;font-size:13px;margin:0}.cpd-lesson-list{display:flex;flex-direction:column}.cpd-lesson-row{align-items:center;animation:fadeInUp .3s ease both;border-bottom:1px solid #f8fafc;display:flex;gap:16px;padding:16px 24px;transition:background .15s}.cpd-lesson-row:last-child{border-bottom:none}.cpd-lesson-row:hover{background:#f8fafc}.cpd-lesson-row.is-done{background:#f0fdf4}.cpd-lesson-row.is-done:hover{background:#dcfce7}.cpd-lesson-num{align-items:center;background:#f1f5f9;border-radius:10px;color:#64748b;display:flex;flex-shrink:0;font-size:13px;font-weight:800;height:36px;justify-content:center;width:36px}.is-done .cpd-lesson-num{background:#dcfce7;color:#15803d}.cpd-lesson-body{flex:1;min-width:0}.cpd-lesson-title-row{align-items:center;display:flex;gap:10px;justify-content:space-between;margin-bottom:4px}.cpd-lesson-title-row h3{color:#0f172a;font-size:14.5px;font-weight:700;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cpd-lesson-desc{color:#64748b;font-size:13px;line-height:1.55;margin:0 0 6px;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1}.cpd-lesson-badge{border-radius:99px;flex-shrink:0;font-size:11px;font-weight:700;padding:3px 10px;white-space:nowrap}.cpd-lesson-badge.done{background:#dcfce7;border:1px solid #bbf7d0;color:#15803d}.cpd-lesson-badge.pending{background:#f8fafc;border:1px solid #e2e8f0;color:#94a3b8}.cpd-lesson-meta{display:flex;flex-wrap:wrap;gap:8px}.cpd-lesson-meta span{color:#94a3b8;font-size:12px;font-weight:500}.cpd-lesson-row:nth-child(1){animation-delay:.04s}.cpd-lesson-row:nth-child(2){animation-delay:.08s}.cpd-lesson-row:nth-child(3){animation-delay:.12s}.cpd-lesson-row:nth-child(4){animation-delay:.16s}.cpd-lesson-row:nth-child(5){animation-delay:.2s}.cpd-lesson-row:nth-child(6){animation-delay:.24s}.cpd-lesson-row:nth-child(7){animation-delay:.28s}.cpd-lesson-row:nth-child(8){animation-delay:.32s}.stat-icon{font-size:22px}.home-footer{background:linear-gradient(135deg,#0f172a,#1e3a5f);border:none;border-radius:14px;box-shadow:0 4px 20px #0f172a1f;padding:20px 24px}.home-footer strong{color:#fff;font-size:15px;font-weight:700}.home-footer span{color:#ffffff80;font-size:13px}.learning-path-card{background:#fff;border:1px solid #e2e8f0;border-left:none;border-radius:0 14px 14px 0;margin-bottom:8px;padding:14px 18px 14px 16px;transition:border-color .15s,box-shadow .15s,background .15s}.learning-path-card:hover{background:#f8fafc;border-color:#93c5fd;box-shadow:0 2px 12px #2563eb14}.lesson-button{font-size:13px;min-height:36px;padding:7px 14px;white-space:nowrap}.quiz-result{animation:fadeInUp .4s ease}@media (max-width: 900px){.fb-hero{flex-direction:column;padding:28px 24px}.fb-hero-scores{flex-direction:row;justify-content:center}.cpd-hero{flex-direction:column;padding:28px 24px}.cpd-ring{display:none}}@media (max-width: 640px){.home-stat-grid,.dashboard-overview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.fb-hero-scores{gap:12px}.cpd-lesson-row{flex-wrap:wrap;gap:10px}.course-grid{grid-template-columns:1fr}}.cpw-center{display:flex;align-items:center;justify-content:center;min-height:100vh;width:100%;padding:2rem 1rem;position:relative;z-index:1}.cpw-card{width:100%;max-width:460px;animation:fadeInUp .5s ease both}.cpw-success{text-align:center;padding:2rem 0 1rem}.cpw-success-icon{width:72px;height:72px;border-radius:50%;background:linear-gradient(135deg,#10b981,#34d399);color:#fff;font-size:2rem;line-height:72px;margin:0 auto 1.25rem;box-shadow:0 0 32px #10b98159}.cpw-success p{font-size:1.1rem;font-weight:600;color:#f8fafc;margin-bottom:.25rem}.cpw-steps{display:flex;align-items:center;justify-content:center;gap:.5rem;margin-top:1.5rem}.cpw-step{width:32px;height:32px;border-radius:50%;border:2px solid rgba(248,250,252,.2);color:#f8fafc66;font-size:.8rem;font-weight:600;display:flex;align-items:center;justify-content:center;transition:all .3s ease}.cpw-step.active{border-color:#6366f1;color:#a5b4fc;background:#6366f126}.cpw-step.done{border-color:#10b981;color:#34d399;background:#10b98126}.cpw-step-line{height:2px;width:40px;background:#f8fafc26;border-radius:1px;transition:all .3s ease}.cpw-step-line.active{background:linear-gradient(90deg,#10b981,#6366f1)}.profile-change-pw-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.65rem 1.4rem;border-radius:10px;border:1.5px solid rgba(99,102,241,.4);color:#a5b4fc;background:#6366f114;font-size:.9rem;font-weight:500;text-decoration:none;transition:all .2s ease;cursor:pointer}.profile-change-pw-btn:hover{background:#6366f12e;border-color:#6366f1b3;color:#c7d2fe;transform:translateY(-1px)}.auth-forgot-link{color:#a5b4fcb3;font-size:.85rem;text-decoration:none;transition:color .2s}.auth-forgot-link:hover{color:#a5b4fc}.profile-hero{position:relative}.profile-hero-info{flex:1;min-width:0}.profile-hero-email{font-size:.9rem;color:var(--text-muted, #64748b);margin-top:.15rem}.profile-bio-preview{font-size:.88rem;color:var(--text-muted, #64748b);margin-top:.4rem;font-style:italic;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.profile-bio-full{font-size:.95rem;color:var(--text-secondary, #475569);line-height:1.7;padding:1rem 1.25rem;background:#6366f10a;border-left:3px solid #6366f1;border-radius:0 8px 8px 0;margin:0}.profile-edit-btn{position:absolute;top:0;right:0;padding:.5rem 1rem;border-radius:8px;border:1.5px solid rgba(99,102,241,.35);background:#6366f112;color:#6366f1;font-size:.85rem;font-weight:500;cursor:pointer;transition:all .2s ease}.profile-edit-btn:hover{background:#6366f124;border-color:#6366f1}.profile-section-title{font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted, #94a3b8);margin-bottom:.75rem}.profile-save-ok{background:#10b9811a;border:1px solid rgba(16,185,129,.3);color:#10b981;border-radius:8px;padding:.65rem 1rem;font-size:.9rem;font-weight:500;margin-bottom:1.25rem}.profile-skeleton{display:flex;align-items:center;gap:1.25rem;padding:1.5rem;background:#fff;border-radius:16px;box-shadow:0 2px 12px #0000000f}.profile-edit-form{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid rgba(0,0,0,.07)}.profile-edit-title{font-size:1rem;font-weight:600;color:var(--text-primary, #1e293b);margin-bottom:1.25rem}.profile-edit-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem 1.25rem;margin-bottom:1.5rem}.profile-edit-field{display:flex;flex-direction:column;gap:.4rem}.profile-edit-field--full{grid-column:1 / -1}.profile-edit-field label{font-size:.8rem;font-weight:600;color:var(--text-secondary, #475569);letter-spacing:.02em}.profile-edit-field input,.profile-edit-field select,.profile-edit-field textarea{padding:.6rem .85rem;border:1.5px solid rgba(0,0,0,.12);border-radius:8px;font-size:.9rem;color:var(--text-primary, #1e293b);background:#fff;transition:border-color .2s,box-shadow .2s;outline:none;font-family:inherit;resize:vertical}.profile-edit-field input:focus,.profile-edit-field select:focus,.profile-edit-field textarea:focus{border-color:#6366f1;box-shadow:0 0 0 3px #6366f11f}.profile-edit-actions{display:flex;gap:.75rem;flex-wrap:wrap}@media (max-width: 600px){.profile-edit-grid{grid-template-columns:1fr}.profile-edit-field--full{grid-column:1}.profile-edit-btn{position:static;align-self:flex-start;margin-left:auto}}.adm-user-edit-card{border-top:3px solid #6366f1}.adm-avatar-section{display:flex;align-items:center;gap:1.5rem;padding:1.25rem 0 1.5rem;border-bottom:1px solid rgba(0,0,0,.07);margin-bottom:1.5rem}.adm-avatar-preview{position:relative;width:88px;height:88px;border-radius:50%;overflow:hidden;flex-shrink:0;background:linear-gradient(135deg,#6366f1,#8b5cf6);display:flex;align-items:center;justify-content:center;border:3px solid rgba(99,102,241,.25)}.adm-avatar-img{width:100%;height:100%;object-fit:cover}.adm-avatar-initials{font-size:1.75rem;font-weight:700;color:#fff;line-height:1}.adm-avatar-uploading{position:absolute;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.5rem;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.adm-avatar-label{font-weight:600;font-size:.9rem;margin-bottom:.2rem}.adm-avatar-hint{font-size:.8rem;color:#94a3b8;margin-bottom:.6rem}.adm-avatar-btn{padding:.45rem .9rem;border-radius:8px;border:1.5px solid rgba(99,102,241,.4);background:#6366f10f;color:#6366f1;font-size:.85rem;font-weight:500;cursor:pointer;transition:all .2s}.adm-avatar-btn:hover{background:#6366f124;border-color:#6366f1}.adm-avatar-filename{font-size:.78rem;color:#64748b;margin-top:.4rem;font-style:italic;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.adm-user-edit-form{display:flex;flex-direction:column;gap:0}.adm-user-edit-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem 1.25rem;margin-bottom:1.5rem}.adm-edit-field{display:flex;flex-direction:column;gap:.35rem;font-size:.82rem;font-weight:600;color:#475569;letter-spacing:.02em}.adm-edit-field--full{grid-column:1 / -1}.adm-edit-field input,.adm-edit-field select,.adm-edit-field textarea{padding:.55rem .8rem;border:1.5px solid rgba(0,0,0,.12);border-radius:8px;font-size:.9rem;color:#1e293b;background:#fff;font-family:inherit;outline:none;transition:border-color .2s,box-shadow .2s;resize:vertical}.adm-edit-field input:focus,.adm-edit-field select:focus,.adm-edit-field textarea:focus{border-color:#6366f1;box-shadow:0 0 0 3px #6366f11f}.adm-user-avatar-img{width:36px;height:36px;border-radius:50%;object-fit:cover;border:2px solid rgba(99,102,241,.2);flex-shrink:0}.adm-user-bio-hint{font-size:.75rem;color:#94a3b8;margin-top:2px}.adm-contact-cell{display:flex;flex-direction:column;gap:2px;font-size:.875rem}.adm-phone{font-size:.78rem;color:#64748b}@media (max-width: 640px){.adm-user-edit-grid{grid-template-columns:1fr}.adm-edit-field--full{grid-column:1}.adm-avatar-section{flex-direction:column;align-items:flex-start}}.profile-avatar-wrap{position:relative;width:88px;height:88px;border-radius:50%;flex-shrink:0;cursor:pointer}.profile-avatar-wrap .profile-avatar{width:88px;height:88px;font-size:2rem;margin:0}.profile-avatar-img{width:88px;height:88px;border-radius:50%;object-fit:cover;border:3px solid rgba(99,102,241,.25);display:block}.profile-avatar-overlay{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background:#00000073;display:flex;align-items:center;justify-content:center;color:#fff;opacity:0;transition:opacity .2s ease}.profile-avatar-wrap:hover .profile-avatar-overlay,.profile-avatar-wrap--uploading .profile-avatar-overlay{opacity:1}.profile-avatar-spinner{width:20px;height:20px;border:2px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite}.profile-avatar-hint{font-size:.75rem;color:#94a3b8;margin-top:.35rem}.navbar-user-profile{display:flex;align-items:center;gap:.5rem;text-decoration:none;color:inherit;border-radius:999px;padding:.2rem .6rem .2rem .2rem;transition:background .18s}.navbar-user-profile:hover{background:#ffffff14}.navbar-avatar{width:32px;height:32px;border-radius:50%;overflow:hidden;flex-shrink:0;background:linear-gradient(135deg,#6366f1,#8b5cf6);display:flex;align-items:center;justify-content:center;border:2px solid rgba(255,255,255,.2)}.navbar-avatar-img{width:100%;height:100%;object-fit:cover}.navbar-avatar-initial{font-size:.8rem;font-weight:700;color:#fff;line-height:1}.navbar-display-name{font-size:.875rem;font-weight:500;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
