:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--brand-rgb:13 128 100;--brand-dark-rgb:11 61 50;--brand:#0d8064;--brand-dark:#0b3d32;--brand-hover:#0b7058;--brand-active:#095f4b;--brand-soft:#e8f5f1;--brand-soft-strong:#d7ede6;--brand-contrast:#fff;--bg:#f6f8f6;--surface:#fff;--border:#cfdcd6;--text-primary:#17231f;--text-secondary:#55645f;--text-on-dark:#f7fbf9;--text-on-dark-muted:#c8d8d2;--radius-card:16px;--radius-control:12px;--radius-pill:999px;--shadow-card:0 24px 64px #17231f1c, 0 2px 8px #17231f0a;--shadow-brand:0 12px 24px rgb(var(--brand-rgb) / 22%);--background:#f2f6f4;--background-deep:#e5eeea;--foreground:#10211d;--muted:#4d5c57;--line:#cfdcd6;--panel:#fff;--panel-elevated:#fff;--accent-50:#f0fdfa;--accent-100:#ccfbf1;--accent-200:#99f6e4;--accent-300:#5eead4;--accent-400:#2dd4bf;--accent-500:#14b8a6;--accent-600:#0d9488;--accent-700:#0f766e;--accent-800:#115e59;--accent-900:#134e4a;--accent:var(--accent-600);--accent-strong:var(--accent-700);--accent-soft:#e7f7f4;--accent-line:#b6e2db;--success:#0f766e;--success-soft:#e7f7f4;--success-line:#99d9ce;--warning:#b45309;--warning-soft:#fff7ed;--warning-line:#fdba74;--danger:#be123c;--danger-soft:#fff1f2;--danger-line:#fda4af;--neutral-soft:#eef2f0;--neutral-line:#d5e0db;--focus-ring:#0d9488;--radius-sm:10px;--radius-md:14px;--radius-lg:18px;--radius-xl:24px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--panel-shadow:0 1px 2px #10211d0a, 0 10px 28px #10211d0f;--panel-shadow-hover:0 10px 28px #10211d1a;--hero-gradient:linear-gradient(145deg, #0b3d38 0%, #0f766e 48%, #14b8a6 100%);--shell-max:1180px;--text-xs:12px;--text-sm:13px;--text-md:15px;--text-lg:18px;--text-xl:24px;--text-2xl:34px}*{box-sizing:border-box}body{background:radial-gradient(1200px 520px at 8% -10%, #14b8a624, transparent 58%), radial-gradient(900px 480px at 100% 0%, #0f766e1a, transparent 52%), linear-gradient(180deg, #f7faf8 0%, var(--background) 38%, #eef4f1 100%);color:var(--foreground);letter-spacing:.01em;-webkit-font-smoothing:antialiased;margin:0;font-family:SF Pro Text,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif;line-height:1.55}a{color:var(--accent-strong);text-underline-offset:.18em;text-decoration:underline;text-decoration-thickness:1.5px}.brand-link,.auth-logo,.topbar-account,.breadcrumbs a,.nav a,.button,.quick-action,.starter-step,.course,a.stat-row,.filter-tabs a,.pagination a,.mastery-priority-row,.template-card{color:inherit;text-decoration:none}:where(a,button,input,textarea,select,summary,[tabindex]):focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px;box-shadow:0 0 0 5px #0f766e29}button,input,textarea,select{font:inherit}button{cursor:pointer}.shell{min-height:100vh;max-width:calc(var(--shell-max) + 64px);margin:0 auto;padding:28px 32px 56px}.student-shell{gap:20px;display:grid}.admin-layout{background:radial-gradient(1000px 420px at 0 -10%,#14b8a61f,#0000 55%),radial-gradient(800px 360px at 100% 0,#0f766e14,#0000 50%),linear-gradient(#f5f9f7 0%,#eef4f1 100%);min-height:100vh}.admin-content{padding-bottom:40px}.admin-navigation-shell{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);z-index:40;position:sticky;top:0}.admin-topbar{background:linear-gradient(#0b3d38fa,#0f2e2bfa);border-bottom:1px solid #ffffff0f;grid-template-columns:minmax(180px,auto) minmax(0,1fr) auto;align-items:center;gap:14px;padding:12px 24px;display:grid}.admin-brand{color:#fff;align-items:center;gap:10px;min-width:0;text-decoration:none;display:inline-flex}.admin-brand-mark{color:#fff;background:linear-gradient(145deg,#14b8a6,#0d9488);border-radius:12px;flex:0 0 38px;justify-content:center;align-items:center;height:38px;font-size:12px;font-weight:900;display:inline-flex;box-shadow:0 8px 18px #14b8a647}.admin-brand-copy{gap:1px;min-width:0;display:grid}.admin-brand-copy strong{letter-spacing:-.02em;font-size:15px}.admin-brand-copy small{color:#e8faf6c7;font-size:12px}.admin-domain-nav{scrollbar-width:none;justify-content:center;align-items:center;gap:6px;min-width:0;display:flex;overflow-x:auto}.admin-domain-nav::-webkit-scrollbar{display:none}.admin-domain-nav a{color:#e8faf6e0;white-space:nowrap;border:1px solid #0000;border-radius:999px;flex:none;padding:8px 12px;font-size:13px;font-weight:800;text-decoration:none;transition:background-color .14s,border-color .14s,color .14s}.admin-domain-nav a:hover{color:#fff;background:#ffffff14;border-color:#ffffff1f}.admin-domain-nav a.active{color:#0f766e;background:#fff;border-color:#fff;box-shadow:0 8px 18px #0000001f}.admin-domain-nav-full{display:none}.admin-topbar-actions{justify-content:flex-end;gap:8px;display:flex}.admin-link-button{color:#fff;white-space:nowrap;background:#ffffff1a;border:1px solid #ffffff29;border-radius:999px;align-items:center;min-height:36px;padding:0 14px;font-size:13px;font-weight:800;text-decoration:none;display:inline-flex}.admin-link-button:hover{background:#ffffff29}.admin-subnav-bar{border-bottom:1px solid var(--line);background:#fffffff0;grid-template-columns:minmax(180px,.7fr) minmax(0,1.3fr);align-items:center;gap:12px;padding:10px 24px;display:grid}.admin-subnav-bar-overview{grid-template-columns:1fr}.admin-subnav-copy{gap:2px;min-width:0;display:grid}.admin-subnav-copy .eyebrow{color:var(--accent-strong);letter-spacing:.08em;font-size:11px;font-weight:900}.admin-subnav-copy strong{color:#10211d;letter-spacing:-.01em;font-size:14px;font-weight:850}.admin-subnav{scrollbar-width:none;justify-content:flex-end;align-items:center;gap:6px;min-width:0;display:flex;overflow-x:auto}.admin-subnav::-webkit-scrollbar{display:none}.admin-subnav a{color:#31443e;white-space:nowrap;background:#f7fbf9;border:1px solid #0000;border-radius:999px;flex:none;padding:8px 12px;font-size:13px;font-weight:800;text-decoration:none}.admin-subnav a:hover,.admin-subnav a.active{background:var(--accent-soft);border-color:var(--accent-line);color:var(--accent-strong)}.admin-shell{max-width:calc(var(--shell-max) + 64px)}.admin-shell .topbar{border-bottom:0;margin-bottom:0;padding-bottom:0}.admin-shell .brand h1,.admin-content .brand h1{letter-spacing:-.03em;font-size:28px}.admin-shell .brand p,.admin-content .brand p{color:#3f514b;font-size:14.5px}.admin-hero{border-color:var(--accent-line);background:radial-gradient(700px 180px at 100% 0,#14b8a624,#0000 50%),linear-gradient(#fffffffa,#f6fbf9f5);grid-template-columns:minmax(0,1.4fr) auto;align-items:end;gap:18px;margin-top:20px;display:grid;position:relative;overflow:hidden}.admin-hero:before{content:"";background:linear-gradient(90deg,#0d94888c,#14b8a614);height:3px;position:absolute;top:0;left:0;right:0}.admin-hero-copy{gap:8px;display:grid}.admin-hero-copy h1{letter-spacing:-.04em;margin:0;font-size:32px}.admin-hero-copy p{color:#3f514b;max-width:54ch;margin:0;line-height:1.6}.admin-hero-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.admin-metrics-panel{margin-top:16px}.admin-metric-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.admin-domain-grid{gap:16px;margin-top:16px;display:grid}.admin-domain{box-shadow:var(--panel-shadow);background:#fffffff5;border:1px solid #cfdcd6f2;border-radius:18px;gap:16px;padding:20px;scroll-margin-top:140px;transition:border-color .14s,box-shadow .14s,transform .14s;display:grid}.admin-domain:hover{border-color:var(--accent-line);box-shadow:var(--panel-shadow-hover)}.admin-domain-head{justify-content:space-between;align-items:start;gap:18px;display:flex}.admin-domain-title{grid-template-columns:48px minmax(0,1fr);align-items:start;gap:12px;display:grid}.admin-domain-index{border:1px solid var(--accent-line);color:var(--accent-strong);background:linear-gradient(#e9f8f4,#d9f3ee);border-radius:14px;justify-content:center;align-items:center;width:48px;height:48px;font-size:13px;font-weight:900;display:inline-flex}.admin-domain-head h2,.admin-domain-head p{margin:0}.admin-domain-head h2{letter-spacing:-.02em;margin-top:2px;font-size:20px}.admin-domain-head p{color:#3f514b;margin-top:6px;line-height:1.55}.admin-destination-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.admin-destination{border:1px solid var(--line);color:inherit;background:linear-gradient(#fff,#f7fbf9);border-radius:14px;justify-content:space-between;align-items:center;gap:12px;min-height:56px;padding:12px 14px;text-decoration:none;transition:background-color .14s,border-color .14s,box-shadow .14s,transform .14s;display:flex}.admin-destination:hover{border-color:var(--accent-line);color:var(--accent-strong);background:linear-gradient(#fff,#eefaf7);transform:translateY(-1px);box-shadow:0 10px 22px #10211d12}.admin-destination strong{letter-spacing:-.01em;font-size:14px;font-weight:850}.admin-destination span,.admin-destination .row-badge{flex:none}.admin-content>.shell{padding-top:20px}.admin-content>.shell>.panel,.admin-content>.shell>.main-grid,.admin-content>.shell>.editor-grid{margin-top:16px}.admin-content>.shell>.panel:first-of-type{border-radius:18px}.admin-content .topbar{box-shadow:var(--panel-shadow);background:linear-gradient(#fffffffa,#f6fbf9f5);border:1px solid #cfdcd6f2;border-radius:18px;justify-content:space-between;align-items:end;gap:16px;margin-bottom:0;padding:18px 20px;display:flex}.admin-content .topbar .brand{gap:6px}.admin-content .section-head h2{letter-spacing:-.02em;font-size:18px}.admin-content .metric{border-radius:14px;min-height:90px}.admin-content .candidate,.admin-content .history-row,.admin-content .batch-toolbar{border-radius:14px}.admin-content .filter-tabs a,.admin-content .pagination a,.admin-content .pagination span{border-radius:999px}.topbar{border-bottom:1px solid var(--line);grid-template-columns:minmax(220px,max-content) minmax(0,1fr);align-items:center;gap:20px;padding-bottom:20px;display:grid}.brand{gap:4px;display:grid}.brand-link{min-width:0;max-width:min(360px,40vw)}.brand-link:hover h1{color:var(--accent-strong)}.brand-kicker{color:var(--accent-strong);letter-spacing:0;font-size:12px;font-weight:800}.brand h1{margin:0;font-size:24px;line-height:1.2}.brand p{color:var(--muted);margin:0}.topbar-right{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"breadcrumbs account""nav account";place-items:center end;gap:10px 12px;min-width:0;display:grid}.breadcrumbs{color:var(--muted);flex-wrap:wrap;grid-area:breadcrumbs;justify-content:flex-end;gap:6px;font-size:12px;font-weight:800;display:flex}.breadcrumbs a{align-items:center;gap:6px;display:inline-flex}.breadcrumbs a:last-child{color:var(--accent-strong)}.nav{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.desktop-nav{grid-area:nav}.mobile-nav{grid-area:nav;display:none;position:relative}.mobile-nav summary{background:var(--panel);border:1px solid var(--line);color:var(--accent-strong);cursor:pointer;text-align:center;border-radius:6px;min-height:40px;padding:9px 12px;font-weight:800;list-style:none}.mobile-nav summary::-webkit-details-marker{display:none}.mobile-nav summary:before{content:"☰";margin-right:6px}.mobile-nav[open] summary{background:#e6f2ef;border-color:#b8d8d0}.mobile-nav-list{background:var(--panel);border:1px solid var(--line);z-index:20;border-radius:8px;gap:10px;width:min(360px,100vw - 64px);max-height:min(70vh,520px);margin-top:8px;padding:10px;display:grid;position:absolute;right:0;overflow:auto;box-shadow:0 18px 42px #191a1c24}.mobile-nav-list .nav-group{flex:initial;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.mobile-nav-list .nav-group+.nav-group{border-left:0;border-top:1px solid var(--line);padding-top:10px;padding-left:0}.nav-group{flex-wrap:wrap;gap:8px;display:flex}.nav-group+.nav-group{border-left:1px solid var(--line);padding-left:8px}.nav a{border:1px solid var(--line);background:var(--panel);border-radius:6px;padding:8px 12px;transition:background-color .14s,border-color .14s,color .14s}.nav a:hover{border-color:var(--accent-line);color:var(--accent-strong);background:#f8faf7}.nav a.active{background:var(--accent-soft);border-color:var(--accent-line);color:var(--accent-strong);font-weight:800}.topbar-account{border:1px solid var(--line);background:linear-gradient(#fff,#f5faf8);border-radius:999px;grid-area:account;gap:1px;min-width:124px;padding:8px 14px;transition:background-color .14s,border-color .14s,box-shadow .14s;display:grid}.topbar-account:hover{border-color:var(--accent-line);background:#fff;box-shadow:0 8px 18px #14201d14}.student-header{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);z-index:20;background:#fffffff0;border:1px solid #cfdcd6f2;border-radius:20px;position:relative;overflow:visible;box-shadow:0 10px 30px #10211d0f}.student-header-main{grid-template-columns:minmax(180px,auto) minmax(0,1fr) auto;align-items:center;gap:12px;min-height:64px;padding:12px 14px;display:grid}.student-header-actions{flex:none;justify-content:flex-end;align-items:center;gap:8px;min-width:0;display:flex}.student-admin-entry{border:1px solid var(--accent-line);color:var(--accent-strong);white-space:nowrap;background:#f3faf8;border-radius:999px;align-items:center;min-height:36px;padding:0 12px;font-size:13px;font-weight:850;text-decoration:none;display:inline-flex}.student-admin-entry:hover{background:var(--accent-soft);color:var(--accent-strong);border-color:#8fd4c8}.student-brand{color:inherit;align-items:center;gap:10px;min-width:0;text-decoration:none;display:inline-flex}.student-brand-mark{color:#fff;letter-spacing:.04em;background:linear-gradient(145deg,#0f766e,#14b8a6);border-radius:12px;flex:0 0 38px;justify-content:center;align-items:center;height:38px;font-size:12px;font-weight:900;display:inline-flex;box-shadow:0 8px 16px #0d948838}.student-brand-copy{gap:1px;min-width:0;display:grid}.student-brand :is(strong,h1){letter-spacing:-.02em;margin:0;font-size:15px;font-weight:700;line-height:1.15}.student-brand small{color:#3f514b;text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.student-domain-nav,.student-subnav{scrollbar-width:none;flex-wrap:nowrap;justify-content:center;align-items:center;gap:4px;min-width:0;display:flex;overflow-x:auto}.student-domain-nav::-webkit-scrollbar{display:none}.student-subnav::-webkit-scrollbar{display:none}.student-domain-nav a,.student-subnav a{color:#31443e;white-space:nowrap;border:1px solid #0000;border-radius:999px;padding:8px 11px;font-size:13px;font-weight:750;text-decoration:none;transition:background-color .14s,border-color .14s,color .14s,box-shadow .14s}.student-domain-nav a:hover,.student-subnav a:hover{border-color:var(--accent-line);color:var(--accent-strong);background:#f3faf8}.student-domain-nav a.active,.student-subnav a.active{border-color:var(--accent-line);color:var(--accent-strong);background:linear-gradient(#e9f8f4,#dff5ef);font-weight:850;box-shadow:inset 0 0 0 1px #0d94880d}.student-mobile-nav{z-index:60;display:none;position:relative}.student-mobile-nav summary{border:1px solid var(--line);color:#31443e;cursor:pointer;-webkit-user-select:none;user-select:none;z-index:62;background:#fff;border-radius:999px;align-items:center;gap:6px;min-height:36px;padding:0 12px;font-size:13px;font-weight:850;list-style:none;display:inline-flex;position:relative}.student-mobile-nav summary::-webkit-details-marker{display:none}.student-mobile-nav-icon{font-size:14px;line-height:1}.student-mobile-nav[open] summary{background:var(--accent-soft);border-color:var(--accent-line);color:var(--accent-strong)}.student-mobile-nav[open]:before{content:"";z-index:60;background:#10211d6b;position:fixed;inset:0}.student-mobile-sheet{border:1px solid var(--line);overscroll-behavior:contain;max-height:min(78vh,640px);padding:14px 14px calc(18px + env(safe-area-inset-bottom,0px));z-index:61;-webkit-overflow-scrolling:touch;background:#fff;border-radius:20px 20px 0 0;gap:8px;width:auto;display:grid;position:fixed;bottom:0;left:0;right:0;overflow:auto;box-shadow:0 -12px 40px #10211d2e}.student-mobile-sheet-head{justify-content:space-between;align-items:baseline;gap:10px;padding:2px 4px 8px;display:flex}.student-mobile-sheet-head strong{letter-spacing:-.02em;font-size:16px}.student-mobile-sheet-hint{color:#5a6b65;font-size:12px;font-weight:650}.student-mobile-sheet-nav>a,.mobile-nav-domain a{color:#20352f;border-radius:12px;min-height:44px;padding:11px 12px;font-size:15px;font-weight:800;text-decoration:none}.student-mobile-sheet-nav>a{background:#f7fbf9;border:1px solid #0000}.student-mobile-nav a:hover,.student-mobile-nav a.active,.student-mobile-sheet-nav>a.active,.mobile-nav-domain a.active{background:var(--accent-soft);border-color:var(--accent-line);color:var(--accent-strong)}.mobile-nav-domain{border-top:1px solid var(--line);gap:6px;margin-top:4px;padding-top:10px;display:grid}.mobile-nav-domain strong{color:#5a6b65;letter-spacing:.04em;text-transform:none;padding:0 8px;font-size:12px;font-weight:850}.mobile-nav-domain>div{grid-template-columns:1fr;gap:4px;display:grid}.student-header-main .topbar-account{border:1px solid var(--line);background:#fff;border-radius:999px;align-items:center;gap:8px;min-width:0;padding:4px 10px 4px 4px;text-decoration:none;display:inline-flex}.student-header-main .topbar-account:hover{border-color:var(--accent-line);box-shadow:0 8px 18px #10211d14}.topbar-account-avatar{color:#fff;background:linear-gradient(145deg,#0f766e,#14b8a6);border-radius:999px;flex:0 0 30px;justify-content:center;align-items:center;width:30px;height:30px;font-size:12px;font-weight:900;display:inline-flex}.topbar-account-meta{gap:0;min-width:0;line-height:1.15;display:grid}.topbar-account-meta span{color:#5a6b65;font-size:11px;font-weight:700}.topbar-account-meta strong{color:#10211d;text-overflow:ellipsis;white-space:nowrap;max-width:88px;font-size:13px;font-weight:850;overflow:hidden}.student-page-bar{background:linear-gradient(#f7fbf9,#f2f7f4);border-top:1px solid #cfdcd6f2;border-radius:0 0 20px 20px;justify-content:space-between;align-items:end;gap:18px;min-height:72px;padding:12px 16px 14px;display:flex}.student-page-title{gap:3px;min-width:0;display:grid}.student-page-title>span{color:var(--accent-strong);letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:900}.student-page-title h1{letter-spacing:-.03em;margin:0;font-size:24px;line-height:1.15}.student-page-title p{color:#3f514b;max-width:52ch;margin:0;font-size:13.5px;line-height:1.5}.student-page-bar .breadcrumbs{justify-content:flex-end}.student-page-bar .breadcrumbs a+a:before{color:#9ba19a;content:"/";margin-right:6px}@media (max-width:860px){.shell{padding:16px 14px 36px}.student-page-title h1{font-size:20px}.countdown-panel{min-height:auto;padding:22px}.countdown-panel strong{font-size:36px}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.student-shell .learning-loop-panel{background:linear-gradient(#fffffffa,#f7fbf9f5);margin-top:0}.learning-loop-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.learning-loop-step{border:1px solid var(--line);border-radius:var(--radius-md);color:inherit;background:linear-gradient(#fff,#f8fbf9);grid-template-columns:auto 1fr;align-items:center;gap:12px;padding:13px 14px;text-decoration:none;transition:border-color .15s,box-shadow .15s,transform .15s;display:grid}.learning-loop-step:hover,.learning-loop-step:focus-visible{border-color:var(--accent-line);box-shadow:var(--panel-shadow-hover);outline:none;transform:translateY(-1px)}.learning-loop-order{background:var(--accent-soft);border:1px solid var(--accent-line);min-width:2.1rem;height:2.1rem;color:var(--accent-strong);border-radius:999px;justify-content:center;align-items:center;font-size:.78rem;font-weight:850;display:inline-flex}.learning-loop-body{gap:2px;display:grid}.learning-loop-body strong{letter-spacing:-.01em;font-size:.98rem}.learning-loop-body small{color:var(--muted);font-size:.84rem}.empty-state-action{margin-top:12px}.topbar-account span{color:var(--muted);font-size:12px}.topbar-account strong{overflow-wrap:anywhere;font-size:13px}.text-link{color:var(--accent-strong);cursor:pointer;font:inherit;text-underline-offset:.18em;background:0 0;border:0;margin-top:14px;padding:0;font-weight:700;text-decoration:underline;text-decoration-thickness:1.5px;display:inline-flex}.text-link.inline{margin-top:0}.button{background:linear-gradient(180deg, #14b8a6 0%, var(--accent) 100%);border:1px solid var(--accent-strong);color:#fff;border-radius:999px;justify-content:center;align-items:center;min-height:40px;padding:9px 16px;font-weight:750;transition:background-color .14s,border-color .14s,box-shadow .14s,color .14s,transform .14s;display:inline-flex;box-shadow:0 8px 18px #0d948838}.button:not(:disabled):hover{background:linear-gradient(180deg, #0f766e 0%, var(--accent-strong) 100%);border-color:var(--accent-strong);transform:translateY(-1px);box-shadow:0 10px 22px #0f766e47}.button.secondary{border-color:var(--line);box-shadow:none;color:var(--foreground);background:#ffffffeb}.button.secondary:not(:disabled):hover{border-color:var(--accent-line);color:var(--accent-strong);background:#f3faf8;box-shadow:0 8px 18px #14201d0f}.button.danger{border-color:var(--danger-line);color:var(--danger);background:#fff}.button.danger:not(:disabled):hover{background:var(--danger-soft);border-color:var(--danger)}.button:disabled{color:#707770;cursor:not-allowed;background:#d6dbd6;border-color:#d6dbd6}.main-grid{grid-template-columns:minmax(0,1.25fr) minmax(300px,.85fr);gap:18px;margin-top:0;display:grid}.panel{border-radius:var(--radius-lg);box-shadow:var(--panel-shadow);background:#fffffff0;border:1px solid #d5e0dbf2;padding:22px}.panel h2{letter-spacing:-.02em;margin:0 0 14px;font-size:18px}.subsection-title{color:var(--muted);margin:0 0 10px;font-size:13px}.metric-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.metric{border:1px solid var(--line);border-radius:var(--radius-md);background:linear-gradient(#fff 0%,#f8fbf9 100%);padding:14px 15px;transition:border-color .14s,box-shadow .14s,transform .14s}.metric:hover{border-color:var(--accent-line);transform:translateY(-1px);box-shadow:0 10px 20px #14201d0f}.metric.success{background:var(--accent-soft);border-color:var(--accent-line)}.metric.warning{background:var(--warning-soft);border-color:var(--warning-line)}.metric.danger{background:var(--danger-soft);border-color:var(--danger-line)}.metric span{color:var(--muted);font-size:13px;display:block}.metric strong{letter-spacing:-.03em;margin-top:8px;font-size:28px;display:block}.metric.success strong{color:var(--accent-strong)}.metric.warning strong{color:var(--warning)}.metric.danger strong{color:var(--danger)}.workflow{gap:10px;margin:0;padding:0;display:grid}.workflow li{border:1px solid var(--line);border-radius:8px;grid-template-columns:32px 1fr;align-items:start;gap:6px;padding:12px;list-style:none;display:grid}.workflow b{color:var(--accent-strong);background:#e6f2ef;border-radius:999px;justify-content:center;align-items:center;width:28px;height:28px;display:inline-flex}.workflow p{color:var(--muted);margin:2px 0 0}.course-list{gap:10px;display:grid}.course{border:1px solid var(--line);border-radius:var(--radius-md);padding:14px;transition:border-color .14s,box-shadow .14s,transform .14s,background-color .14s}.course h3{margin:0 0 6px;font-size:16px}.course p{color:var(--muted);margin:0}.tag-row{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.tag{color:#41464d;background:#eef0ec;border-radius:999px;padding:4px 8px;font-size:12px}.account-strip{background:linear-gradient(#fff,#f5faf8);justify-content:space-between;align-items:center;gap:14px;display:flex}.dashboard-hero{grid-template-columns:minmax(0,1.2fr) minmax(300px,.85fr);align-items:stretch;gap:16px;margin-top:0;display:grid}.countdown-panel{background:var(--hero-gradient);border-radius:var(--radius-xl);color:#fff;border:1px solid #ffffff14;gap:12px;min-height:240px;padding:28px;display:grid;position:relative;overflow:hidden;box-shadow:0 18px 40px #0b3d3847}.countdown-panel:after{content:"";pointer-events:none;background:radial-gradient(circle at 88% 18%,#ffffff2e,#0000 28%),radial-gradient(circle at 12% 88%,#ffffff1a,#0000 34%);position:absolute;inset:0}.countdown-panel>*{z-index:1;position:relative}.countdown-panel span{color:#e8faf6e0;letter-spacing:.04em;font-size:13px;font-weight:850}.countdown-panel strong{letter-spacing:-.04em;font-size:46px;line-height:1.02}.countdown-panel p{color:#e8faf6db;max-width:46ch;margin:0;line-height:1.6}.multi-countdown-panel{gap:18px;min-height:294px}.countdown-main{gap:10px;display:grid}.course-countdown-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.course-countdown-card,.course-countdown-empty{border-radius:var(--radius-md);color:#fff;background:#ffffff1a;border:1px solid #ffffff29;gap:6px;min-height:118px;padding:13px;text-decoration:none;transition:background-color .14s,border-color .14s,transform .14s,box-shadow .14s;display:grid}.course-countdown-card:hover,.course-countdown-card.active{background:#ffffff29;border-color:#ffffff61;transform:translateY(-1px);box-shadow:0 10px 24px #082f2c2e}.course-countdown-card span,.course-countdown-empty span{color:#cbe6df;font-size:12px;font-weight:900}.course-countdown-card strong,.course-countdown-empty strong{font-size:20px;line-height:1.15}.course-countdown-card p,.course-countdown-empty p{color:#d7e4df;font-size:13px;line-height:1.45}.countdown-action{justify-self:start;margin-top:4px}.quick-action-grid{gap:10px;display:grid}.quick-action{border:1px solid var(--line);border-radius:var(--radius-md);background:linear-gradient(#fff 0%,#f7fbf9 100%);gap:8px;min-height:74px;padding:15px 16px;transition:background-color .14s,border-color .14s,box-shadow .14s,transform .14s;display:grid}.quick-action:hover,.starter-step:hover,.course:hover,a.stat-row:hover,.mastery-priority-row:hover,.template-card:hover{border-color:var(--accent-line);background:#f8faf7}.quick-action:hover,.starter-step:hover,.course:hover,.mastery-priority-row:hover,.template-card:hover{transform:translateY(-1px);box-shadow:0 10px 24px #191a1c14}.quick-action span{color:var(--muted);font-size:13px;font-weight:700}.quick-action strong{letter-spacing:-.03em;font-size:24px}.starter-panel{gap:4px;display:grid}.starter-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.starter-step{border:1px solid var(--line);border-radius:8px;gap:8px;min-height:138px;padding:14px;transition:background-color .14s,border-color .14s,box-shadow .14s,transform .14s;display:grid}.starter-step span{color:var(--accent-strong);background:#e6f2ef;border:1px solid #b8d8d0;border-radius:999px;justify-content:center;align-items:center;width:28px;height:28px;font-size:12px;font-weight:900;display:inline-flex}.starter-step strong{font-size:16px}.starter-step p{color:var(--muted);margin:0;line-height:1.5}.focus-panel{background:linear-gradient(#fffffffa,#f6fbf9f5);align-content:start}.focus-action-list{gap:12px;display:grid}.focus-action-list .course,.focus-action-list .focus-action-card{border:1px solid var(--line);background:linear-gradient(#fff,#f7fbf9);border-radius:16px;grid-template-columns:48px minmax(0,1fr);align-items:center;gap:0 14px;min-height:88px;padding:16px;text-decoration:none;display:grid}.focus-action-list .course:hover,.focus-action-list .focus-action-card:hover{border-color:var(--accent-line);box-shadow:var(--panel-shadow-hover);transform:translateY(-1px)}.focus-action-list .course h3,.focus-action-list .course p,.focus-action-list .focus-action-card h3,.focus-action-list .focus-action-card p{margin:0}.focus-action-list .course h3,.focus-action-list .focus-action-card h3{color:#10211d;letter-spacing:-.025em;font-size:18px;font-weight:850;line-height:1.25}.focus-action-list .course p,.focus-action-list .focus-action-card p{color:#3f514b;margin-top:4px;font-size:14.5px;line-height:1.55}.focus-action-body{gap:4px;min-width:0;display:grid}.focus-action-head{justify-content:space-between;align-items:center;gap:10px;min-width:0;display:flex}.focus-action-head h3{min-width:0}.focus-action-head .row-badge{flex:none}.focus-action-list .focus-action-card.needs-action{border-color:var(--accent-line);background:linear-gradient(#fff,#eefaf7)}.focus-action-list .focus-action-card.danger-tone{border-color:var(--danger-line);background:linear-gradient(#fff,#fff5f6)}.focus-action-index{border:1px solid var(--accent-line);color:var(--accent-strong);letter-spacing:.02em;background:linear-gradient(#e9f8f4,#d9f3ee);border-radius:14px;justify-content:center;align-items:center;width:48px;height:48px;font-size:14px;font-weight:900;display:inline-flex}.compact-entry-panel .stat-row{padding-block:14px}.stat-list{gap:8px;display:grid}.stat-row{border-bottom:1px solid #0000;justify-content:space-between;align-items:center;padding:10px 0;transition:background-color .14s,border-color .14s,color .14s,box-shadow .14s;display:flex}a.stat-row{border:1px solid var(--line);border-radius:var(--radius-md);background:linear-gradient(#fff,#f7fbf9);margin:0;padding:12px 14px}a.stat-row:hover{border-color:var(--accent-line);color:var(--accent-strong);transform:translateY(-1px);box-shadow:0 10px 20px #14201d0f}.stat-row:last-child{border-bottom:0}.reason-stat-row{gap:12px}.reason-stat-label{flex:1;gap:7px;min-width:0;display:grid}.reason-stat-label>span:first-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.reason-stat-track{background:#eef0ec;border-radius:999px;height:4px;display:block;overflow:hidden}.reason-stat-track span{background:var(--accent);height:100%;display:block}.attention-panel{border-color:#edd18a}.muted-copy{color:var(--muted);margin:0;line-height:1.6}.compact-stats{grid-template-columns:repeat(5,minmax(0,1fr))}.candidate-list{gap:12px;display:grid}.candidate{border:1px solid var(--line);border-radius:8px;gap:12px;padding:14px;transition:border-color .14s,box-shadow .14s;display:grid}.candidate:hover{border-color:var(--accent-line);box-shadow:0 8px 20px #191a1c0e}.candidate-head{justify-content:space-between;align-items:start;gap:12px;display:flex}.candidate-title-block{flex:1;min-width:0}.candidate-check{color:var(--muted);white-space:nowrap;align-items:center;gap:6px;padding-top:3px;font-size:12px;display:inline-flex}.candidate-check-detailed{border:1px solid var(--accent-line);border-radius:var(--radius-sm);white-space:normal;align-items:flex-start;padding:12px}.candidate-check-detailed>span{gap:4px;display:grid}.candidate-check-detailed strong{color:var(--ink);font-size:14px}.candidate-check-detailed small{color:var(--muted);line-height:1.6}.quality-chip-row{flex-wrap:wrap;gap:6px;display:flex}.quality-chip{background:var(--accent-soft);border:1px solid var(--accent-line);color:var(--accent-strong);border-radius:999px;padding:4px 8px;font-size:12px;font-weight:700}.quality-chip.warning{background:var(--warning-soft);border-color:var(--warning-line);color:var(--warning)}.quality-chip.danger{background:var(--danger-soft);border-color:var(--danger-line);color:var(--danger)}.quality-chip.muted{border-color:var(--line);color:var(--muted);background:#eef0ec}.quality-chip.success{background:var(--accent-soft);border-color:var(--accent-line);color:var(--accent-strong)}.candidate h3{margin:2px 0 0;font-size:16px}.question-image-assets{gap:8px;display:grid}.question-image-list{gap:10px;display:grid}.question-image-frame{border:1px solid var(--line);background:#fff;border-radius:6px;margin:0;overflow:hidden}.question-image-frame img{object-fit:contain;width:100%;height:auto;max-height:980px;display:block}.question-image-frame figcaption{border-top:1px solid var(--line);color:var(--muted);padding:8px 10px;font-size:12px}.eyebrow{color:var(--muted);font-size:12px;display:block}.status-pill{background:var(--accent-soft);border:1px solid var(--accent-line);color:var(--accent-strong);letter-spacing:.01em;white-space:nowrap;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:800}.status-pill.warning{background:var(--warning-soft);border-color:var(--warning-line);color:var(--warning)}.status-pill.success{background:var(--accent-soft);border-color:var(--accent-line);color:var(--accent-strong)}.status-pill.danger{background:var(--danger-soft);border-color:var(--danger-line);color:var(--danger)}.section-head{justify-content:space-between;align-items:start;gap:16px;margin-bottom:16px;display:flex}.section-head h2{letter-spacing:-.02em;margin:0}.section-head .eyebrow{color:var(--accent-strong);letter-spacing:.08em;text-transform:uppercase;margin-bottom:4px;font-weight:850}.filter-tabs{flex-wrap:wrap;gap:6px;display:flex}.filter-tabs a{border:1px solid var(--line);color:var(--muted);border-radius:999px;padding:6px 10px;font-size:12px;font-weight:700}.filter-tabs a.active{color:var(--accent-strong);background:#e6f2ef;border-color:#b8d8d0}.report-filters{flex-wrap:wrap;justify-content:flex-end;align-items:end;gap:10px;display:flex}.date-range-form{flex-wrap:wrap;align-items:end;gap:8px;display:flex}.date-range-form label{gap:4px;display:grid}.date-range-form span{color:var(--muted);font-size:12px;font-weight:700}.date-range-form input{border:1px solid var(--line);background:#fff;border-radius:6px;min-height:36px;padding:7px 9px}.date-range-form input:focus-visible,.field input:focus-visible,.field select:focus-visible,.field textarea:focus-visible{border-color:var(--accent)}.insight-row{gap:14px}.action-chip{background:var(--accent-soft);border:1px solid var(--accent-line);color:var(--accent-strong);white-space:nowrap;border-radius:6px;padding:6px 10px;font-size:13px}.filter-form{grid-template-columns:minmax(220px,1.4fr) repeat(3,minmax(150px,1fr)) auto;align-items:end;gap:12px;display:grid}.filter-actions{gap:8px;display:flex}.batch-toolbar{border:1px solid var(--line);background:#f6f7f2;border-radius:8px;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px;padding:10px;display:flex}.batch-toolbar span{color:var(--muted);margin-right:auto;font-size:13px}.prompt{margin:0;line-height:1.6}.option-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.option-row{border:1px solid var(--line);border-radius:6px;grid-template-columns:24px 1fr;gap:8px;padding:8px;display:grid}.option-row b{color:var(--accent-strong)}.candidate-meta{color:var(--muted);flex-wrap:wrap;gap:8px;font-size:12px;display:flex}.candidate-meta span{background:#eef0ec;border-radius:999px;padding:4px 8px}.candidate-tools{flex-wrap:wrap;gap:8px;display:flex}.candidate-tools.vertical{display:grid}.candidate-tools.vertical .button{width:100%}.pagination{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;margin-top:14px;display:flex}.pagination a,.pagination span{border:1px solid var(--line);color:var(--muted);text-align:center;border-radius:6px;min-width:36px;padding:7px 10px;font-size:13px;font-weight:700}.pagination a.active{color:var(--accent-strong);background:#e6f2ef;border-color:#b8d8d0}.pagination span{color:#9aa09a;background:#f6f7f2}.mistake-form{gap:12px;display:grid}.mistakes-overview-grid{grid-template-columns:minmax(0,1fr) minmax(320px,460px);align-items:start}.mistakes-workbench{gap:16px;display:grid}.mistakes-workbench-head{align-items:flex-start;margin-bottom:0}.mistakes-workbench-head .muted-copy{margin-top:4px}.mistakes-metric-grid{grid-template-columns:repeat(5,minmax(76px,1fr))}.mistakes-action-row{flex-wrap:wrap;gap:8px;display:flex}.mistake-priority-list{border-top:1px solid var(--line);gap:10px;padding-top:14px;display:grid}.mistake-priority-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.mistake-priority-head h3{margin:0;font-size:15px}.mistake-priority-head span{color:var(--muted);font-size:12px;font-weight:800}.mistake-preview-row{border:1px solid var(--line);color:inherit;border-radius:8px;grid-template-columns:32px minmax(0,1fr);align-items:center;gap:10px;padding:10px;text-decoration:none;transition:background-color .14s,border-color .14s,box-shadow .14s,transform .14s;display:grid}.mistake-preview-row:hover{border-color:var(--accent-line);background:#f8faf7;transform:translateY(-1px);box-shadow:0 8px 18px #191a1c0f}.mistake-preview-index{background:var(--accent-soft);color:var(--accent-strong);border-radius:999px;justify-content:center;align-items:center;width:28px;height:28px;font-size:13px;font-weight:900;display:inline-flex}.mistake-preview-main{gap:5px;min-width:0;display:grid}.mistake-preview-main strong{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:14px;line-height:1.4;display:-webkit-box;overflow:hidden}.mistake-preview-main span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.compact-empty{padding:10px 12px}.mistakes-import-panel .auth-stack{gap:10px}.mistakes-import-panel .button{width:100%}.history-list{gap:10px;display:grid}.history-row{border:1px solid var(--line);border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;padding:14px;display:grid}.history-main{gap:8px;min-width:0;display:grid}.history-main h3{margin:0;font-size:16px}.trend-bars{align-items:end;gap:10px;min-height:180px;display:flex}.report-trend-bars{background:linear-gradient(to top, var(--line) 1px, transparent 1px), linear-gradient(to top, #d9ddd68c 1px, transparent 1px);border-bottom:1px solid var(--line);background-position:0 calc(100% - 45px),0 calc(100% - 89px);background-size:100% 44px;align-items:stretch;gap:12px;min-height:224px;padding:8px 4px 0}.compact-trend{min-height:132px}.trend-bar{flex:1;grid-template-rows:1fr auto;align-items:center;gap:6px;min-width:22px;display:grid}.report-trend-bar{grid-template-rows:22px 132px 18px 18px;gap:6px;min-width:58px}.report-trend-bar strong{color:var(--foreground);text-align:center;align-self:end;font-size:12px;font-weight:800;line-height:1}.report-trend-bar.empty-day strong,.report-trend-bar.empty-day small{color:var(--muted)}.trend-plot{justify-content:center;align-items:end;height:132px;min-height:132px;display:flex}.trend-bar span{background:var(--accent);border-radius:6px 6px 0 0;align-self:end;width:100%;min-height:6px;display:block}.report-trend-bar .trend-plot span{width:72%;max-width:46px;transition:background .15s,transform .15s;box-shadow:0 8px 18px #0f766e29}.report-trend-bar:hover .trend-plot span{background:var(--accent-strong);transform:translateY(-2px)}.trend-bar span.empty{background:0 0;height:0;min-height:0}.trend-empty{background:#dfe3dd;border-radius:999px;align-self:end;width:min(46px,72%);height:4px;min-height:4px;display:block}.trend-bar em{color:var(--muted);text-align:center;font-size:12px;font-style:normal}.trend-bar small{color:var(--muted);text-align:center;font-size:12px}.history-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.empty-state{border:1px dashed var(--accent-line);border-radius:var(--radius-md);background:linear-gradient(#f8fbf9,#f2f7f4);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:16px;display:flex}.empty-state strong{letter-spacing:-.01em;font-size:15px;display:block}.empty-state p{color:var(--muted);margin:4px 0 0}.compact-field{min-width:220px}.mastery-priority-list{gap:10px;display:grid}.mastery-priority-row{border:1px solid var(--line);border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px;transition:background-color .14s,border-color .14s,box-shadow .14s,transform .14s;display:grid}.mastery-priority-row strong{margin:2px 0 4px;font-size:15px;display:block}.mastery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:20px;display:grid}.mastery-card{background:var(--panel);border:1px solid var(--line);border-radius:8px;gap:12px;padding:16px;transition:border-color .14s,box-shadow .14s;display:grid}.mastery-card.warning{background:linear-gradient(180deg, #fff 0%, var(--warning-soft) 180%);border-color:var(--warning-line)}.mastery-card:hover{border-color:var(--accent-line);box-shadow:0 10px 24px #191a1c12}.mastery-card-head{justify-content:space-between;align-items:start;gap:12px;display:flex}.mastery-card-head h2{margin:2px 0 0;font-size:17px}.mastery-bar{background:#eef0ec;border-radius:999px;height:8px;overflow:hidden}.mastery-bar span{background:var(--accent);min-width:0;height:100%;transition:width .22s;display:block}.mastery-stat-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.mastery-stat-grid div{border:1px solid var(--line);background:#f6f7f2;border-radius:6px;padding:10px}.mastery-stat-grid span{color:var(--muted);font-size:12px;display:block}.mastery-stat-grid strong{margin-top:4px;font-size:18px;display:block}.review-plan-list{gap:14px;margin-top:20px;display:grid}.plan-start-row{border:1px solid var(--line);border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;margin-top:16px;padding:14px;display:grid}.plan-start-row strong{margin-bottom:4px;font-size:15px;display:block}.plan-status-stack{place-items:flex-end end;gap:6px;display:grid}.review-plan-card{background:var(--panel);border:1px solid var(--line);border-radius:8px;grid-template-columns:44px minmax(0,1fr) minmax(280px,.35fr);align-items:start;gap:14px;padding:16px;display:grid}.review-plan-rank{color:var(--accent-strong);background:#e6f2ef;border-radius:999px;justify-content:center;align-items:center;width:34px;height:34px;font-weight:800;display:inline-flex}.review-plan-main{gap:10px;min-width:0;display:grid}.review-plan-head{justify-content:space-between;align-items:start;gap:12px;display:flex}.review-plan-head h2{margin:2px 0 0;font-size:17px}.review-plan-actions{gap:10px;display:grid}.review-plan-actions .mastery-stat-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.review-plan-actions .button{width:100%}.material-list{gap:10px;display:grid}.material-row{border:1px solid var(--line);border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;padding:14px;display:grid}.material-main{min-width:0}.material-main h3{margin:2px 0 6px;font-size:16px}.material-main p{color:var(--muted);overflow-wrap:anywhere;margin:0 0 10px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:12px}.preview-list,.extract-list{gap:10px;display:grid}.preview-row{border:1px solid var(--line);border-radius:8px;grid-template-columns:120px minmax(0,1fr) 110px;align-items:center;gap:10px;padding:12px;display:grid}.preview-row span,.preview-row em{color:var(--muted);font-size:12px;font-style:normal}.preview-row strong{text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.ab-comparison-list{gap:14px;display:grid}.ab-comparison-card,.ab-variant-card{border:1px solid var(--line);border-radius:8px;gap:14px;padding:14px;display:grid}.ab-comparison-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.compact-head{align-items:start;margin:0}.compact-head h4{margin:2px 0 0;font-size:15px}.compact-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}.course-budget-form{grid-template-columns:auto minmax(120px,160px) auto auto;align-items:end;gap:10px;display:grid}.compact-field{margin:0}.inline-action-form{margin-top:10px}.ab-policy-form{border:1px solid var(--line);background:#f6f7f2;border-radius:8px;grid-template-columns:minmax(180px,1.2fr) repeat(4,minmax(92px,1fr)) auto;align-items:end;gap:10px;margin:12px 0 16px;padding:12px;display:grid}.ab-policy-form strong{margin-top:2px;font-size:13px;line-height:1.4;display:block}.audit-batch-form{gap:12px;display:grid}.audit-batch-actions{border-bottom:1px solid var(--line);padding-bottom:12px}.audit-row{grid-template-columns:auto minmax(0,1fr) auto}.audit-filter-form{grid-template-columns:minmax(220px,1.4fr) minmax(150px,.7fr) minmax(180px,1fr) repeat(2,minmax(140px,.7fr)) auto}.audit-log-row{align-items:start}.audit-retention-form{flex-wrap:wrap;justify-content:flex-end;align-items:end;gap:10px;display:flex}.audit-check{align-self:start;padding-top:4px}.budget-warning-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.budget-warning-row{border:1px solid var(--line);border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:12px;display:flex}.budget-warning-row strong{margin-top:2px;font-size:16px;display:block}.extract-block{border:1px solid var(--line);border-radius:8px;gap:10px;padding:14px;display:grid}.extract-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.extract-head h3{margin:0;font-size:15px}.extract-head span{color:var(--muted);white-space:nowrap;font-size:12px}.inline-form{display:inline-flex}.confirm-backdrop{z-index:50;background:#191a1c6b;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.confirm-dialog{border:1px solid var(--line);background:#fff;border-radius:8px;gap:18px;width:min(440px,100%);max-width:440px;padding:20px;display:grid;box-shadow:0 24px 72px #191a1c38}.confirm-dialog h2{margin:0 0 8px;font-size:18px}.confirm-dialog p{color:var(--muted);margin:0;line-height:1.6}.confirm-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.question-picker{border:1px solid var(--line);border-radius:8px;gap:8px;max-height:520px;padding:12px;display:grid;overflow:auto}.question-picker h3{margin:0 0 4px;font-size:15px}.question-pick-row{border:1px solid var(--line);border-radius:6px;grid-template-columns:20px 1fr;align-items:start;gap:10px;padding:10px;display:grid}.question-pick-row input{margin-top:3px}.question-pick-row span{gap:3px;min-width:0;display:grid}.question-pick-row b{font-size:14px}.question-pick-row em{color:var(--muted);font-size:12px;font-style:normal}.question-pick-row.disabled{color:#747a72;background:#f4f4f0}.question-pick-row.disabled b{color:#747a72}.check-section{gap:8px;display:grid}.check-section-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.check-section>span,.check-section-head>span{color:var(--muted);font-size:13px;font-weight:700}.check-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.check-grid.compact{grid-template-columns:repeat(4,minmax(0,1fr))}.check-card{border:1px solid var(--line);border-radius:6px;align-items:center;gap:8px;min-height:40px;padding:8px 10px;transition:background-color .14s,border-color .14s,box-shadow .14s;display:flex}.check-card:hover{border-color:var(--accent-line);background:#f8faf7}.check-card input[type=checkbox],.check-card input[type=radio],input[type=checkbox],input[type=radio]{accent-color:var(--accent)}@supports selector(:has(*)){.check-card:has(input:checked){background:var(--accent-soft);border-color:var(--accent-line);box-shadow:inset 0 0 0 1px #0f766e29}}.check-card strong{font-size:13px}.inline-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.template-list{gap:10px;display:grid}.template-card{border:1px solid var(--line);border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px;transition:background-color .14s,border-color .14s,box-shadow .14s,transform .14s;display:grid}.template-card strong{margin-bottom:4px;font-size:14px;display:block}.weak-action-row{background:0 0;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;width:100%;display:grid}.weak-action-row span{min-width:0}.weak-action-row .button{min-height:32px;padding:6px 10px}.exam-rules{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.exam-rules span{border:1px solid var(--line);color:var(--muted);text-align:center;background:#f6f7f2;border-radius:6px;padding:10px;font-size:13px;font-weight:700}.exam-control-panel{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;display:grid}.exam-control-panel h2{margin-bottom:6px}.exam-timer{color:var(--accent-strong);background:#e6f2ef;border:1px solid #b8d8d0;border-radius:8px;place-items:center;min-width:180px;padding:12px 16px;display:grid}.exam-timer.warning{color:var(--warning);background:#fff7e6;border-color:#edd18a}.exam-timer span{font-size:12px;font-weight:700}.exam-timer strong{margin-top:2px;font-size:24px;line-height:1.2}.knowledge-course-list{gap:20px;margin-top:20px;display:grid}.knowledge-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.knowledge-card{border:1px solid var(--line);border-radius:8px;gap:10px;padding:14px;display:grid}.knowledge-card-head{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;display:grid}.knowledge-card-head strong{min-width:0;font-size:15px}.knowledge-card-head em{color:var(--muted);font-size:12px;font-style:normal}.knowledge-card p{color:var(--muted);margin:0;line-height:1.6}.knowledge-question-list{gap:12px;margin-top:14px;display:grid}.knowledge-question-row{border:1px solid var(--line);border-radius:8px;grid-template-columns:minmax(0,1fr) minmax(280px,.36fr);gap:16px;padding:14px;display:grid}.knowledge-question-main{gap:10px;min-width:0;display:grid}.knowledge-question-main h3{margin:2px 0 0;font-size:16px}.knowledge-correction-actions{align-content:start;gap:8px;display:grid}.knowledge-correction-actions .button{width:100%}.knowledge-correction-form{gap:8px;display:grid}.quality-count-row{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:14px;display:grid}.quality-count{border:1px solid var(--line);border-radius:8px;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;display:flex}.quality-count.active{color:var(--accent-strong);background:#e6f2ef;border-color:#b8d8d0}.quality-count span{color:var(--muted);font-size:13px}.quality-count strong{font-size:16px}.quality-question-list{gap:12px;margin-top:20px;display:grid}.quality-question-row{background:var(--panel);border:1px solid var(--line);border-radius:8px;grid-template-columns:minmax(0,1fr) minmax(180px,.2fr);gap:16px;padding:16px;display:grid}.quality-question-main{gap:10px;min-width:0;display:grid}.quality-question-main h2{margin:2px 0 0;font-size:17px}.quality-question-main p{margin:0;line-height:1.65}.quality-preview{border:1px solid var(--line);background:#f6f7f2;border-radius:8px;gap:6px;padding:10px 12px;display:grid}.progress-track{background:#eef0ec;border-radius:999px;height:8px;overflow:hidden}.progress-track span{background:var(--accent);min-width:0;height:100%;transition:width .22s;display:block}.quality-preview strong{font-size:13px}.quality-preview p{color:var(--muted)}.source-evidence{border:1px solid var(--line);background:#f8faf7;border-radius:8px;margin-top:12px;padding:12px}.source-evidence summary{color:var(--accent-strong);cursor:pointer;font-size:13px;font-weight:800}.source-evidence-list{gap:10px;margin-top:10px;display:grid}.source-evidence-item{border-top:1px solid var(--line);gap:4px;padding-top:10px;display:grid}.source-evidence-item strong{font-size:13px}.source-evidence-item span,.source-evidence-item em{color:var(--muted);font-size:12px}.source-evidence-item p{color:#41464d;margin:0;line-height:1.6}.quality-editor{border:1px solid var(--line);border-radius:8px;padding:10px 12px}.quality-editor summary{color:var(--accent-strong);cursor:pointer;font-weight:800}.quality-edit-form{gap:12px;margin-top:12px;display:grid}.quality-question-actions{align-content:start;gap:8px;display:grid}.quality-question-actions .button{width:100%}.rubric-score-list{gap:10px;display:grid}.practice-question-list{gap:14px;margin-top:20px;display:grid}.practice-question{background:var(--panel);border:1px solid var(--line);border-radius:8px;gap:12px;padding:16px;transition:border-color .14s,box-shadow .14s;display:grid}.practice-question:hover{border-color:var(--accent-line);box-shadow:0 8px 20px #191a1c0e}.practice-question h2,.practice-question h3{margin:0;font-size:17px}.practice-question p{margin:0;line-height:1.7}.practice-submit-panel{justify-content:space-between;align-items:center;gap:12px;display:flex}.answer-details{border:1px solid var(--line);border-radius:6px;padding:10px 12px}.answer-details summary{color:var(--accent-strong);cursor:pointer;font-weight:700}.answer-body{gap:8px;padding-top:10px;display:grid}.answer-body p{color:var(--muted)}.learning-rich-text{color:inherit;overflow-wrap:anywhere;white-space:normal;line-height:1.8;display:block}.learning-math-inline{background:var(--accent-soft);border:1px solid var(--accent-line);color:var(--ink);border-radius:6px;margin-inline:3px;padding:0 5px;font-family:Times New Roman,STIX Two Math,serif;display:inline-block}.learning-math-block{border:1px solid var(--accent-line);color:var(--ink);white-space:pre-wrap;background:linear-gradient(135deg,#f5fbf8,#f8faf8);border-radius:10px;margin-block:10px;padding:14px 16px;font-family:Times New Roman,STIX Two Math,serif;font-size:16px;line-height:1.7;display:block;overflow-x:auto}.question-stem-heading .learning-rich-text{font:inherit}.learning-answer-section{background:var(--surface-subtle,#f8faf8);border:1px solid var(--line);border-radius:10px;gap:8px;padding:12px 14px;display:grid}.learning-answer-section>span,.result-detail-card>span{color:var(--muted);letter-spacing:.04em;font-size:12px;font-weight:700}.result-summary{grid-template-columns:minmax(0,1fr) auto;gap:16px;display:grid}.result-summary h2{margin-bottom:6px}.result-summary-main{gap:14px;min-width:0;display:grid}.result-metrics{grid-template-columns:repeat(auto-fit,minmax(108px,1fr));gap:10px;max-width:680px;display:grid}.result-metrics .metric strong{font-size:22px}.result-actions{align-content:start;gap:8px;display:grid}.review-jump-list{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.review-jump-list strong{font-size:13px}.review-jump-list a{color:var(--warning);background:#fff8e8;border:1px solid #edd18a;border-radius:999px;padding:5px 8px;font-size:12px;font-weight:700}.analysis-grid{gap:20px;margin-top:20px;display:grid}.analysis-table{border:1px solid var(--line);border-radius:8px;display:grid;overflow:hidden}.analysis-table-head,.analysis-table-row{grid-template-columns:minmax(180px,1.6fr) repeat(5,minmax(78px,.7fr));align-items:center;gap:10px;padding:10px 12px;display:grid}.analysis-table.with-action .analysis-table-head,.analysis-table.with-action .analysis-table-row{grid-template-columns:minmax(180px,1.6fr) repeat(5,minmax(78px,.65fr)) minmax(96px,.8fr)}.analysis-table-head{color:var(--muted);background:#f6f7f2;font-size:12px;font-weight:800}.analysis-table-row{border-top:1px solid var(--line);font-size:14px}.analysis-table-row strong{font-size:14px}.attempt-result{background:#edf7f3;border:1px solid #b8d8d0;border-radius:8px;gap:8px;padding:12px;display:grid}.attempt-result.warning{background:#fff8e8;border-color:#edd18a}.attempt-result-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.attempt-result-head span{color:var(--muted);font-size:13px;font-weight:700}.feedback-list{color:var(--muted);gap:4px;margin:0;padding-left:20px;display:grid}.result-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.result-detail-card{border:1px solid var(--line);background:#fff;border-radius:6px;gap:6px;padding:10px;display:grid}.result-detail-card.wide{grid-column:1/-1}.result-detail-card span{color:var(--muted);font-size:12px;font-weight:700}.result-detail-card strong,.result-detail-card p{overflow-wrap:anywhere}.grading-reason{border:1px solid var(--line);background:#ffffffb8;border-radius:6px;gap:8px;padding:10px;display:grid}.detail-chip-row{flex-wrap:wrap;gap:6px;display:flex}.detail-chip-row span{color:#41464d;background:#eef0ec;border-radius:999px;padding:4px 8px;font-size:12px}.mistake-mini-form{background:#fff;border:1px solid #edd18a;border-radius:8px;gap:10px;padding:12px;display:grid}.self-assessment-panel{border:1px solid var(--warning-line);background:#fff;border-radius:8px;gap:10px;padding:12px;display:grid}.self-assessment-panel strong{color:var(--warning)}.self-assessment-panel p{margin-top:4px}.self-assessment-actions{flex-wrap:wrap;gap:8px;display:flex}.result-note-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.result-note-head a{color:var(--accent-strong);font-size:13px;font-weight:700}.result-note-head.success{background:#edf7f3;border:1px solid #b8d8d0;border-radius:6px;padding:10px}.editor-grid{grid-template-columns:minmax(0,1fr) minmax(320px,.38fr);align-items:start;gap:20px;margin-top:24px;display:grid}.editor-form{gap:14px;display:grid}.form-grid,.field-group{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.field{gap:6px;display:grid}.field span{color:var(--muted);font-size:13px;font-weight:700}.field input,.field select,.field textarea{border:1px solid var(--line);color:var(--foreground);background:#fff;border-radius:6px;width:100%;min-width:0;padding:9px 10px}.field textarea{resize:vertical;line-height:1.55}.auth-shell{background:linear-gradient(135deg,#e6f2efeb,#f7f7f4db 54%,#f6eed6c7),#f7f7f4;justify-content:stretch;align-items:stretch;padding:0;display:grid}.auth-layout{grid-template-columns:minmax(0,1fr) minmax(360px,460px);align-items:center;gap:48px;width:100%;max-width:1120px;min-height:100vh;margin:0 auto;padding:48px 32px;display:grid}.auth-intro{color:#fff;background:#102522;border:1px solid #b8d8d066;border-radius:8px;gap:28px;padding:34px;display:grid}.auth-logo{color:#b8d8d0;font-size:13px;font-weight:900}.auth-intro span{color:#b8d8d0;margin-bottom:10px;font-size:13px;font-weight:800;display:block}.auth-intro h2{max-width:680px;margin:0;font-size:40px;line-height:1.12}.auth-intro p{color:#d7e4df;max-width:560px;margin:14px 0 0;line-height:1.7}.auth-signal-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.auth-signal-grid span{color:#fff;text-align:center;background:#ffffff14;border:1px solid #b8d8d052;border-radius:6px;margin:0;padding:12px 10px}.auth-card{gap:20px;width:100%;max-width:460px;display:grid}.auth-stack{gap:14px;display:grid}.login-shell{--login-display-size:clamp(2rem, 4.2vw, 3rem);--login-heading-size:1.875rem;--login-body-size:1rem;--login-support-size:.875rem;--login-caption-size:.75rem;--login-button-size:.9375rem;background:linear-gradient(135deg, rgb(var(--brand-rgb) / 7%) 0%, transparent 42%), linear-gradient(315deg, rgb(var(--brand-dark-rgb) / 3%) 0%, transparent 38%), var(--bg);max-width:none;padding:calc(var(--space-6) + var(--space-2));align-items:center;display:grid}.login-layout{align-items:stretch;gap:calc(var(--space-6) + var(--space-2));grid-template-columns:minmax(0,1.08fr) minmax(380px,.92fr);width:100%;max-width:1180px;min-height:640px;margin:0 auto;display:grid}.login-brand-panel{background:radial-gradient(circle at 84% 14%, rgb(var(--brand-rgb) / 26%), transparent 38%), linear-gradient(145deg, color-mix(in srgb, var(--brand) 28%, var(--brand-dark)) 0%, var(--brand-dark) 68%);border-radius:var(--radius-card);box-shadow:0 24px 64px rgb(var(--brand-dark-rgb) / 22%);color:var(--text-on-dark);padding:calc(var(--space-6) + var(--space-2));border:1px solid #ffffff24;flex-direction:column;justify-content:space-between;display:flex;position:relative;overflow:hidden}.login-brand-panel:after{background:linear-gradient(90deg, var(--brand), rgb(var(--brand-rgb) / 0%));content:"";height:3px;bottom:0;left:calc(var(--space-6) + var(--space-2));width:120px;position:absolute}.login-brand{color:var(--text-on-dark);align-items:center;gap:var(--space-3);letter-spacing:.01em;width:fit-content;font-size:14px;font-weight:800;text-decoration:none;display:inline-flex}.login-brand-mark{background:var(--brand);border-radius:var(--radius-control);color:var(--brand-contrast);letter-spacing:.05em;border:1px solid #fff3;justify-content:center;align-items:center;width:32px;height:32px;font-size:11px;font-weight:850;display:inline-flex}.login-brand-copy{margin-block:calc(var(--space-6) + var(--space-5));max-width:610px}.login-eyebrow,.login-card-kicker{color:var(--brand-soft-strong);font-size:var(--login-caption-size);letter-spacing:.12em;margin-bottom:var(--space-4);text-transform:uppercase;font-weight:800;display:block}.login-brand-copy h1{color:var(--text-on-dark);font-size:var(--login-display-size);letter-spacing:-.045em;max-width:620px;margin:0;font-weight:820;line-height:1.13}.login-brand-copy p{color:var(--text-on-dark-muted);font-size:var(--login-body-size);margin:var(--space-5) 0 0;max-width:560px;font-weight:450;line-height:1.75}.login-feature-list{gap:var(--space-2);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.login-feature-list li{border-radius:var(--radius-pill);color:var(--text-on-dark-muted);min-width:76px;padding:var(--space-2) var(--space-4);text-align:center;background:#ffffff12;border:1px solid #fff3;font-size:13px;font-weight:750;transition:background-color .16s,border-color .16s,color .16s,transform .16s}.login-feature-list li:hover,.login-feature-list li.is-active{background:rgb(var(--brand-rgb) / 32%);color:var(--text-on-dark);border-color:#ffffff75;transform:translateY(-2px)}.login-card{border:1px solid var(--border);border-radius:var(--radius-card);box-shadow:var(--shadow-card);align-content:center;align-self:center;gap:var(--space-6);max-width:470px;padding:calc(var(--space-6) + var(--space-2));background:#fffffff7;justify-self:end;width:100%;display:grid}.login-card-header{gap:var(--space-2);display:grid}.login-card-kicker{color:var(--brand);margin-bottom:2px}.login-card-header h2{color:var(--text-primary);font-size:var(--login-heading-size);letter-spacing:-.035em;margin:0;font-weight:800;line-height:1.2}.login-card-header p{color:var(--text-secondary);font-size:var(--login-support-size);margin:0;font-weight:450;line-height:1.7}.login-account-stack,.login-form{gap:var(--space-4);display:grid}.login-identity{background:var(--brand-soft);border:1px solid color-mix(in srgb, var(--brand) 24%, var(--border));border-radius:var(--radius-control);align-items:center;gap:var(--space-3);padding:var(--space-4);grid-template-columns:auto minmax(0,1fr) auto;display:grid}.login-avatar{background:var(--brand-soft-strong);border:1px solid color-mix(in srgb, var(--brand) 36%, var(--border));color:var(--brand-dark);border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;font-size:16px;font-weight:850;display:inline-flex}.login-identity-copy{min-width:0;display:grid}.login-identity-copy>span{color:var(--text-secondary);font-size:var(--login-caption-size);font-weight:700}.login-identity-copy strong{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;font-size:17px;font-weight:800;overflow:hidden}.login-identity-badge{background:var(--surface);border:1px solid color-mix(in srgb, var(--brand) 24%, var(--border));border-radius:var(--radius-pill);color:var(--brand-dark);align-items:center;gap:var(--space-2);white-space:nowrap;padding:5px 9px;font-size:11px;font-weight:750;display:inline-flex}.login-identity-badge>span{background:var(--brand);border-radius:50%;width:7px;height:7px}.login-field{gap:var(--space-2)}.login-field>span{color:var(--text-primary);font-size:13px;font-weight:750}.login-field input{background:color-mix(in srgb, var(--surface) 82%, var(--bg));border-color:var(--border);border-radius:var(--radius-control);color:var(--text-primary);min-height:48px;padding:11px 14px;transition:background-color .15s,border-color .15s,box-shadow .15s}.login-field input::placeholder{color:color-mix(in srgb, var(--text-secondary) 68%, var(--surface))}.login-field input:hover{border-color:color-mix(in srgb, var(--brand) 42%, var(--border))}.login-field input:focus-visible{background:var(--surface);border-color:var(--brand);box-shadow:0 0 0 4px rgb(var(--brand-rgb) / 14%)}.login-action-button{border-radius:var(--radius-control);font-size:var(--login-button-size);width:100%;min-height:48px;font-weight:800;transition:background-color .15s,border-color .15s,box-shadow .15s,color .15s,transform .15s}.login-action-button:not(.secondary){background:var(--brand);border-color:var(--brand);box-shadow:var(--shadow-brand);color:var(--brand-contrast)}.login-action-button:not(.secondary):not(:disabled):hover{background:var(--brand-hover);border-color:var(--brand-hover);box-shadow:0 14px 28px rgb(var(--brand-rgb) / 28%);transform:translateY(-1px)}.login-action-button:not(:disabled):active,.login-continue-button:active{background:var(--brand-active);border-color:var(--brand-active);box-shadow:0 6px 14px rgb(var(--brand-rgb) / 22%);transform:translateY(1px)}.login-action-button:focus-visible{box-shadow:0 0 0 4px rgb(var(--brand-rgb) / 18%), var(--shadow-brand)}.login-action-button:disabled{background:color-mix(in srgb, var(--brand) 34%, var(--surface));box-shadow:none;color:color-mix(in srgb, var(--text-secondary) 74%, var(--surface));border-color:#0000;transform:none}.login-secondary-form{display:grid}.login-secondary-form .login-action-button{border-color:var(--border);box-shadow:none;color:var(--text-secondary);background:0 0}.login-secondary-form .login-action-button:not(:disabled):hover{background:var(--brand-soft);border-color:color-mix(in srgb, var(--brand) 38%, var(--border));box-shadow:none;color:var(--brand-dark);transform:none}.login-secondary-form .login-action-button:not(:disabled):active{background:var(--brand-soft-strong);border-color:var(--brand);box-shadow:none;color:var(--brand-dark)}.login-form-error{border-radius:var(--radius-control);line-height:1.5}.login-register-link{color:var(--brand);justify-self:center;margin-top:0;font-size:13px;font-weight:700}.login-register-link:hover{color:var(--brand-dark)}.login-button-spinner{border:2px solid;border-right-color:#0000;border-radius:50%;width:15px;height:15px;margin-right:8px;animation:.7s linear infinite login-button-spin}@keyframes login-button-spin{to{transform:rotate(360deg)}}@media (max-width:900px){.login-shell{padding:var(--space-5);align-items:start}.login-layout{gap:var(--space-5);grid-template-columns:1fr;max-width:720px;min-height:0}.login-brand-panel{min-height:390px;padding:var(--space-6)}.login-brand-copy{margin-block:calc(var(--space-6) + var(--space-3))}.login-brand-copy h1{max-width:560px}.login-card{justify-self:stretch;max-width:none}}@media (max-width:560px){.login-shell{--login-display-size:2rem;--login-heading-size:1.625rem;padding:var(--space-4)}.login-layout{gap:var(--space-4)}.login-brand-panel{min-height:0;padding:var(--space-5)}.login-brand-panel:after{left:var(--space-5)}.login-brand-copy{margin-block:calc(var(--space-6) + var(--space-2))}.login-brand-copy h1{letter-spacing:-.035em}.login-brand-copy p{font-size:var(--login-support-size);margin-top:var(--space-4);line-height:1.7}.login-feature-list{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.login-feature-list li{min-width:0}.login-card{gap:var(--space-5);padding:var(--space-5)}.login-identity{grid-template-columns:auto minmax(0,1fr)}.login-identity-badge{grid-column:1/-1;justify-self:start;margin-left:56px}}.form-error{color:var(--warning);background:#fff7e6;border:1px solid #edd18a;border-radius:6px;margin:0;padding:10px 12px;font-weight:700}.form-success{color:var(--accent-strong);background:#e6f2ef;border:1px solid #b8d8d0;border-radius:6px;margin:0;padding:10px 12px;font-weight:700}.field-hint{color:var(--muted);font-size:12px;font-style:normal}.space-binding{border:1px solid var(--line);border-radius:8px;gap:14px;margin:0;padding:14px;display:grid}.space-binding legend{color:var(--muted);padding:0 4px;font-size:13px;font-weight:800}.space-mode-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.space-mode-card{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:8px;align-items:flex-start;gap:10px;min-width:0;padding:12px;transition:background-color .14s,border-color .14s,box-shadow .14s;display:flex}.space-mode-card:hover,.space-mode-card.active{background:var(--accent-soft);border-color:var(--accent-line)}.space-mode-card.active{box-shadow:inset 0 0 0 1px #0f766e29}.space-mode-card span{gap:3px;min-width:0;display:grid}.space-mode-card strong{color:var(--foreground);font-size:13px}.space-mode-card em,.space-binding-note{color:var(--muted);font-size:12px;font-style:normal;line-height:1.45}.new-space-fields{gap:12px;display:grid}.space-binding-note{border:1px solid var(--line);background:#f8faf7;border-radius:6px;margin:0;padding:10px 12px}.quality-callout{border:1px solid var(--line);background:#f6f7f2;border-radius:8px;gap:4px;padding:12px;display:grid}.quality-callout strong{color:var(--warning)}.quality-callout span{color:var(--muted);font-size:13px}.action-row{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.side-stack{gap:20px;display:grid}.raw-box{border:1px solid var(--line);color:#30343a;white-space:pre-wrap;background:#f6f7f2;border-radius:6px;max-height:520px;margin:0;padding:12px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:12px;line-height:1.6;overflow:auto}.raw-box.compact{max-height:220px}.candidate-readable-preview{border:1px solid var(--accent-line);background:linear-gradient(135deg,#f7fbf9,#fff);border-radius:12px;gap:10px;padding:16px;display:grid}.candidate-readable-preview.answer-preview{border-left:4px solid var(--accent)}.candidate-readable-preview .learning-rich-text{color:var(--ink);font-size:15px}.advanced-json-editor{border:1px dashed var(--line-strong,var(--line));border-radius:10px;padding:12px}.advanced-json-editor summary{color:var(--muted);cursor:pointer;font-size:13px;font-weight:700}.advanced-json-editor[open] summary{margin-bottom:10px}@media (max-width:1320px){.student-header-main{grid-template-columns:minmax(160px,auto) minmax(0,1fr) auto}.student-domain-nav a{padding-inline:9px}.topbar{grid-template-columns:minmax(180px,1fr) auto}.topbar-right{grid-template-columns:auto auto;grid-template-areas:"breadcrumbs breadcrumbs""nav account";justify-content:end;min-width:0}.desktop-nav{display:none}.mobile-nav{display:block}.brand-link{max-width:min(420px,52vw)}}@media (max-width:1120px){.student-domain-nav{display:none}.student-mobile-nav{display:block}.student-header-main{grid-template-columns:minmax(0,1fr) auto}.student-brand-copy small{max-width:42vw}.student-page-title h1{overflow-wrap:anywhere;font-size:20px}.student-page-bar{align-items:start;gap:10px;display:grid}.student-subnav{justify-content:flex-start;max-width:100%;overflow-x:auto}}@media (max-width:1100px){.admin-destination-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.topbar{grid-template-columns:1fr;align-items:start;gap:14px;display:grid}.topbar-right{grid-template-columns:1fr;grid-template-areas:"breadcrumbs""nav""account";justify-content:stretch;align-items:stretch;width:100%;display:grid}.breadcrumbs{justify-content:flex-start}.topbar-account{width:100%}.mistakes-overview-grid{grid-template-columns:1fr}}@media (max-width:860px){.admin-domain-nav{padding:10px 16px}.admin-subnav{padding:8px 16px}.admin-domain-nav a:last-child{margin-left:0}.admin-domain-head{display:grid}.admin-destination-grid{grid-template-columns:1fr}.shell{padding:16px}.student-header-main{grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:10px 12px}.student-brand-mark{flex-basis:34px;height:34px}.student-admin-entry{display:none}.student-header-main .topbar-account{padding:3px 8px 3px 3px}.topbar-account-meta span{display:none}.topbar-account-meta strong{max-width:56px}.student-page-bar{align-items:start;gap:10px;min-height:auto;padding:12px;display:grid}.student-page-title h1{font-size:20px}.student-subnav,.student-page-bar .breadcrumbs{justify-content:flex-start;max-width:100%;padding-bottom:2px;overflow-x:auto}.topbar,.main-grid,.section-head{grid-template-columns:1fr}.topbar,.section-head{align-items:start;gap:14px;display:grid}.brand-link{max-width:none}.brand h1{font-size:22px}.brand p,.muted-copy{line-height:1.55}.nav{justify-content:flex-start;width:100%;padding-bottom:2px;overflow-x:auto}.desktop-nav{display:none}.mobile-nav{display:block}.mobile-nav summary{background:var(--panel);border:1px solid var(--line);color:var(--accent-strong);cursor:pointer;text-align:center;border-radius:6px;min-height:40px;padding:9px 12px;font-weight:800;list-style:none}.mobile-nav summary::-webkit-details-marker{display:none}.mobile-nav summary:before{content:"☰";margin-right:6px}.mobile-nav[open] summary{background:#e6f2ef;border-color:#b8d8d0}.mobile-nav-list{background:var(--panel);border:1px solid var(--line);border-radius:8px;gap:10px;width:100%;max-height:min(70vh,520px);margin-top:8px;padding:10px;display:grid;position:static;overflow:auto}.mobile-nav-list .nav-group{flex:initial;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.mobile-nav-list .nav-group+.nav-group{border-left:0;border-top:1px solid var(--line);padding-top:10px;padding-left:0}.breadcrumbs{justify-content:flex-start}.topbar-right{grid-template-columns:1fr;grid-template-areas:"breadcrumbs""nav""account";justify-content:stretch;align-items:stretch;width:100%;display:grid}.topbar-account{width:100%}.nav-group{flex:none}.nav a{white-space:nowrap}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ab-comparison-grid,.audit-row,.budget-warning-grid,.compact-metrics,.course-budget-form,.ab-policy-form{grid-template-columns:1fr}.course-budget-form{align-items:stretch}.budget-warning-row,.stat-row{place-items:flex-start start;gap:8px;display:grid}.option-grid,.analysis-table-head,.analysis-table-row,.check-grid,.course-countdown-grid,.starter-grid,.compact-stats,.editor-grid,.dashboard-hero,.exam-control-panel,.exam-rules,.filter-form,.audit-filter-form,.field-group,.form-grid,.knowledge-card-head,.knowledge-grid,.knowledge-question-row,.material-row,.mastery-grid,.mastery-priority-row,.mastery-stat-grid,.preview-row,.quality-count-row,.quality-question-row,.review-plan-card,.review-plan-head,.result-detail-grid,.result-metrics,.result-summary,.space-mode-grid,.template-card{grid-template-columns:1fr}.batch-toolbar,.action-row,.inline-actions,.empty-state,.filter-actions,.history-actions,.quality-question-actions,.result-actions{justify-content:stretch;align-items:stretch;display:grid}.button,.quality-question-actions .button{width:100%}.analysis-table.with-action .analysis-table-head,.analysis-table.with-action .analysis-table-row{grid-template-columns:1fr}.check-section-head{align-items:stretch;display:grid}.batch-toolbar span{margin-right:0}.batch-toolbar{z-index:4;position:sticky;top:0;box-shadow:0 8px 22px #191a1c0f}.filter-tabs{flex-wrap:nowrap;margin:0 -2px;padding:0 2px 4px;overflow-x:auto}.filter-tabs a{flex:none}.report-filters,.date-range-form{justify-content:stretch;align-items:stretch;width:100%;display:grid}.candidate-head{gap:10px;display:grid}.candidate-title-block h3{overflow-wrap:anywhere;line-height:1.35}.candidate-check{justify-content:flex-start;width:100%}.audit-check{border-bottom:1px solid var(--line);padding-bottom:8px}.candidate-tools{border-top:1px solid var(--line);z-index:3;background:linear-gradient(#ffffffeb,#fff);grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0 -14px -14px;padding:10px 14px 14px;display:grid;position:sticky;bottom:0}.candidate-tools.vertical,.candidate-tools form,.candidate-tools .inline-form{display:grid}.candidate-tools .button,.candidate-tools form .button{width:100%}.candidate-meta,.detail-chip-row,.quality-chip-row{flex-direction:column;align-items:flex-start;display:flex}.option-row{align-items:flex-start;min-height:48px;padding:12px}.option-row input{min-width:18px;min-height:18px;margin-top:4px}.practice-question,.candidate,.panel,.quality-question-row{padding:14px}.practice-question h2,.quality-question-main h2{font-size:16px;line-height:1.35}.field input,.field select,.field textarea{min-height:42px}.field textarea{min-height:120px}.practice-submit-panel{z-index:5;align-items:stretch;margin:0 -16px -16px;padding:12px 16px;display:grid;position:sticky;bottom:0;left:0;box-shadow:0 -8px 24px #191a1c14}.raw-box{max-height:340px}.status-pill,.quality-chip{white-space:normal}.pagination{justify-content:flex-start}.plan-start-row{grid-template-columns:1fr}.plan-status-stack{place-items:flex-start start}.auth-shell{padding:0}.auth-layout{grid-template-columns:1fr;gap:16px;min-height:100vh;padding:16px}.auth-intro{padding:22px}.auth-intro h2{font-size:28px}.auth-signal-grid,.weak-action-row{grid-template-columns:1fr}.confirm-actions{display:grid}}@media (max-width:420px){.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.student-shell .metric{min-height:84px;padding:12px}.student-shell .metric strong{font-size:24px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;transition-delay:0s!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.student-admin-panel{border-color:var(--accent-line);background:linear-gradient(135deg,#e7f7f4f2,#fffffffa)}.student-shell{gap:22px}.student-shell>.panel,.student-shell>.main-grid,.student-shell>.dashboard-hero,.student-shell>.editor-grid,.student-shell>form.panel{margin-top:0}.student-shell .dashboard-hero,.student-shell .main-grid,.student-shell .panel,.student-shell .editor-grid{animation:.32s cubic-bezier(.22,1,.36,1) both student-fade-up}.student-shell .main-grid>.panel:nth-child(2),.student-shell .dashboard-hero>:nth-child(2){animation-delay:40ms}.student-shell .panel:nth-child(3),.student-shell .main-grid+.panel,.student-shell .panel+.panel{animation-delay:70ms}@keyframes student-fade-up{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.student-shell .panel.page-hero,.student-shell .panel.student-page-hero{background:radial-gradient(900px 220px at 0 0,#14b8a61f,#0000 55%),linear-gradient(#fffffffa,#f6fbf9f5);border-color:#b6e2dbf2;position:relative;overflow:hidden}.student-shell .panel.page-hero:before,.student-shell .panel.student-page-hero:before{content:"";background:linear-gradient(90deg,#0d94888c,#14b8a614);height:3px;position:absolute;top:0;left:0;right:0}.student-shell .section-head{margin-bottom:18px}.student-shell .section-head h2{letter-spacing:-.03em;font-size:20px}.student-shell .section-head .eyebrow{color:var(--accent-strong);letter-spacing:.1em;font-size:11px}.student-shell .metric-grid{gap:12px}.student-shell .metric{background:linear-gradient(#fffffffa 0%,#f7fbf9f2 100%);border-color:#d5e0dbf2;min-height:92px;position:relative}.student-shell .metric:after{background:linear-gradient(90deg, var(--accent-line), transparent);content:"";opacity:.7;height:2px;position:absolute;bottom:0;left:14px;right:14px}.student-shell .metric strong{letter-spacing:-.04em;font-size:30px}.student-shell .metric span{font-weight:700}.student-shell .filter-actions,.student-shell .report-filters,.student-shell .date-range-form{align-items:end;gap:10px}.student-shell .field,.student-shell .compact-field{gap:6px}.student-shell .field span,.student-shell .compact-field span,.student-shell .date-range-form span{color:var(--muted);letter-spacing:.02em;font-size:12px;font-weight:800}.student-shell .field input,.student-shell .field select,.student-shell .field textarea,.student-shell .compact-field input,.student-shell .compact-field select,.student-shell .date-range-form input{border:1px solid var(--line);background:#fffffff5;border-radius:12px;min-height:42px;padding:10px 12px;transition:border-color .14s,box-shadow .14s,background-color .14s}.student-shell .field textarea{min-height:110px}.student-shell .field input:hover,.student-shell .field select:hover,.student-shell .field textarea:hover,.student-shell .compact-field input:hover,.student-shell .compact-field select:hover{border-color:var(--accent-line)}.student-shell .filter-tabs a{background:#ffffffe6;border-radius:999px;min-height:34px;padding:7px 12px;transition:background-color .14s,border-color .14s,color .14s}.student-shell .filter-tabs a:hover{border-color:var(--accent-line);color:var(--accent-strong)}.student-shell .filter-tabs a.active{border-color:var(--accent-line);background:linear-gradient(#e7f7f4,#d9f3ee);box-shadow:0 6px 14px #0d94881f}.student-shell .stat-list{gap:10px}.student-shell a.stat-row,.student-shell .history-row,.student-shell .mistake-preview-row,.student-shell .template-card,.student-shell .course,.student-shell .review-plan-card,.student-shell .mastery-priority-row{border-radius:var(--radius-md);transition:background-color .14s,border-color .14s,box-shadow .14s,transform .14s}.student-shell a.stat-row{background:linear-gradient(#fff 0%,#f6fbf9 100%);padding:14px 16px}.student-shell a.stat-row strong{color:var(--accent-strong);font-size:14px;font-weight:850}.student-shell .history-row{border-radius:var(--radius-md);background:linear-gradient(#fff,#f8fbf9);padding:16px}.student-shell .history-row:hover{border-color:var(--accent-line);transform:translateY(-1px);box-shadow:0 10px 22px #14201d12}.student-shell .plan-start-row{border:1px solid var(--accent-line);border-radius:var(--radius-lg);background:linear-gradient(135deg,#e7f7f4f2,#fffffffa);align-items:center;gap:16px;margin-top:18px;padding:16px 18px;box-shadow:inset 0 1px #fffc}.student-shell .plan-start-row strong{letter-spacing:-.02em;margin-bottom:4px;font-size:16px;display:block}.student-shell .review-plan-card,.student-shell article.review-plan-card{border-color:var(--line);border-radius:var(--radius-lg);box-shadow:var(--panel-shadow);background:linear-gradient(#fff,#f8fbf9)}.student-shell .review-plan-card:hover{border-color:var(--accent-line);box-shadow:var(--panel-shadow-hover)}.student-shell .result-summary{border-color:var(--accent-line);background:radial-gradient(700px 180px at 100% 0,#14b8a61f,#0000 50%),linear-gradient(#fffffffa,#f6fbf9f5)}.student-shell .result-summary h2{letter-spacing:-.03em;font-size:24px}.student-shell .result-metrics{gap:10px;margin-top:16px}.student-shell .result-metrics .metric{min-height:84px}.student-shell .exam-control-panel{color:#fff;background:linear-gradient(135deg,#0b3d38f5,#0f766ef0);border:1px solid #ffffff14;align-items:center;gap:18px;box-shadow:0 18px 36px #0b3d3838}.student-shell .exam-control-panel .exam-timer{color:#fff;background:#ffffff1f;border-color:#ffffff38}.student-shell .exam-control-panel .exam-timer.warning{color:#fef3c7;background:#fbbf242e;border-color:#fbbf2473}.student-shell .exam-control-panel .eyebrow{color:#e8faf6d1}.student-shell .exam-control-panel h2{color:#fff;margin:4px 0 8px}.student-shell .exam-control-panel .muted-copy{color:#e8faf6d6}.student-shell .attempt-result{border:1px solid var(--line);border-radius:var(--radius-lg);background:linear-gradient(#fff,#f8fbf9);padding:16px}.student-shell .attempt-result.warning{border-color:var(--warning-line);background:linear-gradient(#fffdf8,#fff7ed)}.student-shell .result-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px;display:grid}.student-shell .result-detail-card{border:1px solid var(--line);border-radius:var(--radius-md);background:#ffffffe6;gap:6px;padding:12px;display:grid}.student-shell .result-detail-card.wide{grid-column:1/-1}.student-shell .result-detail-card span{color:var(--muted);font-size:12px;font-weight:800}.student-shell .result-detail-card strong,.student-shell .result-detail-card p{margin:0}.student-shell .self-assessment-panel{background:var(--accent-soft);border:1px solid var(--accent-line);border-radius:var(--radius-md);gap:12px;margin-top:12px;padding:14px;display:grid}.student-shell .self-assessment-actions{flex-wrap:wrap;gap:8px;display:flex}.student-shell .answer-details{border:1px solid var(--line);border-radius:var(--radius-md);background:#f7fbf9;margin-top:12px;padding:12px 14px}.student-shell .answer-details summary{color:var(--accent-strong);cursor:pointer;font-weight:800}.student-shell .answer-body{gap:8px;margin-top:10px;display:grid}.student-shell .mistakes-workbench{gap:18px}.student-shell .mistakes-action-row .button{min-height:40px}.student-shell .mistake-preview-row{background:linear-gradient(#fff,#f8fbf9)}.student-shell .empty-state{border:1px dashed var(--accent-line);border-radius:var(--radius-lg);background:linear-gradient(#fff,#f7fbf9);justify-items:start;gap:8px;padding:22px;display:grid}.student-shell .form-error,.student-shell .form-success{border-radius:12px;margin:12px 0 0;padding:10px 12px}.student-shell .form-error{background:var(--danger-soft);border:1px solid var(--danger-line);color:var(--danger)}.student-shell .form-success{background:var(--accent-soft);border:1px solid var(--accent-line);color:var(--accent-strong)}.student-shell .quick-action{position:relative;overflow:hidden}.student-shell .quick-action:before{background:linear-gradient(90deg, var(--accent), transparent);content:"";opacity:0;height:3px;transition:opacity .14s;position:absolute;top:0;left:0;right:0}.student-shell .quick-action:hover:before{opacity:1}.student-shell .compact-entry-panel,.student-shell .focus-panel,.student-shell .learning-loop-panel{background:linear-gradient(#fffffffa,#f6fbf9f5)}.student-shell .template-card{border-radius:var(--radius-lg);box-shadow:var(--panel-shadow);background:linear-gradient(#fff,#f8fbf9);gap:10px;padding:16px}.student-shell .check-card{background:#fff;border-radius:12px;transition:border-color .14s,background-color .14s,box-shadow .14s}.student-shell .check-card:hover{border-color:var(--accent-line);box-shadow:0 8px 18px #14201d0f}.student-shell .check-card:has(input:checked){background:var(--accent-soft);border-color:var(--accent-line);box-shadow:0 8px 18px #0d94881a}.student-shell .editor-form{background:linear-gradient(#fffffffa,#f7fbf9f5)}.student-shell .status-pill{box-shadow:inset 0 1px #ffffffa6}@media (max-width:1100px){.student-shell .result-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:860px){.student-shell{gap:16px}.student-shell .result-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.student-shell .result-detail-grid{grid-template-columns:1fr}.student-shell .metric strong{font-size:26px}}@media (prefers-reduced-motion:reduce){.student-shell .dashboard-hero,.student-shell .main-grid,.student-shell .panel,.student-shell .editor-grid,.learning-loop-step,.quick-action,.button,a.stat-row,.metric{transition:none!important;animation:none!important;transform:none!important}}.muted-copy{color:var(--muted)}.student-shell .muted-copy,.student-shell .metric span,.student-shell .quick-action span,.student-shell .student-page-title>span,.student-shell .student-brand small,.student-shell .topbar-account span{color:#3f514b}.row-badge{background:var(--accent-soft);border:1px solid var(--accent-line);color:var(--accent-strong);white-space:nowrap;border-radius:999px;padding:7px 10px;font-size:12px;font-weight:850;line-height:1;display:inline-flex}.row-badge.success{background:var(--success-soft);border-color:var(--success-line);color:var(--success)}.row-badge.warning{background:var(--warning-soft);border-color:var(--warning-line);color:var(--warning)}.row-badge.danger{background:var(--danger-soft);border-color:var(--danger-line);color:var(--danger)}.student-shell a.stat-row strong.row-badge{color:inherit;font-size:12px}.countdown-kicker-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.countdown-panel.compact-hero{gap:14px;min-height:0;padding:20px}.countdown-panel.compact-hero strong{font-size:34px}.countdown-panel.compact-hero strong.is-muted-hero{opacity:.92;font-size:30px}.countdown-cta-row{flex-wrap:wrap;gap:8px;margin-top:2px;display:flex}.countdown-cta-row .button{margin-top:0}.course-countdown-top{justify-content:space-between;align-items:center;gap:8px;display:flex}.course-countdown-top .status-pill{color:#fff;background:#ffffff24;border-color:#ffffff3d;padding:4px 8px;font-size:11px}.course-countdown-card.status-danger{border-color:#fb718573}.course-countdown-card.status-warning{border-color:#fbbf2473}.course-countdown-card.status-success{border-color:#ffffff47}.course-countdown-rail{position:relative}.course-countdown-grid{grid-template-columns:repeat(auto-fit,minmax(168px,1fr));gap:10px;display:grid;overflow:visible}.course-countdown-card,.course-countdown-empty{min-width:0;min-height:108px}.quick-action{gap:6px;min-height:108px;padding:15px 16px 14px}.quick-action small{color:#3f514b;font-size:12px;line-height:1.45}.quick-action.needs-action{border-color:var(--accent-line);background:linear-gradient(#fff 0%,#eefaf7 100%);box-shadow:0 10px 24px #0d94881a}.quick-action.needs-action strong{color:var(--accent-strong)}.quick-action.danger-tone{border-color:var(--danger-line);background:linear-gradient(#fff 0%,#fff5f6 100%);box-shadow:0 10px 24px #be123c14}.quick-action.danger-tone strong{color:var(--danger)}.quick-action.is-calm strong{font-size:22px}.home-main-grid{align-items:stretch}.status-panel,.compact-entry-panel,.focus-panel,.learning-loop-panel{height:100%}.status-followups{margin-top:14px}.status-followups .button{width:100%}.empty-guide{gap:4px;display:grid}.empty-guide strong{letter-spacing:-.02em;font-size:16px}.empty-guide-actions{flex-wrap:wrap;gap:8px;display:flex}.student-shell .account-strip{justify-content:space-between;align-items:center;gap:16px;display:flex}.student-shell .focus-action-list .course>div{gap:4px;min-width:0;display:grid}.student-shell .focus-action-list .course h3,.student-shell .focus-action-list .course p{margin:0}@media (max-width:860px){.dashboard-hero{gap:12px}.countdown-panel.compact-hero{padding:16px}.countdown-panel.compact-hero strong{font-size:28px}.countdown-panel.compact-hero p{font-size:13px}.course-countdown-rail{margin:0 -2px}.course-countdown-rail:before,.course-countdown-rail:after{content:"";pointer-events:none;z-index:2;width:28px;position:absolute;top:0;bottom:4px}.course-countdown-rail:before{background:linear-gradient(90deg,#0f1c198c,#0000);left:0}.course-countdown-rail:after{background:linear-gradient(270deg,#0f1c198c,#0000);right:0}.course-countdown-grid{overscroll-behavior-x:contain;scroll-snap-type:x proximity;scrollbar-width:thin;grid-template-columns:none;grid-auto-columns:minmax(156px,70vw);grid-auto-flow:column;gap:8px;margin:0;padding:0 4px 8px;scroll-padding-inline:4px;display:grid;overflow-x:auto}.course-countdown-card,.course-countdown-empty{scroll-snap-align:start;min-height:98px;padding:12px}.course-countdown-card strong,.course-countdown-empty strong{font-size:18px}.quick-action-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.quick-action{min-height:104px}.quick-action strong{font-size:22px}.student-shell .account-strip{align-items:stretch;display:grid}.empty-guide-actions .button,.status-followups .button{width:100%}.student-mobile-nav summary{border-radius:999px;min-height:38px;font-weight:850}}@media (max-width:420px){.quick-action-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.quick-action{min-height:96px;padding:12px}.quick-action strong{font-size:20px}.countdown-panel.compact-hero strong{font-size:26px}}.student-shell .focus-panel .section-head h2{letter-spacing:-.03em;font-size:24px}.student-shell .focus-panel .section-head .muted-copy{color:#3f514b;max-width:42ch;font-size:14.5px;line-height:1.55}.student-shell .focus-panel .section-head .button{min-height:42px;padding-inline:16px;font-size:14px}.student-shell .focus-action-list .focus-action-card h3{font-size:18px}.student-shell .focus-action-list .focus-action-card p{font-size:14.5px}@media (max-width:860px){.student-shell .focus-panel .section-head h2{font-size:22px}.focus-action-list .course,.focus-action-list .focus-action-card{grid-template-columns:44px minmax(0,1fr);min-height:84px;padding:14px}.focus-action-list .course h3,.focus-action-list .focus-action-card h3{font-size:16.5px}.focus-action-list .course p,.focus-action-list .focus-action-card p{font-size:13.5px}.focus-action-index{width:44px;height:44px}.student-shell{gap:12px;padding-left:12px;padding-right:12px}.student-header-main{padding:10px}.student-mobile-nav summary{min-height:38px;padding:0 11px}.student-mobile-nav-label{font-size:13px}.student-page-title h1{font-size:18px;line-height:1.25}.student-page-title p{font-size:13px}.option-row,.check-card{min-height:48px}}@media (min-width:560px) and (max-width:980px){.student-mobile-sheet{border-radius:18px;width:min(360px,100vw - 24px);max-height:min(72vh,560px);inset:72px 12px auto auto}}@media (min-width:1180px){.admin-domain-nav-short{display:none}.admin-domain-nav-full{display:inline}}@media (max-width:1100px){.admin-topbar{grid-template-columns:minmax(0,1fr) auto;padding:12px 16px}.admin-domain-nav{display:none}.admin-subnav-bar{grid-template-columns:1fr;padding:10px 16px 12px}.admin-subnav{justify-content:flex-start}.admin-hero{grid-template-columns:1fr}.admin-hero-actions{justify-content:flex-start}.admin-destination-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:860px){.admin-topbar{gap:10px;padding:10px 12px}.admin-brand-copy small{display:none}.admin-link-button{padding-inline:12px}.admin-subnav-bar{padding:10px 12px}.admin-content>.shell{padding:14px 12px 36px}.admin-hero-copy h1{font-size:26px}.admin-domain-title{grid-template-columns:42px minmax(0,1fr)}.admin-domain-index{width:42px;height:42px}.admin-destination-grid{grid-template-columns:1fr}.admin-content .topbar{padding:16px;display:grid}}@media (prefers-reduced-motion:reduce){.admin-domain,.admin-destination{transition:none!important;transform:none!important}}.student-shell .practice-question-list{gap:14px;display:grid}.student-shell .practice-question-list .panel,.student-shell .practice-question-list>.question-card,.student-shell .question-card{border-radius:16px}.student-shell .option-row{border-radius:12px;min-height:48px;padding:12px}.student-shell .option-row b{font-size:15px}.student-shell .answer-details summary{min-height:40px;font-size:14px}.student-shell .practice-submit-bar,.student-shell .exam-submit-bar{border:1px solid var(--line);z-index:15;background:#fffffff0;border-radius:16px;flex-wrap:wrap;justify-content:space-between;gap:10px;padding:12px 14px;display:flex;position:sticky;bottom:12px;box-shadow:0 12px 28px #10211d1f}@media (max-width:860px){.student-shell .practice-question-list{gap:12px}.student-shell .option-grid{grid-template-columns:1fr}.student-shell .practice-submit-bar,.student-shell .exam-submit-bar{bottom:8px}.student-shell .practice-submit-bar .button,.student-shell .exam-submit-bar .button{width:100%}}.student-shell .practice-submit-panel.practice-submit-bar{border:1px solid var(--accent-line);z-index:15;background:#fffffff5;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex;position:sticky;bottom:10px;box-shadow:0 14px 30px #10211d1f}.student-shell .practice-submit-panel.practice-submit-bar .muted-copy{flex:1;min-width:180px}@media (max-width:860px){.student-shell .practice-submit-panel.practice-submit-bar{display:grid}.student-shell .practice-submit-panel.practice-submit-bar .button{width:100%}}.admin-exams-page .topbar{grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr);align-items:stretch;gap:18px;display:grid}.admin-exams-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.admin-exams-summary .metric{min-height:84px}.admin-flash{margin-top:16px;padding:14px 16px}.admin-flash.success{border-color:var(--accent-line);background:linear-gradient(#fff,#eefaf7)}.admin-flash.danger{border-color:var(--danger-line);background:linear-gradient(#fff,#fff5f6)}.admin-flash .form-success,.admin-flash .form-error{border:0;margin:0;padding:0}.admin-exam-create{margin-top:16px}.admin-exam-create-form{grid-template-columns:minmax(180px,1.3fr) repeat(4,minmax(120px,1fr));gap:12px;margin-top:8px;display:grid}.admin-exam-create-actions{grid-column:1/-1;grid-template-columns:auto minmax(0,1fr);align-items:end;gap:8px;display:grid}.admin-exam-board{gap:16px;margin-top:18px;display:grid}.admin-exam-board-head{margin-bottom:0}.admin-exam-course-group{background:#ffffffb8;border:1px solid #cfdcd6e6;border-radius:18px;gap:12px;padding:16px;display:grid}.admin-exam-course-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.admin-exam-course-head h3{letter-spacing:-.02em;margin:2px 0 0;font-size:18px}.admin-exam-card-list{gap:12px;display:grid}.admin-exam-card{border:1px solid var(--line);background:linear-gradient(#fff,#f8fbf9);border-radius:16px;grid-template-columns:minmax(0,1.4fr) minmax(260px,.9fr);gap:16px;padding:16px;transition:border-color .14s,box-shadow .14s;display:grid}.admin-exam-card:hover{border-color:var(--accent-line);box-shadow:0 12px 28px #10211d12}.admin-exam-card.status-danger{border-color:#fda4afd9}.admin-exam-card.status-warning{border-color:#fdba74e6}.admin-exam-card.status-success{border-color:#b6e2dbf2}.admin-exam-card-title{justify-content:space-between;align-items:start;gap:12px;display:flex}.admin-exam-card-title h4{letter-spacing:-.02em;margin:2px 0 0;font-size:18px}.admin-exam-meta{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:14px;display:grid}.admin-exam-meta span{background:#f4faf7;border:1px solid #cfdcd6e6;border-radius:12px;gap:4px;min-height:68px;padding:10px 12px;display:grid}.admin-exam-meta em{color:#5a6b65;font-size:12px;font-style:normal;font-weight:800}.admin-exam-meta strong{color:#10211d;font-size:15px;font-weight:850}.admin-exam-card-actions{border-left:1px solid #cfdcd6e6;align-content:start;gap:12px;padding-left:16px;display:grid}.admin-exam-schedule-form{gap:10px;display:grid}.admin-exam-schedule-form .button,.admin-exam-delete-form .button{width:100%}.admin-exam-delete-form{display:grid}@media (max-width:1100px){.admin-exams-page .topbar{grid-template-columns:1fr}.admin-exams-summary,.admin-exam-create-form{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-exam-card{grid-template-columns:1fr}.admin-exam-card-actions{border-top:1px solid #cfdcd6e6;border-left:0;padding-top:14px;padding-left:0}.admin-exam-meta{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:720px){.admin-exam-create-form,.admin-exam-create-actions,.admin-exams-summary,.admin-exam-meta{grid-template-columns:1fr}}.student-admin-entry{color:#4b5f58;opacity:.9;background:0 0;border-color:#0000;min-height:32px;padding:0 10px;font-size:12px;font-weight:750}.student-admin-entry:hover{border-color:var(--accent-line);color:var(--accent-strong);opacity:1;background:#f3faf8}.student-admin-entry-label{letter-spacing:.02em}.student-header-actions{max-width:100%}.student-header-main .topbar-account{flex:0 auto;min-width:0;max-width:min(180px,42vw)}.topbar-account-meta strong{text-overflow:ellipsis;white-space:nowrap;max-width:7.5em;display:block;overflow:hidden}.student-subnav-shell{min-width:0;max-width:min(100%,560px);position:relative}.student-subnav-shell:before,.student-subnav-shell:after{content:"";opacity:0;pointer-events:none;z-index:1;width:24px;transition:opacity .14s;position:absolute;top:0;bottom:0}.student-subnav-shell:before{background:linear-gradient(90deg,#f2f7f4 40%,#0000);left:0}.student-subnav-shell:after{opacity:1;background:linear-gradient(270deg,#f2f7f4 40%,#0000);right:0}.student-subnav{scrollbar-width:thin;scroll-snap-type:x proximity;justify-content:flex-start;max-width:100%;padding-bottom:2px;overflow-x:auto}.student-subnav a{scroll-snap-align:center;flex:none;min-height:36px}.student-subnav a.active{scroll-margin-inline:24px}.student-mobile-nav{z-index:80;position:relative}.student-mobile-nav[open]:before{display:none}.student-mobile-backdrop{appearance:none;cursor:pointer;z-index:80;background:#10211d75;border:0;margin:0;padding:0;position:fixed;inset:0}.student-mobile-sheet{border:1px solid var(--line);overscroll-behavior:contain;max-height:min(82vh,680px);padding:16px 16px calc(20px + env(safe-area-inset-bottom,0px));z-index:81;-webkit-overflow-scrolling:touch;background:#fff;border-radius:20px 20px 0 0;gap:10px;width:auto;animation:.18s student-sheet-in;display:grid;position:fixed;bottom:0;left:0;right:0;overflow:auto;box-shadow:0 -16px 48px #10211d33}@keyframes student-sheet-in{0%{opacity:.6;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.student-mobile-sheet-head{justify-content:space-between;align-items:flex-start;padding:2px 2px 6px;display:flex}.student-mobile-sheet-head strong{color:var(--foreground);letter-spacing:-.02em;font-size:16px}.student-mobile-sheet-hint{color:#4b5f58;margin:4px 0 0;font-size:12px;line-height:1.4}.student-mobile-sheet-nav{gap:10px;display:grid}.student-mobile-sheet-nav>a,.mobile-nav-domain a{min-height:44px}.student-mobile-admin-link{border-top:1px dashed var(--line);margin-top:4px;color:#4b5f58!important;padding-top:12px!important;font-weight:750!important}.chinese-date-field{gap:6px;min-width:0;display:grid}.chinese-date-field>span:first-child{color:#3f514b;font-size:12px;font-weight:800}.chinese-date-control{min-width:0;display:grid;position:relative}.chinese-date-display{border:1px solid var(--line);color:var(--foreground);font-variant-numeric:tabular-nums;letter-spacing:.02em;pointer-events:none;background:#fff;border-radius:12px;align-items:center;min-height:42px;padding:0 12px;font-size:14px;font-weight:700;display:inline-flex}.chinese-date-input{cursor:pointer;opacity:0;z-index:1;width:100%;height:100%;position:absolute;top:0;left:0}.chinese-date-control:focus-within .chinese-date-display{border-color:var(--accent-line);box-shadow:0 0 0 3px #0e9e8624}.student-shell .date-range-form{flex-wrap:wrap;align-items:end;gap:10px;display:flex}.student-shell .date-range-form .button{min-height:42px}.student-shell .report-filters{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:12px;width:100%;min-width:0;display:flex}.student-shell .filter-tabs{scrollbar-width:thin;flex-wrap:nowrap;gap:6px;min-width:0;max-width:100%;padding-bottom:2px;display:flex;overflow-x:auto;-webkit-mask-image:linear-gradient(90deg,#000 88%,#0000);mask-image:linear-gradient(90deg,#000 88%,#0000)}.student-shell .filter-tabs a{flex:none;min-height:36px}.student-shell .metric.success strong{color:var(--accent-strong)}.student-shell .metric.warning strong{color:#b45309}.student-shell .metric.danger strong{color:var(--danger)}.student-shell .metric span{color:#3f514b;font-size:12.5px}@media (max-width:430px){.student-header-main{grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:8px 10px}.student-brand-copy small{max-width:34vw}.student-header-actions{gap:6px}.student-admin-entry{display:none}.student-mobile-nav summary{min-width:40px;min-height:40px;padding:0 10px}.student-header-main .topbar-account{max-width:none;min-height:40px;padding:3px 8px 3px 3px}.topbar-account-meta span{display:none}.topbar-account-meta strong{max-width:4.5em}.student-page-bar{gap:8px;padding:10px}.student-page-title h1{font-size:17px}.student-page-title p{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.student-subnav-shell{max-width:100%}.student-subnav-shell:after{opacity:1}}@media (min-width:560px) and (max-width:980px){.student-mobile-sheet{max-height:min(74vh,600px);bottom:auto;left:auto;right:max(12px, env(safe-area-inset-right,0px));border-radius:18px;width:min(360px,100vw - 24px);animation:.16s student-sheet-side-in;top:72px}@keyframes student-sheet-side-in{0%{opacity:.5;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}}@media (min-width:861px){.course-countdown-rail:before,.course-countdown-rail:after{display:none}}@media (min-width:1121px){.student-subnav-shell:after{opacity:.85}}@media (prefers-reduced-motion:reduce){.student-mobile-sheet,.student-mobile-sheet{animation:none}}.admin-layout{--admin-shell-max:1440px}.admin-content>.shell,.admin-shell{max-width:min(var(--admin-shell-max), calc(100vw - 32px));width:100%;margin-left:auto;margin-right:auto}@media (min-width:1440px){.admin-content>.shell,.admin-shell{max-width:var(--admin-shell-max);padding-left:28px;padding-right:28px}}.admin-content{overflow-x:clip}.admin-subnav-bar{align-items:center;gap:12px;min-width:0}.admin-subnav-shell{width:100%;min-width:0;position:relative}.admin-subnav-shell:before,.admin-subnav-shell:after{content:"";opacity:0;pointer-events:none;z-index:1;width:28px;position:absolute;top:0;bottom:0}.admin-subnav-shell:before{background:linear-gradient(90deg,#edf4f1 35%,#0000);left:0}.admin-subnav-shell:after{opacity:1;background:linear-gradient(270deg,#edf4f1 35%,#0000);right:0}.admin-subnav{scroll-snap-type:x proximity;scrollbar-width:thin;flex-wrap:nowrap;justify-content:flex-start;gap:6px;min-width:0;max-width:100%;padding-bottom:2px;display:flex;overflow-x:auto}.admin-subnav a{scroll-snap-align:center;flex:none;min-height:36px}.admin-subnav a.active{scroll-margin-inline:24px}.admin-mobile-nav{z-index:90;display:none;position:relative}.admin-mobile-nav summary{color:#fff;cursor:pointer;-webkit-user-select:none;user-select:none;background:#ffffff1a;border:1px solid #ffffff2e;border-radius:999px;align-items:center;gap:6px;min-width:40px;min-height:40px;padding:0 12px;font-size:13px;font-weight:850;list-style:none;display:inline-flex}.admin-mobile-nav summary::-webkit-details-marker{display:none}.admin-mobile-nav[open] summary{background:#14b8a638;border-color:#99f6e473}.admin-mobile-backdrop{appearance:none;cursor:pointer;z-index:90;background:#0a181680;border:0;margin:0;padding:0;position:fixed;inset:0}.admin-mobile-sheet{border:1px solid var(--line);overscroll-behavior:contain;max-height:min(82vh,720px);padding:16px 16px calc(20px + env(safe-area-inset-bottom,0px));z-index:91;-webkit-overflow-scrolling:touch;background:#fff;border-radius:20px 20px 0 0;gap:12px;animation:.18s admin-sheet-in;display:grid;position:fixed;bottom:0;left:0;right:0;overflow:auto;box-shadow:0 -16px 48px #10211d38}@keyframes admin-sheet-in{0%{opacity:.55;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.admin-mobile-sheet-head strong{color:var(--foreground);letter-spacing:-.02em;font-size:16px;display:block}.admin-mobile-sheet-head p{color:#4b5f58;margin:4px 0 0;font-size:12.5px;line-height:1.45}.admin-mobile-sheet-nav{gap:12px;display:grid}.admin-mobile-sheet-nav>a,.admin-mobile-domain a{border:1px solid var(--line);color:inherit;border-radius:12px;align-items:center;min-height:44px;padding:10px 12px;font-weight:750;text-decoration:none;display:flex}.admin-mobile-sheet-nav>a.active,.admin-mobile-domain a.active{border-color:var(--accent-line);color:var(--accent-strong);background:linear-gradient(#e9f8f4,#dff5ef)}.admin-mobile-domain{gap:8px;display:grid}.admin-mobile-domain strong{color:#3f514b;letter-spacing:.06em;text-transform:uppercase;font-size:12px}.admin-mobile-domain>div{gap:6px;display:grid}.admin-mobile-student-link{margin-top:4px;color:#4b5f58!important;border-style:dashed!important}.admin-stat-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;display:grid}.admin-content .admin-stat-grid .metric{min-height:92px}.admin-content .admin-stat-grid .metric strong{letter-spacing:-.04em;font-size:28px}.admin-content .admin-stat-grid .metric span{color:#3f514b;font-size:12.5px;font-weight:750}.admin-content .admin-stat-grid .metric.success strong{color:var(--accent-strong)}.admin-content .admin-stat-grid .metric.warning strong{color:#b45309}.admin-content .admin-stat-grid .metric.danger strong{color:var(--danger)}.admin-summary-panel{margin-top:16px}.admin-reviews-page{min-width:0}.admin-reviews-page .main-grid{grid-template-columns:minmax(0,1.2fr) minmax(240px,.8fr);min-width:0}.admin-reviews-page .panel,.admin-reviews-page .filter-form,.admin-reviews-page .field,.admin-reviews-page select,.admin-reviews-page input,.admin-reviews-page textarea{min-width:0;max-width:100%}.admin-reviews-filter{grid-template-columns:1fr;align-items:stretch;gap:12px;display:grid}.admin-reviews-filter .filter-actions{flex-wrap:wrap;gap:8px;display:flex}.admin-reviews-filter .filter-actions .button{flex:auto;width:auto;min-width:0}.admin-review-card{grid-template-columns:minmax(0,1fr) minmax(220px,280px);align-items:start;min-width:0;overflow:hidden}.admin-review-card .quality-question-main,.admin-review-card .review-grade-form{min-width:0}.review-grade-form{background:linear-gradient(#fff,#f7fbf9);border:1px solid #cfdcd6f2;border-radius:14px;padding:12px}.review-grade-form .field input,.review-grade-form .field textarea,.review-grade-form .field select{width:100%}.review-grade-form .button{min-height:42px}.admin-content .field,.admin-content .compact-field{min-width:0}.admin-content .field select,.admin-content .field input,.admin-content .field textarea,.admin-content .compact-field select,.admin-content .compact-field input{width:100%;max-width:100%}.admin-content .filter-form{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.admin-content .filter-form .filter-actions{flex-wrap:wrap;grid-column:1/-1;align-items:end;gap:8px;display:flex}.admin-content .material-row,.admin-content .history-row,.admin-content .candidate{border-radius:14px}@media (max-width:1100px){.admin-domain-nav{display:none}.admin-mobile-nav{display:block}.admin-topbar{grid-template-columns:minmax(0,1fr) auto}.admin-topbar-actions{gap:8px}}@media (max-width:980px){.admin-content>.shell,.admin-shell{max-width:100%;padding-left:14px;padding-right:14px}.admin-reviews-page .main-grid,.admin-review-card,.admin-content .filter-form{grid-template-columns:1fr}.admin-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-content .admin-stat-grid .metric{min-height:84px}.admin-content .admin-stat-grid .metric strong{font-size:24px}}@media (max-width:430px){.admin-link-button,.admin-brand-copy small{display:none}.admin-mobile-nav summary{padding-inline:11px}.admin-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-subnav-copy strong{font-size:14px;line-height:1.35}}@media (min-width:560px) and (max-width:980px){.admin-mobile-sheet{border-radius:18px;width:min(380px,100vw - 24px);max-height:min(74vh,640px);inset:72px 12px auto auto}}@media (min-width:1200px){.admin-reviews-page .main-grid{grid-template-columns:minmax(0,1.35fr) minmax(260px,.75fr)}.admin-metric-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}}@media (prefers-reduced-motion:reduce){.admin-mobile-sheet{animation:none}}.student-shell .student-stat-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;display:grid}.student-shell .student-stat-grid .metric{min-height:92px}.student-shell .student-stat-grid .metric strong{letter-spacing:-.04em;font-size:28px}.student-shell .student-stat-grid .metric span{color:#3f514b;font-size:12.5px;font-weight:750}.student-shell .student-stat-grid .metric.success strong{color:var(--accent-strong)}.student-shell .student-stat-grid .metric.warning strong{color:#b45309}.student-shell .student-stat-grid .metric.danger strong{color:var(--danger)}.student-shell .student-page-hero .section-head .button:not(.secondary),.student-shell .plan-start-row .button:not(.secondary),.student-shell .mistakes-action-row .button:not(.secondary){min-height:44px;box-shadow:0 12px 24px #0d948833}.student-shell .plan-start-row{border:1px solid var(--accent-line);background:linear-gradient(#fff,#eefaf7);border-radius:16px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;margin-top:16px;padding:14px 16px;display:flex}.course-countdown-hint{color:#ffffffb8;letter-spacing:.02em;margin:0 0 2px;font-size:12px;font-weight:700;display:none}@media (max-width:860px){.course-countdown-hint{display:block}.student-shell .student-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.student-shell .student-stat-grid .metric{min-height:84px}.student-shell .student-stat-grid .metric strong{font-size:24px}.student-shell .plan-start-row{align-items:stretch;display:grid}.student-shell .plan-start-row .button{width:100%}}@media (max-width:430px){.student-shell .student-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.student-shell .button,.student-shell .filter-tabs a,.student-shell .student-subnav a{min-height:40px}.student-shell .button{min-height:44px}.admin-backups-page{gap:18px;max-width:1180px;display:grid}.admin-backups-hero{margin-bottom:0}.admin-backups-hero .brand p{max-width:62ch}.admin-backups-flashes{gap:10px;display:grid}.backup-flash{border:1px solid var(--line);border-radius:var(--radius-lg);align-items:flex-start;gap:12px;padding:12px 14px;display:flex}.backup-flash p{margin:0;line-height:1.5}.backup-flash__icon{border-radius:999px;flex:none;justify-content:center;align-items:center;width:28px;height:28px;font-size:12px;font-weight:800;line-height:1;display:inline-flex}.backup-flash--success{background:var(--success-soft);border-color:var(--success-line);color:var(--success)}.backup-flash--success .backup-flash__icon{color:var(--success);background:#0f766e1f}.backup-flash--danger{background:var(--danger-soft);border-color:var(--danger-line);color:#9f1239}.backup-flash--danger .backup-flash__icon{color:var(--danger);background:#be123c1a}.backup-flash--warning{background:var(--warning-soft);border-color:var(--warning-line);color:#92400e}.backup-flash--warning .backup-flash__icon{color:var(--warning);background:#b453091f}.backup-flash--info{background:var(--accent-soft);border-color:var(--accent-line);color:var(--accent-strong)}.backup-flash--info .backup-flash__icon{color:var(--accent-strong);background:#0d94881f}.admin-backups-top-grid{grid-template-columns:minmax(0,1.4fr) minmax(280px,.9fr);gap:18px;display:grid}.admin-backups-overview,.admin-backups-create,.admin-backups-schedule{gap:16px;display:grid}.admin-backups-stat-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.admin-backups-stat{border:1px solid var(--line);border-radius:var(--radius-lg);background:linear-gradient(#fff 0%,#f7fbf9 100%);gap:4px;min-height:118px;padding:14px 14px 12px;display:grid;position:relative}.admin-backups-stat__icon{background:var(--neutral-soft);border:1px solid var(--neutral-line);color:var(--muted);border-radius:12px;justify-content:center;align-items:center;width:32px;height:32px;margin-bottom:4px;font-size:14px;display:inline-flex}.admin-backups-stat__label{color:var(--muted);letter-spacing:.02em;font-size:12px;font-weight:700}.admin-backups-stat__value{color:var(--foreground);letter-spacing:-.03em;font-size:30px;font-weight:800;line-height:1.1}.admin-backups-stat em{color:var(--muted);font-size:11px;font-style:normal;font-weight:600}.admin-backups-stat--success{background:linear-gradient(180deg, #fff 0%, var(--success-soft) 100%);border-color:var(--success-line)}.admin-backups-stat--success .admin-backups-stat__icon{border-color:var(--success-line);color:var(--success);background:#0f766e1a}.admin-backups-stat--success .admin-backups-stat__value{color:var(--success)}.admin-backups-stat--accent{background:linear-gradient(180deg, #fff 0%, var(--accent-soft) 100%);border-color:var(--accent-line)}.admin-backups-stat--accent .admin-backups-stat__icon{border-color:var(--accent-line);color:var(--accent-strong);background:#0d94881a}.admin-backups-stat--accent .admin-backups-stat__value{color:var(--accent-strong)}.admin-backups-create-list{color:var(--muted);gap:8px;margin:0;padding-left:1.15rem;display:grid}.admin-backups-create-list li{line-height:1.45}.admin-backups-create-actions{flex-wrap:wrap;align-items:center;gap:10px;margin-top:4px;display:flex}.admin-backups-create-actions form{margin:0}.admin-backups-schedule-form{gap:16px;display:grid}.backup-toggle{border:1px solid var(--accent-line);border-radius:var(--radius-lg);cursor:pointer;-webkit-user-select:none;user-select:none;background:linear-gradient(#fff 0%,#f4faf8 100%);align-items:center;gap:14px;padding:14px 16px;transition:border-color .14s,box-shadow .14s,background .14s;display:flex}.backup-toggle:hover{border-color:var(--accent-400);box-shadow:0 8px 20px #0d948814}.backup-toggle:focus-within{border-color:var(--accent-500);box-shadow:0 0 0 3px #0d94882e}.backup-toggle__input{opacity:0;pointer-events:none;width:0;height:0;position:absolute}.backup-toggle__track{background:#cfdcd6;border-radius:999px;flex:none;width:52px;height:30px;padding:3px;transition:background .16s;display:inline-flex;position:relative;box-shadow:inset 0 1px 2px #10211d14}.backup-toggle__thumb{background:#fff;border-radius:999px;width:24px;height:24px;transition:transform .16s;display:block;transform:translate(0);box-shadow:0 2px 6px #10211d29}.backup-toggle__input:checked+.backup-toggle__track{background:linear-gradient(180deg, var(--accent-500) 0%, var(--accent-600) 100%)}.backup-toggle__input:checked+.backup-toggle__track .backup-toggle__thumb{transform:translate(22px)}.backup-toggle__input:focus-visible+.backup-toggle__track{outline:2px solid var(--focus-ring);outline-offset:3px}.backup-toggle__copy{gap:2px;min-width:0;display:grid}.backup-toggle__copy strong{color:var(--foreground);font-size:15px;font-weight:750}.backup-toggle__copy em{color:var(--muted);font-size:12px;font-style:normal;font-weight:600}.admin-backups-schedule-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.admin-backups-input-affix{align-items:stretch;gap:0;display:flex}.admin-backups-input-affix input{border-top-right-radius:0;border-bottom-right-radius:0;flex:auto;width:100%;min-width:0}.admin-backups-input-affix em{background:var(--neutral-soft);border:1px solid var(--line);border-radius:0 var(--radius-control) var(--radius-control) 0;color:var(--muted);border-left:0;flex:none;align-items:center;padding:0 12px;font-size:13px;font-style:normal;font-weight:700;display:inline-flex}.admin-backups-input-affix input:focus{z-index:1;position:relative}.admin-backups-input-affix:focus-within em{border-color:var(--accent-line);color:var(--accent-strong)}.admin-backups-schedule-status-row{flex-wrap:wrap;gap:8px;display:flex}.backup-status-tag{background:var(--neutral-soft);border:1px solid var(--neutral-line);color:var(--muted);white-space:nowrap;border-radius:999px;align-items:center;gap:6px;max-width:100%;padding:7px 12px;font-size:12px;font-weight:700;line-height:1.2;display:inline-flex}.backup-status-tag--success{background:var(--success-soft);border-color:var(--success-line);color:var(--success)}.backup-status-tag--danger{background:var(--danger-soft);border-color:var(--danger-line);color:var(--danger)}.backup-status-tag--warning{background:var(--warning-soft);border-color:var(--warning-line);color:var(--warning)}.backup-status-tag--muted{border-color:var(--line);color:var(--muted);background:#f4f7f5}.admin-backups-schedule-actions{flex-wrap:wrap;gap:10px;display:flex}.admin-backups-list-section{gap:14px;display:grid}.admin-backups-empty{text-align:left;place-items:flex-start start;gap:6px;padding:28px 22px;display:grid}.admin-backups-empty strong{font-size:17px}.admin-backups-list{gap:14px;display:grid}.admin-backup-card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-xl);box-shadow:var(--panel-shadow);gap:16px;padding:18px;transition:border-color .14s,box-shadow .14s;display:grid}.admin-backup-card:hover{border-color:var(--accent-line);box-shadow:var(--panel-shadow-hover)}.admin-backup-card--failed{background:linear-gradient(#fff 0%,#fff8f8 100%);border-color:#f3c8cf}.admin-backup-card__main{gap:12px;min-width:0;display:grid}.admin-backup-card__title-row{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.admin-backup-card__identity{gap:4px;min-width:0;display:grid}.admin-backup-card__filename{color:var(--foreground);letter-spacing:-.01em;overflow-wrap:anywhere;word-break:break-word;margin:0;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:15px;font-weight:700;line-height:1.35}.admin-backup-card__badges{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.backup-badge{letter-spacing:.01em;white-space:nowrap;border:1px solid #0000;border-radius:999px;align-items:center;padding:7px 11px;font-size:12px;font-weight:750;line-height:1;display:inline-flex}.backup-badge--success{background:var(--success-soft);border-color:var(--success-line);color:var(--success)}.backup-badge--danger{background:var(--danger-soft);border-color:var(--danger-line);color:var(--danger)}.backup-badge--warning{background:var(--warning-soft);border-color:var(--warning-line);color:var(--warning)}.backup-badge--muted{background:var(--neutral-soft);border-color:var(--neutral-line);color:var(--muted)}.admin-backup-card__pills{flex-wrap:wrap;gap:8px;display:flex}.backup-meta-pill{border:1px solid var(--line);color:var(--muted);background:#f5f8f6;border-radius:999px;align-items:center;gap:6px;max-width:100%;min-height:30px;padding:5px 10px;font-size:12px;font-weight:650;line-height:1.2;display:inline-flex}.backup-meta-pill i{opacity:.85;font-style:normal}.backup-meta-pill code{color:inherit;text-overflow:ellipsis;white-space:nowrap;background:0 0;max-width:min(42vw,280px);padding:0;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:11px;overflow:hidden}.backup-meta-pill--success{background:var(--success-soft);border-color:var(--success-line);color:var(--success)}.backup-meta-pill--warning{background:var(--warning-soft);border-color:var(--warning-line);color:#92400e}.backup-meta-pill--muted{border-color:var(--line);color:var(--muted);background:#f4f7f5}.backup-warning-banner{background:var(--warning-soft);border:1px solid var(--warning-line);border-radius:var(--radius-md);color:#92400e;align-items:flex-start;gap:10px;padding:12px 14px;display:flex}.backup-warning-banner>span{flex:none;font-size:15px;line-height:1.3}.backup-warning-banner strong{margin-bottom:2px;font-size:13px;display:block}.backup-warning-banner p{overflow-wrap:anywhere;margin:0;line-height:1.45}.admin-backup-card__actions{border-top:1px solid var(--line);gap:14px;padding-top:14px;display:grid}.admin-backup-card__actions--failed{border-top-color:#f3c8cf}.admin-backup-card__secondary-actions{flex-wrap:wrap;gap:8px;display:flex}.admin-backup-card__secondary-actions form{margin:0}.admin-backup-card__secondary-actions .button,.admin-backups-create-actions .button,.admin-backups-schedule-actions .button{min-height:40px}.admin-backup-card__secondary-actions .button:focus-visible,.admin-backups-create-actions .button:focus-visible,.admin-backups-schedule-actions .button:focus-visible,.backup-restore-gate__submit:focus-visible,.backup-toggle:focus-within{outline:none}.admin-backup-card__secondary-actions .button:focus-visible,.admin-backups-create-actions .button:focus-visible,.admin-backups-schedule-actions .button:focus-visible,.backup-restore-gate__submit:focus-visible{box-shadow:0 0 0 3px #0d948838}.backup-restore-gate{border:1px solid var(--danger-line);border-radius:var(--radius-lg);background:linear-gradient(#fff7f8 0%,#fff 100%);gap:12px;padding:14px;display:grid}.backup-restore-gate__head{align-items:flex-start;gap:10px;display:flex}.backup-restore-gate__icon{color:var(--danger);background:#be123c1a;border-radius:10px;flex:none;justify-content:center;align-items:center;width:32px;height:32px;font-size:14px;display:inline-flex}.backup-restore-gate__head strong{color:#9f1239;margin-bottom:4px;font-size:14px;display:block}.backup-restore-gate__head p{color:var(--muted);margin:0;font-size:13px;line-height:1.5}.backup-restore-gate__head code{color:#9f1239;background:#be123c14;border-radius:6px;padding:1px 6px;font-size:12px}.backup-restore-gate__field{max-width:320px}.backup-restore-gate__submit{justify-self:start;min-height:42px}.backup-restore-gate__submit:disabled{color:#b08992;cursor:not-allowed;opacity:1;background:#f3e8ea;border-color:#e7cfd4}.backup-restore-gate__submit:not(:disabled):hover{background:var(--danger-soft);border-color:var(--danger);transform:translateY(-1px);box-shadow:0 8px 18px #be123c1f}.admin-backups-skeleton{gap:14px;display:grid}.admin-backups-skeleton-card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-xl);gap:12px;padding:18px;display:grid}.admin-backups-skeleton-line,.admin-backups-skeleton-pill,.admin-backups-skeleton-block{background:linear-gradient(90deg,#eef3f1 0%,#f7faf8 45%,#eef3f1 100%) 0 0/200% 100%;border-radius:10px;animation:1.2s ease-in-out infinite admin-backups-shimmer}.admin-backups-skeleton-line{width:48%;height:14px}.admin-backups-skeleton-line.wide{width:78%}.admin-backups-skeleton-pill{border-radius:999px;width:88px;height:28px}.admin-backups-skeleton-block{width:100%;height:40px}@keyframes admin-backups-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}@media (max-width:1024px){.admin-backups-top-grid{grid-template-columns:1fr}.admin-backups-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:720px){.admin-backups-page{gap:14px}.admin-backups-stat-grid,.admin-backups-schedule-fields{grid-template-columns:1fr}.admin-backup-card{padding:14px}.admin-backup-card__title-row{flex-direction:column;align-items:stretch}.admin-backup-card__badges{justify-content:flex-start}.admin-backup-card__secondary-actions{grid-template-columns:1fr;display:grid}.admin-backup-card__secondary-actions form,.admin-backup-card__secondary-actions .button,.admin-backups-create-actions form,.admin-backups-create-actions .button,.admin-backups-schedule-actions .button{width:100%}.admin-backups-create-actions{display:grid}.backup-restore-gate__field,.backup-restore-gate__submit{width:100%;max-width:none}.backup-meta-pill code{max-width:min(68vw,220px)}.backup-status-tag{white-space:normal}}@media (max-width:430px){.admin-backups-stat__value{font-size:26px}.admin-backup-card__filename{font-size:13px}}.admin-users-page{gap:18px;max-width:1180px;display:grid}.admin-users-hero{margin-bottom:0}.admin-users-hero .brand p{max-width:68ch}.admin-users-flashes{gap:10px;display:grid}.admin-users-stats-panel{gap:16px;display:grid}.admin-users-stat-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.admin-users-stat{border:1px solid var(--line);border-radius:var(--radius-lg);background:linear-gradient(#fff 0%,#f7fbf9 100%);gap:4px;min-height:112px;padding:14px;transition:border-color .14s,box-shadow .14s,opacity .14s;display:grid}.admin-users-stat__icon{background:var(--neutral-soft);border:1px solid var(--neutral-line);color:var(--muted);border-radius:12px;justify-content:center;align-items:center;width:32px;height:32px;margin-bottom:2px;font-size:13px;display:inline-flex}.admin-users-stat__label{color:var(--muted);letter-spacing:.02em;font-size:12px;font-weight:700}.admin-users-stat__value{color:var(--foreground);letter-spacing:-.03em;font-size:30px;font-weight:800;line-height:1.1}.admin-users-stat--zero{opacity:.62}.admin-users-stat--zero .admin-users-stat__value{color:#7a8882}.admin-users-stat--success{background:linear-gradient(180deg, #fff 0%, var(--success-soft) 100%);border-color:var(--success-line)}.admin-users-stat--success .admin-users-stat__icon{border-color:var(--success-line);color:var(--success);background:#0f766e1a}.admin-users-stat--success .admin-users-stat__value{color:var(--success)}.admin-users-stat--accent{background:linear-gradient(180deg, #fff 0%, var(--accent-soft) 100%);border-color:var(--accent-line)}.admin-users-stat--accent .admin-users-stat__icon,.admin-users-stat--admin .admin-users-stat__icon{color:#1d4ed8;background:#2563eb1a;border-color:#bfdbfe}.admin-users-stat--admin{background:linear-gradient(#fff 0%,#eff6ff 100%);border-color:#bfdbfe}.admin-users-stat--admin .admin-users-stat__value{color:#1d4ed8}.admin-users-stat--super{background:linear-gradient(#fff 0%,#f5f3ff 100%);border-color:#ddd6fe}.admin-users-stat--super .admin-users-stat__icon{color:#6d28d9;background:#7c3aed1a;border-color:#ddd6fe}.admin-users-stat--super .admin-users-stat__value{color:#6d28d9}.admin-users-stat--course{background:linear-gradient(#fff 0%,#ecfeff 100%);border-color:#a5f3fc}.admin-users-stat--course .admin-users-stat__icon{color:#0e7490;background:#0891b21a;border-color:#a5f3fc}.admin-users-stat--course .admin-users-stat__value{color:#0e7490}.admin-users-stat--grader{border-color:var(--warning-line);background:linear-gradient(#fff 0%,#fff7ed 100%)}.admin-users-stat--grader .admin-users-stat__icon{border-color:var(--warning-line);color:var(--warning);background:#b453091a}.admin-users-stat--grader .admin-users-stat__value{color:var(--warning)}.admin-users-list-section{gap:14px;display:grid}.admin-users-toolbar{grid-template-columns:minmax(0,1.4fr) minmax(160px,.7fr) auto;align-items:end;gap:12px;padding:16px;display:grid}.admin-users-toolbar__actions{flex-wrap:wrap;gap:8px;display:flex}.admin-users-toolbar .button{min-height:40px}.admin-users-empty{place-items:flex-start start;gap:8px;padding:28px 22px;display:grid}.admin-users-empty strong{font-size:17px}.admin-users-list{gap:14px;display:grid}.admin-user-card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-xl);box-shadow:var(--panel-shadow);grid-template-columns:minmax(0,1fr) minmax(220px,280px);gap:16px;padding:18px;transition:border-color .14s,box-shadow .14s;display:grid}.admin-user-card:hover{border-color:var(--accent-line);box-shadow:var(--panel-shadow-hover)}.admin-user-card__main{gap:12px;min-width:0;display:grid}.admin-user-card__title-row{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.admin-user-card__identity{gap:4px;min-width:0;display:grid}.admin-user-card__name{color:var(--foreground);letter-spacing:-.02em;overflow-wrap:anywhere;margin:0;font-size:18px;font-weight:800;line-height:1.3}.admin-user-role-badge{letter-spacing:.01em;white-space:nowrap;border:1px solid #0000;border-radius:999px;align-items:center;padding:7px 11px;font-size:12px;font-weight:750;line-height:1;display:inline-flex}.admin-user-role-badge--student{background:var(--success-soft);border-color:var(--success-line);color:var(--success)}.admin-user-role-badge--grader{background:var(--warning-soft);border-color:var(--warning-line);color:var(--warning)}.admin-user-role-badge--course{color:#0e7490;background:#ecfeff;border-color:#a5f3fc}.admin-user-role-badge--admin{color:#1d4ed8;background:#eff6ff;border-color:#bfdbfe}.admin-user-role-badge--super{color:#6d28d9;background:#f5f3ff;border-color:#ddd6fe}.admin-user-card__pills{flex-wrap:wrap;gap:8px;display:flex}.admin-user-meta-pill,.admin-user-email-copy{border:1px solid var(--line);color:var(--muted);background:#f5f8f6;border-radius:999px;align-items:center;gap:6px;max-width:100%;min-height:30px;padding:5px 10px;font-size:12px;font-weight:650;line-height:1.2;display:inline-flex}.admin-user-meta-pill i,.admin-user-email-copy i{opacity:.85;font-style:normal}.admin-user-email-copy{cursor:pointer;font:inherit;background:#fff;max-width:min(100%,360px);transition:border-color .14s,background .14s,color .14s,box-shadow .14s}.admin-user-email-copy:hover{background:var(--accent-soft);border-color:var(--accent-line);color:var(--accent-strong)}.admin-user-email-copy:focus-visible{outline:none;box-shadow:0 0 0 3px #0d948838}.admin-user-email-copy__text{text-overflow:ellipsis;white-space:nowrap;max-width:min(46vw,240px);overflow:hidden}.admin-user-email-copy em{color:var(--accent-strong);margin-left:2px;font-style:normal;font-weight:750}.admin-user-card__actions{border-left:1px solid var(--line);align-content:start;gap:10px;min-width:0;padding-left:16px;display:grid}.admin-user-role-form{gap:10px;display:grid}.admin-user-role-form__field{margin:0}.admin-user-role-form .button{width:100%;min-height:40px}.admin-user-role-form .button:disabled{color:#8a9690;cursor:not-allowed;opacity:1;background:#e8eeeb;border-color:#d7e0dc}.admin-user-role-form .button:not(:disabled):hover{transform:translateY(-1px)}.admin-user-role-form .button:focus-visible{outline:none;box-shadow:0 0 0 3px #0d948838}.admin-user-role-form__hint{color:var(--accent-strong);margin:0;font-size:12px;font-weight:650;line-height:1.4}.admin-user-role-form__hint.muted{color:var(--muted);font-weight:600}.admin-users-skeleton{gap:14px;display:grid}.admin-users-skeleton-card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-xl);gap:12px;padding:18px;display:grid}.admin-users-skeleton-line,.admin-users-skeleton-pill,.admin-users-skeleton-block{background:linear-gradient(90deg,#eef3f1 0%,#f7faf8 45%,#eef3f1 100%) 0 0/200% 100%;border-radius:10px;animation:1.2s ease-in-out infinite admin-users-shimmer}.admin-users-skeleton-line{width:42%;height:14px}.admin-users-skeleton-line.wide{width:68%}.admin-users-skeleton-pill{border-radius:999px;width:96px;height:28px}.admin-users-skeleton-block{width:100%;height:40px}@keyframes admin-users-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}@media (max-width:1024px){.admin-users-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-user-card{grid-template-columns:1fr}.admin-user-card__actions{border-left:0;border-top:1px solid var(--line);padding-top:14px;padding-left:0}}@media (max-width:720px){.admin-users-page{gap:14px}.admin-users-toolbar{grid-template-columns:1fr}.admin-users-toolbar__actions{display:grid}.admin-users-toolbar__actions .button{width:100%}.admin-user-card{padding:14px}.admin-user-card__title-row{flex-direction:column;align-items:stretch}.admin-user-role-form{grid-template-columns:1fr auto;align-items:end}.admin-user-role-form__field{grid-column:1/-1}.admin-user-role-form .button{width:auto;min-width:120px}.admin-user-role-form__hint{grid-column:1/-1}.admin-user-email-copy__text{max-width:min(52vw,180px)}}@media (max-width:430px){.admin-users-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-users-stat__value{font-size:26px}.admin-user-role-form{grid-template-columns:1fr}.admin-user-role-form .button{width:100%}}
