@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:300;src:url(/assets/inter-latin-300-normal-BVlfKGgI.woff2)format("woff2"),url(/assets/inter-latin-300-normal-i8F0SvXL.woff)format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-400-normal-C38fXH4l.woff2)format("woff2"),url(/assets/inter-latin-400-normal-CyCys3Eg.woff)format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-latin-500-normal-Cerq10X2.woff2)format("woff2"),url(/assets/inter-latin-500-normal-BL9OpVg8.woff)format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-latin-600-normal-LgqL8muc.woff2)format("woff2"),url(/assets/inter-latin-600-normal-CiBQ2DWP.woff)format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-latin-700-normal-Yt3aPRUw.woff2)format("woff2"),url(/assets/inter-latin-700-normal-BLAVimhd.woff)format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/inter-latin-800-normal-BYj_oED-.woff2)format("woff2"),url(/assets/inter-latin-800-normal-D1mf63XC.woff)format("woff")}:root{--bg-primary:#f8fafc;--bg-main:var(--bg-primary);--bg-secondary:#f1f5f9;--bg-accent:#e2e8f0;--bg-card:#fff;--text-main:#020617;--text-primary:#020617;--text-secondary:#1e293b;--text-dim:#334155;--text-mute:#334155;--text-muted:#334155;--interactive-accent:#065f46;--role-badge-text:var(--text-secondary);--cta-bg:#047857;--cta-success-bg:#065f46;--cta-danger-bg:#b91c1c;--primary:#059669;--primary-light:#ffedd5;--primary-dark:#e64a19;--secondary:#10b981;--accent:#10b981;--success:#10b981;--success-text:#047857;--success-light:#d1fae5;--warning:#f59e0b;--warning-light:#fef3c7;--danger:#ef4444;--danger-light:#fee2e2;--info:#0ea5e9;--bg-success-subtle:#10b98126;--bg-danger-subtle:#ef444426;--bg-warning-subtle:#f59e0b26;--bg-info-subtle:#0ea5e926;--border-success:#10b98133;--border-danger:#ef444433;--border-warning:#f59e0b33;--border-info:#0ea5e933;--bg-neutral-subtle:#6b72801a;--border-neutral:#6b728040;--bg-purple-subtle:#8b5cf61a;--border-purple:#8b5cf640;--bg-pink-subtle:#ec48991a;--border-pink:#ec489940;--student-listening-color:#3b82f6;--student-listening-bg:#3b82f61f;--student-speaking-color:#ec4899;--student-speaking-bg:#ec48991f;--student-reading-color:#10b981;--student-reading-bg:#10b9811f;--student-writing-color:#8b5cf6;--student-writing-bg:#8b5cf61f;--accent-vermilion:#059669;--accent-green:#059669;--accent-orange:#10b981;--accent-red:#dc2626;--accent-pink:#db2777;--gradient-primary:linear-gradient(135deg, #059669 0%, #10b981 100%);--gradient-green:linear-gradient(135deg, #dcfce7 0%, #bbf7d0 100%);--gradient-orange:linear-gradient(135deg, #10b981 0%, #6ee7b7 100%);--gradient-set:linear-gradient(135deg, #059669 0%, #10b981 100%);--glass:#ffffffb3;--glass-border:#fff6;--border-color:#e2e8f0;--border:#cbd5e1;--card-featured-bg:linear-gradient(135deg, #fff7ed 0%, #ffedd5 100%);--card-featured-text:#1e293b;--shadow-sm:0 1px 2px #0000000d;--shadow-soft:0 10px 25px -5px #0000000d, 0 8px 10px -6px #0000000d;--shadow-md:0 4px 6px -1px #00000012, 0 2px 4px -2px #0000000d;--shadow-lg:0 10px 15px -3px #00000014, 0 4px 6px -4px #0000000d;--shadow-glow:0 0 20px #05966926;--radius:12px;--radius-sm:8px;--radius-md:16px;--radius-lg:24px;--radius-xl:28px;--radius-full:99px;--transition:all .3s cubic-bezier(.4, 0, .2, 1);--sidebar-width:260px;--sidebar-collapsed-width:80px;--role-admin:#7c3aed;--role-dean:#dc2626;--role-dept-head:#10b981;--role-teacher:#0ea5e9;--role-student:#10b981;--skill-listening-color:#c77906;--skill-listening-bg:#f59e0b1a;--skill-listening-border:#f59e0b40;--skill-speaking-color:#7c3aed;--skill-speaking-bg:#8b5cf61a;--skill-speaking-border:#8b5cf640;--skill-reading-color:#0284c7;--skill-reading-bg:#0ea5e91a;--skill-reading-border:#0ea5e940;--skill-writing-color:#059669;--skill-writing-bg:#10b9811a;--skill-writing-border:#10b98140;--dashboard-hero-bg:linear-gradient(135deg, #fff 0%, #f1f5f9 100%);--dashboard-hero-border:#0000001f;--dashboard-hero-text:var(--text-main);--dashboard-hero-subtext:var(--text-dim);--dashboard-kpi-bg:#ffffffb3;--dashboard-chart-bg:#ffffff80;--dashboard-divider:var(--primary);--areca:#059669;--areca-dim:#05966926;--areca-glow:#05966959;--tooltip-bg:#fffffff2;--tooltip-text:var(--text-main)}:root.dark{--bg-primary:#0f172a;--bg-main:var(--bg-primary);--bg-secondary:#1e293b;--bg-accent:#334155;--bg-card:#1e293b;--text-main:#f8fafc;--text-primary:#f8fafc;--text-secondary:#cbd5e1;--text-dim:#94a3b8;--text-mute:#94a3b8;--text-muted:#94a3b8;--interactive-accent:#6ee7b7;--success-text:#34d399;--role-badge-text:var(--text-secondary);--primary-light:#05966933;--glass:#0f172acc;--glass-border:#ffffff1a;--border-color:#475569;--border:#64748b;--bg-success-subtle:#10b98126;--bg-danger-subtle:#ef444426;--bg-warning-subtle:#f59e0b26;--bg-info-subtle:#0ea5e926;--card-featured-bg:linear-gradient(135deg, #334155 0%, #1e293b 100%);--card-featured-text:#f8fafc;--accent-green:#34d399;--accent-red:#f87171;--accent-vermilion:#6ee7b7;--accent-pink:#f472b6;--role-admin:#a78bfa;--role-dean:#f87171;--role-dept-head:#6ee7b7;--role-teacher:#38bdf8;--role-student:#34d399;--skill-listening-color:#fbbf24;--skill-listening-bg:#f59e0b33;--skill-listening-border:#f59e0b59;--skill-speaking-color:#a78bfa;--skill-speaking-bg:#8b5cf633;--skill-speaking-border:#8b5cf659;--skill-reading-color:#38bdf8;--skill-reading-bg:#0ea5e933;--skill-reading-border:#0ea5e959;--skill-writing-color:#34d399;--skill-writing-bg:#10b98133;--skill-writing-border:#10b98159;--border-success:#10b9814d;--border-danger:#ef44444d;--border-warning:#f59e0b4d;--border-info:#0ea5e94d;--bg-neutral-subtle:#6b728033;--border-neutral:#6b728059;--bg-purple-subtle:#8b5cf633;--border-purple:#8b5cf659;--bg-pink-subtle:#ec489933;--border-pink:#ec489959;--student-listening-color:#60a5fa;--student-listening-bg:#3b82f633;--student-speaking-color:#f472b6;--student-speaking-bg:#ec489933;--student-reading-color:#34d399;--student-reading-bg:#10b98133;--student-writing-color:#a78bfa;--student-writing-bg:#8b5cf633;--shadow-sm:0 1px 2px #00000080;--shadow-soft:0 10px 25px -5px #0006, 0 8px 10px -6px #0000004d;--shadow-md:0 4px 6px -1px #0006;--shadow-lg:0 10px 15px -3px #00000080;--dashboard-hero-bg:linear-gradient(135deg, #111827 0%, #030712 100%);--dashboard-hero-border:#ffffff0d;--dashboard-hero-text:#fff;--dashboard-hero-subtext:#94a3b8;--dashboard-kpi-bg:#ffffff08;--dashboard-chart-bg:#ffffff05;--dashboard-divider:#10b981;--areca:#10b981;--areca-dim:#10b98126;--areca-glow:#10b98159;--tooltip-bg:#1e293bf2;--tooltip-text:#f8fafc}@keyframes medal-shimmer{0%{transform:translate(-150%)skew(-25deg)}50%,to{transform:translate(150%)skew(-25deg)}}.medal-shimmer{pointer-events:none;z-index:1;background:linear-gradient(90deg,#0000,#fff6,#0000);width:50%;height:100%;animation:3s linear infinite medal-shimmer;position:absolute;top:0;left:0}@keyframes sparkle-float{0%,to{opacity:1;transform:scale(1)rotate(0)}50%{opacity:.7;transform:scale(1.3)rotate(15deg)}}.sparkle-icon{animation:ease-in-out infinite sparkle-float}*{box-sizing:border-box;margin:0;padding:0;transition:background-color .3s,color .3s,border-color .3s,box-shadow .3s}body{background:var(--bg-primary);color:var(--text-primary);min-height:100vh;font-family:Inter,-apple-system,sans-serif;overflow-x:hidden}#root{flex-direction:column;min-height:100vh;display:flex}.app-layout{background:var(--bg-primary);background-image:radial-gradient(circle at 10% 20%,#05966908 0%,#0000 40%),radial-gradient(circle at 90% 80%,#10b98108 0%,#0000 40%);flex-direction:column;min-height:100vh;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex}.responsive-grid{grid-template-columns:repeat(auto-fit, minmax(var(--grid-min,300px), 1fr));gap:var(--grid-gap,24px);display:grid}.responsive-flex{gap:var(--flex-gap,16px);flex-wrap:wrap;display:flex}@media (width<=768px){.mobile-stack{flex-direction:column!important}.mobile-hide{display:none!important}.mobile-full-width{width:100%!important}:root{--grid-min:100%}}.sidebar{width:var(--sidebar-width);background:var(--bg-card);border-right:1px solid var(--border-color);z-index:2001;will-change:width;-webkit-overflow-scrolling:touch;flex-direction:column;transition:width .22s cubic-bezier(.4,0,.2,1);display:flex;position:fixed;top:0;bottom:0;left:0;overflow-x:hidden}.sidebar-mobile-toggle{display:none}@media (width>=861px){.sidebar.collapsed{width:var(--sidebar-collapsed-width)}.sidebar.collapsed .sidebar-logo{justify-content:center!important;padding:24px 15px!important}.sidebar.collapsed .sidebar-logo h2,.sidebar.collapsed .sidebar-logo p,.sidebar.collapsed .sidebar-nav span,.sidebar.collapsed .sidebar-link span,.sidebar.collapsed .sidebar-footer span,.sidebar.collapsed .user-info-text,.sidebar.collapsed .sidebar-toggle-top,.sidebar.collapsed .sidebar-section-label{display:none!important}.sidebar.collapsed .sidebar-nav{padding:12px 0!important}.sidebar.collapsed .sidebar-link{justify-content:center!important;width:50px!important;margin:0 auto 2px!important;padding:10px 0!important}.sidebar.collapsed .sidebar-link:hover{transform:none!important}.sidebar.collapsed .sidebar-link span,.sidebar.collapsed .sidebar-nav span{display:none!important}.sidebar.collapsed .sidebar-link svg,.sidebar.collapsed .sidebar-link :first-child{margin:0!important}.sidebar-collapse-btn{background:var(--bg-card);border:1px solid var(--border-color);cursor:pointer;width:24px;height:24px;color:var(--text-dim);z-index:2002;opacity:.8;border-radius:50%;justify-content:center;align-items:center;transition:all .25s cubic-bezier(.4,0,.2,1);display:flex;position:absolute;top:32px;right:0;box-shadow:0 2px 8px #00000014,0 1px 3px #0000000a}.sidebar-collapse-btn:hover{background:var(--bg-primary);color:var(--primary);border-color:var(--primary);opacity:1;box-shadow:0 4px 12px #05966926}.app-layout.collapsed .main-content{margin-left:var(--sidebar-collapsed-width)}}.logo-icon{background:var(--primary);color:#fff;border-radius:12px;justify-content:center;align-items:center;width:40px;height:40px;display:flex;box-shadow:0 4px 12px #0596694d}.sidebar-logo h2{color:var(--text-main);letter-spacing:-.02em;font-size:22px;font-weight:800}.sidebar-nav{flex-direction:column;flex:1;gap:4px;padding:0 16px;display:flex}.sidebar-link{border-radius:var(--radius-md);color:var(--text-dim);transition:var(--transition);touch-action:manipulation;align-items:center;gap:12px;min-height:48px;padding:14px 16px;font-size:15px;font-weight:500;text-decoration:none;display:flex}.sidebar-link:hover{background:var(--bg-secondary);color:var(--interactive-accent);transform:translate(4px)}.sidebar-link.active{background:var(--bg-accent);color:var(--interactive-accent);box-shadow:inset 3px 0 0 var(--interactive-accent);font-weight:700}.account-role-badge{color:var(--role-badge-text)!important}.main-content{margin-left:var(--sidebar-width);will-change:margin-left;flex:1;min-width:0;min-height:100vh;transition:margin-left .22s cubic-bezier(.4,0,.2,1);position:relative}@media (width<=860px){.main-content{margin-left:0!important}}.page-container{width:100%;max-width:1400px;margin:0 auto;padding:clamp(20px,4vw,40px)}.bento-grid{grid-template-columns:repeat(4,1fr);grid-auto-rows:minmax(180px,auto);gap:24px;display:grid}.bento-item{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);transition:var(--transition);box-shadow:var(--shadow-soft);flex-direction:column;min-width:0;padding:24px;display:flex;position:relative;overflow:hidden}.bento-item:hover{border-color:var(--primary);transform:translateY(-6px);box-shadow:0 30px 60px -12px #0000001f}.card.hoverable:hover{box-shadow:var(--shadow-lg);border-color:#05966933;transform:translateY(-4px)}.bento-item.col-2{grid-column:span 2}.bento-item.col-3{grid-column:span 3}.bento-item.row-2{grid-row:span 2}.bento-item.featured{background:var(--card-featured-bg);color:var(--card-featured-text);border:none}.top-header{background:var(--bg-card);border-bottom:1px solid var(--border-color);z-index:90;justify-content:space-between;align-items:center;height:72px;padding:0 clamp(20px,4vw,48px);display:flex;position:sticky;top:0}@media (width<=1024px){.mobile-menu-btn{display:flex!important}}.search-bar{background:var(--bg-secondary);width:100%;max-width:400px;transition:var(--transition);border-radius:99px;align-items:center;gap:10px;padding:10px 18px;display:flex}.search-bar:focus-within{background:var(--bg-card);box-shadow:0 0 0 2px #05966933}.search-bar input{color:var(--text-main);background:0 0;border:none;outline:none;flex:1;font-size:14px}.header-actions{align-items:center;gap:24px;display:flex}.user-profile-btn{cursor:pointer;transition:var(--transition);background:#fff7ed;border:1px solid #0596691a;border-radius:99px;align-items:center;gap:10px;padding:6px 14px 6px 6px;display:flex}.user-profile-btn:hover{background:#ffedd5}.user-avatar{background:var(--gradient-primary);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:14px;font-weight:700;display:flex}.card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);transition:var(--transition);box-shadow:var(--shadow-sm);min-width:0;padding:clamp(16px,3vw,24px)}.card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.kpi-grid{grid-template-columns:repeat(3,1fr);gap:clamp(12px,2vw,20px);margin-bottom:clamp(24px,4vw,40px);display:grid}.kpi-card{background:var(--bg-card);border-radius:var(--radius-lg);border:1px solid var(--border-color);flex-direction:column;gap:8px;padding:clamp(16px,2vw,20px);display:flex}.kpi-icon-wrapper{border-radius:12px;justify-content:center;align-items:center;width:44px;height:44px;margin-bottom:4px;display:flex}.kpi-value{color:var(--text-main);font-size:28px;font-weight:800}.kpi-label{color:var(--text-secondary);font-size:13px;font-weight:500}.btn{border-radius:var(--radius);cursor:pointer;transition:var(--transition);border:none;align-items:center;gap:8px;padding:10px 20px;font-family:inherit;font-size:14px;font-weight:600;display:inline-flex}.btn-primary{background:var(--gradient-primary);color:#fff}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 4px 20px #05966966}.btn-secondary{background:var(--bg-secondary);color:var(--text-secondary);border:1px solid var(--border-color)}.btn-secondary:hover{background:var(--bg-accent);color:var(--primary);border-color:var(--primary-light)}.btn-success{background:var(--gradient-green);color:#166534;font-weight:700}.btn-danger{color:var(--accent-red);background:#f8717126;border:1px solid #f8717133}.btn-lg{border-radius:var(--radius-lg);padding:14px 28px;font-size:16px}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important}.progress-bar{background:#0596691a;border-radius:99px;width:100%;height:8px;overflow:hidden}.progress-fill.blue{background:var(--gradient-primary)}.progress-fill.green{background:var(--gradient-green)}.data-table{border-collapse:separate;border-spacing:0;width:100%}.data-table th{text-align:left;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);border-bottom:1px solid var(--border-color);padding:12px 16px;font-size:12px;font-weight:600}.data-table td{border-bottom:1px solid var(--border-color);white-space:nowrap;opacity:.9;padding:14px 16px;font-size:14px}.data-table tr:hover td{background:var(--bg-secondary)}.badge.green{color:var(--accent-green);background:#86efac26}.badge.blue{color:var(--accent-vermilion);background:#05966926}.badge.orange{color:var(--accent-orange);background:#f1720026}.badge.red{color:var(--accent-red);background:#ef444426}.badge.purple{color:var(--accent-orange);background:#f1720026}.form-group{margin-bottom:20px}.form-label{color:var(--text-secondary);margin-bottom:8px;font-size:14px;font-weight:500;display:block}.form-input{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius);width:100%;color:var(--text-primary);transition:var(--transition);outline:none;padding:12px 16px;font-family:inherit;font-size:14px}.form-input:focus{border-color:var(--accent-green);box-shadow:0 0 0 3px #22c55e1a}.form-input::placeholder{color:var(--text-muted)}.auth-page{background:var(--bg-primary);justify-content:center;align-items:center;min-height:100vh;display:flex;position:relative}.auth-page:before{content:"";filter:blur(60px);background:radial-gradient(circle,#0596691a,#0000 70%);border-radius:50%;width:500px;height:500px;position:absolute;top:10%;left:20%}.auth-page:after{content:"";filter:blur(60px);background:radial-gradient(circle,#10b9811a,#0000 70%);border-radius:50%;width:400px;height:400px;position:absolute;bottom:10%;right:20%}.auth-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);width:90%;max-width:440px;box-shadow:var(--shadow-soft);z-index:1;margin:0 auto;padding:clamp(24px,5vw,40px);position:relative}.auth-title{color:var(--text-main);margin-bottom:8px;font-size:clamp(24px,4vw,28px);font-weight:800}.auth-subtitle{color:var(--text-dim);margin-bottom:32px;font-size:14px}.tabs{border-bottom:1px solid var(--border-color);gap:8px;margin-bottom:32px;padding-bottom:4px;display:flex}.tab{color:var(--text-dim);cursor:pointer;transition:var(--transition);background:0 0;border:none;padding:10px 20px;font-size:14px;font-weight:600;position:relative}.tab:hover,.tab.active{color:var(--primary)}.tab.active:after{content:"";background:var(--primary);border-radius:2px;height:2px;position:absolute;bottom:-5px;left:0;right:0}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background:#0f172a66;justify-content:center;align-items:center;padding:20px;animation:.2s ease-out fadeIn;display:flex;position:fixed;inset:0}.modal-content{background:var(--bg-card);border-radius:var(--radius-lg);width:100%;max-width:540px;padding:32px;animation:.3s cubic-bezier(.16,1,.3,1) slideUp;box-shadow:0 25px 50px -12px #00000026}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.table-responsive{-webkit-overflow-scrolling:touch;border-radius:var(--radius-sm);width:100%;margin-top:16px;overflow-x:auto}.data-table{min-width:600px}.hero-section{border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);height:auto;min-height:380px;margin-bottom:clamp(24px,4vw,48px);position:relative;overflow:hidden}.hero-slide{background:var(--bg-card);justify-content:space-between;align-items:center;height:100%;padding:clamp(20px,5vw,60px);display:flex;position:absolute;inset:0}.hero-content{z-index:2;max-width:55%}.hero-tag{color:var(--accent-vermilion);text-transform:uppercase;letter-spacing:.05em;background:#0596691a;border-radius:99px;margin-bottom:16px;padding:6px 12px;font-size:12px;font-weight:700;display:inline-block}.hero-title{color:var(--text-main);margin-bottom:16px;font-size:clamp(28px,4vw,42px);font-weight:800;line-height:1.1}.hero-desc{color:var(--text-secondary);margin-bottom:32px;font-size:clamp(14px,2vw,18px);line-height:1.6}.hero-image{z-index:1;justify-content:center;align-items:center;width:45%;height:100%;display:flex;position:relative}.hero-image img{object-fit:contain;width:auto;max-height:90%}.hero-bg-accent{filter:blur(40px);background:linear-gradient(135deg,#0596690d 0%,#f973161a 100%);border-radius:50%;width:60%;height:120%;position:absolute;top:-10%;right:-10%}.section-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:clamp(16px,3vw,24px);display:flex}.section-title-large{color:#1e293b;font-size:clamp(20px,3vw,24px);font-weight:800}.numbered-grid{gap:24px;margin:0 -10px;padding:10px 0 30px;display:flex;overflow-x:auto}.numbered-grid::-webkit-scrollbar{display:none}.course-card-set{transition:var(--transition);flex-direction:column;flex:0 0 280px;padding-left:60px;display:flex;position:relative}.course-card-set:hover{transform:translateY(-5px)}.card-number{color:#0000;-webkit-text-stroke:2px #fbbf24;opacity:.8;z-index:0;font-family:Inter,sans-serif;font-size:120px;font-weight:900;line-height:1;position:absolute;top:20px;left:0}.course-card-inner{background:var(--bg-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);z-index:1;border:1px solid var(--border-color);flex-direction:column;height:100%;display:flex;position:relative;overflow:hidden}.course-card-image{background:var(--bg-secondary);height:160px;position:relative;overflow:hidden}.course-card-image img{object-fit:cover;width:100%;height:100%}.course-badge{color:var(--accent-vermilion);box-shadow:var(--shadow-sm);background:#ffffffe6;border-radius:6px;padding:4px 10px;font-size:11px;font-weight:700;position:absolute;top:12px;left:12px}.course-card-content{flex-direction:column;flex:1;padding:16px;display:flex}.course-card-title{color:var(--text-main);-webkit-line-clamp:2;-webkit-box-orient:vertical;height:44px;margin-bottom:8px;font-size:16px;font-weight:700;line-height:1.4;display:-webkit-box;overflow:hidden}.course-card-meta{color:var(--text-dim);align-items:center;gap:12px;margin-top:auto;font-size:12px;display:flex}.course-card-instructor{color:var(--text-secondary);margin-top:12px;font-size:13px;font-weight:500}.learning-path{flex-direction:column;gap:0;padding-left:40px;display:flex;position:relative}.path-line{background:var(--border-color);width:2px;position:absolute;top:0;bottom:0;left:55px}.path-node{align-items:flex-start;gap:20px;padding:16px 0;display:flex;position:relative}.path-dot{z-index:2;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:14px;font-weight:700;display:flex;position:relative}.path-dot.completed{color:#166534;background:#dcfce7;border:2px solid #86efac}.path-dot.active{background:var(--accent-vermilion);color:#fff;animation:2s infinite pulse;box-shadow:0 0 20px #0596694d}.path-dot.locked{background:var(--bg-secondary);color:var(--text-dim)}.path-card{cursor:pointer;border:1px solid var(--border-color);flex:1}@keyframes pulse{0%{opacity:.6;transform:scale(.9)}50%{opacity:1;transform:scale(1.15)}to{opacity:.6;transform:scale(.9)}}.quiz-container{max-width:720px;margin:0 auto}.quiz-option{background:var(--bg-card);border:2px solid var(--border-color);border-radius:var(--radius);cursor:pointer;transition:var(--transition);align-items:center;gap:12px;margin-bottom:12px;padding:16px 20px;display:flex}.quiz-option:hover{border-color:#05966933}.quiz-option.selected{border-color:var(--accent-vermilion);background:var(--primary-light)}.quiz-shell{width:min(100%,820px);margin:0 auto;padding:4px 0 32px}.quiz-exit-row{justify-content:flex-start;margin-bottom:16px;display:flex}.quiz-exit-row .btn{border-radius:10px;font-weight:700}.quiz-hero,.quiz-question-card,.quiz-result-card{background:var(--bg-card);border:1px solid var(--border-color);box-shadow:var(--shadow-soft);border-radius:18px}.quiz-hero{margin-bottom:18px;padding:24px;position:relative;overflow:hidden}.quiz-hero:before{content:"";pointer-events:none;background:radial-gradient(circle at 100% 0,#0596692e,#0000 34%),linear-gradient(135deg,#05966914,#0000 46%);position:absolute;inset:0}.quiz-assessment--post .quiz-hero:before{background:radial-gradient(circle at 100% 0,#0ea5e92e,#0000 34%),linear-gradient(135deg,#05966914,#0000 46%)}.quiz-hero-main,.quiz-hero-stats,.quiz-progress-track{z-index:1;position:relative}.quiz-hero-main{align-items:center;gap:16px;margin-bottom:20px;display:flex}.quiz-icon-badge{background:var(--areca);color:#fff;border-radius:16px;flex-shrink:0;place-items:center;width:54px;height:54px;display:grid;box-shadow:0 14px 26px #05966940}.quiz-eyebrow{color:var(--areca);letter-spacing:.08em;text-transform:uppercase;margin-bottom:3px;font-size:12px;font-weight:800;display:block}.quiz-hero h1,.quiz-result-card h2{color:var(--text-main);margin:0;font-size:28px;line-height:1.15}.quiz-hero p{max-width:560px;color:var(--text-dim);margin:8px 0 0;font-size:14px;line-height:1.55}.quiz-hero-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:16px;display:grid}.quiz-hero-stats div{background:#ffffffa3;border:1px solid #05966929;border-radius:12px;padding:12px 14px}:root.dark .quiz-hero-stats div{background:#0f172a6b}.quiz-hero-stats span,.quiz-score-label{color:var(--text-mute);margin-bottom:4px;font-size:12px;font-weight:700;display:block}.quiz-hero-stats strong{color:var(--text-main);font-size:18px}.quiz-progress-track{background:var(--bg-accent);border-radius:999px;height:10px;overflow:hidden}.quiz-progress-track span{border-radius:inherit;background:var(--gradient-primary);height:100%;transition:width .25s;display:block}.quiz-question-card{margin-bottom:16px;padding:28px}.quiz-question-meta{flex-wrap:wrap;gap:8px;margin-bottom:16px;display:flex}.quiz-question-meta span{background:var(--areca-dim);min-height:28px;color:var(--interactive-accent);border-radius:999px;align-items:center;padding:5px 10px;font-size:12px;font-weight:800;display:inline-flex}.quiz-question-card h2{color:var(--text-main);margin:0 0 22px;font-size:20px;font-weight:800;line-height:1.55}.quiz-options{flex-direction:column;gap:12px;display:flex}.quiz-answer-option{border:1.5px solid var(--border-color);background:var(--bg-secondary);width:100%;color:var(--text-main);text-align:left;cursor:pointer;border-radius:12px;align-items:center;gap:14px;padding:16px;transition:transform .2s,border-color .2s,background .2s,box-shadow .2s;display:flex}.quiz-answer-option:hover{border-color:#0596696b;transform:translateY(-1px);box-shadow:0 10px 22px #0f172a14}.quiz-answer-option.is-selected{border-color:var(--areca);background:#0596691f;box-shadow:0 12px 24px #05966924}.quiz-answer-letter{background:var(--bg-card);width:32px;height:32px;color:var(--text-mute);border-radius:50%;flex-shrink:0;place-items:center;font-size:13px;font-weight:800;display:grid}.quiz-answer-option.is-selected .quiz-answer-letter{background:var(--areca);color:#fff}.quiz-answer-option>span:last-child{font-size:15px;font-weight:650;line-height:1.45}.quiz-true-false{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.quiz-answer-option--boolean{justify-content:center;min-height:78px;font-size:17px;font-weight:800}.quiz-action-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.quiz-action-row .btn{border-radius:12px;min-width:150px;font-weight:800}.quiz-result-card{text-align:center;padding:40px}.quiz-result-card.is-success{border-top:4px solid var(--success)}.quiz-result-card.is-retry{border-top:4px solid var(--danger)}.quiz-result-icon{width:84px;height:84px;color:var(--success);background:var(--success-light);border-radius:24px;place-items:center;margin:0 auto 18px;display:grid}.quiz-result-card.is-retry .quiz-result-icon{color:var(--danger);background:var(--danger-light)}.quiz-result-copy{max-width:520px;color:var(--text-dim);margin:10px auto 24px;font-size:14px;line-height:1.6}.quiz-score-panel{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-width:420px;margin:0 auto 28px;display:grid}.quiz-score-panel div{border:1px solid var(--border-color);background:var(--bg-secondary);border-radius:14px;padding:16px}.quiz-score-panel strong{color:var(--text-main);font-size:30px;line-height:1;display:block}@media (width<=640px){.quiz-shell{padding-bottom:20px}.quiz-hero,.quiz-question-card,.quiz-result-card{border-radius:14px;padding:18px}.quiz-hero-main{align-items:flex-start}.quiz-icon-badge{border-radius:13px;width:46px;height:46px}.quiz-hero h1,.quiz-result-card h2{font-size:23px}.quiz-question-card h2{font-size:18px}.quiz-hero-stats,.quiz-score-panel,.quiz-true-false{grid-template-columns:1fr}.quiz-action-row{flex-direction:column-reverse}.quiz-action-row .btn{width:100%}}.quiz-review-section{max-width:680px;margin:24px auto 0}.quiz-review-title{color:var(--text-dim);text-transform:uppercase;letter-spacing:.06em;margin-bottom:14px;padding:0 4px;font-size:16px;font-weight:700}.quiz-review-list{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.quiz-review-item{background:var(--bg-secondary);border:1px solid var(--border-color);border-left:4px solid var(--border-color);border-radius:14px;padding:16px 18px}.quiz-review-item.is-correct{border-left-color:var(--success)}.quiz-review-item.is-wrong{border-left-color:var(--danger)}.quiz-review-item-header{align-items:flex-start;gap:10px;margin-bottom:12px;display:flex}.quiz-review-badge{white-space:nowrap;border-radius:99px;flex-shrink:0;align-items:center;gap:4px;margin-top:2px;padding:3px 8px;font-size:11px;font-weight:700;display:inline-flex}.quiz-review-badge.is-correct{background:var(--success-light);color:var(--success)}.quiz-review-badge.is-wrong{background:var(--danger-light);color:var(--danger)}.quiz-review-question{color:var(--text-main);margin:0;font-size:14px;font-weight:600;line-height:1.5}.quiz-review-answers{flex-direction:column;gap:6px;display:flex}.quiz-review-answer{border-radius:8px;align-items:baseline;gap:8px;padding:6px 10px;font-size:13px;display:flex}.quiz-review-answer.your-answer-correct{color:var(--success);background:#10b98114}.quiz-review-answer.your-answer-wrong{color:var(--danger);background:#ef444414}.quiz-review-answer.correct-answer{color:var(--success);background:#10b9810f}.quiz-review-answer-label{text-transform:uppercase;letter-spacing:.05em;opacity:.75;white-space:nowrap;font-size:11px;font-weight:700}.quiz-review-explanation{color:var(--text-dim);background:var(--bg-primary);border-left:3px solid var(--accent);border-radius:8px;margin:10px 0 0;padding:8px 12px;font-size:13px;line-height:1.55}.btn-set{background:var(--gradient-set);color:#fff;cursor:pointer;transition:var(--transition);border:none;border-radius:99px;align-items:center;gap:8px;padding:12px 24px;font-family:inherit;font-weight:700;display:inline-flex;box-shadow:0 4px 15px #f973164d}.btn-set:hover{transform:translateY(-2px);box-shadow:0 6px 20px #f9731666}.badge-set{border-radius:99px;padding:4px 12px;font-size:12px;font-weight:700}.badge-set.orange{color:#10b981;background:#fff7ed}.badge-set.blue{color:#3b82f6;background:#eff6ff}.certificate-preview{background:var(--bg-card);color:var(--text-main);border:12px double var(--primary);text-align:center;background-image:radial-gradient(circle,#05966905 0%,#0000 70%);border-radius:4px;width:100%;max-width:800px;margin:0 auto;padding:clamp(40px,5vw,80px) clamp(20px,5vw,60px);position:relative;overflow:hidden;box-shadow:0 30px 60px #0000001f}.certificate-preview:before{content:"";pointer-events:none;border:1px solid #0596694d;position:absolute;inset:12px}.cert-header{margin-bottom:clamp(24px,4vw,40px)}.cert-university-en{color:#1a1a1a;letter-spacing:.05em;text-transform:uppercase;margin-bottom:4px;font-size:clamp(16px,2vw,20px);font-weight:700}.cert-university-th{color:#444;margin-bottom:clamp(20px,4vw,32px);font-size:clamp(14px,2vw,18px);font-weight:600}.cert-title-main{color:#059669;margin-bottom:8px;font-size:clamp(24px,4vw,32px);font-weight:800}.cert-name{color:#000;word-break:break-word;border-bottom:2px solid #059669;min-width:min(100%,300px);margin:24px 0;padding-bottom:8px;font-size:clamp(24px,4vw,36px);font-weight:700;display:inline-block}.cert-course{color:#1a1a1a;margin:16px 0 clamp(32px,5vw,48px);font-size:clamp(18px,3vw,22px);font-weight:700}.cert-footer{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:20px;margin-top:clamp(40px,6vw,60px);display:flex}.cert-signature-box{text-align:center;width:min(100%,220px);margin:0 auto}.cert-signature-line{color:#444;border-top:1px solid #999;padding-top:8px;font-size:14px}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-8{gap:8px}.gap-12{gap:12px}.gap-16{gap:16px}.gap-20{gap:20px}.gap-24{gap:24px}.mt-16{margin-top:16px}.mt-24{margin-top:24px}.mb-16{margin-bottom:16px}.mb-24{margin-bottom:24px}.text-center{text-align:center}.grid-2{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:clamp(16px,3vw,24px);display:grid}.grid-3{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:clamp(16px,3vw,24px);display:grid}.w-full{width:100%}@media (width<=1440px){.page-container{max-width:1200px}}@media (width<=1280px){.bento-grid{grid-template-columns:repeat(3,1fr)}.bento-item.col-3{grid-column:span 3}}@media (width<=1024px){.hero-slide{text-align:center;flex-direction:column;justify-content:center;padding:clamp(20px,5vw,40px);position:relative}.hero-content{z-index:2;max-width:100%;margin-bottom:32px}.hero-image{z-index:1;width:80%;height:auto;min-height:200px}.bento-grid{grid-template-columns:repeat(2,1fr)}.bento-item.col-3{grid-column:span 2}}@media (width<=860px){.sidebar{z-index:2001;overscroll-behavior:contain;min-height:100dvh;overflow-y:auto;transform:translate(-100%);box-shadow:20px 0 60px #0000002e}.sidebar.open{transform:translate(0)}.sidebar-mobile-toggle{display:none!important}.main-content{margin-left:0}.page-container{padding:16px}.top-header{gap:12px;padding:0 16px}.search-bar{flex:1;width:auto;max-width:none;padding:8px 12px}.search-bar input{width:100%;min-width:50px}.header-actions{gap:12px}.user-profile-btn span{display:none}.user-profile-btn{background:0 0;border:none;padding:4px}}@media (width<=640px){.kpi-grid{grid-template-columns:repeat(2,1fr)}.bento-grid{grid-template-columns:1fr}.bento-item.col-2,.bento-item.col-3{grid-column:span 1}.vocab-grid{grid-template-columns:repeat(2,1fr)}.cert-footer{flex-direction:column;align-items:center}}@media (width<=400px){.top-header{padding:0 12px}.page-container{padding:12px}.header-breadcrumb{font-size:15px}}.desktop-only{display:flex}@media (width<=860px){.desktop-only{display:none}}.mobile-only{display:none}@media (width<=860px){.mobile-only{display:flex}}.menu-toggle-btn{background:var(--bg-secondary);border:1px solid var(--border-color);width:44px;height:44px;color:var(--text-secondary);cursor:pointer;transition:var(--transition);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.menu-toggle-btn:hover{color:var(--primary);background:#e2e8f0}.sidebar-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:2000;background:#0f172a66;animation:.3s fadeIn;position:fixed;inset:0}.app-layout.sidebar-open{overflow:hidden}.header-breadcrumb{color:var(--text-main);letter-spacing:-.01em;white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;font-size:17px;font-weight:700;overflow:hidden}.page-header{margin-bottom:32px}.page-header h1{color:var(--text-main);margin-bottom:4px;font-size:28px;font-weight:800}.page-header p{color:var(--text-dim);font-size:14px}.section-title{color:var(--text-main);align-items:center;gap:8px;margin-bottom:16px;font-size:18px;font-weight:800;display:flex}.sidebar-footer{border-top:1px solid var(--border-color);padding:16px}.cert-logo{object-fit:contain;width:80px;height:80px;margin:0 auto 16px;display:block}.cert-subtitle{color:#666;letter-spacing:.15em;text-transform:uppercase;margin-bottom:40px;font-size:18px;font-weight:600}.cert-body-text{color:#555;margin-bottom:8px;font-size:16px;line-height:1.6}.cert-serial{color:#999;letter-spacing:.05em;margin-top:48px;font-size:12px}.quiz-option-letter{background:var(--bg-secondary);width:32px;height:32px;color:var(--text-dim);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:13px;font-weight:700;display:flex}.quiz-option.correct{border-color:var(--accent-green);background:#10b98114}.quiz-option.correct .quiz-option-letter{background:var(--accent-green);color:#fff}.quiz-option.incorrect{border-color:var(--accent-red);background:#ef444414}.quiz-option.incorrect .quiz-option-letter{background:var(--accent-red);color:#fff}.kpi-card.blue{border-left:3px solid var(--primary)}.kpi-card.green{border-left:3px solid var(--accent-green)}.kpi-card.orange{border-left:3px solid var(--accent-orange)}.kpi-card.purple{border-left:3px solid #8b5cf6}.kpi-icon{border-radius:12px;justify-content:center;align-items:center;width:44px;height:44px;margin-bottom:4px;display:flex}.kpi-icon.blue{color:var(--primary);background:#0596691a}.kpi-icon.green{color:var(--accent-green);background:#10b9811a}.kpi-icon.orange{color:var(--accent-orange);background:#f973161a}.kpi-icon.purple{color:#8b5cf6;background:#8b5cf61a}.text-primary{color:var(--primary)}.text-secondary{color:var(--secondary)}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.flex-wrap{flex-wrap:wrap}.mt-32{margin-top:32px}.card.locked{opacity:.6}@keyframes spin{to{transform:rotate(360deg)}}.spin{animation:.8s linear infinite spin}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#05966933;border-radius:99px}::-webkit-scrollbar-thumb:hover{background:#05966966}html{scroll-behavior:smooth}.glass{background:var(--glass);-webkit-backdrop-filter:blur(20px)saturate(1.4);border:1px solid var(--glass-border);box-shadow:0 8px 32px #0000000f}.glass-dark{-webkit-backdrop-filter:blur(20px)saturate(1.4);background:#0f172ab3;border:1px solid #ffffff14}.particle-bg{position:relative;overflow:hidden}.particle-bg:before{content:"";pointer-events:none;z-index:0;background-image:radial-gradient(1px 1px at 10% 20%,#0596694d 0%,#0000 100%),radial-gradient(1px 1px at 30% 60%,#05966933 0%,#0000 100%),radial-gradient(1px 1px at 50% 10%,#10b9814d 0%,#0000 100%),radial-gradient(1px 1px at 70% 80%,#10b98133 0%,#0000 100%),radial-gradient(1px 1px at 90% 30%,#f9731640 0%,#0000 100%);position:absolute;inset:0}@keyframes gradientShift{0%{background-position:0%}50%{background-position:100%}to{background-position:0%}}.gradient-animate{background:linear-gradient(135deg,#059669,#10b981,#34d399,#6ee7b7) 0 0/300% 300%;animation:6s infinite gradientShift}.gradient-animate-green{background:linear-gradient(135deg,#10b981,#34d399,#6ee7b7) 0 0/200% 200%;animation:4s infinite gradientShift}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.float-anim{animation:3s ease-in-out infinite float}@keyframes float-delayed{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.float-anim-2{animation:3.5s ease-in-out .5s infinite float-delayed}@keyframes glowPulse{0%,to{box-shadow:0 0 8px #0596694d}50%{box-shadow:0 0 25px #05966980,0 0 50px #05966926}}.glow-pulse{animation:2s ease-in-out infinite glowPulse}@keyframes glowPulseGreen{0%,to{box-shadow:0 0 8px #10b9814d}50%{box-shadow:0 0 25px #10b98180,0 0 50px #10b98126}}.glow-pulse-green{animation:2s ease-in-out infinite glowPulseGreen}@keyframes confettiFall{0%{opacity:1;transform:translateY(-10vh)rotate(0)}to{opacity:0;transform:translateY(110vh)rotate(720deg)}}.confetti-piece{z-index:10000;pointer-events:none;width:10px;height:10px;animation:2.5s ease-in forwards confettiFall;position:fixed}@keyframes ripple{0%{opacity:.6;transform:scale(0)}to{opacity:0;transform:scale(4)}}.ripple-btn{position:relative;overflow:hidden}.ripple-btn:after{content:"";opacity:0;background:#ffffff4d;border-radius:50%;position:absolute;inset:0;transform:scale(0)}.ripple-btn:active:after{animation:.6s ease-out ripple}.neon-border{position:relative}.neon-border:before{content:"";border-radius:inherit;z-index:-1;opacity:.6;background:conic-gradient(#059669,#10b981,#10b981,#3b82f6,#8b5cf6,#059669);animation:4s linear infinite spin-conic;position:absolute;inset:-2px}@keyframes spin-conic{to{transform:rotate(360deg)}}.hover-scale{transition:transform .2s cubic-bezier(.34,1.56,.64,1)}.hover-scale:hover{transform:scale(1.05)}.hover-scale-lg{transition:transform .3s cubic-bezier(.34,1.56,.64,1)}.hover-scale-lg:hover{transform:scale(1.08)}@keyframes wiggle{0%,to{transform:rotate(0)}25%{transform:rotate(-3deg)}75%{transform:rotate(3deg)}}.wiggle{animation:.3s ease-in-out wiggle}@keyframes slideInLeft{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}.slide-in-left{animation:.4s ease-out both slideInLeft}.slide-in-right{animation:.4s ease-out both slideInRight}@keyframes scaleIn{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.scale-in{animation:.3s cubic-bezier(.34,1.56,.64,1) both scaleIn}@keyframes bubblePop{0%{opacity:0;transform:scale(0)}50%{opacity:.8;transform:scale(1.15)}to{opacity:1;transform:scale(1)}}.bubble-pop{animation:.4s cubic-bezier(.34,1.56,.64,1) both bubblePop}.btn{overflow:hidden}.btn:before{content:"";background:#fff3;border-radius:50%;width:0;height:0;transition:width .6s,height .6s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.btn:active:before{width:300px;height:300px}.form-input:focus,input:focus,textarea:focus,select:focus{outline:none;border-color:var(--primary)!important;box-shadow:0 0 0 3px #0596691f,0 0 20px #0596690d!important}.tooltip{position:relative}.tooltip:after{content:attr(data-tip);color:#fff;white-space:nowrap;opacity:0;pointer-events:none;background:#1e293b;border-radius:6px;padding:4px 10px;font-size:11px;font-weight:600;transition:all .2s cubic-bezier(.34,1.56,.64,1);position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%)scale(.8)}.tooltip:hover:after{opacity:1;transform:translate(-50%)scale(1)}.progress-fill.animated{background:linear-gradient(90deg,#059669,#10b981,#34d399,#6ee7b7) 0 0/200% 100%;animation:2s linear infinite progressShimmer}@keyframes progressShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.card.hoverable{transition:transform .3s cubic-bezier(.34,1.56,.64,1),box-shadow .3s}.card.hoverable:hover{transform:translateY(-6px);box-shadow:0 20px 40px #0000001a,0 4px 12px #0000000d}.img-zoom{overflow:hidden}.img-zoom img{transition:transform .5s cubic-bezier(.34,1.56,.64,1)}.img-zoom:hover img{transform:scale(1.08)}.rainbow-divider{background:linear-gradient(90deg,#059669,#10b981,#10b981,#3b82f6,#8b5cf6,#059669) 0 0/200% 100%;border:none;height:3px;margin:0;animation:3s linear infinite progressShimmer}.status-dot{border-radius:50%;width:8px;height:8px;margin-right:6px;display:inline-block}.status-dot.online{background:#10b981;box-shadow:0 0 6px #10b98180}.status-dot.offline{background:#94a3b8}.link-anim{color:var(--primary);text-decoration:none;position:relative}.link-anim:after{content:"";background:var(--primary);width:0;height:2px;transition:width .3s cubic-bezier(.34,1.56,.64,1);position:absolute;bottom:-1px;left:0}.link-anim:hover:after{width:100%}.toggle-switch{background:var(--bg-secondary);cursor:pointer;border-radius:99px;flex-shrink:0;width:44px;height:24px;transition:background .2s;position:relative}.toggle-switch.active{background:var(--primary)}.toggle-switch:after{content:"";background:#fff;border-radius:50%;width:20px;height:20px;transition:transform .2s cubic-bezier(.34,1.56,.64,1);position:absolute;top:2px;left:2px;box-shadow:0 1px 3px #00000026}.toggle-switch.active:after{transform:translate(20px)}.gradient-text{background:linear-gradient(135deg,#059669,#10b981);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.gradient-text-green{background:linear-gradient(135deg,#10b981,#34d399);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.hover-glow{transition:all .3s}.hover-glow:hover{box-shadow:0 0 30px #05966933,0 0 60px #05966914}.bento-item{transition:transform .3s cubic-bezier(.34,1.56,.64,1),box-shadow .3s}.bento-item:hover{transform:translateY(-6px)scale(1.01);box-shadow:0 24px 48px -12px #00000026}.path-dot.active{animation:2s ease-in-out infinite glowPulse}.auth-page:before{animation:8s ease-in-out infinite float}.auth-page:after{animation:8s ease-in-out 3s infinite float}@keyframes successCheck{0%{opacity:0;transform:scale(0)rotate(-45deg)}50%{transform:scale(1.2)rotate(0)}to{opacity:1;transform:scale(1)rotate(0)}}.check-anim{animation:.5s cubic-bezier(.34,1.56,.64,1) both successCheck}@keyframes errorX{0%{opacity:0;transform:scale(0)rotate(45deg)}50%{transform:scale(1.2)rotate(0)}to{opacity:1;transform:scale(1)rotate(0)}}.error-anim{animation:.5s cubic-bezier(.34,1.56,.64,1) both errorX}@keyframes unlockAchievement{0%{opacity:0;transform:scale(0)rotate(-15deg)}40%{opacity:1;transform:scale(1.2)rotate(3deg)}60%{transform:scale(.9)rotate(-2deg)}80%{transform:scale(1.05)rotate(1deg)}to{transform:scale(1)rotate(0)}}.achievement-unlock{animation:.6s cubic-bezier(.34,1.56,.64,1) both unlockAchievement}.achievements-page{--achievement-accent:var(--interactive-accent);--achievement-accent-2:#0ea5e9;--achievement-accent-3:#6366f1;--achievement-panel:color-mix(in srgb, var(--bg-card) 88%, var(--bg-secondary) 12%);--achievement-panel-strong:color-mix(in srgb, var(--bg-card) 78%, var(--bg-secondary) 22%);--achievement-line:color-mix(in srgb, var(--border-color) 76%, var(--achievement-accent) 24%);--achievement-glow:color-mix(in srgb, var(--achievement-accent) 18%, transparent);width:min(100%,1180px);margin:0 auto;padding-bottom:64px}.achievements-hero,.achievement-section,.achievement-radar-card,.achievement-callout{border:1px solid var(--achievement-line);border-color:var(--achievement-line);background:var(--achievement-panel);box-shadow:0 18px 44px color-mix(in srgb, var(--shadow-color,#0f172a1f) 64%, transparent)}.achievements-hero{background:radial-gradient(circle at 84% 14%, color-mix(in srgb, var(--achievement-accent-2) 18%, transparent), transparent 34%), linear-gradient(135deg, color-mix(in srgb, var(--bg-card) 78%, var(--achievement-accent) 10%), color-mix(in srgb, var(--bg-card) 90%, var(--achievement-accent-3) 10%));border-radius:24px;grid-template-columns:minmax(0,1fr) minmax(300px,380px);align-items:center;gap:clamp(20px,4vw,34px);margin-bottom:18px;padding:clamp(24px,5vw,42px);display:grid;position:relative;overflow:hidden}.achievements-hero:before{content:"";background:linear-gradient(color-mix(in srgb, var(--achievement-accent) 10%, transparent) 1px, transparent 1px), linear-gradient(90deg, color-mix(in srgb, var(--achievement-accent-2) 9%, transparent) 1px, transparent 1px);opacity:.5;pointer-events:none;background-size:32px 32px;animation:18s linear infinite achievementGridShift;position:absolute;inset:0;-webkit-mask-image:linear-gradient(90deg,#0000006b,#0000 72%);mask-image:linear-gradient(90deg,#0000006b,#0000 72%)}.achievements-hero:after{content:"";opacity:.18;pointer-events:none;background:linear-gradient(110deg,#0000 0%,#ffffff29 46%,#0000 58%);animation:7s ease-in-out infinite achievementHeroSweep;position:absolute;inset:0;transform:translate(-120%)}.achievements-ambient{pointer-events:none;position:absolute;inset:0;overflow:hidden}.achievements-ambient span{border:1px solid color-mix(in srgb, var(--achievement-accent) 18%, transparent);opacity:.5;border-radius:50%;width:180px;height:180px;animation:9s ease-in-out infinite achievementFloat;position:absolute}.achievements-ambient span:first-child{top:-70px;right:16%}.achievements-ambient span:nth-child(2){border-color:color-mix(in srgb, var(--achievement-accent-2) 18%, transparent);width:240px;height:240px;animation-delay:-2.5s;bottom:-60px;right:-80px}.achievements-ambient span:nth-child(3){border-color:color-mix(in srgb, var(--achievement-accent-3) 20%, transparent);width:90px;height:90px;animation-delay:-5s;bottom:22px;left:42%}.achievements-hero__copy{z-index:1;min-width:0;animation:.7s both achievementReveal;position:relative}.achievements-eyebrow{border-color:color-mix(in srgb, var(--achievement-accent) 32%, var(--border-color) 68%);border:1px solid color-mix(in srgb, var(--achievement-accent) 32%, var(--border-color) 68%);background:color-mix(in srgb, var(--achievement-accent) 10%, var(--bg-card) 90%);color:var(--achievement-accent);letter-spacing:.1em;text-transform:uppercase;border-radius:999px;align-items:center;margin-bottom:8px;padding:6px 10px;font-size:11px;font-weight:800;display:inline-flex}.achievements-hero h1,.achievement-section h2,.achievement-callout h2{color:var(--text-main);letter-spacing:-.02em;margin:0;font-weight:900}.achievements-hero h1{max-width:720px;font-size:clamp(34px,5vw,58px);line-height:.98}.achievements-hero p,.achievement-section__header p,.achievement-callout p{color:var(--text-secondary);max-width:680px;margin-top:12px;font-size:15px;line-height:1.65}.achievements-warning{border:1px solid var(--border-warning);background:var(--bg-warning-subtle);color:var(--warning);border-radius:10px;align-items:center;gap:8px;margin-top:18px;padding:9px 12px;font-size:12.5px;font-weight:700;display:inline-flex}.achievements-command-panel{z-index:1;border:1px solid color-mix(in srgb, var(--achievement-accent) 36%, var(--border-color) 64%);background:linear-gradient(145deg, color-mix(in srgb, var(--bg-card) 70%, var(--achievement-accent) 14%), color-mix(in srgb, var(--bg-card) 88%, var(--achievement-accent-2) 8%));border-radius:22px;grid-template-columns:150px minmax(0,1fr);align-items:center;gap:18px;min-height:210px;padding:18px;animation:.75s 80ms both achievementReveal;display:grid;position:relative;box-shadow:inset 0 1px #ffffff3d}.achievements-command-panel:before{content:"";border-radius:inherit;opacity:.45;pointer-events:none;background:linear-gradient(135deg,#ffffff2e,#0000 42%);position:absolute;inset:0}.achievements-orbit{aspect-ratio:1;background:conic-gradient(from -90deg, var(--achievement-accent) var(--pct), color-mix(in srgb, var(--border-color) 72%, transparent) 0deg), radial-gradient(circle, color-mix(in srgb, var(--achievement-accent-2) 10%, var(--bg-card) 90%), var(--bg-card));width:150px;box-shadow:0 0 34px var(--achievement-glow);border-radius:50%;place-items:center;animation:3.6s ease-in-out infinite achievementOrbitPulse;display:grid;position:relative}.achievements-orbit:before,.achievements-orbit:after{content:"";border:1px solid color-mix(in srgb, var(--achievement-accent) 24%, transparent);border-radius:50%;animation:4.4s ease-in-out infinite achievementOrbitRing;position:absolute;inset:-8px}.achievements-orbit:after{border-color:color-mix(in srgb, var(--achievement-accent-2) 18%, transparent);animation-delay:-1.7s;inset:-15px}.achievements-orbit>div{aspect-ratio:1;border:1px solid var(--achievement-line);background:var(--bg-card);border-radius:50%;place-items:center;width:112px;display:grid}.achievements-orbit strong{color:var(--text-main);font-size:34px;font-weight:900;line-height:1}.achievements-orbit span,.achievements-command-panel__detail span{color:var(--text-secondary);letter-spacing:.09em;text-transform:uppercase;font-size:11px;font-weight:900}.achievements-command-panel__detail{z-index:1;min-width:0;position:relative}.achievements-command-panel__detail strong{color:var(--text-main);margin-top:8px;font-size:28px;font-weight:900;display:block}.achievements-command-panel__detail p{color:var(--text-secondary);margin:8px 0 0;font-size:13px;line-height:1.5}.achievements-signal{border:1px solid color-mix(in srgb, var(--achievement-accent) 30%, var(--border-color) 70%);background:color-mix(in srgb, var(--achievement-accent) 8%, var(--bg-card) 92%);border-radius:999px;align-items:center;gap:8px;margin-top:16px;padding:7px 10px;display:inline-flex}.achievements-signal i{background:var(--achievement-accent);width:8px;height:8px;box-shadow:0 0 0 0 color-mix(in srgb, var(--achievement-accent) 36%, transparent);border-radius:50%;animation:1.8s ease-out infinite achievementSignal}.achievement-kpis{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px;display:grid}.achievement-kpi{border:1px solid var(--achievement-line);border-color:var(--achievement-line);background:linear-gradient(180deg, var(--achievement-panel-strong), var(--bg-card));min-width:0;animation:achievementReveal .58s var(--delay,0s) ease both;border-radius:18px;padding:18px;transition:border-color .18s,transform .18s,box-shadow .18s}.achievement-kpi:hover{border-color:color-mix(in srgb, var(--achievement-accent) 42%, var(--border-color) 58%);box-shadow:0 18px 34px color-mix(in srgb, var(--achievement-accent) 13%, transparent);transform:translateY(-3px)}.achievement-kpi svg{color:var(--achievement-accent)}.achievement-kpi span{color:var(--text-secondary);letter-spacing:.04em;text-transform:uppercase;margin-top:10px;font-size:12px;font-weight:800;display:block}.achievement-kpi strong{color:var(--text-main);text-overflow:ellipsis;white-space:nowrap;margin-top:4px;font-size:22px;font-weight:900;display:block;overflow:hidden}.achievement-certificate-spotlight{border:1px solid color-mix(in srgb, #b99a52 48%, var(--border-color) 52%);background:radial-gradient(circle at 18% 8%, #b99a5238, transparent 32%), linear-gradient(135deg, color-mix(in srgb, var(--bg-card) 72%, #fff4cc 28%), color-mix(in srgb, var(--bg-card) 86%, var(--achievement-accent) 14%));border-radius:24px;grid-template-columns:minmax(280px,.82fr) minmax(0,1fr);align-items:center;gap:clamp(18px,4vw,34px);margin-bottom:18px;padding:clamp(20px,4vw,32px);display:grid;position:relative;overflow:hidden;box-shadow:0 24px 58px #b99a5233}.achievement-certificate-spotlight:before{content:"";opacity:.58;pointer-events:none;background:linear-gradient(120deg,#0000,#ffffff3d,#0000),repeating-linear-gradient(90deg,#b99a5214 0 1px,#0000 1px 24px);position:absolute;inset:0}.achievement-certificate-spotlight.is-ready{border-color:color-mix(in srgb, var(--achievement-accent) 46%, #b99a52 54%);box-shadow:0 26px 64px color-mix(in srgb, var(--achievement-accent) 20%, transparent)}.achievement-certificate-spotlight.is-locked{border-color:var(--border-color);background:radial-gradient(circle at 18% 8%, color-mix(in srgb, var(--text-mute) 10%, transparent), transparent 32%), linear-gradient(135deg, var(--achievement-panel), var(--bg-card));box-shadow:0 18px 42px color-mix(in srgb, var(--text-mute) 8%, transparent)}.achievement-certificate-preview,.achievement-certificate-copy{z-index:1;position:relative}.achievement-certificate-preview{place-items:center;display:grid}.achievement-certificate-preview__paper{color:#172033;text-align:center;background:linear-gradient(135deg,#b99a521f,#0000 22% 78%,#b99a521a),#fffdf8;border:1px solid #b99a52b8;border-radius:8px;place-items:center;width:min(100%,420px);min-height:240px;padding:28px;display:grid;position:relative;overflow:hidden;transform:rotate(-1.2deg);box-shadow:0 24px 48px #0f172a29}.achievement-certificate-preview__paper:before{content:"";pointer-events:none;border:1px solid #b99a5261;position:absolute;inset:14px}.achievement-certificate-preview__paper span{color:#6b7280;letter-spacing:.2em;text-transform:uppercase;font-size:10px;font-weight:800}.achievement-certificate-preview__paper strong{color:#18202a;letter-spacing:.04em;text-transform:uppercase;margin-top:18px;font-family:Baskerville,Libre Baskerville,Garamond,Georgia,Times New Roman,serif;font-size:clamp(42px,5vw,62px);font-weight:400;line-height:1}.achievement-certificate-preview__paper em{color:#7b8794;letter-spacing:.12em;text-transform:uppercase;margin-top:12px;font-size:11px;font-style:normal;font-weight:800}.achievement-certificate-preview__paper i{background:linear-gradient(90deg,#0000,#b99a52,#0000);width:130px;height:1px;margin-top:18px}.achievement-certificate-preview__seal{color:#9f7f2d;background:#b99a521f;border:1px solid #b99a528a;border-radius:50%;place-items:center;width:76px;height:76px;margin-bottom:12px;display:grid}.achievement-certificate-copy h2{color:var(--text-main);letter-spacing:-.03em;margin:0;font-size:clamp(25px,3.4vw,40px);font-weight:900;line-height:1.05}.achievement-certificate-copy p{max-width:620px;color:var(--text-secondary);margin:12px 0 0;font-size:15px;line-height:1.65}.achievement-certificate-actions{flex-wrap:wrap;gap:10px;margin-top:20px;display:flex}.achievement-mission-grid{grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:18px;margin-bottom:18px;display:grid}.achievement-section{border-radius:22px;margin-bottom:18px;padding:clamp(18px,3vw,26px)}.achievement-section__header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;display:flex}.achievement-primary-track{margin-bottom:0}.achievement-section h2,.achievement-callout h2{font-size:21px}.achievement-link,.achievement-level{border:1px solid color-mix(in srgb, var(--achievement-accent) 32%, var(--border-color) 68%);background:color-mix(in srgb, var(--achievement-accent) 9%, var(--bg-card) 91%);color:var(--achievement-accent);border-radius:999px;flex-shrink:0;padding:8px 12px;font-size:13px;font-weight:800;text-decoration:none}.achievement-link:hover{border-color:color-mix(in srgb, var(--achievement-accent) 52%, var(--border-color) 48%)}.achievement-year-timeline{gap:14px;display:grid;position:relative}.achievement-year-timeline:before{content:"";background:linear-gradient(var(--achievement-accent), color-mix(in srgb, var(--achievement-accent-2) 56%, transparent));transform-origin:top;border-radius:999px;width:2px;animation:.9s .25s both achievementTimelineGrow;position:absolute;top:20px;bottom:20px;left:17px}.achievement-year-card{min-width:0;animation:achievementReveal .58s var(--delay,0s) ease both;background:0 0;border:0;grid-template-columns:36px minmax(0,1fr);gap:14px;padding:0;display:grid;position:relative}.achievement-year-card__top,.achievement-year-card__meta{justify-content:space-between;align-items:center;gap:10px;display:flex}.achievement-year-marker{z-index:1;border:1px solid color-mix(in srgb, var(--achievement-accent) 44%, var(--border-color) 56%);background:var(--bg-card);width:36px;height:36px;color:var(--achievement-accent);box-shadow:0 0 0 5px var(--achievement-panel);border-radius:12px;place-items:center;font-size:13px;font-weight:900;transition:transform .18s,border-color .18s,box-shadow .18s;display:grid;position:relative}.achievement-year-card:hover .achievement-year-marker{border-color:var(--achievement-accent);box-shadow:0 0 0 5px var(--achievement-panel), 0 0 26px color-mix(in srgb, var(--achievement-accent) 22%, transparent);transform:scale(1.05)}.achievement-year-card__number{color:var(--achievement-accent);letter-spacing:.06em;text-transform:uppercase;font-size:12px;font-weight:900}.achievement-status{border-radius:999px;align-items:center;gap:5px;padding:5px 8px;font-size:11px;font-weight:900;display:inline-flex}.achievement-status.is-issued{background:var(--bg-success-subtle);color:var(--success)}.achievement-status.is-ready{background:color-mix(in srgb, var(--achievement-accent) 12%, var(--bg-card) 88%);color:var(--achievement-accent)}.achievement-status.is-locked{background:var(--bg-secondary);color:var(--text-secondary)}.achievement-year-card__body,.achievement-skill-card{border:1px solid color-mix(in srgb, var(--border-color) 82%, var(--achievement-accent) 18%);background:linear-gradient(180deg, color-mix(in srgb, var(--bg-card) 88%, var(--bg-secondary) 12%), var(--bg-card));min-width:0;transition:border-color .18s,transform .18s,box-shadow .18s;position:relative;overflow:hidden}.achievement-year-card__body:before,.achievement-skill-card:before,.achievement-radar-card:after{content:"";opacity:0;pointer-events:none;background:linear-gradient(115deg,#0000 8%,#ffffff24 44%,#0000 58%);transition:opacity .18s,transform .55s;position:absolute;inset:0;transform:translate(-120%)}.achievement-year-card__body:hover,.achievement-skill-card:hover{border-color:color-mix(in srgb, var(--achievement-accent) 42%, var(--border-color) 58%);box-shadow:0 18px 38px color-mix(in srgb, var(--achievement-accent) 14%, transparent);transform:translateY(-3px)}.achievement-year-card__body:hover:before,.achievement-skill-card:hover:before,.achievement-radar-card:hover:after{opacity:1;transform:translate(120%)}.achievement-year-card__body{border-radius:18px;padding:17px}.achievement-year-card h3{margin-top:4px}.achievement-year-card h3,.achievement-skill-card h3{color:var(--text-main);font-size:15px;font-weight:900;line-height:1.35}.achievement-year-card__standard{color:var(--text-secondary);margin-top:5px;font-size:12.5px;font-weight:700}.achievement-year-card__progress,.achievement-skill-card__bar{background:var(--bg-secondary);border-radius:999px;overflow:hidden}.achievement-year-card__progress{height:7px;margin-top:16px}.achievement-year-card__progress span,.achievement-skill-card__bar span{border-radius:inherit;height:100%;display:block}.achievement-year-card__progress span{background:linear-gradient(90deg, var(--achievement-accent), var(--achievement-accent-2));animation:.9s both achievementBarFill}.achievement-year-card__meta{color:var(--text-secondary);margin-top:8px;font-size:12px;font-weight:700}.achievement-year-card__checks{border-top:1px solid var(--border-color);gap:8px;margin-top:16px;padding-top:14px;display:grid}.achievement-year-card__checks span{color:var(--text-secondary);align-items:center;gap:7px;font-size:12.5px;font-weight:700;display:inline-flex}.achievement-year-card__checks span.is-done{color:var(--success)}.achievement-year-card__certificate{border:1px solid color-mix(in srgb, #b99a52 32%, var(--border-color) 68%);background:linear-gradient(135deg, color-mix(in srgb, var(--bg-card) 78%, #fff4cc 22%), var(--bg-card));border-radius:14px;justify-content:space-between;align-items:center;gap:14px;margin-top:14px;padding:14px;display:flex}.achievement-year-card__certificate div{min-width:0}.achievement-year-card__certificate strong,.achievement-year-card__certificate span{display:block}.achievement-year-card__certificate strong{color:var(--text-main);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:900;overflow:hidden}.achievement-year-card__certificate span{color:var(--text-secondary);margin-top:3px;font-size:12px;line-height:1.4}.achievement-year-card__certificate .btn{flex-shrink:0;gap:6px;padding:8px 11px;font-size:12px}.achievement-side-rail{gap:14px;display:grid}.achievement-radar-card{border-radius:20px;padding:20px;transition:transform .18s,border-color .18s,box-shadow .18s;animation:.62s both achievementReveal;position:relative;overflow:hidden}.achievement-radar-card:before{content:"";border:1px solid color-mix(in srgb, var(--achievement-accent) 22%, transparent);border-radius:50%;width:150px;height:150px;animation:8s linear infinite achievementRadar;position:absolute;inset:auto -40px -58px auto}.achievement-radar-card:hover{border-color:color-mix(in srgb, var(--achievement-accent) 44%, var(--border-color) 56%);box-shadow:0 18px 38px color-mix(in srgb, var(--achievement-accent) 13%, transparent);transform:translateY(-3px)}.achievement-radar-card span{color:var(--text-secondary);letter-spacing:.07em;text-transform:uppercase;font-size:12px;font-weight:900}.achievement-radar-card strong{color:var(--text-main);margin-top:8px;font-size:38px;font-weight:900;line-height:1;display:block}.achievement-radar-card p{color:var(--text-secondary);margin:10px 0 0;font-size:13px;line-height:1.5}.achievement-skill-card{animation:achievementReveal .58s var(--delay,0s) ease both;border-radius:18px;padding:17px}.achievement-skill-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.achievement-skill-card__head{align-items:flex-start;gap:11px;display:flex}.achievement-skill-card__icon{background:color-mix(in srgb, var(--skill-color) 12%, var(--bg-card) 88%);width:36px;height:36px;color:var(--skill-color);border-radius:10px;flex:0 0 36px;justify-content:center;align-items:center;transition:transform .18s,background .18s;display:flex}.achievement-skill-card:hover .achievement-skill-card__icon{background:color-mix(in srgb, var(--skill-color) 18%, var(--bg-card) 82%);transform:translateY(-2px)scale(1.04)}.achievement-skill-card h3{margin:0}.achievement-skill-card p{color:var(--text-secondary);margin:3px 0 0;font-size:12.5px;line-height:1.4}.achievement-skill-card__bar{height:7px;margin-top:16px}.achievement-skill-card__bar span{background:var(--skill-color);animation:.9s both achievementBarFill}.achievement-skill-card strong{color:var(--skill-color);text-align:right;margin-top:8px;font-size:13px;font-weight:900;display:block}.achievement-cefr-table-wrap{border:1px solid var(--border-color);background:var(--bg-card);border-radius:18px;overflow-x:auto}.achievement-cefr-table{border-collapse:collapse;width:100%;min-width:680px}.achievement-cefr-table th,.achievement-cefr-table td{border-right:1px solid var(--border-color);border-bottom:1px solid var(--border-color);text-align:center;padding:13px 14px}.achievement-cefr-table tr:last-child th,.achievement-cefr-table tr:last-child td{border-bottom:0}.achievement-cefr-table th:last-child,.achievement-cefr-table td:last-child{border-right:0}.achievement-cefr-table thead th{background:var(--bg-secondary);color:var(--text-secondary);letter-spacing:.05em;text-transform:uppercase;font-size:12px;font-weight:900}.achievement-cefr-table thead th:first-child,.achievement-cefr-table tbody th{z-index:1;text-align:left;position:sticky;left:0}.achievement-cefr-table tbody th{background:var(--bg-card)}.achievement-cefr-table__skill{color:var(--text-main);white-space:nowrap;align-items:center;gap:8px;font-size:13px;font-weight:900;display:inline-flex}.achievement-cefr-table__skill svg{color:var(--skill-color)}.achievement-cefr-cell{justify-items:center;gap:3px;display:grid}.achievement-cefr-cell strong{color:var(--text-main);font-size:14px;font-weight:900}.achievement-cefr-cell span,.achievement-cefr-cell.is-empty{color:var(--text-secondary);font-size:11px;font-weight:700}.achievement-callout{border-radius:20px;gap:14px;padding:20px;animation:3.5s ease-in-out infinite achievementPulsePanel;display:grid}.achievement-callout .btn{width:fit-content}.achievement-skeleton{background:linear-gradient(90deg, var(--bg-secondary) 25%, color-mix(in srgb, var(--bg-secondary) 70%, var(--bg-card) 30%) 50%, var(--bg-secondary) 75%);background-size:200% 100%;border-radius:16px;min-height:150px;animation:1.4s infinite shimmer}.achievement-skeleton--hero{min-height:250px;margin-bottom:20px}.achievement-skeleton-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}@media (width<=920px){.achievements-hero,.achievement-certificate-spotlight,.achievement-mission-grid{grid-template-columns:1fr}.achievement-side-rail,.achievement-kpis,.achievement-skill-grid,.achievement-skeleton-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=640px){.achievements-command-panel,.achievement-kpis,.achievement-side-rail{grid-template-columns:1fr}.achievements-command-panel{text-align:center;justify-items:center}.achievement-year-card{grid-template-columns:30px minmax(0,1fr);gap:10px}.achievement-year-marker{border-radius:10px;width:30px;height:30px}.achievement-year-timeline:before{left:14px}.achievement-section__header,.achievement-year-card__certificate{flex-direction:column;align-items:stretch}.achievement-year-card__certificate .btn{justify-content:center;width:100%}.achievement-link,.achievement-level{width:fit-content}.achievement-skill-grid,.achievement-skeleton-grid{grid-template-columns:1fr}}@keyframes achievementReveal{0%{opacity:0;transform:translateY(14px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes achievementGridShift{0%{background-position:0 0,0 0}to{background-position:32px 32px,32px 32px}}@keyframes achievementHeroSweep{0%,52%{transform:translate(-120%)}72%,to{transform:translate(120%)}}@keyframes achievementFloat{0%,to{transform:translate(0,0)scale(1)}50%{transform:translate(10px,-14px)scale(1.04)}}@keyframes achievementOrbitPulse{0%,to{box-shadow:0 0 34px var(--achievement-glow)}50%{box-shadow:0 0 48px color-mix(in srgb, var(--achievement-accent-2) 22%, transparent)}}@keyframes achievementOrbitRing{0%,to{opacity:.34;transform:scale(.96)}50%{opacity:.72;transform:scale(1.03)}}@keyframes achievementSignal{0%{box-shadow:0 0 0 0 color-mix(in srgb, var(--achievement-accent) 42%, transparent)}to{box-shadow:0 0 0 9px #0000}}@keyframes achievementTimelineGrow{0%{transform:scaleY(0)}to{transform:scaleY(1)}}@keyframes achievementBarFill{0%{transform-origin:0;transform:scaleX(0)}to{transform-origin:0;transform:scaleX(1)}}@keyframes achievementRadar{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes achievementPulsePanel{0%,to{box-shadow:0 18px 44px color-mix(in srgb, var(--shadow-color,#0f172a1f) 64%, transparent)}50%{box-shadow:0 18px 48px color-mix(in srgb, var(--achievement-accent) 18%, transparent)}}@media (prefers-reduced-motion:reduce){.achievements-hero:before,.achievements-hero:after,.achievements-ambient span,.achievements-hero__copy,.achievements-command-panel,.achievements-orbit,.achievements-orbit:before,.achievements-orbit:after,.achievements-signal i,.achievement-kpi,.achievement-year-timeline:before,.achievement-year-card,.achievement-year-card__progress span,.achievement-radar-card,.achievement-radar-card:before,.achievement-skill-card,.achievement-skill-card__bar span,.achievement-callout{animation:none}.achievement-year-card__body,.achievement-skill-card,.achievement-kpi,.achievement-radar-card{transition:none}}@keyframes xpFloat{0%{opacity:1;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(-60px)scale(1.3)}}.xp-float{pointer-events:none;z-index:9999;color:var(--warning);font-size:24px;font-weight:900;animation:1s ease-out forwards xpFloat;position:fixed}@media (width<=860px){.mobile-bottom-nav{-webkit-backdrop-filter:blur(16px);border-top:1px solid var(--border-color);z-index:99;padding:8px env(safe-area-inset-bottom,8px);background:#fffffff2;justify-content:space-around;align-items:center;display:flex;position:fixed;bottom:0;left:0;right:0}.mobile-bottom-nav a{color:var(--text-muted);border-radius:10px;flex-direction:column;align-items:center;gap:2px;padding:6px 12px;font-size:10px;font-weight:600;text-decoration:none;transition:all .2s;display:flex}.mobile-bottom-nav a.active{color:var(--primary);background:#05966914}.mobile-bottom-nav a:hover{color:var(--primary)}}.progress-ring{transform:rotate(-90deg)}.progress-ring-circle{stroke-dasharray:100 100;transition:stroke-dashoffset .5s}.toast-enter{animation:.35s cubic-bezier(.34,1.56,.64,1) toastSlideIn}@keyframes toastSlideIn{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}.checkbox-custom{appearance:none;border:2px solid var(--border);cursor:pointer;border-radius:6px;flex-shrink:0;width:20px;height:20px;transition:all .2s;position:relative}.checkbox-custom:checked{background:var(--primary);border-color:var(--primary)}.checkbox-custom:checked:after{content:"✓";color:#fff;justify-content:center;align-items:center;font-size:12px;font-weight:700;display:flex;position:absolute;inset:0}.checkbox-custom:hover{border-color:var(--primary)}.checkbox-custom:focus-visible{box-shadow:0 0 0 3px #05966926}.progress-bar{background-color:#e5e7eb;border-radius:4px;width:100%;height:8px;overflow:hidden}.progress-fill{border-radius:4px;height:100%;transition:width .3s}.progress-fill.blue{background-color:#3b82f6}.progress-fill.green,.progress-fill.orange{background-color:#10b981}.progress-fill.purple{background-color:#8b5cf6}.badge{border-radius:4px;align-items:center;gap:4px;padding:4px 8px;font-size:11px;font-weight:600;display:inline-flex}.badge.blue{color:#3b82f6;background-color:#dbeafe}.badge.green{color:#10b981;background-color:#d1fae5}.badge.purple{color:#8b5cf6;background-color:#ede9fe}.badge.orange{color:#10b981;background-color:#fed7aa}.badge.red{color:#ef4444;background-color:#fee2e2}.roadmap-container{animation:.5s ease-out fadeIn}.year-card{transition:transform .2s,box-shadow .2s}.year-card:hover:not(.locked){transform:translateY(-2px);box-shadow:0 10px 15px -3px #0000001a}.situation-card{transition:all .2s}.skill-card:hover:not(.locked){transform:translateY(-2px);box-shadow:0 4px 6px -1px #0000001a;background-color:var(--bg-secondary)!important}.lp-year-header{border-radius:16px;margin:-10px -12px;padding:10px 12px;transition:all .2s}.lp-year-header:hover{background:var(--bg-secondary)}.lp-action-step{background:var(--bg-card);border:1px solid var(--border-color);box-sizing:border-box;border-radius:16px;align-items:center;gap:12px;width:100%;padding:14px;display:flex}.lp-action-step-btn{background:var(--bg-card);cursor:pointer;text-align:left;box-sizing:border-box;border-radius:16px;align-items:center;gap:12px;width:100%;padding:14px;font-family:inherit;transition:all .2s cubic-bezier(.16,1,.3,1);display:flex}.lp-action-step-btn:hover{transform:translateY(-2px);box-shadow:0 8px 24px #0f172a14;background:var(--bg-secondary)!important}.lp-action-step-btn:active{transform:translateY(0)}.dashboard-card{box-sizing:border-box;transition:all .3s cubic-bezier(.16,1,.3,1)}.dashboard-card:hover{transform:translateY(-4px);box-shadow:0 16px 36px #0f172a14;border-color:var(--areca)!important}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton{background:linear-gradient(90deg, color-mix(in srgb, var(--bg-secondary) 95%, var(--text-mute) 5%) 25%, color-mix(in srgb, var(--bg-secondary) 85%, var(--text-mute) 15%) 50%, color-mix(in srgb, var(--bg-secondary) 95%, var(--text-mute) 5%) 75%);opacity:.85;background-size:200% 100%;border-radius:8px;animation:1.6s linear infinite shimmer}.skeleton-stat-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);flex-direction:column;gap:10px;padding:clamp(16px,2vw,20px);display:flex}.skeleton-icon{border-radius:12px;flex-shrink:0;width:44px;height:44px}.skeleton-value{border-radius:6px;width:55%;height:32px}.skeleton-label{border-radius:4px;width:80%;height:13px}.skeleton-table-row{background:var(--bg-secondary);border-radius:10px;align-items:center;gap:12px;margin-bottom:8px;padding:12px;display:flex}.skeleton-avatar{border-radius:50%;flex-shrink:0;width:36px;height:36px}.skeleton-text-group{flex-direction:column;flex:1;gap:6px;display:flex}.skeleton-text-lg{border-radius:4px;width:60%;height:13px}.skeleton-text-sm{border-radius:4px;width:40%;height:10px}.skeleton-badge{border-radius:99px;flex-shrink:0;width:50px;height:22px}.skeleton-lesson-card{border-radius:var(--radius-lg);border:1px solid var(--border-color);background:var(--bg-card);overflow:hidden}.skeleton-card-image{height:140px}.skeleton-card-body{flex-direction:column;gap:8px;padding:14px;display:flex}.alert-banner{border-radius:var(--radius);border-left:4px solid;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;padding:11px 16px;font-size:14px;font-weight:500;animation:.25s ease-out slideUp;display:flex}.alert-banner__body{flex:1;align-items:center;gap:10px;min-width:0;display:flex}.alert-banner__icon{flex-shrink:0;align-items:center;display:flex}.alert-banner__message{flex:1;min-width:0}.alert-banner__actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.alert-banner--danger{border-color:var(--danger);color:var(--danger);background:#ef44441a}.alert-banner--warning{border-color:var(--warning);color:var(--warning);background:#f59e0b1a}.alert-banner--info{color:#3b82f6;background:#3b82f61a;border-color:#3b82f6}.alert-banner__cta{border-radius:var(--radius-sm);color:inherit;cursor:pointer;white-space:nowrap;background:#00000012;border:none;padding:4px 12px;font-family:inherit;font-size:12px;font-weight:700;transition:background .15s}.alert-banner__cta:hover{background:#00000024}.alert-banner__dismiss{cursor:pointer;color:inherit;opacity:.5;background:0 0;border:none;align-items:center;padding:4px;transition:opacity .15s;display:flex}.alert-banner__dismiss:hover{opacity:1}.page-header-bar{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:20px;display:flex}.page-header-bar__lead{align-items:center;gap:12px;display:flex}.page-header-bar__icon-wrap{background:var(--primary-light);width:42px;height:42px;color:var(--primary);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.page-header-bar__title{color:var(--text-main);letter-spacing:-.02em;margin-bottom:0;font-size:20px;font-weight:800}.page-header-bar__subtitle{color:var(--text-dim);margin:3px 0 0;font-size:13px}.page-header-bar__actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.admin-courses-page{flex-direction:column;gap:22px;display:flex}.admin-courses-page .page-header-bar{border:1px solid var(--dashboard-hero-border);background:radial-gradient(circle at 85% 8%, color-mix(in srgb, var(--primary) 18%, transparent), transparent 34%), var(--dashboard-kpi-bg);box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:28px;align-items:center;padding:28px 30px;position:relative;overflow:hidden}.admin-courses-page .page-header-bar:before{content:"";background:linear-gradient(#10b981,#38bdf8);width:8px;position:absolute;inset:0 auto 0 0}.admin-courses-page .page-header-bar:after{content:"";background:linear-gradient(90deg,#0000,#10b9816b,#0000);height:1px;position:absolute;bottom:0;left:18px;right:18px}.admin-courses-page .page-header-bar__lead{z-index:1;gap:14px;position:relative}.admin-courses-page .page-header-bar__icon-wrap{border:1px solid color-mix(in srgb, #10b981 26%, var(--border-color) 74%);background:linear-gradient(135deg, color-mix(in srgb, #10b981 18%, var(--bg-card) 82%), color-mix(in srgb, #38bdf8 8%, var(--bg-card) 92%));color:#10b981;border-radius:18px;width:58px;height:58px;box-shadow:0 14px 30px #10b9812e}.admin-courses-page .page-header-bar__title{letter-spacing:0;font-size:30px;line-height:1.15}.admin-courses-page .page-header-bar__subtitle{color:var(--text-secondary);margin-top:6px;font-size:14px;font-weight:700}.admin-courses-reset-btn{gap:6px;font-size:13px}.admin-courses-state{text-align:center;color:var(--text-mute);padding:56px 24px}.admin-courses-state__error{color:var(--danger);margin-bottom:16px}.admin-courses-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));align-items:stretch;gap:18px;display:grid}.admin-courses-command{color:#f8fafc;box-shadow:var(--shadow-lg);background:radial-gradient(circle at 86% 10%,#10b98133,#0000 34%),linear-gradient(135deg,#111827 0%,#030712 100%),#020617;border:1px solid #ffffff14;border-radius:32px;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);gap:22px;padding:34px;display:grid;position:relative;overflow:hidden}.admin-courses-command:before{content:"";pointer-events:none;background-image:linear-gradient(#94a3b814 1px,#0000 1px),linear-gradient(90deg,#94a3b814 1px,#0000 1px);background-size:28px 28px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(90deg,#000000b3,#0000 72%);mask-image:linear-gradient(90deg,#000000b3,#0000 72%)}.admin-courses-command:after{content:"";pointer-events:none;background:radial-gradient(circle,#10b9813d,#0000 66%);border:1px solid #10b9814d;border-radius:999px;width:260px;height:260px;position:absolute;top:-110px;right:-80px}.admin-courses-command__copy,.admin-courses-command__stats{z-index:1;position:relative}.admin-courses-command__eyebrow{color:#6ee7b7;text-transform:uppercase;letter-spacing:0;background:#0f172a7a;border:1px solid #6ee7b747;border-radius:999px;align-items:center;gap:8px;margin-bottom:10px;padding:7px 10px;font-size:11px;font-weight:900;display:inline-flex}.admin-courses-command h2{color:#fff;letter-spacing:0;max-width:720px;margin:0;font-size:36px;font-weight:900;line-height:1.05}.admin-courses-command p{color:#94a3b8;max-width:720px;margin:8px 0 0;font-size:15px;line-height:1.5}.admin-courses-command__stats{grid-template-columns:1fr;gap:12px;display:grid}.admin-courses-command__stat{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ffffff0d;border:1px solid #ffffff1a;border-radius:18px;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;min-height:64px;padding:14px 16px;display:grid;box-shadow:inset 0 1px #ffffff0f}.admin-courses-command__stat svg{color:#6ee7b7}.admin-courses-command__stat span{color:#cbd5e1;font-size:12px;font-weight:800}.admin-courses-command__stat strong{color:#fff;font-size:26px;font-weight:900}.admin-course-card{background:radial-gradient(circle at 88% 10%, color-mix(in srgb, var(--course-accent) 18%, transparent), transparent 32%), var(--dashboard-kpi-bg);border:1px solid var(--dashboard-hero-border);min-width:0;box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);cursor:pointer;border-top:0;border-radius:24px;flex-direction:column;transition:transform .18s,box-shadow .18s,border-color .18s;display:flex;position:relative;overflow:hidden}.admin-course-card:hover{box-shadow:0 24px 56px color-mix(in srgb, var(--course-accent) 15%, transparent);border-color:color-mix(in srgb, var(--course-accent) 38%, var(--border-color));transform:translateY(-2px)}.admin-course-card:before{content:"";background:linear-gradient(180deg, var(--course-accent), color-mix(in srgb, var(--course-accent) 50%, #fff 50%));width:7px;position:absolute;inset:0 auto 0 0}.admin-course-card__header{border-bottom:1px solid color-mix(in srgb, var(--course-accent) 12%, var(--border-color) 88%);padding:22px 22px 14px;position:relative}.admin-course-card__year{color:var(--course-accent);border:1px solid color-mix(in srgb, var(--course-accent) 32%, var(--border-color) 68%);background:color-mix(in srgb, var(--course-accent) 12%, var(--bg-card) 88%);text-transform:uppercase;letter-spacing:0;border-radius:999px;align-items:center;min-height:28px;margin-bottom:10px;padding:0 10px;font-size:12px;font-weight:800;line-height:1;display:inline-flex}.admin-course-card__header h2{min-height:44px;color:var(--text-main);letter-spacing:0;overflow-wrap:anywhere;margin:0;font-size:20px;font-weight:800;line-height:1.25}.admin-course-card__header h2 span{color:var(--text-mute);font-style:italic;font-weight:600}.admin-course-card__meta{flex-wrap:wrap;gap:6px;margin-top:12px;display:flex}.admin-course-card__meta span{background:color-mix(in srgb, var(--bg-card) 86%, var(--bg-secondary) 14%);border:1px solid color-mix(in srgb, var(--course-accent) 14%, var(--border-color) 86%);min-height:24px;color:var(--text-secondary);border-radius:999px;align-items:center;gap:4px;padding:4px 8px;font-size:11px;font-weight:800;display:inline-flex}.admin-course-card__meta .admin-course-card__complete{background:var(--bg-success-subtle);border-color:var(--border-success);color:var(--success)}.admin-course-card__body{flex-direction:column;flex:1;gap:12px;padding:16px 22px 20px;display:flex}.admin-course-card__numbers{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.admin-course-card__numbers div{background:color-mix(in srgb, var(--course-accent) 7%, var(--bg-card) 93%);border:1px solid color-mix(in srgb, var(--course-accent) 16%, var(--border-color) 84%);text-align:center;border-radius:16px;min-width:0;padding:10px 6px}.admin-course-card__numbers strong,.admin-course-card__numbers span{display:block}.admin-course-card__numbers strong{color:var(--text-main);font-size:18px;line-height:1}.admin-course-card__numbers span{color:var(--text-mute);margin-top:4px;font-size:10px;font-weight:700}.admin-course-card__skills{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;display:grid}.admin-course-card__skill{border:1px solid var(--skill-border);background:var(--skill-bg);min-height:34px;color:var(--skill-color);border-radius:14px;justify-content:center;align-items:center;gap:5px;font-size:13px;font-weight:800;display:flex}.admin-course-card__situations{border:1px solid color-mix(in srgb, var(--course-accent) 14%, var(--border-color) 86%);background:color-mix(in srgb, var(--bg-card) 88%, var(--bg-secondary) 12%);border-radius:18px;overflow:hidden}.admin-course-card__section-title,.admin-course-card__more{background:color-mix(in srgb, var(--course-accent) 8%, var(--bg-secondary) 92%);min-height:30px;color:var(--text-mute);text-transform:uppercase;letter-spacing:0;padding:8px 10px;font-size:10px;font-weight:800}.admin-course-card__situation{border-top:1px solid color-mix(in srgb, var(--course-accent) 10%, var(--border-color) 90%);grid-template-columns:24px minmax(0,1fr) auto;align-items:center;gap:8px;min-height:40px;padding:7px 10px;font-size:12px;display:grid}.admin-course-card__situation-number{background:color-mix(in srgb, var(--course-accent) 12%, var(--bg-card));width:22px;height:22px;color:var(--course-accent);border-radius:10px;justify-content:center;align-items:center;font-size:10px;font-weight:800;display:flex}.admin-course-card__situation-title{min-width:0;color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;font-weight:700;overflow:hidden}.admin-course-card__situation-title em{color:var(--text-mute);font-style:italic}.admin-course-card__situation>span:nth-child(3){color:var(--text-mute);font-size:11px;font-weight:800}.admin-course-card__situation>span:nth-child(3).is-ready{color:var(--success)}.admin-course-card__empty{border-top:1px solid var(--border-color);color:var(--text-mute);text-align:center;padding:14px 10px;font-size:12px;font-style:italic}.admin-course-card__more{border-top:1px solid var(--border-color);text-transform:none}.admin-course-card__progress{margin-top:auto}.admin-course-card__progress>div:first-child{color:var(--text-mute);justify-content:space-between;align-items:center;gap:10px;margin-bottom:7px;font-size:12px;font-weight:700;display:flex}.admin-course-card__progress>div:first-child span{align-items:center;gap:5px;min-width:0;display:flex}.admin-course-card__progress strong{color:var(--text-main)}.admin-course-card__progress-track{background:color-mix(in srgb, var(--course-accent) 10%, var(--bg-accent) 90%);border-radius:999px;height:8px;overflow:hidden}.admin-course-card__progress-track span{background:var(--course-accent);border-radius:inherit;height:100%;transition:width .35s;display:block}.admin-course-card__footer{border-top:1px solid color-mix(in srgb, var(--course-accent) 12%, var(--border-color) 88%);background:color-mix(in srgb, var(--course-accent) 7%, var(--bg-card) 93%);justify-content:space-between;align-items:center;gap:10px;min-height:54px;padding:14px 22px;display:flex}.admin-course-card__edit{border-radius:999px;gap:5px;padding:8px 12px;font-size:12px}.admin-course-card__open{color:var(--course-accent);white-space:nowrap;align-items:center;gap:3px;font-size:12px;font-weight:800;display:inline-flex}.admin-courses-modal-backdrop{z-index:999;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172a73;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.admin-courses-modal{background:var(--bg-card);border:1px solid var(--border-color);border-radius:12px;width:min(480px,100%);max-height:min(720px,100vh - 48px);padding:24px;overflow:auto;box-shadow:0 24px 64px #0003}.admin-courses-modal__header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;display:flex}.admin-courses-modal__header h2{color:var(--text-main);margin:0;font-size:18px;font-weight:800}.admin-courses-modal__header button{width:34px;height:34px;color:var(--text-mute);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;padding:0;display:flex}.admin-courses-modal__form{flex-direction:column;gap:14px;display:flex}.admin-courses-modal__last-field{margin-bottom:0}.admin-courses-modal__last-field textarea{resize:vertical}.admin-courses-modal__actions{justify-content:flex-end;gap:10px;margin-top:22px;display:flex}.admin-courses-modal__actions .btn-primary{gap:6px}@media (width<=820px){.admin-courses-command,.admin-courses-grid{grid-template-columns:1fr}}@media (width<=560px){.admin-courses-page .page-header-bar,.admin-courses-command{padding:22px}.admin-courses-command h2{font-size:28px}.admin-course-card__header,.admin-course-card__body,.admin-course-card__footer{padding-left:12px;padding-right:12px}.admin-course-card__footer,.admin-courses-modal__actions{flex-direction:column;align-items:stretch}.admin-course-card__open{justify-content:center}.admin-courses-modal-backdrop{padding:12px}.admin-courses-modal{max-height:calc(100vh - 24px);padding:18px}}.course-browser{flex-direction:column;gap:18px;width:100%;display:flex}.faculty-courses-grid{grid-template-columns:repeat(auto-fit,minmax(292px,1fr));align-items:stretch;gap:18px;display:grid}@media (width>=1200px){.faculty-courses-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.faculty-course-card{cursor:pointer}.faculty-course-card.admin-course-card{border-radius:22px}.faculty-course-card .admin-course-card__header h2{min-height:0}.faculty-course-card .admin-course-card__header p{color:var(--text-mute);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:10px 0 0;font-size:12.5px;font-weight:650;line-height:1.45;display:-webkit-box;overflow:hidden}.faculty-course-card .admin-course-card__numbers strong{font-size:17px}.faculty-course-card .admin-course-card__situations{margin-top:2px}.faculty-course-card__footer .admin-course-card__edit{pointer-events:auto}.course-browser__command{border:1px solid var(--dashboard-hero-border);background:radial-gradient(circle at 92% 0%, #38bdf821, transparent 32%), linear-gradient(135deg, color-mix(in srgb, var(--primary) 8%, transparent), transparent 48%), var(--dashboard-kpi-bg);box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-radius:26px;grid-template-columns:minmax(0,1.1fr) minmax(360px,.9fr);align-items:stretch;gap:18px;padding:22px;display:grid}.course-browser__command-copy{flex-direction:column;justify-content:center;min-width:0;display:flex}.course-browser__command-eyebrow{background:color-mix(in srgb, var(--primary) 10%, var(--bg-card) 90%);border:1px solid color-mix(in srgb, var(--primary) 18%, var(--border-color) 82%);width:fit-content;min-height:30px;color:var(--primary);border-radius:999px;align-items:center;gap:7px;padding:0 11px;font-size:12px;font-weight:900;display:inline-flex}.course-browser__command h2{max-width:760px;color:var(--text-main);margin:12px 0 0;font-size:clamp(1.35rem,2vw,2rem);font-weight:900;line-height:1.16}.course-browser__command p{max-width:680px;color:var(--text-secondary);margin:10px 0 0;font-size:14px;font-weight:650;line-height:1.55}.course-browser__command-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.course-browser__command-stats div{border:1px solid color-mix(in srgb, var(--primary) 13%, var(--border-color) 87%);background:color-mix(in srgb, var(--bg-card) 84%, var(--bg-secondary) 16%);border-radius:18px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:4px 10px;min-width:0;padding:14px;display:grid;box-shadow:inset 0 1px #ffffff47}.course-browser__command-stats svg{color:var(--primary);grid-row:1/span 2}.course-browser__command-stats span{color:var(--text-mute);text-transform:uppercase;font-size:11px;font-weight:850}.course-browser__command-stats strong{min-width:0;color:var(--text-main);text-overflow:ellipsis;font-size:24px;font-weight:950;line-height:1;overflow:hidden}.course-browser__detail-nav{justify-content:flex-start;align-items:center;display:flex}.course-browser__back{border:1px solid color-mix(in srgb, var(--primary) 22%, var(--border-color) 78%);background:color-mix(in srgb, var(--primary) 8%, var(--bg-card) 92%);min-height:40px;color:var(--primary);cursor:pointer;box-shadow:var(--shadow-sm);border-radius:999px;align-items:center;gap:7px;padding:0 14px;font-family:inherit;font-size:13px;font-weight:850;display:inline-flex}.course-browser__back:hover{background:color-mix(in srgb, var(--primary) 12%, var(--bg-card) 88%);color:var(--primary);transform:translateY(-1px)}.course-browser-state,.course-browser-empty{text-align:center;color:var(--text-mute);padding:56px 24px}.course-browser-state--card,.course-browser-empty{background:var(--bg-card);border:1px solid var(--border-color);box-shadow:var(--shadow-sm);border-radius:12px}.course-browser-state--inline{padding:22px 18px;font-size:13px;font-style:italic}.course-browser-empty svg{color:var(--text-mute);margin-bottom:12px}.course-browser-empty__title{color:var(--text-main);margin-bottom:5px;font-size:15px;font-weight:800}.course-browser-empty__copy{font-size:13px}.course-browser__summary{background:radial-gradient(circle at 86% 0%, color-mix(in srgb, var(--year-color) 18%, transparent), transparent 36%), linear-gradient(135deg, color-mix(in srgb, var(--year-color) 9%, transparent), transparent 52%), var(--dashboard-kpi-bg);border:1px solid color-mix(in srgb, var(--year-color) 24%, var(--dashboard-hero-border));border-left:6px solid var(--year-color);box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-radius:24px;grid-template-columns:minmax(0,1fr) auto;align-items:stretch;gap:18px;padding:22px;display:grid}.course-browser__summary-main{min-width:0}.course-browser__eyebrow{color:var(--year-color);text-transform:uppercase;letter-spacing:.04em;margin-bottom:9px;font-size:10px;font-weight:900;line-height:1}.course-browser__summary h2{color:var(--text-main);margin:0;font-size:clamp(1.35rem,2vw,2rem);font-weight:950;line-height:1.2}.course-browser__summary p{max-width:860px;color:var(--text-mute);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:8px 0 0;font-size:13px;line-height:1.55;display:-webkit-box;overflow:hidden}.course-browser__summary-side{flex-wrap:wrap;justify-content:flex-end;align-items:stretch;gap:10px;min-width:0;display:flex}.course-browser__stats{grid-template-columns:repeat(3,70px);align-items:stretch;gap:8px;display:grid}.course-browser__stats div{background:color-mix(in srgb, var(--bg-card) 82%, var(--bg-secondary) 18%);border:1px solid color-mix(in srgb, var(--year-color) 14%, var(--border-color));text-align:center;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:4px;min-width:0;min-height:58px;padding:8px 6px;display:flex}.course-browser__stats strong,.course-browser__stats span{display:block}.course-browser__stats strong{color:var(--text-main);font-size:17px;font-weight:950;line-height:1}.course-browser__stats span{color:var(--text-mute);text-transform:uppercase;font-size:8.5px;font-weight:800;line-height:1.1}.course-browser__certificate{background:linear-gradient(135deg, var(--year-color), color-mix(in srgb, var(--year-color) 78%, #111827));color:#fff;cursor:pointer;white-space:nowrap;min-height:58px;box-shadow:0 10px 22px color-mix(in srgb, var(--year-color) 18%, transparent);border:0;border-radius:12px;justify-content:center;align-items:center;gap:7px;padding:0 15px;font-family:inherit;font-size:12px;font-weight:850;display:inline-flex}.course-browser__certificate:hover{transform:translateY(-1px)}.course-browser__situations{flex-direction:column;gap:10px;display:flex}.course-situation{background:var(--bg-card);border:1px solid color-mix(in srgb, var(--border-color) 84%, transparent);box-shadow:var(--shadow-soft);border-radius:16px;overflow:hidden}.course-situation__header{background:var(--bg-card);width:100%;min-width:0;min-height:58px;color:var(--text-main);cursor:pointer;text-align:left;border:0;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:14px 16px;font-family:inherit;display:grid}.course-situation__header:hover,.course-situation__header[aria-expanded=true]{background:linear-gradient(135deg, color-mix(in srgb, var(--year-color) 7%, transparent), transparent 44%), var(--bg-secondary)}.course-situation__number{background:color-mix(in srgb, var(--year-color) 11%, var(--bg-card));border:1px solid color-mix(in srgb, var(--year-color) 24%, var(--border-color));width:30px;height:30px;color:var(--year-color);border-radius:9px;justify-content:center;align-items:center;font-size:12px;font-weight:900;display:inline-flex}.course-situation__title-wrap{min-width:0;display:block}.course-situation__title-row{align-items:center;gap:8px;min-width:0;display:flex}.course-situation__title{min-width:0;color:var(--text-main);text-overflow:ellipsis;white-space:nowrap;font-size:14.5px;font-weight:850;line-height:1.25;overflow:hidden}.course-situation__count{background:color-mix(in srgb, var(--year-color) 10%, var(--bg-card));border:1px solid color-mix(in srgb, var(--year-color) 22%, var(--border-color));color:var(--year-color);border-radius:999px;flex-shrink:0;padding:3px 8px;font-size:10px;font-weight:850}.course-situation__description{min-width:0;color:var(--text-mute);text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;line-height:1.35;overflow:hidden}.course-situation__body{border-top:1px solid color-mix(in srgb, var(--border-color) 82%, transparent);background:color-mix(in srgb, var(--bg-card) 90%, var(--bg-secondary) 10%)}.course-lesson-row{border-left:3px solid var(--skill-color);border-bottom:1px solid color-mix(in srgb, var(--border-color) 74%, transparent);background:var(--bg-card);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:13px 16px;display:grid}.course-lesson-row:last-child{border-bottom:0}.course-lesson-row:hover{background:linear-gradient(90deg, color-mix(in srgb, var(--skill-color) 7%, transparent), transparent 42%), var(--bg-card)}.course-lesson-row__main{grid-template-columns:36px minmax(0,1fr);align-items:center;gap:11px;min-width:0;display:grid}.course-lesson-row__type{background:var(--skill-bg);border:1px solid var(--skill-border);width:34px;height:34px;color:var(--skill-color);border-radius:9px;justify-content:center;align-items:center;gap:6px;padding:0;display:inline-flex}.course-lesson-row__copy{min-width:0}.course-lesson-row__title{min-width:0;color:var(--text-main);text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:850;line-height:1.3;overflow:hidden}.course-lesson-row__meta{flex-wrap:wrap;align-items:center;gap:6px;margin-top:5px;display:flex}.course-lesson-row__meta span{background:var(--bg-secondary);min-height:22px;color:var(--text-mute);border-radius:7px;align-items:center;gap:4px;padding:2px 7px;font-size:11px;font-weight:750;display:inline-flex}.course-lesson-row__progress{min-width:0}.course-lesson-row__actions{justify-content:flex-end;align-items:center;gap:7px;display:inline-flex}.course-lesson-row__preview{white-space:nowrap;border-radius:8px;justify-content:center;align-items:center;gap:5px;min-height:34px;padding:0 12px;font-size:12px;font-weight:800;display:inline-flex}.course-lesson-row__preview.btn-primary{background:linear-gradient(135deg, var(--primary), var(--secondary));border:0;box-shadow:0 8px 18px #05966929}.course-lesson-row__preview.btn-primary:hover{transform:translateY(-1px);box-shadow:0 10px 22px #05966938}.advisor-skill-progress{gap:5px;display:grid}.advisor-skill-progress--empty{color:var(--text-mute);font-size:12px;font-style:italic}.advisor-skill-progress__top{color:var(--text-secondary);justify-content:space-between;align-items:center;gap:8px;font-size:12px;font-weight:800;display:flex}.advisor-skill-progress__top span{align-items:center;gap:4px;display:inline-flex}.advisor-skill-progress__top svg,.advisor-skill-progress__top strong{color:var(--progress-tone)}.advisor-skill-progress__track{background:var(--bg-secondary);border-radius:999px;height:6px;overflow:hidden}.advisor-skill-progress__track span{width:var(--progress-width);background:var(--progress-tone);border-radius:inherit;height:100%;transition:width .35s;display:block}.advisor-classroom-selector{background:var(--bg-card);border:1px solid var(--border-color);box-shadow:var(--shadow-sm);border-radius:12px;justify-content:space-between;align-items:center;gap:14px;padding:14px 16px;display:flex}.advisor-classroom-selector__main{flex:1;align-items:center;gap:11px;min-width:0;display:flex}.advisor-classroom-selector__label{color:var(--text-secondary);white-space:nowrap;align-items:center;gap:7px;font-size:13px;font-weight:850;display:inline-flex}.advisor-classroom-selector__label svg{color:var(--primary)}.advisor-classroom-selector__select{min-width:220px;max-width:340px;height:38px;font-size:13px;font-weight:750}.advisor-classroom-selector__empty{color:var(--text-mute);font-size:13px;font-style:italic}.advisor-classroom-selector__meta{flex-wrap:wrap;align-items:center;gap:8px;display:inline-flex}.advisor-classroom-selector__meta span{background:var(--bg-success-subtle);border:1px solid var(--border-success);min-height:30px;color:var(--primary);white-space:nowrap;border-radius:8px;align-items:center;gap:5px;padding:5px 10px;font-size:12px;font-weight:850;display:inline-flex}@media (width<=1100px){.course-browser__command,.course-browser__summary{grid-template-columns:1fr}.course-browser__summary-side{min-width:0}.course-lesson-row{grid-template-columns:minmax(0,1fr) auto}.course-lesson-row__progress{grid-column:1/-1;max-width:360px}}@media (width<=760px){.course-browser__command{padding:18px}.course-browser__command-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.course-browser__summary-side,.advisor-classroom-selector,.advisor-classroom-selector__main{flex-direction:column;align-items:stretch}.course-browser__stats{grid-template-columns:repeat(3,minmax(64px,1fr))}.course-browser__certificate{min-height:38px}.course-situation__header{grid-template-columns:auto minmax(0,1fr) auto;gap:10px}.course-lesson-row,.course-lesson-row__main{grid-template-columns:1fr}.course-lesson-row__actions{justify-content:stretch}.course-lesson-row__preview{flex:1}.advisor-classroom-selector__select{width:100%;min-width:0;max-width:none}}@media (width<=520px){.course-browser__command-stats{grid-template-columns:1fr}.course-browser__summary{padding:15px}.course-browser__summary h2{font-size:18px}.course-browser__stats div{padding-left:6px;padding-right:6px}.course-situation__header,.course-lesson-row{padding-left:12px;padding-right:12px}}.classrooms-overview{flex-direction:column;gap:16px;display:flex}.classrooms-overview__result-pill{border:1px solid var(--border-color);background:color-mix(in srgb, var(--bg-card) 92%, var(--bg-secondary) 8%);color:var(--primary);box-shadow:inset 0 1px 0 color-mix(in srgb, var(--bg-card) 70%, white 30%);border-radius:999px;align-items:center;gap:8px;padding:8px 12px;font-size:12px;font-weight:800;display:inline-flex}.classrooms-overview__summary{background:linear-gradient(180deg, color-mix(in srgb, var(--bg-card) 94%, var(--primary) 6%), color-mix(in srgb, var(--bg-card) 96%, var(--bg-secondary) 4%));flex-direction:column;gap:12px;padding:16px 18px;display:flex}.classrooms-overview__summary-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.classrooms-overview__eyebrow{letter-spacing:.12em;text-transform:uppercase;color:var(--primary);margin:0;font-size:10px;font-weight:900}.classrooms-overview__summary-count{color:var(--text-dim);font-size:12px;font-weight:700}.classrooms-overview__stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.classrooms-overview__stat{border:1px solid var(--border-color);background:color-mix(in srgb, var(--bg-card) 94%, var(--bg-secondary) 6%);border-radius:14px;min-width:0;padding:14px}.classrooms-overview__stat.is-primary{background:color-mix(in srgb, var(--bg-card) 84%, var(--primary) 16%)}.classrooms-overview__stat.is-success{background:color-mix(in srgb, var(--bg-success-subtle) 88%, var(--bg-card) 12%)}.classrooms-overview__stat.is-warning{background:color-mix(in srgb, var(--bg-warning-subtle) 88%, var(--bg-card) 12%)}.classrooms-overview__stat-label{color:var(--text-dim);text-transform:uppercase;letter-spacing:.08em;align-items:center;gap:8px;font-size:11px;font-weight:800;display:inline-flex}.classrooms-overview__stat-value{color:var(--text-main);letter-spacing:-.04em;margin-top:8px;font-size:24px;font-weight:900}.classrooms-overview__toolbar{background:color-mix(in srgb, var(--bg-card) 96%, var(--bg-secondary) 4%);flex-direction:column;gap:12px;padding:16px 18px;display:flex}.classrooms-overview__filter-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.classrooms-overview__search{border:1px solid var(--border-color);background:color-mix(in srgb, var(--bg-card) 94%, var(--bg-secondary) 6%);color:var(--text-dim);border-radius:14px;flex:220px;align-items:center;gap:10px;min-width:0;padding:11px 13px;display:flex}.classrooms-overview__search input{width:100%;min-width:0;color:var(--text-main);font:inherit;background:0 0;border:0;outline:none}.classrooms-overview__search input::placeholder{color:var(--text-mute)}.classrooms-overview__filters{grid-template-columns:repeat(auto-fit,minmax(138px,1fr));align-items:end;gap:12px;display:grid}.classrooms-overview__filter-group{flex-direction:column;gap:6px;min-width:0;display:flex}.classrooms-overview__filter-label{color:var(--text-dim);letter-spacing:.04em;text-transform:uppercase;font-size:12px;font-weight:800}.classrooms-overview__toolbar-meta{color:var(--text-dim);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;font-size:13px;font-weight:700;display:flex}.classrooms-overview__select,.classrooms-overview__clear-btn{border:1px solid var(--border-color);background:color-mix(in srgb, var(--bg-card) 96%, var(--bg-secondary) 4%);min-height:44px;color:var(--text-main);font:inherit;border-radius:12px;max-width:100%;padding:0 14px}.classrooms-overview__clear-btn{cursor:pointer;color:var(--primary);white-space:nowrap;font-weight:700}.classrooms-overview__cards-area{flex-direction:column;gap:12px;display:flex}.classrooms-overview__cards-head{justify-content:space-between;align-items:center;gap:12px;padding:0 2px;display:flex}.classrooms-overview__cards-head h3{color:var(--text-main);letter-spacing:-.03em;margin:0;font-size:15px;font-weight:800}.classrooms-overview__cards-head span{color:var(--text-dim);font-size:11px;font-weight:600}.classrooms-overview__card{transition:transform .16s,box-shadow .16s,border-color .16s}.classrooms-overview__card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.classrooms-overview__grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;display:grid}.classrooms-overview__card{--classroom-accent:var(--primary);--classroom-accent-soft:color-mix(in srgb, var(--primary) 10%, var(--bg-card) 90%);--classroom-accent-softer:color-mix(in srgb, var(--primary) 5%, var(--bg-secondary) 95%);--classroom-accent-surface:color-mix(in srgb, var(--classroom-accent) 16%, var(--bg-card) 84%);--classroom-accent-surface-strong:color-mix(in srgb, var(--classroom-accent) 24%, var(--bg-card) 76%);text-align:left;border:1px solid var(--border-color);background:linear-gradient(145deg, color-mix(in srgb, var(--bg-card) 74%, var(--classroom-accent) 26%) 0%, color-mix(in srgb, var(--bg-card) 84%, var(--classroom-accent) 16%) 32%, color-mix(in srgb, var(--bg-card) 94%, var(--classroom-accent-softer) 6%) 100%);width:100%;box-shadow:var(--shadow-sm);cursor:pointer;border-radius:15px;min-width:0;padding:15px;position:relative;overflow:hidden}.classrooms-overview__card:before{content:"";background:linear-gradient(180deg, var(--classroom-accent), color-mix(in srgb, var(--classroom-accent) 55%, white 45%));opacity:.95;width:6px;position:absolute;inset:0 auto 0 0}.classrooms-overview__card:after{content:"";background:radial-gradient(circle, color-mix(in srgb, var(--classroom-accent) 26%, white 74%) 0%, transparent 72%);opacity:.55;pointer-events:none;border-radius:999px;width:88px;height:88px;position:absolute;top:-18px;right:-18px}.classrooms-overview__card:hover{border-color:color-mix(in srgb, var(--classroom-accent) 45%, var(--border-color) 55%);box-shadow:var(--shadow-md)}.classrooms-overview__card-header,.classrooms-overview__detail-row{justify-content:space-between;align-items:center;gap:10px;display:flex}.classrooms-overview__card-header{color:var(--text-dim);margin-bottom:9px}.classrooms-overview__card-code-row{justify-content:flex-start;align-items:center;margin-bottom:8px;display:flex}.classrooms-overview__card-title{color:var(--text-main);letter-spacing:-.03em;overflow-wrap:anywhere;min-height:0;font-size:18px;font-weight:800;line-height:1.1}.classrooms-overview__card-subtitle{color:var(--text-dim);overflow-wrap:anywhere;margin-top:6px;font-size:11px;font-weight:600;line-height:1.4}.classrooms-overview__card-code{border:1px solid color-mix(in srgb, var(--classroom-accent) 32%, var(--border-color) 68%);background:color-mix(in srgb, var(--classroom-accent-surface-strong) 72%, var(--bg-card) 28%);letter-spacing:.1em;color:color-mix(in srgb, var(--classroom-accent) 84%, var(--text-main) 16%);white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;padding:6px 11px;font-size:15px;font-weight:900;display:inline-flex;box-shadow:inset 0 1px #ffffff61}.classrooms-overview__card-code-label{text-transform:uppercase;letter-spacing:.08em;color:var(--text-dim);font-size:10px;font-weight:800}.classrooms-overview__badge{border:1px solid color-mix(in srgb, var(--classroom-accent) 24%, var(--border-color) 76%);white-space:nowrap;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;padding:6px 9px;font-size:10px;font-weight:800;display:inline-flex;box-shadow:inset 0 1px #ffffff4d}.classrooms-overview__badge.is-active{background:var(--bg-success-subtle);border-color:var(--border-success);color:var(--success)}.classrooms-overview__badge.is-archived{background:var(--bg-warning-subtle);border-color:var(--border-warning);color:var(--warning)}.classrooms-overview__card-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:12px;display:grid}.classrooms-overview__metric-block{border:1px solid var(--border-color);background:color-mix(in srgb, var(--bg-secondary) 84%, var(--bg-card) 16%);border-radius:12px;min-width:0;padding:13px 14px}.classrooms-overview__metric-block.is-compact{background:linear-gradient(180deg, color-mix(in srgb, var(--classroom-accent-surface-strong) 80%, var(--bg-card) 20%), color-mix(in srgb, var(--classroom-accent-surface) 72%, var(--bg-card) 28%));border-color:color-mix(in srgb, var(--classroom-accent) 28%, var(--border-color) 72%);border-radius:10px;padding:10px}.classrooms-overview__metric-block.is-emphasis{border-color:var(--border-warning);background:color-mix(in srgb, var(--bg-warning-subtle) 86%, var(--bg-card) 14%)}.classrooms-overview__metric-label{color:var(--text-dim);text-transform:uppercase;letter-spacing:.08em;align-items:center;gap:6px;font-size:10px;font-weight:800;display:inline-flex}.classrooms-overview__metric-value{color:var(--text-main);overflow-wrap:anywhere;margin-top:6px;font-size:14px;font-weight:800;line-height:1.25}.classrooms-overview__metric-block.is-compact .classrooms-overview__metric-label{gap:6px;font-size:10px}.classrooms-overview__metric-block.is-compact .classrooms-overview__metric-value{margin-top:6px;font-size:14px}.classrooms-overview__card-meta{flex-direction:column;gap:8px;margin-top:12px;display:flex}.classrooms-overview__detail-row{color:var(--text-dim);border:1px solid color-mix(in srgb, var(--border-color) 70%, transparent);background:color-mix(in srgb, var(--bg-card) 88%, var(--bg-secondary) 12%);border-radius:12px;align-items:center;padding:10px 12px;font-size:12px}.classrooms-overview__detail-row.is-compact{border:1px solid color-mix(in srgb, var(--classroom-accent) 18%, var(--border-color) 82%);background:linear-gradient(180deg, color-mix(in srgb, var(--classroom-accent-surface) 72%, var(--bg-card) 28%), color-mix(in srgb, var(--classroom-accent-softer) 54%, var(--bg-card) 46%));border-radius:10px;gap:8px;padding:9px 10px}.classrooms-overview__detail-label{letter-spacing:.05em;text-transform:uppercase;color:var(--text-dim);font-size:10px;font-weight:800}.classrooms-overview__detail-value{color:var(--text-main);text-align:right;overflow-wrap:anywhere;flex:1;min-width:0;font-size:12px;font-weight:700}.classrooms-overview__card-footer{border-top:1px solid color-mix(in srgb, var(--border-color) 72%, transparent);color:var(--classroom-accent);justify-content:space-between;align-items:center;gap:8px;margin-top:12px;padding-top:10px;font-size:11px;font-weight:800;display:flex}.classrooms-overview__pagination{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:4px 2px 0;display:flex}.classrooms-overview__page-btn{border:1px solid var(--border-color);background:color-mix(in srgb, var(--bg-card) 96%, var(--bg-secondary) 4%);min-height:44px;color:var(--text-main);font:inherit;cursor:pointer;border-radius:12px;align-items:center;gap:8px;padding:0 16px;font-weight:700;transition:transform .16s,border-color .16s,opacity .16s;display:inline-flex}.classrooms-overview__page-btn:hover:not(:disabled){border-color:color-mix(in srgb, var(--primary) 28%, var(--border-color) 72%);transform:translateY(-1px)}.classrooms-overview__page-btn:disabled{opacity:.45;cursor:not-allowed}.classrooms-overview__page-status{color:var(--text-secondary);font-size:14px;font-weight:700}.classrooms-overview__page-number-group{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;display:inline-flex}.classrooms-overview__page-number{border:1px solid var(--border-color);background:color-mix(in srgb, var(--bg-card) 96%, var(--bg-secondary) 4%);min-width:40px;height:40px;color:var(--text-secondary);font:inherit;cursor:pointer;border-radius:12px;font-size:13px;font-weight:800;transition:transform .16s,border-color .16s,background .16s,color .16s}.classrooms-overview__page-number:hover{border-color:color-mix(in srgb, var(--primary) 28%, var(--border-color) 72%);transform:translateY(-1px)}.classrooms-overview__page-number.is-active{background:color-mix(in srgb, var(--primary) 10%, var(--bg-card) 90%);border-color:color-mix(in srgb, var(--primary) 32%, var(--border-color) 68%);color:var(--primary)}.classrooms-overview__card--ced{--classroom-accent:#7abf6a;--classroom-accent-soft:#eef8ea;--classroom-accent-softer:#f6fbf4;--classroom-accent-surface:#e6f5df;--classroom-accent-surface-strong:#d7efcd}.dark .classrooms-overview__card--ced{--classroom-accent-soft:color-mix(in srgb, #7abf6a 18%, var(--bg-card) 82%);--classroom-accent-softer:color-mix(in srgb, #7abf6a 10%, var(--bg-secondary) 90%);--classroom-accent-surface:color-mix(in srgb, #7abf6a 22%, var(--bg-card) 78%);--classroom-accent-surface-strong:color-mix(in srgb, #7abf6a 30%, var(--bg-card) 70%)}.classrooms-overview__card--cee{--classroom-accent:#b7653c;--classroom-accent-soft:#f7ece6;--classroom-accent-softer:#fbf5f2;--classroom-accent-surface:#f4e3da;--classroom-accent-surface-strong:#ecd0c2}.dark .classrooms-overview__card--cee{--classroom-accent-soft:color-mix(in srgb, #b7653c 18%, var(--bg-card) 82%);--classroom-accent-softer:color-mix(in srgb, #b7653c 10%, var(--bg-secondary) 90%);--classroom-accent-surface:color-mix(in srgb, #b7653c 22%, var(--bg-card) 78%);--classroom-accent-surface-strong:color-mix(in srgb, #b7653c 30%, var(--bg-card) 70%)}.classrooms-overview__card--tee{--classroom-accent:#4f86d9;--classroom-accent-soft:#ebf2fd;--classroom-accent-softer:#f5f8fe;--classroom-accent-surface:#e1ecfd;--classroom-accent-surface-strong:#cedffd}.dark .classrooms-overview__card--tee{--classroom-accent-soft:color-mix(in srgb, #4f86d9 18%, var(--bg-card) 82%);--classroom-accent-softer:color-mix(in srgb, #4f86d9 10%, var(--bg-secondary) 90%);--classroom-accent-surface:color-mix(in srgb, #4f86d9 22%, var(--bg-card) 78%);--classroom-accent-surface-strong:color-mix(in srgb, #4f86d9 30%, var(--bg-card) 70%)}.classrooms-overview__card--tm{--classroom-accent:#7f2f45;--classroom-accent-soft:#f5eaee;--classroom-accent-softer:#fbf6f8;--classroom-accent-surface:#f0dfe5;--classroom-accent-surface-strong:#e6c8d2}.dark .classrooms-overview__card--tm{--classroom-accent-soft:color-mix(in srgb, #7f2f45 22%, var(--bg-card) 78%);--classroom-accent-softer:color-mix(in srgb, #7f2f45 12%, var(--bg-secondary) 88%);--classroom-accent-surface:color-mix(in srgb, #7f2f45 24%, var(--bg-card) 76%);--classroom-accent-surface-strong:color-mix(in srgb, #7f2f45 32%, var(--bg-card) 68%)}.classrooms-overview__card--default{--classroom-accent:var(--primary);--classroom-accent-soft:color-mix(in srgb, var(--primary) 10%, var(--bg-card) 90%);--classroom-accent-softer:color-mix(in srgb, var(--primary) 5%, var(--bg-secondary) 95%);--classroom-accent-surface:color-mix(in srgb, var(--primary) 16%, var(--bg-card) 84%);--classroom-accent-surface-strong:color-mix(in srgb, var(--primary) 24%, var(--bg-card) 76%)}.classrooms-overview__feedback{border:1px dashed var(--border-color);min-height:220px;color:var(--text-dim);text-align:center;border-radius:20px;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:32px;display:flex}.admin-classrooms-page{flex-direction:column;gap:22px;display:flex}.admin-classrooms-page .page-header-bar{border:1px solid var(--dashboard-hero-border);background:radial-gradient(circle at 85% 8%, color-mix(in srgb, var(--primary) 18%, transparent), transparent 34%), var(--dashboard-kpi-bg);box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:28px;align-items:center;padding:28px 30px;position:relative;overflow:hidden}.admin-classrooms-page .page-header-bar:before{content:"";background:linear-gradient(180deg, #10b981, color-mix(in srgb, var(--primary) 60%, #fff 40%));width:8px;position:absolute;inset:0 auto 0 0}.admin-classrooms-page .page-header-bar:after{content:"";background:linear-gradient(90deg,#0000,#10b9816b,#0000);height:1px;position:absolute;bottom:0;left:18px;right:18px}.admin-classrooms-page .page-header-bar__lead{z-index:1;gap:14px;position:relative}.admin-classrooms-page .page-header-bar__icon-wrap{border:1px solid color-mix(in srgb, #10b981 26%, var(--border-color) 74%);background:linear-gradient(135deg, color-mix(in srgb, #10b981 18%, var(--bg-card) 82%), color-mix(in srgb, #38bdf8 8%, var(--bg-card) 92%));color:#10b981;border-radius:18px;width:58px;height:58px;box-shadow:0 14px 30px #10b9812e}.admin-classrooms-page .page-header-bar__title{letter-spacing:0;font-size:30px;line-height:1.15}.admin-classrooms-page .page-header-bar__subtitle{color:var(--text-secondary);margin-top:6px;font-size:14px;font-weight:700}.admin-classrooms-command{color:#f8fafc;box-shadow:var(--shadow-lg);background:radial-gradient(circle at 86% 10%,#10b98133,#0000 34%),linear-gradient(135deg,#111827 0%,#030712 100%),#020617;border:1px solid #ffffff14;border-radius:32px;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);gap:22px;padding:34px;display:grid;position:relative;overflow:hidden}.admin-classrooms-command:before{content:"";pointer-events:none;background-image:linear-gradient(#94a3b814 1px,#0000 1px),linear-gradient(90deg,#94a3b814 1px,#0000 1px);background-size:28px 28px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(90deg,#000000b3,#0000 72%);mask-image:linear-gradient(90deg,#000000b3,#0000 72%)}.admin-classrooms-command:after{content:"";pointer-events:none;background:radial-gradient(circle,#10b9813d,#0000 66%);border:1px solid #10b9814d;border-radius:999px;width:260px;height:260px;position:absolute;top:-110px;right:-80px}.admin-classrooms-command__copy,.admin-classrooms-command__stats{z-index:1;position:relative}.admin-classrooms-command__eyebrow{color:#6ee7b7;letter-spacing:0;text-transform:uppercase;background:#0f172a7a;border:1px solid #6ee7b747;border-radius:999px;align-items:center;gap:8px;margin-bottom:10px;padding:7px 10px;font-size:11px;font-weight:900;display:inline-flex}.admin-classrooms-command h2{color:#fff;letter-spacing:0;max-width:720px;margin:0;font-size:36px;font-weight:900;line-height:1.05}.admin-classrooms-command p{color:#94a3b8;max-width:720px;margin:8px 0 0;font-size:15px;line-height:1.5}.admin-classrooms-command__stats{grid-template-columns:1fr;gap:12px;display:grid}.admin-classrooms-command__stat{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ffffff0d;border:1px solid #ffffff1a;border-radius:18px;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;min-height:64px;padding:14px 16px;display:grid;box-shadow:inset 0 1px #ffffff0f}.admin-classrooms-command__stat svg{color:#6ee7b7}.admin-classrooms-command__stat span{color:#cbd5e1;font-size:12px;font-weight:800}.admin-classrooms-command__stat strong{color:#fff;font-size:26px;font-weight:900}.admin-classrooms-surface{box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-color:var(--dashboard-hero-border)!important;background:radial-gradient(circle at 90% 0%, color-mix(in srgb, var(--primary) 10%, transparent), transparent 28%), var(--dashboard-kpi-bg)!important}.admin-classrooms-page .department-overview-card--admin,.dean-classrooms-page .department-overview-card--admin{border-color:color-mix(in srgb, var(--classroom-accent) 34%, var(--border-color) 66%);background:radial-gradient(circle at 88% 10%, color-mix(in srgb, var(--classroom-accent) 22%, transparent), transparent 34%), linear-gradient(145deg, color-mix(in srgb, var(--bg-card) 78%, var(--classroom-accent) 22%), var(--bg-card) 72%), var(--bg-card);box-shadow:0 18px 44px color-mix(in srgb, var(--classroom-accent) 12%, transparent);border-radius:24px;position:relative;overflow:hidden}.admin-classrooms-page .department-overview-card--admin:before,.dean-classrooms-page .department-overview-card--admin:before{content:"";background:var(--classroom-accent);width:7px;position:absolute;inset:0 auto 0 0}.admin-classrooms-page .department-overview-card--admin:after,.dean-classrooms-page .department-overview-card--admin:after{content:"";background:radial-gradient(circle, color-mix(in srgb, var(--classroom-accent) 24%, transparent), transparent 68%);pointer-events:none;border-radius:999px;width:112px;height:112px;position:absolute;top:-36px;right:-36px}.admin-classrooms-page .department-overview-card--admin:hover,.dean-classrooms-page .department-overview-card--admin:hover{border-color:color-mix(in srgb, var(--classroom-accent) 58%, var(--border-color) 42%);box-shadow:0 24px 56px color-mix(in srgb, var(--classroom-accent) 18%, transparent)}.admin-classrooms-page .department-overview-card--admin .dept-tag,.dean-classrooms-page .department-overview-card--admin .dept-tag{background:color-mix(in srgb, var(--classroom-accent) 16%, var(--bg-card) 84%);border-color:color-mix(in srgb, var(--classroom-accent) 38%, var(--border-color) 62%);color:var(--classroom-accent);border-radius:14px}.admin-classrooms-page .department-overview-card--admin:hover .dept-tag,.dean-classrooms-page .department-overview-card--admin:hover .dept-tag{background:var(--classroom-accent);border-color:var(--classroom-accent);color:#fff}.admin-classrooms-page .department-overview-card--admin .department-overview-card__open,.admin-classrooms-page .department-overview-card--admin .inspect-chevron,.dean-classrooms-page .department-overview-card--admin .department-overview-card__open,.dean-classrooms-page .department-overview-card--admin .inspect-chevron{color:var(--classroom-accent)}.admin-classrooms-page .department-overview-card--admin .department-overview-card__stat,.dean-classrooms-page .department-overview-card--admin .department-overview-card__stat{border-color:color-mix(in srgb, var(--classroom-accent) 18%, var(--border-color) 82%);background:color-mix(in srgb, var(--classroom-accent) 8%, var(--bg-card) 92%);border-radius:16px}.admin-classrooms-section-head{border:1px solid color-mix(in srgb, var(--primary) 12%, var(--border-color) 88%);background:radial-gradient(circle at 88% 0%, #10b9811f, transparent 30%), linear-gradient(135deg, color-mix(in srgb, var(--bg-card) 90%, var(--primary) 10%), var(--bg-card) 72%), var(--bg-card);border-radius:22px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin:-2px -2px 20px;padding:18px;display:flex}.admin-classrooms-section-copy{min-width:min(100%,260px)}.admin-classrooms-section-title-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.admin-classrooms-current-dept{border:1px solid color-mix(in srgb, var(--classroom-accent) 38%, var(--border-color) 62%);background:color-mix(in srgb, var(--classroom-accent) 14%, var(--bg-card) 86%);min-width:48px;min-height:28px;color:var(--classroom-accent);border-radius:14px;justify-content:center;align-items:center;padding:6px 10px;font-size:12px;font-weight:900;line-height:1.2;display:inline-flex}.admin-classrooms-controls{flex-wrap:wrap;flex:420px;justify-content:flex-end;align-items:center;gap:10px;display:flex}.admin-classrooms-search{flex:260px;min-width:min(100%,240px);max-width:420px;display:block;position:relative}.admin-classrooms-search input,.admin-classrooms-controls select.form-control{box-shadow:inset 0 1px #ffffff4d;border-color:color-mix(in srgb, var(--primary) 14%, var(--border-color) 86%)!important;background:color-mix(in srgb, var(--bg-card) 94%, var(--bg-secondary) 6%)!important;border-radius:999px!important;height:42px!important}.admin-classrooms-search input:focus,.admin-classrooms-controls select.form-control:focus{border-color:color-mix(in srgb, var(--primary) 48%, var(--border-color) 52%)!important;box-shadow:0 0 0 3px color-mix(in srgb, var(--primary) 14%, transparent)!important}.admin-classrooms-clear-btn{border:1px solid color-mix(in srgb, var(--primary) 22%, var(--border-color) 78%);background:color-mix(in srgb, var(--primary) 8%, var(--bg-card) 92%);height:42px;color:var(--primary);font:inherit;cursor:pointer;border-radius:999px;padding:0 15px;font-size:13px;font-weight:900}.admin-classrooms-clear-btn:hover{border-color:color-mix(in srgb, var(--primary) 48%, var(--border-color) 52%);background:color-mix(in srgb, var(--primary) 14%, var(--bg-card) 86%)}.admin-classrooms-table-wrap{border:1px solid var(--dashboard-hero-border);background:var(--dashboard-kpi-bg);box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:22px;overflow:auto}.admin-classrooms-table{border-collapse:separate;border-spacing:0}.admin-classrooms-table thead th{z-index:2;background:color-mix(in srgb, var(--bg-card) 84%, var(--bg-secondary) 16%);border-bottom-color:color-mix(in srgb, var(--primary) 14%, var(--border-color) 86%);white-space:nowrap;position:sticky;top:0}.admin-classrooms-row{--row-accent:var(--classroom-accent);position:relative}.admin-classrooms-row td{border-bottom:1px solid color-mix(in srgb, var(--row-accent) 10%, var(--border-color) 90%);background:linear-gradient(90deg, color-mix(in srgb, var(--row-accent) 7%, transparent), transparent 42%), color-mix(in srgb, var(--bg-card) 92%, transparent);transition:background .16s,border-color .16s,transform .16s}.admin-classrooms-row td:first-child{border-left:6px solid var(--row-accent)}.admin-classrooms-row:hover td{background:linear-gradient(90deg, color-mix(in srgb, var(--row-accent) 14%, transparent), transparent 58%), color-mix(in srgb, var(--bg-card) 90%, var(--row-accent) 10%)}.admin-classrooms-code,.admin-classrooms-dept-chip,.admin-classrooms-year-pill{white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;font-weight:900;display:inline-flex}.admin-classrooms-code{border:1px solid color-mix(in srgb, var(--row-accent) 42%, var(--border-color) 58%);background:color-mix(in srgb, var(--row-accent) 12%, var(--bg-card) 88%);color:color-mix(in srgb, var(--row-accent) 84%, var(--text-main) 16%);padding:7px 11px;font-size:13px}.admin-classrooms-name-cell{flex-wrap:wrap;align-items:center;gap:10px;min-width:220px;display:flex}.admin-classrooms-dept-chip{background:var(--row-accent);color:#fff;min-width:44px;min-height:30px;box-shadow:0 8px 16px color-mix(in srgb, var(--row-accent) 18%, transparent);border-radius:12px;padding:7px 10px;font-size:11px;line-height:1.15}.admin-classrooms-year-pill{border:1px solid color-mix(in srgb, var(--row-accent) 28%, var(--border-color) 72%);background:color-mix(in srgb, var(--row-accent) 8%, var(--bg-card) 92%);min-width:72px;color:var(--text-secondary);padding:6px 10px;font-size:12px}.admin-classrooms-student-pill{border:1px solid color-mix(in srgb, var(--row-accent) 28%, var(--border-color) 72%);background:color-mix(in srgb, var(--row-accent) 10%, var(--bg-card) 90%);min-width:42px;height:32px;color:var(--text-main);border-radius:999px;justify-content:center;align-items:center;padding:0 10px;font-weight:900;display:inline-flex}.admin-classrooms-open-btn{border-color:color-mix(in srgb, var(--row-accent) 26%, var(--border-color) 74%)!important;background:color-mix(in srgb, var(--row-accent) 12%, var(--bg-card) 88%)!important;color:color-mix(in srgb, var(--row-accent) 78%, var(--text-main) 22%)!important;border-radius:999px!important;font-weight:900!important}.admin-classrooms-open-btn:hover{background:var(--row-accent)!important;border-color:var(--row-accent)!important;color:#fff!important}.admin-classrooms-empty{border:1px dashed color-mix(in srgb, var(--primary) 28%, var(--border-color) 72%);background:color-mix(in srgb, var(--bg-card) 92%, var(--primary) 8%);min-height:220px;color:var(--text-mute);text-align:center;border-radius:24px;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:34px;display:flex}.admin-classrooms-empty svg{color:var(--primary)}.admin-classrooms-empty strong{color:var(--text-main);font-size:16px;font-weight:900}.admin-classrooms-empty span{font-size:13px}@media (width<=820px){.admin-classrooms-command{grid-template-columns:1fr}}@media (width<=640px){.admin-classrooms-command{padding:18px}.admin-classrooms-command h2{font-size:26px}.admin-classrooms-name-cell{min-width:180px}.admin-classrooms-section-head{padding:12px}.admin-classrooms-controls,.admin-classrooms-search{flex-basis:100%;max-width:none}}.classrooms-overview__feedback.is-error{color:var(--danger)}.classrooms-overview__feedback-note{font-size:13px}@media (width<=900px){.classrooms-overview__summary{gap:10px}.classrooms-overview__stats{grid-template-columns:repeat(2,minmax(0,1fr))}.classrooms-overview__toolbar-grid{grid-template-columns:1fr}}@media (width<=640px){.classrooms-overview__summary,.classrooms-overview__toolbar,.classrooms-overview__card{padding:12px}.classrooms-overview__stats{scrollbar-width:none;-webkit-overflow-scrolling:touch;gap:8px;padding-bottom:4px;overflow-x:auto;display:flex!important}.classrooms-overview__stats::-webkit-scrollbar{display:none}.classrooms-overview__stat{flex:0 0 130px;min-width:120px}.classrooms-overview__grid{gap:8px;grid-template-columns:repeat(2,1fr)!important}.classrooms-overview__card-subtitle,.classrooms-overview__card-meta{display:none}.classrooms-overview__card-metrics{grid-template-columns:1fr}.classrooms-overview__card-code{letter-spacing:.06em;font-size:13px}.classrooms-overview__filters{gap:8px;grid-template-columns:1fr!important}.classrooms-overview__select,.classrooms-overview__clear-btn{width:100%;min-height:40px}.classrooms-overview__filter-label{font-size:10px}.classrooms-overview__toolbar-meta,.classrooms-overview__cards-head{flex-direction:column;align-items:flex-start}.classrooms-overview__pagination{flex-direction:column;align-items:stretch}.classrooms-overview__page-btn,.classrooms-overview__page-status,.classrooms-overview__page-number-group{text-align:center;justify-content:center;width:100%}.classrooms-overview__badge{white-space:normal;text-align:center}}.admin-users-page{flex-direction:column;gap:22px;display:flex}.admin-users-page .page-header-bar{border:1px solid var(--dashboard-hero-border);background:radial-gradient(circle at 85% 8%, color-mix(in srgb, var(--primary) 18%, transparent), transparent 34%), var(--dashboard-kpi-bg);box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:28px;align-items:center;padding:28px 30px;position:relative;overflow:hidden}.admin-users-page .page-header-bar:before{content:"";background:linear-gradient(#10b981,#38bdf8);width:8px;position:absolute;inset:0 auto 0 0}.admin-users-page .page-header-bar:after{content:"";background:linear-gradient(90deg,#0000,#10b9816b,#0000);height:1px;position:absolute;bottom:0;left:18px;right:18px}.admin-users-page .page-header-bar__lead{z-index:1;gap:14px;position:relative}.admin-users-page .page-header-bar__icon-wrap{border:1px solid color-mix(in srgb, #10b981 26%, var(--border-color) 74%);background:linear-gradient(135deg, color-mix(in srgb, #10b981 18%, var(--bg-card) 82%), color-mix(in srgb, #38bdf8 8%, var(--bg-card) 92%));color:#10b981;border-radius:18px;width:58px;height:58px;box-shadow:0 14px 30px #10b9812e}.admin-users-page .page-header-bar__title{letter-spacing:0;font-size:30px;line-height:1.15}.admin-users-page .page-header-bar__subtitle{color:var(--text-secondary);margin-top:6px;font-size:14px;font-weight:700}.admin-users-nav-wrap{-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:6px;display:flex;overflow-x:auto}.admin-users-nav-wrap::-webkit-scrollbar{display:none}.admin-users-nav-tab{color:var(--text-mute);white-space:nowrap;border:1px solid #0000;border-radius:16px;flex:1 0 auto;justify-content:center;align-items:center;gap:8px;padding:11px 16px;font-size:13px;font-weight:700;text-decoration:none;transition:transform .18s,border-color .18s,background .18s,color .18s;display:inline-flex}.admin-users-nav-tab:hover{border-color:color-mix(in srgb, var(--primary) 14%, var(--border-color));background:color-mix(in srgb, var(--primary) 5%, transparent);color:var(--text-main);transform:translateY(-1px)}.admin-users-nav-tab.is-active{border-color:color-mix(in srgb, var(--primary) 24%, var(--border-color));background:linear-gradient(135deg, color-mix(in srgb, #10b981 14%, var(--bg-card) 86%), color-mix(in srgb, #38bdf8 7%, var(--bg-card) 93%));color:var(--primary);box-shadow:0 14px 30px color-mix(in srgb, var(--primary) 10%, transparent)}@media (width<=600px){.admin-users-select{flex:calc(50% - 6px);min-width:0}.admin-users-toolbar{gap:8px}}.admin-users-header{flex-direction:column;gap:16px;margin-bottom:24px;display:flex}.admin-users-header__meta{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;display:grid}.admin-users-surface{background:linear-gradient(180deg, color-mix(in srgb, var(--bg-card) 94%, var(--primary) 6%), var(--bg-card));border:1px solid var(--border-color);box-shadow:var(--shadow-sm);border-radius:18px}.admin-users-page .admin-users-surface,.admin-users-page .admin-users-table-shell{border-color:var(--dashboard-hero-border);background:linear-gradient(180deg, color-mix(in srgb, var(--bg-card) 96%, var(--primary) 4%), var(--bg-card));box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.admin-users-nav-shell{border-radius:22px;margin-bottom:0;padding:8px}.admin-users-command{color:#fff;background:radial-gradient(circle at 86% 8%,#10b9813d,#0000 34%),linear-gradient(135deg,#111827 0%,#030712 100%);border:1px solid #ffffff14;border-radius:30px;grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);gap:22px;padding:30px;display:grid;position:relative;overflow:hidden;box-shadow:0 24px 60px #02061738}.admin-users-command:before{content:"";pointer-events:none;background:linear-gradient(90deg,#10b9812e,#0000 36%),radial-gradient(circle at 10% 90%,#38bdf829,#0000 30%);position:absolute;inset:0}.admin-users-command__lead,.admin-users-command__stats{z-index:1;position:relative}.admin-users-command__eyebrow{color:#86efac;letter-spacing:.08em;text-transform:uppercase;background:#10b9811a;border:1px solid #10b98147;border-radius:999px;align-items:center;width:max-content;margin-bottom:10px;padding:5px 10px;font-size:11px;font-weight:900;display:inline-flex}.admin-users-command h2{color:#fff;margin:0;font-size:clamp(1.55rem,2vw,2.15rem);line-height:1.1}.admin-users-command p{color:#cbd5e1;max-width:560px;margin:10px 0 0;font-size:14px;font-weight:650}.admin-users-command__stats{grid-template-columns:repeat(3,minmax(0,1fr));align-self:stretch;gap:12px;display:grid}.admin-users-command__stat{background:#fff1;border:1px solid #ffffff1a;border-radius:20px;flex-direction:column;justify-content:space-between;gap:9px;min-width:0;padding:16px;display:flex;box-shadow:inset 0 1px #ffffff14}.admin-users-command__stat svg{color:#34d399}.admin-users-command__stat span{color:#cbd5e1;font-size:12px;font-weight:800}.admin-users-command__stat strong{color:#fff;font-size:30px;font-weight:950;line-height:1}.admin-users-filter-card{border-radius:24px;padding:16px}.faculty-page{flex-direction:column;gap:14px;display:flex}.dean-theme-page,.advisor-theme-page,.dept-head-theme-page{color:var(--text-main);flex-direction:column;gap:22px;display:flex}.dean-theme-page .page-header-bar,.advisor-theme-page .page-header-bar,.dept-head-theme-page .page-header-bar{border:1px solid var(--dashboard-hero-border);background:radial-gradient(circle at 85% 8%, color-mix(in srgb, var(--primary) 18%, transparent), transparent 34%), var(--dashboard-kpi-bg);box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:28px;align-items:center;padding:28px 30px;position:relative;overflow:hidden}.dean-theme-page .page-header-bar:before,.advisor-theme-page .page-header-bar:before,.dept-head-theme-page .page-header-bar:before{content:"";background:linear-gradient(#10b981,#38bdf8);width:8px;position:absolute;inset:0 auto 0 0}.dean-theme-page .page-header-bar:after,.advisor-theme-page .page-header-bar:after,.dept-head-theme-page .page-header-bar:after{content:"";background:linear-gradient(90deg,#0000,#10b9816b,#0000);height:1px;position:absolute;bottom:0;left:18px;right:18px}.dean-theme-page .page-header-bar__lead,.advisor-theme-page .page-header-bar__lead,.dept-head-theme-page .page-header-bar__lead{z-index:1;gap:14px;position:relative}.dean-theme-page .page-header-bar__icon-wrap,.advisor-theme-page .page-header-bar__icon-wrap,.dept-head-theme-page .page-header-bar__icon-wrap{border:1px solid color-mix(in srgb, #10b981 26%, var(--border-color) 74%);background:linear-gradient(135deg, color-mix(in srgb, #10b981 18%, var(--bg-card) 82%), color-mix(in srgb, #38bdf8 8%, var(--bg-card) 92%));color:#10b981;border-radius:18px;width:58px;height:58px;box-shadow:0 14px 30px #10b9812e}.dean-theme-page .page-header-bar__title,.advisor-theme-page .page-header-bar__title,.dept-head-theme-page .page-header-bar__title{letter-spacing:0;font-size:30px;line-height:1.15}.dean-theme-page .page-header-bar__subtitle,.advisor-theme-page .page-header-bar__subtitle,.dept-head-theme-page .page-header-bar__subtitle{color:var(--text-secondary);margin-top:6px;font-size:14px;font-weight:700}.dean-theme-page .admin-users-surface,.dean-theme-page .faculty-surface,.dean-theme-page .table-scroll-surface,.advisor-theme-page .admin-users-surface,.advisor-theme-page .faculty-surface,.advisor-theme-page .table-scroll-surface,.dept-head-theme-page .admin-users-surface,.dept-head-theme-page .faculty-surface,.dept-head-theme-page .table-scroll-surface{border-color:var(--dashboard-hero-border);background:linear-gradient(180deg, color-mix(in srgb, var(--bg-card) 96%, var(--primary) 4%), var(--bg-card));box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.dean-theme-page .faculty-toolbar-grid,.advisor-theme-page .faculty-toolbar-grid,.dept-head-theme-page .faculty-toolbar-grid{border:1px solid var(--dashboard-hero-border);background:radial-gradient(circle at 92% 0%, #10b9811a, transparent 28%), var(--dashboard-kpi-bg);box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-radius:24px;gap:12px;margin-bottom:0;padding:16px}.dean-users-page .faculty-toolbar-grid-5{grid-template-columns:1.45fr repeat(5,minmax(118px,1fr))}.dean-theme-page .classrooms-overview__search,.dean-theme-page .form-input,.advisor-theme-page .classrooms-overview__search,.advisor-theme-page .form-input,.dept-head-theme-page .classrooms-overview__search,.dept-head-theme-page .form-input{border-color:color-mix(in srgb, var(--primary) 14%, var(--border-color) 86%);background:color-mix(in srgb, var(--bg-card) 94%, var(--bg-secondary) 6%);border-radius:999px;min-height:42px;box-shadow:inset 0 1px #ffffff4d}.dean-theme-page .classrooms-overview__search:focus-within,.dean-theme-page .form-input:focus,.advisor-theme-page .classrooms-overview__search:focus-within,.advisor-theme-page .form-input:focus,.dept-head-theme-page .classrooms-overview__search:focus-within,.dept-head-theme-page .form-input:focus{border-color:color-mix(in srgb, var(--primary) 48%, var(--border-color) 52%);box-shadow:0 0 0 3px color-mix(in srgb, var(--primary) 14%, transparent)}.dean-theme-page .doc-register-table thead,.advisor-theme-page .doc-register-table thead,.dept-head-theme-page .doc-register-table thead{background:color-mix(in srgb, var(--primary) 8%, var(--bg-secondary) 92%)}.dean-theme-page .doc-register-table tbody tr,.advisor-theme-page .doc-register-table tbody tr,.dept-head-theme-page .doc-register-table tbody tr{transition:background .16s,transform .16s}.dean-theme-page .doc-register-table tbody tr:hover,.advisor-theme-page .doc-register-table tbody tr:hover,.dept-head-theme-page .doc-register-table tbody tr:hover{background:color-mix(in srgb, var(--primary) 5%, transparent)}.dean-theme-page .active-filter-bar,.advisor-theme-page .active-filter-bar,.dept-head-theme-page .active-filter-bar{margin-top:-4px}.dean-courses-page.course-browser,.advisor-courses-page.course-browser,.dept-head-courses-page.course-browser{gap:22px}.dean-courses-page .faculty-courses-grid,.advisor-courses-page .faculty-courses-grid,.dept-head-courses-page .faculty-courses-grid{gap:18px}.dean-dashboard-page{gap:22px}.dean-classrooms-page .admin-classrooms-command,.dean-classrooms-page .admin-classrooms-surface,.dept-head-classrooms-page .admin-classrooms-surface{box-shadow:var(--shadow-soft)}.dept-head-scope-lock{border:1px solid color-mix(in srgb, var(--classroom-accent) 32%, var(--border-color) 68%);background:radial-gradient(circle at 90% 0%, color-mix(in srgb, var(--classroom-accent) 16%, transparent), transparent 42%), color-mix(in srgb, var(--bg-card) 90%, var(--classroom-accent) 10%);width:fit-content;max-width:100%;min-height:40px;color:var(--text-secondary);box-shadow:var(--shadow-soft);border-radius:999px;flex-wrap:wrap;align-items:center;gap:8px;padding:8px 13px;display:inline-flex}.dept-head-scope-lock svg{color:var(--classroom-accent)}.dept-head-scope-lock span{color:var(--text-mute);text-transform:uppercase;font-size:11px;font-weight:900}.dept-head-scope-lock strong{color:var(--text-main);font-size:13px;font-weight:900}.dept-head-users-page .dept-head-scope-lock{margin-top:-8px}.dept-head-student-profile-modal{border:1px solid var(--dashboard-hero-border);background:radial-gradient(circle at 84% 0%, #10b9811f, transparent 36%), linear-gradient(180deg, color-mix(in srgb, var(--bg-card) 96%, var(--primary) 4%), var(--bg-card))!important;box-shadow:0 32px 90px #0206173d!important}.dept-head-student-profile-modal>div:first-of-type{background:radial-gradient(circle at 90% 10%, #38bdf81f, transparent 36%), linear-gradient(135deg, color-mix(in srgb, #10b981 14%, var(--bg-card) 86%), var(--bg-card) 100%)!important;border-bottom-color:var(--dashboard-hero-border)!important}.dept-head-student-profile-modal .profile-progress-wrap{border:1px solid var(--dashboard-hero-border);background:color-mix(in srgb, var(--bg-card) 96%, var(--primary) 4%);box-shadow:var(--shadow-soft);border-radius:20px}@media (width<=1100px){.dean-users-page .faculty-toolbar-grid-5{grid-template-columns:1fr 1fr}}@media (width<=760px){.dean-theme-page .page-header-bar,.advisor-theme-page .page-header-bar,.dept-head-theme-page .page-header-bar{border-radius:24px;padding:22px}.dean-theme-page .page-header-bar__icon-wrap,.advisor-theme-page .page-header-bar__icon-wrap,.dept-head-theme-page .page-header-bar__icon-wrap{width:50px;height:50px}.dean-theme-page .page-header-bar__title,.advisor-theme-page .page-header-bar__title,.dept-head-theme-page .page-header-bar__title{font-size:25px}.dean-users-page .faculty-toolbar-grid-5{grid-template-columns:1fr}}.faculty-surface{background:var(--bg-card);padding:14px}.faculty-toolbar-grid{gap:10px;margin-bottom:8px;display:grid}.faculty-toolbar-grid-2{grid-template-columns:minmax(0,1fr) 220px}.faculty-toolbar-grid-4{grid-template-columns:1.4fr repeat(3,minmax(120px,1fr))}.faculty-toolbar-grid-5{grid-template-columns:1.4fr repeat(4,minmax(120px,1fr))}.faculty-card-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px;display:grid}.faculty-card{padding:14px}.faculty-two-col{grid-template-columns:1.4fr 1fr;gap:12px;display:grid}.faculty-kpi-strip .kpi-card{border:1px solid var(--border-color)}.faculty-stats-grid{grid-template-columns:repeat(4,minmax(140px,1fr));gap:10px;margin-bottom:14px;display:grid}@media (width<=1024px){.faculty-toolbar-grid-4,.faculty-toolbar-grid-5,.faculty-two-col,.faculty-stats-grid{grid-template-columns:1fr 1fr}}@media (width<=760px){.faculty-toolbar-grid-2,.faculty-toolbar-grid-4,.faculty-toolbar-grid-5,.faculty-two-col,.faculty-stats-grid{grid-template-columns:1fr}.faculty-toolbar-grid-2>*,.faculty-toolbar-grid-4>*,.faculty-toolbar-grid-5>*{width:100%;min-width:0}}.trend-indicator{align-items:center;gap:4px;font-size:12px;font-weight:600;display:inline-flex}.trend-indicator--up{color:var(--success)}.trend-indicator--down{color:var(--danger)}.trend-indicator--flat{color:var(--text-secondary)}.alert-summary-card__count{margin:8px 0 10px;font-weight:600}.alert-summary-card__empty{color:var(--text-secondary);font-size:13px}.alert-summary-card__list{color:var(--text-secondary);gap:6px;margin:0;padding-left:18px;font-size:13px;display:grid}.stat-comparison-card__list{gap:10px;display:grid}.stat-comparison-card__item{gap:6px;display:grid}.stat-comparison-card__top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;font-size:13px;display:flex}.stat-comparison-card__bar{background:var(--bg-secondary);border-radius:99px;height:7px;overflow:hidden}.stat-comparison-card__bar-fill{background:linear-gradient(90deg, var(--primary), var(--accent-orange));border-radius:99px;height:100%}.admin-users-metric{border:1px solid var(--border-color);text-align:left;color:inherit;background:0 0;border-radius:16px;width:100%;padding:16px 18px}.admin-users-metric.is-clickable{cursor:pointer;transition:transform .15s,box-shadow .15s,border-color .15s}.admin-users-metric.is-clickable:hover{box-shadow:var(--shadow-md);border-color:color-mix(in srgb, var(--metric-accent) 30%, var(--border-color));transform:translateY(-2px)}.admin-users-metric__label{color:var(--text-secondary);align-items:center;gap:8px;margin-bottom:10px;font-size:12px;font-weight:700;display:flex}.admin-users-metric__icon{color:var(--metric-accent);align-items:center;display:flex}.admin-users-metric__value{color:var(--metric-accent);font-size:clamp(1.7rem,2vw,2.15rem);font-weight:800;line-height:1}.admin-users-metric__detail{color:var(--text-mute);margin-top:8px;font-size:12px;font-weight:600}.admin-users-toolbar{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.admin-users-search{border:1px solid var(--border-color);background:linear-gradient(180deg, color-mix(in srgb, var(--bg-card) 84%, var(--primary) 4%), var(--bg-secondary));min-width:220px;color:var(--text-mute);border-radius:16px;flex:280px;align-items:center;gap:8px;padding:10px 12px;transition:border-color .18s,box-shadow .18s,background .18s;display:flex}.admin-users-page .admin-users-search:focus-within{border-color:color-mix(in srgb, var(--primary) 34%, var(--border-color));box-shadow:0 0 0 4px color-mix(in srgb, var(--primary) 10%, transparent)}.admin-users-search input{min-width:0;color:var(--text-main);background:0 0;border:none;outline:none;flex:1;font-size:14px}.admin-users-search button{color:var(--text-mute);cursor:pointer;background:0 0;border:none;align-items:center;padding:0;display:inline-flex}.admin-users-select{border:1px solid var(--border-color);background:linear-gradient(180deg, color-mix(in srgb, var(--bg-card) 92%, var(--primary) 3%), var(--bg-card));width:auto;min-width:140px;color:var(--text-main);border-radius:16px;outline:none;padding:10px 12px;font-size:13px;transition:border-color .18s,box-shadow .18s}.admin-users-page .admin-users-select:focus{border-color:color-mix(in srgb, var(--primary) 34%, var(--border-color));box-shadow:0 0 0 4px color-mix(in srgb, var(--primary) 10%, transparent)}.admin-users-table-shell{background:var(--bg-card);border:1px solid var(--border-color);box-shadow:var(--shadow-sm);border-radius:24px;overflow:hidden}.admin-users-page .admin-users-table-shell table thead{background:linear-gradient(180deg, color-mix(in srgb, var(--bg-card) 84%, var(--primary) 8%), var(--bg-secondary))!important}.admin-users-page .admin-users-table-shell tbody tr{transition:background .16s}.admin-users-page .admin-users-table-shell tbody tr:hover{background:color-mix(in srgb, var(--primary) 4%, transparent)}.admin-users-table-scroll{overflow-x:auto}.admin-users-th{text-align:left;color:var(--text-mute);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;padding:12px 16px;font-size:11px;font-weight:700}.admin-users-empty{text-align:center;color:var(--text-mute);padding:44px 24px}.admin-users-empty__icon{opacity:.24;justify-content:center;margin:0 auto 12px;display:flex}.admin-users-empty__title{color:var(--text-main);font-size:15px;font-weight:700}.admin-users-empty__body{margin-top:6px;font-size:13px}.admin-users-entity{align-items:center;gap:12px;display:flex}.admin-users-entity__avatar{background:color-mix(in srgb, var(--entity-accent) 12%, transparent);border:1px solid color-mix(in srgb, var(--entity-accent) 24%, var(--border-color));width:38px;height:38px;color:var(--entity-accent);border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;font-size:14px;font-weight:850;display:flex}.admin-users-entity__body{min-width:0}.admin-users-entity__name-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.admin-users-entity__name{color:var(--text-main);font-size:14px;font-weight:700}.admin-users-entity__subtext{color:var(--text-mute);margin-top:2px;font-size:11px}.admin-users-chip{background:var(--chip-bg);border:1px solid color-mix(in srgb, var(--chip-accent) 24%, var(--border-color));color:var(--chip-accent);border-radius:999px;align-items:center;gap:4px;padding:4px 10px;font-size:11px;font-weight:800;display:inline-flex}.admin-users-action{border:1px solid var(--border-color);background:linear-gradient(180deg, color-mix(in srgb, var(--bg-card) 86%, var(--primary) 5%), var(--bg-secondary));min-width:34px;height:34px;color:var(--text-secondary);cursor:pointer;border-radius:14px;justify-content:center;align-items:center;gap:6px;padding:0 10px;transition:transform .15s,border-color .15s,background .15s,color .15s;display:inline-flex}.admin-users-action:hover:not(:disabled){transform:translateY(-1px)}.admin-users-action:disabled{opacity:.5;cursor:not-allowed}.admin-users-action--default:hover:not(:disabled){border-color:color-mix(in srgb, var(--primary) 24%, var(--border-color));background:color-mix(in srgb, var(--primary) 9%, var(--bg-card));color:var(--primary)}.admin-users-action--success{background:var(--bg-success-subtle);border-color:var(--border-success);color:var(--success)}.admin-users-action--danger{background:var(--bg-danger-subtle);border-color:var(--border-danger);color:var(--danger)}.admin-users-action--warning{background:color-mix(in srgb, var(--primary) 10%, var(--bg-card));border-color:color-mix(in srgb, var(--primary) 28%, var(--border-color));color:var(--primary)}.admin-users-view-toggle{border:1px solid var(--border-color);background:color-mix(in srgb, var(--bg-secondary) 82%, var(--primary) 5%);border-radius:16px;gap:4px;padding:4px;display:flex}.admin-users-view-toggle button{color:var(--text-mute);background:0 0;border:1px solid #0000;border-radius:12px;padding:7px 10px;transition:border-color .16s,background .16s,color .16s,transform .16s}.admin-users-view-toggle button:hover{color:var(--text-main);transform:translateY(-1px)}.admin-users-view-toggle button.is-active{border-color:color-mix(in srgb, var(--primary) 24%, var(--border-color));background:var(--bg-card);color:var(--primary);box-shadow:var(--shadow-sm)}.admin-users-role-card{border-radius:26px;overflow:hidden}.admin-users-role-card__header{background:radial-gradient(circle at 94% 0%, color-mix(in srgb, var(--role-accent) 14%, transparent), transparent 34%), linear-gradient(180deg, color-mix(in srgb, var(--bg-card) 82%, var(--role-accent) 7%), var(--bg-card));justify-content:space-between;align-items:center;gap:14px;padding:20px 22px;display:flex}.admin-users-role-card__header>.admin-users-action--warning{background:color-mix(in srgb, var(--interactive-accent) 10%, var(--bg-card));border-color:color-mix(in srgb, var(--interactive-accent) 28%, var(--border-color));color:var(--interactive-accent)}.admin-users-overview-row{border-top:1px solid var(--border-color);align-items:center;gap:14px;padding:14px 18px;transition:background .16s;display:flex}.admin-users-overview-row:hover{background:color-mix(in srgb, var(--primary) 4%, transparent)}.admin-users-overview-row__meta{color:var(--text-mute);flex-wrap:wrap;gap:8px;margin-top:4px;font-size:12px;display:flex}.admin-users-modal-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:999;background:#0f172a9e;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.admin-users-modal{background:var(--bg-card);border:1px solid var(--border-color);border-radius:24px;width:100%;max-height:min(90vh,860px);overflow:auto;box-shadow:0 32px 80px #0000003d}.admin-users-modal__header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:flex-start;gap:16px;padding:28px 28px 18px;display:flex}.admin-users-modal__title{color:var(--text-main);margin:0;font-size:20px;font-weight:800}.admin-users-modal__subtitle{color:var(--text-dim);margin:6px 0 0;font-size:13px}.admin-users-modal__close{border:1px solid var(--border-color);background:var(--bg-secondary);width:34px;height:34px;color:var(--text-mute);cursor:pointer;border-radius:999px;font-size:22px;line-height:1}.admin-users-modal__body{padding:24px 28px 28px}.admin-users-form-field{flex-direction:column;gap:6px;display:flex}.admin-users-form-field__label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;font-size:12px;font-weight:700}.admin-users-form-field__hint{color:var(--text-mute);margin:0;font-size:11px}.admin-users-form-error{color:#dc2626;background:#ef444414;border:1px solid #ef44442e;border-radius:10px;margin:0;padding:10px 12px;font-size:13px;font-weight:600}@media (width<=720px){.admin-users-page .page-header-bar{border-radius:24px;padding:22px}.admin-users-page .page-header-bar__icon-wrap{border-radius:16px;width:50px;height:50px}.admin-users-command{border-radius:26px;grid-template-columns:1fr;padding:24px}.admin-users-command__stats{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-users-role-card__header,.admin-users-overview-row{flex-direction:column;align-items:flex-start}.admin-users-overview-row{gap:12px}.admin-users-modal-backdrop{align-items:flex-end;padding:12px}.admin-users-modal{border-radius:22px 22px 0 0;max-height:92vh}.admin-users-modal__header,.admin-users-modal__body{padding-left:18px;padding-right:18px}.admin-users-metric{padding:14px 16px}}@media (width<=560px){.admin-users-command__stats{grid-template-columns:1fr}.admin-users-filter-card{border-radius:22px;padding:12px}.admin-users-view-toggle,.admin-users-view-toggle button{width:100%}.admin-users-view-toggle button{justify-content:center}}.animate-stagger>*{animation:.3s ease-out both fadeIn,.3s ease-out both slideUp}.animate-stagger>:first-child{animation-delay:0s}.animate-stagger>:nth-child(2){animation-delay:55ms}.animate-stagger>:nth-child(3){animation-delay:.11s}.animate-stagger>:nth-child(4){animation-delay:.165s}.animate-stagger>:nth-child(5){animation-delay:.22s}.animate-stagger>:nth-child(6){animation-delay:.275s}.animate-stagger>:nth-child(7){animation-delay:.33s}.animate-stagger>:nth-child(8){animation-delay:.385s}.dashboard-kpi-grid{grid-template-columns:1fr 1fr;gap:clamp(10px,2vw,20px);margin-bottom:clamp(24px,4vw,40px);display:grid}@media (width>=1200px){.dashboard-kpi-grid{grid-template-columns:repeat(4,1fr)}}.dashboard-announcements{border:1px solid var(--border-color);background:var(--bg-card);box-shadow:var(--shadow-sm);border-radius:14px;gap:14px;margin:0 0 28px;padding:16px;display:grid}.dashboard-announcements.is-important{border-color:color-mix(in srgb, var(--warning) 34%, var(--border-color))}.dashboard-announcements__header{justify-content:space-between;align-items:center;gap:14px;display:flex}.dashboard-announcements__title{align-items:center;gap:12px;min-width:0;display:flex}.dashboard-announcements__icon{width:38px;height:38px;color:var(--areca);background:color-mix(in srgb, var(--areca) 12%, var(--bg-secondary));border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.dashboard-announcements.is-important .dashboard-announcements__icon{color:var(--warning);background:color-mix(in srgb, var(--warning) 14%, var(--bg-card))}.dashboard-announcements h2{color:var(--text-main);margin:0;font-size:17px;line-height:1.25}.dashboard-announcements p{color:var(--text-secondary);margin:4px 0 0;font-size:13px;line-height:1.45}.dashboard-announcements__actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.dashboard-announcements__btn,.dashboard-announcements__read{border:1px solid var(--border-color);background:var(--bg-secondary);min-height:36px;color:var(--text-main);cursor:pointer;white-space:nowrap;border-radius:9px;justify-content:center;align-items:center;gap:6px;font-size:12px;font-weight:850;display:inline-flex}.dashboard-announcements__btn{padding:8px 11px}.dashboard-announcements__btn--primary{border-color:color-mix(in srgb, var(--areca) 35%, var(--border-color));background:var(--cta-bg);color:#fff}.dashboard-announcements__list{gap:8px;display:grid}.dashboard-announcements__item{border:1px solid var(--border-color);background:var(--bg-secondary);border-radius:12px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px;transition:all .2s;display:grid}.dashboard-announcements__item.is-important-item{border-color:color-mix(in srgb, var(--warning) 40%, var(--border-color));background:color-mix(in srgb, var(--warning) 6%, var(--bg-secondary))}.dashboard-announcements__item-copy{width:100%;min-width:0;color:inherit;cursor:pointer;text-align:left;background:0 0;border:0;padding:0;display:block}.dashboard-announcements__item-copy span{color:var(--text-secondary);text-transform:uppercase;letter-spacing:0;margin-bottom:5px;font-size:11px;font-weight:850;display:block}.dashboard-announcements__item-copy strong{color:var(--text-main);text-overflow:ellipsis;white-space:nowrap;font-size:14px;line-height:1.35;display:block;overflow:hidden}.dashboard-announcements__item-copy p{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.dashboard-announcements__read{color:var(--interactive-accent);padding:8px 10px}@media (width<=720px){.dashboard-announcements__header,.dashboard-announcements__item{grid-template-columns:1fr;align-items:stretch}.dashboard-announcements__header{flex-direction:column}.dashboard-announcements__actions{justify-content:stretch}.dashboard-announcements__btn,.dashboard-announcements__read{flex:1}}.notifications-page{flex-direction:column;gap:20px;max-width:1180px;margin:0 auto;display:flex}.notifications-hero{border:1px solid var(--border-color);background:linear-gradient(135deg, var(--bg-card) 0%, color-mix(in srgb, var(--areca) 2.5%, var(--bg-card)) 100%);box-shadow:var(--shadow-sm);border-radius:16px;justify-content:space-between;align-items:center;gap:18px;padding:24px;display:flex;position:relative;overflow:hidden}.notifications-hero:before{content:"";background:var(--areca);width:4px;height:100%;position:absolute;top:0;left:0}.notifications-hero__lead{align-items:center;gap:16px;min-width:0;display:flex}.notifications-hero__icon{width:50px;height:50px;color:var(--areca);background:color-mix(in srgb, var(--areca) 10%, var(--bg-secondary));box-shadow:0 4px 10px color-mix(in srgb, var(--areca) 15%, transparent);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;transition:transform .3s;display:flex}.notifications-hero:hover .notifications-hero__icon{transform:scale(1.06)rotate(-4deg)}.notifications-hero h1{color:var(--text-main);margin:0;font-size:24px;font-weight:800;line-height:1.2}.notifications-hero p{color:var(--text-secondary);margin:6px 0 0;font-size:14px}.notifications-hero__actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.notifications-btn{border:1px solid var(--border-color);background:var(--bg-card);min-height:40px;color:var(--text-main);cursor:pointer;border-radius:12px;align-items:center;gap:8px;padding:10px 16px;font-size:13px;font-weight:700;transition:all .2s cubic-bezier(.4,0,.2,1);display:inline-flex}.notifications-btn:disabled{opacity:.5;cursor:not-allowed}.notifications-btn:hover:not(:disabled){background:var(--bg-secondary);border-color:color-mix(in srgb, var(--text-main) 20%, var(--border-color));transform:translateY(-1px)}.notifications-btn--primary{border-color:color-mix(in srgb, var(--areca) 20%, var(--areca));background:var(--areca);color:#fff}.notifications-btn--primary:hover:not(:disabled){background:color-mix(in srgb, var(--areca) 85%, black);border-color:color-mix(in srgb, var(--areca) 85%, black);box-shadow:0 4px 12px color-mix(in srgb, var(--areca) 25%, transparent)}.notifications-btn--danger{border-color:color-mix(in srgb, #c0392b 35%, var(--border-color));background:color-mix(in srgb, #c0392b 12%, var(--bg-card));color:#c0392b}.notifications-btn--danger:hover:not(:disabled){color:#fff;background:#c0392b;border-color:#c0392b;box-shadow:0 4px 12px #c0392b40}.notifications-btn--compact{border-radius:9px;min-height:36px;padding:8px 14px;font-size:13px}.announcement-oversight__summary{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:16px;margin-bottom:24px;display:grid}.announcement-oversight__summary-item{border:1px solid var(--border-color);background:var(--bg-card);min-width:110px;color:var(--text-main);text-align:left;cursor:pointer;border-radius:16px;flex-direction:column;justify-content:center;gap:4px;padding:16px 20px;transition:all .25s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:hidden;box-shadow:0 4px 10px #00000005}.announcement-oversight__summary-item:before{content:"";width:4px;height:100%;transition:all .25s;position:absolute;top:0;left:0}.announcement-oversight__summary-item:hover{transform:translateY(-2px);box-shadow:0 6px 16px #0000000a}.announcement-oversight__summary-item--all:before{background:var(--primary)}.announcement-oversight__summary-item--all:hover{background:var(--bg-secondary);border-color:var(--primary)}.announcement-oversight__summary-item--all.is-active{border-color:var(--primary);background:color-mix(in srgb, var(--primary) 8%, var(--bg-card));box-shadow:0 4px 20px #05966926}.announcement-oversight__summary-item--pending:before{background:#f59e0b}.announcement-oversight__summary-item--pending:hover{background:var(--bg-secondary);border-color:#f59e0b}.announcement-oversight__summary-item--pending.is-active{background:#f59e0b14;border-color:#f59e0b;box-shadow:0 4px 20px #f59e0b26}.announcement-oversight__summary-item--pending strong{color:#d97706}.announcement-oversight__summary-item--published:before{background:#10b981}.announcement-oversight__summary-item--published:hover{background:var(--bg-secondary);border-color:#10b981}.announcement-oversight__summary-item--published.is-active{background:#10b98114;border-color:#10b981;box-shadow:0 4px 20px #10b98126}.announcement-oversight__summary-item--published strong{color:#059669}.announcement-oversight__summary-item--rejected:before{background:#ef4444}.announcement-oversight__summary-item--rejected:hover{background:var(--bg-secondary);border-color:#ef4444}.announcement-oversight__summary-item--rejected.is-active{background:#ef444414;border-color:#ef4444;box-shadow:0 4px 20px #ef444426}.announcement-oversight__summary-item--rejected strong{color:#dc2626}.announcement-oversight__summary-item--cancelled:before{background:#6b7280}.announcement-oversight__summary-item--cancelled:hover{background:var(--bg-secondary);border-color:#6b7280}.announcement-oversight__summary-item--cancelled.is-active{background:#6b728014;border-color:#6b7280;box-shadow:0 4px 20px #6b728026}.announcement-oversight__summary-item--cancelled strong{color:#4b5563}.announcement-oversight__summary-item strong{font-size:28px;font-weight:800;line-height:1}.announcement-oversight__summary-item span{color:var(--text-dim);text-transform:uppercase;letter-spacing:.05em;font-size:11px;font-weight:700}.announcement-oversight__table-wrap{border:1px solid var(--border-color);background:var(--bg-card);box-shadow:var(--shadow-sm);border-radius:14px;overflow-x:auto}.announcement-oversight__table{table-layout:fixed;border-collapse:collapse;width:100%;font-size:13px}.announcement-oversight__table th:first-child,.announcement-oversight__table td:first-child{width:25%}.announcement-oversight__table th:nth-child(2),.announcement-oversight__table td:nth-child(2){width:12%}.announcement-oversight__table th:nth-child(3),.announcement-oversight__table td:nth-child(3){width:15%}.announcement-oversight__table th:nth-child(4),.announcement-oversight__table td:nth-child(4){width:10%}.announcement-oversight__table th:nth-child(5),.announcement-oversight__table td:nth-child(5){width:11%}.announcement-oversight__table th:nth-child(6),.announcement-oversight__table td:nth-child(6){width:12%}.announcement-oversight__table th:nth-child(7),.announcement-oversight__table td:nth-child(7){width:15%}.announcement-oversight__table th,.announcement-oversight__table td{border-bottom:1px solid var(--border-color);text-align:left;vertical-align:middle;text-overflow:ellipsis;white-space:nowrap;padding:14px 16px;overflow:hidden}.announcement-oversight__table th{color:var(--text-main);background:color-mix(in srgb, var(--bg-secondary) 70%, var(--bg-card));text-transform:uppercase;letter-spacing:.05em;font-size:12px;font-weight:700}.announcement-oversight__table tr:last-child td{border-bottom:none}.announcement-oversight__title-btn{text-overflow:ellipsis;white-space:nowrap;max-width:100%;color:var(--text-main);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0;font-weight:700;transition:color .2s;display:block;overflow:hidden}.announcement-oversight__title-btn:hover{color:var(--areca)}.oversight-cell-publisher,.oversight-cell-audience{flex-direction:column;gap:3px;width:100%;display:flex;overflow:hidden}.oversight-cell-publisher strong,.oversight-cell-audience strong{color:var(--text-main);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:700;display:block;overflow:hidden}.oversight-sub-label{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:600;display:block;overflow:hidden}.oversight-title-cell{align-items:center;gap:8px;display:flex}.oversight-priority-badge{transform-origin:0;flex-shrink:0;transform:scale(.85)}.announcement-oversight__status{text-transform:uppercase;letter-spacing:.02em;border-radius:8px;padding:4px 10px;font-size:11px;font-weight:700;display:inline-flex}.announcement-oversight__status--pending{background:color-mix(in srgb, var(--areca) 10%, var(--bg-card));color:var(--areca);border:1px solid color-mix(in srgb, var(--areca) 20%, transparent)}.announcement-oversight__status--published{background:color-mix(in srgb, #2e7d32 10%, var(--bg-card));color:#2e7d32;border:1px solid #2e7d3233}.announcement-oversight__status--rejected,.announcement-oversight__status--cancelled{background:color-mix(in srgb, #c0392b 10%, var(--bg-card));color:#c0392b;border:1px solid #c0392b33}.announcement-oversight__actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.announcement-oversight-modal{z-index:80;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172a73;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.announcement-oversight-modal__panel{border:1px solid var(--border-color);background:var(--bg-card);width:min(100%,480px);box-shadow:var(--shadow-lg);border-radius:16px;padding:24px}.announcement-oversight-modal__header{justify-content:space-between;gap:12px;margin-bottom:20px;display:flex}.announcement-oversight-modal__header h3{color:var(--text-main);margin:0;font-size:18px;font-weight:800}.announcement-oversight-modal__header p{color:var(--text-secondary);margin:6px 0 0;font-size:13px}.announcement-oversight-modal__close{color:var(--text-secondary);cursor:pointer;background:0 0;border:0;border-radius:6px;justify-content:center;align-items:center;width:28px;height:28px;transition:all .2s;display:flex}.announcement-oversight-modal__close:hover{background:var(--bg-secondary);color:var(--text-main)}.announcement-oversight-modal__actions{justify-content:flex-end;gap:10px;margin-top:20px;display:flex}.notifications-composer{border:1px solid var(--border-color);background:var(--bg-card);box-shadow:var(--shadow-sm);border-radius:16px;padding:24px}.notifications-composer__header{border-bottom:1px solid var(--border-color);justify-content:space-between;gap:14px;margin-bottom:24px;padding-bottom:18px;display:flex}.notifications-composer__header h2{color:var(--text-main);margin:0;font-size:20px;font-weight:800}.notifications-composer__header p{color:var(--text-secondary);margin:6px 0 0;font-size:13px}.notifications-composer__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.notifications-field{flex-direction:column;gap:8px;display:flex}.notifications-field--span{grid-column:1/-1}.notifications-field span{color:var(--text-main);font-size:13px;font-weight:600}.notifications-field input,.notifications-field select,.notifications-field textarea{border:1px solid var(--border-color);background:var(--bg-secondary);width:100%;color:var(--text-main);font:inherit;border-radius:10px;outline:none;padding:10px 14px;font-size:13px;transition:all .2s cubic-bezier(.4,0,.2,1)}.notifications-field textarea{resize:vertical;min-height:140px;line-height:1.6}.notifications-field__people-select{min-height:180px}.notifications-field input:focus,.notifications-field select:focus,.notifications-field textarea:focus{border-color:color-mix(in srgb, var(--areca) 45%, var(--border-color));box-shadow:0 0 0 3px color-mix(in srgb, var(--areca) 12%, transparent);background:var(--bg-card)}.notifications-composer__error{border:1px solid var(--border-danger);background:var(--bg-danger-subtle);color:var(--danger);border-radius:10px;margin-top:16px;padding:12px 16px;font-size:13px;font-weight:700}.notifications-composer__actions{justify-content:flex-end;gap:10px;margin-top:20px;display:flex}.notifications-shell{border:1px solid var(--border-color);background:var(--bg-card);box-shadow:var(--shadow-sm);border-radius:16px;grid-template-columns:220px minmax(0,1fr);align-items:start;display:grid;overflow:hidden}.notifications-tabs{border-right:1px solid var(--border-color);background:color-mix(in srgb, var(--bg-card) 95%, var(--bg-secondary));flex-direction:column;gap:16px;min-height:100%;padding:16px 12px;display:flex}.notifications-tab-group{flex-direction:column;gap:4px;display:flex}.notifications-tab-group__title{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;-webkit-user-select:none;user-select:none;padding:0 14px 6px;font-size:11px;font-weight:800;display:block}.notifications-tab{width:100%;color:var(--text-secondary);text-align:left;white-space:nowrap;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:10px;align-items:center;gap:10px;padding:10px 14px;font-size:13px;font-weight:600;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex}.notifications-tab svg{flex-shrink:0;transition:transform .2s}.notifications-tab:hover{background:color-mix(in srgb, var(--text-main) 4%, transparent);color:var(--text-main)}.notifications-tab:hover svg{transform:scale(1.1)}.notifications-tab.is-active{background:color-mix(in srgb, var(--areca) 8%, var(--bg-card));border-color:color-mix(in srgb, var(--areca) 15%, var(--border-color));color:var(--interactive-accent);box-shadow:var(--shadow-sm);font-weight:700}.notifications-tab.is-active svg{color:var(--interactive-accent)}.notifications-viewbar{border-bottom:1px solid var(--border-color);background:color-mix(in srgb, var(--bg-card) 96%, var(--bg-secondary));justify-content:space-between;align-items:center;gap:16px;padding:20px 24px;display:flex}.notifications-viewbar h2{color:var(--text-main);margin:0;font-size:18px;font-weight:700;line-height:1.2}.notifications-viewbar p{color:var(--text-secondary);margin:6px 0 0;font-size:13px;line-height:1.4}.notifications-viewbar__badge{border:1px solid color-mix(in srgb, var(--warning) 35%, var(--border-color));background:color-mix(in srgb, var(--warning) 12%, var(--bg-card));color:var(--text-main);white-space:nowrap;border-radius:99px;align-items:center;gap:6px;padding:6px 12px;font-size:12px;font-weight:700;display:inline-flex}.notifications-viewbar__actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:inline-flex}.notifications-list{flex-direction:column;display:flex}.notifications-card{border-bottom:1px solid var(--border-color);background:var(--bg-card);grid-template-columns:minmax(0,1fr) auto;transition:all .2s cubic-bezier(.4,0,.2,1);display:grid;position:relative}.notifications-card:hover{background:color-mix(in srgb, var(--text-main) 1.5%, var(--bg-card));box-shadow:inset 3px 0 0 var(--areca)}.notifications-card--high:hover{box-shadow:inset 3px 0 0 var(--warning)}.notifications-card--critical:hover{box-shadow:inset 3px 0 0 var(--danger)}.notifications-card:last-child{border-bottom:none}.notifications-card.is-unread{background:color-mix(in srgb, var(--areca) 3%, var(--bg-card))}.notifications-card.is-unread:hover{background:color-mix(in srgb, var(--areca) 5%, var(--bg-card))}.notifications-card__main{text-align:left;cursor:pointer;background:0 0;border:none;grid-template-columns:4px minmax(0,1fr);gap:16px;width:100%;padding:20px 24px;display:grid}.notifications-card__status{background:var(--border-color);border-radius:99px;width:4px;min-height:100%;transition:transform .2s}.notifications-card:hover .notifications-card__status{transform:scaleY(1.05)}.notifications-card--high .notifications-card__status{background:var(--warning)}.notifications-card--critical .notifications-card__status{background:var(--danger)}.notifications-card__content{min-width:0}.notifications-card__meta{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:10px;display:flex}.notifications-card__tag{text-transform:uppercase;letter-spacing:.02em;border-radius:6px;align-items:center;padding:3px 8px;font-size:11px;font-weight:700;display:inline-flex}.notifications-card__tag--type{background:color-mix(in srgb, var(--text-secondary) 10%, var(--bg-secondary));color:var(--text-secondary)}.notifications-card__tag--priority-normal{background:color-mix(in srgb, var(--areca) 8%, var(--bg-secondary));color:var(--interactive-accent)}.notifications-card__tag--priority-low{background:var(--bg-secondary);color:var(--text-muted)}.notifications-card__tag--priority-high{background:color-mix(in srgb, var(--warning) 12%, var(--bg-card));color:var(--warning);border:1px solid color-mix(in srgb, var(--warning) 25%, transparent)}.notifications-card__tag--priority-critical{background:color-mix(in srgb, var(--danger) 10%, var(--bg-card));color:var(--danger);border:1px solid color-mix(in srgb, var(--danger) 25%, transparent)}.notifications-card__tag--pending{background:color-mix(in srgb, var(--areca) 10%, var(--bg-card));color:var(--areca);border:1px solid color-mix(in srgb, var(--areca) 20%, transparent)}.notifications-card__tag--unread{background:var(--cta-bg);color:#fff;box-shadow:0 2px 6px color-mix(in srgb, var(--areca) 25%, transparent);font-weight:800}.notifications-card__tag--rejected{background:color-mix(in srgb, #ef4444 10%, var(--bg-card));color:#ef4444;border:1px solid #ef444433}.notifications-card__tag--cancelled{background:color-mix(in srgb, #64748b 10%, var(--bg-card));color:#64748b;border:1px solid #64748b33}.notifications-status-filters{flex-wrap:wrap;gap:6px;display:flex}.notifications-status-filter{border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-dim);cursor:pointer;border-radius:20px;padding:5px 12px;font-size:12px;font-weight:600;transition:all .15s}.notifications-status-filter:hover{border-color:var(--primary);color:var(--primary)}.notifications-status-filter.is-active{background:var(--primary);border-color:var(--primary);color:#fff}.notifications-card__date{color:var(--text-muted);margin-left:auto;font-size:11px}.notifications-card h2{color:var(--text-main);margin:0;font-size:16px;font-weight:700;line-height:1.4}.notifications-card p{color:var(--text-secondary);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:8px 0 0;font-size:13px;line-height:1.55;display:-webkit-box;overflow:hidden}.notifications-card__action{color:var(--interactive-accent);text-transform:uppercase;letter-spacing:.04em;align-items:center;gap:4px;margin-top:12px;font-size:12px;font-weight:700;display:inline-flex}.notifications-card__tools{align-items:center;gap:6px;padding:16px 20px 16px 0;display:flex}.notifications-icon-btn{border:1px solid var(--border-color);background:var(--bg-card);width:36px;height:36px;color:var(--text-secondary);cursor:pointer;border-radius:9px;justify-content:center;align-items:center;transition:all .2s;display:inline-flex}.notifications-icon-btn:hover{color:var(--areca);border-color:color-mix(in srgb, var(--areca) 28%, var(--border-color));background:var(--bg-secondary)}.notifications-state{text-align:center;min-height:220px;color:var(--text-secondary);flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:28px;display:flex}.notifications-state strong{color:var(--text-main);font-size:16px}.notifications-state--error{color:var(--danger)}.notifications-main-content{flex-direction:column;grid-column:2;min-height:100%;display:flex}.notifications-composer__layout{grid-template-columns:1.15fr .85fr;gap:24px;display:grid}.notifications-composer__form-pane{flex-direction:column;gap:14px;display:flex}.notifications-composer__section{gap:12px;display:grid}.notifications-composer__section h3{color:var(--text-main);margin:0;font-size:14px;line-height:1.25}.notifications-composer__preview-pane{background:var(--bg-secondary);border-radius:12px;flex-direction:column;align-self:start;gap:16px;padding:18px;display:flex}.notifications-composer__preview-title{color:var(--text-main);align-items:center;gap:8px;margin:0 0 4px;font-size:14px;font-weight:800;display:flex}.notifications-composer__recipient-count{gap:7px;display:grid}.notifications-composer__recipient-count strong{color:var(--text-main);font-size:34px;line-height:1}.notifications-composer__recipient-count small{color:var(--text-muted);letter-spacing:0;text-transform:uppercase;font-size:11px;font-weight:800}.notifications-composer__recipient-count span{color:var(--text-secondary);font-size:13px;line-height:1.45}.notifications-composer__attribution{color:var(--text-secondary);margin:14px 0 0;font-size:13px;line-height:1.45}.notifications-composer__approval-hint{border:1px solid color-mix(in srgb, var(--areca) 28%, var(--border-color));background:color-mix(in srgb, var(--areca) 8%, var(--bg-card));color:var(--text-main);border-radius:10px;gap:10px;margin-top:16px;padding:12px;display:flex}.notifications-composer__approval-hint svg{color:var(--areca);flex-shrink:0;margin-top:2px}.notifications-composer__approval-hint strong{margin-bottom:4px;font-size:13px;display:block}.notifications-composer__approval-hint p{color:var(--text-secondary);margin:0;font-size:12px;line-height:1.45}.notifications-composer__approval-hint p+p{margin-top:4px}.announcement-reader{z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172a7a;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.announcement-reader__panel{border:1px solid var(--border-color);background:var(--bg-card);width:min(760px,100%);max-height:min(90vh,820px);box-shadow:var(--shadow-lg);border-radius:18px;flex-direction:column;display:flex;overflow:hidden}.announcement-reader__header{border-bottom:1px solid var(--border-color);background:color-mix(in srgb, var(--bg-card) 94%, var(--areca) 6%);justify-content:space-between;align-items:flex-start;gap:16px;padding:22px 24px;display:flex}.announcement-reader__heading{gap:9px;min-width:0;display:grid}.announcement-reader__priority{border:1px solid var(--border-color);background:var(--bg-card);width:fit-content;color:var(--text-secondary);text-transform:uppercase;border-radius:999px;padding:6px 9px;font-size:11px;font-weight:850;line-height:1}.announcement-reader__priority--high{border-color:color-mix(in srgb, var(--warning) 35%, var(--border-color));color:var(--warning)}.announcement-reader__priority--critical{border-color:color-mix(in srgb, var(--danger) 35%, var(--border-color));color:var(--danger)}.announcement-reader__heading h3{color:var(--text-main);margin:0;font-size:22px;line-height:1.3}.announcement-reader__meta{flex-wrap:wrap;gap:8px;display:flex}.announcement-reader__meta span{background:var(--bg-secondary);color:var(--text-secondary);border-radius:999px;padding:6px 9px;font-size:11px;font-weight:800;line-height:1}.announcement-reader__close{width:36px;height:36px;color:var(--text-secondary);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:10px;flex:none;justify-content:center;align-items:center;display:inline-flex}.announcement-reader__close:hover{border-color:var(--border-color);background:var(--bg-secondary);color:var(--text-main)}.announcement-reader__body{padding:24px;overflow-y:auto}.announcement-reader__body p{color:var(--text-main);white-space:pre-wrap;margin:0 0 16px;font-size:15px;line-height:1.8}.announcement-reader__body p:last-child{margin-bottom:0}.announcement-report{z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172a80;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.announcement-report__panel{background:var(--bg-card);border:1px solid var(--border-color);width:min(720px,100%);max-height:min(90vh,780px);box-shadow:var(--shadow-lg);border-radius:18px;flex-direction:column;display:flex;overflow:hidden}.announcement-report__header{border-bottom:1px solid var(--border-color);background:color-mix(in srgb, var(--bg-card) 94%, var(--primary) 6%);justify-content:space-between;align-items:center;gap:16px;padding:18px 22px;display:flex}.announcement-report__title{align-items:center;gap:12px;min-width:0;display:flex}.announcement-report__icon{background:var(--bg-primary-subtle);width:38px;height:38px;color:var(--primary);border-radius:12px;flex:none;justify-content:center;align-items:center;display:inline-flex}.announcement-report__title h3,.announcement-report__meta h4,.announcement-report__groups-head h4{color:var(--text-main);margin:0}.announcement-report__title h3{font-size:16px;line-height:1.25}.announcement-report__title p,.announcement-report__meta p{color:var(--text-secondary);margin:4px 0 0;font-size:13px;line-height:1.5}.announcement-report__close{width:34px;height:34px;color:var(--text-secondary);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:10px;flex:none;justify-content:center;align-items:center;display:inline-flex}.announcement-report__close:hover{background:var(--bg-secondary);border-color:var(--border-color);color:var(--text-main)}.announcement-report__body{flex-direction:column;gap:18px;padding:22px;display:flex;overflow-y:auto}.announcement-report__state,.announcement-report__error,.announcement-report__empty{border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-secondary);border-radius:14px;justify-content:center;align-items:center;gap:10px;padding:32px 20px;display:flex}.announcement-report__error{border-color:var(--border-danger);background:var(--bg-danger-subtle);color:var(--danger);justify-content:flex-start}.announcement-report__spinner{border:3px solid var(--border-color);border-left-color:var(--primary);border-radius:50%;width:28px;height:28px;animation:1s linear infinite announcement-report-spin}.announcement-report__meta,.announcement-report__groups{border:1px solid var(--border-color);background:var(--bg-secondary);border-radius:14px;gap:12px;padding:16px;display:grid}.announcement-report__chips,.announcement-report__group-metrics{flex-wrap:wrap;gap:8px;display:flex}.announcement-report__chips span,.announcement-report__group-metrics span{border:1px solid var(--border-color);background:var(--bg-card);color:var(--text-secondary);text-transform:uppercase;border-radius:999px;padding:6px 9px;font-size:11px;font-weight:800;line-height:1}.announcement-report__meta h4{font-size:16px;line-height:1.35}.announcement-report__meta p{white-space:pre-wrap}.announcement-report__metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.announcement-report__metrics div{border:1px solid var(--border-color);background:var(--bg-secondary);text-align:center;border-radius:14px;gap:6px;min-width:0;padding:15px 12px;display:grid}.announcement-report__metrics strong{color:var(--text-main);font-size:26px;line-height:1}.announcement-report__metrics span,.announcement-report__group span{color:var(--text-secondary)}.announcement-report__metrics span{text-transform:uppercase;font-size:11px;font-weight:800}.announcement-report__groups-head,.announcement-report__group{justify-content:space-between;align-items:center;gap:14px;display:flex}.announcement-report__groups-head h4{font-size:14px}.announcement-report__group-list{gap:8px;display:grid}.announcement-report__group{border:1px solid var(--border-color);background:var(--bg-card);border-radius:12px;padding:12px}.announcement-report__group strong{color:var(--text-main);font-size:14px;display:block}.announcement-report__group span{margin-top:3px;font-size:12px;display:inline-flex}@keyframes announcement-report-spin{to{transform:rotate(360deg)}}@media (width<=720px){.notifications-composer__layout{grid-template-columns:1fr;gap:16px}.notifications-composer__preview-pane{padding:12px}.notifications-hero{flex-direction:column;align-items:stretch}.notifications-hero__actions{justify-content:stretch}.notifications-btn{flex:1;justify-content:center}.announcement-report{padding:12px}.announcement-reader{align-items:stretch;padding:12px}.announcement-reader__panel{max-height:none}.announcement-reader__header,.announcement-reader__body{padding:16px}.announcement-reader__heading h3{font-size:18px}.announcement-report__header,.announcement-report__body{padding:14px}.announcement-report__metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.announcement-report__groups-head,.announcement-report__group{flex-direction:column;align-items:stretch}.notifications-shell{display:block}.notifications-tabs{border-right:none;border-bottom:1px solid var(--border-color);flex-direction:row;gap:16px;min-height:0;overflow-x:auto}.notifications-tab-group{flex-direction:row;align-items:center;gap:6px;margin-bottom:0;display:flex}.notifications-tab-group__title{display:none}.notifications-tab{text-align:center;width:auto}.notifications-viewbar{flex-direction:column;align-items:flex-start}.notifications-viewbar__actions{justify-content:stretch;width:100%}.notifications-composer__grid{grid-template-columns:1fr}.notifications-composer__actions{flex-direction:column-reverse}.notifications-card{grid-template-columns:1fr}.notifications-card__tools{padding:0 16px 16px 38px}}.vlp-container{max-width:860px;margin:0 auto;transition:max-width .35s cubic-bezier(.4,0,.2,1)}.vlp-container.focus-mode{max-width:100%}.vlp-breadcrumb{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:4px;margin-bottom:14px;font-size:12px;display:flex}.vlp-back-btn{color:var(--primary);cursor:pointer;background:0 0;border:none;align-items:center;gap:4px;padding:0;font-size:12px;font-weight:600;display:inline-flex}.vlp-back-btn:hover{text-decoration:underline}.vlp-bc-sep{color:var(--border);margin:0 1px}.vlp-bc-sit{text-overflow:ellipsis;white-space:nowrap;max-width:160px;overflow:hidden}.vlp-bc-current{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;max-width:200px;font-weight:600;overflow:hidden}.vlp-header{margin-bottom:16px}.vlp-header-badges{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:10px;display:flex}.vlp-skill-type-badge{letter-spacing:.06em;border-radius:99px;align-items:center;padding:4px 10px;font-size:11px;font-weight:800;display:inline-flex}.vlp-year-badge{color:var(--text-muted);font-size:12px;font-weight:600}.vlp-done-badge{color:var(--success);background:var(--success-light);border-radius:99px;align-items:center;gap:4px;padding:3px 10px;font-size:12px;font-weight:700;display:inline-flex}.vlp-preview-badge{color:#8b5cf6;background:#8b5cf61a;border-radius:99px;padding:3px 10px;font-size:11px;font-weight:700}.vlp-title{color:var(--text-main);margin-bottom:8px;font-size:clamp(18px,3vw,24px);font-weight:800;line-height:1.2}.vlp-meta-row{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.vlp-meta-item{color:var(--text-muted);align-items:center;gap:5px;font-size:13px;display:inline-flex}.vlp-meta-xp{color:var(--warning);font-weight:700}.vlp-meta-rewatch{color:#8b5cf6;font-size:12px}.vlp-video-wrapper{border-radius:var(--radius-lg);background:#0f172a;margin-bottom:20px;overflow:hidden;box-shadow:0 8px 32px #0000002e}.vlp-video-box{position:relative}.vlp-click-shield{z-index:2;cursor:pointer;background:0 0;position:absolute;inset:0}.vlp-click-shield.is-playing{cursor:default}.vlp-click-shield.is-disabled{cursor:wait}.vpb-wrapper{background:#1a2233;padding:12px 16px 8px;position:relative}.vpb-track{cursor:pointer;background:#ffffff1f;border-radius:99px;height:6px;transition:height .15s;position:relative}.vpb-wrapper:hover .vpb-track{height:8px}.vpb-fill-watched{background:var(--primary);pointer-events:none;border-radius:99px;height:100%;transition:width .3s linear}.vpb-cursor{background:var(--warning);pointer-events:none;border-radius:50%;width:14px;height:14px;transition:left .15s linear;animation:2s infinite vpb-pulse;position:absolute;top:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 3px #f59e0b4d}@keyframes vpb-pulse{0%,to{box-shadow:0 0 0 3px #f59e0b4d}50%{box-shadow:0 0 0 6px #f59e0b26}}.vpb-milestone{pointer-events:auto;cursor:help;border:2px solid #1a2233;border-radius:50%;width:12px;height:12px;transition:background .3s,transform .2s;position:absolute;top:50%;transform:translate(-50%,-50%)}.vpb-milestone.pending{background:#475569}.vpb-milestone.reached{background:var(--warning)}.vpb-milestone.passed{background:var(--success);transform:translate(-50%,-50%)scale(1.2)}.vpb-hover-time{color:#fff;pointer-events:none;white-space:nowrap;background:#0f172ae6;border-radius:6px;padding:3px 8px;font-size:11px;font-weight:700;position:absolute;bottom:28px;transform:translate(-50%)}.vpb-lock-tooltip{color:#fff;pointer-events:none;white-space:nowrap;background:#ef4444eb;border-radius:8px;padding:5px 10px;font-size:12px;font-weight:600;animation:.2s ease-out slideUp;position:absolute;bottom:28px;transform:translate(-50%)}.vctrl-bar{color:#fff;background:#1a2233;justify-content:space-between;align-items:center;gap:12px;padding:8px 14px 12px;display:flex}.vctrl-left{flex:1;align-items:center;gap:10px;min-width:0;display:flex}.vctrl-right{flex-shrink:0;align-items:center;gap:10px;display:flex}.vctrl-btn{color:#ffffffbf;cursor:pointer;background:0 0;border:none;border-radius:6px;align-items:center;gap:5px;padding:5px;font-size:12px;font-weight:600;transition:color .15s,background .15s;display:inline-flex}.vctrl-btn:hover{color:#fff;background:var(--bg-accent)}.vctrl-playpause{background:var(--primary);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;width:36px;height:36px;padding:0;box-shadow:0 2px 10px #05966966}.vctrl-playpause:hover{background:var(--primary-dark);color:#fff}.vctrl-volume{align-items:center;gap:6px;display:flex}.vctrl-volume-slider{-webkit-appearance:none;background:var(--bg-secondary);cursor:pointer;border-radius:99px;outline:none;width:70px;height:4px}.vctrl-volume-slider::-webkit-slider-thumb{-webkit-appearance:none;cursor:pointer;background:#fff;border-radius:50%;width:12px;height:12px}.vctrl-time{color:#fffc;font-variant-numeric:tabular-nums;white-space:nowrap;font-size:13px;font-weight:600}.vctrl-milestones{color:#fff9;align-items:center;gap:4px;font-size:12px;font-weight:600;display:flex}.vctrl-milestones.all-done{color:var(--success)}.vctrl-rewatch-badge{color:#a78bfa;background:#8b5cf626;border-radius:99px;padding:2px 8px;font-size:11px;font-weight:700}.vctrl-focus-btn{border-radius:8px;padding:6px 10px}.vlp-info-panel{grid-template-columns:1fr 280px;gap:20px;margin-bottom:20px;display:grid}@media (width<=680px){.vlp-info-panel{grid-template-columns:1fr}}.vlp-about{background:var(--bg-card);border-radius:var(--radius);border:1px solid var(--border-color);padding:clamp(16px,2vw,20px)}.vlp-about-title{color:var(--text-main);margin-bottom:8px;font-size:14px;font-weight:800}.vlp-about-text{color:var(--text-secondary);font-size:14px;line-height:1.6}.vlp-progress-block{background:var(--bg-card);border-radius:var(--radius);border:1px solid var(--border-color);padding:clamp(14px,2vw,18px)}.vlp-pb-row{justify-content:space-between;align-items:center;display:flex}.vlp-pb-label{color:var(--text-secondary);font-size:13px;font-weight:700}.vlp-pb-pct{color:var(--primary);font-size:16px;font-weight:800}.vlp-milestones-list{flex-direction:column;gap:6px;display:flex}.vlp-ms-row{color:var(--text-muted);align-items:center;gap:8px;font-size:13px;display:flex}.vlp-ms-row.passed{color:var(--success)}.vlp-ms-dot{background:var(--bg-secondary);border:1.5px solid var(--border);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;font-size:11px;font-weight:800;display:flex}.vlp-ms-row.passed .vlp-ms-dot{background:var(--success-light);border-color:var(--success);color:var(--success)}.vlp-ms-label{font-size:13px;font-weight:600}.vlp-ms-time{color:var(--text-mute);font-variant-numeric:tabular-nums;margin-left:auto;font-size:12px;font-weight:700}.vlp-ms-row.passed .vlp-ms-time{color:#059669}.game-modal-overlay{-webkit-backdrop-filter:blur(10px)saturate(.5);z-index:9999;background:#0a0f1ed9;justify-content:center;align-items:center;padding:20px;animation:.25s ease-out fadeIn;display:flex;position:fixed;inset:0}.game-modal-card{background:var(--bg-card);border-radius:20px;width:100%;max-width:560px;animation:.3s cubic-bezier(.16,1,.3,1) slideUp;overflow:hidden;box-shadow:0 32px 80px #0000004d}.game-modal-header{background:var(--bg-secondary);border-bottom:1px solid var(--border-color);align-items:flex-start;gap:14px;padding:22px 24px 18px;display:flex}.game-modal-icon{background:var(--gradient-primary);color:#fff;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex;box-shadow:0 4px 12px #0596694d}.game-modal-header-text{flex:1}.game-modal-counter{color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:3px;font-size:11px;font-weight:700}.game-modal-title{color:var(--text-main);margin-bottom:2px;font-size:18px;font-weight:800}.game-modal-type-label{color:var(--text-muted);font-size:12px;font-weight:600}.game-modal-footer{border-top:1px solid var(--border-color);color:var(--text-muted);text-align:center;background:#f8fafc;padding:12px 24px;font-size:12px;font-weight:500}.student-home-page{--student-home-gold:#b99a52;--student-home-gold-dark:#7a5c1a;--student-home-green:#0f9f7a;--student-home-blue:#0ea5e9;--student-home-panel:color-mix(in srgb, var(--bg-card) 88%, var(--bg-secondary) 12%);--student-home-line:color-mix(in srgb, var(--border-color) 70%, var(--student-home-gold) 30%)}:root.dark .student-home-page{--student-home-gold-dark:#eecf8a}.student-home-hero,.student-glass-card,.system-sync-card{border:1px solid var(--student-home-line);background:var(--student-home-panel);box-shadow:0 20px 48px #0f172a19}.student-home-hero{background:radial-gradient(circle at 15% 8%, #b99a5238, transparent 34%), radial-gradient(circle at 88% 18%, color-mix(in srgb, var(--student-home-green) 16%, transparent), transparent 32%), linear-gradient(135deg, color-mix(in srgb, var(--bg-card) 74%, #fff4cc 26%), color-mix(in srgb, var(--bg-card) 88%, var(--student-home-green) 12%));border-radius:26px;padding:clamp(24px,5vw,42px);position:relative;overflow:hidden}.student-home-hero:before{content:"";opacity:.56;pointer-events:none;background:linear-gradient(120deg,#0000,#ffffff3d,#0000),repeating-linear-gradient(90deg,#b99a5214 0 1px,#0000 1px 24px);position:absolute;inset:0}.student-home-hero:after{content:"";border:1px solid color-mix(in srgb, var(--student-home-gold) 28%, transparent);pointer-events:none;border-radius:20px;position:absolute;inset:18px}.student-home-hero .ambient-orb-1,.student-home-hero .ambient-orb-2{border:1px solid color-mix(in srgb, var(--student-home-gold) 26%, transparent);pointer-events:none;border-radius:50%;position:absolute}.student-home-hero .ambient-orb-1{width:210px;height:210px;top:-80px;right:20%}.student-home-hero .ambient-orb-2{border-color:color-mix(in srgb, var(--student-home-green) 22%, transparent);width:260px;height:260px;bottom:-80px;right:-90px}.student-home-hero__content{z-index:2;grid-template-columns:minmax(0,1fr) minmax(280px,390px);align-items:center;gap:clamp(22px,5vw,42px);display:grid;position:relative}.student-home-hero__copy{min-width:0}.student-home-hero__copy h1 span{color:var(--student-home-gold-dark)}.student-home-hero__actions{flex-wrap:wrap;gap:10px;margin-top:22px;display:flex}.student-home-hero__actions .btn{border-radius:14px;gap:8px;padding:12px 22px;font-size:14px;font-weight:800}.student-home-record-card{color:#172033;text-align:center;background:linear-gradient(135deg,#b99a521f,#0000 22% 78%,#b99a521a),#fffdf8;border:1px solid #b99a52b8;border-radius:10px;place-items:center;min-height:255px;padding:28px;display:grid;position:relative;overflow:hidden;transform:rotate(1.1deg);box-shadow:0 24px 48px #0f172a29}.student-home-record-card:before{content:"";pointer-events:none;border:1px solid #b99a5261;position:absolute;inset:14px}.student-home-record-card__seal{width:72px;height:72px;color:var(--student-home-gold-dark);background:#b99a521f;border:1px solid #b99a528a;border-radius:50%;place-items:center;margin-bottom:10px;display:grid}.student-home-record-card>span{color:#6b7280;letter-spacing:.2em;text-transform:uppercase;font-size:10px;font-weight:800}.student-home-record-card>strong{color:#18202a;letter-spacing:.035em;text-transform:uppercase;margin-top:16px;font-family:Baskerville,Libre Baskerville,Garamond,Georgia,Times New Roman,serif;font-size:clamp(44px,5vw,66px);font-weight:400;line-height:1}.student-home-record-card>em{color:#7b8794;letter-spacing:.12em;text-transform:uppercase;margin-top:12px;font-size:11px;font-style:normal;font-weight:800}.student-home-record-card>i{background:linear-gradient(90deg, transparent, var(--student-home-gold), transparent);width:130px;height:1px;margin-top:18px}.student-home-record-card__meta{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:16px;display:flex}.student-home-record-card__meta span{color:#5d6673;letter-spacing:.08em;text-transform:uppercase;border:1px solid #b99a5257;border-radius:999px;padding:5px 9px;font-size:10px;font-weight:800}.dashboard-hero-grid{grid-template-columns:minmax(0,1.45fr) minmax(310px,.9fr);align-items:start;gap:24px;display:grid}.student-glass-card,.system-sync-card{background:linear-gradient(180deg, color-mix(in srgb, var(--bg-card) 88%, #fff4cc 7%), var(--bg-card));border-radius:22px;transition:transform .18s,box-shadow .18s,border-color .18s;position:relative;overflow:hidden}.student-glass-card{padding:24px}.student-glass-card:before,.system-sync-card:before{content:"";opacity:0;pointer-events:none;background:linear-gradient(115deg,#0000 8%,#ffffff2e 44%,#0000 58%);transition:opacity .18s,transform .55s;position:absolute;inset:0;transform:translate(-120%)}.student-glass-card:hover,.vocab-game-widget:hover{border-color:color-mix(in srgb, var(--student-home-gold) 48%, var(--border-color) 52%);box-shadow:0 24px 50px color-mix(in srgb, var(--student-home-gold) 14%, transparent);transform:translateY(-3px)}.student-glass-card:hover:before,.system-sync-card:hover:before{opacity:1;transform:translate(120%)}.active-lesson-glow{border-color:color-mix(in srgb, var(--student-home-green) 38%, var(--border-color) 62%);background:radial-gradient(circle at 92% 10%, color-mix(in srgb, var(--student-home-green) 16%, transparent), transparent 34%), linear-gradient(180deg, color-mix(in srgb, var(--bg-card) 84%, var(--student-home-green) 7%), var(--bg-card))}.student-home-section{border:1px solid var(--student-home-line);background:radial-gradient(circle at 92% 0%, color-mix(in srgb, var(--student-home-gold) 15%, transparent), transparent 32%), linear-gradient(180deg, color-mix(in srgb, var(--bg-card) 90%, #fff4cc 10%), var(--bg-card));border-radius:24px;padding:22px;position:relative;overflow:hidden;box-shadow:0 18px 42px #0f172a13}.student-home-section:before{content:"";border:1px solid color-mix(in srgb, var(--student-home-gold) 18%, transparent);pointer-events:none;border-radius:18px;position:absolute;inset:12px}.student-section-heading{z-index:1;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:16px;display:flex;position:relative}.student-section-heading span{color:var(--student-home-gold-dark);letter-spacing:.12em;text-transform:uppercase;font-size:11px;font-weight:900;display:block}.student-section-heading h3{color:var(--text-main);letter-spacing:-.02em;margin:5px 0 0;font-size:20px;font-weight:900}.student-section-link{border:1px solid color-mix(in srgb, var(--student-home-gold) 32%, var(--border-color) 68%);background:color-mix(in srgb, var(--bg-card) 78%, #fff4cc 22%);color:var(--student-home-gold-dark);cursor:pointer;border-radius:999px;flex-shrink:0;align-items:center;gap:4px;padding:7px 10px;font-size:12px;font-weight:800;display:inline-flex}.student-classroom-grid{z-index:1;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px;display:grid;position:relative}.student-home-classroom-card{border-color:color-mix(in srgb, var(--student-home-green) 26%, var(--border-color) 74%)}.student-home-empty-card{border-color:color-mix(in srgb, var(--student-home-gold) 36%, var(--border-color) 64%);background:linear-gradient(180deg, color-mix(in srgb, var(--bg-card) 82%, #fff4cc 18%), var(--bg-card))}.student-progress-ledger{border-color:color-mix(in srgb, var(--student-home-gold) 38%, var(--border-color) 62%);background:radial-gradient(circle at 100% 0%, color-mix(in srgb, var(--student-home-gold) 17%, transparent), transparent 32%), linear-gradient(180deg, color-mix(in srgb, var(--bg-card) 86%, #fff4cc 12%), var(--bg-card))}.student-progress-ledger:after{content:"";border:1px solid color-mix(in srgb, var(--student-home-gold) 16%, transparent);pointer-events:none;border-radius:16px;position:absolute;inset:12px}.system-sync-card{border-color:var(--border-warning);background:radial-gradient(circle at 90% 0%, color-mix(in srgb, var(--warning) 18%, transparent), transparent 30%), var(--bg-warning-subtle);padding:20px}.pulse-indicator,.sync-status-dot{background:var(--student-home-green);width:9px;height:9px;box-shadow:0 0 0 0 color-mix(in srgb, var(--student-home-green) 36%, transparent);border-radius:50%;animation:1.8s ease-out infinite achievementSignal}.sync-status-dot{width:8px;height:8px}.stat-metric-box{border:1px solid color-mix(in srgb, var(--student-home-gold) 24%, var(--border-color) 76%);background:color-mix(in srgb, var(--bg-card) 78%, #fff4cc 22%);border-radius:14px;min-width:0;padding:12px}@media (width<=920px){.student-home-hero__content,.dashboard-hero-grid{grid-template-columns:1fr}.student-home-record-card{transform:none}}@media (width<=560px){.student-home-hero{padding:24px}.student-home-hero:after{inset:10px}.student-home-hero__actions .btn{justify-content:center;width:100%}.student-home-record-card{min-height:220px;padding:22px}.stats-center-row{grid-template-columns:1fr}.student-section-heading{flex-direction:column}}.learning-record-page{--learning-gold:#b99a52;--learning-gold-dark:#9f7f2d;--learning-green:#0f9f7a;--learning-panel:color-mix(in srgb, var(--bg-card) 88%, var(--bg-secondary) 12%);--learning-line:color-mix(in srgb, var(--border-color) 70%, var(--learning-gold) 30%)}.learning-record-hero,.learning-record-page .stepper-container,.learning-record-page .situation-card-glass,.learning-record-page .locked-curriculum-panel{border:1px solid var(--learning-line);background:var(--learning-panel);box-shadow:0 20px 48px #0f172a16}.learning-record-hero{background:radial-gradient(circle at 15% 8%, #b99a5238, transparent 34%), radial-gradient(circle at 88% 18%, color-mix(in srgb, var(--learning-green) 16%, transparent), transparent 32%), linear-gradient(135deg, color-mix(in srgb, var(--bg-card) 74%, #fff4cc 26%), color-mix(in srgb, var(--bg-card) 88%, var(--learning-green) 12%));border-radius:26px;grid-template-columns:minmax(0,1fr) minmax(320px,420px);align-items:center;gap:clamp(22px,5vw,42px);margin-bottom:20px;padding:clamp(24px,5vw,42px);display:grid;position:relative;overflow:hidden}.learning-record-hero:before{content:"";opacity:.56;pointer-events:none;background:linear-gradient(120deg,#0000,#ffffff3d,#0000),repeating-linear-gradient(90deg,#b99a5214 0 1px,#0000 1px 24px);position:absolute;inset:0}.learning-record-hero:after,.learning-record-page .stepper-container:before,.learning-record-page .locked-curriculum-panel:before{content:"";border:1px solid color-mix(in srgb, var(--learning-gold) 18%, transparent);pointer-events:none;border-radius:18px;position:absolute;inset:14px}.learning-record-hero__copy,.learning-progress-panel{z-index:1;position:relative}.learning-record-eyebrow{color:var(--learning-gold-dark);letter-spacing:.12em;text-transform:uppercase;font-size:11px;font-weight:900}.learning-record-hero h1{max-width:720px;color:var(--text-main);letter-spacing:-.04em;margin:8px 0 0;font-size:clamp(2rem,5vw,3.4rem);font-weight:900;line-height:1.02}.learning-record-hero p{max-width:680px;color:var(--text-secondary);margin:12px 0 0;font-size:15px;line-height:1.65}.learning-record-actions{flex-wrap:wrap;gap:10px;margin-top:18px;display:flex}.learning-record-actions .btn{border-radius:14px;gap:8px;padding:12px 22px;font-size:14px;font-weight:800}.learning-quick-stats{flex-wrap:wrap;gap:10px;margin-top:18px;display:flex}.learning-quick-stats span{border:1px solid color-mix(in srgb, var(--learning-gold) 20%, var(--border-color) 80%);background:color-mix(in srgb, var(--bg-card) 74%, var(--bg-secondary) 26%);color:var(--text-secondary);border-radius:999px;align-items:center;gap:5px;padding:8px 12px;font-size:12px;font-weight:800;display:inline-flex}.learning-quick-stats strong{color:var(--text-main)}.learning-progress-panel{border:1px solid color-mix(in srgb, var(--learning-gold) 28%, var(--border-color) 72%);background:radial-gradient(circle at 90% 4%, color-mix(in srgb, var(--learning-green) 18%, transparent), transparent 34%), linear-gradient(180deg, color-mix(in srgb, var(--bg-card) 92%, #fff4cc 8%), color-mix(in srgb, var(--bg-card) 86%, var(--bg-secondary) 14%));border-radius:24px;flex-direction:column;gap:14px;min-height:270px;padding:18px;display:flex;overflow:hidden;box-shadow:0 22px 42px #0f172a16}.learning-progress-panel__top{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.learning-progress-panel__top span,.learning-progress-panel__stats span,.learning-next-card span{color:var(--text-secondary);letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:900}.learning-progress-panel__top strong{color:var(--learning-green);letter-spacing:-.06em;font-size:clamp(44px,6vw,68px);font-weight:900;line-height:.9}.learning-progress-panel__bar{border:1px solid color-mix(in srgb, var(--learning-green) 24%, var(--border-color) 76%);background:color-mix(in srgb, var(--bg-secondary) 78%, var(--bg-card) 22%);border-radius:999px;height:12px;padding:2px;overflow:hidden}.learning-progress-panel__bar i{border-radius:inherit;background:linear-gradient(90deg, var(--learning-green), var(--learning-gold));height:100%;box-shadow:0 0 18px color-mix(in srgb, var(--learning-green) 38%, transparent);display:block}.learning-progress-panel__stats{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}.learning-progress-panel__stats div,.learning-next-card{border:1px solid color-mix(in srgb, var(--border-color) 76%, var(--learning-gold) 24%);background:color-mix(in srgb, var(--bg-card) 82%, var(--bg-secondary) 18%);border-radius:16px}.learning-progress-panel__stats div{padding:12px}.learning-progress-panel__stats strong{color:var(--text-main);margin-top:6px;font-size:18px;font-weight:900;display:block}.learning-next-card{padding:18px}.learning-next-card strong{color:var(--text-main);margin-top:8px;font-size:19px;font-weight:900;line-height:1.3;display:block}.learning-next-card p{color:var(--text-secondary);margin:6px 0 0;font-size:13px;line-height:1.45}.learning-next-card button,.learning-toolbar-button{border:1px solid color-mix(in srgb, var(--learning-green) 34%, var(--border-color) 66%);background:color-mix(in srgb, var(--learning-green) 12%, var(--bg-card) 88%);color:var(--learning-green);cursor:pointer;border-radius:12px;justify-content:center;align-items:center;gap:8px;font-weight:900;transition:transform .18s,box-shadow .18s,background .18s;display:inline-flex}.learning-next-card button{width:100%;margin-top:16px;padding:12px 14px;font-size:14px}.learning-next-card button:hover,.learning-toolbar-button:hover{background:color-mix(in srgb, var(--learning-green) 18%, var(--bg-card) 82%);box-shadow:0 12px 24px color-mix(in srgb, var(--learning-green) 14%, transparent);transform:translateY(-1px)}.learning-record-page .stepper-container{background:radial-gradient(circle at 96% 0%, color-mix(in srgb, var(--learning-green) 14%, transparent), transparent 30%), linear-gradient(180deg, color-mix(in srgb, var(--bg-card) 88%, #fff4cc 9%), var(--bg-card));border-radius:22px;grid-template-columns:auto minmax(24px,1fr) auto minmax(24px,1fr) auto minmax(24px,1fr) auto;align-items:center;gap:10px;padding:22px;display:grid;position:relative;overflow:hidden}.learning-record-page .stepper-step-pill{z-index:1;border-radius:999px;align-items:center;gap:8px;min-height:42px;padding:9px 12px;display:inline-flex;position:relative;box-shadow:0 8px 18px #0f172a12}.learning-record-page .stepper-line{z-index:1;border-radius:999px;min-width:24px;height:3px;position:relative}.learning-list-toolbar{justify-content:space-between;align-items:center;gap:14px;padding:4px 2px 2px;display:flex}.learning-list-toolbar span{color:var(--learning-gold-dark);letter-spacing:.1em;text-transform:uppercase;font-size:11px;font-weight:900;display:block}.learning-list-toolbar strong{color:var(--text-main);letter-spacing:-.02em;margin-top:4px;font-size:19px;font-weight:900;display:block}.learning-toolbar-button{flex:none;padding:10px 14px;font-size:12px}.learning-record-page .locked-curriculum-panel{background:radial-gradient(circle at 92% 0%, color-mix(in srgb, var(--learning-gold) 15%, transparent), transparent 32%), linear-gradient(180deg, color-mix(in srgb, var(--bg-card) 88%, #fff4cc 10%), var(--bg-card));text-align:center;border-radius:24px;max-width:620px;margin:0 auto;padding:42px 28px;position:relative;overflow:hidden}.learning-record-page .situation-card-glass{background:radial-gradient(circle at 96% 0%, color-mix(in srgb, var(--learning-gold) 12%, transparent), transparent 26%), linear-gradient(180deg, color-mix(in srgb, var(--bg-card) 89%, #fff4cc 8%), var(--bg-card));border-radius:22px;padding:20px;transition:transform .18s,box-shadow .18s,border-color .18s;position:relative;overflow:hidden}.learning-record-page .situation-card-glass:before{content:"";border:1px solid color-mix(in srgb, var(--learning-gold) 14%, transparent);pointer-events:none;border-radius:16px;position:absolute;inset:12px}.learning-record-page .situation-card-glass:hover{border-color:color-mix(in srgb, var(--learning-gold) 46%, var(--border-color) 54%);box-shadow:0 22px 46px color-mix(in srgb, var(--learning-gold) 13%, transparent);transform:translateY(-2px)}.learning-record-page .learning-skill-card{background:linear-gradient(180deg, color-mix(in srgb, var(--bg-card) 88%, #fff4cc 7%), var(--bg-card));width:100%;min-height:150px;color:inherit;cursor:pointer;text-align:left;border-radius:16px;flex-direction:column;align-items:flex-start;padding:16px;transition:transform .18s,box-shadow .18s,border-color .18s;display:flex;position:relative;overflow:hidden}.learning-record-page .learning-skill-card:before{content:"";opacity:0;pointer-events:none;background:linear-gradient(115deg,#0000 8%,#ffffff2e 44%,#0000 58%);transition:opacity .18s,transform .55s;position:absolute;inset:0;transform:translate(-120%)}.learning-record-page .learning-skill-card:hover:not(:disabled){box-shadow:0 18px 34px color-mix(in srgb, var(--learning-gold) 12%, transparent);transform:translateY(-2px)}.learning-record-page .learning-skill-card:hover:not(:disabled):before{opacity:1;transform:translate(120%)}.learning-record-page .learning-skill-card:disabled{cursor:not-allowed;opacity:.68}.learning-record-page .skill-icon-box{border-radius:12px;place-items:center;width:38px;height:38px;display:grid}.learning-record-page .bar-anim{transition:width .65s}@media (width<=900px){.learning-record-hero,.learning-record-page .stepper-container{grid-template-columns:1fr}.learning-record-page .stepper-line{justify-self:center;width:3px;height:18px}}@media (width<=560px){.learning-record-hero{padding:24px}.learning-record-actions .btn{justify-content:center;width:100%}.learning-quick-stats span{justify-content:space-between;width:100%}.learning-progress-panel__stats{grid-template-columns:1fr}.learning-list-toolbar{flex-direction:column;align-items:flex-start}.learning-toolbar-button{width:100%}}.game-body{padding:20px 24px}.game-q-counter{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:14px;font-size:12px;font-weight:700}.game-feedback-ok{text-align:center;color:var(--success);margin-top:10px;font-size:14px;font-weight:700}.game-feedback-err{text-align:center;color:var(--danger);margin-top:10px;font-size:14px;font-weight:700}.game-shake{animation:.5s cubic-bezier(.36,.07,.19,.97) game-shake}@keyframes game-shake{10%,90%{transform:translate(-3px)}20%,80%{transform:translate(4px)}30%,50%,70%{transform:translate(-5px)}40%,60%{transform:translate(5px)}}.flash-ok{animation:.5s ease-out flash-ok}@keyframes flash-ok{0%{background:#10b98140}to{background:0 0}}.game-tf-statement{color:var(--text-main);text-align:center;margin-bottom:24px;padding:0 8px;font-size:17px;font-weight:600;line-height:1.5}.game-tf-buttons{grid-template-columns:1fr 1fr;gap:12px;display:grid}.game-tf-btn{cursor:pointer;border:2px solid;border-radius:14px;justify-content:center;align-items:center;gap:8px;padding:16px;font-family:inherit;font-size:15px;font-weight:800;transition:all .15s;display:flex}.game-tf-true{color:var(--success);background:#10b98114;border-color:#10b9814d}.game-tf-false{color:var(--danger);background:#ef444414;border-color:#ef44444d}.game-tf-true:hover:not(:disabled){border-color:var(--success);background:#10b9812e}.game-tf-false:hover:not(:disabled){border-color:var(--danger);background:#ef44442e}.game-tf-btn:disabled{opacity:.55;cursor:not-allowed}.game-tf-btn.flash-ok{border-color:var(--success);background:#10b9814d}.game-vm-instruction{color:var(--text-muted);text-align:center;margin-bottom:6px;font-size:14px}.game-vm-score{color:var(--primary);text-align:center;margin-bottom:16px;font-size:13px;font-weight:700}.game-vm-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.game-vm-col{flex-direction:column;gap:8px;display:flex}.game-vm-card{text-align:center;background:var(--bg-card);border:2px solid var(--border-color);cursor:pointer;border-radius:10px;padding:12px 10px;font-family:inherit;font-size:14px;font-weight:600;transition:all .15s}.game-vm-card:hover:not(:disabled){background:var(--bg-secondary);border-color:#05966966}.game-vm-card.sel{border-color:var(--primary);background:var(--bg-secondary);box-shadow:0 0 0 3px #0596691f}.game-vm-card.matched{border-color:var(--success);background:var(--success-light);opacity:.7;cursor:default}.game-vm-card:disabled{cursor:default}.game-fb-sentence{color:var(--text-main);text-align:center;margin-bottom:20px;font-size:17px;font-weight:600;line-height:1.7}.game-fb-blank{border-bottom:2.5px solid var(--primary);min-width:90px;color:var(--primary);text-align:center;margin:0 4px;padding:2px 8px;font-weight:800;display:inline-block}.game-fb-blank.correct{color:var(--success);border-color:var(--success)}.game-fb-blank.wrong{color:var(--danger);border-color:var(--danger)}.game-fb-options{grid-template-columns:1fr 1fr;gap:10px;display:grid}.game-fb-opt{background:var(--bg-card);border:2px solid var(--border-color);cursor:pointer;text-align:center;border-radius:10px;padding:12px 10px;font-family:inherit;font-size:14px;font-weight:600;transition:all .15s}.game-fb-opt:hover:not(:disabled){background:var(--bg-secondary);border-color:#05966966}.game-fb-opt:disabled{cursor:not-allowed}.game-fb-opt.correct{border-color:var(--success);color:var(--success);background:#10b98133}.game-fb-opt.wrong{border-color:var(--danger);color:var(--danger);background:#ef444414}.game-ws-hint{color:var(--text-muted);margin-bottom:10px;font-size:13px}.game-ws-answer{background:var(--bg-secondary);border:2px dashed var(--border);border-radius:12px;flex-wrap:wrap;align-items:center;gap:8px;min-height:56px;margin-bottom:16px;padding:10px 12px;display:flex}.game-ws-answer.flash-ok{background:var(--success-light);border-color:var(--success);border-style:solid}.game-ws-placeholder{color:var(--text-muted);font-size:13px;font-style:italic}.game-ws-bank{background:var(--bg-secondary);border-radius:10px;flex-wrap:wrap;gap:8px;min-height:48px;margin-bottom:18px;padding:8px;display:flex}.game-ws-word{cursor:pointer;border:none;border-radius:8px;padding:7px 14px;font-family:inherit;font-size:14px;font-weight:600;transition:all .15s}.game-ws-word.placed{background:var(--primary);color:#fff}.game-ws-word.placed:hover{background:var(--primary-dark)}.game-ws-word.bank{background:var(--bg-card);color:var(--text-main);border:1.5px solid var(--border-color)}.game-ws-word.bank:hover{border-color:var(--primary);color:var(--primary)}.game-ws-actions{justify-content:flex-end;align-items:center;gap:10px;display:flex}.game-ws-reset{color:#ffffffb3!important;background:#ffffff14!important}.completion-overlay{-webkit-backdrop-filter:blur(12px);z-index:9999;background:#0a0f1ecc;justify-content:center;align-items:center;padding:20px;animation:.3s ease-out fadeIn;display:flex;position:fixed;inset:0}.completion-card{background:var(--bg-card);text-align:center;border-radius:24px;width:100%;max-width:440px;padding:clamp(24px,5vw,48px);animation:.4s cubic-bezier(.16,1,.3,1) slideUp;position:relative;overflow:hidden;box-shadow:0 40px 100px #0000004d}.completion-confetti{pointer-events:none;background:radial-gradient(circle at 20% 20%,#0596691f 0%,#0000 50%),radial-gradient(circle at 80% 80%,#10b9811f 0%,#0000 50%),radial-gradient(circle at 50% 10%,#f59e0b1a 0%,#0000 40%);position:absolute;inset:0}.completion-trophy{margin-bottom:10px;font-size:64px;animation:.8s cubic-bezier(.36,.07,.19,.97) bounce}@keyframes bounce{0%{opacity:0;transform:scale(0)rotate(-10deg)}60%{opacity:1;transform:scale(1.15)rotate(5deg)}80%{transform:scale(.95)rotate(-3deg)}to{transform:scale(1)rotate(0)}}.game-result-overlay{z-index:9997;pointer-events:none;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.game-result-card{background:var(--bg-card);text-align:center;border:2px solid #0000;border-radius:20px;min-width:260px;padding:28px 36px;animation:.3s cubic-bezier(.16,1,.3,1) slideUp;box-shadow:0 20px 60px #00000040}.game-result-card.pass{border-color:#059669}.game-result-card.fail{border-color:#dc2626}.game-result-icon{margin-bottom:10px}.game-result-card.pass .game-result-icon{color:#059669}.game-result-card.fail .game-result-icon{color:#dc2626}.game-result-title{color:var(--text-main);margin-bottom:6px;font-size:20px;font-weight:800}.game-result-score{margin-bottom:12px;font-size:28px;font-weight:900}.game-result-card.pass .game-result-score{color:#059669}.game-result-card.fail .game-result-score{color:#dc2626}.game-result-xp{color:var(--warning);background:#f59e0b1a;border-radius:99px;align-items:center;margin-bottom:10px;padding:4px 14px;font-size:14px;font-weight:800;display:inline-flex}.game-result-bar{background:var(--bg-hover);border-radius:3px;height:6px;margin-bottom:10px;overflow:hidden}.game-result-fill{border-radius:3px;height:100%;transition:width .6s ease-out}.game-result-card.pass .game-result-fill{background:#059669}.game-result-card.fail .game-result-fill{background:#dc2626}.game-result-sub{color:var(--text-dim);margin:0;font-size:12px}.game-result-overlay.is-blocking{pointer-events:auto;background:#0a0f1e8c;padding:16px}.game-result-card.has-review{flex-direction:column;max-width:min(560px,100%);max-height:88vh;display:flex;overflow:hidden}.checkpoint-review{text-align:left;flex:1;min-height:0;margin-top:6px;overflow-y:auto}.checkpoint-review__label{letter-spacing:.07em;text-transform:uppercase;color:var(--text-mute);margin:0 0 8px;font-size:11px;font-weight:800}.checkpoint-review__list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.checkpoint-review__item{background:var(--bg-hover);border-radius:12px;padding:10px 12px}.checkpoint-review__prompt{color:var(--text-main);margin:0 0 6px;font-size:13px;font-weight:700}.checkpoint-review__line{color:var(--text-main);margin:0;font-size:13px}.checkpoint-review__line span{text-transform:uppercase;letter-spacing:.04em;min-width:108px;color:var(--text-mute);font-size:11px;font-weight:700;display:inline-block}.checkpoint-review__line.is-wrong{text-decoration:line-through;-webkit-text-decoration-color:var(--danger);text-decoration-color:var(--danger);color:var(--text-mute)}.checkpoint-review__line.is-wrong span{text-decoration:none}.checkpoint-review__line.is-right{font-weight:700}.checkpoint-review__cta{background:var(--cta-bg);color:#fff;cursor:pointer;border:none;border-radius:10px;flex-shrink:0;justify-content:center;align-self:center;align-items:center;gap:7px;margin-top:14px;padding:10px 20px;font-size:14px;font-weight:700;display:inline-flex}.checkpoint-review__cta:hover{filter:brightness(1.08)}.afk-overlay{-webkit-backdrop-filter:blur(8px);z-index:9998;background:#0a0f1ebf;justify-content:center;align-items:center;padding:20px;animation:.25s ease-out fadeIn;display:flex;position:fixed;inset:0}.afk-card{background:var(--bg-card);text-align:center;border-radius:20px;width:100%;max-width:360px;padding:clamp(24px,5vw,40px);animation:.3s cubic-bezier(.16,1,.3,1) slideUp;box-shadow:0 30px 80px #0000004d}.afk-icon{width:72px;height:72px;color:var(--primary);background:#8b5cf61f;border-radius:50%;justify-content:center;align-items:center;margin:0 auto 16px;display:flex}.afk-title{color:var(--text-main);margin-bottom:8px;font-size:22px;font-weight:800}.afk-body{color:var(--text-secondary);margin-bottom:24px;font-size:14px;line-height:1.5}.afk-btn{width:100%;padding:12px 20px;font-size:15px;font-weight:700}.completion-title{color:var(--text-main);margin-bottom:6px;font-size:28px;font-weight:900}.completion-skill-name{color:var(--text-secondary);margin-bottom:16px;font-size:15px}.completion-xp{color:var(--warning);background:#f59e0b1a;border-radius:99px;align-items:center;margin-bottom:12px;padding:8px 20px;font-size:22px;font-weight:800;display:inline-flex}.completion-ms-note{color:var(--success);margin-bottom:8px;font-size:13px;font-weight:700}.completion-preview-note{color:var(--text-muted);margin-bottom:12px;font-size:12px}.completion-actions{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:20px;display:flex}.game-builder-questions{flex-direction:column;gap:0;padding-top:8px;display:flex}.game-builder-q-row{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:8px;display:flex}.game-builder-ans-btn{border:1.5px solid var(--border);cursor:pointer;background:var(--bg-card);color:var(--text-secondary);border-radius:8px;padding:5px 12px;font-family:inherit;font-size:12px;font-weight:700;transition:all .15s}.game-builder-ans-btn.active-green{color:var(--success);border-color:var(--success);background:#10b98133}.game-builder-ans-btn.active-red{color:var(--danger);border-color:var(--danger);background:#ef44441a}.game-builder-del-btn{cursor:pointer;color:#94a3b8;background:0 0;border:none;border-radius:6px;padding:4px;transition:color .15s;display:flex}.game-builder-del-btn:hover{color:var(--danger)}.mcq-delete-btn{color:#dc2626;cursor:pointer;white-space:nowrap;background:#ef44440f;border:1px solid #ef444447;border-radius:7px;align-items:center;gap:5px;padding:5px 10px;font-family:inherit;font-size:11px;font-weight:700;transition:all .15s;display:inline-flex}.mcq-delete-btn:hover{background:#ef444421;border-color:#ef444473}.mcq-question-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;flex-direction:column;gap:12px;padding:14px;display:flex}.mcq-section{flex-direction:column;gap:6px;display:flex}.mcq-field-label{color:var(--text-secondary);letter-spacing:.02em;font-size:11px;font-weight:800}.mcq-choice-label{background:var(--bg-card);border:1px solid var(--border-color);width:28px;height:28px;color:var(--text-secondary);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;font-size:12px;font-weight:900;display:inline-flex}.mcq-correct-btn{border:1.5px solid var(--border-color);background:var(--bg-card);width:42px;height:42px;color:var(--text-secondary);cursor:pointer;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;font-family:inherit;font-size:15px;font-weight:900;transition:all .15s;display:inline-flex}.mcq-correct-btn:hover{color:#059669;background:#10b9810f;border-color:#10b98159}.mcq-correct-btn.is-selected{color:#059669;background:#10b98124;border-color:#059669;box-shadow:0 0 0 2px #10b9812e}.mcq-correct-preview{min-width:0;color:var(--text-mute);text-overflow:ellipsis;white-space:nowrap;flex:1;padding:0 10px;font-size:12px;font-weight:600;overflow:hidden}.mcq-empty-state{color:var(--text-mute);padding:8px 0 4px;font-size:12px;line-height:1.5}.game-builder-add-q{color:var(--primary);cursor:pointer;background:#05966912;border:1px dashed #0596694d;border-radius:8px;align-items:center;gap:5px;margin-top:2px;padding:5px 12px;font-family:inherit;font-size:12px;font-weight:700;display:inline-flex}.game-builder-add-q:hover{background:#0596691f}.q-nav{align-items:center;gap:8px;margin-bottom:8px;padding:4px 0;display:flex}.q-nav-btn{border:1px solid var(--border-color);background:var(--bg-card);color:var(--text-secondary);cursor:pointer;white-space:nowrap;border-radius:6px;padding:4px 12px;font-family:inherit;font-size:12px;font-weight:700;transition:all .15s}.q-nav-btn:disabled{opacity:.3;cursor:default}.q-nav-btn:not(:disabled):hover{background:var(--bg-secondary);color:var(--text-main);border-color:var(--primary)}.q-nav-counter{color:var(--text-secondary);text-align:center;min-width:90px;font-size:12px;font-weight:700}@media (width<=860px){.vlp-container{max-width:100%}.vlp-info-panel{grid-template-columns:1fr}.vctrl-volume-slider{width:50px}.game-tf-buttons,.game-fb-options{grid-template-columns:1fr}.game-vm-grid{gap:6px}.game-vm-card{padding:10px 6px;font-size:13px}}@media (width<=480px){.game-modal-card{border-radius:16px}.game-modal-header{padding:16px}.game-body{padding:14px 16px}.game-tf-btn{padding:12px;font-size:14px}.vlp-title{font-size:18px}.vctrl-time{font-size:12px}.vctrl-milestones{display:none}.completion-trophy{font-size:48px}.completion-title{font-size:22px}}.profile-layout{grid-template-columns:350px 1fr;align-items:start;gap:24px;display:grid}.profile-col-left{flex-direction:column;gap:24px;display:flex}@media (width<=1024px){.profile-layout{flex-direction:column;display:flex}.profile-col-left{display:contents}.profile-info-card{order:1}.profile-col-right{order:2}.profile-notes-card{order:3}}.profile-kpi-grid{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}@media (width<=1024px){.profile-kpi-grid{grid-template-columns:repeat(2,1fr)}}.profile-stats-grid{grid-template-columns:1fr 1fr;gap:24px;display:grid}@media (width<=768px){.profile-stats-grid{grid-template-columns:1fr}}@media (width<=860px){.profile-col-left{justify-content:flex-end;width:100%;display:flex}.profile-col-right{justify-content:flex-start;width:100%;display:flex}}.skill-practice-card{border:1px solid var(--border-color);border-radius:18px;box-shadow:0 12px 28px #0f172a14}.skill-practice-card.media-card{background:radial-gradient(circle at 10% 10%, #f59e0b1a, transparent 38%), var(--bg-card)}.skill-practice-card.article-card{background:linear-gradient(180deg, #0ea5e90f, #0ea5e900 36%), var(--bg-card)}.skill-practice-card.question-card{background:var(--bg-card)}.question-choice-btn{border-radius:12px;min-height:46px;font-weight:600}@media (width<=768px){.skill-practice-card{border-radius:14px}.question-choice-btn{min-height:44px;font-size:14px}}.wlp-root{max-width:960px;margin:0 auto;padding:0 0 80px}.wlp-breadcrumb{color:var(--text-mute);flex-wrap:nowrap;align-items:center;gap:4px;padding:12px 0 8px;font-size:12px;display:flex;overflow:hidden}.wlp-back{cursor:pointer;color:var(--primary);white-space:nowrap;background:0 0;border:none;border-radius:7px;flex-shrink:0;align-items:center;gap:5px;padding:4px 8px;font-size:12px;font-weight:700;transition:background .15s;display:inline-flex}.wlp-back:hover{background:#10b98114}.wlp-bc-sep{color:var(--text-dim);opacity:.4;flex-shrink:0}.wlp-bc-item{white-space:nowrap;text-overflow:ellipsis;flex-shrink:1;min-width:0;overflow:hidden}.wlp-bc-sit{color:var(--text-secondary);max-width:120px;font-weight:500}.wlp-bc-current{color:var(--text-main);max-width:180px;font-weight:700}.wlp-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:20px;display:flex}.wlp-header-main{flex:1;min-width:0}.wlp-badges{flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:8px;display:flex}.wlp-badge{letter-spacing:.03em;border-radius:99px;align-items:center;gap:4px;padding:3px 10px;font-size:11px;font-weight:700;display:inline-flex}.wlp-badge-type{border:1px solid #10b98140}.wlp-badge-meta{background:var(--bg-secondary);color:var(--text-secondary);border:1px solid var(--border-color)}.wlp-badge-done{color:#10b981;background:#10b9811a;border:1px solid #10b98140}.wlp-badge-preview{color:#8b5cf6;background:#8b5cf61a;border:1px solid #8b5cf640}.wlp-xp-pill{color:var(--warning);white-space:nowrap;background:#f59e0b1a;border:1px solid #f59e0b40;border-radius:99px;align-items:center;gap:6px;padding:3px 10px;font-size:11px;font-weight:600;display:inline-flex}.wlp-title{color:var(--text-main);margin:0 0 5px;font-size:20px;font-weight:700;line-height:1.35}.wlp-desc{color:var(--text-mute);margin:0;font-size:13px;line-height:1.6}.wlp-body{grid-template-columns:1fr;align-items:start;gap:20px;display:grid}@media (width<=920px){.wlp-body{grid-template-columns:1fr}}.wlp-writing-panel,.wlp-side-panel{background:var(--bg-card);border:1px solid var(--border-color);box-shadow:var(--shadow-sm);border-radius:16px;overflow:visible}.wlp-writing-panel{min-height:0;max-height:none;padding:0 24px 22px;overflow:visible}.wlp-side-panel{flex-direction:column;display:flex;overflow:hidden}.wlp-study-panel{border-radius:16px;margin-bottom:22px}.wlp-tab-nav .wlp-tab.active{color:var(--interactive-accent);border-bottom-color:var(--skill-writing-color)}.wlp-tab-content{padding:20px 22px 22px}.wlp-progress-grid{grid-template-columns:1fr}.slp-prog-fill.writing{background:linear-gradient(90deg,#059669,#10b981)}.wlp-panel-top{border-bottom:1px solid color-mix(in srgb, var(--border-color) 70%, transparent);background:0 0;justify-content:space-between;align-items:flex-start;gap:16px;padding:8px 0 14px;display:flex}.wlp-panel-kicker{letter-spacing:.06em;text-transform:uppercase;color:#059669;align-items:center;gap:6px;margin-bottom:8px;font-size:11px;font-weight:600;display:flex}.wlp-panel-title{color:var(--text-main);margin:0;font-size:20px;font-weight:700;line-height:1.35}.wlp-status-pill{color:#059669;background:#10b9811a;border:1px solid #10b98138;border-radius:99px;flex-shrink:0;padding:5px 10px;font-size:11px;font-weight:600}.wlp-word-bank{border:1px solid color-mix(in srgb, #10b981 18%, var(--border-color));background:radial-gradient(circle at 95% 0%, #38bdf817, transparent 32%), color-mix(in srgb, var(--bg-secondary) 82%, var(--primary) 5%);border-radius:20px;margin:18px 0 0;padding:14px}.wlp-word-bank__head{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.wlp-word-bank__head div{gap:3px;display:grid}.wlp-word-bank__head strong{color:var(--text-main);font-size:13px;font-weight:900}.wlp-word-bank__head span{color:var(--text-mute);font-size:11px;font-weight:800}.wlp-word-bank__head>span{border:1px solid var(--border-color);background:var(--bg-card);color:var(--text-secondary);border-radius:999px;flex-shrink:0;padding:4px 9px}.wlp-word-bank__chips{flex-wrap:wrap;gap:8px;display:flex}.wlp-word-chip{border:1px solid color-mix(in srgb, #10b981 26%, var(--border-color));background:linear-gradient(180deg, color-mix(in srgb, var(--bg-card) 92%, #10b981 5%), var(--bg-card));max-width:100%;min-height:34px;color:var(--text-main);cursor:grab;border-radius:999px;justify-content:center;align-items:center;padding:0 12px;font-size:13px;font-weight:850;transition:border-color .16s,background .16s,color .16s,opacity .16s,transform .16s;display:inline-flex}.wlp-word-chip:hover:not(:disabled){color:#059669;border-color:#10b981;transform:translateY(-1px);box-shadow:0 8px 18px #10b9811f}.wlp-word-chip:active:not(:disabled){cursor:grabbing}.wlp-word-chip.is-waiting:not(:disabled){cursor:pointer;opacity:.62}.wlp-word-chip.is-waiting:hover:not(:disabled){border-color:color-mix(in srgb, #38bdf8 42%, var(--border-color));color:var(--text-secondary);box-shadow:none;transform:none}.wlp-word-chip.is-used,.wlp-word-chip:disabled{opacity:.42;box-shadow:none;text-decoration:line-through;transform:none}.wlp-word-chip.is-used:not(:disabled){cursor:pointer}.wlp-word-chip:disabled{cursor:default}.wlp-writing-surface{color:var(--text-main);white-space:pre-wrap;overflow-wrap:anywhere;padding:20px 0;font-family:Georgia,Times New Roman,serif;font-size:17px;line-height:2.2}.wlp-blank-number{color:#059669;vertical-align:middle;background:#10b9811f;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:17px;height:17px;margin-bottom:1px;font-family:system-ui,sans-serif;font-size:9px;font-weight:700;display:inline-flex}.wlp-blank-wrap{vertical-align:baseline;cursor:text;border-radius:12px;align-items:flex-end;gap:4px;margin:0 4px;transition:background .16s,box-shadow .16s;display:inline-flex}.wlp-blank-wrap.focused{background:#10b98112;box-shadow:0 0 0 6px #10b98112}.wlp-blank-wrap.wrong{align-items:center}.wlp-blank{min-width:100px;max-width:min(240px,100%);color:var(--text-main);text-align:center;background:0 0;border:none;border-bottom:2.5px dotted #10b981;border-radius:0;outline:none;padding:2px 4px 5px;font-family:Georgia,Times New Roman,serif;font-size:16px;font-weight:700;transition:border-color .2s,box-shadow .2s}.wlp-blank::placeholder{color:#9ca3af;letter-spacing:.18em;font-family:system-ui,sans-serif;font-size:12px;font-weight:700}.wlp-blank.focused,.wlp-blank:focus{background:#10b98108;border-color:#059669;border-bottom-style:solid;box-shadow:0 3px #10b98138}.wlp-blank.correct{color:var(--success);background:0 0;border-color:#10b981;border-bottom-style:solid}.wlp-blank.wrong{color:var(--danger);background:0 0;border-color:#ef4444;border-bottom-style:solid}.wlp-blank:disabled{cursor:default;opacity:1}.wlp-correct-answer{color:#059669;background:#10b98117;border:1px solid #10b98147;border-radius:999px;align-items:center;min-height:24px;padding:0 8px;font-family:system-ui,sans-serif;font-size:11px;font-weight:850;line-height:1;display:inline-flex}.wlp-empty-state,.wlp-empty-side{min-height:320px;color:var(--text-secondary);text-align:left;justify-content:center;align-items:center;gap:14px;padding:28px;display:flex}.wlp-empty-side{text-align:center;flex-direction:column;min-height:180px}.wlp-empty-title{color:var(--text-main);margin-bottom:4px;font-size:15px;font-weight:600}.wlp-empty-text{color:var(--text-mute);font-size:13px;line-height:1.5}.wlp-steps{border-bottom:1px solid var(--border-color);background:var(--bg-secondary);align-items:center;gap:0;padding:16px 20px;display:flex}.wlp-step{color:var(--text-dim);align-items:center;gap:7px;font-size:12px;font-weight:600;display:flex}.wlp-step.active{color:var(--interactive-accent)}.wlp-step.done{color:var(--success-text)}.wlp-step-circle{background:var(--bg-card);border:2px solid var(--border-color);width:24px;height:24px;color:var(--text-dim);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:11px;font-weight:600;display:flex}.wlp-step.active .wlp-step-circle{border-color:var(--interactive-accent);color:var(--interactive-accent);background:#10b9811a}.wlp-step.done .wlp-step-circle{color:#10b981;background:#10b9811a;border-color:#10b981}.wlp-step-line{background:var(--border-color);flex:1;height:1px;margin:0 8px}.wlp-progress-card{border-bottom:1px solid var(--border-color);padding:18px 20px 14px}.wlp-progress-head{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.wlp-progress-label{color:var(--text-main);font-size:13px;font-weight:600}.wlp-progress-sub{color:var(--text-mute);margin-top:3px;font-size:12px}.wlp-progress-score{color:#059669;font-variant-numeric:tabular-nums;font-size:22px;font-weight:700}.wlp-progress-track{background:var(--bg-secondary);border-radius:99px;height:8px;overflow:hidden}.wlp-progress-fill{background:linear-gradient(90deg,#10b981,#059669);border-radius:99px;height:100%;transition:width .2s}.wlp-blank-map-card{border-bottom:1px solid var(--border-color);padding:16px 20px 18px}.wlp-blank-map-head{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.wlp-blank-map-label{color:var(--text-main);font-size:13px;font-weight:600}.wlp-blank-map-sub{color:var(--text-mute);margin-top:3px;font-size:12px}.wlp-blank-map-score{font-variant-numeric:tabular-nums;border-radius:999px;flex-shrink:0;padding:5px 9px;font-size:11px;font-weight:600}.wlp-blank-map-score.pass{color:var(--success);background:#10b9811a;border:1px solid #10b98138}.wlp-blank-map-score.fail{color:var(--danger);background:#ef444412;border:1px solid #ef444433}.wlp-blank-map{scrollbar-gutter:stable;grid-template-columns:repeat(auto-fill,minmax(36px,1fr));gap:8px;max-height:148px;padding:2px 2px 3px;display:grid;overflow-y:auto}.wlp-blank-map-item{min-width:0;display:flex}.wlp-blank-dot{border:2px solid var(--border-color);background:var(--bg-secondary);cursor:pointer;width:100%;min-width:0;height:36px;color:var(--text-mute);font-variant-numeric:tabular-nums;border-radius:10px;justify-content:center;align-items:center;font-size:11px;font-weight:600;transition:all .15s;display:flex}.wlp-blank-dot.active{color:#059669;background:#10b9811a;border-color:#059669}.wlp-blank-dot.filled{color:#2563eb;background:#2563eb14;border-color:#2563eb}.wlp-blank-dot.correct{color:#10b981;background:#10b9811a;border-color:#10b981}.wlp-blank-dot.wrong{color:#ef4444;background:#ef444414;border-color:#ef4444}.wlp-result{border-radius:12px;align-items:center;gap:14px;margin:16px 20px 0;padding:14px 16px;display:flex}.wlp-result.pass{background:#10b9811a;border:1px solid #10b98140}.wlp-result.fail{background:#ef444412;border:1px solid #ef444433}.wlp-result-score{color:#059669;flex-shrink:0;font-size:24px;font-weight:700}.wlp-result.fail .wlp-result-score{color:#ef4444}.wlp-result-title{color:var(--text-main);margin-bottom:3px;font-size:13px;font-weight:600}.wlp-result-text{color:var(--text-secondary);font-size:12px;line-height:1.5}.wlp-actions{flex-direction:column;gap:9px;padding:16px 20px;display:flex}.wlp-submit-btn,.wlp-retry-btn,.wlp-reset-btn{cursor:pointer;border-radius:12px;justify-content:center;align-items:center;gap:6px;width:100%;padding:12px;font-size:14px;font-weight:600;transition:all .2s;display:inline-flex}.wlp-submit-btn{border:1.5px dashed var(--border-color);background:var(--bg-card);color:var(--text-mute)}.wlp-submit-btn.ready{color:#fff;background:linear-gradient(135deg,#10b981,#059669);border:none;box-shadow:0 4px 14px #10b98147}.wlp-submit-btn.ready:hover{transform:translateY(-1px);box-shadow:0 6px 20px #10b9815c}.wlp-submit-btn:disabled{cursor:not-allowed}.wlp-retry-btn{border:1px solid var(--border-danger);background:var(--bg-danger-subtle);color:var(--danger)}.wlp-retry-btn:hover{background:#ef44441a;border-color:#ef4444}.wlp-reset-btn{border:1px solid var(--border-color);background:var(--bg-card);color:var(--text-secondary)}.wlp-reset-btn:hover{color:#059669;border-color:#059669}.wlp-feedback-list{border:1px solid var(--border-color);border-radius:14px;margin:0 20px 18px;overflow:hidden}.wlp-feedback-title{background:var(--bg-secondary);border-bottom:1px solid var(--border-color);color:var(--text-main);padding:11px 13px;font-size:12px;font-weight:600}.wlp-feedback-row{border-bottom:1px solid var(--border-color);align-items:center;gap:9px;padding:10px 13px;font-size:13px;display:flex}.wlp-feedback-row:last-child{border-bottom:none}.wlp-feedback-row.correct{color:var(--success)}.wlp-feedback-row.wrong{color:var(--danger)}.wlp-feedback-index{background:var(--bg-secondary);width:22px;height:22px;color:var(--text-secondary);border-radius:7px;flex-shrink:0;justify-content:center;align-items:center;font-size:11px;font-weight:600;display:inline-flex}.wlp-feedback-value{overflow-wrap:anywhere;flex:1;min-width:0;font-weight:700}.wlp-feedback-note{color:var(--text-mute);padding:13px;font-size:12px;line-height:1.5}.wlp-documents{padding:0 20px 20px}.wlp-documents .skill-practice-card{box-shadow:none}@media (width<=640px){.wlp-root{padding-bottom:56px}.wlp-progress-grid{grid-template-columns:1fr}.wlp-writing-panel{min-height:0;padding-bottom:18px;padding-left:16px;padding-right:16px}.wlp-panel-top,.wlp-writing-surface,.wlp-progress-card,.wlp-actions{padding-left:0;padding-right:0}.wlp-panel-title{font-size:17px}.wlp-writing-surface{padding-top:22px;padding-bottom:28px;font-size:16px;line-height:2.1}.wlp-steps{padding:14px 16px}.wlp-step span:not(.wlp-step-circle){display:none}.wlp-blank-map{padding-left:16px;padding-right:16px}.wlp-feedback-list,.wlp-result{margin-left:16px;margin-right:16px}}.rlp-root{max-width:960px;margin:0 auto;padding:0 0 80px}.rlp-breadcrumb{color:var(--text-mute);flex-wrap:nowrap;align-items:center;gap:4px;padding:12px 0 8px;font-size:12px;display:flex;overflow:hidden}.rlp-back{cursor:pointer;color:var(--primary);white-space:nowrap;background:0 0;border:none;border-radius:7px;flex-shrink:0;align-items:center;gap:5px;padding:4px 8px;font-size:12px;font-weight:700;transition:background .15s;display:inline-flex}.rlp-back:hover{background:#0ea5e914}.rlp-bc-sep{color:var(--text-dim);opacity:.4;flex-shrink:0}.rlp-bc-item{white-space:nowrap;text-overflow:ellipsis;flex-shrink:1;min-width:0;overflow:hidden}.rlp-bc-sit{color:var(--text-secondary);max-width:120px;font-weight:500}.rlp-bc-current{color:var(--text-main);max-width:180px;font-weight:700}.rlp-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:20px;display:flex}.rlp-header-main{flex:1;min-width:0}.rlp-badges{flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:8px;display:flex}.rlp-badge{letter-spacing:.03em;border-radius:99px;align-items:center;gap:4px;padding:3px 10px;font-size:11px;font-weight:700;display:inline-flex}.rlp-badge-type{border:1px solid #0ea5e940}.rlp-badge-meta{background:var(--bg-secondary);color:var(--text-secondary);border:1px solid var(--border-color)}.rlp-badge-done{color:#10b981;background:#10b9811a;border:1px solid #10b98140}.rlp-badge-preview{color:#8b5cf6;background:#8b5cf61a;border:1px solid #8b5cf640}.rlp-xp-pill{color:var(--warning);white-space:nowrap;background:#f59e0b1a;border:1px solid #f59e0b40;border-radius:99px;align-items:center;gap:6px;padding:3px 10px;font-size:11px;font-weight:600;display:inline-flex}.rlp-title{color:var(--text-main);margin:0 0 5px;font-size:20px;font-weight:700;line-height:1.35}.rlp-desc{color:var(--text-mute);margin:0;font-size:13px;line-height:1.6}.rlp-body{grid-template-columns:1fr;align-items:start;gap:20px;display:grid}.rlp-article-panel,.rlp-quiz-panel{background:var(--bg-card);border:1px solid var(--border-color);box-shadow:var(--shadow-sm);border-radius:16px;overflow:visible}.rlp-article-panel{min-height:0;max-height:none;padding:0 24px 18px;overflow:visible}.rlp-quiz-panel{flex-direction:column;max-height:none;display:flex;position:static;overflow:visible}.rlp-study-panel{border-radius:16px;margin-bottom:22px}.rlp-tab-nav .rlp-tab.active{color:#0369a1;border-bottom-color:var(--skill-reading-color)}.dark .rlp-tab-nav .rlp-tab.active{color:var(--skill-reading-color)}.rlp-tab-content{padding:20px 22px 22px}.rlp-progress-grid{grid-template-columns:1fr}.slp-prog-fill.reading{background:linear-gradient(90deg,#0284c7,#0ea5e9)}.rlp-panel-top{border-bottom:1px solid color-mix(in srgb, var(--border-color) 70%, transparent);background:0 0;justify-content:space-between;align-items:flex-start;gap:16px;padding:8px 0 14px;display:flex}.rlp-panel-kicker{letter-spacing:.06em;text-transform:uppercase;color:#0284c7;align-items:center;gap:6px;margin-bottom:8px;font-size:11px;font-weight:600;display:flex}.rlp-article-title{color:var(--text-main);margin:0;font-size:24px;font-weight:700;line-height:1.25}.rlp-read-badge{color:#0284c7;background:#0ea5e91a;border:1px solid #0ea5e938;border-radius:99px;flex-shrink:0;padding:5px 10px;font-size:11px;font-weight:600}.rlp-article-body{color:var(--text-secondary);white-space:pre-wrap;padding:20px 0 16px;font-family:Georgia,Times New Roman,serif;font-size:17px;line-height:1.9}.rlp-empty-state,.rlp-empty-quiz{min-height:320px;color:var(--text-secondary);text-align:left;justify-content:center;align-items:center;gap:14px;padding:28px;display:flex}.rlp-empty-quiz{text-align:center;flex-direction:column}.rlp-empty-title{color:var(--text-main);margin-bottom:4px;font-size:15px;font-weight:600}.rlp-empty-text{color:var(--text-mute);font-size:13px;line-height:1.5}.rlp-steps{border-bottom:1px solid var(--border-color);background:var(--bg-secondary);align-items:center;gap:0;padding:16px 20px;display:flex}.rlp-step{color:var(--text-dim);align-items:center;gap:7px;font-size:12px;font-weight:600;display:flex}.rlp-step.active{color:#0284c7}.rlp-step.done{color:var(--success-text)}.rlp-step-circle{background:var(--bg-card);border:2px solid var(--border-color);width:24px;height:24px;color:var(--text-dim);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:11px;font-weight:600;display:flex}.rlp-step.active .rlp-step-circle{color:#0284c7;background:#0ea5e91a;border-color:#0284c7}.rlp-step.done .rlp-step-circle{color:#10b981;background:#10b9811a;border-color:#10b981}.rlp-step-line{background:var(--border-color);flex:1;height:1px;margin:0 8px}.rlp-q-map{border-bottom:1px solid var(--border-color);flex-wrap:wrap;align-items:center;gap:6px;padding:12px 20px;display:flex}.rlp-q-dot{border:2px solid var(--border-color);background:var(--bg-secondary);cursor:pointer;width:30px;height:30px;color:var(--text-mute);border-radius:8px;justify-content:center;align-items:center;font-size:11px;font-weight:600;transition:all .15s;display:flex}.rlp-q-dot.active{color:#0284c7;background:#0ea5e91a;border-color:#0284c7}.rlp-q-dot.answered{color:#2563eb;background:#2563eb14;border-color:#2563eb}.rlp-q-dot.correct{color:#10b981;background:#10b9811a;border-color:#10b981}.rlp-q-dot.wrong{color:#ef4444;background:#ef444414;border-color:#ef4444}.rlp-q-count{color:var(--text-mute);white-space:nowrap;margin-left:auto;font-size:11px;font-weight:600}.rlp-q-label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-mute);margin-bottom:10px;font-size:11px;font-weight:600}.rlp-q-text{color:var(--text-main);margin-bottom:18px;font-size:17px;font-weight:600;line-height:1.5}.rlp-choices{flex-direction:column;gap:8px;display:flex}.rlp-choice{border:1.5px solid var(--border-color);background:var(--bg-secondary);cursor:pointer;text-align:left;border-radius:12px;align-items:center;gap:12px;width:100%;padding:12px 14px;transition:border-color .15s,background .15s,transform .1s;display:flex}.rlp-choice:hover:not(:disabled):not(.chosen):not(.correct):not(.wrong){background:#0ea5e90f;border-color:#0284c7;transform:translate(2px)}.rlp-choice:disabled{cursor:default}.rlp-choice.chosen{background:#2563eb14;border-color:#2563eb}.rlp-choice.correct{background:#10b98114;border-color:#10b981}.rlp-choice.wrong{background:#ef44440f;border-color:#ef4444}.rlp-choice-label{background:var(--bg-card);border:1.5px solid var(--border-color);width:28px;height:28px;color:var(--text-secondary);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;font-size:12px;font-weight:600;transition:all .15s;display:flex}.rlp-choice.chosen .rlp-choice-label{color:#fff;background:#2563eb;border-color:#2563eb}.rlp-choice.correct .rlp-choice-label{color:#fff;background:#10b981;border-color:#10b981}.rlp-choice.wrong .rlp-choice-label{color:#fff;background:#ef4444;border-color:#ef4444}.rlp-choice-text{color:var(--text-main);flex:1;font-size:14px;font-weight:500;line-height:1.45}.rlp-choice-icon{flex-shrink:0}.rlp-choice-icon.correct{color:#10b981}.rlp-choice-icon.wrong{color:#ef4444}.rlp-q-nav{justify-content:space-between;gap:10px;margin-top:16px;display:flex}.rlp-q-nav-btn{border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-secondary);cursor:pointer;border-radius:9px;justify-content:center;align-items:center;gap:5px;padding:7px 14px;font-size:13px;font-weight:600;transition:all .15s;display:inline-flex}.rlp-q-nav-btn:disabled{opacity:.35;cursor:default}.rlp-q-nav-btn:not(:disabled):hover{color:#0284c7;border-color:#0284c7}.rlp-submit-area{border-top:1px solid var(--border-color);background:var(--bg-secondary);flex-direction:column;gap:12px;padding:16px 20px;display:flex}.rlp-submit-btn{border:1.5px dashed var(--border-color);background:var(--bg-card);width:100%;color:var(--text-mute);cursor:pointer;border-radius:12px;padding:13px;font-size:14px;font-weight:600;transition:all .2s}.rlp-submit-btn.ready{color:#fff;background:linear-gradient(135deg,#0284c7,#0369a1);border:none;box-shadow:0 4px 14px #0ea5e947}.rlp-submit-btn.ready:hover{transform:translateY(-1px);box-shadow:0 6px 20px #0ea5e95c}.rlp-submit-btn:disabled{cursor:not-allowed}.rlp-result{border-radius:12px;align-items:center;gap:14px;padding:14px 16px;display:flex}.rlp-result.pass{background:#10b9811a;border:1px solid #10b98140}.rlp-result.fail{background:#ef444412;border:1px solid #ef444433}.rlp-result-score{flex-shrink:0;font-size:26px;font-weight:700}.rlp-result.pass .rlp-result-score{color:#10b981}.rlp-result.fail .rlp-result-score{color:#ef4444}.rlp-result-msg{font-size:13px;font-weight:600;line-height:1.5}.rlp-result.pass .rlp-result-msg{color:var(--success)}.rlp-result.fail .rlp-result-msg{color:var(--danger)}.rlp-retry-btn{border:1px solid var(--border-color);background:var(--bg-card);width:100%;color:var(--text-secondary);cursor:pointer;border-radius:10px;justify-content:center;align-items:center;gap:6px;padding:10px;font-size:13px;font-weight:600;transition:all .15s;display:inline-flex}.rlp-retry-btn:hover{color:#0284c7;border-color:#0284c7}.rlp-documents{padding:0 20px 20px}.rlp-documents .skill-practice-card{box-shadow:none}@media (width<=920px){.rlp-body,.rlp-progress-grid{grid-template-columns:1fr}.rlp-quiz-panel{max-height:none;position:static;overflow:visible}}@media (width<=640px){.rlp-root{padding-bottom:56px}.rlp-article-panel{min-height:0;padding-bottom:14px;padding-left:16px;padding-right:16px}.rlp-panel-top,.rlp-question-body,.rlp-submit-area{padding-left:0;padding-right:0}.rlp-article-body{padding:24px 20px 30px;font-size:16px;line-height:1.85}.rlp-steps{padding:14px 16px}.rlp-step span{display:none}.rlp-q-map{padding-left:16px;padding-right:16px}.rlp-choice{align-items:flex-start}}.admin-dash-hero{grid-template-columns:1.5fr 1fr;align-items:stretch;gap:32px;margin-bottom:40px;display:grid}.admin-dash-kpi-strip{grid-template-columns:repeat(3,1fr);gap:24px;margin-bottom:40px;display:grid}.admin-dash-analytics{grid-template-columns:1fr 1fr;gap:32px;margin-bottom:40px;display:grid}@media (width<=860px){.admin-dash-hero{grid-template-columns:1fr;gap:16px;margin-bottom:20px}.admin-dash-hero>:last-child{display:none}.admin-dash-kpi-strip{grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:20px}.admin-dash-analytics{grid-template-columns:1fr;gap:16px;margin-bottom:20px}.admin-dash-analytics>:last-child{display:none}.admin-dash-hero>:first-child{border-radius:20px!important;padding:28px!important}.admin-dash-hero-btns{flex-wrap:wrap;gap:10px}.admin-dash-hero-btns button{flex:auto;justify-content:center;padding:12px 18px!important;font-size:14px!important}}@media (width<=640px){.admin-dash-kpi-strip{margin-bottom:20px;grid-template-columns:repeat(3,1fr)!important;gap:6px!important}.admin-kpi-card{border-radius:10px!important;flex-direction:column!important;align-items:flex-start!important;gap:4px!important;padding:10px 8px!important}.admin-kpi-icon{display:none!important}.admin-kpi-label{white-space:nowrap;text-overflow:ellipsis;max-width:100%;overflow:hidden;letter-spacing:0!important;margin-bottom:2px!important;font-size:9px!important}.admin-kpi-value{font-size:16px!important;line-height:1!important}.admin-role-table{min-width:0!important}.admin-role-table th:first-child,.admin-role-table td:first-child,.admin-role-table th:nth-child(3),.admin-role-table td:nth-child(3),.admin-role-table th:nth-child(5),.admin-role-table td:nth-child(5){display:none}.admin-students-table{min-width:0!important}.admin-students-table th:first-child,.admin-students-table td:first-child,.admin-students-table th:nth-child(3),.admin-students-table td:nth-child(3),.admin-students-table th:nth-child(4),.admin-students-table td:nth-child(4),.admin-students-table th:nth-child(5),.admin-students-table td:nth-child(5),.admin-students-table th:nth-child(6),.admin-students-table td:nth-child(6),.admin-students-table th:nth-child(9),.admin-students-table td:nth-child(9){display:none}.admin-overview-table{min-width:0!important}.admin-overview-table th:nth-child(3),.admin-overview-table td:nth-child(3),.admin-overview-table th:nth-child(4),.admin-overview-table td:nth-child(4){display:none}}.admin-filter-secondary{display:contents}@media (width<=480px){.admin-filter-secondary{display:none!important}.admin-users-nav-tab{gap:6px;padding:9px 12px;font-size:12px}}.faculty-dash-hero-stats{border-top:1px solid var(--border-color);grid-template-columns:repeat(3,1fr);gap:24px;margin-top:32px;padding-top:32px;display:grid}.faculty-dash-analytics{grid-template-columns:1fr 1fr;gap:32px;margin-bottom:40px;display:grid}@media (width<=860px){.faculty-dash-analytics{grid-template-columns:1fr;gap:16px;margin-bottom:20px}.faculty-dash-analytics>:last-child{display:none}.faculty-dash-hero-stats{gap:16px;margin-top:20px;padding-top:20px}}@media (width<=640px){.faculty-stats-grid>:nth-child(3),.faculty-stats-grid>:nth-child(4){display:none}.faculty-dash-hero-stats>div>div:last-child{font-size:20px!important}}@media (width<=480px){.faculty-filter-secondary{display:none}.faculty-toolbar-grid-5,.faculty-toolbar-grid-4{grid-template-columns:1fr 1fr}.faculty-toolbar-grid-5>:first-child,.faculty-toolbar-grid-4>:first-child{grid-column:1/-1}}@media (width<=640px){.hero-card{min-height:280px!important;padding:28px!important}.hero-card .hero-headline{margin-bottom:12px;font-size:clamp(1.8rem,7vw,2.5rem)}.hero-card .hero-body{margin-bottom:20px;font-size:13px}}.dept-dash-hero{grid-template-columns:1.5fr 1fr;align-items:stretch;gap:32px;margin-bottom:40px;display:grid}.dept-dash-kpi-strip{grid-template-columns:repeat(4,1fr);gap:24px;margin-bottom:40px;display:grid}.dept-dash-analytics{grid-template-columns:1fr 1fr;gap:32px;margin-bottom:40px;display:grid}.dept-dash-hero-stats{border-top:1px solid var(--border-color);grid-template-columns:1fr 1fr;gap:24px;padding-top:32px;display:grid}@media (width<=860px){.dept-dash-hero{grid-template-columns:1fr;gap:16px;margin-bottom:20px}.dept-dash-hero>:first-child{border-radius:20px!important;padding:28px!important}.dept-dash-hero-btns{flex-wrap:wrap;gap:10px}.dept-dash-hero-btns button{flex:auto;justify-content:center;padding:12px 18px!important;font-size:14px!important}.dept-dash-hero>:last-child{display:none}.dept-dash-kpi-strip{grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:20px}.dept-dash-analytics{grid-template-columns:1fr;gap:16px;margin-bottom:20px}.dept-dash-analytics>:last-child{display:none}}@media (width<=400px){.dept-dash-kpi-strip{grid-template-columns:1fr 1fr}}@media (width<=640px){.faculty-page .faculty-stats-grid{grid-template-columns:repeat(2,1fr)!important}}@media (width<=480px){.faculty-toolbar-grid-4>.faculty-filter-secondary{display:none}.faculty-toolbar-grid-4{grid-template-columns:1fr 1fr}.faculty-toolbar-grid-4>:first-child{grid-column:1/-1}}.advisor-dash-hero{grid-template-columns:1.5fr 1fr;align-items:stretch;gap:32px;margin-bottom:40px;display:grid}.advisor-dash-kpi-strip{grid-template-columns:repeat(4,1fr);gap:24px;margin-bottom:40px;display:grid}.advisor-dash-analytics{grid-template-columns:1fr 1fr;gap:32px;margin-bottom:40px;display:grid}.advisor-dash-hero-stats{border-top:1px solid var(--border-color);grid-template-columns:1fr 1fr;gap:24px;padding-top:32px;display:grid}@media (width<=860px){.advisor-dash-hero{grid-template-columns:1fr;gap:16px;margin-bottom:20px}.advisor-dash-hero>:first-child{border-radius:20px!important;padding:28px!important}.advisor-dash-hero-btns{flex-wrap:wrap;gap:10px}.advisor-dash-hero-btns button{flex:auto;justify-content:center;padding:12px 18px!important;font-size:14px!important}.advisor-dash-hero>:last-child{display:none}.advisor-dash-kpi-strip{grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:20px}.advisor-dash-analytics{grid-template-columns:1fr;gap:16px;margin-bottom:20px}.advisor-dash-analytics>:last-child{display:none}}@media (width<=400px){.advisor-dash-kpi-strip{grid-template-columns:1fr 1fr}}@media (width<=640px){.advisor-perf-bar{display:none}.advisor-perf-xp{min-width:0!important}.advisor-perf-xp>:first-child{font-size:15px!important}.advisor-perf-status{display:none}.advisor-students-table{min-width:0!important}.advisor-students-table th:nth-child(3),.advisor-students-table td:nth-child(3),.advisor-students-table th:nth-child(6),.advisor-students-table td:nth-child(6),.advisor-students-table th:nth-child(7),.advisor-students-table td:nth-child(7),.advisor-action-classroom{display:none}}@media (width<=480px){.advisor-filter-sort,.advisor-filter-bulk{display:none}.profile-kpi-grid{grid-template-columns:1fr 1fr!important}}.student-classroom-detail{max-width:1080px;margin:0 auto;padding-bottom:60px}.classroom-detail-grid{grid-template-columns:minmax(0,2fr) minmax(280px,1fr);gap:24px;display:grid}.student-classmates-card{padding:24px}.student-classmates-head{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:22px;display:flex}.student-classmates-title{align-items:flex-start;gap:10px;min-width:0;display:flex}.student-classmates-title h2{color:var(--text-main);letter-spacing:-.02em;margin:0;font-size:18px;font-weight:700}.student-classmates-title p{color:var(--text-secondary);margin:4px 0 0;font-size:12.5px}.student-classmates-rank{border:1px solid color-mix(in srgb, var(--classroom-accent) 24%, var(--border-color) 76%);background:color-mix(in srgb, var(--classroom-accent) 8%, var(--bg-card) 92%);text-align:right;border-radius:14px;flex-shrink:0;min-width:92px;padding:9px 12px}.student-classmates-rank span{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.06em;font-size:10px;font-weight:700;display:block}.student-classmates-rank strong{color:var(--classroom-accent);margin-top:2px;font-size:18px;font-weight:900;display:block}.student-classmates-list{flex-direction:column;gap:10px;display:flex}.student-roster-list{padding-bottom:2px;overflow-x:auto}.student-roster-header,.student-classmate-row{grid-template-columns:44px minmax(180px,2fr) minmax(120px,1fr) 96px;align-items:center;gap:12px;min-width:600px;display:grid}.student-roster-header{border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-secondary);letter-spacing:.07em;text-transform:uppercase;border-radius:10px;padding:12px 16px;font-size:11px;font-weight:800}.student-roster-header>:first-child,.student-roster-header>:last-child{text-align:center}.student-classmate-row{border:1px solid var(--border-color);background:linear-gradient(180deg, color-mix(in srgb, var(--bg-card) 92%, var(--bg-secondary) 8%), var(--bg-card));border-radius:14px;min-width:600px;padding:14px 16px}.student-classmate-row.is-me{border-color:var(--classroom-accent);background:linear-gradient(180deg, color-mix(in srgb, var(--bg-card) 84%, var(--classroom-strong) 16%), var(--bg-card))}.student-classmate-rank{border:1px solid var(--border-color);background:var(--bg-secondary);width:30px;height:30px;color:var(--text-secondary);border-radius:10px;justify-content:center;justify-self:center;align-items:center;font-size:12px;font-weight:800;display:flex}.student-classmate-identity{min-width:0}.student-classmate-name-line{align-items:center;gap:8px;min-width:0;display:flex}.student-classmate-name{min-width:0;color:var(--text-main);text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.student-classmate-me-badge{background:var(--classroom-accent);color:#fff;text-transform:uppercase;border-radius:4px;flex-shrink:0;padding:1px 6px;font-size:10px;font-weight:800}.student-classmate-meta{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:12px;overflow:hidden}.student-roster-id{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;font-weight:700;overflow:hidden}.student-classmate-xp{box-sizing:border-box;border:1px solid color-mix(in srgb, var(--classroom-accent) 18%, var(--border-color) 82%);background:color-mix(in srgb, var(--classroom-accent) 8%, var(--bg-card) 92%);width:100%;min-width:0;color:var(--classroom-accent);border-radius:10px;justify-content:center;align-items:center;gap:6px;padding:6px 12px;font-size:13px;font-weight:700;display:inline-flex}.student-classmates-footer{border-top:1px solid var(--border-color);color:var(--text-secondary);justify-content:space-between;align-items:center;gap:14px;margin-top:16px;padding-top:16px;font-size:12.5px;display:flex}.student-classmates-footer button{border:1px solid color-mix(in srgb, var(--classroom-accent) 36%, var(--border-color) 64%);background:color-mix(in srgb, var(--classroom-accent) 10%, var(--bg-card) 90%);color:var(--classroom-accent);cursor:pointer;border-radius:999px;flex-shrink:0;padding:8px 12px;font-size:12.5px;font-weight:800}@media (width<=1024px){.classroom-detail-grid{grid-template-columns:1fr}.classroom-sidebar-secondary{display:none!important}.classroom-detail-sidebar{gap:0}}@media (width<=560px){.student-classroom-detail{padding-bottom:44px}.student-classmates-card{padding:18px}.student-classmates-head,.student-classmates-footer{flex-direction:column;align-items:stretch}.student-classmates-rank{text-align:left;width:100%}.student-classmate-row{gap:10px;min-width:0;padding:12px;grid-template-columns:34px minmax(0,1fr) auto!important}.student-roster-header,.student-roster-id{display:none}.student-classmate-xp{grid-column:auto;justify-self:flex-end;min-width:0;padding:5px 10px;font-size:12px}.student-classmates-footer button{width:100%}}@media (width<=480px){.student-hero-section{min-height:clamp(320px,55vh,400px)!important}.student-hero-btns{gap:10px!important}}@media (width<=640px){.learning-path-content-card{min-height:auto!important}}@media (width<=480px){.roadmap-year-header{flex-direction:column!important;align-items:flex-start!important}}@media (width<=640px){.classroom-detail-header{border-radius:16px!important;margin-bottom:16px!important;padding:18px!important}.classroom-detail-icon{border-radius:12px!important;width:40px!important;height:40px!important}.classroom-detail-metrics{grid-template-columns:repeat(3,1fr)!important;gap:8px!important}.classroom-detail-metrics>div{border-radius:10px!important;flex-direction:column!important;align-items:flex-start!important;gap:8px!important;padding:10px 12px!important}.classroom-detail-metrics>div>div:first-child{border-radius:8px!important;padding:6px!important}.classroom-detail-metrics>div>div:last-child>div:first-child{font-size:10px!important}.classroom-detail-metrics>div>div:last-child>div:last-child{font-size:14px!important;font-weight:800!important}.classroom-detail-metrics>div:last-child .btn{display:none!important}.teacher-member-grid{grid-template-columns:40px 1fr auto!important;gap:10px!important;padding:12px!important}.teacher-member-grid>:nth-child(3),.teacher-member-grid>:nth-child(4){display:none}.teacher-member-grid>:first-child>div{width:26px!important;height:26px!important;font-size:11px!important}.teacher-member-grid>:nth-child(2){gap:10px!important}}@media (width<=480px){.register-2col{grid-template-columns:1fr!important}}.certificate-toolbar{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:20px;display:flex}.certificate-preview-note{max-width:1120px;margin:0 auto 16px}.certificate-scroll-wrap{-webkit-overflow-scrolling:touch;max-width:1120px;margin:0 auto;padding-bottom:10px;overflow-x:auto}.certificate-sheet{aspect-ratio:297/210;width:min(100%,1100px);min-width:900px;margin:0 auto;font-family:Inter,Avenir Next,Helvetica Neue,Arial,sans-serif}.certificate-inner-frame{pointer-events:none;border:1px solid;border-radius:2px;position:absolute;inset:20px;box-shadow:inset 0 0 0 5px #b99a5214}.certificate-watermark{opacity:.028;pointer-events:none;width:300px;max-width:32%;position:absolute;top:50%;left:50%;transform:translate(-50%,-45%)}.certificate-corner{opacity:.28;pointer-events:none;width:92px;height:92px;position:absolute}.certificate-corner--top-left{border-top:1px solid;border-left:1px solid;top:34px;left:34px}.certificate-corner--bottom-right{border-bottom:1px solid;border-right:1px solid;bottom:34px;right:34px}.certificate-headline{z-index:1;position:relative}.certificate-university{color:#202833;letter-spacing:.12em;text-transform:uppercase;font-size:clamp(12px,1.25vw,15px);font-weight:650}.certificate-faculty{color:#7b8794;letter-spacing:.22em;text-transform:uppercase;margin-top:5px;font-size:clamp(9px,1vw,12px);font-weight:650}.certificate-divider{border-radius:99px;width:148px;height:1px;margin:16px auto 14px}.certificate-title-kicker{color:#18202a;letter-spacing:.035em;text-transform:uppercase;font-family:Baskerville,Libre Baskerville,Garamond,Georgia,Times New Roman,serif;font-size:clamp(50px,6vw,78px);font-weight:400;line-height:.9}.certificate-title-subtitle{color:#3f4a56;letter-spacing:.09em;text-transform:lowercase;margin-top:8px;font-family:Baskerville,Libre Baskerville,Garamond,Georgia,Times New Roman,serif;font-size:clamp(20px,2.2vw,30px);font-style:italic;line-height:1}.certificate-year-pill{letter-spacing:.18em;text-transform:uppercase;border:1px solid;border-radius:999px;margin-top:17px;padding:7px 18px;font-size:9px;font-weight:700;display:inline-flex}.certificate-landscape-body{z-index:1;max-width:880px;margin:16px auto 0;display:block;position:relative}.certificate-main-copy{min-width:0}.certificate-presented-text{color:#6b7684;letter-spacing:.24em;text-transform:uppercase;font-size:11px;font-weight:700}.certificate-recipient-name{color:#121923;letter-spacing:.005em;word-break:break-word;border-bottom:1px solid;max-width:100%;margin:15px auto 17px;padding:0 34px 12px;font-family:Baskerville,Libre Baskerville,Garamond,Georgia,Times New Roman,serif;font-size:clamp(48px,5.8vw,76px);font-weight:400;line-height:1.05;display:inline-block}.certificate-body-copy{color:#4d5966;letter-spacing:.01em;font-family:Avenir Next,Helvetica Neue,Arial,sans-serif;font-size:clamp(12px,1.22vw,15px);line-height:1.8}.certificate-course-title{margin:8px auto 7px;font-family:Baskerville,Libre Baskerville,Garamond,Georgia,Times New Roman,serif;font-size:clamp(24px,2.8vw,36px);font-weight:500;line-height:1.14}.certificate-signatures{z-index:1;grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;gap:104px;max-width:740px;margin-left:auto;margin-right:auto;display:grid;position:relative}.certificate-signature-script{font-family:Snell Roundhand,Baskerville,Brush Script MT,cursive;font-size:25px;font-style:italic}.certificate-metadata{color:#7b8794;letter-spacing:.14em;text-transform:uppercase;z-index:1;flex-wrap:wrap;justify-content:center;gap:8px 16px;margin-top:14px;font-size:9px;font-weight:650;display:flex;position:relative}.certificate-metadata span:not(:last-child):after{content:"";border-right:1px solid #64748b73;margin-left:16px}@media (width<=640px){.cert-mobile-hint{display:block!important}.certificate-sheet{min-width:760px}.certificate-title-kicker{font-size:46px}.certificate-title-subtitle{font-size:22px}.certificate-landscape-body{max-width:640px}.certificate-recipient-name{padding-left:22px;padding-right:22px;font-size:48px}.certificate-signatures{gap:36px}.certificate-metadata{font-size:9px}}.dark .user-profile-btn{background:var(--bg-secondary);border-color:var(--border-color)}.dark .user-profile-btn:hover{background:var(--bg-accent)}.dark .path-dot.completed{color:#34d399;background:#34d39926;border-color:#34d3994d}.dark .badge-set.orange{color:var(--accent-vermilion);background:#05966926}.dark .badge-set.blue{color:#60a5fa;background:#3b82f626}.admin-users-nav-select{display:none}@media (width<=480px){.admin-users-nav-select{border:1px solid var(--border-color);background:var(--bg-secondary);width:100%;color:var(--text-main);cursor:pointer;border-radius:12px;outline:none;padding:10px 12px;font-size:14px;font-weight:700;display:block}.admin-users-nav-wrap{display:none}}.admin-lesson-desktop-notice{display:none}.admin-lesson-page{flex-direction:column;gap:22px;display:flex}.admin-lesson-page .page-header-bar{border:1px solid var(--dashboard-hero-border);background:radial-gradient(circle at 85% 8%, color-mix(in srgb, var(--primary) 18%, transparent), transparent 34%), var(--dashboard-kpi-bg);box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:28px;align-items:center;padding:28px 30px;position:relative;overflow:hidden}.admin-lesson-page .page-header-bar:before{content:"";background:linear-gradient(#10b981,#38bdf8);width:8px;position:absolute;inset:0 auto 0 0}.admin-lesson-page .page-header-bar:after{content:"";background:linear-gradient(90deg,#0000,#10b9816b,#0000);height:1px;position:absolute;bottom:0;left:18px;right:18px}.admin-lesson-page .page-header-bar__lead,.admin-lesson-page .page-header-bar__actions{z-index:1;position:relative}.admin-lesson-page .page-header-bar__lead{gap:14px}.admin-lesson-page .page-header-bar__icon-wrap{border:1px solid color-mix(in srgb, #10b981 26%, var(--border-color) 74%);background:linear-gradient(135deg, color-mix(in srgb, #10b981 18%, var(--bg-card) 82%), color-mix(in srgb, #38bdf8 8%, var(--bg-card) 92%));color:#10b981;border-radius:18px;width:58px;height:58px;box-shadow:0 14px 30px #10b9812e}.admin-lesson-page .page-header-bar__title{letter-spacing:0;font-size:30px;line-height:1.15}.admin-lesson-page .page-header-bar__subtitle{color:var(--text-secondary);margin-top:6px;font-size:14px;font-weight:700}.admin-lesson-page .page-header-bar__actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.admin-lesson-state{border:1px solid var(--dashboard-hero-border);background:radial-gradient(circle at 50% 0%, #10b9811a, transparent 38%), var(--dashboard-kpi-bg);min-height:320px;box-shadow:var(--shadow-soft);color:var(--text-secondary);text-align:center;border-radius:28px;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:42px 28px;display:flex}.admin-lesson-state svg{color:#10b981}.admin-lesson-state strong{color:var(--text-main);font-size:18px;font-weight:900}.admin-lesson-state span{max-width:520px;color:var(--text-secondary);font-size:13px;line-height:1.5}.admin-lesson-state--error svg{color:var(--danger)}.admin-lesson-header{border:1px solid var(--dashboard-hero-border);background:radial-gradient(circle at 85% 8%, color-mix(in srgb, var(--primary) 18%, transparent), transparent 34%), var(--dashboard-kpi-bg);box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:28px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:28px 30px;display:flex;position:relative;overflow:hidden}.admin-lesson-header:before{content:"";background:linear-gradient(#10b981,#38bdf8);width:8px;position:absolute;inset:0 auto 0 0}.admin-lesson-header:after{content:"";background:linear-gradient(90deg,#0000,#10b9816b,#0000);height:1px;position:absolute;bottom:0;left:18px;right:18px}.admin-lesson-header__main{align-items:center;gap:16px;min-width:0;display:flex}.admin-lesson-back-btn{border:1px solid color-mix(in srgb, #10b981 26%, var(--border-color) 74%);background:var(--bg-secondary);width:42px;height:42px;color:var(--text-secondary);cursor:pointer;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;padding:0;transition:all .2s cubic-bezier(.16,1,.3,1);display:inline-flex}.admin-lesson-back-btn:hover{color:#10b981;background:var(--bg-card);border-color:#10b981;transform:translate(-3px);box-shadow:0 4px 12px #10b98133}.admin-lesson-header__title{min-width:0}.admin-lesson-header__title h1{color:var(--text-main);letter-spacing:-.02em;overflow-wrap:anywhere;margin:0;font-size:26px;font-weight:900;line-height:1.2}.admin-lesson-header__subtitle{color:var(--text-secondary);margin-top:6px;font-size:13.5px;font-weight:700}.admin-lesson-header__meta,.admin-lesson-header__actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.admin-lesson-header__actions{justify-content:flex-end}.admin-lesson-action-btn{border-radius:12px;gap:6px;font-size:13px;font-weight:850}.admin-lesson-chip,.admin-lesson-status-chip{white-space:nowrap;border-radius:999px;align-items:center;gap:5px;min-height:26px;padding:4px 12px;font-size:12px;font-weight:800;display:inline-flex;box-shadow:0 1px 3px #00000005}.admin-lesson-chip--primary{color:var(--primary);background:#0596691a;border:1px solid #0596692e}.admin-lesson-chip--success{color:#059669;background:#10b9811a;border:1px solid #10b9812e}.admin-lesson-chip--warning{color:#d97706;background:#f59e0b1a;border:1px solid #f59e0b2e}.admin-lesson-meta-text{color:var(--text-mute);font-size:13px;font-weight:650}.admin-lesson-command{color:#f8fafc;box-shadow:var(--shadow-lg);background:radial-gradient(circle at 86% 10%,#10b98133,#0000 34%),linear-gradient(135deg,#111827 0%,#030712 100%),#020617;border:1px solid #ffffff14;border-radius:32px;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);gap:22px;margin-bottom:8px;padding:34px;display:grid;position:relative;overflow:hidden}.admin-lesson-command:before{content:"";pointer-events:none;background-image:linear-gradient(#94a3b814 1px,#0000 1px),linear-gradient(90deg,#94a3b814 1px,#0000 1px);background-size:28px 28px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(90deg,#000000b3,#0000 72%);mask-image:linear-gradient(90deg,#000000b3,#0000 72%)}.admin-lesson-command:after{content:"";pointer-events:none;background:radial-gradient(circle,#10b9813d,#0000 66%);border:1px solid #10b9814d;border-radius:999px;width:260px;height:260px;position:absolute;top:-110px;right:-80px}.admin-lesson-command__copy,.admin-lesson-command__stats{z-index:1;position:relative}.admin-lesson-command__eyebrow{color:#6ee7b7;text-transform:uppercase;letter-spacing:0;background:#0f172a7a;border:1px solid #6ee7b747;border-radius:999px;align-items:center;gap:8px;margin-bottom:10px;padding:7px 10px;font-size:11px;font-weight:900;display:inline-flex}.admin-lesson-command h2{color:#fff;letter-spacing:0;max-width:720px;margin:0;font-size:36px;font-weight:900;line-height:1.05}.admin-lesson-command p{color:#94a3b8;max-width:720px;margin:8px 0 0;font-size:15px;line-height:1.5}.admin-lesson-command__stats{grid-template-columns:1fr;gap:12px;display:grid}.admin-lesson-command__stat{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ffffff0d;border:1px solid #ffffff1a;border-radius:18px;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;min-height:64px;padding:14px 16px;display:grid;box-shadow:inset 0 1px #ffffff0f}.admin-lesson-command__stat svg{color:#6ee7b7}.admin-lesson-command__stat span{color:#cbd5e1;font-size:12px;font-weight:800}.admin-lesson-command__stat strong{color:#fff;font-size:26px;font-weight:900}.admin-lesson-toolbar{z-index:8;background:radial-gradient(circle at 12% 0%, #10b98114, transparent 44%), radial-gradient(circle at 94% 50%, #38bdf812, transparent 42%), color-mix(in srgb, var(--bg-main) 84%, transparent);border:1px solid var(--dashboard-hero-border);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:var(--shadow-soft);border-radius:22px;grid-template-columns:minmax(220px,max-content) minmax(0,1fr);align-items:center;gap:14px;margin:4px 0 16px;padding:12px 14px;display:grid;position:sticky;top:0}.admin-lesson-situation-selector,.admin-lesson-skill-tabs{background:color-mix(in srgb, var(--bg-secondary) 78%, transparent);border:1px solid var(--dashboard-hero-border);border-radius:16px;align-items:center;min-width:0;padding:5px;display:flex;box-shadow:inset 0 1px #ffffff14}.admin-lesson-situation-selector{flex:none;gap:6px;width:fit-content;overflow-x:auto}.admin-lesson-situation-selector__label{color:var(--text-secondary);white-space:nowrap;align-items:center;gap:6px;padding:0 6px 0 4px;font-size:12px;font-weight:800;display:inline-flex}.admin-lesson-situation-selector button{min-width:40px;height:34px;color:var(--text-mute);cursor:pointer;background:0 0;border:none;border-radius:11px;flex-shrink:0;justify-content:center;align-items:center;padding:6px 14px;font-size:13px;font-weight:800;transition:all .25s cubic-bezier(.16,1,.3,1);display:inline-flex}.admin-lesson-situation-selector button:hover{background:var(--bg-card);color:var(--text-main);box-shadow:var(--shadow-sm)}.admin-lesson-situation-selector button.is-active{color:#fff;background:linear-gradient(135deg,#10b981 0%,#059669 100%);box-shadow:0 4px 14px #10b98159}.admin-lesson-skill-tabs{justify-self:stretch;gap:6px}.admin-lesson-skill-tabs button{min-width:0;min-height:38px;color:var(--text-mute);cursor:pointer;background:0 0;border:1.5px solid #0000;border-radius:12px;flex:1;justify-content:center;align-items:center;gap:8px;padding:8px 16px;font-size:13px;font-weight:850;transition:all .25s cubic-bezier(.16,1,.3,1);display:inline-flex}.admin-lesson-skill-tabs button:hover{background:var(--bg-card);color:var(--text-main);box-shadow:var(--shadow-sm)}.admin-lesson-skill-tabs button.is-active{background:linear-gradient(135deg, color-mix(in srgb, var(--tab-color) 12%, var(--bg-card) 88%), var(--bg-card));color:var(--tab-color);box-shadow:0 10px 24px color-mix(in srgb, var(--tab-color) 14%, transparent);border-color:color-mix(in srgb, var(--tab-color) 45%, var(--border-color))}.admin-lesson-tab-dot{background:#ef4444;border-radius:999px;flex-shrink:0;width:8px;height:8px}.admin-lesson-tab-dot.is-complete{background:#10b981}.admin-lesson-tab-dot.is-partial{background:#f59e0b}.admin-lesson-workspace{flex-direction:column;gap:16px;display:flex}.admin-lesson-current-situation{background:radial-gradient(circle at 95% 10%, #38bdf814, transparent 36%), var(--dashboard-kpi-bg);border:1px solid var(--dashboard-hero-border);box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:22px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:18px 22px;display:flex}.admin-lesson-current-situation span{color:var(--text-mute);text-transform:uppercase;letter-spacing:.05em;margin-bottom:3px;font-size:11px;font-weight:900;display:block}.admin-lesson-current-situation strong{color:var(--text-main);font-size:15px;font-weight:900}.admin-lesson-situation-edit{grid-template-columns:minmax(180px,1fr) minmax(220px,1.4fr) auto auto;align-items:center;gap:8px;width:100%;display:grid}.admin-lesson-situation-edit .form-input{border-radius:10px;min-width:0;height:38px;font-size:13px}.admin-lesson-missing-chip{color:#d97706;background:#f59e0b1a;border:1px solid #f59e0b40;border-radius:999px;align-items:center;gap:5px;padding:4px 12px;font-size:11px;font-weight:800;display:inline-flex}.admin-lesson-empty-state{border:2px dashed var(--dashboard-hero-border);background:var(--dashboard-kpi-bg);min-height:280px;color:var(--text-mute);text-align:center;box-shadow:var(--shadow-soft);border-radius:24px;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:48px 32px;display:flex}.admin-lesson-empty-state svg{opacity:.45;color:var(--primary)}.admin-lesson-empty-state h2{color:var(--text-main);margin:0;font-size:18px;font-weight:900}.admin-lesson-empty-state p{color:var(--text-secondary);max-width:420px;margin:0 0 10px;font-size:14px;line-height:1.5}.admin-lesson-empty-state--card{min-height:320px}.admin-lesson-empty-state__icon{color:var(--primary);background:#10b9811a;border-radius:20px;justify-content:center;align-items:center;margin-bottom:4px;padding:16px;display:inline-flex}.admin-lesson-modal-backdrop{z-index:999;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0f172aa6;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.admin-lesson-modal{background:var(--bg-card);border:1px solid var(--dashboard-hero-border);border-radius:28px;width:min(500px,100%);max-height:min(720px,100vh - 48px);padding:30px;overflow:auto;box-shadow:0 24px 64px #0000004d}.admin-lesson-modal__header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:24px;display:flex}.admin-lesson-modal__header h2{color:var(--text-main);margin:0;font-size:20px;font-weight:900}.admin-lesson-modal__header button{border:1px solid var(--border-color);background:var(--bg-secondary);width:36px;height:36px;color:var(--text-mute);cursor:pointer;border-radius:10px;justify-content:center;align-items:center;padding:0;transition:all .2s;display:inline-flex}.admin-lesson-modal__header button:hover{background:var(--bg-card);color:var(--text-main);border-color:var(--text-mute)}.admin-lesson-modal__form{flex-direction:column;gap:16px;display:flex}.admin-lesson-modal__form textarea{resize:vertical}.admin-lesson-modal__actions{justify-content:flex-end;gap:12px;margin-top:28px;display:flex}.admin-lesson-skill-card{background:linear-gradient(180deg, color-mix(in srgb, var(--bg-card) 96%, #10b981 4%), var(--bg-card));border:1px solid var(--dashboard-hero-border);box-shadow:var(--shadow-soft);border-left:0;border-radius:28px;overflow:hidden}.admin-lesson-skill-card__header{background:radial-gradient(circle at 92% 0%, color-mix(in srgb, var(--skill-color) 18%, transparent), transparent 38%), linear-gradient(135deg, color-mix(in srgb, var(--skill-color) 9%, var(--bg-card) 91%), var(--bg-card));border-bottom:1px solid var(--dashboard-hero-border);align-items:center;gap:14px;padding:20px 24px;display:flex}.admin-lesson-skill-card__icon{background:var(--bg-card);width:46px;height:46px;color:var(--skill-color);box-shadow:0 14px 26px color-mix(in srgb, var(--skill-color) 16%, transparent);border:1px solid color-mix(in srgb, var(--skill-color) 20%, var(--border-color) 80%);border-radius:15px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.admin-lesson-skill-card__title{flex:1;min-width:0}.admin-lesson-skill-card__title div{color:var(--text-main);text-overflow:ellipsis;white-space:nowrap;font-size:16px;font-weight:900;overflow:hidden}.admin-lesson-skill-card__title div span{color:var(--text-mute);font-style:italic;font-weight:500}.admin-lesson-skill-card__title small{color:var(--skill-color);margin-top:3px;font-size:12px;font-weight:800;display:block}.admin-lesson-skill-card__badges{flex-wrap:wrap;flex-shrink:0;justify-content:flex-end;gap:8px;display:flex}.admin-lesson-status-chip{background:var(--status-bg);color:var(--status-color);border:1px solid color-mix(in srgb, var(--status-color) 20%, transparent);font-size:11px}.admin-lesson-status-chip--dirty{color:var(--primary);background:#10b9811a;border:1px solid #10b98140}.admin-lesson-skill-card__body{padding:20px 20px 6px}.admin-lesson-hint{background:var(--hint-bg);border:1px solid color-mix(in srgb, var(--hint-color) 18%, transparent);color:var(--hint-color);border-radius:12px;align-items:center;gap:8px;margin-bottom:16px;padding:10px 14px;font-size:12.5px;font-weight:700;display:flex}.admin-lesson-core-fields{grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);gap:16px;display:grid}.admin-lesson-editor-grid{grid-template-columns:minmax(0,1.9fr) minmax(240px,.9fr);align-items:start;gap:16px;margin-bottom:14px;display:grid}.admin-lesson-editor-main{flex-direction:column;min-width:0;display:flex}.admin-lesson-settings-sidebar{align-self:start;position:sticky;top:90px}.admin-lesson-settings-panel{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:16px;flex-direction:column;gap:12px;min-width:0;padding:16px;display:flex}.admin-lesson-panel-title{color:var(--text-mute);text-transform:uppercase;margin-bottom:4px;font-size:12px;font-weight:850}.admin-lesson-section-toggle{color:var(--text-secondary);cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;margin-bottom:12px;padding:8px 0;font-size:13px;font-weight:800;display:flex}.admin-lesson-vocab-grid{background:var(--bg-secondary);border-radius:12px;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:14px;padding:16px;display:grid}.admin-lesson-skill-card__footer{border-top:1px solid var(--dashboard-hero-border);background:radial-gradient(circle at 0% 100%, #10b9810f, transparent 38%), var(--bg-secondary);justify-content:space-between;align-items:center;gap:12px;padding:16px 22px;display:flex}@media (width<=1120px){.admin-lesson-toolbar,.admin-lesson-editor-grid{grid-template-columns:1fr}}@media (width<=760px){.admin-lesson-header,.admin-lesson-skill-card__header,.admin-lesson-skill-card__footer,.admin-lesson-modal__actions{flex-direction:column;align-items:stretch}.admin-lesson-header__actions,.admin-lesson-skill-card__badges{justify-content:flex-start}.admin-lesson-core-fields,.admin-lesson-situation-edit,.admin-lesson-vocab-grid{grid-template-columns:1fr}.admin-lesson-skill-tabs{overflow-x:auto}.admin-lesson-skill-tabs button{min-width:118px}}.admin-listening-editor{background:linear-gradient(180deg, #f59e0b12, #f59e0b05), var(--bg-card);border:1px solid #f59e0b2e;border-radius:14px;flex-direction:column;gap:14px;height:100%;padding:16px;display:flex}.admin-listening-editor__header{justify-content:space-between;align-items:flex-start;gap:16px;padding-bottom:2px;display:flex}.admin-listening-editor__title{align-items:flex-start;gap:10px;min-width:0;display:flex}.admin-listening-editor__icon{color:#d97706;background:#f59e0b1f;border:1px solid #f59e0b40;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;display:inline-flex}.admin-listening-editor__eyebrow{letter-spacing:.06em;text-transform:uppercase;color:#d97706;margin-bottom:3px;font-size:11px;font-weight:850}.admin-listening-editor__headline{color:var(--text-main);font-size:14px;font-weight:750;line-height:1.35}.admin-listening-editor__summary{flex-wrap:wrap;flex-shrink:0;justify-content:flex-end;align-items:center;gap:6px;display:flex}.admin-listening-editor__summary-chip{border:1px solid var(--border-color);background:var(--bg-secondary);min-height:26px;color:var(--text-secondary);font-variant-numeric:tabular-nums;white-space:nowrap;border-radius:999px;align-items:center;gap:4px;padding:4px 9px;font-size:11px;font-weight:800;display:inline-flex}.admin-listening-editor__summary-chip.is-ready{color:var(--success);background:#10b9811a;border-color:#10b9813d}.admin-listening-editor__summary-chip.is-missing{color:var(--warning);background:#f59e0b1c;border-color:#f59e0b40}.admin-listening-editor__grid{grid-template-columns:minmax(0,1.25fr) minmax(240px,.75fr);align-items:stretch;gap:12px;display:grid}.admin-listening-editor__panel{border:1px solid var(--border-color);background:var(--bg-card);border-radius:12px;padding:14px;box-shadow:0 1px 2px #0f172a08}.admin-listening-editor__panel--compact{padding:0;overflow:hidden}.admin-listening-editor__panel--primary{background:linear-gradient(180deg, #f59e0b0d, #f59e0b00), var(--bg-card)}.admin-listening-editor__section-head{color:#d97706;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:12px;display:flex}.admin-listening-editor__section-head h4{color:var(--text-main);margin:0;font-size:13px;font-weight:850;line-height:1.25}.admin-listening-editor__section-head p{color:var(--text-mute);margin:3px 0 0;font-size:11px;line-height:1.45}.admin-listening-editor__toggle{width:100%;min-height:54px;color:var(--text-main);cursor:pointer;text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.admin-listening-editor__toggle:hover{background:#f59e0b0d}.admin-listening-editor__toggle>span{align-items:center;gap:9px;min-width:0;display:flex}.admin-listening-editor__toggle svg{color:#d97706;flex-shrink:0}.admin-listening-editor__toggle strong{color:var(--text-main);font-size:13px;font-weight:850;line-height:1.2;display:block}.admin-listening-editor__toggle small{color:var(--text-mute);margin-top:2px;font-size:11px;font-weight:650;line-height:1.25;display:block}.admin-listening-editor__collapsible-body{border-top:1px solid var(--border-color);padding:0 14px 14px}.admin-listening-editor__section-note{color:var(--text-mute);margin:12px 0 10px;font-size:11px;font-weight:650;line-height:1.45}.admin-listening-editor__media-row{align-items:center;gap:8px;min-width:0;display:flex}.admin-listening-editor__input{flex:1;min-width:0;height:36px;font-size:13px}.admin-listening-editor__textarea{width:100%;font-size:13px;line-height:1.55;min-height:126px!important}.admin-listening-editor__audio-preview{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:10px;padding:10px}.admin-listening-editor__audio-preview audio{width:100%;display:block}.admin-listening-editor__empty-preview{background:var(--bg-secondary);min-height:72px;color:var(--text-mute);text-align:center;border:1px dashed #94a3b899;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:12px;font-size:12px;font-weight:650;display:flex}.admin-listening-editor__image-list{flex-direction:column;gap:10px;margin-top:14px;margin-bottom:10px;display:flex}.admin-listening-editor__image-item{border:1px solid var(--border-color);background:var(--bg-secondary);border-radius:12px;grid-template-columns:96px minmax(0,1fr);align-items:center;gap:12px;padding:10px;transition:transform .2s cubic-bezier(.16,1,.3,1),border-color .2s cubic-bezier(.16,1,.3,1),box-shadow .2s cubic-bezier(.16,1,.3,1);display:grid}.admin-listening-editor__image-item:hover{border-color:#10b9814d;transform:translateY(-1px);box-shadow:0 4px 12px #00000008}.admin-listening-editor__image-preview{aspect-ratio:16/10;border:1px solid var(--border-color);background:var(--bg-card);width:96px;color:var(--text-dim);border-radius:10px;justify-content:center;align-items:center;display:flex;overflow:hidden}.admin-listening-editor__image-preview img{object-fit:cover;width:100%;height:100%;display:block}.admin-listening-editor__image-fields{min-width:0}.admin-listening-editor__image-fields label{color:var(--text-secondary);margin-bottom:5px;font-size:11px;font-weight:800;display:block}.admin-listening-editor__icon-btn{border:1px solid var(--border-color);background:var(--bg-card);width:32px;height:32px;color:var(--text-dim);cursor:pointer;border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;transition:color .15s,border-color .15s,background .15s;display:inline-flex}.admin-listening-editor__icon-btn:hover{color:#ef4444;background:#ef44440f;border-color:#ef444447}.admin-listening-editor__add-btn{gap:5px;width:fit-content;padding:6px 12px!important;font-size:12px!important}@media (width<=1100px){.admin-listening-editor__grid{grid-template-columns:1fr}}@media (width<=720px){.admin-listening-editor__header,.admin-listening-editor__media-row{flex-direction:column;align-items:stretch}.admin-listening-editor__summary{justify-content:flex-start}.admin-listening-editor__image-item{grid-template-columns:1fr}.admin-listening-editor__image-preview{width:100%}}.skill-settings-block{background:linear-gradient(180deg, #0596690d 0%, transparent 70%), var(--bg-card);border:1.5px solid #05966947;border-radius:14px;margin-top:8px;overflow:hidden}.skill-settings-block__header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:9px 14px;display:flex}.skill-settings-block__title{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;align-items:center;gap:6px;font-size:11px;font-weight:800;display:flex}.skill-settings-block__badge{color:var(--primary);text-transform:uppercase;letter-spacing:.04em;background:#0596691f;border:1px solid #05966940;border-radius:999px;padding:2px 8px;font-size:10px;font-weight:800}.skill-settings-block__fields{grid-template-columns:1fr 1fr;display:grid}.skill-settings-block__field{align-items:flex-start;gap:10px;padding:14px;display:flex}.skill-settings-block__field:first-child{border-right:1px solid var(--border-color)}.skill-settings-block__field-icon{border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;display:inline-flex}.skill-settings-block__field-icon--time{color:#0284c7;background:#0ea5e91f;border:1px solid #0ea5e938}.skill-settings-block__field-icon--xp{color:#d97706;background:#f59e0b1f;border:1px solid #f59e0b38}.skill-settings-block__field-body{flex:1;min-width:0}.skill-settings-block__field-label{color:var(--text-main);margin-bottom:1px;font-size:12px;font-weight:800}.skill-settings-block__field-hint{color:var(--text-mute);margin-bottom:7px;font-size:10px;font-weight:600}.skill-settings-block__input-row{align-items:center;gap:6px;display:flex}.skill-settings-block__input{text-align:center;flex:1;min-width:0;height:42px!important;padding:0 8px!important;font-size:20px!important;font-weight:800!important}.skill-settings-block__unit{color:var(--text-mute);flex-shrink:0;font-size:11px;font-weight:700}.skill-settings-block__practice{border-top:1px solid var(--border-color);background:var(--bg-secondary);justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;display:flex}.skill-settings-block__practice-label{color:var(--text-secondary);flex-shrink:0;font-size:12px;font-weight:700}.listening-steps{flex-direction:column;gap:8px;display:flex}.listening-step{border:1px solid var(--border-color);background:var(--bg-card);border-radius:14px;transition:transform .25s cubic-bezier(.16,1,.3,1),box-shadow .25s cubic-bezier(.16,1,.3,1),border-color .25s cubic-bezier(.16,1,.3,1);overflow:hidden;box-shadow:0 1px 3px #0f172a0a}.listening-step:hover{border-color:color-mix(in srgb, var(--primary) 35%, var(--border-color));transform:translateY(-2.5px);box-shadow:0 12px 28px #0000000f,0 1px 3px #00000005}.listening-step--required{background:linear-gradient(180deg, #f59e0b0a 0%, transparent 60%), var(--bg-card);border-color:#f59e0b4d}.listening-step--required:hover{border-color:#f59e0ba6!important;box-shadow:0 12px 30px #f59e0b17!important}.listening-step--recommended{border-color:#10b98138}.listening-step--recommended:hover{border-color:#10b9818c!important;box-shadow:0 12px 30px #10b98117!important}.listening-step__head{flex:1;align-items:flex-start;gap:12px;min-width:0;padding:14px 18px;display:flex}.listening-step--required .listening-step__head{padding-bottom:6px}.listening-step__head-content{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.listening-step__head-top{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.listening-step__number{color:#d97706;background:#f59e0b24;border:1.5px solid #f59e0b52;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:26px;height:26px;font-size:11px;font-weight:900;transition:transform .2s cubic-bezier(.16,1,.3,1),background-color .2s,color .2s;display:inline-flex}.listening-step:hover .listening-step__number{transform:scale(1.08)}.listening-step__number--opt{background:var(--bg-secondary);color:var(--text-secondary);border-color:var(--border-color)}.listening-step__number--rec{color:#059669;background:#10b9811f;border-color:#10b98147}.listening-step__number.is-done{color:#059669;background:#10b98124;border-color:#10b98152}.listening-step__badge{letter-spacing:.04em;text-transform:uppercase;border-radius:999px;flex-shrink:0;padding:2px 8px;font-size:10px;font-weight:800}.listening-step__badge--required{color:#d97706;background:#f59e0b1f;border:1px solid #f59e0b40}.listening-step__badge--optional{background:var(--bg-secondary);color:var(--text-mute);border:1px solid var(--border-color)}.listening-step__badge--recommended{color:#059669;background:#10b9811a;border:1px solid #10b9813d}.listening-step__title{color:var(--text-main);flex-shrink:0;font-size:13.5px;font-weight:800}.listening-step__desc{color:var(--text-mute);font-size:11px;font-weight:600;line-height:1.4}.listening-step__upload-cta{cursor:pointer;background:#f59e0b08;border:2px dashed #f59e0b73;border-radius:12px;align-items:center;gap:16px;width:100%;padding:18px 24px;transition:all .25s cubic-bezier(.16,1,.3,1);display:flex;box-shadow:0 2px 8px #00000003}.listening-step__upload-cta:hover{background:#f59e0b12;border-color:#f59e0bbf;transform:translateY(-1px);box-shadow:0 4px 15px #f59e0b14}.listening-step__upload-cta:hover .listening-step__upload-cta-icon{background:#f59e0b2e;transform:scale(1.06);box-shadow:0 4px 10px #f59e0b1f}.listening-step__upload-cta.is-loading{opacity:.7;cursor:wait}.listening-step__upload-cta-icon{color:#d97706;background:#f59e0b1f;border:1px solid #f59e0b40;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;transition:all .25s cubic-bezier(.16,1,.3,1);display:flex}.listening-step__upload-cta-label{color:var(--text-main);margin-bottom:3px;font-size:14.5px;font-weight:850}.listening-step__upload-cta-hint{color:var(--text-mute);font-size:11px;font-weight:600}.listening-step__or-divider{color:var(--text-mute);align-items:center;gap:10px;margin:12px 0;font-size:11px;font-weight:700;display:flex}.listening-step__or-divider:before,.listening-step__or-divider:after{content:"";background:var(--border-color);flex:1;height:1px}.listening-step__replace-row{flex-wrap:wrap;align-items:center;gap:10px;margin-top:10px;display:flex}.listening-step__url-display{min-width:0;color:var(--text-mute);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:11px;font-weight:500;overflow:hidden}.listening-step__remove-audio-btn{color:#dc2626;cursor:pointer;background:#ef44440f;border:1px solid #ef444447;border-radius:6px;flex-shrink:0;align-items:center;gap:5px;padding:4px 10px;font-family:inherit;font-size:11px;font-weight:700;transition:all .15s;display:inline-flex}.listening-step__remove-audio-btn:hover{background:#ef444421;border-color:#ef444473}.listening-step__toggle{cursor:pointer;width:100%;color:var(--text-main);text-align:left;background:0 0;border:none;border-radius:0;justify-content:space-between;align-items:flex-start;transition:background .1s;display:flex}.listening-step__toggle:hover{background:#00000006}.listening-step--required .listening-step__toggle:hover{background:#f59e0b0a}.listening-step__toggle-chevron{color:var(--text-mute);flex-shrink:0;align-items:flex-start;padding:13px 16px 0 8px;display:flex}.listening-step__collapsible{border-top:1px solid var(--border-color)}.listening-step__body{padding:12px 16px 16px}.audio-player-card{transition:transform .22s cubic-bezier(.16,1,.3,1),border-color .22s cubic-bezier(.16,1,.3,1),box-shadow .22s cubic-bezier(.16,1,.3,1)}.audio-player-card:hover{transform:translateY(-2px);border-color:#f59e0b59!important;box-shadow:0 12px 28px #0000000f,0 8px 16px #00000008!important}.listening-step--required .listening-step__body{padding-top:8px}.listening-step__audio-empty{color:var(--text-secondary);background:#f59e0b08;border:2px dashed #f59e0b61;border-radius:12px;align-items:flex-start;gap:12px;margin-top:10px;padding:16px 18px;display:flex}.listening-step__audio-empty svg{color:#d97706;flex-shrink:0;margin-top:1px}.listening-step__settings-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));align-items:start;gap:12px;display:grid}.admin-dictation-editor{gap:14px;display:grid}.admin-dictation-editor__items{gap:12px;display:grid}.admin-dictation-editor__empty{border:1px dashed var(--border-color);background:var(--bg-secondary);min-height:80px;color:var(--text-mute);border-radius:12px;justify-content:center;align-items:center;gap:8px;font-size:12px;font-weight:700;display:flex}.admin-dictation-editor__item{border:1px solid var(--border-color);background:var(--bg-secondary);border-radius:14px;gap:7px;padding:14px;display:grid}.admin-dictation-editor__item-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.admin-dictation-editor__item-head strong{color:var(--text-main);font-size:13px}.admin-dictation-editor__audio-hint{color:var(--text-mute);font-size:11px;line-height:1.45}.admin-dictation-editor__add{justify-self:start}.skill-hint-btn{color:#059669;cursor:pointer;background:#10b9811f;border:1.5px solid #10b98147;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;margin-left:4px;font-size:11px;font-weight:900;line-height:1;transition:background .15s,transform .1s;display:inline-flex}.skill-hint-btn:hover{background:#10b98138;transform:scale(1.1)}.skill-hint-panel{color:var(--text-secondary);background:#10b9810d;border:1px solid #10b9812e;border-radius:10px;margin:0 16px 4px;padding:12px 36px 12px 14px;font-size:12px;line-height:1.6;position:relative}.skill-hint-panel code{color:#059669;background:#10b9811f;border-radius:4px;padding:2px 6px;font-family:monospace;font-size:12px;font-weight:700}.skill-hint-panel__example{background:var(--bg-secondary);color:var(--text-main);letter-spacing:.01em;border:1px solid #10b98133;border-radius:6px;margin:4px 0;padding:7px 12px;font-family:monospace;font-size:13px}.skill-hint-panel__example strong{color:#059669}.skill-hint-panel__close{cursor:pointer;color:var(--text-mute);background:0 0;border:none;border-radius:4px;align-items:center;padding:2px;transition:color .15s;display:flex;position:absolute;top:8px;right:8px}.skill-hint-panel__close:hover{color:var(--text-secondary)}.writing-blank-guide-card{transition:transform .22s cubic-bezier(.16,1,.3,1),border-color .22s cubic-bezier(.16,1,.3,1),box-shadow .22s cubic-bezier(.16,1,.3,1)}.writing-blank-guide-card:hover{transform:translateY(-1px);box-shadow:0 4px 12px #10b9810d;border-color:#10b9814d!important}.writing-blank-preview{border:1px solid var(--border-color);border-radius:10px;margin-top:12px;overflow:hidden}.writing-blank-preview__label{background:var(--bg-secondary);border-bottom:1px solid var(--border-color);color:var(--text-mute);text-transform:uppercase;letter-spacing:.06em;padding:5px 12px;font-size:10px;font-weight:800}.writing-blank-preview__body{color:var(--text-main);padding:14px 16px;font-family:Georgia,Times New Roman,serif;font-size:13.5px;line-height:2}.writing-blank-mark{color:var(--text-main);text-shadow:0 0 #0000;background:#fde0478c;border-bottom:2px solid #eab308a6;border-radius:2px;padding:1px 3px;font-weight:700;transition:background .15s}.writing-blank-mark:hover{background:#fde047cc}.speaking-editor{gap:10px}.speaking-editor__intro{background:linear-gradient(120deg,#0ea5e914,#10b9810f);border:1px solid #0ea5e938;border-radius:12px;padding:12px 14px}.speaking-editor__intro-title{color:#0369a1;letter-spacing:0;margin-bottom:3px;font-size:12px;font-weight:850}.speaking-editor__intro-text{color:var(--text-secondary);font-size:11px;line-height:1.45}.speaking-step{border-radius:12px}.speaking-step--video{background:linear-gradient(180deg, #0ea5e90d, transparent 62%), var(--bg-card);border-color:#0ea5e947}.speaking-step--phrases{border-color:#10b98142}.speaking-step--games{border-color:#6b728042}.speaking-step__body-stack{flex-direction:column;gap:8px;display:flex}.speaking-step__label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;font-size:10px;font-weight:800}.speaking-step__help{color:var(--text-mute);font-size:11px;line-height:1.4}.speaking-step__input{height:36px;font-size:13px}.speaking-video-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:10px;align-items:center;gap:12px;max-width:fit-content;margin-top:8px;padding:8px 12px;display:inline-flex}.speaking-video-card__thumb{object-fit:cover;border:1px solid var(--border-color);border-radius:6px;width:80px;height:45px}.speaking-video-card__content{flex-direction:column;display:flex}.speaking-video-card__title{color:var(--text-primary);font-size:12px;font-weight:700}.speaking-video-card__link{color:#0369a1;align-items:center;gap:4px;font-size:11px;font-weight:700;text-decoration:none;display:inline-flex}.speaking-phrase-head{gap:8px;margin-bottom:2px;padding-left:34px;padding-right:25px;display:flex}.speaking-phrase-row{border:1px solid color-mix(in srgb, var(--border-color) 86%, transparent);background:color-mix(in srgb, var(--bg-secondary) 84%, transparent);border-radius:10px;align-items:center;gap:8px;padding:6px 8px;display:flex}.speaking-phrase-row__index{color:#059669;background:#10b9811a;border-radius:99px;flex-shrink:0;justify-content:center;align-items:center;width:26px;height:20px;padding:2px 8px;font-size:11px;font-weight:800;display:flex}.speaking-phrase-row__delete{cursor:pointer;color:#ef4444;background:0 0;border:none;justify-content:center;align-items:center;padding:4px;display:inline-flex}.speaking-step__actions{justify-content:flex-start;margin-top:4px;display:flex}@media (width<=768px){.admin-lesson-desktop-notice{color:#f59e0b;background:#f59e0b14;border:1px solid #f59e0b40;border-radius:12px;align-items:flex-start;gap:12px;margin-bottom:16px;padding:14px 16px;display:flex}.speaking-phrase-head{display:none}.speaking-phrase-row{flex-wrap:wrap}}@media (width<=640px){.admin-courses-grid{grid-template-columns:1fr!important}}.action-menu{display:inline-flex;position:relative}.action-menu__trigger{border:1px solid var(--border-color);background:var(--bg-secondary);width:30px;height:30px;color:var(--text-secondary);cursor:pointer;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;transition:background .15s,color .15s,border-color .15s;display:inline-flex}.action-menu__trigger:hover{background:var(--bg-accent);color:var(--primary);border-color:var(--primary)}.action-menu__dropdown{z-index:9990;background:var(--bg-card);border:1px solid var(--border-color);border-radius:10px;flex-direction:column;min-width:170px;padding:4px;display:flex;overflow-y:auto;box-shadow:0 8px 28px #00000021}.action-menu__separator{background:var(--border-color);height:1px;margin:3px 0}.action-menu__item{width:100%;color:var(--text-main);cursor:pointer;text-align:left;white-space:nowrap;background:0 0;border:none;border-radius:7px;align-items:center;gap:9px;padding:7px 10px;font-size:13px;font-weight:500;transition:background .1s,color .1s;display:flex}.action-menu__item:hover:not(:disabled){background:var(--bg-secondary)}.action-menu__item:disabled{opacity:.4;cursor:not-allowed}.action-menu__item--danger{color:var(--danger)}.action-menu__item--danger:hover:not(:disabled){background:var(--bg-danger-subtle)}.action-menu__item--warning{color:var(--primary)}.action-menu__item--warning:hover:not(:disabled){background:var(--bg-warning-subtle)}.action-menu__item--success{color:var(--success)}.action-menu__item--success:hover:not(:disabled){background:var(--bg-success-subtle)}.action-menu__item-icon{color:inherit;opacity:.85;flex-shrink:0;display:inline-flex}.action-menu-confirm-backdrop{z-index:9999;background:#00000073;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.action-menu-confirm{background:var(--bg-card);border:1px solid var(--border-color);text-align:center;border-radius:16px;flex-direction:column;align-items:center;gap:8px;width:100%;max-width:360px;padding:28px 24px 22px;display:flex;box-shadow:0 16px 48px #0000002e}.action-menu-confirm__icon{background:var(--bg-warning-subtle);width:50px;height:50px;color:var(--primary);border-radius:50%;justify-content:center;align-items:center;margin-bottom:4px;display:flex}.action-menu-confirm__title{color:var(--text-main);margin:0;font-size:15px;font-weight:700}.action-menu-confirm__message{color:var(--text-dim);margin:0;font-size:13px;line-height:1.5}.action-menu-confirm__actions{justify-content:center;gap:10px;margin-top:8px;display:flex}.action-menu-confirm__submit{cursor:pointer;border:none;border-radius:10px;padding:9px 22px;font-size:14px;font-weight:700;transition:opacity .15s}.action-menu-confirm__submit:hover{opacity:.87}.action-menu-confirm__submit--danger{background:var(--danger);color:#fff}.action-menu-confirm__submit--warning{background:var(--primary);color:#fff}.action-menu-confirm__submit--success{background:var(--success);color:#fff}.ap-shell{box-shadow:none;background:0 0;border:0;border-radius:0;padding:0;position:relative;overflow:hidden}.ap-shell:before{content:none}.ap-remaining{color:#ffffffd1;font-variant-numeric:tabular-nums;letter-spacing:0;flex-shrink:0;font-size:12px;font-weight:600}.ap-track-wrap{z-index:1;margin-bottom:8px;padding-top:4px;position:relative}.ap-track{cursor:pointer;border-radius:99px;height:5px;position:relative;overflow:visible}.ap-track:hover{height:6px;transition:height .15s}.ap-fill-locked{background:#ffffff1f;border-radius:99px;position:absolute;inset:0}.ap-fill-listened{box-shadow:none;background:#f59e0b;border-radius:99px;transition:width .25s linear;position:absolute;top:0;bottom:0;left:0}.ap-cursor{width:12px;height:12px;box-shadow:none;pointer-events:none;z-index:2;background:#fff;border:2px solid #f59e0b;border-radius:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}.ap-hover-time{color:#fff;pointer-events:none;white-space:nowrap;background:#000000bf;border-radius:6px;padding:3px 7px;font-size:11px;font-weight:700;position:absolute;top:-28px;transform:translate(-50%)}.ap-lock-tip{color:#fef3c7;white-space:nowrap;pointer-events:none;background:#92400e;border-radius:8px;padding:4px 10px;font-size:11px;font-weight:700;animation:.15s ap-tip-pop;position:absolute;top:-30px;transform:translate(-50%)}@keyframes ap-tip-pop{0%{opacity:0;transform:translate(-50%)scale(.85)}to{opacity:1;transform:translate(-50%)scale(1)}}.ap-controls{justify-content:space-between;align-items:center;gap:12px;width:100%;min-height:42px;display:flex}.ap-controls-left{align-items:center;gap:10px;min-width:0;display:flex}.ap-btn{cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;transition:opacity .15s,transform .1s;display:flex}.ap-btn:hover{opacity:.8;transform:scale(1.06)}.ap-btn:active{transform:scale(.95)}.ap-btn-ghost{color:#ffffffb8;gap:2px}.ap-btn-label{color:#ffffffb8;margin-left:1px;font-size:10px;font-weight:800}.ap-btn-play{color:#fff;background:#f59e0b;border-radius:50%;width:42px;height:42px;transition:box-shadow .2s,transform .1s;box-shadow:0 3px 10px #00000024}.ap-btn-play:hover{opacity:1;transform:scale(1.04);box-shadow:0 5px 14px #0003}.ap-volume{appearance:none;cursor:pointer;background:#fff3;border-radius:99px;outline:none;flex-shrink:0;width:64px;height:3px}.ap-volume::-webkit-slider-thumb{-webkit-appearance:none;width:12px;height:12px;box-shadow:none;background:#fff;border-radius:50%}@media (width<=700px){.ap-controls{flex-direction:column;align-items:flex-start;gap:10px;min-height:auto}.ap-controls-left{flex-wrap:wrap}}.ap-btn-skip{color:#ffffffb8;align-items:center;gap:2px;display:flex}.ap-btn-skip--at-edge{opacity:.35}.ap-loop-controls{border-top:1px solid #ffffff12;flex-wrap:wrap;align-items:center;gap:6px;margin-top:4px;padding-top:8px;display:flex}.ap-loop-label{color:#ffffff6b;text-transform:uppercase;letter-spacing:.05em;flex-shrink:0;margin-right:2px;font-size:10px;font-weight:700}.ap-loop-mark-btn{color:#ffffffa6;cursor:pointer;white-space:nowrap;background:#ffffff0d;border:1.5px solid #ffffff24;border-radius:7px;padding:4px 10px;font-size:11px;font-weight:700;transition:border-color .15s,color .15s,background .15s}.ap-loop-mark-btn.is-set{color:#f59e0b;background:#f59e0b1a;border-color:#f59e0b}.ap-loop-mark-btn:disabled{opacity:.28;cursor:not-allowed}.ap-loop-mark-btn:not(:disabled):not(.is-set):hover{color:#fff;border-color:#ffffff4d}.ap-loop-toggle-btn{color:#ffffffa6;cursor:pointer;background:#ffffff0d;border:1.5px solid #ffffff24;border-radius:7px;align-items:center;gap:5px;padding:4px 10px;font-size:11px;font-weight:700;transition:all .15s;display:flex}.ap-loop-toggle-btn.is-active{color:#38bdf8;background:#38bdf81f;border-color:#38bdf8}.ap-loop-toggle-btn:disabled{opacity:.28;cursor:not-allowed}.ap-loop-clear-btn{color:#ffffff61;cursor:pointer;background:0 0;border:1px solid #ffffff1a;border-radius:6px;padding:3px 8px;font-size:10px;font-weight:600;transition:color .15s,border-color .15s}.ap-loop-clear-btn:hover{color:#ffffffb3;border-color:#ffffff40}.ap-loop-region{pointer-events:none;background:#38bdf82e;border-radius:99px;transition:background .2s;position:absolute;top:0;bottom:0}.ap-loop-region.is-active{background:#38bdf852;animation:2s ease-in-out infinite ap-loop-pulse}@keyframes ap-loop-pulse{0%,to{opacity:.75}50%{opacity:1}}.ap-loop-marker{pointer-events:none;z-index:3;flex-direction:column;align-items:center;display:flex;position:absolute;top:-5px;transform:translate(-50%)}.ap-loop-marker:before{content:"";background:#38bdf8;border-radius:2px;width:3px;height:14px}.ap-loop-marker-label{color:#38bdf8;margin-top:1px;font-size:9px;font-weight:800;line-height:1}.llp-root{max-width:1180px;margin:0 auto;padding:16px 20px 90px}.llp-topbar{border:1px solid var(--dashboard-hero-border);background:linear-gradient(180deg, color-mix(in srgb, var(--bg-card) 94%, var(--primary) 4%), var(--bg-card));box-shadow:var(--shadow-sm);border-radius:18px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:14px;padding:10px 12px;display:flex}.llp-topbar-context{color:var(--text-secondary);font-size:12px;font-weight:800}.llp-back{background:color-mix(in srgb, var(--primary) 8%, var(--bg-card));border:1px solid color-mix(in srgb, var(--primary) 18%, var(--border-color));cursor:pointer;color:var(--interactive-accent);white-space:nowrap;border-radius:12px;flex-shrink:0;align-items:center;gap:5px;padding:7px 10px;font-size:12px;font-weight:850;transition:background .15s;display:inline-flex}.llp-back:hover{background:color-mix(in srgb, var(--primary) 12%, var(--bg-card))}.llp-learning-shell{grid-template-columns:minmax(0,1.55fr) minmax(280px,.75fr);align-items:stretch;gap:18px;margin-bottom:18px;display:grid}.llp-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:18px;display:flex}.llp-header-left{flex:1;min-width:0}.llp-badges{flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:8px;display:flex}.llp-badge{letter-spacing:.03em;border-radius:99px;align-items:center;gap:4px;padding:3px 10px;font-size:11px;font-weight:850;display:inline-flex}.llp-badge-type{background:var(--skill-listening-bg);color:var(--skill-listening-color);border:1px solid var(--skill-listening-border)}.llp-badge-done{color:#10b981;background:#10b9811a;border:1px solid #10b98140}.llp-badge-preview{color:#8b5cf6;background:#8b5cf61a;border:1px solid #8b5cf640}.llp-title{color:var(--text-main);letter-spacing:0;margin:0;font-size:clamp(1.35rem,2.1vw,2rem);font-weight:950;line-height:1.18}.llp-desc{color:var(--text-mute);margin:10px 0 0;font-size:13.5px;line-height:1.65}.llp-xp-pill{color:#f59e0b;white-space:nowrap;background:#f59e0b1a;border:1px solid #f59e0b40;border-radius:99px;flex-shrink:0;align-items:center;gap:6px;padding:6px 14px;font-size:13px;font-weight:600;display:inline-flex}.llp-panel-head{border-bottom:1px solid var(--border-color);background:linear-gradient(#f59e0b14 0%,#f59e0b05 100%);padding:14px 16px 12px}.llp-panel-head--inline{background:0 0;border-bottom:0;justify-content:space-between;align-items:flex-start;gap:10px;padding:0 0 10px;display:flex}.llp-panel-head--question{background:linear-gradient(#3b82f614 0%,#3b82f605 100%)}.llp-panel-kicker{letter-spacing:.04em;text-transform:uppercase;color:var(--text-secondary);margin-bottom:4px;font-size:10px;font-weight:500}.llp-panel-title{color:var(--text-main);margin:0;font-size:14px;font-weight:600;line-height:1.3}.llp-panel-subtitle{color:var(--text-secondary);margin:2px 0 0;font-size:11px;line-height:1.4}.llp-listening-wrapper{background:radial-gradient(circle at 90% 0,#10b9812e,#0000 36%),linear-gradient(135deg,#111827 0%,#030712 100%);border:1px solid #ffffff14;border-radius:30px;margin-bottom:0;overflow:hidden;box-shadow:0 24px 60px #0206173d}.llp-listening-stage{aspect-ratio:16/9;background:#020617;width:100%;position:relative;overflow:hidden}.llp-listening-image{object-fit:cover;width:100%;height:100%;display:block}.llp-listening-stage:after{content:"";pointer-events:none;background:linear-gradient(#02061738,#02061714 42%,#020617c7),linear-gradient(90deg,#0206176b,#0000 48%);position:absolute;inset:0}.llp-listening-stage-overlay{z-index:1;flex-direction:column;align-items:flex-start;gap:8px;display:flex;position:absolute;bottom:16px;left:18px;right:18px}.llp-listening-stage-overlay.is-fading{opacity:0;transition:opacity 3s}.llp-listening-stage-badge{color:#ecfdf5;background:#10b981eb;border:1px solid #ffffff29;border-radius:999px;align-items:center;gap:6px;padding:5px 10px;font-size:11px;font-weight:850;display:inline-flex}.llp-listening-stage-title{color:#fff;text-shadow:0 2px 12px #00000073;max-width:78%;font-size:clamp(1.2rem,2vw,1.65rem);font-weight:950;line-height:1.22}.llp-listening-placeholder{color:#ffffffb8;background:radial-gradient(circle at 50% 35%,#10b9812e,#0000 34%),radial-gradient(circle at 80% 12%,#38bdf829,#0000 30%),#0f172a;flex-direction:column;justify-content:center;align-items:center;gap:10px;width:100%;height:100%;font-size:12px;font-weight:700;display:flex}.llp-listening-controls{z-index:2;background:#0f172aeb;border-top:1px solid #ffffff14;padding:16px 18px 18px;position:relative}.llp-no-audio{color:#fbbf24;align-items:flex-start;gap:12px;padding:6px 0;display:flex}.llp-no-audio-title{margin-bottom:3px;font-size:13px;font-weight:700}.llp-no-audio-sub{color:#ffffffad;font-size:12px}.llp-lesson-card{border:1px solid var(--dashboard-hero-border);background:radial-gradient(circle at 90% 0%, #10b98129, transparent 34%), linear-gradient(180deg, color-mix(in srgb, var(--bg-card) 95%, var(--primary) 4%), var(--bg-card));min-width:0;box-shadow:var(--shadow-soft);border-radius:30px;flex-direction:column;gap:16px;padding:22px;display:flex;position:relative;overflow:hidden}.llp-lesson-card:before{content:"";background:linear-gradient(#10b981,#38bdf8);width:6px;position:absolute;inset:0 auto 0 0}.llp-lesson-card>*{z-index:1;position:relative}.llp-lesson-meta{flex-wrap:wrap;gap:8px;display:flex}.llp-lesson-meta span{border:1px solid var(--border-color);background:color-mix(in srgb, var(--bg-secondary) 84%, var(--primary) 5%);min-height:30px;color:var(--text-secondary);border-radius:999px;align-items:center;gap:6px;padding:0 10px;font-size:12px;font-weight:850;display:inline-flex}.llp-lesson-steps{gap:9px;margin-top:auto;display:grid}.llp-lesson-step{border:1px solid var(--border-color);background:color-mix(in srgb, var(--bg-secondary) 82%, var(--primary) 4%);min-height:44px;color:var(--text-secondary);border-radius:16px;grid-template-columns:28px minmax(0,1fr);align-items:center;gap:10px;padding:8px 10px;display:grid}.llp-lesson-step span{border:1px solid var(--border-color);background:var(--bg-card);width:28px;height:28px;color:var(--text-mute);border-radius:10px;place-items:center;font-size:12px;font-weight:900;display:grid}.llp-lesson-step strong{color:var(--text-main);font-size:13px;font-weight:850}.llp-lesson-step.is-current{border-color:color-mix(in srgb, #38bdf8 30%, var(--border-color));background:color-mix(in srgb, #38bdf8 8%, var(--bg-card))}.llp-lesson-step.is-current span{border-color:color-mix(in srgb, #38bdf8 36%, var(--border-color));color:#0284c7}.llp-lesson-step.is-done{border-color:color-mix(in srgb, #10b981 30%, var(--border-color));background:color-mix(in srgb, #10b981 8%, var(--bg-card))}.llp-lesson-step.is-done span{border-color:color-mix(in srgb, #10b981 36%, var(--border-color));background:color-mix(in srgb, #10b981 10%, var(--bg-card));color:#059669}.llp-study-panel{border:1px solid var(--dashboard-hero-border);background:linear-gradient(180deg, color-mix(in srgb, var(--bg-card) 96%, var(--primary) 4%), var(--bg-card));box-shadow:var(--shadow-soft);border-radius:28px;margin-bottom:18px;overflow:hidden}.llp-progress-strip{border-bottom:1px solid var(--border-color);background:var(--bg-secondary);flex-wrap:wrap;align-items:center;gap:6px;margin:0 -16px;padding:8px 16px 10px;display:flex}.llp-progress-pill{color:var(--text-secondary);border:1px solid var(--border-color);background:var(--bg-card);border-radius:999px;justify-content:center;align-items:center;padding:4px 9px;font-size:10px;font-weight:700;display:flex}.llp-progress-pill.is-active{color:var(--primary);background:#05966914;border-color:#05966940}.llp-progress-pill.is-done{color:#059669;background:#10b98114;border-color:#10b98140}.llp-q-dots{border-bottom:1px solid var(--border-color);background:var(--bg-card);flex-wrap:wrap;align-items:center;gap:5px;padding:8px 0;display:flex}.llp-q-nav-label{color:var(--text-secondary);margin-right:4px;font-size:11px;font-weight:700}.llp-dot{border:1.5px solid var(--border-color);background:var(--bg-secondary);cursor:pointer;width:26px;height:26px;color:var(--text-mute);border-radius:7px;justify-content:center;align-items:center;font-size:11px;font-weight:600;transition:all .15s;display:flex}.llp-dot.active{color:#f59e0b;background:#f59e0b1a;border-color:#f59e0b}.llp-dot.answered{color:#3b82f6;background:#3b82f614;border-color:#3b82f6}.llp-dot.correct{color:#10b981;background:#10b9811a;border-color:#10b981}.llp-dot.wrong{color:#ef4444;background:#ef444414;border-color:#ef4444}.llp-q-counter{color:var(--text-secondary);white-space:nowrap;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:999px;margin-left:auto;padding:3px 8px;font-size:10px;font-weight:700}.llp-question-body{flex:1;padding:12px 0 0}.llp-q-label{text-transform:uppercase;letter-spacing:.08em;color:var(--text-mute);margin-bottom:10px;font-size:11px;font-weight:700}.llp-q-text{color:var(--text-main);margin-bottom:18px;font-size:16px;font-weight:800;line-height:1.5}.llp-choices{flex-direction:column;gap:10px;display:flex}.llp-choice{border:1.5px solid var(--border-color);background:var(--bg-secondary);cursor:pointer;text-align:left;border-radius:12px;align-items:center;gap:14px;width:100%;padding:13px 16px;transition:all .2s cubic-bezier(.16,1,.3,1);display:flex}.llp-choice:hover:not(:disabled):not(.chosen):not(.correct):not(.wrong){border-color:color-mix(in srgb, var(--primary) 60%, var(--border-color));background:color-mix(in srgb, var(--primary) 6%, var(--bg-card));box-shadow:var(--shadow-sm);transform:translateY(-2px)}.llp-choice:disabled{cursor:default}.llp-choice.chosen{background:#3b82f614;border-color:#3b82f6;box-shadow:0 4px 12px #3b82f61a}.llp-choice.correct{background:#10b98114;border-color:#10b981;box-shadow:0 4px 12px #10b9811a}.llp-choice.wrong{background:#ef44440f;border-color:#ef4444;box-shadow:0 4px 12px #ef444414}.llp-choice-label{background:var(--bg-card);border:1.5px solid var(--border-color);width:26px;height:26px;color:var(--text-secondary);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:11px;font-weight:750;transition:all .2s;display:flex}.llp-choice.chosen .llp-choice-label{color:#fff;background:#3b82f6;border-color:#3b82f6;box-shadow:0 0 10px #3b82f666}.llp-choice.correct .llp-choice-label{color:#fff;background:#10b981;border-color:#10b981;box-shadow:0 0 10px #10b98166}.llp-choice.wrong .llp-choice-label{color:#fff;background:#ef4444;border-color:#ef4444;box-shadow:0 0 10px #ef444466}.llp-choice-text{color:var(--text-main);flex:1;font-size:14.5px;font-weight:600;line-height:1.45}.llp-choice-icon{flex-shrink:0;font-size:14px;font-weight:700}.llp-choice-icon.correct{color:#10b981}.llp-choice-icon.wrong{color:#ef4444}.llp-q-nav{justify-content:space-between;margin-top:12px;display:flex}.llp-q-nav-btn{border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-secondary);cursor:pointer;border-radius:9px;align-items:center;gap:5px;padding:6px 11px;font-size:12px;font-weight:600;transition:all .15s;display:inline-flex}.llp-q-nav-btn:disabled{opacity:.35;cursor:default}.llp-q-nav-btn:not(:disabled):hover{border-color:var(--primary);color:var(--primary)}.llp-submit-area{border-top:1px solid var(--border-color);background:0 0;flex-direction:column;gap:12px;padding:10px 0 0;display:flex}.llp-submit-btn{cursor:pointer;background:var(--bg-card);width:100%;color:var(--text-mute);border:none;border:1.5px dashed var(--border-color);border-radius:10px;padding:10px;font-size:13px;font-weight:700;transition:all .2s}.llp-submit-btn.ready{color:#fff;background:linear-gradient(135deg,#059669,#10b981);border:none;box-shadow:0 12px 24px #10b9812e}.llp-submit-btn.ready:hover{transform:none;box-shadow:0 14px 30px #10b98138}.llp-submit-btn:disabled{cursor:not-allowed}.llp-result{border-radius:12px;align-items:center;gap:14px;padding:14px 16px;display:flex}.llp-result.pass{background:#10b9811a;border:1px solid #10b98140}.llp-result.fail{background:#ef444412;border:1px solid #ef444433}.llp-result-score{flex-shrink:0;font-size:26px;font-weight:700}.llp-result.pass .llp-result-score{color:#10b981}.llp-result.fail .llp-result-score{color:#ef4444}.llp-result-msg{font-size:13px;font-weight:600;line-height:1.5}.llp-result.pass .llp-result-msg{color:var(--success)}.llp-result.fail .llp-result-msg{color:var(--danger)}.llp-retry-btn{border:1px solid var(--border-color);background:var(--bg-card);width:100%;color:var(--text-secondary);cursor:pointer;border-radius:10px;justify-content:center;align-items:center;gap:6px;padding:10px;font-size:13px;font-weight:600;transition:all .15s;display:inline-flex}.llp-retry-btn:hover{color:#f59e0b;border-color:#f59e0b}.llp-no-questions{text-align:center;color:var(--text-secondary);flex-direction:column;justify-content:center;align-items:center;min-height:220px;padding:60px 24px;font-size:14px;display:flex}.llp-resources-wrap{border-top:1px solid var(--border-color);background:var(--bg-card);margin-top:16px;padding:14px 16px 16px}.llp-progress-grid{grid-template-columns:repeat(3,1fr)}.slp-prog-fill.listening{background:linear-gradient(90deg,#059669,#10b981,#38bdf8)}@media (width<=700px){.llp-root{padding:12px 12px 80px}.llp-learning-shell{grid-template-columns:1fr}.llp-listening-wrapper,.llp-lesson-card,.llp-study-panel{border-radius:22px}.llp-lesson-card{padding:18px}.llp-listening-stage-title{max-width:100%;font-size:15px}.llp-listening-stage-overlay{bottom:12px;left:14px;right:14px}.llp-panel-head--inline{flex-direction:column;gap:4px}.llp-tab-nav{overflow-x:auto}.llp-progress-grid{grid-template-columns:1fr}}.llp-resources-label{letter-spacing:.02em;color:var(--text-secondary);text-transform:uppercase;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:999px;align-items:center;margin-bottom:10px;padding:4px 10px;font-size:11px;font-weight:600;line-height:1.2;display:inline-flex}.llp-single{max-width:860px}.llp-audio-card{background:radial-gradient(circle at 92% 0,#f59e0b1f,#0000 38%),linear-gradient(135deg,#111827 0%,#030712 100%);border:1px solid #ffffff14;border-radius:28px;margin-bottom:20px;overflow:hidden;box-shadow:0 24px 60px #0206173d}.llp-audio-hero{aspect-ratio:16/9;background:#020617;border-bottom:1px solid #ffffff14;width:100%;max-height:420px;position:relative;overflow:hidden}.llp-audio-hero-img{object-fit:contain;width:100%;height:100%;transition:transform .4s;display:block}.llp-audio-hero:hover .llp-audio-hero-img{transform:scale(1.02)}.llp-audio-hero-overlay{display:none}.llp-audio-hero--placeholder{background:linear-gradient(135deg,#1e1b4b 0%,#030712 100%);justify-content:center;align-items:center;display:flex;position:relative}.llp-audio-hero-glow{background:radial-gradient(circle,#f59e0b26 0%,#0000 70%);width:150px;height:150px;animation:3s ease-in-out infinite pulse-glow;position:absolute}@keyframes pulse-glow{0%{transform:scale(.95);box-shadow:0 0 #059669b3}70%{transform:scale(1);box-shadow:0 0 0 8px #05966900}to{transform:scale(.95);box-shadow:0 0 #05966900}}.llp-audio-hero-icon{color:#f59e0bb3;z-index:1;filter:drop-shadow(0 0 15px #f59e0b40)}.llp-audio-info-area{padding:24px 24px 16px}.llp-audio-meta{flex:1;min-width:0}.llp-audio-card .llp-title{color:#fff;letter-spacing:-.01em;margin-top:10px;margin-bottom:8px;font-size:clamp(1.4rem,2.5vw,1.8rem);font-weight:850;line-height:1.25}.llp-audio-card .llp-desc{color:#ffffffad}.llp-audio-card .llp-lesson-meta span{color:#ffffffbf;background:#ffffff0f;border-color:#ffffff1a}.llp-xp-badge{color:#f59e0b;letter-spacing:.03em;background:#f59e0b26;border:1px solid #f59e0b40;border-radius:99px;align-items:center;gap:4px;padding:3px 10px;font-size:11px;font-weight:850;display:inline-flex}.llp-questions-count-badge{color:#3b82f6;letter-spacing:.03em;background:#3b82f61f;border:1px solid #3b82f638;border-radius:99px;align-items:center;gap:4px;padding:3px 10px;font-size:11px;font-weight:850;display:inline-flex}.llp-step-row{background:#ffffff05;border-top:1px solid #ffffff12;border-bottom:1px solid #ffffff12;align-items:center;gap:0;padding:14px 24px;display:flex}.llp-step-item{color:var(--text-muted);flex:1;justify-content:center;align-items:center;gap:7px;font-size:12px;font-weight:700;display:flex}.llp-step-num{border:1.5px solid #ffffff29;border-radius:7px;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;font-size:11px;font-weight:800;display:flex}.llp-step-sep{background:#ffffff1f;flex-shrink:0;width:28px;height:1.5px}.llp-step-item.is-active{color:#f59e0b}.llp-step-item.is-active .llp-step-num{color:#f59e0b;background:#f59e0b1a;border-color:#f59e0b}.llp-step-item.is-done{color:var(--interactive-accent)}.llp-step-item.is-done .llp-step-num{color:var(--interactive-accent);background:#10b9811f;border-color:#10b981}.llp-listen-progress-wrap{padding:10px 20px 0}.llp-listen-bar{background:#ffffff1a;border-radius:99px;height:5px;margin-bottom:6px;position:relative;overflow:visible}.llp-listen-fill{background:#f59e0b;border-radius:99px;height:100%;transition:width .5s}.llp-listen-fill.is-unlocked{background:linear-gradient(90deg,#10b981,#34d399)}.llp-listen-threshold{background:#ffffff59;border-radius:99px;width:2px;position:absolute;top:-3px;bottom:-3px;transform:translate(-50%)}.llp-listen-hint{color:#ffffff80;margin-bottom:8px;font-size:11px;font-weight:600}.llp-dictation-section{border:1px solid color-mix(in srgb, var(--skill-listening-color) 30%, var(--border-color) 70%);background:radial-gradient(circle at 100% 0%, color-mix(in srgb, var(--skill-listening-color) 10%, transparent), transparent 36%), var(--bg-card);box-shadow:0 16px 38px color-mix(in srgb, var(--skill-listening-color) 8%, transparent);border-radius:24px;margin-bottom:20px;padding:clamp(18px,3vw,26px)}.llp-dictation-header{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:18px;display:flex}.llp-dictation-header .llp-panel-subtitle{text-align:right;max-width:440px;margin:0}.llp-dictation-list{gap:14px;display:grid}.llp-dictation-card{border:1px solid var(--border-color);background:color-mix(in srgb, var(--bg-card) 88%, var(--bg-secondary) 12%);border-radius:17px;gap:12px;padding:17px;display:grid}.llp-dictation-card.is-correct{border-color:color-mix(in srgb, var(--success) 42%, var(--border-color) 58%)}.llp-dictation-card.is-incorrect{border-color:color-mix(in srgb, var(--danger) 36%, var(--border-color) 64%)}.llp-dictation-card__top{align-items:flex-start;gap:11px;display:flex}.llp-dictation-number{background:color-mix(in srgb, var(--skill-listening-color) 14%, var(--bg-card) 86%);width:30px;height:30px;color:var(--skill-listening-color);border-radius:9px;flex:0 0 30px;place-items:center;font-size:12px;font-weight:900;display:grid}.llp-dictation-card h3{color:var(--text-main);margin:0;font-size:14px;font-weight:900}.llp-dictation-card p{color:var(--text-secondary);margin:3px 0 0;font-size:12px}.llp-dictation-card audio{width:100%;height:36px}.llp-dictation-card>label{color:var(--text-secondary);letter-spacing:.05em;text-transform:uppercase;font-size:11px;font-weight:900}.llp-dictation-input{resize:vertical;min-height:70px}.llp-dictation-no-audio{background:var(--bg-secondary);color:var(--text-secondary);border-radius:10px;align-items:center;gap:8px;padding:10px 12px;font-size:12px;display:flex}.llp-dictation-actions{flex-wrap:wrap;gap:8px;display:flex}.llp-dictation-actions .btn{gap:6px;padding:8px 12px;font-size:12px}.llp-dictation-result{border-radius:12px;gap:10px;padding:12px;display:grid}.llp-dictation-result.is-correct{background:var(--bg-success-subtle);color:var(--success)}.llp-dictation-result.is-incorrect{background:var(--bg-danger-subtle);color:var(--danger)}.llp-dictation-result__summary{align-items:center;gap:7px;font-size:12.5px;display:flex}.llp-dictation-words{flex-wrap:wrap;gap:6px;display:flex}.llp-dictation-word{background:var(--bg-card);color:var(--text-main);border:1px solid #0000;border-radius:7px;align-items:center;gap:4px;padding:4px 7px;font-size:12px;font-weight:800;display:inline-flex}.llp-dictation-word.is-correct{border-color:color-mix(in srgb, var(--success) 32%, transparent);color:var(--success)}.llp-dictation-word.is-incorrect,.llp-dictation-word.is-missing,.llp-dictation-word.is-extra{border-color:color-mix(in srgb, var(--danger) 30%, transparent);color:var(--danger)}.llp-dictation-word small{color:var(--text-secondary);font-size:10px;font-weight:700}@media (width<=640px){.llp-dictation-header{flex-direction:column}.llp-dictation-header .llp-panel-subtitle{text-align:left}}.llp-quiz-section{border:1px solid var(--dashboard-hero-border);background:linear-gradient(180deg, color-mix(in srgb, var(--bg-card) 96%, var(--primary) 4%), var(--bg-card));box-shadow:var(--shadow-soft);border-radius:24px;margin-bottom:16px;overflow:hidden}.llp-quiz-header{border-bottom:1px solid var(--border-color);background:linear-gradient(#f59e0b0f 0%,#f59e0b03 100%);justify-content:space-between;align-items:flex-start;gap:10px;padding:16px 20px 12px;display:flex}.llp-lock-banner{color:#b45309;background:#f59e0b14;border:1px solid #f59e0b38;border-radius:10px;align-items:center;gap:8px;margin:14px 20px 0;padding:10px 14px;font-size:13px;font-weight:600;display:flex}.llp-all-questions{padding:12px 20px 20px}.llp-all-questions.is-locked{pointer-events:none;-webkit-user-select:none;user-select:none;opacity:.4;filter:blur(1.5px)}.llp-question-item{border-bottom:1px solid var(--border-color);margin-bottom:20px;padding-bottom:20px}.llp-question-item:last-of-type{border-bottom:none;margin-bottom:8px;padding-bottom:8px}.llp-answered-summary{justify-content:flex-end;margin-bottom:12px;display:flex}.llp-answered-summary span{border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-secondary);border-radius:999px;align-items:center;padding:3px 10px;font-size:11px;font-weight:700;display:inline-flex}.llp-answered-summary span.is-complete{color:#059669;background:#10b98112;border-color:#10b9814d}.llp-resources-section{border:1px solid var(--dashboard-hero-border);background:var(--bg-card);box-shadow:var(--shadow-soft);border-radius:24px;margin-bottom:16px;padding:16px 20px 20px;overflow:hidden}.llp-resources-header{text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary);background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:999px;align-items:center;gap:6px;margin-bottom:12px;padding:4px 12px;font-size:11px;font-weight:700;display:inline-flex}.llp-resources-desc{color:var(--text-mute);margin:0 0 14px;font-size:13px;line-height:1.65}@media (width<=600px){.llp-single{padding:12px 12px 80px}.llp-audio-card{border-radius:20px}.llp-audio-info-area{padding:18px 18px 12px}.llp-quiz-section,.llp-resources-section{border-radius:20px}.llp-all-questions{padding:10px 14px 16px}.llp-quiz-header{padding:14px 16px 10px}.llp-lock-banner{margin:10px 14px 0}}.crop-modal-viewport{border:2px dashed #f59e0b;width:480px;height:270px;position:relative;box-shadow:0 0 0 9999px #030712a6}.crop-modal-middle-row{height:270px;display:flex}.crop-modal-container{background:#090d16;justify-content:center;align-items:center;width:100%;height:400px;display:flex;position:relative;overflow:hidden}@media (width<=540px){.crop-modal-viewport{width:288px;height:162px}.crop-modal-middle-row{height:162px}.crop-modal-container{height:280px}}.slp-root{max-width:1180px;margin:0 auto;padding:16px 20px 90px}.slp-learning-shell{grid-template-columns:minmax(0,1.55fr) minmax(280px,.75fr);align-items:stretch;gap:18px;margin-bottom:18px;display:grid}.slp-cinema-backdrop{z-index:3000;cursor:pointer;background:#000000ed;animation:.25s slp-fade-in;position:fixed;inset:0}@keyframes slp-fade-in{0%{opacity:0}to{opacity:1}}.slp-video-wrapper{background:radial-gradient(circle at 90% 0,#10b9812e,#0000 36%),linear-gradient(135deg,#111827 0%,#030712 100%);border:1px solid #ffffff14;border-radius:30px;transition:none;position:relative;overflow:hidden;box-shadow:0 24px 60px #0206173d}.slp-video-stage-overlay{z-index:3;pointer-events:none;flex-direction:column;align-items:flex-start;gap:8px;display:flex;position:absolute;bottom:16px;left:18px;right:18px}.slp-video-stage-overlay.is-fading{opacity:0;transition:opacity 3s}.slp-video-stage-badge{color:#ecfdf5;background:#10b981eb;border:1px solid #ffffff29;border-radius:999px;align-items:center;gap:6px;padding:5px 10px;font-size:11px;font-weight:850;display:inline-flex}.slp-video-stage-title{color:#fff;text-shadow:0 2px 12px #00000073;max-width:78%;font-size:clamp(1.2rem,2vw,1.65rem);font-weight:950;line-height:1.22}.slp-video-wrapper.cinema{z-index:3001;background:#000;border-radius:14px;flex-direction:column;width:min(88vw,131.556vh - 113.778px);max-width:95vw;max-height:74vh;animation:.25s cubic-bezier(.4,0,.2,1) slp-scale-in;display:flex;position:fixed;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-50%);box-shadow:0 32px 96px #000000d9}.slp-video-wrapper.cinema .vlp-video-box{flex:1;min-height:0;position:relative}@media (width<=480px){.vctrl-volume-slider{display:none!important}.vctrl-bar{gap:6px!important;padding:8px 8px 10px!important}.vctrl-time{font-size:11px!important}.vctrl-milestones{padding:3px 6px!important;font-size:11px!important}}body:has(.slp-video-wrapper.cinema) .floating-help-btn{display:none!important}@keyframes slp-scale-in{0%{opacity:.6;transform:translate(-50%,-50%)scale(.94)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}.slp-cinema-close{z-index:10;color:#ffffffd9;cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);opacity:0;pointer-events:none;background:#0000008c;border:1px solid #ffffff26;border-radius:8px;align-items:center;gap:6px;padding:6px 12px;font-size:12px;font-weight:700;transition:background .15s,color .15s,opacity .35s,transform .35s;display:inline-flex;position:absolute;top:12px;right:12px;transform:translateY(-4px)}.slp-cinema-close.is-visible{opacity:1;pointer-events:auto;transform:translateY(0)}.slp-cinema-close:hover{color:#fff;background:#ffffff26}.slp-speaking-alert{color:var(--warning);background:#f59e0b14;border:1px solid #f59e0b4d;border-radius:12px;align-items:flex-start;gap:10px;margin-bottom:16px;padding:12px 16px;font-size:13px;display:flex}.slp-badge-type{background:var(--skill-speaking-bg);color:var(--skill-speaking-color);border:1px solid var(--skill-speaking-border)}.slp-lesson-card{border:1px solid var(--dashboard-hero-border);background:radial-gradient(circle at 90% 0%, #10b98129, transparent 34%), linear-gradient(180deg, color-mix(in srgb, var(--bg-card) 95%, var(--primary) 4%), var(--bg-card));min-width:0;box-shadow:var(--shadow-soft);border-radius:30px;flex-direction:column;gap:16px;padding:22px;display:flex;position:relative;overflow:hidden}.slp-lesson-card:before{content:"";background:linear-gradient(#10b981,#38bdf8);width:6px;position:absolute;inset:0 auto 0 0}.slp-lesson-card>*{z-index:1;position:relative}.slp-speaking-alert svg{color:var(--warning);flex-shrink:0;margin-top:1px}.slp-speaking-alert>div{flex:1;line-height:1.5}.slp-alert-link{cursor:pointer;color:var(--warning);background:0 0;border:none;padding:0;font-size:13px;font-weight:700;text-decoration:underline}.slp-alert-dismiss{cursor:pointer;color:var(--warning);background:0 0;border:none;flex-shrink:0;padding:2px;display:flex}.slp-panel{background:linear-gradient(180deg, color-mix(in srgb, var(--bg-card) 96%, var(--primary) 4%), var(--bg-card));border:1px solid var(--dashboard-hero-border);box-shadow:var(--shadow-soft);border-radius:28px;margin-bottom:24px;overflow:hidden}.slp-tab-nav{border-bottom:1px solid var(--border-color);background:var(--bg-secondary);padding:0 4px;display:flex}.slp-tab{cursor:pointer;color:var(--text-mute);white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;align-items:center;gap:6px;margin-bottom:-1px;padding:13px 18px;font-size:13px;font-weight:600;transition:color .15s,border-color .15s;display:inline-flex}.slp-tab:hover{color:var(--text-secondary)}.slp-tab.active{color:#8b5cf6;border-bottom-color:#8b5cf6;font-weight:700}.slp-tab-badge{background:var(--bg-card);border:1px solid var(--border-color);min-width:22px;height:18px;color:var(--text-mute);border-radius:99px;justify-content:center;align-items:center;padding:0 6px;font-size:10px;font-weight:600;display:inline-flex}.slp-tab-badge.done{color:#10b981;background:#10b9811a;border-color:#10b9814d}.slp-tab-badge.alert{color:#d97706;background:#f59e0b1f;border-color:#f59e0b66}.slp-tab-content{padding:22px 24px 24px}.slp-section-title{color:var(--text-main);margin:0 0 10px;font-size:14px;font-weight:600}.slp-about-text{color:var(--text-secondary);margin:0 0 16px;font-size:14px;line-height:1.7}.slp-rewatch-banner{color:#7c3aed;background:#8b5cf614;border:1px solid #8b5cf633;border-radius:10px;align-items:center;gap:8px;margin-bottom:16px;padding:10px 14px;font-size:13px;display:flex}.slp-panel,.llp-study-panel,.rlp-study-panel,.wlp-study-panel{box-shadow:none;border-radius:14px;margin-bottom:18px}.slp-tab-nav,.llp-tab-nav,.rlp-tab-nav,.wlp-tab-nav{padding:0 2px}.slp-tab,.llp-tab,.rlp-tab,.wlp-tab{gap:5px;padding:10px 12px;font-size:12px}.slp-tab-badge{min-width:20px;height:16px;padding:0 5px;font-size:10px}.slp-tab-content,.llp-tab-content,.rlp-tab-content,.wlp-tab-content{padding:14px 16px 16px}.llp-study-panel,.slp-root>.slp-panel,.rlp-study-panel,.wlp-study-panel{border:1px solid var(--dashboard-hero-border);background:linear-gradient(180deg, color-mix(in srgb, var(--bg-card) 96%, var(--primary) 4%), var(--bg-card));box-shadow:var(--shadow-soft);border-radius:28px;overflow:hidden}.rlp-root,.wlp-root{max-width:1180px;padding:16px 20px 90px}.rlp-body,.wlp-body{grid-template-columns:minmax(0,1fr);gap:18px}.rlp-article-panel,.wlp-writing-panel{border:1px solid var(--dashboard-hero-border);background:radial-gradient(circle at 92% 0%, #10b9811f, transparent 34%), linear-gradient(180deg, color-mix(in srgb, var(--bg-card) 95%, var(--primary) 4%), var(--bg-card));box-shadow:var(--shadow-soft);border-radius:30px}.rlp-article-panel,.wlp-writing-panel,.rlp-study-panel,.wlp-study-panel{box-sizing:border-box;width:100%;max-width:900px;margin-left:auto;margin-right:auto}.rlp-inline-badges,.wlp-inline-badges{margin-bottom:10px}.rlp-lesson-title,.wlp-lesson-title{margin-bottom:14px}.rlp-panel-top,.wlp-panel-top{padding-top:20px}.rlp-panel-meta,.wlp-panel-meta{flex-wrap:wrap;flex-shrink:0;justify-content:flex-end;gap:8px;display:flex}.rlp-panel-meta span,.wlp-panel-meta span{border:1px solid var(--border-color);background:color-mix(in srgb, var(--bg-secondary) 84%, var(--primary) 5%);min-height:30px;color:var(--text-secondary);white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:0 10px;font-size:12px;font-weight:850;display:inline-flex}.rlp-article-title,.wlp-panel-title{letter-spacing:0;font-weight:850}.rlp-article-body,.wlp-writing-surface{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}@media (width<=920px){.slp-learning-shell,.rlp-body,.wlp-body{grid-template-columns:1fr}}@media (width<=700px){.slp-root,.rlp-root,.wlp-root{padding:12px 12px 80px}.slp-video-wrapper,.slp-lesson-card,.slp-root>.slp-panel,.rlp-article-panel,.rlp-study-panel,.wlp-writing-panel,.wlp-study-panel{border-radius:22px}.slp-lesson-card{padding:18px}.slp-video-stage-title{max-width:100%;font-size:15px}.rlp-panel-top,.wlp-panel-top{flex-direction:column}.rlp-panel-meta,.wlp-panel-meta{justify-content:flex-start}}.rlp-steps,.wlp-steps{padding:10px 14px}.rlp-step,.wlp-step{font-size:11px}.rlp-step-circle,.wlp-step-circle{width:20px;height:20px;font-size:10px}.rlp-step-line,.wlp-step-line{margin:0 6px}.rlp-q-map{gap:5px;padding:8px 14px}.rlp-q-dot{border-radius:7px;width:26px;height:26px;font-size:11px}.rlp-q-count{font-size:10px}.rlp-question-body{padding:12px 14px}.rlp-q-label{margin-bottom:8px;font-size:10px}.rlp-q-text{margin-bottom:12px;font-size:14px}.rlp-choices{gap:6px}.rlp-choice{border-radius:9px;gap:10px;padding:9px 11px}.rlp-choice-label{border-radius:7px;width:22px;height:22px;font-size:11px}.rlp-choice-text{font-size:13px}.rlp-q-nav{margin-top:12px}.rlp-q-nav-btn{padding:6px 11px;font-size:12px}.rlp-submit-area{gap:10px;padding:10px 14px}.rlp-submit-btn{border-radius:10px;padding:10px;font-size:13px}.wlp-progress-card,.wlp-blank-map-card,.wlp-actions{padding-left:14px;padding-right:14px}.wlp-progress-card{padding-top:12px;padding-bottom:10px}.wlp-blank-map-card{padding-top:12px;padding-bottom:12px}.wlp-progress-label,.wlp-blank-map-label{font-size:12px}.wlp-progress-sub,.wlp-blank-map-sub{font-size:11px}.wlp-progress-score{font-size:18px}.wlp-blank-map{background:0 0;border:none;border-radius:0;grid-template-columns:repeat(auto-fill,minmax(26px,1fr));gap:5px;max-height:120px;padding:0;overflow-y:auto}.wlp-blank-dot{border-width:1.5px;border-radius:7px;height:26px;font-size:10px}@media (width<=860px){.wlp-blank-map{grid-template-columns:repeat(auto-fill,minmax(24px,1fr))}}.wlp-submit-btn,.wlp-retry-btn,.wlp-reset-btn{border-radius:10px;padding:10px;font-size:13px}.slp-speaking-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;display:flex}.slp-speaking-score{flex-direction:column;flex-shrink:0;align-items:center;display:flex}.slp-score-num{color:var(--text-mute);font-size:26px;font-weight:700;line-height:1}.slp-score-label{color:var(--text-dim);font-size:11px;font-weight:600}.slp-phrases{flex-direction:column;gap:10px;display:flex}.slp-phrase-card{border:1.5px solid var(--border-color);background:var(--bg-secondary);border-radius:14px;align-items:flex-start;gap:14px;padding:14px 16px;transition:border-color .15s,background .15s;display:flex}.slp-phrase-card.correct{background:#10b9810d;border-color:#10b98166}.slp-phrase-card.wrong{background:#ef44440a;border-color:#ef44444d}.slp-phrase-num{background:var(--bg-card);border:1px solid var(--border-color);width:24px;height:24px;color:var(--text-mute);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;margin-top:2px;font-size:11px;font-weight:600;display:flex}.slp-phrase-body{flex:1;min-width:0}.slp-phrase-text{color:var(--text-main);margin-bottom:3px;font-size:16px;font-weight:700}.slp-phrase-trans{color:var(--text-mute);font-size:13px}.slp-recording-indicator{color:var(--danger);align-items:center;gap:8px;margin-top:8px;font-size:12px;font-style:italic;display:flex}.slp-rec-dot{background:#ef4444;border-radius:50%;flex-shrink:0;width:8px;height:8px;animation:1s infinite pulse}.slp-phrase-result{border-radius:8px;align-items:center;gap:6px;margin-top:8px;padding:6px 10px;font-size:12px;display:flex}.slp-phrase-result.pass{background:var(--bg-success-subtle);color:var(--success)}.slp-phrase-result.fail{background:var(--bg-danger-subtle);color:var(--danger)}.slp-phrase-btns{flex-shrink:0;gap:8px;display:flex}.slp-phrase-btn{cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;transition:all .15s;display:flex}.slp-phrase-btn:disabled{opacity:.4;cursor:not-allowed}.slp-phrase-btn.tts{color:#8b5cf6;background:#8b5cf61a}.slp-phrase-btn.tts:hover:not(:disabled){color:#fff;background:#8b5cf6}.slp-phrase-btn.tts.active{color:#fff;background:#ef4444}.slp-phrase-btn.mic{background:var(--bg-card);border:1.5px solid var(--border-color);color:var(--text-secondary)}.slp-phrase-btn.mic:hover:not(:disabled){color:#8b5cf6;border-color:#8b5cf6}.slp-phrase-btn.mic.recording{color:#fff;background:#ef4444;border-color:#ef4444;animation:1s infinite pulse}.slp-official-attempt{margin-top:10px}.slp-official-attempt-btn{border:1.5px solid var(--border-color);background:var(--bg-card);color:var(--text-secondary);cursor:pointer;border-radius:20px;align-items:center;gap:6px;padding:6px 12px;font-size:12px;font-weight:600;transition:all .15s;display:inline-flex}.slp-official-attempt-btn:hover:not(:disabled){color:#f59e0b;border-color:#f59e0b}.slp-official-attempt-btn:disabled{opacity:.45;cursor:not-allowed}.slp-official-attempt-btn.active{color:#fff;background:#ef4444;border-color:#ef4444;animation:1s infinite pulse}.slp-official-attempt-msg{color:var(--text-mute);margin:6px 0 0;font-size:11px;font-style:italic}.slp-azure-breakdown{background:#f59e0b0f;border:1px solid #f59e0b40;border-radius:10px;margin-top:10px;padding:10px 12px;font-size:12px}.slp-azure-overall{color:#f59e0b;margin-bottom:6px;font-weight:700}.slp-azure-row{color:var(--text-secondary);justify-content:space-between;padding:2px 0;display:flex}.slp-all-done{background:var(--bg-success-subtle);border:1px solid var(--border-success);color:var(--success);border-radius:12px;align-items:center;gap:10px;margin-top:16px;padding:14px 18px;font-size:13px;font-weight:600;display:flex}.slp-all-done svg{color:#10b981;flex-shrink:0}.slp-progress-grid{grid-template-columns:1fr;gap:10px;display:grid}.slp-progress-card{background:color-mix(in srgb, var(--bg-secondary) 84%, var(--bg-card) 16%);border:1px solid var(--border-color);border-radius:12px;padding:12px 14px}.slp-progress-card-label{color:var(--text-secondary);margin-bottom:4px;font-size:12px;font-weight:700}.slp-progress-card-value{color:var(--text-main);margin-bottom:8px;font-size:16px;font-weight:600;line-height:1.25}.slp-prog-bar{background:var(--bg-card);border:1px solid color-mix(in srgb, var(--border-color) 70%, transparent);border-radius:99px;height:5px;overflow:hidden}.slp-prog-fill{border-radius:99px;height:100%;transition:width .4s}.slp-prog-fill.video{background:linear-gradient(90deg,#7c3aed,#8b5cf6)}.slp-prog-fill.speaking{background:linear-gradient(90deg,#059669,#10b981)}.slp-milestone-list{flex-direction:column;gap:6px;display:flex}.slp-milestone-row{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:10px;align-items:center;gap:12px;padding:10px 14px;font-size:13px;transition:border-color .15s;display:flex}.slp-milestone-row.passed{background:#10b9810a;border-color:#10b9814d}.slp-ms-dot{background:var(--bg-card);border:1.5px solid var(--border-color);width:24px;height:24px;color:var(--text-mute);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:11px;font-weight:600;display:flex}.slp-milestone-row.passed .slp-ms-dot{color:#10b981;background:#10b9811a;border-color:#10b981}.slp-ms-label{color:var(--text-main);flex:1;font-weight:600}.slp-ms-time{color:var(--text-mute);font-variant-numeric:tabular-nums;font-size:12px}.slp-ms-status{border-radius:99px;padding:2px 8px;font-size:11px;font-weight:700}.slp-ms-status.pass{color:#10b981;background:#10b9811a}.slp-ms-status.pending{background:var(--bg-card);color:var(--text-dim);border:1px solid var(--border-color)}.slp-empty{text-align:center;color:var(--text-secondary);flex-direction:column;justify-content:center;align-items:center;padding:48px 24px;font-size:14px;display:flex}.slp-root.slp-single{max-width:900px}.slp-video-card{margin-bottom:20px;position:relative}.slp-video-meta{background:radial-gradient(circle at 90% 0,#8b5cf624,#0000 40%),linear-gradient(135deg,#111827 0%,#030712 100%);border:1px solid #ffffff14;border-bottom:none;border-radius:24px 24px 0 0;padding:20px 24px 18px}.slp-title-wrap{overflow-wrap:break-word;word-break:break-word;-webkit-hyphens:auto;hyphens:auto}.slp-video-card .slp-video-wrapper:not(.cinema){border-top:none;border-radius:0 0 30px 30px}.slp-step-section{background:var(--bg-card);border:1px solid var(--border-color);border-radius:16px;margin-bottom:20px;padding:18px 20px}.slp-watch-progress-wrap{margin-top:14px}.slp-watch-bar{background:var(--bg-secondary);border-radius:4px;height:6px;margin-bottom:7px;position:relative;overflow:visible}.slp-watch-fill{background:linear-gradient(90deg,#6d28d9,#8b5cf6);border-radius:4px;height:100%;transition:width .35s}.slp-watch-fill.is-unlocked{background:linear-gradient(90deg,#059669,#10b981)}.slp-watch-threshold{background:#8b5cf6;border-radius:1px;width:2px;height:14px;position:absolute;top:-4px;transform:translate(-50%)}.slp-watch-hint{color:var(--text-mute);font-size:12px}.slp-practice-section{background:var(--bg-card);border:1px solid var(--border-color);border-radius:20px;margin-bottom:20px;padding:24px}.slp-practice-header{margin-bottom:20px}.slp-speaking-score{align-items:baseline;gap:6px;margin-top:10px;display:flex}.slp-score-num{color:var(--text-secondary);font-size:22px;font-weight:900;transition:color .3s}.slp-score-num.pass{color:#10b981}.slp-score-label{color:var(--text-mute);font-size:13px}.slp-phrase-phonetic{color:var(--skill-speaking-color);margin-top:3px;margin-bottom:2px;font-size:12px;font-style:italic}.slp-retry-phrase{color:var(--text-secondary);border:1px solid var(--border-color);cursor:pointer;background:0 0;border-radius:6px;flex-shrink:0;align-items:center;gap:4px;margin-left:10px;padding:2px 8px;font-size:11px;font-weight:600;transition:color .15s,border-color .15s;display:inline-flex}.slp-retry-phrase:hover{color:#8b5cf6;border-color:#8b5cf6}.slp-rec-wave{align-items:center;gap:3px;margin:0 6px;display:inline-flex}.slp-rec-wave span{background:#ef4444;border-radius:2px;width:3px;animation:.9s ease-in-out infinite slp-wave;display:block}.slp-rec-wave span:first-child{height:5px;animation-delay:0s}.slp-rec-wave span:nth-child(2){height:11px;animation-delay:.15s}.slp-rec-wave span:nth-child(3){height:17px;animation-delay:.3s}.slp-rec-wave span:nth-child(4){height:11px;animation-delay:.45s}.slp-rec-wave span:nth-child(5){height:5px;animation-delay:.6s}@keyframes slp-wave{0%,to{opacity:1;transform:scaleY(1)}50%{opacity:.6;transform:scaleY(.3)}}@media (width<=600px){.slp-root.slp-single{padding:10px 12px 60px}.slp-video-meta{padding:14px 16px 18px}.slp-practice-section{padding:16px}.slp-step-section{padding:14px 16px}}.admin-docs-container{flex-direction:column;gap:8px;max-height:180px;margin-bottom:12px;padding-right:4px;display:flex;overflow-y:auto}.admin-docs-container::-webkit-scrollbar{width:6px}.admin-docs-container::-webkit-scrollbar-track{background:0 0}.admin-docs-container::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:99px}.admin-docs-container::-webkit-scrollbar-thumb:hover{background:var(--text-mute)}.admin-doc-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:14px;align-items:center;gap:12px;padding:10px 14px;transition:transform .2s cubic-bezier(.16,1,.3,1),box-shadow .2s cubic-bezier(.16,1,.3,1),border-color .2s cubic-bezier(.16,1,.3,1);display:flex;box-shadow:0 1px 2px #0f172a05}.admin-doc-card:hover{transform:translateY(-1.5px)}.admin-doc-card--pdf:hover,.admin-doc-card--youtube:hover{border-color:#ef444466;box-shadow:0 6px 16px #ef444417}.admin-doc-card--google_drive:hover{border-color:#10b98166;box-shadow:0 6px 16px #10b98117}.admin-doc-card--link:hover{border-color:#0ea5e966;box-shadow:0 6px 16px #0ea5e917}.admin-doc-icon-wrapper{border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.admin-doc-icon-wrapper--pdf{color:#ef4444;background:#ef444414;border:1px solid #ef444426}.admin-doc-icon-wrapper--link,.admin-doc-icon-wrapper--website{color:#0284c7;background:#0ea5e914;border:1px solid #0ea5e926}.admin-doc-icon-wrapper--youtube{color:#ef4444;background:#ef444414;border:1px solid #ef444433}.admin-doc-icon-wrapper--google_drive{color:#059669;background:#10b98114;border:1px solid #10b98133}.admin-doc-info{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.admin-doc-title{color:var(--text-main);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:600;overflow:hidden}.admin-doc-meta-row{align-items:center;gap:8px;display:flex}.admin-doc-badge{text-transform:uppercase;letter-spacing:.03em;border-radius:4px;padding:1px 6px;font-size:9px;font-weight:600;line-height:1}.admin-doc-badge--pdf{color:#f87171;background:#ef44441a}.admin-doc-badge--link{color:#38bdf8;background:#0ea5e91a}.admin-doc-badge--website{color:#0284c7;background:#0ea5e91a}.admin-doc-badge--youtube{color:#dc2626;background:#ef44441f}.admin-doc-badge--google_drive{color:#059669;background:#10b9811f}.admin-doc-url-hint{color:var(--text-mute);white-space:nowrap;text-overflow:ellipsis;max-width:180px;font-size:11px;overflow:hidden}.admin-doc-actions{align-items:center;gap:8px;display:flex}.admin-doc-open-link{align-items:center;gap:4px;text-decoration:none;transition:all .15s;display:inline-flex;color:var(--text-secondary)!important;border:1px solid var(--border-color)!important;background:var(--bg-secondary)!important;border-radius:6px!important;padding:4px 8px!important;font-size:11px!important;font-weight:700!important}.doc-type-picker{flex-wrap:wrap;gap:6px;display:flex}.doc-type-pill{border:1px solid var(--border-color);background:var(--bg-secondary);height:32px;color:var(--text-secondary);cursor:pointer;border-radius:8px;align-items:center;gap:4px;padding:0 10px;font-size:12px;font-weight:700;display:inline-flex}.doc-type-pill.is-active{color:var(--success);background:#0596691f;border-color:#05966959}.admin-doc-open-link:hover{color:var(--text-main)!important;background:var(--bg-card)!important;border-color:var(--text-mute)!important}.admin-doc-remove-btn{width:24px;height:24px;color:var(--text-mute);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;transition:all .15s;display:flex}.admin-doc-remove-btn:hover{color:#ef4444;background:#ef444414;border-color:#ef444433}.admin-doc-remove-btn:disabled{opacity:.5;cursor:not-allowed}.admin-docs-page{flex-direction:column;gap:22px;display:flex}.admin-docs-page .page-header-bar{border:1px solid var(--dashboard-hero-border);background:radial-gradient(circle at 85% 8%, color-mix(in srgb, var(--primary) 18%, transparent), transparent 34%), var(--dashboard-kpi-bg);box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:28px;align-items:center;padding:28px 30px;position:relative;overflow:hidden}.admin-docs-page .page-header-bar:before{content:"";background:linear-gradient(#10b981,#38bdf8);width:8px;position:absolute;inset:0 auto 0 0}.admin-docs-page .page-header-bar:after{content:"";background:linear-gradient(90deg,#0000,#10b9816b,#0000);height:1px;position:absolute;bottom:0;left:18px;right:18px}.admin-docs-page .page-header-bar__lead{z-index:1;gap:14px;position:relative}.admin-docs-page .page-header-bar__icon-wrap{border:1px solid color-mix(in srgb, #10b981 26%, var(--border-color) 74%);background:linear-gradient(135deg, color-mix(in srgb, #10b981 18%, var(--bg-card) 82%), color-mix(in srgb, #38bdf8 8%, var(--bg-card) 92%));color:#10b981;border-radius:18px;width:58px;height:58px;box-shadow:0 14px 30px #10b9812e}.admin-docs-page .page-header-bar__title{letter-spacing:0;font-size:30px;line-height:1.15}.admin-docs-page .page-header-bar__subtitle{color:var(--text-secondary);margin-top:6px;font-size:14px;font-weight:700}.admin-docs-header-action{border:1px solid color-mix(in srgb, var(--primary) 28%, var(--border-color));background:color-mix(in srgb, var(--primary) 10%, var(--bg-card));color:var(--primary);border-radius:999px;align-items:center;gap:7px;padding:8px 12px;font-size:12px;font-weight:800;display:inline-flex}.admin-docs-command{color:#fff;background:radial-gradient(circle at 86% 8%,#10b9813d,#0000 34%),linear-gradient(135deg,#111827 0%,#030712 100%);border:1px solid #ffffff14;border-radius:30px;grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);gap:22px;padding:30px;display:grid;position:relative;overflow:hidden;box-shadow:0 24px 60px #02061738}.admin-docs-command:before{content:"";pointer-events:none;background:linear-gradient(90deg,#10b9812e,#0000 36%),radial-gradient(circle at 10% 90%,#38bdf829,#0000 30%);position:absolute;inset:0}.admin-docs-command__lead,.admin-docs-command__stats{z-index:1;position:relative}.admin-docs-command__eyebrow{color:#86efac;letter-spacing:.08em;text-transform:uppercase;background:#10b9811a;border:1px solid #10b98147;border-radius:999px;align-items:center;width:max-content;margin-bottom:10px;padding:5px 10px;font-size:11px;font-weight:900;display:inline-flex}.admin-docs-command h2{color:#fff;margin:0;font-size:clamp(1.55rem,2vw,2.15rem);line-height:1.1}.admin-docs-command p{color:#cbd5e1;max-width:560px;margin:10px 0 0;font-size:14px;font-weight:650}.admin-docs-command__stats{grid-template-columns:repeat(3,minmax(0,1fr));align-self:stretch;gap:12px;display:grid}.admin-docs-command__stat{background:#fff1;border:1px solid #ffffff1a;border-radius:20px;flex-direction:column;justify-content:space-between;gap:9px;min-width:0;padding:16px;display:flex;box-shadow:inset 0 1px #ffffff14}.admin-docs-command__stat svg{color:#34d399}.admin-docs-command__stat span{color:#cbd5e1;font-size:12px;font-weight:800}.admin-docs-command__stat strong{color:#fff;font-size:30px;font-weight:950;line-height:1}.admin-docs-hero{border:1px solid var(--border-color);background:radial-gradient(circle at top right, #05966924, transparent 38%), linear-gradient(135deg, color-mix(in srgb, var(--bg-card) 82%, var(--bg-secondary) 18%), var(--bg-card));box-shadow:var(--shadow-sm);border-radius:16px;grid-template-columns:minmax(0,1.5fr) minmax(280px,.9fr);align-items:stretch;gap:18px;padding:22px;display:grid}.admin-docs-hero__copy{flex-direction:column;justify-content:center;gap:8px;display:flex}.admin-docs-hero__eyebrow{width:fit-content;color:var(--primary);text-transform:uppercase;letter-spacing:.06em;background:#05966914;border:1px solid #05966933;border-radius:999px;align-items:center;gap:6px;padding:5px 10px;font-size:11px;font-weight:850;display:inline-flex}.admin-docs-hero h2{max-width:760px;color:var(--text-main);margin:0;font-size:26px;font-weight:900;line-height:1.2}.admin-docs-hero p{max-width:700px;color:var(--text-secondary);margin:0;font-size:14px;line-height:1.6}.admin-docs-stats-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.admin-docs-stat-card{border:1px solid var(--border-color);background:color-mix(in srgb, var(--bg-card) 80%, var(--bg-secondary) 20%);border-radius:12px;flex-direction:column;justify-content:center;min-height:112px;padding:14px;display:flex}.admin-docs-stat-card span{color:var(--text-mute);text-transform:uppercase;letter-spacing:.05em;font-size:11px;font-weight:800}.admin-docs-stat-card strong{color:var(--text-main);margin-top:6px;font-size:30px;font-weight:900;line-height:1}.admin-docs-stat-card.is-primary{background:#05966917;border-color:#05966947}.admin-docs-stat-card.is-primary strong{color:var(--primary)}.admin-docs-type-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.admin-docs-type-summary__item{border:1px solid var(--border-color);background:var(--bg-card);border-radius:12px;justify-content:space-between;align-items:center;gap:10px;padding:12px 14px;display:flex}.admin-docs-type-summary__item span{min-width:0;color:var(--text-secondary);align-items:center;gap:7px;font-size:12px;font-weight:800;display:inline-flex}.admin-docs-type-summary__item strong{color:var(--text-main);font-size:18px;font-weight:900}.admin-docs-result-pill{justify-content:center}.admin-docs-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:14px;display:grid}.admin-docs-empty{border:1px dashed var(--border-color);background:var(--bg-card);text-align:center;min-height:260px;color:var(--text-secondary);border-radius:16px;flex-direction:column;grid-column:1/-1;justify-content:center;align-items:center;gap:8px;padding:32px;display:flex}.admin-docs-empty h3{color:var(--text-main);margin:0}.admin-docs-empty p{margin:0;font-size:13px}.admin-docs-skill-card-v2{border:1px solid var(--border-color);background:var(--bg-card);min-height:292px;box-shadow:var(--shadow-sm);border-radius:14px;flex-direction:column;gap:14px;padding:16px;transition:transform .18s,border-color .18s,box-shadow .18s;display:flex}.admin-docs-skill-card-v2:hover{border-color:#05966947;transform:translateY(-2px);box-shadow:0 14px 34px #0f172a14}.admin-docs-skill-card-v2__top{grid-template-columns:42px minmax(0,1fr) 38px;align-items:start;gap:12px;display:grid}.admin-docs-skill-icon{width:42px;height:42px;color:var(--primary);background:#0596691a;border:1px solid #05966938;border-radius:12px;justify-content:center;align-items:center;display:flex}.admin-docs-skill-icon.is-listening{color:#d97706;background:#f59e0b1f;border-color:#f59e0b3d}.admin-docs-skill-icon.is-speaking{color:#7c3aed;background:#8b5cf61f;border-color:#8b5cf63d}.admin-docs-skill-icon.is-reading{color:#0284c7;background:#0ea5e91f;border-color:#0ea5e93d}.admin-docs-skill-icon.is-writing{color:#059669;background:#10b9811f;border-color:#10b9813d}.admin-docs-skill-card-v2__title{min-width:0}.admin-docs-skill-card-v2__title span{color:var(--primary);text-transform:uppercase;letter-spacing:.06em;font-size:11px;font-weight:850}.admin-docs-skill-card-v2__title h3{color:var(--text-main);overflow-wrap:anywhere;margin:3px 0 4px;font-size:15px;font-weight:850;line-height:1.3}.admin-docs-skill-card-v2__title p{color:var(--text-mute);margin:0;font-size:12px;line-height:1.35}.admin-docs-doc-count{border:1px solid var(--border-color);background:var(--bg-secondary);width:34px;height:34px;color:var(--text-mute);border-radius:10px;justify-content:center;align-items:center;font-size:14px;font-weight:900;display:flex}.admin-docs-doc-count.has-docs{color:var(--primary);background:#0596691a;border-color:#0596693d}.admin-docs-featured-doc,.admin-docs-no-docs{border:1px solid var(--border-color);background:var(--bg-secondary);border-radius:12px;flex-direction:column;justify-content:center;gap:7px;min-height:88px;padding:13px;display:flex}.admin-docs-featured-doc strong,.admin-docs-featured-doc small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.admin-docs-featured-doc strong{color:var(--text-main);font-size:13px}.admin-docs-featured-doc small{color:var(--text-mute);font-size:11px}.admin-docs-no-docs{color:var(--text-mute);text-align:center;align-items:center;font-size:13px;font-weight:700}.admin-docs-type-chip{width:fit-content;color:var(--text-secondary);align-items:center;gap:5px;font-size:11px;font-weight:800;display:inline-flex}.admin-docs-mini-list{flex-direction:column;gap:8px;display:flex}.admin-docs-mini-row{border:1px solid var(--border-color);background:color-mix(in srgb, var(--bg-card) 80%, var(--bg-secondary) 20%);border-radius:10px;grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:9px;min-height:38px;padding:7px 8px;display:grid}.admin-docs-mini-row>span:nth-child(2){color:var(--text-main);text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:750;overflow:hidden}.admin-docs-mini-actions{align-items:center;gap:5px;display:inline-flex}.admin-docs-icon-btn{border:1px solid var(--border-color);background:var(--bg-card);width:28px;height:28px;color:var(--text-secondary);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;display:inline-flex}.admin-docs-icon-btn:hover{border-color:var(--primary);color:var(--primary)}.admin-docs-icon-btn.is-danger:hover{color:#ef4444;background:#ef444414;border-color:#ef44444d}.admin-docs-more-count{color:var(--text-mute);text-align:center;font-size:11px;font-weight:750}.admin-docs-card-actions{flex-wrap:wrap;gap:8px;margin-top:auto;display:flex}.admin-docs-card-actions .btn{flex:130px;justify-content:center}.admin-docs-modal-backdrop{z-index:1200;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0f172aa8;justify-content:center;align-items:flex-start;padding:36px 18px;display:flex;position:fixed;inset:0;overflow-y:auto}.admin-docs-modal{border:1px solid var(--border-color);background:var(--bg-card);border-radius:24px;width:min(760px,100%);overflow:hidden;box-shadow:0 32px 80px #00000040}.admin-docs-modal__header{border-bottom:1px solid var(--border-color);background:radial-gradient(circle at top right, #05966929, transparent 40%), var(--bg-card);justify-content:space-between;align-items:flex-start;gap:16px;padding:22px 24px;display:flex}.admin-docs-modal__header span{color:var(--primary);text-transform:uppercase;letter-spacing:.06em;font-size:11px;font-weight:850}.admin-docs-modal__header h2{color:var(--text-main);margin:4px 0;font-size:20px;line-height:1.25}.admin-docs-modal__header p{color:var(--text-secondary);margin:0;font-size:13px}.admin-docs-modal__header button{border:1px solid var(--border-color);background:var(--bg-secondary);width:36px;height:36px;color:var(--text-secondary);cursor:pointer;border-radius:10px;justify-content:center;align-items:center;display:inline-flex}.admin-docs-modal__body{gap:18px;padding:22px 24px;display:grid}.admin-docs-modal-section{gap:9px;display:grid}.admin-docs-type-picker-v2{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;display:grid}.admin-docs-type-option{border:1px solid var(--border-color);background:var(--bg-secondary);min-height:106px;color:var(--text-secondary);cursor:pointer;text-align:left;border-radius:14px;flex-direction:column;align-items:flex-start;gap:6px;padding:13px;display:flex}.admin-docs-type-option strong{color:var(--text-main);font-size:13px}.admin-docs-type-option small{color:var(--text-mute);font-size:11px;line-height:1.35}.admin-docs-type-option.is-active{color:var(--primary);background:#0596691a;border-color:#05966959}.admin-docs-modal-grid{grid-template-columns:1fr 1.3fr;gap:12px;display:grid}.admin-docs-form-group{margin-bottom:0}.admin-docs-url-error{color:var(--danger);margin-top:6px;font-size:12px}.admin-docs-preview-card{border:1px solid var(--border-color);background:var(--bg-secondary);border-radius:14px;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:12px;padding:13px;display:grid}.admin-docs-preview-card div{min-width:0}.admin-docs-preview-card strong,.admin-docs-preview-card small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.admin-docs-preview-card strong{color:var(--text-main);font-size:13px}.admin-docs-preview-card small{color:var(--text-mute);margin-top:3px;font-size:11px}.admin-docs-modal__footer{border-top:1px solid var(--border-color);background:var(--bg-secondary);justify-content:flex-end;gap:10px;padding:16px 24px;display:flex}@media (width<=900px){.admin-docs-hero,.admin-docs-stats-grid,.admin-docs-type-summary,.admin-docs-type-picker-v2,.admin-docs-modal-grid,.admin-docs-grid{grid-template-columns:1fr}.admin-docs-preview-card{grid-template-columns:38px minmax(0,1fr)}.admin-docs-preview-card .btn{grid-column:1/-1;justify-content:center}}@media (width<=560px){.admin-docs-hero{padding:16px}.admin-docs-hero h2{font-size:21px}.admin-docs-skill-card-v2__top{grid-template-columns:38px minmax(0,1fr)}.admin-docs-doc-count{grid-column:1/-1;width:100%}.admin-docs-modal-backdrop{padding:14px}.admin-docs-modal__header,.admin-docs-modal__body,.admin-docs-modal__footer{padding-left:16px;padding-right:16px}}.admin-docs-compact-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.admin-docs-compact-summary>div{border:1px solid var(--border-color);background:var(--bg-card);border-radius:10px;justify-content:space-between;align-items:center;gap:10px;padding:10px 14px;display:flex}.admin-docs-compact-summary span{color:var(--text-secondary);font-size:12px;font-weight:750}.admin-docs-compact-summary strong{color:var(--text-main);font-size:17px;font-weight:900}.admin-docs-toolbar{border:1px solid var(--dashboard-hero-border);background:linear-gradient(180deg, color-mix(in srgb, var(--bg-card) 96%, var(--primary) 4%), var(--bg-card));box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-radius:24px;grid-template-columns:minmax(200px,1fr) 140px 150px 180px 110px 125px;align-items:stretch;gap:10px;padding:16px;display:grid}.admin-docs-page .classrooms-overview__search,.admin-docs-page .form-input{border-color:var(--border-color);background:linear-gradient(180deg, color-mix(in srgb, var(--bg-card) 90%, var(--primary) 4%), var(--bg-secondary));border-radius:16px;min-height:44px;transition:border-color .18s,box-shadow .18s,background .18s}.admin-docs-page .classrooms-overview__search:focus-within,.admin-docs-page .form-input:focus{border-color:color-mix(in srgb, var(--primary) 34%, var(--border-color));box-shadow:0 0 0 4px color-mix(in srgb, var(--primary) 10%, transparent)}.admin-docs-page .btn{border-radius:14px;font-weight:800}.admin-docs-page .btn-primary{border-color:color-mix(in srgb, #10b981 36%, var(--border-color));background:linear-gradient(135deg,#059669,#10b981);box-shadow:0 12px 26px #10b98129}.admin-docs-page .btn-secondary{border-color:color-mix(in srgb, var(--primary) 18%, var(--border-color));background:linear-gradient(180deg, color-mix(in srgb, var(--bg-card) 88%, var(--primary) 5%), var(--bg-secondary));color:var(--text-secondary)}.admin-docs-collapse-toggle{justify-content:center;align-items:center;min-height:44px}.admin-docs-collapse-toggle button{cursor:pointer;justify-content:center;align-items:center;min-width:34px;display:flex}.admin-docs-result-pill{border:1px solid color-mix(in srgb, var(--primary) 22%, var(--border-color));background:color-mix(in srgb, var(--primary) 9%, var(--bg-card));min-height:44px;color:var(--primary);border-radius:16px;font-weight:850}.admin-docs-board{flex-direction:column;gap:14px;display:flex}.admin-docs-year-section{border:1px solid var(--dashboard-hero-border);background:linear-gradient(180deg, color-mix(in srgb, var(--bg-card) 96%, var(--primary) 4%), var(--bg-card));box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-radius:26px;overflow:hidden}.admin-docs-year-head{border-bottom:1px solid var(--border-color);background:radial-gradient(circle at 94% 0%, color-mix(in srgb, var(--primary) 14%, transparent), transparent 34%), linear-gradient(180deg, color-mix(in srgb, var(--bg-card) 86%, var(--primary) 6%), var(--bg-card));cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;gap:12px;padding:20px 22px;transition:background-color .2s,border-bottom-color .2s;display:flex}.admin-docs-year-head:hover{background:radial-gradient(circle at 94% 0%, color-mix(in srgb, var(--primary) 18%, transparent), transparent 34%), linear-gradient(180deg, color-mix(in srgb, var(--bg-card) 82%, var(--primary) 8%), var(--bg-card))}.admin-docs-year-section.is-collapsed .admin-docs-year-head{border-bottom-color:#0000}.admin-docs-year-head h2{color:var(--text-main);margin:0;font-size:18px;font-weight:900}.admin-docs-year-head p{color:var(--text-mute);margin:3px 0 0;font-size:12px}.admin-docs-situation-stack{gap:14px;padding:16px;display:grid}.admin-docs-situation-section{border:1px solid color-mix(in srgb, var(--primary) 16%, var(--border-color));background:radial-gradient(circle at 96% 0%, #38bdf81a, transparent 32%), linear-gradient(180deg, color-mix(in srgb, var(--bg-card) 94%, var(--primary) 4%), var(--bg-card));box-shadow:0 14px 34px color-mix(in srgb, var(--primary) 7%, transparent);border-radius:22px;overflow:hidden}.admin-docs-situation-head{border-bottom:1px solid var(--border-color);background:linear-gradient(90deg, #10b9811a, transparent 42%), color-mix(in srgb, var(--bg-secondary) 86%, var(--primary) 5%);justify-content:space-between;align-items:center;gap:16px;padding:16px 18px;display:flex}.admin-docs-situation-head__title{min-width:0}.admin-docs-situation-head__title span{border:1px solid color-mix(in srgb, #10b981 24%, var(--border-color));background:color-mix(in srgb, #10b981 9%, var(--bg-card));color:#059669;letter-spacing:.06em;text-transform:uppercase;border-radius:999px;margin-bottom:4px;padding:4px 9px;font-size:10px;font-weight:900;display:inline-flex}.admin-docs-situation-head__title strong{color:var(--text-main);text-overflow:ellipsis;white-space:nowrap;font-size:15px;font-weight:900;line-height:1.35;display:block;overflow:hidden}.admin-docs-situation-head__meta{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.admin-docs-situation-head__meta span{border:1px solid var(--border-color);background:color-mix(in srgb, var(--bg-card) 88%, var(--primary) 5%);min-height:28px;color:var(--text-secondary);white-space:nowrap;border-radius:999px;align-items:center;padding:0 10px;font-size:11px;font-weight:850;display:inline-flex}.admin-docs-table-wrap{overflow-x:auto}.admin-docs-simple-table{border-collapse:collapse;width:100%;min-width:860px}.admin-docs-simple-table th,.admin-docs-simple-table td{border-bottom:1px solid var(--border-color);text-align:left;vertical-align:middle;padding:15px 16px}.admin-docs-simple-table th{background:linear-gradient(180deg, color-mix(in srgb, var(--bg-card) 84%, var(--primary) 8%), var(--bg-secondary));color:var(--text-mute);text-transform:uppercase;letter-spacing:.05em;font-size:11px;font-weight:850}.admin-docs-simple-table td{color:var(--text-secondary);font-size:13px}.admin-docs-simple-table tbody tr:last-child td{border-bottom:0}.admin-docs-simple-table tbody tr:hover{background:color-mix(in srgb, var(--primary) 4%, transparent)}.admin-docs-simple-table td:first-child{width:28%}.admin-docs-simple-table--situation{min-width:760px}.admin-docs-simple-table--situation td:first-child{width:34%}.admin-docs-simple-table td:first-child strong{color:var(--text-main);font-size:13px;line-height:1.35;display:block}.admin-docs-skill-type{background:color-mix(in srgb, var(--primary) 8%, var(--bg-card));color:var(--primary);border:1px solid color-mix(in srgb, var(--primary) 22%, var(--border-color));text-transform:capitalize;border-radius:999px;padding:4px 10px;font-size:11px;font-weight:800;display:inline-flex}.admin-docs-doc-summary{gap:4px;min-width:0;display:grid}.admin-docs-doc-summary strong{color:var(--text-main);font-size:12px}.admin-docs-doc-summary small{max-width:260px;color:var(--text-mute);text-overflow:ellipsis;white-space:nowrap;font-size:11px;display:block;overflow:hidden}.admin-docs-empty-doc{border:1px solid color-mix(in srgb, var(--warning) 28%, var(--border-color));background:var(--bg-warning-subtle);width:fit-content;color:var(--primary);border-radius:999px;padding:4px 10px;font-size:11px;font-weight:850;display:inline-flex}.admin-docs-empty-row{border:1px dashed var(--border-color);background:linear-gradient(180deg, color-mix(in srgb, var(--bg-card) 96%, var(--primary) 4%), var(--bg-card));min-height:180px;box-shadow:var(--shadow-soft);text-align:center;border-radius:24px;place-items:center;padding:24px;display:grid}.admin-docs-empty-row h3{color:var(--text-main);margin:0 0 6px}.admin-docs-empty-row p{color:var(--text-secondary);margin:0;font-size:13px}.admin-docs-modal--focused{width:min(860px,100%)}.admin-docs-page .admin-docs-modal{border-color:var(--dashboard-hero-border);background:linear-gradient(180deg, color-mix(in srgb, var(--bg-card) 96%, var(--primary) 4%), var(--bg-card));box-shadow:0 32px 90px #02061752}.admin-docs-page .admin-docs-modal__header{background:radial-gradient(circle at 92% 0%, color-mix(in srgb, var(--primary) 18%, transparent), transparent 38%), linear-gradient(180deg, color-mix(in srgb, var(--bg-card) 88%, var(--primary) 6%), var(--bg-card))}.admin-docs-page .admin-docs-modal__header button{background:linear-gradient(180deg, color-mix(in srgb, var(--bg-card) 90%, var(--primary) 4%), var(--bg-secondary));border-radius:14px}.admin-docs-modal-section-head{justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px;display:flex}.admin-docs-modal-section-head strong{color:var(--text-main);font-size:14px}.admin-docs-modal-section-head span{color:var(--text-mute);font-size:12px;font-weight:750}.admin-docs-current-list{gap:8px;display:grid}.admin-docs-current-row{border:1px solid var(--border-color);background:linear-gradient(180deg, color-mix(in srgb, var(--bg-card) 90%, var(--primary) 4%), var(--bg-secondary));border-radius:16px;grid-template-columns:34px minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:11px 12px;display:grid}.admin-docs-current-row div{min-width:0}.admin-docs-current-row strong,.admin-docs-current-row small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.admin-docs-current-row strong{color:var(--text-main);font-size:13px}.admin-docs-current-row small{color:var(--text-mute);margin-top:2px;font-size:11px}.admin-docs-remove-text-btn{color:#ef4444;cursor:pointer;background:#ef444412;border:1px solid #ef444442;border-radius:14px;justify-content:center;align-items:center;gap:5px;min-height:34px;padding:0 10px;font-size:12px;font-weight:800;display:inline-flex}.admin-docs-remove-text-btn:disabled{opacity:.6;cursor:not-allowed}.admin-docs-modal-empty{border:1px dashed var(--border-color);color:var(--text-mute);background:linear-gradient(180deg, color-mix(in srgb, var(--bg-card) 90%, var(--primary) 4%), var(--bg-secondary));text-align:center;border-radius:16px;padding:14px;font-size:13px}.admin-docs-type-picker-v2--compact{grid-template-columns:repeat(4,minmax(0,1fr))}.admin-docs-type-picker-v2--compact .admin-docs-type-option{background:linear-gradient(180deg, color-mix(in srgb, var(--bg-card) 90%, var(--primary) 4%), var(--bg-secondary));text-align:center;border-radius:16px;justify-content:center;align-items:center;min-height:56px}.admin-docs-preview-card--compact{background:linear-gradient(180deg, color-mix(in srgb, var(--bg-card) 90%, var(--primary) 4%), var(--bg-secondary));border-radius:18px;padding:12px}@media (width<=900px){.admin-docs-page .page-header-bar{border-radius:24px;padding:22px}.admin-docs-page .page-header-bar__icon-wrap{border-radius:16px;width:50px;height:50px}.admin-docs-command{border-radius:26px;grid-template-columns:1fr;padding:24px}.admin-docs-toolbar,.admin-docs-compact-summary,.admin-docs-type-picker-v2--compact,.admin-docs-current-row{grid-template-columns:1fr}.admin-docs-current-row .btn,.admin-docs-remove-text-btn{width:100%}}@media (width<=560px){.admin-docs-command__stats{grid-template-columns:1fr}.admin-docs-toolbar{border-radius:22px;padding:12px}.admin-docs-year-head{padding:17px 18px}.admin-docs-situation-stack{padding:12px}.admin-docs-situation-head{flex-direction:column;align-items:flex-start;padding:14px}.admin-docs-situation-head__title strong{white-space:normal}.admin-docs-situation-head__meta{justify-content:flex-start;width:100%}}.admin-permissions-page{gap:22px}.admin-permissions-page .page-header-bar{border:1px solid var(--dashboard-hero-border);background:radial-gradient(circle at 85% 8%, color-mix(in srgb, var(--primary) 18%, transparent), transparent 34%), var(--dashboard-kpi-bg);box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:28px;align-items:center;padding:28px 30px;position:relative;overflow:hidden}.admin-permissions-page .page-header-bar:before{content:"";background:linear-gradient(#10b981,#38bdf8);width:8px;position:absolute;inset:0 auto 0 0}.admin-permissions-page .page-header-bar:after{content:"";background:linear-gradient(90deg,#0000,#10b9816b,#0000);height:1px;position:absolute;bottom:0;left:18px;right:18px}.admin-permissions-page .page-header-bar__lead{z-index:1;gap:14px;position:relative}.admin-permissions-page .page-header-bar__icon-wrap{border:1px solid color-mix(in srgb, #10b981 26%, var(--border-color) 74%);background:linear-gradient(135deg, color-mix(in srgb, #10b981 18%, var(--bg-card) 82%), color-mix(in srgb, #38bdf8 8%, var(--bg-card) 92%));color:#10b981;border-radius:18px;width:58px;height:58px;box-shadow:0 14px 30px #10b9812e}.admin-permissions-page .page-header-bar__title{letter-spacing:0;font-size:30px;line-height:1.15}.admin-permissions-page .page-header-bar__subtitle{color:var(--text-secondary);margin-top:6px;font-size:14px;font-weight:700}.admin-permissions-command{color:#fff;background:radial-gradient(circle at 86% 8%,#10b9813d,#0000 34%),linear-gradient(135deg,#111827 0%,#030712 100%);border:1px solid #ffffff14;border-radius:30px;grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);gap:22px;padding:30px;display:grid;position:relative;overflow:hidden;box-shadow:0 24px 60px #02061738}.admin-permissions-command:before{content:"";pointer-events:none;background:linear-gradient(90deg,#10b9812e,#0000 36%),radial-gradient(circle at 10% 90%,#38bdf829,#0000 30%);position:absolute;inset:0}.admin-permissions-command__lead,.admin-permissions-command__stats{z-index:1;position:relative}.admin-permissions-command__eyebrow{color:#86efac;letter-spacing:.08em;text-transform:uppercase;background:#10b9811a;border:1px solid #10b98147;border-radius:999px;align-items:center;width:max-content;margin-bottom:10px;padding:5px 10px;font-size:11px;font-weight:900;display:inline-flex}.admin-permissions-command h2{color:#fff;margin:0;font-size:clamp(1.55rem,2vw,2.15rem);line-height:1.1}.admin-permissions-command p{color:#cbd5e1;max-width:560px;margin:10px 0 0;font-size:14px;font-weight:650}.admin-permissions-command__stats{grid-template-columns:repeat(3,minmax(0,1fr));align-self:stretch;gap:12px;display:grid}.admin-permissions-command__stat{background:#fff1;border:1px solid #ffffff1a;border-radius:20px;flex-direction:column;justify-content:space-between;gap:9px;min-width:0;padding:16px;display:flex;box-shadow:inset 0 1px #ffffff14}.admin-permissions-command__stat svg{color:#34d399}.admin-permissions-command__stat span{color:#cbd5e1;font-size:12px;font-weight:800}.admin-permissions-command__stat strong{color:#fff;font-size:30px;font-weight:950;line-height:1}.admin-permissions-banner{border:1px solid var(--border-info);background:var(--bg-info-subtle);color:var(--text-secondary);border-radius:18px;align-items:flex-start;gap:10px;padding:12px 14px;font-size:13px;line-height:1.45;display:flex}.admin-permissions-banner svg{color:var(--primary);flex-shrink:0;margin-top:1px}.admin-permissions-banner--warning{border-color:var(--border-warning);background:var(--bg-warning-subtle)}.admin-permissions-banner--warning svg{color:var(--warning)}.admin-permissions-banner--danger{border-color:var(--border-danger);background:var(--bg-danger-subtle)}.admin-permissions-banner--danger svg{color:var(--danger)}.admin-permissions-shell{flex-direction:column;display:flex;background:linear-gradient(180deg, color-mix(in srgb, var(--bg-card) 96%, var(--primary) 4%), var(--bg-card))!important;box-shadow:var(--shadow-soft)!important;border-radius:30px!important;gap:24px!important;padding:24px!important}.admin-permissions-console-switch{background:color-mix(in srgb, var(--bg-secondary) 82%, var(--primary) 5%)!important;box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--primary) 10%, transparent)!important;border-radius:18px!important}.admin-permissions-console-switch button{border-radius:14px!important}.admin-permissions-console-switch button[style*="var(--bg-card)"]{background:linear-gradient(135deg, color-mix(in srgb, #10b981 14%, var(--bg-card) 86%), color-mix(in srgb, #38bdf8 7%, var(--bg-card) 93%))!important;border-color:color-mix(in srgb, var(--primary) 24%, var(--border-color))!important}.admin-permissions-role-tabs{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.admin-permissions-role-tab{border:1px solid var(--border-color);background:linear-gradient(180deg, color-mix(in srgb, var(--bg-card) 92%, var(--role-color) 3%), var(--bg-card));min-width:0;color:var(--text-secondary);cursor:pointer;text-align:left;border-radius:20px;align-items:center;gap:12px;padding:14px 18px;transition:all .25s cubic-bezier(.4,0,.2,1);display:flex;position:relative}.admin-permissions-role-tab:hover{border-color:var(--role-color);background:color-mix(in srgb, var(--role-bg) 60%, var(--bg-card) 40%);box-shadow:0 10px 20px color-mix(in srgb, var(--role-color) 8%, transparent);transform:translateY(-2px)}.admin-role-template-card{transition:all .3s cubic-bezier(.4,0,.2,1);background:radial-gradient(circle at 95% 0%, color-mix(in srgb, var(--primary) 10%, transparent), transparent 34%), linear-gradient(180deg, color-mix(in srgb, var(--bg-card) 94%, var(--primary) 4%), var(--bg-card))!important;border-radius:26px!important}.admin-role-template-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-3px);border-color:var(--primary)!important}.admin-permissions-role-tab:focus-visible{outline:3px solid color-mix(in srgb, var(--role-color) 24%, transparent);outline-offset:2px}.admin-permissions-role-tab.is-active{color:var(--role-color);border-color:var(--role-color);background:radial-gradient(circle at 90% 0%, color-mix(in srgb, var(--role-color) 18%, transparent), transparent 34%), color-mix(in srgb, var(--role-bg) 80%, var(--bg-card) 20%);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--role-color) 25%, transparent), 0 8px 18px color-mix(in srgb, var(--role-color) 12%, transparent)}.admin-permissions-role-tab__icon{width:34px;height:34px;color:var(--role-color);background:var(--role-bg);border:1px solid var(--role-border);border-radius:9px;flex-shrink:0;place-items:center;display:grid}.admin-permissions-role-tab__main{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.admin-permissions-role-tab__main strong{color:var(--text-main);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:800;overflow:hidden}.admin-permissions-role-tab__main small,.admin-permissions-role-tab__meta{color:var(--text-mute);font-size:11px;font-weight:700}.admin-permissions-role-tab__meta{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:99px;flex-shrink:0;padding:3px 7px}.admin-permissions-role-tab.is-active .admin-permissions-role-tab__meta{color:var(--role-color);background:var(--bg-card);border-color:var(--role-border)}.admin-permissions-role-tab__active{background:var(--role-color);color:#fff;letter-spacing:.04em;text-transform:uppercase;border-radius:999px;flex-shrink:0;padding:2px 6px;font-size:9px;font-weight:900}.admin-permissions-panel{flex-direction:column;gap:14px;display:flex}.admin-permissions-panel__intro{border:1px solid var(--role-border);background:color-mix(in srgb, var(--role-bg) 78%, var(--bg-card) 22%);border-radius:12px;align-items:flex-start;gap:12px;padding:14px;display:flex}.admin-permissions-panel__intro-icon{width:38px;height:38px;color:var(--role-color);background:var(--bg-card);border:1px solid var(--role-border);border-radius:10px;flex-shrink:0;place-items:center;display:grid}.admin-permissions-panel__intro h2,.admin-permissions-bulk-card h3{color:var(--text-main);margin:0;font-size:15px;font-weight:850}.admin-permissions-panel__intro p,.admin-permissions-bulk-card p{color:var(--text-secondary);margin:4px 0 0;font-size:12px;line-height:1.45}.admin-permissions-toolbar{border:1px solid var(--dashboard-hero-border);background:linear-gradient(180deg, color-mix(in srgb, var(--bg-card) 96%, var(--primary) 4%), var(--bg-card));box-shadow:var(--shadow-sm);border-radius:22px;justify-content:space-between;align-items:center;gap:10px;padding:14px;display:flex}.admin-permissions-search{border:1px solid var(--border-color);background:linear-gradient(180deg, color-mix(in srgb, var(--bg-card) 90%, var(--primary) 4%), var(--bg-secondary));min-width:220px;min-height:44px;color:var(--text-mute);border-radius:16px;flex:1;align-items:center;gap:8px;padding:0 12px;transition:border-color .18s,box-shadow .18s,background .18s;display:flex}.admin-permissions-search:focus-within{border-color:color-mix(in srgb, var(--primary) 34%, var(--border-color));box-shadow:0 0 0 4px color-mix(in srgb, var(--primary) 10%, transparent)}.admin-permissions-search input{min-width:0;color:var(--text-main);background:0 0;border:0;outline:0;flex:1;font-size:13px}.admin-permissions-search button{color:var(--text-mute);cursor:pointer;background:0 0;border:0;place-items:center;padding:2px;display:grid}.admin-permissions-toolbar__count{color:var(--text-mute);flex-shrink:0;font-size:12px;font-weight:800}.admin-permissions-table-shell{background:linear-gradient(180deg, color-mix(in srgb, var(--bg-card) 96%, var(--primary) 4%), var(--bg-card));scrollbar-gutter:stable;max-height:min(68vh,680px);overflow:auto;border:1px solid var(--dashboard-hero-border)!important;box-shadow:var(--shadow-soft)!important;border-radius:24px!important}.admin-permissions-table{width:100%;min-width:max(720px, calc(470px + (var(--permission-columns,3) * 92px)));border-collapse:collapse;table-layout:fixed}.admin-permissions-table th{z-index:4;background:linear-gradient(180deg, color-mix(in srgb, var(--bg-card) 84%, var(--primary) 8%), var(--bg-secondary));color:var(--text-secondary);text-align:left;border-bottom:1px solid var(--border-color);white-space:normal;padding:11px 12px;font-size:11px;font-weight:850;line-height:1.25;position:sticky;top:0}.admin-permissions-table td{border-bottom:1px solid var(--border-color);vertical-align:top;background:color-mix(in srgb, var(--bg-card) 98%, var(--primary) 2%);padding:12px}.admin-permissions-table th:first-child,.admin-permissions-table td:first-child{z-index:3;background:color-mix(in srgb, var(--bg-card) 98%, var(--primary) 2%);width:220px;box-shadow:1px 0 0 var(--border-color);position:sticky;left:0}.admin-permissions-table th:nth-child(2),.admin-permissions-table td:nth-child(2){width:105px}.admin-permissions-table th:last-child,.admin-permissions-table td:last-child{z-index:3;background:color-mix(in srgb, var(--bg-card) 98%, var(--primary) 2%);width:126px;box-shadow:-1px 0 0 var(--border-color);position:sticky;right:0}.admin-permissions-table th:first-child,.admin-permissions-table th:last-child{z-index:5;background:linear-gradient(180deg, color-mix(in srgb, var(--bg-card) 84%, var(--primary) 8%), var(--bg-secondary))}.admin-permissions-table tbody tr:last-child td{border-bottom:0}.admin-permissions-table tr.is-editing td{background:color-mix(in srgb, var(--bg-warning-subtle) 34%, transparent 66%)}.admin-permissions-table tr.is-editing td:first-child,.admin-permissions-table tr.is-editing td:last-child{background:color-mix(in srgb, var(--bg-warning-subtle) 72%, var(--bg-card) 28%)}.admin-permissions-account{align-items:flex-start;gap:10px;min-width:0;display:flex}.admin-permissions-avatar{width:38px;height:38px;color:var(--role-color);background:var(--role-bg);border:1px solid var(--role-border);border-radius:14px;flex-shrink:0;place-items:center;font-size:14px;font-weight:850;display:grid}.admin-permissions-account__body{flex-direction:column;gap:2px;min-width:0;display:flex}.admin-permissions-account__body strong{color:var(--text-main);font-size:13px;font-weight:800}.admin-permissions-account__body span,.admin-permissions-account__body em,.admin-permissions-muted{color:var(--text-mute);word-break:break-word;font-size:11px;font-style:normal}.admin-permissions-account__body em{color:var(--primary);font-weight:800}.admin-permissions-scope,.admin-permissions-badge{white-space:nowrap;border-radius:99px;align-items:center;gap:5px;padding:4px 9px;font-size:11px;font-weight:800;display:inline-flex}.admin-permissions-scope{background:color-mix(in srgb, var(--bg-secondary) 86%, var(--primary) 5%);border:1px dashed var(--border-color);color:var(--text-secondary);white-space:normal;line-height:1.25}.admin-permissions-badge{background:var(--bg-secondary);border:1px solid var(--border-color);color:var(--text-mute);opacity:.78}.admin-permissions-badge.is-active{color:var(--perm-color);background:var(--perm-bg);border-color:var(--perm-border);opacity:1;box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--perm-color) 12%, transparent)}.admin-permissions-badge__empty{border:1.5px solid;border-radius:50%;width:12px;height:12px}.admin-permissions-table td[data-label] .admin-permissions-badge,.admin-permissions-table td[data-label] .admin-permissions-toggle{justify-content:center;width:34px;min-width:34px;min-height:28px;padding:0}.admin-permissions-table td[data-label] .admin-permissions-badge__label,.admin-permissions-table td[data-label] .admin-permissions-toggle__label{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.admin-permissions-toggle-grid,.admin-permissions-chip-row{flex-wrap:wrap;gap:8px;display:flex}.admin-permissions-toggle{border:1px solid var(--border-color);background:linear-gradient(180deg, color-mix(in srgb, var(--bg-card) 88%, var(--perm-color) 4%), var(--bg-secondary));min-height:30px;color:var(--text-secondary);cursor:pointer;white-space:nowrap;border-radius:13px;align-items:center;gap:7px;padding:5px 10px;font-size:12px;font-weight:800;transition:background .15s,border-color .15s,color .15s,box-shadow .15s;display:inline-flex}.admin-permissions-toggle:hover:not(.is-disabled){border-color:color-mix(in srgb, var(--perm-color) 45%, var(--border-color) 55%);background:color-mix(in srgb, var(--perm-bg) 55%, var(--bg-card) 45%);color:var(--text-main)}.admin-permissions-toggle:has(input:focus-visible){outline:3px solid color-mix(in srgb, var(--perm-color) 26%, transparent);outline-offset:2px}.admin-permissions-toggle input{display:none}.admin-permissions-toggle.is-checked{color:var(--perm-color);background:linear-gradient(180deg, color-mix(in srgb, var(--perm-bg) 80%, var(--bg-card) 20%), var(--perm-bg));border-color:var(--perm-border);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--perm-color) 14%, transparent)}.admin-permissions-toggle.is-disabled{opacity:.55;cursor:not-allowed}.admin-permissions-toggle__box{border:1.5px solid;border-radius:5px;place-items:center;width:16px;height:16px;display:grid}.admin-permissions-toggle.is-checked .admin-permissions-toggle__box{border-color:#0000}.admin-permissions-presets{flex-wrap:wrap;gap:6px;display:flex}.admin-permissions-presets .btn{border-color:color-mix(in srgb, var(--primary) 28%, var(--border-color) 72%);color:var(--primary);background:color-mix(in srgb, var(--bg-primary-subtle) 52%, var(--bg-card) 48%);padding:4px 9px;font-size:11px}.admin-permissions-actions{flex-direction:column;gap:8px;min-width:0;display:flex}.admin-permissions-actions__buttons{flex-wrap:wrap;align-items:center;gap:7px;display:flex}.admin-permissions-actions__buttons .btn{gap:5px;padding:6px 9px;font-size:12px}.admin-permissions-table td:last-child .admin-permissions-actions__buttons{flex-direction:column;align-items:stretch}.admin-permissions-table td:last-child .admin-permissions-actions__buttons .btn{justify-content:center;width:100%}.admin-permissions-action-btn{border-width:1px;font-weight:850;border-radius:14px!important}.admin-permissions-action-btn.is-edit{color:var(--primary);border-color:color-mix(in srgb, var(--primary) 38%, var(--border-color) 62%);background:color-mix(in srgb, var(--bg-primary-subtle) 58%, var(--bg-card) 42%)}.admin-permissions-action-btn.is-profile{color:var(--text-main);border-color:var(--border-color);background:linear-gradient(180deg, color-mix(in srgb, var(--bg-card) 88%, var(--primary) 5%), var(--bg-secondary))}.admin-permissions-action-btn.is-cancel{color:var(--danger);border-color:var(--border-danger);background:var(--bg-danger-subtle)}.admin-permissions-action-btn.is-save{color:var(--text-on-primary,#fff);border-color:var(--primary);background:var(--primary)}.admin-permissions-action-btn:hover:not(:disabled){box-shadow:var(--shadow-sm);transform:translateY(-1px)}.admin-permissions-mode-switch{border:1px solid var(--border-color);background:color-mix(in srgb, var(--bg-secondary) 78%, var(--primary) 22%);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--primary) 10%, transparent);border-radius:18px;align-self:flex-start;gap:6px;padding:5px;display:inline-flex}.admin-permissions-mode-switch button{color:var(--text-secondary);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:14px;justify-content:center;align-items:center;gap:8px;min-height:38px;padding:9px 14px;font-size:13px;font-weight:850;transition:background .16s,border-color .16s,color .16s,box-shadow .16s;display:inline-flex}.admin-permissions-mode-switch button:hover{background:color-mix(in srgb, var(--bg-card) 70%, var(--primary) 8%);color:var(--text-main)}.admin-permissions-mode-switch button:focus-visible{outline:3px solid color-mix(in srgb, var(--primary) 28%, transparent);outline-offset:2px}.admin-permissions-mode-switch button.is-active{border-color:color-mix(in srgb, #10b981 70%, var(--bg-card) 30%);color:var(--text-on-primary,#fff);box-shadow:0 8px 18px color-mix(in srgb, var(--primary) 24%, transparent);background:linear-gradient(135deg,#059669,#10b981)}.admin-permissions-mode-switch button span{color:inherit;letter-spacing:.04em;text-transform:uppercase;background:#fff3;border-radius:999px;padding:2px 7px;font-size:10px;font-weight:900}.admin-permissions-bulk-card{flex-direction:column;gap:12px;padding:14px;display:flex;border:1px solid var(--dashboard-hero-border)!important;background:radial-gradient(circle at 94% 0%, color-mix(in srgb, var(--primary) 12%, transparent), transparent 34%), linear-gradient(180deg, color-mix(in srgb, var(--bg-card) 96%, var(--primary) 4%), var(--bg-card))!important;box-shadow:var(--shadow-soft)!important;border-radius:26px!important}.admin-permissions-bulk-card__head{align-items:center;gap:12px;display:flex}.admin-permissions-bulk-card__head>div:nth-child(2){flex:1;min-width:0}.admin-permissions-empty{background:linear-gradient(180deg, color-mix(in srgb, var(--bg-card) 96%, var(--primary) 4%), var(--bg-card));text-align:center;color:var(--text-mute);border-radius:20px;padding:34px 18px;font-size:13px}.admin-permissions-denied{text-align:center;min-height:360px;color:var(--text-secondary);flex-direction:column;justify-content:center;align-items:center;gap:10px;display:flex}.admin-permissions-denied__icon{width:56px;height:56px;color:var(--danger);background:var(--bg-danger-subtle);border:1px solid var(--border-danger);border-radius:16px;place-items:center;display:grid}.admin-permissions-denied h2{color:var(--text-main);margin:0;font-size:18px}.admin-permissions-denied p{max-width:340px;margin:0;font-size:14px}@media (width<=1080px){.admin-permissions-command{grid-template-columns:1fr}.admin-permissions-role-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=760px){.admin-permissions-page .page-header-bar{border-radius:24px;padding:22px}.admin-permissions-page .page-header-bar__icon-wrap{border-radius:16px;width:50px;height:50px}.admin-permissions-command{border-radius:26px;padding:24px}.admin-permissions-command__stats,.admin-permissions-role-tabs{grid-template-columns:1fr}.admin-permissions-shell{border-radius:24px!important;padding:14px!important}.admin-permissions-toolbar,.admin-permissions-bulk-card__head{flex-direction:column;align-items:stretch}.admin-permissions-search,.admin-permissions-mode-switch,.admin-permissions-console-switch{width:100%}.admin-permissions-mode-switch button,.admin-permissions-console-switch button{flex:1}.admin-permissions-table-shell{max-height:70vh}.admin-permissions-table th:first-child,.admin-permissions-table td:first-child{width:200px}}.theme-toggle-btn{background:var(--bg-secondary);border:1px solid var(--border-color);cursor:pointer;color:var(--text-dim);border-radius:50%;outline:none;justify-content:center;align-items:center;width:36px;height:36px;transition:all .25s cubic-bezier(.4,0,.2,1);display:flex}.theme-toggle-btn:hover{background:var(--bg-accent);color:var(--primary);border-color:var(--primary);transform:scale(1.05);box-shadow:0 0 12px #05966940}.theme-toggle-btn:active{transform:scale(.95)}.announcements-nav-btn{background:var(--bg-secondary);border:1px solid var(--border-color);cursor:pointer;color:var(--text-dim);border-radius:50%;outline:none;justify-content:center;align-items:center;width:36px;height:36px;transition:all .25s cubic-bezier(.4,0,.2,1);display:flex;position:relative}.announcements-nav-btn:hover{background:var(--bg-accent);color:var(--primary);border-color:var(--primary);transform:scale(1.05);box-shadow:0 0 12px #05966940}.announcements-nav-btn:active{transform:scale(.95)}.navbar-badge{background:var(--accent-vermilion);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:16px;height:16px;font-size:9px;font-weight:900;display:flex;position:absolute;top:-2px;right:-2px;box-shadow:0 2px 5px #ef444466}.announcements-nav-btn.is-active{background:var(--bg-accent);color:var(--primary);border-color:var(--primary)}.notification-tray{background:var(--bg-card);border:1px solid var(--border-color);z-index:100;border-radius:14px;width:340px;animation:.18s cubic-bezier(.4,0,.2,1) tray-slide-in;position:absolute;top:calc(100% + 8px);right:0;overflow:hidden;box-shadow:0 12px 32px #0000001f,0 2px 8px #0000000f}@keyframes tray-slide-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.notification-tray__header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:14px 16px 10px;display:flex}.notification-tray__title{color:var(--text-main);font-size:14px;font-weight:700}.notification-tray__action-btn{cursor:pointer;color:var(--text-dim);background:0 0;border:none;border-radius:6px;align-items:center;gap:5px;padding:4px 8px;font-size:12px;font-weight:600;transition:background .15s,color .15s;display:flex}.notification-tray__action-btn:hover{background:var(--bg-secondary);color:var(--primary)}.notification-tray__close{cursor:pointer;color:var(--text-muted);background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;width:26px;height:26px;transition:background .15s,color .15s;display:flex}.notification-tray__close:hover{background:var(--bg-secondary);color:var(--text-main)}.notification-tray__list{max-height:320px;overflow-y:auto}.notification-tray__state{color:var(--text-muted);flex-direction:column;align-items:center;gap:8px;padding:32px 16px;font-size:13px;display:flex}.notification-tray__row{border:none;border-bottom:1px solid var(--border-color);cursor:pointer;text-align:left;background:0 0;align-items:center;gap:12px;width:100%;padding:12px 16px;transition:background .12s;display:flex}.notification-tray__row:last-child{border-bottom:none}.notification-tray__row:hover{background:var(--bg-secondary)}.notification-tray__row.is-unread{background:#0596690a}.notification-tray__row.is-unread:hover{background:#05966914}.notification-tray__type-dot{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;display:flex}.notification-tray__row-content{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.notification-tray__row-title{color:var(--text-main);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:600;overflow:hidden}.notification-tray__row-time{color:var(--text-muted);font-size:11px}.notification-tray__unread-dot{background:var(--primary);border-radius:50%;flex-shrink:0;width:7px;height:7px}.notification-tray__footer{border-top:1px solid var(--border-color);padding:10px 16px}.notification-tray__see-all{cursor:pointer;width:100%;color:var(--interactive-accent);text-align:center;background:0 0;border:none;border-radius:8px;padding:6px;font-size:13px;font-weight:600;transition:background .15s;display:block}.notification-tray__see-all:hover{background:var(--bg-accent)}.notification-tray__skeletons{padding:4px 0}.notification-tray__skeleton-row{align-items:center;gap:10px;padding:10px 16px;display:flex}.notification-tray__skeleton-dot{background:var(--border-color);border-radius:50%;flex-shrink:0;width:28px;height:28px;animation:1.4s ease-in-out infinite tray-skeleton-pulse}.notification-tray__skeleton-lines{flex-direction:column;flex:1;gap:6px;display:flex}.notification-tray__skeleton-line{background:var(--border-color);border-radius:6px;height:11px;animation:1.4s ease-in-out infinite tray-skeleton-pulse}.notification-tray__skeleton-line--title{width:75%}.notification-tray__skeleton-line--time{width:35%}.notification-tray__skeleton-row:nth-child(2) .notification-tray__skeleton-dot,.notification-tray__skeleton-row:nth-child(2) .notification-tray__skeleton-line{animation-delay:.15s}.notification-tray__skeleton-row:nth-child(3) .notification-tray__skeleton-dot,.notification-tray__skeleton-row:nth-child(3) .notification-tray__skeleton-line{animation-delay:.3s}@keyframes tray-skeleton-pulse{0%,to{opacity:1}50%{opacity:.4}}.admin-permissions-table-shell{scroll-behavior:smooth;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}.admin-permissions-table-shell::-webkit-scrollbar{width:8px;height:8px}.admin-permissions-table-shell::-webkit-scrollbar-track{background:var(--bg-secondary);border-radius:99px}.admin-permissions-table-shell::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--primary) 30%, var(--border-color));border:2px solid var(--bg-secondary);border-radius:99px;transition:all .2s}.admin-permissions-table-shell::-webkit-scrollbar-thumb:hover{background:var(--primary)}.admin-permissions-table td:first-child,.admin-permissions-table th:first-child{box-shadow:4px 0 8px -4px #00000026, 1px 0 0 var(--border-color)}.admin-permissions-table td:last-child,.admin-permissions-table th:last-child{box-shadow:-4px 0 8px -4px #00000026, -1px 0 0 var(--border-color)}.admin-permissions-table tbody tr{transition:background-color .15s}.admin-permissions-table tbody tr:hover td,.admin-permissions-table tbody tr:hover td:first-child,.admin-permissions-table tbody tr:hover td:last-child{background:color-mix(in srgb, var(--primary) 4%, var(--bg-card))!important}@keyframes row-saved-pulse{0%{background-color:color-mix(in srgb, var(--success) 12%, transparent)}to{background-color:#0000}}.admin-permissions-table tr.is-saved-highlight td,.admin-permissions-table tr.is-saved-highlight td:first-child,.admin-permissions-table tr.is-saved-highlight td:last-child{animation:2s cubic-bezier(.25,.8,.25,1) forwards row-saved-pulse}.security-auth-status-badge{text-transform:uppercase;letter-spacing:.05em;border-radius:4px;align-self:flex-start;width:max-content;margin-top:4px;padding:2px 6px;font-size:9px;font-weight:800;display:inline-flex}.security-auth-status-badge.status-preset{background:color-mix(in srgb, var(--success) 10%, transparent);color:var(--success);border:1px solid color-mix(in srgb, var(--success) 20%, transparent)}.security-auth-status-badge.status-custom{background:color-mix(in srgb, var(--warning) 10%, transparent);color:var(--warning);border:1px solid color-mix(in srgb, var(--warning) 20%, transparent)}.admin-lesson-split-workspace{background:linear-gradient(135deg, color-mix(in srgb, var(--bg-card) 96%, #10b981 4%), var(--bg-card));grid-template-columns:250px 1fr;min-height:560px;display:grid}.admin-lesson-nav-sidebar{background:radial-gradient(circle at 0% 0%, #10b98117, transparent 36%), color-mix(in srgb, var(--bg-secondary) 84%, transparent);border-right:1px solid var(--dashboard-hero-border);flex-direction:column;gap:9px;padding:18px 14px;display:flex}.admin-lesson-nav-item{width:100%;color:var(--text-secondary);cursor:pointer;text-align:left;background:0 0;border:1px solid #0000;border-radius:14px;align-items:center;gap:10px;padding:12px 14px;font-size:13px;font-weight:700;transition:all .25s cubic-bezier(.16,1,.3,1);display:flex;position:relative}.admin-lesson-nav-item svg{color:var(--text-mute);transition:color .2s,transform .2s}.admin-lesson-nav-item:hover{background:color-mix(in srgb, var(--bg-card) 88%, #10b981 12%);border-color:color-mix(in srgb, #10b981 18%, var(--border-color));color:var(--text-main)}.admin-lesson-nav-item:hover svg{color:var(--text-main);transform:scale(1.08)}.admin-lesson-nav-item:after{content:"";background:var(--skill-color,var(--primary));border-radius:99px;width:4px;height:0;transition:height .25s cubic-bezier(.16,1,.3,1);position:absolute;top:50%;left:0;transform:translateY(-50%)}.admin-lesson-nav-item:hover:after{height:18px}.admin-lesson-nav-item.is-active{background:linear-gradient(135deg, color-mix(in srgb, var(--skill-color,var(--primary)) 14%, var(--bg-card) 86%), var(--bg-card));color:var(--skill-color,var(--primary));box-shadow:0 10px 24px color-mix(in srgb, var(--skill-color,var(--primary)) 13%, transparent);border-color:color-mix(in srgb, var(--skill-color,var(--primary)) 32%, var(--border-color));font-weight:850}.admin-lesson-nav-item.is-active svg{color:var(--skill-color,var(--primary))}.nav-item-check{color:#10b981;background:#10b9811f;border:1px solid #10b98133;border-radius:50%;justify-content:center;align-items:center;width:18px;height:18px;margin-left:auto;font-size:10px;font-weight:900;line-height:1;display:inline-flex}.admin-lesson-content-panel{background:radial-gradient(circle at 100% 0%, #38bdf80d, transparent 32%), var(--bg-card);min-width:0;padding:30px 32px}.admin-lesson-section-card{border:1px solid var(--dashboard-hero-border);background:linear-gradient(180deg, color-mix(in srgb, var(--bg-card) 96%, #38bdf8 4%), var(--bg-card));box-shadow:var(--shadow-sm);border-radius:22px;flex-direction:column;gap:18px;padding:20px;display:flex}.admin-lesson-section-title{color:var(--text-main);border-bottom:1px solid var(--dashboard-hero-border);letter-spacing:0;margin:0;padding-bottom:12px;font-size:17px;font-weight:850}.active-section--content .listening-step--questions,.active-section--content .speaking-step--phrases,.active-section--content .speaking-step--games,.active-section--content .reading-step--quiz,.active-section--content .writing-step--instructions,.active-section--practice .listening-step--audio,.active-section--practice .listening-step--transcript,.active-section--practice .listening-step--illustration,.active-section--practice .speaking-step--video,.active-section--practice .reading-step--article,.active-section--practice .writing-step--blanks{display:none!important}.admin-lesson-save-banner{-webkit-backdrop-filter:blur(12px);color:#fff;z-index:1000;background:#0f172af0;border:1px solid #6ee7b738;border-radius:18px;width:min(620px,92vw);padding:13px 24px;animation:.35s cubic-bezier(.16,1,.3,1) slide-up;position:fixed;bottom:24px;left:50%;transform:translate(-50%);box-shadow:0 12px 36px #00000059,inset 0 1px #ffffff1a}@keyframes slide-up{0%{opacity:0;transform:translate(-50%,30px)}to{opacity:1;transform:translate(-50%)}}.admin-lesson-save-banner__content{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.admin-lesson-save-banner__status{color:#e2e8f0;align-items:center;gap:8px;font-size:13px;font-weight:600;display:flex}.admin-lesson-save-banner__dot{background:#e11d48;border-radius:50%;width:8px;height:8px;animation:1.5s infinite pulse;display:inline-block;box-shadow:0 0 8px #e11d48}.admin-lesson-save-banner__actions{gap:8px;display:flex}.admin-lesson-save-banner__actions .btn{cursor:pointer;border:0;border-radius:10px;padding:6px 14px;font-size:12px;font-weight:700}.admin-lesson-save-banner__actions .btn-secondary{color:#fff;background:#ffffff1f;transition:background .15s}.admin-lesson-save-banner__actions .btn-secondary:hover{background:#fff3}.admin-lesson-save-banner__actions .btn-primary{background:var(--primary);color:#fff;transition:background .15s}.admin-lesson-save-banner__actions .btn-primary:hover{background:color-mix(in srgb, var(--primary) 88%, #fff)}@media (width<=768px){.admin-lesson-split-workspace{grid-template-columns:1fr}.admin-lesson-nav-sidebar{border-right:0;border-bottom:1px solid var(--border-color);white-space:nowrap;flex-direction:row;padding:12px 16px;overflow-x:auto}.admin-lesson-nav-item{flex-shrink:0;width:auto;padding:8px 14px}.admin-lesson-nav-item.is-active{box-shadow:inset 0 -3px 0 var(--primary);border-left:0;border-radius:8px 8px 0 0}}.learning-year-selector{margin-bottom:24px}.learning-year-tabs{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}@media (width<=768px){.learning-year-tabs{grid-template-columns:repeat(2,1fr);gap:10px}}.year-tab-button{background:var(--bg-card);border:1px solid var(--border-color);color:var(--text-dim);cursor:pointer;text-align:left;box-shadow:var(--shadow-sm);border-radius:16px;align-items:center;gap:12px;padding:16px 20px;transition:all .25s cubic-bezier(.4,0,.2,1);display:flex;position:relative}.year-tab-button:hover:not(:disabled){border-color:color-mix(in srgb, var(--accent-color,var(--primary)) 50%, var(--border-color));box-shadow:0 8px 20px color-mix(in srgb, var(--accent-color,var(--primary)) 8%, transparent);transform:translateY(-2px)}.year-tab-button.active{border:2px solid var(--accent-color);background:var(--accent-bg);color:var(--accent-color);box-shadow:0 4px 16px color-mix(in srgb, var(--accent-color) 15%, transparent);font-weight:800}.year-tab-button.locked{opacity:.75}.year-tab-button.locked:hover{border-color:var(--border-color);box-shadow:var(--shadow-sm);transform:none}.tab-status-icon{background:var(--bg-secondary);width:28px;height:28px;color:var(--text-mute);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.year-tab-button.active .tab-status-icon{color:var(--accent-color);background:#fff9}.dark .year-tab-button.active .tab-status-icon{background:#0f172a66}.year-tab-button.completed .tab-status-icon{color:var(--success)}.year-tab-button.active.completed .tab-status-icon{color:var(--success);background:#10b9811a}.tab-label-group{flex-direction:column;align-items:flex-start;gap:2px;display:flex}.tab-title{color:var(--text-main);font-size:14px;font-weight:700}.year-tab-button.active .tab-title{color:var(--accent-color)}.current-year-badge{text-transform:uppercase;letter-spacing:.05em;background:var(--cta-bg);color:#fff;border-radius:4px;padding:1px 6px;font-size:9px;font-weight:800}.learning-record-page .pretest-required-panel{text-align:center;border:1px solid var(--learning-line);background:var(--learning-panel);border-radius:24px;max-width:620px;margin:0 auto;padding:42px 28px;position:relative;overflow:hidden;box-shadow:0 20px 48px #0f172a16}.learning-record-page .pretest-required-panel:before{content:"";border:1px solid color-mix(in srgb, var(--learning-gold) 18%, transparent);pointer-events:none;border-radius:18px;position:absolute;inset:14px}.pretest-required-icon-box{box-shadow:0 8px 20px #0596690f}.dark .pretest-required-icon-box{box-shadow:0 8px 20px #0003;background:#34d3991a!important}@keyframes pulseGlow{0%{border-color:#ef444440;box-shadow:0 4px 20px #ef444414}to{border-color:#ef444473;box-shadow:0 4px 20px #ef444438}}.help-search-input::placeholder{color:var(--text-mute);font-size:13px}.help-chip:hover{opacity:.85}.help-topic-category{text-transform:uppercase;letter-spacing:.05em;background:var(--bg-secondary);color:var(--text-secondary);border-radius:4px;padding:2px 8px;font-size:10px;font-weight:700}.help-topic-recommended{color:var(--primary);background:#05966914;border-radius:4px;padding:2px 8px;font-size:10px;font-weight:700}.help-quick-card:focus-visible,.help-route-btn:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.help-escalation{animation:.3s ease-out fadeIn}@media (width<=640px){.help-quick-actions{grid-template-columns:1fr!important}.help-escalation{text-align:center;flex-direction:column}}.ppc-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-md);max-width:640px;margin:0 auto;padding:24px}.ppc-target-sentence{color:var(--text-main);text-align:center;margin-bottom:20px;font-size:20px;font-weight:700}.ppc-record-section{flex-direction:column;align-items:center;gap:12px;margin-bottom:20px;display:flex}.ppc-record-btn{border-radius:var(--radius-full);cursor:pointer;background:var(--skill-speaking-color);color:#fff;width:72px;height:72px;box-shadow:var(--shadow-md);transition:var(--transition);border:none;justify-content:center;align-items:center;display:flex}.ppc-record-btn.recording{background:var(--danger);box-shadow:0 0 0 8px var(--bg-danger-subtle)}.ppc-record-btn:disabled{background:var(--bg-accent);color:var(--text-mute);cursor:not-allowed;box-shadow:none}.ppc-listening-hint{color:var(--text-mute);min-height:18px;font-size:13px}.ppc-unsupported{background:var(--bg-danger-subtle);color:var(--danger);border:1px solid var(--border-danger);border-radius:var(--radius-sm);text-align:center;padding:10px 14px;font-size:13px}.ppc-result{border-top:1px solid var(--border-color);margin-top:4px;padding-top:20px}.ppc-progress-bar{border-radius:var(--radius-full);background:var(--bg-accent);width:100%;height:10px;margin-bottom:8px;overflow:hidden}.ppc-progress-fill{border-radius:var(--radius-full);height:100%;transition:width .4s}.ppc-score-num{text-align:center;margin-bottom:16px;font-size:32px;font-weight:800}.ppc-word-list{flex-wrap:wrap;justify-content:center;gap:6px;margin-bottom:16px;display:flex}.ppc-word{border-radius:4px;padding:2px 4px;font-size:16px;font-weight:600}.ppc-word.correct{color:var(--success);background:var(--bg-success-subtle)}.ppc-word.wrong{color:var(--danger);background:var(--bg-danger-subtle);text-decoration:underline;-webkit-text-decoration-color:var(--danger);text-decoration-color:var(--danger);text-decoration-style:wavy}.ppc-transcript{color:var(--text-mute);text-align:center;margin-bottom:16px;font-size:13px}.ppc-retry-btn{margin:0 auto;display:block}.ppc-card.bare{box-shadow:none;background:0 0;border:none;max-width:none;margin:0;padding:0}.ate-container{grid-template-columns:320px 1fr;align-items:start;gap:24px;display:grid}@media (width<=992px){.ate-container{grid-template-columns:1fr}}.ate-sidebar{flex-direction:column;gap:20px;display:flex}.ate-card{background:var(--bg-card);border:1px solid var(--border-color);box-shadow:var(--shadow-soft);border-radius:12px;flex-direction:column;gap:16px;padding:20px;display:flex}.ate-card-title{color:var(--text-main);border-bottom:1px solid var(--border-color);margin:0;padding-bottom:10px;font-size:16px;font-weight:700}.ate-stat-box{flex-direction:column;gap:8px;display:flex}.ate-stat-label{color:var(--text-secondary);justify-content:space-between;font-size:13px;display:flex}.ate-stat-progress{background:var(--bg-accent);border-radius:var(--radius-full);height:8px;position:relative;overflow:hidden}.ate-stat-progress-bar{border-radius:var(--radius-full);height:100%;transition:width .3s}.ate-stat-progress-bar.success{background:var(--success)}.ate-stat-progress-bar.warning{background:var(--warning)}.ate-stat-progress-bar.danger{background:var(--danger)}.ate-alert-badge{border-radius:8px;padding:10px 12px;font-size:12px;font-weight:500;line-height:1.4}.ate-alert-badge.danger{background:var(--bg-danger-subtle);color:var(--danger);border:1px solid var(--border-danger)}.ate-alert-badge.warning{background:var(--bg-warning-subtle);color:#b45309;border:1px solid #b453094d}.ate-alert-badge.success{background:var(--bg-success-subtle);color:var(--success);border:1px solid var(--border-success)}.ate-content{flex-direction:column;gap:16px;display:flex}.ate-toolbar{background:var(--bg-card);border:1px solid var(--border-color);box-shadow:var(--shadow-soft);border-radius:12px;justify-content:space-between;align-items:center;gap:16px;padding:12px 16px;display:flex}.ate-search-input{max-width:300px}.ate-question-list{flex-direction:column;gap:12px;display:flex}.ate-question-card{background:var(--bg-card);border:1px solid var(--border-color);box-shadow:var(--shadow-soft);border-radius:12px;padding:18px;transition:transform .2s,box-shadow .2s;position:relative}.ate-question-card:hover{box-shadow:var(--shadow-medium);transform:translateY(-2px)}.ate-question-header{justify-content:space-between;align-items:start;gap:16px;margin-bottom:12px;display:flex}.ate-question-meta{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.ate-badge{text-transform:uppercase;border-radius:var(--radius-full);letter-spacing:.5px;padding:3px 8px;font-size:10px;font-weight:700}.ate-badge.mc{background:color-mix(in srgb, var(--primary) 12%, transparent);color:var(--primary)}.ate-badge.tf{background:color-mix(in srgb, var(--success) 12%, transparent);color:var(--success)}.ate-badge.sa{color:#8b5cf6;background:#8b5cf61f}.ate-badge.inactive{background:var(--bg-accent);color:var(--text-mute)}.ate-question-actions{gap:6px;display:flex}.ate-action-btn{border:1px solid var(--border-color);background:var(--bg-card);width:32px;height:32px;color:var(--text-secondary);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;transition:all .2s;display:flex}.ate-action-btn:hover{background:var(--bg-accent);color:var(--text-main);border-color:var(--text-secondary)}.ate-action-btn.delete:hover{background:var(--bg-danger-subtle);color:var(--danger);border-color:var(--danger)}.ate-question-text{color:var(--text-main);margin-bottom:14px;font-size:15px;font-weight:600;line-height:1.5}.ate-options-preview{flex-direction:column;gap:8px;margin-bottom:12px;display:flex}.ate-option-item{background:var(--bg-accent);border:1px solid var(--border-color);border-radius:6px;align-items:center;gap:8px;padding:8px 12px;font-size:13px;display:flex}.ate-option-item.correct{background:var(--bg-success-subtle);border-color:var(--success);color:var(--success);font-weight:600}.ate-tf-preview{gap:8px;margin-bottom:12px;display:flex}.ate-tf-pill{border-radius:var(--radius-full);background:var(--bg-accent);border:1px solid var(--border-color);color:var(--text-mute);padding:4px 12px;font-size:12px;font-weight:600}.ate-tf-pill.correct{background:var(--bg-success-subtle);border-color:var(--success);color:var(--success)}.ate-sa-preview{flex-direction:column;gap:6px;margin-bottom:12px;display:flex}.ate-answer-badge{background:var(--bg-accent);border:1px solid var(--border-color);color:var(--text-main);border-radius:6px;width:fit-content;padding:6px 10px;font-family:monospace;font-size:12px}.ate-explanation{border-top:1px dashed var(--border-color);color:var(--text-secondary);align-items:start;gap:6px;margin-top:12px;padding-top:8px;font-size:13px;display:flex}.ate-option-row{align-items:center;gap:10px;display:flex}.ate-radio-input{cursor:pointer;width:18px;height:18px;accent-color:var(--success)}.ate-tf-toggle-group{grid-template-columns:1fr 1fr;gap:12px;margin-bottom:8px;display:grid}.ate-tf-btn{border:1px solid var(--border-color);background:var(--bg-card);color:var(--text-secondary);text-align:center;cursor:pointer;border-radius:8px;padding:10px;font-weight:600;transition:all .2s}.ate-tf-btn:hover{background:var(--bg-accent)}.ate-tf-btn.selected{background:var(--bg-success-subtle);border-color:var(--success);color:var(--success)}.ate-input-group{flex-direction:column;gap:6px;display:flex}.ate-dashboard-cards{grid-template-columns:1fr 1fr;gap:16px;margin-bottom:24px;display:grid}@media (width<=768px){.ate-dashboard-cards{grid-template-columns:1fr}}.ate-dashboard-card{background:var(--bg-card);border:1px solid var(--border-color);cursor:pointer;box-shadow:var(--shadow-soft);border-radius:12px;justify-content:space-between;align-items:center;padding:18px 22px;transition:transform .25s cubic-bezier(.16,1,.3,1),box-shadow .25s,border-color .25s;display:flex}.ate-dashboard-card.pretest{background:linear-gradient(135deg, color-mix(in srgb, var(--primary) 8%, var(--bg-card) 92%), var(--bg-card));border-color:color-mix(in srgb, var(--primary) 20%, var(--border-color) 80%)}.ate-dashboard-card.posttest{background:linear-gradient(135deg, color-mix(in srgb, var(--success) 8%, var(--bg-card) 92%), var(--bg-card));border-color:color-mix(in srgb, var(--success) 20%, var(--border-color) 80%)}.ate-dashboard-card:hover{box-shadow:var(--shadow-medium);transform:translateY(-3px)}.ate-dashboard-card.pretest:hover{border-color:var(--primary)}.ate-dashboard-card.posttest:hover{border-color:var(--success)}.ate-card-icon-wrap{border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;transition:transform .3s;display:flex}.ate-dashboard-card:hover .ate-card-icon-wrap{transform:scale(1.1)}.pretest .ate-card-icon-wrap{background:color-mix(in srgb, var(--primary) 12%, transparent);color:var(--primary)}.posttest .ate-card-icon-wrap{background:color-mix(in srgb, var(--success) 12%, transparent);color:var(--success)}@keyframes pageFadeInUp{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.page-container{will-change:transform, opacity;animation:.2s cubic-bezier(.16,1,.3,1) both pageFadeInUp}.dashboard-card,.skill-practice-card,.advisor-dashboard-card,.dean-dashboard-card,.student-classmates-card,.llp-back,.rlp-back,.wlp-back{transition:transform .2s cubic-bezier(.16,1,.3,1),box-shadow .2s cubic-bezier(.16,1,.3,1),border-color .2s!important}.dashboard-card:hover,.skill-practice-card:hover,.advisor-dashboard-card:hover,.dean-dashboard-card:hover{box-shadow:var(--shadow-md), 0 10px 30px #0000000a!important;transform:translateY(-3px)!important}.dashboard-card:active,.skill-practice-card:active,.advisor-dashboard-card:active,.dean-dashboard-card:active,.llp-back:active,.rlp-back:active,.wlp-back:active{box-shadow:var(--shadow-sm)!important;transform:translateY(-1px)scale(.985)!important}.btn:active,.btn-primary:active,.btn-secondary:active,.sidebar-collapse-btn:active,.sidebar-mobile-toggle:active{transition:transform .1s!important;transform:scale(.96)!important}.sidebar-nav-link{transition:transform .2s,background-color .2s,color .2s!important}.sidebar-nav-link:active{transform:scale(.97)}:root{--cat-body:#475569;--cat-feet:#334155}.dark-theme,[data-theme=dark]{--cat-body:#94a3b8;--cat-feet:#64748b}.companion-container{z-index:999;cursor:pointer;-webkit-user-select:none;user-select:none;transition:bottom .4s cubic-bezier(.175,.885,.32,1.15),right .4s cubic-bezier(.175,.885,.32,1.15),transform .3s cubic-bezier(.175,.885,.32,1.275);position:fixed}.companion-container:hover{transform:scale(1.05)}.companion-container.wiggle{animation:.5s ease-in-out catWiggle}@keyframes catWiggle{0%,to{transform:rotate(0)scale(1.05)}25%{transform:rotate(-8deg)scale(1.08)}75%{transform:rotate(8deg)scale(1.08)}}.companion-avatar-wrap{position:relative}.companion-close-btn{background:var(--bg-card);border:1px solid var(--border-color);width:16px;height:16px;color:var(--text-mute);cursor:pointer;opacity:0;box-shadow:var(--shadow-sm);border-radius:50%;justify-content:center;align-items:center;transition:opacity .2s,background .2s;display:flex;position:absolute;top:-6px;right:-6px}.companion-container:hover .companion-close-btn{opacity:1}.companion-close-btn:hover{color:#fff;background:#ef4444;border-color:#ef4444}.cat-svg{transform-origin:bottom;animation:4s ease-in-out infinite catBreath}.cat-tail{transform-origin:28px 48px;animation:2.5s ease-in-out infinite tailWag}.cat-eye{animation:5s step-end infinite catBlink}@keyframes catBreath{0%,to{transform:scale(1)}50%{transform:scale(.98,1.02)}}@keyframes tailWag{0%,to{transform:rotate(0)}50%{transform:rotate(15deg)}}@keyframes catBlink{0%,90%,to{transform:scaleY(1)}95%{transform:scaleY(.1)}}.companion-bubble{background:var(--bg-card);border:1px solid var(--border-color);color:var(--text-main);white-space:nowrap;box-shadow:var(--shadow-md);border-radius:12px;padding:8px 12px;font-size:12px;font-weight:700;animation:.3s cubic-bezier(.175,.885,.32,1.275) both bubbleFadeIn;position:absolute;bottom:60px;right:10px}.companion-bubble-arrow{background:var(--bg-card);border-right:1px solid var(--border-color);border-bottom:1px solid var(--border-color);width:10px;height:10px;position:absolute;bottom:-6px;right:22px;transform:rotate(45deg)}@keyframes bubbleFadeIn{0%{opacity:0;transform:translateY(8px)scale(.9)}to{opacity:1;transform:translateY(0)scale(1)}}.companion-restore-btn{z-index:999;background:var(--bg-card);border:1px solid var(--border-color);width:32px;height:32px;box-shadow:var(--shadow-sm);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;font-size:16px;transition:transform .2s,background .2s;animation:.3s both pageFadeInUp;display:flex;position:fixed;bottom:24px;right:24px}.companion-restore-btn:hover{background:var(--bg-secondary);transform:scale(1.1)}.achievement-badge-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;display:grid}.achievement-badge-card{border:1px solid var(--border-color);background:var(--bg-secondary);border-radius:14px;gap:12px;padding:16px;display:flex}.achievement-badge-card:not(.is-earned) .achievement-badge-card__icon{opacity:.58}.achievement-badge-card.is-earned{background:var(--bg-card);border-color:var(--interactive-accent);opacity:1}.achievement-badge-card__icon,.badge-modal__icon{color:var(--interactive-accent);background:var(--bg-success-subtle,#10b9811f);border-radius:12px;flex:none;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.achievement-badge-card h3,.achievement-badge-card p{margin:0}.achievement-badge-card p{color:var(--text-muted);margin-top:4px;font-size:.88rem}.achievement-badge-card span{color:var(--text-muted);margin-top:8px;font-size:.75rem;font-weight:700;display:inline-block}.achievement-badge-card.is-earned span{color:var(--interactive-accent)}.badge-modal-backdrop{z-index:200;background:#0f172aa3;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.badge-modal{border:1px solid var(--border-color);background:var(--bg-card);width:min(100%,380px);box-shadow:var(--shadow-lg);text-align:center;border-radius:20px;padding:36px 28px 28px;position:relative}.badge-modal__icon{border-radius:50%;width:82px;height:82px;margin:0 auto 18px}.badge-modal__close{color:var(--text-muted);cursor:pointer;background:0 0;border:0;position:absolute;top:12px;right:12px}.badge-modal__eyebrow,.badge-modal__more{color:var(--interactive-accent);letter-spacing:.08em;text-transform:uppercase;font-size:.8rem;font-weight:800}.badge-modal h2{margin:8px 0}.badge-modal p{color:var(--text-secondary)}.badge-modal .btn{margin-top:20px}.lesson-criteria{color:var(--text-secondary);background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:10px;align-items:flex-start;gap:8px;margin:0 0 12px;padding:9px 12px;font-size:12px;line-height:1.5;display:flex}.lesson-criteria svg{color:var(--interactive-accent);flex-shrink:0;margin-top:2px}.lesson-criteria strong{color:var(--text-main);font-weight:700}.slp-speech-fallback-note{color:var(--text-secondary);background:color-mix(in srgb, var(--warning) 8%, transparent);border:1px solid color-mix(in srgb, var(--warning) 30%, transparent);border-radius:10px;margin:0 0 14px;padding:10px 13px;font-size:12.5px;line-height:1.55}.skill-vocab-chip{color:var(--color-primary);cursor:pointer;background:#2563eb14;border:1px solid #0000;border-radius:8px;align-items:center;gap:5px;padding:5px 10px;font-family:inherit;font-size:13px;font-weight:600;transition:background .15s,border-color .15s;display:inline-flex}.skill-vocab-chip:hover:not(:disabled){border-color:var(--color-primary);background:#2563eb29}.skill-vocab-chip[data-saved=true]{color:var(--success);cursor:default;background:#10b9811f}.getting-started{background:var(--bg-card);border:1px solid var(--border-color);border-left:3px solid var(--interactive-accent);border-radius:16px;margin:0 0 24px;padding:22px 24px}.getting-started__head{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;display:flex}.getting-started__head h2{color:var(--text-main);margin:0 0 4px;font-size:17px;font-weight:800}.getting-started__head p{color:var(--text-secondary);margin:0;font-size:13px}.getting-started__dismiss{border:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;background:0 0;border-radius:8px;flex-shrink:0;padding:6px;display:inline-flex}.getting-started__dismiss:hover{color:var(--text-main);border-color:var(--text-secondary)}.getting-started__steps{flex-direction:column;gap:14px;margin:0 0 18px;padding:0;list-style:none;display:flex}.getting-started__step{align-items:flex-start;gap:12px;display:flex}.getting-started__marker{border:1px solid var(--border-color);width:24px;height:24px;color:var(--text-muted);background:var(--bg-secondary);border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.getting-started__step.is-done .getting-started__marker{background:color-mix(in srgb, var(--success) 14%, transparent);border-color:color-mix(in srgb, var(--success) 40%, transparent);color:var(--success)}.getting-started__step.is-current .getting-started__marker{background:color-mix(in srgb, var(--interactive-accent) 14%, transparent);border-color:var(--interactive-accent);color:var(--interactive-accent)}.getting-started__title{color:var(--text-main);flex-wrap:wrap;align-items:center;gap:8px;font-size:14px;font-weight:700;display:flex}.getting-started__step.is-upcoming .getting-started__title,.getting-started__step.is-upcoming .getting-started__desc{color:var(--text-muted)}.getting-started__index{color:var(--text-muted);font-size:11px;font-weight:800}.getting-started__now{text-transform:uppercase;letter-spacing:.05em;color:var(--interactive-accent);background:color-mix(in srgb, var(--interactive-accent) 12%, transparent);border-radius:999px;padding:2px 8px;font-size:10.5px;font-weight:700}.getting-started__desc{color:var(--text-secondary);margin:4px 0 0;font-size:12.5px;line-height:1.55}.getting-started__cta{background:var(--cta-bg);color:#fff;cursor:pointer;border:none;border-radius:10px;align-items:center;gap:8px;padding:10px 20px;font-family:inherit;font-size:13.5px;font-weight:700;transition:background .18s;display:inline-flex}.getting-started__cta:hover{background:var(--cta-success-bg)}:root{--areca:#059669;--areca-rgb:5, 150, 105;--areca-light:#10b981;--areca-dark:#047857;--areca-dim:#0596691f;--areca-glow:#05966959;--areca-glass:#05966914;--shadow-areca:0 8px 32px var(--areca-glow);--shadow-areca-sm:0 4px 16px rgba(var(--areca-rgb), .25);--gradient-areca:linear-gradient(135deg, var(--areca) 0%, var(--areca-light) 100%);--primary:var(--areca);--accent:var(--areca);--accent-vermilion:var(--areca);--accent-orange:var(--areca);--gradient-primary:var(--gradient-areca);--gradient-orange:var(--gradient-areca);--gradient-set:var(--gradient-areca);--shadow-glow:var(--shadow-areca)}:root.dark{--shadow-glow:0 10px 36px rgba(var(--areca-rgb), .42)}.dashboard-kpi-grid--vault{grid-template-columns:repeat(4,1fr);gap:20px;margin-bottom:28px;display:grid}.score-label{opacity:.85;font-size:1.1rem;font-weight:500}.section-star-label{text-transform:uppercase;letter-spacing:.12em;color:var(--areca);align-items:center;gap:6px;margin-bottom:8px;font-size:.6rem;display:flex}.section-star-label:before,.section-star-label:after{content:"★";font-size:.55rem}.status-dot.areca{background:var(--areca);box-shadow:0 0 0 3px var(--areca-dim)}@media (width<=1024px){.dashboard-kpi-grid--vault{grid-template-columns:repeat(2,1fr)}}@media (width<=640px){.dashboard-kpi-grid--vault{grid-template-columns:repeat(2,1fr);gap:12px}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes barGrow{0%{width:0!important}}.anim-fade-up{animation:.4s cubic-bezier(.4,0,.2,1) both fadeInUp}.anim-scale-in{animation:.35s cubic-bezier(.4,0,.2,1) both scaleIn}.card-lift{transition:transform .2s cubic-bezier(.4,0,.2,1),box-shadow .2s cubic-bezier(.4,0,.2,1)!important}.card-lift:hover{transform:translateY(-4px);box-shadow:0 12px 32px #0000001a!important}.bar-anim{animation:.9s cubic-bezier(.4,0,.2,1) both barGrow}:root{--areca:#059669;--areca-dim:#05966926;--areca-glow:#05966959}.dashboard-hero-grid{grid-template-columns:1.4fr 1fr;gap:24px;margin-bottom:24px;display:grid}.dashboard-kpi-strip{grid-template-columns:repeat(4,1fr);gap:20px;margin-bottom:24px;display:grid}.dashboard-bottom-grid{grid-template-columns:1.85fr 1fr;gap:24px;display:grid}@media (width<=1024px){.dashboard-hero-grid,.dashboard-bottom-grid{grid-template-columns:1fr}.dashboard-kpi-strip{grid-template-columns:repeat(2,1fr)}}@media (width<=640px){.dashboard-kpi-strip{grid-template-columns:1fr}}.hero-card{border-radius:var(--radius-xl);background:#1a1a1a;flex-direction:column;justify-content:flex-end;min-height:380px;padding:48px;display:flex;position:relative;overflow:hidden}.hero-card>*{z-index:2;position:relative}.hero-card .hero-eyebrow{text-transform:uppercase;letter-spacing:.15em;color:var(--areca);margin-bottom:16px;font-size:.65rem;font-weight:700}.hero-card .hero-headline{color:#fff;margin-bottom:20px;font-size:clamp(2.5rem,4vw,4rem);font-weight:800;line-height:1.1}.hero-card .hero-headline .accent-text{color:var(--areca);display:block}.hero-card .hero-body{color:#cbd5e1;max-width:420px;margin-bottom:32px;font-size:.85rem;line-height:1.6}.stat-card-featured{border-radius:var(--radius-lg);background:#ecfdf5;flex-direction:column;justify-content:center;padding:32px;display:flex;position:relative}.kpi-card{background:var(--bg-card);border-radius:var(--radius-lg);border:1px solid var(--border-color);padding:24px;position:relative}.kpi-card.dark{background:#1a1a1a;border-color:#0000}.kpi-card .kpi-label{text-transform:uppercase;color:var(--text-muted);letter-spacing:.05em;margin-bottom:8px;font-size:.65rem;font-weight:600}.kpi-card .kpi-number{color:var(--text-main);margin-bottom:8px;font-size:clamp(2rem,3vw,3rem);font-weight:800;line-height:1}.kpi-card.dark .kpi-number{color:#fff}.kpi-card .kpi-number.accent{color:var(--areca)}.doc-register-table{border-collapse:separate;border-spacing:0;table-layout:auto;width:100%}.doc-register-table th,.doc-register-table td{border-bottom:1px solid var(--border-color);text-align:left;vertical-align:middle;padding:10px 16px}.doc-register-table thead th{z-index:3;background:color-mix(in srgb, var(--bg-secondary) 92%, var(--bg-card) 8%);letter-spacing:.03em;text-transform:uppercase;color:var(--text-secondary);font-size:12px;font-weight:800;position:sticky;top:0}.doc-register-table tbody tr{transition:background-color .14s}.doc-register-table tbody tr:hover{background:color-mix(in srgb, var(--bg-secondary) 52%, transparent)}.doc-register-table td.table-action-cell,.doc-register-table th.table-action-cell,.doc-register-table td.table-select-cell,.doc-register-table th.table-select-cell{white-space:nowrap;text-align:center;width:1%}.table-action-row{flex-wrap:wrap;align-items:center;gap:8px;display:inline-flex}.table-action-row .btn{height:34px;padding:0 12px;font-size:13px}@media (width<=900px){.doc-register-table th,.doc-register-table td{padding:12px 10px;font-size:13px}.doc-register-table .is-mobile-hidden{display:none}.doc-register-table td.table-action-cell{white-space:nowrap;min-width:unset}.table-action-row{gap:6px;width:100%}.table-action-row .btn{padding:8px 10px;font-size:12px}}.scope-note-badge{border:1px solid color-mix(in srgb, var(--primary) 24%, var(--border-color) 76%);background:color-mix(in srgb, var(--primary) 8%, var(--bg-card) 92%);color:var(--text-secondary);border-radius:999px;align-items:center;padding:6px 10px;font-size:12px;font-weight:700;display:inline-flex}.filter-chip-row{flex-wrap:wrap;align-items:center;gap:8px;margin:2px 0 8px;display:flex}.filter-chip{color:var(--text-secondary);background:color-mix(in srgb, var(--bg-secondary) 72%, var(--bg-card) 28%);border:1px solid var(--border-color);border-radius:999px;align-items:center;padding:5px 10px;font-size:12px;font-weight:700;display:inline-flex}.filter-clear-btn{border:1px solid var(--border-color);background:var(--bg-card);color:var(--text-secondary);cursor:pointer;border-radius:10px;padding:6px 10px;font-size:12px;font-weight:700}.table-scroll-surface{overflow-x:auto}.result-pill-center{justify-content:center}.entity-primary{color:var(--text-main);font-weight:800}.entity-secondary{color:var(--text-mute);font-size:12px}.summary-note{color:var(--text-secondary);margin-bottom:10px;font-size:13px}.profile-progress-wrap{padding-bottom:24px}.profile-status-row{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:9px 0;display:flex}.profile-status-label{color:var(--text-secondary);font-size:12px;font-weight:600}.table-muted-note{color:var(--text-muted);font-size:12px}.doc-register-table .doc-code{color:var(--text-dim);font-family:monospace;font-size:.75rem}.approval-card{border-radius:var(--radius-lg);color:#fff;background:#1a1a1a;padding:24px}.approval-card .approval-step{align-items:center;gap:16px;margin-bottom:20px;display:flex}.approval-card .step-avatar{border-radius:var(--radius-full);background:var(--bg-secondary);width:32px;height:32px;color:var(--text-main);justify-content:center;align-items:center;font-size:.8rem;font-weight:700;display:flex}.approval-card .step-avatar.active{background:var(--areca);color:#fff}.approval-card .step-info .name{font-size:.85rem;font-weight:600}.approval-card .step-info .role{color:var(--text-muted);font-size:.7rem}.climate-risk-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:24px}.score-display{color:var(--text-main);font-size:clamp(3rem,5vw,4rem);font-weight:800;line-height:1}.orb-float{filter:blur(20px);z-index:0;pointer-events:none;background:radial-gradient(circle,#05966966 0%,#0000 70%);width:180px;height:180px;animation:6s ease-in-out infinite float;position:absolute;top:-40px;right:-40px}.section-star-label{text-transform:uppercase;letter-spacing:.15em;color:var(--areca);align-items:center;gap:6px;margin-bottom:16px;font-size:.6rem;font-weight:700;display:flex}.section-star-label:before{content:"★";color:var(--areca);font-size:.65rem}.tab-handle{background:var(--areca);border-radius:var(--radius-full);width:48px;height:8px;margin:0 auto 24px}.badge-pub{color:var(--accent-green);border:1px solid var(--accent-green);border-radius:var(--radius-full);background:#10b98126;padding:4px 8px;font-size:.65rem;font-weight:700}.badge-rev{background:var(--areca-dim);color:var(--areca);border:1px solid var(--areca);border-radius:var(--radius-full);padding:4px 8px;font-size:.65rem;font-weight:700}.badge-draft{background:var(--bg-secondary);color:var(--text-muted);border:1px solid var(--border-color);border-radius:var(--radius-full);padding:4px 8px;font-size:.65rem;font-weight:700}.stat-card-divider{border:none;border-top:1px solid var(--border-color);margin:12px 0}.kpi-notif-dot{border-radius:var(--radius-full);background:var(--areca);width:10px;height:10px;position:absolute;top:16px;right:16px}.progress-fill.areca-fill{background:var(--areca)}.btn-primary.areca-btn{background:var(--areca);color:#fff;border-radius:var(--radius-full);font-weight:700}.btn-ghost.areca-ghost{border:1.5px solid var(--border-color);color:var(--text-main);border-radius:var(--radius-full);background:0 0}.hero-card .btn-ghost.areca-ghost{color:#fff;border-color:#fff6}.hero-card .btn-ghost.areca-ghost:hover{background:#ffffff1a}.student-glass-card{background:var(--bg-card);border:1px solid var(--border-color);box-shadow:var(--shadow-sm);border-radius:20px;padding:24px;transition:all .3s cubic-bezier(.25,.8,.25,1);position:relative;overflow:hidden}.student-glass-card:before{content:"";pointer-events:none;z-index:1;background:linear-gradient(135deg,#ffffff0d 0%,#fff0 100%);position:absolute;inset:0}.student-glass-card:hover{border-color:var(--areca);transform:translateY(-4px);box-shadow:0 16px 32px #05966914}:root.dark .student-glass-card:hover{box-shadow:0 16px 32px #05966926}.active-lesson-glow{background:linear-gradient(135deg, var(--bg-card) 0%, #05966908 100%);border:1px solid #05966966;position:relative}.active-lesson-glow:hover{border-color:var(--areca);box-shadow:0 16px 32px #0596691f}.active-lesson-glow:before{content:"";pointer-events:none;z-index:0;background:radial-gradient(circle at 100% 0,#05966914 0%,#0000 60%);border-radius:20px;position:absolute;inset:0}.pulse-indicator{background-color:var(--areca);border-radius:50%;width:8px;height:8px;animation:2s infinite pulse-glow;display:inline-block;box-shadow:0 0 #059669b3}.stats-center-row{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.stat-metric-box{background:var(--bg-secondary);text-align:center;border:1px solid var(--border-color);border-radius:12px;padding:12px;transition:all .25s cubic-bezier(.4,0,.2,1)}.stat-metric-box:hover{background:var(--areca-dim);border-color:var(--areca);transform:translateY(-2px)}.welcome-panel-glass{border:1px solid var(--border-color);box-shadow:var(--shadow-sm);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:linear-gradient(135deg,#05966912 0%,#3b82f608 100%);border-radius:24px;padding:32px;position:relative;overflow:hidden}.welcome-panel-glass:before{content:"";pointer-events:none;z-index:1;background:linear-gradient(135deg,#ffffff0d 0%,#fff0 100%);position:absolute;inset:0}.ambient-orb-1{filter:blur(40px);z-index:0;pointer-events:none;background:radial-gradient(circle,#05966940 0%,#0000 70%);width:240px;height:240px;animation:12s ease-in-out infinite float-ambient-1;position:absolute;top:-80px;right:-80px}.ambient-orb-2{filter:blur(30px);z-index:0;pointer-events:none;background:radial-gradient(circle,#3b82f626 0%,#0000 70%);width:180px;height:180px;animation:10s ease-in-out infinite alternate float-ambient-2;position:absolute;bottom:-60px;left:20%}@keyframes float-ambient-1{0%,to{transform:translate(0)scale(1)}50%{transform:translate(-20px,15px)scale(1.1)}}@keyframes float-ambient-2{0%{transform:translate(0)scale(.9)}to{transform:translate(25px,-15px)scale(1.15)}}.vocab-game-widget{background:linear-gradient(135deg,#3b82f60f 0%,#6366f105 100%);border:1px solid #3b82f626}.vocab-game-widget:hover{border-color:#3b82f6;box-shadow:0 16px 32px #3b82f61f}.system-sync-card{background:linear-gradient(135deg, var(--bg-card) 0%, #d9770605 100%);border:1px solid #d9770640;border-radius:20px;padding:24px;position:relative;overflow:hidden}.sync-status-dot{background-color:#f59e0b;border-radius:50%;width:6px;height:6px;display:inline-block;box-shadow:0 0 8px #f59e0b}.sync-status-dot.active{background-color:#10b981;box-shadow:0 0 8px #10b981}.sync-status-dot.danger{background-color:#ef4444;box-shadow:0 0 8px #ef4444}.areca-btn{transition:all .25s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.areca-btn:hover{filter:brightness(1.05);transform:translateY(-2px);box-shadow:0 8px 20px #05966940}.areca-btn:active{transform:translateY(0)}.year-tab-button{transition:all .25s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.year-tab-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #0000000d}.stepper-container{background:var(--bg-card);border:1px solid var(--border-color);box-shadow:var(--shadow-sm);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);scrollbar-width:none;msOverflowStyle:none;border-radius:20px;justify-content:space-between;align-items:center;gap:8px;padding:20px 24px;display:flex;overflow-x:auto}.stepper-step-pill{cursor:pointer;border-radius:99px;align-items:center;gap:8px;padding:8px 16px;transition:all .25s cubic-bezier(.4,0,.2,1);display:flex;position:relative}.stepper-step-pill:hover{transform:scale(1.03)}.stepper-step-pill.active{box-shadow:0 4px 12px var(--areca-dim)}.step-pulse-glow{animation:2s infinite stepper-pulse;box-shadow:0 0 #059669b3}@keyframes stepper-pulse{0%{box-shadow:0 0 #05966980}70%{box-shadow:0 0 0 8px #05966900}to{box-shadow:0 0 #05966900}}.situation-card-glass{background:var(--bg-card);border:1px solid var(--border-color);box-shadow:var(--shadow-sm);border-radius:20px;padding:16px 20px;transition:all .3s cubic-bezier(.25,.8,.25,1)}.situation-card-glass:hover{border-color:var(--areca);box-shadow:0 8px 20px #0596690d}.situation-card-glass.expanded{background:linear-gradient(180deg, var(--bg-card) 0%, var(--bg-secondary) 100%)}.learning-skill-card{text-align:left;background:var(--bg-card);border:1px solid var(--border-color);box-shadow:var(--shadow-sm);cursor:pointer;border-radius:16px;flex-direction:column;justify-content:space-between;min-height:140px;padding:18px;transition:all .25s cubic-bezier(.25,.8,.25,1);display:flex;position:relative;overflow:hidden}.learning-skill-card:before{content:"";pointer-events:none;z-index:1;background:linear-gradient(135deg,#ffffff08 0%,#fff0 100%);position:absolute;inset:0}.learning-skill-card:hover:not(:disabled){border-color:var(--areca);transform:translateY(-4px);box-shadow:0 12px 24px #05966914}.learning-skill-card:disabled{opacity:.55;cursor:not-allowed}.skill-icon-box{border-radius:10px;justify-content:center;align-items:center;width:36px;height:36px;transition:transform .2s;display:flex;box-shadow:0 2px 6px #00000005}.learning-skill-card:hover:not(:disabled) .skill-icon-box{transform:scale(1.08)}.locked-curriculum-panel{text-align:center;background:var(--bg-card);border:1.5px dashed var(--border-color);max-width:520px;box-shadow:var(--shadow-sm);border-radius:24px;margin:40px auto;padding:60px 24px;position:relative;overflow:hidden}.locked-curriculum-panel:after{content:"";filter:blur(20px);z-index:0;pointer-events:none;background:radial-gradient(circle,#ef44440d 0%,#0000 70%);width:250px;height:250px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.roadmap-container{padding:24px}@media (width<=640px){.roadmap-container{padding:16px 12px}.welcome-panel-glass{text-align:center;padding:24px 18px}.welcome-panel-glass>div{text-align:center;flex-direction:column;align-items:center;gap:16px!important}.welcome-panel-glass button{justify-content:center;width:100%}}.stepper-line{flex:1;min-width:12px;height:2px;transition:all .25s cubic-bezier(.4,0,.2,1)}@media (width<=640px){.stepper-container{flex-direction:column;align-items:stretch;gap:4px;padding:16px}.stepper-line{flex:none;width:2px;min-width:0;height:16px;margin:4px 0 4px 26px}.stepper-step-pill{box-sizing:border-box;justify-content:flex-start;width:100%}}@media (width<=480px){.stats-center-row{grid-template-columns:1fr;gap:8px}.stat-metric-box{text-align:left;justify-content:space-between;align-items:center;padding:12px 18px;display:flex}.stat-metric-box span{margin-bottom:0!important}}.confirm-modal-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:9999;background:#0f172a66;justify-content:center;align-items:center;animation:.25s ease-out fade-in;display:flex;position:fixed;inset:0}.confirm-modal-card{background:var(--bg-card);border:1px solid var(--border-color);text-align:center;border-radius:24px;width:90%;max-width:400px;padding:32px;animation:.3s cubic-bezier(.34,1.56,.64,1) scale-up;position:relative;overflow:hidden;box-shadow:0 24px 48px #0000001f}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes scale-up{0%{opacity:0;transform:scale(.9)translateY(10px)}to{opacity:1;transform:scale(1)translateY(0)}}.confirm-modal-icon-bg{color:#f59e0b;background:#f59e0b1f;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;margin:0 auto 20px;display:flex;box-shadow:0 0 16px #f59e0b14}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg-primary:#f8f9f3;--bg-main:var(--bg-primary);--bg-secondary:#eef3ed;--bg-tertiary:#e8efe8;--bg-accent:#e2ece2;--bg-card:#fff;--text-main:#243e38;--text-primary:var(--text-main);--text-secondary:#435d55;--text-dim:#53675e;--text-mute:var(--text-dim);--text-muted:var(--text-dim);--primary:#23745a;--primary-dark:#175540;--primary-light:#deeee3;--secondary:#38786a;--accent:var(--primary);--interactive-accent:#22644c;--areca:var(--interactive-accent);--areca-rgb:35, 116, 90;--areca-light:#37836a;--areca-dark:#175540;--areca-dim:#e4f0e8;--areca-glass:#eef5ef;--areca-glow:#23745a18;--accent-vermilion:var(--primary);--accent-orange:#a25424;--accent-green:var(--primary);--accent-red:#ba3f4e;--accent-pink:#a93667;--success:#23745a;--success-text:#22644c;--success-light:#e1f1e7;--warning:#8b6014;--warning-light:#fff0cb;--danger:#b83b4d;--danger-light:#fde9e9;--info:#3164a2;--cta-bg:#236b52;--cta-success-bg:#18513e;--cta-danger-bg:#ac3042;--border-color:#d8e1d7;--border:#a5b8ab;--glass:#ffffffed;--glass-border:var(--border-color);--campus-mint:#e5f0db;--campus-peach:#fce9dc;--campus-lilac:#eee7f7;--campus-blue:#e3eff9;--campus-ink:#245644;--campus-hero:#e8f1de;--card-featured-bg:var(--campus-hero);--card-featured-text:var(--text-main);--dashboard-hero-bg:var(--campus-hero);--dashboard-hero-border:var(--border-color);--dashboard-hero-text:var(--text-main);--dashboard-hero-subtext:var(--text-secondary);--dashboard-kpi-bg:var(--bg-card);--dashboard-chart-bg:var(--bg-card);--dashboard-divider:#b6cebc;--gradient-primary:linear-gradient(130deg, #236b52, #306f5e);--gradient-areca:var(--gradient-primary);--gradient-green:linear-gradient(135deg, #e6f1df, #f3f7e9);--gradient-set:var(--gradient-primary);--gradient-orange:var(--gradient-primary);--skill-reading-color:#23745a;--skill-reading-bg:#e4f1e8;--skill-reading-border:#b8d4c3;--skill-listening-color:#315fa0;--skill-listening-bg:#e5eefb;--skill-listening-border:#b9cee8;--skill-speaking-color:#a73867;--skill-speaking-bg:#f9e7ee;--skill-speaking-border:#eac1d2;--skill-writing-color:#7551a2;--skill-writing-bg:#efe8f8;--skill-writing-border:#d4c2e8;--student-reading-color:var(--skill-reading-color);--student-reading-bg:var(--skill-reading-bg);--student-listening-color:var(--skill-listening-color);--student-listening-bg:var(--skill-listening-bg);--student-speaking-color:var(--skill-speaking-color);--student-speaking-bg:var(--skill-speaking-bg);--student-writing-color:var(--skill-writing-color);--student-writing-bg:var(--skill-writing-bg);--shadow-sm:0 2px 0 #294b3808;--shadow-soft:0 4px 0 #294b3806, 0 8px 26px #294b3805;--shadow-md:0 5px 16px #294b380c;--shadow-lg:0 12px 32px #294b3814;--shadow-glow:0 4px 12px #294b3810;--shadow-areca:var(--shadow-md);--shadow-areca-sm:var(--shadow-sm);--radius:16px;--radius-sm:10px;--radius-md:18px;--radius-lg:24px;--radius-xl:28px}:root.dark{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg-primary:#15251f;--bg-secondary:#233a30;--bg-tertiary:#2b4338;--bg-accent:#354e41;--bg-card:#1e3229;--text-main:#edf4e9;--text-secondary:#d0dfd0;--text-dim:#b5c8b7;--text-mute:var(--text-dim);--text-muted:var(--text-dim);--primary:#a9d9b6;--primary-light:#314c3d;--primary-dark:#c6e6ca;--interactive-accent:#b4dec0;--areca-dim:#2c4737;--areca-glass:#253f32;--accent-green:#a9d9b6;--accent-vermilion:#397653;--accent-orange:#ebbe8f;--accent-pink:#efb0cb;--accent-red:#f5a2a8;--success:#a5dbb5;--success-text:#b1e0bd;--success-light:#2e4939;--warning:#edcc89;--warning-light:#463e27;--danger:#f0a6ad;--danger-light:#492e35;--info:#b0cdf1;--border-color:#42594a;--border:#6d8774;--glass:#1e3229f5;--campus-mint:#314c37;--campus-peach:#47392e;--campus-lilac:#3c354a;--campus-blue:#293f50;--campus-hero:#2b4433;--campus-ink:#d6eacb;--dashboard-divider:#506d56;--skill-reading-color:#b1e0bd;--skill-reading-bg:#2a4837;--skill-reading-border:#53795c;--skill-listening-color:#b1d1ff;--skill-listening-bg:#2c3f55;--skill-listening-border:#536e8c;--skill-speaking-color:#f4b7ce;--skill-speaking-bg:#493140;--skill-speaking-border:#88586c;--skill-writing-color:#d7c2f5;--skill-writing-bg:#3d3450;--skill-writing-border:#77608f;--shadow-soft:0 4px 0 #0000000e, 0 8px 20px #00000012;--shadow-md:0 6px 20px #00000025;--shadow-lg:0 16px 36px #00000038}body{background:var(--bg-primary);color:var(--text-main)}button,input,textarea,select{font-family:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button:disabled{cursor:not-allowed}:where(button,a,input,textarea,select,[tabindex]):focus-visible{outline-offset:4px;outline:3px solid var(--interactive-accent)!important}::selection{background:var(--campus-mint);color:var(--text-main)}.app-layout{background:var(--bg-primary)}.main-content{min-width:0}.app-layout .page-container{will-change:auto;width:100%;max-width:1600px;margin-inline:auto;animation:none}.page-container>*,.page-container :where(section,article,.card){min-width:0}.page-container :where(h1,h2,h3,p){overflow-wrap:break-word}.app-layout .top-header{background:var(--bg-primary)!important;border-bottom-color:var(--border-color)!important}.app-layout .sidebar{background:var(--bg-card);border-right:1px solid var(--border-color)}.app-layout .sidebar-logo{min-height:86px}.app-layout .sidebar-link{min-height:44px;color:var(--text-secondary);border:1px solid #0000;border-radius:13px!important;font-weight:600!important}.app-layout .sidebar-link:hover{background:var(--bg-secondary);color:var(--text-main);transform:none}.app-layout .sidebar-link.active{border-color:var(--border-color);box-shadow:none;background:var(--campus-mint)!important;color:var(--interactive-accent)!important}.app-layout .sidebar-link.active:before{display:none}.app-layout .sidebar-link svg{flex-shrink:0}.app-layout .sidebar-section-label{margin-top:10px;letter-spacing:.1em!important;font-size:10px!important}.app-layout .sidebar.collapsed .sidebar-link{justify-content:center}.header-actions :where(.theme-toggle-btn,.announcements-nav-btn){background:var(--bg-card);border:1px solid var(--border-color);width:42px;height:42px;box-shadow:var(--shadow-sm);border-radius:14px}.app-layout .user-avatar{border-radius:14px}.app-layout .top-header-logo>div{background:var(--cta-bg)!important;color:#fff!important}.page-container .btn,.campus-login .btn{min-height:44px;box-shadow:none;border-radius:13px;font-weight:700;transition:background .15s,box-shadow .15s}.page-container .btn-primary,.campus-welcome .btn-primary{border:1px solid #236b52;box-shadow:0 3px #164b39;background:var(--cta-bg)!important;color:#fff!important}.page-container .btn-primary:hover{background:var(--cta-success-bg)!important}.page-container .btn-secondary,.campus-welcome .btn-secondary{border:1px solid var(--border-color);box-shadow:var(--shadow-sm);background:var(--bg-card)!important;color:var(--text-main)!important}.page-container .btn:hover{transform:none}.app-layout .page-header-bar{border:1px solid var(--border-color);background:var(--campus-hero);box-shadow:var(--shadow-sm);border-radius:24px;gap:18px;padding:22px 24px}.app-layout .page-header-bar:before,.app-layout .page-header-bar:after{display:none}.app-layout .page-header-bar__icon-wrap{background:var(--bg-card);color:var(--interactive-accent);border:1px solid var(--border-color);border-radius:17px;flex-shrink:0;width:50px;height:50px;box-shadow:0 3px #294b380b}.app-layout .page-header-bar__title{letter-spacing:-.035em;font-size:clamp(1.45rem,2.5vw,2rem);line-height:1.2}.app-layout .page-header-bar__subtitle{color:var(--text-secondary);font-size:14px;font-weight:500;line-height:1.6}.app-layout .page-header-bar__actions{flex-wrap:wrap;gap:10px;display:flex}.app-layout :is(.card,.student-glass-card,.faculty-surface,.admin-users-surface,.table-scroll-surface,.card-management-surface,.management-table-section,.role-card){border-color:var(--border-color);background:var(--bg-card);box-shadow:var(--shadow-soft);-webkit-backdrop-filter:none;backdrop-filter:none;border-radius:20px}.app-layout :is(.faculty-toolbar-grid,.admin-users-filter-card,.active-filter-bar){background:var(--bg-card);border-color:var(--border-color);box-shadow:none;border-radius:16px}.app-layout .admin-users-command{background:var(--campus-hero);color:var(--text-main);border-color:var(--border-color);box-shadow:var(--shadow-soft);border-radius:24px}.app-layout .admin-users-command:before{display:none}.app-layout .admin-users-command :is(h2,strong){color:var(--text-main)}.app-layout .admin-users-command :is(p,.admin-users-command__stat span){color:var(--text-secondary)}.app-layout .admin-users-command__eyebrow{background:var(--bg-card);color:var(--interactive-accent);border-color:var(--border-color)}.app-layout .admin-users-command__stat{background:var(--bg-card);border-color:var(--border-color)}.app-layout .admin-users-command__stat svg{color:var(--interactive-accent)}.app-layout :is(.form-input,.form-select,.classrooms-overview__search){background:var(--bg-card);border-color:var(--border);min-height:44px;color:var(--text-main);box-shadow:none;border-radius:12px}.app-layout textarea.form-input{line-height:1.65}.app-layout :is(.table-scroll-surface,.management-data-table-wrapper){overflow-x:auto}.app-layout :is(.data-table,.doc-register-table,.management-data-table) th{background:var(--bg-secondary);color:var(--text-secondary);letter-spacing:.03em;padding-block:15px;font-size:12px}.app-layout :is(.data-table,.doc-register-table,.management-data-table) td{border-color:var(--border-color);padding-block:15px}.app-layout :is(.data-table,.doc-register-table,.management-data-table) tbody tr:hover{background:var(--bg-secondary);transform:none}.app-layout :is(.modal,.modal-content,.modal-panel,.profile-modal){border-color:var(--border-color);box-shadow:var(--shadow-lg);border-radius:24px}.app-layout :is(.classrooms-overview__feedback,.student-home-empty-card){color:var(--text-secondary);line-height:1.65}.campus-welcome{border:1px solid var(--border-color);background:var(--campus-hero);color:var(--text-main);box-shadow:var(--shadow-soft);isolation:isolate;border-radius:26px;align-items:center;gap:20px;min-width:0;padding:32px;display:flex;position:relative}.campus-welcome__copy{z-index:1;flex:1;min-width:0;position:relative}.campus-eyebrow{color:var(--interactive-accent);letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:8px;font-size:11px;font-weight:800;line-height:1.7;display:flex}.campus-welcome h1{letter-spacing:-.045em;max-width:620px;margin:14px 0;font-size:clamp(1.65rem,2.8vw,2.65rem);font-weight:800;line-height:1.17}.campus-welcome p{color:var(--text-secondary);max-width:560px;margin:0;font-size:14px;line-height:1.7}.campus-welcome__actions{flex-wrap:wrap;gap:10px;margin-top:24px;display:flex}.campus-welcome__actions .btn{justify-content:center;align-items:center;gap:8px;padding:11px 18px;font-size:13px;text-decoration:none;display:inline-flex}.campus-welcome__art{flex-direction:column;flex:0 0 130px;align-items:center;gap:14px;width:130px;display:flex}.campus-welcome__art>span:last-child{text-align:center;color:var(--text-secondary);font-size:10px;font-weight:700;line-height:1.6}.app-layout :is(.admin-dash-hero,.advisor-dash-hero,.dept-dash-hero){grid-template-columns:minmax(0,1.7fr) minmax(250px,1fr);gap:20px;margin-bottom:22px}.app-layout :is(.admin-dash-hero,.advisor-dash-hero,.dept-dash-hero)>:last-child{min-width:0;background:var(--bg-card)!important;box-shadow:var(--shadow-soft)!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;border-radius:26px!important;padding:26px!important}.app-layout :is(.admin-dash-kpi-strip,.advisor-dash-kpi-strip,.dept-dash-kpi-strip){gap:16px;margin-bottom:24px}.app-layout :is(.admin-dash-kpi-strip,.advisor-dash-kpi-strip,.dept-dash-kpi-strip)>*{min-width:0;background:var(--bg-card)!important;box-shadow:var(--shadow-sm)!important;border-radius:20px!important;gap:16px!important;padding:22px!important}.app-layout :is(.admin-dash-kpi-strip,.advisor-dash-kpi-strip,.dept-dash-kpi-strip)>:nth-child(2){border-top:3px solid var(--skill-listening-border)!important}.app-layout :is(.admin-dash-kpi-strip,.advisor-dash-kpi-strip,.dept-dash-kpi-strip)>:nth-child(3){border-top:3px solid var(--skill-speaking-border)!important}.app-layout :is(.admin-dash-kpi-strip,.advisor-dash-kpi-strip,.dept-dash-kpi-strip)>:nth-child(4){border-top:3px solid var(--skill-writing-border)!important}.app-layout :is(.admin-dash-analytics,.advisor-dash-analytics,.dept-dash-analytics){gap:20px;margin-bottom:24px}.app-layout :is(.admin-dash-analytics,.advisor-dash-analytics,.dept-dash-analytics)>*{min-width:0;background:var(--bg-card)!important;box-shadow:var(--shadow-soft)!important;border-radius:22px!important;padding:24px!important}.campus-student-welcome{margin-bottom:24px}.campus-student-welcome .campus-welcome__art{flex-basis:175px;width:175px}.campus-learning-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:18px 0 0;display:grid}.campus-learning-stats>div{border:1px solid var(--border-color);background:var(--bg-card);box-shadow:var(--shadow-sm);border-radius:18px;padding:18px 20px}.campus-learning-stats>div:nth-child(2){background:var(--campus-peach)}.campus-learning-stats>div:nth-child(3){background:var(--campus-blue)}.campus-learning-stats>div:nth-child(4){background:var(--campus-lilac)}.campus-learning-stats dt{color:var(--text-secondary);align-items:center;gap:5px;font-size:12px;font-weight:600;display:flex}.campus-learning-stats dd{letter-spacing:-.03em;margin:8px 0 0;font-size:27px;font-weight:800;line-height:1.15}.app-layout .getting-started{border:1px solid var(--border-color);background:var(--bg-card);border-radius:22px}.app-layout .getting-started__steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.app-layout .student-home-classroom-card{text-align:left;width:100%;font-family:inherit}.app-layout .student-home-section,.app-layout .dashboard-hero-grid>*{min-width:0}:root .app-layout .student-home-page{--student-home-gold:var(--border-color);--student-home-gold-dark:var(--interactive-accent);--student-home-green:var(--primary);--student-home-blue:var(--info);--student-home-panel:var(--bg-card);--student-home-line:var(--border-color)}:root .app-layout .learning-record-page{--learning-gold:var(--border-color);--learning-gold-dark:var(--interactive-accent);--learning-green:var(--interactive-accent);--learning-panel:var(--bg-card);--learning-line:var(--border-color)}.app-layout :is(.learning-record-hero,.learning-progress-panel,.situation-card-glass,.learning-skill-card,.learning-year-selector){border-color:var(--border-color);box-shadow:var(--shadow-sm);-webkit-backdrop-filter:none;backdrop-filter:none;border-radius:22px}.app-layout .learning-record-hero{background:var(--campus-hero)}.app-layout .learning-record-hero:before,.app-layout .learning-record-hero:after{display:none}.app-layout .learning-skill-card{background:var(--bg-card)}.app-layout .learning-skill-card:hover{box-shadow:var(--shadow-md)}.app-layout .year-tab-button{border-radius:16px}.app-layout .year-tab-button.active{background:var(--campus-mint);border-color:var(--interactive-accent)}.app-layout .year-tab-button.active .tab-title,.app-layout .learning-record-eyebrow{color:var(--interactive-accent)}.app-layout :is(.learning-next-card button,.learning-toolbar-button){background:var(--campus-mint);color:var(--interactive-accent);border-color:var(--border-color)}.app-layout .asw-header,.app-layout .asw-panel{background:var(--bg-card);box-shadow:var(--shadow-sm);border-radius:24px}.app-layout .asw-header{background:var(--campus-hero)}.app-layout .asw-skill-icon.reading{background:var(--skill-reading-bg);color:var(--skill-reading-color)}.app-layout .asw-skill-icon.listening{background:var(--skill-listening-bg);color:var(--skill-listening-color)}.app-layout .asw-skill-icon.speaking{background:var(--skill-speaking-bg);color:var(--skill-speaking-color)}.app-layout .asw-skill-icon.writing{background:var(--skill-writing-bg);color:var(--skill-writing-color)}.app-layout .asw-tabs button{background:var(--bg-card);border-radius:15px;min-height:54px}.app-layout .asw-tabs button.active{background:var(--campus-mint)}.app-layout .asw-choices label{min-height:48px}.app-layout .asw-root :is(input,textarea){border-color:var(--border);border-radius:12px}.campus-pending{overflow-wrap:anywhere;align-items:center;padding-inline:20px}.campus-pending>section{width:100%;border-radius:24px!important}.campus-buddy{--buddy-fur:#f5cd8e;--buddy-line:#634c31;flex-shrink:0;width:128px;height:139px;display:inline-block;position:relative}.campus-buddy__face{background:var(--buddy-fur);border:2px solid var(--buddy-line);border-radius:44% 44% 42% 42%;width:100px;height:82px;position:absolute;top:30px;left:14px;box-shadow:inset 0 -6px #e8b96f}.campus-buddy__ear{background:var(--buddy-fur);border:2px solid var(--buddy-line);border-radius:8px 80% 0 0;width:36px;height:44px;position:absolute;top:13px}.campus-buddy__ear--left{left:15px;transform:rotate(-14deg)}.campus-buddy__ear--right{right:15px;transform:rotate(14deg)scaleX(-1)}.campus-buddy__eyes{background:#3f392d;border-radius:50%;width:7px;height:10px;position:absolute;top:28px;left:25px;box-shadow:35px 0 #3f392d}.campus-buddy__cheeks{background:#eaa084;border-radius:50%;width:17px;height:8px;position:absolute;top:42px;left:13px;box-shadow:52px 0 #eaa084}.campus-buddy__smile{border:2px solid var(--buddy-line);border-top:0;border-radius:0 0 12px 12px;width:14px;height:10px;position:absolute;top:42px;left:41px}.campus-buddy__book{background:#47846a;border:2px solid #2c5545;border-radius:5px 5px 10px 10px;width:108px;height:39px;display:flex;position:absolute;top:94px;left:10px;transform:rotate(-4deg)}.campus-buddy__book span{border-right:2px solid #bdd1b8;width:50%;margin:4px 0}.campus-buddy__book span:last-child{border:0}.campus-buddy__paw{border:2px solid var(--buddy-line);background:var(--buddy-fur);border-radius:50%;width:23px;height:18px;position:absolute;top:98px}.campus-buddy__paw--left{left:4px;transform:rotate(-18deg)}.campus-buddy__paw--right{right:4px;transform:rotate(18deg)}.campus-buddy__spark{color:#906824;font-size:22px;position:absolute}.campus-buddy__spark--one{top:12px;right:-7px}.campus-buddy__spark--two{top:58px;left:-9px}.campus-buddy--compact{zoom:.36}.dark .campus-buddy__spark{color:#edcc89}.campus-panel{border:1px solid var(--border-color);background:var(--bg-card);box-shadow:0 5px 0 color-mix(in srgb, var(--primary) 7%, transparent);border-radius:26px;min-width:0;margin-bottom:24px;padding:clamp(18px,3vw,28px)}.campus-section-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;margin-bottom:22px;display:flex}.campus-section-heading h2{letter-spacing:-.025em;margin:8px 0;font-size:clamp(19px,2vw,24px)}.campus-section-heading p,.campus-caption{color:var(--text-secondary);font-size:13px;line-height:1.6}.campus-section-heading p{margin:0}.campus-pulse-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.campus-pulse-column{color:var(--text-main);background:var(--pulse-bg);border:1px solid var(--border-color);font:inherit;border-radius:22px;flex-direction:column;align-items:center;gap:10px;min-width:0;padding:18px 12px;display:flex}button.campus-pulse-column{cursor:pointer;transition:transform .18s}button.campus-pulse-column:hover{border-color:var(--pulse-color);transform:translateY(-3px)}.campus-pulse-label{border:1px solid var(--border-color);background:var(--bg-card);border-radius:99px;padding:5px 12px;font-size:12px;font-weight:800}.campus-pulse-track{border-bottom:2px solid var(--pulse-color);align-items:flex-end;width:70%;max-width:120px;height:90px;display:flex}.campus-pulse-track>span{background:var(--pulse-color);border-radius:18px 18px 3px 3px;justify-content:center;align-items:flex-start;gap:12px;width:100%;display:flex;position:relative;overflow:hidden}.campus-pulse-track i{background:var(--bg-card);border-radius:50%;width:5px;height:6px;margin-top:14px}.campus-pulse-column strong{text-align:center;font-size:23px}.campus-pulse-column small{font-size:12px;font-weight:600}.campus-pulse-column .campus-caption{text-align:center}.campus-curriculum-companion{color:var(--text-secondary);align-items:center;gap:12px;margin:10px 0;font-size:13px;font-weight:700;display:flex}.campus-page-companion{flex-shrink:0;margin-left:auto}.page-header-bar{background:var(--campus-hero);border:1px solid var(--border-color);border-radius:26px;gap:20px;padding:20px 24px}.page-header-bar__actions{margin-left:auto}.page-header-bar__icon-wrap{border:1px solid var(--border-color);border-radius:18px 18px 9px;transform:rotate(-4deg)}.campus-empty{text-align:center;background:var(--bg-secondary);color:var(--text-secondary);border-radius:20px;justify-items:center;gap:12px;padding:28px 18px;display:grid}.campus-empty h3,.campus-empty p{margin:0}.campus-status{border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-main);border-radius:99px;align-items:center;padding:4px 10px;font-size:12px;font-weight:700;display:inline-flex}.campus-roster-search{gap:7px;width:min(100%,320px);font-size:12px;font-weight:700;display:grid}.campus-roster-search>span{align-items:center;gap:6px;display:flex}.campus-roster-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:16px;margin:18px 0;display:grid}.campus-student-card{border:1px solid var(--border-color);background:linear-gradient(145deg, var(--bg-card), var(--campus-mint));border-radius:22px;min-width:0;padding:20px}.campus-student-card:nth-child(4n+2){background:linear-gradient(145deg, var(--bg-card), var(--campus-blue))}.campus-student-card:nth-child(4n+3){background:linear-gradient(145deg, var(--bg-card), var(--campus-peach))}.campus-student-card:nth-child(4n+4){background:linear-gradient(145deg, var(--bg-card), var(--campus-lilac))}.campus-student-card__identity{align-items:center;gap:12px;display:flex}.campus-student-card__identity>div{flex:1;min-width:0}.campus-student-card h3{overflow-wrap:anywhere;margin:0 0 5px;font-size:15px}.campus-student-card p{color:var(--text-secondary);overflow-wrap:anywhere;font-size:12px}.campus-student-card__identity p{margin:0}.campus-avatar{background:var(--bg-card);width:46px;height:46px;color:var(--primary);border:2px solid var(--border-color);border-radius:17px 17px 9px;flex-shrink:0;place-items:center;font-size:22px;font-weight:850;display:grid}.campus-student-card__facts,.campus-student-card footer{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-top:16px;display:flex}.campus-student-card__facts>span{align-items:center;gap:5px;font-size:13px;font-weight:700;display:inline-flex}.campus-student-card footer{border-top:1px dashed var(--border-color);justify-content:flex-start;padding-top:15px}.campus-student-card footer .btn{min-height:40px}.campus-room-banner,.campus-profile-header{border-radius:26px;background:var(--campus-hero)!important}.campus-room-banner{--bg-warning-subtle:var(--warning-light);--bg-danger-subtle:var(--danger-light);--bg-success-subtle:var(--success-light)}.campus-room-banner>div>div{min-width:0}.campus-profile-header{border-radius:0}.campus-profile-backdrop,.admin-courses-modal-backdrop{z-index:3000!important}.campus-profile-surface{border:1px solid var(--border-color);border-radius:28px!important}.campus-profile-header .campus-curriculum-companion{margin:0 0 18px}.campus-profile-surface h2,.campus-profile-surface h3{overflow-wrap:anywhere}.campus-profile-surface .profile-progress-wrap{min-width:0}.campus-curriculum-tools{background:var(--bg-card);border:1px solid var(--border-color);border-radius:22px;margin:20px 0;padding:20px}.campus-year-tabs{flex-wrap:wrap;gap:10px;margin-bottom:20px;display:flex}.campus-year-tabs button{border:1px solid var(--border-color);font:inherit;background:var(--bg-secondary);color:var(--text-main);cursor:pointer;border-radius:14px;padding:10px 18px;font-weight:700}.campus-year-tabs button[aria-current]{background:var(--primary);color:var(--bg-card)}.campus-filter-row{flex-wrap:wrap;align-items:flex-end;gap:12px;display:flex}.campus-filter-row label{flex:160px;gap:7px;font-size:12px;font-weight:700;display:grid}.campus-filter-row label:first-child{flex-grow:3}.course-browser .admin-course-card,.admin-courses-page .admin-course-card{border:1px solid var(--border-color);box-shadow:0 5px 0 color-mix(in srgb, var(--primary) 9%, transparent);cursor:default;border-radius:26px;overflow:hidden}.course-browser .admin-course-card__header,.admin-courses-page .admin-course-card__header{background:color-mix(in srgb, var(--course-accent) 12%, var(--bg-card));padding:24px}.admin-course-card__year{align-items:center;gap:10px;display:inline-flex}.admin-course-card__footer{flex-wrap:wrap;gap:10px}.admin-course-card__open.btn{color:var(--btn-primary-text,#fff);padding:10px 14px;font-size:12px}.course-browser__command,.admin-courses-command,.course-browser__summary{background:var(--campus-hero);border-radius:26px}.course-browser .course-browser__summary-main p{color:var(--text-secondary)}.course-browser__situations{gap:20px;display:grid}.course-browser .course-situation{border:1px solid var(--border-color);border-radius:24px;overflow:hidden}.course-browser .course-situation__header{background:var(--bg-secondary);color:var(--text-main);padding:22px}.course-browser .course-situation__number{background:var(--campus-lilac);color:var(--text-main);border-radius:14px}.course-browser .course-situation__body{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:18px;display:grid}.course-browser .course-lesson-row{border:1px solid var(--skill-border);background:var(--skill-bg);border-radius:20px;flex-direction:column;align-items:stretch;min-width:0;padding:20px;display:flex}.course-browser .course-lesson-row__main{align-items:flex-start}.course-browser .course-lesson-row__title{white-space:normal;overflow-wrap:anywhere}.course-browser .course-lesson-row__type{border-radius:15px;flex-shrink:0;width:42px;height:42px}.course-browser .course-lesson-row__type svg{width:22px;height:22px}.course-browser .course-lesson-row__meta{flex-wrap:wrap}.course-browser .course-lesson-row__actions{margin-top:auto;padding-top:12px}.campus-draft-preview{gap:22px;display:grid}.campus-draft-preview .campus-welcome{margin:0}.campus-metric-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px;display:grid}.campus-metric-grid>div{background:var(--bg-secondary);border-radius:18px;min-width:0;padding:18px}.campus-metric-grid dt{color:var(--text-secondary);font-size:12px}.campus-metric-grid dd{overflow-wrap:anywhere;margin:8px 0 0;font-size:20px;font-weight:800}.campus-draft-text{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.8}.faculty-page .admin-classrooms-command{background:var(--campus-hero);border-radius:26px}.faculty-page .admin-classrooms-dept-card,.faculty-page .classrooms-overview__card{box-shadow:0 5px 0 color-mix(in srgb, var(--primary) 8%, transparent);border-radius:24px}.campus-advisor-room{background:linear-gradient(130deg, var(--campus-blue), var(--bg-card))!important}.campus-advisor-room>div:last-child{flex-wrap:wrap;gap:15px}.campus-profile-page .profile-info-card>div:first-child{background:var(--campus-hero);border-radius:26px}.campus-departments-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.campus-department-card{background:var(--campus-blue);border:1px solid var(--border-color);border-radius:22px;padding:22px}.campus-department-card:nth-child(2){background:var(--campus-peach)}.campus-department-card:nth-child(3){background:var(--campus-mint)}.campus-department-card:nth-child(4){background:var(--campus-lilac)}.campus-department-card h3{margin:0 0 16px;font-size:17px}.campus-department-card dl{flex-wrap:wrap;gap:20px;margin:0;display:flex}.campus-department-card dt{color:var(--text-secondary);font-size:12px}.campus-department-card dd{margin:5px 0 0;font-size:24px;font-weight:800}.faculty-page .department-overview-card{background:var(--campus-mint);border:1px solid var(--border-color);box-shadow:0 5px 0 color-mix(in srgb, var(--primary) 9%, transparent);border-radius:26px;padding:24px}.faculty-page .department-overview-card:nth-child(2){background:var(--campus-blue)}.faculty-page .department-overview-card:nth-child(3){background:var(--campus-peach)}.faculty-page .department-overview-card:nth-child(4){background:var(--campus-lilac)}.faculty-page .department-overview-card__name{font-size:23px}.faculty-page .department-overview-card__stat{background:var(--bg-card);border-radius:17px;padding:14px}.faculty-page .department-overview-card__header .dept-tag{background:var(--bg-card);border-radius:12px 12px 5px;padding:6px 12px}.faculty-page :is(.admin-classrooms-code,.admin-classrooms-dept-chip,.admin-classrooms-current-dept,.dept-head-scope-lock){color:var(--text-main);background:var(--bg-secondary);border-color:var(--border-color)}.faculty-page .admin-classrooms-row{--row-accent:var(--primary)}.campus-skill-progress-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:24px;display:grid}.campus-skill-progress{background:color-mix(in srgb, var(--progress-color) 10%, var(--bg-card));border:1px solid var(--border-color);border-radius:20px;gap:9px;min-width:0;padding:16px;display:grid}.campus-skill-progress>span{text-transform:capitalize;align-items:center;gap:6px;font-size:12px;font-weight:750;display:flex}.campus-skill-progress strong{color:var(--progress-color);font-size:24px}.campus-skill-progress small{color:var(--text-secondary);font-size:11px}.campus-skill-progress progress{width:100%;height:9px;accent-color:var(--progress-color)}.campus-progress-year{text-align:left;width:100%;font:inherit;color:var(--text-main);border:0}.campus-progress-panel>div:last-child>div{opacity:1!important;border-radius:18px!important}.campus-progress-panel .campus-progress-year>div{min-width:0}@media (width<=680px){.campus-pulse-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.campus-pulse-track{height:60px}.campus-page-companion{display:none}.page-header-bar{padding:18px}.campus-room-banner{padding:18px!important}.campus-room-banner button{padding:8px 10px!important}.campus-profile-backdrop{padding:12px!important}.campus-profile-header{padding:20px!important}.campus-profile-surface>div:last-child{padding:18px!important}.course-browser .course-situation__body,.campus-departments-grid{grid-template-columns:1fr}.course-browser .course-situation__header{padding:16px}.course-browser__summary{flex-wrap:wrap}.campus-curriculum-tools{padding:16px}.campus-year-tabs{gap:6px}.campus-year-tabs button{padding:9px 12px}.campus-advisor-room{padding:18px!important}.campus-advisor-room>div:first-child{flex-wrap:wrap}}.campus-login{background:var(--bg-primary)!important}.campus-login__layout{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:start;gap:48px;margin-block:28px;display:grid;max-width:1160px!important}.campus-login__story{background:var(--campus-hero);border:1px solid var(--border-color);border-radius:32px;flex-direction:column;align-items:flex-start;min-height:610px;padding:42px;display:flex;position:sticky;top:28px}.campus-login__story h2{letter-spacing:-.06em;color:var(--text-main);margin:32px 0 20px;font-size:clamp(2.6rem,5vw,4.2rem);font-weight:800;line-height:1.03}.campus-login__story p{max-width:330px;color:var(--text-secondary);font-size:15px;line-height:1.75}.campus-login__story .campus-buddy{align-self:center;margin:28px 0 20px;transform:scale(1.15)}.campus-login__skills{flex-wrap:wrap;justify-content:center;align-self:center;gap:8px;margin-block:14px;display:flex}.campus-login__skills span{background:var(--bg-card);border:1px solid var(--border-color);border-radius:99px;padding:8px 14px;font-size:12px;font-weight:700}.campus-login__note{color:var(--text-secondary);align-self:center;margin-top:auto;padding-top:14px;font-size:12px}.campus-login__form-column{min-width:0}.campus-login__brand{margin-bottom:20px!important}.campus-login__brand>div{width:58px!important;height:58px!important;margin-bottom:10px!important}.campus-login__brand h1{color:var(--text-main);-webkit-text-fill-color:var(--text-main)!important;background:0 0!important}.campus-login__card{background:var(--bg-card)!important;border:1px solid var(--border-color)!important;box-shadow:var(--shadow-soft)!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;border-radius:26px!important;padding:28px!important}.campus-login__accounts{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}.campus-login .campus-demo-account{min-height:0!important;box-shadow:none!important;text-align:left!important;border-radius:14px!important;align-items:flex-start!important;gap:4px!important;padding:12px!important;transform:none!important}.campus-demo-account:hover:not(:disabled){background:var(--bg-secondary)!important;border-color:var(--primary)!important}.campus-demo-account>div:first-child{border-radius:10px!important;width:30px!important;height:30px!important}.campus-demo-account>div{min-height:0!important;line-height:1.5!important}.campus-demo-account>div:nth-child(4){overflow-wrap:anywhere}.campus-login #login-form input{min-height:46px;background:var(--bg-primary)!important;border-radius:12px!important}.campus-login #login-form button[type=submit]{color:#fff;background:var(--cta-bg)!important;border-radius:13px!important}.campus-login #login-form button[type=submit]:hover:not(:disabled){background:var(--cta-success-bg)!important}@media (width<=1100px){.campus-welcome__art{display:none}.campus-student-welcome .campus-welcome__art{flex-basis:128px;display:flex}.app-layout :is(.admin-dash-hero,.advisor-dash-hero,.dept-dash-hero){grid-template-columns:minmax(0,1.4fr) minmax(230px,1fr)}.campus-login__layout{gap:24px}.campus-login__story{padding:30px}}@media (width<=860px){.app-layout :is(.admin-dash-hero,.advisor-dash-hero,.dept-dash-hero){grid-template-columns:minmax(0,1fr);gap:16px}.app-layout :is(.admin-dash-hero,.advisor-dash-hero,.dept-dash-hero)>:last-child{display:flex}.app-layout :is(.admin-dash-analytics,.advisor-dash-analytics,.dept-dash-analytics){grid-template-columns:minmax(0,1fr)}.app-layout :is(.admin-dash-analytics,.advisor-dash-analytics,.dept-dash-analytics)>:last-child{flex-direction:column;display:flex}.campus-welcome__art{display:flex}.campus-login__layout{grid-template-columns:minmax(0,1fr);gap:20px;max-width:580px!important}.campus-login__story{min-height:0;padding:26px;position:relative;top:auto}.campus-login__story h2{margin:16px 0 10px;font-size:2.3rem}.campus-login__story .campus-buddy,.campus-login__skills,.campus-login__note,.campus-login__story h2 br{display:none}.campus-login__story .campus-eyebrow{padding-right:54px}.campus-login__story .campus-buddy{transform-origin:100% 0;margin:0;display:inline-block;position:absolute;top:16px;right:18px;transform:scale(.42)}.app-layout .page-header-bar{flex-wrap:wrap}}@media (width<=600px){.campus-welcome,.app-layout :is(.admin-dash-hero,.advisor-dash-hero,.dept-dash-hero)>:first-child{border-radius:22px!important;padding:22px!important}.campus-welcome__art,.campus-student-welcome .campus-welcome__art{display:none}.campus-welcome__actions{margin-top:20px}.campus-welcome__actions .btn{flex:auto}.campus-learning-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.campus-learning-stats>div{padding:16px}.app-layout .getting-started__steps{grid-template-columns:minmax(0,1fr)}.app-layout :is(.admin-dash-kpi-strip,.advisor-dash-kpi-strip,.dept-dash-kpi-strip){grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}.app-layout :is(.admin-dash-kpi-strip,.advisor-dash-kpi-strip,.dept-dash-kpi-strip)>*{flex-direction:column;align-items:flex-start!important;gap:10px!important;padding:16px!important}.app-layout :is(.admin-dash-kpi-strip,.advisor-dash-kpi-strip,.dept-dash-kpi-strip)>*>div{overflow-wrap:anywhere;min-width:0;max-width:100%}.app-layout :is(.admin-dash-kpi-strip,.advisor-dash-kpi-strip,.dept-dash-kpi-strip)>*>div:first-child{flex-shrink:0;border-radius:12px!important;width:36px!important;height:36px!important}.app-layout :is(.admin-dash-kpi-strip,.advisor-dash-kpi-strip,.dept-dash-kpi-strip)>*>div:last-child>div:last-child{line-height:1.25;font-size:24px!important}.app-layout .page-header-bar{border-radius:20px;gap:14px;padding:18px}.app-layout .page-header-bar__lead{gap:12px;min-width:0}.app-layout .page-header-bar__actions{width:100%}.app-layout .page-header-bar__actions>*{flex:auto}.app-layout .page-header-bar__icon-wrap{border-radius:13px;width:42px;height:42px}.campus-login{padding:16px!important}.campus-login__layout{margin-top:56px}.campus-login__card{padding:22px!important}.campus-login__accounts{grid-template-columns:minmax(0,1fr)!important}.campus-login .campus-demo-account{grid-template-columns:34px minmax(0,1fr);column-gap:10px!important;display:grid!important}.campus-demo-account>div:first-child{grid-area:1/1/5}.campus-demo-account>div:not(:first-child){grid-column:2}.app-layout input:not([type=checkbox]):not([type=radio]),.app-layout textarea,.app-layout select{font-size:16px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media print{.campus-welcome__art,.campus-buddy{display:none}.app-layout .page-container{max-width:none;padding:0!important}}
