:root{--color-primary: #4f46e5;--color-primary-soft: #eef2ff;--color-primary-strong: #4338ca;--color-secondary: #14b8a6;--color-accent: #f59e0b;--color-bg: #f3f4f6;--color-bg-surface: #ffffff;--color-border-subtle: #e5e7eb;--color-border-strong: #d1d5db;--color-text: #111827;--color-text-muted: #6b7280;--color-text-soft: #9ca3af;--color-success: #22c55e;--color-danger: #ef4444;--color-warning: #f59e0b;--radius-sm: .25rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-2xl: 1.5rem;--radius-full: 9999px;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--font-family-body: "Inter", system-ui, -apple-system, sans-serif;--font-family-heading: "Outfit", "Inter", system-ui, -apple-system, sans-serif;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-md: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--glass-bg: rgba(255, 255, 255, .7);--glass-border: rgba(255, 255, 255, .5);--glass-shadow: 0 8px 32px 0 rgba(31, 38, 135, .07);--glass-blur: blur(12px);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .05), 0 2px 4px -2px rgba(0, 0, 0, .05);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .05), 0 4px 6px -4px rgba(0, 0, 0, .05);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .05), 0 8px 10px -6px rgba(0, 0, 0, .05);--line-height-tight: 1.1;--line-height-snug: 1.3;--line-height-normal: 1.5;--student-coral: #fdba74;--student-coral-strong: #ea580c;--student-mint: #7dd3c0;--student-mint-strong: #0d9488;--student-lavender: #bfdbfe;--student-lavender-strong: #3b82f6;--student-cream: #fffbeb;--student-cream-soft: #fffdf5;--student-text: #1e293b;--student-text-muted: #64748b;--brand-gradient-primary: linear-gradient(135deg, #38bdf8 0%, #0ea5e9 38%, #f97316 72%, #fbbf24 100%);--brand-gradient-subtle: linear-gradient(to right, #eff6ff 0%, #fffbeb 50%, #e0f2fe 100%);--brand-surface-glass: rgba(255, 255, 255, .88);--brand-text-gradient: linear-gradient(135deg, #2563eb 0%, #ea580c 100%)}.heading-xl{font-family:var(--font-family-heading);font-size:var(--font-size-3xl);line-height:var(--line-height-tight);font-weight:700;letter-spacing:-.02em;color:var(--color-text)}.heading-l{font-family:var(--font-family-heading);font-size:var(--font-size-2xl);line-height:var(--line-height-snug);font-weight:600;color:var(--color-text)}.heading-m{font-family:var(--font-family-heading);font-size:var(--font-size-xl);line-height:var(--line-height-snug);font-weight:600;color:var(--color-text)}.text-muted{color:var(--color-text-muted)}.btn{display:inline-flex;align-items:center;justify-content:center;font-weight:500;border-radius:var(--radius-md);transition:all .2s ease;cursor:pointer;border:1px solid transparent;outline:none;font-family:var(--font-family-body);position:relative;overflow:hidden}.btn:focus-visible{box-shadow:0 0 0 2px var(--color-bg-surface),0 0 0 4px var(--color-primary)}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background-color:var(--color-primary);color:#fff;box-shadow:var(--shadow-sm)}.btn-primary:not(:disabled):hover{background-color:var(--color-primary-strong);box-shadow:var(--shadow-md);transform:translateY(-1px)}.btn-secondary{background-color:#fff;color:var(--color-text);border-color:var(--color-border-subtle);box-shadow:var(--shadow-sm)}.btn-secondary:not(:disabled):hover{background-color:var(--color-bg);border-color:var(--color-border-strong)}.btn-ghost{background-color:transparent;color:var(--color-text-muted)}.btn-ghost:not(:disabled):hover{background-color:#0000000d;color:var(--color-text)}.btn-danger{background-color:var(--color-danger);color:#fff}.btn-danger:not(:disabled):hover{filter:brightness(.9)}.btn-success{background-color:var(--color-success);color:#fff;box-shadow:var(--shadow-sm)}.btn-success:not(:disabled):hover{background-color:#16a34a;box-shadow:var(--shadow-md);transform:translateY(-1px)}.btn-sm{padding:.375rem .75rem;font-size:var(--font-size-sm)}.btn-md{padding:.5rem 1rem;font-size:var(--font-size-sm)}.btn-lg{padding:.75rem 1.5rem;font-size:var(--font-size-md)}.btn-loading{color:transparent!important}.btn-spinner{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:flex}.spinner-icon{width:1.25em;height:1.25em;animation:spin 1s linear infinite}.opacity-25{opacity:.25}.opacity-75{opacity:.75}.app-shell--student .btn-primary{background:var(--brand-gradient-primary);background-size:200% auto;color:#fff;border:none;transition:all .3s ease}.app-shell--student .btn-primary:not(:disabled):hover{background-position:right center;box-shadow:0 4px 12px #ea580c47;transform:translateY(-1px)}.app-shell--student .btn-secondary{border-color:var(--student-lavender);color:var(--student-text)}.app-shell--student .btn-secondary:not(:disabled):hover{background-color:var(--student-cream-soft);border-color:var(--student-lavender-strong)}.text-soft{color:var(--color-text-soft)}.form-field{display:flex;flex-direction:column;gap:.375rem;margin-bottom:1rem}.w-full{width:100%}.form-label{font-size:var(--font-size-sm);font-weight:500;color:var(--color-text);display:block}.form-input{width:100%;padding:.625rem .875rem;font-size:var(--font-size-sm);line-height:1.5;color:var(--color-text);background-color:var(--color-bg-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out;outline:none}.form-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-soft)}.form-input::placeholder{color:var(--color-text-muted);opacity:1}.form-input:disabled{background-color:var(--color-bg);opacity:1;cursor:not-allowed}.form-input-error{border-color:var(--color-danger)}.form-input-error:focus{--focus-ring: 0 0 0 3px rgba(99, 102, 241, .4);--focus-ring-offset: 2px;box-shadow:var(--focus-ring)}.form-error-text{font-size:var(--font-size-xs);color:var(--color-danger);margin-top:.25rem}.form-helper-text{font-size:var(--font-size-xs);color:var(--color-text-muted);margin-top:.25rem}.app-shell--student .form-input:focus{border-color:var(--student-coral-strong);box-shadow:0 0 0 3px #ea580c2e}.skeleton{display:inline-block;background-color:var(--color-border-subtle);position:relative;overflow:hidden;border-radius:var(--radius-sm)}.skeleton:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;transform:translate(-100%);background-image:linear-gradient(90deg,#fff0 0,#fff3 20%,#ffffff80 60%,#fff0);animation:shimmer 1.5s infinite}@keyframes shimmer{to{transform:translate(100%)}}.skeleton-text{height:1em;width:100%;margin-bottom:.5rem;border-radius:var(--radius-sm)}.skeleton-rectangular{height:100%;width:100%;border-radius:var(--radius-md)}.skeleton-circular{border-radius:50%}.card{background-color:var(--color-bg-surface);border-radius:var(--radius-lg);border:1px solid var(--color-border-subtle);transition:transform .2s ease,box-shadow .2s ease;overflow:hidden}.card-muted{background-color:var(--color-bg);border:none}.card-hoverable{cursor:pointer}.card-hoverable:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);border-color:#ff9a8b}.card-p-none{padding:0}.card-p-sm{padding:var(--space-3)}.card-p-md{padding:var(--space-5)}.card-p-lg{padding:var(--space-8)}.shadow-none{box-shadow:none}.shadow-sm{box-shadow:var(--shadow-sm)}.shadow-md{box-shadow:var(--shadow-md)}.shadow-lg{box-shadow:var(--shadow-lg)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:var(--space-12) var(--space-4);background-color:var(--color-bg);border-radius:var(--radius-lg);border:1px dashed var(--color-border-strong)}.empty-state-icon{font-size:3rem;color:var(--color-text-soft);margin-bottom:var(--space-4)}.empty-state-title{margin-bottom:var(--space-2)}.empty-state-description{max-width:400px;margin-bottom:var(--space-6)}.app-shell--student .empty-state{background-color:var(--student-cream-soft);border-color:var(--student-mint)}.app-shell--student .empty-state-icon{color:var(--student-lavender-strong)}body{background-color:var(--color-bg);color:var(--color-text)}.app-shell{min-height:100vh;background:radial-gradient(circle at top left,#eef2ff 0,#f9fafb 40%,#eef2ff);--app-header-offset: 80px}.app-shell.app-shell--teacher{--app-header-offset: 88px}.app-header{background:linear-gradient(90deg,#4f46e5,#6366f1,#14b8a6);color:#fff;padding:var(--space-3) var(--space-6);box-shadow:var(--shadow-md);display:flex;align-items:center;justify-content:space-between;min-height:var(--app-header-offset);box-sizing:border-box}.app-header-main{display:flex;align-items:center;gap:var(--space-3)}.app-header-title{font-size:var(--font-size-lg);font-weight:600}.app-header-org{font-size:var(--font-size-sm);opacity:.9}.app-header-user{display:flex;align-items:center;gap:var(--space-3);font-size:var(--font-size-sm)}.app-header-avatar{width:32px;height:32px;border-radius:var(--radius-full);background-color:#0f172a26;display:flex;align-items:center;justify-content:center;font-weight:600}.app-header-links{display:flex;align-items:center;gap:var(--space-3)}.app-header-link{font-size:var(--font-size-sm);color:#e5e7eb;text-decoration:none;padding:var(--space-1) var(--space-2);border-radius:var(--radius-md)}.app-header-link-active{background-color:#0f172a2e;color:#fff}.app-main{max-width:1200px;margin:0 auto;padding:var(--space-4) var(--space-4) var(--space-8)}.app-main-narrow{max-width:960px}.page{display:flex;flex-direction:column;gap:var(--space-3)}.page-grid{display:grid;gap:var(--space-4)}@media (min-width: 768px){.page-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.page-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}}.admin-sidebar{position:fixed;left:0;top:var(--app-header-offset, 80px);bottom:0;width:260px;background:#fffffffa;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-right:1px solid rgba(229,231,235,.6);overflow-y:auto;z-index:999;transform:translate(-100%);transition:width .3s cubic-bezier(.4,0,.2,1),transform .3s cubic-bezier(.4,0,.2,1);box-shadow:4px 0 24px #00000008;max-height:calc(100vh - var(--app-header-offset, 80px))}.admin-sidebar::-webkit-scrollbar{width:6px}.admin-sidebar::-webkit-scrollbar-thumb{background-color:transparent;border-radius:10px}.admin-sidebar:hover::-webkit-scrollbar-thumb{background-color:#9ca3af80}.admin-sidebar-open{transform:translate(0)}.admin-sidebar-collapsed{width:80px}.admin-sidebar-collapsed .sidebar-item span:not(:first-child){display:none}.admin-sidebar-collapsed .sidebar-nav>div>button{padding:.75rem .5rem;justify-content:center}.admin-sidebar-collapsed .sidebar-nav>div>button>span:last-child{display:none}.sidebar-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background-color:#0f172a66;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:998;transition:opacity .3s ease}.sidebar-nav{padding:.75rem .5rem}.sidebar-item{display:flex;align-items:center;gap:.5rem;padding:.35rem .75rem;margin-bottom:.05rem;color:#4b5563;text-decoration:none;font-size:.85rem;font-weight:500;border-radius:.375rem;transition:all .2s cubic-bezier(.4,0,.2,1);position:relative}.sidebar-item:hover{background-color:#f3f4f6;color:#111827;transform:translate(4px)}.sidebar-item-active{background:linear-gradient(135deg,#4f46e51a,#6366f108);color:#4f46e5;font-weight:600;box-shadow:inset 0 0 0 1px #4f46e51a}.sidebar-item-active:hover{transform:none;background:linear-gradient(135deg,#4f46e526,#6366f10d)}.sidebar-item-active:before{content:"";position:absolute;left:-.75rem;top:15%;bottom:15%;width:4px;background:linear-gradient(to bottom,#4f46e5,#6366f1);border-radius:0 4px 4px 0}.admin-sidebar-collapsed .sidebar-item-active:before{left:-.25rem}.sidebar-group-title{display:flex;align-items:center;justify-content:space-between;padding:.35rem .75rem;margin-top:.15rem;background-color:transparent;border:none;cursor:pointer;font-size:.7rem;font-weight:700;color:#9ca3af;text-transform:uppercase;letter-spacing:.05em;width:100%;transition:color .2s ease}.sidebar-group-title:hover{color:#4b5563}.sidebar-collapse-btn{background:none;border:none;cursor:pointer;padding:.5rem;border-radius:.375rem;color:#6b7280;font-size:1rem;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.app-main-with-sidebar{margin-left:260px;transition:margin-left .3s ease}.app-main-sidebar-collapsed{margin-left:80px}.sidebar-collapse-btn:hover{background-color:#f3f4f6;color:#374151}.mobile-bottom-nav{position:fixed;bottom:0;left:0;right:0;background-color:#fff;border-top:1px solid #e5e7eb;display:flex;justify-content:space-around;align-items:center;padding:.5rem 0;z-index:1000;box-shadow:0 -2px 8px #0000001a}.mobile-bottom-nav__item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.25rem;padding:.5rem .25rem;min-width:56px;background:none;border:none;cursor:pointer;font-size:.75rem;font-weight:500;color:#6b7280;text-decoration:none;border-radius:.5rem;transition:color .15s ease,background-color .15s ease}.mobile-bottom-nav__item:hover{color:#374151;background-color:#4f46e50f}.mobile-bottom-nav__item--active,.mobile-nav-active{color:#4f46e5!important;font-weight:600!important}.mobile-bottom-nav__icon{font-size:1.375rem;line-height:1;display:block}@media (max-width: 1023px){.admin-sidebar{top:0;z-index:1001;max-height:100vh}.app-main-with-sidebar{margin-left:0}.sidebar-overlay{display:block}.app-main{padding-bottom:80px}}@media (min-width: 1024px){.admin-sidebar{transform:translate(0)!important;position:fixed}.admin-sidebar-collapsed{width:80px!important}.sidebar-overlay,.sidebar-toggle{display:none!important}.app-main-with-sidebar{margin-left:260px}.app-main-sidebar-collapsed{margin-left:80px}}@media (max-width: 767px){.app-shell{--app-header-offset: 72px}.app-header{flex-direction:row;align-items:center;justify-content:space-between;padding:var(--space-2) var(--space-4);gap:var(--space-2)}.app-main{padding-inline:var(--space-3);padding-bottom:80px}.app-header-title{font-size:1rem}.app-header-user{flex-wrap:nowrap;align-items:center;gap:var(--space-2)}.app-header-user-details{display:none}.mobile-bottom-nav{display:flex}}@media (min-width: 768px){.mobile-bottom-nav{display:none}}.app-shell--teacher{--teacher-sidebar-surface: #e2ebf6;--teacher-sidebar-border: #c9d8ee;--teacher-primary-brand: #1d4ed8;--teacher-primary-hover: #1e40af;--teacher-text-body: #0f172a;--teacher-text-muted: #5c6578;--teacher-subtitle: #5c6578;--teacher-avatar-bg: #93c5fd;--teacher-hover: rgba(29, 78, 216, .12);--teacher-hover-solid: #bfdbfe;--teacher-active-menu-bg: rgba(191, 219, 254, .88);--teacher-text: var(--teacher-text-body);--teacher-primary: var(--teacher-primary-brand);--teacher-primary-strong: #0c2a4a;--teacher-primary-soft: rgba(226, 235, 246, .96);--teacher-accent: #0284c7;--teacher-ink: var(--teacher-text-body);--teacher-sidebar-bg: var(--teacher-sidebar-surface);--teacher-header-gradient: linear-gradient( 118deg, #1e3a8a 0%, #1d4ed8 22%, #2563eb 48%, #3b82f6 78%, #60a5fa 100% );--teacher-surface-border: rgba(15, 23, 42, .1);--teacher-canvas: #dce8f4;--teacher-canvas-elevated: #e8f0f9;--teacher-card-shadow: 0 1px 2px rgba(15, 23, 42, .06), 0 6px 20px rgba(15, 23, 42, .07);--teacher-card-shadow-hover: 0 4px 12px rgba(15, 23, 42, .08), 0 16px 40px rgba(29, 78, 216, .12);--teacher-radius: 12px;--teacher-radius-lg: 14px;--teacher-font-page-title: 1.2rem;--teacher-font-card-title: 1rem;--teacher-font-subtitle: .875rem;--teacher-page-gap: 1.25rem;--color-secondary: var(--teacher-text-muted);--color-secondary-strong: var(--teacher-primary-brand);--teacher-hero-accent-enrollments: rgba(56, 189, 248, .55);--teacher-hero-accent-exams: rgba(99, 102, 241, .45);--teacher-hero-accent-completion: #fbbf24;--teacher-hero-name-stop-1: #7dd3fc;--teacher-hero-name-stop-2: #c4b5fd;--teacher-hero-name-stop-3: #fda4af}.app-shell--teacher.app-shell{background-color:var(--teacher-canvas-elevated);background-image:radial-gradient(ellipse 100% 75% at 8% -15%,rgba(96,165,250,.22) 0%,transparent 52%),radial-gradient(ellipse 85% 65% at 96% 8%,rgba(147,197,253,.2) 0%,transparent 48%),radial-gradient(ellipse 65% 45% at 48% 100%,rgba(203,213,225,.35) 0%,transparent 42%)}.app-shell--teacher .app-header{background:var(--teacher-header-gradient);color:var(--teacher-text-body);box-shadow:0 1px #ffffff40 inset,0 8px 28px #0f172a26,0 0 0 1px #0f172a0f}.app-shell--teacher .app-header-title,.app-shell--teacher .app-header-org{color:#f8fafc;font-weight:700;letter-spacing:-.02em;text-shadow:0 1px 2px rgba(15,23,42,.35)}.app-shell--teacher .app-header-org{opacity:1;font-weight:600;color:#f8fafcf5}.app-shell--teacher .app-header-user{color:#f8fafcd9}.app-shell--teacher .app-header-link{color:#f8fafcf2;font-weight:500;padding:.5rem .75rem;border-radius:var(--teacher-radius);transition:background-color .15s ease,color .15s ease}.app-shell--teacher .app-header-link:hover{background-color:#ffffff2e;color:#fff}.app-shell--teacher .app-header-link-active{background-color:#fffffff2;color:var(--teacher-primary-hover);font-weight:600;box-shadow:0 1px 4px #0f172a1f}.app-shell--teacher .app-header-avatar{background:#ffffffeb;color:var(--teacher-primary-hover);border:1px solid rgba(255,255,255,.45)}.app-shell--teacher .app-header-user .text-soft{color:#f8fafcbf!important}.app-shell--teacher .app-header .btn-ghost{color:#f8fafcf2}.app-shell--teacher .app-header .btn-ghost:hover:not(:disabled){background-color:#ffffff2e;color:#fff}.app-shell--teacher .app-header-logo{background:#ffffffeb!important}.app-shell--teacher button.sidebar-toggle{color:#f8fafc!important}.app-shell--teacher .admin-sidebar{background:linear-gradient(180deg,#eef4fb,#e2ebf6,#dbe4f0);border-right:1px solid var(--teacher-sidebar-border);box-shadow:2px 0 20px #0f172a14}.app-shell--teacher .sidebar-item{color:var(--teacher-text-body);border-radius:var(--teacher-radius)}.app-shell--teacher .sidebar-item:hover{background:var(--teacher-hover);color:var(--teacher-text-body);transform:translate(2px)}.app-shell--teacher .sidebar-item-active{background:var(--teacher-active-menu-bg);color:var(--teacher-primary-hover);font-weight:600;box-shadow:inset 0 0 0 1px #2563eb1f}.app-shell--teacher .sidebar-item-active:hover{background:#dbeafefa;transform:none}.app-shell--teacher .sidebar-item-active:before{background:linear-gradient(to bottom,#2563eb,#38bdf8)}.app-shell--teacher .sidebar-item-active.sidebar-item--realm-enrollments{background:linear-gradient(90deg,#e0f2fef2,#eff6ffd9);box-shadow:inset 0 0 0 1px #0ea5e959}.app-shell--teacher .sidebar-item-active.sidebar-item--realm-enrollments:before{background:linear-gradient(to bottom,#38bdf8,#0284c7)}.app-shell--teacher .sidebar-item-active.sidebar-item--realm-exams{background:linear-gradient(90deg,#ede9fef2,#f8fafcd9);box-shadow:inset 0 0 0 1px #6366f14d}.app-shell--teacher .sidebar-item-active.sidebar-item--realm-exams:before{background:linear-gradient(to bottom,#818cf8,#4f46e5)}.app-shell--teacher .sidebar-item-active.sidebar-item--realm-completion{background:linear-gradient(90deg,#fef3c7f2,#fff7edbf);box-shadow:inset 0 0 0 1px #ea580c4d}.app-shell--teacher .sidebar-item-active.sidebar-item--realm-completion:before{background:linear-gradient(to bottom,#fb923c,#c2410c)}.app-shell--teacher .sidebar-overlay{background-color:#0f172a66}.app-shell--teacher .app-main{background:transparent;min-height:calc(100vh - var(--app-header-offset, 80px));box-shadow:inset 0 1px #ffffffe6}.app-shell--teacher .mobile-bottom-nav{background:#f8fafcf7;border-top:1px solid rgba(15,23,42,.1);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 -4px 24px #0f172a14}.app-shell--teacher .mobile-nav-active{color:var(--teacher-primary-brand)!important;font-weight:600!important}.app-shell--teacher .mobile-bottom-nav__item{color:var(--teacher-text-muted)}.app-shell--teacher .mobile-bottom-nav__item:hover{color:var(--teacher-text-body);background-color:var(--teacher-hover)}.app-shell--teacher .mobile-bottom-nav__item--active{color:var(--teacher-primary-brand)!important}.app-shell--teacher .sidebar-collapse-btn:hover{background-color:var(--teacher-hover);color:var(--teacher-primary-brand)}.app-shell--teacher .page .page-header{position:relative;background:linear-gradient(98deg,#f1f5f9,#f8fafc 38%,#fff);border:1px solid var(--teacher-surface-border);border-radius:var(--teacher-radius-lg);margin:0 0 var(--teacher-page-gap) 0;padding:.85rem 1.15rem .85rem 1.2rem;box-shadow:inset 4px 0 #1d4ed8,var(--teacher-card-shadow);transition:box-shadow .2s ease,border-color .2s ease}.app-shell--teacher .page .page-header .page-header-title{font-size:var(--teacher-font-page-title);font-weight:700;letter-spacing:-.03em;color:var(--teacher-text-body);line-height:1.25}.app-shell--teacher .page{color:var(--teacher-text-body);gap:var(--teacher-page-gap)}.app-shell--teacher .teacher-realm{display:flex;flex-direction:column;gap:var(--teacher-page-gap);flex:1;min-width:0}.app-shell--teacher .teacher-realm .page-header{position:relative;overflow:hidden}.app-shell--teacher .teacher-realm .page-header:before{content:"";position:absolute;left:0;top:.25rem;bottom:.25rem;width:6px;border-radius:0 4px 4px 0;pointer-events:none}.app-shell--teacher .teacher-realm .page-header{position:relative;overflow:hidden;padding-right:4.25rem}.app-shell--teacher .teacher-realm .page-header:after{position:absolute;right:.85rem;top:50%;transform:translateY(-50%);font-size:2.4rem;line-height:1;opacity:.55;filter:saturate(1.05);pointer-events:none;z-index:0}.app-shell--teacher .teacher-realm .page-header .page-header-main,.app-shell--teacher .teacher-realm .page-header .page-header-actions{position:relative;z-index:1}.app-shell--teacher .teacher-realm--enrollments .page-header:before{background:linear-gradient(180deg,#38bdf8,#0ea5e9 45%,#0369a1);box-shadow:3px 0 18px #0ea5e98c}.app-shell--teacher .teacher-realm--enrollments .page-header{background:radial-gradient(110% 140% at 100% 0%,rgba(56,189,248,.18) 0%,transparent 55%),linear-gradient(118deg,#7dd3fc8c,#e0f2fef2 38%,#fff 78%);border-color:#0ea5e966;box-shadow:var(--teacher-card-shadow),inset 0 0 0 1px #ffffffb3}.app-shell--teacher .teacher-realm--enrollments .page-header:after{content:"👥"}.app-shell--teacher .teacher-realm--enrollments .page-header .page-header-title{color:#0c4a6e;letter-spacing:-.025em}.app-shell--teacher .teacher-realm--exams .page-header:before{background:linear-gradient(180deg,#a78bfa,#6366f1 45%,#4338ca);box-shadow:3px 0 18px #6366f180}.app-shell--teacher .teacher-realm--exams .page-header{background:radial-gradient(110% 140% at 100% 0%,rgba(167,139,250,.2) 0%,transparent 55%),linear-gradient(118deg,#c4b5fd8c,#ede9fef2 38%,#fff 80%);border-color:#6366f161;box-shadow:var(--teacher-card-shadow),inset 0 0 0 1px #ffffffb3}.app-shell--teacher .teacher-realm--exams .page-header:after{content:"📝"}.app-shell--teacher .teacher-realm--exams .page-header .page-header-title{color:#312e81;letter-spacing:-.025em}.app-shell--teacher .teacher-realm--completion .page-header:before{background:linear-gradient(180deg,#fbbf24,#f59e0b 45%,#b45309);box-shadow:3px 0 18px #d9770680}.app-shell--teacher .teacher-realm--completion .page-header{background:radial-gradient(110% 140% at 100% 0%,rgba(251,191,36,.22) 0%,transparent 55%),linear-gradient(118deg,#fbbf2473,#fef3c7f2 38%,#fff 80%);border-color:#d9770673;box-shadow:var(--teacher-card-shadow),inset 0 0 0 1px #ffffffa6}.app-shell--teacher .teacher-realm--completion .page-header:after{content:"🏁"}.app-shell--teacher .teacher-realm--completion .page-header .page-header-title{color:#7c2d12;letter-spacing:-.025em}.app-shell--teacher .teacher-realm--students .page-header:before{background:linear-gradient(180deg,#34d399,#10b981 45%,#047857);box-shadow:3px 0 18px #10b98180}.app-shell--teacher .teacher-realm--students .page-header{background:radial-gradient(110% 140% at 100% 0%,rgba(52,211,153,.2) 0%,transparent 55%),linear-gradient(118deg,#6ee7b780,#d1fae5f2 38%,#fff 80%);border-color:#10b98166;box-shadow:var(--teacher-card-shadow),inset 0 0 0 1px #ffffffb3}.app-shell--teacher .teacher-realm--students .page-header:after{content:"🎓"}.app-shell--teacher .teacher-realm--students .page-header .page-header-title{color:#065f46;letter-spacing:-.025em}.app-shell--teacher .teacher-realm--courses .page-header:before{background:linear-gradient(180deg,#fb7185,#f43f5e 45%,#be123c);box-shadow:3px 0 18px #f43f5e80}.app-shell--teacher .teacher-realm--courses .page-header{background:radial-gradient(110% 140% at 100% 0%,rgba(251,113,133,.2) 0%,transparent 55%),linear-gradient(118deg,#fda4af80,#ffe4e6f2 38%,#fff 80%);border-color:#f43f5e66;box-shadow:var(--teacher-card-shadow),inset 0 0 0 1px #ffffffb3}.app-shell--teacher .teacher-realm--courses .page-header:after{content:"📚"}.app-shell--teacher .teacher-realm--courses .page-header .page-header-title{color:#881337;letter-spacing:-.025em}@media (max-width: 600px){.app-shell--teacher .teacher-realm .page-header{padding-right:3.25rem}.app-shell--teacher .teacher-realm .page-header:after{font-size:1.85rem;right:.65rem;opacity:.45}}.app-shell--teacher .page.teacher-realm--enrollments .card,.app-shell--teacher .page .teacher-realm--exams .card,.app-shell--teacher .page .teacher-realm--completion .card,.app-shell--teacher .page.teacher-realm--students .card,.app-shell--teacher .page.teacher-realm--courses .card{transition:box-shadow .22s ease,transform .22s ease,border-color .22s ease}.app-shell--teacher .page.teacher-realm--enrollments .card{box-shadow:var(--teacher-card-shadow),inset 4px 0 #0ea5e9;border-color:#0ea5e940}.app-shell--teacher .page.teacher-realm--enrollments .card:hover{box-shadow:var(--teacher-card-shadow-hover),inset 4px 0 #0284c7;transform:translateY(-2px);border-color:#0ea5e966}.app-shell--teacher .page .teacher-realm--exams .card{box-shadow:var(--teacher-card-shadow),inset 4px 0 #6366f1;border-color:#6366f140}.app-shell--teacher .page .teacher-realm--exams .card:hover{box-shadow:var(--teacher-card-shadow-hover),inset 4px 0 #4f46e5;transform:translateY(-2px);border-color:#6366f161}.app-shell--teacher .page .teacher-realm--completion .card{box-shadow:var(--teacher-card-shadow),inset 4px 0 #ea580c;border-color:#d9770647}.app-shell--teacher .page .teacher-realm--completion .card:hover{box-shadow:var(--teacher-card-shadow-hover),inset 4px 0 #c2410c;transform:translateY(-2px);border-color:#ea580c6b}.app-shell--teacher .page.teacher-realm--students .card{box-shadow:var(--teacher-card-shadow),inset 4px 0 #10b981;border-color:#10b98140}.app-shell--teacher .page.teacher-realm--students .card:hover{box-shadow:var(--teacher-card-shadow-hover),inset 4px 0 #047857;transform:translateY(-2px);border-color:#10b9816b}.app-shell--teacher .page.teacher-realm--courses .card{box-shadow:var(--teacher-card-shadow),inset 4px 0 #f43f5e;border-color:#f43f5e40}.app-shell--teacher .page.teacher-realm--courses .card:hover{box-shadow:var(--teacher-card-shadow-hover),inset 4px 0 #be123c;transform:translateY(-2px);border-color:#f43f5e6b}@media (prefers-reduced-motion: reduce){.app-shell--teacher .page.teacher-realm--enrollments .card:hover,.app-shell--teacher .page .teacher-realm--exams .card:hover,.app-shell--teacher .page .teacher-realm--completion .card:hover,.app-shell--teacher .page.teacher-realm--students .card:hover,.app-shell--teacher .page.teacher-realm--courses .card:hover{transform:none}}.app-shell--teacher .teacher-realm--enrollments .btn-secondary{background:linear-gradient(180deg,#f0f9ff,#e0f2fe);color:#0369a1;border-color:#7dd3fc}.app-shell--teacher .teacher-realm--enrollments .btn-secondary:hover:not(:disabled){background:#bae6fd;border-color:#38bdf8}.app-shell--teacher .teacher-realm--enrollments .btn-ghost:hover:not(:disabled){background-color:#0ea5e924;color:#075985}.app-shell--teacher .teacher-realm--enrollments .btn-success{background-color:#3b82f6;border-color:#3b82f6;box-shadow:inset 0 1px #ffffff2e,0 1px 2px #0f172a14,0 6px 16px #3b82f647}.app-shell--teacher .teacher-realm--enrollments .btn-success:hover:not(:disabled){background-color:#2563eb;border-color:#2563eb}.app-shell--teacher .teacher-realm--exams .btn-secondary{background:linear-gradient(180deg,#faf5ff,#ede9fe);color:#4338ca;border-color:#c4b5fd}.app-shell--teacher .teacher-realm--exams .btn-secondary:hover:not(:disabled){background:#ddd6fe;border-color:#a78bfa}.app-shell--teacher .teacher-realm--exams .btn-ghost:hover:not(:disabled){background-color:#6366f124;color:#3730a3}.app-shell--teacher .teacher-realm--completion .btn-secondary{background:linear-gradient(180deg,#fffbeb,#fef3c7);color:#9a3412;border-color:#fbbf24}.app-shell--teacher .teacher-realm--completion .btn-secondary:hover:not(:disabled){background:#fde68a;border-color:#f59e0b}.app-shell--teacher .teacher-realm--completion .btn-ghost:hover:not(:disabled){background-color:#fb923c2e;color:#9a3412}.app-shell--teacher .teacher-realm--students .btn-secondary{background:linear-gradient(180deg,#ecfdf5,#d1fae5);color:#065f46;border-color:#6ee7b7}.app-shell--teacher .teacher-realm--students .btn-secondary:hover:not(:disabled){background:#a7f3d0;border-color:#34d399}.app-shell--teacher .teacher-realm--students .btn-ghost:hover:not(:disabled){background-color:#10b98124;color:#065f46}.app-shell--teacher .teacher-realm--courses .btn-secondary{background:linear-gradient(180deg,#fff1f2,#ffe4e6);color:#881337;border-color:#fda4af}.app-shell--teacher .teacher-realm--courses .btn-secondary:hover:not(:disabled){background:#fecdd3;border-color:#fb7185}.app-shell--teacher .teacher-realm--courses .btn-ghost:hover:not(:disabled){background-color:#f43f5e24;color:#881337}.app-shell--teacher .teacher-realm--enrollments .teacher-action-tab-key{border:1px solid rgba(14,165,233,.45)!important;background:linear-gradient(180deg,#fff,#f0f9ff)!important;color:#075985!important}.app-shell--teacher .teacher-realm--enrollments .teacher-action-tab-key--active{border:2px solid #0ea5e9!important;background:linear-gradient(180deg,#e0f2fe,#fff)!important;color:#0c4a6e!important;box-shadow:0 2px 10px #0ea5e938}.app-shell--teacher .teacher-realm--enrollments .teacher-action-tab-secondary{border:1px solid rgba(14,165,233,.2)!important;background:#fffffff2!important;color:#0369a1!important}.app-shell--teacher .teacher-realm--enrollments .teacher-action-tab-secondary--active{border:2px solid #38bdf8!important;background:#e0f2fed9!important;color:#0c4a6e!important}.app-shell--teacher .teacher-realm--enrollments .teacher-action-tab-key .teacher-work-tab-count{background:#0ea5e92e;color:#0369a1}.app-shell--teacher .teacher-realm--enrollments .teacher-action-tab-key--active .teacher-work-tab-count{background:#0ea5e947;color:#0c4a6e}.app-shell--teacher .teacher-realm--enrollments .teacher-action-tab-secondary .teacher-work-tab-count{background:#bae6fd8c;color:#0369a1}.app-shell--teacher .teacher-realm--enrollments .teacher-action-tab-secondary--active .teacher-work-tab-count{background:#0ea5e933;color:#0c4a6e}.app-shell--teacher .teacher-realm--exams .teacher-action-tab-key{border:1px solid rgba(129,140,248,.45)!important;background:linear-gradient(180deg,#fff,#faf5ff)!important;color:#4338ca!important}.app-shell--teacher .teacher-realm--exams .teacher-action-tab-key--active{border:2px solid #6366f1!important;background:linear-gradient(180deg,#ede9fe,#fff)!important;color:#312e81!important;box-shadow:0 2px 10px #6366f133}.app-shell--teacher .teacher-realm--exams .teacher-action-tab-secondary{border:1px solid rgba(129,140,248,.22)!important;background:#fffffff2!important;color:#4c1d95!important}.app-shell--teacher .teacher-realm--exams .teacher-action-tab-secondary--active{border:2px solid #8b5cf6!important;background:#ede9fee0!important;color:#312e81!important}.app-shell--teacher .teacher-realm--exams .teacher-action-tab-key .teacher-work-tab-count{background:#c4b5fd73;color:#5b21b6}.app-shell--teacher .teacher-realm--exams .teacher-action-tab-key--active .teacher-work-tab-count{background:#6366f138;color:#312e81}.app-shell--teacher .teacher-realm--exams .teacher-action-tab-secondary .teacher-work-tab-count{background:#ede9fee6;color:#6d28d9}.app-shell--teacher .teacher-realm--exams .teacher-action-tab-secondary--active .teacher-work-tab-count{background:#a78bfa59;color:#312e81}.app-shell--teacher .teacher-realm--completion .teacher-action-tab-key{border:1px solid rgba(217,119,6,.5)!important;background:linear-gradient(180deg,#fff,#fffbeb)!important;color:#78350f!important}.app-shell--teacher .teacher-realm--completion .teacher-action-tab-key--active{border:2px solid #ea580c!important;background:linear-gradient(180deg,#fde68a,#fffbeb)!important;color:#431407!important;box-shadow:0 2px 8px #ea580c33}.app-shell--teacher .teacher-realm--completion .teacher-action-tab-secondary{border:1px solid rgba(245,158,11,.35)!important;background:#fffffff5!important;color:#92400e!important}.app-shell--teacher .teacher-realm--completion .teacher-action-tab-secondary--active{border:2px solid #f59e0b!important;background:#fef3c7e6!important;color:#431407!important}.app-shell--teacher .teacher-realm--completion .teacher-action-tab-key .teacher-work-tab-count{background:#fbbf2459;color:#9a3412}.app-shell--teacher .teacher-realm--completion .teacher-action-tab-key--active .teacher-work-tab-count{background:#ea580c38;color:#431407}.app-shell--teacher .teacher-realm--completion .teacher-action-tab-secondary .teacher-work-tab-count{background:#fef3c7cc;color:#b45309}.app-shell--teacher .teacher-realm--completion .teacher-action-tab-secondary--active .teacher-work-tab-count{background:#fbbf2473;color:#431407}.app-shell--teacher .page .card{border-radius:var(--teacher-radius-lg);border:1px solid var(--teacher-surface-border);box-shadow:var(--teacher-card-shadow);background:linear-gradient(165deg,#fff,#f8fafc 55%,#f1f5f9);padding:1.15rem 1.25rem;transition:box-shadow .22s ease,transform .22s ease,border-color .22s ease}.app-shell--teacher .page .card:hover{box-shadow:var(--teacher-card-shadow-hover);transform:translateY(-2px);border-color:#2563eb38}.app-shell--teacher .page .card.card-hoverable:hover{border-color:#2563eb47}.app-shell--teacher .page .card.card-p-none{padding:0}@media (prefers-reduced-motion: reduce){.app-shell--teacher .page .card:hover{transform:none}}.app-shell--teacher .data-table-wrapper{position:relative;border-radius:var(--teacher-radius-lg);border:1px solid var(--teacher-surface-border);border-top:2px solid #3b82f6;background:linear-gradient(180deg,#f8fafc,#fff 14%);box-shadow:var(--teacher-card-shadow);overflow:hidden}.app-shell--teacher .data-table-badge{padding:.2rem .55rem;border-radius:999px;font-weight:600;background:#dbeafe;color:#1d4ed8}.app-shell--teacher .data-table-badge-active{background:#dbeafe;color:#1d4ed8}.app-shell--teacher .data-table-badge-inactive{background:#0f172a0f;color:var(--teacher-text-muted)}.app-shell--teacher .data-table thead tr{background:linear-gradient(180deg,#e2e8f0,#cbd5e1)}.app-shell--teacher .data-table th{color:#334155;font-weight:700;font-size:.72rem;letter-spacing:.05em;text-transform:uppercase;border-bottom-color:#0f172a1a}.app-shell--teacher .data-table td{color:var(--teacher-text-body);border-bottom-color:#0f172a0f}.app-shell--teacher .data-table tbody tr:nth-child(2n){background-color:#f1f5f9d9}.app-shell--teacher .data-table tbody tr:hover{background-color:#bfdbfe8c}.app-shell--teacher .page.teacher-realm--enrollments .data-table thead tr{background:linear-gradient(180deg,#e0f2fe,#bae6fd)}.app-shell--teacher .page.teacher-realm--enrollments .data-table tbody tr:hover{background-color:#7dd3fc59}.app-shell--teacher .page .teacher-realm--exams .data-table thead tr{background:linear-gradient(180deg,#e2e8f0,#cbd5e1)}.app-shell--teacher .page .teacher-realm--exams .data-table tbody tr:hover{background-color:#cbd5e18c}.app-shell--teacher .page .teacher-realm--completion .data-table thead tr{background:linear-gradient(180deg,#fde68a,#fcd34d)}.app-shell--teacher .page .teacher-realm--completion .data-table tbody tr:hover{background-color:#fed7aa8c}.app-shell--teacher .data-card,.app-shell--teacher .enrollment-card{position:relative;border-radius:var(--teacher-radius);border:1px solid var(--teacher-surface-border);box-shadow:0 1px 2px #0f172a0d;padding-left:1.05rem}.app-shell--teacher .data-card:before,.app-shell--teacher .enrollment-card:before{content:"";position:absolute;left:0;top:.55rem;bottom:.55rem;width:4px;border-radius:0 4px 4px 0;background:var(--teacher-primary-brand);opacity:.85}.app-shell--teacher .teacher-realm--enrollments .data-card:before,.app-shell--teacher .teacher-realm--enrollments .enrollment-card:before{background:linear-gradient(180deg,#38bdf8,#0284c7)}.app-shell--teacher .teacher-realm--exams .data-card:before,.app-shell--teacher .teacher-realm--exams .enrollment-card:before{background:linear-gradient(180deg,#a78bfa,#6366f1)}.app-shell--teacher .teacher-realm--completion .data-card:before,.app-shell--teacher .teacher-realm--completion .enrollment-card:before{background:linear-gradient(180deg,#fbbf24,#ea580c)}.app-shell--teacher .teacher-realm--students .data-card:before,.app-shell--teacher .teacher-realm--students .enrollment-card:before{background:linear-gradient(180deg,#34d399,#047857)}.app-shell--teacher .teacher-realm--courses .data-card:before,.app-shell--teacher .teacher-realm--courses .enrollment-card:before{background:linear-gradient(180deg,#fb7185,#be123c)}.app-shell--teacher .data-card--selected,.app-shell--teacher .enrollment-card--selected{border-color:#2563eb73;box-shadow:0 4px 14px #2563eb24}.app-shell--teacher .data-table-wrapper{scrollbar-width:thin;scrollbar-color:rgba(15,23,42,.25) transparent}.app-shell--teacher .data-table-wrapper::-webkit-scrollbar{height:8px;width:8px}.app-shell--teacher .data-table-wrapper::-webkit-scrollbar-track{background:transparent}.app-shell--teacher .data-table-wrapper::-webkit-scrollbar-thumb{background:#0f172a38;border-radius:999px}.app-shell--teacher .data-table-wrapper::-webkit-scrollbar-thumb:hover{background:#0f172a66}.app-shell--teacher .data-table thead th{position:sticky;top:0;z-index:2}@media (max-width: 768px){.app-shell--teacher .page .card>.data-table-wrapper,.app-shell--teacher .page .card>div>.data-table-wrapper{margin:-1.15rem -1.25rem;border-radius:0;border-left-width:0;border-right-width:0;border-top-width:0;border-bottom-width:0}.app-shell--teacher .data-table-wrapper{background:linear-gradient(to right,#fff 30%,#fff0),linear-gradient(to right,#fff0,#fff 70%) 100% 0,radial-gradient(farthest-side at 0 50%,#0f172a2e,#0f172a00),radial-gradient(farthest-side at 100% 50%,#0f172a2e,#0f172a00) 100% 0;background-repeat:no-repeat;background-color:#fff;background-size:36px 100%,36px 100%,14px 100%,14px 100%;background-attachment:local,local,scroll,scroll}.app-shell--teacher .data-table{font-size:.8125rem;min-width:100%}.app-shell--teacher .data-table th,.app-shell--teacher .data-table td{padding:.7rem;line-height:1.35}.app-shell--teacher .data-table thead th:first-child,.app-shell--teacher .data-table tbody td:first-child{position:sticky;left:0;z-index:1;background-color:#fff;box-shadow:1px 0 #0f172a0f}.app-shell--teacher .data-table thead th:first-child{z-index:3}.app-shell--teacher .data-table tbody tr:nth-child(2n) td:first-child{background-color:#f8fafc}.app-shell--teacher .data-table tbody tr:hover td:first-child{background-color:#eef2ff}.app-shell--teacher .page.teacher-realm--enrollments .data-table tbody tr:hover td:first-child{background-color:#e0f2fe}.app-shell--teacher .page .teacher-realm--exams .data-table tbody tr:hover td:first-child{background-color:#ede9fe}.app-shell--teacher .page .teacher-realm--completion .data-table tbody tr:hover td:first-child{background-color:#fef3c7}.app-shell--teacher .page.teacher-realm--students .data-table tbody tr:hover td:first-child{background-color:#d1fae5}.app-shell--teacher .page.teacher-realm--courses .data-table tbody tr:hover td:first-child{background-color:#ffe4e6}.app-shell--teacher .data-table td:last-child .btn,.app-shell--teacher .data-table td:last-child button{min-height:36px}.app-shell--teacher .data-table-toolbar{flex-direction:column;align-items:stretch;gap:.5rem}.app-shell--teacher .data-table-search{max-width:100%}}@media (max-width: 480px){.app-shell--teacher .data-table th,.app-shell--teacher .data-table td{padding:.6rem .55rem;font-size:.78rem}}.app-shell--teacher{--teacher-btn-primary: #3b82f6;--teacher-btn-primary-hover: #2563eb;--teacher-focus-ring: rgba(59, 130, 246, .32);--teacher-primary-glow: rgba(59, 130, 246, .22);--teacher-primary-glow-hover: rgba(37, 99, 235, .28)}.app-shell--teacher .btn{font-weight:600;letter-spacing:-.005em;transition:background-color .18s ease,color .18s ease,border-color .18s ease,box-shadow .18s ease,transform .12s ease}.app-shell--teacher .btn:focus-visible{outline:none;box-shadow:0 0 0 3px var(--teacher-focus-ring)}.app-shell--teacher .btn:active:not(:disabled){transform:translateY(1px)}.app-shell--teacher .btn-primary{background-color:var(--teacher-btn-primary);border-color:var(--teacher-btn-primary);color:#fff;box-shadow:inset 0 1px #ffffff29,0 1px 2px #0f172a14,0 6px 16px var(--teacher-primary-glow)}.app-shell--teacher .btn-primary:hover:not(:disabled),.app-shell--teacher .btn-primary:not(:disabled):hover{background-color:var(--teacher-btn-primary-hover);border-color:var(--teacher-btn-primary-hover);box-shadow:inset 0 1px #ffffff2e,0 2px 4px #0f172a1a,0 10px 22px var(--teacher-primary-glow-hover);transform:translateY(-1px)}.app-shell--teacher .btn-primary:active:not(:disabled){transform:translateY(0);box-shadow:inset 0 2px 4px #0f172a2e,0 1px 1px #0f172a0f}.app-shell--teacher .btn-secondary{background:linear-gradient(180deg,#f8fafc,#eff6ff);color:#1e3a8a;border-color:#bfdbfe;box-shadow:inset 0 1px #fff9,0 1px 1px #0f172a0a}.app-shell--teacher .btn-secondary:hover:not(:disabled){background:linear-gradient(180deg,#eff6ff,#dbeafe);border-color:#93c5fd;color:#1e3a8a}.app-shell--teacher .btn-ghost{background-color:transparent;color:var(--teacher-text-body);border-color:transparent}.app-shell--teacher .btn-ghost:hover:not(:disabled){background-color:#2563eb14;color:var(--teacher-primary-brand)}.app-shell--teacher .btn-success{background-color:#10b981;border-color:#10b981;color:#fff;box-shadow:inset 0 1px #ffffff2e,0 1px 2px #0f172a14,0 6px 16px #10b98142}.app-shell--teacher .btn-success:hover:not(:disabled){background-color:#059669;border-color:#059669;box-shadow:inset 0 1px #fff3,0 2px 4px #0f172a1a,0 10px 22px #05966952;transform:translateY(-1px)}.app-shell--teacher .btn-success:active:not(:disabled){transform:translateY(0);box-shadow:inset 0 2px 4px #0f172a2e,0 1px 1px #0f172a0f}.app-shell--teacher .btn-danger{background-color:#f87171;border-color:#f87171;color:#fff;box-shadow:inset 0 1px #ffffff2e,0 1px 2px #0f172a14,0 6px 16px #f8717142}.app-shell--teacher .btn-danger:hover:not(:disabled){background-color:#ef4444;border-color:#ef4444;box-shadow:inset 0 1px #fff3,0 2px 4px #0f172a1a,0 10px 22px #ef444452;transform:translateY(-1px)}.app-shell--teacher .btn-danger:active:not(:disabled){transform:translateY(0);box-shadow:inset 0 2px 4px #0f172a2e,0 1px 1px #0f172a0f}.app-shell--teacher .teacher-realm--enrollments{--teacher-btn-primary: #38bdf8;--teacher-btn-primary-hover: #0ea5e9;--teacher-focus-ring: rgba(56, 189, 248, .35);--teacher-primary-glow: rgba(56, 189, 248, .26);--teacher-primary-glow-hover: rgba(14, 165, 233, .34)}.app-shell--teacher .teacher-realm--exams{--teacher-btn-primary: #818cf8;--teacher-btn-primary-hover: #6366f1;--teacher-focus-ring: rgba(129, 140, 248, .38);--teacher-primary-glow: rgba(129, 140, 248, .28);--teacher-primary-glow-hover: rgba(99, 102, 241, .36)}.app-shell--teacher .teacher-realm--completion{--teacher-btn-primary: #fb923c;--teacher-btn-primary-hover: #f97316;--teacher-focus-ring: rgba(251, 146, 60, .4);--teacher-primary-glow: rgba(251, 146, 60, .28);--teacher-primary-glow-hover: rgba(249, 115, 22, .36)}.app-shell--teacher .teacher-realm--students{--teacher-btn-primary: #34d399;--teacher-btn-primary-hover: #10b981;--teacher-focus-ring: rgba(52, 211, 153, .4);--teacher-primary-glow: rgba(52, 211, 153, .28);--teacher-primary-glow-hover: rgba(16, 185, 129, .36)}.app-shell--teacher .teacher-realm--courses{--teacher-btn-primary: #fb7185;--teacher-btn-primary-hover: #f43f5e;--teacher-focus-ring: rgba(251, 113, 133, .4);--teacher-primary-glow: rgba(251, 113, 133, .28);--teacher-primary-glow-hover: rgba(244, 63, 94, .36)}.app-shell--teacher .page.teacher-dashboard-page>.page-header{position:relative;overflow:hidden;display:flex;align-items:center;gap:.75rem;margin-bottom:.35rem;padding:.75rem 1.1rem .8rem 1.15rem;border:1px solid var(--teacher-surface-border);border-radius:var(--teacher-radius-lg);background:linear-gradient(118deg,#f1f5f9,#e0f2fe 28%,#bfdbfe 58%,#60a5fa);box-shadow:inset 4px 0 #1e40af,0 1px #ffffff59 inset,0 10px 28px #0f172a1a,0 0 0 1px #ffffff59;transition:box-shadow .2s ease,border-color .2s ease}.app-shell--teacher .page.teacher-dashboard-page>.page-header:hover{box-shadow:inset 4px 0 #2563eb,0 1px #ffffff73 inset,0 14px 36px #0f172a1f,0 0 0 1px #ffffff73;border-color:#0f172a1f}.app-shell--teacher .page.teacher-dashboard-page>.page-header:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse 90% 100% at 0% 0%,rgba(255,255,255,.55) 0%,transparent 45%),radial-gradient(ellipse 80% 90% at 100% 100%,rgba(96,165,250,.2) 0%,transparent 50%);pointer-events:none;z-index:0}.app-shell--teacher .page.teacher-dashboard-page>.page-header:after{content:"";position:absolute;left:.65rem;right:.65rem;bottom:.35rem;height:2px;border-radius:999px;background:linear-gradient(90deg,transparent 0%,rgba(37,99,235,.25) 20%,rgba(14,165,233,.45) 50%,rgba(129,140,248,.3) 80%,transparent 100%);opacity:.95;pointer-events:none;z-index:0}.app-shell--teacher .page.teacher-dashboard-page>.page-header .page-header-main,.app-shell--teacher .page.teacher-dashboard-page>.page-header .page-header-actions{position:relative;z-index:1}.app-shell--teacher .page.teacher-dashboard-page>.page-header .page-header-title{margin:0;font-size:1.1rem;font-weight:700;letter-spacing:-.035em;line-height:1.2;color:#0f172a;text-shadow:0 1px 0 rgba(255,255,255,.45)}.teacher-dashboard-section{margin-top:.15rem}.teacher-dashboard-section__title{margin:0 0 .65rem;font-size:.6875rem;font-weight:700;letter-spacing:.11em;text-transform:uppercase;color:#475569}.app-shell--teacher .page .heading-m{font-weight:700;letter-spacing:-.02em;color:var(--teacher-primary-strong)}.teacher-dashboard-hero{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:stretch;gap:1rem;overflow:hidden;border-radius:var(--teacher-radius-lg);padding:1.1rem 1.2rem 1.15rem;margin-bottom:0;background:radial-gradient(120% 140% at 0% 0%,rgba(56,189,248,.18) 0%,transparent 55%),radial-gradient(140% 120% at 100% 100%,rgba(168,85,247,.22) 0%,transparent 60%),linear-gradient(118deg,#0b1220,#111c3a,#1d2c63 60%,#243a8c);border:1px solid rgba(148,163,184,.18);box-shadow:0 18px 40px #0f172a47,inset 0 1px #ffffff0f;color:#e2e8f0;isolation:isolate}.teacher-dashboard-hero__main{position:relative;z-index:1;display:flex;flex-direction:column;gap:.35rem;min-width:0}.teacher-dashboard-hero__eyebrow{display:inline-flex;align-self:flex-start;align-items:center;gap:.4rem;padding:.2rem .65rem;font-size:.65rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#cbd5f5;background:#ffffff14;border:1px solid rgba(255,255,255,.14);border-radius:999px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.teacher-dashboard-hero__greeting{margin:.15rem 0 0;font-size:1.55rem;font-weight:700;letter-spacing:-.03em;line-height:1.15;color:#f8fafc;text-shadow:0 1px 2px rgba(2,6,23,.45)}.teacher-dashboard-hero__name{background:linear-gradient(95deg,var(--teacher-hero-name-stop-1) 0%,var(--teacher-hero-name-stop-2) 55%,var(--teacher-hero-name-stop-3) 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent}.teacher-dashboard-hero__lede{margin:0;font-size:.9rem;line-height:1.55;color:#e2e8f0db;max-width:42rem}.teacher-dashboard-hero__chips{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:.3rem}.teacher-dashboard-hero__chip{display:inline-flex;align-items:center;gap:.4rem;padding:.28rem .7rem;font-size:.72rem;font-weight:600;letter-spacing:.01em;color:#e0e7ff;background:#ffffff12;border:1px solid rgba(148,163,184,.28);border-radius:999px}.teacher-dashboard-hero__chip--pending{color:#fde68a;background:#fbbf241f;border-color:#fbbf2466}.teacher-dashboard-hero__chip-dot{width:.45rem;height:.45rem;border-radius:999px;background:var(--teacher-hero-accent-completion);box-shadow:0 0 0 3px #fbbf2440}.teacher-dashboard-hero__decor{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:0;overflow:hidden}.teacher-dashboard-hero__orb{position:absolute;border-radius:999px;filter:blur(40px);opacity:.55}.teacher-dashboard-hero__orb--a{width:22rem;height:22rem;right:-6rem;top:-8rem;background:radial-gradient(circle,var(--teacher-hero-accent-enrollments) 0%,transparent 70%)}.teacher-dashboard-hero__orb--b{width:18rem;height:18rem;right:3rem;bottom:-7rem;background:radial-gradient(circle,var(--teacher-hero-accent-exams) 0%,transparent 70%)}.teacher-dashboard-hero__grid{position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(rgba(148,163,184,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(148,163,184,.06) 1px,transparent 1px);background-size:36px 36px;-webkit-mask-image:radial-gradient(ellipse 60% 60% at 75% 50%,#000 30%,transparent 75%);mask-image:radial-gradient(ellipse 60% 60% at 75% 50%,#000 30%,transparent 75%)}@media (max-width: 640px){.teacher-dashboard-hero{padding:1.1rem 1.1rem 1.2rem}.teacher-dashboard-hero__greeting{font-size:1.25rem}.teacher-dashboard-hero__orb--a{width:14rem;height:14rem;right:-5rem;top:-5rem}.teacher-dashboard-hero__orb--b{display:none}}.app-shell--teacher .teacher-dashboard-error{padding:.5rem .75rem;margin-bottom:0;font-size:.85rem;color:#b91c1c;border-radius:var(--teacher-radius);border:1px solid rgba(185,28,28,.2);background:#fef2f2d9}.teacher-dashboard-metric-group{margin-bottom:.55rem}.teacher-dashboard-metric-group__head{display:flex;align-items:center;justify-content:space-between;gap:.55rem;margin-bottom:.5rem}.teacher-dashboard-metric-group__title{margin:0;font-size:.86rem;font-weight:700;letter-spacing:.01em;color:#1e293b}.teacher-dashboard-metric-group__tag{display:inline-flex;align-items:center;padding:.15rem .55rem;border-radius:999px;background:#0ea5e924;color:#075985;font-size:.66rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.teacher-dashboard-metric-group__tag--info{background:#64748b24;color:#334155}.teacher-dashboard-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.85rem;margin-bottom:0;background:transparent;border:none;box-shadow:none}.teacher-dashboard-metrics--pending{grid-template-columns:repeat(2,minmax(0,1fr))}.teacher-dashboard-metric{position:relative;display:flex;align-items:center;gap:.85rem;padding:.95rem 1.05rem;background:linear-gradient(155deg,#fff,#f8fafc);border:1px solid var(--teacher-surface-border);border-radius:var(--teacher-radius-lg);box-shadow:var(--teacher-card-shadow);overflow:hidden;transition:box-shadow .22s ease,transform .22s ease,border-color .22s ease}.teacher-dashboard-metric:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--metric-tint, transparent);opacity:.85;z-index:0;pointer-events:none}.teacher-dashboard-metric>*{position:relative;z-index:1}.teacher-dashboard-metric:hover{transform:translateY(-2px);box-shadow:var(--teacher-card-shadow-hover);border-color:var(--metric-border-hover, rgba(37, 99, 235, .28))}@media (prefers-reduced-motion: reduce){.teacher-dashboard-metric:hover{transform:none}}.teacher-dashboard-metric__icon{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:2.6rem;height:2.6rem;font-size:1.2rem;border-radius:.85rem;background:var(--metric-icon-bg, rgba(37, 99, 235, .12));color:var(--metric-icon-color, #1d4ed8);box-shadow:inset 0 1px #fff9,0 1px 2px #0f172a14}.teacher-dashboard-metric__body{display:flex;flex-direction:column;gap:.1rem;min-width:0}.teacher-dashboard-metric__label{font-size:.625rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--teacher-subtitle);line-height:1.2}.teacher-dashboard-metric__value{font-size:1.45rem;font-weight:800;font-variant-numeric:tabular-nums;line-height:1.1;letter-spacing:-.035em;color:var(--metric-value-color, #0f172a)}.teacher-dashboard-metric__hint{font-size:.78rem;color:var(--teacher-subtitle);line-height:1.35}.teacher-dashboard-metric--pending-total{--metric-tint: linear-gradient(135deg, rgba(56, 189, 248, .2) 0%, rgba(99, 102, 241, .11) 55%, rgba(255, 255, 255, 0) 90%);--metric-icon-bg: linear-gradient(135deg, #0284c7 0%, #4f46e5 100%);--metric-icon-color: #ffffff;--metric-value-color: #1e3a8a;--metric-border-hover: rgba(59, 130, 246, .45)}.teacher-dashboard-metric--pending-enrollments{--metric-tint: linear-gradient(135deg, rgba(125, 211, 252, .18) 0%, rgba(255, 255, 255, 0) 65%);--metric-icon-bg: linear-gradient(135deg, #38bdf8 0%, #0284c7 100%);--metric-icon-color: #ffffff;--metric-value-color: #075985;--metric-border-hover: rgba(14, 165, 233, .4)}.teacher-dashboard-metric--pending-exams{--metric-tint: linear-gradient(135deg, rgba(129, 140, 248, .18) 0%, rgba(255, 255, 255, 0) 65%);--metric-icon-bg: linear-gradient(135deg, #818cf8 0%, #6366f1 100%);--metric-icon-color: #ffffff;--metric-value-color: #3730a3;--metric-border-hover: rgba(99, 102, 241, .4)}.teacher-dashboard-metric--students{--metric-tint: linear-gradient(135deg, rgba(52, 211, 153, .16) 0%, rgba(255, 255, 255, 0) 68%);--metric-icon-bg: linear-gradient(135deg, #34d399 0%, #10b981 100%);--metric-icon-color: #ffffff;--metric-value-color: #065f46;--metric-border-hover: rgba(16, 185, 129, .4)}.teacher-dashboard-metric--courses{--metric-tint: linear-gradient(135deg, rgba(251, 191, 36, .16) 0%, rgba(255, 255, 255, 0) 68%);--metric-icon-bg: linear-gradient(135deg, #fbbf24 0%, #f59e0b 100%);--metric-icon-color: #ffffff;--metric-value-color: #9a3412;--metric-border-hover: rgba(217, 119, 6, .42)}.teacher-dashboard-info-strip{display:grid;grid-template-columns:.8fr 1.2fr;gap:.6rem;margin-bottom:.75rem}.teacher-dashboard-info-strip__item{display:flex;flex-direction:column;gap:.15rem;padding:.55rem .75rem;border-radius:.7rem;border:1px solid rgba(148,163,184,.22);background:linear-gradient(180deg,#ffffffeb,#f8fafceb)}.teacher-dashboard-info-strip__item--courses{border-color:#0ea5e93d}.teacher-dashboard-info-strip__label{font-size:.64rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:#64748b}.teacher-dashboard-info-strip__value{font-size:.94rem;font-weight:700;color:#0f172a;line-height:1.25}.teacher-dashboard-info-strip__value--summary{font-size:.82rem;font-weight:600;color:#334155}@media (max-width: 900px){.teacher-dashboard-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.teacher-dashboard-metrics--pending{grid-template-columns:1fr}.teacher-dashboard-metric-group__head{align-items:flex-start;flex-direction:column}.teacher-dashboard-info-strip{grid-template-columns:1fr}}@media (max-width: 520px){.teacher-dashboard-metrics{grid-template-columns:1fr;gap:.65rem}}.teacher-dashboard-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem;align-items:stretch}.teacher-dashboard-card-grid--two{grid-template-columns:repeat(2,1fr)}@media (max-width: 900px){.teacher-dashboard-card-grid,.teacher-dashboard-card-grid--two{grid-template-columns:1fr}}.teacher-dashboard-card{position:relative;display:flex;flex-direction:column;gap:.4rem;min-height:9rem;background:var(--card-bg, linear-gradient(160deg, #ffffff 0%, #f8fafc 100%));border:1px solid var(--card-border, var(--teacher-surface-border));border-radius:var(--teacher-radius-lg);padding:1.6rem 1.2rem 1.05rem;box-shadow:var(--teacher-card-shadow);transition:border-color .22s ease,box-shadow .22s ease,transform .22s ease;overflow:hidden;isolation:isolate}.teacher-dashboard-card:hover{border-color:var(--card-border-hover, rgba(37, 99, 235, .32));box-shadow:var(--teacher-card-shadow-hover);transform:translateY(-3px)}@media (prefers-reduced-motion: reduce){.teacher-dashboard-card:hover{transform:none}.teacher-dashboard-card__cta:after{transition:none}}.teacher-dashboard-card:before{content:"";position:absolute;top:0;left:0;right:0;height:6px;background:var(--card-accent, linear-gradient(90deg, #bae6fd 0%, #60a5fa 45%, #2563eb 100%));border-radius:var(--teacher-radius-lg) var(--teacher-radius-lg) 0 0;pointer-events:none;z-index:1}.teacher-dashboard-card:after{content:"";position:absolute;top:6px;right:0;bottom:0;left:0;background:var(--card-glow, transparent);pointer-events:none;z-index:0}.teacher-dashboard-card>*{position:relative;z-index:1}.teacher-dashboard-card__icon{display:inline-flex;align-items:center;justify-content:center;width:2.6rem;height:2.6rem;margin-bottom:.1rem;font-size:1.3rem;border-radius:.85rem;background:var(--card-icon-bg, linear-gradient(135deg, #60a5fa 0%, #2563eb 100%));color:var(--card-icon-color, #ffffff);box-shadow:inset 0 1px #fff9,0 6px 16px var(--card-icon-shadow, rgba(37, 99, 235, .25))}.teacher-dashboard-card__icon--muted{background:linear-gradient(135deg,#e2e8f0,#cbd5e1);color:#475569;box-shadow:inset 0 1px #ffffffb3,0 4px 10px #0f172a14}.teacher-dashboard-card--muted{--card-bg: linear-gradient(160deg, #ffffff 0%, #f1f5f9 100%);--card-accent: linear-gradient(90deg, #e2e8f0 0%, #94a3b8 100%);--card-glow: none;--card-border-hover: rgba(100, 116, 139, .32)}.teacher-dashboard-card--realm-enrollments{--card-bg: linear-gradient(155deg, #ffffff 0%, #f0f9ff 60%, #e0f2fe 100%);--card-border: rgba(14, 165, 233, .22);--card-border-hover: rgba(14, 165, 233, .45);--card-accent: linear-gradient(90deg, #7dd3fc 0%, #0ea5e9 50%, #0369a1 100%);--card-glow: radial-gradient(120% 80% at 100% 100%, rgba(14, 165, 233, .12) 0%, transparent 60%);--card-icon-bg: linear-gradient(135deg, #38bdf8 0%, #0284c7 100%);--card-icon-shadow: rgba(14, 165, 233, .35)}.teacher-dashboard-card--realm-exams{--card-bg: linear-gradient(155deg, #ffffff 0%, #f5f3ff 60%, #ede9fe 100%);--card-border: rgba(99, 102, 241, .22);--card-border-hover: rgba(99, 102, 241, .45);--card-accent: linear-gradient(90deg, #c4b5fd 0%, #818cf8 50%, #4f46e5 100%);--card-glow: radial-gradient(120% 80% at 100% 100%, rgba(129, 140, 248, .14) 0%, transparent 60%);--card-icon-bg: linear-gradient(135deg, #a78bfa 0%, #6366f1 100%);--card-icon-shadow: rgba(99, 102, 241, .35)}.teacher-dashboard-card--realm-completion{--card-bg: linear-gradient(155deg, #ffffff 0%, #fffbeb 60%, #fef3c7 100%);--card-border: rgba(217, 119, 6, .25);--card-border-hover: rgba(217, 119, 6, .5);--card-accent: linear-gradient(90deg, #fde047 0%, #fb923c 50%, #ea580c 100%);--card-glow: radial-gradient(120% 80% at 100% 100%, rgba(251, 146, 60, .16) 0%, transparent 60%);--card-icon-bg: linear-gradient(135deg, #fbbf24 0%, #ea580c 100%);--card-icon-shadow: rgba(234, 88, 12, .35)}.teacher-dashboard-card--realm-students{--card-bg: linear-gradient(155deg, #ffffff 0%, #ecfdf5 60%, #d1fae5 100%);--card-border: rgba(16, 185, 129, .22);--card-border-hover: rgba(16, 185, 129, .45);--card-accent: linear-gradient(90deg, #6ee7b7 0%, #10b981 50%, #047857 100%);--card-glow: radial-gradient(120% 80% at 100% 100%, rgba(16, 185, 129, .14) 0%, transparent 60%);--card-icon-bg: linear-gradient(135deg, #34d399 0%, #047857 100%);--card-icon-shadow: rgba(16, 185, 129, .35)}.teacher-dashboard-card--realm-courses{--card-bg: linear-gradient(155deg, #ffffff 0%, #fff1f2 60%, #ffe4e6 100%);--card-border: rgba(244, 63, 94, .22);--card-border-hover: rgba(244, 63, 94, .45);--card-accent: linear-gradient(90deg, #fda4af 0%, #f43f5e 50%, #be123c 100%);--card-glow: radial-gradient(120% 80% at 100% 100%, rgba(244, 63, 94, .14) 0%, transparent 60%);--card-icon-bg: linear-gradient(135deg, #fb7185 0%, #be123c 100%);--card-icon-shadow: rgba(244, 63, 94, .35)}.page.teacher-dashboard-page .teacher-dashboard-card--realm-enrollments .teacher-dashboard-card__cta{color:#0284c7}.page.teacher-dashboard-page .teacher-dashboard-card--realm-enrollments .teacher-dashboard-card__cta:hover{color:#0369a1}.page.teacher-dashboard-page .teacher-dashboard-card--realm-exams .teacher-dashboard-card__cta{color:#4f46e5}.page.teacher-dashboard-page .teacher-dashboard-card--realm-exams .teacher-dashboard-card__cta:hover{color:#4338ca}.page.teacher-dashboard-page .teacher-dashboard-card--realm-completion .teacher-dashboard-card__cta{color:#c2410c}.page.teacher-dashboard-page .teacher-dashboard-card--realm-completion .teacher-dashboard-card__cta:hover{color:#7c2d12}.page.teacher-dashboard-page .teacher-dashboard-card--realm-completion .teacher-dashboard-card__cta:focus-visible{outline-color:#ea580c8c}.page.teacher-dashboard-page .teacher-dashboard-card--realm-students .teacher-dashboard-card__cta{color:#047857}.page.teacher-dashboard-page .teacher-dashboard-card--realm-students .teacher-dashboard-card__cta:hover{color:#065f46}.page.teacher-dashboard-page .teacher-dashboard-card--realm-students .teacher-dashboard-card__cta:focus-visible{outline-color:#10b9818c}.page.teacher-dashboard-page .teacher-dashboard-card--realm-courses .teacher-dashboard-card__cta{color:#be123c}.page.teacher-dashboard-page .teacher-dashboard-card--realm-courses .teacher-dashboard-card__cta:hover{color:#881337}.page.teacher-dashboard-page .teacher-dashboard-card--realm-courses .teacher-dashboard-card__cta:focus-visible{outline-color:#f43f5e8c}.teacher-dashboard-card__title{margin:0 0 .4rem;font-size:var(--teacher-font-card-title);font-weight:600;color:var(--teacher-text-body);letter-spacing:-.02em}.teacher-dashboard-card__desc{margin:0 0 .5rem;font-size:var(--teacher-font-subtitle);line-height:1.5;color:var(--teacher-subtitle);flex:1}.teacher-dashboard-card__cta{display:inline-flex;align-items:center;align-self:flex-start;margin-top:auto;padding-top:.5rem;font-size:var(--teacher-font-subtitle);font-weight:600;color:var(--teacher-primary-brand);text-decoration:none;border-radius:var(--teacher-radius);transition:color .15s ease}.teacher-dashboard-card__cta:after{content:"→";margin-left:.35rem;font-weight:500;opacity:.65;transition:transform .15s ease,opacity .15s ease}.teacher-dashboard-card__cta:hover{color:var(--teacher-primary-hover);text-decoration:none}.teacher-dashboard-card__cta:hover:after{transform:translate(3px);opacity:1}.teacher-dashboard-card__cta:focus-visible{outline:2px solid rgba(37,99,235,.45);outline-offset:2px}.teacher-dashboard-card__cta--muted{color:var(--teacher-subtitle)}.teacher-dashboard-card__cta--muted:hover{color:var(--teacher-primary-hover)}.teacher-dashboard-card__cta--muted:after{opacity:.5}.page.teacher-dashboard-page .teacher-dashboard-card{min-height:0}.teacher-exam-tab-base{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1 1 8.5rem;min-height:2.65rem;padding:.45rem .75rem;border-radius:var(--teacher-radius);font-weight:700;font-size:.8rem;cursor:pointer;color:inherit;text-align:center}.teacher-exam-tab-base--lg{flex:1 1 10rem;min-height:2.75rem;font-size:.85rem}.teacher-action-tab-key{border:1px solid rgba(15,23,42,.1)!important;background:linear-gradient(180deg,#fff,#f8fafc)!important;box-shadow:0 1px 2px #0f172a0d;color:var(--teacher-text-muted)!important}.teacher-action-tab-key--active{border:2px solid #1d4ed8!important;background:linear-gradient(180deg,#fff,#eff6ff)!important;color:var(--teacher-text-body)!important;box-shadow:0 2px 8px #1d4ed826}.teacher-action-tab-secondary{border:1px solid rgba(15,23,42,.08)!important;background:#ffffff8c!important;color:var(--teacher-text-muted)!important}.teacher-action-tab-secondary--active{border:2px solid #0ea5e9!important;background:linear-gradient(180deg,#fff,#e0f2fe)!important;color:var(--teacher-text-body)!important}.teacher-work-tabstrip{margin-bottom:var(--teacher-page-gap);padding:.4rem;border-radius:var(--teacher-radius-lg);background:linear-gradient(180deg,#e2e8f0,#f1f5f9);border:1px solid rgba(15,23,42,.08);box-shadow:inset 0 1px #ffffffa6}.teacher-work-tablist{display:flex;flex-wrap:nowrap;gap:.5rem;align-items:stretch;min-height:2.75rem;overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:2px}.teacher-work-tablist .teacher-exam-tab-base{flex:0 0 auto;flex-direction:row;flex-wrap:wrap;justify-content:center;gap:0;white-space:nowrap}.teacher-work-tab-count{margin-left:.35rem;display:inline-flex;align-items:center;justify-content:center;min-width:1.35rem;padding:.12rem .45rem;font-size:.6875rem;font-weight:700;line-height:1.1;border-radius:999px;background:#eff6fff2;color:var(--teacher-text-muted)}.teacher-action-tab-key .teacher-work-tab-count{background:#bfdbfebf;color:#1d4ed8}.teacher-action-tab-key--active .teacher-work-tab-count{background:#2563eb26;color:var(--teacher-text-body)}.teacher-action-tab-secondary .teacher-work-tab-count{background:#eff6ffd9;color:var(--teacher-text-muted)}.teacher-action-tab-secondary--active .teacher-work-tab-count{background:#0ea5e92e;color:#075985}.app-shell--teacher .page.teacher-courses-page{gap:var(--space-3, .75rem)}.app-shell--teacher .page.teacher-courses-page>.page-header{margin-bottom:.25rem;padding:.85rem 1rem}.app-shell--teacher .page.teacher-courses-page>.page-header .page-header-title{font-size:1.2rem}.teacher-courses-lede{margin:0 0 .35rem;max-width:40rem;font-size:.8125rem;line-height:1.45;color:var(--teacher-text-muted)}.teacher-courses-summary{display:flex;flex-wrap:wrap;gap:.5rem;margin:.35rem 0 .15rem}.teacher-courses-summary__item{display:flex;flex-direction:column;gap:.1rem;min-width:5.5rem;padding:.45rem .75rem;border-radius:var(--teacher-radius);border:1px solid var(--teacher-surface-border);background:linear-gradient(135deg,#fff,#eff6ffd9);box-shadow:var(--teacher-card-shadow)}.teacher-courses-summary__label{font-size:.625rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--teacher-text-muted)}.teacher-courses-summary__value{font-size:1.125rem;font-weight:700;letter-spacing:-.02em;color:var(--teacher-primary-strong);font-variant-numeric:tabular-nums}.teacher-courses-section{margin-top:.65rem}.teacher-courses-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.65rem}.teacher-course-card{position:relative;border-radius:var(--teacher-radius-lg);border:1px solid var(--teacher-surface-border);background:linear-gradient(118deg,#fff,#eff6ffa6);box-shadow:var(--teacher-card-shadow);overflow:hidden}.teacher-course-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:linear-gradient(180deg,#7dd3fc,#2563eb)}.teacher-course-card__head{padding:.85rem 1rem .55rem 1.1rem}.teacher-course-card__title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:.65rem}.teacher-course-card__title{margin:0;font-size:1rem;font-weight:600;letter-spacing:-.02em;color:var(--teacher-primary-strong);line-height:1.3}.teacher-course-card__meta{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.45rem}.teacher-course-chip{font-size:.6875rem;font-weight:600;color:var(--teacher-text-muted);padding:.15rem .45rem;border-radius:999px;background:#eff6ffe6;border:1px solid rgba(15,23,42,.08)}.teacher-course-chip--code{color:#1e40af;background:#dbeafed9;border-color:#2563eb38}.teacher-course-card__levels{display:flex;flex-direction:column;gap:.35rem;padding:.55rem 1rem .85rem 1.1rem;border-top:1px solid rgba(15,23,42,.08);background:#ffffffb8}.teacher-course-card__levels-row{display:flex;align-items:center;justify-content:space-between;gap:.5rem;flex-wrap:wrap}.teacher-course-card__levels-label{font-size:.625rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--teacher-text-muted)}.app-shell--teacher .teacher-course-card__view-names{flex-shrink:0;padding:.2rem .45rem!important;font-size:.6875rem!important;font-weight:600!important;color:var(--teacher-text)!important;border-radius:var(--teacher-radius)}.app-shell--teacher .teacher-course-card__view-names:hover:not(:disabled){background:var(--teacher-hover)!important;color:var(--teacher-primary-strong)!important}.teacher-course-card__levels-empty{margin:0;font-size:.75rem;font-style:italic;color:var(--teacher-text-muted)}.teacher-course-level-track{display:flex;align-items:center;flex-wrap:nowrap;list-style:none;margin:0;padding:.15rem 0 .1rem;gap:0;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:thin}.teacher-course-level-item{display:flex;align-items:center;flex:0 0 auto}.teacher-course-level-connector{width:.85rem;height:2px;margin:0 .1rem;border-radius:1px;background:linear-gradient(90deg,#2563eb59,#7dd3fc73);flex-shrink:0}.teacher-course-level-node{display:inline-flex;align-items:center;justify-content:center;width:1.65rem;height:1.65rem;border-radius:50%;font-size:.7rem;font-weight:700;color:#fff;background:linear-gradient(145deg,#3b82f6,#2563eb);box-shadow:0 0 0 1px #fff3 inset,0 2px 6px #0f172a2e;cursor:default;flex-shrink:0}.teacher-course-level-node--inactive{background:#dbeafe;color:#1d4ed8;box-shadow:0 0 0 1px #2563eb1f inset;opacity:1}.teacher-course-level-node__num{font-variant-numeric:tabular-nums;line-height:1}.teacher-courses-empty{margin-top:.5rem;padding:2rem 1.25rem;text-align:center;border-radius:var(--teacher-radius-lg);border:1px dashed rgba(37,99,235,.25);background:linear-gradient(165deg,#fff,#eff6ffd9)}.teacher-courses-empty__title{margin:0 0 .4rem;font-size:1rem;font-weight:600;color:var(--teacher-primary-strong)}.teacher-courses-empty__text{margin:0 auto;max-width:26rem;font-size:.8125rem;line-height:1.5;color:var(--teacher-text-muted)}.teacher-course-names-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.65rem;max-height:min(60vh,22rem);overflow-y:auto}.teacher-course-names-list__item{display:flex;gap:.65rem;align-items:flex-start;padding:.5rem .55rem;border-radius:var(--teacher-radius);border:1px solid var(--teacher-surface-border);background:linear-gradient(118deg,#eff6ffbf,#fff 55%)}.teacher-course-names-list__badge{display:inline-flex;align-items:center;justify-content:center;min-width:1.65rem;height:1.65rem;padding:0 .25rem;border-radius:.35rem;font-size:.7rem;font-weight:700;font-variant-numeric:tabular-nums;color:#fff;background:linear-gradient(145deg,#3b82f6,#2563eb);box-shadow:0 1px 3px #0f172a26}.teacher-course-names-list__body{flex:1;min-width:0}.teacher-course-names-list__title-row{display:flex;align-items:center;justify-content:space-between;gap:.5rem;flex-wrap:wrap}.teacher-course-names-list__name{font-size:.875rem;font-weight:600;color:var(--teacher-primary-strong);line-height:1.35}.teacher-course-names-list__inactive{font-size:.625rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--teacher-text-muted);padding:.12rem .35rem;border-radius:999px;background:#eff6fff2;border:1px solid var(--teacher-surface-border)}.teacher-course-names-list__desc{margin:.3rem 0 0;font-size:.75rem;line-height:1.45;color:var(--teacher-text-muted)}.app-shell--teacher .enrollment-card--selected{background:#dbeafeb8;border-color:#2563eb52}.app-shell--student{--student-primary: #ea580c;--student-primary-strong: #f97316;--student-primary-soft: #fff7ed;--student-sidebar-bg: #fffdf5;--student-main-bg: #fffbeb;--student-header-gradient: linear-gradient(90deg, #38bdf8, #a5f3fc, #fbbf24, #fb923c);--student-card-bg: #ffffff;--student-card-border: rgba(234, 88, 12, .18);--student-stat-coral: rgba(234, 88, 12, .1);--student-stat-mint: rgba(45, 212, 191, .22);--student-stat-lavender: rgba(96, 165, 250, .22);--student-cta-bg: #ffffff;--student-cta-hover: #fff7ed;--student-link-color: #ea580c;--student-radius-lg: .875rem;--student-shadow-card: 0 4px 12px rgba(14, 165, 233, .08), 0 2px 4px rgba(234, 88, 12, .06)}.app-shell--student.app-shell{background:radial-gradient(circle at top left,#e0f2fe 0,#fffbeb 45%,#ecfdf5)}.app-shell--student .app-header{background:var(--student-header-gradient);box-shadow:0 4px 6px -1px #0ea5e926,0 2px 4px -2px #ea580c1a;color:#1a202c}.app-shell--student .app-header-title,.app-shell--student .app-header-org{color:#1a202c;font-weight:700}.app-shell--student .app-header-org{opacity:.9;font-weight:500}.app-shell--student .app-header-user{color:#1a202c}.app-shell--student .app-header-link{color:#2d3748;font-weight:500;padding:.5rem .75rem;border-radius:var(--radius-md);transition:background-color .15s ease,color .15s ease}.app-shell--student .app-header-link:hover{background-color:#1a202c14;color:#1a202c}.app-shell--student .app-header-link-active{background-color:#fffffff2;color:#2d3748;font-weight:600;box-shadow:0 1px 3px #00000014}.app-shell--student .app-header-avatar{background-color:#ea580c38;color:#1a202c}.app-shell--student .app-header-user .text-soft{color:#4a5568!important}.app-shell--student .app-header .btn-ghost{color:#2d3748;font-weight:500}.app-shell--student .app-header .btn-ghost:hover:not(:disabled){background-color:#ffffff80;color:#1a202c}.app-shell--student .admin-sidebar{background-color:var(--student-sidebar-bg);border-right-color:#fed7aa}.app-shell--student .sidebar-item:hover{background-color:#fff7ed;color:var(--student-primary)}.app-shell--student .sidebar-item-active{background-color:var(--student-primary-soft);color:var(--student-primary);border-left-color:var(--student-primary)}.app-shell--student .sidebar-overlay{background-color:#ea580c14}.app-shell--student .app-main{background:transparent}.app-shell--student .mobile-bottom-nav{background-color:#fff;border-top:1px solid rgba(234,88,12,.25);box-shadow:0 -4px 12px #2d374814;padding:.5rem 0 .75rem;min-height:56px}.app-shell--student .mobile-bottom-nav__item{color:#4a5568;font-size:.6875rem;font-weight:500;min-width:56px;padding:.5rem .25rem;border-radius:var(--radius-md);transition:color .15s ease,background-color .15s ease}.app-shell--student .mobile-bottom-nav__item:hover{color:#2d3748;background-color:#ea580c0f}.app-shell--student .mobile-bottom-nav__item--active,.app-shell--student .mobile-nav-active{color:var(--student-primary)!important;font-weight:700!important}.app-shell--student .mobile-bottom-nav__item--active .mobile-bottom-nav__icon,.app-shell--student .mobile-nav-active .mobile-bottom-nav__icon{color:var(--student-primary);transform:scale(1.05)}.app-shell--student .mobile-bottom-nav__icon{font-size:1.375rem;margin-bottom:.125rem;display:block;transition:transform .15s ease}.app-shell--student .sidebar-collapse-btn:hover{background-color:#fff7ed;color:var(--student-primary)}.app-shell--student .page-header-title{color:var(--student-text, #2d3748);font-weight:700}.app-shell--student .card--student-stat,.app-shell--student .card.card--student-stat{background:var(--brand-surface-glass);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.6);border-radius:var(--student-radius-lg);box-shadow:0 4px 6px -1px #0000000d;padding:var(--space-5);transition:box-shadow .2s ease,transform .15s ease}.app-shell--student .card--student-stat:hover{box-shadow:0 10px 15px -3px #0000000d;transform:translateY(-2px)}.app-shell--student .card--student-stat.card--stat-coral{background:linear-gradient(135deg,#fff5f5,#fff0f2);border-left:4px solid #FF9A8B}.app-shell--student .card--student-stat.card--stat-mint{background:linear-gradient(135deg,#f0fdfa,#e6fffa);border-left:4px solid #a8e6cf}.app-shell--student .card--student-stat.card--stat-lavender{background:linear-gradient(135deg,#f8f8ff,#f4f4ff);border-left:4px solid #c5c6ff}.app-shell--student .card--student-cta,.app-shell--student .card.card--student-cta{background:var(--student-cta-bg);border:1px solid var(--student-card-border);border-radius:var(--student-radius-lg);box-shadow:var(--student-shadow-card);padding:var(--space-5);transition:background-color .2s ease,box-shadow .2s ease,transform .05s ease}.app-shell--student .card--student-cta:hover{background:var(--student-cta-hover);box-shadow:0 6px 16px #ea580c1f}.app-shell--student .card--student-cta a[href],.app-shell--student .student-dashboard-cta-link{display:inline-flex;align-items:center;gap:.5rem;color:#fff;font-weight:600;font-size:var(--font-size-sm);text-decoration:none;background-color:var(--student-primary);padding:.625rem 1.25rem;border-radius:var(--radius-full);transition:background-color .2s ease,box-shadow .2s ease,transform .05s ease;box-shadow:0 2px 6px #ea580c59}.app-shell--student .card--student-cta a[href]:hover,.app-shell--student .student-dashboard-cta-link:hover{background-color:var(--student-primary-strong);color:#fff;text-decoration:none;box-shadow:0 4px 12px #ea580c66}.app-shell--student .btn-primary{background-color:var(--student-primary);color:#fff;border-color:transparent}.app-shell--student .btn-primary:hover:not(:disabled){background-color:var(--student-primary-strong)}.app-shell--student .btn:focus-visible{box-shadow:0 0 0 2px var(--student-primary-soft)}.app-shell--student .empty-state{background:linear-gradient(135deg,#fffdf5,#fff7ed);border-color:#ea580c33;border-radius:var(--student-radius-lg)}.app-shell--student .empty-state-title{color:var(--student-text, #2d3748)}.app-shell--student .empty-state-description{color:var(--student-text-muted, #718096)}@media (max-width: 767px){.app-shell--student .app-main{padding-bottom:80px}}.student-dashboard-hero{background:linear-gradient(135deg,var(--student-primary-soft) 0%,rgba(168,230,207,.15) 100%);border-radius:var(--student-radius-lg);padding:var(--space-5) var(--space-6);border:1px solid rgba(234,88,12,.15)}.student-dashboard-hero .page-header-title{font-size:var(--font-size-2xl);margin-bottom:var(--space-1)}.student-dashboard-stat-label{font-size:var(--font-size-sm);color:var(--student-text-muted, #718096);margin-bottom:var(--space-1);display:flex;align-items:center;gap:var(--space-2)}.student-dashboard-stat-value{font-size:var(--font-size-3xl);font-weight:700;line-height:var(--line-height-tight);color:var(--student-text, #2d3748)}.student-dashboard-stat-hint{font-size:var(--font-size-xs);color:var(--student-text-muted, #718096);margin-top:var(--space-1)}.student-dashboard-cta-title{font-size:var(--font-size-xl);font-weight:700;color:var(--student-text, #2d3748);margin-bottom:var(--space-2);letter-spacing:-.01em}.student-dashboard-cta-desc{font-size:var(--font-size-sm);color:var(--student-text-muted, #718096);margin-bottom:var(--space-4);line-height:1.45}.student-dashboard-ctas{margin-top:var(--space-6)}@media (max-width: 767px){.student-dashboard-hero{padding:var(--space-4) var(--space-4)}.student-dashboard-stat-value{font-size:var(--font-size-2xl)}}.student-dashboard-error{padding:var(--space-3) var(--space-4);margin-bottom:var(--space-4);background-color:#fef2f2;color:#b91c1c;border-radius:var(--radius-md);font-size:var(--font-size-sm);border:1px solid #fecaca}.app-shell--student .course-level-position__text{color:var(--student-text, #2d3748)}.app-shell--student .course-level-position__name{color:var(--student-text-muted, #718096)}.app-shell--student .course-level-position__segment{background:#ea580c33}.app-shell--student .course-level-position__segment--completed{background:var(--student-mint-strong, #7dd3b0)}.app-shell--student .course-level-position__segment--current{background:var(--student-primary, #ea580c);height:8px;border-radius:3px}.app-shell--student .course-level-position--compact .course-level-position__segment--current{height:6px}.app-shell--student .course-level-position__segment--upcoming{background:#ea580c33}.app-shell--student .page .card:not(.card--student-stat):not(.card--student-cta){border-color:var(--student-card-border);box-shadow:var(--student-shadow-card);border-radius:var(--student-radius-lg)}.app-shell--student .page .card:not(.card--student-stat):not(.card--student-cta):hover{box-shadow:0 6px 16px #ea580c1f}.student-page-error{padding:var(--space-3) var(--space-4);margin-bottom:var(--space-4);background-color:#fef2f2;color:#b91c1c;border-radius:var(--radius-md);font-size:var(--font-size-sm);border:1px solid #fecaca}.student-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-3);margin-bottom:var(--space-3)}.student-meta{font-size:var(--font-size-sm);color:var(--student-text-muted, #718096)}.student-meta-row{display:flex;justify-content:space-between;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-3)}.student-form-group{display:flex;flex-direction:column;gap:var(--space-1)}.student-form-label{display:block;font-size:var(--font-size-sm);font-weight:500;color:var(--student-text, #2d3748)}.student-form-input,.student-form-select{width:100%;font-size:var(--font-size-sm);padding:.5rem .75rem;border:1px solid var(--student-card-border);border-radius:var(--radius-md);background:#fff;box-sizing:border-box}.app-shell--student .student-form-input:focus,.app-shell--student .student-form-select:focus{outline:none;border-color:var(--student-primary);box-shadow:0 0 0 2px var(--student-primary-soft)}.student-form-error{font-size:var(--font-size-xs);color:#b91c1c;margin-bottom:var(--space-2)}.student-form-success{font-size:var(--font-size-xs);color:#15803d;margin-bottom:var(--space-2)}.student-card-actions{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid rgba(234,88,12,.2)}.auth-page{height:100vh;overflow:hidden;display:grid;grid-template-columns:1.1fr .9fr;background:radial-gradient(circle at top left,var(--student-coral) 0,var(--student-mint) 45%,var(--student-lavender) 90%,var(--student-cream) 100%);position:relative}.auth-page.auth-page--centered{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100dvh;height:auto;overflow-x:hidden;overflow-y:auto;padding:clamp(1.25rem,4vw,2.5rem);background:radial-gradient(ellipse 120% 70% at 50% -10%,rgba(255,255,255,.9),transparent 62%),linear-gradient(172deg,#eff6ff,#f8fafc 58%,#fdf2f8)}.auth-page.auth-page--centered:before,.auth-page.auth-page--centered:after{display:none}.auth-page.auth-page--centered.auth-page--teacher-portal{background:radial-gradient(ellipse 120% 70% at 50% -10%,rgba(255,255,255,.9),transparent 62%),linear-gradient(172deg,#f0fdfa,#f8fafc 60%,#ecfeff)}.auth-page.auth-page--centered.auth-page--admin-portal{background:radial-gradient(ellipse 120% 70% at 50% -10%,rgba(255,255,255,.9),transparent 62%),linear-gradient(172deg,#eef2ff,#f8fafc 60%,#f5f3ff)}.auth-page.auth-page--centered.auth-page--student{overflow-x:hidden;background:radial-gradient(circle at 10px 10px,rgba(56,189,248,.28) 2.5px,transparent 3px) 0 0 / 36px 36px,radial-gradient(circle at 28px 24px,rgba(251,146,60,.22) 2px,transparent 2.5px) 0 0 / 36px 36px,radial-gradient(ellipse 80% 50% at 100% 0%,rgba(253,186,116,.42),transparent 55%),radial-gradient(ellipse 70% 48% at 0% 100%,rgba(125,211,192,.38),transparent 52%),radial-gradient(ellipse 90% 55% at 50% -8%,rgba(255,255,255,.78),transparent 58%),linear-gradient(168deg,#dbeafe,#fffbeb 40%,#fce7f3)}.auth-page.auth-page--centered.auth-page--student:before,.auth-page.auth-page--centered.auth-page--student:after{display:block;content:"";filter:none;opacity:.9;z-index:0}.auth-page.auth-page--centered.auth-page--student:before{width:clamp(160px,28vw,300px);height:clamp(160px,28vw,300px);top:-8%;right:-8%;background:radial-gradient(circle at 32% 32%,#7dd3fc,#38bdf8 42%,#3b82f647);box-shadow:-12vw 62vh 0 -48px #7dd3c08c;animation:auth-float 15s ease-in-out infinite}.auth-page.auth-page--centered.auth-page--student:after{width:clamp(120px,22vw,230px);height:clamp(120px,22vw,230px);bottom:-7%;left:-7%;background:radial-gradient(circle at 38% 38%,#fde047,#fbbf24 48%,#fb923c66);box-shadow:78vw -8vh 0 -42px #fb718561;animation:auth-float 19s ease-in-out infinite reverse}.auth-play-layer{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none;overflow:hidden}.auth-play-shape{position:absolute}.auth-play-shape--star{width:22px;height:22px;top:11%;left:clamp(.75rem,8vw,4.5rem);background:#fbbf24;clip-path:polygon(50% 0%,61% 35%,98% 35%,68% 57%,79% 91%,50% 70%,21% 91%,32% 57%,2% 35%,39% 35%);animation:auth-float 11s ease-in-out infinite}.auth-play-shape--dot-blue{width:14px;height:14px;border-radius:50%;top:18%;right:clamp(.85rem,9vw,5rem);background:#38bdf8;animation:auth-float 13s ease-in-out infinite reverse}.auth-play-shape--dot-coral{width:18px;height:18px;border-radius:50%;bottom:14%;right:clamp(1rem,10vw,5.5rem);background:#fb923c;animation:auth-float 16s ease-in-out infinite}.auth-play-shape--plus{width:18px;height:18px;bottom:22%;left:clamp(.9rem,8vw,4.25rem);background:#2dd4bf;clip-path:polygon(35% 0,65% 0,65% 35%,100% 35%,100% 65%,65% 65%,65% 100%,35% 100%,35% 65%,0 65%,0 35%,35% 35%);animation:auth-float 14s ease-in-out infinite reverse}.auth-play-shape--ring{width:28px;height:28px;top:28%;right:clamp(2.5rem,16vw,8rem);border-radius:50%;border:4px solid #a78bfa;animation:auth-float 17s ease-in-out infinite}.auth-page--student .auth-brand-title{font-size:clamp(1.35rem,4vw,1.7rem)}.auth-page--student .auth-brand-title-accent{color:#ea580c}@keyframes auth-float{0%,to{transform:translateZ(0)}50%{transform:translate3d(0,16px,0)}}.auth-center-stack{position:relative;z-index:2;width:100%;max-width:440px;display:flex;flex-direction:column;align-items:center;gap:clamp(1rem,3vw,1.75rem)}.auth-brand-compact{text-align:center;width:100%}.auth-brand-title{font-family:Nunito,Outfit,system-ui,sans-serif;font-size:clamp(1.15rem,3vw,1.35rem);font-weight:700;line-height:1.2;letter-spacing:-.01em;color:#1e293b;margin:0 0 .3rem}.auth-brand-title-accent{color:#0369a1}.auth-brand-portal{font-size:.75rem;font-weight:600;letter-spacing:.02em;color:#475569;margin:0}.auth-brand-org{font-size:.8125rem;font-weight:400;color:#475569;margin:.2rem 0 0}.auth-brand-system{font-size:.75rem;font-weight:500;color:#64748b;margin:.15rem 0 0}.auth-page.auth-page--centered .auth-panel{display:flex;align-items:center;justify-content:center;padding:0;width:100%;max-width:420px;background:transparent;overflow:visible;flex:none}.auth-page.auth-page--centered .auth-card{width:100%;max-width:420px}.auth-login-card-shell{border-radius:1.125rem!important;box-shadow:0 1px 2px #0f172a0a,0 18px 40px -16px #0f172a29!important;border:1px solid rgba(15,23,42,.07)!important;background:#fff!important}.auth-hero{color:var(--student-text);padding:var(--space-10) var(--space-8);display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:left;gap:var(--space-4);position:relative;z-index:1}.auth-hero-subtitle{font-size:var(--font-size-md);max-width:32rem;color:var(--student-text-muted);font-family:Nunito,-apple-system,BlinkMacSystemFont,sans-serif}.auth-hero-content-wrapper{background:#ffffff73;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.5);padding:var(--space-8);border-radius:var(--radius-2xl);box-shadow:0 10px 40px #00000014;display:flex;flex-direction:column;gap:var(--space-4);width:100%;max-width:500px;position:relative;z-index:2;transition:transform .3s ease,box-shadow .3s ease}.auth-hero-content-wrapper:hover{transform:translateY(-4px);box-shadow:0 15px 50px #0000001f}.auth-hero-pill{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--font-size-xs);padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);background-color:#fffc;color:var(--student-text);font-weight:700;text-transform:uppercase;letter-spacing:.05em;align-self:flex-start;box-shadow:0 2px 10px #0000000d}.auth-hero-title{font-size:2.75rem;font-weight:800;line-height:var(--line-height-tight);color:var(--student-text);font-family:Nunito,-apple-system,BlinkMacSystemFont,sans-serif;letter-spacing:-.02em}.auth-hero-title-accent{background:linear-gradient(135deg,var(--student-lavender-strong) 0%,#0ea5e9 40%,var(--student-coral-strong) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;display:inline-block}.auth-hero-system-title{font-size:1.5rem;font-weight:600;color:var(--student-text-muted);font-family:Outfit,Inter,system-ui,-apple-system,sans-serif;margin-top:-.5rem;letter-spacing:.02em}.auth-hero-divider{height:4px;width:60px;background:linear-gradient(90deg,#38bdf8,var(--student-mint-strong),#fbbf24);border-radius:2px;margin-top:-.5rem}.auth-hero-subtitle{font-size:1.1rem;line-height:1.6;color:#4a5568}.auth-hero-features{display:flex;flex-direction:column;gap:var(--space-3);margin-top:var(--space-2)}.hero-feature-pill{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:#fff9;border:1px solid rgba(255,255,255,.8);border-radius:var(--radius-lg);font-weight:600;color:var(--student-text);transition:all .2s ease;box-shadow:0 2px 8px #00000005}.hero-feature-pill:hover{background:#ffffffe6;transform:translate(4px);box-shadow:0 4px 12px #0000000d;border-color:var(--student-coral-strong)}.hero-feature-icon{font-size:1.25rem;background:#fff;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:50%;box-shadow:0 2px 6px #0000000f}.auth-page:before{content:"";position:absolute;width:300px;height:300px;border-radius:50%;background:#ffffff4d;top:-50px;right:-50px;pointer-events:none}.auth-page:after{content:"";position:absolute;width:200px;height:200px;border-radius:50%;background:#2dd4bf61;bottom:-50px;left:-50px;pointer-events:none}.auth-hero--student:before{content:"";position:absolute;width:200px;height:200px;border-radius:50%;background:#ffffff4d;top:10%;right:15%;pointer-events:none}.auth-hero--student:after{content:"";position:absolute;width:120px;height:120px;border-radius:50%;background:#2dd4bf61;bottom:20%;left:10%;pointer-events:none}.auth-page .auth-hero-blob{position:absolute;border-radius:50%;pointer-events:none;z-index:0}.auth-page .auth-hero-blob-1{width:120px;height:120px;background:#7dd3fc80;top:40%;right:15%}.auth-page .auth-hero-blob-2{width:90px;height:90px;background:#fbbf246b;top:15%;left:10%}.auth-panel{display:flex;align-items:center;justify-content:center;padding:var(--space-8);background-color:var(--student-cream-soft);position:relative;z-index:1;overflow-y:auto}.auth-page--student .form-card{border-radius:1rem;border:1px solid rgba(14,165,233,.12)}.auth-page--student .form-card.auth-login-card-shell{border:1px solid rgba(14,165,233,.16)!important;background:linear-gradient(90deg,#38bdf8,#7dd3c0,#fbbf24 68%,#fb923c) top / 100% 6px no-repeat,#fff!important;box-shadow:0 1px 2px #0f172a0a,0 18px 40px -16px #0ea5e938!important}.auth-page--student .form-title,.auth-page--student .form-subtitle,.auth-page--student .form-label{font-family:Nunito,-apple-system,BlinkMacSystemFont,sans-serif}.auth-page--student .input:focus{border-color:var(--student-lavender-strong);box-shadow:0 0 0 2px #3b82f638}.auth-page--student .btn-primary{background:var(--brand-gradient-primary);background-size:200% auto;background-position:left center;color:#fff;border:none;transition:background-position .4s ease,box-shadow .25s ease,transform .15s ease}.auth-page--student .btn-primary:hover:not(:disabled){background-position:right center;box-shadow:0 6px 20px #0ea5e933,0 4px 14px #ea580c2e}.auth-page--student .form-link{color:var(--student-coral-strong)}.auth-page--student .form-link:hover{color:var(--student-coral)}.auth-register-now-link{display:inline-flex;align-items:center;gap:.35rem;font-size:.875rem;font-weight:600;text-decoration:none;padding:.35rem 0;border:none;background:none;box-shadow:none;transition:color .15s ease,text-decoration .15s ease}.auth-register-now-link{color:var(--color-primary-strong, #0369a1)}.auth-register-now-link:hover{text-decoration:underline;text-underline-offset:.2em}.auth-page--student .auth-register-now-link{color:var(--student-coral-strong)}@media (prefers-reduced-motion: reduce){.auth-page *,.auth-page *:before,.auth-page *:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.auth-page--student .input{min-height:44px;padding:.75rem 1rem;font-size:1rem}.auth-page--student .btn-primary{min-height:44px;padding-block:.75rem;font-size:var(--font-size-md)}.auth-card{width:100%;max-width:380px}.form-card{background-color:var(--color-bg-surface);border-radius:var(--radius-lg);padding:var(--space-6);box-shadow:var(--shadow-lg);border:1px solid rgba(15,23,42,.05)}.form-title{font-size:var(--font-size-xl);font-weight:600;margin-bottom:var(--space-1);color:var(--color-text)}.form-subtitle{font-size:var(--font-size-sm);color:var(--color-text-muted);margin-bottom:var(--space-4)}.form-field{margin-bottom:var(--space-4)}.form-label{display:block;font-size:var(--font-size-sm);font-weight:500;color:var(--color-text);margin-bottom:var(--space-1)}.input{width:100%;border-radius:var(--radius-md);border:1px solid var(--color-border-subtle);padding:.625rem .75rem;font-size:var(--font-size-sm);color:var(--color-text);background-color:#fff;transition:border-color .15s ease,box-shadow .15s ease,background-color .15s ease}.input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 1px #4f46e566}.input::placeholder{color:var(--color-text-soft)}.form-error{margin-bottom:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background-color:#fef2f2;color:#b91c1c;font-size:var(--font-size-sm);border:1px solid #fecaca}.form-helper{font-size:var(--font-size-xs);color:var(--color-text-soft);margin-top:var(--space-1)}.form-footer-note{margin-top:var(--space-4);font-size:var(--font-size-xs);color:var(--color-text-soft);text-align:center}@media (max-width: 900px){.auth-page.auth-page--centered{padding:1.15rem 1rem 1.75rem;justify-content:center}.auth-page:not(.auth-page--centered){display:flex;flex-direction:column;height:auto;min-height:100vh;overflow:visible;overflow-x:hidden}.auth-page:not(.auth-page--centered) .auth-hero{flex:0 0 auto;padding:var(--space-6) var(--space-4) var(--space-2)}.auth-page:not(.auth-page--centered) .auth-hero-content-wrapper{padding:var(--space-6)}.auth-page:not(.auth-page--centered) .auth-hero-title{font-size:2rem}.auth-page:not(.auth-page--centered) .auth-hero-system-title{font-size:1.25rem}.auth-page:not(.auth-page--centered) .auth-hero-subtitle{font-size:.95rem}.auth-page:not(.auth-page--centered) .auth-hero-features{display:none}.auth-page:not(.auth-page--centered) .auth-panel{flex:1 1 auto;padding:0 var(--space-4) var(--space-6);align-items:flex-start;overflow-y:visible}.auth-page:not(.auth-page--centered) .auth-card{margin:0 auto}.auth-page.auth-page--centered .form-card,.auth-login-card-shell{padding:2rem 1.35rem!important}.form-card{padding:var(--space-5) var(--space-4)}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);border-radius:var(--radius-md);border:1px solid transparent;font-size:var(--font-size-sm);font-weight:500;padding-inline:var(--space-4);padding-block:.6rem;cursor:pointer;transition:background-color .15s ease,color .15s ease,box-shadow .15s ease,transform .05s ease,border-color .15s ease}.btn:disabled{opacity:.6;cursor:not-allowed;box-shadow:none}.btn-primary{background-color:var(--color-primary);color:#fff;box-shadow:var(--shadow-md)}.btn-primary:hover:not(:disabled){background-color:var(--color-primary-strong)}.btn-secondary{background-color:#ecfeff;color:#0f766e;border-color:#a5f3fc}.btn-secondary:hover:not(:disabled){background-color:#cffafe}.btn-ghost{background-color:transparent;color:var(--color-text);border-color:transparent}.btn-ghost:hover:not(:disabled){background-color:#94a3b826}.btn-danger{background-color:#ef4444;color:#fff}.btn-danger:hover:not(:disabled){background-color:#b91c1c}.btn-success{background-color:#16a34a;color:#fff;box-shadow:var(--shadow-md)}.btn-success:hover:not(:disabled){background-color:#15803d}.btn-sm{padding-inline:var(--space-3);padding-block:.45rem;font-size:var(--font-size-xs)}.btn-lg{padding-inline:var(--space-5);padding-block:.8rem;font-size:var(--font-size-md)}.btn-full{width:100%}.btn:focus-visible{outline:none;box-shadow:0 0 0 2px #e0e7ff}.card-muted{box-shadow:var(--shadow-sm)}.status-badge{display:inline-flex;align-items:center;justify-content:center;padding:.15rem .6rem;border-radius:999px;font-size:var(--font-size-xs);font-weight:600;letter-spacing:.02em}.status-badge-active{background-color:#22c55e1a;color:#15803d}.status-badge-pending{background-color:#fef3c7;color:#92400e}.status-badge-approved{background-color:#22c55e1a;color:#15803d}.status-badge-rejected{background-color:#fee2e2;color:#991b1b}.status-badge-inactive{background-color:#94a3b826;color:#4b5563}.status-badge-deleted{background-color:#1e1b1b14;color:#292524}.status-badge-hold{background-color:#f59e0b1a;color:#b45309}.status-badge-teacher-approval{background-color:#2563eb1a;color:#1d4ed8}.status-badge-final-approval{background-color:#7c3aed1a;color:#6d28d9}.status-badge-completion-approval{background-color:#4f46e51a;color:#4338ca}.status-badge-completed{background-color:#4755691a;color:#334155}.status-badge-default{background-color:#94a3b826;color:#4b5563}.detail-row{display:flex;gap:.5rem;flex-wrap:wrap;align-items:flex-start}.detail-row--center{align-items:center}.detail-row__label{min-width:7.25rem;flex-shrink:0}.detail-row__value{margin:0;word-break:break-word;flex:1 1 12rem;min-width:0}.detail-row__value--pre{white-space:pre-wrap}.detail-section-heading{margin:.35rem 0 .1rem;font-weight:600;font-size:.78rem;color:#4b5563}.page-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);background:var(--brand-gradient-subtle);padding:.85rem 1.1rem;margin:0 0 var(--space-3) 0;border-radius:var(--radius-md);border:1px solid rgba(0,0,0,.06)}.app-shell--student .page-header{background:var(--brand-gradient-subtle)}.page-header-main{display:flex;flex-direction:column;gap:0;flex:1;min-width:0;align-items:flex-start}.page-header-title{font-size:var(--font-size-xl);font-weight:600;color:var(--color-text);line-height:1.3;margin:0}.page-header-actions{display:flex;align-items:center;gap:var(--space-2);flex-shrink:0}.public-registration-page{max-width:56rem;margin:0 auto;padding:var(--space-6) var(--space-4);width:100%;box-sizing:border-box}.public-registration-page>.page-header{margin:0 0 var(--space-4) 0;padding:var(--space-5) var(--space-5);border-radius:var(--radius-md);align-items:center}@media (max-width: 640px){.public-registration-page>.page-header{flex-direction:column;align-items:stretch;gap:var(--space-3)}.public-registration-page>.page-header .page-header-actions{align-self:stretch;justify-content:flex-start}}.public-registration-page.teacher-registration-page>.page-header{background:linear-gradient(118deg,#dbeafe,#bfdbfe 38%,#60a5fa);border-bottom:1px solid rgba(15,23,42,.1);box-shadow:0 4px 20px #0f172a1a}.empty-state{padding:var(--space-8);border-radius:var(--radius-lg);background-color:#f9fafb;border:1px dashed var(--color-border-subtle);text-align:center}.empty-state-icon{font-size:2rem;margin-bottom:var(--space-2)}.empty-state-title{font-size:var(--font-size-lg);font-weight:600;margin-bottom:var(--space-1)}.empty-state-description{font-size:var(--font-size-sm);color:var(--color-text-muted);max-width:26rem;margin:0 auto var(--space-4)}.spinner{border-radius:999px;border:3px solid #e5e7eb;border-top-color:var(--color-primary);animation:spin .8s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background-color:#0f172a59;display:flex;align-items:center;justify-content:center;z-index:40}.modal{max-width:640px;width:100%;padding:var(--space-4)}.modal--wide{max-width:min(1080px,96vw)}.modal-card{padding:var(--space-4)}.modal-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);margin-bottom:var(--space-3)}.modal-title{font-size:var(--font-size-lg);font-weight:600}.modal-body{max-height:70vh;overflow-y:auto}.data-table-toolbar{display:flex;justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-3)}.data-table-search{max-width:260px}.data-table-wrapper{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.data-table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm)}.data-table thead tr{background-color:#f3f4f6}.data-table th,.data-table td{padding:.6rem .75rem;text-align:left;border-bottom:1px solid var(--color-border-subtle);white-space:nowrap}.data-table th{font-weight:600;color:var(--color-text-muted);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.03em}.data-table tbody tr:nth-child(2n){background-color:#f9fafb}.data-table tbody tr:hover{background-color:#eef2ff}.data-table-badge{display:inline-flex;align-items:center;padding:.1rem .45rem;border-radius:999px;font-size:var(--font-size-xs)}.data-table-badge-active{background-color:#10b9811f;color:#047857}.data-table-badge-inactive{background-color:#ef44441f;color:#b91c1c}.data-cards-mobile{display:none}.data-table-desktop{display:block}@media (max-width: 767px){.data-cards-mobile{display:flex;flex-direction:column;gap:.75rem}.data-table-desktop{display:none}}.enrollment-card,.data-card{border:1px solid var(--color-border-subtle, #e5e7eb);border-radius:.5rem;padding:.85rem 1rem;background:#fff}.enrollment-card--selected,.data-card--selected{background:#0d948814;border-color:#0d948859}.enrollment-card__title,.data-card__title{font-weight:600;font-size:.95rem;margin:0 0 .25rem;word-break:break-word;line-height:1.35}.enrollment-card__subtitle,.data-card__subtitle{font-size:.78rem;color:var(--color-text-muted, #6b7280);margin:0 0 .4rem;word-break:break-word;line-height:1.35}.enrollment-card__row,.data-card__row{display:flex;flex-wrap:wrap;align-items:baseline;gap:.25rem .5rem;font-size:.82rem;margin-top:.35rem}.enrollment-card__label,.data-card__label{color:var(--color-text-muted, #6b7280);flex:0 0 auto;min-width:5.25rem;font-size:.78rem}.enrollment-card__value,.data-card__value{flex:1 1 10rem;min-width:0;word-break:break-word}.enrollment-card__actions,.data-card__actions{margin-top:.85rem;display:flex;flex-wrap:wrap;gap:.5rem}.enrollment-card-open-btn,.data-card-open-btn{min-height:44px;flex:1 1 auto}.document-management-grid{width:100%}@media (max-width: 1200px){.document-management-grid{grid-template-columns:1fr!important}.document-management-grid>div:last-child{position:static!important;top:auto!important}}.responsive-table-container{width:100%}.responsive-table{display:block;width:100%}.responsive-cards{display:none;gap:var(--space-3)}.action-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:1px solid transparent;border-radius:var(--radius-md);background-color:transparent;color:var(--color-text);cursor:pointer;transition:all .15s ease;flex-shrink:0}.action-icon-btn:hover{background-color:#94a3b826;border-color:var(--color-border-subtle)}.action-icon-btn:active{transform:scale(.95)}.action-icon-btn:focus-visible{outline:none;box-shadow:0 0 0 2px #e0e7ff}.action-icon-btn svg{width:18px;height:18px;stroke-width:2}.action-icon-btn-danger{color:#ef4444}.action-icon-btn-danger:hover{background-color:#ef44441a;border-color:#ef44444d}.document-card{background-color:var(--color-bg-surface);border:1px solid var(--color-border-subtle);border-radius:var(--radius-lg);padding:var(--space-4);box-shadow:var(--shadow-sm);transition:box-shadow .15s ease}.document-card:hover{box-shadow:var(--shadow-md)}.document-card-header{font-size:var(--font-size-base);font-weight:600;color:var(--color-text);margin-bottom:var(--space-3);word-break:break-word}.document-card-body{display:flex;flex-direction:column;gap:var(--space-2)}.document-card-row{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.document-card-label{font-size:var(--font-size-xs);color:var(--color-text-muted);font-weight:500;min-width:80px}.document-card-value{font-size:var(--font-size-sm);color:var(--color-text)}.document-card-actions{display:flex;gap:var(--space-2);margin-top:var(--space-2);padding-top:var(--space-2);border-top:1px solid var(--color-border-subtle)}@media (max-width: 1023px){.responsive-table{display:none}.responsive-cards{display:flex;flex-direction:column}}@media (min-width: 1024px){.responsive-table{display:block}.responsive-table table{display:table;width:100%}.responsive-cards{display:none}}@media (max-width: 767px){.document-card{padding:var(--space-3)}.document-card-header{font-size:var(--font-size-sm);margin-bottom:var(--space-2)}.document-card-row{flex-direction:column;align-items:flex-start;gap:var(--space-1)}.document-card-label{min-width:auto;font-weight:600}.action-icon-btn{width:36px;height:36px}.action-icon-btn svg{width:20px;height:20px}}*{margin:0;padding:0;box-sizing:border-box}body{font-family:var(--font-family-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/lms/assets/inter-cyrillic-ext-400-normal-BQZuk6qB.woff2) format("woff2"),url(/lms/assets/inter-cyrillic-ext-400-normal-DQukG94-.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/lms/assets/inter-cyrillic-400-normal-obahsSVq.woff2) format("woff2"),url(/lms/assets/inter-cyrillic-400-normal-HOLc17fK.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/lms/assets/inter-greek-ext-400-normal-DGGRlc-M.woff2) format("woff2"),url(/lms/assets/inter-greek-ext-400-normal-KugGGMne.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/lms/assets/inter-greek-400-normal-B4URO6DV.woff2) format("woff2"),url(/lms/assets/inter-greek-400-normal-q2sYcFCs.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/lms/assets/inter-vietnamese-400-normal-DMkecbls.woff2) format("woff2"),url(/lms/assets/inter-vietnamese-400-normal-Bbgyi5SW.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/lms/assets/inter-latin-ext-400-normal-C1nco2VV.woff2) format("woff2"),url(/lms/assets/inter-latin-ext-400-normal-77YHD8bZ.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/lms/assets/inter-latin-400-normal-C38fXH4l.woff2) format("woff2"),url(/lms/assets/inter-latin-400-normal-CyCys3Eg.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/lms/assets/inter-cyrillic-ext-500-normal-B0yAr1jD.woff2) format("woff2"),url(/lms/assets/inter-cyrillic-ext-500-normal-BmqWE9Dz.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/lms/assets/inter-cyrillic-500-normal-BasfLYem.woff2) format("woff2"),url(/lms/assets/inter-cyrillic-500-normal-CxZf_p3X.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/lms/assets/inter-greek-ext-500-normal-C4iEst2y.woff2) format("woff2"),url(/lms/assets/inter-greek-ext-500-normal-2j5mBUwD.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/lms/assets/inter-greek-500-normal-BIZE56-Y.woff2) format("woff2"),url(/lms/assets/inter-greek-500-normal-Xzm54t5V.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/lms/assets/inter-vietnamese-500-normal-DOriooB6.woff2) format("woff2"),url(/lms/assets/inter-vietnamese-500-normal-mJboJaSs.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/lms/assets/inter-latin-ext-500-normal-CV4jyFjo.woff2) format("woff2"),url(/lms/assets/inter-latin-ext-500-normal-BxGbmqWO.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/lms/assets/inter-latin-500-normal-Cerq10X2.woff2) format("woff2"),url(/lms/assets/inter-latin-500-normal-BL9OpVg8.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/lms/assets/inter-cyrillic-ext-600-normal-Dfes3d0z.woff2) format("woff2"),url(/lms/assets/inter-cyrillic-ext-600-normal-Bcila6Z-.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/lms/assets/inter-cyrillic-600-normal-CWCymEST.woff2) format("woff2"),url(/lms/assets/inter-cyrillic-600-normal-4D_pXhcN.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/lms/assets/inter-greek-ext-600-normal-DRtmH8MT.woff2) format("woff2"),url(/lms/assets/inter-greek-ext-600-normal-B8X0CLgF.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/lms/assets/inter-greek-600-normal-plRanbMR.woff2) format("woff2"),url(/lms/assets/inter-greek-600-normal-BZpKdvQh.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/lms/assets/inter-vietnamese-600-normal-Cc8MFFhd.woff2) format("woff2"),url(/lms/assets/inter-vietnamese-600-normal-BuLX-rYi.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/lms/assets/inter-latin-ext-600-normal-D2bJ5OIk.woff2) format("woff2"),url(/lms/assets/inter-latin-ext-600-normal-CIVaiw4L.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/lms/assets/inter-latin-600-normal-LgqL8muc.woff2) format("woff2"),url(/lms/assets/inter-latin-600-normal-CiBQ2DWP.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/lms/assets/inter-cyrillic-ext-700-normal-BjwYoWNd.woff2) format("woff2"),url(/lms/assets/inter-cyrillic-ext-700-normal-LO58E6JB.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/lms/assets/inter-cyrillic-700-normal-CjBOestx.woff2) format("woff2"),url(/lms/assets/inter-cyrillic-700-normal-DrXBdSj3.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/lms/assets/inter-greek-ext-700-normal-qfdV9bQt.woff2) format("woff2"),url(/lms/assets/inter-greek-ext-700-normal-BoQ6DsYi.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/lms/assets/inter-greek-700-normal-C3JjAnD8.woff2) format("woff2"),url(/lms/assets/inter-greek-700-normal-BUv2fZ6O.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/lms/assets/inter-vietnamese-700-normal-DlLaEgI2.woff2) format("woff2"),url(/lms/assets/inter-vietnamese-700-normal-BZaoP0fm.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/lms/assets/inter-latin-ext-700-normal-Ca8adRJv.woff2) format("woff2"),url(/lms/assets/inter-latin-ext-700-normal-TidjK2hL.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/lms/assets/inter-latin-700-normal-Yt3aPRUw.woff2) format("woff2"),url(/lms/assets/inter-latin-700-normal-BLAVimhd.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Outfit;font-style:normal;font-display:swap;font-weight:500;src:url(/lms/assets/outfit-latin-ext-500-normal-zeox_O30.woff2) format("woff2"),url(/lms/assets/outfit-latin-ext-500-normal-DrCvqoFD.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Outfit;font-style:normal;font-display:swap;font-weight:500;src:url(/lms/assets/outfit-latin-500-normal-DKnIMDSk.woff2) format("woff2"),url(/lms/assets/outfit-latin-500-normal-ClnHRwRh.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Outfit;font-style:normal;font-display:swap;font-weight:600;src:url(/lms/assets/outfit-latin-ext-600-normal-B85nYjL1.woff2) format("woff2"),url(/lms/assets/outfit-latin-ext-600-normal-CWJcPgd7.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Outfit;font-style:normal;font-display:swap;font-weight:600;src:url(/lms/assets/outfit-latin-600-normal-B7SfZ07L.woff2) format("woff2"),url(/lms/assets/outfit-latin-600-normal-BEfTtDA7.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Outfit;font-style:normal;font-display:swap;font-weight:700;src:url(/lms/assets/outfit-latin-ext-700-normal-CI4iH74K.woff2) format("woff2"),url(/lms/assets/outfit-latin-ext-700-normal-fjS8-Gm7.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Outfit;font-style:normal;font-display:swap;font-weight:700;src:url(/lms/assets/outfit-latin-700-normal-Cu9v6i1X.woff2) format("woff2"),url(/lms/assets/outfit-latin-700-normal-D4itBLBr.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
