@font-face{font-family:Noto Sans Sinhala;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/noto-sans-sinhala-wght-Dqt08u3R.woff2)format("woff2");unicode-range:U+964-965,U+D81-DF4,U+1CF2,U+200C-200D,U+25CC,U+111E1-111F4}@font-face{font-family:Noto Serif Sinhala;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/noto-serif-sinhala-wght-UwIIcFkv.woff2)format("woff2");unicode-range:U+964-965,U+D81-DF4,U+1CF2,U+200C-200D,U+25CC,U+111E1-111F4}@font-face{font-family:Noto Sans Tamil;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/noto-sans-tamil-wght-iihgzMBi.woff2)format("woff2");unicode-range:U+B82-BFA}@font-face{font-family:Noto Serif Tamil;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/noto-serif-tamil-wght-CbLpJHhu.woff2)format("woff2");unicode-range:U+B82-BFA}:root{--tuto-font-indic-sans:"Noto Sans Sinhala", "Noto Sans Tamil", "Nirmala UI", "Iskoola Pota", "Latha", "Sinhala Sangam MN", "Tamil Sangam MN";--tuto-font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, var(--tuto-font-indic-sans), sans-serif}*,:before,:after{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%;scrollbar-gutter:stable}body{font-family:var(--tuto-font-sans);color:var(--ui-gray-800);background-color:var(--ui-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px;line-height:1.5}img,svg{max-width:100%;display:block}button,input,select,textarea{font:inherit}@media screen{:where(:root[data-theme=dark]) :where(input:not([type=checkbox],[type=radio],[type=range],[type=color],[type=file]),select,textarea){background-color:var(--ui-surface);color:var(--ui-text)}}a{color:var(--ui-primary-500);text-decoration:none}a:hover{text-decoration:underline}.loading-container{justify-content:center;align-items:center;min-height:200px;display:flex}.table-action-btn{border:1px solid var(--ui-gray-300);background-color:var(--ui-surface);color:var(--ui-gray-700);cursor:pointer;white-space:nowrap;border-radius:5px;justify-content:center;align-items:center;padding:.25rem .625rem;font-size:.8125rem;font-weight:500;text-decoration:none;transition:background-color .15s,border-color .15s,color .15s;display:inline-flex}.table-action-btn:disabled{opacity:.5;cursor:not-allowed}.table-action-btn--edit{color:var(--ui-primary-700);border-color:var(--ui-primary-200)}.table-action-btn--edit:hover:not(:disabled){background-color:var(--ui-primary-50);border-color:var(--ui-primary-300)}.table-action-btn--delete{color:var(--ui-danger-text);border-color:var(--ui-danger-border)}.table-action-btn--delete:hover:not(:disabled){background-color:var(--ui-danger-bg);border-color:var(--ui-red-300)}.table-action-btn.table-action-btn--edit,.table-action-btn.table-action-btn--delete{background-color:var(--ui-surface)}.hc-btn.table-action-btn--icon{flex-shrink:0;justify-content:center;align-items:center;width:2rem;min-width:2rem;height:2rem;padding:0;display:inline-flex}.hc-btn.table-action-btn--preview{border-color:var(--ui-gray-300);color:var(--ui-gray-700)}.hc-btn.table-action-btn--preview:hover:not(:disabled){background-color:var(--ui-gray-50);border-color:var(--ui-gray-400)}.hc-btn.table-action-btn--edit{border-color:var(--ui-primary-200);color:var(--ui-primary-700)}.hc-btn.table-action-btn--edit:hover:not(:disabled){background-color:var(--ui-primary-50);border-color:var(--ui-primary-300)}.hc-btn.table-action-btn--delete{border-color:var(--ui-danger-border);color:var(--ui-danger-text)}.hc-btn.table-action-btn--delete:hover:not(:disabled){background-color:var(--ui-danger-bg);border-color:var(--ui-red-300)}@keyframes spin{to{transform:rotate(360deg)}}:focus-visible{outline:2px solid var(--ui-primary-500);outline-offset:2px}:root,.theme-light-area{--tuto-brand:#5624d0;--tuto-brand-hover:#401b9c;--tuto-brand-on-dark:#c4b5fd;--tuto-action:#2563eb;--tuto-action-hover:#1d4ed8;--tuto-success:#15803d;--tuto-success-on-dark:#4ade80}:root{--accessibility-font-size:16px;--tuto-text-2xs:.6875rem;--tuto-text-xs:.75rem;--tuto-text-sm:.8125rem;--tuto-text-base:.875rem;--tuto-text-md:.9375rem;--tuto-text-lg:1rem;--tuto-text-xl:1.125rem;--tuto-text-2xl:1.5rem;--tuto-text-3xl:2rem;--tuto-text-4xl:2.5rem}body{font-size:var(--accessibility-font-size)}html.high-contrast body{color:#fff;background-color:#000}html.high-contrast a{color:#66b3ff}html.high-contrast a:hover{color:#9cf}html.high-contrast input,html.high-contrast select,html.high-contrast textarea{color:#fff;background-color:#1a1a1a;border-color:#fff}html.high-contrast button{border-color:#fff}html.high-contrast .app-header{background-color:#000;border-bottom-color:#fff}html.high-contrast :focus-visible{outline-color:#ff0}html.reduced-motion *,html.reduced-motion :before,html.reduced-motion :after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.btn-primary{border:1px solid var(--ui-primary-600);color:var(--ui-primary-600);cursor:pointer;white-space:nowrap;background-color:#0000;border-radius:6px;padding:.5rem 1rem;font-size:.8125rem;font-weight:500;transition:background-color .15s,color .15s}.btn-primary:hover:not(:disabled){background-color:var(--ui-primary-600);color:var(--ui-on-solid)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{border:1px solid var(--ui-gray-300);color:var(--ui-gray-700);cursor:pointer;white-space:nowrap;background-color:#0000;border-radius:6px;padding:.5rem 1rem;font-size:.8125rem;font-weight:500;transition:background-color .15s,border-color .15s,color .15s}.btn-secondary:disabled{opacity:.5;cursor:not-allowed}.btn-danger{border:1px solid var(--ui-danger-accent);color:var(--ui-danger-accent);cursor:pointer;white-space:nowrap;background-color:#0000;border-radius:6px;padding:.5rem 1rem;font-size:.8125rem;font-weight:500;transition:background-color .15s,color .15s}.btn-danger:hover:not(:disabled){background-color:var(--ui-danger-accent);color:var(--ui-on-solid)}.btn-danger:disabled{opacity:.5;cursor:not-allowed}.katex .mathrm,.katex .mord.text,.katex .text,.katex-display .mathrm,.katex-display .mord.text,.katex-display .text{font-family:inherit}:root,.theme-light-area{--ui-text:#111827;--ui-text-muted:#4b5563;--ui-border:#d1d5db;--ui-surface:#fff;--ui-surface-hover:#f9fafb;--ui-primary:#2563eb;--ui-primary-hover:#1d4ed8;--ui-danger:#dc2626;--ui-danger-hover:#b91c1c;--ui-danger-bg:#fef2f2;--ui-danger-border:#fecaca;--ui-success:#166534;--ui-success-bg:#f0fdf4;--ui-success-border:#bbf7d0;--ui-warning:#92400e;--ui-warning-bg:#fffbeb;--ui-warning-border:#fde68a;--ui-info:#1e40af;--ui-info-bg:#eff6ff;--ui-info-border:#bfdbfe;--ui-radius:.375rem;--ui-accent-interactive:var(--ui-primary);--ui-accent-interactive-hover:var(--ui-primary-hover);--ui-accent-interactive-bg:var(--ui-primary-50);--ui-focus:var(--ui-accent-interactive);--ui-white:#fff;--admin-form-max:48rem;--admin-readable-max:64rem;--ui-gray-50:#f9fafb;--ui-gray-100:#f3f4f6;--ui-gray-200:#e5e7eb;--ui-gray-300:#d1d5db;--ui-gray-400:#9ca3af;--ui-gray-500:#6b7280;--ui-gray-600:#4b5563;--ui-gray-700:#374151;--ui-gray-800:#1f2937;--ui-gray-900:#111827;--ui-slate-50:#f8fafc;--ui-slate-100:#f1f5f9;--ui-slate-200:#e2e8f0;--ui-slate-300:#cbd5e1;--ui-slate-400:#94a3b8;--ui-slate-500:#64748b;--ui-slate-600:#475569;--ui-slate-700:#334155;--ui-slate-800:#1e293b;--ui-primary-50:#eff6ff;--ui-primary-100:#dbeafe;--ui-primary-200:#bfdbfe;--ui-primary-300:#93c5fd;--ui-primary-400:#60a5fa;--ui-primary-500:#3b82f6;--ui-primary-600:#2563eb;--ui-primary-700:#1d4ed8;--ui-primary-800:#1e40af;--ui-accent-50:#eef2ff;--ui-accent-100:#e0e7ff;--ui-accent-200:#c7d2fe;--ui-accent-500:#6366f1;--ui-accent-600:#4f46e5;--ui-accent-700:#4338ca;--ui-accent-800:#3730a3;--ui-danger-text:#991b1b;--ui-danger-bg-strong:#fee2e2;--ui-danger-accent:#ef4444;--ui-success-text:#166534;--ui-success-bg-strong:#dcfce7;--ui-success-accent:#22c55e;--ui-success-solid:#16a34a;--ui-success-solid-hover:#15803d;--ui-warning-text:#92400e;--ui-warning-bg-strong:#fef3c7;--ui-warning-border-strong:#fcd34d;--ui-warning-accent:#f59e0b;--ui-warning-solid:#d97706;--ui-warning-solid-hover:#b45309;--ui-red-300:#fca5a5;--ui-red-400:#f87171;--ui-red-900:#7f1d1d;--ui-amber-400:#fbbf24;--ui-orange-50:#fff7ed;--ui-orange-200:#fed7aa;--ui-orange-700:#c2410c;--ui-orange-800:#9a3412;--ui-yellow-50:#fefce8;--ui-yellow-100:#fef9c3;--ui-yellow-800:#854d0e;--ui-green-300:#86efac;--ui-green-400:#4ade80;--ui-green-900:#14532d;--ui-emerald-50:#ecfdf5;--ui-emerald-100:#d1fae5;--ui-emerald-200:#a7f3d0;--ui-emerald-600:#059669;--ui-emerald-800:#065f46;--ui-sky-50:#f0f9ff;--ui-sky-100:#e0f2fe;--ui-sky-200:#bae6fd;--ui-sky-600:#0284c7;--ui-sky-700:#0369a1;--ui-sky-900:#0c4a6e;--ui-violet-50:#f5f3ff;--ui-violet-100:#ede9fe;--ui-violet-200:#ddd6fe;--ui-violet-600:#7c3aed;--ui-violet-700:#6d28d9;--ui-violet-800:#5b21b6;--ui-violet-900:#4c1d95;--ui-violet-300:#c4b5fd;--ui-orange-100:#ffedd5;--ui-yellow-200:#fef08a;--ui-yellow-300:#fde047;--ui-space-1:.25rem;--ui-space-2:.5rem;--ui-space-3:.75rem;--ui-space-4:1rem;--ui-space-5:1.25rem;--ui-space-6:1.5rem;--ui-radius-sm:4px;--ui-radius-md:6px;--ui-radius-lg:8px;--ui-bg:#fff;--ui-surface-raised:#fff;--ui-surface-sunken:#f9fafb;--ui-text-subtle:#6b7280;--ui-border-subtle:#e5e7eb;--ui-on-accent:#fff;--ui-on-solid:#fff;--ui-overlay:#00000080;--ui-shadow-sm:0 1px 2px #0000000f;--ui-shadow-md:0 4px 12px #0000001f;--ui-shadow-lg:0 20px 60px #0003;--ui-focus-ring:0 0 0 3px #2563eb26;--ui-danger-ring:0 0 0 3px #ef444426;--ui-tooltip-bg:#111827;--ui-tooltip-text:#fff;--ui-skeleton:#e5e7eb;--ui-brand:#1463d9;--ui-brand-yellow:#ffc400;--ui-wordmark:#000}.theme-light-area{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:var(--ui-gray-800)}.theme-light-area--paper{background-color:var(--ui-bg)}@media screen{:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--ui-bg:#0d1421;--ui-surface:#141d2c;--ui-surface-raised:#1a2537;--ui-surface-sunken:#111927;--ui-surface-hover:#1e2a3d;--ui-text:#e6ebf2;--ui-text-muted:#aab6c8;--ui-text-subtle:#94a3b8;--ui-border:#3a4860;--ui-border-subtle:#2a374c;--ui-primary:#8ab4f8;--ui-primary-hover:#a8c7fa;--ui-on-accent:#0d1421;--ui-on-solid:#0d1421;--ui-overlay:#000000a6;--ui-shadow-sm:0 1px 2px #0006;--ui-shadow-md:0 4px 14px #00000080;--ui-shadow-lg:0 20px 60px #0009;--ui-focus-ring:0 0 0 3px #8ab4f84d;--ui-danger-ring:0 0 0 3px #f8717159;--ui-tooltip-bg:#e6ebf2;--ui-tooltip-text:#0d1421;--ui-skeleton:#2a374c;--ui-brand:#6ea2ff;--ui-brand-yellow:#ffc400;--ui-wordmark:#fff;--ui-danger:#f87171;--ui-danger-hover:#fca5a5;--ui-danger-bg:#2a1518;--ui-danger-border:#6b2a2f;--ui-success:#86efac;--ui-success-bg:#0f2a1c;--ui-success-border:#1f5136;--ui-warning:#fcd34d;--ui-warning-bg:#2b2110;--ui-warning-border:#6b4e12;--ui-info:#93c5fd;--ui-info-bg:#132542;--ui-info-border:#24426f;--ui-gray-50:#172131;--ui-gray-100:#1e2a3d;--ui-gray-200:#2a374c;--ui-gray-300:#3a4860;--ui-gray-400:#64748b;--ui-gray-500:#94a3b8;--ui-gray-600:#aab6c8;--ui-gray-700:#c5cedb;--ui-gray-800:#dce3ec;--ui-gray-900:#eef2f7;--ui-slate-50:#172131;--ui-slate-100:#1e2a3d;--ui-slate-200:#2a374c;--ui-slate-300:#3a4860;--ui-slate-400:#64748b;--ui-slate-500:#94a3b8;--ui-slate-600:#aab6c8;--ui-slate-700:#c5cedb;--ui-slate-800:#dce3ec;--ui-primary-50:#132542;--ui-primary-100:#1a3157;--ui-primary-200:#24426f;--ui-primary-300:#335a92;--ui-primary-400:#4f7fc4;--ui-primary-500:#6a9cec;--ui-primary-600:#8ab4f8;--ui-primary-700:#a8c7fa;--ui-primary-800:#c6dafc;--ui-accent-50:#1d1f45;--ui-accent-100:#25285a;--ui-accent-200:#343a7a;--ui-accent-500:#8b8ff5;--ui-accent-600:#a5a8f8;--ui-accent-700:#b9bcfa;--ui-accent-800:#cfd1fc;--ui-danger-text:#fca5a5;--ui-danger-bg-strong:#3b1a1e;--ui-danger-accent:#f87171;--ui-success-text:#86efac;--ui-success-bg-strong:#143823;--ui-success-accent:#4ade80;--ui-success-solid:#4ade80;--ui-success-solid-hover:#86efac;--ui-warning-text:#fcd34d;--ui-warning-bg-strong:#3a2b0f;--ui-warning-border-strong:#8a6516;--ui-warning-accent:#fbbf24;--ui-warning-solid:#fbbf24;--ui-warning-solid-hover:#fcd34d;--ui-red-300:#7f2d2d;--ui-red-400:#f87171;--ui-red-900:#fecaca;--ui-amber-400:#fbbf24;--ui-orange-50:#2b1a0e;--ui-orange-200:#6b3a17;--ui-orange-700:#fdba74;--ui-orange-800:#fed7aa;--ui-yellow-50:#2a250d;--ui-yellow-100:#3a3210;--ui-yellow-800:#fde68a;--ui-green-300:#86efac;--ui-green-400:#4ade80;--ui-green-900:#bbf7d0;--ui-emerald-50:#0c2a20;--ui-emerald-100:#12382a;--ui-emerald-200:#1b4d3a;--ui-emerald-600:#34d399;--ui-emerald-800:#a7f3d0;--ui-sky-50:#0d2433;--ui-sky-100:#113045;--ui-sky-200:#18405c;--ui-sky-600:#38bdf8;--ui-sky-700:#7dd3fc;--ui-sky-900:#e0f2fe;--ui-violet-50:#1f1838;--ui-violet-100:#2a2050;--ui-violet-200:#3b2d6e;--ui-violet-600:#a78bfa;--ui-violet-700:#c4b5fd;--ui-violet-800:#ddd6fe;--ui-violet-900:#ede9fe;--ui-violet-300:#5b46a8;--ui-orange-100:#3a2312;--ui-yellow-200:#4a3f12;--ui-yellow-300:#7a6518;--tuto-brand:#a78bfa;--tuto-brand-hover:#c4b5fd;--tuto-action:#8ab4f8;--tuto-action-hover:#a8c7fa;--tuto-success:#4ade80}}@media print{:root{--lightningcss-light:initial!important;--lightningcss-dark: !important;color-scheme:light!important}}@media screen{[data-readable-colors] [data-cp-readable]{color:var(--cp-readable-color)!important}:root[data-theme=dark] .le-readonly--inline:not(.theme-light-area *,.cp-root *) .le-content-editable{color:inherit}:root[data-theme=dark] .le-readonly--inline:not(.theme-light-area *,.cp-root *) .le-link{color:var(--ui-accent-interactive)}:root[data-theme=dark] .le-readonly--inline:not(.theme-light-area *,.cp-root *) .le-text-code{background:color-mix(in srgb, currentColor 14%, transparent)}:root[data-theme=dark] :is(.le-image,.le-inline-image__img,.le-excalidraw-svg-container:not(.le-excalidraw-error)):not(.theme-light-area *,.cp-root--light *,[contenteditable=true] *),.cp-root--dark :is(.le-image,.le-inline-image__img,.le-excalidraw-svg-container:not(.le-excalidraw-error),.rtdv-content .tiptap img,.rtsv-slide-content .ProseMirror img):not([contenteditable=true] *){background-color:#fff;box-shadow:0 0 0 4px #fff}}.consent-overlay{z-index:1000;background-color:#00000080;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.consent-modal{background-color:#fff;border-radius:12px;flex-direction:column;width:100%;max-width:560px;max-height:90vh;display:flex;overflow:hidden;box-shadow:0 8px 32px #0003}.consent-modal-header{border-bottom:1px solid #e5e7eb;padding:1.5rem 1.5rem .75rem}.consent-modal-header h2{color:#1f2937;margin:0;font-size:1.25rem;font-weight:600}.consent-modal-header p{color:#4b5563;margin:.5rem 0 0;font-size:.875rem;line-height:1.5}.consent-modal-body{flex:1;padding:1rem 1.5rem;overflow-y:auto}.consent-categories-list{flex-direction:column;gap:.75rem;margin:0;padding:0;list-style:none;display:flex}.consent-category-item{background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:.75rem 1rem}.consent-category-name{color:#1f2937;margin-bottom:.25rem;font-size:.875rem;font-weight:600;display:block}.consent-category-purpose{color:#6b7280;font-size:.8125rem;line-height:1.4;display:block}.consent-modal-footer{background-color:#f9fafb;border-top:1px solid #e5e7eb;justify-content:flex-end;align-items:center;gap:.75rem;padding:1rem 1.5rem;display:flex}.consent-btn{cursor:pointer;border:1px solid #0000;border-radius:6px;padding:.5rem 1.25rem;font-size:.875rem;font-weight:500;transition:background-color .15s,border-color .15s}.consent-btn:focus-visible{outline-offset:2px;outline:2px solid #3b82f6}.consent-btn-decline{color:#374151;background-color:#fff;border-color:#d1d5db}.consent-btn-decline:hover{background-color:#f3f4f6;border-color:#9ca3af}.consent-btn-accept{color:#fff;background-color:#3b82f6;border-color:#3b82f6}.consent-btn-accept:hover{background-color:#2563eb;border-color:#2563eb}.consent-btn:disabled{opacity:.6;cursor:not-allowed}.header-search{--hs-ink:#1c1d1f;--hs-ring:#1c1d1f26;width:100%;position:relative}@media screen{:root[data-theme=dark] .header-search{--hs-ink:var(--ui-text);--hs-ring:#e6ebf233}}.header-search form{align-items:center;display:flex;position:relative}.header-search-icon{color:var(--ui-gray-500);pointer-events:none;position:absolute;top:50%;left:1rem;transform:translateY(-50%)}.header-search-input{border:1px solid var(--hs-ink);width:100%;height:40px;color:var(--hs-ink);background:var(--ui-surface);border-radius:9999px;outline:none;padding:0 1rem 0 2.75rem;font-size:.875rem;transition:box-shadow .15s}.header-search-input::placeholder{color:var(--ui-gray-400)}.header-search-input:focus{box-shadow:0 0 0 3px var(--hs-ring)}.header-search-dropdown{z-index:200;background:var(--ui-surface-raised);border:1px solid var(--ui-gray-200);max-height:min(480px,70vh);box-shadow:var(--ui-shadow-md);border-radius:12px;padding:.375rem;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow-y:auto}.header-search-status{color:var(--ui-gray-500);margin:0;padding:.75rem .625rem;font-size:.875rem}.header-search-option{color:var(--hs-ink);border-radius:8px;align-items:center;gap:.75rem;padding:.5rem .625rem;text-decoration:none;display:flex}.header-search-option:hover,.header-search-option.is-active{background:var(--ui-gray-100);text-decoration:none}.header-search-mark{--course-color:#7c3aed;object-fit:cover;background:var(--ui-surface);width:40px;height:40px;box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--ui-text) 8%, transparent);border-radius:10px;flex-shrink:0}.header-search-mark--initials{background:var(--course-color);box-shadow:none;color:#fff;justify-content:center;align-items:center;font-size:.875rem;font-weight:700;display:inline-flex}.header-search-option-text{flex-direction:column;min-width:0;display:flex}.header-search-option-title{white-space:nowrap;text-overflow:ellipsis;font-size:.9375rem;font-weight:600;line-height:1.3;overflow:hidden}.header-search-option-meta{white-space:nowrap;text-overflow:ellipsis;color:var(--ui-gray-500);font-size:.8125rem;overflow:hidden}.header-search-signin{background:var(--ui-violet-50);color:var(--ui-gray-700);border-radius:8px;margin:.25rem 0 0;padding:.625rem;font-size:.8125rem;line-height:1.45;text-decoration:none;display:block}.header-search-signin strong{color:var(--tuto-brand)}.header-search-signin:hover strong{text-decoration:underline}.header-search-all{border-top:1px solid var(--ui-gray-100);color:var(--tuto-action,var(--ui-primary-600));margin-top:.25rem;padding:.625rem;font-size:.875rem;font-weight:600;text-decoration:none;display:block}.header-search-all:hover{text-decoration:underline}.portal-search-group+.portal-search-group{border-top:1px solid var(--ui-slate-100);margin-top:.25rem;padding-top:.25rem}.portal-search-heading{letter-spacing:.04em;text-transform:uppercase;color:var(--ui-slate-500);padding:.5rem .625rem .25rem;font-size:.75rem;font-weight:700}.portal-search-group-status{color:var(--ui-gray-500);margin:0;padding:.375rem .625rem .5rem;font-size:.875rem}.portal-search-option{padding:.4375rem .625rem}.portal-search-option .header-search-option-title{font-size:.9375rem;font-weight:600}.portal-search-see-all{white-space:nowrap;text-overflow:ellipsis;color:var(--tuto-action);border-radius:8px;padding:.4375rem .625rem;font-size:.8125rem;font-weight:600;text-decoration:none;display:block;overflow:hidden}.portal-search-see-all:hover,.portal-search-see-all.is-active{background:var(--ui-gray-100);text-decoration:none}.header-search-dropdown.portal-search-dropdown{max-height:min(640px,100vh - 88px)}.notifications-dropdown,.notifications-btn{position:relative}.notification-badge{background-color:var(--ui-danger-accent);min-width:16px;height:16px;color:var(--ui-on-solid);text-align:center;pointer-events:none;border-radius:8px;padding:0 4px;font-size:.625rem;font-weight:600;line-height:16px;position:absolute;top:2px;right:2px}.notifications-panel{background-color:var(--ui-surface-raised);border:1px solid var(--ui-gray-200);width:320px;max-height:400px;box-shadow:var(--ui-shadow-md);z-index:200;border-radius:8px;flex-direction:column;display:flex;position:absolute;top:calc(100% + 8px);right:0;overflow:hidden}@media (width<=480px){.notifications-panel{width:auto;max-height:calc(100vh - 80px);position:fixed;top:64px;left:8px;right:8px}}.notifications-header{border-bottom:1px solid var(--ui-gray-200);justify-content:space-between;align-items:center;padding:.75rem 1rem;display:flex}.notifications-header h3{color:var(--ui-gray-800);margin:0;font-size:.875rem;font-weight:600}.unread-indicator{color:var(--ui-accent-interactive);font-size:.75rem;font-weight:500}.notifications-list{flex:1;overflow-y:auto}.notifications-empty{text-align:center;color:var(--ui-gray-500);padding:2rem 1rem;font-size:.875rem}.notification-item{border:none;border-bottom:1px solid var(--ui-gray-100);cursor:pointer;text-align:left;background:0 0;align-items:flex-start;gap:.75rem;width:100%;padding:.75rem 1rem;transition:background-color .15s;display:flex}.notification-item:hover{background-color:var(--ui-gray-50)}.notification-item:focus-visible{outline:2px solid var(--ui-primary-500);outline-offset:-2px}.notification-item.unread{background-color:var(--ui-primary-50)}.notification-item.unread:hover{background-color:var(--ui-primary-100)}.notification-icon{flex-shrink:0;font-size:1rem;line-height:1.5}.notification-content{flex-direction:column;flex:1;gap:.125rem;min-width:0;display:flex}.notification-type-label{color:var(--ui-gray-700);font-size:.75rem;font-weight:600}.notification-message{color:var(--ui-gray-600);text-overflow:ellipsis;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.8125rem;line-height:1.4;display:-webkit-box;overflow:hidden}.notification-time{color:var(--ui-text-subtle);margin-top:.125rem;font-size:.6875rem}.notification-unread-dot{background-color:var(--ui-primary-500);border-radius:50%;flex-shrink:0;width:8px;height:8px;margin-top:.375rem}.ui-btn{border-radius:var(--ui-radius);cursor:pointer;white-space:nowrap;border:1px solid #0000;justify-content:center;align-items:center;gap:.375rem;padding:.5rem 1rem;font-size:.875rem;font-weight:500;line-height:1.25;text-decoration:none;transition:background-color .15s,opacity .15s;display:inline-flex}.ui-btn:focus-visible{outline:2px solid var(--ui-focus);outline-offset:2px}.ui-btn:disabled{opacity:.6;cursor:not-allowed}.ui-btn--primary{background-color:var(--ui-accent-interactive);border-color:var(--ui-accent-interactive);color:var(--ui-on-accent)}.ui-btn--primary:not(:disabled):hover{background-color:var(--ui-accent-interactive-hover)}.ui-btn--secondary{background-color:var(--ui-surface);border-color:var(--ui-border);color:var(--ui-text)}.ui-btn--secondary:not(:disabled):hover{background-color:var(--ui-surface-hover)}.ui-btn--danger{background-color:var(--ui-danger);border-color:var(--ui-danger);color:var(--ui-on-solid)}.ui-btn--danger:not(:disabled):hover{background-color:var(--ui-danger-hover)}.ui-btn--ghost{color:var(--ui-text-muted);background-color:#0000;border-color:#0000}.ui-btn--ghost:not(:disabled):hover{background-color:var(--ui-surface-hover);color:var(--ui-text)}.ui-btn--ghost-danger{color:var(--ui-danger);background-color:#0000;border-color:#0000}.ui-btn--ghost-danger:not(:disabled):hover{background-color:var(--ui-danger-bg)}.ui-btn--sm{padding:.25rem .625rem;font-size:.8125rem}.ui-btn--icon{padding:.375rem;line-height:1}.ui-btn--sm.ui-btn--icon{padding:.25rem}.ui-btn svg{flex-shrink:0;max-width:none}.ui-btn--icon{flex-shrink:0}.ui-modal-overlay{z-index:1000;background-color:var(--ui-overlay);justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.ui-modal{background:var(--ui-surface-raised);width:100%;max-width:480px;max-height:90vh;box-shadow:var(--ui-shadow-lg);border-radius:.5rem;flex-direction:column;gap:1rem;padding:1.5rem;display:flex;overflow-y:auto}.ui-modal--wide{max-width:640px}.ui-modal--xl{width:95vw;max-width:1100px}.ui-modal-heading{flex-direction:column;gap:.125rem;min-width:0;display:flex}.ui-modal-subtitle{color:var(--ui-text-muted);margin:0;font-size:.75rem}.ui-modal-header{justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.ui-modal-title{color:var(--ui-text);margin:0;font-size:1.125rem;font-weight:600}.ui-modal-close{color:var(--ui-text-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:.25rem;font-size:1.25rem;line-height:1}.ui-modal-close:hover{color:var(--ui-text)}.ui-modal-close:focus-visible{outline:2px solid var(--ui-focus);outline-offset:2px}.ui-modal-body{color:var(--ui-text-muted);margin:0;font-size:.875rem;line-height:1.5}.ui-modal-error{border:1px solid var(--ui-danger-border);border-radius:var(--ui-radius);background-color:var(--ui-danger-bg);color:var(--ui-danger);margin:0;padding:.5rem .75rem;font-size:.875rem}.ui-modal-footer{justify-content:flex-end;gap:.5rem;margin-top:.5rem;display:flex}.ui-form{flex-direction:column;gap:1rem;display:flex}.ui-field{flex-direction:column;gap:.375rem;display:flex}.ui-label{color:var(--ui-text);font-size:.875rem;font-weight:500}.ui-label-required{color:var(--ui-danger);margin-left:.125rem}.ui-input{border:1px solid var(--ui-border);border-radius:var(--ui-radius);background-color:var(--ui-surface);width:100%;color:var(--ui-text);box-sizing:border-box;padding:.5rem .75rem;font-size:.875rem}.ui-input:focus{border-color:var(--ui-focus);box-shadow:var(--ui-focus-ring);outline:none}.ui-input:disabled{background-color:var(--ui-surface-hover);cursor:not-allowed}.ui-input--error{border-color:var(--ui-danger)}.ui-field-hint{color:var(--ui-text-muted);margin:0;font-size:.8125rem}.ui-field-error{color:var(--ui-danger);margin:0;font-size:.8125rem}.ui-sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.ui-form-actions{justify-content:flex-end;gap:.5rem;margin-top:.5rem;display:flex}.ui-toasts{z-index:1100;flex-direction:column;gap:.5rem;max-width:min(24rem,100vw - 3rem);display:flex;position:fixed;bottom:1.5rem;right:1.5rem}.ui-toast{border-radius:var(--ui-radius);box-shadow:var(--ui-shadow-md);border:1px solid;align-items:flex-start;gap:.75rem;padding:.75rem 1rem;font-size:.875rem;font-weight:500;line-height:1.4;display:flex}.ui-toast--success{border-color:var(--ui-success-border);background-color:var(--ui-success-bg);color:var(--ui-success)}.ui-toast--error{border-color:var(--ui-danger-border);background-color:var(--ui-danger-bg);color:var(--ui-danger-text)}.ui-toast-message{flex:1}.ui-alert{border-radius:var(--ui-radius);border:1px solid;align-items:flex-start;gap:.75rem;margin:0 0 1rem;padding:.75rem 1rem;font-size:.875rem;line-height:1.5;display:flex}.ui-alert--error{border-color:var(--ui-danger-border);background-color:var(--ui-danger-bg);color:var(--ui-danger)}.ui-alert--success{border-color:var(--ui-success-border);background-color:var(--ui-success-bg);color:var(--ui-success)}.ui-alert--warning{border-color:var(--ui-warning-border);background-color:var(--ui-warning-bg);color:var(--ui-warning)}.ui-alert--info{border-color:var(--ui-info-border);background-color:var(--ui-info-bg);color:var(--ui-info)}.ui-alert-content{flex:1;min-width:0}.ui-alert-title+.ui-alert-message{margin-top:.125rem}.ui-toast-close,.ui-alert-close{color:inherit;cursor:pointer;opacity:.7;background:0 0;border:none;flex-shrink:0;padding:0;font-size:1.125rem;line-height:1}.ui-toast-close:hover,.ui-alert-close:hover{opacity:1}.ui-toast-close:focus-visible,.ui-alert-close:focus-visible{outline:2px solid var(--ui-focus);outline-offset:2px;border-radius:2px}.ui-loading{color:var(--ui-text-muted);flex-direction:column;justify-content:center;align-items:center;gap:.75rem;padding:3rem 1rem;font-size:.875rem;display:flex}.ui-loading--compact{flex-direction:row;justify-content:flex-start;gap:.5rem;padding:.75rem 0}.ui-spinner{border:3px solid var(--ui-gray-200);border-top-color:var(--ui-primary);border-radius:50%;width:2rem;height:2rem;animation:.7s linear infinite ui-spin}.ui-loading--compact .ui-spinner{border-width:2px;width:1rem;height:1rem}@keyframes ui-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.ui-spinner{animation-duration:2s}}.ui-error-state{border:1px solid var(--ui-danger-border);border-radius:var(--ui-radius);background-color:var(--ui-danger-bg);text-align:center;flex-direction:column;align-items:center;gap:.5rem;margin:1rem 0;padding:2.5rem 1.5rem;display:flex}.ui-error-state--compact{text-align:left;align-items:flex-start;padding:.75rem 1rem}.ui-error-state-title{color:var(--ui-danger);margin:0;font-size:.9375rem;font-weight:600}.ui-error-state-message{color:var(--ui-text-muted);margin:0;font-size:.875rem}.ui-error-state-actions{gap:.5rem;margin-top:.5rem;display:flex}.ui-empty-state{border:1px solid var(--ui-gray-200);border-radius:var(--ui-radius-lg);background-color:var(--ui-gray-50);text-align:center;flex-direction:column;align-items:center;gap:.375rem;margin:1rem 0;padding:2.5rem 1.5rem;display:flex}.ui-empty-state--compact{text-align:left;background:0 0;border:0;align-items:flex-start;margin:.5rem 0;padding:0}.ui-empty-state-title{color:var(--ui-gray-800);margin:0;font-size:.9375rem;font-weight:600}.ui-empty-state-message{max-width:36rem;color:var(--ui-text-muted);margin:0;font-size:.875rem}.ui-empty-state--compact .ui-empty-state-title{font-size:.875rem}.ui-empty-state-actions{flex-wrap:wrap;justify-content:center;gap:.5rem;margin-top:.75rem;display:flex}.ui-empty-state--compact .ui-empty-state-actions{justify-content:flex-start;margin-top:.25rem}.ui-filter-bar{flex-wrap:wrap;align-items:flex-end;gap:.75rem 1rem;margin:0 0 1rem;display:flex}.ui-filter-bar .ui-field{gap:.25rem;min-width:10rem;max-width:20rem}.ui-filter-bar .ui-label{color:var(--ui-gray-700);font-size:.8125rem}.ui-filter-bar .ui-input{text-overflow:ellipsis;height:2.375rem;padding-top:0;padding-bottom:0}.ui-filter-bar__search{flex:0 20rem}.ui-filter-bar__search .ui-input{width:100%}.ui-filter-bar__end{color:var(--ui-text-muted);white-space:nowrap;align-items:center;gap:.75rem;margin-left:auto;font-size:.875rem;display:flex}.ui-status{white-space:nowrap;border-radius:9999px;padding:.125rem .5rem;font-size:.75rem;font-weight:600;line-height:1.4;display:inline-block}.ui-status--neutral{background-color:var(--ui-gray-100);color:var(--ui-gray-700)}.ui-status--muted{background-color:var(--ui-gray-100);color:var(--ui-gray-500)}.ui-status--info{background-color:var(--ui-info-bg);color:var(--ui-info)}.ui-status--success{background-color:var(--ui-success-bg-strong);color:var(--ui-success)}.ui-status--warning{background-color:var(--ui-warning-bg-strong);color:var(--ui-warning)}.ui-status--danger{background-color:var(--ui-danger-bg-strong);color:var(--ui-danger-hover)}.ui-pagination{color:var(--ui-text-muted);flex-wrap:wrap;align-items:center;gap:.75rem 1rem;padding:.75rem 0;font-size:.875rem;display:flex}.ui-pagination-info{margin-right:auto}.ui-pagination-size{align-items:center;gap:.5rem;display:inline-flex}.ui-pagination-size .ui-input{width:auto;padding:.25rem .5rem}.ui-pagination-pages{align-items:center;gap:.25rem;display:flex}.ui-pagination-btn{border:1px solid var(--ui-border);border-radius:var(--ui-radius);background-color:var(--ui-surface);min-width:2rem;color:var(--ui-text);cursor:pointer;padding:.25rem .625rem;font-size:.8125rem}.ui-pagination-btn:hover:not(:disabled){background-color:var(--ui-surface-hover)}.ui-pagination-btn:disabled{opacity:.5;cursor:not-allowed}.ui-pagination-btn:focus-visible{outline:2px solid var(--ui-focus);outline-offset:2px}.ui-pagination-btn--current{border-color:var(--ui-primary);background-color:var(--ui-primary);color:var(--ui-on-accent)}.ui-pagination-btn--current:hover:not(:disabled){background-color:var(--ui-primary-hover)}.ui-pagination-gap{padding:0 .25rem}.ui-page-header{flex-direction:column;gap:.5rem;margin-bottom:1.25rem;display:flex}.ui-page-header__row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem 1rem;display:flex}.ui-page-header__heading{flex-direction:column;gap:.25rem;min-width:0;display:flex}.ui-page-title{color:var(--ui-text);overflow-wrap:anywhere;margin:0;font-size:1.5rem;font-weight:700;line-height:1.25}.ui-page-subtitle{color:var(--ui-text-muted);margin:0;font-size:.875rem}.ui-page-header__actions{flex-wrap:wrap;align-items:center;gap:.5rem;margin-left:auto;display:flex}@media (width<=640px){.ui-page-header__row{flex-direction:column;align-items:flex-start}.ui-page-header__actions{margin-left:0}}.ui-back-link{color:var(--ui-primary);align-self:flex-start;font-size:.8125rem;font-weight:500;text-decoration:none}.ui-back-link:hover{color:var(--ui-primary-hover);text-decoration:underline}.ui-section-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem 1rem;margin-bottom:1rem;display:flex}.ui-section-title{color:var(--ui-text);margin:0;font-size:1.125rem;font-weight:600}.ui-section-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem 1rem;margin:0 0 1rem;display:flex}.ui-section-toolbar__count{color:var(--ui-text-muted);margin:0;font-size:.875rem}.ui-section-toolbar__actions{flex-wrap:wrap;gap:.5rem;margin-left:auto;display:flex}.ui-stat-grid{gap:var(--ui-space-4);grid-template-columns:repeat(auto-fill,minmax(11rem,1fr));display:grid}.ui-stat-tile{gap:var(--ui-space-1);min-width:0;padding:var(--ui-space-5);background-color:var(--ui-surface);border:1px solid var(--ui-gray-200);border-radius:var(--ui-radius-lg);color:inherit;flex-direction:column;display:flex}.ui-stat-tile__value{font-variant-numeric:tabular-nums;color:var(--ui-gray-900);overflow-wrap:anywhere;font-size:1.75rem;font-weight:700;line-height:1.15}.ui-stat-tile__value--success{color:var(--ui-success-text)}.ui-stat-tile__value--warning{color:var(--ui-warning-text)}.ui-stat-tile__value--danger{color:var(--ui-danger-text)}.ui-stat-tile__value--muted{color:var(--ui-gray-500)}.ui-stat-tile__value--unavailable{color:var(--ui-gray-400);font-size:1rem;font-weight:600;line-height:1.75}.ui-stat-tile__label{color:var(--ui-gray-600);font-size:.875rem;font-weight:500}.ui-stat-tile__hint{color:var(--ui-gray-500);font-size:.8125rem}.ui-stat-tile--link{text-decoration:none;transition:border-color .15s,box-shadow .15s}.ui-stat-tile--link:hover{border-color:var(--ui-primary-300);box-shadow:var(--ui-shadow-sm)}.ui-stat-tile--link:hover .ui-stat-tile__label{color:var(--ui-primary-700)}.ui-stat-tile--link:focus-visible{outline:2px solid var(--ui-focus);outline-offset:2px}.ui-stat-grid--compact{gap:var(--ui-space-3);grid-template-columns:repeat(auto-fill,minmax(8.5rem,1fr))}.ui-stat-grid--compact .ui-stat-tile{padding:var(--ui-space-3);background-color:var(--ui-gray-50);border-radius:var(--ui-radius-md);border-color:#0000}.ui-stat-grid--compact .ui-stat-tile__value{font-size:1.25rem}.ui-stat-grid--compact .ui-stat-tile__label{font-size:.8125rem}.ui-settings-section{max-width:var(--admin-form-max);padding:var(--ui-space-6);background-color:var(--ui-surface);border:1px solid var(--ui-gray-200);border-radius:var(--ui-radius-lg)}.ui-settings-section--wide{max-width:var(--admin-readable-max)}.ui-settings-stack{gap:var(--ui-space-6);flex-direction:column;display:flex}.ui-settings-section__header{justify-content:space-between;align-items:flex-start;gap:var(--ui-space-3) var(--ui-space-4);flex-wrap:wrap;display:flex}.ui-settings-section__heading{flex:16rem;min-width:0}.ui-settings-section__title{color:var(--ui-text);margin:0;font-size:1.125rem;font-weight:600;line-height:1.4}.ui-settings-section__description{margin-top:var(--ui-space-1);color:var(--ui-text-muted);font-size:.875rem}.ui-settings-section__description p{margin:0}.ui-settings-section__actions{gap:var(--ui-space-2);flex-wrap:wrap;display:flex}.ui-settings-section__body{gap:var(--ui-space-5);margin-top:var(--ui-space-5);flex-direction:column;display:flex}.ui-settings-section .ui-settings-section__body>*{margin-top:0;margin-bottom:0}.ui-settings-section .ui-settings-section__body>.ui-btn{align-self:flex-start}.ui-settings-section__footer{justify-content:flex-end;gap:var(--ui-space-2);margin-top:var(--ui-space-6);padding-top:var(--ui-space-4);border-top:1px solid var(--ui-gray-200);flex-wrap:wrap;display:flex}.ui-switch{align-items:center;gap:var(--ui-space-3);cursor:pointer;display:inline-flex;position:relative}.ui-switch input{opacity:0;width:1px;height:1px;margin:0;position:absolute}.ui-switch__track{background:var(--ui-gray-300);border-radius:12px;flex-shrink:0;width:44px;height:24px;transition:background .2s;display:block;position:relative}.ui-switch__track:after{content:"";background:var(--ui-surface);width:20px;height:20px;box-shadow:var(--ui-shadow-sm);border-radius:50%;transition:transform .2s;position:absolute;top:2px;left:2px}.ui-switch input:checked+.ui-switch__track{background:var(--ui-primary-600)}.ui-switch input:checked+.ui-switch__track:after{transform:translate(20px)}.ui-switch input:focus-visible+.ui-switch__track{outline:2px solid var(--ui-focus);outline-offset:2px}.ui-switch input:disabled+.ui-switch__track{opacity:.6}.ui-switch:has(input:disabled){cursor:not-allowed}.ui-switch .ui-label{margin:0}.ui-breadcrumb{color:var(--ui-text-muted);flex-wrap:wrap;align-items:center;gap:.25rem;font-size:.8125rem;display:flex}.ui-breadcrumb__item{align-items:center;gap:.25rem;display:inline-flex}.ui-breadcrumb__link{color:var(--ui-primary);font-weight:500;text-decoration:none}.ui-breadcrumb__link:hover{color:var(--ui-primary-hover);text-decoration:underline}.ui-breadcrumb__sep{color:var(--ui-border);-webkit-user-select:none;user-select:none}.ui-breadcrumb__current{color:var(--ui-text);font-weight:500}.ui-tabs{box-shadow:inset 0 -2px 0 var(--ui-gray-200);margin-bottom:1.5rem;display:flex;overflow-x:auto}.ui-tab{color:var(--ui-text-muted);white-space:nowrap;cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;padding:.625rem 1.25rem;font-size:.9375rem;font-weight:500;text-decoration:none;transition:color .15s,border-color .15s;display:inline-block}.ui-tab:hover{color:var(--ui-text)}.ui-tab:focus-visible{outline:2px solid var(--ui-focus);outline-offset:-2px}.ui-tab--active{border-bottom-color:var(--ui-accent-interactive);color:var(--ui-accent-interactive);font-weight:600}.theme-menu{position:relative}.theme-menu-panel{z-index:200;background:var(--ui-surface-raised);border:1px solid var(--ui-border-subtle);min-width:240px;box-shadow:var(--ui-shadow-md);border-radius:8px;flex-direction:column;gap:.125rem;padding:.375rem;display:flex;position:absolute;top:calc(100% + 8px);right:0}.theme-menu-heading{letter-spacing:.05em;text-transform:uppercase;color:var(--ui-text-subtle);margin:0;padding:.375rem .625rem .25rem;font-size:.6875rem;font-weight:600}.theme-menu-item{min-height:44px;color:var(--ui-text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:none;border-radius:6px;align-items:center;gap:.625rem;padding:.375rem .625rem;display:flex}.theme-menu-item:hover{background:var(--ui-surface-hover)}.theme-menu-item:focus-visible{outline:2px solid var(--ui-focus);outline-offset:-2px}.theme-menu-item[aria-checked=true]{color:var(--ui-accent-interactive)}.theme-menu-item-text{flex-direction:column;flex:1;min-width:0;line-height:1.25;display:flex}.theme-menu-item-label{font-size:.875rem;font-weight:600}.theme-menu-item-hint{color:var(--ui-text-subtle);font-size:.75rem}.theme-menu-check{flex-shrink:0}@font-face{font-family:Site Inter;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Site Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/plus-jakarta-sans-latin-wght-normal-eXO_dkmS.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}.app-layout{--app-header-line:#e3e8ef;--app-header-line-strong:#cbd4e1;--app-header-ink:#0e1a2b;--app-header-ink-muted:#5b6878;--app-header-search-ring:#1463d926;--app-content-max:1340px;--app-gutter:1.5rem;background-color:var(--ui-bg);flex-direction:column;width:100vw;min-height:100vh;display:flex}.app-layout[data-section=sys-admin],.app-layout[data-section=org-admin],.app-layout[data-section=course-admin]{--app-content-max:none;--app-gutter:clamp(1.5rem, 2.5vw, 2.5rem);--admin-gutter:clamp(2rem, 2.5vw, 2.5rem)}.app-header{background-color:var(--ui-surface);border-bottom:1px solid var(--ui-gray-200);z-index:100;position:sticky;top:0}.app-nav{max-width:var(--app-content-max);width:100%;padding:0 var(--app-gutter) 0 1.5rem;align-items:center;height:56px;margin:0 auto;display:flex}.app-logo{color:var(--ui-gray-800);flex-shrink:0;align-items:center;gap:1px;width:calc(240px - 1.5rem);text-decoration:none;display:flex}.app-logo-icon{width:auto;height:26px;margin-right:6px}.app-section-title{color:var(--ui-gray-500);text-transform:uppercase;letter-spacing:.06em;padding-left:.375rem;font-size:.8125rem;font-weight:600}.app-nav-start{align-items:center;min-width:0;display:flex}.app-nav--search{grid-template-columns:minmax(max-content,1fr) minmax(0,560px) minmax(max-content,1fr);column-gap:1.5rem;display:grid}.app-nav--search .nav-actions{justify-self:end}.app-nav-search{min-width:0;position:relative}.logo-text{font-family:"Site Inter", var(--tuto-font-sans);color:var(--ui-wordmark);letter-spacing:-.8px;font-size:26px;font-weight:900;line-height:1}.nav-actions{align-items:center;gap:.75rem;margin-left:auto;display:flex}.nav-link{color:var(--ui-gray-700);border-radius:6px;padding:.375rem .75rem;font-size:.875rem;font-weight:500;text-decoration:none;transition:background-color .15s,color .15s}.nav-link:hover{background-color:var(--ui-gray-100);color:var(--ui-gray-800)}.nav-link:focus-visible{outline:2px solid var(--ui-primary-500);outline-offset:2px}.nav-btn{width:36px;height:36px;color:var(--ui-gray-500);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;transition:background-color .15s,color .15s;display:flex}.nav-btn:hover{background-color:var(--ui-gray-100);color:var(--ui-gray-800)}.nav-btn:focus-visible{outline:2px solid var(--ui-primary-500);outline-offset:2px}.app-main{max-width:var(--app-content-max);background-color:var(--ui-bg);flex:1;width:100%;margin:0 auto;padding:2rem 1.5rem}.app-gradient-strip{background:var(--ui-surface);border-bottom:1px solid var(--ui-gray-200);flex-shrink:0;height:56px}.app-gradient-strip-inner{max-width:var(--app-content-max);padding:0 var(--app-gutter) 0 1.5rem;align-items:center;height:100%;margin:0 auto;display:flex}.app-gradient-strip-title{color:var(--ui-gray-500);text-transform:uppercase;letter-spacing:.06em;font-size:.8125rem;font-weight:600}.accessibility-link{text-decoration:none}.app-header[data-section=dashboard]{background-color:var(--ui-surface);border-bottom:2px solid var(--tuto-brand)}.app-header[data-section=sys-admin]{--portal-color:#1e293b;--portal-tint:#e2e8f0;--portal-ink:#1e293b;--portal-on-color:#fff}.app-header[data-section=org-admin]{--portal-color:#4338ca;--portal-tint:#e0e7ff;--portal-ink:#3730a3;--portal-on-color:#fff}.app-header[data-section=course-admin]{--portal-color:#0f766e;--portal-tint:#ccfbf1;--portal-ink:#115e59;--portal-on-color:#fff}.app-header[data-section=sys-admin],.app-header[data-section=org-admin],.app-header[data-section=course-admin]{border-bottom-color:var(--app-header-line)}.app-header[data-section=sys-admin]:before,.app-header[data-section=org-admin]:before,.app-header[data-section=course-admin]:before{content:"";background:var(--portal-color);pointer-events:none;height:3px;position:absolute;top:0;left:0;right:0}.app-header[data-section=sys-admin] .app-logo,.app-header[data-section=org-admin] .app-logo,.app-header[data-section=course-admin] .app-logo{gap:0;width:auto}.app-header[data-section=sys-admin] .app-logo-icon,.app-header[data-section=org-admin] .app-logo-icon,.app-header[data-section=course-admin] .app-logo-icon{height:28px}.app-header[data-section=sys-admin] .logo-text,.app-header[data-section=org-admin] .logo-text,.app-header[data-section=course-admin] .logo-text{font-size:28px}.app-scope-chip{border:1px solid var(--app-header-line);background:var(--ui-surface);min-width:0;max-width:460px;height:44px;color:var(--app-header-ink);font-family:"Site Inter", var(--tuto-font-sans);border-radius:12px;align-items:center;gap:10px;margin-left:29px;padding:4px 12px 4px 5px;text-decoration:none;transition:border-color .15s,background-color .15s;display:inline-flex;position:relative}.app-scope-chip:before{content:"";background:var(--app-header-line);width:1px;height:24px;position:absolute;top:9px;left:-15px}@media (width>=769px){.app-header[data-section=sys-admin] .app-logo,.app-header[data-section=org-admin] .app-logo,.app-header[data-section=course-admin] .app-logo{width:calc(240px - 1.5rem)}.app-header[data-section=sys-admin] .app-scope-chip,.app-header[data-section=org-admin] .app-scope-chip,.app-header[data-section=course-admin] .app-scope-chip{margin-left:13px}}.app-scope-chip:hover{border-color:var(--app-header-line-strong);background:var(--ui-slate-50);text-decoration:none}.app-scope-chip:focus-visible{outline:2px solid var(--ui-focus,var(--ui-primary-600));outline-offset:2px}.app-scope-chip-avatar{background:var(--portal-tint);width:34px;height:34px;color:var(--portal-ink);letter-spacing:.02em;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;font-size:13px;font-weight:800;line-height:1;display:inline-flex}.app-scope-chip-avatar--colored{color:#fff}.app-scope-chip-avatar--platform{background:var(--portal-color);color:var(--portal-on-color)}.app-scope-chip-logo{object-fit:contain;background:var(--ui-surface);border:1px solid var(--app-header-line)}.app-scope-chip-text{flex-direction:column;min-width:0;line-height:1.15;display:flex}.app-scope-chip-name{color:var(--app-header-ink);white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:600;overflow:hidden}.app-scope-chip-type{color:var(--portal-color);white-space:nowrap;font-size:12px;font-weight:600}.app-scope-chip-access{color:var(--app-header-ink-muted)}.app-nav--portal .app-nav-search{flex:260px;min-width:200px;max-width:340px;margin-left:auto}.app-nav--portal .app-nav-search+.nav-actions{margin-left:1.5rem}.app-nav--portal .header-search-input{border-color:var(--app-header-line-strong);border-radius:10px;height:38px;padding-left:2.5rem;font-size:14px}.app-nav--portal .header-search-input:focus{border-color:var(--ui-brand);box-shadow:0 0 0 3px var(--app-header-search-ring)}.app-nav--portal .header-search-icon{left:.875rem}.app-nav--portal .header-search-dropdown{width:min(480px,90vw);left:auto}@media (width<=1023px){.app-nav--portal .app-nav-search{flex:none;min-width:0;max-width:none;margin:0 0 0 auto;position:static}.app-nav--portal .app-nav-search+.nav-actions{margin-left:.5rem}.app-nav--portal .app-nav-search-toggle{display:inline-flex}.app-nav--portal .app-nav-search-panel{display:none}.app-nav--portal .app-nav-search.is-expanded .app-nav-search-panel{background:var(--ui-surface);border-bottom:1px solid var(--ui-gray-200);box-shadow:var(--ui-shadow-md);padding:.5rem 1rem;display:block;position:absolute;top:100%;left:0;right:0}.app-nav--portal .app-nav-search.is-expanded .header-search-input{font-size:1rem}.app-nav--portal .app-nav-search.is-expanded .header-search-dropdown{width:auto;left:1rem;right:1rem}}.app-nav-site-btn{border:1px solid var(--app-header-line-strong);background:var(--ui-surface);min-height:36px;color:var(--app-header-ink);font-family:"Site Inter", var(--tuto-font-sans);white-space:nowrap;cursor:pointer;border-radius:10px;justify-content:center;align-items:center;padding:6px 16px;font-size:15px;font-weight:600;line-height:1.4;transition:border-color .15s;display:inline-flex}.app-nav-site-btn:hover{border-color:var(--app-header-ink)}.app-nav-site-btn:focus-visible{outline:2px solid var(--ui-focus,var(--ui-primary-600));outline-offset:2px}.app-header[data-section=course-player]{background-color:#1c1d1f;border-bottom:none}.app-header[data-section=course-player] .logo-text{color:#fff}.app-header[data-section=course-player] .app-section-title{color:#9ca3af}.app-header[data-section=course-player] .hp-btn-ghost{color:#d1d5db}.app-header[data-section=course-player] .hp-btn-ghost:hover{color:#fff;background-color:#ffffff14}.app-header[data-section=course-player] .hp-btn-outline{color:#d1d5db;border-color:#374151}.app-header[data-section=course-player] .hp-btn-outline:hover{color:#fff;background-color:#ffffff14}.app-nav .hp-btn{padding:.3rem .875rem;font-size:.8125rem}.app-nav-profile-btn{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.app-nav-profile-avatar{background:var(--ui-primary-500);width:32px;height:32px;color:var(--ui-on-solid);-webkit-user-select:none;user-select:none;border-radius:50%;justify-content:center;align-items:center;font-size:.875rem;font-weight:700;transition:opacity .15s;display:flex}.app-nav-profile-photo{object-fit:cover;background:var(--ui-gray-200)}.app-nav-profile-btn:hover .app-nav-profile-avatar{opacity:.85}.app-nav-icon-btn{width:36px;height:36px;color:var(--ui-gray-700);cursor:pointer;background:0 0;border:none;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex;position:relative}.app-nav-icon-btn:hover{background-color:var(--ui-gray-100)}.app-nav-icon-btn:focus-visible{outline:2px solid var(--ui-primary-500);outline-offset:2px}.app-header[data-section=course-player] .app-nav-icon-btn{color:#d1d5db}.app-header[data-section=course-player] .app-nav-icon-btn:hover{background-color:#ffffff14}.app-nav-search-toggle,.app-nav-menu{display:none}.app-nav-search-panel,.app-nav-menu{position:relative}.app-nav-menu-panel{background:var(--ui-surface-raised);border:1px solid var(--ui-gray-200);min-width:200px;box-shadow:var(--ui-shadow-md);z-index:200;border-radius:8px;flex-direction:column;padding:.375rem;display:flex;position:absolute;top:calc(100% + 8px);right:0}.app-nav-menu-item{min-height:44px;color:var(--ui-gray-800);font:inherit;text-align:left;cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:space-between;align-items:center;gap:.5rem;padding:0 .75rem;font-size:.9375rem;font-weight:500;text-decoration:none;display:flex}.app-nav-menu-item:hover{background-color:var(--ui-gray-100);color:var(--ui-gray-800);text-decoration:none}.app-nav-menu-item:focus-visible{outline:2px solid var(--ui-primary-500);outline-offset:-2px}@media (width<=640px){.app-nav{gap:.5rem;padding:0 1rem}.app-logo{width:auto}.logo-text{font-size:1.375rem}.app-section-title{display:none}.app-header[data-section=sys-admin] .app-logo-icon,.app-header[data-section=org-admin] .app-logo-icon,.app-header[data-section=course-admin] .app-logo-icon{height:24px}.app-header[data-section=sys-admin] .logo-text,.app-header[data-section=org-admin] .logo-text,.app-header[data-section=course-admin] .logo-text{font-size:1.375rem}.app-scope-chip{border-radius:10px;gap:8px;height:40px;margin-left:21px;padding:3px 8px 3px 3px}.app-scope-chip:before{top:7px;left:-11px}.app-scope-chip-avatar{width:32px;height:32px}.app-scope-chip-name{font-size:13px}.nav-actions{gap:.5rem}.nav-actions .app-nav-wide-only{display:none}.app-nav-menu{display:block}.app-nav--search{display:flex}.app-nav-search{flex:none;margin:0 0 0 auto;position:static}.app-nav-search+.nav-actions{margin-left:0}.app-nav-search-toggle{display:inline-flex}.app-nav-search-panel{display:none}.app-nav-search.is-expanded .app-nav-search-panel{background:var(--ui-surface);border-bottom:1px solid var(--ui-gray-200);box-shadow:var(--ui-shadow-md);padding:.5rem 1rem;display:block;position:absolute;top:100%;left:0;right:0}.app-nav-search.is-expanded .header-search-input{font-size:1rem}.app-nav-search.is-expanded .header-search-dropdown{left:1rem;right:1rem}}@media (width<=480px){.app-scope-chip-type,.app-header[data-section=sys-admin] .logo-text,.app-header[data-section=org-admin] .logo-text,.app-header[data-section=course-admin] .logo-text{display:none}.app-header[data-section=sys-admin] .app-logo-icon,.app-header[data-section=org-admin] .app-logo-icon,.app-header[data-section=course-admin] .app-logo-icon{margin-right:0}}@media screen{:root[data-theme=dark] .app-layout{--app-header-line:#2a374c;--app-header-line-strong:#3a4860;--app-header-ink:#e6ebf2;--app-header-ink-muted:#aab6c8;--app-header-search-ring:#6ea2ff4d}:root[data-theme=dark] .app-header[data-section=sys-admin]{--portal-color:#94a3b8;--portal-tint:#1e2a3d;--portal-ink:#dce3ec;--portal-on-color:#0d1421}:root[data-theme=dark] .app-header[data-section=org-admin]{--portal-color:#a5b4fc;--portal-tint:#25285a;--portal-ink:#c7d2fe;--portal-on-color:#0d1421}:root[data-theme=dark] .app-header[data-section=course-admin]{--portal-color:#5eead4;--portal-tint:#0f3532;--portal-ink:#99f6e4;--portal-on-color:#0d1421}:root[data-theme=dark] .app-header .hp-btn-outline{color:var(--ui-text);border-color:var(--ui-border)}:root[data-theme=dark] .app-header .hp-btn-outline:hover,:root[data-theme=dark] .app-header .hp-btn-ghost:hover{background:var(--ui-surface-hover)}:root[data-theme=dark] .app-header .hp-btn-ghost{color:var(--ui-accent-interactive)}}.hp-root{font-family:"Inter", var(--tuto-font-sans);color:#1c1d1f;background:#fff;flex-direction:column;min-height:100vh;line-height:1.6;display:flex}.hp-root *,.hp-root :before,.hp-root :after{box-sizing:border-box}:root{--tuto-teal:#005f73;--tuto-dark-teal:#002e3b;--tuto-gold:#d4af37;--tuto-light-gold:#f4e8c1;--tuto-purple:#5624d0}.hp-container{max-width:1340px;margin:0 auto;padding:0 1.5rem}.hp-section{padding:3.5rem 0}.hp-section-header{margin-bottom:1.75rem}.hp-section-title{color:#1c1d1f;margin:0 0 .375rem;font-size:1.625rem;font-weight:700}.hp-section-subtitle{color:#6b7280;margin:0;font-size:.9375rem}.hp-btn{cursor:pointer;white-space:nowrap;border:2px solid #0000;border-radius:4px;justify-content:center;align-items:center;gap:.375rem;padding:.625rem 1.25rem;font-size:.9375rem;font-weight:700;line-height:1.4;text-decoration:none;transition:background-color .15s,color .15s,border-color .15s;display:inline-flex}.hp-btn:focus-visible{outline-offset:2px;outline:2px solid #1c1d1f}.hp-btn-dark{color:#fff;background:#1c1d1f;border-color:#1c1d1f}.hp-btn-dark:hover{background:#3e4143;border-color:#3e4143}.hp-btn-outline{color:#1c1d1f;background:0 0;border-color:#1c1d1f}.hp-btn-outline:hover{background:#f7f9fa}.hp-btn-purple{background:var(--tuto-purple);color:#fff;border-color:var(--tuto-purple)}.hp-btn-purple:hover{background:#401b9c;border-color:#401b9c}.hp-btn-gold{background:var(--tuto-gold);color:#1c1d1f;border-color:var(--tuto-gold);font-weight:700}.hp-btn-gold:hover{background:#b8961e;border-color:#b8961e}.hp-btn-ghost{color:#2563eb;background:0 0;border-color:#0000}.hp-btn-lg{padding:.75rem 1.5rem;font-size:1rem}.hp-btn-sm{padding:.375rem .875rem;font-size:.8125rem;font-weight:600}.hp-nav{z-index:50;background:#fff;border-bottom:1px solid #e5e7eb;position:sticky;top:0}.hp-nav-inner{flex-wrap:wrap;align-items:center;gap:0 1rem;min-height:56px;display:flex}.hp-logo{flex-shrink:0;align-items:center;gap:.125rem;text-decoration:none;display:flex}.hp-logo:hover{text-decoration:none}.hp-logo-word{font-family:"Site Inter", var(--tuto-font-sans);color:#000;letter-spacing:-.8px;font-size:28px;font-weight:900;line-height:1}.hp-logo-icon{width:auto;height:28px;margin-right:6px}.hp-nav-search{min-width:0;display:none;position:relative}@media (width>=640px){.hp-nav-inner{grid-template-columns:minmax(max-content,1fr) minmax(0,560px) minmax(max-content,1fr);column-gap:1.5rem;display:grid}.hp-nav-search{display:block}.hp-nav-end{justify-self:end}}.hp-nav-end{align-items:center;gap:1.25rem;display:flex}.hp-nav-search-toggle{color:#1c1d1f;cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;margin-left:auto;padding:0;display:inline-flex}.hp-nav-search-toggle:hover{background:#f3f4f6}.hp-nav-search-toggle:focus-visible{outline-offset:2px;outline:2px solid #1c1d1f}@media (width>=640px){.hp-nav-search-toggle{display:none}}@media (width<=639px){.hp-nav-search--open{flex-basis:100%;order:10;max-width:none;padding:0 0 .75rem;display:block}}.hp-nav-links{align-items:center;gap:1.25rem;font-size:.875rem;font-weight:500;display:none}@media (width>=1024px){.hp-nav-links{display:flex}}.hp-nav-link{color:#1c1d1f;text-decoration:none;transition:color .12s}.hp-nav-link:hover{color:var(--tuto-purple);text-decoration:none}.hp-nav-actions{align-items:center;gap:.625rem;display:flex}.hp-nav-signin{white-space:nowrap;color:#1c1d1f;cursor:pointer;background:0 0;border:1px solid #1c1d1f;border-radius:4px;padding:.4375rem .875rem;font-size:.875rem;font-weight:700;transition:background .12s}.hp-nav-signin:hover{background:#f7f9fa}@media (width<=479px){.hp-nav-signup{display:none}}.hp-hero-section{background:#fff;padding:1.5rem 0 2rem}.hp-hero-carousel{-webkit-user-select:none;user-select:none;border-radius:8px;height:420px;position:relative;overflow:hidden}.hp-hero-slide{border-radius:8px;align-items:center;height:100%;padding:2rem 2.5rem;display:none;position:absolute;inset:0;overflow:hidden}.hp-hero-slide--active{display:flex}.hp-hero-slide--amber{background:linear-gradient(135deg,#f97316 0%,#fbbf24 100%)}.hp-hero-slide--teal{background:linear-gradient(135deg,#0e7490 0%,#06b6d4 100%)}.hp-hero-slide--violet{background:linear-gradient(135deg,#7c3aed 0%,#a78bfa 100%)}.hp-hero-slide--green{background:linear-gradient(135deg,#059669 0%,#34d399 100%)}.hp-hero-slide:after{content:"";pointer-events:none;background:#ffffff1a;border-radius:50%;width:320px;height:320px;position:absolute;top:-60px;right:-60px}.hp-hero-card{z-index:1;background:#fff;border-radius:6px;flex-shrink:0;max-width:340px;margin-left:1rem;padding:1.25rem 1.5rem;position:relative;box-shadow:0 4px 20px #00000026}.hp-hero-card-eyebrow{text-transform:uppercase;letter-spacing:.08em;color:var(--tuto-purple);margin-bottom:.375rem;font-size:.75rem;font-weight:700}.hp-hero-card-title{color:#1c1d1f;margin:0 0 .5rem;font-size:1.375rem;font-weight:800;line-height:1.2}.hp-hero-card-sub{color:#4b5563;margin:0 0 1.125rem;font-size:.875rem;line-height:1.55}.hp-hero-visual{z-index:1;flex:1;justify-content:flex-end;align-items:center;padding-right:1rem;display:flex;position:relative}.hp-hero-visual-card{color:#fff;text-align:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff2e;border:1px solid #ffffff59;border-radius:10px;max-width:200px;padding:1.25rem 1.5rem}.hp-hero-visual-emoji{margin-bottom:.5rem;font-size:2.75rem;display:block}.hp-hero-visual-label{font-size:.9375rem;font-weight:700;line-height:1.3}.hp-hero-visual-sub{color:#fffc;margin-top:.25rem;font-size:.8125rem}.hp-carousel-btn{z-index:10;cursor:pointer;color:#1c1d1f;background:#fff;border:1px solid #e5e7eb;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-size:.875rem;transition:box-shadow .15s,background .15s;display:flex;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 2px 8px #0000001f}.hp-carousel-btn:hover{background:#f3f4f6;box-shadow:0 4px 12px #00000029}.hp-carousel-btn--prev{left:12px}.hp-carousel-btn--next{right:12px}.hp-carousel-dots{justify-content:center;gap:.5rem;margin-top:.875rem;display:flex}.hp-carousel-dot{cursor:pointer;background:#d1d5db;border:none;border-radius:50%;width:8px;height:8px;padding:0;transition:background .15s,width .2s}.hp-carousel-dot--active{background:#1c1d1f;border-radius:9999px;width:24px}@media (width<=640px){.hp-carousel-btn,.hp-hero-visual{display:none}.hp-hero-card{max-width:100%}.hp-hero-slide{padding:1.75rem 1.25rem}}.hp-features{background:#f7f9fa;border-top:1px solid #e5e7eb}.hp-features-grid{grid-template-columns:repeat(3,1fr);gap:1.25rem;margin:0;padding:0;list-style:none;display:grid}@media (width<=900px){.hp-features-grid{grid-template-columns:1fr}}.hp-feature{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:1.5rem}.hp-feature-icon{width:44px;height:44px;color:var(--tuto-purple);background:#ede9fe;border-radius:10px;justify-content:center;align-items:center;margin-bottom:.875rem;display:inline-flex}.hp-feature-title{color:#1c1d1f;margin:0 0 .375rem;font-size:1.0625rem;font-weight:700}.hp-feature-body{color:#4b5563;margin:0;font-size:.9375rem;line-height:1.55}.hp-institutes{background:#fff;border-top:1px solid #e5e7eb}.hp-institutes-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem;margin:0;padding:0;list-style:none;display:grid}.hp-institute{box-sizing:border-box;height:100%;color:inherit;border:1px solid #e5e7eb;border-radius:12px;align-items:center;gap:.875rem;padding:1rem 1.125rem;text-decoration:none;transition:border-color .15s,box-shadow .15s;display:flex}.hp-institute:hover{border-color:#d1d5db;text-decoration:none;box-shadow:0 8px 20px -12px #0f172a40}.hp-institute:focus-visible{outline-offset:2px;outline:2px solid #1c1d1f}.hp-institute-logo{object-fit:cover;border-radius:10px;flex-shrink:0;width:48px;height:48px}.hp-institute-monogram{background:linear-gradient(135deg, var(--org-primary-color), var(--org-secondary-color));color:#fff;justify-content:center;align-items:center;font-size:1.125rem;font-weight:700;display:flex}.hp-institute-text{flex-direction:column;gap:.125rem;min-width:0;display:flex}.hp-institute-name{color:#1c1d1f;font-weight:700}.hp-institute-desc{color:#6b7280;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.8125rem;display:-webkit-box;overflow:hidden}.hp-institutes-cta{background:linear-gradient(135deg,#f5f3ff,#eef2ff);border:1px solid #ddd6fe;border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem 1.5rem;margin-top:1.5rem;padding:1.25rem 1.5rem;display:flex}.hp-institutes-cta-title{color:#1c1d1f;margin:0 0 .25rem;font-size:1.0625rem;font-weight:700}.hp-institutes-cta-body{color:#4b5563;margin:0;font-size:.9375rem}.hp-join{background:#f5f3ff;border-top:1px solid #ddd6fe;padding:2.5rem 0}.hp-join-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem 2rem;display:flex}.hp-join-title{color:#1c1d1f;margin:0 0 .25rem;font-size:1.5rem;font-weight:800}.hp-join-body{color:#4b5563;margin:0}.hp-footer{color:#ffffffa6;background:#1c1d1f;margin-top:auto;padding:3rem 0 0}.hp-footer-inner{border-bottom:1px solid #ffffff1a;grid-template-columns:2fr 1fr 1fr;gap:2.5rem;padding-bottom:2.5rem;display:grid}@media (width<=900px){.hp-footer-inner{grid-template-columns:1fr 1fr;gap:2rem}}@media (width<=560px){.hp-footer-inner{grid-template-columns:1fr}}.hp-footer-brand-name{color:#fff;font-size:1.25rem;font-weight:800}.hp-footer-brand-tld{color:var(--tuto-purple)}.hp-footer-tagline{color:#ffffff73;margin:.625rem 0 0;font-size:.875rem;line-height:1.65}.hp-footer-col h4{color:#fff;text-transform:uppercase;letter-spacing:.07em;margin:0 0 1rem;font-size:.8125rem;font-weight:700}.hp-footer-col ul{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.hp-footer-col a{color:#ffffff80;font-size:.875rem;text-decoration:none;transition:color .12s}.hp-footer-col a:hover{color:#fff;text-decoration:none}.hp-footer-bottom{text-align:center;padding:1.25rem 0}.hp-footer-bottom p{color:#ffffff4d;margin:0;font-size:.8125rem}.email-password-form{flex-direction:column;gap:1rem;width:100%;display:flex}.epf-field{flex-direction:column;gap:.25rem;display:flex}.epf-label{color:#1c1d1f;font-size:.8125rem;font-weight:600}.epf-input{color:#1c1d1f;background:#fff;border:1px solid #d1d5db;border-radius:4px;outline:none;width:100%;padding:.75rem .875rem;font-size:.9375rem;transition:border-color .15s,box-shadow .15s}.epf-input::placeholder{color:#9ca3af}.epf-input:focus{border-color:#5624d0;box-shadow:0 0 0 2px #5624d01f}.epf-input:disabled{color:#6b7280;cursor:not-allowed;background:#f9fafb}.epf-input--error{border-color:#dc2626}.epf-input--error:focus{border-color:#dc2626;box-shadow:0 0 0 2px #dc26261f}.epf-error{color:#dc2626;margin-top:.125rem;font-size:.75rem;line-height:1.4}.epf-server-error{color:#991b1b;background:#fef2f2;border:1px solid #fecaca;border-radius:4px;padding:.625rem .875rem;font-size:.8125rem;line-height:1.4}.epf-submit-btn{color:#fff;cursor:pointer;background:#5624d0;border:none;border-radius:4px;justify-content:center;align-items:center;width:100%;min-height:44px;padding:.875rem 1.5rem;font-size:.9375rem;font-weight:600;transition:background .15s,opacity .15s;display:flex}.epf-submit-btn:hover:not(:disabled){background:#401b9c}.epf-submit-btn:focus-visible{outline-offset:2px;outline:2px solid #5624d0}.epf-submit-btn:disabled{opacity:.7;cursor:not-allowed}.epf-spinner{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:18px;height:18px;animation:.6s linear infinite epf-spin;display:inline-block}@keyframes epf-spin{to{transform:rotate(360deg)}}.epf-otp-info{color:#4b5563;margin:0 0 1rem;font-size:.875rem;line-height:1.5}.epf-otp-info strong{color:#1c1d1f}.epf-input--otp{letter-spacing:.5em;text-align:center;padding:.75rem 1rem;font-family:SF Mono,Fira Code,Roboto Mono,Courier New,monospace;font-size:1.5rem}.epf-forgot-link{text-align:center;margin-inline:auto;color:#5624d0;cursor:pointer;background:0 0;border:none;min-height:44px;margin-top:.25rem;padding:0;font-size:.8125rem;font-weight:600;transition:color .12s;display:block}.epf-forgot-link:hover{color:#401b9c;text-decoration:underline}@media (width<=768px){.email-password-form{gap:.875rem}.epf-input{padding:.875rem;font-size:1rem}.epf-submit-btn{padding:1rem 1.5rem;font-size:1rem}}.phone-auth-form{flex-direction:column;gap:1rem;width:100%;display:flex}.phone-auth-field{flex-direction:column;gap:.25rem;display:flex}.phone-auth-label{color:#1c1d1f;font-size:.8125rem;font-weight:600}.phone-auth-hint{color:#6b7280;font-size:.75rem}.phone-auth-input{color:#1c1d1f;box-sizing:border-box;background:#fff;border:1px solid #d1d5db;border-radius:4px;outline:none;width:100%;padding:.75rem .875rem;font-size:.9375rem;transition:border-color .15s,box-shadow .15s}.phone-auth-input::placeholder{color:#9ca3af}.phone-auth-input:focus{border-color:#5624d0;outline:none;box-shadow:0 0 0 2px #5624d01f}.phone-auth-input:disabled{color:#6b7280;cursor:not-allowed;background:#f9fafb}.phone-auth-input--otp{letter-spacing:.5em;text-align:center;min-height:52px;padding:.75rem 1rem;font-family:SF Mono,Fira Code,Fira Mono,Roboto Mono,Courier New,monospace;font-size:1.5rem}.phone-auth-submit{color:#fff;cursor:pointer;background:#5624d0;border:none;border-radius:4px;justify-content:center;align-items:center;width:100%;min-height:44px;padding:.875rem 1.5rem;font-size:.9375rem;font-weight:600;transition:background .15s,opacity .15s;display:flex}.phone-auth-submit:hover:not(:disabled){background:#401b9c}.phone-auth-submit:focus-visible{outline-offset:2px;outline:2px solid #5624d0}.phone-auth-submit:disabled{opacity:.7;cursor:not-allowed}.phone-auth-spinner{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:18px;height:18px;animation:.6s linear infinite phone-auth-spin;display:inline-block}@keyframes phone-auth-spin{to{transform:rotate(360deg)}}.phone-auth-error{color:#dc2626;background:#fef2f2;border:1px solid #fecaca;border-radius:4px;padding:.5rem .75rem;font-size:.8125rem;line-height:1.4}.phone-auth-otp-info{color:#4b5563;margin:0;font-size:.875rem;line-height:1.5}.phone-auth-otp-info strong{color:#1c1d1f}.phone-auth-timer{color:#6b7280;text-align:center;font-size:.8125rem}.phone-auth-resend-link{color:#5624d0;cursor:pointer;background:0 0;border:none;padding:0;font-size:.8125rem;font-weight:600;text-decoration:none;transition:color .12s}.phone-auth-resend-link:hover{color:#401b9c;text-decoration:underline}.phone-auth-resend-link:disabled{opacity:.5;cursor:not-allowed}.phone-auth-forgot-link{text-align:center;margin-inline:auto;color:#5624d0;cursor:pointer;background:0 0;border:none;min-height:44px;margin-top:.25rem;padding:0;font-size:.8125rem;font-weight:600;transition:color .12s;display:block}.phone-auth-forgot-link:hover{color:#401b9c;text-decoration:underline}@media (width>=480px){.phone-auth-input--otp{max-width:280px;margin:0 auto}}.password-reset-form{flex-direction:column;width:100%;max-width:400px;padding:2rem 0;display:flex}.password-reset-title{color:#1c1d1f;text-align:center;margin:0 0 .75rem;font-size:1.75rem;font-weight:800;line-height:1.2}.password-reset-message{color:#4b5563;text-align:center;margin:0 0 1.5rem;font-size:.875rem;line-height:1.55}.password-reset-confirmation{color:#065f46;text-align:center;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:6px;margin:0 0 1.5rem;padding:.75rem 1rem;font-size:.875rem;line-height:1.45}.password-reset-channel-hint{color:#6b7280;margin:.375rem 0 0;font-size:.75rem}.password-reset-field{margin-bottom:1.25rem}.password-reset-label{color:#1c1d1f;margin-bottom:.375rem;font-size:.8125rem;font-weight:600;display:block}.password-reset-input{color:#1c1d1f;box-sizing:border-box;background:#fff;border:1px solid #d1d5db;border-radius:4px;width:100%;padding:.75rem .875rem;font-size:.9375rem;transition:border-color .15s,box-shadow .15s;display:block}.password-reset-input::placeholder{color:#9ca3af}.password-reset-input:focus{border-color:#5624d0;outline:none;box-shadow:0 0 0 3px #5624d01a}.password-reset-input[aria-invalid=true]{border-color:#dc2626}.password-reset-input[aria-invalid=true]:focus{box-shadow:0 0 0 3px #dc26261a}.password-reset-error{color:#dc2626;margin:0 0 1rem;font-size:.8125rem;line-height:1.45}.password-reset-btn{cursor:pointer;border:none;border-radius:4px;justify-content:center;align-items:center;width:100%;padding:.875rem 1.5rem;font-size:.9375rem;font-weight:600;transition:background .15s,box-shadow .15s,opacity .15s;display:flex}.password-reset-btn-primary{color:#fff;background:#5624d0}.password-reset-btn-primary:hover{background:#401b9c}.password-reset-btn-primary:focus-visible{outline-offset:2px;outline:2px solid #5624d0}.password-reset-btn-primary:disabled{opacity:.5;cursor:not-allowed}.password-reset-back-link{text-align:center;color:#5624d0;cursor:pointer;background:0 0;border:none;margin-top:1.5rem;padding:.5rem;font-size:.875rem;font-weight:600;transition:color .12s;display:block}.password-reset-back-link:hover{color:#401b9c;text-decoration:underline}.password-reset-success{text-align:center;flex-direction:column;align-items:center;gap:.75rem;display:flex}.password-reset-success-icon{color:#059669;background:#ecfdf5;border-radius:50%;justify-content:center;align-items:center;width:3rem;height:3rem;margin-bottom:.5rem;font-size:1.5rem;font-weight:700;display:flex}.password-reset-success .password-reset-message{margin-bottom:1.5rem}@media (width<=768px){.password-reset-form{max-width:100%;padding:1.5rem 1rem}.password-reset-title{font-size:1.5rem}}.login-page{background:#fff;flex-direction:column;min-height:100vh;display:flex}.login-body{flex:1;grid-template-columns:1fr 480px;align-items:center;gap:2rem;width:100%;max-width:1340px;min-height:calc(100vh - 56px);margin:0 auto;padding:0 1.5rem;display:grid}.login-illustration{justify-content:center;align-items:center;padding:3rem 2rem;display:flex}.login-illustration-inner{flex-direction:column;align-items:center;gap:1.25rem;width:100%;max-width:520px;display:flex}.login-illustration-art{border-radius:24px;width:100%;line-height:0;overflow:hidden}.login-illustration-art svg{width:100%;height:auto;display:block}.login-illustration-tagline{color:#005f73;text-align:center;font-size:1.125rem;font-weight:700}.login-form-side{flex-direction:column;justify-content:center;justify-self:start;width:100%;max-width:400px;padding:2rem 0;display:flex}.login-card-title{color:#1c1d1f;text-align:center;margin:0 0 2rem;font-size:1.75rem;font-weight:800;line-height:1.2}.google-signin-btn{color:#1c1d1f;cursor:pointer;background:#fff;border:1px solid #d1d5db;border-radius:4px;justify-content:center;align-items:center;gap:.75rem;width:100%;margin-bottom:.875rem;padding:.875rem 1.5rem;font-size:.9375rem;font-weight:600;transition:background .15s,border-color .15s,box-shadow .15s;display:flex}.google-signin-btn:hover{background:#f9fafb;border-color:#9ca3af;box-shadow:0 1px 4px #00000014}.google-signin-btn:focus-visible{outline-offset:2px;outline:2px solid #5624d0}.login-error-banner{color:#991b1b;text-align:left;background:#fef2f2;border:1px solid #fecaca;border-radius:6px;margin-bottom:1.5rem;padding:.5rem .875rem;font-size:.8125rem;line-height:1.4}.login-destination-badge{color:#5624d0;text-align:left;background:#f5f3ff;border:1px solid #ddd6fe;border-radius:6px;align-items:center;gap:.375rem;margin-bottom:1.5rem;padding:.5rem .875rem;font-size:.8125rem;font-weight:600;display:flex}.login-divider{color:#6b7280;align-items:center;gap:.75rem;margin:1rem 0;font-size:.8125rem;display:flex}.login-divider:before,.login-divider:after{content:"";background:#e5e7eb;flex:1;height:1px}.login-auth-tabs{border:1px solid #e5e7eb;border-radius:6px;gap:0;margin-bottom:1.25rem;display:flex;overflow:hidden}.login-auth-tab{color:#6b7280;cursor:pointer;background:#f9fafb;border:none;flex:1;padding:.625rem 1rem;font-size:.875rem;font-weight:600;transition:background .15s,color .15s}.login-auth-tab:hover{color:#374151;background:#f3f4f6}.login-auth-tab--active{color:#5624d0;background:#fff;box-shadow:inset 0 -2px #5624d0}.login-auth-tab:focus-visible{outline-offset:-2px;z-index:1;outline:2px solid #5624d0}.login-toggle{text-align:center;color:#4b5563;border-top:1px solid #f3f4f6;margin-top:1.5rem;padding-top:1.5rem;font-size:.875rem}.login-toggle-link{color:#5624d0;cursor:pointer;min-height:44px;font-weight:700;font-size:inherit;background:0 0;border:none;align-items:center;padding:0;text-decoration:none;transition:color .12s;display:inline-flex}.login-toggle-link:hover{color:#401b9c;text-decoration:underline}@media (width<=768px){.login-body{grid-template-columns:1fr;min-height:auto;padding:2rem 1rem}.login-illustration{display:none}.login-form-side{justify-self:center;max-width:100%}.login-card-title{font-size:1.5rem}.login-auth-tabs{margin-bottom:1rem}.login-auth-tab{min-height:44px;padding:.75rem .5rem}}.st-root .epf-input:focus,.st-root .phone-auth-input:focus,.st-root .password-reset-input:focus{border-color:var(--st-blue)}.st-root .epf-submit-btn,.st-root .phone-auth-submit,.st-root .password-reset-btn-primary{background:var(--st-blue);border-radius:12px}.st-root .epf-submit-btn:hover:not(:disabled),.st-root .phone-auth-submit:hover:not(:disabled),.st-root .password-reset-btn-primary:hover{background:var(--st-blue-dark)}.st-root .epf-submit-btn:focus-visible,.st-root .phone-auth-submit:focus-visible,.st-root .password-reset-btn-primary:focus-visible,.st-root .google-signin-btn:focus-visible,.st-root .login-auth-tab:focus-visible{outline-color:var(--st-blue)}.st-root .epf-forgot-link,.st-root .phone-auth-forgot-link,.st-root .phone-auth-resend-link,.st-root .password-reset-back-link,.st-root .login-toggle-link{color:var(--st-blue)}.st-root .epf-forgot-link:hover,.st-root .phone-auth-forgot-link:hover,.st-root .phone-auth-resend-link:hover,.st-root .password-reset-back-link:hover{color:var(--st-blue-dark)}.st-root .login-auth-tab--active{color:var(--st-blue);box-shadow:inset 0 -2px 0 var(--st-blue)}.st-root .login-destination-badge{background:var(--st-tint);color:var(--st-blue-dark)}.st-root .login-card-title,.st-root .login-illustration-tagline{font-family:var(--st-display);color:var(--st-ink)}.st-root .login-page{flex:1 0 auto;min-height:0}.st-root .header-search-input{border:1px solid var(--st-input-line);height:52px;color:var(--st-ink);border-radius:14px;font-size:1rem}.st-root .header-search-input:focus{border-color:var(--st-blue);box-shadow:0 0 0 3px #1463d92e}.st-root .header-search-option.is-active,.st-root .header-search-option:hover{background:var(--st-soft)}.st-root .header-search-all{color:var(--st-blue)}.st-root .header-search-signin{background:var(--st-tint)}.st-root .header-search-signin strong{color:var(--st-blue-dark)}.st-root .srp-signin{border-color:var(--st-card-line);background:var(--st-tint)}.st-root .srp-subject:hover{border-color:var(--st-blue);color:var(--st-blue)}.st-root .login-card-title{margin-bottom:1rem}.st-root.st-root--header{min-height:0;display:block}@media (width<=859px){.st-root--header .st-header-actions .st-signin{padding-inline:8px;display:inline-flex}}.st-header-search{flex:260px;min-width:200px;max-width:340px;margin-left:auto}.st-root .st-header-search .header-search-input{border-radius:10px;height:38px;padding-left:2.5rem;font-size:14px}.st-root .st-header-search .header-search-icon{left:.875rem}.st-root .st-header-search .header-search-dropdown{width:min(480px,90vw);left:auto}.st-header-search+.st-header-search-icon+.st-header-actions,.st-header-search~.st-header-actions{margin-left:0}.st-header-search-icon{width:40px;height:40px;color:var(--st-ink);border-radius:10px;justify-content:center;align-items:center;margin-left:auto;display:none}.st-header-search-icon:hover{background:var(--st-soft)}@media (width<=1199px){.st-header-search{display:none}.st-header-search-icon{display:inline-flex}}.st-root .header-search-option{color:var(--st-ink)}.site-themed{--tuto-brand:#1463d9;--tuto-brand-hover:#0f4fb0;font-family:"Site Inter", var(--tuto-font-sans);background:#fff;flex-direction:column;min-height:100vh;display:flex}.site-themed>main,.site-themed>.hp-container,.site-themed>.org-public-main{flex:1 0 auto}.site-themed :is(h1,h2,h3){font-family:"Site Plus Jakarta Sans", "Site Inter", var(--tuto-font-sans)}.site-themed .pcp-cta-btn,.site-themed .org-join-btn{background:#1463d9;border-radius:12px}.site-themed .pcp-cta-btn:hover,.site-themed .org-join-btn:hover:not(:disabled){background:#0f4fb0}.site-themed .org-visitor-signup,.site-themed .pcp-access-signup,.site-themed .pcp-error-link,.site-themed .pcp-org,.site-themed .pcp-toc-empty a,.site-themed .pcp-cta-note a,.site-themed .ppp-text a{color:#1463d9}.site-themed .org-join-panel{background:#eaf2fd;border-color:#dde5f0}.site-themed .org-course-search-input:focus,.site-themed .org-join-message:focus{box-shadow:0 0 0 3px #1463d92e}.site-themed .pcp-access,.site-themed .ppp-courses{background:#f3f6fa;border-color:#dde5f0}.dashboard{flex-direction:column;gap:2rem;display:flex}.dashboard-header{justify-content:space-between;align-items:center;display:flex}.dashboard-header h1{color:var(--ui-gray-800);font-size:1.5rem;font-weight:600}.btn-primary{background-color:var(--ui-primary-600);color:var(--ui-on-solid);border-color:var(--ui-primary-600)}.btn-secondary{background-color:var(--ui-surface);color:var(--ui-gray-700);border-color:var(--ui-gray-300)}.search-section{flex-direction:column;gap:1rem;display:flex}.search-input-wrapper{align-items:center;display:flex;position:relative}.search-icon{color:var(--ui-gray-400);pointer-events:none;position:absolute;left:.75rem}.search-input{border:1px solid var(--ui-gray-300);background-color:var(--ui-surface);width:100%;color:var(--ui-gray-800);border-radius:8px;padding:.625rem .75rem .625rem 2.5rem;font-size:.9375rem;transition:border-color .15s,box-shadow .15s}.search-input::placeholder{color:var(--ui-text-subtle)}.search-input:focus{border-color:var(--ui-primary-500);box-shadow:var(--ui-focus-ring);outline:none}.search-suggestions{background-color:var(--ui-surface);border:1px solid var(--ui-gray-200);box-shadow:var(--ui-shadow-md);z-index:50;border-radius:8px;max-height:320px;margin-top:4px;padding:.25rem 0;list-style:none;position:absolute;top:100%;left:0;right:0;overflow-y:auto}.search-suggestion-item{justify-content:space-between;align-items:center;gap:.75rem;padding:.5rem .75rem;display:flex}.search-suggestion-item:not(:last-child){border-bottom:1px solid var(--ui-gray-100)}.search-suggestion-title{color:var(--ui-gray-800);white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;font-size:.875rem;font-weight:500;overflow:hidden}.search-suggestion-view-link{color:var(--ui-primary-500);flex-shrink:0;font-size:.8125rem;text-decoration:none}.search-suggestion-view-link:hover{color:var(--ui-primary-600);text-decoration:underline}.search-suggestion-loading,.search-suggestion-empty{color:var(--ui-gray-500);justify-content:center;padding:.75rem;font-size:.8125rem}.search-message{color:var(--ui-gray-500);padding:.25rem 0;font-size:.875rem}.section-title{color:var(--ui-gray-700);margin-bottom:.75rem;font-size:1.125rem;font-weight:600}.course-grid{grid-template-columns:repeat(auto-fill,minmax(min(300px,100%),1fr));gap:1rem;display:grid}.course-card{background-color:var(--ui-surface);border:1px solid var(--ui-gray-200);border-radius:8px;flex-direction:column;gap:.5rem;padding:1.25rem;transition:border-color .15s,box-shadow .15s;display:flex}.course-card:hover{border-color:var(--ui-gray-300);box-shadow:var(--ui-shadow-sm)}.course-card--with-cover{border-radius:12px;padding:0;overflow:hidden}.course-card-body{flex-direction:column;flex:1;gap:.5rem;padding:.25rem 1.25rem 1.25rem;display:flex}.course-card-link{color:inherit;text-decoration:none}.course-card-title{color:var(--ui-gray-800);font-size:1rem;font-weight:600;line-height:1.4}.course-card-description{color:var(--ui-gray-500);-webkit-line-clamp:3;-webkit-box-orient:vertical;font-size:.875rem;line-height:1.5;display:-webkit-box;overflow:hidden}.course-card-dates{color:var(--ui-text-subtle);align-items:center;gap:.375rem;margin-top:.25rem;font-size:.8125rem;display:flex}.course-card-grade{color:var(--ui-gray-700);margin-top:.375rem;font-size:.8125rem;font-weight:600}.course-card-progress{flex-direction:column;gap:.375rem;margin-top:auto;padding-top:.5rem;display:flex}.course-card-progress-row{color:var(--ui-gray-600);justify-content:space-between;gap:.5rem;font-size:.8125rem;display:flex}.course-card-progress-percent{font-variant-numeric:tabular-nums;color:var(--ui-gray-500)}.course-card-progress-bar{background:var(--ui-gray-200);border-radius:9999px;height:6px;overflow:hidden}.course-card-progress-fill{border-radius:inherit;background:var(--tuto-success,var(--ui-success-solid));height:100%;transition:width .3s}.course-card-cta{color:var(--tuto-action,var(--ui-primary-600));white-space:nowrap;gap:.25rem;min-width:0;margin-top:.25rem;font-size:.875rem;font-weight:600;display:flex}.course-card-cta-item{text-overflow:ellipsis;min-width:0;overflow:hidden}.request-enrollment-btn{align-self:flex-start;margin-top:.5rem}.request-message{color:var(--ui-gray-500);background-color:var(--ui-gray-100);border-radius:4px;margin-top:.5rem;padding:.375rem .5rem;font-size:.8125rem}.empty-state{color:var(--ui-gray-500);text-align:center;background-color:var(--ui-surface);border:1px dashed var(--ui-gray-300);border-radius:8px;padding:2rem 1rem;font-size:.9375rem}.enrolled-section{flex-direction:column;display:flex}.dashboard-role-section{flex-direction:column;gap:2rem;display:flex}.dashboard-greeting{color:var(--ui-gray-800);margin:0;font-size:1.5rem;font-weight:600}.stat-row{flex-wrap:wrap;gap:1rem;display:flex}.stat-card{background:var(--ui-surface);border:1px solid var(--ui-gray-200);border-radius:8px;flex:1;min-width:140px;padding:1.25rem 1.5rem}.stat-card-value{color:var(--ui-primary-600);font-size:2rem;font-weight:700}.stat-card-label{color:var(--ui-gray-500);margin-top:.25rem;font-size:.875rem}.quick-actions-row{flex-wrap:wrap;gap:1rem;display:flex}.quick-action-card{background:var(--ui-primary-50);border:1px solid var(--ui-primary-200);color:var(--ui-primary-700);border-radius:8px;align-items:center;gap:.625rem;padding:.875rem 1.25rem;font-size:.9375rem;font-weight:500;text-decoration:none;transition:background-color .15s,border-color .15s;display:flex}.quick-action-card:hover{background:var(--ui-primary-100);border-color:var(--ui-primary-300)}.admin-console-card{color:#fff;background:linear-gradient(135deg,#1e3a5f 0%,#1d4ed8 100%);border-radius:10px;justify-content:space-between;align-items:center;padding:1.5rem 2rem;display:flex}.admin-console-card-title{font-size:1.125rem;font-weight:700}.admin-console-card-cta{color:#1d4ed8;background:#fff;border:none;border-radius:6px;padding:.5rem 1.125rem;font-size:.875rem;font-weight:600;text-decoration:none}.admin-console-card-cta:hover{background:#dbeafe}.org-admin-card-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1rem;display:grid}.org-admin-card{background:var(--ui-surface);border:1px solid var(--ui-gray-200);border-radius:8px;flex-direction:column;gap:.875rem;padding:1.25rem;display:flex}.org-admin-card-name{color:var(--ui-gray-800);font-size:1rem;font-weight:600}.org-admin-card-cta{color:var(--ui-primary-700);border:1px solid var(--ui-primary-200);background:var(--ui-primary-50);border-radius:6px;align-self:flex-start;padding:.375rem .875rem;font-size:.875rem;font-weight:500;text-decoration:none;transition:background-color .15s}.org-admin-card-cta:hover{background:var(--ui-primary-100)}.stat-card-skeleton{background:var(--ui-gray-100);border-radius:8px;flex:1;min-width:140px;height:88px;animation:1.4s ease-in-out infinite pulse}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.pathways-progress-section{flex-direction:column;gap:1rem;margin-top:1rem;margin-bottom:1rem;display:flex}.pathways-grid{grid-template-columns:repeat(auto-fill,minmax(min(360px,100%),1fr));gap:1.5rem;display:grid}.pathway-progress-card{background:var(--ui-surface);border:1px solid var(--ui-primary-100);box-shadow:var(--ui-shadow-sm);border-radius:12px;flex-direction:column;gap:1.25rem;padding:1.5rem;transition:transform .2s,box-shadow .2s;display:flex}.pathway-progress-card:hover{box-shadow:var(--ui-shadow-md);transform:translateY(-2px)}.pathway-header{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.pathway-info-main{flex-direction:column;gap:.5rem;display:flex}.pathway-tag{background:linear-gradient(135deg, var(--ui-primary-500) 0%, var(--ui-primary-700) 100%);color:var(--ui-on-solid);text-transform:uppercase;letter-spacing:.05em;border-radius:9999px;align-self:flex-start;padding:.25rem .625rem;font-size:.72rem;font-weight:700}.pathway-name{color:var(--ui-slate-800);margin:0;font-size:1.2rem;font-weight:700}.countdown-badge-container{flex-shrink:0}.countdown-badge{background:var(--ui-warning-bg);border:1px solid var(--ui-warning-border);box-shadow:var(--ui-shadow-sm);border-radius:8px;flex-direction:column;justify-content:center;align-items:center;padding:.5rem .75rem;display:flex}.countdown-days{color:var(--ui-warning-solid);font-size:1.5rem;font-weight:800;line-height:1}.countdown-label{color:var(--ui-warning-solid-hover);text-transform:uppercase;margin-top:.25rem;font-size:.6875rem;font-weight:600}.pathway-body{flex-direction:column;gap:1rem;display:flex}.progress-section{flex-direction:column;gap:.5rem;display:flex}.progress-label-row{color:var(--ui-slate-500);justify-content:space-between;font-size:.875rem;font-weight:600;display:flex}.progress-percentage{color:var(--ui-primary-600);font-weight:700}.pathway-progress-bar-container{background-color:var(--ui-slate-100);border-radius:9999px;width:100%;height:8px;overflow:hidden}.pathway-progress-bar-fill{background:linear-gradient(90deg, var(--ui-primary-500) 0%, var(--ui-accent-500) 100%);border-radius:9999px;height:100%}.courses-count-label{color:var(--ui-slate-400);font-size:.75rem}.pathway-quote-box{background-color:var(--ui-success-bg);border:1px solid var(--ui-success-border);border-radius:8px;align-items:flex-start;gap:.5rem;padding:.75rem;display:flex}.quote-icon{font-size:1.125rem;line-height:1.25}.quote-text{color:var(--ui-success-text);margin:0;font-size:.8125rem;font-weight:500;line-height:1.4}.child-card-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:1rem;display:grid}.child-card{background-color:var(--ui-surface);border:1px solid var(--ui-gray-200);text-align:center;border-radius:10px;flex-direction:column;align-items:center;gap:.75rem;padding:1.25rem 1rem;transition:border-color .15s,box-shadow .15s;display:flex}.child-card:hover{border-color:var(--ui-gray-300);box-shadow:var(--ui-shadow-sm)}.child-card__avatar{object-fit:cover;border-radius:50%;flex-shrink:0;width:64px;height:64px}.child-card__avatar-placeholder{background:linear-gradient(135deg, var(--ui-primary-500) 0%, var(--ui-accent-500) 100%);width:64px;height:64px;color:var(--ui-on-solid);-webkit-user-select:none;user-select:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:1.5rem;font-weight:700;display:flex}.child-card__name{color:var(--ui-gray-800);word-break:break-word;margin:0;font-size:.9375rem;font-weight:600;line-height:1.3}.child-card__cta{color:var(--ui-primary-700);background-color:var(--ui-primary-50);border:1px solid var(--ui-primary-200);border-radius:6px;justify-content:center;align-items:center;padding:.4rem 1rem;font-size:.8125rem;font-weight:500;text-decoration:none;transition:background-color .15s,border-color .15s;display:inline-flex}.child-card__cta:hover{background-color:var(--ui-primary-100);border-color:var(--ui-primary-300);text-decoration:none}.child-card__cta:focus-visible{outline:2px solid var(--ui-primary-500);outline-offset:2px}.child-card--skeleton{background:linear-gradient(90deg, var(--ui-gray-100) 25%, var(--ui-gray-200) 50%, var(--ui-gray-100) 75%);background-size:200% 100%;border:none;border-radius:10px;height:180px;animation:1.4s ease-in-out infinite skeleton-shimmer}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.family-section__error{background-color:var(--ui-danger-bg);border:1px solid var(--ui-danger-border);color:var(--ui-danger-hover);border-radius:8px;flex-direction:column;align-items:flex-start;gap:.75rem;padding:1rem 1.25rem;font-size:.9rem;display:flex}.family-section__error p{margin:0}.student-today{gap:1.25rem}.today-header{flex-direction:column;gap:.25rem;display:flex}.today-summary{color:var(--ui-gray-600);margin:0;font-size:.9375rem}.today-failed{border:1px solid var(--ui-warning-border-strong);background:var(--ui-warning-bg);color:var(--ui-warning-text);border-radius:8px;flex-wrap:wrap;align-items:center;gap:.75rem;padding:.625rem .875rem;font-size:.875rem;display:flex}.today-grid{grid-template-columns:minmax(0,1fr);align-items:start;gap:1.25rem;display:grid}@media (width>=960px){.today-grid{grid-template-columns:minmax(0,2fr) minmax(260px,1fr)}}.today-main,.today-rail{flex-direction:column;gap:1.25rem;min-width:0;display:flex}.today-card{background:var(--ui-surface);border:1px solid var(--ui-gray-200);border-radius:10px;flex-direction:column;gap:.75rem;padding:1.125rem 1.25rem;display:flex}.today-card--compact{padding:1rem}.today-skeleton{background:var(--ui-gray-100);min-height:160px;animation:1.4s ease-in-out infinite pulse}.today-heading{color:var(--ui-gray-800);margin:0;font-size:1rem;font-weight:600}.today-heading-row{justify-content:space-between;align-items:baseline;gap:.75rem;display:flex}.today-see-all{color:var(--tuto-action,var(--ui-primary-600));white-space:nowrap;font-size:.875rem;text-decoration:none}.today-see-all:hover{text-decoration:underline}.today-muted{color:var(--ui-gray-500);margin:0;font-size:.9375rem}.today-link-btn{cursor:pointer;color:var(--tuto-action,var(--ui-primary-600));background:0 0;border:none;align-self:flex-start;padding:0;font-size:.875rem;font-weight:500}.today-link-btn:hover{text-decoration:underline}.today-list{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.today-row{background:var(--ui-gray-50);border-left:3px solid #0000;border-radius:8px;align-items:center;gap:.75rem;padding:.625rem .75rem;display:flex}.today-row--urgent{border-left-color:var(--ui-danger);background:var(--ui-danger-bg)}.today-row--urgent .today-row-icon{color:var(--ui-danger-hover)}.today-row--soon{border-left-color:var(--ui-warning-solid);background:var(--ui-warning-bg)}.today-row--soon .today-row-icon{color:var(--ui-warning-solid-hover)}.today-row--normal .today-row-icon{color:var(--ui-gray-600)}.today-row--plain{background:0 0;padding:.25rem 0}.today-row-icon{flex-shrink:0;justify-content:center;width:1.5rem;font-size:1.25rem;line-height:1;display:inline-flex}.today-row-text{flex-direction:column;flex:1;gap:.125rem;min-width:0;display:flex}.today-row-title{color:var(--ui-gray-900);text-overflow:ellipsis;font-size:.9375rem;font-weight:500;text-decoration:none;overflow:hidden}a.today-row-title:hover{text-decoration:underline}.today-row-meta{color:var(--ui-gray-500);overflow-wrap:anywhere;font-size:.8125rem}.today-row-action{background:var(--tuto-action,var(--ui-primary-600));color:var(--ui-on-solid);border-radius:6px;flex-shrink:0;padding:.375rem .875rem;font-size:.875rem;font-weight:500;text-decoration:none}.today-row-action:hover{background:var(--ui-primary-700)}.today-row--normal .today-row-action{background:var(--ui-surface);color:var(--ui-primary-700);border:1px solid var(--ui-primary-200)}.today-row--normal .today-row-action:hover{background:var(--ui-primary-50)}.today-badge{border-radius:999px;flex-shrink:0;padding:.125rem .5rem;font-size:.75rem;font-weight:600}.today-badge--warn{background:var(--ui-warning-bg-strong);color:var(--ui-warning-text)}.today-progress-bar{background:var(--ui-gray-200);border-radius:999px;height:8px;display:block;overflow:hidden}.today-progress-fill{background:var(--tuto-success,var(--ui-success-solid));height:100%;display:block}.today-countdown{align-items:center;gap:.75rem;display:flex}.today-countdown-days{background:var(--ui-accent-50);min-width:3.25rem;color:var(--ui-accent-800);border-radius:8px;flex-direction:column;flex-shrink:0;align-items:center;padding:.25rem .5rem;display:flex}.today-countdown-days strong{font-size:1.25rem;line-height:1.2}.today-countdown-days span{text-transform:uppercase;letter-spacing:.04em;font-size:.6875rem}.today-update{text-align:left;cursor:pointer;width:100%;font:inherit;background:0 0;border:none;flex-direction:column;gap:.125rem;padding:.375rem 0;display:flex}.today-update:hover .today-row-title{text-decoration:underline}.today-update .today-row-meta{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.today-score{color:var(--ui-gray-900);flex-direction:column;flex-shrink:0;align-items:flex-end;display:flex}.today-score strong{font-size:1.0625rem}.today-score span{color:var(--ui-gray-500);font-size:.75rem}.today-course-cards{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem;display:grid}.today-course-card{background:var(--ui-surface);border:1px solid var(--ui-gray-200);min-width:0;box-shadow:var(--ui-shadow-sm);border-radius:12px;flex-direction:column;gap:1rem;padding:1.5rem;display:flex;overflow:hidden}.today-course-card>.course-cover{margin:-1.5rem -1.5rem .75rem}.today-course-card-header{justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.today-course-card-title{color:var(--ui-gray-900);margin:0;font-size:1.125rem;font-weight:700;line-height:1.35}.today-course-badge{text-transform:uppercase;letter-spacing:.04em;background:var(--ui-emerald-50);color:var(--ui-emerald-800);border:1px solid var(--ui-emerald-200);border-radius:999px;flex-shrink:0;padding:.2rem .65rem;font-size:.7rem;font-weight:700}.today-course-badge--new{background:var(--ui-primary-50);color:var(--ui-primary-700);border-color:var(--ui-primary-200)}.today-course-stats{background:var(--ui-gray-50);border:1px solid var(--ui-gray-100);border-radius:10px;grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.today-course-stat{text-align:center;flex-direction:column;align-items:center;gap:.2rem;padding:.75rem .25rem;display:flex}.today-course-stat+.today-course-stat{border-left:1px solid var(--ui-gray-100)}.today-course-stat-value{color:var(--ui-gray-900);font-size:1.375rem;font-weight:700}.today-course-stat-value--due{color:var(--ui-primary-600)}.today-course-stat-of{color:var(--ui-gray-500);font-size:.875rem;font-weight:500}.today-course-stat-label{text-transform:uppercase;letter-spacing:.04em;color:var(--ui-gray-500);font-size:.7rem}.today-course-progress{flex-direction:column;gap:.4rem;display:flex}.today-course-progress-row{color:var(--ui-gray-900);justify-content:space-between;font-size:.875rem;font-weight:600;display:flex}.today-course-next{color:var(--ui-gray-700);font-size:.875rem}.today-course-dates{flex-direction:column;gap:.35rem;margin:0;font-size:.875rem;display:flex}.today-course-dates div{grid-template-columns:7.5rem 1fr;display:grid}.today-course-dates dt{color:var(--ui-gray-500)}.today-course-dates dd{color:var(--ui-gray-900);margin:0}.today-course-cta{text-align:center;background:var(--tuto-action,var(--ui-primary-600));color:var(--ui-on-solid);border-radius:8px;margin-top:auto;padding:.65rem 1.25rem;font-weight:600;text-decoration:none;display:block}.today-course-cta:hover{background:var(--ui-primary-700);text-decoration:none}.today-row-action--quiet{color:var(--tuto-action,var(--ui-primary-600));background:0 0;padding:.375rem .5rem}.today-row-action--quiet:hover{background:var(--ui-primary-50)}.today-later{border-top:1px solid var(--ui-gray-100);flex-direction:column;gap:.5rem;padding-top:.75rem;display:flex}.today-subheading{color:var(--ui-gray-700);margin:0;font-size:.875rem;font-weight:600}.today-later .today-row-icon{color:var(--ui-gray-600)}.today-week-facts{color:var(--ui-gray-900);flex-direction:column;gap:.25rem;margin:0;padding:0;font-size:.9375rem;list-style:none;display:flex}.today-pace{color:var(--ui-accent-800);font-size:.8125rem;font-weight:500}.my-courses-page{flex-direction:column;gap:1.25rem;display:flex}.my-courses-back{color:var(--tuto-action,var(--ui-primary-600));font-size:.875rem;text-decoration:none}.my-courses-back:hover{text-decoration:underline}.today-packs{flex-direction:column;gap:.75rem;min-width:0;scroll-margin-top:80px;display:flex}.today-packs>.today-heading-row{padding:0 .25rem}.today-packs-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:1rem;display:grid}.today-packs-grid .revision-pack{box-shadow:none;border-radius:10px;padding:1.25rem}.today-packs-caught-up{border:1px solid var(--ui-emerald-200);background:var(--ui-emerald-50);color:var(--ui-emerald-800);border-radius:8px;margin:0;padding:.625rem .875rem;font-size:.875rem}.today-packs-paused[open]>.today-packs-grid{margin-top:.75rem}.today-packs-paused-summary{min-height:44px;color:var(--ui-gray-700);cursor:pointer;align-items:center;gap:.5rem;padding:0 .25rem;font-size:.9375rem;font-weight:600;list-style:none;display:flex}.today-packs-paused-summary::-webkit-details-marker{display:none}.today-packs-paused-summary:before{content:"";border-bottom:2px solid;border-right:2px solid;flex-shrink:0;width:.5rem;height:.5rem;transition:transform .15s;transform:rotate(-45deg)}.today-packs-paused[open]>.today-packs-paused-summary:before{transform:rotate(45deg)}.today-packs-paused-summary:focus-visible{outline:2px solid var(--ui-primary-500);outline-offset:2px;border-radius:6px}.today-invoices-summary{margin:0}.today-invoices-overdue{color:var(--ui-danger-hover);font-weight:600}.ui-person-avatar{object-fit:cover;background:var(--ui-gray-200);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.ui-person-avatar--initials{color:#fff;-webkit-user-select:none;user-select:none;font-weight:700}.course-cover{--course-color:#7c3aed;aspect-ratio:8/3;background:radial-gradient(circle at 85% 20%, color-mix(in srgb, var(--course-color) 35%, #fff 65%), transparent 55%),  linear-gradient(135deg, var(--course-color), color-mix(in srgb, var(--course-color) 75%, #000));flex-shrink:0;align-items:flex-end;margin-bottom:24px;padding:0 1.25rem;display:flex;position:relative}.course-cover--compact{aspect-ratio:auto;height:84px;margin-bottom:20px;padding:0 1rem}.course-cover-banner{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.course-cover-mark{background:var(--ui-surface);width:48px;height:48px;box-shadow:var(--ui-shadow-md);font-size:var(--tuto-text-lg,1rem);color:color-mix(in srgb, var(--course-color) 80%, var(--ui-text));border-radius:12px;justify-content:center;align-items:center;font-weight:700;display:inline-flex;position:relative;transform:translateY(50%)}.course-cover--compact .course-cover-mark{border-radius:10px;width:40px;height:40px;font-size:.875rem}.course-cover-logo{object-fit:cover;padding:0}.course-cover-people{margin-left:auto;display:inline-flex;position:relative;transform:translateY(50%)}.course-cover-people>*{box-shadow:0 0 0 2px var(--ui-surface), var(--ui-shadow-md);flex-shrink:0}.course-cover-people>*+*{margin-left:-10px}.course-cover-people-more{background:var(--ui-surface);color:var(--ui-gray-700);border-radius:50%;justify-content:center;align-items:center;font-weight:700;display:inline-flex}.course-instructors{white-space:nowrap;text-overflow:ellipsis;min-width:0;font-size:var(--tuto-text-sm,.8125rem);color:var(--ui-gray-600);margin:0;overflow:hidden}.srs-mastery-bar{flex-direction:column;gap:.375rem;width:100%;display:flex}.srs-mastery-bar__header{justify-content:space-between;align-items:baseline;gap:.5rem;display:flex}.srs-mastery-bar__label{color:var(--ui-gray-700);font-size:.875rem;font-weight:600;line-height:1.4}.srs-mastery-bar__percent{color:var(--ui-gray-700);white-space:nowrap;font-size:.875rem;font-weight:700;line-height:1.4}.srs-mastery-bar__label--sr-only,.srs-mastery-bar__percent--sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.srs-mastery-bar__track{appearance:none;clip:rect(0, 0, 0, 0);white-space:nowrap;opacity:0;border:0;width:1px;height:1px;margin:0;padding:0;position:absolute;overflow:hidden}.srs-mastery-bar__visual{background-color:var(--ui-gray-200);border-radius:5px;width:100%;height:10px;position:relative;overflow:hidden}.srs-mastery-bar__fill{border-radius:5px;height:100%;transition:width .4s}.srs-mastery-bar__fill--low{background-color:var(--ui-primary-500)}.srs-mastery-bar__fill--mid{background-color:var(--ui-warning-accent)}.srs-mastery-bar__fill--high{background-color:var(--ui-success-accent)}@media (prefers-reduced-motion:reduce){.srs-mastery-bar__fill{transition:none}}@media (forced-colors:active){.srs-mastery-bar__visual{border:1px solid buttontext}.srs-mastery-bar__fill{background-color:highlight}}.srs-op{--srs-op-text:var(--cp-paper-text,var(--ui-gray-800));--srs-op-muted:var(--cp-text-muted,var(--ui-gray-600));--srs-op-border:var(--cp-paper-border,var(--ui-gray-200));--srs-op-surface:var(--cp-paper-bg,var(--ui-surface));--srs-op-hover:var(--cp-bg-hover,var(--ui-gray-100));--srs-op-accent:var(--cp-accent,var(--tuto-action,var(--ui-primary-600)));--srs-op-accent-text:var(--ui-on-accent);--srs-op-link:var(--cp-accent-subtle,var(--ui-primary-700));--srs-op-mastered:var(--ui-success-solid-hover);--srs-op-learning:var(--ui-primary-500);--srs-op-due:var(--ui-warning-solid);--srs-op-not-started:var(--ui-slate-400);--srs-op-no-questions:var(--ui-gray-300);--srs-op-locked:var(--ui-gray-500);--srs-op-chip-mastered-bg:var(--ui-success-bg-strong);--srs-op-chip-mastered-fg:var(--ui-success-text);--srs-op-chip-learning-bg:var(--ui-primary-100);--srs-op-chip-learning-fg:var(--ui-primary-800);--srs-op-chip-due-bg:var(--ui-warning-bg-strong);--srs-op-chip-due-fg:var(--ui-warning-text);--srs-op-chip-not-started-bg:var(--ui-slate-100);--srs-op-chip-not-started-fg:var(--ui-slate-700);--srs-op-chip-no-questions-bg:var(--ui-gray-100);--srs-op-chip-no-questions-fg:var(--ui-gray-600);--srs-op-chip-locked-bg:var(--ui-gray-200);--srs-op-chip-locked-fg:var(--ui-gray-700);color:var(--srs-op-text);background:var(--srs-op-surface);border:1px solid var(--srs-op-border);font-size:var(--tuto-text-base,.875rem);border-radius:10px;margin-top:1rem;padding:1.25rem}.cp-root:not(.cp-root--light) .srs-op{--srs-op-mastered:var(--ui-green-400);--srs-op-learning:var(--ui-primary-400);--srs-op-due:var(--ui-amber-400);--srs-op-not-started:var(--ui-slate-500);--srs-op-no-questions:var(--ui-gray-600);--srs-op-locked:var(--ui-gray-400);--srs-op-link:var(--ui-primary-300);--srs-op-chip-mastered-bg:#4ade8029;--srs-op-chip-mastered-fg:var(--ui-green-300);--srs-op-chip-learning-bg:#60a5fa2e;--srs-op-chip-learning-fg:var(--ui-primary-200);--srs-op-chip-due-bg:#fbbf242e;--srs-op-chip-due-fg:var(--ui-warning-border);--srs-op-chip-not-started-bg:#94a3b82e;--srs-op-chip-not-started-fg:var(--ui-slate-200);--srs-op-chip-no-questions-bg:#9ca3af24;--srs-op-chip-no-questions-fg:var(--ui-gray-300);--srs-op-chip-locked-bg:#9ca3af33;--srs-op-chip-locked-fg:var(--ui-gray-200)}.srs-op__head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.5rem 1rem;display:flex}.srs-op__heading{font-size:var(--tuto-text-xl,1.125rem);margin:0;font-weight:600}.srs-op__summary{color:var(--srs-op-muted);margin:0}.srs-op__summary strong{color:var(--srs-op-text)}.srs-op__muted{color:var(--srs-op-muted);margin:.5rem 0 0}.srs-op__explain{font-size:var(--tuto-text-sm,.8125rem)}.srs-op__error{color:var(--ui-danger-hover)}.srs-op__bar{background:var(--srs-op-hover);border-radius:999px;gap:2px;height:10px;display:flex;overflow:hidden}.srs-op__bar--total{height:14px;margin-top:.75rem}.srs-op__bar--row{flex-shrink:0;width:160px}.srs-op__bar-seg{min-width:4px}.srs-op__bar-seg--mastered{background:var(--srs-op-mastered)}.srs-op__bar-seg--learning{background:var(--srs-op-learning)}.srs-op__bar-seg--due{background:var(--srs-op-due)}.srs-op__bar-seg--not_started{background:var(--srs-op-not-started)}.srs-op__bar-seg--no_questions{background:var(--srs-op-no-questions)}.srs-op__bar-seg--locked{background:repeating-linear-gradient(135deg, var(--srs-op-locked) 0 3px, transparent 3px 6px);box-shadow:inset 0 0 0 1px var(--srs-op-locked)}.srs-op__legend{font-size:var(--tuto-text-sm,.8125rem);flex-wrap:wrap;gap:.375rem 1rem;margin:.625rem 0 0;padding:0;list-style:none;display:flex}.srs-op__legend-item{align-items:center;gap:.375rem;display:inline-flex}.srs-op__swatch{border-radius:3px;width:12px;height:12px;display:inline-block}.srs-op__legend-count{color:var(--srs-op-muted);font-variant-numeric:tabular-nums}.srs-op__toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;margin:1rem 0 .5rem;display:flex}.srs-op__filters{flex-wrap:wrap;gap:.375rem;display:flex}.srs-op__filter{border:1px solid var(--srs-op-border);color:var(--srs-op-text);font:inherit;cursor:pointer;background:0 0;border-radius:999px;padding:.3rem .75rem}.srs-op__filter:hover{background:var(--srs-op-hover)}.srs-op__filter--on,.srs-op__filter--on:hover{background:var(--srs-op-accent);border-color:var(--srs-op-accent);color:var(--srs-op-accent-text)}.srs-op__filter-count{opacity:.8;font-variant-numeric:tabular-nums;margin-left:.125rem}.srs-op__link{font:inherit;color:var(--srs-op-link);cursor:pointer;background:0 0;border:none;padding:0;text-decoration:underline}.srs-op__btn{border:1px solid var(--srs-op-border);color:var(--srs-op-text);font:inherit;cursor:pointer;white-space:nowrap;background:0 0;border-radius:6px;padding:.3rem .75rem;font-weight:500}.srs-op__btn--primary{background:var(--srs-op-accent);border-color:var(--srs-op-accent);color:var(--srs-op-accent-text)}.srs-op__btn--primary:hover{filter:brightness(1.08)}.srs-op button:focus-visible{outline:2px solid var(--srs-op-accent);outline-offset:2px}.srs-op__syllabus+.srs-op__syllabus{margin-top:1rem}.srs-op__syllabus-head{flex-wrap:wrap;align-items:center;gap:.75rem;margin:.75rem 0 .25rem;display:flex}.srs-op__syllabus-title{font-size:var(--tuto-text-lg,1rem);flex:auto;margin:0;font-weight:600}.srs-op__sections{margin:0;padding:0;list-style:none}.srs-op__sections--l1>.srs-op__section{border-top:1px solid var(--srs-op-border)}.srs-op__sections--l1>.srs-op__section:last-child{border-bottom:1px solid var(--srs-op-border)}.srs-op__panel{padding:0 0 .5rem 1.25rem}.srs-op__section-row{width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:none;border-radius:6px;align-items:center;gap:.5rem .75rem;padding:.625rem .25rem;display:flex}.srs-op__section-row:hover{background:var(--srs-op-hover)}.srs-op__chevron{width:1rem;color:var(--srs-op-muted);flex-shrink:0}.srs-op__section-name{flex-direction:column;flex:auto;gap:.125rem;min-width:0;display:flex}.srs-op__section-title{font-weight:600}.srs-op__sections--l2 .srs-op__section-title,.srs-op__sections--l3 .srs-op__section-title{font-weight:500}.srs-op__code{color:var(--srs-op-muted);font-variant-numeric:tabular-nums;margin-right:.5rem}.srs-op__tags{font-size:var(--tuto-text-xs,.75rem);color:var(--srs-op-muted)}.srs-op__section-meta{flex-shrink:0;align-items:center;gap:.75rem;display:flex}.srs-op__fraction{font-size:var(--tuto-text-sm,.8125rem);color:var(--srs-op-muted);white-space:nowrap;text-align:right;font-variant-numeric:tabular-nums;min-width:7.5rem}.srs-op__due-count{font-size:var(--tuto-text-xs,.75rem);background:var(--srs-op-chip-due-bg);color:var(--srs-op-chip-due-fg);white-space:nowrap;border-radius:999px;padding:.0625rem .5rem;font-weight:600}.srs-op__outcomes{margin:.25rem 0 0;padding:0;list-style:none}.srs-op__outcome{border:1px solid var(--srs-op-border);border-left:3px solid var(--srs-op-not-started);border-radius:6px;align-items:flex-start;gap:.75rem;margin-top:.5rem;padding:.625rem .75rem;display:flex}.srs-op__outcome--mastered{border-left-color:var(--srs-op-mastered)}.srs-op__outcome--learning{border-left-color:var(--srs-op-learning)}.srs-op__outcome--due{border-left-color:var(--srs-op-due)}.srs-op__outcome--no_questions{border-left-color:var(--srs-op-no-questions)}.srs-op__outcome--locked{border-left-color:var(--srs-op-locked);border-left-style:dashed}.srs-op__outcome-main{flex:auto;min-width:0}.srs-op__outcome-text{margin:0;line-height:1.45}.srs-op__ref{font-variant-numeric:tabular-nums;margin-right:.5rem;font-weight:600}.srs-op__outcome-label{margin-right:.375rem;font-weight:600}.srs-op__outcome-label:after{content:":"}.srs-op__details,.srs-op__note{font-size:var(--tuto-text-sm,.8125rem);color:var(--srs-op-muted);margin:.25rem 0 0}.srs-op__note{font-style:italic}.srs-op__milestones{flex-wrap:wrap;gap:.375rem;margin:.375rem 0 0;display:flex}.srs-op__milestone{font-size:var(--tuto-text-xs,.75rem);border:1px solid var(--srs-op-border);color:var(--srs-op-muted);border-radius:999px;padding:.0625rem .5rem}.srs-op__milestone:before{content:"⚑ "}.srs-op__outcome-side{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:.5rem;display:flex}.srs-op__chip{font-size:var(--tuto-text-xs,.75rem);white-space:nowrap;border-radius:999px;align-items:center;gap:.375rem;padding:.125rem .5rem;font-weight:600;display:inline-flex}.srs-op__dot{background:currentColor;border-radius:50%;width:8px;height:8px}.srs-op__chip--mastered{background:var(--srs-op-chip-mastered-bg);color:var(--srs-op-chip-mastered-fg)}.srs-op__chip--learning{background:var(--srs-op-chip-learning-bg);color:var(--srs-op-chip-learning-fg)}.srs-op__chip--due{background:var(--srs-op-chip-due-bg);color:var(--srs-op-chip-due-fg)}.srs-op__chip--not_started{background:var(--srs-op-chip-not-started-bg);color:var(--srs-op-chip-not-started-fg)}.srs-op__chip--no_questions{background:var(--srs-op-chip-no-questions-bg);color:var(--srs-op-chip-no-questions-fg)}.srs-op__chip--locked{background:var(--srs-op-chip-locked-bg);color:var(--srs-op-chip-locked-fg)}@media (width<=640px){.srs-op{padding:.875rem .625rem}.srs-op__outcome{padding:.5rem .625rem}.srs-op__section-row{grid-template-columns:1rem minmax(0,1fr);align-items:start;gap:.375rem .5rem;display:grid}.srs-op__chevron{line-height:1.4}.srs-op__section-meta{flex-wrap:wrap;grid-column:2;gap:.375rem .5rem;min-width:0}.srs-op__bar--row{flex:auto;width:auto;min-width:3rem}.srs-op__fraction{min-width:0}.srs-op__panel{padding-left:.5rem}.srs-op__outcome{flex-direction:column;gap:.5rem}.srs-op__outcome-side{flex-direction:row;align-items:center}}.srs-paused-notice{background-color:var(--ui-warning-bg);border:1px solid var(--ui-warning-border);color:var(--ui-warning);border-radius:8px;align-items:flex-start;gap:.6rem;padding:.85rem 1rem;display:flex}.srs-paused-notice__icon{flex-shrink:0;font-size:1rem;line-height:1.4}.srs-paused-notice__text{margin:0;font-size:.9rem;line-height:1.4}.revision-pack{background-color:var(--ui-surface);border:1px solid var(--ui-gray-200);min-width:0;box-shadow:var(--ui-shadow-sm);border-radius:12px;flex-direction:column;gap:1rem;padding:1.5rem;transition:box-shadow .2s,border-color .2s;display:flex}.revision-pack:hover{box-shadow:var(--ui-shadow-md);border-color:var(--ui-gray-300)}.revision-pack__header{justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.revision-pack__title-group{flex-direction:column;flex:1;gap:.25rem;min-width:0;display:flex}.revision-pack__title{color:var(--ui-gray-900);margin:0;font-size:1.05rem;font-weight:700;line-height:1.3}.revision-pack__title a{color:inherit;-webkit-line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;text-decoration:none;display:-webkit-box;overflow:hidden}.revision-pack__title a:hover,.revision-pack__title a:focus-visible{text-decoration:underline}.revision-pack__courses{color:var(--ui-gray-600);overflow-wrap:anywhere;margin:.125rem 0 0;font-size:.8125rem}.revision-pack__badge{letter-spacing:.03em;text-transform:uppercase;white-space:nowrap;border-radius:20px;flex-shrink:0;padding:.2rem .6rem;font-size:.7rem;font-weight:600;display:inline-block}.revision-pack__badge--self{background-color:var(--ui-primary-50);color:var(--ui-primary-700);border:1px solid var(--ui-primary-200)}.revision-pack__badge--course{background-color:var(--ui-success-bg);color:var(--ui-success-solid-hover);border:1px solid var(--ui-success-border)}.revision-pack__badge--paused{background-color:var(--ui-warning-bg);color:var(--ui-warning-text);border:1px solid var(--ui-warning-border)}.revision-pack--paused .revision-pack__stats,.revision-pack--paused .revision-pack__outcome-bar{opacity:.6}.revision-pack__paused{flex:1}.revision-pack__stats{border:1px solid var(--ui-gray-100);background-color:var(--ui-gray-50);border-radius:8px;display:flex;overflow:hidden}.revision-pack__stat{border-right:1px solid var(--ui-gray-100);text-align:center;flex-direction:column;flex:1;align-items:center;min-width:0;padding:.75rem .5rem;display:flex}.revision-pack__stat:last-child{border-right:none}.revision-pack__stat-value{color:var(--ui-gray-900);font-size:1.4rem;font-weight:700;line-height:1.1}.revision-pack__stat-value--due{color:var(--ui-primary-600)}.revision-pack__stat-value--streak{color:var(--ui-warning-solid)}.revision-pack__stat-denominator{color:var(--ui-gray-500);font-size:.9rem;font-weight:500}.revision-pack__stat-streak-icon{margin-left:.2rem;font-size:1rem}.revision-pack__stat-label{color:var(--ui-gray-500);text-transform:uppercase;letter-spacing:.04em;margin-top:.2rem;font-size:.72rem;font-weight:500}.revision-pack__sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.revision-pack__outcome-bar{--srs-op-hover:var(--ui-gray-100);--srs-op-mastered:var(--ui-success-solid-hover);--srs-op-learning:var(--ui-primary-500);--srs-op-due:var(--ui-warning-solid);--srs-op-not-started:var(--ui-slate-400);--srs-op-no-questions:var(--ui-gray-300);--srs-op-locked:var(--ui-gray-500);height:10px}.revision-pack__outcome-summary{color:var(--ui-gray-600);margin:.4rem 0 0;font-size:.85rem}.revision-pack__outcome-summary a{color:inherit;text-decoration:none}.revision-pack__outcome-summary a:hover,.revision-pack__outcome-summary a:focus-visible{text-decoration:underline}.revision-pack__dates{flex-direction:column;gap:.3rem;font-size:.85rem;display:flex}.revision-pack__est-completion,.revision-pack__date-row{align-items:center;gap:.4rem;display:flex}.revision-pack__est-completion--warning{color:var(--ui-warning-solid-hover)}.revision-pack__est-completion--warning .revision-pack__dates-value{font-weight:600}.revision-pack__warning-icon{font-size:.9rem;line-height:1}.revision-pack__dates-label{color:var(--ui-gray-500);min-width:95px;font-weight:500}.revision-pack__dates-value{color:var(--ui-gray-700)}.revision-pack__actions{border-top:1px solid var(--ui-gray-100);flex-direction:column;gap:.6rem;margin-top:auto;padding-top:.75rem;display:flex}.revision-pack__review-btn{width:100%;color:var(--ui-on-solid);background-color:var(--ui-primary-600);cursor:pointer;border:none;border-radius:8px;justify-content:center;align-items:center;gap:.5rem;padding:.65rem 1.25rem;font-size:.925rem;font-weight:600;transition:background-color .15s,box-shadow .15s;display:flex}.revision-pack__review-btn:hover{background-color:var(--ui-primary-700);box-shadow:0 2px 8px color-mix(in srgb, var(--ui-primary-600) 35%, transparent)}.revision-pack__review-btn:focus-visible{outline:2px solid var(--ui-primary-600);outline-offset:2px}.revision-pack__review-btn:active{background-color:var(--ui-primary-800);box-shadow:none}.revision-pack__review-btn-badge{min-width:1.5rem;height:1.5rem;color:var(--ui-primary-600);background-color:var(--ui-surface);border-radius:12px;justify-content:center;align-items:center;padding:0 .35rem;font-size:.75rem;font-weight:700;display:inline-flex}.revision-pack__next-review{color:var(--ui-gray-700);flex-wrap:wrap;align-items:center;gap:.4rem;margin:0;padding:.4rem 0;font-size:.875rem;display:flex}.revision-pack__next-review-label{color:var(--ui-gray-500);font-weight:500}.revision-pack__next-review-date{color:var(--ui-gray-900);font-weight:600}.revision-pack__self-report-link{color:var(--ui-gray-600);text-align:center;border-bottom:1px dashed var(--ui-gray-400);align-self:center;padding:.25rem 0;font-size:.85rem;font-weight:500;text-decoration:none;transition:color .15s,border-bottom-color .15s;display:inline-block}.revision-pack__self-report-link:hover{color:var(--ui-primary-600);border-bottom-color:var(--ui-primary-600)}.revision-pack__self-report-link:focus-visible{outline:2px solid var(--ui-primary-600);outline-offset:2px;border-radius:2px}@media (width<=640px){.revision-pack{padding:1.25rem}.revision-pack__stat-value{font-size:1.2rem}}.my-orgs-section{flex-direction:column;display:flex}.my-orgs-error{color:var(--ui-danger);background-color:var(--ui-danger-bg);border:1px solid var(--ui-danger-border);border-radius:8px;padding:.75rem 1rem;font-size:.875rem}.org-card-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1rem;display:grid}.org-card{background-color:var(--ui-surface);border:1px solid var(--ui-gray-200);color:inherit;border-radius:8px;flex-direction:column;gap:.75rem;padding:1.25rem;text-decoration:none;transition:border-color .15s,box-shadow .15s;display:flex}.org-card:hover{border-color:var(--ui-gray-300);box-shadow:var(--ui-shadow-sm);text-decoration:none}.org-card-name{color:var(--ui-gray-800);font-size:1rem;font-weight:600;line-height:1.4}.role-badge{border-radius:4px;align-self:flex-start;align-items:center;padding:.25rem .5rem;font-size:.75rem;font-weight:500;display:inline-flex}.role-badge--admin{background-color:var(--ui-violet-100);color:var(--ui-violet-700)}.role-badge--instructor{background-color:var(--ui-primary-100);color:var(--ui-primary-700)}.role-badge--student{background-color:var(--ui-emerald-100);color:var(--ui-emerald-800)}.home-content{flex-direction:column;gap:2rem;display:flex}.home-content-loading{justify-content:center;padding:2rem;display:flex}.home-banners{flex-direction:column;gap:.75rem;display:flex}.home-banner{background:linear-gradient(135deg, var(--ui-primary-50) 0%, var(--ui-sky-50) 100%);border:1px solid var(--ui-primary-200);border-radius:8px;flex-direction:column;gap:.5rem;padding:1.25rem;display:flex}.home-banner-title{color:var(--ui-primary-800);margin:0;font-size:1rem;font-weight:600}.home-banner-body{color:var(--ui-gray-700);margin:0;font-size:.875rem;line-height:1.5}.home-banner-cta{color:var(--ui-primary-600);border:1px solid var(--ui-primary-300);border-radius:6px;align-self:flex-start;padding:.375rem .75rem;font-size:.8125rem;font-weight:500;text-decoration:none;transition:background-color .15s,border-color .15s}.home-banner-cta:hover{background-color:var(--ui-primary-100);border-color:var(--ui-primary-400)}.home-section{flex-direction:column;display:flex}.home-section-description{color:var(--ui-gray-500);margin-bottom:.75rem;font-size:.875rem}.home-section-empty{color:var(--ui-text-subtle);font-size:.875rem;font-style:italic}:root,.theme-light-area{--le-chrome-bg:#fafafa;--le-surface:#fff;--le-field-bg:#fff;--le-well:#f9f9fb;--le-table-tools-bg:#f3f6fb;--le-border:#e0e0e0;--le-border-strong:#d0d0d0;--le-border-hover:#a0a0a0;--le-preview-border:#ccc;--le-divider:#f0f0f0;--le-hover:#e8e8e8;--le-pressed:#d0d0d0;--le-hover-subtle:#f0f0f0;--le-hover-faint:#f8f8f8;--le-secondary-bg:#f5f5f5;--le-text-strong:#1a1a1a;--le-text:#333;--le-text-label:#444;--le-text-secondary:#555;--le-text-muted:#666;--le-text-subtle:#888;--le-text-faint:#999;--le-text-disabled:#9aa0a6;--le-swatch-default:#000;--le-accent:#1a73e8;--le-accent-hover:#1557b0;--le-on-accent:#fff;--le-accent-bg:#e8f0fe;--le-pressed-bg:#d4e4ff;--le-accent-border-hover:#a0c4ff;--le-accent-faint:#f8fbff;--le-menu-hover:#f0f4ff;--le-focus-tint:#1a73e81a;--le-accent-ring:#1a73e84d;--le-danger:#d32f2f;--le-danger-hover:#b71c1c;--le-danger-tint:#d32f2f1a;--le-ok:#047857;--le-shadow:#0000001f;--le-shadow-soft:#00000026;--le-shadow-faint:#0000001a;--le-shadow-strong:#0000004d;--le-backdrop:#00000080;--le-backdrop-strong:#0009;--le-save-bg:#ffffffe6}:root{--le-page-desk:#e5e7eb}@media screen{:root[data-theme=dark]{--le-chrome-bg:var(--ui-surface-sunken);--le-surface:var(--ui-surface-raised);--le-field-bg:var(--ui-surface);--le-well:var(--ui-surface-sunken);--le-table-tools-bg:var(--ui-primary-50);--le-border:var(--ui-border-subtle);--le-border-strong:var(--ui-border);--le-border-hover:var(--ui-gray-400);--le-preview-border:var(--ui-gray-400);--le-divider:var(--ui-border-subtle);--le-hover:var(--ui-gray-200);--le-pressed:var(--ui-gray-300);--le-hover-subtle:var(--ui-gray-100);--le-hover-faint:var(--ui-surface-hover);--le-secondary-bg:var(--ui-gray-100);--le-text-strong:var(--ui-text);--le-text:var(--ui-gray-800);--le-text-label:var(--ui-gray-700);--le-text-secondary:var(--ui-gray-700);--le-text-muted:var(--ui-text-muted);--le-text-subtle:var(--ui-text-subtle);--le-text-faint:var(--ui-text-subtle);--le-text-disabled:var(--ui-gray-400);--le-swatch-default:var(--ui-text);--le-accent:var(--ui-accent-interactive);--le-accent-hover:var(--ui-accent-interactive-hover);--le-on-accent:var(--ui-on-accent);--le-accent-bg:var(--ui-primary-50);--le-pressed-bg:var(--ui-primary-100);--le-accent-border-hover:var(--ui-primary-300);--le-accent-faint:var(--ui-primary-50);--le-menu-hover:var(--ui-primary-50);--le-focus-tint:#8ab4f84d;--le-accent-ring:#8ab4f873;--le-danger:var(--ui-danger);--le-danger-hover:var(--ui-danger-hover);--le-danger-tint:#f871714d;--le-ok:var(--ui-success-text);--le-shadow:#00000080;--le-shadow-soft:#00000080;--le-shadow-faint:#0006;--le-shadow-strong:#0009;--le-backdrop:var(--ui-overlay);--le-backdrop-strong:#000000b3;--le-save-bg:#1a2537eb;--le-page-desk:var(--ui-bg)}}.le-container{border:none;flex-direction:column;flex:1;width:100%;max-width:120%;margin:0;font-family:inherit;display:flex;position:relative}.le-toolbar{border-bottom:1px solid var(--le-border);background:var(--le-chrome-bg);flex-wrap:wrap;align-items:center;gap:4px;padding:8px 12px;display:flex}.le-toolbar-group{border-right:1px solid var(--le-border);align-items:center;gap:2px;padding:0 4px;display:flex}.le-toolbar-group:last-child{border-right:none}.le-btn{cursor:pointer;min-width:32px;height:32px;color:var(--le-text);background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:4px 8px;font-size:14px;transition:background-color .15s;display:inline-flex}.le-btn:hover{background:var(--le-hover)}.le-btn:active{background:var(--le-pressed)}.le-btn[aria-pressed=true]{background:var(--le-pressed-bg);color:var(--le-accent)}.le-toolbar-btn{cursor:pointer;min-width:32px;height:32px;color:var(--le-text);background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:4px 8px;font-size:14px;transition:background-color .15s;display:inline-flex}.le-toolbar-btn:hover:not(:disabled){background:var(--le-hover)}.le-toolbar-btn:active:not(:disabled){background:var(--le-pressed)}.le-toolbar-btn[aria-pressed=true],.le-toolbar-btn--active{background:var(--le-pressed-bg);color:var(--le-accent)}.le-toolbar-btn:disabled{opacity:.4;cursor:not-allowed}.le-toolbar-divider{background:var(--le-border);flex-shrink:0;width:1px;height:24px;margin:0 4px}.le-toolbar-more{letter-spacing:2px;font-size:18px;font-weight:700}.le-toolbar-more-menu{z-index:200;background:var(--le-surface);border:1px solid var(--le-border);box-shadow:0 4px 16px var(--le-shadow);border-radius:8px;flex-wrap:wrap;gap:4px;min-width:240px;padding:8px;display:flex;position:absolute;top:100%;right:0}.le-toolbar-more-divider{width:100%;height:1px;margin:4px 0}.le-toolbar-popover{z-index:100;background:var(--le-surface);border:1px solid var(--le-border);box-shadow:0 4px 16px var(--le-shadow);border-radius:8px;position:absolute;top:100%;left:0}.le-text-color-swatch{border-bottom:3px solid var(--le-swatch-default)}.le-highlight-swatch{color:#333;background:#ff0;border-radius:2px;padding:0 3px}.le-editor-body{flex-direction:row;flex:1;width:100%;min-height:0;display:flex;overflow:hidden}.le-editor-inner{flex:1;width:100%;min-width:0;position:relative;overflow:auto}.le-content-editable{width:100%;min-height:400px;font-family:var(--tuto-font-sans);color:#1f2937;overflow-wrap:break-word;word-wrap:break-word;word-break:break-word;outline:none;padding:16px 20px;font-size:16px;line-height:1.6}.le-content-editable:focus{outline:none}.le-placeholder{color:#999;pointer-events:none;-webkit-user-select:none;user-select:none;text-overflow:ellipsis;white-space:nowrap;font-size:16px;line-height:1.6;position:absolute;top:16px;left:20px;right:20px;overflow:hidden}.le-save-indicator{color:var(--le-text-muted);background:var(--le-save-bg);border:1px solid var(--le-border);pointer-events:none;z-index:10;border-radius:4px;padding:4px 10px;font-size:12px;position:absolute;bottom:8px;right:12px}.le-equation-inline{vertical-align:baseline;display:inline}.le-equation-block{text-align:center;margin:16px 0;display:block;overflow-x:auto}.le-equation-loading{color:color-mix(in srgb, currentColor 55%, transparent);display:inline}.le-chart-container{color:#1f2937;background:#fff;border:1px solid #e8e8e8;border-radius:6px;width:100%;margin:16px 0;padding:12px;display:block}.le-chart-loading{color:#999;justify-content:center;align-items:center;min-height:200px;font-size:14px;display:flex}.le-paragraph{margin:0 0 8px;line-height:1.6}.le-heading-h1{margin:24px 0 12px;font-size:2em;font-weight:700}.le-heading-h2{margin:20px 0 10px;font-size:1.5em;font-weight:700}.le-heading-h3{margin:16px 0 8px;font-size:1.25em;font-weight:600}.le-heading-h4{margin:12px 0 6px;font-size:1.1em;font-weight:600}.le-text-bold{font-weight:700}.le-text-italic{font-style:italic}.le-text-underline{text-decoration:underline}.le-text-strikethrough{text-decoration:line-through}.le-text-code{background:#f4f4f4;border-radius:3px;padding:2px 6px;font-family:Fira Code,Fira Mono,Menlo,Monaco,Consolas,monospace;font-size:.9em}.le-list-ul{margin:8px 0;padding-left:24px;list-style-type:disc}.le-list-ol{margin:8px 0;padding-left:24px;list-style-type:decimal}.le-listitem{margin:4px 0}.le-nested-listitem{list-style-type:none}.le-link{color:#1a73e8;cursor:pointer;text-decoration:underline}.le-code-block{color:#abb2bf;counter-reset:line-number;tab-size:2;white-space:pre-wrap;word-break:normal;overflow-wrap:break-word;background:#282c34;border-radius:6px;margin:12px 0;padding:16px 16px 16px 52px;font-family:Fira Code,Fira Mono,Menlo,Monaco,Consolas,monospace;font-size:14px;line-height:1.5;position:relative;overflow-x:auto}.le-code-block .le-code-block-gutter{pointer-events:none;-webkit-user-select:none;user-select:none;background:#21252b;border-right:1px solid #3e4451;border-radius:6px 0 0 6px;flex-direction:column;width:36px;padding-top:0;display:flex;position:absolute;top:16px;bottom:16px;left:0;overflow:hidden}.le-code-block .le-code-block-gutter-line{text-align:center;color:#636d83;height:21px;font-family:Fira Code,Fira Mono,Menlo,Monaco,Consolas,monospace;font-size:12px;line-height:1.5;display:block}.le-code-block-language{z-index:2;color:#abb2bf;cursor:pointer;appearance:auto;background:#3e4451;border:1px solid #5c6370;border-radius:4px;outline:none;padding:2px 6px;font-size:11px;position:absolute;top:4px;right:4px}.le-code-block-language:hover{background:#4b5263;border-color:#636d83}.le-code-block-language:focus{border-color:#61afef;box-shadow:0 0 0 1px #61afef}.le-code-keyword{color:#c678dd}.le-code-string{color:#98c379}.le-code-comment{color:#5c6370;font-style:italic}.le-code-function{color:#61afef}.le-code-number{color:#d19a66}.le-code-operator{color:#56b6c2}.le-code-punctuation{color:#abb2bf}.le-table{border-collapse:collapse;width:100%;margin:12px 0}.le-table-cell{border:1px solid #ddd;border-color:color-mix(in srgb, currentColor 22%, transparent);text-align:left;padding:8px 12px}.le-table-cell-header{border:1px solid #ddd;border-color:color-mix(in srgb, currentColor 22%, transparent);text-align:left;background:#f8f8f8;background:color-mix(in srgb, currentColor 6%, transparent);padding:8px 12px;font-weight:700}.le-blockquote{color:color-mix(in srgb, currentColor 82%, transparent);background:#f9f9fb;background:color-mix(in srgb, currentColor 4%, transparent);border-left:4px solid #1a73e8;margin:12px 0;padding:8px 16px}@media (width<=767px){.le-toolbar{flex-wrap:wrap;gap:6px;padding:6px 8px}.le-toolbar-group{border-right:none;padding:0 2px}.le-toolbar-divider{display:none}.le-content-editable{padding:12px 14px;font-size:15px}.le-placeholder{font-size:15px;left:14px;right:14px}}@media (width<=599px){.le-equation-block{-webkit-overflow-scrolling:touch;max-width:100%;padding:8px 0;overflow-x:auto}.le-chart-container{width:100%;min-height:200px;padding:8px}.le-content-editable{min-height:150px;padding:10px 12px}.le-placeholder{left:12px;right:12px}}.le-modal-dialog{width:90vw;max-width:500px;max-height:85vh;box-shadow:0 20px 60px var(--le-shadow-strong);border:none;border-radius:12px;margin:auto;padding:0;animation:.15s ease-out le-modal-in;overflow:visible}.le-modal-dialog::backdrop{background:var(--le-backdrop)}.le-modal-dialog[open]{display:block}.le-modal{background:var(--le-surface);border-radius:12px;width:100%;max-height:85vh;overflow-y:auto}@keyframes le-modal-in{0%{opacity:0;transform:scale(.95)translateY(-10px)}to{opacity:1;transform:scale(1)translateY(0)}}.le-modal-header{border-bottom:1px solid var(--le-border);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.le-modal-title{color:var(--le-text-strong);margin:0;font-size:16px;font-weight:600}.le-modal-close{color:var(--le-text-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:0 4px;font-size:24px;line-height:1}.le-modal-close:hover{color:var(--le-text);background:var(--le-hover-subtle)}.le-modal-body{padding:20px}.le-modal-field{margin-bottom:16px}.le-modal-label{color:var(--le-text-label);margin-bottom:6px;font-size:13px;font-weight:500;display:block}.le-modal-input,.le-modal-textarea,.le-modal-select{border:1px solid var(--le-border-strong);width:100%;color:var(--le-text-strong);background:var(--le-field-bg);box-sizing:border-box;border-radius:6px;padding:10px 12px;font-family:inherit;font-size:14px;transition:border-color .15s}.le-modal-input:focus,.le-modal-textarea:focus,.le-modal-select:focus{border-color:var(--le-accent);box-shadow:0 0 0 3px var(--le-focus-tint);outline:none}.le-modal-textarea{resize:vertical;font-family:Fira Code,Fira Mono,Menlo,Monaco,Consolas,monospace;font-size:13px;line-height:1.5}.le-modal-file-input{width:100%;padding:8px 0}.le-modal-image-preview{border:1px solid var(--le-border);border-radius:6px;max-width:100%;max-height:150px;margin-top:8px}.le-modal-tabs{border-bottom:1px solid var(--le-border);gap:0;margin-bottom:16px;display:flex}.le-modal-tab{color:var(--le-text-muted);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:8px 16px;font-size:14px;transition:color .15s,border-color .15s}.le-modal-tab:hover{color:var(--le-text)}.le-modal-tab--active{color:var(--le-accent);border-bottom-color:var(--le-accent);font-weight:500}.le-modal-tab--disabled,.le-modal-tab--disabled:hover{color:var(--le-text-disabled);cursor:not-allowed}.le-modal-actions{border-top:1px solid var(--le-divider);justify-content:flex-end;gap:8px;margin-top:20px;padding-top:16px;display:flex}.le-modal-btn{cursor:pointer;border:1px solid #0000;border-radius:6px;padding:8px 16px;font-size:14px;font-weight:500;transition:background .15s,opacity .15s}.le-modal-btn:disabled{opacity:.5;cursor:not-allowed}.le-modal-btn--primary{background:var(--le-accent);color:var(--le-on-accent);border-color:var(--le-accent)}.le-modal-btn--primary:hover:not(:disabled){background:var(--le-accent-hover)}.le-modal-btn--secondary{background:var(--le-secondary-bg);color:var(--le-text);border-color:var(--le-border-strong)}.le-modal-btn--secondary:hover{background:var(--le-hover)}.le-modal-error{color:var(--le-danger);background:var(--ui-danger-bg);border-radius:4px;margin:8px 0 0;padding:8px 12px;font-size:13px}.le-modal-hint{color:var(--le-text-muted);margin:4px 0 0;font-size:12px}.le-chart-figure{cursor:pointer;border-radius:6px;outline:none;transition:box-shadow .15s;position:relative}.le-chart-figure:focus,.le-chart-selected{box-shadow:0 0 0 2px #1a73e8}.le-chart-actions{z-index:10;gap:4px;display:flex;position:absolute;top:8px;right:8px}.le-chart-action-btn{cursor:pointer;background:#fffffff2;border:none;border-radius:6px;justify-content:center;align-items:center;width:32px;height:32px;font-size:16px;transition:background .15s,transform .1s;display:flex;box-shadow:0 2px 8px #00000026}.le-chart-action-btn:hover{background:#fff;transform:scale(1.1)}.le-chart-action-btn--danger:hover{background:#fef2f2}.le-chart-title{text-align:center;color:#333;margin:0 0 8px;font-size:14px;font-weight:600}.le-equation-editor-block,.le-equation-editor-inline{display:inline-block}.le-equation-editor-block{width:100%;margin:8px 0;display:block}.le-equation-input{resize:vertical;border:2px solid #1a73e8;border-radius:6px;outline:none;width:100%;padding:8px 12px;font-family:Fira Code,Fira Mono,Menlo,Monaco,Consolas,monospace;font-size:14px}.le-readonly .le-chart-figure{cursor:default}.le-readonly .le-content-editable{min-height:unset;padding:0}.le-readonly .le-paragraph:last-child:has(>br:only-child){margin-bottom:0}.le-readonly .le-paragraph:has(>br:only-child){margin-bottom:2px}.le-readonly--inline .le-page{box-shadow:none;aspect-ratio:unset;width:100%;height:auto;min-width:unset;background:0 0;margin:0;padding:0;overflow:visible}.le-page-viewer-inline{display:contents}.le-readonly--paginated .le-content-editable{min-height:unset;background:#e8e8e8;padding:24px 0}.le-readonly--inline .le-page-number,.le-readonly--inline .le-page-break-container{display:none}.le-excalidraw-container{justify-content:center;width:100%;max-width:100%;margin:16px 0;display:flex}.le-excalidraw-preview{cursor:pointer;border-radius:6px;transition:box-shadow .15s;position:relative}.le-excalidraw-preview:hover{box-shadow:0 0 0 2px #1a73e8}.le-excalidraw-preview:focus{outline:none;box-shadow:0 0 0 2px #1a73e8}.le-excalidraw-edit-overlay{color:#333;opacity:0;pointer-events:none;background:#0000000d;border-radius:6px;justify-content:center;align-items:center;font-size:14px;font-weight:500;transition:opacity .15s;display:flex;position:absolute;inset:0}.le-excalidraw-preview:hover .le-excalidraw-edit-overlay{opacity:1}.le-excalidraw-svg-container{max-width:100%;overflow:hidden}.le-excalidraw-svg-container svg{width:auto;max-width:100%;height:auto;max-height:300px;display:block}.le-excalidraw-dialog{width:95vw;max-width:none;height:95vh;max-height:none;box-shadow:0 20px 60px var(--le-shadow-strong);border:none;border-radius:8px;margin:auto;padding:0;overflow:hidden}.le-excalidraw-dialog[open]{flex-direction:column;display:flex}.le-excalidraw-dialog::backdrop{background:var(--le-backdrop-strong)}.le-excalidraw-actions-bar{border-bottom:1px solid var(--le-border);background:var(--le-chrome-bg);flex-shrink:0;justify-content:flex-end;align-items:center;gap:8px;padding:8px 16px;display:flex}.le-excalidraw-canvas-wrapper{height:100%;min-height:0;font-size:initial;flex:1;line-height:normal;position:relative}.le-excalidraw-canvas-wrapper .excalidraw-wrapper,.le-excalidraw-canvas-wrapper .excalidraw,.le-excalidraw-canvas-wrapper>div{width:100%;height:100%}.le-excalidraw-canvas-wrapper button{min-width:unset;height:unset;padding:unset;font-size:unset;color:unset;border-radius:unset;background:unset;transition:unset}.le-excalidraw-canvas-wrapper input,.le-excalidraw-canvas-wrapper select,.le-excalidraw-canvas-wrapper textarea{width:unset;padding:unset;border:unset;border-radius:unset;font-size:unset;color:unset;background:unset;box-sizing:unset;font-family:unset}.le-excalidraw-loading{width:100%;height:100%;min-height:200px;color:var(--le-text-faint);justify-content:center;align-items:center;font-size:14px;display:flex}.le-excalidraw-error{width:100%;height:100%;min-height:200px;color:var(--le-danger);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:24px;font-size:14px;display:flex}.le-excalidraw-error-detail{color:var(--le-text-muted);font-size:12px}.le-excalidraw-error-actions{gap:8px;display:flex}.le-image-container{justify-content:center;width:100%;max-width:100%;margin:16px 0;display:flex}.le-image-wrapper{border-radius:6px;max-width:100%;transition:box-shadow .15s;display:inline-block;position:relative}.le-image-wrapper--selected{box-shadow:0 0 0 2px #1a73e8}.le-image-loading{color:#999;justify-content:center;align-items:center;min-height:100px;font-size:14px;display:flex}.le-image-resize-handle{z-index:10;cursor:nwse-resize;background:#1a73e8;border:2px solid #fff;border-radius:50%;width:10px;height:10px;position:absolute}.le-image-resize-handle--top-left{cursor:nwse-resize;top:-5px;left:-5px}.le-image-resize-handle--top-right{cursor:nesw-resize;top:-5px;right:-5px}.le-image-resize-handle--bottom-left{cursor:nesw-resize;bottom:-5px;left:-5px}.le-image-resize-handle--bottom-right{cursor:nwse-resize;bottom:-5px;right:-5px}.le-image-resize-overlay{color:#fff;pointer-events:none;white-space:nowrap;background:#000000b3;border-radius:4px;padding:2px 8px;font-size:12px;position:absolute;bottom:8px;left:50%;transform:translate(-50%)}.le-equation-preview{background:var(--le-well);border:1px solid var(--le-border);text-align:center;border-radius:6px;min-height:32px;padding:12px 16px;font-size:18px;overflow-x:auto}.le-equation-preview--empty{color:var(--le-text-faint);font-size:13px;font-style:italic}.le-sticky-note-container{width:0;height:0;display:inline-block;position:relative;overflow:visible}.le-sticky-note{z-index:100;border-radius:4px;flex-direction:column;gap:4px;width:200px;min-height:120px;padding:8px;font-size:14px;display:flex;box-shadow:2px 2px 8px #00000026}.le-sticky-note--yellow{background-color:#fdfd96}.le-sticky-note--pink{background-color:#ffb3ba}.le-sticky-note--green{background-color:#baffc9}.le-sticky-note--blue{background-color:#bae1ff}.le-sticky-note__drag-handle{cursor:grab;-webkit-user-select:none;user-select:none;text-align:center;color:#0006;border-bottom:1px solid #0000001a;padding:2px 0;font-size:16px}.le-sticky-note__drag-handle:active{cursor:grabbing}.le-sticky-note__text{resize:none;color:#1a1a1a;background:0 0;border:none;outline:none;flex:1;min-height:80px;padding:4px;font-family:inherit;font-size:14px;line-height:1.4}.le-sticky-note__text::placeholder{color:#00000059}.le-format-selector{flex-direction:column;align-items:center;gap:20px;padding:24px;display:flex}.le-format-selector-title{color:var(--le-text-strong);margin:0;font-size:18px;font-weight:600}.le-format-selector-options{flex-wrap:wrap;justify-content:center;gap:16px;display:flex}.le-format-selector-option{border:2px solid var(--le-border);background:var(--le-surface);cursor:pointer;border-radius:8px;flex-direction:column;align-items:center;gap:8px;min-width:120px;padding:16px;transition:border-color .15s,box-shadow .15s,background .15s;display:flex}.le-format-selector-option:hover{border-color:var(--le-accent-border-hover);background:var(--le-accent-faint)}.le-format-selector-option:focus-visible{outline:2px solid var(--le-accent);outline-offset:2px}.le-format-selector-option--selected{border-color:var(--le-accent);background:var(--le-accent-bg);box-shadow:0 0 0 1px var(--le-accent)}.le-format-selector-preview{border:1px solid var(--le-preview-border);background:var(--le-chrome-bg);box-shadow:0 1px 3px var(--le-shadow-faint);border-radius:3px}.le-format-selector-label{color:var(--le-text);font-size:14px;font-weight:500}.le-format-selector-dimensions{color:var(--le-text-muted);font-size:12px}.le-format-selector-confirm{background:var(--le-accent);color:var(--le-on-accent);cursor:pointer;border:none;border-radius:6px;padding:10px 24px;font-size:14px;font-weight:500;transition:background .15s}.le-format-selector-confirm:hover{background:var(--le-accent-hover)}.le-format-selector-confirm:focus-visible{outline:2px solid var(--le-accent);outline-offset:2px}.le-page-status-bar{color:var(--le-text-muted);background:var(--le-chrome-bg);border-top:1px solid var(--le-border);-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;padding:6px 12px;font-size:12px;display:flex}.le-horizontal-rule-container{-webkit-user-select:none;user-select:none;width:100%;margin:0;display:block}.le-horizontal-rule{cursor:pointer;border-radius:4px;width:100%;margin:12px 0;padding:8px 0;transition:background-color .15s;display:block}.le-horizontal-rule:hover{background:#1a73e80a}.le-horizontal-rule--selected{outline-offset:2px;background:#1a73e814;outline:2px solid #1a73e8}.le-horizontal-rule hr{border:none;border-top:2px solid #e0e0e0;width:100%;margin:0}.le-column-layout{gap:16px;width:100%;margin:16px 0;display:grid}.le-column-layout--2{grid-template-columns:1fr 1fr}.le-column-layout--3{grid-template-columns:1fr 1fr 1fr}.le-column-item{border:1px dashed #d0d0d0;border-radius:4px;min-height:40px;padding:8px}@media (width<=767px){.le-column-layout--2,.le-column-layout--3{grid-template-columns:1fr}}.le-inline-image{max-width:100%;position:relative}.le-inline-image--left{float:left;margin-bottom:8px;margin-right:16px}.le-inline-image--right{float:right;margin-bottom:8px;margin-left:16px}.le-inline-image--full{width:100%;display:block}.le-inline-image--none{display:inline-block}.le-inline-image--selected{border-radius:4px;box-shadow:0 0 0 2px #1a73e8}.le-inline-image__img{border-radius:4px;max-width:100%;display:block}.le-inline-image__caption{text-align:center;margin-top:4px}.le-inline-image__caption-input{color:#555;text-align:center;background:0 0;border:none;border-bottom:1px solid #e0e0e0;outline:none;width:100%;padding:4px;font-size:12px}.le-inline-image__caption-input:focus{border-bottom-color:#1a73e8}.le-inline-image__caption-text{color:#555;font-size:12px;font-style:italic}.le-inline-image-loading{color:#999;background:#f0f0f0;border-radius:4px;justify-content:center;align-items:center;min-width:100px;min-height:60px;font-size:13px;display:inline-flex}.le-inline-image__resize-handle{z-index:10;cursor:nwse-resize;background:#1a73e8;border:2px solid #fff;border-radius:50%;width:10px;height:10px;position:absolute}.le-inline-image__resize-handle--top-left{cursor:nwse-resize;top:-5px;left:-5px}.le-inline-image__resize-handle--top-right{cursor:nesw-resize;top:-5px;right:-5px}.le-inline-image__resize-handle--bottom-left{cursor:nesw-resize;bottom:-5px;left:-5px}.le-inline-image__resize-handle--bottom-right{cursor:nwse-resize;bottom:-5px;right:-5px}.le-inline-image__resize-overlay{color:#fff;pointer-events:none;white-space:nowrap;background:#000000b3;border-radius:4px;padding:2px 8px;font-size:12px;position:absolute;bottom:8px;left:50%;transform:translate(-50%)}.le-hashtag{color:#1a73e8;font-weight:500}.le-mention{color:#1a73e8;cursor:default;-webkit-user-select:all;user-select:all;background-color:#1877e81f;border-radius:3px;padding:1px 4px;font-weight:500}.le-mention-menu{background:var(--le-surface);border:1px solid var(--le-border);box-shadow:0 4px 16px var(--le-shadow);z-index:1000;border-radius:8px;min-width:180px;max-height:240px;padding:4px 0;overflow-y:auto}.le-mention-menu-item{cursor:pointer;color:var(--le-text);align-items:center;padding:8px 12px;font-size:14px;transition:background-color .1s;display:flex}.le-mention-menu-item:hover,.le-mention-menu-item--selected{background:var(--le-menu-hover)}.le-mention-menu-item-name{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.le-comment-highlight-container{pointer-events:none;z-index:1;position:absolute;inset:0}.le-comment-highlight{pointer-events:auto;cursor:pointer;mix-blend-mode:multiply;border-radius:2px;transition:opacity .15s}.le-comment-highlight:hover{opacity:.8}.le-comment-thread{z-index:1000;background:var(--le-surface);border:1px solid var(--le-border);box-shadow:0 4px 16px var(--le-shadow);pointer-events:auto;border-radius:8px;min-width:240px;max-width:320px;padding:12px 16px;position:absolute}.le-comment-thread-header{align-items:center;gap:8px;margin-bottom:8px;display:flex}.le-comment-thread-author{color:var(--le-text-strong);font-size:13px;font-weight:600}.le-comment-thread-time{color:var(--le-text-subtle);flex:1;font-size:11px}.le-comment-thread-close{color:var(--le-text-subtle);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:0 4px;font-size:18px;line-height:1}.le-comment-thread-close:hover{color:var(--le-text);background:var(--le-hover-subtle)}.le-comment-thread-body{color:var(--le-text);white-space:pre-wrap;word-break:break-word;margin-bottom:12px;font-size:14px;line-height:1.5}.le-comment-thread-actions{justify-content:flex-end;gap:8px;display:flex}.le-comment-thread-resolve{border:1px solid var(--le-border-strong);background:var(--le-surface);color:var(--le-accent);cursor:pointer;border-radius:4px;padding:4px 12px;font-size:12px;font-weight:500;transition:background .15s}.le-comment-thread-resolve:hover{background:var(--le-accent-bg)}.le-comment-sidebar{z-index:1000;background:var(--le-surface);border:1px solid var(--le-border);box-shadow:0 4px 16px var(--le-shadow);pointer-events:auto;border-radius:8px;min-width:260px;max-width:320px;padding:12px 16px;position:absolute}.le-comment-input{border:1px solid var(--le-border-strong);resize:vertical;box-sizing:border-box;border-radius:6px;outline:none;width:100%;padding:8px 12px;font-family:inherit;font-size:14px;transition:border-color .15s}.le-comment-input:focus{border-color:var(--le-accent);box-shadow:0 0 0 3px var(--le-focus-tint)}.le-comment-dialog-actions{justify-content:flex-end;gap:8px;margin-top:8px;display:flex}.le-comment-cancel-btn{border:1px solid var(--le-border-strong);background:var(--le-surface);color:var(--le-text-muted);cursor:pointer;border-radius:4px;padding:6px 12px;font-size:13px;transition:background .15s}.le-comment-cancel-btn:hover{background:var(--le-secondary-bg)}.le-comment-submit-btn{background:var(--le-accent);color:var(--le-on-accent);cursor:pointer;border:none;border-radius:4px;padding:6px 12px;font-size:13px;font-weight:500;transition:background .15s}.le-comment-submit-btn:hover:not(:disabled){background:var(--le-accent-hover)}.le-comment-submit-btn:disabled{opacity:.5;cursor:not-allowed}.le-toc{border-right:1px solid var(--le-border);background:var(--le-chrome-bg);align-self:stretch;min-width:200px;max-width:240px;padding:12px;font-size:13px;transition:min-width .2s,max-width .2s,padding .2s;position:relative;overflow-y:auto}.le-toc--collapsed{border-right:1px solid var(--le-border);min-width:36px;max-width:36px;padding:12px 4px}.le-toc-toggle{cursor:pointer;color:var(--le-text);text-align:left;background:0 0;border:none;border-radius:4px;align-items:center;gap:6px;width:100%;margin-bottom:8px;padding:4px 6px;font-size:13px;font-weight:600;transition:background .15s;display:flex}.le-toc-toggle:hover{background:var(--le-hover)}.le-toc-toggle-icon{color:var(--le-text-muted);flex-shrink:0;font-size:10px}.le-toc-toggle-label{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.le-toc-list{flex-direction:column;gap:2px;display:flex}.le-toc-empty{color:var(--le-text-subtle);margin:8px 0;padding:0 6px;font-size:13px;font-style:italic}.le-toc-entry{text-align:left;cursor:pointer;width:100%;color:var(--le-text);white-space:nowrap;text-overflow:ellipsis;background:0 0;border:none;border-radius:4px;padding:4px 8px;font-size:13px;transition:background .15s,color .15s;display:block;overflow:hidden}.le-toc-entry:hover{background:var(--le-hover)}.le-toc-entry--active{background:var(--le-accent-bg);color:var(--le-accent);font-weight:500}.le-toc-entry--h1{padding-left:8px;font-weight:600}.le-toc-entry--h2{padding-left:20px}.le-toc-entry--h3{padding-left:32px}.le-toc-entry--h4{padding-left:44px}.le-stt-button{position:relative}.le-stt-button--recording{color:var(--le-danger);background:var(--ui-danger-bg)}.le-stt-button--recording:after{content:"";background:var(--le-danger);border-radius:50%;width:8px;height:8px;animation:1.2s ease-in-out infinite le-stt-pulse;position:absolute;top:4px;right:4px}.le-stt-button--recording:hover{background:var(--ui-danger-bg-strong)}.le-stt-button--disabled{opacity:.5;cursor:not-allowed}@keyframes le-stt-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.3)}}.le-color-picker{flex-direction:column;gap:12px;min-width:220px;padding:12px;display:flex}.le-color-picker-palette{grid-template-columns:repeat(5,1fr);gap:6px;display:grid}.le-color-picker-swatch{border:1px solid var(--le-border-strong);cursor:pointer;border-radius:4px;width:28px;height:28px;padding:0;transition:transform .1s,box-shadow .1s}.le-color-picker-swatch:hover{box-shadow:0 2px 6px var(--le-shadow-soft);transform:scale(1.15)}.le-color-picker-swatch:focus-visible{outline:2px solid var(--le-accent);outline-offset:2px}.le-color-picker-swatch--active{border:2px solid var(--le-accent);box-shadow:0 0 0 2px var(--le-accent-ring)}.le-color-picker-hex-form{align-items:center;gap:4px;display:flex}.le-color-picker-hex-prefix{color:var(--le-text-muted);font-size:14px;font-weight:600}.le-color-picker-input{border:1px solid var(--le-border-strong);border-radius:4px;outline:none;flex:1;padding:6px 8px;font-family:monospace;font-size:13px;transition:border-color .15s}.le-color-picker-input:focus{border-color:var(--le-accent);box-shadow:0 0 0 3px var(--le-focus-tint)}.le-color-picker-input--error{border-color:var(--le-danger)}.le-color-picker-input--error:focus{box-shadow:0 0 0 3px var(--le-danger-tint)}.le-color-picker-apply{background:var(--le-accent);color:var(--le-on-accent);cursor:pointer;border:none;border-radius:4px;padding:6px 12px;font-size:12px;font-weight:500;transition:background .15s}.le-color-picker-apply:hover{background:var(--le-accent-hover)}.le-color-picker-apply:focus-visible{outline:2px solid var(--le-accent);outline-offset:2px}.le-color-picker-error{color:var(--le-danger);margin:0;font-size:12px}.le-color-picker-clear{border:1px solid var(--le-border-strong);background:var(--le-surface);color:var(--le-text-muted);cursor:pointer;text-align:center;border-radius:4px;padding:8px 12px;font-size:13px;transition:background .15s,color .15s}.le-color-picker-clear:hover{background:var(--le-secondary-bg);color:var(--le-text)}.le-color-picker-clear:focus-visible{outline:2px solid var(--le-accent);outline-offset:2px}.le-font-controls{align-items:center;gap:4px;display:flex}.le-font-size-selector,.le-font-family-selector{border:1px solid var(--le-border-strong);height:32px;color:var(--le-text);background:var(--le-field-bg);cursor:pointer;border-radius:4px;outline:none;padding:4px 8px;font-family:inherit;font-size:13px;transition:border-color .15s}.le-font-size-selector:hover,.le-font-family-selector:hover{border-color:var(--le-border-hover)}.le-font-size-selector:focus,.le-font-family-selector:focus{border-color:var(--le-accent);box-shadow:0 0 0 2px var(--le-focus-tint)}.le-font-size-selector{width:70px}.le-font-family-selector{width:140px}.le-special-chars{background:var(--le-surface);border:1px solid var(--le-border);min-width:320px;max-width:420px;max-height:400px;box-shadow:0 4px 16px var(--le-shadow);border-radius:8px;flex-direction:column;gap:8px;padding:12px;display:flex}.le-special-chars-header{justify-content:space-between;align-items:center;display:flex}.le-special-chars-header h3{color:var(--le-text);margin:0;font-size:14px;font-weight:600}.le-special-chars-close{color:var(--le-text-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:2px 6px;font-size:20px;line-height:1}.le-special-chars-close:hover{background:var(--le-hover-subtle);color:var(--le-text)}.le-special-chars-search{border:1px solid var(--le-border-strong);box-sizing:border-box;border-radius:6px;outline:none;width:100%;padding:8px 12px;font-size:13px;transition:border-color .15s}.le-special-chars-search:focus{border-color:var(--le-accent);box-shadow:0 0 0 3px var(--le-focus-tint)}.le-special-chars-categories{flex-wrap:wrap;gap:4px;display:flex}.le-special-chars-category{border:1px solid var(--le-border-strong);background:var(--le-surface);color:var(--le-text-secondary);cursor:pointer;border-radius:4px;padding:4px 8px;font-size:11px;transition:background .15s,border-color .15s}.le-special-chars-category:hover{background:var(--le-secondary-bg);border-color:var(--le-border-hover)}.le-special-chars-category--active{background:var(--le-accent-bg);border-color:var(--le-accent);color:var(--le-accent);font-weight:500}.le-special-chars-grid{grid-template-columns:repeat(auto-fill,minmax(36px,1fr));gap:4px;max-height:240px;padding:4px;display:grid;overflow-y:auto}.le-special-chars-item{border:1px solid var(--le-border);background:var(--le-surface);cursor:pointer;border-radius:4px;justify-content:center;align-items:center;width:36px;height:36px;font-size:18px;transition:background .1s,border-color .1s,transform .1s;display:flex}.le-special-chars-item:hover{background:var(--le-accent-bg);border-color:var(--le-accent);transform:scale(1.1)}.le-special-chars-item:focus-visible{outline:2px solid var(--le-accent);outline-offset:2px}.le-special-chars-empty{text-align:center;color:var(--le-text-subtle);grid-column:1/-1;padding:16px 0;font-size:13px;font-style:italic}.le-editor-paginated{background:var(--le-page-desk);flex:1;min-height:0;padding:24px}.le-editor-paginated.theme-light-area{color-scheme:inherit}.le-editor-paginated .le-content-editable{min-height:0}.le-editor-readonly .le-content-editable{cursor:default;caret-color:#0000}.le-editor-readonly .le-content-editable:focus{outline:none}.le-page{padding-top:var(--le-page-padding-top,58px);padding-bottom:var(--le-page-padding-bottom,82px);padding-left:var(--le-page-padding-top,58px);padding-right:var(--le-page-padding-top,58px);width:var(--le-page-width,816px);min-width:var(--le-page-width,816px);box-sizing:border-box;height:calc(var(--le-page-width,816px) * var(--le-page-aspect-ratio,1.414));background:#fff;margin:0 auto 24px;position:relative;overflow:visible;box-shadow:0 2px 8px #0000001f}.le-page img,.le-page svg,.le-page canvas,.le-page iframe,.le-page .le-chart-container,.le-page .le-excalidraw-container,.le-page .le-equation-block,.le-page .le-inline-image,.le-page .le-media-embed-container{max-width:100%;overflow:hidden}.le-page:last-child{margin-bottom:0}.le-page-number{color:#666;-webkit-user-select:none;user-select:none;pointer-events:none;font-size:12px;position:absolute;bottom:8px;left:50%;transform:translate(-50%)}.le-page-break-container{-webkit-user-select:none;user-select:none;width:100%;margin:0;display:block}.le-page-break{cursor:pointer;border-radius:4px;align-items:center;gap:12px;padding:12px 0;transition:background-color .15s;display:flex}.le-page-break:hover{background:#1a73e80a}.le-page-break--selected{outline-offset:2px;background:#1a73e814;outline:2px solid #1a73e8}.le-page-break__line{border-top:2px dashed #bbb;flex:1;height:0}.le-page-break__label{color:#999;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;-webkit-user-select:none;user-select:none;font-size:11px;font-weight:600}.le-page-format-overlay{background:var(--le-backdrop);z-index:100;border-radius:8px;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.le-page-format-overlay__panel{background:var(--le-surface);border:1px solid var(--le-border);box-shadow:0 8px 32px var(--le-shadow);border-radius:12px;width:100%;max-width:420px;padding:32px}.le-page-format-overlay__title{color:var(--le-text-strong);margin:0 0 8px;font-size:18px;font-weight:600}.le-page-format-overlay__description{color:var(--le-text-muted);margin:0 0 20px;font-size:14px;line-height:1.5}.le-page-format-overlay__options{border:none;flex-direction:column;gap:8px;margin:0 0 20px;padding:0;display:flex}.le-page-format-overlay__legend{color:var(--le-text);margin-bottom:8px;font-size:13px;font-weight:600}.le-page-format-overlay__option{border:1px solid var(--le-border);cursor:pointer;border-radius:8px;align-items:center;gap:12px;padding:12px 16px;transition:border-color .15s,background .15s;display:flex}.le-page-format-overlay__option:hover{border-color:var(--le-border-hover);background:var(--le-hover-faint)}.le-page-format-overlay__option--selected{border-color:var(--le-accent);background:var(--le-accent-bg)}.le-page-format-overlay__radio{accent-color:var(--le-accent)}.le-page-format-overlay__option-label{color:var(--le-text);flex:1;font-size:14px}.le-page-format-overlay__option-preview{border:1px solid var(--le-border-strong);background:var(--le-surface);border-radius:2px;width:32px}.le-page-format-overlay__confirm-btn{background:var(--le-accent);width:100%;color:var(--le-on-accent);cursor:pointer;border:none;border-radius:8px;padding:12px;font-size:14px;font-weight:600;transition:background .15s;display:block}.le-page-format-overlay__confirm-btn:hover{background:var(--le-accent-hover)}[style*="text-align: center"]{text-align:center}[style*="text-align: right"]{text-align:right}[style*="text-align: justify"]{text-align:justify}[style*="text-align: left"],.le-align-left{text-align:left}.le-align-center{text-align:center}.le-align-right{text-align:right}.le-align-justify{text-align:justify}.le-page-mode-toggle{border:1px solid var(--le-border-strong);background:var(--le-surface);cursor:pointer;color:var(--le-text);border-radius:4px;align-items:center;gap:4px;padding:4px 8px;font-size:13px;transition:border-color .15s,background .15s;display:inline-flex}.le-page-mode-toggle:hover{border-color:var(--le-border-hover);background:var(--le-secondary-bg)}.le-page-mode-toggle__icon{font-size:14px}.le-page-mode-toggle__label{font-weight:500}.le-page-mode-confirm-overlay{z-index:10000;background:var(--le-backdrop);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.le-page-mode-confirm-panel{background:var(--le-surface);box-shadow:0 20px 60px var(--le-shadow-strong);border-radius:12px;width:90vw;max-width:420px;padding:24px 28px}.le-page-mode-confirm-panel__title{color:var(--le-text-strong);margin:0 0 12px;font-size:18px;font-weight:600}.le-page-mode-confirm-panel__message{color:var(--le-text-secondary);margin:0 0 20px;font-size:14px;line-height:1.6}.le-page-mode-confirm-panel__actions{justify-content:flex-end;gap:8px;display:flex}.le-page-mode-confirm-panel__cancel-btn{border:1px solid var(--le-border-strong);background:var(--le-secondary-bg);color:var(--le-text);cursor:pointer;border-radius:6px;padding:8px 16px;font-size:14px;font-weight:500;transition:background .15s}.le-page-mode-confirm-panel__cancel-btn:hover{background:var(--le-hover)}.le-page-mode-confirm-panel__confirm-btn{border:1px solid var(--le-danger);background:var(--le-danger);color:var(--le-on-accent);cursor:pointer;border-radius:6px;padding:8px 16px;font-size:14px;font-weight:500;transition:background .15s}.le-page-mode-confirm-panel__confirm-btn:hover{background:var(--le-danger-hover)}.le-page-format-overlay{z-index:10000;background:var(--le-backdrop);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.le-editor-footer{background:var(--le-chrome-bg);border-top:1px solid var(--le-border);color:var(--le-text-muted);z-index:10;flex-shrink:0;justify-content:space-between;align-items:center;padding:4px 12px;font-size:12px;display:flex;position:sticky;bottom:0}.le-zoom-controls{align-items:center;gap:4px;display:flex}.le-zoom-btn{border:1px solid var(--le-border-strong);background:var(--le-surface);cursor:pointer;width:24px;height:24px;color:var(--le-text);border-radius:4px;justify-content:center;align-items:center;font-size:16px;font-weight:600;line-height:1;transition:background .15s,border-color .15s;display:flex}.le-zoom-btn:hover:not(:disabled){background:var(--le-hover-subtle);border-color:var(--le-border-hover)}.le-zoom-btn:disabled{opacity:.4;cursor:not-allowed}.le-zoom-level{border:1px solid var(--le-border-strong);background:var(--le-surface);cursor:pointer;min-width:44px;height:24px;color:var(--le-text);border-radius:4px;justify-content:center;align-items:center;padding:0 6px;font-size:11px;font-weight:500;transition:background .15s;display:flex}.le-zoom-level:hover{background:var(--le-hover-subtle)}.le-list-ul.le-checklist{padding-left:4px;list-style:none}.le-listitem-checked,.le-listitem-unchecked{outline:none;padding-left:26px;list-style:none;position:relative}.le-listitem-checked:before,.le-listitem-unchecked:before{content:"";box-sizing:border-box;opacity:.75;border:1.5px solid;border-radius:3px;width:16px;height:16px;position:absolute;top:.2em;left:0}.le-content-editable[contenteditable=true] .le-listitem-checked:before,.le-content-editable[contenteditable=true] .le-listitem-unchecked:before{cursor:pointer}.le-listitem-checked:before{opacity:1;background:#2563eb;border-color:#2563eb}.le-listitem-checked:after{content:"";pointer-events:none;border:2px solid #fff;border-width:0 2px 2px 0;width:4px;height:8px;position:absolute;top:calc(.2em + 2.5px);left:5.5px;transform:rotate(45deg)}.le-nested-listitem.le-listitem-checked,.le-nested-listitem.le-listitem-unchecked{padding-left:0}.le-nested-listitem.le-listitem-checked:before,.le-nested-listitem.le-listitem-checked:after,.le-nested-listitem.le-listitem-unchecked:before{display:none}.le-image-figure{flex-direction:column;align-items:center;max-width:100%;margin:0;display:flex}.le-image-caption{text-align:center;max-width:100%;color:inherit;opacity:.75;margin-top:8px;font-size:.875em;line-height:1.45}.le-image-tools{z-index:11;gap:4px;display:flex;position:absolute;top:8px;left:8px}.le-image-tools-btn,.le-image-alt-prompt-btn{font:inherit;cursor:pointer;border-radius:4px;padding:6px 10px;font-size:12px;font-weight:600;line-height:1}.le-image-tools-btn{color:#fff;background:#111827d1;border:1px solid #ffffff59}.le-image-tools-btn:hover,.le-image-tools-btn:focus-visible{background:#111827f2}.le-image-alt-prompt{color:#92400e;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;margin-top:6px;font-size:12px;display:flex}.le-image-alt-prompt-btn{color:#92400e;background:#fffbeb;border:1px solid #f59e0b}.le-image-alt-prompt-btn:hover,.le-image-alt-prompt-btn:focus-visible{background:#fef3c7}.le-image-upload-status{z-index:60;flex-direction:column;gap:8px;width:min(440px,100% - 32px);display:flex;position:absolute;bottom:16px;left:50%;transform:translate(-50%)}.le-image-upload-item{background:var(--le-surface);color:var(--ui-gray-800);border:1px solid var(--ui-border-subtle);box-shadow:0 4px 16px var(--le-shadow);border-radius:8px;align-items:center;gap:12px;padding:10px 14px;font-size:13px;display:flex}.le-image-upload-item--error{background:var(--ui-danger-bg);border-color:var(--ui-danger-border);color:var(--ui-danger-text)}.le-image-upload-text{overflow-wrap:anywhere;flex:1;min-width:0}.le-image-upload-bar{background:var(--ui-gray-200);border-radius:2px;flex:0 0 96px;height:4px;position:relative;overflow:hidden}.le-image-upload-bar-fill{background:var(--le-accent);border-radius:2px;width:40%;animation:1.1s ease-in-out infinite le-image-upload-progress;position:absolute;inset:0}@keyframes le-image-upload-progress{0%{transform:translate(-100%)}to{transform:translate(250%)}}@media (prefers-reduced-motion:reduce){.le-image-upload-bar-fill{opacity:.5;width:100%;animation:none}}.le-image-upload-dismiss{font:inherit;color:inherit;cursor:pointer;background:0 0;border:1px solid;border-radius:4px;padding:4px 10px;font-weight:600}.le-table-tools{border-bottom:1px solid var(--le-border);background:var(--le-table-tools-bg);flex-wrap:wrap;align-items:center;gap:4px;padding:6px 12px;display:flex}.le-table-tools-hint{color:var(--ui-text-muted);margin-left:4px;font-size:12px}.le-table-tools-btn:disabled{opacity:.45;cursor:not-allowed}.le-table-tools-label{color:var(--ui-text-muted);text-transform:uppercase;letter-spacing:.04em;margin-right:4px;font-size:12px;font-weight:700}.le-table-tools-btn{font:inherit;border:1px solid var(--ui-border);background:var(--le-surface);color:var(--ui-gray-800);cursor:pointer;border-radius:4px;padding:4px 10px;font-size:13px}.le-table-tools-btn:hover:not(:disabled),.le-table-tools-btn:focus-visible{background:var(--ui-accent-50);border-color:var(--ui-primary-300)}.le-table-tools-btn--danger{color:var(--ui-danger-hover)}.le-table-tools-btn--danger:hover:not(:disabled),.le-table-tools-btn--danger:focus-visible{background:var(--ui-danger-bg);border-color:var(--ui-red-300)}.le-sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.le-chart-description{text-align:center;max-width:60ch;color:inherit;opacity:.8;margin:8px auto 0;font-size:.875em;line-height:1.5}.le-chart-data,.le-media-transcript{border:1px solid color-mix(in srgb, currentColor 18%, transparent);cursor:default;border-radius:6px;margin:8px 0 0;font-size:.875em}.le-chart-data-summary,.le-media-transcript-summary{cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:6px;padding:6px 10px;font-weight:600}.le-chart-data-summary:hover,.le-media-transcript-summary:hover{background:color-mix(in srgb, currentColor 6%, transparent)}.le-chart-data-summary:focus-visible,.le-media-transcript-summary:focus-visible{outline-offset:2px;outline:2px solid #1a73e8}.le-chart-data[open]>.le-chart-data-summary,.le-media-transcript[open]>.le-media-transcript-summary{border-bottom:1px solid color-mix(in srgb, currentColor 14%, transparent);border-bottom-right-radius:0;border-bottom-left-radius:0}.le-chart-data-scroll{max-height:260px;padding:8px 10px 10px;overflow:auto}.le-chart-data-table{border-collapse:collapse;width:100%}.le-chart-data-table th,.le-chart-data-table td{border:1px solid color-mix(in srgb, currentColor 18%, transparent);text-align:left;padding:4px 10px}.le-chart-data-table td{text-align:right;font-variant-numeric:tabular-nums}.le-chart-data-table thead th{background:color-mix(in srgb, currentColor 6%, transparent)}.le-chart-data-table tbody th{font-weight:500}.le-media-a11y{margin:4px 0 12px}.le-media-transcript-text{max-height:320px;padding:8px 12px;line-height:1.6;overflow:auto}.le-media-transcript-text p{margin:0 0 .75em}.le-media-transcript-text p:last-child{margin-bottom:0}.le-media-transcript-edit{font:inherit;border:1px solid color-mix(in srgb, currentColor 25%, transparent);color:inherit;cursor:pointer;background:0 0;border-radius:4px;margin-top:6px;padding:4px 10px;font-size:12px;font-weight:600}.le-media-transcript-edit:hover,.le-media-transcript-edit:focus-visible{background:color-mix(in srgb, currentColor 6%, transparent)}.le-media-embed--video{background:#000;border-radius:6px;width:100%;height:0;margin:12px 0 0;padding-bottom:56.25%;position:relative;overflow:hidden}.le-a11y-bar{border-top:1px solid var(--le-border);background:var(--le-chrome-bg);justify-content:flex-end;align-items:center;gap:8px;padding:4px 12px;font-size:12px;display:flex;position:relative}.le-a11y-toggle{font:inherit;color:var(--ui-text-muted);cursor:default;background:0 0;border:1px solid #0000;border-radius:999px;align-items:center;gap:8px;padding:4px 10px;display:inline-flex}.le-a11y-label{color:var(--ui-gray-700);font-weight:600}.le-a11y-status{color:var(--le-ok)}.le-a11y-toggle--issues{cursor:pointer;border-color:var(--ui-warning-accent);background:var(--ui-warning-bg)}.le-a11y-toggle--issues .le-a11y-status,.le-a11y-chevron{color:var(--ui-warning-text)}.le-a11y-toggle--issues:hover,.le-a11y-toggle--issues:focus-visible{background:var(--ui-warning-bg-strong)}.le-a11y-toggle:focus-visible{outline:2px solid var(--le-accent);outline-offset:2px}.le-a11y-panel{z-index:40;border:1px solid var(--ui-border-subtle);background:var(--le-surface);width:min(360px,100vw - 48px);color:var(--ui-gray-800);box-shadow:0 10px 30px var(--le-shadow-soft);border-radius:8px;padding:12px;position:absolute;bottom:calc(100% + 6px);right:12px}.le-a11y-panel-intro{color:var(--ui-text-muted);margin:0 0 8px;line-height:1.45}.le-a11y-list{max-height:240px;margin:0;padding:0;list-style:none;overflow:auto}.le-a11y-issue{width:100%;font:inherit;text-align:left;color:var(--ui-primary-700);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:6px 8px;font-size:13px;display:block}.le-a11y-issue:hover,.le-a11y-issue:focus-visible{background:var(--ui-primary-50);text-decoration:underline}.le-a11y-flash{outline:3px solid var(--ui-warning-accent);outline-offset:4px;border-radius:6px}@font-face{font-display:block;font-family:KaTeX_AMS;font-style:normal;font-weight:400;src:url(/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2)format("woff2"),url(/assets/KaTeX_AMS-Regular-DMm9YOAa.woff)format("woff"),url(/assets/KaTeX_AMS-Regular-DRggAlZN.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2)format("woff2"),url(/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff)format("woff"),url(/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2)format("woff2"),url(/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff)format("woff"),url(/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2)format("woff2"),url(/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff)format("woff"),url(/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2)format("woff2"),url(/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff)format("woff"),url(/assets/KaTeX_Fraktur-Regular-CB_wures.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Main-Bold-Cx986IdX.woff2)format("woff2"),url(/assets/KaTeX_Main-Bold-Jm3AIy58.woff)format("woff"),url(/assets/KaTeX_Main-Bold-waoOVXN0.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:700;src:url(/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2)format("woff2"),url(/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff)format("woff"),url(/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:400;src:url(/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2)format("woff2"),url(/assets/KaTeX_Main-Italic-BMLOBm91.woff)format("woff"),url(/assets/KaTeX_Main-Italic-3WenGoN9.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Main-Regular-B22Nviop.woff2)format("woff2"),url(/assets/KaTeX_Main-Regular-Dr94JaBh.woff)format("woff"),url(/assets/KaTeX_Main-Regular-ypZvNtVU.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:700;src:url(/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2)format("woff2"),url(/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff)format("woff"),url(/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:400;src:url(/assets/KaTeX_Math-Italic-t53AETM-.woff2)format("woff2"),url(/assets/KaTeX_Math-Italic-DA0__PXp.woff)format("woff"),url(/assets/KaTeX_Math-Italic-flOr_0UB.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:normal;font-weight:700;src:url(/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2)format("woff2"),url(/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff)format("woff"),url(/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:italic;font-weight:400;src:url(/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2)format("woff2"),url(/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff)format("woff"),url(/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:normal;font-weight:400;src:url(/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2)format("woff2"),url(/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff)format("woff"),url(/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Script;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Script-Regular-D3wIWfF6.woff2)format("woff2"),url(/assets/KaTeX_Script-Regular-D5yQViql.woff)format("woff"),url(/assets/KaTeX_Script-Regular-C5JkGWo-.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size1;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2)format("woff2"),url(/assets/KaTeX_Size1-Regular-C195tn64.woff)format("woff"),url(/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size2;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2)format("woff2"),url(/assets/KaTeX_Size2-Regular-oD1tc_U0.woff)format("woff"),url(/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size3;font-style:normal;font-weight:400;src:url(data:font/woff2;base64,d09GMgABAAAAAA4oAA4AAAAAHbQAAA3TAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAABmAAgRQIDgmcDBEICo1oijYBNgIkA14LMgAEIAWJAAeBHAyBHBvbGiMRdnO0IkRRkiYDgr9KsJ1NUAf2kILNxgUmgqIgq1P89vcbIcmsQbRps3vCcXdYOKSWEPEKgZgQkprQQsxIXUgq0DqpGKmIvrgkeVGtEQD9DzAO29fM9jYhxZEsL2FeURH2JN4MIcTdO049NCVdxQ/w9NrSYFEBKTDKpLKfNkCGDc1RwjZLQcm3vqJ2UW9Xfa3tgAHz6ivp6vgC2yD4/6352ndnN0X0TL7seypkjZlMsjmZnf0Mm5Q+JykRWQBKCVCVPbARPXWyQtb5VgLB6Biq7/Uixcj2WGqdI8tGSgkuRG+t910GKP2D7AQH0DB9FMDW/obJZ8giFI3Wg8Cvevz0M+5m0rTh7XDBlvo9Y4vm13EXmfttwI4mBo1EG15fxJhUiCLbiiyCf/ZA6MFAhg3pGIZGdGIVjtPn6UcMk9A/UUr9PhoNsCENw1APAq0gpH73e+M+0ueyHbabc3vkbcdtzcf/fiy+NxQEjf9ud/ELBHAXJ0nk4z+MXH2Ev/kWyV4k7SkvpPc9Qr38F6RPWnM9cN6DJ0AdD1BhtgABtmoRoFCvPsBAumNm6soZG2Gk5GyVTo2sJncSyp0jQTYoR6WDvTwaaEcHsxHfvuWhHA3a6bN7twRKtcGok6NsCi7jYRrM2jExsUFMxMQYuJbMhuWNOumEJy9hi29Dmg5zMp/A5+hhPG19j1vBrq8JTLr8ki5VLPmG/PynJHVul440bxg5xuymHUFPBshC+nA9I1FmwbRBTNHAcik3Oae0cxKoI3MOriM42UrPe51nsaGxJ+WfXubAsP84aabUlQSJ1IiE0iPETLUU4CATgfXSCSpuRFRmCGbO+wSpAnzaeaCYW1VNEysRtuXCEL1kUFUbbtMv3Tilt/1c11jt3Q5bbMa84cpWipp8Elw3MZhOHsOlwwVUQM3lAR35JiFQbaYCRnMF2lxAWoOg2gyoIV4PouX8HytNIfLhqpJtXB4vjiViUI8IJ7bkC4ikkQvKksnOTKICwnqWSZ9YS5f0WCxmpgjbIq7EJcM4aI2nmhLNY2JIUgOjXZFWBHb+x5oh6cwb0Tv1ackHdKi0I9OO2wE9aogIOn540CCCziyhN+IaejtgAONKznHlHyutPrHGwCx9S6B8kfS4Mfi4Eyv7OU730bT1SCBjt834cXsf43zVjPUqqJjgrjeGnBxSG4aYAKFuVbeCfkDIjAqMb6yLNIbCuvXhMH2/+k2vkNpkORhR59N1CkzoOENvneIosjYmuTxlhUzaGEJQ/iWqx4dmwpmKjrwTiTGTCVozNAYqk/zXOndWxuWSmJkQpJw3pK5KX6QrLt5LATMqpmPAQhkhK6PUjzHUn7E0gHE0kPE0iKkolgkUx9SZmVAdDgpffdyJKg3k7VmzYGCwVXGz/tXmkOIp+vcWs+EMuhhvN0h9uhfzWJziBQmCREGSIFmQIkgVpAnSBRmC//6hkLZwaVhwxlrJSOdqlFtOYxlau9F2QN5Y98xmIAsiM1HVp2VFX+DHHGg6Ecjh3vmqtidX3qHI2qycTk/iwxSt5UzTmEP92ZBnEWTk4Mx8Mpl78ZDokxg/KWb+Q0QkvdKVmq3TMW+RXEgrsziSAfNXFMhDc60N5N9jQzjfO0kBKpUZl0ZmwJ41j/B9Hz6wmRaJB84niNmQrzp9eSlQCDDzazGDdVi3P36VZQ+Jy4f9UBNp+3zTjqI4abaFAm+GShVaXlsGdF3FYzZcDI6cori4kMxUECl9IjJZpzkvitAoxKue+90pDMvcKRxLl53TmOKCmV/xRolNKSqqUxc6LStOETmFOiLZZptlZepcKiAzteG8PEdpnQpbOMNcMsR4RR2Bs0cKFEvSmIjAFcnarqwUL4lDhHmnVkwu1IwshbiCcgvOheZuYyOteufZZwlcTlLgnZ3o/WcYdzZHW/WGaqaVfmTZ1aWCceJjkbZqsfbkOtcFlUZM/jy+hXHDbaUobWqqXaeWobbLO99yG5N3U4wxco0rQGGcOLASFMXeJoham8M+/x6O2WywK2l4HGbq1CoUyC/IZikQhdq3SiuNrvAEj0AVu9x2x3lp/xWzahaxidezFVtdcb5uEnzyl0ZmYiuKI0exvCd4Xc9CV1KB0db00z92wDPde0kukbvZIWN6jUWFTmPIC/Y4UPCm8UfDTFZpZNon1qLFTkBhxzB+FjQRA2Q/YRJT8pQigslMaUpFyAG8TMlXigiqmAZX4xgijKjRlGpLE0GdplRfCaJo0JQaSxNBk6ZmMzcya0FmrcisDdn0Q3HI2sWSppYigmlM1XT/kLQZSNpMJG0WkjYbSZuDpM1F0uYhFc1HxU4m1QJjDK6iL0S5uSj5rgXc3RejEigtcRBtqYPQsiTskmO5vosV+q4VGIKbOkDg0jtRrq+Em1YloaTFar3EGr1EUC8R0kus1Uus00usL97ABr2BjXoDm/QGNhuWtMVBKOwg/i78lT7hBsAvDmwHc/ao3vmUbBmhjeYySZNWvGkfZAgISDSaDo1SVpzGDsAEkF8B+gEapViUoZgUWXcRIGFZNm6gWbAKk0bp0k1MHG9fLYtV4iS2SmLEQFARzRcnf9PUS0LVn05/J9MiRRBU3v2IrvW974v4N00L7ZMk0wXP1409CHo/an8zTRHD3eSJ6m8D4YMkZNl3M79sqeuAsr/m3f+8/yl7A50aiAEJgeBeMWzu7ui9UfUBCe2TIqZIoOd/3/udRBOQidQZUERzb2/VwZN1H/Sju82ew2H2Wfr6qvfVf3hqwDvAIpkQVFy4B9Pe9e4/XvPeceu7h3dvO56iJPf0+A6cqA2ip18ER+iFgggiuOkvj24bby0N9j2UHIkgqIt+sVgfodC4YghLSMjSZbH0VR/6dMDrYJeKHilKTemt6v6kvzvn3/RrdWtr0GoN/xL+Sex/cPYLUpepx9cz/D46UPU5KXgAQa+NDps1v6J3xP1i2HtaDB0M9aX2deA7SYff//+gUCovMmIK/qfsFcOk+4Y5ZN97XlG6zebqtMbKgeRFi51vnxTQYBUik2rS/Cn6PC8ADR8FGxsRPB82dzfND90gIcshOcYUkfjherBz53odpm6TP8txlwOZ71xmfHHOvq053qFF/MRlS3jP0ELudrf2OeN8DHvp6ZceLe8qKYvWz/7yp0u4dKPfli3CYq0O13Ih71mylJ80tOi10On8wi+F4+LWgDPeJ30msSQt9/vkmHq9/Lvo2b461mP801v3W4xTcs6CbvF9UDdrSt+A8OUbpSh55qAUFXWznBBfdeJ8a4d7ugT5tvxUza3h9m4H7ptTqiG4z0g5dc0X29OcGlhpGFMpQo9ytTS+NViZpNdvU4kWx+LKxNY10kQ1yqGXrhe4/1nvP7E+nd5A92TtaRplbHSqoIdOqtRWti+fkB5/n1+/VvCmz12pG1kpQWsfi1ftlBobm0bpngs16CHkbIwdLnParxtTV3QYRlfJ0KFskH7pdN/YDn+yRuSd7sNH3aO0DYPggk6uWuXrfOc+fa3VTxFVvKaNxHsiHmsXyCLIE5yuOeN3/Jdf8HBL/5M6shjyhxHx9BjB1O0+4NLOnjLLSxwO7ukN4jMbOIcD879KLSi6Pk61Oqm2377n8079PXEEQ7cy7OKEC9nbpet118fxweTafpt69x/Bt8UqGzNQt7aelpc44dn5cqhwf71+qKp/Zf/+a0zcizOUWpl/iBcSXip0pplkatCchoH5c5aUM8I7/dWxAej8WicPL1URFZ9BDJelUwEwTkGqUhgSlydVes95YdXvhh9Gfz/aeFWvgVb4tuLbcv4+wLdutVZv/cUonwBD/6eDlE0aSiKK/uoH3+J1wDE/jMVqY2ysGufN84oIXB0sPzy8ollX/LegY74DgJXJR57sn+VGza0x3DnuIgABFM15LmajjjsNlYj+JEZGbuRYcAMOWxFkPN2w6Wd46xo4gVWQR/X4lyI/R6K/YK0110GzudPRW7Y+UOBGTfNNzHeYT0fiH0taunBpq9HEW8OKSaBGj21L0MqenEmNRWBAWDWAk4CpNoEZJ2tTaPFgbQYj8HxtFilErs3BTRwT8uO1NXQaWfIotchmPkAF5mMBAliEmZiOGVgCG9LgRzpscMAOOwowlT3JhusdazXGSC/hxR3UlmWVwWHpOIKheqONvjyhSiTHIkVUco5bnji8m//zL7PKaT1Vl5I6UE609f+gkr6MZKVyKc7zJRmCahLsdlyA5fdQkRSan9LgnnLEyGSkaKJCJog0wAgvepWBt80+1yKln1bMVtCljfNWDueKLsWwaEbBSfSPTEmVRsUcYYMnEjcjeyCZzBXK9E9BYBXLKjOSpUDR+nEV3TFSUdQaz+ot98QxgXwx0GQ+EEUAKB2qZPkQQ0GqFD8UPFMqyaCHM24BZmSGic9EYMagKizOw9Hz50DMrDLrqqLkTAhplMictiCAx5S3BIUQdeJeLnBy2CNtMfz6cV4u8XKoFZQesbf9YZiIERiHjaNodDW6LgcirX/mPnJIkBGDUpTBhSa0EIr38D5hCIszhCM8URGBqImoWjpvpt1ebu/v3Gl3qJfMnNM+9V+kiRFyROTPHQWOcs1dNW94/ukKMPZBvDi55i5CttdeJz84DLngLqjcdwEZ87bFFR8CIG35OAkDVN6VRDZ7aq67NteYqZ2lpT8oYB2CytoBd6VuAx4WgiAsnuj3WohG+LugzXiQRDeM3XYXlULv4dp5VFYC)format("woff2"),url(/assets/KaTeX_Size3-Regular-CTq5MqoE.woff)format("woff"),url(/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size4;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2)format("woff2"),url(/assets/KaTeX_Size4-Regular-BF-4gkZK.woff)format("woff"),url(/assets/KaTeX_Size4-Regular-DWFBv043.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Typewriter;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2)format("woff2"),url(/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff)format("woff"),url(/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf)format("truetype")}.katex{text-indent:0;text-rendering:auto;font:1.21em/1.2 KaTeX_Main,math,Times New Roman,serif;position:relative}.katex *{border-color:currentColor;-ms-high-contrast-adjust:none!important}.katex .katex-version:after{content:"0.19.1"}.katex .katex-mathml{clip-path:inset(50%);border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.katex .katex-html>.katex-newline{display:block}.katex .katex-base{white-space:nowrap;width:min-content;position:relative}.katex .katex-base,.katex .katex-strut{display:inline-block}.katex .textbf{font-weight:700}.katex .textit{font-style:italic}.katex .textrm{font-family:KaTeX_Main}.katex .textsf{font-family:KaTeX_SansSerif}.katex .texttt{font-family:KaTeX_Typewriter}.katex .mathnormal{font-family:KaTeX_Math;font-style:italic}.katex .mathit{font-family:KaTeX_Main;font-style:italic}.katex .mathrm{font-style:normal}.katex .mathbf{font-family:KaTeX_Main;font-weight:700}.katex .boldsymbol{font-family:KaTeX_Math;font-style:italic;font-weight:700}.katex .amsrm,.katex .mathbb,.katex .textbb{font-family:KaTeX_AMS}.katex .mathcal{font-family:KaTeX_Caligraphic}.katex .mathfrak,.katex .textfrak{font-family:KaTeX_Fraktur}.katex .mathboldfrak,.katex .textboldfrak{font-family:KaTeX_Fraktur;font-weight:700}.katex .mathtt{font-family:KaTeX_Typewriter}.katex .mathscr,.katex .textscr{font-family:KaTeX_Script}.katex .mathsf,.katex .textsf{font-family:KaTeX_SansSerif}.katex .mathboldsf,.katex .textboldsf{font-family:KaTeX_SansSerif;font-weight:700}.katex .mathitsf,.katex .mathsfit,.katex .textitsf{font-family:KaTeX_SansSerif;font-style:italic}.katex .mainrm{font-family:KaTeX_Main;font-style:normal}.katex .vlist-t{border-collapse:collapse;table-layout:fixed;display:inline-table}.katex .vlist-r{display:table-row}.katex .vlist{vertical-align:bottom;display:table-cell;position:relative}.katex .vlist>span{height:0;display:block;position:relative}.katex .vlist>span>span{display:inline-block}.katex .vlist>span>.pstrut{width:0;overflow:hidden}.katex .vlist-t2{margin-right:-2px}.katex .vlist-s{vertical-align:bottom;width:2px;min-width:2px;font-size:1px;display:table-cell}.katex .katex-vbox{flex-direction:column;align-items:baseline;display:inline-flex}.katex .katex-thinbox{flex-direction:row;width:0;max-width:0;display:inline-flex}.katex .msupsub{text-align:left}.katex .mfrac>span>span{text-align:center}.katex .mfrac .frac-line{border-bottom-style:solid;width:100%;display:inline-block}.katex .katex-hdashline,.katex .katex-hline,.katex .katex-overline .overline-line,.katex .katex-rule,.katex .katex-underline .underline-line,.katex .mfrac .frac-line{min-height:1px}.katex .mspace{display:inline-block}.katex .katex-smash{line-height:0;display:inline}.katex .clap,.katex .llap,.katex .rlap{width:0;position:relative}.katex .clap>.katex-inner,.katex .llap>.katex-inner,.katex .rlap>.katex-inner{position:absolute}.katex .clap>.katex-fix,.katex .llap>.katex-fix,.katex .rlap>.katex-fix{display:inline-block}.katex .llap>.katex-inner{right:0}.katex .clap>.katex-inner,.katex .rlap>.katex-inner{left:0}.katex .clap>.katex-inner>span{margin-left:-50%;margin-right:50%}.katex .katex-rule{border:0 solid;display:inline-block;position:relative}.katex .katex-hline,.katex .katex-overline .overline-line,.katex .katex-underline .underline-line{border-bottom-style:solid;width:100%;display:inline-block}.katex .katex-hdashline{border-bottom-style:dashed;width:100%;display:inline-block}.katex .sqrt>.katex-root{margin-left:.277778em;margin-right:-.555556em}.katex .fontsize-ensurer.reset-size1.size1,.katex .katex-sizing.reset-size1.size1{font-size:1em}.katex .fontsize-ensurer.reset-size1.size2,.katex .katex-sizing.reset-size1.size2{font-size:1.2em}.katex .fontsize-ensurer.reset-size1.size3,.katex .katex-sizing.reset-size1.size3{font-size:1.4em}.katex .fontsize-ensurer.reset-size1.size4,.katex .katex-sizing.reset-size1.size4{font-size:1.6em}.katex .fontsize-ensurer.reset-size1.size5,.katex .katex-sizing.reset-size1.size5{font-size:1.8em}.katex .fontsize-ensurer.reset-size1.size6,.katex .katex-sizing.reset-size1.size6{font-size:2em}.katex .fontsize-ensurer.reset-size1.size7,.katex .katex-sizing.reset-size1.size7{font-size:2.4em}.katex .fontsize-ensurer.reset-size1.size8,.katex .katex-sizing.reset-size1.size8{font-size:2.88em}.katex .fontsize-ensurer.reset-size1.size9,.katex .katex-sizing.reset-size1.size9{font-size:3.456em}.katex .fontsize-ensurer.reset-size1.size10,.katex .katex-sizing.reset-size1.size10{font-size:4.148em}.katex .fontsize-ensurer.reset-size1.size11,.katex .katex-sizing.reset-size1.size11{font-size:4.976em}.katex .fontsize-ensurer.reset-size2.size1,.katex .katex-sizing.reset-size2.size1{font-size:.833333em}.katex .fontsize-ensurer.reset-size2.size2,.katex .katex-sizing.reset-size2.size2{font-size:1em}.katex .fontsize-ensurer.reset-size2.size3,.katex .katex-sizing.reset-size2.size3{font-size:1.16667em}.katex .fontsize-ensurer.reset-size2.size4,.katex .katex-sizing.reset-size2.size4{font-size:1.33333em}.katex .fontsize-ensurer.reset-size2.size5,.katex .katex-sizing.reset-size2.size5{font-size:1.5em}.katex .fontsize-ensurer.reset-size2.size6,.katex .katex-sizing.reset-size2.size6{font-size:1.66667em}.katex .fontsize-ensurer.reset-size2.size7,.katex .katex-sizing.reset-size2.size7{font-size:2em}.katex .fontsize-ensurer.reset-size2.size8,.katex .katex-sizing.reset-size2.size8{font-size:2.4em}.katex .fontsize-ensurer.reset-size2.size9,.katex .katex-sizing.reset-size2.size9{font-size:2.88em}.katex .fontsize-ensurer.reset-size2.size10,.katex .katex-sizing.reset-size2.size10{font-size:3.45667em}.katex .fontsize-ensurer.reset-size2.size11,.katex .katex-sizing.reset-size2.size11{font-size:4.14667em}.katex .fontsize-ensurer.reset-size3.size1,.katex .katex-sizing.reset-size3.size1{font-size:.714286em}.katex .fontsize-ensurer.reset-size3.size2,.katex .katex-sizing.reset-size3.size2{font-size:.857143em}.katex .fontsize-ensurer.reset-size3.size3,.katex .katex-sizing.reset-size3.size3{font-size:1em}.katex .fontsize-ensurer.reset-size3.size4,.katex .katex-sizing.reset-size3.size4{font-size:1.14286em}.katex .fontsize-ensurer.reset-size3.size5,.katex .katex-sizing.reset-size3.size5{font-size:1.28571em}.katex .fontsize-ensurer.reset-size3.size6,.katex .katex-sizing.reset-size3.size6{font-size:1.42857em}.katex .fontsize-ensurer.reset-size3.size7,.katex .katex-sizing.reset-size3.size7{font-size:1.71429em}.katex .fontsize-ensurer.reset-size3.size8,.katex .katex-sizing.reset-size3.size8{font-size:2.05714em}.katex .fontsize-ensurer.reset-size3.size9,.katex .katex-sizing.reset-size3.size9{font-size:2.46857em}.katex .fontsize-ensurer.reset-size3.size10,.katex .katex-sizing.reset-size3.size10{font-size:2.96286em}.katex .fontsize-ensurer.reset-size3.size11,.katex .katex-sizing.reset-size3.size11{font-size:3.55429em}.katex .fontsize-ensurer.reset-size4.size1,.katex .katex-sizing.reset-size4.size1{font-size:.625em}.katex .fontsize-ensurer.reset-size4.size2,.katex .katex-sizing.reset-size4.size2{font-size:.75em}.katex .fontsize-ensurer.reset-size4.size3,.katex .katex-sizing.reset-size4.size3{font-size:.875em}.katex .fontsize-ensurer.reset-size4.size4,.katex .katex-sizing.reset-size4.size4{font-size:1em}.katex .fontsize-ensurer.reset-size4.size5,.katex .katex-sizing.reset-size4.size5{font-size:1.125em}.katex .fontsize-ensurer.reset-size4.size6,.katex .katex-sizing.reset-size4.size6{font-size:1.25em}.katex .fontsize-ensurer.reset-size4.size7,.katex .katex-sizing.reset-size4.size7{font-size:1.5em}.katex .fontsize-ensurer.reset-size4.size8,.katex .katex-sizing.reset-size4.size8{font-size:1.8em}.katex .fontsize-ensurer.reset-size4.size9,.katex .katex-sizing.reset-size4.size9{font-size:2.16em}.katex .fontsize-ensurer.reset-size4.size10,.katex .katex-sizing.reset-size4.size10{font-size:2.5925em}.katex .fontsize-ensurer.reset-size4.size11,.katex .katex-sizing.reset-size4.size11{font-size:3.11em}.katex .fontsize-ensurer.reset-size5.size1,.katex .katex-sizing.reset-size5.size1{font-size:.555556em}.katex .fontsize-ensurer.reset-size5.size2,.katex .katex-sizing.reset-size5.size2{font-size:.666667em}.katex .fontsize-ensurer.reset-size5.size3,.katex .katex-sizing.reset-size5.size3{font-size:.777778em}.katex .fontsize-ensurer.reset-size5.size4,.katex .katex-sizing.reset-size5.size4{font-size:.888889em}.katex .fontsize-ensurer.reset-size5.size5,.katex .katex-sizing.reset-size5.size5{font-size:1em}.katex .fontsize-ensurer.reset-size5.size6,.katex .katex-sizing.reset-size5.size6{font-size:1.11111em}.katex .fontsize-ensurer.reset-size5.size7,.katex .katex-sizing.reset-size5.size7{font-size:1.33333em}.katex .fontsize-ensurer.reset-size5.size8,.katex .katex-sizing.reset-size5.size8{font-size:1.6em}.katex .fontsize-ensurer.reset-size5.size9,.katex .katex-sizing.reset-size5.size9{font-size:1.92em}.katex .fontsize-ensurer.reset-size5.size10,.katex .katex-sizing.reset-size5.size10{font-size:2.30444em}.katex .fontsize-ensurer.reset-size5.size11,.katex .katex-sizing.reset-size5.size11{font-size:2.76444em}.katex .fontsize-ensurer.reset-size6.size1,.katex .katex-sizing.reset-size6.size1{font-size:.5em}.katex .fontsize-ensurer.reset-size6.size2,.katex .katex-sizing.reset-size6.size2{font-size:.6em}.katex .fontsize-ensurer.reset-size6.size3,.katex .katex-sizing.reset-size6.size3{font-size:.7em}.katex .fontsize-ensurer.reset-size6.size4,.katex .katex-sizing.reset-size6.size4{font-size:.8em}.katex .fontsize-ensurer.reset-size6.size5,.katex .katex-sizing.reset-size6.size5{font-size:.9em}.katex .fontsize-ensurer.reset-size6.size6,.katex .katex-sizing.reset-size6.size6{font-size:1em}.katex .fontsize-ensurer.reset-size6.size7,.katex .katex-sizing.reset-size6.size7{font-size:1.2em}.katex .fontsize-ensurer.reset-size6.size8,.katex .katex-sizing.reset-size6.size8{font-size:1.44em}.katex .fontsize-ensurer.reset-size6.size9,.katex .katex-sizing.reset-size6.size9{font-size:1.728em}.katex .fontsize-ensurer.reset-size6.size10,.katex .katex-sizing.reset-size6.size10{font-size:2.074em}.katex .fontsize-ensurer.reset-size6.size11,.katex .katex-sizing.reset-size6.size11{font-size:2.488em}.katex .fontsize-ensurer.reset-size7.size1,.katex .katex-sizing.reset-size7.size1{font-size:.416667em}.katex .fontsize-ensurer.reset-size7.size2,.katex .katex-sizing.reset-size7.size2{font-size:.5em}.katex .fontsize-ensurer.reset-size7.size3,.katex .katex-sizing.reset-size7.size3{font-size:.583333em}.katex .fontsize-ensurer.reset-size7.size4,.katex .katex-sizing.reset-size7.size4{font-size:.666667em}.katex .fontsize-ensurer.reset-size7.size5,.katex .katex-sizing.reset-size7.size5{font-size:.75em}.katex .fontsize-ensurer.reset-size7.size6,.katex .katex-sizing.reset-size7.size6{font-size:.833333em}.katex .fontsize-ensurer.reset-size7.size7,.katex .katex-sizing.reset-size7.size7{font-size:1em}.katex .fontsize-ensurer.reset-size7.size8,.katex .katex-sizing.reset-size7.size8{font-size:1.2em}.katex .fontsize-ensurer.reset-size7.size9,.katex .katex-sizing.reset-size7.size9{font-size:1.44em}.katex .fontsize-ensurer.reset-size7.size10,.katex .katex-sizing.reset-size7.size10{font-size:1.72833em}.katex .fontsize-ensurer.reset-size7.size11,.katex .katex-sizing.reset-size7.size11{font-size:2.07333em}.katex .fontsize-ensurer.reset-size8.size1,.katex .katex-sizing.reset-size8.size1{font-size:.347222em}.katex .fontsize-ensurer.reset-size8.size2,.katex .katex-sizing.reset-size8.size2{font-size:.416667em}.katex .fontsize-ensurer.reset-size8.size3,.katex .katex-sizing.reset-size8.size3{font-size:.486111em}.katex .fontsize-ensurer.reset-size8.size4,.katex .katex-sizing.reset-size8.size4{font-size:.555556em}.katex .fontsize-ensurer.reset-size8.size5,.katex .katex-sizing.reset-size8.size5{font-size:.625em}.katex .fontsize-ensurer.reset-size8.size6,.katex .katex-sizing.reset-size8.size6{font-size:.694444em}.katex .fontsize-ensurer.reset-size8.size7,.katex .katex-sizing.reset-size8.size7{font-size:.833333em}.katex .fontsize-ensurer.reset-size8.size8,.katex .katex-sizing.reset-size8.size8{font-size:1em}.katex .fontsize-ensurer.reset-size8.size9,.katex .katex-sizing.reset-size8.size9{font-size:1.2em}.katex .fontsize-ensurer.reset-size8.size10,.katex .katex-sizing.reset-size8.size10{font-size:1.44028em}.katex .fontsize-ensurer.reset-size8.size11,.katex .katex-sizing.reset-size8.size11{font-size:1.72778em}.katex .fontsize-ensurer.reset-size9.size1,.katex .katex-sizing.reset-size9.size1{font-size:.289352em}.katex .fontsize-ensurer.reset-size9.size2,.katex .katex-sizing.reset-size9.size2{font-size:.347222em}.katex .fontsize-ensurer.reset-size9.size3,.katex .katex-sizing.reset-size9.size3{font-size:.405093em}.katex .fontsize-ensurer.reset-size9.size4,.katex .katex-sizing.reset-size9.size4{font-size:.462963em}.katex .fontsize-ensurer.reset-size9.size5,.katex .katex-sizing.reset-size9.size5{font-size:.520833em}.katex .fontsize-ensurer.reset-size9.size6,.katex .katex-sizing.reset-size9.size6{font-size:.578704em}.katex .fontsize-ensurer.reset-size9.size7,.katex .katex-sizing.reset-size9.size7{font-size:.694444em}.katex .fontsize-ensurer.reset-size9.size8,.katex .katex-sizing.reset-size9.size8{font-size:.833333em}.katex .fontsize-ensurer.reset-size9.size9,.katex .katex-sizing.reset-size9.size9{font-size:1em}.katex .fontsize-ensurer.reset-size9.size10,.katex .katex-sizing.reset-size9.size10{font-size:1.20023em}.katex .fontsize-ensurer.reset-size9.size11,.katex .katex-sizing.reset-size9.size11{font-size:1.43981em}.katex .fontsize-ensurer.reset-size10.size1,.katex .katex-sizing.reset-size10.size1{font-size:.24108em}.katex .fontsize-ensurer.reset-size10.size2,.katex .katex-sizing.reset-size10.size2{font-size:.289296em}.katex .fontsize-ensurer.reset-size10.size3,.katex .katex-sizing.reset-size10.size3{font-size:.337512em}.katex .fontsize-ensurer.reset-size10.size4,.katex .katex-sizing.reset-size10.size4{font-size:.385728em}.katex .fontsize-ensurer.reset-size10.size5,.katex .katex-sizing.reset-size10.size5{font-size:.433944em}.katex .fontsize-ensurer.reset-size10.size6,.katex .katex-sizing.reset-size10.size6{font-size:.48216em}.katex .fontsize-ensurer.reset-size10.size7,.katex .katex-sizing.reset-size10.size7{font-size:.578592em}.katex .fontsize-ensurer.reset-size10.size8,.katex .katex-sizing.reset-size10.size8{font-size:.694311em}.katex .fontsize-ensurer.reset-size10.size9,.katex .katex-sizing.reset-size10.size9{font-size:.833173em}.katex .fontsize-ensurer.reset-size10.size10,.katex .katex-sizing.reset-size10.size10{font-size:1em}.katex .fontsize-ensurer.reset-size10.size11,.katex .katex-sizing.reset-size10.size11{font-size:1.19961em}.katex .fontsize-ensurer.reset-size11.size1,.katex .katex-sizing.reset-size11.size1{font-size:.200965em}.katex .fontsize-ensurer.reset-size11.size2,.katex .katex-sizing.reset-size11.size2{font-size:.241158em}.katex .fontsize-ensurer.reset-size11.size3,.katex .katex-sizing.reset-size11.size3{font-size:.281351em}.katex .fontsize-ensurer.reset-size11.size4,.katex .katex-sizing.reset-size11.size4{font-size:.321543em}.katex .fontsize-ensurer.reset-size11.size5,.katex .katex-sizing.reset-size11.size5{font-size:.361736em}.katex .fontsize-ensurer.reset-size11.size6,.katex .katex-sizing.reset-size11.size6{font-size:.401929em}.katex .fontsize-ensurer.reset-size11.size7,.katex .katex-sizing.reset-size11.size7{font-size:.482315em}.katex .fontsize-ensurer.reset-size11.size8,.katex .katex-sizing.reset-size11.size8{font-size:.578778em}.katex .fontsize-ensurer.reset-size11.size9,.katex .katex-sizing.reset-size11.size9{font-size:.694534em}.katex .fontsize-ensurer.reset-size11.size10,.katex .katex-sizing.reset-size11.size10{font-size:.833601em}.katex .fontsize-ensurer.reset-size11.size11,.katex .katex-sizing.reset-size11.size11{font-size:1em}.katex .delimsizing.size1{font-family:KaTeX_Size1}.katex .delimsizing.size2{font-family:KaTeX_Size2}.katex .delimsizing.size3{font-family:KaTeX_Size3}.katex .delimsizing.size4{font-family:KaTeX_Size4}.katex .delimsizing.mult .delim-size1>span{font-family:KaTeX_Size1}.katex .delimsizing.mult .delim-size4>span{font-family:KaTeX_Size4}.katex .nulldelimiter{width:.12em;display:inline-block}.katex .delimcenter,.katex .op-symbol{position:relative}.katex .op-symbol.small-op{font-family:KaTeX_Size1}.katex .op-symbol.large-op{font-family:KaTeX_Size2}.katex .katex-accent>.vlist-t,.katex .op-limits>.vlist-t{text-align:center}.katex .katex-accent .accent-body{position:relative}.katex .katex-accent .accent-body:not(.accent-full){width:0}.katex .katex-overlay{display:block}.katex .mtable .vertical-separator{min-width:1px;display:inline-block}.katex .mtable .arraycolsep{display:inline-block}.katex .mtable .col-align-c>.vlist-t{text-align:center}.katex .mtable .col-align-l>.vlist-t{text-align:left}.katex .mtable .col-align-r>.vlist-t{text-align:right}.katex .svg-align{text-align:left}.katex svg{fill:currentColor;stroke:currentColor;height:inherit;width:100%;display:block;position:absolute}.katex svg path{stroke:none}.katex svg{fill-rule:nonzero;fill-opacity:1;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1}.katex img{border-style:none;min-width:0;max-width:none;min-height:0;max-height:none}.katex .katex-stretchy{width:100%;display:block;position:relative;overflow:hidden}.katex .katex-stretchy:after,.katex .katex-stretchy:before{content:""}.katex .hide-tail{width:100%;position:relative;overflow:hidden}.katex .halfarrow-left{width:50.2%;position:absolute;left:0;overflow:hidden}.katex .halfarrow-right{width:50.2%;position:absolute;right:0;overflow:hidden}.katex .brace-left{width:25.1%;position:absolute;left:0;overflow:hidden}.katex .brace-center{width:50%;position:absolute;left:25%;overflow:hidden}.katex .brace-right{width:25.1%;position:absolute;right:0;overflow:hidden}.katex .x-arrow-pad{padding:0 .5em}.katex .cd-arrow-pad{padding:0 .55556em 0 .27778em}.katex .mover,.katex .munder,.katex .x-arrow{text-align:center}.katex .boxpad{padding:0 .3em}.katex .fbox,.katex .fcolorbox{box-sizing:border-box;border:.04em solid}.katex .cancel-pad{padding:0 .2em}.katex .cancel-lap{margin-left:-.2em;margin-right:-.2em}.katex .katex-sout{border-bottom-style:solid;border-bottom-width:.08em}.katex .angl{box-sizing:border-box;border-top:.049em solid;border-right:.049em solid;margin-right:.03889em}.katex .anglpad{padding:0 .03889em}.katex .reflectbox{display:inline-block;transform:scaleX(-1)}.katex .eqn-num:before{content:"(" counter(katexEqnNo) ")";counter-increment:katexEqnNo}.katex .mml-eqn-num:before{content:"(" counter(mmlEqnNo) ")";counter-increment:mmlEqnNo}.katex .mtr-glue{width:50%}.katex .cd-vert-arrow{display:inline-block;position:relative}.katex .cd-label-left{text-align:left;display:inline-block;position:absolute;right:calc(50% + .3em)}.katex .cd-label-right{text-align:right;display:inline-block;position:absolute;left:calc(50% + .3em)}.katex-display{text-align:center;margin:1em 0;display:block}.katex-display>.katex{text-align:center;white-space:nowrap;display:block}.katex-display>.katex>.katex-html{display:block;position:relative}.katex-display>.katex>.katex-html>.katex-tag{position:absolute;right:0}.katex-display.leqno>.katex>.katex-html>.katex-tag{left:0;right:auto}.katex-display.fleqn>.katex{text-align:left;padding-left:2em}body{counter-reset:katexEqnNo mmlEqnNo}.exam-field-lexical{display:contents}.exam-field-lexical .le-content-editable{color:inherit}.ev-root{color:#d1d7dc;background:#1c1d1f;flex-direction:column;flex:1;min-height:0;display:flex;position:relative;overflow:hidden}.ev-slide-region{box-sizing:border-box;flex-direction:column;flex:1;align-items:center;width:100%;min-height:0;padding:2rem 2.5rem 6rem;display:flex;overflow-y:auto}.ev-slide-region>*{max-width:var(--cp-content-width,960px);width:100%}.ev-empty{color:#6a6f73;text-align:center;margin:auto;font-size:1.25rem;font-style:italic}.ev-intro-slide{max-width:var(--cp-content-width,960px);flex-direction:column;align-items:flex-start;gap:1.25rem;width:100%;display:flex}.ev-intro-icon{color:var(--cp-accent-subtle,#2563eb);font-size:2.5rem;line-height:1}.ev-intro-title{color:#fff;margin:0;font-size:clamp(1.75rem,3.5vw,2.5rem);font-weight:700;line-height:1.2}.ev-intro-desc{color:#9ca3af;margin:0;font-size:1rem;line-height:1.65}.ev-intro-meta{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:.75rem;width:100%;display:grid}.ev-intro-meta-item{background:#2d2f31;border:1px solid #3e4143;border-radius:8px;flex-direction:column;gap:.25rem;padding:.75rem 1rem;display:flex}.ev-intro-meta-label{text-transform:uppercase;letter-spacing:.06em;color:#6a6f73;font-size:.6875rem}.ev-intro-meta-value{color:#fff;font-size:1.25rem;font-weight:700}.ev-attempt-history{background:var(--cp-bg-secondary,#2d2f31);border:1px solid var(--cp-border,#3e4143);border-radius:8px;margin:1rem 0;padding:1rem 1.25rem}.ev-attempt-history-rows{flex-direction:column;gap:.375rem;display:flex}.ev-attempt-history-row{color:var(--cp-text,#d1d7dc);font-size:.875rem}.ev-attempt-history-score{color:var(--cp-accent-subtle,#93c5fd);font-weight:600}.ev-attempt-history-link{color:var(--cp-accent-subtle,#93c5fd);font-size:inherit;cursor:pointer;background:0 0;border:none;padding:0;font-weight:500;text-decoration:underline;display:inline}.ev-attempt-history-link:focus-visible{outline:2px solid var(--cp-accent,#2563eb);outline-offset:2px}.ev-attempt-history-count{color:var(--cp-text-muted,#9ca3af)}.ev-intro-progress-note{color:#93c5fd;background:#2563eb26;border:1px solid #2563eb4d;border-radius:6px;margin:0;padding:.625rem .875rem;font-size:.875rem}.ev-server-error{color:#92400e;background:#fffbeb;border:1px solid #fcd34d;border-radius:6px;margin:0 0 .75rem;padding:.625rem .875rem;font-size:.875rem;line-height:1.4}.ev-inline-icon{vertical-align:-.125em;margin-right:.125rem}.ev-intro-progress-note.ev-resume-note{margin:0 0 .75rem}.ev-timer{font-variant-numeric:tabular-nums;color:#374151;white-space:nowrap;background:#f1f5f9;border-radius:6px;padding:.25rem .625rem;font-size:.9375rem;font-weight:600}.ev-timer--warn{color:#b91c1c;background:#fee2e2}.ev-flag-btn{align-items:center;gap:.25rem;display:inline-flex}.ev-flag-btn--on{color:#92400e;background:#fffbeb;border-color:#fcd34d}.ev-summary-group{margin-bottom:.75rem}.ev-summary-group .ev-summary-hint{margin:0 0 .375rem}.ev-summary-jumps{flex-wrap:wrap;gap:.375rem;margin:0;padding:0;list-style:none;display:flex}.ev-jump-btn{padding:.25rem .625rem;font-size:.8125rem}.ev-sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.ev-start-btn{color:#3b82f6;cursor:pointer;background:0 0;border:1px solid #3b82f6;border-radius:6px;padding:.625rem 1.5rem;font-size:.875rem;font-weight:500;transition:background-color .15s,color .15s}.ev-start-btn:hover{color:#fff;background:#3b82f6}.ev-start-btn:active{transform:scale(.98)}.ev-start-btn:focus-visible{outline-offset:2px;outline:2px solid #93c5fd}.ev-content-wrap{width:100%}.ev-question-slide{max-width:var(--cp-content-width,960px);width:100%}.ev-back-to-intro-btn{color:#3b82f6;cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #3b82f6;border-radius:6px;padding:.5rem 1rem;font-size:.8125rem;font-weight:500;transition:background-color .15s,color .15s}.ev-back-to-intro-btn:hover{color:#fff;background:#3b82f6}.ev-slide-top-nav{justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.75em;display:flex}.ev-slide-top-nav-right{gap:.5rem;display:flex}.ev-slide-bottom-nav{justify-content:flex-end;gap:.5rem;margin-top:auto;padding-top:1em;display:flex}@media (width<=640px){.ev-slide-top-nav{flex-wrap:wrap}.ev-slide-top-nav-right{flex-wrap:nowrap;margin-left:auto}.ev-slide-top-nav [data-testid=ev-section-breadcrumb] button{white-space:nowrap}}@media (width<=420px){.ev-flag-label{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.ev-flag-btn{justify-content:center;min-width:2.25rem}}.cue-overlay--exam .ev-root{color:#111827;background:0 0;flex:1;min-height:0}.cue-overlay--exam .ev-q-text{color:#111827}.cue-overlay__body--exam{flex-direction:column;display:flex}.cue-overlay--exam .ev-slide-region{color:#111827;flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.cue-overlay--exam .ev-slide-region>*{flex-direction:column;flex:1;display:flex}.cue-overlay--exam .ev-slide-top-nav{display:none}.cue-overlay--exam .ev-slide-bottom-nav{background:#fff;border-top:1px solid #e5e7eb;justify-content:flex-end;gap:.5rem;padding:1.5rem 2.5rem;display:flex;position:absolute;bottom:0;left:0;right:0}.cue-overlay--exam .ev-slide-region{padding-bottom:6rem;position:relative}.ev-nav-btn-compact{min-height:unset!important;padding:.3rem .75rem!important;font-size:.8125rem!important}.ev-inline-nav-btn{color:#3b82f6;cursor:pointer;background:0 0;border:1px solid #3b82f6;border-radius:6px;padding:.5rem 1.25rem;font-size:.875rem;font-weight:500;transition:background-color .15s,color .15s}.ev-inline-nav-btn--primary{color:#3b82f6;background:0 0;border-color:#3b82f6;font-weight:500}.ev-inline-nav-btn--primary:hover:not(:disabled){color:#fff;background:#3b82f6;border-color:#3b82f6}.ev-inline-nav-btn:hover:not(:disabled){color:#fff;background:#3b82f6}.ev-inline-nav-btn:disabled{opacity:.4;cursor:not-allowed}.ev-inline-submit-btn{color:#3b82f6;background:0 0;border-color:#3b82f6;font-weight:500}.ev-inline-submit-btn:hover:not(:disabled){color:#fff;background:#3b82f6;border-color:#3b82f6}.ev-answer-review-cards{flex-direction:column;gap:.75rem;margin:1em 0;display:flex}.ev-answer-review-card{background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:1rem 1.25rem}.ev-answer-review-card--unanswered{border-left:4px solid #eab308}.ev-answer-review-card__header{align-items:center;gap:.75rem;margin-bottom:.5rem;display:flex}.ev-answer-review-card__number{color:#6b7280;font-size:.875rem;font-weight:700}.ev-answer-review-card__badge{color:#d97706;background:#fef3c7;border-radius:4px;padding:.2rem .5rem;font-size:.75rem;font-weight:600}.ev-answer-review-card__question{color:#1f2937;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;margin-bottom:.5rem;padding:.75rem 1rem;font-size:.95rem;line-height:1.5}.ev-answer-review-card__question .le-content-editable{min-height:unset;padding:0}.ev-answer-review-card__question .le-container{background:0 0;border:none}.ev-answer-review-card__row{border:1px solid #f3f4f6;border-radius:6px;align-items:flex-start;gap:.75rem;padding:.5rem 1rem;font-size:.875rem;display:flex}.ev-answer-review-card__label{color:#6b7280;flex-shrink:0;min-width:90px;font-weight:600}.ev-answer-review-card__value{color:#1f2937;word-break:break-word;flex:1}.ev-answer-review-card__value .le-content-editable{min-height:unset;padding:0}.ev-answer-review-card__value .le-container{background:0 0;border:none}.ev-answer-review-table-wrap{border:1px solid #3e4143;border-radius:8px;margin:1em 0;overflow-x:auto}.ev-answer-review-table{border-collapse:collapse;width:100%;font-size:.875em}.ev-answer-review-table th{text-align:left;color:#9ca3af;white-space:nowrap;background:#2d2f31;border-bottom:1px solid #3e4143;padding:.625em .875em;font-weight:600}.ev-answer-review-table td{vertical-align:middle;color:#d1d7dc;border-bottom:1px solid #2d2f31;padding:.625em .875em}.ev-answer-review-table tbody tr:last-child td{border-bottom:none}.ev-answer-review-unanswered{background:#eab30814}.ev-answer-review-num{text-align:center;width:40px;font-weight:600}.ev-answer-review-answer{word-break:break-word;max-width:200px}.ev-answer-review-status{text-align:center;width:50px}.ev-answer-review-badge{border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;font-size:.8rem;font-weight:700;display:inline-flex}.ev-answer-review-badge--answered{color:#68d391;background:#1a2e1a}.ev-answer-review-badge--unanswered{color:#eab308;background:#2e2a16}.ev-q-header{align-items:center;gap:.75rem;margin-bottom:1.25rem;display:flex}.ev-q-number{text-transform:uppercase;letter-spacing:.06em;color:#9ca3af;font-size:.8125rem;font-weight:700}.ev-q-points{color:#6a6f73;background:#2d2f31;border:1px solid #3e4143;border-radius:9999px;padding:.15rem .5rem;font-size:.75rem}.ev-q-result-badge{border-radius:9999px;margin-left:auto;padding:.2rem .625rem;font-size:.8125rem;font-weight:700}.ev-q-result-badge--correct{color:#16a34a;background:#dcfce7;border:1px solid #86efac}.ev-q-result-badge--incorrect{color:#dc2626;background:#fee2e2;border:1px solid #fca5a5}.ev-root .ev-q-result-badge--correct{color:#68d391;background:#1a2e1a;border-color:#48bb78}.ev-root .ev-q-result-badge--incorrect{color:#fc8181;background:#2e1a1a;border-color:#e53e3e}.ev-q-text{color:#fff;margin:0 0 1.25em;font-size:1.25em;line-height:1.55}.ev-mp-parts{flex-direction:column;gap:1.25em;display:flex}.ev-mp-part{align-items:flex-start;gap:.75em;display:flex}.ev-mp-label{box-sizing:border-box;text-align:center;opacity:.75;border:1px solid;border-radius:9999px;flex:none;width:2.25em;padding:.1em .5em;font-size:.875em;font-weight:700}.ev-mp-body{flex:1;min-width:0}.ev-mp-body>.ev-mp-parts{border-left:2px solid #7f7f7f40;padding-left:.75em}.ev-mp-stem{margin:0 0 .75em;line-height:1.55}.ev-mp-marks{opacity:.7;white-space:nowrap;margin-left:.5em;font-size:.8125em}.ev-options{flex-direction:column;gap:.5em;display:flex}.ev-option{cursor:pointer;color:#d1d7dc;background:#2d2f31;border:1px solid #3e4143;border-radius:6px;align-items:center;gap:.75em;padding:.625em .875em;font-size:1em;line-height:1.4;transition:background-color .1s,border-color .1s;display:flex}.ev-option:hover:not(:has(input:disabled)){background:#3e4143;border-color:#6a6f73}.ev-option input[type=radio],.ev-option input[type=checkbox]{accent-color:#2563eb;cursor:pointer;flex-shrink:0;width:1.125rem;height:1.125rem}.ev-option input[type=radio]:disabled,.ev-option input[type=checkbox]:disabled{cursor:not-allowed}.ev-option--selected{background:#1e3a5f;border-color:#2563eb}.ev-option--correct-answer{background:#4ade8040;border-color:#4ade80}.ev-option--wrong-pick{background:#f8717140;border-color:#f87171}.ev-root .ev-option--correct-answer{background:#48bb7840;border-color:#48bb78}.ev-root .ev-option--wrong-pick{background:#e53e3e40;border-color:#fc8181}.ev-option-text{flex:1}.ev-q-text .le-content-editable,.ev-option-text .le-content-editable,.ev-explanation .le-content-editable{min-height:unset;padding:0}.ev-q-text .le-container,.ev-option-text .le-container,.ev-explanation .le-container{background:0 0;border:none}.ev-short-answer-input{color:#d1d7dc;box-sizing:border-box;background:#2d2f31;border:1px solid #3e4143;border-radius:6px;width:100%;padding:.75rem 1rem;font-size:1rem;transition:border-color .15s,box-shadow .15s}.ev-short-answer-input:focus{border-color:#2563eb;outline:none;box-shadow:0 0 0 2px #2563eb4d}.ev-short-answer-input:disabled{color:#6a6f73;cursor:not-allowed;background:#1c1d1f}.ev-short-answer-input::placeholder{color:#4a5568}.ev-explanation{color:#9ca3af;background:#2d2f31;border-left:3px solid #2563eb;border-radius:6px;margin:1.25rem 0 0;padding:.75rem 1rem;font-size:.9375rem;line-height:1.55}.ev-review-summary-canvas{max-width:var(--cp-content-width,960px);flex-direction:column;align-items:stretch;gap:1.25rem;width:100%;display:flex}.ev-review-summary-canvas .exam-review-summary{padding-top:0}.ev-review-summary-canvas .exam-review-title{color:#1c1d1f;margin:0;font-size:clamp(1.5rem,3vw,2.25rem);font-weight:700}.ev-review-summary-canvas .exam-review-header__top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.5rem;display:flex}.ev-review-summary-canvas .review-score-banner{border-radius:8px;padding:1.25rem 1.5rem}.ev-review-summary-canvas .review-score-banner.passed{color:#15803d;background:#48bb7826;border:1px solid #48bb78}.ev-review-summary-canvas .review-score-banner.failed{color:#b91c1c;background:#e53e3e26;border:1px solid #fc8181}.ev-review-summary-canvas .review-score-value{font-size:2.5rem;font-weight:800;line-height:1}.ev-review-summary-canvas .review-score-label{font-size:1rem;font-weight:600}.ev-review-summary-canvas .review-score-stats{color:#4b5563;font-size:.875rem}.ev-review-summary-canvas .review-card{box-sizing:border-box;background:#fff;border:1px solid #e5e7eb;border-radius:8px;flex:0 0 calc(20% - .4rem);padding:.625rem .5rem}.ev-review-summary-canvas .review-cards{flex-wrap:wrap;justify-content:center;gap:.5rem;width:100%;flex-direction:row!important;display:flex!important}.ev-review-summary-canvas .review-card__question,.ev-review-summary-canvas .review-card__row{display:none}.ev-review-summary-canvas .review-card__header{flex-direction:column;align-items:center;gap:.375rem;padding:0}.ev-review-summary-canvas .review-card--correct{border-color:#4ade80}.ev-review-summary-canvas .review-card--incorrect{border-color:#f87171}.ev-review-summary-canvas .review-card__number{color:#1c1d1f;font-size:.8125rem;font-weight:700}.ev-review-summary-canvas .review-card__badge{border:1px solid;border-radius:9999px;padding:.15rem .4rem;font-size:.6875rem}.ev-review-summary-canvas .review-card__badge--correct{color:#16a34a;background:#dcfce7;border-color:#86efac}.ev-review-summary-canvas .review-card__badge--incorrect{color:#dc2626;background:#fee2e2;border-color:#fca5a5}.ev-review-summary-canvas .review-card__marks{display:none}.ev-review-summary-canvas .review-card__label{color:#6b7280}.ev-review-summary-canvas .review-card__value{color:#1c1d1f}.ev-review-summary-canvas .review-cards__total{color:#1c1d1f;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:8px;width:100%;margin-top:.25rem;padding:.75rem 1.25rem}.cue-overlay--exam .ev-explanation{margin:.625em 0 0;padding:.5em .75em;font-size:.875em;line-height:1.4}.cue-overlay--exam .ev-options{gap:.375em}.cue-overlay--exam .ev-option{padding:.5em .75em}.cue-overlay--exam .ev-q-header{margin-bottom:.4em}.cue-overlay--exam .ev-q-text{margin-bottom:.5em}.ev-summary-slide{flex-direction:column;gap:1rem;width:100%;display:flex}.ev-summary-title{color:#fff;font-size:clamp(1.5rem,3vw,2.25rem);font-weight:700;line-height:1.25}.ev-summary-desc{color:#9ca3af;margin:0;font-size:1rem;line-height:1.6}.ev-summary-meta{color:#6a6f73;flex-wrap:wrap;gap:1.25rem;font-size:.8125rem;display:flex}.ev-summary-actions{flex-direction:column;align-items:flex-start;gap:.875rem;margin-top:.5rem;display:flex}.ev-summary-answered{color:#9ca3af;margin:0;font-size:.9375rem}.ev-summary-hint{color:#6a6f73;margin:0;font-size:.8125rem;font-style:italic}.ev-submit-btn{color:#3b82f6;cursor:pointer;background:0 0;border:1px solid #3b82f6;border-radius:6px;padding:.625rem 1.5rem;font-size:.875rem;font-weight:500;transition:background-color .15s,color .15s}.ev-submit-btn:hover{color:#fff;background:#3b82f6}.ev-submit-btn:focus-visible{outline-offset:2px;outline:2px solid #93c5fd}.ev-result{box-sizing:border-box;border:1px solid;border-radius:8px;flex-wrap:wrap;align-items:center;gap:1rem;padding:1rem 1.25rem;display:flex}.ev-result--passed{color:#68d391;background:#1a2e1a;border-color:#48bb78}.ev-result--failed{color:#f6e05e;background:#2d2416;border-color:#d69e2e}.ev-result-icon{flex-shrink:0;font-size:1.75rem}.ev-result-details{flex-direction:column;flex:1;gap:.2rem;font-size:.9375rem;display:flex}.ev-result-details strong{font-size:1.125rem;font-weight:700}.ev-retry-btn{cursor:pointer;color:inherit;background:0 0;border:1px solid;border-radius:5px;padding:.5rem 1.125rem;font-size:.9rem;transition:background-color .15s}.ev-retry-btn:hover{background:#ffffff14}.ev-retry-btn:focus-visible{outline-offset:2px;outline:2px solid}.ev-nav{-webkit-backdrop-filter:blur(4px);z-index:10;opacity:1;pointer-events:auto;background:#1c1d1f59;border-top:1px solid #3e414340;justify-content:space-between;align-items:center;padding:.75rem 1.5rem;transition:opacity .4s,transform .4s;display:flex;position:absolute;bottom:0;left:0;right:0;transform:translateY(0)}.ev-nav--hidden{opacity:0;pointer-events:none;transform:translateY(100%)}.ev-nav-btn{color:#d1d7dc;cursor:pointer;background:#2d2f3180;border:1px solid #3e414380;border-radius:50%;justify-content:center;align-items:center;width:2.5rem;height:2.5rem;padding:0;font-size:1.25rem;line-height:1;transition:background-color .15s,border-color .15s,color .15s,opacity .15s;display:flex}.ev-nav-btn:hover{color:#fff;background:#2563ebd9;border-color:#2563eb}.ev-nav-btn:focus:not(:focus-visible){color:#d1d7dc;background:#2d2f3180;border-color:#3e414380}.ev-nav-btn:focus-visible{outline-offset:2px;outline:2px solid #2563eb}.ev-nav-btn:disabled{opacity:.2;cursor:not-allowed}.ev-nav-btn:disabled:hover{color:#d1d7dc;background:#2d2f3180;border-color:#3e414380}.ev-nav-progress{color:#9ca3af;-webkit-user-select:none;user-select:none;text-align:center;min-width:5rem;font-size:.9rem}.ev-nav-item-label{text-align:left;flex-direction:column;min-width:0;max-width:200px;display:flex}.ev-nav-next .ev-nav-item-label{text-align:right}.ev-nav-item-hint{text-transform:uppercase;letter-spacing:.06em;color:#6a6f73;margin-bottom:.1rem;font-size:.6875rem}.ev-nav-item-title{color:#d1d7dc;text-overflow:ellipsis;white-space:nowrap;font-size:.8125rem;font-weight:500;overflow:hidden}@media (width<=767px){.ev-slide-region{padding:2rem 1.25rem 5.5rem}.ev-q-text{font-size:1.125rem}.ev-nav{padding:.75rem 1rem}}.ev-modal-backdrop{-webkit-backdrop-filter:blur(3px);z-index:1000;background:#000000b3;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.ev-modal{background:#2d2f31;border:1px solid #3e4143;border-radius:12px;flex-direction:column;gap:1rem;width:100%;max-width:440px;padding:2rem;display:flex;box-shadow:0 20px 60px #00000080}.ev-modal-icon{color:#f59e0b;font-size:2rem;line-height:1}.ev-modal-title{color:#fff;margin:0;font-size:1.25rem;font-weight:700}.ev-modal-body{color:#9ca3af;margin:0;font-size:.9375rem;line-height:1.6}.ev-modal-actions{flex-wrap:wrap;gap:.75rem;margin-top:.25rem;display:flex}.ev-modal-stay-btn{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:6px;flex:1;padding:.75rem 1.25rem;font-size:.9375rem;font-weight:600;transition:background-color .15s}.ev-modal-stay-btn:hover{background:#1d4ed8}.ev-modal-stay-btn:focus-visible{outline-offset:2px;outline:2px solid #93c5fd}.ev-modal-leave-btn{color:#9ca3af;cursor:pointer;background:0 0;border:1px solid #3e4143;border-radius:6px;padding:.75rem 1.25rem;font-size:.9375rem;transition:background-color .15s,border-color .15s,color .15s}.ev-modal-leave-btn:hover{color:#d1d7dc;background:#3e4143;border-color:#6a6f73}.ev-modal-leave-btn:focus-visible{outline-offset:2px;outline:2px solid #6a6f73}.ev-result-actions{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:16px;display:flex}.ev-review-btn{color:#3b82f6;cursor:pointer;background:0 0;border:1px solid #3b82f6;border-radius:6px;padding:.5rem 1rem;font-size:.875rem;font-weight:500;transition:background-color .15s,color .15s}.ev-review-btn:hover{color:#fff;background:#3b82f6}.ev-review-overlay{color:#d1d7dc;z-index:10;border-radius:inherit;background:#1c1d1f;flex-direction:column;gap:14px;padding:20px 24px 24px;display:flex;position:absolute;inset:0;overflow-y:auto}.ev-review-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.ev-review-score-row{align-items:center;gap:12px;display:flex}.ev-review-score-badge{border-radius:20px;padding:3px 12px;font-size:.95rem;font-weight:700}.ev-review-passed{color:#bbf7d0;background:#166534}.ev-review-failed{color:#fecaca;background:#7f1d1d}.ev-review-tally{color:#9ca3af;font-size:.875rem}.ev-review-close-btn{color:#9ca3af;cursor:pointer;background:0 0;border:1px solid #4b5563;border-radius:6px;padding:4px 14px;font-size:.85rem;transition:background .15s,color .15s}.ev-review-close-btn:hover{color:#f9fafb;background:#374151}.ev-review-progress{color:#9ca3af;flex-direction:column;gap:5px;font-size:.8rem;display:flex}.ev-review-progress-bar{background:#374151;border-radius:2px;height:4px;overflow:hidden}.ev-review-progress-fill{background:#3b82f6;border-radius:2px;height:100%;transition:width .2s}.ev-review-question-card{border-radius:8px;flex-direction:column;flex:1;gap:12px;padding:16px;display:flex}.ev-review-correct{background:#052e16;border:1px solid #166534}.ev-review-incorrect{background:#450a0a;border:1px solid #7f1d1d}.ev-review-question-text{margin:0;font-size:1rem;font-weight:500;line-height:1.5}.ev-review-options{flex-direction:column;gap:8px;display:flex}.ev-review-opt{background:#1f2937;border:1px solid #374151;border-radius:6px;align-items:center;gap:8px;padding:8px 12px;font-size:.9rem;display:flex}.ev-review-opt-indicator{flex-shrink:0;width:18px;font-weight:700}.ev-review-opt-tag{color:#ef4444;margin-left:4px;font-size:.8rem;font-style:italic}.ev-review-opt-correct-tag{color:#4ade80}.ev-review-sa{flex-direction:column;gap:8px;display:flex}.ev-review-sa-row{border-radius:6px;gap:10px;padding:8px 12px;font-size:.9rem;display:flex}.ev-review-sa-label{color:#9ca3af;min-width:110px;font-weight:600}.ev-review-explanation{color:#93c5fd;background:#1e3a5f;border-left:3px solid #3b82f6;border-radius:0 4px 4px 0;padding:8px 12px;font-size:.875rem}.ev-review-nav{justify-content:space-between;gap:10px;padding-top:4px;display:flex}.ev-review-nav-btn{color:#d1d7dc;cursor:pointer;background:#374151;border:1px solid #4b5563;border-radius:6px;padding:8px 18px;font-size:.875rem;font-weight:500;transition:background .15s}.ev-review-nav-btn:hover:not(:disabled){background:#4b5563}.ev-review-nav-btn:disabled{opacity:.4;cursor:not-allowed}.ev-review-close-nav-btn{flex:1}.ev-review-finish-btn{color:#fff;background:#2563eb;border-color:#2563eb}.ev-review-finish-btn:hover{background:#1d4ed8}.ev-review-outcomes{border-top:1px solid #374151;padding-top:10px}.ev-review-outcomes-title{color:#9ca3af;text-transform:uppercase;letter-spacing:.05em;margin:0 0 8px;font-size:.75rem;font-weight:600}.ev-review-outcomes-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.ev-review-outcome-item{color:#bfdbfe;background:#1e3a5f;border-radius:4px;align-items:baseline;gap:8px;padding:6px 10px;font-size:.85rem;display:flex}.ev-review-outcome-ref{color:#60a5fa;flex-shrink:0;font-weight:700}.ev-on-paper-note,.ev-paper-section-note{color:#92400e;background:#fef3c7;border-radius:6px;margin:1rem 0;padding:.625rem .875rem;font-size:.875rem}.ev-paper-section-note p,.ev-on-paper-note p{margin:0}.ev-on-paper-note .ev-on-paper-feedback{color:inherit;white-space:pre-wrap;margin-top:.375rem}.ev-paper-section-note .ev-paper-due{color:inherit;margin-top:.5rem}.ev-paper-due{color:var(--cp-text,#111827);margin:.75rem 0;font-size:.875rem}.ev-paper-due--late{color:#92400e}.ev-paper-upload{box-sizing:border-box;border:1px dashed var(--cp-border,#d1d5db);background:var(--cp-bg-secondary,#f9fafb);text-align:left;border-radius:8px;flex-direction:column;align-items:flex-start;gap:.5rem;width:100%;margin:.75rem 0;padding:.875rem 1rem;display:flex}.ev-paper-upload--done{border-style:solid}.ev-paper-upload-head{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.ev-paper-upload-title{color:var(--cp-text,#111827);font-size:1rem;font-weight:600}.ev-paper-badge{color:#166534;background:#dcfce7;border-radius:999px;padding:.125rem .5rem;font-size:.75rem;font-weight:600}.ev-paper-badge--late{color:#92400e;background:#fef3c7}.ev-paper-upload-file{color:var(--cp-text-muted,#6b7280);overflow-wrap:anywhere;margin:0;font-size:.875rem}.ev-paper-file-input{display:none}.ev-paper-after,.ev-paper-pending,.ev-paper-section-end{text-align:left}.ev-paper-pending{background:#fffbeb;border:1px solid #fde68a;border-radius:8px;margin:1rem 0;padding:1rem 1.25rem}.ev-paper-pending-title{color:#92400e;margin:0;font-size:.875rem}.ev-sitting{color:#075985;background:#e0f2fe;border-radius:6px;margin:.75rem 0;padding:.625rem .875rem;font-size:.875rem}.ev-sitting--over{color:#374151;background:#f3f4f6}.ev-rank{border:1px solid var(--cp-border,#e5e7eb);background:var(--cp-bg-secondary,#f9fafb);color:var(--cp-text,#1f2937);border-radius:8px;margin:.75rem 0;padding:.75rem 1rem;font-size:.875rem}.ev-rank-me{margin:0 0 .5rem;font-size:1rem}.ev-rank-top{margin:0;padding:0;list-style:none}.ev-rank-row{border-radius:4px;gap:.75rem;padding:.25rem .375rem;display:flex}.ev-rank-row--me{background:var(--cp-bg-hover,#f3f4f6);font-weight:700}.ev-rank-place{min-width:2.5rem;color:var(--cp-text-muted,#6b7280)}.ev-rank-name{overflow-wrap:anywhere;flex:1}.ev-online-marks{border:1px solid var(--cp-border,#e5e7eb);background:var(--cp-bg-secondary,#f9fafb);color:var(--cp-text,#1f2937);border-radius:8px;margin:.75rem 0;padding:.75rem 1rem;font-size:.875rem}.ev-online-marks p,.ev-online-marks ul{margin:.25rem 0}.ev-online-marks-total{font-size:1rem}.ev-online-marks-sections{padding-left:1.25rem}.ev-online-marks-pending,.ev-online-marks-note{color:var(--cp-text-muted,#6b7280)}.ev-paper-results-note{color:var(--cp-text-muted,#6b7280);margin-top:1rem;font-size:.875rem}.cue-overlay__backdrop{z-index:1000;background-color:#0009;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0;overflow:hidden}.cue-overlay{background:#fff;border-radius:12px;flex-direction:column;width:100%;max-width:480px;display:flex;overflow:hidden;box-shadow:0 8px 32px #0000003d}.cue-overlay--exam{aspect-ratio:16/9;width:min(90vw,960px);max-width:min(90vw,960px);height:auto;min-height:600px;max-height:90vh}.cue-overlay--exam .cue-overlay__header{min-height:unset;flex-direction:row;align-items:center;gap:.5rem;padding:.5rem 1rem}.cue-overlay--exam .cue-overlay__header .cue-overlay__badge{font-size:1rem}.cue-overlay--exam .cue-overlay__header h2.cue-overlay__title{margin:0;font-size:.9375rem}.cue-overlay--exam .cue-overlay__subtitle{color:#6b7280;margin:0;font-size:.8125rem}.cue-overlay__subtitle{color:#6b7280;margin:2px 0 0;font-size:.8rem;font-weight:400}.cue-overlay__header{border-bottom:1px solid #e2e8f0;align-items:center;gap:.75rem;padding:1.25rem 1.5rem .75rem;display:flex}.cue-overlay__badge{flex-shrink:0;font-size:1.5rem;line-height:1}.cue-overlay__title{color:#1a202c;margin:0;font-size:1.1rem;font-weight:600}.cue-overlay--quiz .cue-overlay__header{background-color:#ebf4ff}.cue-overlay--reading .cue-overlay__header{background-color:#f0fff4}.cue-overlay__body{flex:1;padding:1.25rem 1.5rem}.cue-overlay__body--exam{min-height:0;padding:0;overflow-y:auto}.cue-overlay__description{color:#4a5568;margin:0;font-size:.95rem;line-height:1.5}.cue-overlay__footer{border-top:1px solid #e2e8f0;justify-content:flex-end;gap:.75rem;padding:.75rem 1.5rem 1.25rem;display:flex}.cue-overlay__btn{cursor:pointer;border:none;border-radius:6px;padding:.5rem 1.25rem;font-size:.9rem;font-weight:500;transition:background-color .15s,border-color .15s}.cue-overlay__btn--primary{color:#fff;background-color:#4a90d9}.cue-overlay__btn--primary:hover{background-color:#357abd}.cue-overlay__btn--primary:focus-visible{outline-offset:2px;outline:2px solid #4a90d9}.cue-overlay--quiz .cue-overlay__btn--primary{background-color:#4a90d9}.cue-overlay--quiz .cue-overlay__btn--primary:hover{background-color:#357abd}.cue-overlay--reading .cue-overlay__btn--primary{background-color:#38a169}.cue-overlay--reading .cue-overlay__btn--primary:hover{background-color:#2f855a}.vs-root{box-sizing:border-box;text-align:center;flex-direction:column;flex:1;justify-content:center;align-self:stretch;align-items:center;gap:.75rem;min-height:160px;padding:2rem;display:flex}.vs-root--compact{min-height:80px;padding:1rem}.vs-spinner{border:3px solid var(--cp-bg-hover,#e5e7eb);border-top-color:var(--cp-accent,#2563eb);border-radius:50%;width:1.75rem;height:1.75rem;animation:.7s linear infinite vs-spin}@keyframes vs-spin{to{transform:rotate(360deg)}}.vs-loading-text{color:var(--cp-text-muted,#6b7280);font-size:.875rem}.vs-error-message{color:#92400e;background:#fffbeb;border:1px solid #fcd34d;border-radius:6px;max-width:32rem;margin:0;padding:.625rem .875rem;font-size:.875rem;line-height:1.5}.cp-root:not(.cp-root--light) .vs-error-message{color:#fcd34d;background:#fcd34d14;border-color:#fcd34d66}.vs-notice-message{max-width:32rem;color:var(--cp-text,#1f2937);margin:0;font-size:.9375rem;line-height:1.5}.vs-retry-btn,.vs-action-link{font:inherit;color:#fff;background:var(--cp-accent,#2563eb);cursor:pointer;border:none;border-radius:6px;padding:.4375rem 1.125rem;font-size:.875rem;font-weight:600;transition:background-color .15s}.vs-action-link{align-items:center;gap:.375rem;text-decoration:none;display:inline-flex}.vs-root .vs-action-link,.vs-root .vs-action-link:hover,.vs-root .vs-action-link:visited{color:#fff;text-decoration:none}.vs-retry-btn:hover,.vs-action-link:hover{background:var(--cp-accent-hover,#1d4ed8)}.vs-retry-btn:focus-visible,.vs-action-link:focus-visible{outline:2px solid var(--cp-accent,#2563eb);outline-offset:2px}.video-frame{flex-direction:column;flex:1;justify-content:center;align-items:center;width:100%;min-height:0;display:flex}.video-frame__stage{aspect-ratio:16/9;background:#000;border-radius:8px;width:100%;max-width:calc(177.778dvh - 263.111px);position:relative;overflow:hidden}.video-frame__stage>iframe,.video-frame__player{border:none;width:100%;height:100%;position:absolute;inset:0}.video-frame__stage:has(>.video-frame__status){background:0 0}.video-frame__status{z-index:1;background:var(--cp-canvas-bg,#f6f6f6);display:flex;position:absolute;inset:0}.vimeo-interactive-player{flex-direction:column;flex:1;width:100%;min-height:0;display:flex;position:relative}.rtdv-loading{color:#4a5568;align-items:center;gap:.75rem;padding:2rem 1.5rem;font-size:.9375rem;display:flex}.rtdv-spinner{border:2px solid #e2e8f0;border-top-color:#3182ce;border-radius:50%;flex-shrink:0;width:1.25rem;height:1.25rem;animation:.75s linear infinite rtdv-spin}@keyframes rtdv-spin{to{transform:rotate(360deg)}}.rtdv-loading-text{color:#718096}.rtdv-error{background:#fff5f5;border:1px solid #fed7d7;border-radius:8px;flex-direction:column;gap:.75rem;padding:1.5rem;display:flex}.rtdv-error-message{color:#c53030;margin:0;font-size:.9375rem;line-height:1.5}.rtdv-retry-btn{color:#fff;cursor:pointer;background:#3182ce;border:none;border-radius:5px;align-self:flex-start;padding:.375rem 1rem;font-size:.875rem;transition:background .15s}.rtdv-retry-btn:hover{background:#2b6cb0}.rtdv-retry-btn:focus-visible{outline-offset:2px;outline:2px solid #3182ce}.rtdv-document{background:#fff}.rtdv-content{color:#1a202c;padding:1.25rem 1.5rem;font-size:1rem;line-height:1.75}.rtdv-content .tiptap{outline:none}.rtdv-content .tiptap h1{color:#1a202c;margin:1.5rem 0 .75rem;font-size:1.75rem;font-weight:700}.rtdv-content .tiptap h2{color:#2d3748;margin:1.25rem 0 .5rem;font-size:1.375rem;font-weight:600}.rtdv-content .tiptap h3{color:#2d3748;margin:1rem 0 .5rem;font-size:1.125rem;font-weight:600}.rtdv-content .tiptap h4{color:#4a5568;margin:.75rem 0 .5rem;font-size:1rem;font-weight:600}.rtdv-content .tiptap p{margin:.5rem 0}.rtdv-content .tiptap ul,.rtdv-content .tiptap ol{margin:.5rem 0;padding-left:1.5rem}.rtdv-content .tiptap blockquote{color:#4a5568;border-left:3px solid #e2e8f0;margin:.75rem 0;padding-left:1rem}.rtdv-content .tiptap pre{color:#e2e8f0;background:#1a202c;border-radius:6px;margin:.75rem 0;padding:1rem;font-family:Fira Code,Consolas,monospace;font-size:.875rem;overflow-x:auto}.rtdv-content .tiptap code{background:#edf2f7;border-radius:3px;padding:.125rem .375rem;font-family:Fira Code,Consolas,monospace;font-size:.875rem}.rtdv-content .tiptap pre code{background:0 0;padding:0}.rtdv-content .tiptap img,.rtdv-content .tiptap .rtdv-image{border-radius:4px;max-width:100%;height:auto;margin:.75rem 0}.rtdv-content .tiptap a{color:#3182ce;text-decoration:underline}.rtdv-content .tiptap hr{border:none;border-top:1px solid #e2e8f0;margin:1.5rem 0}.rtdv-content .tiptap table{border-collapse:collapse;table-layout:fixed;width:100%;margin:.75rem 0}.rtdv-content .tiptap table td,.rtdv-content .tiptap table th{vertical-align:top;border:1px solid #e2e8f0;min-width:80px;padding:.5rem .75rem}.rtdv-content .tiptap table th{text-align:left;background-color:#f7fafc;font-weight:600}.rtdv-content .tiptap .math-inline-node{padding:0 2px;display:inline}.rtdv-content .tiptap .math-display-node{text-align:center;margin:.75rem 0;padding:1rem 0;display:block}.rtdv-content .tiptap .math-error{color:#e53e3e;background:#fff5f5;border-radius:3px;padding:.125rem .375rem;font-family:monospace;font-size:.875rem}.rtdv-content .tiptap pre .hljs-keyword{color:#c792ea}.rtdv-content .tiptap pre .hljs-string{color:#c3e88d}.rtdv-content .tiptap pre .hljs-comment{color:#676e95}.rtdv-content .tiptap pre .hljs-number{color:#f78c6c}.rtdv-content .tiptap pre .hljs-function,.rtdv-content .tiptap pre .hljs-title{color:#82aaff}.rtdv-content .tiptap pre .hljs-built_in,.rtdv-content .tiptap pre .hljs-type{color:#ffcb6b}.rtdv-content .tiptap pre .hljs-attr{color:#f78c6c}.rtdv-content .tiptap pre .hljs-tag,.rtdv-content .tiptap pre .hljs-name{color:#f07178}.rtdv-content .tiptap pre .hljs-selector-class{color:#ffcb6b}.rtdv-content .tiptap pre .hljs-selector-id{color:#82aaff}.rtsv-root{background:var(--cp-canvas-bg,#2d2f31);color:#d1d7dc;flex-direction:column;flex:1;min-height:0;display:flex;position:relative}.rtsv-progress{display:none}.rtsv-progress-text{color:#9ca3af;font-size:.9rem}.rtsv-slide-region{flex-direction:column;flex:1;align-items:center;min-height:0;padding:32px;display:flex;overflow-y:auto}.rtsv-page-card{color:#1f2937;box-sizing:border-box;flex-shrink:0;width:100%;max-width:860px;padding:3.5rem 4rem}.cp-root--dark .rtsv-page-card,.cp-root--light .rtsv-page-card{color:#111827;background:#fff}.rtsv-editor-wrap{width:100%}.rtsv-slide-content .ProseMirror{color:#1f2937;outline:none;line-height:1.65}.rtsv-slide-content .ProseMirror h1,.rtsv-slide-content .ProseMirror h2,.rtsv-slide-content .ProseMirror h3,.rtsv-slide-content .ProseMirror h4{color:#111827;margin-top:0;margin-bottom:1.125rem;line-height:1.2}.rtsv-slide-content .ProseMirror h1{font-size:clamp(2rem,4vw,3.5rem);font-weight:700}.rtsv-slide-content .ProseMirror h2{font-size:clamp(1.75rem,3.25vw,2.75rem);font-weight:600}.rtsv-slide-content .ProseMirror h3{font-size:clamp(1.5rem,2.75vw,2.25rem);font-weight:600}.rtsv-slide-content .ProseMirror p{margin:0 0 1.25em;line-height:1.7}.rtsv-slide-content .ProseMirror p:last-child{margin-bottom:0}.rtsv-slide-content .ProseMirror ul,.rtsv-slide-content .ProseMirror ol{margin-bottom:1.25em;padding-left:2em}.rtsv-slide-content .ProseMirror li{margin-bottom:.5em;line-height:1.65}.rtsv-slide-content .ProseMirror blockquote{color:#6b7280;border-left:4px solid #2563eb;margin:0 0 1.25em;padding-left:1.25em;font-style:italic}.rtsv-slide-content .ProseMirror pre{color:#111827;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:6px;margin-bottom:1.25em;padding:1.25em 1.5em;font-size:.85em;line-height:1.6;overflow-x:auto}.rtsv-slide-content .ProseMirror code{color:#111827;background:#f3f4f6;border-radius:4px;padding:.2em .45em;font-size:.9em}.rtsv-slide-content .ProseMirror table{border-collapse:collapse;width:100%;margin-bottom:1.25em}.rtsv-slide-content .ProseMirror th,.rtsv-slide-content .ProseMirror td{text-align:left;border:1px solid #e5e7eb;padding:.6em 1em}.rtsv-slide-content .ProseMirror th{color:#111827;background:#f9fafb;font-weight:600}.rtsv-slide-content .ProseMirror img,.rtdv-image{border-radius:6px;max-width:100%;margin-bottom:1.25em;display:block}.rtsv-slide-content .ProseMirror a{color:#93c5fd;text-decoration:underline}.rtsv-empty{color:#6a6f73;margin:0;font-size:1.5rem;font-style:italic}@media (width<=767px){.rtsv-slide-region{padding:2rem 1.25rem 5.5rem}.rtsv-slide-content{font-size:1.25rem}.rtsv-slide-content .ProseMirror h1{font-size:2.125rem}.rtsv-slide-content .ProseMirror h2{font-size:1.75rem}.rtsv-slide-content .ProseMirror h3{font-size:1.5rem}}.rtsv-shimmer,.rtsv-measure-container,.rtsv-measure-editor{display:none}.slide-viewer{background:#1a202c;border-radius:8px;outline:none;flex-direction:column;display:flex;overflow:hidden}.slide-viewer-empty{background:#2d3748;justify-content:center;align-items:center;min-height:200px;display:flex}.sv-empty-message{color:#a0aec0;margin:0;font-size:.95rem}.sv-stage{flex:1;justify-content:center;align-items:center;min-height:0;padding:1.5rem;display:flex;overflow:hidden}.sv-page-image-wrapper{justify-content:center;align-items:center;width:100%;height:100%;display:flex}.sv-page-image{object-fit:contain;border-radius:2px;max-width:100%;max-height:100%;box-shadow:0 4px 16px #0006}.pdf-canvas-page{flex:none;line-height:0;position:relative}.pdf-text-layer.textLayer{--min-font-size:1;--text-scale-factor:calc(var(--total-scale-factor) * var(--min-font-size));--min-font-size-inv:calc(1 / var(--min-font-size));--scale-round-x:1px;--scale-round-y:1px;text-align:initial;letter-spacing:normal;word-spacing:normal;-webkit-text-size-adjust:none;-moz-text-size-adjust:none;text-size-adjust:none;forced-color-adjust:none;transform-origin:0 0;z-index:0;line-height:1;position:absolute;inset:0;overflow:clip}.pdf-text-layer.textLayer :is(span,br){color:#0000;white-space:pre;cursor:text;transform-origin:0 0;-webkit-user-select:text;user-select:text;position:absolute}.pdf-text-layer.textLayer>:not(.markedContent),.pdf-text-layer.textLayer .markedContent span:not(.markedContent){z-index:1;--font-height:0;font-size:calc(var(--text-scale-factor) * var(--font-height));--scale-x:1;--rotate:0deg;transform:rotate(var(--rotate)) scaleX(var(--scale-x)) scale(var(--min-font-size-inv))}.pdf-text-layer.textLayer .markedContent{display:contents}.pdf-text-layer.textLayer ::selection{background:#2563eb40}.pdf-text-layer.textLayer .endOfContent{z-index:0;cursor:default;-webkit-user-select:none;user-select:none;display:block;position:absolute;inset:100% 0 0}.aql-summary{color:#64748b;margin-bottom:.75rem;font-size:.875rem}.aql-questions{margin:0;padding-left:1.5rem}.aql-question{margin-bottom:1.25rem}.aql-question-head{justify-content:space-between;align-items:baseline;gap:.75rem;display:flex}.aql-text{flex:1;min-width:0}.aql-marks{color:#64748b;white-space:nowrap;font-size:.8125rem}.aql-parts{margin:.5rem 0 0;padding-left:1.5rem}.aql-part{margin-bottom:.75rem}.aql-part-label{font-weight:600}.aql-options{margin:.25rem 0 0;padding-left:3rem}.aql-empty,.aql-error{color:#64748b;font-size:.875rem}.aql-error{color:#b91c1c}.exam-attempt-page{flex-direction:column;gap:1.5rem;display:flex}.exam-attempt-header{flex-direction:column;gap:.75rem;display:flex}.exam-attempt-header .back-link{color:#3b82f6;font-size:.875rem;text-decoration:none}.exam-attempt-header .back-link:hover{text-decoration:underline}.exam-attempt-title-row{justify-content:space-between;align-items:center;gap:1rem;display:flex}.exam-attempt-title-row h1{color:#1f2937;margin:0;font-size:1.5rem;font-weight:600}.timer{color:#374151;background-color:#f3f4f6;border-radius:6px;align-items:center;gap:.375rem;padding:.375rem .75rem;font-size:.9375rem;font-weight:600;display:flex}.timer-warning{color:#dc2626;background-color:#fef2f2;animation:1s infinite pulse}.timer-icon{font-size:1rem}.timer-value{font-variant-numeric:tabular-nums}.exam-progress{flex-direction:column;gap:.375rem;display:flex}.progress-text{color:#6b7280;font-size:.8125rem}.progress-bar{background-color:#e5e7eb;border-radius:2px;height:4px;overflow:hidden}.progress-fill{background-color:#3b82f6;border-radius:2px;height:100%;transition:width .3s}.question-container{background-color:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:1.5rem}.question-display{flex-direction:column;gap:1.25rem;display:flex}.question-text{color:#1f2937;margin:0;font-size:1.0625rem;font-weight:500;line-height:1.5}.answer-area,.options-list{flex-direction:column;gap:.5rem;display:flex}.option-item{cursor:pointer;border:1px solid #e5e7eb;border-radius:6px;align-items:center;gap:.75rem;padding:.75rem 1rem;transition:border-color .15s,background-color .15s;display:flex}.option-item:hover:not(.disabled){background-color:#f0f9ff;border-color:#93c5fd}.option-item.selected{background-color:#eff6ff;border-color:#3b82f6}.option-item.disabled{cursor:default;opacity:.7}.option-item input[type=radio],.option-item input[type=checkbox]{accent-color:#3b82f6;width:1rem;height:1rem}.option-text{color:#374151;font-size:.9375rem}.short-answer-input{flex-direction:column;gap:.25rem;display:flex}.text-input{box-sizing:border-box;border:1px solid #d1d5db;border-radius:6px;outline:none;width:100%;padding:.75rem 1rem;font-size:.9375rem;transition:border-color .15s}.text-input:focus{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f61a}.text-input:disabled{cursor:not-allowed;background-color:#f9fafb}.char-count{color:#9ca3af;text-align:right;font-size:.75rem}.code-input{flex-direction:column;gap:.5rem;display:flex}.code-language-badge{color:#6b7280;text-transform:uppercase;background-color:#f3f4f6;border-radius:4px;align-self:flex-start;padding:.25rem .5rem;font-size:.75rem;font-weight:600}.code-textarea{color:#e5e7eb;resize:vertical;box-sizing:border-box;background-color:#1f2937;border:1px solid #d1d5db;border-radius:6px;outline:none;width:100%;padding:1rem;font-family:Fira Code,Courier New,monospace;font-size:.875rem;line-height:1.5}.code-textarea:focus{border-color:#3b82f6}.code-textarea:disabled{opacity:.7;cursor:not-allowed}.submit-answer-btn{color:#fff;cursor:pointer;background-color:#3b82f6;border:none;border-radius:6px;align-self:flex-start;padding:.5rem 1.25rem;font-size:.875rem;font-weight:500;transition:background-color .15s}.submit-answer-btn:hover:not(:disabled){background-color:#2563eb}.submit-answer-btn:disabled{cursor:not-allowed;background-color:#93c5fd}.feedback{border-radius:6px;align-items:flex-start;gap:.75rem;padding:1rem;display:flex}.feedback-correct{background-color:#d1fae5;border:1px solid #6ee7b7}.feedback-incorrect{background-color:#fee2e2;border:1px solid #fca5a5}.feedback-icon{font-size:1.25rem;font-weight:700;line-height:1}.feedback-correct .feedback-icon{color:#065f46}.feedback-incorrect .feedback-icon{color:#991b1b}.feedback-content{flex-direction:column;gap:.25rem;display:flex}.feedback-label{font-size:.9375rem;font-weight:600}.feedback-correct .feedback-label{color:#065f46}.feedback-incorrect .feedback-label{color:#991b1b}.feedback-explanation{color:#374151;margin:0;font-size:.875rem;line-height:1.4}.exam-navigation{justify-content:space-between;align-items:center;padding-top:.5rem;display:flex}.exam-nav-btn{color:#374151;cursor:pointer;background-color:#fff;border:1px solid #d1d5db;border-radius:6px;padding:.5rem 1rem;font-size:.875rem;font-weight:500;transition:background-color .15s,border-color .15s}.exam-nav-btn:hover:not(:disabled){background-color:#f9fafb;border-color:#9ca3af}.exam-nav-btn:disabled{opacity:.5;cursor:not-allowed}.submit-exam-btn{color:#3b82f6;background-color:#0000;border-color:#3b82f6}.submit-exam-btn:hover:not(:disabled){color:#fff;background-color:#3b82f6;border-color:#3b82f6}.exam-results{flex-direction:column;gap:1.5rem;display:flex}.results-summary{background-color:#fff;border:1px solid #e5e7eb;border-radius:8px;flex-direction:column;align-items:center;gap:1rem;padding:2rem;display:flex}.score-display{flex-direction:column;align-items:center;gap:.25rem;display:flex}.score-value{font-size:3rem;font-weight:700}.score-display.passing .score-value{color:#059669}.score-display.failing .score-value{color:#dc2626}.score-label{font-size:1.125rem;font-weight:600}.score-display.passing .score-label{color:#065f46}.score-display.failing .score-label{color:#991b1b}.results-stats{color:#6b7280;flex-direction:column;align-items:center;gap:.25rem;font-size:.875rem;display:flex}.results-details{flex-direction:column;gap:1rem;display:flex}.results-details h2{color:#1f2937;margin:0;font-size:1.25rem;font-weight:600}.result-item{background-color:#fff;border:1px solid #e5e7eb;border-radius:8px;flex-direction:column;gap:.5rem;padding:1rem 1.25rem;display:flex}.result-item.correct{border-left:3px solid #10b981}.result-item.incorrect{border-left:3px solid #ef4444}.result-item-header{justify-content:space-between;align-items:center;display:flex}.result-number{color:#6b7280;font-size:.8125rem;font-weight:600}.result-badge{border-radius:4px;padding:.125rem .5rem;font-size:.75rem;font-weight:600}.result-badge.correct{color:#065f46;background-color:#d1fae5}.result-badge.incorrect{color:#991b1b;background-color:#fee2e2}.result-question-text{color:#374151;margin:0;font-size:.9375rem}.result-explanation{color:#6b7280;margin:0;font-size:.8125rem;font-style:italic}.max-attempts-message{text-align:center;background-color:#fff;border:1px solid #fecaca;border-radius:8px;padding:3rem 1.5rem}.max-attempts-message .attempts-icon{margin-bottom:.75rem;font-size:2rem;display:block}.max-attempts-message p{color:#374151;margin:0;font-size:1rem;font-weight:500}.max-attempts-message .attempts-description{color:#6b7280;margin-top:.5rem;font-size:.875rem;font-weight:400}.back-btn{color:#3b82f6;border:1px solid #3b82f6;border-radius:6px;margin-top:1rem;padding:.5rem 1rem;font-size:.875rem;text-decoration:none;display:inline-block}.back-btn:hover{background-color:#eff6ff}.exam-attempt-page .error-message{color:#dc2626;background-color:#fef2f2;border:1px solid #fecaca;border-radius:8px;padding:1rem;font-size:.9375rem}.exam-attempt-page .loading-container{justify-content:center;padding:3rem;display:flex}.exam-attempt-page .loading-spinner{border:3px solid #e5e7eb;border-top-color:#3b82f6;border-radius:50%;width:2rem;height:2rem;animation:.8s linear infinite spin}.results-review-action{justify-content:center;margin-top:24px;display:flex}.review-answers-btn{color:#fff;background:#2563eb;border-radius:8px;padding:10px 24px;font-size:.95rem;font-weight:500;text-decoration:none;transition:background .15s;display:inline-block}.review-answers-btn:hover{background:#1d4ed8}.exam-intro-section{flex-direction:column;align-items:center;gap:1.5rem;padding:1.5rem 0;display:flex}.exam-intro-banner{background-color:#f0f9ff;border:1px solid #bae6fd;border-radius:8px;flex-direction:column;align-items:center;gap:.75rem;width:100%;max-width:480px;padding:1.5rem;display:flex}.exam-intro-banner-score{flex-direction:column;align-items:center;gap:.125rem;display:flex}.exam-intro-best-score{color:#0369a1;font-size:2.5rem;font-weight:700}.exam-intro-best-label{color:#6b7280;font-size:.8125rem;font-weight:500}.exam-intro-attempt-count{color:#64748b;margin:0;font-size:.875rem}.exam-intro-attempt-date{color:#374151;margin:0;font-size:.875rem}.exam-intro-review-link{font-size:inherit;color:#2563eb;font-weight:500;text-decoration:underline}.exam-intro-review-link:hover{color:#1d4ed8}.exam-intro-start-btn{color:#3b82f6;background-color:#0000;border-color:#3b82f6;min-width:200px;padding:.625rem 1.5rem;font-size:.875rem}.exam-intro-start-btn:hover:not(:disabled){color:#fff;background-color:#3b82f6}.exam-list-page{flex-direction:column;gap:1.5rem;display:flex}.exam-list-header{flex-direction:column;gap:.5rem;display:flex}.exam-list-header h1{color:#1f2937;font-size:1.5rem;font-weight:600}.exam-list-page .back-link{color:#3b82f6;font-size:.875rem;text-decoration:none}.exam-list-page .back-link:hover{text-decoration:underline}.exam-list-page .empty-state{text-align:center;background-color:#fff;border:1px dashed #d1d5db;border-radius:8px;padding:3rem 1.5rem}.exam-list-page .empty-state .empty-icon{margin-bottom:.75rem;font-size:2rem;display:block}.exam-list-page .empty-state p{color:#374151;margin:0;font-size:1rem;font-weight:500}.exam-list-page .empty-state .empty-description{color:#6b7280;margin-top:.5rem;font-size:.875rem;font-weight:400}.exam-list{flex-direction:column;gap:1rem;display:flex}.exam-card{background-color:#fff;border:1px solid #e5e7eb;border-radius:8px;flex-direction:column;gap:.75rem;padding:1.25rem;display:flex}.exam-card-header{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.exam-title{color:#1f2937;margin:0;font-size:1.125rem;font-weight:600}.exam-score-badge{white-space:nowrap;border-radius:4px;padding:.25rem .5rem;font-size:.75rem;font-weight:600}.exam-score-badge.passing{color:#065f46;background-color:#d1fae5}.exam-score-badge.failing{color:#991b1b;background-color:#fee2e2}.exam-meta{flex-wrap:wrap;gap:1rem;display:flex}.exam-meta-item{color:#6b7280;align-items:center;gap:.25rem;font-size:.8125rem;display:flex}.meta-icon{font-size:.875rem}.exam-card-actions{align-items:center;gap:1rem;margin-top:.25rem;display:flex}.exam-start-btn{color:#fff;background-color:#3b82f6;border-radius:6px;padding:.5rem 1rem;font-size:.875rem;font-weight:500;text-decoration:none;transition:background-color .15s;display:inline-block}.exam-start-btn:hover{background-color:#2563eb}.exam-results-link{color:#3b82f6;font-size:.875rem;text-decoration:none}.exam-results-link:hover{text-decoration:underline}.max-attempts-reached{color:#dc2626;background-color:#fef2f2;border:1px solid #fecaca;border-radius:4px;padding:.375rem .75rem;font-size:.875rem;font-weight:500}.exam-list-page .error-message{color:#dc2626;background-color:#fef2f2;border:1px solid #fecaca;border-radius:8px;padding:1rem;font-size:.9375rem}.exam-results-page{flex-direction:column;gap:1.5rem;display:flex}.exam-results-header{flex-direction:column;gap:.5rem;display:flex}.exam-results-header h1{color:#1f2937;font-size:1.5rem;font-weight:600}.exam-results-page .back-link{color:#3b82f6;font-size:.875rem;text-decoration:none}.exam-results-page .back-link:hover{text-decoration:underline}.exam-results-page .empty-state{text-align:center;background-color:#fff;border:1px dashed #d1d5db;border-radius:8px;padding:3rem 1.5rem}.exam-results-page .empty-state .empty-icon{margin-bottom:.75rem;font-size:2rem;display:block}.exam-results-page .empty-state p{color:#374151;margin:0;font-size:1rem;font-weight:500}.exam-results-page .empty-state .empty-description{color:#6b7280;margin-top:.5rem;font-size:.875rem;font-weight:400}.results-overview{background-color:#fff;border:1px solid #e5e7eb;border-radius:8px;gap:1.5rem;padding:1.5rem;display:flex}.overview-stat{flex-direction:column;flex:1;align-items:center;gap:.25rem;display:flex}.stat-value{color:#1f2937;font-size:1.5rem;font-weight:700}.stat-value.passing{color:#059669}.stat-value.failing{color:#dc2626}.stat-label{color:#6b7280;font-size:.8125rem}.attempts-list{flex-direction:column;gap:.75rem;display:flex}.attempts-list h2{color:#1f2937;margin:0;font-size:1.125rem;font-weight:600}.attempt-card{background-color:#fff;border:1px solid #e5e7eb;border-radius:8px;flex-direction:column;gap:.5rem;padding:1rem 1.25rem;display:flex}.attempt-header{justify-content:space-between;align-items:center;display:flex}.attempt-number{color:#374151;font-size:.9375rem;font-weight:500}.attempt-score{font-size:1rem;font-weight:700}.attempt-score.passing{color:#059669}.attempt-score.failing{color:#dc2626}.attempt-details{color:#6b7280;gap:1rem;font-size:.8125rem;display:flex}.exam-results-page .error-message{color:#dc2626;background-color:#fef2f2;border:1px solid #fecaca;border-radius:8px;padding:1rem;font-size:.9375rem}.exam-results-page .loading-container{justify-content:center;padding:3rem;display:flex}.exam-results-page .loading-spinner{border:3px solid #e5e7eb;border-top-color:#3b82f6;border-radius:50%;width:2rem;height:2rem;animation:.8s linear infinite spin}.exam-replay{max-width:720px;margin:0 auto;padding:24px 16px}.exam-replay-header{align-items:center;gap:16px;margin-bottom:24px;display:flex}.exam-replay-header h1{margin:0;font-size:1.4rem;font-weight:600}.replay-progress{margin-bottom:20px}.replay-progress-text{color:#6b7280;margin-bottom:6px;font-size:.875rem;display:block}.replay-progress-bar{background:#e5e7eb;border-radius:3px;height:6px;overflow:hidden}.replay-progress-fill{background:#2563eb;border-radius:3px;height:100%;transition:width .2s}.replay-card{border:1px solid #e5e7eb;border-radius:12px;margin-bottom:20px;padding:24px}.replay-card-correct{background:#f0fdf4;border-color:#86efac}.replay-card-incorrect{background:#fff7f7;border-color:#fca5a5}.replay-card-badge{margin-bottom:12px}.badge-correct{color:#16a34a;background:#dcfce7;border-radius:20px;padding:3px 10px;font-size:.875rem;font-weight:600;display:inline-block}.badge-incorrect{color:#dc2626;background:#fee2e2;border-radius:20px;padding:3px 10px;font-size:.875rem;font-weight:600;display:inline-block}.replay-question-text{margin:0 0 20px;font-size:1.1rem;font-weight:500;line-height:1.5}.replay-options{flex-direction:column;gap:10px;margin-bottom:16px;display:flex}.replay-option{background:#fff;border:1px solid #e5e7eb;border-radius:8px;align-items:center;gap:10px;padding:10px 14px;font-size:.95rem;display:flex}.option-correct{background:#f0fdf4;border-color:#86efac}.option-wrong-pick{background:#fff1f1;border-color:#fca5a5}.option-indicator{text-align:center;flex-shrink:0;width:20px;font-weight:700}.option-correct .option-indicator{color:#16a34a}.option-wrong-pick .option-indicator{color:#dc2626}.option-text{flex:1}.option-your-pick{color:#dc2626;font-size:.8rem;font-style:italic}.option-correct-label{color:#16a34a;font-size:.8rem;font-style:italic}.replay-short-answer{flex-direction:column;gap:10px;margin-bottom:16px;display:flex}.replay-sa-row{background:#fff;border:1px solid #e5e7eb;border-radius:8px;gap:10px;padding:10px 14px;display:flex}.replay-sa-row.sa-correct{background:#f0fdf4;border-color:#86efac}.replay-sa-row.sa-incorrect{background:#fff1f1;border-color:#fca5a5}.sa-label{color:#374151;min-width:120px;font-weight:600}.sa-value{color:#111827}.replay-code-answer{margin-bottom:16px}.replay-code-block{color:#f9fafb;white-space:pre-wrap;word-break:break-word;background:#1f2937;border-radius:8px;margin:6px 0 0;padding:14px;font-size:.85rem;overflow-x:auto}.replay-explanation{color:#374151;background:#f8fafc;border-left:3px solid #93c5fd;border-radius:0 6px 6px 0;margin-top:16px;padding:10px 14px;font-size:.9rem}.replay-outcomes{border-top:1px solid #e5e7eb;margin-top:20px;padding-top:16px}.replay-outcomes-title{color:#6b7280;text-transform:uppercase;letter-spacing:.05em;margin:0 0 10px;font-size:.875rem;font-weight:600}.replay-outcomes-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.replay-outcome-item{background:#eff6ff;border:1px solid #bfdbfe;border-radius:6px;flex-direction:column;gap:2px;padding:8px 12px;display:flex}.replay-outcome-title{color:#1e40af;font-size:.9rem;font-weight:600}.replay-outcome-desc{color:#374151;font-size:.85rem}.replay-nav{justify-content:space-between;gap:12px;display:flex}.replay-nav-btn{color:#374151;cursor:pointer;background:#f3f4f6;border:1px solid #d1d5db;border-radius:8px;padding:10px 20px;font-size:.9rem;font-weight:500;transition:background .15s}.replay-nav-btn:hover:not(:disabled){background:#e5e7eb}.replay-nav-btn:disabled{opacity:.4;cursor:not-allowed}.replay-summary-btn{flex:1}.replay-finish-btn{color:#fff;background:#2563eb;border-color:#2563eb}.replay-finish-btn:hover{background:#1d4ed8}.exam-review-summary{box-sizing:border-box;width:100%;max-width:960px;padding:2rem 0 6rem}.exam-review-header{margin-bottom:1.5rem}.exam-review-header__top{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.75rem;display:flex}.exam-review-title{margin:0;font-size:1.5rem;font-weight:600}.exam-review-btn{color:#3b82f6;cursor:pointer;white-space:nowrap;background-color:#0000;border:1px solid #3b82f6;border-radius:6px;padding:.5rem 1rem;font-size:.8125rem;font-weight:500;transition:background-color .15s,color .15s}.exam-review-btn:hover{color:#fff;background-color:#3b82f6}.exam-review-header h1{margin:0;font-size:1.5rem;font-weight:600}.back-link{color:var(--color-primary,#2563eb);white-space:nowrap;font-size:.9rem;text-decoration:none}.review-score-banner{border-radius:12px;align-items:center;gap:24px;margin-bottom:28px;padding:20px 24px;display:flex}.review-score-banner.passed{background:#dcfce7;border:1px solid #86efac}.review-score-banner.failed{background:#fee2e2;border:1px solid #fca5a5}.review-score-value{margin-left:1.5rem;font-size:2.5rem;font-weight:700;line-height:1}.review-score-banner.passed .review-score-value{color:#16a34a}.review-score-banner.failed .review-score-value{color:#dc2626}.review-score-label{min-width:60px;font-size:1.1rem;font-weight:600}.review-score-stats{color:#374151;flex-direction:row;align-items:center;gap:2rem;margin-left:auto;font-size:.875rem;display:flex}.review-score-stat{white-space:nowrap;text-align:right}.review-table-wrapper{border:1px solid #e5e7eb;border-radius:8px;margin-bottom:24px;overflow-x:auto}.review-table{border-collapse:collapse;width:100%;font-size:.9rem}.review-table th{text-align:left;white-space:nowrap;background:#f9fafb;border-bottom:1px solid #e5e7eb;padding:10px 14px;font-weight:600}.review-table td{vertical-align:middle;border-bottom:1px solid #f3f4f6;padding:10px 14px}.review-table tbody tr:last-child td{border-bottom:none}.row-correct{background:#f0fdf4}.row-incorrect{background:#fff7f7}.col-num{text-align:center;width:40px;font-weight:600}.col-question{max-width:280px}.col-answer,.col-correct{word-break:break-word;max-width:180px}.col-result{text-align:center;width:60px}.col-marks{text-align:right;width:70px;font-weight:500}.result-badge{border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;font-size:.9rem;font-weight:700;display:inline-flex}.result-badge.correct{color:#16a34a;background:#dcfce7}.result-badge.incorrect{color:#dc2626;background:#fee2e2}.totals-row{background:#f9fafb}.totals-label{text-align:right;padding-right:14px;font-weight:600}.totals-marks{text-align:right;font-size:1rem;font-weight:700}.review-actions{justify-content:flex-end;gap:12px;display:flex}.review-replay-btn{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:8px;padding:10px 20px;font-size:.95rem;font-weight:500;transition:background .15s}.review-replay-btn:hover{background:#1d4ed8}@media (width<=600px){.review-score-banner{flex-wrap:wrap}.col-answer,.col-correct{display:none}}.exam-review-summary .ev-question-slide{background:0 0;font-size:22px}.exam-review-summary .ev-q-header{margin-bottom:1.25rem}.exam-review-summary .ev-q-number{color:#374151}.exam-review-summary .ev-q-points{color:#6b7280;background:#f3f4f6;border-color:#e5e7eb}.exam-review-summary .ev-q-result-badge{margin-left:auto}.exam-review-summary .ev-q-result-badge--correct{color:#16a34a;background:#dcfce7;border:1px solid #86efac}.exam-review-summary .ev-q-result-badge--incorrect{color:#dc2626;background:#fee2e2;border:1px solid #fca5a5}.exam-review-summary .ev-q-text{color:#1f2937}.exam-review-summary .ev-option{color:#374151;background:#fff;border-color:#e5e7eb;padding:.75em 1em}.exam-review-summary .ev-option--correct-answer{background:#4ade8033;border-color:#4ade80}.exam-review-summary .ev-option--wrong-pick{background:#f8717133;border-color:#f87171}.exam-review-summary .ev-option--selected{background:#eff6ff;border-color:#2563eb}.exam-review-summary .ev-short-answer-input{color:#1f2937;background:#fff;border-color:#e5e7eb}.exam-review-summary .ev-short-answer-input:disabled{color:#6b7280;background:#f9fafb}.exam-review-summary .ev-explanation{color:#374151;background:#f0f9ff;border-left-color:#2563eb}.review-cards{flex-direction:column;gap:1rem;padding-bottom:2rem;display:flex}.review-card{background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:1rem 1.25rem;transition:box-shadow .15s}.review-card--correct{border-left:4px solid #4ade80}.review-card--incorrect{border-left:4px solid #f87171}.review-card--unanswered{border-left:4px solid #9ca3af}.review-card__header{align-items:center;gap:.75rem;margin-bottom:.75rem;display:flex}.review-card__number{color:#6b7280;font-size:.875rem;font-weight:700}.review-card__badge{border-radius:4px;padding:.2rem .5rem;font-size:.75rem;font-weight:600}.review-card__badge--correct{color:#15803d;background:#dcfce7}.review-card__badge--incorrect{color:#b91c1c;background:#fee2e2}.review-card__badge--unanswered{color:#4b5563;background:#f3f4f6}.review-card--paper{border-left:4px solid #f59e0b}.review-card__badge--paper{color:#92400e;background:#fef3c7}.review-card__feedback{color:#374151;white-space:pre-wrap;margin:0;font-size:.875rem}.review-card__marks{color:#374151;margin-left:auto;font-size:.875rem;font-weight:600}.review-card__question{color:#1f2937;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;margin-bottom:.75rem;padding:.75rem 1rem;font-size:.95rem;line-height:1.5}.review-card__question .le-content-editable{min-height:unset;padding:0}.review-card__question .le-container{background:0 0;border:none}.review-card__row{border:1px solid #f3f4f6;border-radius:6px;align-items:flex-start;gap:.75rem;margin-bottom:.375rem;padding:.5rem 1rem;font-size:.875rem;display:flex}.review-card__label{color:#6b7280;flex-shrink:0;min-width:100px;font-weight:600}.review-card__value{color:#1f2937;word-break:break-word;flex:1}.review-card__value .le-content-editable{min-height:unset;padding:0}.review-card__value .le-container{background:0 0;border:none}.review-cards__total{color:#374151;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;justify-content:space-between;padding:.75rem 1.25rem;font-size:1rem;font-weight:700;display:flex}.assignment-page{flex-direction:column;gap:1rem;display:flex}.assignment-page .back-link{color:#3b82f6;font-size:.875rem;text-decoration:none}.assignment-page .back-link:hover{text-decoration:underline}.assignment-header{flex-direction:column;gap:.5rem;display:flex}.assignment-header h1{color:#1f2937;margin:0;font-size:1.25rem;font-weight:600}.assignment-status-badge{border-radius:9999px;align-items:center;gap:.375rem;width:fit-content;padding:.25rem .625rem;font-size:.75rem;font-weight:600;display:inline-flex}.assignment-status-badge.upcoming{color:#92400e;background-color:#fef3c7}.assignment-status-badge.open{color:#065f46;background-color:#d1fae5}.assignment-status-badge.closed{color:#374151;background-color:#e5e7eb}.assignment-status-badge.draft{color:#5b21b6;background-color:#ede9fe}.assignment-description{color:#4b5563;white-space:pre-wrap;font-size:.9375rem;line-height:1.6}.submission-window{background-color:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:1rem 1.25rem}.submission-window h2{color:#374151;text-transform:uppercase;letter-spacing:.025em;margin:0 0 .75rem;font-size:.875rem;font-weight:600}.submission-window-dates{flex-direction:column;gap:.5rem;display:flex}.window-date-row{align-items:center;gap:.5rem;font-size:.875rem;display:flex}.window-date-label{color:#6b7280;min-width:100px}.window-date-value{color:#1f2937;font-weight:500}.window-date-value.late-indicator{color:#d97706}.assignment-grade-feedback-row{align-items:flex-start}.assignment-grade-feedback{white-space:pre-wrap;font-weight:400}.assignment-documents{background-color:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:.875rem 1rem}.assignment-documents h2{color:#1f2937;margin:0 0 .625rem;font-size:.875rem;font-weight:600}.assignment-questions-note{color:#64748b;margin:0 0 .75rem;font-size:.8125rem}.document-list{flex-direction:column;gap:.375rem;display:flex}.document-item{background-color:#f9fafb;border:1px solid #f3f4f6;border-radius:6px;justify-content:space-between;align-items:center;padding:.5rem .75rem;display:flex}.document-info{align-items:center;gap:.5rem;display:flex}.document-icon{font-size:1.125rem}.document-name{color:#1f2937;font-size:.875rem;font-weight:500}.document-size{color:#6b7280;margin-left:.5rem;font-size:.75rem}.document-unavailable{color:#9ca3af;font-size:.75rem;font-style:italic}.document-actions{align-items:center;gap:.5rem;display:flex}.document-view-btn{color:#3b82f6;cursor:pointer;background-color:#0000;border:1px solid #3b82f6;border-radius:6px;padding:.375rem .75rem;font-size:.8125rem;font-weight:500;transition:background-color .15s,color .15s}.document-view-btn:hover{color:#fff;background-color:#3b82f6}.document-download-btn{color:#374151;cursor:pointer;background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;padding:.375rem .75rem;font-size:.8125rem;font-weight:500;transition:background-color .15s}.document-download-btn:hover{background-color:#f3f4f6}.document-download-btn:disabled{opacity:.6;cursor:not-allowed}.document-download-error{color:#b91c1c;background-color:#fef2f2;border:1px solid #fecaca;border-radius:6px;justify-content:space-between;align-items:center;gap:.75rem;margin-top:.5rem;padding:.625rem 1rem;font-size:.8125rem;display:flex}.document-item-wrapper{flex-direction:column;gap:0;display:flex}.document-viewer{background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;flex-direction:column;align-items:center;gap:.75rem;margin-top:.5rem;padding:1rem;display:flex}.document-viewer-loading{color:#6b7280;flex-direction:column;align-items:center;gap:.5rem;padding:2rem 0;font-size:.875rem;display:flex}.document-viewer-error{text-align:center;color:#b91c1c;background-color:#fef2f2;border:1px solid #fecaca;border-radius:6px;flex-direction:column;align-items:center;gap:.75rem;width:100%;padding:1.5rem;font-size:.875rem;display:flex}.document-viewer-error-icon{font-size:1.25rem}.document-pdf-canvas{width:100%;max-width:100%}.document-viewer-pagination{align-items:center;gap:1rem;padding-top:.5rem;display:flex}.document-page-btn{color:#374151;cursor:pointer;background-color:#fff;border:1px solid #d1d5db;border-radius:6px;padding:.375rem .75rem;font-size:.8125rem;font-weight:500;transition:background-color .15s}.document-page-btn:hover:not(:disabled){background-color:#f3f4f6}.document-page-btn:disabled{opacity:.4;cursor:not-allowed}.document-page-info{color:#6b7280;font-size:.8125rem;font-weight:500}.assignment-dropboxes{flex-direction:column;gap:.625rem;display:flex}.assignment-dropboxes h2{color:#1f2937;margin:0;font-size:.875rem;font-weight:600}.dropbox-card{background-color:#fff;border:1px solid #e5e7eb;border-radius:8px;flex-direction:column;gap:.5rem;padding:.875rem 1rem;display:flex}.dropbox-card-header{flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:.5rem;display:flex}.dropbox-name{color:#1f2937;margin:0;font-size:.875rem;font-weight:600}.dropbox-description{color:#6b7280;margin:0;font-size:.75rem}.dropbox-constraints{flex-wrap:wrap;gap:.5rem;display:flex}.dropbox-constraint-badge{color:#4b5563;text-transform:uppercase;background-color:#f3f4f6;border-radius:4px;padding:.125rem .5rem;font-size:.6875rem;font-weight:500}.dropbox-submission-status{color:#6b7280;align-items:center;gap:.375rem;font-size:.8125rem;display:flex}.dropbox-submission-status.submitted{color:#065f46}.dropbox-submission-status.late{color:#d97706}.upload-area{cursor:pointer;background-color:#f9fafb;border:2px dashed #d1d5db;border-radius:6px;flex-direction:column;align-items:center;gap:.25rem;padding:.75rem;transition:border-color .15s,background-color .15s;display:flex}.upload-area:hover{background-color:#eff6ff;border-color:#3b82f6}.upload-area-label{color:#3b82f6;font-size:.875rem;font-weight:500}.upload-area-hint{color:#9ca3af;font-size:.75rem}.upload-disabled{cursor:not-allowed;opacity:.6;background-color:#f3f4f6;border-color:#e5e7eb}.upload-disabled:hover{background-color:#f3f4f6;border-color:#e5e7eb}.upload-file-input{opacity:0;width:0;height:0;position:absolute;overflow:hidden}.upload-area.upload-drag-over{background-color:#eff6ff;border-style:solid;border-color:#3b82f6}.upload-progress-container{flex-direction:column;align-items:center;gap:.5rem;width:100%;display:flex}.upload-progress-bar{background-color:#3b82f6;border-radius:3px;align-self:stretch;width:0%;height:6px;transition:width .2s ease-in-out}.upload-progress-text{color:#3b82f6;font-size:.8125rem;font-weight:500}.upload-error{color:#dc2626;background-color:#fef2f2;border:1px solid #fecaca;border-radius:6px;margin:0;padding:.5rem .75rem;font-size:.8125rem}.upload-replace-confirm{background-color:#fffbeb;border:1px solid #fde68a;border-radius:6px;flex-direction:column;gap:.625rem;padding:.75rem 1rem;display:flex}.upload-replace-message{color:#92400e;margin:0;font-size:.8125rem}.upload-replace-actions{gap:.5rem;display:flex}.upload-replace-btn{cursor:pointer;border:none;border-radius:4px;padding:.375rem .75rem;font-size:.8125rem;font-weight:500;transition:background-color .15s}.upload-replace-btn.confirm{color:#fff;background-color:#3b82f6}.upload-replace-btn.confirm:hover{background-color:#2563eb}.upload-replace-btn.cancel{color:#374151;background-color:#e5e7eb}.upload-replace-btn.cancel:hover{background-color:#d1d5db}.late-badge{color:#d97706;text-transform:uppercase;letter-spacing:.025em;background-color:#fef3c7;border-radius:4px;padding:.125rem .5rem;font-size:.6875rem;font-weight:600}.assignment-page .loading-container{justify-content:center;align-items:center;min-height:200px;display:flex}.assignment-page .loading-spinner{border:3px solid #e5e7eb;border-top-color:#3b82f6;border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spin}.assignment-page .error-message{color:#dc2626;background-color:#fef2f2;border:1px solid #fecaca;border-radius:8px;padding:1rem;font-size:.9375rem}.my-submissions-section{background-color:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:.875rem 1rem}.my-submissions-section h2{color:#1f2937;margin:0 0 .625rem;font-size:.875rem;font-weight:600}.my-submissions-list{flex-direction:column;gap:.375rem;display:flex}.my-submission-item{background-color:#f9fafb;border:1px solid #f3f4f6;border-radius:6px;justify-content:space-between;align-items:center;padding:.5rem .75rem;display:flex}.my-submission-info{flex-direction:column;gap:.25rem;display:flex}.my-submission-dropbox-name{color:#1f2937;font-size:.875rem;font-weight:500}.my-submission-status{color:#6b7280;font-size:.8125rem}.my-submission-status.submitted{color:#065f46}.my-submission-status.late{color:#d97706}.my-submission-status.not-submitted{color:#6b7280;font-style:italic}.my-submission-download-btn{color:#374151;cursor:pointer;background-color:#fff;border:1px solid #d1d5db;border-radius:6px;padding:.375rem .75rem;font-size:.8125rem;font-weight:500;transition:background-color .15s,border-color .15s}.my-submission-download-btn:hover:not(:disabled){background-color:#f3f4f6;border-color:#9ca3af}.my-submission-download-btn:disabled{opacity:.6;cursor:not-allowed}.cv-loading{color:#718096;flex-direction:column;justify-content:center;align-items:center;gap:.75rem;min-height:120px;padding:2rem;display:flex}.cv-spinner{border:3px solid #e2e8f0;border-top-color:#4299e1;border-radius:50%;width:32px;height:32px;animation:.8s linear infinite cv-spin}@keyframes cv-spin{to{transform:rotate(360deg)}}.cv-loading-text{color:#718096;font-size:.875rem}.cv-error{border:1px solid;border-radius:6px;flex-direction:column;align-items:flex-start;gap:.5rem;padding:1rem 1.25rem;display:flex}.cv-error--temporary{color:#7b341e;background:#fffbeb;border-color:#f6ad55}.cv-error--permanent{color:#742a2a;background:#fff5f5;border-color:#fc8181}.cv-error--unsupported{color:#4a5568;background:#f7fafc;border-color:#cbd5e0}.cv-error-icon{font-size:1.25rem}.cv-error-message{margin:0;font-size:.9rem;line-height:1.5}.cv-retry-btn{color:#fff;cursor:pointer;background:#ed8936;border:none;border-radius:4px;margin-top:.25rem;padding:.375rem .875rem;font-size:.875rem;transition:background-color .15s}.cv-retry-btn:hover{background:#dd6b20}.cv-retry-btn:focus-visible{outline-offset:2px;outline:2px solid #ed8936}.cv-video{flex-direction:column;flex:1;min-height:0;display:flex}.cv-video-container{aspect-ratio:16/9;background:#000;width:100%;max-height:calc(100% - 4rem);position:relative}.cv-legacy-google{background:#1c1d1f;flex-direction:column;flex:1;justify-content:center;align-items:center;min-height:0;padding-bottom:4rem;display:flex}.cv-open-external-btn{color:#2b6cb0;cursor:pointer;background:#ebf8ff;border:1px solid #bee3f8;border-radius:4px;align-items:center;gap:.375rem;padding:.5rem 1rem;font-size:.875rem;text-decoration:none;transition:background-color .15s,border-color .15s;display:inline-flex}.cv-open-external-btn:hover{background:#bee3f8;border-color:#90cdf4}.cv-open-external-btn:focus-visible{outline-offset:2px;outline:2px solid #4299e1}.cv-rich-text{flex-direction:column;flex:1;width:100%;min-height:0;display:flex;position:relative;overflow-y:auto}.cv-inline-content{box-sizing:border-box;width:100%;max-width:816px;min-height:400px;margin:32px auto;padding:58px}.cv-rich-text:has(.cv-inline-content){background:var(--cp-bg,#f9fafb)}.cv-paginated-content{flex:1;width:100%;padding-bottom:50px;overflow-y:auto}.cv-rich-text .le-container{padding-bottom:50px}.cv-rich-text .le-editor-inner:not(.le-editor-paginated){box-sizing:border-box;max-width:816px;min-height:400px;margin:0 auto;padding:58px}.cv-empty-content{color:#718096;flex:1;justify-content:center;align-items:center;min-height:200px;font-size:1rem;display:flex}.cv-exam{flex-direction:column;flex:1;width:100%;min-height:0;display:flex}.cv-nav-host{flex-direction:column;flex:1;min-height:0;display:flex;position:relative}.cv-slide-viewer{flex-direction:column;flex:1;width:100%;min-height:0;display:flex}.cv-slide-viewer .slide-viewer{flex:1;min-height:320px}.cv-slide-toggle-btn,.cv-slide-viewer-container{display:none}.cv-pdf{flex-direction:column;flex:1;width:100%;min-height:0;display:flex;position:relative}.cv-pdf-iframe{border:none;flex:1;width:100%;min-height:0}.cv-pdf-canvas-slide{flex:1;justify-content:center;align-items:center;min-height:0;display:flex;overflow:hidden}.pdf-canvas-wrap{justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:relative}.pdf-canvas{display:block}.pdf-canvas-loading{justify-content:center;align-items:center;width:100%;min-height:200px;display:flex}.pdf-canvas-error{justify-content:center;align-items:center;width:100%;display:flex}.cv-pdf-toolbar{z-index:20;pointer-events:none;align-items:center;gap:.375rem;padding:.75rem;display:flex;position:absolute;top:0;right:0}.cv-pdf-toolbar>*,.cv-pdf-view-btns>*{pointer-events:auto}.cv-pdf-view-btns{align-items:center;gap:.25rem;display:flex}.cv-toolbar-btn{color:#e2e8f0;cursor:pointer;-webkit-backdrop-filter:blur(4px);background:#ffffff1f;border:1px solid #fff3;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;padding:0;font-size:1rem;transition:background-color .15s,border-color .15s,color .15s;display:inline-flex}.cv-toolbar-btn:hover{color:#fff;background:#ffffff38;border-color:#ffffff59}.cv-toolbar-btn--active{color:#fff;background:#2563ebd9;border-color:#3b82f6}.cv-toolbar-btn--active:hover{background:#1d4ed8e6}.cv-toolbar-btn:focus-visible{outline-offset:2px;outline:2px solid #2563eb}.cv-toolbar-btn:disabled{opacity:.6;cursor:not-allowed}.upv-root{box-sizing:border-box;flex-direction:column;align-items:center;width:fit-content;min-width:0;margin:0 auto;padding-bottom:12px;display:flex;position:relative}.upv-root:has(.pdf-canvas-wrap--fill-width){width:calc(100% - 24px)}.upv-pdf-canvas,.upv-image-wrapper{justify-content:center;align-items:flex-start;width:100%;display:flex;overflow:visible}.upv-root:focus-visible{outline:none}.upv-page-image{object-fit:contain;border:1px solid #e5e7eb;border-radius:12px;max-width:100%;max-height:100%;box-shadow:0 2px 12px #00000017}.upv-loading,.upv-error{flex-direction:column;width:100%;min-height:200px;display:flex}.cv-download-btn{z-index:11;color:#e2e8f0;cursor:pointer;-webkit-backdrop-filter:blur(4px);background:#1c1d1fbf;border:1px solid #3e414380;border-radius:6px;align-items:center;gap:.375rem;padding:.5rem .875rem;font-size:.8125rem;font-weight:500;transition:background-color .15s,border-color .15s,color .15s;display:inline-flex;position:absolute;top:.75rem;right:.75rem}.cv-download-btn:hover{color:#fff;background:#2d2f31e6;border-color:#6a6f73}.cv-download-btn:focus-visible{outline-offset:2px;outline:2px solid #2563eb}.cv-download-btn:disabled{opacity:.6;cursor:not-allowed}.gamification-profile{background-color:#fff;border:1px solid #e5e7eb;border-radius:8px;flex-direction:column;gap:1rem;padding:1.25rem;display:flex}.gamification-profile-title{color:#1f2937;margin:0;font-size:1rem;font-weight:600}.gamification-stats{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.75rem;display:grid}.gamification-stats .stat-card{background-color:#f9fafb;border-radius:6px;align-items:center;gap:.625rem;padding:.75rem;display:flex}.gamification-stats .stat-icon{font-size:1.25rem}.gamification-stats .stat-content{flex-direction:column;display:flex}.gamification-stats .stat-value{color:#1f2937;font-size:.9375rem;font-weight:600}.gamification-stats .stat-label{color:#6b7280;text-transform:uppercase;letter-spacing:.03em;font-size:.6875rem}.gamification-progress-section{flex-direction:column;gap:.375rem;display:flex}.progress-header{justify-content:space-between;align-items:center;display:flex}.progress-label{color:#374151;font-size:.8125rem;font-weight:500}.progress-percent{color:#6b7280;font-size:.8125rem;font-weight:500}.progress-bar-wrapper{background-color:#e5e7eb;border-radius:4px;height:8px;overflow:hidden}.progress-bar-fill{background-color:#3b82f6;border-radius:4px;height:100%;transition:width .3s}.gamification-badges-preview{flex-direction:column;gap:.5rem;display:flex}.badges-preview-title{color:#374151;margin:0;font-size:.8125rem;font-weight:600}.badges-preview-list{align-items:center;gap:.5rem;display:flex}.badge-preview-item{background-color:#f0fdf4;border:1px solid #d1fae5;border-radius:6px;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.badge-preview-icon{object-fit:contain;width:24px;height:24px}.badge-preview-placeholder{font-size:1.125rem}.badges-more{color:#6b7280;background-color:#f3f4f6;border-radius:4px;padding:.25rem .5rem;font-size:.75rem;font-weight:500}.gamification-links{border-top:1px solid #f3f4f6;gap:1rem;padding-top:.5rem;display:flex}.gamification-link{color:#3b82f6;font-size:.8125rem;font-weight:500;text-decoration:none}.gamification-link:hover{text-decoration:underline}.gamification-error{color:#dc2626;margin:0;font-size:.875rem}.achievement-notifications{z-index:1000;flex-direction:column;gap:.75rem;max-width:360px;display:flex;position:fixed;top:1rem;right:1rem}.achievement-toast{background-color:#fff;border:1px solid #d1fae5;border-left:4px solid #10b981;border-radius:8px;align-items:flex-start;gap:.75rem;padding:1rem;animation:.3s ease-out slideIn;display:flex;box-shadow:0 4px 12px #0000001a}@keyframes slideIn{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}.achievement-toast-icon{background-color:#f0fdf4;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:1.25rem;display:flex}.achievement-toast-badge-img{object-fit:contain;width:28px;height:28px}.achievement-toast-content{flex:1;min-width:0}.achievement-toast-title{color:#059669;text-transform:uppercase;letter-spacing:.05em;margin:0 0 .125rem;font-size:.6875rem;font-weight:600}.achievement-toast-name{color:#1f2937;margin:0 0 .125rem;font-size:.9375rem;font-weight:600}.achievement-toast-xp{color:#059669;margin:0;font-size:.8125rem;font-weight:500}.achievement-toast-dismiss{color:#9ca3af;cursor:pointer;background:0 0;border:none;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;font-size:1.25rem;line-height:1;display:flex}.achievement-toast-dismiss:hover{color:#6b7280;background-color:#f3f4f6}.admin-shell{gap:0;min-height:calc(100vh - 56px - 4rem);margin:-2rem -1.5rem;display:flex}.admin-shell__content{min-width:0;padding:2rem var(--admin-gutter,2rem);flex:1}:where(.admin-shell__content) a{color:var(--ui-accent-interactive)}:where(.admin-shell) :where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:2px solid var(--ui-focus);outline-offset:2px}.admin-sidebar{--admin-sidebar-width:240px;--admin-sidebar-rail:60px;width:var(--admin-sidebar-width);min-width:var(--admin-sidebar-width);background-color:var(--ui-surface);border-right:1px solid var(--ui-gray-200);flex-direction:column;padding:0;display:flex}.admin-sidebar__top{border-bottom:1px solid var(--ui-gray-200);justify-content:flex-end;align-items:center;padding:.5rem .75rem;display:flex}.admin-sidebar__toggle{border-radius:var(--ui-radius-md);width:2rem;height:2rem;color:var(--ui-gray-500);cursor:pointer;background:0 0;border:1px solid #0000;flex-shrink:0;justify-content:center;align-items:center;padding:0;transition:background-color .15s,color .15s;display:inline-flex}.admin-sidebar__toggle:hover{background-color:var(--ui-gray-100);color:var(--ui-gray-800)}.admin-sidebar__toggle-icon{transition:transform .18s}.admin-sidebar__top+.admin-sidebar__group{margin-top:.75rem}.admin-sidebar__group+.admin-sidebar__group{margin-top:.5rem}.admin-sidebar__group-heading{color:var(--ui-gray-500);text-transform:uppercase;letter-spacing:.05em;margin:0;padding:.5rem 1.5rem .25rem;font-size:.6875rem;font-weight:600}.admin-sidebar__list{flex-direction:column;gap:.125rem;margin:0;padding:0 0 .25rem;list-style:none;display:flex}.admin-sidebar__item{margin:0;padding:0;position:relative}.admin-sidebar__link{color:var(--ui-gray-600);border-left:3px solid #0000;align-items:center;gap:.5rem;padding:.625rem 1.5rem;font-size:.875rem;font-weight:500;text-decoration:none;transition:background-color .15s,color .15s,border-color .15s;display:flex}.admin-sidebar__link:hover{background-color:var(--ui-gray-100);color:var(--ui-gray-800);text-decoration:none}.admin-sidebar__link:focus-visible{outline:2px solid var(--ui-focus);outline-offset:-2px}.admin-sidebar__link--active,.admin-sidebar__link--active:hover{background-color:var(--ui-accent-interactive-bg);color:var(--ui-accent-interactive);border-left-color:var(--ui-accent-interactive);font-weight:600}.admin-sidebar__icon{flex-shrink:0;width:18px;height:18px}.admin-sidebar__icon--initial{border:1.5px solid;border-radius:4px;justify-content:center;align-items:center;font-size:.625rem;font-weight:700;line-height:1;display:inline-flex}.admin-sidebar__icon--initial:before{content:attr(data-initial)}.admin-sidebar__label{min-width:0}.admin-sidebar__badge{background-color:var(--ui-gray-100);min-width:1.25rem;color:var(--ui-gray-700);text-align:center;border-radius:9999px;margin-left:auto;padding:0 .375rem;font-size:.75rem;font-weight:600;line-height:1.25rem}.admin-sidebar__link--active .admin-sidebar__badge{background-color:var(--ui-accent-interactive);color:var(--ui-on-accent)}.admin-sidebar__tooltip{display:none}@media (width>=769px){.admin-sidebar{transition:width .18s,min-width .18s}.admin-sidebar__link{white-space:nowrap;overflow:hidden}.admin-sidebar--collapsed{width:var(--admin-sidebar-rail);min-width:var(--admin-sidebar-rail)}.admin-sidebar--collapsed .admin-sidebar__top{justify-content:center;padding:.75rem 0}.admin-sidebar--collapsed .admin-sidebar__toggle-icon{transform:rotate(180deg)}.admin-sidebar--collapsed .admin-sidebar__group-heading{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.admin-sidebar--collapsed .admin-sidebar__group+.admin-sidebar__group{border-top:1px solid var(--ui-gray-200);margin:.375rem .75rem 0;padding-top:.375rem}.admin-sidebar--collapsed .admin-sidebar__group+.admin-sidebar__group .admin-sidebar__list{margin:0 -.75rem}.admin-sidebar--collapsed .admin-sidebar__link{justify-content:center;padding:.625rem 3px .625rem 0;position:relative}.admin-sidebar--collapsed .admin-sidebar__label{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.admin-sidebar--collapsed .admin-sidebar__badge{background-color:var(--ui-accent-interactive);min-width:1rem;color:var(--ui-on-accent);box-shadow:0 0 0 2px var(--ui-surface);margin:0;padding:0 .25rem;font-size:.625rem;line-height:1rem;position:absolute;top:.25rem;left:calc(50% + 2px)}.admin-sidebar--collapsed .admin-sidebar__badge--long{width:.5rem;min-width:0;height:.5rem;padding:0;top:.4375rem;left:calc(50% + 5px)}.admin-sidebar--collapsed .admin-sidebar__badge--long .admin-sidebar__badge-text{display:none}.admin-sidebar--collapsed .admin-sidebar__tooltip{z-index:50;border-radius:var(--ui-radius-md);background-color:var(--ui-tooltip-bg);color:var(--ui-tooltip-text);white-space:nowrap;pointer-events:none;box-shadow:var(--ui-shadow-md);align-items:center;gap:.375rem;padding:.3125rem .5rem;font-size:.8125rem;font-weight:500;line-height:1.25rem;display:none;position:absolute;top:50%;left:calc(100% + .5rem);transform:translateY(-50%)}.admin-sidebar--collapsed .admin-sidebar__item:hover .admin-sidebar__tooltip,.admin-sidebar--collapsed .admin-sidebar__link:focus-visible+.admin-sidebar__tooltip{display:inline-flex}.admin-sidebar__tooltip-badge{background-color:color-mix(in srgb, var(--ui-tooltip-text) 20%, transparent);border-radius:9999px;padding:0 .375rem;font-size:.75rem;font-weight:600}}@media (width>=769px) and (prefers-reduced-motion:reduce){.admin-sidebar,.admin-sidebar__toggle-icon{transition:none}}@media (width<=768px){.admin-shell{flex-direction:column}.admin-shell__content{padding:1.25rem 1rem}.admin-sidebar{border-right:none;border-bottom:1px solid var(--ui-gray-200);width:auto;min-width:0;padding-bottom:.5rem}.admin-sidebar__top,.admin-sidebar__icon{display:none}.admin-sidebar__group-heading{padding:.5rem 1rem .25rem}.admin-sidebar__list{flex-flow:wrap;gap:.25rem;padding:0 .75rem}.admin-sidebar__link{border-radius:var(--ui-radius-md);border-left:none;padding:.375rem .625rem}}.course-admin-loading{color:var(--ui-gray-500);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:1rem;font-size:.875rem;display:flex}.course-admin-error{color:var(--ui-danger);flex:1;padding:2rem;font-size:.875rem}.ca-tab-title{color:var(--ui-gray-800);margin:0 0 1.25rem;font-size:1.125rem;font-weight:600;line-height:1.3}.ca-tab-body{padding-top:1.25rem}.course-admin-content-tree{max-width:var(--admin-readable-max)}.course-admin-content-section h2{color:var(--ui-gray-800);margin:0 0 1.5rem;font-size:1.25rem;font-weight:600}.course-admin-content-actions{flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:1rem;display:flex}.course-admin-add-section-form{align-items:center;gap:.5rem;display:flex}.course-admin-users-table{border-collapse:collapse;width:100%;font-size:.875rem}.course-admin-users-table th,.course-admin-users-table td{text-align:left;border-bottom:1px solid var(--ui-gray-200);padding:.625rem .75rem}.course-admin-users-table th{color:var(--ui-gray-700);background:var(--ui-gray-50);font-weight:600}.course-admin-users-table td{color:var(--ui-gray-800)}.course-admin-role-badge{border-radius:9999px;padding:.125rem .5rem;font-size:.75rem;font-weight:500;display:inline-block}.course-admin-content-section .content-item{flex-direction:column;margin-left:1.5rem;padding:.25rem 0;display:flex}.course-admin-content-section .content-item .content-item-header{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.course-admin-content-section .content-item .content-item-link{flex:1;align-items:center;gap:.5rem;min-width:0;display:flex}.course-admin-content-section .content-item .toc-section-actions{opacity:1;flex-shrink:0;gap:.25rem;display:flex}.course-admin-content-header{align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.course-admin-content-header h2{flex:1;margin:0}.course-admin-content-section .toc-section-actions{opacity:1}.course-admin-content-section .toc-section-title,.course-admin-content-section .content-item-title{color:var(--ui-gray-800)}.course-admin-content-section .content-item-type-badge,.editor-dialog__title .content-item-type-badge{color:var(--ui-slate-500);background-color:var(--ui-slate-100)}.course-admin-content-section .toc-section-toggle:hover,.course-admin-content-section .content-item-link:hover{background-color:var(--ui-slate-100);border-color:var(--ui-slate-200)}.course-admin-content-section .content-item-external-icon,.course-admin-content-section .content-item-toggle-icon{color:var(--ui-slate-400)}.course-admin-content-section .toc-inline-form{background-color:var(--ui-slate-50);border-color:var(--ui-slate-200)}.course-admin-content-section .toc-inline-input,.course-admin-content-section .toc-inline-select{background-color:var(--ui-surface);border-color:var(--ui-slate-200);color:var(--ui-text)}.course-admin-content-section .content-item-error{background-color:var(--ui-danger-bg);border-color:var(--ui-danger-border);color:var(--ui-danger-text)}.sortable-th{cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}.sortable-th:hover{background:var(--ui-gray-100)}.sort-indicator{color:var(--ui-gray-400);vertical-align:middle;margin-left:.3em;font-size:.7em;display:inline-block}.sortable-th[aria-sort=ascending] .sort-indicator,.sortable-th[aria-sort=descending] .sort-indicator{color:var(--ui-primary)}.table-pagination{color:var(--ui-gray-500);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;padding:.625rem 0;font-size:.875rem;display:flex}.table-pagination-info{white-space:nowrap}.table-pagination-controls{align-items:center;gap:.25rem;display:flex}.table-pagination-controls button{border:1px solid var(--ui-border);background:var(--ui-surface);min-width:2rem;height:2rem;color:var(--ui-gray-700);cursor:pointer;border-radius:4px;padding:0 .5rem;font-size:.8125rem;line-height:1}.table-pagination-controls button:hover:not(:disabled){background:var(--ui-gray-100);border-color:var(--ui-gray-400)}.table-pagination-controls button:disabled{opacity:.4;cursor:default}.table-pagination-controls button[aria-current=page]{background:var(--ui-accent-interactive);border-color:var(--ui-accent-interactive);color:var(--ui-on-accent);font-weight:600}.table-pagination-page-size{align-items:center;gap:.375rem;display:flex}.table-pagination-page-size select{border:1px solid var(--ui-border);background:var(--ui-surface);height:2rem;color:var(--ui-gray-700);border-radius:4px;padding:0 .375rem;font-size:.8125rem}.import-modal{background:var(--ui-surface);box-shadow:var(--ui-shadow-lg);border-radius:8px;flex-direction:column;width:100%;max-width:520px;max-height:90vh;display:flex;overflow-y:auto}.import-modal-body{flex-direction:column;flex:1;gap:1rem;padding:1.25rem 1.5rem;display:flex}.import-modal-file-input{color:var(--ui-gray-700);font-size:.875rem}.import-modal-filename{color:var(--ui-gray-500);margin:0;font-size:.8125rem}.import-modal-mode-fieldset{border:1px solid var(--ui-gray-200);border-radius:6px;margin:0;padding:.75rem 1rem}.import-modal-mode-fieldset:disabled{opacity:.5}.import-modal-radio-label{cursor:pointer;flex-direction:column;gap:.125rem;padding:.5rem 0;display:flex}.import-modal-radio-label+.import-modal-radio-label{border-top:1px solid var(--ui-gray-100)}.import-modal-radio-label input[type=radio]{margin-right:.5rem}.import-modal-radio-title{color:var(--ui-text);font-size:.875rem;font-weight:500}.import-modal-radio-desc{color:var(--ui-gray-500);margin-left:1.375rem;font-size:.8125rem;line-height:1.4}.import-modal-replace-warning{background-color:var(--ui-warning-bg-strong);border:1px solid var(--ui-warning-accent);color:var(--ui-warning-text);border-radius:6px;padding:.75rem 1rem;font-size:.875rem}.import-success-notification{background-color:var(--ui-success-bg);border:1px solid var(--ui-success-border);color:var(--ui-success-text);border-radius:6px;margin-top:.5rem;padding:.625rem .875rem;font-size:.875rem}.export-button-container{flex-direction:column;align-items:flex-start;gap:.25rem;display:flex}.export-button-error{color:var(--ui-danger-hover);margin:0;font-size:.8125rem}.drag-handle{cursor:grab;color:var(--ui-gray-400);-webkit-user-select:none;user-select:none;flex-shrink:0;padding:0 .25rem;font-size:1rem;line-height:1}.drag-handle:active{cursor:grabbing}.section-drag-handle{padding:0 .375rem 0 0}.toc-section--dragging,.content-item--dragging{opacity:.4}.toc-section--drag-over>.toc-section-header,.content-item--drag-over{outline:2px dashed var(--ui-primary-500);outline-offset:2px;background-color:var(--ui-primary-50);border-radius:4px}.delete-confirm-dialog{box-shadow:var(--ui-shadow-lg);border:none;border-radius:8px;width:calc(100vw - 2rem);max-width:400px;margin:0;padding:0;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}.delete-confirm-dialog::backdrop{background-color:var(--ui-overlay)}.btn-danger:not(.table-action-btn){background-color:var(--ui-danger);color:var(--ui-on-solid);border-color:var(--ui-danger)}.btn-danger:not(.table-action-btn):hover{background-color:var(--ui-danger-hover);border-color:var(--ui-danger-hover)}.content-item-access-badge{opacity:.8;flex-shrink:0;font-size:.75rem;line-height:1}.content-item--editing{border:1px solid var(--ui-primary-200);background:var(--ui-slate-50);border-radius:6px;margin-bottom:.5rem;padding:.75rem}.toc-item-form-header{color:var(--ui-gray-700);align-items:center;gap:.5rem;margin-bottom:.5rem;font-size:.875rem;font-weight:500;display:flex}.toc-section-content--item-drag-over{outline:2px dashed var(--ui-primary-500);outline-offset:2px;background-color:var(--ui-primary-50);border-radius:4px;min-height:2rem}.toc-section-content--drop-target{border:2px dashed var(--ui-border);border-radius:4px;min-height:3rem;margin:.25rem .5rem}.course-admin-messaging-section{max-width:1000px}.course-admin-messaging-section h2{color:var(--ui-gray-800);margin:0 0 1.5rem;font-size:1.25rem;font-weight:600}.messaging-empty-icon{font-size:2.5rem;line-height:1}.messaging-empty-title{color:var(--ui-gray-700);margin:0;font-size:1rem;font-weight:600}.messaging-empty-description{color:var(--ui-gray-500);margin:0;font-size:.875rem}.messaging-linked-group{background:var(--ui-success-bg);border:1px solid var(--ui-success-border);color:var(--ui-success-text);border-radius:9999px;align-items:center;gap:.375rem;padding:.25rem .625rem;font-size:.8125rem;display:inline-flex}.messaging-linked-group-icon{font-size:.875rem;line-height:1}.messaging-linked-group-name{text-overflow:ellipsis;white-space:nowrap;max-width:200px;font-weight:600;overflow:hidden}.messaging-linked-group-chat-id{color:var(--ui-success-solid-hover);opacity:.8;font-family:ui-monospace,monospace;font-size:.75rem}.messaging-section-header{align-items:center;gap:.75rem;margin-bottom:1rem;display:flex}.messaging-unlink-section{flex-direction:column;gap:.25rem;display:flex}.course-admin-messaging-section>.ui-tabs{margin-bottom:0}.messaging-tab-content{border:1px solid var(--ui-gray-200);background:var(--ui-surface);border-top:none;border-radius:0 0 .5rem .5rem;flex-direction:column;min-height:400px;display:flex}.messaging-message-list{flex-direction:column;flex:1;gap:.75rem;min-height:300px;max-height:480px;padding:1rem 1.25rem;display:flex;overflow-y:auto}.messaging-message{flex-direction:column;gap:.25rem;display:flex}.messaging-message-header{align-items:baseline;gap:.625rem;display:flex}.messaging-message-sender{color:var(--ui-gray-700);font-size:.8125rem;font-weight:600}.messaging-message-timestamp{color:var(--ui-gray-400);font-size:.75rem}.messaging-message-text{color:var(--ui-gray-800);white-space:pre-wrap;word-break:break-word;margin:0;font-size:.875rem;line-height:1.5}.messaging-compose-form{border-top:1px solid var(--ui-gray-200);background:var(--ui-gray-50);border-radius:0 0 .5rem .5rem;flex-direction:column;gap:.5rem;padding:.875rem 1.25rem 1rem;display:flex}.messaging-send-error{background:var(--ui-danger-bg);border:1px solid var(--ui-danger-border);color:var(--ui-danger-hover);border-radius:.375rem;padding:.5rem .75rem;font-size:.8125rem}.messaging-compose-field{flex-direction:column;gap:.25rem;display:flex}.messaging-compose-textarea{border:1px solid var(--ui-border);resize:vertical;box-sizing:border-box;border-radius:.375rem;width:100%;padding:.5rem .75rem;font-family:inherit;font-size:.875rem;line-height:1.5;transition:border-color .15s,box-shadow .15s}.messaging-compose-textarea:focus{border-color:var(--ui-accent-interactive);box-shadow:var(--ui-focus-ring);outline:none}.messaging-compose-textarea--error{border-color:var(--ui-danger-accent)}.messaging-compose-textarea--error:focus{border-color:var(--ui-danger);box-shadow:0 0 0 2px var(--ui-danger-bg-strong)}.messaging-compose-error{color:var(--ui-danger);margin:0;font-size:.8125rem}.messaging-compose-actions{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.messaging-char-count{color:var(--ui-gray-400);font-size:.75rem}.access-rule-panel{border:1px solid var(--ui-primary-200);background:var(--ui-slate-50);border-radius:6px;margin:.5rem 0 .5rem 1.5rem;padding:1rem}.access-rule-panel__header{justify-content:space-between;align-items:center;margin-bottom:.75rem;display:flex}.access-rule-panel__title{color:var(--ui-gray-800);margin:0;font-size:.9375rem;font-weight:600}.access-rule-panel__empty{color:var(--ui-gray-500);margin:0 0 .75rem;font-size:.875rem}.access-rule-panel__rules{flex-direction:column;gap:.5rem;margin-bottom:.75rem;display:flex}.access-rule-panel__form{margin-top:.75rem}.access-rule-panel__form-title{color:var(--ui-gray-700);margin:0 0 .75rem;font-size:.875rem;font-weight:600}.access-rule-panel-add-options{flex-wrap:wrap;gap:.5rem;margin-top:.75rem;display:flex}.rule-read-view{background:var(--ui-surface);border:1px solid var(--ui-gray-200);border-radius:6px;justify-content:space-between;align-items:center;gap:.75rem;padding:.625rem .75rem;display:flex}.rule-read-view__text{color:var(--ui-gray-700);flex:1;font-size:.875rem}.rule-read-view__actions{flex-shrink:0;gap:.375rem;display:flex}.rule-form{flex-direction:column;gap:.75rem;display:flex}.rule-form .ui-input{max-width:320px}.rule-form-actions{gap:.5rem;display:flex}.rule-form-confirmation{color:var(--ui-gray-700);margin:0;font-size:.875rem}.rule-warning-badge{cursor:default;vertical-align:middle;margin-left:.25rem;font-size:1rem;display:inline-block}.course-admin-access-rules{max-width:1000px}.course-admin-access-rules h2{color:var(--ui-gray-800);margin:0 0 1.5rem;font-size:1.25rem;font-weight:600}.access-rules-section{margin-bottom:2rem}.access-rules-rule-list{flex-direction:column;gap:.5rem;display:flex}.access-rules-rule-row{background:var(--ui-gray-50);border:1px solid var(--ui-gray-200);border-radius:6px;flex-wrap:wrap;align-items:center;gap:.5rem 1rem;padding:.75rem 1rem;font-size:.875rem;display:flex}.access-rules-rule-row--editing{background:var(--ui-info-bg);border-color:var(--ui-primary-300)}.access-rules-rule-item-title{color:var(--ui-gray-800);text-overflow:ellipsis;white-space:nowrap;flex:none;max-width:200px;font-weight:600;overflow:hidden}.access-rules-rule-summary{color:var(--ui-gray-700);flex:1}.access-rules-rule-meta{color:var(--ui-gray-500);flex-basis:100%;font-size:.8125rem}.access-rules-warning-badge{cursor:default;flex-shrink:0;font-size:1rem}.editor-dialog{box-shadow:var(--ui-shadow-lg);background:var(--ui-surface);border:none;border-radius:10px;flex-direction:column;width:min(1340px,100vw - 2rem);max-height:calc(100vh - 4rem);margin:0;padding:0;display:flex;position:fixed;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-50%)}.editor-dialog::backdrop{background-color:var(--ui-overlay);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.editor-dialog:has(.pool-exam-editor){width:auto!important;max-width:none!important;height:auto!important;max-height:none!important;margin:0!important;inset:1rem!important;transform:none!important}.editor-dialog--fullscreen{border-radius:0;width:100%;max-width:100%;height:100%;max-height:100%;inset:0;transform:none}.editor-dialog__title{color:var(--ui-text);align-items:center;gap:.5rem;min-width:0;font-size:.9375rem;font-weight:600;display:flex;overflow:hidden}.editor-dialog__title span:nth-child(2){text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.editor-dialog__title-edit-icon{opacity:0;flex-shrink:0;transition:opacity .15s}.editor-dialog__title-input{font:inherit;color:var(--ui-text);border:1px solid var(--ui-accent-500);min-width:12rem;max-width:100%;box-shadow:var(--ui-focus-ring);border-radius:.25rem;outline:none;padding:.125rem .375rem;font-size:.9375rem;font-weight:600}.editor-dialog__controls{flex-shrink:0;align-items:center;gap:.25rem;display:flex}.editor-dialog__body{flex-direction:column;flex:1;min-height:0;padding:1rem;display:flex;overflow-y:auto}.editor-dialog__body .loading-container{justify-content:center;align-items:center;min-height:200px;display:flex}.editor-dialog__body>*{flex:1;min-height:0}.editor-dialog__body .exam-editor{flex:none;overflow-y:auto}.editor-dialog__body:has(.cue-point-admin-player){overflow:hidden}.editor-dialog__footer{border-top:1px solid var(--ui-gray-200);flex-shrink:0;justify-content:flex-end;align-items:center;gap:8px;padding:12px 16px;display:flex}.editor-dialog__autosave-status{color:var(--ui-gray-500);margin-right:auto;font-size:13px;font-style:italic}.editor-dialog__autosave-status--saved{color:var(--ui-success-solid-hover)}.editor-dialog__autosave-status--error{color:var(--ui-danger);font-style:normal}.btn-primary:not(.table-action-btn){background-color:var(--ui-accent-interactive);color:var(--ui-on-accent);border-color:var(--ui-accent-interactive)}.btn-primary:not(.table-action-btn):hover:not(:disabled){background-color:var(--ui-primary-hover);border-color:var(--ui-primary-hover)}.btn-secondary:not(.table-action-btn){background-color:var(--ui-surface);color:var(--ui-gray-700);border-color:var(--ui-border)}.btn-secondary:not(.table-action-btn):hover:not(:disabled){background-color:var(--ui-gray-50);border-color:var(--ui-gray-400)}.ca-about{flex-direction:column;gap:2rem;display:flex}.ca-about-syllabus__header{flex-wrap:wrap;align-items:baseline;gap:.5rem .75rem;margin-bottom:.75rem;display:flex}.ca-summary .ca-summary__title{letter-spacing:.05em;text-transform:uppercase;color:var(--ui-gray-500);margin:0 0 .75rem;font-size:.75rem;font-weight:600}.ca-about-syllabus__version{color:var(--ui-text-muted);font-size:.875rem}.ca-about-syllabus__actions{gap:.25rem;margin-left:auto;display:flex}.syllabus-tree{flex-direction:column;gap:.25rem;display:flex}.syllabus-section-node{border-radius:6px;overflow:hidden}.syllabus-section-depth-1{border:1px solid var(--ui-gray-200);margin-bottom:.5rem}.syllabus-section-depth-2{border-left:2px solid var(--ui-primary-200);margin:.25rem 0 .25rem 1rem}.syllabus-section-depth-3{border-left:2px solid var(--ui-accent-200);margin:.25rem 0 .25rem 1.5rem}.syllabus-section-toggle{cursor:pointer;text-align:left;width:100%;color:var(--ui-text);background:0 0;border:none;align-items:baseline;gap:.5rem;padding:.625rem .75rem;font-size:.875rem;transition:background-color .12s;display:flex}.syllabus-section-depth-1>.syllabus-section-toggle{background:var(--ui-gray-50);font-weight:600}.syllabus-section-toggle:hover{background:var(--ui-primary-50)}.syllabus-toggle-icon{color:var(--ui-gray-500);flex-shrink:0;margin-top:1px;font-size:.625rem}.syllabus-section-code{color:var(--ui-primary-hover);flex-shrink:0;font-size:.8125rem;font-weight:700}.syllabus-section-title{color:var(--ui-gray-800);flex:1}.syllabus-section-body{padding:.375rem .75rem .625rem}.syllabus-section-framework{background:var(--ui-info-bg);border:1px solid var(--ui-info-border);border-radius:5px;margin:.375rem 0;padding:.5rem .75rem;font-size:.8125rem}.syllabus-framework-row{align-items:baseline;gap:.5rem;margin-bottom:.25rem;display:flex}.syllabus-framework-row:last-child{margin-bottom:0}.syllabus-framework-ref{color:var(--ui-primary-700);flex-shrink:0;font-weight:600}.syllabus-framework-statement{color:var(--ui-gray-700)}.syllabus-outcomes{margin-top:.375rem}.syllabus-outcomes-label{color:var(--ui-slate-600);text-transform:uppercase;letter-spacing:.03em;margin-bottom:.25rem;font-size:.75rem;font-weight:600}.syllabus-outcomes-list{margin:0;padding-left:1.25rem;list-style:outside}.syllabus-outcome-item{align-items:baseline;gap:.375rem;margin-bottom:.125rem;font-size:.8125rem;display:flex}.syllabus-children{margin-top:.25rem}.pool-exam-editor{flex-direction:column;gap:1rem;padding:.25rem 0;display:flex}.pool-exam-bank-select{border:1px solid var(--ui-border);background:var(--ui-surface);color:var(--ui-text);cursor:pointer;border-radius:6px;flex:1;min-width:200px;padding:.375rem .625rem;font-size:.875rem}.pool-exam-bank-select:focus{outline:2px solid var(--ui-focus);outline-offset:1px}.pool-exam-settings{background:var(--ui-gray-50);border:1px solid var(--ui-gray-200);border-radius:6px;flex-wrap:wrap;gap:1rem;padding:.75rem;display:flex}.pool-exam-label{color:var(--ui-gray-700);flex-direction:column;gap:.25rem;min-width:140px;font-size:.8125rem;font-weight:500;display:flex}.pool-exam-label--inline{min-width:unset;flex-direction:row;align-items:center;gap:.5rem}.pool-exam-input{border:1px solid var(--ui-border);background:var(--ui-surface);width:100%;max-width:120px;color:var(--ui-gray-800);border-radius:5px;padding:.375rem .625rem;font-size:.875rem}.pool-exam-selection-panel{border:1px solid var(--ui-gray-200);border-radius:6px;overflow:hidden}.pool-exam-selection-header{background:var(--ui-gray-100);color:var(--ui-gray-700);border-bottom:1px solid var(--ui-gray-200);flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.5rem;padding:.5rem .75rem;font-size:.8125rem;font-weight:600;display:flex}.pool-exam-selection-count{color:var(--ui-gray-500);font-size:.75rem;font-weight:400}.pool-exam-selection-right{flex-direction:column;align-items:flex-end;gap:.2rem;display:flex}.pool-exam-count-loading{color:var(--ui-gray-400);font-size:.75rem;font-style:italic}.pool-exam-matching-count{border-radius:10px;padding:1px 8px;font-size:.75rem;font-weight:600}.pool-exam-matching-count--ok{background:var(--ui-success-bg-strong);color:var(--ui-success-solid-hover)}.pool-exam-matching-count--none{background:var(--ui-danger-bg-strong);color:var(--ui-danger-hover)}.pool-exam-tree{max-height:360px;padding:.5rem .75rem;overflow-y:auto}.pool-exam-section-node{margin-bottom:.25rem}.pool-exam-section-label{cursor:pointer;align-items:baseline;gap:.5rem;padding:.25rem 0;font-size:.8125rem;display:flex}.pool-exam-section-code{color:var(--ui-primary-hover);flex-shrink:0;font-weight:700}.pool-exam-section-title{color:var(--ui-gray-800)}.pool-exam-outcomes-list{margin:0;padding:0;list-style:none}.pool-exam-outcome-label{cursor:pointer;color:var(--ui-gray-700);align-items:baseline;gap:.375rem;padding:.2rem 0 .2rem 1.5rem;font-size:.8125rem;display:flex}.pool-exam-outcome-ref{color:var(--ui-primary-700);flex-shrink:0;font-weight:600}.pool-exam-outcome-statement{color:var(--ui-gray-700)}.pool-exam-loading,.pool-exam-error,.pool-exam-empty{color:var(--ui-gray-500);padding:.75rem;font-size:.8125rem}.pool-exam-error{color:var(--ui-danger-text)}.pool-exam-footer{justify-content:flex-end;align-items:center;gap:.75rem;display:flex}.pool-exam-saved-hint{color:var(--ui-success-solid);font-size:.8125rem}.populate-syllabus-modal{width:calc(100vw - 100px);max-width:calc(100vw - 100px);height:calc(100vh - 100px);max-height:calc(100vh - 100px);box-shadow:var(--ui-shadow-lg);background:var(--ui-surface);border:none;border-radius:10px;flex-direction:column;padding:0;display:flex;position:fixed;top:50px;left:50px;transform:none}.populate-syllabus-modal::backdrop{background-color:var(--ui-overlay)}.populate-syllabus-modal__content{flex:1;min-height:200px;padding:1rem 1.5rem;overflow-y:auto}.populate-syllabus-modal__loading{color:var(--ui-gray-500);flex-direction:column;justify-content:center;align-items:center;gap:.75rem;padding:3rem 1rem;font-size:.875rem;display:flex}.populate-syllabus-modal__error{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:.75rem;padding:2rem 1rem;display:flex}.populate-syllabus-modal__controls{border-bottom:1px solid var(--ui-gray-100);align-items:center;gap:.75rem;margin-bottom:.75rem;padding-bottom:.75rem;display:flex}.populate-syllabus-modal__controls button{border:1px solid var(--ui-border);color:var(--ui-gray-600);cursor:pointer;background:0 0;border-radius:4px;padding:.25rem .625rem;font-size:.8125rem;transition:background-color .15s,border-color .15s}.populate-syllabus-modal__controls button:hover{background-color:var(--ui-gray-100);border-color:var(--ui-gray-400)}.populate-syllabus-modal__tree{margin:0;padding:0;list-style:none}.populate-syllabus-modal__progress{color:var(--ui-gray-600);flex-direction:column;justify-content:center;align-items:center;gap:.75rem;padding:2rem 1rem;font-size:.875rem;display:flex}.populate-syllabus-modal__banner{background-color:var(--ui-warning-bg-strong);border:1px solid var(--ui-warning-accent);color:var(--ui-warning-text);border-radius:6px;align-items:flex-start;gap:.75rem;margin-bottom:1rem;padding:.75rem 1rem;font-size:.875rem;display:flex}.populate-syllabus-modal__banner-content{flex:1}.populate-syllabus-modal__banner-content p{margin:0 0 .5rem}.modal-close-btn{color:var(--ui-gray-400);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:.25rem .5rem;font-size:1.5rem;line-height:1;position:absolute;top:.75rem;right:.75rem}.modal-close-btn:hover{color:var(--ui-gray-700);background:var(--ui-gray-100)}.syllabus-supp-docs{background:var(--ui-slate-50);border:1px solid var(--ui-slate-200);border-radius:8px;margin-bottom:1.5rem;padding:1rem}.syllabus-supp-docs-heading{color:var(--ui-slate-800);margin:0 0 .75rem;font-size:.9375rem;font-weight:600}.syllabus-doc-list{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.syllabus-doc-item{flex-direction:column;display:flex}.syllabus-doc-pdf{background:var(--ui-surface);border:1px solid var(--ui-gray-200);border-radius:6px;align-items:center;gap:.5rem;padding:.5rem .75rem;display:flex}.syllabus-doc-icon{flex-shrink:0;font-size:1rem}.syllabus-doc-title{color:var(--ui-gray-700);flex:1;font-size:.875rem;font-weight:500}.syllabus-doc-richtext{background:var(--ui-surface);border:1px solid var(--ui-gray-200);border-radius:6px;overflow:hidden}.syllabus-doc-richtext-summary{color:var(--ui-gray-700);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:.5rem;padding:.5rem .75rem;font-size:.875rem;font-weight:500;list-style:none;display:flex}.syllabus-doc-richtext-summary::-webkit-details-marker{display:none}.syllabus-doc-richtext-summary:before{content:"▶";color:var(--ui-gray-400);flex-shrink:0;font-size:.625rem;transition:transform .15s}details[open] .syllabus-doc-richtext-summary:before{transform:rotate(90deg)}.syllabus-doc-richtext-body{border-top:1px solid var(--ui-gray-100);padding:.75rem}.syllabus-section-docs{margin:.5rem 0}.populate-syllabus-modal__node{margin:0}.populate-syllabus-modal__label{color:var(--ui-gray-800);cursor:pointer;border-radius:4px;align-items:baseline;gap:.5rem;padding:.25rem .375rem;font-size:.875rem;display:flex}.populate-syllabus-modal__label:hover{background:var(--ui-gray-100)}.populate-syllabus-modal__checkbox{width:1rem;height:1rem;accent-color:var(--ui-primary);cursor:pointer;flex-shrink:0;margin:0;position:relative;top:.125rem}.populate-syllabus-modal__section-title{min-width:0}.populate-syllabus-modal__banner--success{background-color:var(--ui-success-bg);border-color:var(--ui-success-accent);color:var(--ui-success-text)}.populate-syllabus-modal__note{color:var(--ui-gray-500);margin:0 0 .5rem;font-size:.8125rem}.populate-syllabus-modal__outcome-count{white-space:nowrap;align-items:center;gap:.125rem;font-size:.75rem;display:inline-flex}.toc-outcome-count{background:var(--ui-accent-100);min-width:1rem;color:var(--ui-accent-700);text-align:center;border-radius:999px;padding:0 .25rem;font-size:.6875rem;font-weight:600;line-height:1rem}.toc-outcome-panel{border:1px solid var(--ui-accent-100);background:var(--ui-slate-50);border-radius:8px;margin:.5rem 0 .75rem;padding:.75rem}.toc-outcome-panel__header{justify-content:space-between;align-items:center;margin-bottom:.5rem;display:flex}.toc-outcome-panel__title{color:var(--ui-gray-700);font-size:.8125rem;font-weight:600}.toc-outcome-panel__error{background:var(--ui-danger-bg);color:var(--ui-danger-hover);border-radius:4px;margin:0 0 .5rem;padding:.375rem .625rem;font-size:.8125rem}.toc-video-source{border:none;flex-direction:column;gap:.375rem;margin:0;padding:0;display:flex}.toc-video-source__option{color:var(--ui-gray-700);cursor:pointer;align-items:center;gap:.5rem;font-size:.875rem;display:flex}.toc-video-source-line{color:var(--ui-gray-700);margin:0 0 .5rem;font-size:.875rem;font-weight:500}.toc-video-source-note{color:var(--ui-gray-500);margin-top:.125rem;font-weight:400;display:block}.toc-video-replace{padding:16px 16px 0}.toc-video-replace__row{align-items:center;gap:.5rem;display:flex}.toc-video-replace__row .ui-input{flex:1;min-width:0}.ca-payment-channels{color:var(--ui-gray-600);margin:-.5rem 0 1rem;font-size:.875rem}.course-admin-payment-model-section{max-width:var(--admin-readable-max)}.visibility-selector{align-items:center;display:inline-flex;position:relative}.visibility-badge{cursor:pointer;white-space:nowrap;border:1px solid #0000;border-radius:9999px;align-items:center;gap:.25rem;padding:.2rem .55rem;font-size:.75rem;font-weight:500;line-height:1.4;transition:opacity .15s,box-shadow .15s;display:inline-flex}.visibility-badge:disabled{opacity:.6;cursor:not-allowed}.visibility-badge:focus-visible{outline-offset:2px;outline:2px solid}.visibility-badge--draft{background-color:var(--ui-gray-100);color:var(--ui-gray-700);border-color:var(--ui-gray-300)}.visibility-badge--published{background-color:var(--ui-success-bg-strong);color:var(--ui-success-text);border-color:var(--ui-success-border)}.visibility-badge--scheduled{background-color:var(--ui-warning-bg-strong);color:var(--ui-warning-text);border-color:var(--ui-warning-border-strong)}.visibility-badge--hidden{background-color:var(--ui-gray-100);color:var(--ui-gray-500);border-color:var(--ui-gray-400);border-style:dashed}.visibility-badge__caret{opacity:.7}.visibility-panel{z-index:100;background:var(--ui-surface);border:1px solid var(--ui-gray-200);box-shadow:var(--ui-shadow-md);border-radius:8px;flex-direction:column;gap:.6rem;min-width:220px;padding:.75rem;display:flex;position:absolute;top:calc(100% + 4px);left:0}.visibility-panel__field{flex-direction:column;gap:.2rem;display:flex}.visibility-panel__label{color:var(--ui-gray-700);text-transform:uppercase;letter-spacing:.03em;font-size:.75rem;font-weight:600}.visibility-panel__hint{color:var(--ui-gray-600);margin:0;font-size:.75rem}.visibility-panel__select{border:1px solid var(--ui-gray-300);background:var(--ui-surface);color:var(--ui-gray-800);cursor:pointer;border-radius:6px;padding:.4rem .6rem;font-size:.875rem;transition:border-color .15s}.visibility-panel__select:focus{border-color:var(--ui-accent-interactive);box-shadow:0 0 0 2px var(--ui-primary-100);outline:none}.visibility-panel__select:disabled{background:var(--ui-gray-50);cursor:not-allowed}.visibility-panel__date-input{border:1px solid var(--ui-gray-300);color:var(--ui-gray-800);border-radius:6px;padding:.4rem .6rem;font-size:.875rem;transition:border-color .15s}.visibility-panel__date-input:focus{border-color:var(--ui-accent-interactive);box-shadow:0 0 0 2px var(--ui-primary-100);outline:none}.visibility-panel__date-input:disabled{background:var(--ui-gray-50);cursor:not-allowed}.visibility-panel__error{background:var(--ui-danger-bg);border:1px solid var(--ui-red-300);color:var(--ui-danger-text);border-radius:4px;margin:0;padding:.35rem .6rem;font-size:.8125rem;line-height:1.4}.visibility-panel__actions{border-top:1px solid var(--ui-gray-100);justify-content:flex-end;gap:.5rem;padding-top:.25rem;display:flex}.course-admin-icon{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;pointer-events:none;width:1rem;height:1rem}.course-admin-icon--filled{fill:currentColor;stroke:none}.toc-section--nested{margin-left:var(--ui-space-4)}.ca-downloadable-toggle{align-items:center;gap:var(--ui-space-2);margin-top:var(--ui-space-3);color:var(--ui-text);cursor:pointer;font-size:.875rem;display:flex}.toc-outcome-tag{gap:.125rem}.toc-outcome-tag:not(.toc-outcome-tag--tagged){opacity:.55}.assignment-detail{max-width:900px;padding:24px}.field-hint{color:var(--ui-gray-400);margin-top:4px;font-size:.75rem;display:block}.assignment-detail-error{color:var(--ui-danger);background:var(--ui-danger-bg);border:1px solid var(--ui-danger-border);border-radius:8px;margin-bottom:16px;padding:12px;font-size:.875rem}.doc-panel{width:100%}.doc-panel-loading{color:var(--ui-gray-500);padding:24px 0;font-size:.875rem}.doc-panel-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.doc-panel-title{color:var(--ui-gray-900);margin:0;font-size:1rem;font-weight:600;line-height:1}.doc-upload-form{background:var(--ui-gray-50);border:1px solid var(--ui-gray-200);border-radius:8px;margin-bottom:16px;padding:16px}.doc-upload-actions{gap:8px;display:flex}.doc-panel-empty{text-align:center;color:var(--ui-gray-500);background:var(--ui-gray-50);border:1px dashed var(--ui-gray-200);border-radius:8px;padding:32px}.doc-panel-empty p{margin:0 0 4px;font-size:.875rem}.doc-list{margin:0;padding:0;list-style:none}.doc-list-item{background:var(--ui-surface);border:1px solid var(--ui-gray-200);cursor:grab;border-radius:6px;align-items:center;gap:8px;margin-bottom:6px;padding:10px 12px;transition:box-shadow .15s,opacity .15s,border-color .15s;display:flex}.doc-list-item:active{cursor:grabbing}.doc-list-item--dragging{opacity:.5}.doc-list-item--drag-over{border-color:var(--ui-primary-600);box-shadow:var(--ui-focus-ring)}.doc-list-item-drag-handle{color:var(--ui-gray-400);-webkit-user-select:none;user-select:none;text-align:center;flex-shrink:0;width:20px;font-size:1rem}.doc-list-item-content{flex:1;min-width:0}.doc-list-item-info{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.doc-list-item-position{color:var(--ui-gray-500);min-width:20px;font-size:.8rem;font-weight:500}.doc-list-item-name{color:var(--ui-gray-900);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:.875rem;font-weight:500;overflow:hidden}.doc-list-item-size{color:var(--ui-gray-400);flex-shrink:0;font-size:.75rem}.doc-list-item-actions{flex-shrink:0;gap:4px;margin-left:auto;display:flex}.doc-rename-form{flex-direction:column;gap:6px;display:flex}.doc-rename-actions{gap:6px;display:flex}.adbp-panel{width:100%}.adbp-panel-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.adbp-panel-header h3{color:var(--ui-gray-900);margin:0;font-size:1rem;font-weight:600;line-height:1}.adbp-loading{justify-content:center;padding:32px 0;display:flex}.adbp-limit-hint{color:var(--ui-gray-400);margin-bottom:12px;font-size:.75rem}.adbp-create-form,.adbp-edit-form{border:1px solid var(--ui-gray-200);background:var(--ui-gray-50);border-radius:8px;margin-bottom:16px;padding:16px}.adbp-edit-form{width:100%}.adbp-fieldset{border:none;min-width:0;margin:0;padding:0}.adbp-fieldset legend{padding:0}.adbp-file-type-checkboxes{flex-wrap:wrap;gap:12px;margin-top:4px;display:flex}.adbp-checkbox-label{color:var(--ui-gray-700);cursor:pointer;align-items:center;gap:4px;font-size:.8rem;display:inline-flex}.adbp-checkbox-label input[type=checkbox]{width:15px;height:15px;accent-color:var(--ui-primary-600);cursor:pointer}.adbp-size-input-row{align-items:center;gap:10px;margin-top:4px;display:flex}.adbp-range-input{height:6px;accent-color:var(--ui-primary-600);cursor:pointer;flex:1}.adbp-number-input.ui-input{text-align:center;width:72px;padding:5px 8px}.adbp-size-unit{color:var(--ui-gray-500);font-size:.75rem}.adbp-form-actions{gap:8px;display:flex}.adbp-empty{text-align:center;color:var(--ui-gray-500);background:var(--ui-gray-50);border:1px dashed var(--ui-gray-200);border-radius:8px;padding:32px;font-size:.875rem}.adbp-empty p{margin:0}.adbp-list{flex-direction:column;gap:6px;display:flex}.adbp-item{border:1px solid var(--ui-gray-200);background:var(--ui-surface);border-radius:8px;align-items:flex-start;gap:10px;padding:12px 14px;transition:background .1s,border-color .15s,opacity .15s;display:flex}.adbp-item:hover{background:var(--ui-gray-50)}.adbp-item--dragging{opacity:.5;border-color:var(--ui-primary-300)}.adbp-item--drag-over{border-color:var(--ui-primary-600);background:var(--ui-primary-50)}.adbp-drag-handle{color:var(--ui-gray-400);cursor:grab;-webkit-user-select:none;user-select:none;flex-shrink:0;margin-top:2px;padding:0 .25rem;font-size:1rem;line-height:1}.adbp-drag-handle:active{cursor:grabbing}.adbp-item-position{color:var(--ui-gray-400);background:var(--ui-gray-100);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;margin-top:1px;font-size:.7rem;font-weight:600;display:flex}.adbp-item-info{flex:1;min-width:0}.adbp-item-name-row{align-items:center;gap:8px;margin-bottom:4px;display:flex}.adbp-item-name{color:var(--ui-gray-900);white-space:nowrap;text-overflow:ellipsis;font-size:.85rem;font-weight:500;overflow:hidden}.adbp-item-size{color:var(--ui-gray-500);background:var(--ui-gray-100);border-radius:8px;flex-shrink:0;padding:1px 6px;font-size:.7rem}.adbp-item-description{color:var(--ui-gray-500);margin:0 0 6px;font-size:.75rem;line-height:1.4}.adbp-item-badges{flex-wrap:wrap;gap:4px;display:flex}.adbp-badge{text-transform:uppercase;letter-spacing:.02em;border-radius:4px;padding:2px 6px;font-size:.65rem;font-weight:600;display:inline-block}.adbp-badge--pdf{background:var(--ui-danger-bg);color:var(--ui-danger);border:1px solid var(--ui-danger-border)}.adbp-badge--jpeg{background:var(--ui-warning-bg);color:var(--ui-warning-solid);border:1px solid var(--ui-warning-border)}.adbp-badge--png{background:var(--ui-success-bg);color:var(--ui-success-solid);border:1px solid var(--ui-success-border)}.adbp-badge--docx{background:var(--ui-primary-50);color:var(--ui-primary-600);border:1px solid var(--ui-primary-200)}.adbp-badge--xlsx{background:var(--ui-success-bg);color:var(--ui-success-solid);border:1px solid var(--ui-success-border)}.adbp-item-actions{flex-shrink:0;gap:4px;margin-top:1px;display:flex}.asgn-editor-modal{background:var(--ui-surface);box-shadow:var(--ui-shadow-lg);border-radius:12px;flex-direction:column;width:100%;max-width:860px;height:80vh;transition:max-width .2s,height .2s,border-radius .2s;display:flex;overflow:hidden}.asgn-editor-modal--maximized{border-radius:0;max-width:100%;height:100%}.asgn-editor-modal--inline{max-width:100%;height:auto;min-height:500px;box-shadow:none;border:1px solid var(--ui-gray-200)}.asgn-editor-modal--maximized .asgn-editor-modal-body{padding:32px 48px}.ui-modal:has(>.asgn-editor-modal--dialog){height:80vh;position:relative}.ui-modal:has(>.asgn-editor-modal--maximized){border-radius:0;width:100%;max-width:none;height:100%;max-height:none}.asgn-editor-modal--dialog{max-width:none;height:auto;min-height:0;box-shadow:none;background:0 0;border-radius:0;flex:1}.asgn-editor-modal--dialog .asgn-editor-modal-body{padding:0}.asgn-editor-modal--dialog.asgn-editor-modal--maximized .asgn-editor-modal-body{padding:0 24px}.asgn-editor-modal--dialog .asgn-editor-modal-maximize-btn{position:absolute;top:1.25rem;right:3.5rem}.asgn-editor-modal-heading{align-items:center;gap:12px;display:inline-flex}.asgn-editor-modal-body{flex:1;min-height:0;padding:24px;overflow-y:auto}.asgn-editor-modal-loading{justify-content:center;padding:48px 0;display:flex}.asgn-editor-modal-error{color:var(--ui-danger);background:var(--ui-danger-bg);border:1px solid var(--ui-danger-border);border-radius:8px;padding:12px;font-size:.875rem}.asgn-editor-modal-tabs{border-bottom:1px solid var(--ui-gray-200);flex-shrink:0;gap:0;margin-bottom:20px;display:flex}.asgn-editor-modal-tab{color:var(--ui-gray-500);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;padding:8px 14px;font-size:.8rem;font-weight:500;transition:color .15s,border-color .15s}.asgn-editor-modal-tab:hover{color:var(--ui-gray-700)}.asgn-editor-modal-tab--active{color:var(--ui-accent-interactive);border-bottom-color:var(--ui-accent-interactive)}.asgn-editor-modal-tab-content{flex:1;min-height:0;overflow-y:auto}.asgn-editor-modal-form{max-width:100%}.asgn-editor-modal-textarea{resize:vertical;min-height:100px}.asgn-editor-modal-form-actions{align-items:center;gap:12px;margin-top:14px;display:flex}.asgn-editor-modal-status-select{border:1px solid var(--ui-gray-300);background:var(--ui-surface);color:var(--ui-gray-700);cursor:pointer;appearance:auto;border-radius:6px;padding:7px 12px;font-size:.8rem;font-weight:500;transition:border-color .15s}.asgn-editor-modal-status-select:hover:not(:disabled){border-color:var(--ui-gray-400)}.asgn-editor-modal-status-select:focus{border-color:var(--ui-primary-600);box-shadow:var(--ui-focus-ring);outline:none}.asgn-editor-modal-status-select:disabled{opacity:.6;cursor:not-allowed}.asgn-sub-list{padding:1.5rem}.asgn-sub-list__empty{text-align:center;color:var(--ui-slate-500);padding:3rem 1rem}.asgn-sub-list__file>*,.submissions-cell-file>*{display:block}.asgn-sub-list__file>*+*{margin-top:.125rem}.submissions-cell-file>*+*{margin-top:2px}.asgn-sub-list__file-name{color:var(--ui-slate-800);font-weight:500}.asgn-sub-list__file-size{color:var(--ui-slate-500);font-size:.75rem}.asgn-sub-list__grade{white-space:nowrap;align-items:center;gap:.375rem;display:flex}.submissions-stats-bar{margin-bottom:1.25rem}.submissions-error{color:var(--ui-danger);background:var(--ui-danger-bg);border:1px solid var(--ui-danger-border);border-radius:8px;padding:12px;font-size:.875rem}.submissions-loading{color:var(--ui-gray-500);flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:48px 16px;font-size:.875rem;display:flex}.submissions-empty{text-align:center;color:var(--ui-gray-400);background:var(--ui-gray-50);border:1px dashed var(--ui-gray-200);border-radius:8px;padding:32px}.submissions-empty p{margin:0;font-size:.875rem}.submissions-cell-student{color:var(--ui-gray-900);min-width:140px;font-weight:500}.submissions-cell-dropbox{color:var(--ui-gray-600);min-width:120px}.submissions-cell-file{min-width:150px}.submissions-file-name{color:var(--ui-gray-900);word-break:break-all}.submissions-file-size{color:var(--ui-gray-400);font-size:.75rem}.submissions-cell-status{white-space:nowrap}.submissions-viewer-title{color:var(--ui-gray-900);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:.875rem;font-weight:600;overflow:hidden}.submissions-viewer-content{flex:1;min-height:400px;overflow:auto}.submissions-viewer-loading{color:var(--ui-gray-500);flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:48px 16px;font-size:.875rem;display:flex}.submissions-viewer-iframe{border:none;width:100%;height:100%;min-height:600px}.submissions-viewer-image-container{justify-content:center;align-items:center;padding:16px;display:flex;overflow:auto}.submissions-viewer-image{object-fit:contain;max-width:100%;max-height:70vh}.submissions-viewer-fallback{color:var(--ui-gray-500);flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:48px 16px;font-size:.875rem;display:flex}.submissions-viewer-fallback a{color:var(--ui-primary-600);text-decoration:underline}.ca-assignments{padding:0}.status-badge{text-transform:capitalize;border-radius:10px;padding:2px 8px;font-size:.75rem;font-weight:500;display:inline-block}.status-badge--draft{background:var(--ui-gray-100);color:var(--ui-gray-500)}.status-badge--published{background:var(--ui-success-bg-strong);color:var(--ui-success)}.status-badge--closed{background:var(--ui-warning-bg-strong);color:var(--ui-warning)}.status-badge--archived{background:var(--ui-slate-100);color:var(--ui-slate-400)}.publish-modal{background:var(--ui-surface);box-shadow:var(--ui-shadow-lg);border-radius:8px;flex-direction:column;width:100%;max-width:520px;max-height:90vh;display:flex;overflow-y:auto}.publish-modal-close-btn{color:var(--ui-gray-500);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:.25rem .5rem;font-size:1.25rem;line-height:1;transition:background-color .15s,color .15s}.publish-modal-close-btn:hover:not(:disabled){background-color:var(--ui-gray-100);color:var(--ui-gray-900)}.publish-modal-close-btn:disabled{opacity:.4;cursor:not-allowed}.publish-modal-content .publish-modal-body{padding:0}.publish-modal-content .publish-modal-footer{padding:1rem 0 0}.publish-modal-body{flex-direction:column;flex:1;gap:1rem;padding:1.25rem 1.5rem;display:flex}.publish-modal-footer{border-top:1px solid var(--ui-gray-200);flex-shrink:0;justify-content:flex-end;align-items:center;gap:.75rem;padding:1rem 1.5rem;display:flex}.publish-modal-loading{color:var(--ui-gray-500);align-items:center;gap:.5rem;padding:1rem 0;font-size:.875rem;display:flex}.publish-modal-error{color:var(--ui-danger);background:var(--ui-danger-bg);border:1px solid var(--ui-danger-border);border-radius:6px;padding:.75rem 1rem;font-size:.875rem}.publish-modal-precondition-errors{background:var(--ui-warning-bg);border:1px solid var(--ui-warning-border);border-radius:6px;padding:.75rem 1rem}.publish-modal-precondition-title{color:var(--ui-warning);margin:0 0 .5rem;font-size:.875rem;font-weight:500}.publish-modal-precondition-list{color:var(--ui-warning);margin:0;padding-left:1.25rem;font-size:.8125rem}.publish-modal-precondition-list li{margin-bottom:.25rem}.publish-modal-precondition-list li:last-child{margin-bottom:0}.publish-modal-toggle-field{border-top:1px solid var(--ui-gray-100);padding:.75rem 0}.publish-modal-toggle-label{cursor:pointer;align-items:center;gap:.5rem;font-size:.875rem;display:flex}.publish-modal-toggle-text{color:var(--ui-gray-700);font-weight:500}.publish-modal-late-field{border-left:3px solid var(--ui-gray-200);padding-left:1rem}.publish-modal-progress{color:var(--ui-gray-500);align-items:center;gap:.5rem;font-size:.8125rem;display:flex}.asgn-editor-modal-tab:disabled{color:var(--ui-gray-300);cursor:not-allowed}.asgn-wizard-footer{border-top:1px solid var(--ui-gray-200);align-items:center;gap:12px;margin-top:20px;padding-top:14px;display:flex}.asgn-wizard-step{text-align:center;color:var(--ui-gray-500);flex:1;font-size:.8rem}.asgn-wizard-nav{gap:8px;display:flex}.asgn-wizard-publish .publish-modal-body{padding:0}.asgn-wizard-publish .publish-modal-footer{border-top:none;justify-content:flex-start;padding:14px 0 0}.asgn-editor-modal-rubric-name{color:var(--ui-text);margin:0;font-size:1rem;font-weight:600}.asgn-editor-modal-rubric-summary{margin:var(--ui-space-2) 0 var(--ui-space-4);color:var(--ui-slate-500);font-size:.875rem}.asgn-editor-modal-rubric-table{border-collapse:collapse;width:100%;font-size:.875rem}.asgn-editor-modal-rubric-table th,.asgn-editor-modal-rubric-table td{padding:var(--ui-space-2);text-align:left;border-bottom:1px solid var(--ui-slate-100)}.asgn-editor-modal-rubric-table thead th{border-bottom:2px solid var(--ui-slate-200)}.asgn-editor-modal-rubric-table tbody th{font-weight:500}.asgn-editor-modal-rubric-table .asgn-editor-modal-rubric-num{text-align:right}.asgn-editor-modal-rubric-desc{color:var(--ui-slate-500)}.asgn-editor-modal-rubric-actions{gap:var(--ui-space-2);margin-top:var(--ui-space-4);display:flex}.asgn-editor-modal-rubric-empty{padding:var(--ui-space-6) var(--ui-space-4);text-align:center;color:var(--ui-slate-500)}.asgn-editor-modal-rubric-empty .ui-btn{margin-top:var(--ui-space-4)}.olp{flex-direction:column;gap:.625rem;display:flex}.olp-toolbar{justify-content:flex-end;align-items:center;display:flex}.olp-note{color:var(--ui-gray-700);background:var(--ui-gray-50);border:1px solid var(--ui-gray-200);border-radius:6px;margin:0;padding:.5rem .75rem;font-size:.8125rem}.olp-table{border-collapse:collapse;border:1px solid var(--ui-border-subtle);border-radius:6px;width:100%;font-size:.8125rem;overflow:hidden}.olp-table th{text-align:left;text-transform:uppercase;letter-spacing:.04em;color:var(--ui-text-subtle);background:var(--ui-gray-50);border-bottom:1px solid var(--ui-border-subtle);padding:.4rem .5rem;font-size:.6875rem;font-weight:600}.olp-table td{vertical-align:top;border-bottom:1px solid var(--ui-gray-100);color:var(--ui-gray-700);padding:.5rem;line-height:1.4}.olp-table tbody tr:last-child td{border-bottom:none}.olp-code{white-space:nowrap;color:var(--ui-primary-700);font-weight:600}.olp-actions{text-align:right;width:1%}.olp-sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.opd-dialog{border:none;width:min(760px,100vw - 2rem);max-width:none;height:min(80vh,900px);margin:auto;padding:0;position:fixed;inset:0}.opd-dialog::backdrop{background:var(--ui-overlay)}.opd-body{flex-direction:column;flex:1;min-height:0;padding:.75rem 1.5rem 1rem;display:flex}.opd-tree{flex:1;min-height:0;overflow-y:auto}.opd-tree ul{margin:0;padding:0;list-style:none}.opd-syllabus+.opd-syllabus{margin-top:1rem}.opd-syllabus-title{z-index:1;color:var(--ui-text);background:var(--ui-surface);border-bottom:1px solid var(--ui-border-subtle);align-items:baseline;gap:.5rem;margin:0 0 .25rem;padding:.375rem 0;font-size:.875rem;font-weight:700;display:flex;position:sticky;top:0}.opd-syllabus-prefix{color:var(--ui-text-subtle);font-size:.75rem;font-weight:500}.opd-ref{color:var(--ui-primary-700);margin-right:.25rem;font-weight:600}.opd-competency{margin-top:.5rem}.opd-competency-title{color:var(--ui-text);padding:.25rem 0;font-size:.8125rem;font-weight:600}.opd-levels{border-left:2px solid var(--ui-gray-100);margin-left:.25rem!important;padding-left:1rem!important}.opd-level-title{color:var(--ui-gray-700);padding:.25rem 0;font-size:.8125rem;font-weight:500}.opd-outcomes{padding-left:.75rem!important}.opd-outcome{color:var(--ui-gray-700);cursor:pointer;border-radius:4px;align-items:flex-start;gap:.5rem;padding:.3rem .375rem;font-size:.8125rem;display:flex}.opd-outcome:hover{background:var(--ui-gray-50)}.opd-outcome input{margin-top:.15rem}.opd-outcome .qbd-links-outcome-ref{white-space:nowrap}.opd-outcome--linked{cursor:default;color:var(--ui-gray-400)}.opd-outcome-text{flex:1}.opd-linked-tag{background:var(--ui-gray-200);color:var(--ui-text-muted);border-radius:9999px;margin-left:.375rem;padding:0 .375rem;font-size:.6875rem}.outcome-tree{--outcome-tree-guide:var(--ui-gray-400);--outcome-tree-muted:var(--ui-text-muted);--outcome-tree-code:var(--ui-text);overflow-wrap:anywhere;font-size:.8125rem;line-height:1.4}.outcome-tree--tooltip{--outcome-tree-guide:color-mix(in srgb, var(--ui-tooltip-text) 30%, transparent);--outcome-tree-muted:color-mix(in srgb, var(--ui-tooltip-text) 78%, transparent);--outcome-tree-code:var(--ui-primary-300);font-size:.75rem}.outcome-tree-subject{color:var(--outcome-tree-muted);margin:0 0 .15rem;font-weight:600;display:block}.outcome-tree-list{border-left:1px solid var(--outcome-tree-guide);margin:0;padding:0 0 0 .8rem;list-style:none}.outcome-tree-list .outcome-tree-list{margin-left:.3rem}.outcome-tree-list--top{border-left:none;padding-left:0}.outcome-tree-item{margin:.1rem 0}.outcome-tree-node{color:var(--outcome-tree-muted);display:block}.outcome-tree-item--competency>.outcome-tree-node{font-weight:600}.outcome-tree-code{color:var(--outcome-tree-code);font-weight:600}.outcome-tree-detail{color:var(--outcome-tree-muted)}.outcome-tip-anchor{font:inherit;font-size:.6875rem;line-height:inherit;cursor:help;text-decoration-line:underline;text-decoration-style:dotted;-webkit-text-decoration-color:var(--ui-text-subtle);text-decoration-color:var(--ui-text-subtle);text-underline-offset:2px;border:none}.outcome-tip-anchor:focus-visible{outline:2px solid var(--ui-primary-500);outline-offset:1px}.outcome-tip{z-index:9999;box-sizing:border-box;background:var(--ui-tooltip-bg);min-width:min(220px,100vw - 16px);max-width:min(360px,100vw - 16px);color:var(--ui-tooltip-text);box-shadow:var(--ui-shadow-md);text-align:left;white-space:normal;overflow-wrap:anywhere;border-radius:6px;flex-direction:column;gap:.25rem;padding:.5rem .625rem;font-size:.75rem;font-weight:400;line-height:1.5;display:flex;position:fixed;overflow-y:auto}.outcome-tip-item{display:block}.outcome-tip-code{color:var(--ui-primary-300);margin-right:.15rem}.outcome-tip--tree{max-width:min(440px,100vw - 16px)}.qbic{width:100%}.qbic-raw-json{background:var(--ui-gray-50);border:1px solid var(--ui-gray-200);border-radius:var(--ui-radius-sm);white-space:pre-wrap;word-break:break-all;max-height:200px;color:var(--ui-gray-700);padding:.75rem;font-size:.75rem;overflow-x:auto}.qbic-panel{border:1px solid var(--ui-gray-200);border-radius:var(--ui-radius-md);margin-top:.5rem;overflow:hidden}.qbic-panel__toggle{text-align:left;background:var(--ui-gray-50);cursor:pointer;width:100%;color:var(--ui-gray-700);border:none;justify-content:space-between;align-items:center;padding:.5rem .75rem;font-size:.875rem;font-weight:500;display:flex}.qbic-panel__toggle[aria-expanded=true]{border-bottom:1px solid var(--ui-gray-200)}.qbic-panel__toggle:focus-visible{outline:2px solid var(--ui-focus);outline-offset:-2px}.qbic-panel__chevron{color:var(--ui-gray-400);font-size:.75rem}.qbic-panel__content{padding:.75rem}.qbic-context{background:var(--ui-success-bg);border-left:3px solid var(--ui-success-solid);border-radius:0 var(--ui-radius-sm) var(--ui-radius-sm) 0;margin-bottom:1rem;padding:.75rem}.qbic-sub-part-label{color:var(--ui-gray-700);margin-right:.5rem;font-size:.875rem;font-weight:600}.qbic-guides{margin-top:.5rem}.qbic-guide-text{color:var(--ui-gray-700);white-space:pre-wrap;margin:0;font-size:.875rem}.agent-reply{border-left:3px solid var(--ui-gray-400);background:var(--ui-gray-50);color:var(--ui-gray-700);border-radius:0 6px 6px 0;margin:.25rem 0 0 .75rem;padding:.4rem .6rem;font-size:.8rem}.agent-reply--fixed{border-left-color:var(--ui-warning-solid);background:var(--ui-warning-bg)}.agent-reply--needs_person{border-left-color:var(--ui-danger);background:var(--ui-danger-bg)}.agent-reply--question{border-left-color:var(--ui-primary-600);background:var(--ui-primary-50)}.agent-reply-head{color:var(--ui-text-subtle);flex-wrap:wrap;align-items:center;gap:.4rem;font-size:.72rem;display:flex}.agent-reply-who{color:var(--ui-gray-700);font-weight:600}.agent-reply-label{background:var(--ui-gray-200);color:var(--ui-gray-700);border-radius:9999px;padding:.05rem .4rem;font-weight:700}.agent-reply--fixed .agent-reply-label{background:var(--ui-warning-bg-strong);color:var(--ui-warning-text)}.agent-reply--needs_person .agent-reply-label{background:var(--ui-danger-bg-strong);color:var(--ui-danger-hover)}.agent-reply--question .agent-reply-label{background:var(--ui-primary-100);color:var(--ui-primary-700)}.agent-reply-warn{color:var(--ui-warning-solid-hover);font-weight:600}.agent-reply-text{white-space:pre-wrap;overflow-wrap:anywhere;margin:.3rem 0 0;line-height:1.45}.agent-reply--earlier,.agent-reply--earlier.agent-reply--fixed,.agent-reply--earlier.agent-reply--needs_person,.agent-reply--earlier.agent-reply--question{border-left-color:var(--ui-border);background:var(--ui-gray-50);color:var(--ui-gray-400)}.agent-reply--earlier .agent-reply-label{background:var(--ui-gray-200);color:var(--ui-text-subtle)}.agent-reply--earlier .agent-reply-who{color:var(--ui-text-subtle)}.math-preview-dialog{box-shadow:var(--ui-shadow-lg);background:var(--ui-surface-raised);border:none;border-radius:12px;flex-direction:column;width:min(95vw,1400px);max-width:95vw;height:80vh;max-height:90vh;margin:0;padding:0;display:flex;position:fixed;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-50%)}.math-preview-dialog::backdrop{background:var(--ui-overlay)}.math-preview-header{border-bottom:1px solid var(--ui-border-subtle);flex-shrink:0;align-items:center;gap:12px;padding:16px 20px;display:flex}.math-preview-title{color:var(--ui-gray-800);margin:0;font-size:1.1rem;font-weight:600}.math-preview-type-badge{background:var(--ui-accent-100);color:var(--ui-accent-700);text-transform:capitalize;border-radius:4px;padding:2px 8px;font-size:.75rem;font-weight:500}.math-preview-nav{align-items:center;gap:6px;margin-left:auto;display:flex}.math-preview-nav-counter{color:var(--ui-text-subtle);text-align:center;font-variant-numeric:tabular-nums;min-width:3.5rem;font-size:.8125rem}.math-preview-body{flex:1;min-height:0;padding:20px;overflow-y:auto}.math-preview-dialog--has-reviews .math-preview-body{flex:1;min-height:0;padding:0;display:flex;overflow:hidden}.math-preview-question{margin-bottom:16px}.math-preview-question-text{color:var(--ui-gray-800);margin:0;font-size:1.05rem;line-height:1.6}.math-preview-options{flex-direction:column;gap:10px;margin-bottom:16px;display:flex}.math-preview-option{border:1px solid var(--ui-border-subtle);background:var(--ui-gray-50);border-radius:8px;align-items:baseline;gap:8px;padding:10px 14px;display:flex}.math-preview-option--correct{border-color:var(--ui-green-300);background:var(--ui-success-bg)}.math-preview-option-letter{color:var(--ui-text-subtle);flex-shrink:0;font-weight:600}.math-preview-option--correct .math-preview-option-letter{color:var(--ui-success-solid-hover)}.math-preview-option-text{color:var(--ui-gray-700);flex:1;line-height:1.5}.math-preview-option--correct .math-preview-option-text{color:var(--ui-success-solid-hover);font-weight:500}.math-preview-option-correct-badge{color:var(--ui-success-solid-hover);flex-shrink:0;margin-left:auto;font-size:.9rem;font-weight:700}.math-preview-explanation{background:var(--ui-success-bg);border:1px solid var(--ui-success-border);color:var(--ui-success-text);border-radius:8px;margin-top:16px;padding:12px 14px;line-height:1.5}.math-preview-dialog--maximized{width:calc(100vw - 2rem)!important;max-width:100vw!important;height:calc(100vh - 2rem)!important;max-height:calc(100vh - 2rem)!important}.math-preview-saq-layout{flex:1;gap:0;min-height:0;display:flex}.math-preview-saq-layout--saq-only{display:block}.math-preview-saq-layout--saq-only .math-preview-saq-question{justify-content:unset;padding-right:0;display:block;overflow-y:visible}.math-preview-saq-question{text-align:left;flex-direction:column;flex:55%;justify-content:flex-start;min-width:0;padding-right:1.5rem;display:flex;overflow-y:auto}.math-preview-saq-question>*{box-sizing:border-box;flex-shrink:0;width:100%}.math-preview-saq-bottom{flex-direction:column;gap:.75rem;margin-top:auto;padding-top:1.25rem;display:flex}.math-preview-saq-layout--reviews{flex:1;height:100%;min-height:0;display:flex;overflow:hidden}.math-preview-saq-layout--reviews .math-preview-saq-question{box-sizing:border-box;flex:2 1 0;justify-content:flex-start;min-width:0;height:100%;min-height:0;padding:20px;overflow-y:auto}.math-preview-saq-layout--reviews .math-preview-saq-right{box-sizing:border-box;flex:1 1 0;min-width:0;max-width:none;height:100%;min-height:0;padding:1rem;overflow-y:auto}.math-preview-saq-right{border-left:1px solid var(--ui-border-subtle);flex-direction:column;flex:0 0 38%;min-width:260px;padding-left:1.25rem;display:flex}.math-preview-guide-panel{flex-direction:column;flex:1;min-height:0;display:flex}.math-preview-guide-sections{flex-direction:column;flex:1;gap:.625rem;padding-bottom:.5rem;display:flex;overflow-y:auto}.math-preview-guide-section{border:1.5px solid var(--ui-border-subtle);border-radius:8px;overflow:hidden}.math-preview-guide-section-label{text-transform:uppercase;letter-spacing:.05em;color:var(--ui-text-subtle);background:var(--ui-gray-50);border-bottom:1px solid var(--ui-border-subtle);padding:.375rem .625rem;font-size:.6875rem;font-weight:700}.math-preview-guide-section-body{color:var(--ui-gray-700);white-space:pre-wrap;word-break:break-word;padding:.5rem .625rem;font-size:.875rem;line-height:1.5}.math-preview-guide-empty{color:var(--ui-gray-400);margin:0;padding:.5rem 0;font-size:.8125rem;font-style:italic}.math-preview-answer-section{flex-direction:column;flex-shrink:0;gap:.375rem;padding-top:.75rem;display:flex}.math-preview-answer-row{border-top:1px dashed var(--ui-border-subtle);flex-direction:column;gap:.375rem;margin-top:.875rem;padding-top:.875rem;display:flex}.math-preview-answer-label{color:var(--ui-gray-700);font-size:.8125rem;font-weight:600}.math-preview-grading-hint{color:var(--ui-text-subtle);background:var(--ui-gray-50);border:1px solid var(--ui-border-subtle);border-radius:4px;margin:0;padding:.5rem .75rem;font-size:.8125rem;line-height:1.4}.math-preview-answer-input{border:1px solid var(--ui-border);background:var(--ui-surface);width:100%;color:var(--ui-gray-800);resize:vertical;box-sizing:border-box;border-radius:6px;min-height:60px;padding:.625rem .75rem;font-family:inherit;font-size:.875rem;line-height:1.5}.math-preview-answer-input:focus{border-color:var(--ui-accent-500);box-shadow:var(--ui-focus-ring);outline:none}.math-preview-autograde-btn{align-self:flex-end;margin-top:.5rem}.math-preview-autograde-footer{border-top:1px solid var(--ui-border-subtle);background:var(--ui-gray-50);flex-wrap:wrap;flex-shrink:0;justify-content:space-between;align-items:center;gap:1rem;padding:.875rem 1.25rem;display:flex}.math-preview-autograde-hint{color:var(--ui-text-subtle);flex:1;min-width:0;font-size:.8125rem}.math-preview-outcomes-sep{border:none;border-top:1px solid var(--ui-border-subtle);margin:.5rem 0 0}.math-preview-outcomes{border-top:1px solid var(--ui-border-subtle);margin-top:1.5rem;padding-top:1.25rem;padding-bottom:2rem}.math-preview-outcomes-title{color:var(--ui-text-subtle);text-transform:uppercase;letter-spacing:.05em;margin:0 0 10px;font-size:.8125rem;font-weight:600}.math-preview-outcomes-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.math-preview-outcome{align-items:baseline;gap:8px;font-size:.875rem;display:flex}.math-preview-outcome-ref{color:var(--ui-accent-700);flex-shrink:0;font-size:.8125rem;font-weight:600}.math-preview-outcome-statement{color:var(--ui-gray-700);line-height:1.4}.qp-grade-result{border-radius:8px;flex-direction:column;gap:.5rem;margin-top:.5rem;padding:.75rem;display:flex}.qp-grade-result__verdict{align-items:center;gap:.5rem;font-size:.9375rem;font-weight:700;display:flex}.qp-grade-result__icon{flex-shrink:0;font-size:1rem}.qp-grade-result__label{font-size:.9375rem;font-weight:700}.qp-grade-result__attr{align-items:baseline;gap:.5rem;padding-left:1.5rem;display:flex}.qp-grade-result__attr--block{flex-direction:column;align-items:flex-start;gap:.25rem}.qp-grade-result__attr-label{text-transform:uppercase;letter-spacing:.05em;opacity:.65;white-space:nowrap;flex-shrink:0;font-size:.6875rem;font-weight:700}.qp-grade-result__attr-value{font-size:.875rem}.qp-grade-result__score--pass{color:var(--ui-green-900);background:var(--ui-success-bg-strong);border-radius:4px;padding:.1rem .5rem;font-size:.9375rem;font-weight:700}.qp-grade-result__score--fail{color:var(--ui-red-900);background:var(--ui-danger-bg-strong);border-radius:4px;padding:.1rem .5rem;font-size:.9375rem;font-weight:700}.qp-grade-result__confidence{color:var(--ui-primary-800);background:var(--ui-primary-100);border-radius:4px;padding:.1rem .5rem;font-size:.875rem;font-weight:600}.qp-grade-result__feedback{opacity:.9;font-size:.875rem;font-style:italic;line-height:1.5}.qp-grade-result--correct{background:var(--ui-success-bg);border:1.5px solid var(--ui-green-300);color:var(--ui-green-900)}.qp-grade-result--incorrect{background:var(--ui-danger-bg);border:1.5px solid var(--ui-red-300);color:var(--ui-red-900)}.qp-grade-result--submitted{background:var(--ui-primary-50);border:1.5px solid var(--ui-primary-300);color:var(--ui-primary-800)}.qp-grade-result--error{background:var(--ui-orange-50);border:1.5px solid var(--ui-orange-200);color:var(--ui-orange-800)}.qb-outcome-badge--has-tooltip .qb-outcome-tooltip{display:none}.qbd-mp-leaf-header,.qbd-mp-section-header-row,.qbd-item-header{background-color:var(--ui-slate-50);border:1px solid var(--ui-slate-200);box-sizing:border-box;border-radius:6px;padding:.375rem .625rem}.hc-btn.table-action-btn--review{border-color:var(--ui-accent-200);color:var(--ui-accent-600)}.hc-btn.table-action-btn--review:hover:not(:disabled){background-color:var(--ui-accent-50);border-color:var(--ui-accent-200)}.hc-btn.table-action-btn--review:focus-visible{outline:2px solid var(--ui-accent-500);outline-offset:2px}@keyframes childReviewModalFadeIn{0%{opacity:0}to{opacity:1}}.child-review-modal-backdrop{background:var(--ui-overlay);z-index:10000;justify-content:center;align-items:center;animation:.15s ease-out childReviewModalFadeIn;display:flex;position:fixed;inset:0}.child-review-modal{background:var(--ui-surface-raised);width:400px;max-width:90vw;max-height:80vh;box-shadow:var(--ui-shadow-lg);border-radius:12px;flex-direction:column;display:flex;overflow:hidden}.child-review-modal__header{border-bottom:1px solid var(--ui-border-subtle);flex-shrink:0;justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.child-review-modal__title{color:var(--ui-gray-800);margin:0;font-size:1rem;font-weight:600}.child-review-modal__label{background:var(--ui-accent-100);color:var(--ui-accent-700);border-radius:6px;margin-left:.5rem;padding:.15rem .5rem;font-size:.875rem;font-weight:700}.child-review-modal__close{cursor:pointer;color:var(--ui-text-subtle);background:0 0;border:none;border-radius:4px;padding:4px 8px;font-size:1.2rem;line-height:1}.child-review-modal__close:hover{background:var(--ui-gray-100);color:var(--ui-gray-800)}.child-review-modal__body{flex:1;padding:20px;overflow-y:auto}.org-courses-page{flex-direction:column;gap:1.25rem;display:flex}.org-courses-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.org-courses-new-btn{border-radius:var(--ui-radius-md);background-color:var(--ui-accent-interactive);color:var(--ui-on-accent);align-items:center;padding:.5rem 1rem;font-size:.875rem;font-weight:500;text-decoration:none;transition:background-color .15s;display:inline-flex}.org-courses-new-btn:hover{background-color:var(--ui-accent-interactive-hover)}.org-courses-search-input--error{border-color:var(--ui-danger-accent)}.org-courses-search-input--error:focus{border-color:var(--ui-danger-accent);box-shadow:var(--ui-danger-ring)}.org-courses-field-error{color:var(--ui-danger);font-size:.75rem}.org-courses-clear-btn{border-radius:var(--ui-radius-md);border:1px solid var(--ui-gray-300);background-color:var(--ui-surface);color:var(--ui-gray-700);cursor:pointer;align-self:flex-end;padding:.5rem .875rem;font-size:.8125rem;font-weight:500;transition:background-color .15s}.org-courses-clear-btn:hover{background-color:var(--ui-gray-100)}.org-courses-error{background-color:var(--ui-danger-bg);color:var(--ui-danger-text);border:1px solid var(--ui-danger-border);border-radius:var(--ui-radius-md);align-items:center;gap:.75rem;padding:.75rem 1rem;font-size:.875rem;display:flex}.org-courses-retry-btn{border-radius:var(--ui-radius-sm);border:1px solid var(--ui-red-300);background-color:var(--ui-surface);color:var(--ui-danger);cursor:pointer;padding:.25rem .625rem;font-size:.8125rem;font-weight:500;transition:background-color .15s}.org-courses-retry-btn:hover{background-color:var(--ui-danger-bg)}.org-courses-loading{color:var(--ui-gray-500);flex-direction:column;align-items:center;gap:.75rem;padding:3rem;display:flex}.org-courses-title-cell{max-width:280px}.org-courses-title-cell>*,.org-members-name-cell>*{display:block}.org-courses-title-cell>*+*,.org-members-name-cell>*+*{margin-top:.125rem}.org-courses-title-link{color:var(--ui-accent-interactive);white-space:nowrap;text-overflow:ellipsis;font-weight:500;text-decoration:none;overflow:hidden}.org-courses-title-link:hover{text-decoration:underline}.org-courses-description{color:var(--ui-gray-500);text-overflow:ellipsis;white-space:nowrap;font-size:.8125rem;overflow:hidden}.org-courses-date-cell{white-space:nowrap;color:var(--ui-gray-500)}.org-courses-owner-cell{color:var(--ui-gray-700);white-space:nowrap}.org-courses-enrollment-cell{text-align:center;color:var(--ui-gray-800);font-weight:500}.org-courses-edit-btn{border-radius:var(--ui-radius-md);border:1px solid var(--ui-gray-300);background-color:var(--ui-surface);color:var(--ui-gray-700);white-space:nowrap;padding:.375rem .75rem;font-size:.8125rem;font-weight:500;text-decoration:none;transition:background-color .15s;display:inline-block}.org-courses-edit-btn:hover{background-color:var(--ui-gray-50)}.org-courses-empty{text-align:center;color:var(--ui-gray-500);padding:3rem 1rem}.org-courses-pagination{justify-content:center;align-items:center;gap:1rem;padding-top:.5rem;display:flex}.org-courses-pagination-btn{border-radius:var(--ui-radius-md);border:1px solid var(--ui-gray-300);background-color:var(--ui-surface);color:var(--ui-gray-700);cursor:pointer;padding:.5rem 1rem;font-size:.875rem;font-weight:500;transition:background-color .15s}.org-courses-pagination-btn:hover:not(:disabled){background-color:var(--ui-gray-50)}.org-courses-pagination-btn:disabled{opacity:.5;cursor:not-allowed}.org-courses-pagination-info{color:var(--ui-gray-500);font-size:.875rem}.org-course-detail{max-width:var(--admin-readable-max)}.org-courses-back-link{color:var(--ui-accent-interactive);margin-bottom:1rem;font-size:.875rem;text-decoration:none;display:inline-block}.org-courses-back-link:hover{text-decoration:underline}.org-course-detail-meta{background:var(--ui-gray-50);border:1px solid var(--ui-gray-200);border-radius:var(--ui-radius-lg);margin-bottom:1.5rem;padding:1.5rem}.org-course-detail-field{margin-bottom:1rem}.org-course-detail-field:last-child{margin-bottom:0}.org-course-detail-label{color:var(--ui-gray-500);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.25rem;font-size:.75rem;font-weight:600;display:block}.org-course-detail-row{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;display:grid}.org-course-detail-actions{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.course-actions{flex-direction:column;gap:.75rem;display:flex}.course-actions-buttons{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.course-actions-btn{cursor:pointer;white-space:nowrap;border:1px solid #0000;border-radius:.375rem;justify-content:center;align-items:center;padding:.5rem 1rem;font-size:.875rem;font-weight:500;transition:background-color .15s,opacity .15s;display:inline-flex}.course-actions-btn:disabled{opacity:.6;cursor:not-allowed}.course-actions-btn--primary{background-color:var(--ui-accent-interactive);color:var(--ui-on-accent);border-color:var(--ui-accent-interactive)}.course-actions-btn--primary:not(:disabled):hover{background-color:var(--ui-accent-interactive-hover)}.course-actions-btn--secondary{background-color:var(--ui-surface);color:var(--ui-gray-700);border-color:var(--ui-gray-300)}.course-actions-btn--secondary:not(:disabled):hover{background-color:var(--ui-gray-50)}.course-actions-btn--danger{background-color:var(--ui-danger);color:var(--ui-on-solid);border-color:var(--ui-danger)}.course-actions-btn--danger:not(:disabled):hover{background-color:var(--ui-danger-hover)}.course-actions-message{border-radius:.375rem;margin:0;padding:.5rem .75rem;font-size:.875rem}.course-actions-message--error{background-color:var(--ui-danger-bg);color:var(--ui-danger);border:1px solid var(--ui-danger-border)}.course-actions-message--success{background-color:var(--ui-success-bg);color:var(--ui-success-solid);border:1px solid var(--ui-success-border)}.course-actions-overlay{background-color:var(--ui-overlay);z-index:1000;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.course-actions-dialog{background:var(--ui-surface);box-shadow:var(--ui-shadow-sm);border-radius:.5rem;flex-direction:column;gap:1rem;width:100%;max-width:480px;padding:1.5rem;display:flex}.course-actions-dialog--transfer{max-width:520px}.course-actions-dialog-title{color:var(--ui-gray-900);margin:0;font-size:1.125rem;font-weight:600}.course-actions-dialog-body{color:var(--ui-gray-600);margin:0;font-size:.875rem;line-height:1.5}.course-actions-dialog-footer{justify-content:flex-end;gap:.5rem;margin-top:.5rem;display:flex}.course-actions-transfer-search{flex-direction:column;gap:.25rem;display:flex}.course-actions-search-input{background:var(--ui-surface);border:1px solid var(--ui-gray-300);width:100%;color:var(--ui-gray-900);box-sizing:border-box;border-radius:.375rem;padding:.5rem .75rem;font-size:.875rem}.course-actions-search-input:focus{border-color:var(--ui-accent-interactive);box-shadow:var(--ui-focus-ring);outline:none}.course-actions-org-list{border:1px solid var(--ui-gray-200);border-radius:.375rem;flex-direction:column;max-height:240px;display:flex;overflow-y:auto}.course-actions-org-list-loading,.course-actions-org-list-error,.course-actions-org-list-empty{color:var(--ui-gray-500);text-align:center;margin:0;padding:1rem;font-size:.875rem}.course-actions-org-list-error{color:var(--ui-danger)}.course-actions-org-option{border:none;border-bottom:1px solid var(--ui-gray-100);cursor:pointer;text-align:left;background:0 0;justify-content:flex-start;align-items:center;gap:.5rem;width:100%;padding:.625rem .75rem;transition:background-color .1s;display:flex}.course-actions-org-option .course-actions-org-code{margin-left:auto}.course-actions-org-option:last-child{border-bottom:none}.course-actions-org-option:hover{background-color:var(--ui-gray-50)}.course-actions-org-option--selected{background-color:var(--ui-primary-50)}.course-actions-org-option--selected:hover{background-color:var(--ui-primary-100)}.course-actions-org-name{color:var(--ui-gray-900);font-size:.875rem;font-weight:500}.course-actions-org-code{color:var(--ui-gray-500);font-family:monospace;font-size:.75rem}.org-admin-enrollments{flex-direction:column;gap:1.25rem;display:flex}.org-admin-enrollments-enroll-btn{color:var(--ui-on-accent);background-color:var(--ui-accent-600);border-radius:var(--ui-radius-md);cursor:pointer;white-space:nowrap;border:none;align-items:center;padding:.5rem 1rem;font-size:.875rem;font-weight:600;text-decoration:none;transition:background-color .15s;display:inline-flex}.org-admin-enrollments-enroll-btn:hover{background-color:var(--ui-accent-interactive-hover)}.org-admin-enrollments-clear-btn{border-radius:var(--ui-radius-md);border:1px solid var(--ui-gray-300);background-color:var(--ui-surface);color:var(--ui-gray-700);cursor:pointer;white-space:nowrap;padding:.5rem 1rem;font-size:.875rem;font-weight:500;transition:background-color .15s}.org-admin-enrollments-clear-btn:hover{background-color:var(--ui-gray-100)}.org-admin-enrollments-message{border-radius:var(--ui-radius-md);align-items:center;gap:.75rem;padding:.625rem .75rem;font-size:.875rem;display:flex}.org-admin-enrollments-message--error{background-color:var(--ui-danger-bg);color:var(--ui-danger-text);border:1px solid var(--ui-danger-border)}.org-admin-enrollments-message--success{background-color:var(--ui-success-bg);color:var(--ui-success-text);border:1px solid var(--ui-success-border)}.org-admin-enrollments-retry-btn{border-radius:var(--ui-radius-sm);border:1px solid var(--ui-danger-border);color:var(--ui-danger-text);cursor:pointer;background-color:#0000;margin-left:auto;padding:.25rem .625rem;font-size:.8125rem;font-weight:500;transition:background-color .15s}.org-admin-enrollments-retry-btn:hover{background-color:var(--ui-danger-bg-strong)}.org-admin-enrollments-loading{color:var(--ui-gray-500);flex-direction:column;align-items:center;gap:.75rem;padding:2rem;display:flex}.org-admin-enrollments-display-name{color:var(--ui-gray-800);font-weight:500;display:block}.org-admin-enrollments-email{color:var(--ui-gray-500);font-size:.8125rem;display:block}.org-admin-enrollments-course-title{color:var(--ui-gray-800);font-weight:500;display:block}.org-admin-enrollments-date-cell{white-space:nowrap;color:var(--ui-gray-500)}.org-admin-enrollments-role-badge{white-space:nowrap;border-radius:9999px;padding:.2rem .5rem;font-size:.75rem;font-weight:500;display:inline-block}.org-admin-enrollments-role-badge--student{background-color:var(--ui-primary-50);color:var(--ui-primary-700)}.org-admin-enrollments-role-badge--teaching_assistant{background-color:var(--ui-yellow-50);color:var(--ui-yellow-800)}.org-admin-enrollments-role-badge--instructor{background-color:var(--ui-success-bg);color:var(--ui-success-text)}.org-admin-enrollments-role-badge--admin,.org-admin-enrollments-role-badge--limited_admin{background-color:var(--ui-violet-50);color:var(--ui-violet-800)}.org-admin-enrollments-unenroll-btn{border-radius:var(--ui-radius-md);border:1px solid var(--ui-danger-border);background-color:var(--ui-surface);color:var(--ui-danger);cursor:pointer;white-space:nowrap;padding:.375rem .75rem;font-size:.8125rem;font-weight:500;transition:background-color .15s,border-color .15s}.org-admin-enrollments-unenroll-btn:hover:not(:disabled){background-color:var(--ui-danger-bg);border-color:var(--ui-red-400)}.org-admin-enrollments-unenroll-btn:disabled{opacity:.5;cursor:not-allowed}.org-admin-invitations{flex-direction:column;gap:2rem;display:flex}.org-join-requests{flex-direction:column;gap:1rem;display:flex}.org-join-requests-loading{color:var(--ui-gray-500);flex-direction:column;align-items:center;gap:.75rem;padding:2rem;display:flex}.org-join-requests-name-cell{color:var(--ui-gray-800);font-weight:500}.org-join-requests-display-name{display:block}.org-join-requests-email-cell{color:var(--ui-gray-500);font-size:.8125rem}.org-join-requests-date-cell{white-space:nowrap;color:var(--ui-gray-500)}.org-members-hub{flex-direction:column;gap:0;display:flex}.org-invitations{flex-direction:column;gap:2rem;display:flex}.org-invitations-title{color:var(--ui-gray-900);margin:0;font-size:1.5rem;font-weight:700}.org-invite-section{background-color:var(--ui-gray-50);border:1px solid var(--ui-gray-200);border-radius:var(--ui-radius-lg);flex-direction:column;gap:.75rem;padding:1.25rem;display:flex}.org-invite-section-title{color:var(--ui-gray-700);margin:0;font-size:1rem;font-weight:600}.org-invite-form{flex-direction:column;gap:.75rem;display:flex}.org-invite-form-row{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.org-invite-input{background:var(--ui-surface);color:var(--ui-text);border:1px solid var(--ui-gray-300);border-radius:var(--ui-radius-md);flex:1;min-width:200px;padding:.5rem .75rem;font-family:inherit;font-size:.875rem}.org-invite-input:focus{border-color:var(--ui-accent-interactive);box-shadow:var(--ui-focus-ring);outline:none}.org-invite-select{border:1px solid var(--ui-gray-300);border-radius:var(--ui-radius-md);background-color:var(--ui-surface);cursor:pointer;padding:.5rem .75rem;font-family:inherit;font-size:.875rem}.org-invite-select:focus{border-color:var(--ui-accent-interactive);box-shadow:var(--ui-focus-ring);outline:none}.org-invite-textarea{background:var(--ui-surface);color:var(--ui-text);border:1px solid var(--ui-gray-300);border-radius:var(--ui-radius-md);resize:vertical;width:100%;padding:.75rem;font-family:inherit;font-size:.875rem;line-height:1.5}.org-invite-textarea:focus{border-color:var(--ui-accent-interactive);box-shadow:var(--ui-focus-ring);outline:none}.org-invite-hint{color:var(--ui-gray-500);margin:0;font-size:.75rem}.org-invite-success{color:var(--ui-emerald-600);background-color:var(--ui-emerald-50);border:1px solid var(--ui-emerald-200);border-radius:var(--ui-radius-md);padding:.5rem .75rem;font-size:.875rem}.org-invite-error{color:var(--ui-danger);background-color:var(--ui-danger-bg);border:1px solid var(--ui-danger-border);border-radius:var(--ui-radius-md);padding:.5rem .75rem;font-size:.875rem}.org-invite-loading{color:var(--ui-gray-500);margin:0;font-size:.875rem}.org-invite-role-cell{text-transform:capitalize}.org-members-page{flex-direction:column;gap:1rem;display:flex}.org-members-loading{color:var(--ui-gray-500);flex-direction:column;align-items:center;gap:.75rem;padding:2rem;display:flex}.org-members-message{border-radius:var(--ui-radius-md);padding:.625rem .75rem;font-size:.875rem}.org-members-message--error{background-color:var(--ui-danger-bg);color:var(--ui-danger-text);border:1px solid var(--ui-danger-border)}.org-members-message--success{background-color:var(--ui-success-bg);color:var(--ui-success-text);border:1px solid var(--ui-success-border)}.org-members-display-name{color:var(--ui-gray-800);font-weight:500}.org-members-email{color:var(--ui-gray-500);font-size:.8125rem}.org-members-family{color:var(--ui-gray-500);font-size:.75rem}.org-members-date-cell{white-space:nowrap;color:var(--ui-gray-500)}.org-members-role-select{border:1px solid var(--ui-gray-300);border-radius:var(--ui-radius-md);background-color:var(--ui-surface);color:var(--ui-gray-800);cursor:pointer;padding:.375rem .5rem;font-size:.8125rem;transition:border-color .15s}.org-members-role-select:focus{border-color:var(--ui-accent-interactive);box-shadow:0 0 0 3px var(--ui-primary-100);outline:none}.org-members-role-select:disabled{opacity:.6;cursor:not-allowed}.org-members-roles{flex-wrap:wrap;gap:.25rem;display:inline-flex}.org-members-role-badge{background:var(--ui-gray-100);color:var(--ui-gray-700);border-radius:9999px;padding:.2rem .6rem;font-size:.8125rem;font-weight:500;display:inline-block}.org-members-dialog-overlay{background:var(--ui-overlay);z-index:50;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.org-members-dialog{background:var(--ui-surface);box-shadow:var(--ui-shadow-sm);border-radius:12px;width:100%;max-width:440px;padding:2rem}.org-members-dialog-title{color:var(--ui-gray-800);margin:0 0 1rem;font-size:1.25rem;font-weight:600}.org-members-dialog-member{flex-direction:column;gap:.25rem;margin-bottom:1.25rem;font-size:.9375rem;display:flex}.org-members-dialog-current-role{color:var(--ui-gray-500);font-size:.8125rem}.org-members-dialog-field{flex-direction:column;gap:.375rem;margin-bottom:1rem;display:flex}.org-members-dialog-label{color:var(--ui-gray-700);font-size:.875rem;font-weight:500}.org-members-dialog-select{border:1px solid var(--ui-gray-300);border-radius:var(--ui-radius-md);background:var(--ui-surface);color:var(--ui-gray-800);padding:.5rem .75rem;font-size:.9375rem}.org-members-dialog-notice{background:var(--ui-warning-bg);border:1px solid var(--ui-warning-border-strong);border-radius:var(--ui-radius-md);color:var(--ui-warning-text);margin-bottom:1rem;padding:.75rem 1rem;font-size:.875rem;line-height:1.5}.org-members-dialog-error{color:var(--ui-danger);margin-bottom:1rem;font-size:.875rem}.org-members-dialog-actions{gap:.75rem;margin-top:1.5rem;display:flex}.qb-page{flex-direction:column;gap:1.5rem;display:flex}.qb-list{flex-direction:column;gap:.625rem;display:flex}.qb-bank-item{background-color:var(--ui-surface);border:1px solid var(--ui-gray-200);border-radius:var(--ui-radius-lg)}.qb-bank-row{flex-wrap:wrap;align-items:center;gap:1rem;padding:.875rem 1rem;display:flex}.qb-bank-info{flex-direction:column;flex:12rem;gap:.25rem;min-width:0;display:flex}.qb-bank-name{color:var(--ui-primary-700);text-overflow:ellipsis;white-space:nowrap;font-size:.875rem;font-weight:600;text-decoration:none;overflow:hidden}.qb-bank-name:hover{text-decoration:underline}.qb-bank-meta{flex-wrap:wrap;align-items:center;gap:.375rem;display:flex}.qb-meta-tag{background-color:var(--ui-gray-100);color:var(--ui-gray-700);white-space:nowrap;border-radius:9999px;padding:.125rem .5rem;font-size:.6875rem;font-weight:500;display:inline-block}.qb-meta-tag--type{background-color:var(--ui-primary-100);color:var(--ui-primary-800)}.qb-meta-tag--qtype{background-color:var(--ui-warning-bg-strong);color:var(--ui-warning-text)}.qb-meta-tag--year{background-color:var(--ui-success-bg-strong);color:var(--ui-success-text)}.qb-bank-actions{flex-wrap:wrap;flex-shrink:0;align-items:center;gap:.5rem;max-width:100%;display:flex}.qb-inline-edit{flex:1;align-items:center;gap:.5rem;min-width:0;display:flex}.qb-inline-edit input{border:1px solid var(--ui-primary-500);border-radius:var(--ui-radius-md);background-color:var(--ui-surface);color:var(--ui-gray-800);flex:1;min-width:0;padding:.375rem .625rem;font-size:.875rem}.qb-inline-edit input:focus{box-shadow:0 0 0 3px var(--ui-primary-100);outline:none}.qb-form-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.875rem;display:grid}.qb-dialog-overlay{background-color:var(--ui-overlay);z-index:1000;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.qb-dialog-overlay.question-editor-overlay{z-index:2000}.question-editor-dialog{box-shadow:var(--ui-shadow-sm);background:var(--ui-surface);border:none;border-radius:10px;flex-direction:column;width:75vw;max-width:92vw;height:75vh;padding:0;display:flex;overflow:hidden}.question-editor-dialog::backdrop{background-color:var(--ui-overlay);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.question-editor-dialog.qb-dialog--maximized{width:calc(100vw - 2rem)!important;max-width:100vw!important;height:calc(100vh - 2rem)!important}dialog.question-editor-dialog{box-shadow:var(--ui-shadow-sm);border:none;border-radius:10px;flex-direction:column;width:75vw;max-width:92vw;height:75vh;margin:0;padding:0;display:flex;position:fixed;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-50%)}dialog.question-editor-dialog::backdrop{background-color:var(--ui-overlay)}dialog.question-editor-dialog.qb-dialog--maximized{width:calc(100vw - 2rem);max-width:100vw;height:calc(100vh - 2rem)}.qb-dialog{background:var(--ui-surface);box-shadow:var(--ui-shadow-sm);border-radius:10px;flex-direction:column;width:100%;max-width:640px;max-height:95vh;display:flex;overflow:hidden}.qb-dialog--tall{min-height:85vh}.qb-dialog>form{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.qb-dialog-header{border-bottom:1px solid var(--ui-gray-200);flex-shrink:0;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem 1rem;display:flex}.qb-dialog-header h2{color:var(--ui-gray-900);margin:0;font-size:1.0625rem;font-weight:600}.qb-dialog-header-actions{flex-shrink:0;align-items:center;gap:.25rem;display:flex}.qb-richtext-switch{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:.5rem;margin-right:.5rem;display:flex}.qb-richtext-switch__label{color:var(--ui-gray-500);white-space:nowrap;font-size:.75rem;font-weight:500}.qb-richtext-switch__input{opacity:0;width:0;height:0;position:absolute}.qb-richtext-switch__slider{background-color:var(--ui-gray-300);border-radius:20px;flex-shrink:0;width:36px;height:20px;transition:background-color .25s;display:inline-block;position:relative}.qb-richtext-switch__slider:after{content:"";background-color:var(--ui-surface);width:16px;height:16px;box-shadow:var(--ui-shadow-sm);border-radius:50%;transition:transform .25s;position:absolute;top:2px;left:2px}.qb-richtext-switch__input:checked+.qb-richtext-switch__slider{background-color:var(--ui-accent-interactive)}.qb-richtext-switch__input:checked+.qb-richtext-switch__slider:after{transform:translate(16px)}.qb-richtext-switch__input:focus-visible+.qb-richtext-switch__slider{outline:2px solid var(--ui-focus);outline-offset:2px}.qbd-option-editor-wrapper .le-content-editable,.qbd-explanation-editor-wrapper .le-content-editable{resize:vertical;min-height:60px;overflow:auto}.qb-dialog-nav{align-items:center;gap:8px;margin-left:auto;margin-right:12px;display:flex}.qb-dialog-nav-counter{color:var(--ui-gray-500);text-align:center;min-width:3ch;font-size:.8125rem;font-weight:500}.qb-dialog-body{flex-direction:column;flex:1;gap:1rem;padding:1.25rem 1.5rem;display:flex;overflow-y:auto}.qb-dialog-footer{border-top:1px solid var(--ui-gray-200);background:var(--ui-gray-50);flex-shrink:0;gap:.75rem;margin-top:auto;padding:1rem 1.5rem;display:flex}.qb-form-grid-full{grid-column:1/-1}.qb-meta-tag--difficulty{font-weight:600}.qb-meta-tag--difficulty-easy{background-color:var(--ui-success-bg-strong);color:var(--ui-success-text)}.qb-meta-tag--difficulty-medium{background-color:var(--ui-yellow-100);color:var(--ui-yellow-800)}.qb-meta-tag--difficulty-hard{background-color:var(--ui-danger-bg-strong);color:var(--ui-danger-text)}.qbd-page{flex-direction:column;gap:1.5rem;max-width:1100px;display:flex}.qbd-metadata{background-color:var(--ui-gray-50);border:1px solid var(--ui-gray-200);border-radius:var(--ui-radius-lg);flex-wrap:wrap;align-items:center;gap:.5rem;padding:.75rem 1rem;display:flex}.qbd-form-title{color:var(--ui-gray-800);margin:0 0 .5rem;font-size:1rem;font-weight:600}.qbd-form-row{grid-template-columns:1fr 1fr;gap:.875rem;display:grid}.qbd-options-list{flex-direction:column;gap:.5rem;margin-bottom:.5rem;display:flex}.qbd-option-row{align-items:center;gap:.5rem;display:flex}.qbd-option-input{border:1px solid var(--ui-gray-300);border-radius:var(--ui-radius-md);background-color:var(--ui-surface);color:var(--ui-gray-800);flex:1;padding:.375rem .625rem;font-size:.875rem}.qbd-option-input:focus{border-color:var(--ui-accent-interactive);box-shadow:0 0 0 3px var(--ui-primary-100);outline:none}.qbd-patterns-list{flex-direction:column;gap:.5rem;margin-bottom:.5rem;display:flex}.qbd-pattern-row{align-items:center;gap:.5rem;display:flex}.qbd-pattern-input{border:1px solid var(--ui-gray-300);border-radius:var(--ui-radius-md);background-color:var(--ui-surface);color:var(--ui-gray-800);flex:1;padding:.375rem .625rem;font-size:.875rem}.qbd-pattern-input:focus{border-color:var(--ui-accent-interactive);box-shadow:0 0 0 3px var(--ui-primary-100);outline:none}.qbd-item-list{flex-direction:column;gap:.625rem;display:flex}.qbd-multipart-group{border:2px solid var(--ui-accent-500);border-radius:var(--ui-radius-lg);background-color:var(--ui-gray-50);overflow:hidden}.qbd-multipart-group>.qbd-item{border:none;border-bottom:1px solid var(--ui-gray-200);background-color:#0000;border-radius:0}.qbd-multipart-group>.qbd-item:last-child{border-bottom:none}.qbd-multipart-context-header{background-color:var(--ui-accent-50);border-bottom:2px solid var(--ui-accent-500);padding:1rem 1.25rem .875rem}.qbd-multipart-group-actions{border-bottom:1px solid var(--ui-accent-100);background-color:var(--ui-violet-50);flex-wrap:wrap;align-items:center;gap:.5rem;padding:.625rem 1rem;display:flex}.math-preview-subpart{border-top:1px solid var(--ui-gray-200);padding:.75rem 0}.math-preview-subpart:first-of-type{border-top:none}.math-preview-subpart-label{color:var(--ui-accent-500);margin-bottom:.375rem;font-size:.8125rem;font-weight:600}.math-preview-multipart-context{background:var(--ui-accent-50);border-left:3px solid var(--ui-accent-500);border-radius:0 4px 4px 0;margin-bottom:1rem;padding:.75rem 1rem}.saq-meta-row{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.saq-grade-btn{font-size:.75rem}.saq-grading-backdrop{background-color:var(--ui-overlay);z-index:1000;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.saq-grading-dialog{background:var(--ui-surface);box-shadow:var(--ui-shadow-sm);border-radius:10px;flex-direction:column;width:min(520px,92vw);display:flex;overflow:hidden}.saq-grading-dialog-header{border-bottom:1px solid var(--ui-gray-200);background:var(--ui-gray-50);justify-content:space-between;align-items:center;padding:1rem 1.25rem;display:flex}.saq-grading-dialog-title{color:var(--ui-gray-800);margin:0;font-size:1rem;font-weight:600}.saq-grading-dialog-body{flex-direction:column;gap:.75rem;padding:1.25rem;display:flex}.saq-grading-hint{color:var(--ui-gray-500);margin:0;font-size:.875rem;line-height:1.5}.saq-grading-label{color:var(--ui-gray-700);font-size:.8125rem;font-weight:600}.saq-grading-textarea{border:1px solid var(--ui-gray-300);border-radius:var(--ui-radius-md);background:var(--ui-surface);width:100%;color:var(--ui-gray-800);resize:vertical;box-sizing:border-box;min-height:80px;padding:.625rem .75rem;font-family:inherit;font-size:.875rem;line-height:1.5}.saq-grading-textarea:focus{border-color:var(--ui-accent-interactive);box-shadow:var(--ui-focus-ring);outline:none}.saq-grading-result{border-radius:var(--ui-radius-md);align-items:flex-start;gap:.5rem;padding:.75rem 1rem;font-size:.875rem;line-height:1.5;display:flex}.saq-grading-result--correct{background:var(--ui-success-bg);border:1px solid var(--ui-success-border);color:var(--ui-success-text)}.saq-grading-result--incorrect{background:var(--ui-danger-bg);border:1px solid var(--ui-danger-border);color:var(--ui-danger-text)}.saq-grading-result-icon{flex-shrink:0;font-weight:700}.saq-grading-dialog--wide{width:min(680px,94vw);max-height:90vh}.saq-grading-dialog--wide .saq-grading-dialog-body{overflow-y:auto}.ai-grade-question{border:1px solid var(--ui-gray-200);border-radius:var(--ui-radius-md);background:var(--ui-gray-50);padding:.75rem}.saq-grading-result--partial{background:var(--ui-warning-bg);border:1px solid var(--ui-warning-border);color:var(--ui-warning-text)}.ai-grade-result{gap:1rem}.ai-grade-score{white-space:nowrap;flex-shrink:0;font-size:1.25rem;font-weight:700}.ai-grade-detail{min-width:0}.ai-grade-feedback{white-space:pre-wrap;margin:0}.ai-grade-meta{opacity:.8;margin:.25rem 0 0;font-size:.75rem}.saq-grading-dialog-footer{border-top:1px solid var(--ui-gray-200);background:var(--ui-gray-50);justify-content:flex-end;align-items:center;gap:.5rem;padding:.875rem 1.25rem;display:flex}.qbd-item{background-color:var(--ui-surface);border:1px solid var(--ui-gray-200);border-radius:var(--ui-radius-lg);flex-wrap:wrap;align-items:flex-start;gap:.875rem;padding:.875rem 1.25rem;display:flex}.qbd-item-order{color:var(--ui-text-subtle);flex-shrink:0;min-width:2rem;padding-top:.1rem;font-size:.75rem;font-weight:600}.qbd-item-body{flex-direction:column;flex:1;gap:.375rem;min-width:0;display:flex}.qbd-item-text{color:var(--ui-gray-800);white-space:pre-wrap;word-break:break-word;margin:0;font-size:.875rem;line-height:1.5}.qbd-item-actions{flex-shrink:0;align-items:center;gap:.375rem;display:flex}.qbd-item-error{width:100%;margin:.25rem 0 0}.qbd-item-options{flex-direction:column;gap:.25rem;margin:.25rem 0 0;padding:0;list-style:none;display:flex}.qbd-item-option{color:var(--ui-gray-500);align-items:baseline;gap:.375rem;font-size:.8125rem;line-height:1.4;display:flex}.qbd-item-option--correct{color:var(--ui-success-solid-hover);font-weight:500}.qbd-item-option-letter{flex-shrink:0;min-width:1.25rem;font-weight:600}.qbd-item-option-text{word-break:break-word;min-width:0}.hc-reorder-btn{min-width:2rem;padding-left:.5rem;padding-right:.5rem}.qbd-links-section{flex-direction:column;gap:.5rem;display:flex}.qbd-links-section-picker{border-bottom:1px solid var(--ui-gray-100);flex-direction:column;flex-shrink:0;gap:.25rem;padding:.75rem 1rem .5rem;display:flex}.qbd-links-section-picker-label{color:var(--ui-gray-500);text-transform:uppercase;letter-spacing:.04em;font-size:.75rem;font-weight:600}.qbd-links-section-select{border:1px solid var(--ui-gray-300);background:var(--ui-surface);width:100%;color:var(--ui-gray-900);cursor:pointer;border-radius:.375rem;padding:.375rem .625rem;font-size:.8125rem}.qbd-links-section-select:focus{border-color:var(--ui-accent-interactive);box-shadow:var(--ui-focus-ring);outline:none}.qbd-links-content{background-color:var(--ui-gray-50);border:1px solid var(--ui-gray-200);border-radius:var(--ui-radius-md);gap:.5rem;max-height:280px;padding:.75rem;overflow-y:auto}.qbd-links-loading,.qbd-links-empty{color:var(--ui-gray-500);margin:0;font-size:.8125rem}.qbd-links-badge{background-color:var(--ui-primary-100);color:var(--ui-primary-800);border-radius:9999px;align-self:flex-start;padding:.125rem .625rem;font-size:.75rem;font-weight:600;display:inline-block}.qbd-links-tree{flex-direction:column;gap:.25rem;display:flex}.qbd-links-section-row{flex-direction:column;gap:.125rem;display:flex}.qbd-links-section-label,.qbd-links-item-label{color:var(--ui-gray-800);cursor:pointer;border-radius:var(--ui-radius-sm);align-items:center;gap:.5rem;padding:.1875rem .25rem;font-size:.8125rem;display:flex}.qbd-links-section-label:hover,.qbd-links-item-label:hover{background-color:var(--ui-gray-100)}.qbd-links-section-code{color:var(--ui-gray-700);white-space:nowrap;font-weight:600}.qbd-links-section-title{color:var(--ui-gray-600);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.qbd-links-item-type{border-radius:var(--ui-radius-sm);background-color:var(--ui-gray-200);color:var(--ui-gray-700);white-space:nowrap;padding:.0625rem .375rem;font-size:.6875rem}.qbd-links-item-name{color:var(--ui-gray-500);text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;overflow:hidden}.qbd-links-outcomes{flex-direction:column;gap:.125rem;margin:.125rem 0 .25rem 1.5rem;padding:0;list-style:none;display:flex}.qbd-links-outcome-row{border-radius:.25rem;align-items:baseline;gap:.375rem;padding:.125rem .375rem;display:flex}.qbd-links-outcome-label{cursor:pointer;border-radius:.25rem;align-items:baseline;gap:.375rem;width:100%;padding:.125rem .25rem;display:flex}.qbd-links-outcome-label:hover{background-color:var(--ui-gray-100)}.qbd-links-outcome-label input[type=checkbox]{cursor:pointer;flex-shrink:0;margin-top:.125rem}.qbd-links-outcome-ref{color:var(--ui-accent-500);white-space:nowrap;background:var(--ui-accent-50);border-radius:.25rem;flex-shrink:0;padding:.0625rem .3rem;font-size:.6875rem;font-weight:600}.qbd-links-outcome-statement{color:var(--ui-gray-600);font-size:.75rem;line-height:1.4}.qb-dialog--wide{flex-direction:column;width:75vw;max-width:92vw;height:75vh;display:flex}.qb-dialog--maximized{width:calc(100vw - 2rem)!important;max-width:100vw!important;height:calc(100vh - 2rem)!important}.qb-dialog-split{flex-direction:column;flex:1;display:flex;overflow:hidden}.qb-dialog-split-body{flex:1;min-height:0;display:flex;overflow:hidden}.qb-dialog-form-pane{flex-direction:column;flex:1 1 0;gap:1rem;min-width:0;padding:1.25rem 1.5rem;display:flex;overflow-y:auto}.qb-dialog-syllabus-pane{border-left:1px solid var(--ui-gray-200);flex-direction:column;flex:0 0 33.333%;min-width:0;display:flex;overflow:hidden}.qb-dialog-syllabus-pane-header{color:var(--ui-gray-700);border-bottom:1px solid var(--ui-gray-100);background:var(--ui-gray-50);flex-shrink:0;padding:.875rem 1rem .5rem;font-size:.8125rem;font-weight:600}.qb-dialog-syllabus-pane-body{flex:1;padding:.75rem 1rem;overflow-y:auto}.qb-dialog-syllabus-pane-body .qbd-links-section{background:0 0;border:none;max-height:none;padding:0}.qb-import-dialog{flex-direction:column;width:90vw;max-width:720px;max-height:90vh;display:flex}.qb-import-body{flex-direction:column;flex:1;gap:.75rem;padding:1.25rem 1.5rem;display:flex;overflow-y:auto}.qb-import-hint{color:var(--ui-gray-500);margin:0;font-size:.8125rem;line-height:1.5}.qb-import-hint code{background:var(--ui-gray-100);color:var(--ui-gray-700);border-radius:.25rem;padding:.1rem .3rem;font-size:.75rem}.qb-import-file-label{cursor:pointer;flex-direction:column;gap:.375rem;display:flex}.qb-import-file-label-text{color:var(--ui-gray-700);font-size:.8125rem;font-weight:600}.qb-import-file-input{border:2px dashed var(--ui-gray-300);background:var(--ui-gray-50);cursor:pointer;width:100%;color:var(--ui-gray-700);box-sizing:border-box;border-radius:.5rem;padding:.5rem .75rem;font-size:.8125rem;transition:border-color .15s,background .15s;display:block}.qb-import-file-input:hover:not(:disabled){border-color:var(--ui-accent-interactive);background:var(--ui-accent-interactive-bg)}.qb-import-file-input:disabled{opacity:.6;cursor:not-allowed}.qb-import-file-name{color:var(--ui-gray-700);background:var(--ui-success-bg);border:1px solid var(--ui-success-border);border-radius:.375rem;margin:0;padding:.5rem .75rem;font-size:.8125rem}.qb-import-file-count{color:var(--ui-success-solid-hover);font-weight:600}.qb-import-error{color:var(--ui-danger-hover);background:var(--ui-danger-bg);border:1px solid var(--ui-danger-border);white-space:pre-wrap;word-break:break-word;border-radius:.375rem;margin:0;padding:.625rem .875rem;font-size:.8125rem}.qb-import-progress{color:var(--ui-accent-500);margin:0;font-size:.8125rem;font-weight:500}.qb-delete-dialog{flex-direction:column;width:90vw;max-width:480px;display:flex}.qb-delete-body{flex-direction:column;gap:1rem;padding:1.25rem 1.5rem;display:flex}.qb-delete-warning{color:var(--ui-gray-700);margin:0;font-size:.875rem;line-height:1.5}.qb-delete-question-preview{border-left:3px solid var(--ui-gray-200);background:var(--ui-gray-50);color:var(--ui-gray-600);border-radius:0 .375rem .375rem 0;margin:0;padding:.75rem 1rem;font-size:.875rem;font-style:italic;line-height:1.5}.hc-btn--danger:not(.table-action-btn){background:var(--ui-danger);color:var(--ui-on-solid);border:1px solid var(--ui-danger);cursor:pointer;border-radius:.375rem;padding:.5rem 1rem;font-size:.875rem;font-weight:500;transition:background .15s,border-color .15s}.hc-btn--danger:not(.table-action-btn):hover:not(:disabled){background:var(--ui-danger-hover);border-color:var(--ui-danger-hover)}.hc-btn--danger:disabled{opacity:.6;cursor:not-allowed}.qb-sections-panel{overflow:hidden;padding:0!important}.qb-sections-header{border-bottom:1px solid var(--ui-gray-200);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 1.25rem;display:flex}.qb-sections-tabs{flex-wrap:wrap;align-items:center;gap:.25rem;display:flex}.qb-section-tab{border:1px solid var(--ui-gray-200);background:var(--ui-surface);color:var(--ui-gray-700);cursor:pointer;border-radius:.375rem;align-items:center;gap:.375rem;padding:.375rem .875rem;font-size:.875rem;font-weight:500;transition:background .12s,border-color .12s,color .12s;display:inline-flex}.qb-section-tab:hover:not(.qb-section-tab--active){background:var(--ui-gray-50);border-color:var(--ui-gray-300)}.qb-section-tab--active{background:var(--ui-accent-interactive-bg);border-color:var(--ui-accent-interactive);color:var(--ui-accent-interactive)}.qb-section-tab-type{background:color-mix(in srgb, currentColor 8%, transparent);color:inherit;border-radius:.25rem;padding:.0625rem .3rem;font-size:.6875rem;font-weight:600}.qb-section-add-btn{border:1px dashed var(--ui-gray-300);color:var(--ui-gray-500);cursor:pointer;background:0 0;border-radius:.375rem;padding:.375rem .75rem;font-size:.8125rem;font-weight:500;transition:background .12s,border-color .12s,color .12s}.qb-section-add-btn:hover{background:var(--ui-gray-50);border-color:var(--ui-accent-interactive);color:var(--ui-accent-interactive)}.qb-section-actions{flex-shrink:0;align-items:center;gap:.5rem;display:flex}.qb-add-section-form{border-bottom:1px solid var(--ui-gray-200);background:var(--ui-gray-50);flex-wrap:wrap;align-items:center;gap:.625rem;padding:.75rem 1.25rem;display:flex}.qb-section-list{border:1px solid var(--ui-gray-200);border-radius:var(--ui-radius-lg);flex-direction:column;gap:0;margin-top:.5rem;display:flex;overflow:hidden}.qb-section-list-item{border-bottom:1px solid var(--ui-gray-200);cursor:pointer;background:var(--ui-surface);justify-content:space-between;align-items:center;gap:1rem;padding:.875rem 1.25rem;transition:background .12s;display:flex}.qb-section-list-item:last-child{border-bottom:none}.qb-section-list-item:hover{background:var(--ui-accent-interactive-bg)}.qb-section-list-item-content{flex-direction:column;gap:.375rem;min-width:0;display:flex}.qb-section-list-item-name{color:var(--ui-gray-800);font-size:.9375rem;font-weight:600}.qb-section-list-item-meta{flex-flow:wrap;align-items:center;gap:.5rem;display:flex}.qb-section-list-item-actions{flex-shrink:0;align-items:center;gap:.5rem;display:flex}.qb-section-rename-form{flex:1;align-items:center;gap:.5rem;padding:.25rem 0;display:flex}.qb-section-rename-form .hc-input{flex:1;min-width:0}.qb-detail-grid{grid-template-columns:1fr 1fr;gap:.375rem 2rem;display:grid}.qb-detail-cell{flex-direction:row;align-items:baseline;gap:.5rem;display:flex}.qb-detail-label{color:var(--ui-gray-500);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;flex-shrink:0;font-size:.75rem;font-weight:600}.qb-detail-value{color:var(--ui-gray-900);font-size:.9375rem;font-weight:500}.qb-import-confirm-bar{background:var(--ui-success-bg);border:1px solid var(--ui-success-border);border-radius:.5rem;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.75rem;padding:.625rem 1rem;display:flex}.qb-import-confirm-info{flex-wrap:wrap;flex:1;align-items:center;gap:.5rem;min-width:0;display:flex}.qb-import-confirm-icon{flex-shrink:0;font-size:1rem}.qb-import-confirm-filename{color:var(--ui-gray-700);font-size:.875rem;font-weight:500}.qb-import-confirm-error{color:var(--ui-danger-hover);flex-basis:100%;font-size:.8125rem}.qb-import-confirm-actions{flex-shrink:0;align-items:center;gap:.5rem;display:flex}.qbd-back-nav-row{justify-content:space-between;align-items:center;width:100%;margin-bottom:.25rem;display:flex}.qbd-section-top-nav{align-items:center;gap:.5rem;display:flex}.qbd-section-nav-divider{background:var(--ui-gray-200);align-self:center;width:1px;height:1.25rem;margin:0 .25rem;display:inline-block}.qbd-section-nav-counter{color:var(--ui-gray-500);text-align:center;font-variant-numeric:tabular-nums;min-width:2.5rem;font-size:.8125rem}.qbd-section-nav-bottom{border-top:1px solid var(--ui-gray-200);justify-content:flex-end;align-items:center;gap:.5rem;margin-top:1.25rem;padding-top:1rem;display:flex}.afc-page{flex-direction:column;gap:1.5rem;display:flex}.afc-row-actions{justify-content:flex-end;align-items:center;gap:.375rem;display:inline-flex}.afc-error-row td{background-color:var(--ui-danger-bg);border-top:none;padding:0 1rem .625rem!important}.afc-row-error{color:var(--ui-danger-text);margin:0;font-size:.8125rem}.afc-name-link{font:inherit;color:var(--ui-accent-interactive);cursor:pointer;text-align:left;background:0 0;border:none;margin:0;padding:0;font-weight:500;text-decoration:none}.afc-name-link:hover{text-decoration:underline}.afc-syllabus-tags{flex-wrap:wrap;gap:.25rem;margin-top:.3rem;display:flex}.afc-tag{white-space:nowrap;border-radius:9999px;padding:.1rem .45rem;font-size:.6875rem;font-weight:500;display:inline-block}.afc-tag--syllabus{background-color:var(--ui-violet-100);color:var(--ui-violet-800)}.pp-badge{white-space:nowrap;border-radius:9999px;padding:.125rem .5rem;font-size:.75rem;font-weight:500;display:inline-block}.pp-badge--past-paper{background-color:var(--ui-primary-100);color:var(--ui-primary-800)}.pp-tag{white-space:nowrap;border-radius:9999px;padding:.125rem .5rem;font-size:.75rem}.pp-parts-list{flex-direction:column;gap:.5rem;display:flex}.pp-part-card{border:1px solid var(--ui-gray-200);border-radius:var(--ui-radius-md);margin-bottom:.5rem}.pp-part-header{cursor:pointer;text-align:left;width:100%;font-family:inherit;font-size:inherit;background:0 0;border:none;align-items:center;padding:.75rem;display:flex}.pp-part-header:hover{background-color:var(--ui-gray-50)}.pp-part-name{color:var(--ui-gray-800);flex:1;font-weight:500}.pp-part-meta{align-items:center;gap:.5rem;display:flex}.pp-part-chevron{color:var(--ui-gray-500);margin-left:.75rem}.pp-part-content{border-top:1px solid var(--ui-gray-200);padding:.75rem}.pp-questions-list{flex-direction:column;gap:1rem;display:flex}.pp-question-group{flex-direction:column;gap:.75rem;display:flex}.pp-question-item{border:1px solid var(--ui-gray-200);border-radius:var(--ui-radius-md);background-color:var(--ui-gray-50);padding:.75rem}.pp-question-header{align-items:center;gap:.5rem;margin-bottom:.5rem;display:flex}.pp-marks-badge{background-color:var(--ui-success-bg-strong);color:var(--ui-success-text);white-space:nowrap;border-radius:9999px;padding:.125rem .5rem;font-size:.75rem}.pp-tag--qtype{background-color:var(--ui-gray-100);color:var(--ui-gray-700);font-weight:500}.pp-page{flex-direction:column;gap:1.5rem;display:flex}.pp-tag{white-space:nowrap;border-radius:9999px;align-items:center;padding:.125rem .5rem;font-size:.75rem;font-weight:500;display:inline-flex}.pp-tag--total{background-color:var(--ui-success-bg-strong);color:var(--ui-success-text)}.pp-tag--paper{background-color:var(--ui-warning-bg-strong);color:var(--ui-warning-text)}.pp-tag--marks{background-color:var(--ui-success-bg-strong);color:var(--ui-success-text)}.pp-parts-list{border:1px solid var(--ui-gray-200);border-radius:var(--ui-radius-lg);flex-direction:column;gap:0;display:flex;overflow:hidden}.pp-part-row{color:inherit;border-bottom:1px solid var(--ui-gray-100);align-items:center;gap:1rem;padding:.875rem 1rem;text-decoration:none;transition:background-color .1s;display:flex}.pp-part-row:last-child{border-bottom:none}.pp-part-row:hover{background-color:var(--ui-gray-50)}.pp-part-row-label{color:var(--ui-gray-900);min-width:4rem;font-size:.9rem;font-weight:600}.pp-part-row-meta{flex-wrap:wrap;flex:1;align-items:center;gap:.5rem;display:flex}.pp-part-row-desc{color:var(--ui-gray-500);margin-right:.25rem;font-size:.8125rem}.pp-part-row-chevron{color:var(--ui-gray-400);margin-left:auto;font-size:1.1rem}.pp-breadcrumb{color:var(--ui-gray-500);flex-wrap:wrap;align-items:center;gap:.25rem;margin-bottom:1rem;font-size:.8125rem;display:flex}.pp-breadcrumb-link{color:var(--ui-accent-interactive);font-weight:500;text-decoration:none}.pp-breadcrumb-link:hover{text-decoration:underline}.pp-breadcrumb-sep{color:var(--ui-gray-300)}.pp-breadcrumb-current{color:var(--ui-gray-700);font-weight:500}.org-detail-subtitle{color:var(--ui-gray-500);margin:.25rem 0 0;font-size:.875rem}.pp-tag--marks-per-q{background-color:var(--ui-warning-bg-strong);color:var(--ui-warning-text)}.qbd-mp-card{background-color:var(--ui-surface);border:1px solid var(--ui-gray-200);border-radius:var(--ui-radius-lg);overflow:hidden}.qbd-mp-card-header{background-color:var(--ui-violet-50);border-bottom:2px solid var(--ui-accent-500);justify-content:space-between;align-items:center;padding:.625rem 1.25rem;display:flex}.qbd-mp-card-actions{flex-shrink:0;align-items:center;gap:.375rem;margin-left:auto;display:flex}.qbd-mp-card-body{padding:1rem 1.25rem 1.25rem}.qbd-mp-section{flex-direction:column;display:flex}.qbd-mp-section-header{color:var(--ui-gray-700);padding:.5rem 0;line-height:1.5}.qbd-mp-section-label{color:var(--ui-accent-500);margin-right:.4rem;font-weight:700}.qbd-mp-divider{border:none;border-top:1px solid var(--ui-gray-200);margin:.5rem 0}.qbd-mp-leaf{box-sizing:border-box;flex-direction:column;align-items:stretch;gap:.75rem;width:100%;display:flex}.qbd-mp-leaf-header,.qbd-mp-section-header-row,.qbd-item-header{box-sizing:border-box;background-color:var(--ui-slate-50);border:1px solid var(--ui-slate-200);border-radius:var(--ui-radius-md);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;width:100%;padding:.375rem .625rem;display:flex}.qbd-mp-leaf-body{flex-direction:column;flex:1;gap:.25rem;min-width:0;padding:.375rem 0;display:flex}.qbd-mp-leaf-badges{flex-wrap:wrap;align-items:center;gap:.375rem;display:inline-flex}.qbd-mp-leaf-actions{flex-shrink:0;align-items:center;gap:.375rem;margin-left:auto;padding:0;display:flex}.qb-outcome-badge{cursor:default;position:relative}.qb-outcome-badge--has-tooltip{cursor:help;text-decoration-line:underline;text-decoration-style:dotted;-webkit-text-decoration-color:var(--ui-gray-500);text-decoration-color:var(--ui-gray-500);text-underline-offset:2px}.qb-outcome-tooltip{z-index:200;background:var(--ui-slate-800);min-width:220px;max-width:360px;color:var(--ui-slate-50);border-radius:var(--ui-radius-md);white-space:normal;box-shadow:var(--ui-shadow-sm);filter:drop-shadow(var(--ui-shadow-sm));padding:.5rem .625rem;font-size:.75rem;font-weight:400;line-height:1.5;display:none;position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%)}.qb-outcome-tooltip:after{content:"";border:5px solid #0000;border-top-color:var(--ui-slate-800);position:absolute;top:100%;left:50%;transform:translate(-50%)}.qb-outcome-badge--has-tooltip:hover .qb-outcome-tooltip,.qb-outcome-badge--has-tooltip:focus-within .qb-outcome-tooltip{flex-direction:column;gap:.25rem;display:flex}.qb-outcome-tooltip-item{display:block}.qb-outcome-tooltip-item strong{color:var(--ui-primary-300);margin-right:.15rem}.qbd-item--target{scroll-margin-top:5rem;animation:2s ease-out qbd-item-target-flash}@keyframes qbd-item-target-flash{0%,60%{box-shadow:0 0 0 3px var(--ui-amber-400)}to{box-shadow:0 0 0 3px #0000}}.review-queue-page{margin:0 auto;padding:1.5rem}.review-queue-total-badge{min-width:1.75rem;height:1.75rem;color:var(--ui-warning-text);background-color:var(--ui-warning-bg-strong);border-radius:9999px;justify-content:center;align-items:center;padding:0 .5rem;font-size:.8125rem;font-weight:600;display:inline-flex}.review-queue-open-btn{font:inherit;color:var(--ui-accent-interactive);text-align:left;cursor:pointer;background:0 0;border:none;padding:0}.review-queue-open-btn:hover{text-decoration:underline}.review-queue-open-btn:focus-visible{outline:2px solid var(--ui-focus);outline-offset:2px}.review-queue-type-chip{color:var(--ui-gray-700);background-color:var(--ui-gray-100);border-radius:var(--ui-radius-sm);white-space:nowrap;padding:.125rem .5rem;font-size:.75rem;font-weight:500;display:inline-block}.review-queue-preview-cell{max-width:28rem;color:var(--ui-gray-700)}.review-queue-timestamp{color:var(--ui-gray-500);white-space:nowrap}.bank-review-sections{flex-direction:column;gap:.375rem;margin:0;padding:0;list-style:none;display:flex}.bank-review-section{border:1px solid var(--ui-gray-200);border-radius:var(--ui-radius-md);background:var(--ui-gray-50);align-items:center;gap:.625rem;padding:.5rem .75rem;display:flex}.bank-review-section--disabled{opacity:.5}.bank-review-section__name{color:var(--ui-gray-800);flex:1;font-size:.875rem;font-weight:500}.bank-review-section__count{background:var(--ui-gray-100);color:var(--ui-text-subtle);border-radius:9999px;padding:.125rem .5rem;font-size:.75rem;font-weight:500}.bank-review-section__count--drafts{background:var(--ui-warning-bg-strong);color:var(--ui-warning-text)}.bank-review-result{color:var(--ui-success-solid-hover);margin:0;font-size:.875rem;font-weight:500}.review-modal-split{border-top:1px solid var(--ui-gray-200);flex:1;min-height:0;max-height:calc(90vh - 7rem);margin:0 -1.5rem -1.5rem;display:flex;overflow:hidden}.review-modal__pane{flex-direction:column;gap:1rem;min-width:0;padding:1.25rem 1.5rem;display:flex;overflow-y:auto}.review-modal__pane--left{border-right:1px solid var(--ui-gray-200);flex:55%;gap:1.25rem}.review-modal__pane--right{flex:45%}.review-modal__pane--center{text-align:center;justify-content:center;align-items:center}.review-modal__pane-title{color:var(--ui-gray-700);margin:0 0 .25rem;font-size:.875rem;font-weight:600}.review-modal__section-title{letter-spacing:.05em;text-transform:uppercase;color:var(--ui-gray-500);margin:0 0 .5rem;font-size:.8125rem;font-weight:600}.review-modal__muted{color:var(--ui-gray-500);margin:0;font-size:.875rem}.review-modal__error-text{color:var(--ui-danger-hover);margin:0;font-size:.875rem}.review-modal__type-chip{background:var(--ui-violet-100);color:var(--ui-violet-800);border-radius:9999px;margin-bottom:.5rem;padding:.125rem .5rem;font-size:.6875rem;font-weight:600;display:inline-block}.review-modal__question{color:var(--ui-gray-900);white-space:pre-wrap;word-break:break-word;margin:0;font-size:.9375rem;font-weight:500;line-height:1.6}.review-modal__answer{border:1px solid var(--ui-gray-200);border-radius:var(--ui-radius-md);background:var(--ui-gray-50);color:var(--ui-gray-500);padding:.75rem 1rem;font-size:.875rem}.review-modal__history{flex-direction:column;gap:.75rem;margin:0;padding:0;list-style:none;display:flex}.review-modal__history-entry{border-left:3px solid var(--ui-gray-200);padding-left:.75rem}.review-modal__history-head{flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:.25rem;display:flex}.review-modal__history-actor{color:var(--ui-gray-700);font-size:.8125rem;font-weight:500}.review-modal__history-date{color:var(--ui-text-subtle);font-size:.75rem}.review-modal__history-comment{color:var(--ui-gray-600);margin:.25rem 0 0;font-size:.8125rem;font-style:italic}.review-modal__banner{border-radius:var(--ui-radius-md);padding:.625rem .875rem;font-size:.875rem}.review-modal__banner--error{border:1px solid var(--ui-red-300);background:var(--ui-danger-bg);color:var(--ui-danger-text)}.review-modal__banner--warning{border:1px solid var(--ui-warning-border-strong);background:var(--ui-warning-bg-strong);color:var(--ui-warning-text)}.review-modal__action{border:1px solid var(--ui-gray-200);border-radius:var(--ui-radius-lg);overflow:hidden}.review-modal__action-toggle{background:var(--ui-gray-50);width:100%;color:var(--ui-gray-700);text-align:left;cursor:pointer;border:none;justify-content:space-between;align-items:center;padding:.75rem 1rem;font-size:.875rem;font-weight:600;display:flex}.review-modal__action-toggle--fixed{cursor:default}.review-modal__action-toggle--approve{background:var(--ui-success-bg);color:var(--ui-green-900)}.review-modal__action-toggle--reject{background:var(--ui-danger-bg);color:var(--ui-danger-text)}.review-modal__action-toggle--request_changes{background:var(--ui-warning-bg);color:var(--ui-warning-text)}.review-modal__chevron{color:var(--ui-gray-400);font-size:.75rem}.review-modal__action-form{border-top:1px solid var(--ui-gray-200);background:var(--ui-surface);padding:.875rem 1rem}.review-modal__label{color:var(--ui-gray-700);margin-bottom:.375rem;font-size:.8125rem;font-weight:500;display:block}.review-modal__required{color:var(--ui-danger)}.review-modal__hint{color:var(--ui-text-subtle);font-weight:400}.review-modal__textarea,.review-modal__number{background:var(--ui-surface);color:var(--ui-text);border:1px solid var(--ui-gray-300);border-radius:var(--ui-radius-md);box-sizing:border-box;padding:.5rem .75rem;font-size:.875rem}.review-modal__textarea{resize:vertical;width:100%}.review-modal__textarea--error{border-color:var(--ui-danger)}.review-modal__number{width:80px}.review-modal__count{color:var(--ui-text-subtle);margin-top:.25rem;font-size:.75rem;display:block}.review-modal__count--near{color:var(--ui-danger)}.review-modal__field-error{color:var(--ui-danger);margin:.375rem 0 0;font-size:.8125rem}.review-modal__fieldset{border:none;margin:0;padding:0}.review-modal__radios{gap:1.5rem;display:flex}.review-modal__radio{color:var(--ui-gray-700);cursor:pointer;align-items:center;gap:.375rem;font-size:.875rem;display:flex}.review-modal__submit-row{margin-top:auto;padding-top:.75rem}.review-modal__submit{width:100%}.review-modal__locked{gap:.75rem}.review-modal__lock{font-size:2rem}.review-modal__locked-title{color:var(--ui-gray-700);margin:0;font-size:.9375rem;font-weight:600}.asrs-page-intro{color:var(--ui-gray-500);margin:.25rem 0 0;font-size:.875rem;line-height:1.5}.asrs-muted{color:var(--ui-gray-500);font-size:.8125rem}.asrs-confident-mistakes{color:var(--ui-danger-hover);background:var(--ui-danger-bg);border:1px solid var(--ui-danger-border);border-radius:999px;margin-left:.5rem;padding:.05rem .45rem;font-size:.75rem;font-weight:600;display:inline-block}.asrs-student-email{word-break:break-all;margin-top:.125rem;font-weight:400;display:block}.asrs-nowrap{white-space:nowrap}.asrs-count{color:var(--ui-gray-500);margin-left:.5rem;font-size:.875rem;font-weight:400}.asrs-cell-sub{color:var(--ui-gray-500);margin-top:.125rem;font-size:.75rem;font-weight:400;display:block}.asrs-section-footer{justify-content:flex-end;margin-top:.75rem;display:flex}.asrs-search-row{gap:.5rem;max-width:32rem;display:flex}.asrs-candidates{border:1px solid var(--ui-gray-200);border-radius:var(--ui-radius-lg);max-width:32rem;margin:.5rem 0 0;padding:0;list-style:none;overflow:hidden}.asrs-candidate{border:none;border-bottom:1px solid var(--ui-gray-100);width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;justify-content:space-between;align-items:center;gap:.75rem;padding:.5rem .75rem;font-size:.875rem;display:flex}.asrs-candidates li:last-child .asrs-candidate{border-bottom:none}.asrs-candidate:hover,.asrs-candidate:focus-visible{background-color:var(--ui-gray-50);outline:none}.asrs-candidate--selected,.asrs-candidate--selected:hover{background-color:var(--ui-primary-50);color:var(--ui-primary-700)}.asrs-enrol-action{flex-wrap:wrap;align-items:center;gap:.75rem;margin-top:.75rem;display:flex}.asrs-stats{margin-bottom:1rem}.asrs-mastery-bar{align-items:center;gap:.5rem;display:flex}.asrs-mastery-bar__track{background-color:var(--ui-gray-100);border-radius:var(--ui-radius-sm);flex:1;min-width:80px;height:8px;overflow:hidden}.asrs-mastery-bar--thin .asrs-mastery-bar__track{min-width:60px;height:6px}.asrs-mastery-bar__track--overall{max-width:480px;height:10px}.asrs-mastery-bar__fill{border-radius:inherit;height:100%;transition:width .2s}.asrs-mastery-bar__fill--high{background-color:var(--ui-success-solid)}.asrs-mastery-bar__fill--mid{background-color:var(--ui-warning-solid)}.asrs-mastery-bar__fill--low{background-color:var(--ui-danger)}.asrs-mastery-bar__label{text-align:right;min-width:2.375rem;color:var(--ui-gray-700);font-size:.75rem;font-weight:600}.asrs-mastery-col{min-width:160px}.asrs-mastered-badge{background-color:var(--ui-success-bg-strong);color:var(--ui-success-text);border-radius:9999px;padding:.125rem .4375rem;font-size:.75rem;font-weight:600}.asrs-toolbar-end{margin-left:auto}.asrs-row--section,.asrs-row--subsection{cursor:pointer}.asrs-row--subsection{background-color:var(--ui-gray-50)}.asrs-row--expanded,.asrs-row--expanded:hover{background-color:var(--ui-primary-50)}.asrs-expand-cell{text-align:center;width:2.25rem;padding-left:.5rem!important;padding-right:.25rem!important}.asrs-expand-btn{color:var(--ui-gray-500);cursor:pointer;background:0 0;border:none;padding:.25rem;font-size:.75rem}.asrs-outcomes-cell{background-color:var(--ui-gray-50);border-bottom:1px solid var(--ui-gray-200);padding:0 0 .5rem}.asrs-outcomes-cell .afc-table{background-color:#0000;font-size:.8125rem}.asrs-outcome-ref{color:var(--ui-primary-600);white-space:nowrap;font-family:monospace;font-size:.6875rem;font-weight:700}.asrs-gate-tree{flex-direction:column;gap:.625rem;margin:0;padding:0;list-style:none;display:flex}.asrs-gate-node{list-style:none}.asrs-gate-node--depth-0{border:1px solid var(--ui-gray-200);border-radius:var(--ui-radius-lg);background-color:var(--ui-gray-50);overflow:hidden}.asrs-gate-node--depth-1{border-left:3px solid var(--ui-accent-200);background-color:var(--ui-accent-50);border-radius:0 6px 6px 0;margin-left:1.25rem}.asrs-gate-node--depth-2{border-left:3px solid var(--ui-gray-200);background-color:var(--ui-surface);border-radius:0 4px 4px 0;margin-left:1.25rem}.asrs-gate-node--depth-3{border-left:2px solid var(--ui-accent-50);background-color:var(--ui-surface);margin-left:1.25rem}.asrs-gate-node__row{align-items:center;gap:.625rem;padding:.625rem .875rem;display:flex}.asrs-gate-node__type-badge{text-transform:uppercase;letter-spacing:.03em;border-radius:var(--ui-radius-sm);white-space:nowrap;background-color:var(--ui-gray-100);color:var(--ui-gray-600);flex-shrink:0;padding:.125rem .5rem;font-size:.6875rem;font-weight:600}.asrs-gate-node__type-badge--syllabus{background-color:var(--ui-violet-100);color:var(--ui-violet-800)}.asrs-gate-node__type-badge--syllabus_unit{background-color:var(--ui-primary-100);color:var(--ui-primary-700)}.asrs-gate-node__type-badge--syllabus_subunit{background-color:var(--ui-sky-100);color:var(--ui-sky-700)}.asrs-gate-node__type-badge--outcome{background-color:var(--ui-success-bg);color:var(--ui-success-text)}.asrs-gate-node__label{min-width:0;color:var(--ui-gray-800);cursor:pointer;flex:1;font-size:.875rem;font-weight:600;line-height:1.4}.asrs-gate-node__label--syllabus_subunit{font-weight:500}.asrs-gate-node__label--outcome{color:var(--ui-gray-700);font-weight:400}.asrs-gate-node__controls{flex-shrink:0;align-items:center;gap:.625rem;display:flex}.asrs-gate-node__children{flex-direction:column;gap:.25rem;margin:0;padding:0 0 .5rem;list-style:none;display:flex}.asrs-gate-badge{white-space:nowrap;border-radius:9999px;align-items:center;gap:.25rem;padding:.125rem .5rem;font-size:.75rem;font-weight:600;display:inline-flex}.asrs-gate-badge--unlocked{background-color:var(--ui-success-bg-strong);color:var(--ui-success-text)}.asrs-gate-badge--locked{background-color:var(--ui-gray-100);color:var(--ui-gray-500)}.asrs-gate-toggle{cursor:pointer;border:2px solid #0000;border-radius:9999px;flex-shrink:0;align-items:center;width:44px;height:24px;padding:0;transition:background-color .2s;display:inline-flex;position:relative}.asrs-gate-toggle--on{background-color:var(--ui-success-solid)}.asrs-gate-toggle--off{background-color:var(--ui-gray-300)}.asrs-gate-toggle:focus-visible{outline:2px solid var(--ui-focus);outline-offset:2px}.asrs-gate-toggle:disabled{opacity:.5;cursor:not-allowed}.asrs-gate-toggle__thumb{background-color:var(--ui-surface);width:18px;height:18px;box-shadow:var(--ui-shadow-sm);border-radius:50%;transition:transform .2s;position:absolute}.asrs-gate-toggle--on .asrs-gate-toggle__thumb{transform:translate(20px)}.asrs-gate-toggle--off .asrs-gate-toggle__thumb{transform:translate(2px)}.asrs-gate-legend{border:1px solid var(--ui-gray-200);border-radius:var(--ui-radius-lg);background-color:var(--ui-gray-50);color:var(--ui-gray-500);padding:1rem 1.25rem;font-size:.8125rem}.asrs-gate-legend p{margin:0 0 .5rem}.asrs-gate-legend p:last-child{margin-bottom:0}.asrs-gate-legend__heading{color:var(--ui-gray-700);text-transform:uppercase;letter-spacing:.04em;font-weight:600}.asrs-gate-legend__item{align-items:center;gap:.5rem;display:flex}.asrs-gate-legend__note{font-style:italic}.asrs-gate-source{white-space:nowrap;border:1px solid #0000;border-radius:9999px;flex-shrink:0;padding:.0625rem .4375rem;font-size:.6875rem;font-weight:600}.asrs-gate-source--delivered{background-color:var(--ui-primary-50);color:var(--ui-primary-700);border-color:var(--ui-primary-200)}.asrs-gate-source--override{background-color:var(--ui-orange-50);color:var(--ui-orange-700);border-color:var(--ui-orange-200)}.asrs-gate-source--self{background-color:var(--ui-success-bg);color:var(--ui-success-solid-hover);border-color:var(--ui-success-border)}.asrs-gate-source--manual{background-color:var(--ui-gray-100);color:var(--ui-gray-600);border-color:var(--ui-gray-200)}.asrs-enrolment-gates,.asrs-bulk-gates{flex-direction:column;gap:.75rem;display:flex}.asrs-check-cell{text-align:center;width:2.25rem}.asrs-check-cell input[type=checkbox]{cursor:pointer;width:1rem;height:1rem}.asrs-row--selected>td{background-color:var(--ui-accent-50)}.asrs-source{text-overflow:ellipsis;white-space:nowrap;vertical-align:bottom;max-width:14rem;display:inline-block;overflow:hidden}.asrs-source--self{color:var(--ui-gray-500)}.asrs-bulk-btn{border:1px solid var(--ui-gray-300);border-radius:var(--ui-radius-md);background-color:var(--ui-surface);color:var(--ui-gray-700);cursor:pointer;padding:.1875rem .625rem;font-size:.75rem;font-weight:600}.asrs-bulk-btn:hover:not(:disabled):not(.asrs-bulk-btn--active){background-color:var(--ui-gray-100)}.asrs-bulk-btn:focus-visible{outline:2px solid var(--ui-focus);outline-offset:2px}.asrs-bulk-btn:disabled{opacity:.5;cursor:not-allowed}.asrs-bulk-btn--unlock.asrs-bulk-btn--active{background-color:var(--ui-success-solid);border-color:var(--ui-success-solid);color:var(--ui-on-solid)}.asrs-bulk-btn--lock.asrs-bulk-btn--active{background-color:var(--ui-gray-600);border-color:var(--ui-gray-600);color:var(--ui-on-solid)}.asrs-gate-badge--mixed{background-color:var(--ui-warning-bg-strong);color:var(--ui-warning-text)}.asrs-bulk-footer{border:1px solid var(--ui-gray-200);border-radius:var(--ui-radius-lg);background-color:var(--ui-surface);box-shadow:var(--ui-shadow-sm);flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.625rem;padding:.75rem 1rem;display:flex;position:sticky;bottom:0}.asrs-bulk-footer>.asrs-muted{margin-right:auto}.asrs-date-fields{flex-wrap:wrap;gap:.75rem 1rem;margin:.75rem 0;display:flex}.asrs-date-fields .ui-field{flex:10rem;min-width:0}.asrs-load-more{justify-content:center;margin-top:.75rem;display:flex}.pp-review-pipeline{grid-template-columns:minmax(0,1fr);align-items:start;gap:1.5rem;display:grid}.pp-review-pipeline>.org-detail-section{min-width:0}@media (width>=1280px){.pp-review-pipeline--two{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}.pp-meta-wide{flex-wrap:wrap;grid-column:1/-1;align-items:center}.pp-meta-syllabi{flex-wrap:wrap;gap:.125rem .5rem;margin:0;padding:0;list-style:none;display:flex}.pp-meta-syllabi li:not(:last-child):after{content:","}.pp-meta-quiet{color:var(--ui-gray-500);font-weight:400}.qbd-header-tags{align-items:center;gap:var(--ui-space-2);flex-wrap:wrap;display:flex}.qbd-type-tag{background:var(--ui-primary-100);color:var(--ui-primary-800);border-radius:9999px;padding:.125rem .5rem;font-size:.75rem;font-weight:500}.qbd-sections-header{margin-bottom:var(--ui-space-3);justify-content:space-between;align-items:center;display:flex}.qbd-sections-header h2{margin:0}.qbd-filter-row{margin-bottom:var(--ui-space-3);flex-wrap:wrap;align-items:center;gap:.375rem;display:flex}.qbd-review-counts{flex-wrap:wrap;gap:.375rem;display:flex}.qbd-filter-push{margin-left:auto}.qbd-filter-select{padding:var(--ui-space-1) var(--ui-space-2);border:1px solid var(--ui-gray-300);border-radius:var(--ui-radius-md);background:var(--ui-surface);color:var(--ui-gray-700);cursor:pointer;font-size:.8125rem}.qb-bank-info.qbd-section-link{cursor:pointer}.qbd-status-tags{flex-wrap:wrap;align-items:center;gap:.3rem;display:inline-flex}.hc-message.ppw-error{justify-content:space-between;align-items:center;gap:var(--ui-space-4);display:flex}.hc-form-field .qb-field-control{padding:var(--ui-space-2) var(--ui-space-3);border:1px solid var(--ui-gray-300);border-radius:var(--ui-radius-md);background-color:var(--ui-surface);color:var(--ui-gray-800);width:100%;font-size:.875rem}.qb-exam-date-row{gap:var(--ui-space-3);display:flex}.qb-exam-date-part{flex:1}.hc-form-field .qb-exam-date-label{color:var(--ui-gray-500);font-size:.75rem}.afc-name-link.qb-import-name{opacity:.7}.afc-tag.qb-import-tag{background-color:var(--ui-primary-100);color:var(--ui-primary-700)}.qb-import-progress{align-items:center;gap:var(--ui-space-2);min-width:180px;display:flex}.qb-import-progress-track{background:var(--ui-slate-200);border-radius:3px;flex:1;height:6px;overflow:hidden}.qb-import-progress-fill{background:var(--ui-primary-500);border-radius:3px;height:100%;transition:width .3s}.qb-import-progress-count{color:var(--ui-slate-500);white-space:nowrap;font-size:.75rem}:is(.afc-page,.afc-form-page,.course-copy-page,.org-admin-dashboard,.org-admin-enrollments,.org-analytics-page,.org-branding-editor,.org-courses-page,.org-detail-page,.org-settings,.pp-page,.ppeditor-composer-page,.qb-page)>.ui-page-header{margin-bottom:0}.org-course-detail-limit{flex-direction:column;gap:.5rem;margin:1rem 0;display:flex}.org-course-detail-limit p{margin:0;font-size:.875rem}.org-course-detail-limit-row{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.org-course-detail-limit-row .ui-input{max-width:9rem}.afc-table__group-row th{background:var(--ui-gray-50);letter-spacing:.04em;text-transform:uppercase;color:var(--ui-gray-600);text-align:left;padding-top:.75rem;font-size:.75rem;font-weight:600}.qbs-subtitle{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.qbs-type-badge{background:var(--ui-warning-bg-strong);color:var(--ui-warning-text);border-radius:9999px;padding:.125rem .5rem;font-size:.75rem;font-weight:500}.qbs-review-bar{flex-wrap:wrap;align-items:center;gap:.375rem;margin-bottom:.75rem;display:flex}.qbs-review-counts{flex-wrap:wrap;gap:.375rem;display:flex}.qbs-review-actions{flex-wrap:wrap;align-items:center;gap:.5rem;min-width:0;margin-left:auto;display:flex}.qbs-review-filter{border:1px solid var(--ui-gray-300);border-radius:var(--ui-radius-md);background:var(--ui-surface);color:var(--ui-gray-700);cursor:pointer;padding:.25rem .5rem;font-size:.8125rem}.qbs-import-done{color:var(--ui-success-solid-hover);font-size:.8125rem;font-weight:500}.qbs-reviews-panel{flex-direction:column;gap:1rem;height:100%;display:flex;overflow-y:auto}.qbs-reviews-actions{border-top:2px solid var(--ui-gray-200);justify-content:flex-end;gap:.5rem;padding-top:.75rem;display:flex}.qb-suggest-note{border-top:1px solid var(--ui-border-subtle);background:var(--ui-surface-sunken);flex-direction:column;gap:.375rem;padding:.75rem 1.25rem;display:flex}.qb-suggest-note__label{color:var(--ui-text);font-size:.8125rem;font-weight:600}.qb-suggest-note__input{resize:vertical;width:100%;font:inherit;color:var(--ui-text);background:var(--ui-surface);border:1px solid var(--ui-border);border-radius:var(--ui-radius);padding:.5rem .625rem}.qb-suggest-note__input:focus-visible{outline:2px solid var(--ui-primary);outline-offset:1px}.qb-suggest-note__error,.sg-error{color:var(--ui-danger-text);font-size:.8125rem}.sg-review{flex-direction:column;gap:.875rem;display:flex}.sg-review-meta{flex-wrap:wrap;align-items:center;gap:.625rem;display:flex}.sg-hint,.sg-none{color:var(--ui-text-subtle);font-size:.8125rem}.sg-none{font-style:italic}.sg-note{color:var(--ui-text);background:var(--ui-surface-sunken);border-left:3px solid var(--ui-info-border);border-radius:var(--ui-radius);white-space:pre-wrap;margin:0;padding:.625rem .875rem}.sg-note-label{color:var(--ui-text-muted);margin-bottom:.25rem;font-size:.75rem;font-weight:600;display:block}.sg-diff{border-collapse:collapse;table-layout:fixed;width:100%;color:var(--ui-text);font-size:.875rem}.sg-diff th,.sg-diff td{vertical-align:top;text-align:left;border-bottom:1px solid var(--ui-border-subtle);padding:.5rem .625rem}.sg-diff thead th{color:var(--ui-text-muted);background:var(--ui-surface-sunken);font-size:.75rem;font-weight:600}.sg-diff thead th:first-child,.sg-diff tbody th{width:11rem}.sg-diff tbody th{color:var(--ui-text-muted);font-weight:600}.sg-diff-now{background:var(--ui-danger-bg)}.sg-diff-next{background:var(--ui-success-bg)}.sg-options,.sg-list{margin:0;padding-left:1.25rem}.sg-option+.sg-option{margin-top:.25rem}.sg-option--correct{font-weight:600}.sg-correct{color:var(--ui-success-text);margin-left:.5rem;font-size:.75rem;font-weight:600}.sg-added{color:var(--ui-success-text)}.sg-removed{color:var(--ui-danger-text);text-decoration:line-through}.sg-dismiss{flex-direction:column;gap:.375rem;display:flex}.sg-dismiss textarea{resize:vertical;width:100%;font:inherit;color:var(--ui-text);background:var(--ui-surface);border:1px solid var(--ui-border);border-radius:var(--ui-radius);padding:.5rem .625rem}.sg-badge{color:var(--ui-info);background:var(--ui-info-bg);border:1px solid var(--ui-info-border);border-radius:999px;align-items:center;gap:.25rem;padding:.0625rem .5rem;font-size:.75rem;font-weight:600;display:inline-flex}.vp-comment-suggestion{flex-wrap:wrap;align-items:center;gap:.5rem;margin:.375rem 0;display:flex}.exam-editor{border:1px solid var(--ui-border-subtle);background:var(--ui-surface);border-radius:8px;padding:1.5rem}.exam-readonly{padding:1rem}.exam-header-info h3{color:var(--ui-text);margin:0 0 .5rem;font-size:1.125rem}.exam-description{color:var(--ui-text-muted);margin:0 0 .75rem;font-size:.9rem}.exam-meta{color:var(--ui-text-subtle);gap:1rem;font-size:.8125rem;display:flex}.exam-settings{border-bottom:1px solid var(--ui-border-subtle);margin-bottom:1.5rem;padding-bottom:1rem}.exam-settings-row{flex-wrap:wrap;align-items:flex-end;gap:1rem;margin-bottom:.75rem;display:flex}.exam-label{color:var(--ui-text-muted);flex-direction:column;gap:.25rem;font-size:.8125rem;font-weight:500;display:flex}.exam-label-inline{flex-direction:row;align-items:center;gap:.5rem}.exam-input{border:1px solid var(--ui-border-subtle);color:var(--ui-text);border-radius:4px;width:100%;padding:.375rem .5rem;font-size:.875rem}.exam-input:focus{border-color:var(--ui-accent-interactive);box-shadow:var(--ui-focus-ring);outline:none}.exam-input-sm{width:100px}.exam-input-xs{width:60px}.exam-stats{color:var(--ui-text-subtle);align-items:center;gap:1rem;font-size:.8125rem;display:flex}.exam-status-saving{color:var(--ui-warning-accent)}.exam-save-btn{background:var(--ui-accent-interactive);color:var(--ui-on-accent);cursor:pointer;border:none;border-radius:4px;padding:.25rem .75rem;font-size:.75rem}.exam-save-btn:hover{background:var(--ui-accent-interactive-hover)}.exam-questions{flex-direction:column;gap:.75rem;margin-bottom:1rem;display:flex}.exam-question-card{border:1px solid var(--ui-border-subtle);border-radius:6px;padding:.75rem}.exam-question-header{align-items:center;gap:.5rem;margin-bottom:.5rem;display:flex}.exam-question-number{color:var(--ui-gray-700);font-size:.875rem;font-weight:600}.exam-question-type-badge{text-transform:capitalize;background:var(--ui-gray-100);color:var(--ui-text-muted);border-radius:9999px;padding:.125rem .5rem;font-size:.6875rem}.exam-question-points{color:var(--ui-text-subtle);font-size:.75rem}.exam-question-actions{gap:.25rem;margin-left:auto;display:flex}.exam-question-preview{color:var(--ui-text-muted);margin:0;font-size:.875rem}.exam-question-edit{flex-direction:column;gap:.5rem;display:flex}.exam-question-text{resize:vertical;min-height:50px}.exam-options{flex-direction:column;gap:.375rem;padding-left:.25rem;display:flex}.exam-option{align-items:center;gap:.5rem;font-size:.875rem;display:flex}.exam-option input[type=text]{flex:1}.exam-add-option-btn{border:1px dashed var(--ui-border);color:var(--ui-text-subtle);cursor:pointer;background:0 0;border-radius:4px;align-self:flex-start;padding:.25rem .5rem;font-size:.8125rem}.exam-add-option-btn:hover{border-color:var(--ui-gray-400);color:var(--ui-text-muted)}.exam-question-footer{border-top:1px solid var(--ui-border-subtle);align-items:center;gap:1rem;padding-top:.5rem;display:flex}.exam-question-footer .exam-input{flex:1}.exam-question-nav{border-top:1px solid var(--ui-border-subtle);justify-content:center;align-items:center;gap:8px;margin-top:.75rem;padding-top:.75rem;display:flex}.exam-question-nav-counter{color:var(--ui-text-subtle);font-size:.8125rem;font-weight:500}.exam-add-question{flex-wrap:wrap;gap:.5rem;display:flex}.exam-import-error{background:var(--ui-danger-bg);border:1px solid var(--ui-red-300);color:var(--ui-danger-text);border-radius:6px;margin-top:.75rem;padding:.75rem 2.5rem .75rem .875rem;font-size:.8125rem;position:relative}.exam-import-error strong{margin-bottom:.25rem;display:block}.exam-import-error-detail{white-space:pre-wrap;margin:0;font-family:inherit;font-size:.8125rem;line-height:1.5}.exam-import-dismiss{position:absolute;top:.375rem;right:.375rem}.exam-import-success{background:var(--ui-success-bg);border:1px solid var(--ui-green-300);color:var(--ui-success-text);border-radius:6px;margin-top:.75rem;padding:.625rem .875rem;font-size:.8125rem}.multi-config-panel{background:var(--ui-surface);border:1px solid var(--ui-border-subtle);border-radius:8px;flex-direction:column;font-size:.9rem;display:flex;overflow:hidden}.mcp-header{border-bottom:1px solid var(--ui-border-subtle);background:var(--ui-gray-50);justify-content:space-between;align-items:center;padding:.75rem 1rem;display:flex}.mcp-title{color:var(--ui-gray-800);margin:0;font-size:.95rem;font-weight:600}.mcp-header-actions{gap:.5rem;display:flex}.mcp-body{flex:1;min-height:100px}.mcp-config-list{flex-direction:column;gap:.5rem;padding:.75rem;display:flex}.mcp-config-card{background:var(--ui-surface);border:1px solid var(--ui-border-subtle);border-radius:6px;transition:border-color .15s,box-shadow .15s,opacity .15s,transform .15s}.mcp-config-card:hover{border-color:var(--ui-border);box-shadow:var(--ui-shadow-sm)}.mcp-config-card--dragging{opacity:.5;box-shadow:var(--ui-shadow-md);transform:scale(1.02)}.mcp-config-card--drag-over{border-color:var(--ui-accent-interactive);background:var(--ui-primary-50);box-shadow:0 0 0 2px color-mix(in srgb, var(--ui-accent-interactive) 20%, transparent);border-style:dashed}.mcp-config-card-content{align-items:center;gap:.75rem;padding:.75rem;display:flex}.mcp-drag-handle{width:1.5rem;color:var(--ui-gray-400);cursor:grab;-webkit-user-select:none;user-select:none;text-align:center;flex-shrink:0;font-size:1.1rem;transition:color .15s}.mcp-drag-handle:hover{color:var(--ui-text-subtle)}.mcp-drag-handle:active{cursor:grabbing}.mcp-config-card--dragging .mcp-drag-handle{cursor:grabbing;color:var(--ui-accent-interactive)}.mcp-config-info{flex-direction:column;flex:1;gap:.25rem;min-width:0;display:flex}.mcp-config-header{flex-wrap:wrap;align-items:baseline;gap:.5rem;display:flex}.mcp-config-label{color:var(--ui-gray-800);font-size:.875rem;font-weight:600}.mcp-config-count{color:var(--ui-text-subtle);font-size:.8rem}.mcp-config-summary{color:var(--ui-text-subtle);white-space:nowrap;text-overflow:ellipsis;font-size:.8rem;overflow:hidden}.mcp-config-actions{flex-shrink:0;align-items:center;gap:.25rem;display:flex}.mcp-empty-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:.5rem;padding:2rem 1rem;display:flex}.mcp-empty-icon{margin-bottom:.25rem;font-size:2rem}.mcp-empty-text{color:var(--ui-text-muted);margin:0;font-size:.9rem;font-weight:500}.mcp-empty-hint{color:var(--ui-text-subtle);max-width:280px;margin:0 0 .75rem;font-size:.8rem}.mcp-footer{border-top:1px solid var(--ui-border-subtle);background:var(--ui-gray-50);justify-content:flex-end;align-items:center;padding:.625rem 1rem;display:flex}.mcp-total-count{color:var(--ui-text-muted);font-size:.85rem;font-weight:600}.eqs-root{background:var(--ui-surface);flex-direction:column;height:100%;min-height:400px;display:flex}.eqs-navigation{border-bottom:1px solid var(--ui-border-subtle);background:var(--ui-gray-50);padding:.75rem 1rem}.eqs-back-link{color:var(--ui-accent-600);cursor:pointer;background:0 0;border:none;border-radius:6px;align-items:center;gap:.25rem;padding:.375rem .75rem;font-size:.875rem;font-weight:500;transition:background-color .15s,color .15s;display:inline-flex}.eqs-back-link:hover{background:var(--ui-accent-50);color:var(--ui-accent-700)}.eqs-back-link:focus{outline:2px solid var(--ui-accent-600);outline-offset:2px}.eqs-panels{flex:1;grid-template-columns:1fr 1fr;gap:1rem;min-height:0;padding:1rem;display:grid;overflow:hidden}@media (width<=768px){.eqs-panels{grid-template-rows:1fr 1fr;grid-template-columns:1fr}}.eqs-panel{background:var(--ui-surface);border:1px solid var(--ui-border-subtle);border-radius:8px;flex-direction:column;min-height:0;display:flex;overflow:hidden}.eqs-panel--right{background:var(--ui-gray-50)}.eqs-panel-header{border-bottom:1px solid var(--ui-border-subtle);background:var(--ui-gray-50);padding:.75rem 1rem}.eqs-panel-title{color:var(--ui-text);margin:0;font-size:.9375rem;font-weight:600}.eqs-search-container{border-bottom:1px solid var(--ui-border-subtle);padding:.75rem 1rem;position:relative}.eqs-search-input{border:1px solid var(--ui-border);background:var(--ui-surface);border-radius:6px;width:100%;padding:.5rem 2rem .5rem .75rem;font-size:.875rem;transition:border-color .15s,box-shadow .15s}.eqs-search-input:focus{border-color:var(--ui-accent-600);box-shadow:var(--ui-focus-ring);outline:none}.eqs-search-input::placeholder{color:var(--ui-gray-400)}.eqs-search-clear{width:1.25rem;height:1.25rem;color:var(--ui-text-subtle);background:var(--ui-gray-200);cursor:pointer;border:none;border-radius:50%;padding:0;font-size:1rem;line-height:1;transition:background-color .15s,color .15s;position:absolute;top:50%;right:1.5rem;transform:translateY(-50%)}.eqs-search-clear:hover{background:var(--ui-gray-300);color:var(--ui-gray-700)}.eqs-question-list{flex:1;padding:.5rem;overflow-y:auto}.eqs-loading,.eqs-error,.eqs-empty{text-align:center;color:var(--ui-text-subtle);padding:2rem 1rem;font-size:.875rem}.eqs-error{color:var(--ui-danger);background:var(--ui-danger-bg);border-radius:6px;margin:.5rem}.eqs-question-item{background:var(--ui-surface);border:1px solid var(--ui-border-subtle);cursor:pointer;border-radius:6px;flex-direction:column;gap:.5rem;margin-bottom:.5rem;padding:.75rem;transition:border-color .15s,box-shadow .15s;display:flex}.eqs-question-item:hover{border-color:var(--ui-accent-200);box-shadow:0 1px 3px color-mix(in srgb, var(--ui-accent-600) 8%, transparent)}.eqs-question-item--selected{background:var(--ui-accent-50);border-color:var(--ui-accent-200)}.eqs-checkbox{width:1.125rem;height:1.125rem;accent-color:var(--ui-accent-600);cursor:pointer;flex-shrink:0;margin-top:.125rem}.eqs-question-content{flex:1;min-width:0}.eqs-question-row{align-items:center;gap:.5rem;margin-bottom:.375rem;display:flex}.eqs-type-badge{text-transform:uppercase;letter-spacing:.025em;white-space:nowrap;border-radius:4px;padding:.125rem .5rem;font-size:.6875rem;font-weight:600;display:inline-block}.eqs-type-badge--mcq{background:var(--ui-primary-100);color:var(--ui-primary-800)}.eqs-type-badge--short{background:var(--ui-warning-bg-strong);color:var(--ui-warning-text)}.eqs-type-badge--essay{background:var(--ui-success-bg-strong);color:var(--ui-success-text)}.eqs-type-badge--default{background:var(--ui-gray-100);color:var(--ui-gray-700)}.eqs-marks{color:var(--ui-text-subtle);font-size:.75rem;font-weight:500}.eqs-used-badge{text-transform:uppercase;letter-spacing:.04em;background:var(--ui-yellow-100);color:var(--ui-yellow-800);border:1px solid var(--ui-warning-border);border-radius:.25rem;padding:.125rem .5rem;font-size:.625rem;font-weight:600;display:inline-block}.eqs-question-text{color:var(--ui-gray-700);text-overflow:ellipsis;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.875rem;line-height:1.5;display:-webkit-box;overflow:hidden}.eqs-bank-name{color:var(--ui-text-subtle);margin-top:.375rem;font-size:.75rem;font-style:italic}.eqs-pagination{border-top:1px solid var(--ui-border-subtle);background:var(--ui-gray-50);justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 1rem;display:flex}.eqs-pagination-info{color:var(--ui-text-subtle);font-size:.8125rem}.eqs-pagination-controls{align-items:center;gap:.5rem;display:flex}.eqs-pagination-btn{color:var(--ui-accent-600);background:var(--ui-surface);border:1px solid var(--ui-border-subtle);cursor:pointer;border-radius:6px;padding:.375rem .625rem;font-size:.8125rem;font-weight:500;transition:background-color .15s,border-color .15s}.eqs-pagination-btn:hover:not(:disabled){background:var(--ui-accent-50);border-color:var(--ui-accent-200)}.eqs-pagination-btn:disabled{color:var(--ui-gray-400);cursor:not-allowed;opacity:.6}.eqs-page-indicator{color:var(--ui-gray-700);padding:0 .5rem;font-size:.8125rem}.eqs-selected-list{flex:1;padding:.5rem;overflow-y:auto}.eqs-empty-selected{text-align:center;color:var(--ui-text-subtle);padding:2rem 1rem;font-size:.875rem;font-style:italic}.eqs-selected-item{background:var(--ui-surface);border:1px solid var(--ui-border-subtle);border-radius:6px;align-items:flex-start;gap:.5rem;margin-bottom:.5rem;padding:.75rem;transition:border-color .15s,box-shadow .15s,opacity .15s;display:flex}.eqs-selected-item--dragging{opacity:.5;border-style:dashed}.eqs-selected-item--drop-target{border-color:var(--ui-accent-600);box-shadow:0 0 0 2px color-mix(in srgb, var(--ui-accent-600) 20%, transparent)}.eqs-drag-handle{width:1.5rem;height:1.5rem;color:var(--ui-gray-400);cursor:grab;-webkit-user-select:none;user-select:none;flex-shrink:0;justify-content:center;align-items:center;font-size:1rem;display:flex}.eqs-drag-handle:hover{color:var(--ui-text-subtle)}.eqs-selected-content{flex:1;min-width:0}.eqs-selected-row{align-items:center;gap:.5rem;margin-bottom:.375rem;display:flex}.eqs-selected-text{color:var(--ui-gray-700);text-overflow:ellipsis;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.875rem;line-height:1.5;display:-webkit-box;overflow:hidden}.eqs-selected-actions{flex-direction:column;flex-shrink:0;gap:.25rem;display:flex}.eqs-reorder-btn{width:1.5rem;height:1.5rem;color:var(--ui-text-subtle);background:var(--ui-gray-100);border:1px solid var(--ui-border-subtle);cursor:pointer;border-radius:4px;justify-content:center;align-items:center;padding:0;font-size:.875rem;line-height:1;transition:background-color .15s,color .15s;display:flex}.eqs-reorder-btn:hover:not(:disabled){background:var(--ui-gray-200);color:var(--ui-gray-700)}.eqs-reorder-btn:disabled{color:var(--ui-gray-300);cursor:not-allowed}.eqs-totals{border-top:1px solid var(--ui-border-subtle);background:var(--ui-surface);padding:.75rem 1rem}.eqs-totals-text{color:var(--ui-text);font-size:.875rem;font-weight:600}.eqs-selected-footer{border-top:1px solid var(--ui-border-subtle);background:var(--ui-surface);justify-content:space-between;align-items:center;gap:.75rem;padding:.75rem 1rem;display:flex}.eqs-selected-totals{color:var(--ui-gray-700);align-items:center;gap:.5rem;font-size:.875rem;display:flex}.eqs-confirm-btn{cursor:pointer;background:var(--ui-accent-interactive);border:1px solid var(--ui-accent-interactive);color:var(--ui-on-accent);white-space:nowrap;border-radius:4px;flex-shrink:0;padding:.5rem 1rem;font-size:.875rem;font-weight:500;transition:background-color .15s}.eqs-confirm-btn:hover{background:var(--ui-accent-interactive-hover)}.eqs-header{border-bottom:1px solid var(--ui-border-subtle);background:var(--ui-gray-50);flex-shrink:0;justify-content:space-between;align-items:center;padding:.75rem 1rem;display:flex}.eqs-selection-summary{color:var(--ui-gray-700);align-items:center;gap:.5rem;font-size:.875rem;display:flex}.eqs-count{color:var(--ui-accent-interactive);font-weight:600}.eqs-panel-header{justify-content:space-between;align-items:center;display:flex}.eqs-panel-count{color:var(--ui-text-subtle);font-size:.8125rem;font-weight:500}.eqs-item-order{color:var(--ui-text-subtle);flex-shrink:0;min-width:1.5rem;font-size:.8125rem;font-weight:600}.explicit-question-selector{flex-direction:column;height:100%;min-height:0;display:flex}.eqs-sentinel{flex-shrink:0;height:1px}.eqs-loading-more{text-align:center;color:var(--ui-text-subtle);padding:.75rem 1rem;font-size:.8125rem;font-style:italic}.eqs-question-main{gap:.75rem;display:flex}.eqs-question-text--none{color:var(--ui-text-subtle);font-style:italic}.eqs-parts{border-left:2px solid var(--ui-border-subtle);margin:0 0 0 1.875rem;padding:0 0 0 .75rem;list-style:none}.eqs-parts .eqs-parts{margin-left:1.5rem}.eqs-part-row{color:var(--ui-gray-700);cursor:pointer;border-radius:4px;align-items:flex-start;gap:.5rem;padding:.375rem .5rem;font-size:.8125rem;display:flex}.eqs-part-row:hover,.eqs-part-row--selected{background:var(--ui-accent-50)}.eqs-part-row--covered{cursor:default;color:var(--ui-text-subtle)}.eqs-part-row--covered:hover{background:0 0}.eqs-part-row .eqs-checkbox{width:1rem;height:1rem;margin-top:.0625rem}.eqs-part-row--covered .eqs-checkbox{cursor:default}.eqs-part-label{min-width:1.25rem;color:var(--ui-accent-600);flex-shrink:0;font-weight:600}.eqs-part-row .eqs-type-badge,.eqs-part-row .eqs-marks{flex-shrink:0}.eqs-part-text{flex:1;min-width:0;line-height:1.4}.eqs-part-of{color:var(--ui-text-subtle);text-overflow:ellipsis;white-space:nowrap;margin-bottom:.125rem;font-size:.75rem;overflow:hidden}.eqs-question-text--label{color:var(--ui-slate-600);font-style:italic}.eqs-question-text,.eqs-part-text,.eqs-selected-text{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.eqs-preview-btn{flex-shrink:0;margin-left:auto}.eqs-preview-error{color:var(--ui-danger);background:var(--ui-danger-bg);border:1px solid var(--ui-danger-border);border-radius:4px;align-items:center;gap:8px;margin-top:8px;padding:6px 10px;font-size:.8rem;display:flex}.eqs-preview-error button{margin-left:auto}.eqs-question-content,.eqs-selected-content{min-width:0}.eqs-part-text{flex:1;min-width:0}.bank-multi-select{position:relative}.bank-multi-select__summary{cursor:pointer;border:1px solid var(--ui-border);background:var(--ui-surface);color:var(--ui-text);white-space:nowrap;text-overflow:ellipsis;border-radius:4px;padding:.5rem 2rem .5rem .75rem;font-size:.9rem;list-style:none;overflow:hidden}.bank-multi-select__summary::-webkit-details-marker{display:none}.bank-multi-select__summary:after{content:"▾";color:var(--ui-gray-400);position:absolute;top:.5rem;right:.75rem}.bank-multi-select[open] .bank-multi-select__summary,.bank-multi-select__summary:focus-visible{border-color:var(--ui-accent-interactive);box-shadow:var(--ui-focus-ring);outline:none}.bank-multi-select--disabled .bank-multi-select__summary{cursor:not-allowed;opacity:.6}.bank-multi-select__panel{border:1px solid var(--ui-border);background:var(--ui-surface);border-radius:4px;max-height:18rem;margin-top:.25rem;padding:.5rem;overflow-y:auto}.bank-multi-select__head{background:var(--ui-surface);border-bottom:1px solid var(--ui-border-subtle);z-index:1;margin:-.5rem -.5rem .375rem;padding:.5rem .5rem .125rem;position:sticky;top:-.5rem}.bank-multi-select__search{box-sizing:border-box;border:1px solid var(--ui-border);background:var(--ui-surface);width:100%;color:var(--ui-text);border-radius:4px;margin-bottom:.375rem;padding:.375rem .5rem;font-size:.85rem}.bank-multi-select__search:focus{border-color:var(--ui-accent-interactive);outline:none}.bank-multi-select__actions{align-items:baseline;gap:.5rem;margin-bottom:.375rem;display:flex}.bank-multi-select__tally{color:var(--ui-text-subtle);margin-left:auto;font-size:.8rem}.bank-multi-select__action{color:var(--ui-accent-interactive);cursor:pointer;background:0 0;border:none;padding:0;font-size:.8rem}.bank-multi-select__action:disabled{cursor:not-allowed;opacity:.6}.bank-multi-select__list{margin:0;padding:0;list-style:none}.bank-multi-select__option{color:var(--ui-text);cursor:pointer;align-items:flex-start;gap:.5rem;padding:.25rem 0;font-size:.875rem;display:flex}.bank-multi-select__count{color:var(--ui-text-subtle)}.bank-multi-select__empty{color:var(--ui-text-subtle);margin:0;font-size:.85rem}.bank-multi-select--panel{flex-direction:column;height:100%;min-height:0;display:flex}.bank-multi-select--panel .bank-multi-select__panel{border-radius:6px;flex:1;min-height:0;max-height:none;margin-top:0}.os{flex-direction:column;flex:1;gap:.5rem;min-height:0;display:flex}.os-tabs{border-bottom:1px solid var(--ui-border-subtle);gap:.25rem;display:flex}.os-tab{color:var(--ui-text-subtle);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:.375rem .75rem;font-size:.8125rem;font-weight:500}.os-tab:hover{color:var(--ui-text)}.os-tab--active{color:var(--ui-accent-600);border-bottom-color:var(--ui-accent-600)}.os-search{border:1px solid var(--ui-border);background:var(--ui-surface);color:var(--ui-text);border-radius:4px;flex-shrink:0;padding:.4rem .75rem;font-size:.875rem}.os-search:focus{border-color:var(--ui-accent-600);box-shadow:var(--ui-focus-ring);outline:none}.os-tree{border:1px solid var(--ui-border-subtle);background:var(--ui-surface);border-radius:6px;flex:1;min-height:150px;padding:.75rem;overflow-y:auto}.os-empty{text-align:center;color:var(--ui-gray-400);padding:.75rem;font-size:.85rem}.os-node{margin-bottom:.25rem}.os-node-label{cursor:pointer;border-radius:4px;align-items:center;gap:.5rem;padding:.375rem .5rem;display:flex}.os-node-label:hover,.os-outcome:hover{background:var(--ui-surface-hover)}.os-node-label input,.os-outcome input{accent-color:var(--ui-accent-600);flex-shrink:0}.os-node-title{color:var(--ui-text);font-size:.9rem;font-weight:600}.os-ref{color:var(--ui-accent-600);font-weight:600}.os-count{color:var(--ui-text-subtle);font-size:.8rem}.os-outcomes{border-left:2px solid var(--ui-border-subtle);margin:.25rem 0 .5rem 1.5rem;padding-left:.75rem}.os-outcome{cursor:pointer;border-radius:4px;align-items:flex-start;gap:.5rem;padding:.3rem .5rem;display:flex}.os-outcome input{margin-top:.15rem}.os-outcome-text{color:var(--ui-gray-700);font-size:.8rem;line-height:1.4}.os-outcome-text strong{color:var(--ui-accent-600)}.osv-list{margin:.25rem 0 0 1.5rem;padding:0;list-style:none}.osv-list--top{margin:0 0 0 1.375rem}.osv-node{margin-bottom:.375rem}.osv-row{align-items:flex-start;gap:.5rem;padding:.125rem 0;display:flex}.osv-root{margin-bottom:.375rem}.osv-mark{background:var(--ui-gray-200);border-radius:.125rem;flex-shrink:0;width:.875rem;height:.875rem;margin-top:.2rem;display:inline-block}.osv-mark--on{background:var(--ui-accent-600)}.osv-syllabus{color:var(--ui-gray-800);font-weight:700}.osv-title{color:var(--ui-gray-800);font-weight:600}.osv-outcome{color:var(--ui-gray-700)}.osv-code{color:var(--ui-accent-600);white-space:nowrap;font-weight:600}.os-node-row{align-items:center;gap:.125rem;display:flex}.os-node-row .os-node-label{flex:1;min-width:0}.os-toggle,.os-toggle-spacer{flex-shrink:0;width:1.25rem;height:1.25rem}.os-toggle{color:var(--ui-text-subtle);cursor:pointer;background:0 0;border:none;border-radius:3px;justify-content:center;align-items:center;padding:0;font-size:.8rem;display:inline-flex}.os-toggle:hover:not(:disabled){background:var(--ui-gray-100);color:var(--ui-text)}.os-toggle:disabled{cursor:default;opacity:.5}.os-expand-actions{flex-shrink:0;justify-content:flex-end;gap:.5rem;display:flex}.os-expand-btn{color:var(--ui-accent-600);cursor:pointer;background:0 0;border:none;padding:0;font-size:.78rem}.os-expand-btn:hover:not(:disabled){text-decoration:underline}.os-expand-btn:disabled{color:var(--ui-gray-400);cursor:default}.os-tab-links{gap:.75rem;margin-left:.75rem;display:inline-flex}.os-tab-link{color:var(--ui-accent-600);cursor:pointer;background:0 0;border:none;padding:0;font-size:.8125rem}.os-tab-link:hover{text-decoration:underline}.os-tab-link--active{text-underline-offset:3px;font-weight:600;text-decoration:underline}.ui-modal:has(>.config-dialog-content){gap:0;width:100%;max-width:none;height:100%;max-height:none;padding:0;overflow:hidden}.ui-modal:has(>.config-dialog-content)>.ui-modal-header{border-bottom:1px solid var(--ui-border-subtle);flex-shrink:0;padding:1rem 1.5rem}.config-dialog-content{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.config-dialog-body{flex-direction:column;flex:1;min-height:0;padding:1.5rem;display:flex;overflow:hidden}.config-dialog-filters-view{flex-direction:column;flex:1;gap:1rem;min-height:0;display:flex;overflow:hidden}.config-dialog-selector-view{flex-direction:column;gap:1rem;height:100%;display:flex}.config-dialog-back-link{color:var(--ui-accent-interactive);cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:.25rem;padding:.5rem 0;font-size:.9rem;display:inline-flex}.config-dialog-back-link:hover{text-decoration:underline}.config-dialog-footer{border-top:1px solid var(--ui-border-subtle);flex-shrink:0;justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;display:flex}.config-dialog-placeholder{background:var(--ui-gray-50);border:1px dashed var(--ui-border);border-radius:6px;padding:1rem}.config-dialog-placeholder p{margin:.25rem 0}.config-dialog-placeholder strong{color:var(--ui-text-subtle);text-transform:uppercase;letter-spacing:.5px;font-size:.85rem}@media (width<=768px){.ui-modal-overlay:has(>.ui-modal>.config-dialog-content){padding:0}.ui-modal:has(>.config-dialog-content){border-radius:0}}.config-dialog-field{flex-direction:column;gap:.375rem;display:flex}.config-dialog-field-label{color:var(--ui-text-muted);font-size:.875rem;font-weight:500}.config-dialog-input,.config-dialog-select{border:1px solid var(--ui-border);background:var(--ui-surface);color:var(--ui-text);border-radius:4px;padding:.5rem .75rem;font-size:.9rem;transition:border-color .15s,box-shadow .15s}.config-dialog-input:focus,.config-dialog-select:focus{border-color:var(--ui-accent-interactive);box-shadow:var(--ui-focus-ring);outline:none}.config-dialog-field-error{color:var(--ui-danger);font-size:.8rem}.config-dialog-input::placeholder{color:var(--ui-gray-400)}.config-dialog-section{flex-direction:column;gap:.75rem;display:flex}.config-dialog-section-title{color:var(--ui-text);border-bottom:1px solid var(--ui-border-subtle);margin:0;padding-bottom:.5rem;font-size:.9rem;font-weight:600}.config-dialog-filters-grid{grid-template-columns:repeat(2,1fr);gap:1rem;display:grid}@media (width<=600px){.config-dialog-filters-grid{grid-template-columns:1fr}}.config-dialog-multiselect{align-items:center;gap:.25rem;display:flex;position:relative}.config-dialog-multiselect-dropdown{flex:1;position:relative}.config-dialog-multiselect-summary{border:1px solid var(--ui-border);background:var(--ui-surface);color:var(--ui-text);cursor:pointer;border-radius:4px;justify-content:space-between;align-items:center;padding:.5rem .75rem;font-size:.9rem;list-style:none;display:flex}.config-dialog-multiselect-summary:after{content:"▼";color:var(--ui-text-subtle);margin-left:.5rem;font-size:.65rem}.config-dialog-multiselect-dropdown[open] .config-dialog-multiselect-summary:after{content:"▲"}.config-dialog-multiselect-summary::-webkit-details-marker{display:none}.config-dialog-multiselect-options{background:var(--ui-surface);border:1px solid var(--ui-border);max-height:200px;box-shadow:var(--ui-shadow-md);z-index:10;border-radius:4px;position:absolute;top:calc(100% + 2px);left:0;right:0;overflow-y:auto}.config-dialog-multiselect-option{cursor:pointer;align-items:flex-start;gap:.5rem;padding:.5rem .75rem;transition:background-color .1s;display:flex}.config-dialog-multiselect-option:hover{background:var(--ui-gray-100)}.config-dialog-multiselect-option input[type=checkbox]{flex-shrink:0;margin-top:.15rem}.config-dialog-multiselect-option-text{font-size:.85rem;line-height:1.4}.config-dialog-multiselect-option-text strong{color:var(--ui-accent-interactive)}.config-dialog-multiselect-empty{text-align:center;color:var(--ui-text-subtle);padding:.75rem;font-size:.85rem}.config-dialog-multiselect-clear{cursor:pointer;color:var(--ui-text-subtle);background:0 0;border:none;border-radius:4px;padding:.25rem .5rem;font-size:1.1rem;line-height:1;transition:background-color .15s}.config-dialog-multiselect-clear:hover{background-color:var(--ui-gray-100);color:var(--ui-text)}.config-dialog-matching-section{background:var(--ui-gray-50);border:1px solid var(--ui-border-subtle);border-radius:6px;justify-content:space-between;align-items:center;padding:1rem;display:flex}.config-dialog-matching-count{font-size:.95rem}.config-dialog-matching-loading{color:var(--ui-text-subtle);font-style:italic}.config-dialog-matching-text{color:var(--ui-text)}.config-dialog-matching-text strong{color:var(--ui-accent-interactive);font-size:1.1rem}.config-dialog-matching-warning{color:var(--ui-warning-text);font-weight:500}.config-dialog-view-select-btn{cursor:pointer;background:var(--ui-surface);border:1px solid var(--ui-accent-interactive);color:var(--ui-accent-interactive);border-radius:4px;padding:.5rem 1rem;font-size:.9rem;transition:background-color .15s,color .15s}.config-dialog-view-select-btn:hover:not(:disabled){background:var(--ui-accent-interactive);color:var(--ui-on-accent)}.config-dialog-view-select-btn:disabled{opacity:.5;cursor:not-allowed}.config-dialog-radio-group{flex-flow:wrap;align-items:stretch;gap:.5rem;display:flex}.config-dialog-radio-option{border:1px solid var(--ui-border-subtle);cursor:pointer;border-radius:6px;flex:1;align-items:center;gap:.5rem;min-width:fit-content;padding:.625rem .75rem;transition:border-color .15s,background-color .15s;display:flex}.config-dialog-radio-option:hover{border-color:var(--ui-accent-interactive);background:var(--ui-gray-50)}.config-dialog-radio-option:has(input:checked){border-color:var(--ui-accent-interactive);background:color-mix(in srgb, var(--ui-accent-interactive) 5%, transparent)}.config-dialog-radio-option--disabled{opacity:.6;cursor:not-allowed}.config-dialog-radio-option--disabled:hover{border-color:var(--ui-border-subtle);background:0 0}.config-dialog-radio-option input[type=radio]{accent-color:var(--ui-accent-interactive);flex-shrink:0}.config-dialog-radio-text{color:var(--ui-text);flex-wrap:wrap;align-items:center;gap:.25rem;font-size:.9rem;display:flex}.config-dialog-inline-number{border:1px solid var(--ui-border);text-align:center;border-radius:4px;width:60px;padding:.25rem .5rem;font-size:.9rem}.config-dialog-inline-number:focus{border-color:var(--ui-accent-interactive);outline:none}.config-dialog-radio-warning{color:var(--ui-warning-text);background:color-mix(in srgb, var(--ui-warning-solid-hover) 8%, transparent);border-radius:4px;margin-left:1.5rem;padding:.375rem .75rem;font-size:.85rem}.config-dialog-radio-hint{color:var(--ui-text-subtle);margin-left:1.5rem;font-size:.8rem;font-style:italic}.config-dialog-tree-header{justify-content:space-between;align-items:center;margin-bottom:.5rem;display:flex}.config-dialog-tree-clear-btn{color:var(--ui-accent-interactive);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:.25rem .5rem;font-size:.8rem;transition:background-color .15s}.config-dialog-tree-clear-btn:hover{background-color:color-mix(in srgb, var(--ui-accent-interactive) 10%, transparent)}.config-dialog-tree{border:1px solid var(--ui-border-subtle);background:var(--ui-surface);border-radius:6px;max-height:350px;padding:.75rem;overflow-y:auto}.config-dialog-tree-empty{text-align:center;color:var(--ui-text-subtle);padding:.75rem;font-size:.85rem}.config-dialog-tree-node{margin-bottom:.25rem}.config-dialog-tree-section-label{cursor:pointer;border-radius:4px;align-items:center;gap:.5rem;padding:.375rem .5rem;transition:background-color .1s;display:flex}.config-dialog-tree-section-label:hover{background:var(--ui-gray-100)}.config-dialog-tree-section-name{color:var(--ui-text);font-size:.9rem;font-weight:600}.config-dialog-tree-section-count{color:var(--ui-text-subtle);font-size:.8rem;font-weight:400}.config-dialog-tree-outcomes{border-left:2px solid var(--ui-border-subtle);margin-top:.25rem;margin-bottom:.5rem;margin-left:1.5rem;padding-left:.75rem}.config-dialog-tree-outcome{cursor:pointer;border-radius:4px;align-items:flex-start;gap:.5rem;padding:.3rem .5rem;transition:background-color .1s;display:flex}.config-dialog-tree-outcome:hover{background:var(--ui-gray-100)}.config-dialog-tree-outcome input[type=checkbox]{accent-color:var(--ui-accent-interactive);flex-shrink:0;margin-top:.15rem}.config-dialog-tree-outcome-text{color:var(--ui-text-muted);font-size:.8rem;line-height:1.4}.config-dialog-tree-outcome-text strong{color:var(--ui-accent-interactive)}.config-dialog-tree-section-label input[type=checkbox]:indeterminate{accent-color:var(--ui-accent-interactive)}.config-dialog-radio-option--manual{cursor:pointer;justify-content:space-between;align-items:center}.config-dialog-manual-count{color:var(--ui-accent-interactive);font-weight:600}.config-dialog-view-select-link{color:var(--ui-accent-interactive);white-space:nowrap;border-radius:4px;flex-shrink:0;margin-left:auto;padding:.25rem .5rem;font-size:.875rem;font-weight:500;text-decoration:none;transition:background-color .15s,-webkit-text-decoration .15s,text-decoration .15s}.config-dialog-view-select-link:hover{background-color:color-mix(in srgb, var(--ui-accent-interactive) 6%, transparent);text-decoration:underline}.config-dialog-view-select-link:focus-visible{outline:2px solid var(--ui-accent-interactive);outline-offset:2px}.config-dialog-matching-section{padding:.75rem 1rem}.config-dialog-top-row{grid-template-columns:1fr 2fr 1fr;align-items:start;gap:1rem;display:grid}@media (width<=700px){.config-dialog-top-row{grid-template-columns:1fr}}.config-dialog-radio-warning{width:100%;margin-left:0}.config-dialog-tree-section{flex-direction:column;flex:1;gap:.5rem;min-height:0;display:flex}.config-dialog-tree-section>.config-dialog-tree-header{border-bottom:none;padding-bottom:0}.config-dialog-tree-search{border:1px solid var(--ui-border);background:var(--ui-surface);color:var(--ui-text);border-radius:4px;flex-shrink:0;padding:.4rem .75rem;font-size:.875rem;transition:border-color .15s}.config-dialog-tree-search:focus{border-color:var(--ui-accent-interactive);box-shadow:var(--ui-focus-ring);outline:none}.config-dialog-tree-search::placeholder{color:var(--ui-gray-400)}.config-dialog-tree{flex:1;min-height:150px;overflow-y:auto}.config-dialog-matching-section,.config-dialog-radio-group{flex-shrink:0}.config-dialog-radio-option--manual{align-items:center;min-height:2.75rem}.config-dialog-radio-manual-label{align-self:stretch;align-items:center;display:flex}.config-dialog-footer-warning{color:var(--ui-warning-text);align-items:center;margin-right:auto;font-size:.8125rem;font-weight:500;display:flex}.config-dialog-top-row--two,.config-dialog-top-row--2{grid-template-columns:1fr 1fr}.config-dialog-top-row--3{grid-template-columns:1fr 1fr 1fr}.config-dialog-top-row--1{grid-template-columns:1fr}.config-dialog-pickers{flex:1;grid-template-columns:1fr 1fr;gap:1rem;min-height:18rem;display:grid}.config-dialog-banks-section,.config-dialog-pickers-outcomes{flex-direction:column;min-height:0;display:flex}.config-dialog-pickers-outcomes>.config-dialog-section,.config-dialog-banks-section .bank-multi-select{flex:1;min-height:0}@media (width<=900px){.config-dialog-pickers,.config-dialog-top-row--two,.config-dialog-top-row--2,.config-dialog-top-row--3{grid-template-columns:1fr}}.config-dialog-tree-heading{white-space:nowrap;flex-wrap:nowrap;align-items:baseline;display:inline-flex}.config-dialog-pickers .config-dialog-tree-header{border-bottom:none;flex-wrap:wrap;gap:.25rem .75rem;min-height:1.75rem;margin-bottom:0;padding-bottom:0}.config-dialog-pickers .config-dialog-section{gap:.5rem}.config-dialog-outcomes-panel{border:1px solid var(--ui-border);background:var(--ui-surface);border-radius:6px;flex-direction:column;flex:1;min-height:0;padding:.5rem;display:flex}.ca-list-title-link{color:var(--ui-accent-interactive);font-weight:500;text-decoration:none}.ca-list-title-link:hover{text-decoration:underline}.ca-list-subtext{color:var(--ui-gray-500);font-size:.8125rem;display:block}.ca-list-date-cell{white-space:nowrap}.ca-list-row-actions{flex-wrap:wrap;justify-content:flex-end;gap:.5rem;display:inline-flex}.ui-table .ca-list-sticky-col{z-index:1;background:var(--ui-surface);text-align:left;font-weight:500;position:sticky;left:0}.ui-table thead .ca-list-sticky-col{background:var(--ui-gray-50);font-weight:600}.ca-grades-grid{padding:0}.ca-grades-panel-title{color:var(--ui-text);margin:0 0 1rem;font-size:1.125rem;font-weight:600}.ca-grades-export{padding:0}.ca-grades-export__hint{margin:0 0 var(--ui-space-4);color:var(--ui-slate-500)}.ca-grades-grid__hint{color:var(--ui-gray-500);margin:0 0 1rem;font-size:.875rem}.ca-grades-grid__col{min-width:140px}.ui-table-wrapper:has(>.ca-grades-table){width:fit-content;max-width:100%}.ca-grades-table{--ca-grade-student-col:14rem;--ca-grade-col:10.5rem;table-layout:fixed}.ca-grades-table .ca-list-sticky-col{width:var(--ca-grade-student-col);overflow-wrap:anywhere}.ca-grades-table th.ca-grades-grid__col{white-space:normal;overflow-wrap:anywhere;vertical-align:bottom;min-width:0;line-height:1.3}.ui-table th.ca-grades-grid__col,.ca-grades-grid__cell{text-align:center}.ca-grade-empty{color:var(--ui-slate-400)}.ca-grade-pct{font-variant-numeric:tabular-nums;font-weight:600}.ca-grade-pct--high{color:var(--ui-success-solid)}.ca-grade-pct--mid{color:var(--ui-warning-solid-hover)}.ca-grade-pct--low{color:var(--ui-danger)}.ca-grade-cell-btn.ui-btn{justify-content:center;width:100%}.ca-grade-cell{flex-direction:column;align-items:center;gap:.25rem;display:inline-flex}.ca-grade-score{font-variant-numeric:tabular-nums;color:var(--ui-text);font-weight:500}.ca-grade-score.gradebook-cell-score--draft{color:var(--ui-slate-500);font-style:italic;font-weight:400}.rubric-editor-field{margin-bottom:1rem}.rubric-editor-field--small{max-width:140px}.rubric-editor-field--full{grid-column:1/-1}.rubric-editor-label{color:var(--ui-slate-800);margin-bottom:.25rem;font-size:.8125rem;font-weight:500;display:block}.rubric-editor-required{color:var(--ui-danger-accent)}.rubric-editor-optional{color:var(--ui-slate-400);font-weight:400}.rubric-editor-input{border:1px solid var(--ui-slate-200);width:100%;color:var(--ui-slate-800);background:var(--ui-surface);border-radius:6px;padding:.5rem .75rem;font-size:.875rem;transition:border-color .15s,box-shadow .15s}.rubric-editor-input:focus{border-color:var(--ui-primary-500);box-shadow:var(--ui-focus-ring);outline:none}.rubric-editor-input--error{border-color:var(--ui-danger-accent)}.rubric-editor-input--error:focus{box-shadow:0 0 0 3px var(--ui-danger-bg-strong)}.rubric-editor-textarea{border:1px solid var(--ui-slate-200);width:100%;color:var(--ui-slate-800);background:var(--ui-surface);resize:vertical;border-radius:6px;padding:.5rem .75rem;font-family:inherit;font-size:.875rem;transition:border-color .15s,box-shadow .15s}.rubric-editor-textarea:focus{border-color:var(--ui-primary-500);box-shadow:var(--ui-focus-ring);outline:none}.rubric-editor-hint{color:var(--ui-slate-400);text-align:right;margin-top:.25rem;font-size:.75rem;display:block}.rubric-editor-field-error{color:var(--ui-danger-accent);margin-top:.25rem;font-size:.75rem;display:block}.rubric-editor-error{color:var(--ui-danger-accent);background:var(--ui-danger-bg);border:1px solid var(--ui-danger-border);border-radius:6px;margin-bottom:1rem;padding:.5rem .75rem;font-size:.8125rem}.rubric-editor-error--general{margin-bottom:1rem}.rubric-editor-total{color:var(--ui-slate-600);background:var(--ui-slate-50);border-radius:6px;margin-bottom:1rem;padding:.5rem .75rem;font-size:.875rem}.rubric-editor-criteria-list{flex-direction:column;gap:1rem;display:flex}.rubric-editor-criterion{border:1px solid var(--ui-slate-200);background:var(--ui-slate-50);border-radius:8px;padding:1rem}.rubric-editor-criterion-header{justify-content:space-between;align-items:center;margin-bottom:.75rem;display:flex}.rubric-editor-criterion-number{color:var(--ui-slate-600);font-size:.8125rem;font-weight:600}.rubric-editor-criterion-fields{grid-template-columns:1fr auto;gap:.75rem;display:grid}.rubric-editor-add-btn{width:100%;margin-top:1rem}.ui-modal:has(>.populate-syllabus-modal__content){width:calc(100vw - 100px);max-width:none;height:calc(100vh - 100px);max-height:none;overflow:hidden}.ui-modal>.populate-syllabus-modal__content{flex:1;min-height:0;padding:0}@media (width<=640px){.ui-modal:has(>.populate-syllabus-modal__content){width:100%;height:100%}}.ui-modal:has(>.editor-dialog-frame){gap:.75rem;width:min(1340px,100vw - 2rem);max-width:none;max-height:calc(100vh - 4rem);padding:.75rem 1rem 1rem;position:relative;overflow:hidden}.ui-modal:has(>.editor-dialog-frame)>.ui-modal-header{padding-right:5rem}.ui-modal:has(>.editor-dialog-frame) .ui-modal-title{min-width:0}.editor-dialog-frame{flex-direction:column;flex:1;min-height:0;display:flex}.editor-dialog-frame>.editor-dialog__controls{position:absolute;top:.75rem;right:1rem}.editor-dialog-frame>.editor-dialog__body{padding:0}.editor-dialog__body>.ui-alert{flex-shrink:0}.ui-modal:has(>.editor-dialog-frame .pool-exam-editor){width:100%;height:100%;max-height:none}.ui-modal-overlay:has(>.ui-modal>.editor-dialog--fullscreen){padding:0}.ui-modal:has(>.editor-dialog--fullscreen){border-radius:0;width:100%;height:100%;max-height:none}.editor-dialog__rename{border-radius:var(--ui-radius-sm);max-width:100%;font:inherit;color:var(--ui-text);text-overflow:ellipsis;white-space:nowrap;cursor:pointer;background:0 0;border:1px solid #0000;align-items:center;gap:.375rem;padding:.125rem .375rem;font-size:.9375rem;font-weight:600;transition:border-color .15s,background-color .15s;display:inline-flex;overflow:hidden}.editor-dialog__rename:hover{border-color:var(--ui-border);background-color:var(--ui-surface-hover)}.editor-dialog__rename:focus-visible{outline:2px solid var(--ui-focus);outline-offset:2px}.editor-dialog__rename:hover .editor-dialog__title-edit-icon,.editor-dialog__rename:focus-visible .editor-dialog__title-edit-icon{opacity:.6}.version-history-panel{background:var(--ui-surface);border:1px solid var(--ui-border);border-radius:var(--ui-radius-md);flex-direction:column;height:min(70vh,760px);min-height:420px;font-size:.875rem;display:flex;overflow:hidden}.vhp-body{flex:1;min-height:0;display:flex}.vhp-version-list-col{border-right:1px solid var(--ui-border);flex-direction:column;flex-shrink:0;width:260px;display:flex;overflow-y:auto}.vhp-version-list{margin:0;padding:0;list-style:none}.vhp-version-item{text-align:left;border:none;border-bottom:1px solid var(--ui-border);cursor:pointer;width:100%;color:var(--ui-text);font:inherit;background:0 0;border-left:3px solid #0000;flex-direction:column;gap:.125rem;padding:.625rem 1rem;display:flex}.vhp-version-item:hover{background:var(--ui-surface-hover)}.vhp-version-item:focus-visible{outline:2px solid var(--ui-focus);outline-offset:-2px}.vhp-version-item--selected{background:var(--ui-primary-50);border-left-color:var(--ui-primary)}.vhp-version-label{font-weight:600}.vhp-version-meta{color:var(--ui-text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:.8125rem;overflow:hidden}.vhp-preview-col{flex-direction:column;flex:1;min-width:0;display:flex;overflow:hidden}.vhp-preview-header{border-bottom:1px solid var(--ui-border);flex-shrink:0;justify-content:space-between;align-items:center;gap:.75rem;padding:.625rem 1rem;display:flex}.vhp-preview-label{font-weight:600}.vhp-preview-alerts{padding:.75rem 1rem 0}.vhp-preview-content{background:var(--ui-gray-50);flex:1;padding:1rem;overflow-y:auto}.vhp-preview-json{white-space:pre-wrap;word-break:break-all;margin:0;font-family:ui-monospace,monospace;font-size:.8125rem}.vhp-state{text-align:center;color:var(--ui-text-muted);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:.5rem;padding:2rem 1rem;display:flex}.vhp-state--error{justify-content:flex-start;align-items:stretch;padding:.75rem}.file-upload-panel{flex-direction:column;gap:1rem;max-width:600px;padding:1rem;display:flex}.file-upload-existing{background:var(--ui-gray-50);border:1px solid var(--ui-border-subtle);border-radius:8px;padding:.75rem 1rem}.file-upload-existing-label{color:var(--ui-text-subtle);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.25rem;font-size:.75rem}.file-upload-existing-name{color:var(--ui-gray-800);margin-bottom:.25rem;font-weight:600}.file-upload-existing-meta{color:var(--ui-text-subtle);font-size:.85rem}.file-upload-dropzone{border:2px dashed var(--ui-border);text-align:center;cursor:pointer;background:var(--ui-gray-50);border-radius:12px;padding:2.5rem 1.5rem;transition:border-color .2s,background-color .2s}.file-upload-dropzone:hover,.file-upload-dropzone:focus-visible{border-color:var(--ui-accent-interactive);background:var(--ui-primary-50);outline:none}.file-upload-dropzone--active{border-color:var(--ui-accent-interactive);background:var(--ui-primary-50);border-style:solid}.file-upload-dropzone-icon{margin-bottom:.75rem;font-size:2.5rem}.file-upload-dropzone-text{color:var(--ui-gray-800);margin-bottom:.5rem;font-size:1rem}.file-upload-dropzone-hint{color:var(--ui-text-subtle);font-size:.8rem}.file-upload-dropzone-hint-line{display:block}.file-upload-progress{background:var(--ui-gray-50);border:1px solid var(--ui-border-subtle);border-radius:8px;flex-direction:column;gap:.5rem;padding:1rem;display:flex}.file-upload-progress-filename{color:var(--ui-text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:.9rem;font-weight:500;overflow:hidden}.file-upload-progress-bar-container{background:var(--ui-gray-100);border-radius:4px;width:100%;height:8px;overflow:hidden}.file-upload-progress-bar{background:var(--ui-accent-interactive);border-radius:4px;height:100%;transition:width .3s}.file-upload-progress-text{color:var(--ui-text-muted);text-align:right;font-size:.85rem;font-weight:600}.file-upload-cancel-btn{align-self:flex-end}.file-upload-errors{background:var(--ui-danger-bg);border:1px solid var(--ui-danger-border);border-radius:8px;flex-direction:column;gap:.5rem;padding:1rem;display:flex}.file-upload-error{color:var(--ui-danger-text);align-items:flex-start;gap:.5rem;font-size:.9rem;display:flex}.file-upload-error-icon{flex-shrink:0}.file-upload-error-message{line-height:1.4}.file-upload-retry-btn{align-self:flex-start;margin-top:.5rem}.file-upload-success{background:var(--ui-success-bg-strong);border:1px solid var(--ui-success-border);color:var(--ui-success-text);border-radius:8px;align-items:center;gap:.5rem;padding:1rem;font-weight:500;display:flex}.course-detail{max-width:900px;margin:0 auto;padding:2rem 1rem}.confirmation-banner{color:#155724;background-color:#d4edda;border:1px solid #c3e6cb;border-radius:6px;margin-bottom:1.5rem;padding:.75rem 1rem;font-size:.9rem}.course-detail-header{border-bottom:1px solid #e2e8f0;margin-bottom:2rem;padding-bottom:1.5rem}.course-detail-title{color:#1a202c;margin:0 0 .75rem;font-size:1.75rem;font-weight:600}.course-detail-description{color:#4a5568;margin:0 0 1rem;line-height:1.6}.course-detail-dates{color:#718096;align-items:center;gap:.5rem;font-size:.9rem;display:flex}.date-separator{color:#a0aec0}.auth-error{text-align:center;background-color:#fff5f5;border:1px solid #fed7d7;border-radius:8px;padding:3rem 1rem}.auth-error h2{color:#c53030;margin:0 0 .75rem;font-size:1.25rem}.auth-error p{color:#742a2a;margin:0}.course-error{text-align:center;background-color:#fffbeb;border:1px solid #fef3c7;border-radius:8px;padding:2rem 1rem}.course-error p{color:#92400e;margin:0}.course-toc{margin-top:1.5rem}.toc-heading{color:#2d3748;margin:0 0 1rem;font-size:1.25rem;font-weight:600}.toc-empty{color:#718096;padding:1rem 0;font-style:italic}.toc-root-list,.toc-children-list{margin:0;padding:0;list-style:none}.toc-children-list{border-left:2px solid #e2e8f0;margin-top:.25rem;padding-left:1.25rem}.toc-section{margin-bottom:.25rem}.toc-section-header{align-items:center;display:flex}.toc-section-toggle{cursor:pointer;color:#2d3748;text-align:left;background:0 0;border:none;border-radius:4px;align-items:center;gap:.5rem;width:100%;padding:.5rem .25rem;font-size:.95rem;transition:background-color .15s;display:flex}.toc-section-toggle:hover{background-color:#edf2f7}.toc-toggle-icon{text-align:center;flex-shrink:0;width:1rem;font-size:.7rem}.toc-section-title{color:#2d3748;font-weight:500}.toc-section-title-leaf{padding:.5rem .25rem;display:block}.toc-section-content{padding-left:.5rem}.toc-items-list{margin:.25rem 0;padding:0;list-style:none}.toc-item-entry{margin-bottom:.125rem}.content-item{margin-left:1.5rem}.content-item-link{cursor:pointer;color:#4a5568;text-align:left;background:0 0;border:1px solid #0000;border-radius:4px;align-items:center;gap:.5rem;width:100%;padding:.4rem .5rem;font-size:.9rem;transition:background-color .15s,border-color .15s;display:flex}.content-item-link:hover{background-color:#edf2f7;border-color:#e2e8f0}.content-item-icon{flex-shrink:0}.content-item-title{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.content-item-type-badge{color:#718096;background-color:#edf2f7;border-radius:9999px;flex-shrink:0;padding:.125rem .5rem;font-size:.75rem}.content-item-external-icon{color:#a0aec0;flex-shrink:0;font-size:.8rem}.content-item-toggle-icon{color:#a0aec0;flex-shrink:0;font-size:.7rem}.content-item-video-container{aspect-ratio:16/9;background-color:#000;border-radius:8px;max-width:640px;margin-top:.5rem;margin-left:1.5rem;overflow:hidden}.content-item-video{border:none;width:100%;height:100%}.content-item-editor-container{max-width:900px;margin-top:.75rem;margin-left:1.5rem}.course-admin-content-section .content-item-editor-container{max-width:100%;margin-left:0}.content-item-error{color:#c53030;background-color:#fff5f5;border:1px solid #fed7d7;border-radius:4px;margin-top:.25rem;margin-left:1.5rem;padding:.5rem .75rem;font-size:.85rem}.invite-user-section{border-top:1px solid #e2e8f0;margin-top:2rem;padding-top:1.5rem}.invite-user-heading{color:#2d3748;margin:0 0 1rem;font-size:1.1rem;font-weight:600}.invite-user-form{flex-wrap:wrap;align-items:flex-end;gap:.75rem;display:flex}.invite-form-row{flex-direction:column;gap:.25rem;display:flex}.invite-form-row:first-child{flex:1;min-width:200px}.invite-label{color:#4a5568;font-size:.8rem;font-weight:500}.invite-input,.invite-select{color:#2d3748;background:#fff;border:1px solid #e2e8f0;border-radius:6px;padding:.5rem .75rem;font-size:.9rem;transition:border-color .15s}.invite-input:focus,.invite-select:focus{border-color:#4a90d9;outline:none;box-shadow:0 0 0 2px #4a90d926}.invite-input:disabled,.invite-select:disabled{cursor:not-allowed;background-color:#f7fafc}.invite-submit-btn{color:#fff;cursor:pointer;white-space:nowrap;background-color:#4a90d9;border:none;border-radius:6px;padding:.5rem 1rem;font-size:.9rem;font-weight:500;transition:background-color .15s}.invite-submit-btn:hover:not(:disabled){background-color:#357abd}.invite-submit-btn:disabled{opacity:.6;cursor:not-allowed}.invite-success{color:#155724;background-color:#d4edda;border:1px solid #c3e6cb;border-radius:6px;margin-top:.75rem;padding:.5rem .75rem;font-size:.85rem}.invite-error{color:#c53030;background-color:#fff5f5;border:1px solid #fed7d7;border-radius:6px;margin-top:.75rem;padding:.5rem .75rem;font-size:.85rem}.course-tabs{margin-top:1.5rem}.course-tabs-nav{border-bottom:2px solid #e2e8f0;gap:0;margin-bottom:1.5rem;display:flex}.course-tab{color:#718096;cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-2px;padding:.75rem 1.5rem;font-size:.9375rem;font-weight:500;transition:color .15s,border-color .15s}.course-tab-panels{min-height:200px}.content-tab-actions{margin-bottom:1rem}.add-section-form{align-items:center;gap:.5rem;display:flex}.add-section-input{border:1px solid #e2e8f0;border-radius:6px;flex:1;padding:.5rem .75rem;font-size:.9rem}.add-section-input:focus{border-color:#3b82f6;outline:none;box-shadow:0 0 0 2px #3b82f61a}.users-tab{flex-direction:column;gap:2rem;display:flex}.users-section-heading{color:#2d3748;margin:0 0 .75rem;font-size:1rem;font-weight:600}.enrolled-users-table{border-collapse:collapse;width:100%;font-size:.9rem}.enrolled-users-table th{text-align:left;color:#4a5568;text-transform:uppercase;letter-spacing:.025em;border-bottom:2px solid #e2e8f0;padding:.625rem .75rem;font-size:.8125rem;font-weight:500}.enrolled-users-table td{color:#2d3748;border-bottom:1px solid #f1f5f9;padding:.625rem .75rem}.enrolled-user-row:hover{background-color:#f8fafc}.user-email-cell{font-weight:500}.user-name-cell{color:#64748b}.role-badge{border-radius:9999px;padding:.125rem .5rem;font-size:.75rem;font-weight:500;display:inline-block}.role-instructor{color:#1e40af;background-color:#dbeafe}.role-ta{color:#92400e;background-color:#fef3c7}.role-student{color:#065f46;background-color:#d1fae5}.btn-danger{color:#dc2626;background-color:#fee2e2;border:1px solid #fecaca}.btn-danger:hover{background-color:#fecaca}.enrollment-requests-section{background-color:#fffbeb;border:1px solid #fef3c7;border-radius:8px;padding:1rem}.enrollment-requests-list{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.enrollment-request-item{background-color:#fff;border:1px solid #e5e7eb;border-radius:6px;justify-content:space-between;align-items:center;padding:.5rem .75rem;display:flex}.request-user-info{flex-direction:column;display:flex}.request-user-email{color:#1f2937;font-size:.9rem;font-weight:500}.request-user-name{color:#6b7280;font-size:.8rem}.request-actions{gap:.5rem;display:flex}.invite-section{border-top:1px solid #e2e8f0;padding-top:1rem}.invite-form-fields{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.invite-email-input{border:1px solid #e2e8f0;border-radius:6px;flex:1;min-width:200px;padding:.5rem .75rem;font-size:.9rem}.invite-email-input:focus{border-color:#3b82f6;outline:none;box-shadow:0 0 0 2px #3b82f61a}.invite-role-select{background:#fff;border:1px solid #e2e8f0;border-radius:6px;padding:.5rem .75rem;font-size:.9rem}.invite-role-select:focus{border-color:#3b82f6;outline:none}.invite-message{border-radius:6px;margin-top:.75rem;padding:.5rem .75rem;font-size:.85rem}.toc-section-header{justify-content:space-between;align-items:center;display:flex}.toc-section-actions{opacity:0;gap:.25rem;transition:opacity .15s;display:flex}.toc-section:hover>.toc-section-header>.toc-section-actions{opacity:1}.toc-action-btn{cursor:pointer;color:#6b7280;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;width:34px;height:34px;font-size:1rem;transition:background-color .15s,color .15s;display:flex}.toc-action-btn:hover{color:#111827;background-color:#edf2f7}.toc-action-btn-danger:hover{color:#dc2626;background-color:#fee2e2}.toc-action-btn--add-subsection{color:#2563eb}.toc-action-btn--add-subsection:hover{color:#1d4ed8;background-color:#eff6ff}.toc-action-btn--add-item{color:#059669}.toc-action-btn--add-item:hover{color:#047857;background-color:#ecfdf5}.toc-inline-form{background-color:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;flex-direction:column;gap:.5rem;margin:.5rem 0 .5rem 1.5rem;padding:.75rem;display:flex}.toc-inline-form:not(.toc-item-form){flex-direction:row;align-items:center}.toc-inline-input{border:1px solid #e2e8f0;border-radius:4px;flex:1;padding:.4rem .6rem;font-size:.85rem}.toc-inline-input:focus{border-color:#3b82f6;outline:none;box-shadow:0 0 0 2px #3b82f61a}.toc-inline-select{background:#fff;border:1px solid #e2e8f0;border-radius:4px;padding:.4rem .6rem;font-size:.85rem}.toc-inline-select--full{color:#2d3748;cursor:pointer;border-color:#cbd5e0;width:100%;padding:.5rem .75rem;font-size:.9rem;font-weight:500}.toc-item-form-row{gap:.5rem;display:flex}.toc-item-form-row .toc-inline-input{flex:1}.toc-item-form-actions{gap:.5rem;display:flex}.collaboration-spaces,.collaboration-editor,.peer-review-page,.peer-review-detail{max-width:900px;margin:0 auto;padding:1.5rem}.spaces-header{justify-content:space-between;align-items:center;margin-bottom:1.5rem;display:flex}.spaces-heading{color:#1a1a2e;margin:0;font-size:1.5rem;font-weight:600}.spaces-error{color:#dc2626;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;margin-bottom:1rem;padding:.75rem 1rem}.spaces-empty{text-align:center;color:#6b7280;padding:3rem 1rem;font-size:.95rem}.create-space-form{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;margin-bottom:1.5rem;padding:1rem}.create-space-input{border:1px solid #d1d5db;border-radius:6px;width:100%;margin-bottom:.75rem;padding:.5rem .75rem;font-size:.9rem}.create-space-input:focus{border-color:#3b82f6;outline:none;box-shadow:0 0 0 2px #3b82f633}.create-space-actions{gap:.5rem;display:flex}.spaces-list{flex-direction:column;gap:.75rem;margin:0;padding:0;list-style:none;display:flex}.space-card{border:1px solid #e5e7eb;border-radius:8px;transition:border-color .15s,box-shadow .15s}.space-card:hover{border-color:#3b82f6;box-shadow:0 2px 8px #3b82f61a}.space-card-button{cursor:pointer;text-align:left;width:100%;color:inherit;background:0 0;border:none;justify-content:space-between;align-items:center;padding:1rem 1.25rem;text-decoration:none;display:flex}.space-card-content{flex:1}.space-card-title{color:#1a1a2e;margin:0 0 .25rem;font-size:1rem;font-weight:500}.space-card-date{color:#6b7280;font-size:.8rem}.space-card-arrow{color:#9ca3af;font-size:1.2rem}.editor-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:1rem;display:flex}.editor-header-left{align-items:center;gap:.75rem;display:flex}.editor-header-right{align-items:center;gap:1rem;display:flex}.editor-back-link{color:#3b82f6;font-size:.9rem;font-weight:500;text-decoration:none}.editor-back-link:hover{text-decoration:underline}.editor-title{color:#1a1a2e;margin:0;font-size:1.25rem;font-weight:600}.connection-status{border-radius:12px;align-items:center;gap:.4rem;padding:.25rem .5rem;font-size:.8rem;display:flex}.connection-connected{color:#059669;background:#ecfdf5}.connection-disconnected{color:#dc2626;background:#fef2f2}.connection-dot{background:currentColor;border-radius:50%;width:8px;height:8px}.connection-label{font-weight:500}.presence-indicators{align-items:center;gap:.5rem;display:flex}.presence-avatars{align-items:center;display:flex}.presence-avatar{color:#fff;background:#3b82f6;border:2px solid #fff;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;margin-left:-6px;font-size:.7rem;font-weight:600;display:flex}.presence-avatar:first-child{margin-left:0}.presence-overflow{background:#6b7280;font-size:.65rem}.presence-count{color:#6b7280;font-size:.8rem}.ws-error-banner{color:#92400e;background:#fef3c7;border:1px solid #fcd34d;border-radius:8px;justify-content:space-between;align-items:center;margin-bottom:1rem;padding:.5rem 1rem;font-size:.85rem;display:flex}.editor-workspace{border:1px solid #e5e7eb;border-radius:8px;overflow:hidden}.editor-textarea{resize:vertical;color:#1a1a2e;background:#fafafa;border:none;width:100%;min-height:400px;padding:1.25rem;font-family:SF Mono,Fira Code,Fira Mono,monospace;font-size:.9rem;line-height:1.6}.editor-textarea:focus{background:#fff;outline:none}.editor-textarea::placeholder{color:#9ca3af}.peer-review-meta{align-items:center;gap:.75rem;margin-top:.25rem;display:flex}.peer-review-status{border-radius:10px;padding:.15rem .5rem;font-size:.75rem;font-weight:500}.status-open{color:#059669;background:#ecfdf5}.status-closed{color:#6b7280;background:#f3f4f6}.peer-review-deadline{color:#6b7280;font-size:.8rem}.peer-review-tabs{border-bottom:1px solid #e5e7eb;gap:0;margin-bottom:1.5rem;display:flex}.peer-review-instructions{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;margin-bottom:1.5rem;padding:1rem 1.25rem}.peer-review-instructions h3{color:#374151;margin:0 0 .5rem;font-size:.9rem;font-weight:600}.peer-review-instructions p{color:#4b5563;margin:0;font-size:.9rem;line-height:1.5}.create-peer-review-form{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;margin-bottom:1.5rem;padding:1.25rem}.form-field{margin-bottom:1rem}.form-label{color:#374151;margin-bottom:.35rem;font-size:.85rem;font-weight:500;display:block}.form-input{border:1px solid #d1d5db;border-radius:6px;width:100%;padding:.5rem .75rem;font-size:.9rem}.form-input:focus{border-color:#3b82f6;outline:none;box-shadow:0 0 0 2px #3b82f633}.form-textarea{resize:vertical;border:1px solid #d1d5db;border-radius:6px;width:100%;padding:.5rem .75rem;font-family:inherit;font-size:.9rem}.form-textarea:focus{border-color:#3b82f6;outline:none;box-shadow:0 0 0 2px #3b82f633}.form-row{gap:1rem;display:flex}.form-row .form-field{flex:1}.form-actions{gap:.5rem;margin-top:.5rem;display:flex}.assignments-list{flex-direction:column;gap:1rem;display:flex}.assignments-empty{text-align:center;color:#6b7280;padding:2rem 1rem}.assignment-card{border:1px solid #e5e7eb;border-radius:8px;padding:1.25rem}.assignment-completed{background:#f9fafb}.assignment-submission{border-bottom:1px solid #e5e7eb;margin-bottom:1rem;padding-bottom:1rem}.assignment-submission h4{color:#374151;margin:0 0 .5rem;font-size:.85rem;font-weight:600}.submission-content{color:#1f2937;white-space:pre-wrap;background:#fff;border:1px solid #e5e7eb;border-radius:6px;max-height:200px;padding:.75rem 1rem;font-size:.9rem;line-height:1.5;overflow-y:auto}.assignment-completed-info{align-items:center;gap:1rem;display:flex}.completed-badge{color:#059669;background:#ecfdf5;border-radius:12px;padding:.25rem .75rem;font-size:.85rem;font-weight:500}.completed-details{color:#6b7280;font-size:.85rem}.rating-input{align-items:center;gap:.25rem;display:flex}.rating-star{cursor:pointer;color:#d1d5db;background:0 0;border:none;padding:0;font-size:1.5rem;line-height:1;transition:color .1s}.rating-star-active,.rating-star:hover{color:#f59e0b}.rating-value{color:#6b7280;margin-left:.5rem;font-size:.85rem}.char-count{text-align:right;color:#9ca3af;margin-top:.25rem;font-size:.75rem;display:block}.field-error{color:#dc2626;margin-top:.25rem;font-size:.8rem;display:block}.submit-error{color:#dc2626;background:#fef2f2;border:1px solid #fecaca;border-radius:6px;margin-bottom:.75rem;padding:.5rem .75rem;font-size:.85rem}.review-form{margin-top:.5rem}.results-empty{text-align:center;color:#6b7280;padding:2rem 1rem}.peer-review-results{padding:.5rem 0}.results-summary{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;align-items:center;gap:1.5rem;margin-bottom:1.5rem;padding:1.25rem;display:flex}.results-average{flex-direction:column;align-items:center;display:flex}.results-average-label{color:#6b7280;text-transform:uppercase;letter-spacing:.05em;font-size:.75rem}.results-average-value{color:#1a1a2e;font-size:2rem;font-weight:700;line-height:1.2}.results-average-stars{color:#f59e0b;font-size:1rem}.results-count{color:#6b7280;font-size:.85rem}.results-feedback-list h4{color:#1a1a2e;margin:0 0 1rem;font-size:1rem;font-weight:600}.results-feedback-item{border:1px solid #e5e7eb;border-radius:8px;margin-bottom:.75rem;padding:1rem}.feedback-rating{color:#f59e0b;margin-bottom:.5rem;font-size:.9rem}.feedback-rating-value{color:#6b7280;margin-left:.5rem;font-size:.8rem}.feedback-text{color:#374151;margin:0;font-size:.9rem;line-height:1.5}.btn{cursor:pointer;border:none;border-radius:6px;justify-content:center;align-items:center;padding:.5rem 1rem;font-size:.9rem;font-weight:500;transition:background .15s,opacity .15s;display:inline-flex}.btn-primary{color:#fff;background:#2563eb}.btn-primary:hover:not(:disabled){background:#1d4ed8}.btn-secondary{color:#374151;background:#f3f4f6;border:1px solid #d1d5db}.btn-secondary:hover:not(:disabled){background:#e5e7eb}.course-tab{color:#6b7280;cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;padding:.6rem 1.25rem;font-size:.9rem;font-weight:500;transition:color .15s,border-color .15s}.course-tab:hover{color:#1a1a2e}.course-tab-active{color:#3b82f6;border-bottom-color:#3b82f6}.forum-page,.forum-thread-page{flex-direction:column;gap:1.5rem;max-width:900px;display:flex}.forum-header{flex-direction:column;gap:1rem;display:flex}.forum-header-top{justify-content:space-between;align-items:center;display:flex}.forum-title{color:#1f2937;font-size:1.5rem;font-weight:600}.forum-search{align-items:center;gap:.5rem;display:flex}.forum-search-input{color:#1f2937;background-color:#fff;border:1px solid #d1d5db;border-radius:8px;flex:1;padding:.5rem .75rem;font-size:.9375rem;transition:border-color .15s,box-shadow .15s}.forum-search-input::placeholder{color:#9ca3af}.forum-search-input:focus{border-color:#3b82f6;outline:none;box-shadow:0 0 0 3px #3b82f61a}.forum-search-message{color:#6b7280;margin:0;font-size:.875rem}.forum-actions{flex-direction:column;display:flex}.forum-create-form{background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;flex-direction:column;gap:1rem;padding:1.5rem;display:flex}.forum-create-heading{color:#1f2937;margin:0;font-size:1.125rem;font-weight:600}.forum-form-field{flex-direction:column;gap:.375rem;display:flex}.forum-form-label{color:#374151;font-size:.8125rem;font-weight:500}.forum-form-input,.forum-form-select{color:#1f2937;background-color:#fff;border:1px solid #d1d5db;border-radius:6px;padding:.5rem .75rem;font-size:.9375rem;transition:border-color .15s,box-shadow .15s}.forum-form-input:focus,.forum-form-select:focus,.forum-form-textarea:focus{border-color:#3b82f6;outline:none;box-shadow:0 0 0 3px #3b82f61a}.forum-form-textarea{color:#1f2937;resize:vertical;background-color:#fff;border:1px solid #d1d5db;border-radius:6px;padding:.5rem .75rem;font-family:inherit;font-size:.9375rem;transition:border-color .15s,box-shadow .15s}.forum-reply-textarea{font-size:.875rem}.forum-form-error{color:#dc2626;background-color:#fef2f2;border-radius:4px;padding:.5rem;font-size:.8125rem}.forum-form-actions{gap:.5rem;display:flex}.forum-thread-list{flex-direction:column;display:flex}.forum-threads{flex-direction:column;gap:.75rem;margin:0;padding:0;list-style:none;display:flex}.forum-thread-item{background-color:#fff;border:1px solid #e5e7eb;border-radius:8px;justify-content:space-between;align-items:flex-start;padding:1rem 1.25rem;transition:border-color .15s;display:flex}.forum-thread-item:hover{border-color:#3b82f6}.forum-thread-pinned{background-color:#fffbeb;border-left:3px solid #f59e0b}.forum-thread-content{flex-direction:column;flex:1;gap:.375rem;min-width:0;display:flex}.forum-thread-meta{align-items:center;gap:.5rem;display:flex}.forum-pin-badge{color:#d97706;background-color:#fef3c7;border-radius:4px;padding:.125rem .5rem;font-size:.75rem;font-weight:600}.forum-answered-badge{color:#059669;background-color:#d1fae5;border-radius:4px;padding:.125rem .5rem;font-size:.75rem;font-weight:600}.forum-thread-link{color:inherit;text-decoration:none}.forum-thread-link:hover .forum-thread-title{color:#3b82f6}.forum-thread-title{color:#1f2937;margin:0;font-size:1rem;font-weight:600;transition:color .15s}.forum-thread-preview{color:#6b7280;margin:0;font-size:.875rem;line-height:1.4}.forum-thread-info{color:#9ca3af;gap:1rem;font-size:.75rem;display:flex}.forum-thread-author{color:#6b7280;font-weight:500}.forum-thread-tags{flex-wrap:wrap;gap:.375rem;margin-top:.25rem;display:flex}.forum-tag{color:#3b82f6;background-color:#eff6ff;border:1px solid #bfdbfe;border-radius:12px;padding:.125rem .5rem;font-size:.6875rem}.forum-thread-actions{flex-shrink:0;gap:.375rem;margin-left:1rem;display:flex}.forum-empty{text-align:center;color:#6b7280;padding:2rem;font-size:.9375rem}.forum-pagination{justify-content:center;align-items:center;gap:1rem;padding-top:1rem;display:flex}.forum-pagination-info{color:#6b7280;font-size:.875rem}.forum-breadcrumb{margin-bottom:.5rem}.forum-breadcrumb-link{color:#3b82f6;font-size:.875rem;text-decoration:none}.forum-breadcrumb-link:hover{text-decoration:underline}.forum-thread-detail{background-color:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:1.5rem}.forum-thread-detail-header{flex-direction:column;gap:.5rem;margin-bottom:1rem;display:flex}.forum-thread-detail-meta{gap:.5rem;display:flex}.forum-thread-detail-title{color:#1f2937;margin:0;font-size:1.375rem;font-weight:600}.forum-thread-detail-info{color:#6b7280;gap:1rem;font-size:.8125rem;display:flex}.forum-thread-detail-body{color:#374151;border-top:1px solid #f3f4f6;padding:1rem 0;font-size:.9375rem;line-height:1.6}.forum-thread-detail-body p{white-space:pre-wrap;margin:0}.forum-thread-detail-actions{border-top:1px solid #f3f4f6;gap:.5rem;padding-top:1rem;display:flex}.forum-replies-section{flex-direction:column;gap:1rem;display:flex}.forum-replies-heading,.forum-reply-heading{color:#1f2937;margin:0;font-size:1.125rem;font-weight:600}.forum-no-replies{color:#6b7280;text-align:center;padding:1.5rem;font-size:.9375rem}.forum-replies-list{flex-direction:column;gap:.75rem;display:flex}.forum-reply{background-color:#fff;border:1px solid #e5e7eb;border-radius:6px;padding:1rem}.forum-reply-accepted{background-color:#ecfdf5;border-color:#10b981}.forum-reply-header{align-items:center;gap:.75rem;margin-bottom:.5rem;display:flex}.forum-reply-author{color:#374151;font-size:.8125rem;font-weight:600}.forum-reply-date{color:#9ca3af;font-size:.75rem}.forum-accepted-badge{color:#059669;background-color:#d1fae5;border-radius:4px;padding:.125rem .5rem;font-size:.6875rem;font-weight:700}.forum-reply-content{color:#374151;font-size:.9375rem;line-height:1.5}.forum-reply-content p{white-space:pre-wrap;margin:0}.forum-reply-actions{gap:.375rem;margin-top:.5rem;display:flex}.forum-reply-children{flex-direction:column;gap:.5rem;margin-top:.75rem;display:flex}.forum-reply-form,.forum-reply-form-main{flex-direction:column;gap:.75rem;margin-top:.75rem;display:flex}.forum-reply-form-main{background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:1.5rem}.forum-reply-section{flex-direction:column;gap:1rem;display:flex}.forum-error{color:#dc2626;background-color:#fef2f2;border:1px solid #fecaca;border-radius:8px;padding:1rem;font-size:.9375rem}.loading-container{justify-content:center;align-items:center;padding:3rem;display:flex}.btn{cursor:pointer;white-space:nowrap;border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;padding:.5rem 1rem;font-size:.875rem;font-weight:500;text-decoration:none;transition:background-color .15s,border-color .15s;display:inline-flex}.btn-primary:hover:not(:disabled){background-color:#1d4ed8}.btn-secondary:hover:not(:disabled){background-color:#f9fafb;border-color:#9ca3af}.btn-danger{color:#dc2626;background-color:#fff;border-color:#fecaca}.btn-danger:hover:not(:disabled){background-color:#fef2f2;border-color:#dc2626}.btn-sm{padding:.25rem .625rem;font-size:.8125rem}.sandbox-page{flex-direction:column;gap:1rem;display:flex}.sandbox-header{flex-direction:column;gap:.5rem;display:flex}.sandbox-header h1{color:#1f2937;font-size:1.5rem;font-weight:600}.sandbox-instructions{color:#4b5563;background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;padding:.75rem 1rem;font-size:.9375rem;line-height:1.6}.sandbox-message{border-radius:6px;padding:.625rem 1rem;font-size:.875rem}.sandbox-message--error{color:#991b1b;background-color:#fef2f2;border:1px solid #fecaca}.sandbox-message--success{color:#065f46;background-color:#ecfdf5;border:1px solid #a7f3d0}.sandbox-controls{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.sandbox-language-selector{align-items:center;gap:.5rem;display:flex}.sandbox-language-selector label{color:#374151;font-size:.875rem;font-weight:500}.sandbox-language-selector select{color:#1f2937;cursor:pointer;background-color:#fff;border:1px solid #d1d5db;border-radius:6px;padding:.375rem .75rem;font-size:.875rem}.sandbox-language-selector select:disabled{cursor:not-allowed;background-color:#f3f4f6}.sandbox-actions{gap:.5rem;display:flex}.sandbox-run-btn{padding:.5rem 1.25rem}.sandbox-save-btn{padding:.5rem 1rem}.sandbox-editor-container{border:1px solid #d1d5db;border-radius:8px;overflow:hidden}.sandbox-editor{color:#1f2937;resize:vertical;tab-size:4;white-space:pre;overflow-wrap:normal;background-color:#fafafa;border:none;outline:none;width:100%;min-height:300px;padding:1rem;font-family:Menlo,Monaco,Courier New,monospace;font-size:.875rem;line-height:1.6;overflow-x:auto}.sandbox-editor:focus{background-color:#fff}.sandbox-output{background-color:#fff;border:1px solid #e5e7eb;border-radius:8px;flex-direction:column;gap:.75rem;padding:1rem;display:flex}.sandbox-output-title{color:#1f2937;font-size:1rem;font-weight:600}.sandbox-resource-error{color:#991b1b;background-color:#fef2f2;border:1px solid #fecaca;border-radius:6px;align-items:center;gap:.5rem;padding:.625rem .875rem;font-size:.8125rem;display:flex}.sandbox-output-meta{align-items:center;gap:1rem;display:flex}.sandbox-execution-time{color:#6b7280;background-color:#f3f4f6;border-radius:4px;padding:.25rem .625rem;font-size:.8125rem;font-weight:500}.sandbox-output-section h3{color:#6b7280;text-transform:uppercase;letter-spacing:.025em;margin-bottom:.375rem;font-size:.8125rem;font-weight:600}.sandbox-output-content{white-space:pre-wrap;word-break:break-word;background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;margin:0;padding:.75rem;font-family:Menlo,Monaco,Courier New,monospace;font-size:.8125rem;line-height:1.5;overflow-x:auto}.sandbox-output-content--stderr{color:#991b1b;background-color:#fef2f2;border-color:#fecaca}.sandbox-empty-output{color:#9ca3af;font-style:italic}.sandbox-test-results h3{color:#1f2937;margin-bottom:.5rem;font-size:.9375rem;font-weight:600}.sandbox-test-list{flex-direction:column;gap:.5rem;display:flex}.sandbox-test-item{border:1px solid #e5e7eb;border-radius:6px;padding:.75rem}.sandbox-test-item--passed{background-color:#f0fdf4;border-color:#a7f3d0}.sandbox-test-item--failed{background-color:#fef2f2;border-color:#fecaca}.sandbox-test-header{align-items:center;gap:.5rem;margin-bottom:.5rem;display:flex}.sandbox-test-badge{text-transform:uppercase;letter-spacing:.05em;border-radius:4px;padding:.125rem .5rem;font-size:.6875rem;font-weight:700}.sandbox-test-badge--pass{color:#065f46;background-color:#d1fae5}.sandbox-test-badge--fail{color:#991b1b;background-color:#fecaca}.sandbox-test-label{color:#374151;font-size:.8125rem;font-weight:500}.sandbox-test-details{flex-direction:column;gap:.375rem;display:flex}.sandbox-test-field{align-items:flex-start;gap:.5rem;display:flex}.sandbox-test-field-label{color:#6b7280;flex-shrink:0;min-width:5rem;font-size:.75rem;font-weight:600}.sandbox-test-field-value{color:#1f2937;white-space:pre-wrap;word-break:break-word;background-color:#fff;border:1px solid #e5e7eb;border-radius:4px;flex:1;margin:0;padding:.25rem .5rem;font-family:Menlo,Monaco,Courier New,monospace;font-size:.75rem;line-height:1.4;overflow-x:auto}.learning-path-page{flex-direction:column;gap:1.5rem;display:flex}.learning-path-header{flex-direction:column;gap:.5rem;display:flex}.learning-path-header h1{color:#1f2937;font-size:1.5rem;font-weight:600}.back-link{color:#3b82f6;align-self:flex-start;font-size:.875rem;text-decoration:none}.back-link:hover{text-decoration:underline}.learning-path-message{border-radius:6px;padding:.75rem 1rem;font-size:.875rem}.learning-path-message--error{color:#991b1b;background-color:#fef2f2;border:1px solid #fecaca}.learning-path-unavailable{background-color:#fffbeb;border:1px solid #fde68a;border-radius:8px;align-items:flex-start;gap:.75rem;padding:1rem;display:flex}.unavailable-icon{color:#d97706;flex-shrink:0;margin-top:.125rem}.unavailable-title{color:#92400e;margin-bottom:.25rem;font-size:.875rem;font-weight:600}.unavailable-description{color:#78350f;font-size:.8125rem;line-height:1.5}.learning-path-empty{text-align:center;background-color:#fff;border:1px dashed #d1d5db;border-radius:8px;flex-direction:column;align-items:center;gap:1.25rem;padding:3rem 1.5rem;display:flex}.learning-path-empty .empty-state{color:#6b7280;max-width:400px;font-size:.9375rem;line-height:1.5}.generate-btn{padding:.625rem 1.5rem}.learning-path-controls{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.engagement-adjusted-badge{color:#d97706;background-color:#fffbeb;border:1px solid #fde68a;border-radius:20px;align-items:center;gap:.375rem;padding:.375rem .75rem;font-size:.8125rem;font-weight:500;display:inline-flex}.reevaluate-btn{margin-left:auto}.learning-path-items{flex-direction:column;display:flex}.learning-path-item{gap:1rem;display:flex;position:relative}.item-sequence{flex-direction:column;flex-shrink:0;align-items:center;width:2rem;display:flex}.item-number{color:#374151;background-color:#e5e7eb;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:2rem;height:2rem;font-size:.75rem;font-weight:600;display:flex}.learning-path-item--completed .item-number{color:#065f46;background-color:#d1fae5}.learning-path-item--skipped .item-number{color:#9ca3af;background-color:#f3f4f6}.item-connector{background-color:#e5e7eb;flex:1;width:2px;min-height:1rem}.learning-path-item--completed .item-connector{background-color:#a7f3d0}.item-content{background-color:#fff;border:1px solid #e5e7eb;border-radius:8px;flex:1;margin-bottom:.5rem;padding:1rem;transition:border-color .15s,box-shadow .15s}.item-content:hover{border-color:#d1d5db;box-shadow:0 1px 3px #0000000d}.learning-path-item--completed .item-content{background-color:#f0fdf4;border-color:#a7f3d0}.learning-path-item--skipped .item-content{opacity:.7;background-color:#f9fafb;border-color:#e5e7eb}.item-header{align-items:center;gap:.5rem;display:flex}.item-status{flex-shrink:0}.status-icon--completed{color:#059669}.status-icon--skipped{color:#9ca3af}.status-icon--pending{color:#d1d5db}.item-title{color:#1f2937;flex:1;font-size:.9375rem;font-weight:600;line-height:1.4}.learning-path-item--skipped .item-title{color:#6b7280;text-decoration:line-through}.item-time{color:#6b7280;white-space:nowrap;background-color:#f3f4f6;border-radius:4px;padding:.25rem .5rem;font-size:.75rem;font-weight:500}.item-rationale{color:#6b7280;margin-top:.5rem;font-size:.8125rem;line-height:1.5}.loading-container{justify-content:center;padding:3rem 0;display:flex}.loading-spinner{border:3px solid #e5e7eb;border-top-color:#3b82f6;border-radius:50%;width:2rem;height:2rem;animation:.8s linear infinite spin}.btn{cursor:pointer;border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;padding:.5rem 1rem;font-size:.875rem;font-weight:500;text-decoration:none;transition:background-color .15s,border-color .15s;display:inline-flex}.btn:hover{text-decoration:none}.btn-primary{color:#fff;background-color:#2563eb;border-color:#2563eb}.btn-primary:hover{background-color:#1d4ed8;border-color:#1d4ed8}.btn-secondary{color:#374151;background-color:#fff;border-color:#d1d5db}.btn-secondary:hover{background-color:#f9fafb;border-color:#9ca3af}.btn:disabled{opacity:.6;cursor:not-allowed}.pcp-root{max-width:1340px;margin:0 auto;padding:2rem 1.5rem}.pcp-layout{grid-template-columns:1fr 320px;align-items:start;gap:2.5rem;display:grid}@media (width<=900px){.pcp-layout{grid-template-columns:1fr}.pcp-sidebar{order:-1}}.pcp-container{padding:2rem 1.5rem}@media (width<=640px){.pcp-container{padding:1.25rem 1rem}}.pcp-cover{color:#fff;background:radial-gradient(circle at 85% 20%, color-mix(in srgb, var(--course-color) 35%, #fff 65%), transparent 55%), linear-gradient(135deg, var(--course-color), color-mix(in srgb, var(--course-color) 75%, #000));border-radius:16px;align-items:flex-end;min-height:clamp(200px,22vw,300px);margin-bottom:1.5rem;padding:1.75rem 2rem;display:flex;position:relative;overflow:hidden}.pcp-banner{object-fit:cover;border-radius:inherit;width:100%;height:100%;position:absolute;inset:0}.pcp-cover:before{content:"";z-index:1;pointer-events:none;background:linear-gradient(90deg,#0f172ac7 0%,#0f172a73 55%,#0f172a26 100%);position:absolute;inset:0}.pcp-cover-content{z-index:2;align-items:flex-end;gap:1.5rem;width:100%;display:flex;position:relative}.pcp-logo{object-fit:cover;background:#fff;border:3px solid #fff;border-radius:18px;flex-shrink:0;width:88px;height:88px;box-shadow:0 6px 16px #0f172a40}.pcp-logo-initials{color:var(--course-color);justify-content:center;align-items:center;font-size:1.75rem;font-weight:700;display:inline-flex}.pcp-cover-info{flex-direction:column;flex:1;gap:.375rem;min-width:0;display:flex}.pcp-cover-provider{color:#ffffffe6;align-self:flex-start;font-size:.875rem;font-weight:600;text-decoration:none}a.pcp-cover-provider:hover{color:#fff;text-decoration:underline}.pcp-cover .pcp-title{color:#fff;letter-spacing:-.01em;text-shadow:0 1px 2px #0f172a59;margin:0;font-size:clamp(1.5rem,2.6vw,2.25rem);line-height:1.15}.pcp-cover .pcp-cover-people{flex-shrink:0;margin-left:auto;transform:none}.pcp-cover .pcp-cover-people>*{box-shadow:0 0 0 3px #fff,0 6px 16px #0f172a40}.pcp-cover .pcp-cover-people>*+*{margin-left:-18px}@media (width<=600px){.pcp-cover{min-height:180px;padding:1.25rem 1rem}.pcp-cover-content{gap:.875rem}.pcp-logo{border-radius:14px;width:64px;height:64px}.pcp-logo-initials{font-size:1.25rem}.pcp-cover .pcp-cover-people>*{width:64px!important;height:64px!important;font-size:26px!important}.pcp-cover .pcp-cover-people>*+*{margin-left:-14px}}.pcp-title{color:#1c1d1f;margin:0 0 1rem;font-size:1.875rem;font-weight:800;line-height:1.2}.pcp-description{color:#374151;white-space:pre-wrap;margin:0 0 2rem;font-size:1rem;line-height:1.7}.pcp-section-title{color:#1c1d1f;border-bottom:2px solid #e5e7eb;margin:0 0 1rem;padding-bottom:.5rem;font-size:1.125rem;font-weight:700}.pcp-toc{flex-direction:column;gap:.5rem;display:flex}.pcp-toc-section{border:1px solid #e5e7eb;border-radius:6px;overflow:hidden}.pcp-toc-section-title{color:#1c1d1f;background:#f9fafb;align-items:center;gap:.5rem;margin:0;padding:.75rem 1rem;font-size:.9375rem;font-weight:600;display:flex}.pcp-toc-items{border-top:1px solid #e5e7eb}.pcp-toc-item{color:#374151;border-bottom:1px solid #f3f4f6;align-items:center;gap:.625rem;padding:.5rem 1rem .5rem 1.75rem;font-size:.875rem;display:flex}.pcp-toc-item:last-child{border-bottom:none}.pcp-toc-item-icon{color:#9ca3af;flex-shrink:0;font-size:.875rem}.pcp-toc-empty{text-align:center;color:#4b5563;padding:2rem;font-size:.875rem}.pcp-toc-empty a{color:#5624d0;font-weight:600;text-decoration:underline}.pcp-cta-note{text-align:center;color:#4b5563;margin:0;font-size:.875rem}.pcp-cta-note a{color:#5624d0;font-weight:600}.pcp-sidebar{position:sticky;top:80px}.pcp-sidebar-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;flex-direction:column;gap:1rem;padding:1.5rem;display:flex}.pcp-cta-btn{color:#fff;cursor:pointer;background:#1c1d1f;border:none;border-radius:4px;justify-content:center;align-items:center;width:100%;padding:.75rem 1.25rem;font-size:1rem;font-weight:700;text-decoration:none;transition:background .15s;display:flex}.pcp-cta-btn:hover{background:#374151;text-decoration:none}.pcp-cta-btn:disabled{opacity:.6;cursor:not-allowed}.pcp-pending-group{flex-direction:column;gap:.375rem;display:flex}.pcp-enrol-status{border-radius:6px;align-items:flex-start;gap:.5rem;padding:.75rem 1rem;font-size:.875rem;font-weight:500;line-height:1.5;display:flex}.pcp-enrol-status span:last-child{flex:1}.pcp-enrol-status--pending{color:#92400e;background:#fefce8;border:1px solid #fde68a}.pcp-enrol-status--success{color:#166534;background:#f0fdf4;border:1px solid #bbf7d0}.pcp-withdraw-btn{color:#6b7280;cursor:pointer;background:#fff;border:1px solid #d1d5db;border-radius:4px;justify-content:center;align-items:center;width:100%;padding:.5rem 1rem;font-size:.875rem;font-weight:500;text-decoration:none;transition:border-color .15s,color .15s,background .15s;display:flex}.pcp-withdraw-btn:hover:not(:disabled){color:#dc2626;background:#fef2f2;border-color:#fca5a5}.pcp-withdraw-btn:disabled{opacity:.5;cursor:not-allowed}.pcp-enrol-error{color:#dc2626;background:#fef2f2;border:1px solid #fecaca;border-radius:4px;margin:0;padding:.5rem .75rem;font-size:.8125rem}.pcp-meta-row{flex-direction:column;gap:.5rem;display:flex}.pcp-meta-item{color:#374151;gap:.5rem;font-size:.875rem;display:flex}.pcp-meta-label{color:#6b7280;min-width:80px;font-weight:600}.pcp-loading{justify-content:center;align-items:center;min-height:300px;display:flex}.pcp-error{text-align:center;color:#6b7280;padding:4rem 1.5rem}.pcp-access{background:#f9fafb;border:1px solid #e5e7eb;border-radius:16px;max-width:640px;margin:.5rem 0 2rem;padding:1.5rem}.pcp-access-title{color:#111827;margin:0 0 .5rem;font-size:1.25rem;font-weight:700}.pcp-access-text{color:#374151;margin:0 0 1.25rem;font-size:.9375rem;line-height:1.6}.pcp-access-actions{flex-wrap:wrap;align-items:center;gap:.75rem 1.25rem;display:flex}.pcp-access-actions .pcp-cta-btn{width:auto;padding-inline:1.5rem}.pcp-access-signup{color:#5624d0;font-weight:600;text-decoration:none}.pcp-access-signup:hover{text-decoration:underline}.pcp-error-title{color:#111827;margin:0 0 .5rem;font-size:1.5rem;font-weight:700}.pcp-error-text{color:#4b5563;max-width:50ch;margin:0 auto 1.25rem}.pcp-error-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:.75rem 1.25rem;display:flex}.pcp-error-actions .pcp-cta-btn{width:auto;padding-inline:1.5rem}.pcp-error-link{color:#5624d0;align-items:center;min-height:44px;font-weight:600;display:inline-flex}.inv-page{background:linear-gradient(135deg,#eff6ff 0%,#f0fdf4 100%);flex-direction:column;min-height:100vh;display:flex}.inv-header{background:#fff;border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:center;padding:1rem 1.5rem;display:flex}.inv-header-logo{color:#1f2937;letter-spacing:-.02em;font-size:1.375rem;font-weight:700}.inv-header-dot{color:#2563eb}.inv-header-org{color:#6b7280;background:#f3f4f6;border-radius:9999px;padding:.25rem .75rem;font-size:.875rem;font-weight:500}.inv-main{flex:1;justify-content:center;align-items:center;padding:2rem 1rem;display:flex}.inv-card{text-align:center;background:#fff;border-radius:16px;width:100%;max-width:440px;padding:2.5rem 2rem;box-shadow:0 8px 32px #00000014,0 2px 8px #0000000a}.inv-footer{text-align:center;color:#9ca3af;padding:1rem;font-size:.8125rem}.inv-envelope{width:72px;height:72px;margin:0 auto 1.25rem}.inv-envelope svg{width:100%;height:100%}.inv-title{color:#111827;margin:0 0 .375rem;font-size:1.625rem;font-weight:700}.inv-org-label{color:#2563eb;margin:0 0 1.25rem;font-size:.9375rem;font-weight:500}.inv-details{text-align:left;background:#f8faff;border:1px solid #dbeafe;border-radius:10px;flex-direction:column;gap:.625rem;margin-bottom:1.25rem;padding:1rem 1.25rem;display:flex}.inv-detail-row{align-items:baseline;gap:.5rem;display:flex}.inv-detail-label{color:#6b7280;flex-shrink:0;min-width:4.5rem;font-size:.8125rem;font-weight:500}.inv-detail-value{color:#111827;font-size:.9375rem;font-weight:600}.inv-role-badge{color:#1d4ed8;background:#dbeafe;border-radius:9999px;padding:.125rem .625rem;font-size:.8125rem;font-weight:600;display:inline-block}.inv-sub{color:#6b7280;margin:0 0 1.5rem;font-size:.9rem;line-height:1.6}.inv-google-btn{color:#3c4043;cursor:pointer;background:#fff;border:1px solid #dadce0;border-radius:8px;justify-content:center;align-items:center;gap:.75rem;width:100%;padding:.75rem 1.5rem;font-size:.9375rem;font-weight:500;transition:background-color .15s,box-shadow .15s;display:inline-flex}.inv-google-btn:hover:not(:disabled){background:#f8f9fa;box-shadow:0 2px 8px #0000001a}.inv-google-btn:disabled{opacity:.6;cursor:not-allowed}.inv-status-card{padding:.5rem 0}.inv-status-icon{margin-bottom:1rem;font-size:3rem;display:block}.inv-status-title{color:#111827;margin:0 0 .75rem;font-size:1.375rem;font-weight:700}.inv-status-body{color:#6b7280;margin:0;font-size:.9375rem;line-height:1.6}.inv-spinner-wrap{justify-content:center;padding:2rem 0;display:flex}.inv-card .loading-spinner{border:3px solid #e5e7eb;border-top-color:#2563eb;border-radius:50%;width:2rem;height:2rem;animation:.8s linear infinite inv-spin}@keyframes inv-spin{to{transform:rotate(360deg)}}.inv-divider{color:#9ca3af;align-items:center;gap:.75rem;margin:1.25rem 0;font-size:.8125rem;font-weight:500;display:flex}.inv-divider:before,.inv-divider:after{content:"";background:#e5e7eb;flex:1;height:1px}.inv-auth-tabs{border-bottom:2px solid #e5e7eb;gap:0;margin-bottom:1.25rem;display:flex}.inv-auth-tab{color:#6b7280;cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;flex:1;margin-bottom:-2px;padding:.625rem 0;font-size:.875rem;font-weight:500;transition:color .15s,border-color .15s}.inv-auth-tab:hover{color:#374151}.inv-auth-tab--active{color:#2563eb;border-bottom-color:#2563eb}.inv-toggle{color:#6b7280;margin-top:1.25rem;font-size:.8125rem}.inv-toggle-link{color:#2563eb;cursor:pointer;font-weight:600;font-size:inherit;background:0 0;border:none;padding:0}.inv-toggle-link:hover{text-decoration:underline}.inv-accepting-overlay{color:#6b7280;flex-direction:column;align-items:center;gap:.75rem;padding:1.5rem 0;font-size:.875rem;display:flex}.security-page,.home-content-page,.study-pathways-page{flex-direction:column;gap:0;display:flex}.home-content-page,.study-pathways-page{gap:1.5rem}.courses-page,.users-page,.syllabi-page,.org-list-page,.roles-rights-page,.roles-page,.right-detail-page,.role-detail-page{flex-direction:column;gap:1.5rem;display:flex}.users-page-header{justify-content:space-between;align-items:center;display:flex}.courses-table-area,.users-table-area{flex-direction:column;gap:.75rem;display:flex}.roles-rights-section-header{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.roles-rights-section-header h2{margin:0}.roles-results{overflow-x:auto}.roles-table th{text-align:left;color:var(--ui-gray-700);background-color:var(--ui-gray-50);border-bottom:2px solid var(--ui-gray-200);padding:.625rem .75rem;font-weight:600}.roles-table td{border-bottom:1px solid var(--ui-gray-200);color:var(--ui-gray-600);padding:.625rem .75rem}.roles-table-uuid code{background-color:var(--ui-gray-100);border-radius:var(--ui-radius-sm);color:var(--ui-gray-500);word-break:break-all;padding:.125rem .375rem;font-size:.75rem}.roles-loading{color:var(--ui-gray-500);padding:.5rem 0;font-size:.875rem}.roles-divider{border:none;border-top:1px solid var(--ui-gray-200);margin:1rem 0}.user-detail-panel{background-color:var(--ui-surface);border:1px solid var(--ui-gray-200);border-radius:var(--ui-radius-lg);flex-direction:column;gap:1rem;padding:1.5rem;display:flex}.user-detail-info{flex-direction:column;gap:.25rem;display:flex}.user-detail-email{color:var(--ui-gray-500);margin:0;font-size:.875rem}.user-detail-id{color:var(--ui-gray-400);margin:0;font-family:monospace;font-size:.75rem}.user-detail-actions{flex-wrap:wrap;gap:.5rem;display:flex}.user-detail-memberships h3{color:var(--ui-gray-700);margin:0 0 .5rem;font-size:.9375rem;font-weight:600}.user-detail-empty{color:var(--ui-gray-400);margin:0;font-size:.875rem}:is(.courses-page,.home-content-page,.org-create-page,.org-list-page,.right-detail-page,.role-detail-page,.user-detail-page)>.ui-page-header{margin-bottom:0}.hc-btn{border-radius:var(--ui-radius-md);cursor:pointer;white-space:nowrap;border:1px solid #0000;justify-content:center;align-items:center;padding:.5rem 1rem;font-size:.8125rem;font-weight:500;transition:background-color .15s,opacity .15s;display:inline-flex}.hc-btn:disabled{opacity:.6;cursor:not-allowed}.hc-btn--primary{background-color:var(--ui-accent-interactive);color:var(--ui-on-accent);border-color:var(--ui-accent-interactive)}.hc-btn--primary:hover:not(:disabled){background-color:var(--ui-accent-interactive-hover)}.hc-btn--danger:not(.table-action-btn){background-color:var(--ui-danger-accent);color:var(--ui-on-solid);border-color:var(--ui-danger-accent)}.hc-btn--danger:not(.table-action-btn):hover:not(:disabled){background-color:var(--ui-danger)}.hc-btn--secondary:not(.table-action-btn){background-color:var(--ui-surface);color:var(--ui-gray-700);border-color:var(--ui-gray-300)}.hc-btn--secondary:not(.table-action-btn):hover:not(:disabled){background-color:var(--ui-gray-50)}.hc-btn--small{padding:.25rem .625rem;font-size:.75rem}.admin-action-btn{border-radius:var(--ui-radius-md);cursor:pointer;border:1px solid #0000;justify-content:center;align-items:center;padding:.5rem 1rem;font-size:.8125rem;font-weight:500;transition:background-color .15s,opacity .15s;display:inline-flex}.admin-action-btn:disabled{opacity:.5;cursor:not-allowed}.admin-action-btn--create{background-color:var(--ui-accent-interactive);color:var(--ui-on-accent);border-color:var(--ui-accent-interactive)}.admin-action-btn--create:hover:not(:disabled){background-color:var(--ui-accent-interactive-hover);border-color:var(--ui-accent-interactive-hover)}.admin-action-btn--grant{background-color:var(--ui-warning-bg-strong);color:var(--ui-warning-text);border-color:var(--ui-warning-border)}.admin-action-btn--grant:hover:not(:disabled){background-color:var(--ui-warning-border)}.admin-action-btn--revoke{background-color:var(--ui-danger-bg);color:var(--ui-danger-text);border-color:var(--ui-danger-border)}.admin-action-btn--revoke:hover:not(:disabled){background-color:var(--ui-danger-border)}.admin-action-btn--promote{background-color:var(--ui-success-bg-strong);color:var(--ui-success-text);border-color:var(--ui-success-border)}.admin-action-btn--promote:hover:not(:disabled){background-color:var(--ui-success-border)}.admin-action-btn--demote{background-color:var(--ui-danger-bg-strong);color:var(--ui-danger-text);border-color:var(--ui-danger-border)}.admin-action-btn--demote:hover:not(:disabled){background-color:var(--ui-danger-border)}.hc-reorder-btn{border:1px solid var(--ui-gray-300);border-radius:var(--ui-radius-sm);background-color:var(--ui-surface);width:28px;height:28px;color:var(--ui-gray-500);cursor:pointer;justify-content:center;align-items:center;font-size:1rem;transition:background-color .15s;display:inline-flex}.hc-reorder-btn:hover:not(:disabled){background-color:var(--ui-gray-100)}.hc-reorder-btn:disabled{opacity:.3;cursor:not-allowed}.hc-badge{text-transform:uppercase;border-radius:9999px;padding:.125rem .5rem;font-size:.6875rem;font-weight:500;display:inline-block}.hc-badge--active{background-color:var(--ui-success-bg-strong);color:var(--ui-success-text)}.hc-badge--visible{background-color:var(--ui-primary-100);color:var(--ui-primary-800)}.hc-badge--hidden{background-color:var(--ui-warning-bg-strong);color:var(--ui-warning-text)}.scope-badge{text-transform:capitalize;border-radius:9999px;padding:.125rem .5rem;font-size:.75rem;font-weight:500;display:inline-block}.scope-badge--system{background-color:var(--ui-violet-100);color:var(--ui-violet-800)}.scope-badge--org{background-color:var(--ui-primary-100);color:var(--ui-primary-800)}.scope-badge--course{background-color:var(--ui-success-bg-strong);color:var(--ui-success-text)}.status-badge{border-radius:9999px;padding:.125rem .5rem;font-size:.6875rem;font-weight:500;display:inline-block}.status-badge--active{background-color:var(--ui-success-bg-strong);color:var(--ui-success-text)}.status-badge--suspended{background-color:var(--ui-warning-bg-strong);color:var(--ui-warning-text)}.status-badge--deleted{background-color:var(--ui-danger-bg-strong);color:var(--ui-danger-text)}.user-role-badge{text-transform:capitalize;border-radius:9999px;padding:.125rem .5rem;font-size:.75rem;font-weight:500;display:inline-block}.user-role-badge--sysadmin{background-color:var(--ui-violet-100);color:var(--ui-violet-800)}.user-role-badge--instructor{background-color:var(--ui-primary-100);color:var(--ui-primary-800)}.user-role-badge--student{background-color:var(--ui-gray-100);color:var(--ui-gray-600)}.course-featured-badge{border-radius:9999px;padding:.125rem .5rem;font-size:.75rem;font-weight:500;display:inline-block}.course-featured-badge--yes{background-color:var(--ui-primary-100);color:var(--ui-primary-800)}.course-featured-badge--no{color:var(--ui-gray-400)}.crs-inv-badge{background:var(--ui-gray-200);color:var(--ui-gray-700);border-radius:9999px;padding:.125rem .5rem;font-size:.75rem;font-weight:500;display:inline-block}.crs-inv-badge--pending{background:var(--ui-warning-bg-strong);color:var(--ui-warning-text)}.crs-inv-badge--accepted{background:var(--ui-emerald-100);color:var(--ui-emerald-800)}.crs-inv-badge--expired{background:var(--ui-danger-bg-strong);color:var(--ui-danger-text)}.hc-search{gap:.5rem;display:flex}.hc-search input{border:1px solid var(--ui-gray-300);border-radius:var(--ui-radius-md);background-color:var(--ui-surface);color:var(--ui-gray-800);flex:1;padding:.5rem .75rem;font-size:.875rem}.hc-search input:focus{border-color:var(--ui-accent-interactive);box-shadow:0 0 0 3px var(--ui-primary-100);outline:none}.hc-search select{border:1px solid var(--ui-gray-300);border-radius:var(--ui-radius-md);background-color:var(--ui-surface);min-width:0;color:var(--ui-gray-800);flex:1;padding:.5rem .75rem;font-size:.875rem}.hc-search select:focus{border-color:var(--ui-accent-interactive);box-shadow:0 0 0 3px var(--ui-primary-100);outline:none}.hc-featured-pathway{flex-direction:column;gap:.5rem;display:flex}.hc-featured-subjects{border-left:2px solid var(--ui-gray-200);flex-direction:column;gap:.75rem;margin-left:1.5rem;padding-left:1rem;display:flex}.hc-featured-subjects ol.hc-list{margin:0;padding:0;list-style:none}.hc-featured-subjects .hc-note{color:var(--ui-gray-500);margin:0;font-size:.875rem}.hc-logo-row{align-items:center;gap:.75rem;min-width:0;display:flex}.hc-logo{background:var(--ui-gray-100);width:40px;height:40px;color:var(--ui-gray-600);border-radius:10px;flex:none;justify-content:center;align-items:center;font-size:.8125rem;font-weight:700;display:inline-flex;overflow:hidden}.hc-logo img{object-fit:contain;background:var(--ui-surface);width:100%;height:100%}.courses-table-wrapper,.syllabi-table-wrapper,.right-detail-table-wrapper,.role-detail-table-wrapper{border:1px solid var(--ui-gray-200);border-radius:var(--ui-radius-lg);overflow-x:auto}.courses-table,.users-table,.syllabi-table,.right-detail-table,.role-detail-table,.memberships-table,.roles-table,.role-section-table{border-collapse:collapse;width:100%;font-size:.875rem}.courses-table thead,.users-table thead,.syllabi-table thead,.right-detail-table thead,.role-detail-table thead{background-color:var(--ui-gray-50)}.courses-table th,.users-table th,.syllabi-table th,.right-detail-table th,.role-detail-table th,.memberships-table th,.roles-table th,.role-section-table th{text-align:left;color:var(--ui-gray-700);border-bottom:1px solid var(--ui-gray-200);white-space:nowrap;padding:.75rem 1rem;font-weight:600}.courses-table td,.users-table td,.syllabi-table td,.right-detail-table td,.role-detail-table td,.memberships-table td,.role-section-table td{color:var(--ui-gray-800);border-bottom:1px solid var(--ui-gray-100);padding:.75rem 1rem}.courses-table tbody tr:hover,.users-table tbody tr:hover,.syllabi-table tbody tr:hover,.right-detail-table tbody tr:hover,.role-detail-table tbody tr:hover{background-color:var(--ui-gray-50)}.courses-table tbody tr:last-child td,.users-table tbody tr:last-child td,.syllabi-table tbody tr:last-child td,.right-detail-table tbody tr:last-child td,.role-detail-table tbody tr:last-child td,.memberships-table tbody tr:last-child td,.role-section-table tbody tr:last-child td{border-bottom:none}.roles-table-row{cursor:pointer;transition:background-color .1s}.roles-table-row:hover,.roles-table-row--selected{background-color:var(--ui-primary-50)}.syllabi-name-link{color:var(--ui-accent-interactive);font-weight:500;font:inherit;font-size:inherit;cursor:pointer;text-align:left;text-decoration:none;background:0 0;border:none;margin:0;padding:0;-webkit-text-decoration:underline #0000;text-decoration:underline #0000;transition:color .15s,text-decoration-color .15s}.syllabi-name-link:hover{color:var(--ui-accent-interactive-hover);-webkit-text-decoration-color:var(--ui-accent-interactive);text-decoration-color:var(--ui-accent-interactive)}.roles-rights-loading,.courses-loading,.users-loading,.syllabi-loading,.org-list-loading{color:var(--ui-gray-500);padding:1rem 0;font-size:.875rem}.roles-rights-error,.courses-error,.courses-validation-error,.users-error,.users-validation-error,.org-list-error,.hc-message--error{border-radius:var(--ui-radius-md);background-color:var(--ui-danger-bg);color:var(--ui-danger-text);border:1px solid var(--ui-danger-border);padding:.625rem .75rem;font-size:.875rem}.hc-message--success{border-radius:var(--ui-radius-md);background-color:var(--ui-success-bg);color:var(--ui-success-text);border:1px solid var(--ui-success-border);padding:.5rem .75rem;font-size:.8125rem}.hc-message{border-radius:var(--ui-radius-md);padding:.5rem .75rem;font-size:.8125rem}.courses-idle-hint,.users-idle-hint{color:var(--ui-gray-400);margin:0;padding:.5rem 1rem;font-size:.875rem}.hc-loading{text-align:center;color:var(--ui-gray-500);padding:2rem;font-size:.875rem}.hc-list{flex-direction:column;gap:.75rem;display:flex}.hc-list-item{background-color:var(--ui-surface);border:1px solid var(--ui-gray-200);border-radius:var(--ui-radius-lg);justify-content:space-between;align-items:center;gap:1rem;padding:.875rem 1rem;display:flex}.hc-list-item-info{flex-direction:column;flex:1;gap:.25rem;min-width:0;display:flex}.hc-list-item-title{color:var(--ui-gray-800);text-overflow:ellipsis;white-space:nowrap;font-size:.875rem;font-weight:600;overflow:hidden}.hc-list-item-subtitle{color:var(--ui-gray-500);text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;overflow:hidden}.hc-list-item-actions{flex-shrink:0;align-items:center;gap:.5rem;display:flex}.hc-manager{flex-direction:column;gap:1.25rem;display:flex}.hc-manager-header{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.hc-manager-header h1,.hc-manager-header h2{color:var(--ui-gray-800);margin:0;font-size:1.5rem;font-weight:600}.hc-manager-header h2{font-size:1.125rem}.hc-section-courses{flex-direction:column;gap:.375rem;margin-top:.5rem;padding-left:1rem;display:flex}.hc-section-course-item{background-color:var(--ui-gray-50);border:1px solid var(--ui-gray-200);border-radius:var(--ui-radius-sm);justify-content:space-between;align-items:center;padding:.375rem .625rem;font-size:.8125rem;display:flex}.org-admin-launch-link,.course-admin-launch-link{color:var(--ui-gray-500);border-radius:var(--ui-radius-sm);justify-content:center;align-items:center;padding:.25rem;transition:color .15s,background-color .15s;display:inline-flex}.org-admin-launch-link:hover,.course-admin-launch-link:hover{color:var(--ui-accent-interactive-hover);background-color:var(--ui-primary-50)}.org-code-cell{color:var(--ui-gray-500);text-overflow:ellipsis;white-space:nowrap;max-width:200px;font-family:monospace;font-size:.75rem;overflow:hidden}.courses-title-cell{font-weight:500}.courses-description-cell{color:var(--ui-gray-600);text-overflow:ellipsis;white-space:nowrap;max-width:360px;overflow:hidden}.syllabi-action-btn{border:1px solid var(--ui-gray-300);background-color:var(--ui-surface);color:var(--ui-gray-700);cursor:pointer;border-radius:5px;padding:.25rem .625rem;font-size:.8125rem;font-weight:500;transition:background-color .15s,border-color .15s}.syllabi-action-btn:hover:not(:disabled){background-color:var(--ui-gray-50);border-color:var(--ui-gray-400)}.syllabi-action-btn:disabled{opacity:.5;cursor:not-allowed}.syllabi-action-btn--edit{color:var(--ui-accent-interactive);border-color:var(--ui-primary-200)}.syllabi-action-btn--edit:hover:not(:disabled){background-color:var(--ui-primary-50);border-color:var(--ui-primary-300)}.syllabi-action-btn--delete{color:var(--ui-danger-text);border-color:var(--ui-danger-border);margin-left:.375rem}.syllabi-action-btn--delete:hover:not(:disabled){background-color:var(--ui-danger-bg);border-color:var(--ui-red-300)}.syllabi-edit-row td{background-color:var(--ui-sky-50);padding:.5rem 1rem}.syllabi-edit-form{flex-wrap:wrap;align-items:center;gap:.25rem;display:flex}.syllabi-edit-form input{border:1px solid var(--ui-gray-300);border-radius:var(--ui-radius-md);color:var(--ui-gray-800);padding:.375rem .625rem;font-size:.875rem}.syllabi-edit-form input:focus{border-color:var(--ui-accent-interactive);box-shadow:0 0 0 3px var(--ui-primary-100);outline:none}.syllabi-edit-error{border-radius:var(--ui-radius-md);background-color:var(--ui-danger-bg);color:var(--ui-danger-text);border:1px solid var(--ui-danger-border);padding:.625rem .75rem;font-size:.875rem}.afc-tag--pathway{background-color:var(--ui-primary-100);color:var(--ui-primary-800)}.afc-tag--level{background-color:var(--ui-warning-bg-strong);color:var(--ui-warning-text)}.afc-tag--subject{background-color:var(--ui-emerald-100);color:var(--ui-emerald-800)}.afc-tag--medium{background-color:var(--ui-gray-100);color:var(--ui-gray-700)}.user-role-badge--syssuperadmin{background-color:var(--ui-violet-200);color:var(--ui-violet-900)}.hc-btn.hc-btn--link{font:inherit;color:var(--ui-accent-interactive);cursor:pointer;background:0 0;border:none;padding:0;text-decoration:underline}.hc-btn.hc-btn--link:hover{color:var(--ui-accent-interactive-hover);background:0 0}.qb-meta-tag--pp{background-color:var(--ui-warning-bg-strong);color:var(--ui-warning-text)}.review-queue-preview-cell{max-width:24rem}.review-queue-nowrap{white-space:nowrap}.admin-table-wrapper{overflow-x:auto}.admin-table{border-collapse:collapse;width:100%;font-size:.875rem}.hc-manager-header.sst-header{margin-bottom:var(--ui-space-3)}.sst-title{color:var(--ui-gray-800);margin:0;font-size:.9375rem;font-weight:600}.sst-header-actions{gap:var(--ui-space-2);align-items:center;display:flex}.sst-empty-intro{color:var(--ui-gray-500);margin:0 0 var(--ui-space-3);font-size:.875rem}.sst-empty{color:var(--ui-gray-400);margin:0;font-size:.8125rem}.hc-list.sst-list{gap:.375rem}.sst-node{margin-bottom:var(--ui-space-1)}.sst-node-controls{gap:var(--ui-space-1);flex-shrink:0;display:flex}.ui-btn.sst-icon-btn{width:28px;height:28px}.hc-list-item-info.sst-node-info{align-items:baseline;gap:var(--ui-space-2);flex-direction:row}.sst-children{margin-left:20px}.sst-framework{margin:var(--ui-space-2) 0;padding:.625rem var(--ui-space-3);background:var(--ui-sky-50);border:1px solid var(--ui-sky-200);border-radius:var(--ui-radius-md);font-size:.8125rem}.sst-framework-row--competency{margin-bottom:.375rem}.sst-framework-row--level{margin-bottom:var(--ui-space-2)}.sst-framework-ref{color:var(--ui-sky-700);font-weight:600}.sst-framework-ref--level{color:var(--ui-sky-600)}.sst-framework-label{color:var(--ui-gray-900)}.sst-framework-text{color:var(--ui-gray-700)}.sst-framework-heading{color:var(--ui-slate-600);margin-bottom:var(--ui-space-1);font-weight:600}.sst-framework-outcomes{margin:0;padding-left:1.25rem;list-style:outside}.sst-framework-outcome{color:var(--ui-gray-700);margin-bottom:.125rem}.sst-framework-outcome-ref{color:var(--ui-sky-700);margin-right:.375rem;font-weight:500}.hc-manager-header.pathways-header{justify-content:space-between}.pathways-import-line{margin:0 0 var(--ui-space-1)}.pathways-import-line--last{margin:0}.ui-btn.pathway-expand-btn{min-width:28px}.hc-list-item-info.pathway-row-info{align-items:baseline;gap:var(--ui-space-1) var(--ui-space-2);flex-flow:wrap}.pathway-code-tag{background:var(--ui-gray-200);color:var(--ui-gray-700);border-radius:var(--ui-radius-sm);letter-spacing:.04em;padding:.125rem .4rem;font-size:.75rem;font-weight:600}.pathway-category{color:var(--ui-gray-500);font-size:.75rem}.hc-message.pathway-delete-error{margin-top:var(--ui-space-1)}.pathway-edit-form{margin-top:var(--ui-space-2)}.hc-form.pathway-row-body{margin-top:var(--ui-space-2);gap:var(--ui-space-6);flex-direction:column;display:flex}.pathway-stream-filter{margin-bottom:var(--ui-space-2);align-items:center;gap:var(--ui-space-2);display:flex}.pathway-stream-filter-label{color:var(--ui-gray-500);flex-shrink:0;font-size:.8125rem}.ui-input.pathway-stream-filter-select{width:auto;padding:var(--ui-space-1) var(--ui-space-2);font-size:.8125rem}.hc-manager-header.ces-header{margin-bottom:var(--ui-space-2)}.ces-title{color:var(--ui-gray-700);margin:0;font-size:.875rem;font-weight:600}.ui-form.ces-create-form{margin-bottom:var(--ui-space-2)}.ui-form.ces-edit-form{margin-top:var(--ui-space-1)}.ces-checkbox-group{gap:var(--ui-space-2);flex-wrap:wrap;display:flex}.ces-checkbox{align-items:center;gap:var(--ui-space-1);cursor:pointer;font-size:.8125rem;display:flex}.syllabus-version-tag{background:var(--ui-primary-100);color:var(--ui-primary-800);border-radius:9999px;padding:.125rem .5rem;font-size:.75rem;font-weight:500}.ppw-toolbar{margin-bottom:1rem}.ppw-toolbar .ppw-search{max-width:20rem}.not-found-page{flex-direction:column;align-items:flex-start;gap:.75rem;max-width:36rem;display:flex}.not-found-page-title{color:var(--ui-text);margin:0;font-size:1.5rem;font-weight:700}.not-found-page-message{color:var(--ui-text-muted);margin:0;font-size:.875rem}.not-found-page-standalone{justify-content:center;align-items:center;min-height:60vh;padding:2rem 1.5rem;display:flex}.not-found-page-actions{flex-wrap:wrap;gap:.75rem;display:flex}.vp-page{flex-direction:column;gap:.75rem;width:100%;min-width:0;display:flex}.vp-hint{color:var(--ui-text-muted);font-size:.8125rem}.vp-spacer{flex:1}.vp-summary{border:1px solid var(--ui-border);border-radius:var(--ui-radius-lg,10px);background:var(--ui-surface);flex-wrap:wrap;align-items:center;gap:.5rem 1.25rem;padding:.75rem 1rem;display:flex}.vp-progress{background:var(--ui-gray-200);border-radius:999px;flex:100%;height:10px;display:flex;overflow:hidden}.vp-progress-seg{height:100%;display:block}.vp-progress-seg--published{background:var(--ui-brand)}.vp-progress-seg--verified{background:var(--ui-success-solid)}.vp-progress-seg--recheck{background:var(--ui-warning-solid)}.vp-progress-seg--fix{background:var(--ui-danger)}.vp-counts{color:var(--ui-text);flex-wrap:wrap;gap:.25rem 1rem;margin:0;padding:0;font-size:.875rem;list-style:none;display:flex}.vp-counts li{align-items:center;gap:.35rem;display:inline-flex}.vp-counts-total{color:var(--ui-text-muted)}.vp-dot{background:var(--ui-gray-400);border-radius:50%;width:9px;height:9px;display:inline-block}.vp-dot--verified{background:var(--ui-success-solid)}.vp-dot--fix{background:var(--ui-danger)}.vp-dot--recheck{background:var(--ui-warning-solid)}.vp-dot--published{background:var(--ui-brand)}.vp-summary-actions{flex-wrap:wrap;align-items:center;gap:.5rem;margin-left:auto;display:flex}.vp-banner{border-radius:var(--ui-radius,6px);background:var(--ui-primary-50);color:var(--ui-primary-800);margin:0;padding:.5rem .75rem;font-size:.875rem}.vp-refusal-message{margin:0 0 .5rem}.vp-refusal-group h3{margin:.5rem 0 .125rem;font-size:.9rem}.vp-refusal-group ul{margin:.25rem 0 0;padding-left:1.1rem}.vp-refusal-group li{margin:.15rem 0;font-size:.875rem}.vp-link{color:var(--ui-primary);cursor:pointer;font:inherit;text-align:left;background:0 0;border:none;padding:0;text-decoration:underline}.vp-workspace{grid-template-columns:210px minmax(0,1fr) minmax(0,1fr);align-items:start;gap:.75rem;display:grid}.vp-workspace--no-pdf{grid-template-columns:210px minmax(0,1fr)}.vp-rail,.vp-source,.vp-question{border:1px solid var(--ui-border);border-radius:var(--ui-radius-lg,10px);background:var(--ui-surface);max-height:calc(100vh - 1.5rem);position:sticky;top:.75rem;overflow:auto}.vp-question{max-height:none;padding:.875rem 1rem;position:static}.vp-rail{padding:.5rem}.vp-filters{flex-wrap:wrap;gap:.25rem;margin-bottom:.5rem;display:flex}.vp-filter{border:1px solid var(--ui-border);background:var(--ui-surface);color:var(--ui-text);cursor:pointer;border-radius:999px;padding:.2rem .5rem;font-size:.75rem}.vp-filter--on{background:var(--ui-brand);border-color:var(--ui-brand);color:var(--ui-on-accent)}.vp-filter-count{opacity:.8}.vp-filter:focus-visible,.vp-rail-item:focus-visible{outline:2px solid var(--ui-focus);outline-offset:1px}.vp-rail-list{margin:0;padding:0;list-style:none}.vp-rail-section{text-transform:uppercase;letter-spacing:.03em;color:var(--ui-text-muted);margin:.5rem .25rem .2rem;font-size:.7rem;font-weight:700}.vp-rail-item{text-align:left;cursor:pointer;width:100%;color:var(--ui-text);background:0 0;border:1px solid #0000;border-radius:6px;grid-template-columns:1.1rem 3rem 1fr auto;align-items:center;gap:.25rem;padding:.3rem .4rem;font-size:.8125rem;display:grid;position:relative}.vp-rail-item:hover{background:var(--ui-surface-hover)}.vp-rail-item[aria-current=true]{border-color:var(--ui-brand);background:var(--ui-primary-50)}.vp-rail-mark{text-align:center;font-weight:700}.vp-rail-label{font-weight:600}.vp-rail-state{color:var(--ui-text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:.72rem;overflow:hidden}.vp-rail-item--verified .vp-rail-mark{color:var(--ui-success-solid)}.vp-rail-item--needs_fix .vp-rail-mark{color:var(--ui-danger)}.vp-rail-item--fix_replied .vp-rail-mark,.vp-rail-item--recheck .vp-rail-mark{color:var(--ui-warning-solid)}.vp-rail-item--published .vp-rail-mark{color:var(--ui-brand)}.vp-rail-item--draft .vp-rail-mark{color:var(--ui-gray-400)}.vp-rail-empty{padding:.5rem}.vp-pdf{flex-direction:column;min-height:0;display:flex}.vp-pdf-toolbar{z-index:1;border-bottom:1px solid var(--ui-border);background:var(--ui-surface);align-items:center;gap:.25rem;padding:.35rem .5rem;font-size:.8125rem;display:flex;position:sticky;top:0}.vp-pdf-page input{text-align:center;width:3rem;padding:.1rem .25rem;font-size:.8125rem}.vp-pdf-spacer{flex:1}.vp-pdf-note{background:var(--ui-warning-bg);color:var(--ui-warning-text);margin:0;padding:.4rem .75rem;font-size:.8125rem}.vp-pdf-scroll{background:var(--ui-gray-100);padding:1rem;overflow:auto}.vp-pdf-page-wrap{background:#fff;display:inline-block;position:relative;box-shadow:0 1px 6px #0000002e}.vp-pdf-page-wrap canvas{display:block}.vp-pdf-bbox{box-sizing:border-box;pointer-events:none;background:#fde68a2e;border:3px solid #d97706;border-radius:3px;position:absolute}.vp-pdf-loading{background:var(--ui-surface);color:var(--ui-text-subtle);border-radius:4px;padding:2px 6px;font-size:12px;position:absolute;top:8px;right:8px}.vp-pdf-error{color:var(--ui-danger-text)}.vp-question-head{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.vp-question-head h2{margin:0;font-size:1.1rem}.vp-actions{flex-wrap:wrap;align-items:center;gap:.5rem;margin:.75rem 0 .5rem;display:flex}.vp-question-body{margin-top:.75rem}.vp-recheck-form{flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:.5rem;display:flex}.vp-recheck-form input{border:1px solid var(--ui-border);border-radius:6px;flex:14rem;padding:.3rem .5rem}.vp-fix-form{border:1px solid var(--ui-red-300);background:var(--ui-danger-bg);border-radius:8px;flex-direction:column;gap:.5rem;margin:.5rem 0;padding:.75rem;display:flex}.vp-fix-form textarea{box-sizing:border-box;border:1px solid var(--ui-border);width:100%;font:inherit;border-radius:6px;padding:.5rem}.vp-fix-target{font-size:.875rem}.vp-fix-buttons{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.5rem;display:flex}.vp-fix-buttons .vp-hint{margin-right:auto}.vp-answers{border-top:1px solid var(--ui-border);margin-top:1rem;padding-top:.75rem}.vp-answers h3{margin:0 0 .5rem;font-size:.95rem}.vp-answers dl{flex-direction:column;gap:.5rem;margin:0;display:flex}.vp-answer dt{font-size:.875rem;font-weight:600}.vp-answer dd{color:var(--ui-emerald-800);margin:.15rem 0 0 .75rem;font-size:.875rem}.vp-answer dd>*{display:inline}.vp-comments{border-top:1px solid var(--ui-border);margin-top:1rem;padding-top:.75rem}.vp-comments h3{margin:0 0 .5rem;font-size:.95rem}.vp-comments ul{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.vp-comment{border:1px solid var(--ui-border);border-left:4px solid var(--ui-danger);border-radius:6px;padding:.5rem .75rem}.vp-comment--pending_verification{border-left-color:var(--ui-warning-solid)}.vp-comment-head{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.vp-comment-text{white-space:pre-wrap;margin:.35rem 0}.vp-comment-actions{gap:.5rem;margin-top:.5rem;display:flex}.vp-shortcuts{border-collapse:collapse;width:100%}.vp-shortcuts td{border-bottom:1px solid var(--ui-gray-100);padding:.3rem .5rem}.vp-shortcuts kbd{border:1px solid var(--ui-gray-300);background:var(--ui-gray-50);text-align:center;border-bottom-width:2px;border-radius:4px;min-width:1.4rem;margin-right:.25rem;padding:.05rem .35rem;font-family:inherit;font-size:.8rem;display:inline-block}@media (width<=1100px){.vp-workspace,.vp-workspace--no-pdf{grid-template-columns:minmax(0,1fr)}.vp-rail,.vp-source{max-height:none;position:static}.vp-rail-list{flex-wrap:nowrap;gap:.25rem;padding-bottom:.25rem;display:flex;overflow-x:auto}.vp-rail-list li{flex:none;align-items:flex-end;gap:.25rem;display:flex}.vp-rail-item{grid-template-columns:1rem auto;width:auto}.vp-rail-state{display:none}.vp-rail-section{writing-mode:horizontal-tb;margin:0 .25rem .35rem}.vp-source{max-height:70vh;overflow:auto}.vp-summary-actions{margin-left:0}}html.vp-window-root,html.vp-window-root body{height:100%;overflow:hidden}.vp-window{box-sizing:border-box;background:var(--ui-bg);flex-direction:column;padding:.6rem .75rem .75rem;display:flex;position:fixed;inset:0;overflow:hidden}.vp-window-controls{z-index:30;align-items:center;gap:.5rem;display:flex;position:absolute;top:.6rem;right:.75rem}.vp-window>*{flex:auto;min-height:0}.vp-window>.vp-window-controls{flex:none}.vp-page--window{gap:.5rem;height:100%;min-height:0;overflow:hidden}.vp-page--window>.ui-page-header{padding-right:15rem}.vp-page--window .ui-page-title{font-size:1.15rem}.vp-page--window .vp-summary{padding:.5rem .75rem}.vp-page--window .vp-workspace{flex:auto;grid-template-rows:minmax(0,1fr);align-items:stretch;min-height:0}.vp-page--window .vp-rail,.vp-page--window .vp-source,.vp-page--window .vp-question{height:100%;min-height:0;max-height:none;position:static;overflow:auto}@media (width<=1100px){.vp-page--window{overflow:auto}.vp-page--window .vp-workspace{flex:none;grid-template-rows:none}.vp-page--window .vp-rail,.vp-page--window .vp-question{height:auto}.vp-page--window .vp-source{height:70vh}}.vp-outcomes{border-top:1px solid var(--ui-border);margin-top:1rem;padding-top:.75rem}.vp-outcomes h3{margin:0 0 .4rem;font-size:.95rem}.vp-outcomes-empty{margin:0}.vp-rail-waiting{background:var(--ui-violet-600);border-radius:50%;flex-shrink:0;width:.55rem;height:.55rem;display:inline-block}.vp-filter--mine:not(.vp-filter--on){border-color:var(--ui-violet-300)}.vp-waiting-line{color:var(--ui-violet-800);flex-wrap:wrap;align-items:center;gap:.4rem;margin:.25rem 0;font-size:.875rem;display:flex}.vp-waiting-line--target{margin:0 0 .5rem}.dialog-overlay{background-color:var(--ui-overlay);z-index:1000;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.dialog-content{background-color:var(--ui-surface-raised);width:90%;max-width:480px;box-shadow:var(--ui-shadow-lg);border:none;border-radius:12px;margin:0;padding:1.5rem;position:static}.dialog-content h2{color:var(--ui-gray-800);margin:0 0 1rem;font-size:1.125rem;font-weight:600}.dialog-body{flex-direction:column;gap:.75rem;margin-bottom:1.5rem;display:flex}.dialog-body p{color:var(--ui-gray-600);margin:0;font-size:.875rem;line-height:1.5}.dialog-user-info{background-color:var(--ui-gray-50);border-radius:var(--ui-radius-md);padding:.75rem}.dialog-user-info p{margin:.25rem 0;font-size:.8125rem}.dialog-warning{font-weight:500;color:var(--ui-danger-text)!important}.dialog-info{color:var(--ui-primary-700)!important;font-size:.8125rem!important}.dialog-actions{justify-content:flex-end;gap:.5rem;display:flex}.dialog-btn{border-radius:var(--ui-radius-md);cursor:pointer;border:1px solid #0000;padding:.5rem 1rem;font-size:.875rem;font-weight:500;transition:background-color .15s}.dialog-btn:disabled{opacity:.5;cursor:not-allowed}.dialog-btn--confirm{background-color:var(--ui-accent-interactive);color:var(--ui-on-accent);border-color:var(--ui-accent-interactive)}.dialog-btn--confirm:hover:not(:disabled){background-color:var(--ui-accent-interactive-hover)}.dialog-btn--danger{background-color:var(--ui-danger-accent);color:var(--ui-on-solid);border-color:var(--ui-danger-accent)}.dialog-btn--danger:hover:not(:disabled){background-color:var(--ui-danger)}.dialog-btn--cancel{background-color:var(--ui-surface);color:var(--ui-gray-700);border-color:var(--ui-gray-300)}.dialog-btn--cancel:hover{background-color:var(--ui-gray-50)}.dialog-error{background-color:var(--ui-danger-bg);border:1px solid var(--ui-danger-border);border-radius:var(--ui-radius-md);padding:.5rem .75rem;color:var(--ui-danger-text)!important;font-size:.8125rem!important}.dialog-input{border:1px solid var(--ui-gray-300);border-radius:var(--ui-radius-md);background-color:var(--ui-surface);color:var(--ui-gray-800);box-sizing:border-box;width:100%;padding:.5rem .75rem;font-size:.875rem}.dialog-input:focus{border-color:var(--ui-accent-interactive);box-shadow:0 0 0 3px var(--ui-primary-100);outline:none}.dialog-input:disabled{background-color:var(--ui-gray-50);cursor:not-allowed}.org-detail-page,.user-detail-page,.role-detail-page,.right-detail-page{flex-direction:column;gap:1.5rem;display:flex}.org-detail-page--readable,.user-detail-page{max-width:var(--admin-readable-max)}.org-detail-loading,.user-detail-loading,.role-detail-loading,.right-detail-loading{color:var(--ui-gray-500);padding:1rem 0;font-size:.875rem}.org-detail-section,.user-detail-section,.role-detail-section,.right-detail-section{background-color:var(--ui-surface);border:1px solid var(--ui-gray-200);border-radius:var(--ui-radius-lg);padding:1.25rem}.org-detail-section h2,.user-detail-section h2{color:var(--ui-gray-700);margin:0 0 .75rem;font-size:1rem;font-weight:600}.role-detail-section h2,.right-detail-section h2{color:var(--ui-gray-700);margin:0 0 1rem;font-size:1.125rem;font-weight:600}.org-detail-page>.ui-btn,.user-detail-page>.ui-btn,.role-detail-page>.ui-btn,.right-detail-page>.ui-btn,.org-create-page>.ui-btn{align-self:flex-start}.org-detail-error,.user-detail-error,.right-detail-error,.role-detail-error{background-color:var(--ui-danger-bg);border:1px solid var(--ui-danger-border);border-radius:var(--ui-radius-lg);text-align:center;padding:1.5rem}.org-detail-error p,.user-detail-error p,.right-detail-error p{color:var(--ui-red-900);margin:0 0 1rem;font-size:.875rem}.org-detail-error-actions{justify-content:center;gap:.75rem;display:flex}.role-detail-error{text-align:left;flex-direction:column;align-items:flex-start;gap:.75rem;padding:1rem;display:flex}.role-detail-error p{color:var(--ui-danger-text);margin:0;font-size:.875rem}.hc-form{background-color:var(--ui-gray-50);border:1px solid var(--ui-gray-200);border-radius:var(--ui-radius-lg);flex-direction:column;gap:1rem;padding:1.25rem;display:flex}.hc-form-field{flex-direction:column;gap:.25rem;display:flex}.hc-form-field label{color:var(--ui-gray-700);font-size:.8125rem;font-weight:500}.hc-form-field input,.hc-form-field select,.hc-form-field textarea{border:1px solid var(--ui-gray-300);border-radius:var(--ui-radius-md);background-color:var(--ui-surface);color:var(--ui-gray-800);padding:.5rem .75rem;font-size:.875rem;transition:border-color .15s,box-shadow .15s}.hc-form-field input:focus,.hc-form-field select:focus,.hc-form-field textarea:focus{border-color:var(--ui-accent-interactive);box-shadow:0 0 0 3px var(--ui-primary-100);outline:none}.hc-form-field textarea{resize:vertical;min-height:80px}.hc-form-field .hc-field-error{color:var(--ui-danger);font-size:.75rem}.hc-form-field .hc-field-hint{color:var(--ui-gray-400);font-size:.6875rem}.hc-form-actions{gap:.5rem;margin-top:.5rem;display:flex}.user-basic-info-form{flex-direction:column;gap:1rem;display:flex}.user-form-field{flex-direction:column;gap:.375rem;display:flex}.user-form-label{color:var(--ui-gray-500);font-size:.8125rem;font-weight:500}.user-form-input{border:1px solid var(--ui-gray-300);border-radius:var(--ui-radius-md);background-color:var(--ui-surface);color:var(--ui-gray-800);box-sizing:border-box;width:100%;padding:.5rem .75rem;font-size:.875rem}.user-form-input:focus{border-color:var(--ui-accent-interactive);box-shadow:0 0 0 3px var(--ui-primary-100);outline:none}.user-form-input--readonly{background-color:var(--ui-gray-50);color:var(--ui-gray-500);cursor:default}.user-form-input--readonly:focus{border-color:var(--ui-gray-300);box-shadow:none}.user-form-input--error{border-color:var(--ui-danger-accent)}.user-form-input--error:focus{border-color:var(--ui-danger-accent);box-shadow:0 0 0 3px var(--ui-danger-bg-strong)}.user-form-field-error{color:var(--ui-danger);margin:0;font-size:.8125rem}.user-form-actions{align-items:center;gap:.75rem;padding-top:.25rem;display:flex}.user-form-save-success{color:var(--ui-success-text);font-size:.875rem}.user-form-save-error{color:var(--ui-danger);font-size:.875rem}.org-detail-code{align-items:center;gap:.5rem;margin:0;display:flex}.org-detail-code code{background-color:var(--ui-gray-100);border-radius:var(--ui-radius-sm);color:var(--ui-gray-500);padding:.125rem .5rem;font-size:.8125rem}.org-detail-action-error{border-radius:var(--ui-radius-md);background-color:var(--ui-danger-bg);color:var(--ui-danger-text);border:1px solid var(--ui-danger-border);padding:.625rem .75rem;font-size:.875rem}.org-detail-actions{flex-wrap:wrap;gap:.5rem;display:flex}.org-detail-dl{grid-template-columns:auto 1fr;gap:.375rem 1rem;font-size:.875rem;display:grid}.org-detail-dl dt{color:var(--ui-gray-500);font-weight:500}.org-detail-dl dd{color:var(--ui-gray-800);margin:0}.org-detail-dl code{background-color:var(--ui-gray-100);border-radius:var(--ui-radius-sm);padding:.125rem .375rem;font-size:.75rem}.org-detail-stats{flex-wrap:wrap;gap:1rem;display:flex}.org-stat-card{background-color:var(--ui-gray-50);border-radius:var(--ui-radius-lg);flex-direction:column;align-items:center;min-width:100px;padding:.75rem 1.25rem;display:flex}.org-stat-value{color:var(--ui-gray-800);font-size:1.5rem;font-weight:700}.org-stat-label{color:var(--ui-gray-500);margin-top:.25rem;font-size:.75rem}.org-color-swatch{align-items:center;gap:.5rem;display:inline-flex}.org-color-box{border:1px solid var(--ui-gray-300);border-radius:3px;width:16px;height:16px;display:inline-block}.org-detail-placeholder{color:var(--ui-gray-400);margin:0;font-size:.875rem;font-style:italic}.tier-info{font-size:.8125rem}.tier-limits-list{color:var(--ui-gray-600);margin:.25rem 0 0 1.25rem;padding:0;font-size:.8125rem}.tier-limits-list li{margin:.125rem 0}.tier-warnings{background-color:var(--ui-danger-bg);border:1px solid var(--ui-danger-border);border-radius:var(--ui-radius-md);padding:.75rem}.tier-warnings-list{color:var(--ui-danger-text);margin:.25rem 0 0 1.25rem;padding:0;font-size:.8125rem}.tier-warnings-list li{margin:.125rem 0}.delete-consequences-list{color:var(--ui-gray-600);margin:0 0 0 1.25rem;padding:0;font-size:.8125rem}.delete-consequences-list li{margin:.25rem 0}.delete-confirm-input-group{flex-direction:column;gap:.375rem;display:flex}.delete-confirm-label{color:var(--ui-gray-700);font-size:.8125rem;font-weight:500}.delete-confirm-label code{background-color:var(--ui-danger-bg);border-radius:var(--ui-radius-sm);color:var(--ui-danger-text);padding:.125rem .375rem;font-size:.75rem}.delete-confirm-input{border:1px solid var(--ui-gray-300);border-radius:var(--ui-radius-md);background-color:var(--ui-surface);color:var(--ui-gray-800);padding:.5rem .75rem;font-size:.875rem}.delete-confirm-input:focus{border-color:var(--ui-danger-accent);box-shadow:0 0 0 3px var(--ui-danger-bg-strong);outline:none}.role-detail-assign-form,.right-detail-assign-form{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.role-detail-select,.right-detail-select{border:1px solid var(--ui-gray-300);border-radius:var(--ui-radius-md);background-color:var(--ui-surface);max-width:400px;color:var(--ui-gray-800);cursor:pointer;flex:1;padding:.5rem .75rem;font-size:.875rem;transition:border-color .15s}.right-detail-select{min-width:220px}.role-detail-select:focus,.right-detail-select:focus{border-color:var(--ui-accent-interactive);box-shadow:0 0 0 3px var(--ui-primary-100);outline:none}.role-detail-select:disabled,.right-detail-select:disabled{background-color:var(--ui-gray-50);cursor:not-allowed;color:var(--ui-gray-400)}.role-detail-action-error,.right-detail-action-error{border-radius:var(--ui-radius-md);background-color:var(--ui-danger-bg);color:var(--ui-danger-text);border:1px solid var(--ui-danger-border);margin-top:.5rem;padding:.5rem .75rem;font-size:.8125rem}.role-detail-name-row{align-items:center;gap:.5rem;display:flex}.role-detail-name-input{border:1px solid var(--ui-gray-300);border-radius:var(--ui-radius-md);background-color:var(--ui-surface);max-width:400px;color:var(--ui-gray-800);flex:1;padding:.5rem .75rem;font-size:.875rem;transition:border-color .15s}.role-detail-name-input:focus{border-color:var(--ui-accent-interactive);box-shadow:0 0 0 3px var(--ui-primary-100);outline:none}.role-detail-name-input:disabled{background-color:var(--ui-gray-50);cursor:not-allowed}.role-detail-save-error{color:var(--ui-danger-text);margin:.375rem 0 0;font-size:.8125rem}.role-detail-save-success{color:var(--ui-success-text);margin:.375rem 0 0;font-size:.8125rem}.role-detail-danger-zone{border-color:var(--ui-danger-border)}.role-detail-danger-zone h2{color:var(--ui-danger-text)}.role-detail-danger-text{color:var(--ui-gray-600);margin:0 0 .75rem;font-size:.875rem}.role-detail-field{margin-bottom:1rem}.role-detail-field:last-child{margin-bottom:0}.role-detail-label{color:var(--ui-gray-500);margin-bottom:.375rem;font-size:.8125rem;font-weight:500;display:block}.right-detail-dl,.role-detail-dl{grid-template-columns:auto 1fr;gap:.375rem 1rem;font-size:.875rem;display:grid}.right-detail-dl dt,.role-detail-dl dt{color:var(--ui-gray-500);font-weight:500}.right-detail-dl dd,.role-detail-dl dd{color:var(--ui-gray-800);margin:0}.role-detail-header{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.role-detail-header h1{color:var(--ui-gray-800);margin:0;font-size:1.5rem;font-weight:600}.role-section-header{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.role-section-header h2{margin:0}.role-section-error{background-color:var(--ui-danger-bg);border:1px solid var(--ui-danger-border);border-radius:var(--ui-radius-md);color:var(--ui-red-900);align-items:center;gap:.75rem;padding:.75rem 1rem;font-size:.875rem;display:flex}.role-section-list{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.role-section-list-item{background-color:var(--ui-gray-50);border:1px solid var(--ui-gray-200);border-radius:var(--ui-radius-md);justify-content:space-between;align-items:center;padding:.5rem .75rem;display:flex}.family-section-note{color:var(--ui-gray-500);margin:-.5rem 0 1rem;font-size:.8125rem}.family-section-subheading{color:var(--ui-gray-700);margin:1rem 0 .5rem;font-size:.875rem;font-weight:600}.family-section-subheading:first-of-type{margin-top:0}.role-section-managed{color:var(--ui-gray-500);font-size:.75rem}.role-section-role-name{color:var(--ui-gray-800);font-size:.875rem;font-weight:500}.add-role-steps{align-items:center;gap:.5rem;margin-bottom:1rem;font-size:.8125rem;display:flex}.add-role-step{color:var(--ui-gray-400);font-weight:500}.add-role-step--active{color:var(--ui-accent-interactive);font-weight:600}.add-role-step--done{color:var(--ui-gray-500)}.add-role-step-divider{color:var(--ui-gray-300)}.add-role-search-wrapper{margin-bottom:.5rem;position:relative}.add-role-search-loading{color:var(--ui-gray-500);margin-top:.25rem;font-size:.8125rem;display:block}.add-role-results-list{border:1px solid var(--ui-gray-200);border-radius:var(--ui-radius-md);background-color:var(--ui-surface);max-height:200px;margin:0;padding:0;list-style:none;overflow-y:auto}.add-role-result-item{border:none;border-bottom:1px solid var(--ui-gray-100);width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;justify-content:space-between;align-items:center;padding:.5rem .75rem;font-size:.875rem;transition:background-color .1s;display:flex}.add-role-results-list li:last-child .add-role-result-item{border-bottom:none}.add-role-result-item:hover,.add-role-result-item:focus{background-color:var(--ui-primary-50);outline:none}.add-role-result-item--selected{background-color:var(--ui-primary-100)}.add-role-result-name{color:var(--ui-gray-800);font-weight:500}.add-role-result-meta{color:var(--ui-gray-500);background-color:var(--ui-gray-100);border-radius:var(--ui-radius-sm);padding:.125rem .375rem;font-family:monospace;font-size:.75rem}.add-role-loading{color:var(--ui-gray-500);margin:.5rem 0;font-size:.875rem}.add-role-select-group{flex-direction:column;gap:.375rem;display:flex}.add-role-select-label{color:var(--ui-gray-700);font-size:.8125rem;font-weight:500}.org-create-page{flex-direction:column;gap:1.5rem;max-width:680px;display:flex}.org-create-form{flex-direction:column;gap:1.25rem;display:flex}.org-create-server-error{border-radius:var(--ui-radius-md);background-color:var(--ui-danger-bg);color:var(--ui-danger-text);border:1px solid var(--ui-danger-border);padding:.625rem .75rem;font-size:.875rem}.org-create-admins-section{border:1px solid var(--ui-gray-200);border-radius:var(--ui-radius-lg);margin:0;padding:1.25rem}.org-create-admins-section legend{padding:0 .5rem;font-weight:600}.initial-admin-search{margin-bottom:.75rem;position:relative}.admin-search-status{color:var(--ui-gray-500);padding:.25rem 0;font-size:.8125rem}.admin-search-error{color:var(--ui-danger-text);padding:.25rem 0;font-size:.8125rem}.admin-search-results{z-index:10;background-color:var(--ui-surface-raised);border:1px solid var(--ui-gray-300);border-radius:var(--ui-radius-lg);box-shadow:var(--ui-shadow-md);max-height:240px;margin:.25rem 0 0;padding:0;list-style:none;position:absolute;top:100%;left:0;right:0;overflow-y:auto}.admin-search-result-item{width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:none;align-items:center;gap:.5rem;padding:.625rem .75rem;transition:background-color .1s;display:flex}.admin-search-result-item:hover,.admin-search-result-item:focus{background-color:var(--ui-gray-100);outline:none}.admin-search-result-name{color:var(--ui-gray-800);font-size:.875rem;font-weight:500}.admin-search-result-email{color:var(--ui-gray-500);font-size:.8125rem}.admin-search-invite-badge{background-color:var(--ui-warning-bg-strong);color:var(--ui-warning-text);border-radius:9999px;margin-left:auto;padding:.125rem .5rem;font-size:.75rem;font-weight:500}.admin-search-result-item--email{border-top:1px solid var(--ui-gray-100)}.admin-search-result-empty{color:var(--ui-gray-500);padding:.625rem .75rem;font-size:.8125rem}.initial-admin-list{margin-top:.5rem}.initial-admin-list-items{flex-direction:column;gap:.375rem;margin:0;padding:0;list-style:none;display:flex}.initial-admin-list-item{background-color:var(--ui-gray-50);border:1px solid var(--ui-gray-200);border-radius:var(--ui-radius-md);justify-content:space-between;align-items:center;padding:.5rem .75rem;display:flex}.initial-admin-info{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.initial-admin-name{color:var(--ui-gray-800);font-size:.875rem;font-weight:500}.initial-admin-email{color:var(--ui-gray-500);font-size:.8125rem}.initial-admin-invite-badge{background-color:var(--ui-warning-bg-strong);color:var(--ui-warning-text);border-radius:9999px;padding:.125rem .375rem;font-size:.6875rem;font-weight:500}.multipart-nested{flex-direction:column;gap:.75rem;display:flex}.exam-reveal-option{cursor:default;align-items:flex-start;gap:.5rem;display:flex}.exam-reveal-option.option-correct{background:#f0fdf4;border-color:#16a34a}.exam-reveal-option.option-wrong-pick{background:#fef2f2;border-color:#dc2626}.exam-reveal-mark{flex-shrink:0;width:1rem;font-weight:700}.option-correct .exam-reveal-mark{color:#16a34a}.option-wrong-pick .exam-reveal-mark{color:#dc2626}.exam-reveal-note{color:#6b7280;white-space:nowrap;margin-left:auto;font-size:.75rem}.exam-answer-key{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;flex-direction:column;gap:.5rem;margin-top:.75rem;padding:.75rem 1rem;font-size:.875rem;display:flex}.exam-answer-key:empty{display:none}.exam-answer-key-row{color:#374151;margin:0}.exam-answer-key-label{letter-spacing:.04em;text-transform:uppercase;color:#6b7280;margin-bottom:.125rem;font-size:.6875rem;font-weight:600;display:block}.exam-preview-window{min-height:100vh}.exam-preview-chip{color:#1e40af;white-space:nowrap;background:#eff6ff;border:1px solid #bfdbfe;border-radius:9999px;padding:.2rem .625rem;font-size:.75rem;font-weight:600}.exam-preview-answers-toggle{color:#374151;cursor:pointer;white-space:nowrap;align-items:center;gap:.375rem;font-size:.875rem;font-weight:500;display:inline-flex}.cp-root--dark .exam-preview-chip{color:var(--cp-accent-subtle);background:var(--cp-bg-secondary);border-color:var(--cp-border)}.cp-root--dark .exam-preview-answers-toggle{color:var(--cp-text)}.exam-reveal-option:hover:not(.option-correct):not(.option-wrong-pick){background-color:#0000;border-color:#e5e7eb}.exam-section-overview{flex-direction:column;gap:.75rem;margin-bottom:1.5rem;display:flex}.exam-overview-stats{gap:.5rem;display:flex}.stat-chip,.meta-chip{color:#374151;background:#f3f4f6;border-radius:9999px;align-items:center;padding:.125rem .625rem;font-size:.75rem;font-weight:500;display:inline-flex}.stat-chip{padding:.25rem .75rem;font-size:.8125rem}.exam-section-list{flex-direction:column;gap:.5rem;display:flex}.section-overview-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:.75rem 1rem;transition:border-color .15s,background-color .15s}.section-overview-card[role=button]:hover,.section-overview-card[role=button]:focus-visible{background:#f8fbff;border-color:#93c5fd;outline:none}.section-overview-card.depth-1,.section-overview-card.depth-2{border-style:dashed}.section-overview-row{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.section-overview-info{flex-direction:column;gap:.25rem;display:flex}.section-overview-label{color:#111827;font-weight:600}.section-overview-desc{color:#6b7280;font-size:.8125rem}.section-overview-meta{flex-wrap:wrap;gap:.375rem;display:flex}.section-overview-subsections{flex-direction:column;gap:.5rem;margin-top:.75rem;padding-left:1rem;display:flex}.section-start-page,.section-end-page{flex-direction:column;align-items:flex-start;gap:.75rem;display:flex}.section-start-page h2,.section-end-page h2{color:#111827;margin:0;font-size:1.25rem}.back-link-btn{color:#2563eb;cursor:pointer;background:0 0;border:none;padding:0;font-size:.875rem}.section-description{color:#4b5563;margin:0}.section-meta{gap:1.5rem;display:flex}.section-meta-item{flex-direction:column;display:flex}.meta-label{letter-spacing:.04em;text-transform:uppercase;color:#6b7280;font-size:.6875rem;font-weight:600}.meta-value{color:#111827;font-size:1.125rem;font-weight:600}.section-timer-notice{color:#92400e;background:#fffbeb;border:1px solid #fde68a;border-radius:6px;margin:0;padding:.5rem .75rem;font-size:.875rem}.section-end-summary{color:#4b5563;margin:0}.section-question-list{flex-direction:column;gap:.5rem;width:100%;display:flex}.section-q-row{border:1px solid #e5e7eb;border-left-width:4px;border-radius:6px;padding:.625rem .875rem}.section-q-row.answered{border-left-color:#16a34a}.section-q-row.partial{border-left-color:#f59e0b}.section-q-row.skipped{border-left-color:#d1d5db}.section-q-header{color:#374151;gap:.75rem;font-size:.8125rem;display:flex}.section-q-number{font-weight:700}.section-q-status{margin-left:auto}.section-q-preview{color:#6b7280;margin:.25rem 0 0;font-size:.8125rem}.section-q-children{flex-wrap:wrap;gap:.375rem;margin-top:.375rem;display:flex}.section-q-child{background:#f3f4f6;border-radius:4px;gap:.375rem;padding:.125rem .5rem;font-size:.75rem;display:inline-flex}.go-to-question-btn{color:#2563eb;cursor:pointer;background:0 0;border:none;margin-top:.375rem;padding:0;font-size:.8125rem}.section-end-actions{justify-content:space-between;width:100%;margin-top:.5rem;display:flex}.exam-section-breadcrumb{color:#4b5563;font-size:.875rem;font-weight:500}.multipart-page{flex-direction:column;gap:1rem;display:flex}.multipart-stem{color:#111827;flex-direction:column;gap:.25rem;font-size:1rem;display:flex}.multipart-children{border-left:2px solid #e5e7eb;flex-direction:column;gap:1.25rem;padding-left:1rem;display:flex}.multipart-child{align-items:flex-start;gap:.75rem;display:flex}.multipart-child>.question-display,.multipart-child>.multipart-nested{flex:1;min-width:0}.child-label-badge{text-align:center;color:#1d4ed8;background:#eff6ff;border-radius:4px;flex-shrink:0;min-width:1.75rem;padding:.125rem .5rem;font-size:.8125rem;font-weight:600}.question-marks{color:#6b7280;font-size:.8125rem}.cp-root{--cp-bg:#1c1d1f;--cp-bg-secondary:#2d2f31;--cp-bg-hover:#3e4143;--cp-border:#3e4143;--cp-text:#d1d7dc;--cp-text-muted:#9ca3af;--cp-text-dim:#9ca3af;--cp-accent:var(--tuto-action);--cp-accent-hover:var(--tuto-action-hover);--cp-accent-subtle:#93c5fd;--cp-brand:var(--tuto-brand-on-dark);--cp-success:var(--tuto-success-on-dark);--cp-paper-bg:#2d2f31;--cp-paper-text:#e5e7eb;--cp-paper-border:#3e4143;--cp-canvas-bg:#383838;background:var(--cp-bg);height:100dvh;color:var(--cp-text);font-family:var(--tuto-font-sans);flex-direction:column;display:flex;position:relative;overflow:hidden}html:has(.cp-root){scrollbar-gutter:auto}.cp-root--light{--cp-bg:#fff;--cp-bg-secondary:#f9fafb;--cp-bg-hover:#f3f4f6;--cp-border:#e5e7eb;--cp-text:#1f2937;--cp-text-muted:#6b7280;--cp-text-dim:#636b78;--cp-accent:var(--tuto-action);--cp-accent-hover:var(--tuto-action-hover);--cp-accent-subtle:#2563eb;--cp-brand:var(--tuto-brand);--cp-success:var(--tuto-success);--cp-paper-bg:#fff;--cp-paper-text:#1f2937;--cp-paper-border:#e5e7eb;--cp-canvas-bg:#f6f6f6}.cp-header{background:var(--cp-bg);height:56px;color:var(--cp-text);border-bottom:1px solid var(--cp-border);z-index:10;flex-shrink:0;align-items:center;gap:.75rem;padding:0 1.5rem;display:flex}.cp-sidebar-toggle{color:var(--cp-text-muted);font-size:var(--tuto-text-xl);cursor:pointer;background:0 0;border:none;border-radius:4px;flex-shrink:0;padding:.25rem .375rem;line-height:1;transition:background-color .15s,color .15s}.cp-sidebar-toggle:hover{background:var(--cp-bg-hover);color:var(--cp-text)}.cp-sidebar-toggle:focus-visible{outline:2px solid var(--cp-accent);outline-offset:2px}.cp-theme-toggle,.cp-fullscreen-toggle{color:var(--cp-text-muted);font-size:var(--tuto-text-xl);cursor:pointer;background:0 0;border:none;border-radius:4px;flex-shrink:0;padding:.25rem .375rem;line-height:1;transition:background-color .15s,color .15s}.cp-theme-toggle:hover,.cp-fullscreen-toggle:hover{background:var(--cp-bg-hover);color:var(--cp-text)}.cp-fullscreen-toggle[aria-pressed=true]{color:var(--cp-text)}.cp-fullscreen-toggle:focus-visible{outline:2px solid var(--cp-accent);outline-offset:2px}.cp-shell:fullscreen{background:var(--cp-bg);width:100%;height:100%}.cp-fullscreen-exit{z-index:20;color:#fff;width:2.75rem;height:2.75rem;font-size:var(--tuto-text-xl);cursor:pointer;opacity:.75;background:#1414168c;border:1px solid #ffffff2e;border-radius:50%;justify-content:center;align-items:center;padding:0;transition:opacity .15s;display:inline-flex;position:absolute;top:12px;right:12px}.cp-fullscreen-exit:hover,.cp-fullscreen-exit:focus-visible{opacity:1}.cp-fullscreen-exit:focus-visible{outline:2px solid var(--cp-accent);outline-offset:2px}.cp-header-back{color:var(--cp-text-muted);font-size:var(--tuto-text-xl);cursor:pointer;background:0 0;border:none;border-radius:4px;flex-shrink:0;padding:.25rem .375rem;line-height:1;text-decoration:none;transition:background-color .15s,color .15s}.cp-header-back:hover{background:var(--cp-bg-hover);color:var(--cp-text)}.cp-header-back:focus-visible{outline:2px solid var(--cp-accent);outline-offset:2px}.cp-header-course{flex:1;align-items:center;gap:.4rem;min-width:0;display:flex;overflow:hidden}.cp-header-title{font-size:var(--tuto-text-md);color:var(--cp-text);text-overflow:ellipsis;white-space:nowrap;border-radius:4px;flex-shrink:0;max-width:40%;padding:.125rem .25rem;font-weight:600;text-decoration:none;overflow:hidden}.cp-header-title:hover{text-underline-offset:3px;text-decoration:underline}.cp-header-title:focus-visible{outline:2px solid var(--cp-accent);outline-offset:-2px}.cp-header-sep{color:var(--cp-text-dim);font-size:var(--tuto-text-base);flex-shrink:0}.cp-header-unit{font-size:var(--tuto-text-md);color:var(--cp-text-muted);text-overflow:ellipsis;white-space:nowrap;flex-shrink:0;max-width:25%;font-weight:400;overflow:hidden}.cp-header-lesson{font-size:var(--tuto-text-md);color:var(--cp-text-muted);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-weight:400;overflow:hidden}.cp-header-actions{flex-shrink:0;align-items:center;gap:.75rem;display:flex}.cp-header-link,.cp-header-admin-link{font-size:var(--tuto-text-sm);color:var(--cp-text-muted);border:1px solid var(--cp-border);white-space:nowrap;border-radius:4px;padding:.3rem .75rem;text-decoration:none;transition:background-color .15s,color .15s,border-color .15s}.cp-header-link:hover{background:var(--cp-bg-hover);color:var(--cp-text);border-color:var(--cp-text-dim)}.cp-header-admin-link{color:var(--cp-brand);border-color:var(--cp-brand)}.cp-header-admin-link:hover{background:var(--tuto-brand);color:#fff;border-color:var(--tuto-brand)}.cp-root--dark [data-cp-readable]{color:var(--cp-readable-color)!important}.cp-icon{vertical-align:-.125em;flex-shrink:0;display:inline-block}.cp-live-dot{background:#dc2626;border-radius:50%;flex-shrink:0;width:.5em;height:.5em;display:inline-block}.cp-header-logo{border-radius:4px;flex-shrink:0;align-items:center;display:inline-flex}.cp-header-logo img{width:24px;height:24px;display:block}.cp-root:not(.cp-root--light) .cp-header-logo{background:#fff;border-radius:6px;padding:2px}.cp-root:not(.cp-root--light) .cp-header-logo img{width:20px;height:20px}.cp-header-logo:focus-visible{outline:2px solid var(--cp-accent);outline-offset:2px}.cp-header-admin-icon{display:none}@media (width<=640px){.cp-header-logo{display:none}.cp-header{gap:.375rem;padding:0 .5rem}.cp-header-actions{gap:.125rem}.cp-header-course--has-item .cp-header-title,.cp-header-course--has-item .cp-header-unit,.cp-header-course--has-item .cp-header-sep{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}.cp-header-course--has-item .cp-header-title:focus-visible{clip:auto;flex-shrink:1;width:auto;height:auto;margin:0;position:static}.cp-header-course--has-item .cp-header-lesson{color:var(--cp-text);flex:1;font-weight:600}.cp-header-title{flex-shrink:1;max-width:100%}.cp-header-admin-link{align-items:center;padding:.3rem .5rem;display:inline-flex}.cp-header-admin-icon{display:inline-block}.cp-header-admin-label{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}}.cp-complete-toggle{font:inherit;font-size:var(--tuto-text-sm);color:var(--cp-text-muted);border:1px solid var(--cp-border);cursor:pointer;white-space:nowrap;background:0 0;border-radius:4px;align-items:center;gap:.375rem;padding:.3rem .75rem;transition:background-color .15s,color .15s,border-color .15s;display:inline-flex}.cp-complete-toggle:hover{background:var(--cp-bg-hover);color:var(--cp-text);border-color:var(--cp-text-dim)}.cp-complete-toggle-icon{width:.875rem;height:.875rem;font-size:var(--tuto-text-2xs);border:1.5px solid;border-radius:50%;justify-content:center;align-items:center;line-height:1;display:inline-flex}.cp-complete-toggle--done,.cp-complete-toggle--done:hover{color:var(--cp-success);border-color:var(--cp-success)}.cp-complete-toggle--done .cp-complete-toggle-icon{background:var(--cp-success);color:var(--cp-bg)}@media (width<=640px){.cp-complete-toggle-label{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}}.cp-body{flex:1;min-height:0;display:flex;overflow:hidden}.cp-sidebar-wrapper{background:var(--cp-bg);border-left:1px solid var(--cp-border);flex-direction:column;flex-shrink:0;order:2;width:360px;transition:width .2s,opacity .2s;display:flex;overflow:hidden}.cp-sidebar-backdrop{display:none}.cp-sidebar-hidden{opacity:0;pointer-events:none;width:0;overflow:hidden}.cp-sidebar{flex-direction:column;flex:1;min-height:0;padding:0;display:flex;position:relative;overflow-y:auto}.cp-sidebar-empty{color:var(--cp-text-dim);font-size:var(--tuto-text-base);padding:1rem 1.25rem;font-style:italic}.cp-toc-root,.cp-toc-items{margin:0;padding:0;list-style:none}.cp-toc-root{margin-top:.25rem;padding:0 .5rem .5rem}.cp-toc-section{margin-bottom:.125rem}.cp-toc-overview-btn{cursor:pointer;width:calc(100% - 1rem);font-size:var(--tuto-text-sm);color:var(--cp-text);text-align:left;background:0 0;border:none;border-left:3px solid #0000;border-radius:6px;align-items:center;gap:.5rem;margin:.25rem .5rem .125rem;padding:.625rem .75rem;font-weight:600;transition:background-color .12s;display:flex}.cp-toc-overview-btn:hover{background:var(--cp-bg-hover)}.cp-toc-overview-btn--selected{background:var(--cp-bg-hover);border-left-color:var(--cp-brand)}.cp-toc-section-btn{cursor:pointer;width:100%;padding:.5rem .75rem;padding-left:calc(.75rem + var(--depth,0) * 1rem);font-size:var(--tuto-text-2xs);color:var(--cp-text-dim);text-transform:uppercase;letter-spacing:.06em;text-align:left;background:0 0;border:none;align-items:center;gap:.5rem;margin-top:.5rem;font-weight:700;transition:background-color .12s;display:flex}.cp-toc-section-btn:hover{background:var(--cp-bg-hover);border-radius:6px}.cp-toc-section-btn:focus-visible{outline:2px solid var(--cp-accent);outline-offset:-2px;border-radius:6px}.cp-toc-chevron{font-size:var(--tuto-text-2xs);width:.75rem;color:var(--cp-text-muted);flex-shrink:0}.cp-toc-chevron.cp-toc-done{font-size:var(--tuto-text-xs);color:var(--cp-success);font-weight:700}.cp-toc-progress{flex-direction:column;gap:.375rem;margin:.25rem .5rem .5rem;padding:0 .75rem;display:flex}.cp-toc-progress-label{font-size:var(--tuto-text-xs);color:var(--cp-text-dim)}.cp-toc-progress-bar{background:var(--cp-border);border-radius:9999px;height:4px;overflow:hidden}.cp-toc-progress-fill{border-radius:inherit;background:var(--cp-success);height:100%;transition:width .3s}.cp-sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.cp-toc-section-title{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.cp-toc-item-btn{cursor:pointer;width:100%;padding:.5rem .75rem;padding-left:calc(.75rem + (var(--depth,0) + 1) * 1rem);font-size:var(--tuto-text-sm);color:var(--cp-text-muted);text-align:left;background:0 0;border:none;border-left:3px solid #0000;border-radius:6px;align-items:center;gap:.5rem;margin:1px 0;line-height:1.35;transition:background-color .12s,color .12s;display:flex}a.cp-toc-item-btn,a.cp-assignment-link,a.cp-toc-overview-btn{box-sizing:border-box;font-family:inherit;text-decoration:none}.cp-toc-item-btn--folder{color:var(--cp-text);font-weight:600}.cp-toc-item-btn:hover{background:var(--cp-bg-hover);color:var(--cp-text)}.cp-toc-item-btn:focus-visible{outline:2px solid var(--cp-accent);outline-offset:-2px}.cp-toc-item-selected{background:var(--cp-bg-hover);border-left-color:var(--cp-brand);color:var(--cp-text);font-weight:600}.cp-toc-item-icon{font-size:var(--tuto-text-base);flex-shrink:0}.cp-toc-item-title{text-overflow:ellipsis;white-space:nowrap;flex:1;position:relative;overflow:hidden}.cp-toc-item-type{font-size:var(--tuto-text-2xs);color:var(--cp-text-dim);background:var(--cp-bg-hover);white-space:nowrap;border-radius:4px;flex-shrink:0;padding:.125rem .375rem;font-weight:500}.cp-toc-visibility-badge{font-size:var(--tuto-text-2xs);white-space:nowrap;color:#fcd34d;background:#f59e0b1f;border:1px solid;border-radius:4px;flex-shrink:0;padding:.125rem .375rem;font-weight:600}.cp-toc-visibility-badge--hidden{color:var(--cp-text-muted);background:var(--cp-bg-hover)}.cp-root--light .cp-toc-visibility-badge{color:#92400e;background:#fef3c7}.cp-root--light .cp-toc-visibility-badge--hidden{color:#4b5563;background:#f3f4f6}.cp-assignment-meta .cp-toc-visibility-badge{margin-left:.375rem}.cp-unpublished-banner{font-size:var(--tuto-text-sm);color:var(--cp-text);background:#f59e0b1a;border-bottom:1px solid #f59e0b59;flex-shrink:0;align-items:center;gap:.5rem;padding:.5rem 1rem;display:flex}.cp-unpublished-banner--hidden{background:var(--cp-bg-secondary);border-bottom-color:var(--cp-border)}.cp-root--light .cp-unpublished-banner{background:#fffbeb;border-bottom-color:#fcd34d}.cp-root--light .cp-unpublished-banner--hidden{background:#f9fafb;border-bottom-color:#e5e7eb}.cp-sidebar--tabbed{flex-direction:column;height:100%;display:flex;overflow:hidden}.cp-sidebar-tab-panel{flex:1;min-height:0;position:relative;overflow-y:auto}.cp-sidebar-tabs{background:var(--cp-bg);border-top:1px solid var(--cp-border);flex-shrink:0;gap:.25rem;padding:.375rem .5rem;display:flex}.cp-sidebar-tab{cursor:pointer;color:var(--cp-text-muted);font-size:var(--tuto-text-2xs);background:0 0;border:none;border-radius:8px;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:.25rem;padding:.5rem .25rem;font-weight:500;line-height:1;transition:color .12s,background-color .12s;display:flex}.cp-sidebar-tab:hover{background:var(--cp-bg-hover);color:var(--cp-text)}.cp-sidebar-tab--active{background:var(--cp-bg-hover);color:var(--cp-brand)}.cp-sidebar-tab-icon{font-size:var(--tuto-text-xl);line-height:1}.cp-sidebar-tab-label{font-size:var(--tuto-text-2xs);text-transform:uppercase;letter-spacing:.04em}.cp-sidebar-tab:focus-visible{outline:2px solid var(--cp-accent);outline-offset:-2px}.cp-toc-assignment-docs{padding-left:1rem}.cp-toc-item-btn--doc{padding-left:calc(1.25rem + (var(--depth,0) + 2) * 1rem)}.cp-toc-assignment-doc-loading,.cp-toc-assignment-doc-empty{font-size:var(--tuto-text-xs);color:var(--cp-text-dim);padding:.5rem 1.25rem .5rem 2.5rem;font-style:italic}.cp-assignment-details{flex-direction:column;align-items:flex-start;max-width:600px;margin:0 auto;padding:2.5rem;display:flex}.cp-assignment-details-loading{justify-content:center;align-items:center;height:100%;display:flex}.cp-assignment-details-error{color:#f87171;font-size:var(--tuto-text-base)}.cp-assignment-details-title{font-size:var(--tuto-text-2xl);color:var(--cp-text);margin:0 0 .75rem;font-weight:700}.cp-assignment-details-desc{font-size:var(--tuto-text-base);color:var(--cp-text-muted);margin:0 0 1.5rem;line-height:1.6}.cp-assignment-details-meta{flex-direction:column;gap:.5rem;width:100%;margin-bottom:2rem;display:flex}.cp-assignment-details-row{align-items:center;gap:.5rem;display:flex}.cp-assignment-details-label{font-size:var(--tuto-text-sm);color:var(--cp-text-dim);min-width:140px;font-weight:600}.cp-assignment-details-value{font-size:var(--tuto-text-sm);color:var(--cp-text)}.cp-assignment-details-value--late{color:#fbbf24}.cp-assignment-details-submit-link{font-size:var(--tuto-text-base);color:#fff;background:var(--cp-accent);border-radius:6px;align-items:center;gap:.5rem;padding:.75rem 1.25rem;font-weight:600;text-decoration:none;transition:background .15s;display:inline-flex}.cp-assignment-details-submit-link:hover{background:var(--cp-accent-hover)}.cp-viewport[data-content-type=assignment] .cv-nav-host{align-self:stretch;width:100%;overflow:hidden auto}.cp-viewport[data-content-type=assignment] .cv-nav-host,.cp-viewport--assignment .cv-nav-host{box-sizing:border-box;flex-direction:column;flex:1 0 auto;height:auto;display:flex;overflow:visible}.cp-viewport[data-content-type=assignment] .assignment-page,.cp-viewport--assignment .assignment-page{flex:1 0 auto;align-self:stretch;margin-left:auto;margin-right:auto}.cp-viewport--assignment>*{width:100%}.cp-viewport--assignment .assignment-header .back-link{display:none}.cp-main{isolation:isolate;background:var(--cp-bg);flex-direction:column;flex:1;order:1;min-width:0;min-height:0;display:flex;position:relative;overflow:hidden}.cp-shell{flex-direction:column;flex:1;min-height:0;display:flex;position:relative}.cp-main:not(:has(.cp-shell--fullscreen)){overflow-y:auto}.cp-viewport{flex:1;min-height:0;overflow:hidden}.cp-paper-message{text-align:center;color:var(--cp-text-muted);margin:3rem auto}.cp-shell:not(.cp-shell--fullscreen) .cp-viewport{box-sizing:border-box;width:100%;max-width:960px;margin:0 auto;padding:2rem 2.5rem;overflow-y:auto}.cp-shell--fullscreen .cp-viewport{flex-direction:column;display:flex;overflow:hidden}.cp-shell--fullscreen .cp-viewport[data-content-type=youtube_video],.cp-shell--fullscreen .cp-viewport[data-content-type=vimeo_video]{background:var(--cp-canvas-bg);padding:32px;overflow:hidden}.cp-shell--fullscreen .cp-viewport[data-content-type=uploaded_presentation]{background:var(--cp-canvas-bg);padding:32px;display:block;overflow:auto}.cp-shell--fullscreen .cp-viewport[data-content-type=rich_text]{background:var(--cp-bg);display:block;overflow-y:auto}.cp-shell--fullscreen .cp-viewport[data-content-type=rich_text]:has(.rtv-format-slide){flex-direction:column;display:flex;overflow:hidden}.cp-shell--fullscreen .cp-viewport[data-content-type=rich_text]:has(>.rtv-loading,>.rtv-empty,>.rtv-error){background:var(--cp-canvas-bg);flex-direction:column;display:flex}.cp-viewport[data-content-type=rich_text] .rtv-root.rtv-format-slide .le-slide-viewer-root{box-sizing:border-box;flex:1;min-height:0;padding:32px;background:var(--cp-canvas-bg)!important}.cp-viewport[data-content-type=rich_text] .rtv-root.rtv-format-slide .le-slide-region{background:0 0;justify-content:center;align-items:center;display:flex;container-type:size;width:100%!important;height:100%!important;aspect-ratio:unset!important;padding:0!important}.cp-viewport[data-content-type=rich_text] .rtv-root.rtv-format-slide .le-slide-editor-wrap{aspect-ratio:254/143;box-sizing:border-box;max-height:none;color:var(--cp-paper-text);border:1px solid var(--le-page-border,#e5e7eb);padding:3.94%;overflow:hidden;background:var(--le-page-bg,#fff)!important;border-radius:12px!important;width:min(100cqw,177.778dvh - 263.111px,177.622cqh - 28.4196px)!important;height:auto!important;position:relative!important;inset:auto!important;box-shadow:0 2px 12px #00000017!important}.cp-shell:fullscreen .cp-viewport[data-content-type=rich_text] .rtv-root.rtv-format-slide .le-slide-editor-wrap{width:min(100cqw,177.622cqh - 28.4196px)!important}@media (width<=640px){.cp-shell--fullscreen .cp-viewport[data-content-type=rich_text]:has(.rtv-format-slide){display:block;overflow-y:auto}.cp-viewport[data-content-type=rich_text] .rtv-root.rtv-format-slide{min-height:100%}.cp-viewport[data-content-type=rich_text] .rtv-root.rtv-format-slide .le-slide-viewer-root{padding:32px}.cp-viewport[data-content-type=rich_text] .rtv-root.rtv-format-slide .le-slide-region{container-type:normal;height:auto!important}.cp-viewport[data-content-type=rich_text] .rtv-root.rtv-format-slide .le-slide-editor-wrap{padding:1rem;overflow:visible;width:100%!important}.cp-viewport[data-content-type=rich_text] .le-document-canvas,.cp-viewport[data-content-type=rich_text] .le-readonly--paginated-container{padding:12px 8px 32px!important}.cp-viewport[data-content-type=rich_text] .le-readonly--paginated-container .le-page{margin-bottom:16px!important}}.cp-shell--fullscreen .cp-viewport[data-content-type=rich_text]:has(.rtv-tiptap){background:var(--cp-canvas-bg);flex-direction:column;display:flex;overflow:hidden}.cp-viewport[data-content-type=rich_text] .rtsv-root,.cp-viewport[data-content-type=rich_text] .rtsv-slide-region{background:var(--cp-canvas-bg)}.cp-viewport[data-content-type=rich_text] .rtsv-slide-region{padding:32px}.cp-viewport[data-content-type=rich_text] .rtsv-page-card{aspect-ratio:16/9;background:var(--cp-paper-bg);width:100%;max-width:calc(177.778dvh - 263.111px);color:var(--cp-paper-text);border:1px solid var(--cp-paper-border);border-radius:12px;margin:auto 0;padding:4.5% 6% max(4.5%,3.5rem);position:relative;box-shadow:0 2px 12px #00000017}.cp-viewport[data-content-type=rich_text] .rtsv-slide-content .ProseMirror,.cp-viewport[data-content-type=rich_text] .rtsv-slide-content .ProseMirror :is(h1,h2,h3,h4){color:var(--cp-paper-text)}.cp-viewport[data-content-type=rich_text] .rtsv-slide-content .ProseMirror blockquote{color:var(--cp-text-muted)}@media (width>=768px){.cp-viewport[data-content-type=rich_text] .rtsv-slide-content .ProseMirror :is(h1,h2,h3,h4){margin-bottom:.35em}.cp-viewport[data-content-type=rich_text] .rtsv-slide-content .ProseMirror h1{font-size:1.75em}.cp-viewport[data-content-type=rich_text] .rtsv-slide-content .ProseMirror h2{font-size:1.375em}.cp-viewport[data-content-type=rich_text] .rtsv-slide-content .ProseMirror h3{font-size:1.125em}}.cp-shell:fullscreen .cp-viewport[data-content-type=rich_text] .rtsv-page-card{max-width:calc(177.778dvh - 199.111px)}.rtsv-corner-controls,.le-slide-corner-controls{z-index:2;gap:.5rem;display:flex;position:absolute;bottom:12px;right:12px}.cp-slide-fullscreen{color:#fff;-webkit-backdrop-filter:blur(4px);cursor:pointer;opacity:0;background:#1414168c;border:1px solid #ffffff2e;border-radius:8px;justify-content:center;align-items:center;width:2.25rem;height:2.25rem;padding:0;font-size:1.125rem;transition:opacity .15s,background .15s;display:inline-flex}.cp-slide-fullscreen:hover{background:#141416d9}.rtsv-page-card:hover .cp-slide-fullscreen,.le-slide-editor-wrap:hover .cp-slide-fullscreen,.cp-slide-fullscreen:focus-visible{opacity:1}.cp-slide-fullscreen:focus-visible{outline-offset:2px;outline:2px solid #2563eb}@media (hover:none){.cp-slide-fullscreen{opacity:1}}.cp-viewport[data-content-type=rich_text] .le-editor-body{background:var(--cp-bg);padding:32px}.cp-viewport[data-content-type=rich_text] .le-editor-inner:not(.le-editor-paginated),.cp-viewport[data-content-type=rich_text] .cv-inline-content{background:var(--cp-paper-bg);color:var(--cp-paper-text);border:1px solid var(--cp-paper-border);border-radius:12px;box-shadow:0 2px 12px #00000017}.cp-viewport[data-content-type=uploaded_presentation] .cv-pdf,.cp-viewport[data-content-type=uploaded_presentation] .cv-pdf--presentation,.cp-viewport[data-content-type=uploaded_presentation] .cv-pdf-canvas-slide{background:var(--cp-bg)}.cp-viewport[data-content-type=uploaded_presentation] .cv-pdf-canvas-slide{box-sizing:border-box}.cp-viewport[data-content-type=uploaded_presentation] .pdf-canvas-wrap{border:1px solid #e5e7eb;border-radius:12px;display:inline-flex;overflow:hidden;box-shadow:0 2px 12px #00000017}.cp-viewport[data-content-type=uploaded_presentation] .pdf-canvas{display:block}.pdf-canvas-wrap--fill-width{align-items:flex-start}.pdf-canvas-wrap--fill-height,.pdf-canvas-wrap--fullscreen{align-items:center}:is(.cp-shell--fullscreen .cp-viewport[data-content-type=uploaded_presentation]:has(.pdf-canvas-wrap--fill-height),.cp-shell--fullscreen .cp-viewport[data-content-type=uploaded_presentation]:has(.pdf-canvas-wrap--fullscreen)){overflow-y:hidden}.rtv-format-slide .le-readonly--paginated-container,.rtv-format-portrait .le-readonly--paginated-container{min-height:100%}.cp-shell--fullscreen .cp-viewport[data-content-type=exam],.cp-shell--fullscreen .cp-viewport[data-content-type=pool_exam],.cp-shell--fullscreen .cp-viewport[data-content-type=prebuilt_exam]{--cp-content-width:960px;background:var(--cp-canvas-bg);display:block;overflow-y:auto}.cp-shell--fullscreen .cp-viewport:not([data-content-type=youtube_video]):not([data-content-type=vimeo_video]):not([data-content-type=uploaded_presentation]):not([data-content-type=rich_text]):not([data-content-type=exam]):not([data-content-type=pool_exam]):not([data-content-type=prebuilt_exam]):not(.cp-viewport--assignment):not(.cp-viewport--paper){box-sizing:border-box;width:100%;max-width:960px;margin-left:auto;margin-right:auto;padding:2rem 2.5rem;overflow-y:auto}.cp-root{--cp-canvas-inset-y:32px;--cp-canvas-inset-x:32px;--cp-card-padding:2rem 2.5rem}@media (width<=640px){.cp-root{--cp-canvas-inset-y:12px;--cp-canvas-inset-x:8px;--cp-card-padding:1.25rem 1rem}}.cp-viewport[data-content-type=exam] .ev-slide-region>*,.cp-viewport[data-content-type=pool_exam] .ev-slide-region>*,.cp-viewport[data-content-type=prebuilt_exam] .ev-slide-region>*,.cp-viewport[data-content-type=assignment] .assignment-page,.cp-viewport--assignment .assignment-page{max-width:var(--cp-content-width,960px);background:var(--cp-paper-bg);width:100%;color:var(--cp-paper-text);border:1px solid var(--cp-paper-border);padding:var(--cp-card-padding);box-sizing:border-box;border-radius:12px;box-shadow:0 2px 12px #00000017}.cp-shell--fullscreen .cp-viewport--paper{background:var(--cp-canvas-bg);padding:var(--cp-canvas-inset-y) var(--cp-canvas-inset-x);display:block;overflow:hidden auto}.cp-viewport--paper .le-paged-fit .le-readonly--paginated-container{padding:0!important}.cp-viewport--paper .le-paged-fit .le-page:last-child{margin-bottom:0!important}.cp-shell--fullscreen .cp-viewport.cp-viewport--assignment,.cp-shell--fullscreen .cp-viewport[data-content-type=assignment]{--cp-content-width:960px;background:var(--cp-canvas-bg);padding:var(--cp-canvas-inset-y) var(--cp-canvas-inset-x);flex-direction:column;display:flex;overflow:hidden auto}.cp-viewport--assignment{background:var(--cp-canvas-bg)}.cp-viewport[data-content-type=exam] .ev-root,.cp-viewport[data-content-type=pool_exam] .ev-root,.cp-viewport[data-content-type=prebuilt_exam] .ev-root{background:var(--cp-canvas-bg);color:#1f2937;min-height:100%}.cp-viewport[data-content-type=exam] .ev-slide-region,.cp-viewport[data-content-type=pool_exam] .ev-slide-region,.cp-viewport[data-content-type=prebuilt_exam] .ev-slide-region{background:var(--cp-canvas-bg);padding:var(--cp-canvas-inset-y) var(--cp-canvas-inset-x);overflow:visible}.cp-viewport[data-content-type=exam] .ev-slide-region>*,.cp-viewport[data-content-type=pool_exam] .ev-slide-region>*,.cp-viewport[data-content-type=prebuilt_exam] .ev-slide-region>*{min-height:calc(100vh - 56px - 2 * var(--cp-canvas-inset-y) - var(--cp-counter-band,0px));min-height:calc(100dvh - 56px - 2 * var(--cp-canvas-inset-y) - var(--cp-counter-band,0px));flex-direction:column;justify-content:flex-start;display:flex;overflow:visible}:is(.cp-shell--counter:has(>.cp-viewport[data-content-type=exam]),.cp-shell--counter:has(>.cp-viewport[data-content-type=pool_exam]),.cp-shell--counter:has(>.cp-viewport[data-content-type=prebuilt_exam]),.cp-shell--counter:has(>.cp-viewport[data-content-type=uploaded_presentation])){--cp-counter-band:2.75rem;background:var(--cp-canvas-bg)}.cp-shell--counter>.cp-viewport{margin-bottom:var(--cp-counter-band,0px)}.cp-viewport[data-content-type=exam] .ev-question-slide,.cp-viewport[data-content-type=pool_exam] .ev-question-slide,.cp-viewport[data-content-type=prebuilt_exam] .ev-question-slide{justify-content:space-between}@media (width<=640px){.cp-shell:has(>.cp-nav:not([aria-hidden=true])){--cp-counter-band:3rem;background:var(--cp-canvas-bg)}.cp-shell:has(>.cp-nav:not([aria-hidden=true]))>.cp-viewport{margin-bottom:var(--cp-counter-band)}}.cp-shell--fullscreen .cp-viewport[data-content-type=youtube_video]>*,.cp-shell--fullscreen .cp-viewport[data-content-type=vimeo_video]>*,.cp-shell--fullscreen .cp-viewport[data-content-type=uploaded_presentation]>*{flex:1;min-height:0}.cp-viewport[data-content-type=youtube_video] .cv-video-container,.cp-viewport[data-content-type=vimeo_video] .cv-video-container{aspect-ratio:16/9;width:100%;height:auto;max-height:calc(100dvh - 148px)}.cp-content-nav{border-top:1px solid var(--cp-bg-hover);flex-shrink:0;justify-content:space-between;align-items:stretch;gap:1rem;padding:.75rem 1rem;display:flex}.cp-content-empty{flex:1;justify-content:center;align-items:center;display:flex}.cp-empty-hint{text-align:center;flex-direction:column;align-items:center;gap:.75rem;display:flex}.cp-empty-icon{opacity:.4;font-size:3rem}.cp-empty-hint p{font-size:var(--tuto-text-lg);color:var(--cp-text-dim);margin:0}.cp-content-header{border-bottom:1px solid var(--cp-bg-hover);flex-shrink:0;margin-bottom:1.5rem;padding:2rem 2.5rem 1.25rem}.cp-content-meta{margin-bottom:.625rem}.cp-content-type-badge{font-size:var(--tuto-text-xs);color:var(--cp-text-muted);background:var(--cp-bg-secondary);border:1px solid var(--cp-bg-hover);border-radius:9999px;align-items:center;gap:.3rem;padding:.2rem .6rem;display:inline-flex}.cp-content-title{font-size:var(--tuto-text-2xl);color:var(--cp-text);margin:0 0 .5rem;font-weight:700;line-height:1.3}.cp-content-description{font-size:var(--tuto-text-md);color:var(--cp-text-muted);margin:0;line-height:1.6}.cp-content-body{min-height:200px}.cp-content-body--video{padding:32px}.cp-content-body--video .cv-video-container{aspect-ratio:16/9;width:100%;height:auto;max-height:calc(100vh - 88px)}.cp-content-nav{border-top:1px solid var(--cp-bg-hover);justify-content:space-between;align-items:stretch;gap:1rem;margin-top:2.5rem;padding-top:1.5rem;display:flex}.cp-nav-btn{background:var(--cp-bg-secondary);border:1px solid var(--cp-bg-hover);cursor:pointer;text-align:left;max-width:45%;font-size:var(--tuto-text-base);color:var(--cp-text);border-radius:4px;align-items:center;gap:.75rem;padding:.875rem 1.125rem;transition:background-color .15s,border-color .15s;display:flex}.cp-nav-btn:hover{background:var(--cp-bg-hover);border-color:var(--cp-text-dim)}.cp-nav-btn:focus-visible{outline:2px solid var(--cp-accent);outline-offset:2px}.cp-nav-next{text-align:right;flex-direction:row-reverse;margin-left:auto}.cp-nav-label{flex-direction:column;min-width:0;display:flex}.cp-nav-hint{font-size:var(--tuto-text-2xs);text-transform:uppercase;letter-spacing:.06em;color:var(--cp-text-dim);margin-bottom:.125rem}.cp-nav-title{font-size:var(--tuto-text-base);color:var(--cp-text);text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.cp-loading{background:var(--cp-bg);height:100vh;color:var(--cp-text-muted);font-size:var(--tuto-text-md);justify-content:center;align-items:center;gap:.75rem;display:flex}.cp-spinner{border:3px solid var(--cp-bg-hover);border-top-color:var(--cp-accent);border-radius:50%;width:1.75rem;height:1.75rem;animation:.7s linear infinite cp-spin}@keyframes cp-spin{to{transform:rotate(360deg)}}.cp-error-page{background:var(--cp-bg);text-align:center;height:100vh;color:var(--cp-text);flex-direction:column;justify-content:center;align-items:center;gap:1rem;padding:2rem;display:flex}.cp-error-page h2{color:#f87171;margin:0}.cp-error-page p{color:var(--cp-text-muted);margin:0}.cp-error-title{font-size:var(--tuto-text-2xl);color:#f87171;margin:0;font-weight:700}.cp-error-message{font-size:var(--tuto-text-lg);color:var(--cp-text);max-width:480px;margin:0}.cp-error-hint{font-size:var(--tuto-text-base);color:var(--cp-text-muted);max-width:480px;margin:0}.cp-error-link{color:var(--cp-accent-subtle);font-size:var(--tuto-text-base);border:1px solid var(--cp-accent);background:var(--cp-bg-secondary);border-radius:4px;padding:.375rem .875rem;text-decoration:none;transition:background-color .15s}.cp-error-link:hover{background:var(--cp-bg-hover)}.cp-error-actions{flex-wrap:wrap;justify-content:center;gap:.75rem;display:flex}.cp-error-link--primary{background:var(--cp-accent);color:#fff;font-weight:600}.cp-error-link--primary:hover{background:var(--cp-accent);filter:brightness(1.1)}.cp-deprecated-notice{text-align:center;color:var(--cp-text);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:1rem;padding:3rem 2rem;display:flex}.cp-deprecated-notice__icon{font-size:var(--tuto-text-4xl);line-height:1}.cp-deprecated-notice__message{font-size:var(--tuto-text-lg);color:var(--cp-text-muted);background:var(--cp-bg-secondary);border:1px solid var(--cp-border);border-radius:8px;max-width:420px;margin:0;padding:.875rem 1.25rem;line-height:1.6}@media (width<=767px){.cp-sidebar-wrapper{z-index:20;max-width:calc(100vw - 48px);position:fixed;inset:56px 0 0 auto;box-shadow:-2px 0 12px #0006}.cp-sidebar-hidden{width:0;box-shadow:none}.cp-sidebar-backdrop{z-index:19;background:#0006;display:block;position:fixed;inset:56px 0 0}.cp-content-pane{padding:1.25rem 1rem 3rem}}.cp-toc-item-btn--locked{color:#767676;opacity:.85}.cp-toc-item-btn--locked:hover{color:#595959}.cp-lock-icon{font-size:var(--tuto-text-base);vertical-align:middle;line-height:inherit;flex-shrink:0;margin-right:.375rem;display:inline-block}.cp-unlock-criteria-panel{background:var(--cp-paper-bg);border:1px solid var(--cp-paper-border);text-align:center;border-radius:12px;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:1rem;width:100%;max-width:960px;padding:3rem 2rem;display:flex;box-shadow:0 1px 3px #0000000f}.cp-unlock-criteria-panel:before{content:"🔒";font-size:var(--tuto-text-4xl);margin-bottom:.25rem;line-height:1}.cp-unlock-criteria-panel h2{font-size:var(--tuto-text-xl);color:#1f2937;margin:0 0 .5rem;font-weight:600}.cp-unlock-criteria-panel__message{font-size:var(--tuto-text-md);color:#4b5563;background:#f0f9ff;border:1px solid #bae6fd;border-radius:8px;width:100%;margin:0;padding:.875rem 1.25rem;line-height:1.6}.cp-unlock-criteria-panel__both-conditions{flex-direction:column;gap:.5rem;display:flex}.cp-unlock-criteria-panel__both-label{font-size:var(--tuto-text-base);color:#92400e;background:#fef3c7;border:1px solid #f59e0b;border-radius:6px;margin:0;padding:.5rem .875rem;font-weight:600}.cp-canvas{background:var(--cp-bg-secondary);border:1px solid var(--cp-border);box-sizing:border-box;border-radius:12px;width:100%;padding:2.5rem 3rem;box-shadow:0 2px 8px #00000014}.cp-root--light .cp-canvas{background:#fff;border-color:#e5e7eb;box-shadow:0 2px 12px #00000017}.cp-canvas--wide{max-width:960px}.cp-canvas--narrow{max-width:640px}.cp-canvas-viewport{box-sizing:border-box;background:var(--cp-canvas-bg);justify-content:center;align-items:flex-start;width:100%;min-height:100%;padding:2rem 2.5rem;display:flex;overflow-y:auto}@media (width<=640px){.cp-canvas-viewport{padding:1rem}.cp-canvas{border-radius:8px;padding:1.5rem 1.25rem}}.cp-intro-content{flex-direction:column;gap:1.5rem;min-height:calc(100dvh - 120px);display:flex}.cp-intro-title{font-size:var(--tuto-text-3xl);color:var(--cp-text);margin:0;font-weight:700;line-height:1.2}.cp-intro-description{font-size:var(--tuto-text-lg);color:var(--cp-text-muted);margin:0;line-height:1.65}.cp-intro-meta{background:var(--cp-bg-secondary);border:1px solid var(--cp-border);border-radius:10px;flex-wrap:wrap;gap:1rem 2rem;padding:1rem 1.25rem;display:flex}.cp-intro-meta-item{flex-direction:column;gap:2px;display:flex}.cp-intro-meta-label{font-size:var(--tuto-text-xs);text-transform:uppercase;letter-spacing:.05em;color:var(--cp-text-dim);font-weight:600}.cp-intro-meta-value{font-size:var(--tuto-text-md);color:var(--cp-text);font-weight:500}.cp-intro-sections{flex-direction:column;gap:.75rem;display:flex}.cp-intro-sections-title{font-size:var(--tuto-text-lg);color:var(--cp-text);margin:0;font-weight:600}.cp-intro-sections-list{flex-direction:column;gap:.375rem;margin:0;padding:0;list-style:none;display:flex}.cp-intro-section-item{background:var(--cp-bg-secondary);border:1px solid var(--cp-border);font-size:var(--tuto-text-md);border-radius:8px;justify-content:space-between;align-items:center;gap:1rem;padding:.625rem .875rem;display:flex}.cp-intro-section-name{color:var(--cp-text);font-weight:500}.cp-intro-section-count{font-size:var(--tuto-text-sm);color:var(--cp-text-muted);white-space:nowrap;flex-shrink:0}.cp-intro-complete{font-size:var(--tuto-text-md);color:var(--cp-success);align-items:center;gap:.5rem;margin:0;font-weight:600;display:flex}.cp-intro-complete-icon{background:var(--cp-success);width:1.25rem;height:1.25rem;color:var(--cp-bg);font-size:var(--tuto-text-xs);border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.cp-intro-start-btn{background:var(--cp-accent);color:#fff;font-size:var(--tuto-text-lg);cursor:pointer;border:none;border-radius:8px;align-self:flex-start;padding:.75rem 2rem;font-weight:600;transition:background .15s}.cp-intro-start-btn:hover{background:var(--cp-accent-hover)}.cp-intro-start-btn:focus-visible{outline:2px solid var(--cp-accent);outline-offset:3px}.cp-intro-empty{color:var(--cp-text-muted);font-size:var(--tuto-text-md);margin:0}@media (width<=640px){.cp-course-intro{padding:1rem}.cp-intro-content{padding:1.5rem 1.25rem}.cp-intro-title{font-size:var(--tuto-text-2xl)}}.cp-assignments-section{border-top:1px solid var(--cp-bg-hover);margin-top:.5rem}.cp-assignments-section-btn{background:var(--cp-bg-secondary);cursor:pointer;width:100%;font-size:var(--tuto-text-sm);color:var(--cp-text);text-align:left;border:none;border-left:4px solid #0000;align-items:center;gap:.5rem;padding:.875rem 1.25rem .875rem calc(1.25rem - 4px);font-weight:700;transition:background-color .12s;display:flex}.cp-assignments-section-btn:hover{background:var(--cp-bg-hover)}.cp-assignments-section-btn:focus-visible{outline:2px solid var(--cp-accent);outline-offset:-2px}.cp-assignments-count{font-size:var(--tuto-text-2xs);color:var(--cp-text-muted);background:var(--cp-bg-hover);border-radius:9999px;margin-left:auto;padding:.125rem .5rem;font-weight:600}.cp-assignments-list{margin:0;padding:0;list-style:none}.cp-assignment-link{color:var(--cp-text-muted);cursor:pointer;text-align:left;width:100%;font:inherit;background:0 0;border:none;border-left:3px solid #0000;border-radius:6px;align-items:flex-start;gap:.75rem;margin:1px 0;padding:.5rem .75rem;text-decoration:none;transition:background-color .12s,color .12s;display:flex}.cp-assignment-link:hover{background:var(--cp-bg-hover);color:var(--cp-text)}.cp-assignment-link:focus-visible{outline:2px solid var(--cp-accent);outline-offset:-2px}.cp-assignment-link.cp-toc-item-selected{background:var(--cp-bg-hover);border-left-color:var(--cp-brand);color:var(--cp-text);font-weight:600}.cp-assignments-list>.cp-assignment-item>.cp-assignment-link,.cp-assignments-list>.cp-assignment-item>.cp-assignment-group-header{padding-left:2.5rem}.cp-assignments-list--nested>.cp-assignment-item>.cp-assignment-link{padding-left:3rem}.cp-assignment-group-header{color:var(--cp-text);font-size:var(--tuto-text-sm);-webkit-user-select:none;user-select:none;align-items:flex-start;gap:.75rem;padding:.75rem 1.25rem .375rem;font-weight:500;display:flex}.cp-assignments-list--nested{margin:0;padding:0;list-style:none}.cp-assignment-icon{font-size:var(--tuto-text-base);flex-shrink:0;margin-top:.1rem}.cp-assignment-info{flex-direction:column;flex:1;gap:.25rem;min-width:0;display:flex}.cp-assignment-title{font-size:var(--tuto-text-sm);color:var(--cp-text);text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.cp-assignment-meta{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.cp-assignment-status{font-size:var(--tuto-text-2xs);text-transform:uppercase;letter-spacing:.04em;border-radius:3px;padding:.125rem .375rem;font-weight:600}.cp-assignment-status--upcoming{color:#fbbf24;background:#fbbf241f}.cp-assignment-status--open{color:#34d399;background:#34d3991f}.cp-assignment-status--closed{color:var(--cp-text-muted);background:#9ca3af1f}.cp-assignment-status--draft{color:#a78bfa;background:#a78bfa24}.cp-root--light .cp-assignment-status--draft{color:#6d28d9}.cp-assignment-due,.cp-assignment-opens{font-size:var(--tuto-text-2xs);color:var(--cp-text-dim)}.cp-viewport--assignment .assignment-header,.cp-viewport[data-content-type=assignment] .assignment-header{flex-direction:column;gap:1.25rem;padding-top:0;display:flex}.cp-viewport--assignment .assignment-header:before,.cp-viewport[data-content-type=assignment] .assignment-header:before{content:"";background-color:var(--cp-accent-subtle);width:2.5rem;height:2.5rem;display:block;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect width='8' height='4' x='8' y='2' rx='1' ry='1'/%3E%3Cpath d='M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2'/%3E%3Cpath d='M12 11h4'/%3E%3Cpath d='M12 16h4'/%3E%3Cpath d='M8 11h.01'/%3E%3Cpath d='M8 16h.01'/%3E%3C/svg%3E") 50%/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect width='8' height='4' x='8' y='2' rx='1' ry='1'/%3E%3Cpath d='M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2'/%3E%3Cpath d='M12 11h4'/%3E%3Cpath d='M12 16h4'/%3E%3Cpath d='M8 11h.01'/%3E%3Cpath d='M8 16h.01'/%3E%3C/svg%3E") 50%/contain no-repeat}.cp-viewport--assignment .assignment-header h1,.cp-viewport[data-content-type=assignment] .assignment-header h1{color:var(--cp-text);margin:0;font-size:clamp(1.75rem,3.5vw,2.5rem);font-weight:700;line-height:1.2}.cp-viewport--assignment .assignment-description{color:var(--cp-text-muted)}.cp-viewport--assignment .submission-window,.cp-viewport--assignment .assignment-documents,.cp-viewport--assignment .dropbox-card,.cp-viewport--assignment .my-submissions-section{background-color:var(--cp-bg-secondary);border-color:var(--cp-border)}.cp-viewport--assignment .submission-window h2,.cp-viewport--assignment .assignment-documents h2,.cp-viewport--assignment .assignment-dropboxes h2,.cp-viewport--assignment .my-submissions-section h2,.cp-viewport--assignment .dropbox-name{color:var(--cp-text)}.cp-viewport--assignment .window-date-label,.cp-viewport--assignment .document-size,.cp-viewport--assignment .dropbox-description,.cp-viewport--assignment .dropbox-submission-status,.cp-viewport--assignment .my-submission-status{color:var(--cp-text-muted)}.cp-viewport--assignment .window-date-value,.cp-viewport--assignment .document-name,.cp-viewport--assignment .my-submission-dropbox-name{color:var(--cp-text)}.cp-viewport--assignment .document-item,.cp-viewport--assignment .my-submission-item{background-color:var(--cp-bg-hover);border-color:var(--cp-border)}.cp-viewport--assignment .document-page-btn{background-color:var(--cp-bg-secondary);border-color:var(--cp-border);color:var(--cp-text)}.cp-viewport--assignment .document-page-btn:hover:not(:disabled){background-color:var(--cp-bg-hover)}.cp-viewport--assignment .document-page-info{color:var(--cp-text-muted)}.cp-viewport--assignment .upload-area{border-color:var(--cp-border);background-color:var(--cp-bg-secondary)}.cp-viewport--assignment .document-viewer{background-color:var(--cp-bg-secondary);border-color:var(--cp-border)}.cp-root--dark .cp-unlock-criteria-panel h2{color:var(--cp-text)}.cp-root--dark .cp-unlock-criteria-panel__message{color:var(--cp-text-muted);background:var(--cp-bg-hover);border-color:var(--cp-border)}.cp-root--dark .cp-unlock-criteria-panel__both-label{color:#fbbf24;background:#fbbf241f;border-color:#fbbf244d}.cp-root--light .ev-root{background:var(--cp-bg);color:var(--cp-text)}.cp-root--light .ev-intro-title{color:var(--cp-text)}.cp-root--light .ev-intro-desc{color:var(--cp-text-muted)}.cp-root--light .ev-intro-meta-item{background:var(--cp-bg-secondary);border-color:var(--cp-border)}.cp-root--light .ev-intro-meta-label{color:var(--cp-text-dim)}.cp-root--light .ev-intro-meta-value{color:var(--cp-text)}.cp-root--light .ev-intro-progress-note{color:#2563eb;background:#2563eb14;border-color:#2563eb33}.cp-root--light .ev-empty{color:var(--cp-text-dim)}.cp-root--light .ev-q-number{color:var(--cp-text-muted)}.cp-root--light .ev-q-points{color:var(--cp-text-dim);background:var(--cp-bg-secondary);border-color:var(--cp-border)}.cp-root--light .ev-q-text{color:var(--cp-text)}.cp-root--light .ev-option{background:var(--cp-bg-secondary);border-color:var(--cp-border);color:var(--cp-text)}.cp-root--light .ev-option:hover:not(:has(input:disabled)){background:var(--cp-bg-hover);border-color:var(--cp-text-dim)}.cp-root--light .ev-option--selected{background:#2563eb0f;border-color:#2563eb}.cp-root--light .ev-option--correct-answer{background:#4ade8040;border-color:#4ade80}.cp-root--light .ev-option--wrong-pick{background:#f8717140;border-color:#f87171}.cp-root--light .ev-q-result-badge--correct{color:#16a34a;background:#dcfce7;border-color:#86efac}.cp-root--light .ev-q-result-badge--incorrect{color:#dc2626;background:#fee2e2;border-color:#fca5a5}.cp-root--light .ev-back-to-intro-btn{color:#fff;background:#2563eb;border-color:#2563eb}.cp-root--light .ev-back-to-intro-btn:hover{background:#1d4ed8;border-color:#1d4ed8}.cp-root--light .ev-inline-nav-btn{color:#374151;background:#fff;border-color:#d1d5db}.cp-root--light .ev-inline-nav-btn--primary{color:#fff;background:#2563eb;border-color:#2563eb}.cp-root--light .ev-inline-nav-btn--primary:hover:not(:disabled){background:#1d4ed8;border-color:#1d4ed8}.cp-root--light .ev-inline-nav-btn:hover:not(:disabled){background:#f3f4f6;border-color:#9ca3af}.cp-root--light .ev-answer-review-table-wrap{border-color:#e5e7eb}.cp-root--light .ev-answer-review-table th{color:#374151;background:#f9fafb;border-bottom-color:#e5e7eb}.cp-root--light .ev-answer-review-table td{color:#1f2937;border-bottom-color:#f3f4f6}.cp-root--light .ev-answer-review-unanswered{background:#eab3080f}.cp-root--light .ev-answer-review-badge--answered{color:#16a34a;background:#dcfce7}.cp-root--light .ev-answer-review-badge--unanswered{color:#a16207;background:#fef9c3}.cp-root--light .ev-short-answer-input{background:var(--cp-bg-secondary);border-color:var(--cp-border);color:var(--cp-text)}.cp-root--light .ev-short-answer-input:disabled{background:var(--cp-bg-hover);color:var(--cp-text-dim)}.cp-root--light .ev-explanation{background:var(--cp-bg-secondary);color:var(--cp-text-muted)}.cp-root--light .ev-summary-title{color:var(--cp-text)}.cp-root--light .ev-summary-desc{color:var(--cp-text-muted)}.cp-root--light .ev-summary-meta{color:var(--cp-text-dim)}.cp-root--light .ev-summary-answered{color:var(--cp-text-muted)}.cp-root--light .ev-summary-hint{color:var(--cp-text-dim)}.cp-root--light .ev-nav{border-top-color:var(--cp-border);background:#ffffffd9}.cp-root--light .ev-nav-btn{color:var(--cp-text);border-color:var(--cp-border);background:#f9fafbcc}.cp-root--light .ev-nav-btn:hover{background:var(--cp-accent);color:#fff;border-color:var(--cp-accent)}.cp-root--light .ev-nav-progress{color:var(--cp-text-muted)}.cp-root--light .ev-nav-item-hint{color:var(--cp-text-dim)}.cp-root--light .ev-nav-item-title{color:var(--cp-text)}.cp-root--light .ev-modal{border-color:var(--cp-border);background:#fff}.cp-root--light .ev-modal-title{color:var(--cp-text)}.cp-root--light .ev-modal-body{color:var(--cp-text-muted)}.cp-root--light .ev-modal-leave-btn{border-color:var(--cp-border);color:var(--cp-text-muted)}.cp-root--light .ev-modal-leave-btn:hover{background:var(--cp-bg-hover);color:var(--cp-text)}.cp-root--light .ev-review-overlay{background:var(--cp-bg);color:var(--cp-text)}.cp-root--light .ev-review-close-btn{border-color:var(--cp-border);color:var(--cp-text-muted)}.cp-root--light .ev-review-close-btn:hover{background:var(--cp-bg-hover);color:var(--cp-text)}.cp-root--light .ev-review-progress{color:var(--cp-text-muted)}.cp-root--light .ev-review-progress-bar{background:var(--cp-border)}.cp-root--light .ev-review-tally{color:var(--cp-text-muted)}.cp-root--light .ev-review-opt{border-color:var(--cp-border);background:var(--cp-bg-secondary)}.cp-root--light .ev-review-question-card.ev-review-correct{background:#f0fdf4;border-color:#86efac}.cp-root--light .ev-review-question-card.ev-review-incorrect{background:#fef2f2;border-color:#fca5a5}.cp-root--light .ev-review-explanation{color:#1d4ed8;background:#eff6ff;border-left-color:#3b82f6}.cp-root--light .ev-review-nav-btn{background:var(--cp-bg-secondary);color:var(--cp-text);border-color:var(--cp-border)}.cp-root--light .ev-review-nav-btn:hover:not(:disabled){background:var(--cp-bg-hover)}.cp-root--light .ev-review-outcomes{border-top-color:var(--cp-border)}.cp-root--light .ev-review-outcomes-title{color:var(--cp-text-dim)}.cp-root--light .ev-review-outcome-item{color:#1e40af;background:#eff6ff}.cp-root--light .ev-review-outcome-ref{color:#2563eb}.cp-root--light .cv-loading,.cp-root--light .cv-loading-text{color:var(--cp-text-muted)}.cp-root--light .cv-spinner{border-color:var(--cp-border);border-top-color:var(--cp-accent)}.cp-root--light .cv-legacy-google{background:var(--cp-bg)}.cp-root--light .rtsv-slide-content .ProseMirror a{color:var(--cp-accent)}.cp-root--light .rtsv-empty{color:var(--cp-text-dim)}.rtv-root{flex-direction:column;flex:1;min-height:0;display:flex}.rtv-root.rtv-format-portrait,.rtv-root.rtv-format-continuous{background:var(--cp-bg);min-height:100%}.rtv-root.rtv-format-portrait .le-slide-viewer-root,.rtv-root.rtv-format-continuous .le-slide-viewer-root{background:var(--cp-bg);flex-direction:column;flex:1;min-height:0;display:flex;position:relative}.rtv-root.rtv-format-portrait .le-slide-region,.rtv-root.rtv-format-continuous .le-slide-region{flex-direction:column;flex:1;align-items:center;min-height:0;padding:32px;display:flex;overflow-y:auto;width:100%!important;aspect-ratio:unset!important;height:auto!important}.rtv-root.rtv-format-portrait .le-slide-editor-wrap,.rtv-root.rtv-format-continuous .le-slide-editor-wrap{background:var(--cp-paper-bg);color:var(--cp-paper-text);border:1px solid var(--cp-paper-border);box-sizing:border-box;border-radius:12px;flex-shrink:0;width:100%;max-width:816px;padding:3.5rem 4rem;box-shadow:0 2px 12px #00000017;font-size:var(--tuto-text-lg)!important}.rtv-format-slide .le-slide-viewer-root{background:var(--cp-paper-bg);flex-direction:column;width:100%;height:100%;display:flex;position:relative}.rtv-format-slide .le-slide-region{background:var(--cp-paper-bg);margin:0;padding:0;position:relative;overflow:hidden;width:100%!important;height:100%!important;aspect-ratio:unset!important}.rtv-format-slide .le-slide-editor-wrap{box-sizing:border-box;background:var(--cp-paper-bg);padding:0;inset:0;overflow:hidden;position:absolute!important}.rtv-format-slide .le-content-editable{min-height:unset;padding:0}.rtv-root.rtv-format-slide .le-slide-viewer-root{background:#2d2f31;flex-direction:column;flex:1;min-height:0;display:flex;position:relative}.rtv-root.rtv-format-slide .le-slide-region{flex:1;justify-content:center;align-items:center;height:100%;min-height:0;padding:32px;display:flex;overflow:hidden;width:auto!important;aspect-ratio:unset!important}.rtv-root.rtv-format-slide .le-slide-editor-wrap{background:var(--cp-paper-bg);color:var(--cp-paper-text);box-sizing:border-box;aspect-ratio:16/9;border-radius:2px;width:auto;height:100%;max-height:100%;overflow:hidden;box-shadow:0 4px 32px #00000080}.rtv-root .le-content-editable{color:var(--cp-paper-text);outline:none;line-height:1.65}.cp-root--light .rtv-root .le-slide-editor-wrap{background:#fff;box-shadow:0 2px 12px #00000017}.cp-root--light .rtsv-progress-text{color:var(--cp-text-muted)}.cp-root--light .slide-viewer{background:var(--cp-bg-secondary)}.cp-root--light .slide-viewer-empty{background:var(--cp-bg-hover)}.cp-root--light .sv-empty-message{color:var(--cp-text-muted)}.cp-root--light .sv-page-image{box-shadow:0 4px 16px #0000001a}.cp-viewport{--le-page-bg:var(--cp-paper-bg);--le-page-border:var(--cp-paper-border)}.cp-viewport .le-page{background:var(--cp-paper-bg)}.cp-root--dark .cp-viewport .btn-secondary{color:var(--cp-paper-text);background:0 0;border-color:#4b5563}.cp-root--dark .cp-viewport .btn-secondary:hover:not(:disabled){background:var(--cp-bg-hover)}.cp-root--dark .ev-timer{color:var(--cp-paper-text);background:var(--cp-bg-hover)}.cp-root--dark .ev-timer--warn{color:#fca5a5;background:#f8717126}.cp-root--dark .ev-flag-btn--on,.cp-root--dark .cp-viewport .ev-flag-btn--on{color:#fcd34d;background:#fcd34d1a;border-color:#fcd34d80}.cp-root--dark .ev-server-error{color:#fcd34d;background:#fcd34d14;border-color:#fcd34d66}.cp-root--dark .ev-intro-meta-label,.cp-root--dark .ev-q-points,.cp-root--dark .ev-summary-meta,.cp-root--dark .ev-summary-hint{color:#9ca3af}.cp-root--dark .ev-review-summary-canvas .exam-review-title{color:var(--cp-paper-text)}.cp-root--dark .ev-review-summary-canvas .review-score-banner.passed{color:#4ade80}.cp-root--dark .ev-review-summary-canvas .review-score-banner.failed{color:#fca5a5}.cp-root--dark .ev-review-summary-canvas .review-score-banner.passed .review-score-value{color:#4ade80}.cp-root--dark .ev-review-summary-canvas .review-score-banner.failed .review-score-value{color:#f87171}.cp-root--dark .ev-review-summary-canvas .review-score-stats{color:#d1d5db}.cp-root--dark .ev-review-summary-canvas .review-card{background:var(--cp-bg);border-color:var(--cp-paper-border)}.cp-root--dark .ev-review-summary-canvas .review-card--correct{border-color:#4ade80}.cp-root--dark .ev-review-summary-canvas .review-card--incorrect{border-color:#f87171}.cp-root--dark .ev-review-summary-canvas .review-card__number{color:var(--cp-paper-text)}.cp-toc-grades-btn{margin-top:.5rem;margin-bottom:.5rem}.cp-toc-grades-btn .cp-toc-item-icon{color:var(--cp-brand)}.cp-grades-pane{flex-direction:column;gap:1.25rem;display:flex}.accessibility-page{flex-direction:column;gap:2rem;max-width:700px;display:flex}.accessibility-page h1{color:#1f2937;font-size:1.5rem;font-weight:600}.accessibility-form{background-color:#fff;border:1px solid #e5e7eb;border-radius:8px;flex-direction:column;gap:1.5rem;padding:1.5rem;display:flex}.accessibility-field{flex-direction:column;gap:.5rem;display:flex}.accessibility-label{color:#374151;font-size:.9375rem;font-weight:500}.accessibility-description{color:#6b7280;margin:0;font-size:.8125rem}.accessibility-select{color:#1f2937;cursor:pointer;background-color:#fff;border:1px solid #d1d5db;border-radius:8px;max-width:300px;padding:.625rem .75rem;font-size:.9375rem;transition:border-color .15s,box-shadow .15s}.accessibility-select:focus{border-color:#3b82f6;outline:none;box-shadow:0 0 0 3px #3b82f61a}.accessibility-slider-container{align-items:center;gap:1rem;display:flex}.accessibility-slider{cursor:pointer;appearance:none;background:#e5e7eb;border-radius:3px;outline:none;flex:1;max-width:400px;height:6px}.accessibility-slider::-webkit-slider-thumb{appearance:none;cursor:pointer;background:#3b82f6;border:2px solid #fff;border-radius:50%;width:20px;height:20px;box-shadow:0 1px 3px #0003}.accessibility-slider::-moz-range-thumb{cursor:pointer;background:#3b82f6;border:2px solid #fff;border-radius:50%;width:20px;height:20px;box-shadow:0 1px 3px #0003}.accessibility-slider:focus-visible::-webkit-slider-thumb{outline-offset:2px;outline:2px solid #3b82f6}.accessibility-slider-value{color:#3b82f6;text-align:center;min-width:48px;font-size:.9375rem;font-weight:600}.accessibility-slider-labels{color:#9ca3af;justify-content:space-between;max-width:400px;font-size:.75rem;display:flex}.accessibility-toggle-field{border-top:1px solid #f3f4f6;flex-direction:row;justify-content:space-between;align-items:center;padding:1rem 0}.accessibility-toggle-info{flex-direction:column;gap:.25rem;display:flex}.accessibility-toggle{flex-shrink:0;width:48px;height:26px;display:inline-block;position:relative}.accessibility-toggle input{opacity:0;width:0;height:0}.accessibility-toggle-slider{cursor:pointer;background-color:#d1d5db;border-radius:26px;transition:background-color .2s;position:absolute;inset:0}.accessibility-toggle-slider:before{content:"";background-color:#fff;border-radius:50%;width:20px;height:20px;transition:transform .2s;position:absolute;bottom:3px;left:3px}.accessibility-toggle input:checked+.accessibility-toggle-slider{background-color:#3b82f6}.accessibility-toggle input:checked+.accessibility-toggle-slider:before{transform:translate(22px)}.accessibility-toggle input:focus-visible+.accessibility-toggle-slider{outline-offset:2px;outline:2px solid #3b82f6}.accessibility-message{border-radius:6px;padding:.625rem .75rem;font-size:.875rem}.accessibility-message--success{color:#166534;background-color:#f0fdf4;border:1px solid #bbf7d0}.accessibility-message--error{color:#991b1b;background-color:#fef2f2;border:1px solid #fecaca}.accessibility-save-btn{color:#fff;cursor:pointer;background-color:#3b82f6;border:1px solid #3b82f6;border-radius:6px;justify-content:center;align-self:flex-start;align-items:center;padding:.625rem 1.5rem;font-size:.9375rem;font-weight:500;transition:background-color .15s;display:inline-flex}.accessibility-save-btn:hover{background-color:#2563eb}.accessibility-save-btn:disabled{opacity:.6;cursor:not-allowed}.accessibility-preview{flex-direction:column;gap:1rem;display:flex}.accessibility-preview h2{color:#1f2937;font-size:1.25rem;font-weight:600}.accessibility-preview-box{background-color:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:1.5rem;line-height:1.6;transition:all .2s}.accessibility-preview-box p{margin:0}.accessibility-current-settings{background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:1.25rem}.accessibility-current-settings h3{color:#374151;margin-bottom:.75rem;font-size:.9375rem;font-weight:600}.accessibility-current-settings ul{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.accessibility-current-settings li{color:#4b5563;font-size:.875rem}.accessibility-current-settings li strong{color:#374151}.org-branding{background:linear-gradient(135deg, var(--org-primary-color), var(--org-secondary-color));color:#fff;box-shadow:0 18px 40px -24px var(--org-primary-color);border-radius:20px;padding:2.5rem 2.5rem 2.25rem;position:relative;overflow:hidden}.org-branding--banner{background:linear-gradient(90deg, #0f172ac7 0%, #0f172a73 55%, #0f172a33 100%), var(--org-banner) center / cover no-repeat, var(--org-primary-color);flex-direction:column;justify-content:flex-end;min-height:240px;display:flex;box-shadow:0 18px 40px -24px #0f172a99}.org-branding--banner:before,.org-branding--banner:after{display:none}.org-branding:before,.org-branding:after{content:"";pointer-events:none;border-radius:50%;position:absolute}.org-branding:before{background:radial-gradient(circle,#ffffff38,#fff0 70%);width:420px;height:420px;top:-220px;right:-120px}.org-branding:after{background:radial-gradient(circle,#ffffff1f,#fff0 70%);width:260px;height:260px;bottom:-160px;left:30%}.org-branding-header{z-index:1;align-items:center;gap:1.75rem;display:flex;position:relative}.org-branding-logo{object-fit:cover;background-color:#fff;border-radius:20px;flex-shrink:0;width:96px;height:96px;box-shadow:0 8px 24px #0f172a2e}.org-branding-monogram{box-shadow:none;font-size:var(--tuto-text-3xl,2rem);letter-spacing:.02em;color:#fff;background:#ffffff29;border:1px solid #ffffff59;justify-content:center;align-items:center;font-weight:700;display:flex}.org-branding-info{flex-direction:column;gap:.5rem;min-width:0;display:flex}.org-branding-name{font-size:var(--tuto-text-4xl,2.5rem);color:#fff;letter-spacing:-.02em;margin:0;font-weight:800;line-height:1.1}.org-branding-description{max-width:60ch;font-size:var(--tuto-text-lg,1rem);color:#ffffffe6;margin:0;line-height:1.55}.org-branding-facts{flex-wrap:wrap;gap:.5rem;margin-top:.5rem;display:flex}.org-branding-fact{font-size:var(--tuto-text-sm,.8125rem);color:#fff;background:#ffffff29;border:1px solid #ffffff40;border-radius:999px;align-items:center;gap:.375rem;padding:.3rem .75rem;font-weight:500;display:inline-flex}.org-branding-fact svg{flex-shrink:0}@media (width<=640px){.org-branding{border-radius:16px;padding:1.75rem 1.25rem}.org-branding-header{flex-direction:column;align-items:flex-start;gap:1.25rem}.org-branding-logo{border-radius:14px;width:64px;height:64px}.org-branding-monogram{font-size:var(--tuto-text-2xl,1.5rem)}.org-branding-name{font-size:var(--tuto-text-3xl,2rem)}}.org-join-panel{background:linear-gradient(135deg,#f5f3ff,#eef2ff);border:1px solid #ddd6fe;border-radius:16px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem 1.5rem;padding:1.25rem 1.5rem;display:flex}.org-join-panel-quiet{background:#f9fafb;border-color:#e5e7eb}.org-join-panel-success{background:#ecfdf5;border-color:#a7f3d0}.org-join-text{flex-direction:column;flex:280px;gap:.25rem;min-width:0;display:flex}.org-join-title{font-size:var(--tuto-text-xl,1.125rem);color:#1f2937;margin:0;font-weight:700}.org-join-prompt{font-size:var(--tuto-text-md,.9375rem);color:#4b5563;margin:0;line-height:1.5}.org-join-btn{font-size:var(--tuto-text-md,.9375rem);color:#fff;background-color:var(--tuto-brand,#5624d0);cursor:pointer;white-space:nowrap;border:none;border-radius:999px;justify-content:center;align-items:center;padding:.625rem 1.375rem;font-weight:600;text-decoration:none;transition:background-color .15s;display:inline-flex}.org-join-btn:hover:not(:disabled){background-color:var(--tuto-brand-hover,#401b9c);color:#fff}.org-join-btn:disabled{opacity:.6;cursor:not-allowed}.org-join-form{flex-wrap:wrap;flex:100%;align-items:flex-end;gap:.75rem;display:flex}.org-join-message{min-width:0;font-size:var(--tuto-text-base,.875rem);resize:vertical;background:#fff;border:1px solid #d1d5db;border-radius:10px;flex:280px;padding:.75rem;font-family:inherit;line-height:1.5}.org-join-message:focus{border-color:var(--tuto-brand,#5624d0);outline:none;box-shadow:0 0 0 3px #5624d026}.org-join-success{font-size:var(--tuto-text-md,.9375rem);color:#047857;font-weight:500}.org-join-error{font-size:var(--tuto-text-base,.875rem);color:#dc2626;background-color:#fef2f2;border:1px solid #fecaca;border-radius:8px;flex:100%;padding:.5rem .75rem}.org-join-invite-only{font-size:var(--tuto-text-md,.9375rem);color:#6b7280;margin:0}.org-announcements{flex-direction:column;gap:1rem;display:flex}.org-announcements-list{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1rem;margin:0;padding:0;list-style:none;display:grid}.org-announcement-item{background-color:#fff;border:1px solid #e5e7eb;border-radius:14px;padding:1.125rem 1.25rem 1.125rem 1.5rem;position:relative;overflow:hidden}.org-announcement-item:before{content:"";background:var(--tuto-brand,#5624d0);width:4px;position:absolute;inset:0 auto 0 0}.org-announcement-item-title{font-size:var(--tuto-text-lg,1rem);color:#111827;margin:0 0 .375rem;font-weight:700}.org-announcement-item-body{font-size:var(--tuto-text-md,.9375rem);color:#374151;white-space:pre-wrap;margin:0 0 .75rem;line-height:1.55}.org-announcement-item-meta{font-size:var(--tuto-text-sm,.8125rem);color:#6b7280;align-items:center;gap:.5rem;display:flex}.org-announcement-item-author{font-weight:600}.org-announcement-item-date{color:#9ca3af}.org-announcement-item-date:before{content:"·";margin-right:.5rem}@media (width<=640px){.org-announcements-list{grid-template-columns:1fr}}.org-course-card{--course-color:#7c3aed;color:inherit;background:#fff;border:1px solid #e5e7eb;border-radius:16px;flex-direction:column;text-decoration:none;transition:transform .15s,box-shadow .15s,border-color .15s;display:flex;overflow:hidden}a.org-course-card:hover{border-color:#d1d5db;transform:translateY(-2px);box-shadow:0 12px 28px -12px #0f172a2e}a.org-course-card:focus-visible{outline:3px solid var(--tuto-action,#2563eb);outline-offset:2px}.org-course-card-body{flex-direction:column;flex:1;gap:.5rem;padding:.5rem 1.25rem 1.25rem;display:flex}.org-course-schedule{font-size:var(--tuto-text-2xs,.6875rem);letter-spacing:.04em;text-transform:uppercase;border-radius:999px;align-self:flex-start;padding:.125rem .5rem;font-weight:600}.org-course-schedule-live{color:#166534;background:#dcfce7}.org-course-schedule-soon{color:#1e40af;background:#dbeafe}.org-course-schedule-past{color:#4b5563;background:#f3f4f6}.org-course-card-title{font-size:var(--tuto-text-xl,1.125rem);color:#111827;margin:0;font-weight:700;line-height:1.3}.org-course-card-description{font-size:var(--tuto-text-base,.875rem);color:#6b7280;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;line-height:1.5;display:-webkit-box;overflow:hidden}.org-course-card-footer{border-top:1px solid #f3f4f6;justify-content:space-between;align-items:center;gap:.75rem;margin-top:auto;padding-top:.75rem;display:flex}.org-course-card-dates{white-space:nowrap;font-size:var(--tuto-text-sm,.8125rem);color:#6b7280;align-items:center;gap:.375rem;display:inline-flex}.org-course-card-cta{background:color-mix(in srgb, var(--course-color) 10%, #fff);width:28px;height:28px;color:color-mix(in srgb, var(--course-color) 80%, #000);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.org-course-card-cta svg{transition:transform .15s}a.org-course-card:hover .org-course-card-cta svg{transform:translate(3px)}.org-course-card-provider{font-size:var(--tuto-text-sm,.8125rem);color:color-mix(in srgb, var(--course-color) 75%, #000);font-weight:600}.org-course-list{flex-direction:column;gap:1.25rem;width:100%;display:flex}.org-course-search{max-width:420px;position:relative}.org-course-search-icon{color:#9ca3af;pointer-events:none;position:absolute;top:50%;left:.875rem;transform:translateY(-50%)}.org-course-search-input{box-sizing:border-box;width:100%;font-size:var(--tuto-text-md,.9375rem);color:#111827;background:#fff;border:1px solid #e5e7eb;border-radius:999px;padding:.625rem .875rem .625rem 2.5rem;font-family:inherit;transition:border-color .15s,box-shadow .15s}.org-course-search-input::placeholder{color:#9ca3af}.org-course-search-input:focus{border-color:var(--tuto-brand,#5624d0);outline:none;box-shadow:0 0 0 3px #5624d026}.org-courses-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1.25rem;display:grid}.org-courses-grid-refreshing{opacity:.6;transition:opacity .15s .1s}.org-course-card-skeleton .course-cover{background:#f3f4f6}.org-skeleton-line{background:linear-gradient(90deg,#f3f4f6 25%,#e5e7eb 50%,#f3f4f6 75%) 0 0/200% 100%;border-radius:6px;height:.75rem;animation:1.4s ease-in-out infinite org-skeleton-shimmer}.org-skeleton-line-title{width:70%;height:1.125rem}.org-skeleton-line-short{width:45%}@keyframes org-skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){.org-skeleton-line{animation:none}.org-course-card,.org-course-card-cta svg{transition:none}}.org-courses-error{text-align:center;color:#dc2626;padding:2rem}.org-courses-error p{margin:0}.org-courses-error button{background:var(--tuto-action,#2563eb);color:#fff;cursor:pointer;border:none;border-radius:8px;margin-top:.75rem;padding:.5rem 1rem;font-weight:600}.org-courses-empty{color:#9ca3af;text-align:center;background:#f9fafb;border:1px dashed #e5e7eb;border-radius:16px;flex-direction:column;align-items:center;gap:.75rem;padding:3rem 1rem;display:flex}.org-courses-empty p{color:#6b7280;font-size:var(--tuto-text-md,.9375rem);margin:0}.org-courses-restricted{text-align:center;color:#6b7280;background:#f9fafb;border:1px dashed #d1d5db;border-radius:16px;padding:3rem 1rem}.org-courses-restricted p{margin:.25rem 0}.org-courses-pagination{justify-content:center;align-items:center;gap:1rem;padding:.5rem 0;display:flex}.org-courses-pagination button{cursor:pointer;font-size:var(--tuto-text-base,.875rem);background:#fff;border:1px solid #e5e7eb;border-radius:999px;padding:.5rem 1rem;font-weight:500}.org-courses-pagination button:hover:not(:disabled){background:#f3f4f6}.org-courses-pagination button:disabled{opacity:.5;cursor:not-allowed}.org-courses-page-info{font-size:var(--tuto-text-base,.875rem);color:#4b5563}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.org-hero{background:#0f172a;border-radius:20px;position:relative;overflow:hidden;box-shadow:0 18px 40px -28px #0f172a8c}.org-hero-track{aspect-ratio:8/3;position:relative}.org-hero-slide{opacity:0;transition:opacity .6s;position:absolute;inset:0}.org-hero-slide--active{opacity:1;z-index:1}.org-hero-backdrop{filter:blur(22px)brightness(.75);background-position:50%;background-size:cover;position:absolute;inset:-24px}.org-hero-link{width:100%;height:100%;display:block;position:relative}.org-hero-link:focus-visible{outline-offset:-6px;outline:3px solid #fff}.org-hero-image{object-fit:contain;width:100%;height:100%;display:block;position:relative}.org-hero-nav{z-index:2;color:#111827;cursor:pointer;opacity:0;background:#ffffffd9;border:none;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-size:1.5rem;line-height:1;transition:opacity .2s;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.org-hero:hover .org-hero-nav,.org-hero-nav:focus-visible{opacity:1}.org-hero-nav:focus-visible{outline:3px solid var(--tuto-action,#2563eb)}.org-hero-nav--prev{left:14px}.org-hero-nav--next{right:14px}.org-hero-dots{z-index:2;background:#0f172a59;border-radius:999px;gap:6px;padding:6px 8px;display:flex;position:absolute;bottom:12px;left:50%;transform:translate(-50%)}.org-hero-dot{cursor:pointer;background:#ffffff8c;border:none;border-radius:999px;width:8px;height:8px;padding:0;transition:width .2s,background .2s}.org-hero-dot--active{background:#fff;width:22px}.org-hero-dot:focus-visible{outline-offset:2px;outline:2px solid #fff}@media (hover:none){.org-hero-nav{opacity:.85;width:34px;height:34px}}@media (width<=640px){.org-hero{border-radius:14px}.org-hero-nav{display:none}}@media (prefers-reduced-motion:reduce){.org-hero-slide,.org-hero-dot,.org-hero-nav{transition:none}}.org-instructors{flex-direction:column;gap:.25rem;display:flex}.org-instructors-grid{grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:1rem;margin:1rem 0 0;padding:0;list-style:none;display:grid}.org-instructor-card{text-align:center;background:#fff;border:1px solid #e5e7eb;border-radius:16px;flex-direction:column;align-items:center;gap:.375rem;padding:1.5rem 1rem 1.25rem;display:flex}.org-instructor-card .ui-person-avatar{margin-bottom:.5rem;box-shadow:0 0 0 4px #f3f4f6}.org-instructor-name{color:#111827;font-weight:700;line-height:1.3}.org-instructor-title{font-size:var(--tuto-text-sm,.8125rem);color:#6b7280}@media (width<=480px){.org-instructors-grid{grid-template-columns:repeat(2,1fr)}}.org-page-section{flex-direction:column;gap:1.25rem;display:flex}.org-page-section-title{text-align:center}.org-page-cards{flex-wrap:wrap;justify-content:center;gap:1.25rem;margin:0;padding:0;list-style:none;display:flex}.org-page-card{background:#fff;border:1px solid #e5e7eb;border-radius:16px;flex-direction:column;flex:0 200px;display:flex;overflow:hidden;box-shadow:0 10px 24px -20px #0f172a80}.org-page-card-image{aspect-ratio:1;background:#fff}.org-page-card-image img{object-fit:contain;width:100%;height:100%;display:block}.org-page-card-title{text-align:center;color:#111827;margin:0;padding:.75rem 1rem .875rem;font-weight:600}.org-page-card-button{background:var(--org-primary-color,#1463d9);color:#fff;text-align:center;margin-top:auto;padding:.7rem 1rem;font-weight:600;text-decoration:none;display:block}.org-page-card-button:hover{filter:brightness(1.08)}.org-page-card-button:focus-visible{outline-offset:-3px;outline:3px solid #111827}.org-page-about{align-items:center;gap:2rem;display:grid}.org-page-about--with-image{grid-template-columns:minmax(0,2fr) minmax(0,3fr)}.org-page-about-image img{border-radius:16px;width:100%;height:auto;display:block}.org-page-about-text{flex-direction:column;gap:.875rem;display:flex}.org-page-about-text .org-page-section-title{text-align:left}.org-page-about-text p{color:#374151;white-space:pre-line;margin:0;line-height:1.7}@media (width<=760px){.org-page-about--with-image{grid-template-columns:1fr}.org-page-card{flex-basis:calc(50% - .625rem)}}.org-chat-button{z-index:50;color:#fff;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;transition:transform .15s;display:inline-flex;position:fixed;bottom:20px;right:20px;box-shadow:0 10px 24px -8px #0f172a73}.org-chat-button--whatsapp{background:#25d366}.org-chat-button--telegram{background:#229ed9}.org-chat-button:hover{transform:scale(1.06)}.org-chat-button:focus-visible{outline-offset:3px;outline:3px solid #111827}@media (prefers-reduced-motion:reduce){.org-chat-button{transition:none}}.org-page{flex-direction:column;gap:2rem;width:100%;padding-bottom:3rem;display:flex}.org-page-loading{color:#6b7280;flex-direction:column;justify-content:center;align-items:center;gap:1rem;padding:4rem 0;display:flex}.org-page-loading p{margin:0;font-size:.9375rem}.org-page-error{color:#dc2626;background-color:#fef2f2;border:1px solid #fecaca;border-radius:8px;padding:1rem 1.5rem;font-size:.9375rem}.org-page-content{flex-direction:column;gap:2.5rem;display:flex}.org-page-not-found{justify-content:center;align-items:center;min-height:50vh}.org-not-found-content{text-align:center;padding:3rem 1rem}.org-not-found-title{color:#1f2937;margin:0 0 .75rem;font-size:1.75rem;font-weight:700}.org-not-found-message{color:#6b7280;margin:0;font-size:1rem;line-height:1.5}.org-courses-section{flex-direction:column;gap:1rem;display:flex}.org-courses-header{justify-content:space-between;align-items:flex-end;gap:1rem;display:flex}.org-section-title{font-size:var(--tuto-text-2xl,1.5rem);letter-spacing:-.01em;color:#111827;margin:0;font-weight:700}.org-section-subtitle{font-size:var(--tuto-text-md,.9375rem);color:#6b7280;margin:.25rem 0 0}.org-create-course-btn{white-space:nowrap}.org-courses-restricted{color:#6b7280;text-align:center;background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:16px;margin:0;padding:1.5rem;font-size:.9375rem}.org-public-shell{background:#fff;flex-direction:column;min-height:100vh;display:flex}.org-public-main{box-sizing:border-box;flex:1;width:100%;max-width:1340px;margin:0 auto;padding:2rem 1.5rem}@media (width<=640px){.org-public-main{padding:1.25rem 1rem}}.org-visitor-actions{flex-wrap:wrap;align-items:center;gap:.75rem 1rem;display:flex}.org-visitor-signup{color:#5624d0;font-size:.9375rem;font-weight:600;text-decoration:none}.org-visitor-signup:hover{text-decoration:underline}.org-not-found-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:.75rem 1.25rem;margin-top:1.5rem;display:flex}@font-face{font-family:Site Inter;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Site Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/plus-jakarta-sans-latin-wght-normal-eXO_dkmS.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}.st-root{--st-max:1340px;--st-gap:clamp(28px, 3vw, 40px);--st-ink:#0e1a2b;--st-body:#445166;--st-muted:#5b6878;--st-line:#e3e8ef;--st-card-line:#dde5f0;--st-input-line:#cbd4e1;--st-soft:#f3f6fa;--st-tint:#eaf2fd;--st-blue:#1463d9;--st-blue-dark:#0f4fb0;--st-amber:#f2b21b;--st-amber-soft:#fff4d6;--st-amber-ink:#6b4e00;--st-green:#187a4d;--st-green-soft:#eef8f2;--st-red:#b42318;--st-red-soft:#fdecea;--st-display:"Site Plus Jakarta Sans", "Site Inter", var(--tuto-font-sans);color:var(--st-ink);font-family:"Site Inter", var(--tuto-font-sans);background:#fff;flex-direction:column;min-height:100vh;font-size:17px;line-height:1.55;display:flex}.st-root main{flex:1 0 auto}.st-root a{color:var(--st-blue)}.st-root h1,.st-root h2,.st-root h3,.st-root p{margin:0}.st-container{max-width:var(--st-max);box-sizing:border-box;margin:0 auto;padding:0 24px}.st-narrow{max-width:860px}.st-container.st-narrow{max-width:908px}.st-section{padding:var(--st-gap) 0}.st-section--soft{background:var(--st-soft)}.st-stack{flex-direction:column;gap:16px;display:flex}.st-stack-lg{flex-direction:column;gap:32px;display:flex}.st-center{text-align:center;align-items:center}.st-eyebrow{color:var(--st-blue);font-size:14px;font-weight:600}.st-h1{font-family:var(--st-display);letter-spacing:-1px;font-size:clamp(34px,4.6vw,56px);font-weight:800;line-height:1.08}.st-h2{font-family:var(--st-display);letter-spacing:-.6px;font-size:clamp(28px,3.4vw,42px);font-weight:800;line-height:1.15}.st-h3{font-size:19px;font-weight:700}.st-lead{color:var(--st-body);max-width:640px;font-size:19px}.st-text{color:var(--st-body)}.st-small{color:var(--st-muted);font-size:15px}.st-placeholder{color:var(--st-muted);font-style:italic}.st-btn{min-height:48px;font:inherit;cursor:pointer;box-sizing:border-box;border:1px solid #0000;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:12px 22px;font-weight:600;text-decoration:none;display:inline-flex}.st-root .st-btn--primary{background:var(--st-blue);color:#fff}.st-root .st-btn--primary:hover{background:var(--st-blue-dark)}.st-root .st-btn--secondary{color:var(--st-ink);border-color:var(--st-input-line);background:#fff}.st-root .st-btn--secondary:hover{border-color:var(--st-ink)}.st-root .st-btn--white{color:var(--st-ink);background:#fff}.st-root .st-btn--outline-light{color:#fff;border:1.5px solid #fff}.st-btn--sm{border-radius:10px;min-height:44px;padding:10px 16px;font-size:15px}.st-btn-row{flex-wrap:wrap;gap:12px;display:flex}.st-root .st-textlink{align-items:center;min-height:44px;font-weight:600;text-decoration:none;display:inline-flex}.st-header{border-bottom:1px solid var(--st-line);z-index:10;background:#fff;position:relative}.st-header-row{align-items:center;gap:32px;min-height:56px;padding:0 24px;display:flex}.st-root .st-logo{color:var(--st-ink);align-items:center;gap:6px;min-height:44px;text-decoration:none;display:inline-flex}.st-logo-mark{width:auto;height:28px}.st-logo-word{font-family:"Site Inter", var(--tuto-font-sans);letter-spacing:-.8px;color:#000;font-size:28px;font-weight:900;line-height:1}.st-nav ul{gap:28px;margin:0;padding:0;list-style:none;display:flex}.st-root .st-nav a{color:#2b3747;padding:6px 0;font-size:15px;font-weight:500;text-decoration:none}.st-root .st-nav a[aria-current=page]{color:var(--st-blue);box-shadow:inset 0 -2px 0 var(--st-blue);font-weight:600}.st-header-actions{align-items:center;gap:10px;margin-left:auto;display:flex}.st-header-actions .st-btn{min-height:36px;padding:6px 16px}.st-root .st-signin{color:var(--st-ink);cursor:pointer;background:0 0;border:0;align-items:center;min-height:44px;padding:10px 14px;font-family:inherit;font-size:15px;font-weight:600;text-decoration:none;display:inline-flex}.st-menu-toggle{width:36px;height:36px;color:var(--st-ink);cursor:pointer;background:#fff;border:1px solid #d5dce6;border-radius:10px;justify-content:center;align-items:center;padding:0;display:none}.st-mobile-menu{border-top:1px solid var(--st-line);flex-direction:column;gap:14px;padding:4px 16px 20px;display:flex}.st-mobile-menu ul{margin:0;padding:0;list-style:none}.st-root .st-mobile-menu li a{min-height:52px;color:var(--st-ink);border-bottom:1px solid #eef1f5;align-items:center;font-size:17px;font-weight:600;text-decoration:none;display:flex}@media (width<=859px){.st-header-row{gap:10px;padding:0 16px}.st-nav,.st-header-actions .st-signin{display:none}.st-menu-toggle{display:inline-flex}.st-logo-word{font-size:26px}.st-logo-mark{height:26px}.st-header-actions .st-btn{white-space:nowrap;padding:6px 12px;font-size:14px}}@media (width>=860px){.st-mobile-menu{display:none}}.st-footer{background:var(--st-ink);color:#c9d3e0;padding:var(--st-gap) 0 32px}.st-footer-grid{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:32px;display:grid}.st-footer h2{color:#fff;margin:0 0 12px;font-size:15px}.st-footer nav+nav{margin-top:24px}.st-footer ul{flex-direction:column;gap:8px;margin:0;padding:0;font-size:15px;list-style:none;display:flex}.st-root .st-footer a{color:#c9d3e0;text-decoration:none}.st-root .st-footer a:hover{color:#fff}.st-footer-brand{flex-direction:column;gap:12px;font-size:15px;display:flex}.st-footer-bottom{border-top:1px solid #2a3a52;flex-wrap:wrap;justify-content:space-between;gap:16px;margin-top:40px;padding-top:24px;font-size:14px;display:flex}.st-split{grid-template-columns:repeat(auto-fit,minmax(min(100%,440px),1fr));align-items:center;gap:48px;display:grid}.st-split--top{align-items:start}.st-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:18px;display:grid}.st-grid--small{grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr))}.st-grid--wide{grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));gap:24px}.st-card{border:1px solid var(--st-card-line);background:#fff;border-radius:16px;flex-direction:column;gap:8px;padding:24px;display:flex}.st-card--dashed{border:1.5px dashed #9aa6b6}.st-card--link{color:var(--st-ink);gap:12px;text-decoration:none}.st-root .st-card--link{color:var(--st-ink);text-decoration:none}.st-card--link:hover{border-color:var(--st-blue)}.st-card-more{color:var(--st-blue);margin-top:auto;font-weight:600}.st-icon-tile{background:var(--st-tint);width:44px;height:44px;color:var(--st-blue);border-radius:12px;flex:none;justify-content:center;align-items:center;display:flex}.st-art{border-radius:18px;line-height:0;overflow:hidden}.st-art svg{width:100%;height:auto;display:block}.st-breadcrumb{color:var(--st-muted);font-size:14px}.st-root .st-breadcrumb a{text-decoration:none}.st-chips{flex-wrap:wrap;gap:8px;display:flex}.st-chip{border:1px solid var(--st-card-line);background:#fff;border-radius:999px;padding:6px 14px;font-size:15px;font-weight:600}.st-checklist{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.st-checklist li{gap:12px;display:flex}.st-checklist svg{flex:none;margin-top:3px}.st-steps{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:18px;margin:0;padding:0;list-style:none;display:grid}.st-step-no{background:var(--st-blue);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:38px;height:38px;font-weight:700;display:flex}.st-hero{background:var(--st-soft);padding:clamp(48px,7vw,88px) 0;padding-top:min(72px, max(24px, calc((100% - var(--st-max)) / 2 + 24px)))}.st-cta{background:var(--st-blue);color:#fff;border-radius:22px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;padding:clamp(28px,4vw,48px);display:flex}.st-cta h2{font-family:var(--st-display);flex:380px;font-size:clamp(24px,3vw,36px);font-weight:800;line-height:1.15}.st-mock{border:1px solid var(--st-card-line);background:#fff;border-radius:18px;flex-direction:column;gap:12px;min-width:0;padding:20px;font-size:14px;display:flex}.st-mock-label{color:var(--st-muted);letter-spacing:.6px;text-transform:uppercase;font-size:12px;font-weight:600}.st-pill{white-space:nowrap;border-radius:999px;padding:3px 10px;font-size:13px;font-weight:600}.st-pill--ok{color:var(--st-green);background:var(--st-green-soft)}.st-pill--wait{color:var(--st-amber-ink);background:var(--st-amber-soft)}.st-pill--bad{color:var(--st-red);background:var(--st-red-soft)}.st-row{justify-content:space-between;align-items:center;gap:10px;display:flex}.st-bar{background:#eef1f5;border-radius:5px;height:10px;overflow:hidden}.st-bar>span{background:var(--st-blue);border-radius:5px;height:100%;display:block}.st-handwriting{border:1px solid var(--st-line);color:#23355a;background:repeating-linear-gradient(#fff 0 23px,#dce6f2 23px 24px);border-radius:10px;padding:8px 12px;font-family:Segoe Print,Comic Sans MS,cursive;font-size:15px;line-height:24px}.st-uses{flex-direction:column;gap:14px;margin:4px 0 0;padding:0;list-style:none;display:flex}.st-uses li{align-items:flex-start;gap:14px;display:flex}.st-uses .st-icon-tile{border:1px solid var(--st-card-line);background:#fff;border-radius:10px;width:40px;height:40px}.st-tabs{border-top:1px solid var(--st-card-line);flex-wrap:wrap;gap:8px;margin-top:clamp(32px,4vw,48px);padding-top:20px;display:flex}.st-tab{font:inherit;cursor:pointer;min-height:44px;color:var(--st-ink);border:1px solid var(--st-input-line);background:#fff;border-radius:999px;padding:10px 18px;font-size:15px;font-weight:600}.st-tab[aria-selected=true],.st-tab[aria-pressed=true]{color:#fff;background:var(--st-blue);border-color:var(--st-blue)}.st-faq{border-top:1px solid var(--st-line)}.st-faq-item{border-bottom:1px solid var(--st-line)}.st-faq-q{font:inherit;color:var(--st-ink);text-align:left;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:center;gap:16px;width:100%;min-height:56px;padding:18px 0;font-size:17px;font-weight:600;display:flex}.st-faq-sign{color:var(--st-blue);flex:none;font-size:22px}.st-faq-a{color:var(--st-body);max-width:720px;margin:0 0 18px}.st-form{flex-direction:column;gap:16px;display:flex}.st-field{flex-direction:column;gap:6px;font-size:15px;font-weight:600;display:flex}.st-field input,.st-field select,.st-field textarea{font:inherit;border:1px solid var(--st-input-line);box-sizing:border-box;min-height:48px;color:var(--st-ink);background:#fff;border-radius:10px;padding:12px 14px;font-weight:400}.st-field textarea{resize:vertical}.st-check{align-items:center;gap:10px;min-height:44px;font-size:15px;display:flex}.st-check input{width:20px;height:20px}.st-legal{flex-wrap:wrap;gap:48px;display:flex}.st-legal nav{flex:220px;min-width:0;font-size:15px}.st-legal nav ol{flex-direction:column;gap:6px;margin:0;padding-left:20px;display:flex}.st-root .st-legal nav a{text-decoration:none}.st-legal article{flex-direction:column;flex:999 560px;gap:28px;min-width:0;line-height:1.6;display:flex}.st-legal h2{margin-bottom:8px;font-size:22px}.st-legal ul{color:var(--st-body);flex-direction:column;gap:6px;margin:0;padding-left:22px;display:flex}.st-note{background:var(--st-amber-soft);color:#4a3600;border-radius:12px;padding:14px 16px;font-size:15px}.st-plan{border:1px solid var(--st-card-line);border-radius:22px;flex-direction:column;gap:16px;padding:28px;display:flex}.st-plan--featured{border:2px solid var(--st-blue)}.st-plan-price{font-family:var(--st-display);font-size:34px;font-weight:800}.st-badge{background:var(--st-soft);color:var(--st-ink);border-radius:999px;align-self:flex-start;padding:4px 12px;font-size:13px;font-weight:700}.st-badge--blue{background:var(--st-blue);color:#fff}.st-plan .st-btn{margin-top:auto}@media (prefers-reduced-motion:no-preference){.st-btn,.st-card--link{transition:background-color .15s,border-color .15s}}.st-display{font-family:var(--st-display)}.st-tag{color:var(--st-body);background:var(--st-soft);border-radius:999px;padding:4px 10px;font-size:13px}.st-tag--amber{background:var(--st-amber-soft);color:var(--st-amber-ink)}.st-chips--mini{gap:6px}.st-chips--mini .st-chip{border-color:var(--st-input-line);padding:3px 9px;font-size:12px;font-weight:500}.st-chips--mini .st-tag{border-radius:6px;padding:3px 8px;font-size:12px}.st-fake-btn{color:#fff;background:var(--st-blue);border-radius:10px;align-self:flex-start;padding:10px 16px;font-size:14px;font-weight:600}.st-fake-btn--secondary{color:var(--st-ink);border:1px solid var(--st-input-line);background:#fff}.st-mock--flush{gap:0;padding:0;overflow:hidden}.st-mock--soft{background:var(--st-soft)}.st-mock-head{border-bottom:1px solid var(--st-line);flex-wrap:wrap;padding:14px 18px}.st-build{flex-wrap:wrap;display:flex}.st-build-library,.st-build-pack{flex-direction:column;gap:10px;min-width:0;padding:16px 18px;display:flex}.st-build-library{border-right:1px solid var(--st-line);flex:260px}.st-build-pack{background:#fbfcfe;flex:220px}.st-build-pack .st-fake-btn{border-radius:8px;margin-top:auto;padding:8px 12px;font-size:13px}.st-pick{border:1px solid var(--st-line);border-radius:10px;align-items:flex-start;gap:10px;padding:10px;display:flex}.st-pick--on{background:var(--st-tint);border-color:var(--st-tint)}.st-pick-box{box-sizing:border-box;border:1.5px solid #9aa6b6;border-radius:4px;flex:none;width:16px;height:16px;margin-top:2px}.st-pick--on .st-pick-box{background:var(--st-blue);border-color:var(--st-blue)}.st-pack-item{border:1px solid var(--st-line);background:#fff;border-radius:8px;padding:8px 10px}.st-pack-item--add{border:1.5px dashed var(--st-input-line);color:var(--st-muted);background:0 0}.st-library{grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));align-items:start;gap:24px;display:grid}.st-kinds{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;margin:0;padding:0;list-style:none;display:grid}.st-kinds li{border:1px solid var(--st-line);border-radius:14px;flex-direction:column;gap:6px;padding:18px;display:flex}.st-kinds .st-card-art{border-radius:16px;width:60px;height:60px;margin-bottom:4px}.st-kinds .st-card-art svg{width:46px;height:46px}@media (width<=520px){.st-kinds li{grid-template-columns:60px 1fr;align-items:center;gap:2px 14px;padding:14px;display:grid}.st-kinds .st-card-art{grid-row:span 2;margin-bottom:0}}.st-sample{border:1px solid var(--st-card-line);background:#fbfcfe;border-radius:18px;flex-direction:column;gap:14px;min-width:0;padding:22px;display:flex}.st-sample-card{border:1px solid var(--st-line);background:#fff;border-radius:14px;flex-direction:column;gap:10px;padding:18px;display:flex}.st-sample-answer{border-top:1px solid var(--st-line);color:var(--st-body);padding-top:10px;font-size:15px}.st-grade{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;display:grid}.st-grade-panel{border:1px solid var(--st-line);background:#fff;border-radius:12px;flex-direction:column;gap:8px;padding:14px;display:flex}.st-family{border-radius:18px;flex-flow:wrap;align-items:center;gap:24px;padding:28px}.st-phone{background:var(--st-ink);box-sizing:border-box;border-radius:24px;flex:none;width:128px;height:240px;padding:7px}.st-phone-screen{box-sizing:border-box;background:#fff;border-radius:18px;flex-direction:column;gap:7px;height:100%;padding:12px 10px;display:flex}.st-phone-screen>span:not(.st-phone-brand){background:var(--st-soft);border-radius:6px;height:34px}.st-phone-screen>span:nth-child(2){background:var(--st-tint)}.st-phone-screen>.st-phone-amber{background:var(--st-amber-soft)}.st-phone-brand{color:var(--st-blue);font-size:11px;font-weight:700}.st-bubbles{flex-direction:column;flex:none;gap:8px;width:200px;display:flex}.st-bubble{color:#14301f;background:#dcf8c6;border-radius:12px 12px 12px 4px;padding:10px 12px;font-size:13px}.st-bubble span{color:#1f6b3a;font-size:11px;font-weight:600;display:block}.st-cta--big{border-radius:24px;gap:32px;padding:clamp(28px,5vw,64px)}.st-cta--big h2{letter-spacing:-.6px;flex:none;font-size:clamp(28px,3.6vw,46px);line-height:1.12}.st-cta .st-badge{color:var(--st-ink);letter-spacing:.4px;text-transform:uppercase;background:#fff;padding:6px 14px}.st-cta-lead{color:var(--st-tint);font-size:18px}.st-intro{flex-direction:column;gap:20px;max-width:860px;display:flex}.st-intro .st-lead{max-width:720px}.st-unique{grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:16px;margin:0;padding:0;list-style:none;display:grid}.st-unique li{border:1px solid var(--st-card-line);background:#fff;border-radius:16px;flex-direction:column;gap:8px;padding:22px;display:flex}.st-unique .st-text{font-size:16px}.st-memory{border:1px solid var(--st-card-line);background:#fff;border-radius:18px;flex-direction:column;gap:14px;min-width:0;margin:0;padding:22px;display:flex}.st-memory svg{width:100%;height:auto;display:block}.st-memory-title{font-size:15px;font-weight:600}.st-memory-legend{color:var(--st-body);flex-direction:column;gap:6px;margin:0;padding:0;font-size:14px;list-style:none;display:flex}.st-memory-legend li{align-items:center;gap:10px;display:flex}.st-memory-key{border-top:4px solid var(--st-blue);border-radius:2px;flex:none;width:24px;height:0}.st-memory-key--none{border-top:3px dashed #9aa6b6}.st-slides{display:grid}.st-hero--carousel{padding-top:32px;padding-bottom:var(--st-gap)}.st-slide{visibility:hidden;opacity:0;grid-area:1/1;transition:opacity .4s,visibility .4s}.st-slide--active{visibility:visible;opacity:1}.st-slide>.st-split{align-items:stretch;height:100%}.st-slide-text{flex-direction:column;gap:20px;min-width:0;display:flex}.st-slide-text>.st-btn-row{margin-top:auto;padding-top:8px}.st-slide>.st-split>:not(.st-slide-text){align-self:center}.st-slide-visual{flex-direction:column;min-width:0;display:flex}.st-slide-visual>*{flex:auto}@media (width>=900px){.st-slides .st-split{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}@media (width<=899px){.st-slide-visual,.st-slide .st-art{display:none}}@media (width<=1279px){.st-slides .st-build-pack{display:none}.st-slides .st-build-library{border-right:0}}.st-carousel{position:relative}.st-slides{padding-bottom:52px}.st-carousel-bar{pointer-events:none;justify-content:center;align-items:center;gap:8px;padding-bottom:4px;display:flex;position:absolute;bottom:0;left:0;right:0}.st-carousel-bar>*{pointer-events:auto}.st-carousel-btn{border:1px solid var(--st-card-line);width:44px;height:44px;color:var(--st-ink);cursor:pointer;background:#ffffffeb;border-radius:50%;justify-content:center;align-items:center;padding:0;display:inline-flex;box-shadow:0 2px 8px #0e1a2b1f}.st-carousel-btn:hover{border-color:var(--st-ink)}@media (width>=720px){.st-slides{padding-inline:56px}.st-carousel-bar{align-items:flex-end;top:0}.st-carousel-prev,.st-carousel-next{position:absolute;top:calc(50% - 30px);transform:translateY(-50%)}.st-carousel-prev{left:24px}.st-carousel-next{right:24px}}@media (width>=1430px){.st-slides{padding-inline:0}.st-carousel-prev{left:-32px}.st-carousel-next{right:-32px}}.st-carousel-btn--quiet{box-shadow:none;color:var(--st-muted);background:0 0;border-color:#0000}.st-dots{align-items:center;display:flex}.st-dot{cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;width:28px;height:44px;padding:0;display:inline-flex}.st-dot:before{content:"";background:#b8c4d4;border-radius:999px;width:10px;height:10px;transition:width .2s,background-color .2s}.st-dot[aria-current=true]:before{background:var(--st-blue);width:24px}.st-dot:hover:before{background:var(--st-muted)}.st-dot[aria-current=true]:hover:before{background:var(--st-blue)}.st-carousel-btn:focus-visible,.st-dot:focus-visible{outline:2px solid var(--st-blue);outline-offset:2px}@media (prefers-reduced-motion:reduce){.st-slide,.st-dot:before{transition:none}}.st-scene{grid-template-columns:minmax(0,200px) minmax(0,1fr);align-items:center;gap:16px;display:grid}.st-figure{width:100%;height:auto;display:block}.st-scene--build .st-build-pack{display:none}.st-scene--build .st-build-library{border-right:0}@media (width<=1279px){.st-scene{grid-template-columns:minmax(0,1fr)}.st-scene .st-figure{display:none}}.st-dots-pill{align-items:center;gap:2px;display:flex}@media (width>=900px){.st-hero--carousel{padding-bottom:var(--st-gap)}.st-slides{padding-bottom:0}.st-carousel-bar{padding-bottom:2px}.st-dots-pill{border:1px solid var(--st-card-line);background:#ffffffeb;border-radius:999px;padding:0 4px 0 10px;box-shadow:0 2px 8px #0e1a2b14}}.st-card-art{border-radius:22px;flex:none;justify-content:center;align-items:center;width:84px;height:84px;margin-bottom:6px;display:flex}.st-card-art--library{background:#eaf2fd}.st-card-art--paper{background:#e3f4f1}.st-card-art--ai{background:#efeafe}.st-card-art--revision{background:#fff4d6}.st-card-art--fees{background:#eef8f2}.st-card-art--protect{background:#fdece4}.st-card-art--quiz{background:#e3f4f1}.st-card-art--sessions{background:#fff4d6}.st-card-art--insights{background:#efeafe}.st-card-art--parents{background:#eef8f2}.st-card-art--integrations,.st-card-art--past-papers{background:#eaf2fd}.st-card-art--practice{background:#fdece4}.st-card-art--bank{background:#efeafe}.st-card-art--flashcards{background:#fff4d6}.st-card-art--worked,.st-card-art--exam{background:#e3f4f1}.st-card-art--assignment{background:#fdece4}.st-card-art--rubric{background:#efeafe}.st-card-art--checkpoint{background:#fff4d6}.st-card-art--results{background:#eef8f2}.st-card-art--calendar,.st-card-art--card{background:#eaf2fd}.st-card-art--slip{background:#eef8f2}.st-card-art--clock-lock{background:#fff4d6}.st-card-art--list{background:#fdece4}.st-card-art--telegram{background:#e6f5fd}.st-card-art--enrolled{background:#eaf2fd}.st-card-art--unlock{background:#fdece4}.st-card-art--draft{background:#efeafe}.st-card-art--history{background:#e3f4f1}.st-card-art--watermark{background:#fdece4}.st-card-art--gauge{background:#eef8f2}.st-card-art--outcomes{background:#efeafe}.st-card-art--coverage{background:#eaf2fd}.st-card-art--bell{background:#fff4d6}.st-card-art--children{background:#fdece4}.st-card-art--language{background:#eaf2fd}.st-card-art--invite{background:#eef8f2}.st-card-art--whatsapp{background:#e8f8ee}.st-card-art--zoom{background:#eaf2fd}.st-card-art--video-apps{background:#fdece4}.st-card-art--sms{background:#fff4d6}.st-h1--page{letter-spacing:-.6px;font-size:clamp(28px,2.9vw,38px)}.st-hero--page{padding-bottom:var(--st-gap)}.st-page-hero{flex-direction:column;justify-content:center;gap:14px;display:flex}.st-page-hero .st-lead{max-width:1000px;font-size:clamp(16px,1.32vw,19px)}.st-page-hero-row{align-items:stretch;gap:40px;display:flex}.st-page-hero-row>.st-page-hero{flex:auto;min-width:0}.st-page-hero-row--art-left{flex-direction:row-reverse}.st-hero-art{aspect-ratio:280/196;flex:none;width:clamp(180px,18.75vw,240px);height:auto;display:none}@media (width>=900px){.st-hero--page{padding:40px 0 var(--st-gap)}.st-page-hero{min-height:156px}.st-hero-art{align-self:flex-end;margin-bottom:-40px;display:block}}.st-pathways{flex-direction:column;gap:24px;display:flex}.st-pathway{border:1px solid var(--st-card-line);background:#fff;border-radius:20px;padding:24px}.st-pathway--loading{background:linear-gradient(90deg,#f3f6fa 0%,#fbfcfe 50%,#f3f6fa 100%);min-height:180px}.st-pathway-head{align-items:center;gap:14px;margin-bottom:18px;display:flex}.st-pathway-logo{object-fit:contain;background:var(--st-tint);border-radius:14px;flex:none;width:56px;height:56px}.st-subjects{grid-template-columns:repeat(auto-fill,minmax(min(100%,240px),1fr));gap:12px;margin:0;padding:0;list-style:none;display:grid}@media (width<=599px){.st-pathway{padding:16px}.st-subjects{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.st-root .st-subject{flex-direction:column;align-items:flex-start;gap:8px;min-height:0}}.st-root .st-subject{box-sizing:border-box;border:1px solid var(--st-card-line);height:100%;min-height:72px;color:var(--st-ink);background:#fff;border-radius:14px;align-items:flex-start;gap:12px;padding:12px 14px;text-decoration:none;display:flex}.st-root .st-subject:hover{border-color:var(--st-blue)}.st-subject-logo{object-fit:contain;background:var(--st-soft);border-radius:12px;flex:none;width:44px;height:44px}.st-subject-text{flex-direction:column;gap:4px;min-width:0;display:flex}.st-subject-name{font-weight:600;line-height:1.3}.st-subject-papers{color:var(--st-blue);font-size:13px;font-weight:600}.st-subject-counts{color:var(--st-body);font-size:13px}.st-nowrap{white-space:nowrap}.st-subject-mediums{flex-wrap:wrap;gap:4px;margin-top:2px;display:flex}.st-medium{color:var(--st-body);background:var(--st-soft);border-radius:999px;padding:2px 8px;font-size:11px;font-weight:600}.st-logo-initials{font-family:var(--st-display);color:var(--st-blue);background:var(--st-tint);justify-content:center;align-items:center;font-weight:800;display:inline-flex}.st-pathway-logo.st-logo-initials{font-size:20px}.st-subject-logo.st-logo-initials{font-size:15px}.org-creation{flex-direction:column;gap:1.5rem;max-width:600px;display:flex}.org-creation-title{color:#1f2937;font-size:1.5rem;font-weight:600}.org-creation-subtitle{color:#6b7280;margin-top:-1rem;font-size:.9375rem}.org-creation-form{flex-direction:column;gap:1.25rem;display:flex}.form-label-hint{color:#6b7280;margin-left:.25rem;font-size:.8125rem;font-weight:400}.field-hint{color:#6b7280;margin-top:.25rem;font-size:.8125rem}.org-trial-banner{border:1px solid var(--ui-info-border);border-radius:var(--ui-radius-md);background:var(--ui-info-bg);color:var(--ui-gray-800);font-size:var(--tuto-text-base,.875rem);flex-wrap:wrap;align-items:center;gap:.375rem .5rem;margin:0 0 1.25rem;padding:.5rem .875rem;display:flex}.org-trial-banner-label{font-weight:600}.org-trial-banner--soon{border-color:var(--ui-warning-border-strong,var(--ui-warning-border));background:var(--ui-warning-bg-strong,var(--ui-warning-bg));color:var(--ui-warning-text);font-weight:500}.org-trial-banner--ended{border-color:var(--ui-gray-200);background:var(--ui-gray-50)}.org-trial-banner-link{color:var(--tuto-action);font-weight:600;text-decoration:underline}.org-trial-banner-link:hover{color:var(--tuto-action-hover)}.org-trial-banner-close{color:var(--ui-gray-500);cursor:pointer;background:0 0;border:none;margin-left:auto;padding:0 .25rem;font-size:1.125rem;line-height:1}.org-trial-banner-close:hover{color:var(--ui-gray-800)}.org-trial-card{max-width:var(--admin-form-max,640px);border:1px solid var(--ui-primary-200,var(--ui-gray-200));border-radius:var(--ui-radius-lg);background:var(--ui-primary-50);flex-direction:column;gap:1rem;margin-bottom:1.5rem;padding:1.5rem;display:flex}.org-trial-card--soon{border-color:var(--ui-warning-border-strong,var(--ui-warning-border));background:var(--ui-warning-bg)}.org-trial-card--ended{border-color:var(--ui-gray-200);background:var(--ui-surface)}.org-trial-card-header{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.org-trial-card-title{color:var(--ui-gray-800);margin:0;font-size:1.125rem;font-weight:600}.org-trial-card-days{color:var(--ui-gray-800);margin-left:auto;font-weight:600}.org-trial-card-facts{font-size:var(--tuto-text-base,.875rem);grid-template-columns:max-content 1fr;gap:.375rem 1.25rem;margin:0;display:grid}.org-trial-card-facts dt{color:var(--ui-gray-500)}.org-trial-card-facts dd{color:var(--ui-gray-800);margin:0}.org-trial-card-text{font-size:var(--tuto-text-base,.875rem);color:var(--ui-gray-700);margin:0;line-height:1.5}.org-trial-card-actions{flex-wrap:wrap;gap:.5rem;display:flex}.org-admin-loading{color:var(--ui-gray-500);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:1rem;font-size:.875rem;display:flex}.org-admin-error{color:var(--ui-danger);flex:1;padding:2rem;font-size:.875rem}.org-admin-dashboard{flex-direction:column;gap:1.5rem;display:flex}.org-admin-dashboard-loading{color:var(--ui-gray-500);flex-direction:column;justify-content:center;align-items:center;gap:1rem;padding:3rem;font-size:.875rem;display:flex}.org-admin-dashboard-loading .loading-spinner{border:3px solid var(--ui-gray-200);border-top-color:var(--ui-primary-500);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite ui-spin}.org-admin-dashboard-error{background-color:var(--ui-danger-bg);border:1px solid var(--ui-danger-border);border-radius:var(--ui-radius-lg);color:var(--ui-danger);flex-direction:column;align-items:flex-start;gap:.75rem;padding:1rem 1.25rem;font-size:.9375rem;display:flex}.org-admin-dashboard-error p{margin:0}.org-admin-dashboard-top{grid-template-columns:minmax(0,2fr) minmax(0,1fr);align-items:start;gap:1rem;display:grid}@media (width<=960px){.org-admin-dashboard-top{grid-template-columns:minmax(0,1fr)}}.org-admin-dashboard-side{flex-direction:column;gap:1rem;display:flex}.org-admin-dashboard-section-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.5rem;margin-bottom:.75rem;display:flex}.org-admin-dashboard-section-title,.org-admin-inbox-title,.org-admin-side-card-title{color:var(--ui-gray-800);margin:0;font-size:1rem;font-weight:600}.org-admin-dashboard-section-meta{color:var(--ui-gray-500);font-size:.8125rem}.org-admin-inbox,.org-admin-side-card{background-color:var(--ui-surface);border:1px solid var(--ui-gray-200);border-radius:var(--ui-radius-lg);flex-direction:column;gap:.75rem;padding:1.25rem;display:flex}.org-admin-inbox{border-color:var(--ui-primary-200)}.org-admin-inbox-header{align-items:center;gap:.5rem;display:flex}.org-admin-inbox-count{background-color:var(--ui-primary-100);min-width:1.5rem;color:var(--ui-primary-700);text-align:center;border-radius:999px;padding:.125rem .5rem;font-size:.8125rem;font-weight:600}.org-admin-inbox-list{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.org-admin-inbox-item{border-top:1px solid var(--ui-gray-100);grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:.75rem;padding:.75rem 0;display:grid}.org-admin-inbox-item:first-child{border-top:none}@media (width<=560px){.org-admin-inbox-item{grid-template-columns:minmax(0,1fr) auto}.org-admin-inbox-actions{grid-column:1/-1}}.org-admin-inbox-item-main{flex-direction:column;min-width:0;display:flex}.org-admin-inbox-item-kind{color:var(--ui-gray-500);text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;overflow:hidden}.org-admin-inbox-item-name{color:var(--ui-gray-800);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.org-admin-inbox-item-email{color:var(--ui-gray-500);text-overflow:ellipsis;white-space:nowrap;font-size:.8125rem;overflow:hidden}.org-admin-inbox-age{white-space:nowrap;background-color:var(--ui-gray-100);color:var(--ui-gray-600);border-radius:999px;padding:.125rem .5rem;font-size:.75rem;font-weight:600}.org-admin-inbox-age--aging{background-color:var(--ui-warning-bg);color:var(--ui-warning-text)}.org-admin-inbox-age--overdue{background-color:var(--ui-danger-bg);color:var(--ui-danger-text)}.org-admin-inbox-actions{gap:.5rem;display:flex}.org-admin-inbox-footer{flex-wrap:wrap;gap:1rem;font-size:.875rem;display:flex}.org-admin-side-card-title{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.org-admin-capacity-tier{color:var(--ui-gray-500);font-size:.75rem;font-weight:600}.org-admin-capacity-row{color:var(--ui-gray-700);flex-direction:column;gap:.375rem;font-size:.875rem;display:flex}.org-admin-capacity-row-head{justify-content:space-between;gap:.5rem;display:flex}.org-admin-capacity-value{font-variant-numeric:tabular-nums;color:var(--ui-gray-600)}.org-admin-capacity-value--warn{color:var(--ui-warning-text);font-weight:600}.org-admin-capacity-value--full{color:var(--ui-danger-text);font-weight:600}.org-admin-capacity-bar{background-color:var(--ui-gray-100);border-radius:999px;height:6px;overflow:hidden}.org-admin-capacity-bar-fill{background-color:var(--ui-primary-500);border-radius:999px;height:100%}.org-admin-capacity-bar-fill--warn{background-color:var(--ui-warning-solid)}.org-admin-capacity-bar-fill--full{background-color:var(--ui-danger)}.org-admin-quick-actions{flex-wrap:wrap;gap:.5rem;display:flex}.org-analytics-page{flex-direction:column;gap:1.5rem;display:flex}.org-analytics-back-link{color:var(--ui-accent-interactive);font-size:.875rem;text-decoration:none}.org-analytics-back-link:hover{text-decoration:underline}.org-analytics-date-picker{background-color:var(--ui-surface);border:1px solid var(--ui-gray-200);border-radius:var(--ui-radius-lg);padding:1.25rem}.org-analytics-date-fields{flex-wrap:wrap;gap:1rem;display:flex}.org-analytics-date-field{flex-direction:column;gap:.375rem;display:flex}.org-analytics-date-field label{color:var(--ui-gray-500);text-transform:uppercase;letter-spacing:.05em;font-size:.75rem;font-weight:600}.org-analytics-date-field input[type=date]{border:1px solid var(--ui-gray-300);border-radius:var(--ui-radius-md);color:var(--ui-gray-800);background-color:var(--ui-surface);padding:.5rem .75rem;font-size:.875rem}.org-analytics-date-field input[type=date]:focus{border-color:var(--ui-accent-interactive);box-shadow:var(--ui-focus-ring);outline:none}.org-analytics-date-error{color:var(--ui-danger);margin:.75rem 0 0;font-size:.8125rem;font-weight:500}.org-analytics-date-hint{color:var(--ui-text-subtle);margin:.5rem 0 0;font-size:.75rem}.org-analytics-cached-notice{background-color:var(--ui-sky-50);border:1px solid var(--ui-sky-200);border-radius:var(--ui-radius-lg);color:var(--ui-sky-900);align-items:center;gap:.5rem;padding:.75rem 1rem;font-size:.875rem;display:flex}.org-analytics-cached-icon{flex-shrink:0}.org-analytics-loading{justify-content:center;padding:3rem;display:flex}.org-analytics-loading .loading-spinner{border:3px solid var(--ui-gray-200);border-top-color:var(--ui-primary-500);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite ui-spin}.org-analytics-error{color:var(--ui-danger);background-color:var(--ui-danger-bg);border:1px solid var(--ui-danger-border);border-radius:var(--ui-radius-lg);padding:1rem;font-size:.9375rem}.ui-section-title.org-analytics-section-title{margin:0 0 1rem}.course-copy-page{flex-direction:column;gap:1.5rem;display:flex}.course-copy-wizard{max-width:var(--admin-readable-max)}.course-copy-stepper{gap:.5rem;margin-bottom:2rem;padding:0;display:flex}.course-copy-step{border:1px solid var(--color-border,var(--ui-slate-200));border-radius:var(--ui-radius-md);background:var(--color-surface-primary,var(--ui-surface));color:var(--color-text-secondary,var(--ui-slate-500));cursor:pointer;flex:1;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.875rem;transition:border-color .15s,background .15s;display:flex}.course-copy-step:disabled{cursor:not-allowed;opacity:.6}.course-copy-step--active{border-color:var(--ui-accent-interactive);background:var(--color-primary-light,var(--ui-primary-50));color:var(--ui-accent-interactive);font-weight:500}.course-copy-step--completed{border-color:var(--color-success,var(--ui-success-accent));background:var(--color-success-light,var(--ui-success-bg));color:var(--color-success,var(--ui-success-solid))}.course-copy-step-indicator{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:1.5rem;height:1.5rem;font-size:.75rem;font-weight:600;display:inline-flex}.course-copy-step--upcoming .course-copy-step-indicator{background:var(--color-surface-secondary,var(--ui-slate-100));color:var(--color-text-secondary,var(--ui-slate-500))}.course-copy-step--active .course-copy-step-indicator{background:var(--ui-accent-interactive);color:var(--ui-on-accent)}.course-copy-step--completed .course-copy-step-indicator{background:var(--color-success,var(--ui-success-accent));color:var(--ui-on-solid)}.course-copy-step-label{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.course-copy-step-content{min-height:300px}.course-copy-step-actions{border-top:1px solid var(--color-border,var(--ui-slate-200));gap:.75rem;margin-top:1.5rem;padding-top:1rem;display:flex}.course-copy-back-btn,.course-copy-next-btn{border-radius:var(--ui-radius-md);cursor:pointer;padding:.5rem 1.25rem;font-size:.875rem;font-weight:500;transition:background .15s,opacity .15s}.course-copy-back-btn{background:var(--color-surface-secondary,var(--ui-slate-100));border:1px solid var(--color-border,var(--ui-slate-200));color:var(--color-text-primary,var(--ui-slate-800))}.course-copy-back-btn:hover{background:var(--color-surface-tertiary,var(--ui-slate-200))}.course-copy-next-btn{background:var(--ui-accent-interactive);color:var(--ui-on-accent);border:none}.course-copy-next-btn:hover:not(:disabled){background:var(--ui-accent-interactive-hover)}.course-copy-next-btn:disabled{opacity:.5;cursor:not-allowed}.course-copy-selected-course{background:var(--color-surface-secondary,var(--ui-slate-50));border:1px solid var(--color-border,var(--ui-slate-200));border-radius:var(--ui-radius-md);align-items:center;gap:.5rem;margin-bottom:1rem;padding:.75rem 1rem;font-size:.875rem;display:flex}.course-copy-selected-label{color:var(--color-text-secondary,var(--ui-slate-500));font-weight:500}.course-copy-selected-title{color:var(--color-text-primary,var(--ui-slate-800));font-weight:600}.course-copy-source-selector{flex-direction:column;gap:1rem;display:flex}.course-copy-search-wrapper{flex-direction:column;gap:.375rem;display:flex}.course-copy-label{color:var(--color-text-secondary,var(--ui-slate-500));font-size:.8125rem;font-weight:500}.course-copy-search-input{background:var(--ui-surface);color:var(--ui-text);border:1px solid var(--color-border,var(--ui-slate-200));border-radius:var(--ui-radius-md);outline:none;padding:.5rem .75rem;font-size:.875rem;transition:border-color .15s}.course-copy-search-input:focus{border-color:var(--ui-accent-interactive);box-shadow:var(--ui-focus-ring)}.course-copy-course-list{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.course-copy-course-item{border:1px solid var(--color-border,var(--ui-slate-200));border-radius:var(--ui-radius-md);transition:border-color .15s}.course-copy-course-item:hover{border-color:var(--color-primary,var(--ui-primary-500))}.course-copy-course-btn{text-align:left;cursor:pointer;background:0 0;border:none;width:100%;padding:.75rem 1rem;display:block}.course-copy-course-info{flex-direction:column;gap:.25rem;display:flex}.course-copy-course-title{color:var(--color-text-primary,var(--ui-slate-800));font-size:.9375rem;font-weight:500}.course-copy-course-desc{color:var(--color-text-secondary,var(--ui-slate-500));font-size:.8125rem}.course-copy-course-meta{color:var(--ui-text-subtle);gap:1rem;margin-top:.25rem;font-size:.75rem;display:flex}.course-copy-content-selector{flex-direction:column;gap:1rem;display:flex}.course-copy-selection-controls{border-bottom:1px solid var(--color-border,var(--ui-slate-200));align-items:center;gap:.75rem;padding-bottom:.75rem;display:flex}.course-copy-select-all-btn,.course-copy-deselect-all-btn{border:1px solid var(--color-border,var(--ui-slate-200));border-radius:var(--ui-radius-sm);background:var(--color-surface-primary,var(--ui-surface));cursor:pointer;padding:.375rem .75rem;font-size:.8125rem;transition:background .15s}.course-copy-select-all-btn:hover,.course-copy-deselect-all-btn:hover{background:var(--color-surface-secondary,var(--ui-slate-100))}.course-copy-selection-count{color:var(--color-text-secondary,var(--ui-slate-500));margin-left:auto;font-size:.8125rem}.course-copy-toc-tree{padding-left:0}.course-copy-toc-section{margin-bottom:.25rem}.course-copy-toc-section-header{border-radius:var(--ui-radius-sm);align-items:center;gap:.5rem;padding:.5rem;font-size:.875rem;font-weight:500;display:flex}.course-copy-toc-section-header:hover{background:var(--color-surface-secondary,var(--ui-slate-50))}.course-copy-toc-section-title{color:var(--color-text-primary,var(--ui-slate-800))}.course-copy-toc-section-content{padding-left:1.5rem}.course-copy-toc-item{border-radius:var(--ui-radius-sm);align-items:center;gap:.5rem;padding:.375rem .5rem;font-size:.8125rem;display:flex}.course-copy-toc-item:hover{background:var(--color-surface-secondary,var(--ui-slate-50))}.course-copy-toc-item-type{color:var(--color-text-secondary,var(--ui-slate-500));white-space:nowrap;font-size:.75rem}.course-copy-toc-item-title{color:var(--color-text-primary,var(--ui-slate-800))}.course-copy-toc-section-header input[type=checkbox],.course-copy-toc-item input[type=checkbox]{width:1rem;height:1rem;accent-color:var(--color-primary,var(--ui-primary-500));cursor:pointer;flex-shrink:0}.course-copy-job-form{flex-direction:column;gap:1.25rem;display:flex}.course-copy-form-summary{background:var(--color-surface-secondary,var(--ui-slate-50));border-radius:var(--ui-radius-md);align-items:center;gap:.5rem;padding:.75rem 1rem;font-size:.875rem;display:flex}.course-copy-form-summary-label{color:var(--color-text-secondary,var(--ui-slate-500))}.course-copy-form-summary-count{color:var(--color-text-primary,var(--ui-slate-800));font-weight:600}.course-copy-form-field{flex-direction:column;gap:.375rem;display:flex}.course-copy-title-input{background:var(--ui-surface);color:var(--ui-text);border:1px solid var(--color-border,var(--ui-slate-200));border-radius:var(--ui-radius-md);outline:none;padding:.5rem .75rem;font-size:.875rem;transition:border-color .15s}.course-copy-title-input:focus{border-color:var(--ui-accent-interactive);box-shadow:var(--ui-focus-ring)}.course-copy-title-input--error{border-color:var(--color-error,var(--ui-danger-accent))}.course-copy-title-input--error:focus{box-shadow:var(--ui-danger-ring)}.course-copy-field-error{color:var(--color-error,var(--ui-danger-accent));font-size:.75rem}.course-copy-submit-btn{border-radius:var(--ui-radius-md);background:var(--ui-accent-interactive);color:var(--ui-on-accent);cursor:pointer;border:none;justify-content:center;align-self:flex-start;align-items:center;gap:.5rem;padding:.625rem 1.5rem;font-size:.875rem;font-weight:500;transition:background .15s,opacity .15s;display:inline-flex}.course-copy-submit-btn:hover:not(:disabled){background:var(--ui-accent-interactive-hover)}.course-copy-submit-btn:disabled{opacity:.5;cursor:not-allowed}.course-copy-jobs-list{flex-direction:column;gap:1rem;display:flex}.course-copy-jobs-title-cell{max-width:200px}.course-copy-jobs-dest-title{color:var(--color-text-primary,var(--ui-slate-800));font-weight:500}.course-copy-jobs-date-cell{white-space:nowrap;color:var(--color-text-secondary,var(--ui-slate-500));font-size:.8125rem}.course-copy-job-problems{color:var(--color-text-secondary,var(--ui-slate-500));margin-top:.375rem;font-size:.8125rem}.course-copy-job-problems summary{cursor:pointer;color:var(--ui-warning-text,var(--color-text-primary,var(--ui-slate-800)));font-weight:500}.course-copy-job-problems ul{margin:.375rem 0 0;padding-left:1.125rem}.course-copy-job-problem-title{color:var(--color-text-primary,var(--ui-slate-800));font-weight:500}.course-copy-progress-wrapper{align-items:center;gap:.5rem;min-width:120px;display:flex}.course-copy-progress-bar{background:var(--color-surface-secondary,var(--ui-slate-200));border-radius:3px;flex:1;height:6px;overflow:hidden}.course-copy-progress-fill{background:var(--color-primary,var(--ui-primary-500));border-radius:3px;height:100%;transition:width .3s}.course-copy-progress-text{color:var(--color-text-secondary,var(--ui-slate-500));white-space:nowrap;font-size:.75rem}.course-copy-cancel-btn{border:1px solid var(--color-error,var(--ui-danger-accent));border-radius:var(--ui-radius-sm);color:var(--color-error,var(--ui-danger-accent));cursor:pointer;background:0 0;padding:.375rem .75rem;font-size:.8125rem;font-weight:500;transition:background .15s}.course-copy-cancel-btn:hover:not(:disabled){background:var(--ui-danger-bg)}.course-copy-cancel-btn:disabled{opacity:.5;cursor:not-allowed}.course-copy-loading{color:var(--color-text-secondary,var(--ui-slate-500));flex-direction:column;justify-content:center;align-items:center;gap:.75rem;padding:3rem 1rem;font-size:.875rem;display:flex}.course-copy-spinner{border:2px solid var(--color-border,var(--ui-slate-200));border-top-color:var(--color-primary,var(--ui-primary-500));border-radius:50%;width:1.5rem;height:1.5rem;animation:.6s linear infinite ui-spin}.course-copy-btn-spinner{border:2px solid color-mix(in srgb, currentColor 30%, transparent);border-top-color:currentColor;border-radius:50%;width:.875rem;height:.875rem;animation:.6s linear infinite ui-spin;display:inline-block}.course-copy-error{background:var(--ui-danger-bg);border:1px solid var(--ui-danger-border);border-radius:var(--ui-radius-md);color:var(--color-error,var(--ui-danger-hover));padding:1rem;font-size:.875rem}.course-copy-error p{margin:0 0 .75rem}.course-copy-retry-btn{border:1px solid var(--color-error,var(--ui-danger-accent));border-radius:var(--ui-radius-sm);color:var(--color-error,var(--ui-danger-accent));cursor:pointer;background:0 0;padding:.375rem .75rem;font-size:.8125rem}.course-copy-retry-btn:hover{background:var(--ui-danger-bg)}@media (width<=768px){.course-copy-stepper{flex-direction:column}}.course-copy-ws-progress{background:var(--color-surface-primary,var(--ui-surface));border:1px solid var(--color-border,var(--ui-slate-200));border-radius:var(--ui-radius-lg);width:320px;box-shadow:var(--ui-shadow-sm);z-index:900;padding:1rem 1.25rem;position:fixed;bottom:1.5rem;right:1.5rem}.course-copy-ws-progress-header{justify-content:space-between;align-items:center;margin-bottom:.75rem;display:flex}.course-copy-ws-progress-label{color:var(--color-text-primary,var(--ui-slate-800));font-size:.875rem;font-weight:500}.course-copy-ws-disconnected{color:var(--color-warning,var(--ui-warning-solid));font-size:.75rem;font-style:italic}.course-copy-ws-progress-bar-wrapper{align-items:center;gap:.5rem;display:flex}.course-copy-ws-progress-message{color:var(--color-text-secondary,var(--ui-slate-500));margin:.5rem 0 0;font-size:.8125rem}.course-copy-notification-link{color:var(--ui-accent-interactive);font-size:.875rem;font-weight:500;text-decoration:underline}.course-copy-notification-link:hover{color:var(--ui-accent-interactive-hover)}.course-copy-notification-failed-items{margin:.25rem 0 0;padding-left:1.25rem;font-size:.8125rem;list-style:outside}.course-copy-notification-failed-items li{margin-bottom:.125rem}.pending-review-section{flex-direction:column;gap:1rem;display:flex}.pending-review-section-title{color:var(--ui-gray-800);margin:0;font-size:1.125rem;font-weight:600}.pending-review-loading{color:var(--ui-gray-500);align-items:center;gap:.75rem;padding:1rem;font-size:.875rem;display:flex}.pending-review-spinner{border:2px solid var(--ui-gray-200);border-top-color:var(--ui-primary-500);border-radius:50%;flex-shrink:0;width:20px;height:20px;animation:.7s linear infinite ui-spin}.pending-review-error{background-color:var(--ui-danger-bg);border:1px solid var(--ui-danger-border);border-radius:var(--ui-radius-lg);color:var(--ui-danger);flex-direction:column;align-items:flex-start;gap:.5rem;padding:.875rem 1rem;font-size:.875rem;display:flex}.pending-review-error p{margin:0}.pending-review-retry-btn{background-color:var(--ui-danger);color:var(--ui-on-solid);cursor:pointer;border:none;border-radius:5px;padding:.3rem .75rem;font-size:.8125rem;font-weight:500;transition:background-color .15s}.pending-review-retry-btn:hover{background-color:var(--ui-danger-hover)}.pending-review-retry-btn:focus-visible{outline:2px solid var(--ui-danger);outline-offset:2px}.pending-review-cards{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.75rem;margin:0;padding:0;list-style:none;display:grid}.pending-review-card{background-color:var(--ui-surface);border:1px solid var(--ui-gray-200);border-radius:var(--ui-radius-lg);width:100%;box-shadow:var(--ui-shadow-sm);cursor:pointer;text-align:left;flex-direction:column;gap:.3rem;padding:1rem 1.125rem;transition:border-color .15s,box-shadow .15s;display:flex}.pending-review-card:hover{border-color:var(--ui-accent-interactive);box-shadow:var(--ui-shadow-md)}.pending-review-card:focus-visible{outline:2px solid var(--ui-focus);outline-offset:2px}.pending-review-card-name{color:var(--ui-gray-800);white-space:nowrap;text-overflow:ellipsis;font-size:.9375rem;font-weight:600;overflow:hidden}.pending-review-card-count{color:var(--ui-warning-solid);font-size:.8125rem;font-weight:500}.pending-review-card-timestamp{color:var(--ui-text-subtle);font-size:.75rem}.org-admin-panel{background-color:var(--ui-surface);border:1px solid var(--ui-gray-200);border-radius:var(--ui-radius-lg);flex-direction:column;gap:.5rem;padding:1.25rem;display:flex}.org-admin-panel .org-admin-dashboard-section-head{margin-bottom:0}.org-admin-trend-summary{color:var(--ui-gray-600);margin:0;font-size:.875rem}.org-admin-trend-legend{color:var(--ui-gray-600);gap:1rem;font-size:.8125rem;display:flex}.org-admin-trend-legend>span{align-items:center;gap:.375rem;display:inline-flex}.org-admin-trend-key{border-radius:1px;width:14px;height:2px;display:inline-block}.org-admin-trend-key--current{background-color:var(--ui-primary-500)}.org-admin-trend-key--previous{background-color:var(--ui-gray-300)}.org-admin-trend-chart{width:100%;min-height:220px}.org-admin-trend-tooltip{background-color:var(--ui-surface);border:1px solid var(--ui-gray-200);border-radius:var(--ui-radius-md);box-shadow:var(--ui-shadow-sm);color:var(--ui-gray-800);padding:.5rem .75rem;font-size:.8125rem}.org-admin-trend-tooltip-date{margin-bottom:.25rem;font-weight:600}.org-admin-trend-tooltip-row{align-items:center;gap:.375rem;display:flex}.org-admin-trend-tooltip-row--muted{color:var(--ui-gray-500)}.org-admin-table-scroll{overflow-x:auto}.org-admin-data-table{border-collapse:collapse;width:100%;font-size:.875rem}.org-admin-data-table th,.org-admin-data-table td{border-top:1px solid var(--ui-gray-100);text-align:left;white-space:nowrap;padding:.625rem .75rem}.org-admin-data-table thead th{color:var(--ui-gray-500);border-top:none;font-size:.75rem;font-weight:600}.org-admin-data-table tbody th{white-space:normal;font-weight:600}.org-admin-data-table .is-numeric{text-align:right;font-variant-numeric:tabular-nums}.org-admin-health{background-color:var(--ui-gray-100);color:var(--ui-gray-600);border-radius:999px;align-items:center;gap:.375rem;padding:.125rem .5rem;font-size:.75rem;font-weight:600;display:inline-flex}.org-admin-health-icon{font-size:.6875rem}.org-admin-health--good{background-color:var(--ui-success-bg);color:var(--ui-success-text)}.org-admin-health--attention{background-color:var(--ui-warning-bg);color:var(--ui-warning-text)}.org-admin-health--at_risk{background-color:var(--ui-danger-bg);color:var(--ui-danger-text)}.org-admin-dashboard-pair{grid-template-columns:minmax(0,3fr) minmax(0,2fr);align-items:start;gap:1rem;display:grid}@media (width<=960px){.org-admin-dashboard-pair{grid-template-columns:minmax(0,1fr)}}.org-admin-risk-item,.org-admin-content-item{border-top:1px solid var(--ui-gray-100);justify-content:space-between;align-items:center;gap:.75rem;padding:.625rem 0;display:flex}.org-admin-risk-item:first-child,.org-admin-content-item:first-child{border-top:none}.org-admin-funnel{flex-direction:column;gap:.75rem;margin:0;padding:0;list-style:none;display:flex}.org-admin-funnel-stage{flex-direction:column;gap:.25rem;display:flex}.org-admin-funnel-step{color:var(--ui-gray-500);font-size:.75rem}.org-admin-funnel-row{color:var(--ui-gray-700);justify-content:space-between;gap:.5rem;font-size:.875rem;display:flex}.org-admin-funnel-count{font-variant-numeric:tabular-nums;color:var(--ui-gray-800);font-weight:600}.org-admin-funnel-track{background-color:var(--ui-gray-100);border-radius:4px;height:10px;overflow:hidden}.org-admin-funnel-bar{background-color:var(--ui-primary-500);border-radius:4px;height:100%}.org-admin-content-columns{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;display:grid}.org-admin-content-heading{color:var(--ui-gray-600);margin:0 0 .25rem;font-size:.8125rem;font-weight:600}.org-admin-content-list{margin:0;padding:0;list-style:none}.org-admin-content-stats{color:var(--ui-gray-600);white-space:nowrap;font-variant-numeric:tabular-nums;flex-direction:column;align-items:flex-end;gap:.125rem;font-size:.75rem;display:flex}.org-admin-dashboard-section-actions{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.org-admin-activity-item{border-top:1px solid var(--ui-gray-100);color:var(--ui-gray-700);justify-content:space-between;align-items:baseline;gap:1rem;padding:.5rem 0;font-size:.875rem;display:flex}.org-admin-activity-item:first-child{border-top:none}.org-admin-activity-time{color:var(--ui-gray-500);white-space:nowrap;flex-shrink:0;font-size:.75rem}.org-admin-customize-list{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.5rem 1rem;display:grid}.org-admin-customize-option{color:var(--ui-gray-700);cursor:pointer;align-items:center;gap:.5rem;font-size:.875rem;display:flex}.org-admin-course-form-page{max-width:680px}.org-admin-course-form-loading{color:var(--ui-gray-500);flex-direction:column;justify-content:center;align-items:center;gap:1rem;padding:3rem 1rem;font-size:.875rem;display:flex}.org-admin-course-form-server-error{color:var(--ui-danger-text);background-color:var(--ui-danger-bg);border:1px solid var(--ui-danger-border);border-radius:var(--ui-radius-md);margin-bottom:1.25rem;padding:.75rem 1rem;font-size:.875rem}.org-admin-course-form{flex-direction:column;gap:1.25rem;display:flex}.org-admin-form-field{flex-direction:column;gap:.375rem;display:flex}.org-admin-form-label{color:var(--ui-gray-700);font-size:.875rem;font-weight:500}.org-admin-form-input{border:1px solid var(--ui-gray-300);border-radius:var(--ui-radius-md);background-color:var(--ui-surface);color:var(--ui-gray-800);padding:.5rem .75rem;font-size:.9375rem;transition:border-color .15s,box-shadow .15s}.org-admin-form-input::placeholder{color:var(--ui-text-subtle)}.org-admin-form-input:focus{border-color:var(--ui-accent-interactive);box-shadow:0 0 0 3px var(--ui-primary-100);outline:none}.org-admin-form-input:disabled{background-color:var(--ui-gray-50);color:var(--ui-gray-500);cursor:not-allowed}.org-admin-form-input-error{border-color:var(--ui-danger-accent)}.org-admin-form-input-error:focus{border-color:var(--ui-danger-accent);box-shadow:var(--ui-danger-ring)}.org-admin-form-textarea{resize:vertical;min-height:120px}.org-admin-form-row{grid-template-columns:1fr 1fr;gap:1rem;display:grid}@media (width<=480px){.org-admin-form-row{grid-template-columns:1fr}}.org-admin-form-field-error{color:var(--ui-danger-accent);margin:0;font-size:.8125rem}.org-admin-form-actions{gap:.75rem;margin-top:.5rem;display:flex}.org-admin-form-actions .btn{padding:.625rem 1.25rem}.org-admin-form-success{color:var(--ui-success-text);background-color:var(--ui-success-bg);border:1px solid var(--ui-success-border);border-radius:var(--ui-radius-md);margin-bottom:1.25rem;padding:.75rem 1rem;font-size:.875rem}.org-branding-editor{flex-direction:column;gap:1.5rem;display:flex}.org-branding-editor-layout{max-width:calc(2 * var(--admin-form-max) + 2rem);grid-template-columns:1fr 1fr;align-items:start;gap:2rem;display:grid}@media (width<=768px){.org-branding-editor-layout{grid-template-columns:1fr}}.org-branding-form{flex-direction:column;gap:1.25rem;display:flex}.org-branding-field{flex-direction:column;gap:.375rem;display:flex}.org-branding-label{color:var(--ui-gray-700);font-size:.875rem;font-weight:600}.org-branding-input{background:var(--ui-surface);color:var(--ui-text);border:1px solid var(--ui-gray-300);border-radius:var(--ui-radius-md);padding:.5rem .75rem;font-family:inherit;font-size:.875rem}.org-branding-input:focus{border-color:var(--ui-accent-interactive);box-shadow:var(--ui-focus-ring);outline:none}.org-branding-color-row{align-items:center;gap:.5rem;display:flex}.org-branding-color-picker{border:1px solid var(--ui-gray-300);border-radius:var(--ui-radius-md);cursor:pointer;background:0 0;width:40px;height:36px;padding:2px}.org-branding-color-picker:focus{border-color:var(--ui-accent-interactive);box-shadow:var(--ui-focus-ring);outline:none}.org-branding-color-text{background:var(--ui-surface);color:var(--ui-text);border:1px solid var(--ui-gray-300);border-radius:var(--ui-radius-md);flex:1;padding:.5rem .75rem;font-family:monospace;font-size:.875rem}.org-branding-color-text:focus{border-color:var(--ui-accent-interactive);box-shadow:var(--ui-focus-ring);outline:none}.org-branding-textarea{background:var(--ui-surface);color:var(--ui-text);border:1px solid var(--ui-gray-300);border-radius:var(--ui-radius-md);resize:vertical;width:100%;padding:.75rem;font-family:inherit;font-size:.875rem;line-height:1.5}.org-branding-textarea:focus{border-color:var(--ui-accent-interactive);box-shadow:var(--ui-focus-ring);outline:none}.org-branding-hint{color:var(--ui-gray-500);margin:0;font-size:.75rem}.org-branding-form>.ui-btn{align-self:flex-start}.org-branding-preview{flex-direction:column;gap:.75rem;display:flex}.org-branding-preview-title{color:var(--ui-gray-700);margin:0;font-size:1rem;font-weight:600}.org-branding-preview-card{border:2px solid var(--org-brand-border,var(--ui-gray-200));border-radius:var(--ui-radius-lg);box-shadow:var(--ui-shadow-sm);overflow:hidden}.org-branding-preview-header{background-color:var(--org-brand-primary);background-image:linear-gradient(135deg, var(--org-brand-primary), var(--org-brand-secondary));color:var(--ui-white);background-position:50%;background-size:cover;align-items:center;gap:.75rem;padding:1rem 1.25rem;display:flex}.org-branding-preview-logo{border-radius:var(--ui-radius-md);object-fit:cover;background-color:#fff3;width:40px;height:40px}.org-branding-preview-initials{color:var(--ui-white);border:1px solid #ffffff59;justify-content:center;align-items:center;font-weight:700;display:inline-flex}.org-branding-initials,.org-branding-banner-fallback{background:linear-gradient(135deg, var(--org-brand-primary), var(--org-brand-secondary));width:100%;height:100%;color:var(--ui-white);justify-content:center;align-items:center;font-size:1.75rem;font-weight:700;display:flex}.org-branding-preview-org-name{font-size:1rem;font-weight:600}.org-branding-preview-body{flex-direction:column;gap:.75rem;padding:1rem 1.25rem;display:flex}.org-branding-preview-description{color:var(--ui-gray-600);margin:0;font-size:.875rem;line-height:1.5}.org-branding-preview-placeholder{color:var(--ui-text-subtle);font-style:italic}.org-branding-preview-accent{background-color:var(--org-brand-secondary);border-radius:var(--ui-radius-sm);align-self:flex-start;align-items:center;padding:.375rem .75rem;display:inline-flex}.org-branding-preview-accent-text{color:var(--ui-white);font-size:.75rem;font-weight:500}.org-settings{flex-direction:column;gap:1.5rem;display:flex}.org-settings-form{max-width:var(--admin-form-max)}.org-settings-form-actions{justify-content:flex-end;display:flex}.org-settings-field{flex-direction:column;gap:.375rem;display:flex}.org-settings-label{color:var(--ui-gray-700);font-size:.875rem;font-weight:500}.org-settings-tier{margin:0;font-size:.9375rem}.org-settings-tier-label{color:var(--ui-gray-500)}.org-settings-tier-value{color:var(--ui-gray-800);text-transform:capitalize;font-weight:600}.org-settings-usage-grid{grid-template-columns:1fr;gap:1rem;display:grid}@media (width>=640px){.org-settings-usage-grid{grid-template-columns:repeat(2,1fr)}}.usage-meter{flex-direction:column;gap:.375rem;display:flex}.usage-meter-header{justify-content:space-between;align-items:center;display:flex}.usage-meter-label{color:var(--ui-gray-700);font-size:.8125rem;font-weight:500}.usage-meter-count{color:var(--ui-gray-500);font-size:.8125rem}.usage-meter-track{background-color:var(--ui-gray-200);border-radius:var(--ui-radius-sm);height:8px;overflow:hidden}.usage-meter-bar{background-color:var(--ui-primary-500);border-radius:var(--ui-radius-sm);height:100%;transition:width .3s}.usage-meter-bar--warning{background-color:var(--ui-warning-accent)}.usage-meter-warning{color:var(--ui-warning-solid);font-size:.75rem;font-weight:500}.afc-form-page{flex-direction:column;gap:1.5rem;display:flex}.afc-form-page__summary{color:var(--ui-gray-600);flex-wrap:wrap;align-items:center;gap:.5rem 1rem;font-size:.875rem;display:flex}.afc-form-page__summary-item{white-space:nowrap}.afc-loading{margin:2rem auto}.afc-form{max-width:var(--admin-form-max);flex-direction:column;gap:1.25rem;display:flex}.afc-form__field{flex-direction:column;gap:.375rem;display:flex}.afc-form__label{color:var(--ui-gray-700);font-size:.875rem;font-weight:600}.afc-form__optional{color:var(--ui-gray-500);font-weight:400}.afc-form__hint{color:var(--ui-gray-500);font-size:.8125rem}.afc-form__input{border:1px solid var(--ui-gray-300);border-radius:var(--ui-radius-md);background-color:var(--ui-surface);color:var(--ui-gray-800);box-sizing:border-box;width:100%;padding:.5rem .75rem;font-size:.875rem;transition:border-color .15s,box-shadow .15s}.afc-form__input:focus{border-color:var(--ui-accent-interactive);box-shadow:var(--ui-focus-ring);outline:none}.afc-form__input--error{border-color:var(--ui-danger-accent)}.afc-form__input--error:focus{border-color:var(--ui-danger-accent);box-shadow:var(--ui-danger-ring)}.afc-form__select{border:1px solid var(--ui-gray-300);border-radius:var(--ui-radius-md);background-color:var(--ui-surface);color:var(--ui-gray-800);box-sizing:border-box;cursor:pointer;width:100%;padding:.5rem .75rem;font-size:.875rem;transition:border-color .15s,box-shadow .15s}.afc-form__select:focus{border-color:var(--ui-accent-interactive);box-shadow:var(--ui-focus-ring);outline:none}.afc-form__select--error{border-color:var(--ui-danger-accent)}.afc-form__select--error:focus{border-color:var(--ui-danger-accent);box-shadow:var(--ui-danger-ring)}.afc-form__error{color:var(--ui-danger);font-size:.8125rem}.afc-form__submit-error{background-color:var(--ui-danger-bg);border:1px solid var(--ui-danger-border);border-radius:var(--ui-radius-md);color:var(--ui-danger-text);padding:.75rem 1rem;font-size:.875rem}.afc-form__actions{gap:.75rem;padding-top:.5rem;display:flex}.org-settings-hint{color:var(--ui-text-muted,var(--ui-gray-600));margin:.25rem 0 0;font-size:.8125rem}.org-settings-choice{border:1px solid var(--ui-gray-200);cursor:pointer;border-radius:8px;align-items:flex-start;gap:.625rem;padding:.75rem .875rem;display:flex}.org-settings-choice input{margin-top:.2rem}.org-settings-choice-selected{border-color:var(--tuto-brand);background:var(--ui-violet-50)}.org-settings-choice-title{color:var(--ui-gray-900);font-size:.875rem;font-weight:600;display:block}.org-settings-choice-hint{color:var(--ui-text-muted,var(--ui-gray-600));margin-top:.125rem;font-size:.8125rem;display:block}.org-plan-limit-note{color:var(--ui-gray-500);font-size:.75rem}.org-plan-limits{flex-direction:column;gap:.5rem;display:flex}.org-plan-limits-title{color:var(--ui-gray-800);margin:0;font-size:.9375rem;font-weight:600}.org-plan-limits-list{grid-template-columns:1fr;gap:.25rem 1.5rem;margin:0;display:grid}@media (width>=640px){.org-plan-limits-list{grid-template-columns:repeat(2,1fr)}}.org-plan-limits-row{border-bottom:1px solid var(--ui-gray-100);justify-content:space-between;gap:1rem;padding:.25rem 0;font-size:.8125rem;display:flex}.org-plan-limits-row dt{color:var(--ui-gray-700)}.org-plan-limits-row dd{color:var(--ui-gray-800);text-align:right;margin:0;font-weight:500}.org-plan-features{color:var(--ui-gray-800);grid-template-columns:repeat(auto-fill,minmax(14rem,1fr));gap:.25rem 1rem;margin:0;padding:0;font-size:.8125rem;list-style:none;display:grid}.org-plan-feature--off{color:var(--ui-gray-500)}.org-plan-hint{color:var(--ui-gray-500);margin:0;font-size:.8125rem}.org-hero-editor{border-top:1px solid var(--ui-gray-200);max-width:calc(2 * var(--admin-form-max) + 2rem);flex-direction:column;gap:.75rem;margin-top:2.5rem;padding-top:2rem;display:flex}.org-hero-empty{border:1px dashed var(--ui-gray-300);color:var(--ui-text-muted);border-radius:12px;margin:0;padding:1.25rem;font-size:.875rem}.org-hero-list{flex-direction:column;gap:1rem;margin:0;padding:0;list-style:none;display:flex}.org-hero-item{border:1px solid var(--ui-gray-200);background:var(--ui-surface);border-radius:12px;flex-direction:column;gap:.75rem;padding:1rem 1.25rem;display:flex}.org-hero-item-head{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.org-hero-item-number{color:var(--ui-gray-800);font-weight:600}.org-hero-item-actions{gap:.25rem;display:flex}.org-hero-problem{color:var(--ui-danger-hover);margin:0;font-size:.8125rem}.org-hero-footer{gap:.75rem;display:flex}.org-section-item--hidden{background:var(--ui-gray-50)}.org-section-item--hidden .org-hero-item-number{color:var(--ui-text-muted)}.org-section-item-name{flex-direction:column;min-width:0;display:flex}.org-section-item-summary{color:var(--ui-text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:.8125rem;overflow:hidden}.org-hero-item-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center}.org-section-visible{color:var(--ui-gray-700);align-items:center;gap:.375rem;margin-right:.5rem;font-size:.875rem;display:inline-flex}.org-section-problems{flex-direction:column;gap:.25rem;margin:0;padding:0;list-style:none;display:flex}.org-section-body,.org-section-items{flex-direction:column;gap:.75rem;display:flex}.org-section-body{border-top:1px solid var(--ui-gray-200);padding-top:.75rem}.org-section-items .org-hero-item{background:var(--ui-gray-50)}.org-section-items>.ui-btn,.org-section-items>button{align-self:flex-start}.org-sections-footer{flex-wrap:wrap;justify-content:space-between}.org-sections-add{gap:.5rem;display:flex}.org-sections-add select{width:auto}.org-plain-fieldset{border:none;min-width:0;margin:0;padding:0;display:contents}.org-branding-chat{border:none;margin:0;padding:0}.org-branding-chat-row{gap:.5rem;display:flex}.org-branding-chat-channel{flex:0 0 9rem}.org-instructor-list{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.org-instructor-row{border:1px solid var(--ui-gray-200);background:var(--ui-surface);border-radius:12px;align-items:center;gap:.875rem;padding:.75rem 1rem;display:flex}.org-instructor-row-main{flex-direction:column;flex:1;gap:.375rem;min-width:0;display:flex}.org-instructor-row-name{color:var(--ui-gray-900);font-weight:600}.org-instructor-add-select{flex:1;max-width:320px}.org-whatsapp{flex-direction:column;gap:1.5rem;display:flex}.org-whatsapp__subtitle{color:var(--ui-gray-700);margin:0;font-size:.9375rem;font-weight:600}.org-whatsapp__intro{color:var(--ui-gray-700);margin:0;font-size:.875rem}.org-whatsapp__reason{color:var(--ui-gray-600)}.org-whatsapp__details{grid-template-columns:repeat(auto-fill,minmax(14rem,1fr));gap:1rem 1.5rem;margin:0;display:grid}.org-whatsapp__details dt{color:var(--ui-gray-600);font-size:.8125rem;font-weight:500}.org-whatsapp__details dd{color:var(--ui-gray-800);overflow-wrap:anywhere;margin:.25rem 0 0;font-size:.875rem}.org-whatsapp__actions{flex-wrap:wrap;gap:.75rem;display:flex}.org-whatsapp__form{border-top:1px solid var(--ui-gray-200);flex-direction:column;gap:1rem;max-width:32rem;padding-top:1rem;display:flex}.org-whatsapp__table code{font-size:.8125rem}.course-admin-messaging-section .messaging-empty-title{color:var(--ui-gray-700);margin:0;font-size:1rem;font-weight:600}.messaging-telegram-logo{margin-bottom:var(--ui-space-3)}.messaging-enable{margin-top:var(--ui-space-4)}.messaging-load-more{justify-content:center}.create-group-wizard__intro{margin:0 0 var(--ui-space-4);color:var(--ui-text-muted);font-size:.875rem}.create-group-wizard__notes{margin:0 0 var(--ui-space-5);padding-left:var(--ui-space-5);color:var(--ui-text-muted);font-size:.8125rem;line-height:1.6}.org-telegram__options{grid-template-columns:repeat(auto-fit,minmax(18rem,1fr));gap:1rem;display:grid}.org-telegram__option{border:1px solid var(--ui-gray-200);border-radius:.5rem;flex-direction:column;gap:.75rem;padding:1rem;display:flex}.org-telegram__steps{color:var(--ui-gray-700);flex-direction:column;gap:.5rem;margin:0;padding-left:1.25rem;font-size:.875rem;display:flex}.org-telegram__code{background-color:var(--ui-gray-100);-webkit-user-select:all;user-select:all;border-radius:.25rem;padding:.125rem .375rem;font-size:.9375rem;font-weight:600}.zoom-settings__layout{align-items:flex-start;gap:1rem;display:flex}.zoom-settings__logo{flex-shrink:0}.zoom-settings__body{flex:1;min-width:0}.zoom-settings__details{background-color:var(--ui-gray-50);border:1px solid var(--ui-gray-200);border-radius:var(--ui-radius-lg);margin:0 0 1rem;padding:1rem}.zoom-settings__field{flex-direction:column;gap:.125rem;margin:0 0 .75rem;display:flex}.zoom-settings__field:last-child{margin-bottom:0}.zoom-settings__label{color:var(--ui-gray-500);text-transform:uppercase;letter-spacing:.04em;font-size:.8125rem;font-weight:500}.zoom-settings__value{color:var(--ui-text);margin:0;font-size:.9375rem}.zoom-settings__description{color:var(--ui-text-muted);margin:0 0 1rem;font-size:.9375rem;line-height:1.6}.ui-image-field{flex-direction:column;gap:.5rem;display:flex}.ui-image-field-label{color:var(--ui-gray-700,var(--ui-gray-700));font-size:.875rem;font-weight:500}.ui-image-field-row{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.ui-image-field-preview{border:1px solid var(--ui-gray-200,var(--ui-gray-200));background:var(--ui-gray-50,var(--ui-gray-50));flex-shrink:0;position:relative;overflow:hidden}.ui-image-field-preview--square{border-radius:16px;width:96px;height:96px}.ui-image-field-preview--round{border-radius:50%;width:96px;height:96px}.ui-image-field-preview--wide{aspect-ratio:4;border-radius:12px;width:min(100%,360px)}.ui-image-field-preview--slide{aspect-ratio:8/3;border-radius:12px;width:min(100%,360px)}.ui-image-field-preview img,.ui-image-field-fallback{width:100%;height:100%}.ui-image-field-preview img{object-fit:cover;display:block}.ui-image-field-fallback{justify-content:center;align-items:center;display:flex}.ui-image-field-actions{gap:.5rem;display:flex}.ui-image-field-input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.ui-image-field-hint{color:var(--ui-text-muted,var(--ui-gray-600,var(--ui-gray-600)));margin:0;font-size:.8125rem}.ui-image-field-error{color:var(--ui-danger-hover);margin:0;font-size:.8125rem}.pr-panel{border-top:1px solid var(--ui-gray-200);flex-direction:column;gap:.75rem;margin-top:1rem;padding-top:1rem;display:flex}.pr-trigger-row{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.pr-split-btn{display:inline-flex}.pr-split-btn>.ui-btn:first-child{border-top-right-radius:0;border-bottom-right-radius:0}.pr-options-toggle{margin-left:-1px;padding-left:.6rem;padding-right:.6rem;border-top-left-radius:0!important;border-bottom-left-radius:0!important}.pr-hint{color:var(--ui-gray-500);font-size:.8125rem}.pr-options{background:var(--ui-gray-50);border:1px solid var(--ui-gray-200);border-radius:var(--ui-radius-md);color:var(--ui-gray-700);flex-wrap:wrap;align-items:center;gap:1.25rem;padding:.75rem 1rem;font-size:.875rem;display:flex}.pr-options label{align-items:center;gap:.5rem;display:inline-flex}.pr-options select{border:1px solid var(--ui-gray-300);border-radius:var(--ui-radius-sm);background:var(--ui-surface);padding:.25rem .5rem;font-size:.875rem}.pr-error{color:var(--ui-danger-hover);margin:0;font-size:.875rem}.pr-progress{border:1px solid var(--ui-gray-200);border-radius:var(--ui-radius-lg);background:var(--ui-surface);flex-direction:column;gap:.6rem;padding:1rem;display:flex}.pr-progress-head{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.pr-status{background:var(--ui-primary-100);color:var(--ui-primary-700);border-radius:999px;padding:.15rem .55rem;font-size:.75rem;font-weight:600;display:inline-block}.pr-meta{color:var(--ui-gray-500);font-size:.8125rem}.pr-chip{border-radius:var(--ui-radius-sm);border:1px solid #0000;padding:.1rem .5rem;font-size:.75rem;display:inline-block}.pr-chip--info{background:var(--ui-primary-50);color:var(--ui-primary-700);border-color:var(--ui-primary-200)}.pr-chip--warn{background:var(--ui-warning-bg);color:var(--ui-warning-text);border-color:var(--ui-warning-border)}.pr-chip--error{background:var(--ui-danger-bg);color:var(--ui-danger-hover);border-color:var(--ui-danger-border)}.pr-stepper{align-items:center;margin:.25rem 0 0;padding:0;list-style:none;display:flex}.pr-step{flex:1 1 0;align-items:center;min-width:0;display:flex}.pr-step:last-child{flex:none}.pr-step:not(:last-child):after{content:"";background:var(--ui-gray-200);flex:auto;height:2px;margin:0 2px}.pr-step--done:not(:last-child):after{background:var(--ui-success-accent)}.pr-step-dot{background:var(--ui-gray-100);width:1.4rem;height:1.4rem;color:var(--ui-gray-500);border:2px solid var(--ui-gray-200);border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:.6875rem;font-weight:600;display:inline-flex}.pr-step--done .pr-step-dot{background:var(--ui-success-accent);border-color:var(--ui-success-accent);color:var(--ui-on-solid)}.pr-step--current .pr-step-dot{background:var(--ui-surface);border-color:var(--ui-primary-500);color:var(--ui-primary-500)}.pr-progress--failed .pr-step--current .pr-step-dot,.pr-progress--needs_attention .pr-step--current .pr-step-dot{border-color:var(--ui-danger);color:var(--ui-danger)}.pr-phase-line{color:var(--ui-gray-800);justify-content:space-between;gap:1rem;font-size:.9rem;font-weight:500;display:flex}.pr-percent{font-variant-numeric:tabular-nums}.pr-bar{background:var(--ui-gray-200);border-radius:999px;height:8px;overflow:hidden}.pr-bar-fill{background:var(--ui-primary-500);border-radius:999px;height:100%;transition:width .4s}.pr-progress--succeeded .pr-bar-fill{background:var(--ui-success-accent)}.pr-sub{color:var(--ui-gray-600);font-size:.8125rem}.pr-facts{color:var(--ui-gray-500);font-variant-numeric:tabular-nums;flex-wrap:wrap;gap:1rem;font-size:.8125rem;display:flex}.pr-outcome{border-radius:var(--ui-radius-md);background:var(--ui-gray-50);color:var(--ui-gray-700);padding:.6rem .75rem;font-size:.875rem}.pr-outcome p{margin:0}.pr-outcome ul{margin:.4rem 0 0;padding-left:1.25rem}.pr-outcome--ok{background:var(--ui-success-bg);color:var(--ui-success-text)}.pr-outcome--warn{background:var(--ui-warning-bg);color:var(--ui-warning-text)}.pr-outcome--error{background:var(--ui-danger-bg);color:var(--ui-danger-text)}.pr-outcome details{margin-top:.4rem}.pr-detail{border-radius:var(--ui-radius-sm);background:var(--ui-gray-800);max-height:16rem;color:var(--ui-gray-50);white-space:pre-wrap;word-break:break-word;margin:.4rem 0 0;padding:.6rem;font-size:.75rem;overflow:auto}.pr-link{color:var(--ui-accent-interactive);cursor:pointer;background:0 0;border:none;margin-left:.75rem;padding:0;font-size:.875rem;text-decoration:underline}.pr-actions{align-items:center;gap:.75rem;display:flex}.pr-warnings{color:var(--ui-warning-text);margin:.5rem 0 0;padding-left:1.25rem}.pr-ingest-banner{border:1px solid var(--ui-warning-border);border-radius:var(--ui-radius-md);background:var(--ui-warning-bg);color:var(--ui-warning-text);margin:0 0 .75rem;padding:.5rem .75rem;font-size:.875rem}.pr-history-toggle{margin-left:0;font-weight:500;text-decoration:none}.pr-history-table{border-collapse:collapse;width:100%;color:var(--ui-gray-700);margin-top:.5rem;font-size:.8125rem}.pr-history-table th{border-bottom:1px solid var(--ui-gray-200);text-align:left;text-transform:uppercase;letter-spacing:.04em;color:var(--ui-gray-500);padding:.4rem .6rem;font-size:.6875rem;font-weight:600}.pr-history-table td{border-bottom:1px solid var(--ui-gray-100);vertical-align:top;font-variant-numeric:tabular-nums;padding:.45rem .6rem}.pr-history-open{color:var(--ui-gray-800);margin-left:0;font-size:.8125rem;text-decoration:none}.pr-history-row--open td{border-bottom-color:#0000}.pr-history-detail td{background:var(--ui-gray-50);padding:.25rem .6rem .75rem 1.5rem}.pr-timeline{margin:.25rem 0 0;padding:0;list-style:none}.pr-timeline-item{border-left:2px solid var(--ui-gray-200);color:var(--ui-gray-700);gap:.75rem;padding:.15rem 0 .15rem .6rem;font-size:.8125rem;display:flex}.pr-timeline-item--status{border-left-color:var(--ui-primary-500);font-weight:500}.pr-timeline-item--warning{border-left-color:var(--ui-warning-accent);color:var(--ui-warning-text)}.pr-timeline-time{min-width:5.5rem;color:var(--ui-gray-500);font-variant-numeric:tabular-nums;flex:none}.pr-diff-headline{font-weight:600}.pr-diff-help{margin-top:.5rem!important}.pr-outcome .pr-actions{margin-top:.6rem}.pr-title{color:var(--ui-gray-900);font-size:.9rem;font-weight:600}.pr-hitl-table{background:var(--ui-surface);border-radius:var(--ui-radius-sm)}.pr-hitl-table .pr-status{white-space:nowrap}.pr-hitl-outcome--published{background:var(--ui-success-bg-strong);color:var(--ui-success-solid-hover)}.pr-hitl-outcome--not_published{background:var(--ui-warning-bg-strong);color:var(--ui-warning-text)}.pr-hitl-outcome--failed{background:var(--ui-danger-bg-strong);color:var(--ui-danger-hover)}.pr-hitl-outcome--stale{background:var(--ui-gray-100);color:var(--ui-gray-700)}.pr-hitl-banner{margin:.75rem 1rem}.pr-edit-change--edited{background:var(--ui-primary-100);color:var(--ui-primary-700)}.pr-edit-change--added{background:var(--ui-success-bg-strong);color:var(--ui-success-solid-hover)}.pr-edit-change--deleted{background:var(--ui-danger-bg-strong);color:var(--ui-danger-hover)}.pr-edit-change--moved,.pr-edit-change--relabelled{background:var(--ui-gray-100);color:var(--ui-gray-700)}.pr-edit-change--conflict{background:var(--ui-warning-bg-strong);color:var(--ui-warning-text)}.pr-scaffold-list{margin:.25rem 0 0;padding-left:1.25rem;list-style:none}.pr-scaffold-tree{border:1px solid var(--ui-warning-border);border-radius:var(--ui-radius-md);background:var(--ui-surface);max-height:28rem;color:var(--ui-gray-800);margin-top:.6rem;padding:.6rem .75rem;overflow:auto}.pr-scaffold-node{padding:.1rem 0}.pr-scaffold-node--warn>.pr-scaffold-line,.pr-scaffold-node--warn>details>.pr-scaffold-line{background:var(--ui-warning-bg);border-radius:var(--ui-radius-sm)}.pr-scaffold-line{flex-wrap:wrap;align-items:center;gap:.6rem;padding:.1rem .25rem;font-size:.8125rem;display:flex}summary.pr-scaffold-line{cursor:pointer;display:list-item}summary.pr-scaffold-line>*{margin-right:.6rem}.pr-scaffold-page{color:var(--ui-primary-600);font-size:.75rem}.pr-scaffold-diff{border-radius:var(--ui-radius-md);background:var(--ui-surface);color:var(--ui-gray-800);margin-top:.5rem;padding:.5rem .75rem}.pr-scaffold-correct{flex-direction:column;gap:.3rem;margin-top:.6rem;font-size:.8125rem;display:flex}.pr-scaffold-correct textarea{border:1px solid var(--ui-gray-300);border-radius:var(--ui-radius-sm);font:inherit;resize:vertical;padding:.5rem}.pr-step--waiting .pr-step-dot,.pr-progress--awaiting_input .pr-step--waiting .pr-step-dot{background:var(--ui-warning-bg);border-color:var(--ui-warning-solid);color:var(--ui-warning-solid-hover)}.pr-progress--awaiting_input .pr-bar-fill{background:var(--ui-warning-solid)}.pr-conf{font-variant-numeric:tabular-nums;border:1px solid #0000;border-radius:999px;padding:0 .4rem;font-size:.75rem;font-weight:600;display:inline-block}.pr-conf--ok{background:var(--ui-success-bg);color:var(--ui-success-text);border-color:var(--ui-success-border)}.pr-conf--low{background:var(--ui-danger-bg);color:var(--ui-danger-hover);border-color:var(--ui-danger-border)}.pr-scaffold-weakest{background:var(--ui-surface);border:1px solid var(--ui-warning-border);border-radius:var(--ui-radius-md);margin:.5rem 0;padding:.5rem .75rem}.pr-scaffold-weakest ul{margin:.25rem 0 0;padding-left:1.1rem}.pr-scaffold-weakest li>*+*{margin-left:.4rem}.pr-scaffold-reasons{margin:.15rem 0 .25rem;padding-left:1.4rem;font-size:.8125rem}.pr-checkpoint{color:var(--ui-gray-500);margin:.5rem 0 0;font-size:.8125rem}.pr-checkpoint ul{margin:.25rem 0 0;padding-left:1.2rem}.pr-source-files{margin-top:.6rem;font-size:.8125rem}.pr-source-files ul{margin:.3rem 0 0;padding-left:1.2rem}.pr-source-files code{word-break:break-all;font-size:.75rem}.pr-hitl-table td:first-child{white-space:nowrap}.pr-hitl-replies{gap:.4rem;display:grid}.pr-hitl-reply p{white-space:pre-wrap;overflow-wrap:anywhere;margin:.2rem 0 0}.pr-hitl-reply--fixed{background:var(--ui-warning-bg-strong);color:var(--ui-warning-text)}.pr-hitl-reply--needs_person{background:var(--ui-danger-bg-strong);color:var(--ui-danger-hover)}.pr-hitl-reply--question{background:var(--ui-primary-100);color:var(--ui-primary-700)}.pr-latest-gaps{color:var(--ui-gray-700);margin:.5rem 0 0;font-size:.875rem}.pr-gap-list{margin-top:.5rem}.pr-gap-list>summary{cursor:pointer;font-size:.8125rem;font-weight:600}.pr-gap-list table{margin-top:.35rem}.gaps-panel{margin:0 0 1rem}.gaps-panel--quiet{min-height:1.4rem;color:var(--ui-gray-500);padding:.6rem .9rem;font-size:.875rem}.gaps-panel-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.5rem 1rem;display:flex}.gaps-panel-head p{margin:0}.gaps-panel-actions{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.gaps-panel-sections{margin:.5rem 0 0;padding-left:1.1rem;font-size:.8125rem}.rtc-button{border:1px solid var(--ui-border);background:var(--ui-surface);color:var(--ui-gray-700);cursor:pointer;white-space:nowrap;border-radius:999px;padding:.2rem .6rem;font-size:.75rem}.rtc-button:hover{background:var(--ui-gray-50)}.rtc-button--open{border-color:var(--ui-warning-border);background:var(--ui-warning-bg);color:var(--ui-warning-text);font-weight:600}.rtc-overlay{z-index:1000;background:var(--ui-overlay);justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.rtc-dialog{background:var(--ui-surface-raised);width:100%;max-width:34rem;max-height:85vh;box-shadow:var(--ui-shadow-lg);border-radius:8px;flex-direction:column;gap:.75rem;padding:1.25rem 1.5rem;display:flex;overflow:auto}.rtc-head{justify-content:space-between;align-items:center;gap:1rem;display:flex}.rtc-head h3{color:var(--ui-text);margin:0;font-size:1.05rem}.rtc-help,.rtc-empty,.rtc-hint{color:var(--ui-text-subtle);margin:0;font-size:.8125rem}.rtc-list{flex-direction:column;gap:.6rem;margin:0;padding:0;list-style:none;display:flex}.rtc-item{border:1px solid var(--ui-border-subtle);border-radius:6px;padding:.6rem .75rem}.rtc-item--resolved{background:var(--ui-gray-50);color:var(--ui-text-subtle)}.rtc-meta{color:var(--ui-text-subtle);flex-wrap:wrap;align-items:center;gap:.6rem;font-size:.75rem;display:flex}.rtc-meta strong{color:var(--ui-gray-800)}.rtc-text{white-space:pre-wrap;overflow-wrap:anywhere;margin:.35rem 0;font-size:.875rem}.rtc-status{background:var(--ui-warning-bg-strong);color:var(--ui-warning-text);border-radius:999px;padding:.05rem .45rem;font-weight:600}.rtc-status--resolved{background:var(--ui-success-bg-strong);color:var(--ui-success-solid-hover)}.rtc-status--pending_verification{background:var(--ui-primary-100);color:var(--ui-primary-700)}.rtc-status--in_hitl_queue{background:var(--ui-gray-100);color:var(--ui-gray-700)}.rtc-link{color:var(--ui-primary-600);cursor:pointer;background:0 0;border:none;padding:0;font-size:.8125rem;text-decoration:underline}.rtc-add{flex-direction:column;gap:.4rem;display:flex}.rtc-add textarea{border:1px solid var(--ui-border);font:inherit;resize:vertical;border-radius:4px;padding:.5rem;font-size:.875rem}.rtc-add-row{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.rtc-error{color:var(--ui-danger-hover);margin:0;font-size:.8125rem}.review-inbox{gap:var(--ui-space-4);flex-direction:column;display:flex}.review-inbox__name{font-weight:600;display:block}.review-inbox__kind,.review-inbox__detail{color:var(--ui-text-muted);font-size:.8125rem;font-weight:400;display:block}.review-inbox__muted{color:var(--ui-text-muted);font-size:.875rem}.review-inbox__controls{justify-content:space-between;align-items:flex-start;gap:var(--ui-space-4);flex-wrap:wrap;display:flex}.review-inbox__filters{gap:var(--ui-space-2);flex-wrap:wrap;flex:32rem;display:flex}.review-inbox__filter{align-items:center;gap:var(--ui-space-1);border:1px solid var(--ui-border);background:var(--ui-surface);color:var(--ui-text);cursor:pointer;border-radius:999px;padding:.3rem .75rem;font-size:.875rem;font-weight:500;display:inline-flex}.review-inbox__filter:hover{background:var(--ui-surface-hover)}.review-inbox__filter:focus-visible{outline:2px solid var(--ui-focus);outline-offset:2px}.review-inbox__filter--on,.review-inbox__filter--on:hover{background:var(--ui-primary);border-color:var(--ui-primary);color:var(--ui-on-accent)}.review-inbox__filter--empty{color:var(--ui-text-muted)}.review-inbox__filter-count{opacity:.85;font-weight:600}.review-inbox__filter-desc{color:var(--ui-text-muted);margin:0;font-size:.875rem}.review-inbox__name-cell{align-items:flex-start;gap:var(--ui-space-2);display:flex}.review-inbox__expand{border:1px solid var(--ui-border);border-radius:var(--ui-radius-sm,4px);background:var(--ui-surface);width:1.75rem;height:1.75rem;color:var(--ui-text-muted);cursor:pointer;flex:none;line-height:1}.review-inbox__expand:hover{background:var(--ui-surface-hover)}.review-inbox__expand:focus-visible{outline:2px solid var(--ui-focus);outline-offset:1px}.review-inbox__progress{flex-direction:column;gap:4px;min-width:8rem;font-size:.875rem;display:flex}.review-inbox__bar{background:var(--ui-surface-hover);border-radius:999px;height:6px;display:block;overflow:hidden}.review-inbox__bar-fill{background:var(--ui-success-solid,var(--ui-success-solid));height:100%;display:block}.review-inbox__chips{flex-wrap:wrap;gap:4px;display:flex}.review-inbox__chip{border:1px solid var(--ui-warning-border-strong);background:var(--ui-warning-bg);color:var(--ui-warning-text);white-space:nowrap;border-radius:999px;padding:1px 8px;font-size:.75rem;font-weight:500;display:inline-block}.review-inbox__chip--ready-to-publish{border-color:var(--ui-green-300);background:var(--ui-success-bg);color:var(--ui-success-text)}.review-inbox__chip--pipeline-waiting,.review-inbox__chip--stuck-in-ai,.review-inbox__chip--recheck{border-color:var(--ui-red-300);background:var(--ui-danger-bg);color:var(--ui-danger-text)}.review-inbox__chip--not-started,.review-inbox__chip--in-review{border-color:var(--ui-border);background:var(--ui-surface-hover);color:var(--ui-text-muted)}.review-inbox__age{color:var(--ui-text-muted);white-space:nowrap;margin-top:4px;font-size:.8125rem;display:block}.review-inbox__status-inline{margin-top:4px;display:none}@media (width<=1279px){.review-inbox__col-status{display:none}.review-inbox__status-inline{display:block}.review-inbox__table th,.review-inbox__table td{padding-left:.5rem;padding-right:.5rem}.review-inbox__chip,.review-inbox__age{white-space:normal}.review-inbox__progress{min-width:6rem}}.review-inbox__for-you{color:var(--ui-violet-800);margin-top:4px;font-size:.8125rem;display:block}.review-actions-menu{display:inline-block}.review-actions-menu__button{align-items:center;gap:var(--ui-space-1);display:inline-flex}.review-actions-menu__list{z-index:1000;min-width:11rem;padding:var(--ui-space-1) 0;background:var(--ui-surface-raised);border:1px solid var(--ui-border);border-radius:var(--ui-radius-md);box-shadow:var(--ui-shadow-md);text-align:left;white-space:nowrap;flex-direction:column;display:flex;position:fixed}.review-actions-menu__list--up{transform:translateY(-100%)}.review-actions-menu__item{width:100%;padding:var(--ui-space-2) var(--ui-space-3);color:var(--ui-text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;font-size:.875rem;text-decoration:none;display:block}.review-actions-menu__item:hover,.review-actions-menu__item:focus{background:var(--ui-accent-interactive-bg);color:var(--ui-text);outline:none}.review-actions-menu__item:focus-visible{outline:2px solid var(--ui-focus);outline-offset:-2px}.review-actions-menu__item--main{font-weight:600}.review-actions-menu__item[aria-disabled=true]{color:var(--ui-text-muted);cursor:not-allowed;background:0 0}.review-inbox__panel-row>td{background:var(--ui-surface-hover)}.review-inbox__sections{gap:var(--ui-space-2);flex-direction:column;padding-left:2.25rem;display:flex}.review-inbox__sections-head{margin:0;font-size:.875rem;font-weight:600}.review-inbox__section-list{gap:var(--ui-space-1);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.review-inbox__section{gap:var(--ui-space-3);grid-template-columns:minmax(10rem,18rem) 1fr;align-items:center;font-size:.875rem;display:grid}.review-inbox__section-name{font-weight:500}.review-inbox__reviewers{flex-wrap:wrap;gap:4px;display:flex}.review-inbox__mine-toggle{gap:var(--ui-space-1);flex-direction:column;flex:0 0 16rem;display:flex}.review-inbox__mine-toggle .ui-field-hint{margin:0}.review-page{gap:var(--ui-space-4);flex-direction:column;display:flex}.review-attention{gap:var(--ui-space-3);margin-bottom:var(--ui-space-6);padding:var(--ui-space-4);border:1px solid var(--ui-border);border-radius:var(--ui-radius-lg);background:var(--ui-surface);flex-direction:column;display:flex}.review-attention__head{justify-content:space-between;align-items:center;gap:var(--ui-space-3);flex-wrap:wrap;display:flex}.review-attention__title{margin:0;font-size:1.125rem;font-weight:600}.review-attention__caught-up{color:var(--ui-text-muted);margin:0;font-size:.875rem}.review-attention__list{gap:var(--ui-space-2);grid-template-columns:repeat(auto-fill,minmax(15rem,1fr));margin:0;padding:0;list-style:none;display:grid}.review-attention__row{align-items:center;gap:var(--ui-space-3);height:100%;padding:var(--ui-space-2) var(--ui-space-3);border:1px solid var(--ui-border);border-radius:var(--ui-radius-md);color:var(--ui-text);text-decoration:none;display:flex}.review-attention__row:hover{background:var(--ui-surface-hover)}.review-attention__row:focus-visible{outline:2px solid var(--ui-focus);outline-offset:2px}.review-attention__count{font-variant-numeric:tabular-nums;min-width:2rem;font-size:1.25rem;font-weight:700}.review-attention__label{flex-direction:column;font-size:.875rem;font-weight:500;display:flex}.review-attention__hint{color:var(--ui-text-muted);font-size:.75rem;font-weight:400}.review-attention__row--mine .review-attention__count{color:var(--ui-primary)}.review-attention__row--urgent{border-color:var(--ui-warning-border);background:var(--ui-warning-bg)}.review-attention__row--urgent .review-attention__count{color:var(--ui-warning-text)}.review-attention__row--ready .review-attention__count{color:var(--ui-success-text)}.ui-table-wrapper,.afc-table-wrapper{border:1px solid var(--ui-gray-200);border-radius:var(--ui-radius-lg);position:relative;overflow-x:auto}.ui-table,.afc-table{border-collapse:collapse;background-color:var(--ui-surface);width:100%;font-size:.875rem}:where(.ui-table) thead,.afc-table thead{background-color:var(--ui-gray-50)}:where(.ui-table) thead th,.afc-table__th{text-align:left;color:var(--ui-gray-700);border-bottom:1px solid var(--ui-gray-200);white-space:nowrap;padding:.75rem 1rem;font-weight:600}:where(.ui-table) td,:where(.ui-table tbody,.ui-table tfoot) th,.afc-table__td{color:var(--ui-gray-800);border-bottom:1px solid var(--ui-gray-100);vertical-align:middle;padding:.75rem 1rem}:where(.ui-table th[scope=row]),.afc-table tbody th[scope=row]{text-align:left;font-weight:500}:where(.ui-table tbody tr:last-child,.ui-table tfoot tr:last-child)>td,:where(.ui-table tbody tr:last-child,.ui-table tfoot tr:last-child)>th,.afc-row:last-child td{border-bottom:none}:where(.ui-table tbody tr):hover,.afc-row:hover{background-color:var(--ui-gray-50)}:where(.ui-table tbody tr):has(>.ui-table__empty):hover{background-color:#0000}.ui-table .ui-table__num,.afc-table__th--right,.afc-table__td--right{text-align:right;font-variant-numeric:tabular-nums}.ui-table .ui-table__center,.afc-table__th--center,.afc-table__td--center{text-align:center}.ui-table .ui-table__actions,.afc-table__td--actions{text-align:right;white-space:nowrap}.ui-table td.ui-table__actions>*+*{margin-left:.5rem}.afc-table__td--name{font-weight:500}.ui-table .ui-table__empty,.afc-table__empty{text-align:center;color:var(--ui-gray-500);padding:1.5rem 1rem;font-size:.875rem}.my-comments__tiles{margin-bottom:var(--ui-space-4)}.my-comments__list{margin:var(--ui-space-4) 0;gap:var(--ui-space-3);flex-direction:column;padding:0;list-style:none;display:flex}.my-comment{gap:var(--ui-space-4);padding:var(--ui-space-4);background:var(--ui-surface);border:1px solid var(--ui-border);border-left:4px solid var(--ui-border);border-radius:var(--ui-radius-md);grid-template-columns:minmax(0,1fr) minmax(0,1fr);display:grid}.my-comment--open{border-left-color:var(--ui-danger)}.my-comment--with_ai{border-left-color:var(--ui-primary-600)}.my-comment--ai_replied{border-left-color:var(--ui-warning-solid)}.my-comment--resolved{border-left-color:var(--ui-success-solid)}@media (width<=900px){.my-comment{grid-template-columns:minmax(0,1fr)}}.my-comment__question,.my-comment__body{gap:var(--ui-space-2);flex-direction:column;min-width:0;display:flex}.my-comment__question{padding-right:var(--ui-space-4);border-right:1px solid var(--ui-border)}@media (width<=900px){.my-comment__question{border-right:0;padding-right:0}}.my-comment__where{align-items:baseline;gap:var(--ui-space-2);flex-wrap:wrap;display:flex}.my-comment__target{font-size:.9375rem}.my-comment__paper,.my-comment__dates,.my-comment__regions{color:var(--ui-text-muted);font-size:.8125rem}.my-comment__dates{margin:0}.my-comment__preview{-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:0;font-size:.875rem;line-height:1.45;display:-webkit-box;overflow:hidden}.my-comment__preview--muted,.my-comment__text--none{color:var(--ui-text-muted);font-style:italic}.my-comment__full{max-height:32rem;overflow:auto}.my-comment__question-meta,.my-comment__chips,.my-comment__actions{align-items:center;gap:var(--ui-space-2);flex-wrap:wrap;display:flex}.my-comment__toggle{color:var(--ui-brand);cursor:pointer;background:0 0;border:0;padding:0;font-size:.8125rem}.my-comment__toggle:hover{text-decoration:underline}.my-comment__text{white-space:pre-wrap;margin:0;font-size:.9375rem}.my-comments-panel{gap:var(--ui-space-3);margin-bottom:var(--ui-space-6);flex-direction:column;display:flex}.my-comments-panel__head{justify-content:space-between;align-items:center;gap:var(--ui-space-3);flex-wrap:wrap;display:flex}.my-comments-panel__title{margin:0;font-size:1.125rem;font-weight:600}.my-comments-panel__recent{border:1px solid var(--ui-border);border-radius:var(--ui-radius-md);background:var(--ui-surface);margin:0;padding:0;list-style:none}.my-comments-panel__row{align-items:center;gap:var(--ui-space-3);padding:var(--ui-space-2) var(--ui-space-3);border-top:1px solid var(--ui-border);grid-template-columns:minmax(10rem,20rem) minmax(0,1fr) auto;font-size:.875rem;display:grid}.my-comments-panel__row:first-child{border-top:0}.my-comments-panel__where{flex-direction:column;min-width:0;display:flex}.my-comments-panel__where span,.my-comments-panel__comment{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.my-comments-panel__where span{color:var(--ui-text-muted);font-size:.8125rem}@media (width<=700px){.my-comments-panel__row{grid-template-columns:minmax(0,1fr)}}.org-limits-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.75rem;display:flex}.org-limits-plan{margin:0}.org-limits-actions{flex-wrap:wrap;gap:.5rem;display:flex}.org-limits-subtitle{margin:1.25rem 0 .5rem;font-size:1rem}.org-limits-message{color:var(--ui-success-text);margin:0 0 .75rem;font-size:.875rem}.org-limits-message--error{color:var(--ui-danger-text)}.org-limit-row--changed th,.org-limit-row--changed td{background:var(--ui-primary-50)}.org-limit-over{color:var(--ui-danger-text);font-weight:600}.org-limit-until{color:var(--ui-gray-500);font-size:.8125rem}.org-grant-unlimited,.org-plan-force{align-items:center;gap:.375rem;margin-top:.375rem;font-size:.875rem;display:inline-flex}.ocs-intro{color:var(--ui-gray-600);margin:0 0 .75rem;font-size:.875rem}.ocs-count{color:var(--ui-gray-600);font-size:.8125rem}.ocs-empty{color:var(--ui-gray-600);font-size:.875rem}.ocs-more{margin-top:.5rem}.ocs-table-wrap{position:relative;overflow-x:auto}.ocs-table{border-collapse:collapse;min-width:100%;font-size:.875rem}.ocs-table th,.ocs-table td{border-bottom:1px solid var(--ui-gray-200);text-align:center;white-space:nowrap;padding:.45rem .75rem}.ocs-table thead th{color:var(--ui-gray-700);background:var(--ui-gray-50);font-weight:600}.ocs-table th[scope=row],.ocs-table thead th:first-child{text-align:left;z-index:1;background:var(--ui-surface);white-space:normal;max-width:14rem;box-shadow:inset -1px 0 0 var(--ui-gray-200);font-weight:500;position:sticky;left:0}.ocs-table thead th:first-child{background:var(--ui-gray-50)}@media (width<=480px){.ocs-table th[scope=row],.ocs-table thead th:first-child{overflow-wrap:anywhere;max-width:9rem}}.ocs-table .ocs-cell--curriculum,.ocs-table thead th:nth-child(2){border-right:1px solid var(--ui-gray-200)}.ocs-table input[aria-disabled=true]{opacity:.4;cursor:not-allowed}.ocs-hint-mark{color:var(--ui-gray-500);margin-left:.125rem}.ocs-hint{color:var(--ui-gray-600);margin:.5rem 0 0;font-size:.8125rem}.ocs-row-toggle{color:var(--ui-accent-interactive);cursor:pointer;background:0 0;border:none;padding:0;font-size:.8rem}.ocs-row-toggle:disabled{color:var(--ui-gray-400);cursor:default}.ocs-actions{flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:.75rem;display:flex}.ocs-message{color:var(--ui-success-text);font-size:.85rem}.ocs-message--error{color:var(--ui-danger-hover)}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.plans-page{flex-direction:column;gap:1rem;display:flex}.plans-table .plans-cell{min-width:7rem;max-width:10rem}.plans-org-count,.plans-key-note{color:var(--ui-gray-500);font-size:.75rem;font-weight:400;display:block}.plans-actions{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.plans-message{color:var(--ui-success-text);font-size:.875rem}.plans-message--error{color:var(--ui-danger-text)}.rates-check{align-items:center;gap:.5rem;margin-bottom:1rem;font-size:.875rem;display:flex}.usage-table tbody th[scope=row]{min-width:14rem}.plans-tab-edited{color:var(--ui-warning-accent,var(--ui-warning-accent));font-weight:700}.pcfg-cards{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem;display:grid}.pcfg-card{border:1px solid var(--ui-gray-200);border-radius:var(--ui-radius-lg);background-color:var(--ui-surface);flex-direction:column;gap:.75rem;padding:1rem;display:flex}.pcfg-card-head{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.pcfg-card-head h3{color:var(--ui-gray-700);margin:0;font-size:.9375rem;font-weight:600}.pcfg-card-actions{gap:.5rem;margin-top:auto;display:flex}.pcfg-not-set,.pcfg-note{color:var(--ui-gray-500);margin:0;font-size:.875rem}.pcfg-secret-set{align-items:center;gap:.75rem;margin:0;font-size:.875rem;display:flex}.pcfg-check{align-items:center;gap:.25rem;font-size:.875rem;display:flex}.pcfg-overrides{margin-top:1.25rem}.pcfg-overrides h3{color:var(--ui-gray-700);margin:0 0 .5rem;font-size:.9375rem;font-weight:600}.pcfg-override-cell{flex-direction:column;gap:.25rem;display:flex}.pcfg-override-actions{gap:.25rem;display:flex}.pcfg-section-head{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.pcfg-list{border:1px solid var(--ui-gray-200);border-radius:var(--ui-radius-lg);background-color:var(--ui-surface);margin:.75rem 0 0;padding:0;list-style:none}.pcfg-list-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;padding:.75rem 1rem;display:flex}.pcfg-list-row+.pcfg-list-row{border-top:1px solid var(--ui-gray-200)}.pcfg-row-main{flex-direction:column;gap:.25rem;min-width:0;display:flex}.pcfg-row-title{color:var(--ui-gray-700);align-items:center;gap:.5rem;font-weight:600;display:flex}.pcfg-row-details{color:var(--ui-gray-500);overflow-wrap:anywhere;font-size:.875rem}.pcfg-row-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.25rem;display:flex}.pcfg-hint{text-align:right;color:var(--ui-gray-500);flex-basis:100%;font-size:.8125rem}.pcfg-scoped-banks h3{color:var(--ui-gray-700);margin:0;font-size:.9375rem;font-weight:600}.pcfg-scoped-banks .pcfg-note{margin-top:.5rem}.pcfg-bank-names{margin:0;padding:0;list-style:none}.pcfg-platform-banks .pcfg-list,.pcfg-platform-banks .pcfg-note{margin-top:.5rem}.pcfg-link{color:var(--ui-primary);margin-top:.25rem;font-size:.875rem;font-weight:500;display:inline-block}.notif-matrix__name{text-align:left;min-width:11rem;font-weight:600}.notif-matrix__recipient{color:var(--ui-text-muted);white-space:nowrap}.notif-matrix__cell{min-width:6.75rem;padding-left:.5rem;padding-right:.5rem}.notif-matrix__cell--none{color:var(--ui-text-muted);text-align:center}.notif-matrix__select{width:100%;min-width:6.25rem;padding:.3rem .4rem;font-size:.85rem}.notif-matrix__cell--overridden .notif-matrix__select{border-color:var(--ui-primary-600);font-weight:600}.notif-matrix__fixed{color:var(--ui-text-muted);padding:.25rem 0;display:inline-block}.notif-matrix__note{color:var(--ui-warning-text);margin-left:.35rem;font-size:.75rem;font-weight:700}.notif-matrix-legend{color:var(--ui-text-muted);flex-wrap:wrap;gap:.25rem 1rem;margin:0 0 1rem;font-size:.85rem;display:flex}.notif-matrix-legend dt{color:var(--ui-text);font-weight:600}.notif-matrix-legend dd{margin:0 .5rem 0 .25rem}.invoice-document{flex-direction:column;gap:1rem;display:flex}.invoice-document__head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.invoice-document__title{margin:0;font-size:1.25rem}.invoice-document__from,.invoice-document__unit{color:var(--ui-gray-500);margin:0;font-size:.75rem;display:block}.invoice-document__meta{align-items:center;gap:.5rem;display:flex}.invoice-document__facts{grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));gap:.75rem;margin:0;display:grid}.invoice-document__facts dt{color:var(--ui-gray-500);font-size:.75rem}.invoice-document__facts dd{margin:0;font-weight:600}.invoice-document__void{color:var(--ui-danger-text);margin:0}.invoice-document__lines{width:100%}.invoice-document__total{font-weight:700}@media print{body *{visibility:hidden}.invoice-document,.invoice-document *{visibility:visible}.invoice-document{width:100%;position:absolute;inset:0 auto auto 0}.invoice-no-print{display:none}}.rte-toolbar{border-bottom:1px solid var(--ui-border-subtle);background:var(--ui-gray-50);flex-wrap:wrap;align-items:center;gap:.25rem;padding:.5rem;display:flex}.rte-toolbar-group{border-right:1px solid var(--ui-border-subtle);align-items:center;gap:2px;padding-right:.5rem;display:flex}.rte-toolbar-group:last-of-type{border-right:none}.rte-btn{min-width:32px;height:32px;color:var(--ui-text-muted);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:0 4px;font-size:.8125rem;font-weight:600;transition:background-color .15s,color .15s;display:flex}.rte-btn:hover{background-color:var(--ui-gray-100);color:var(--ui-text)}.rte-btn-active{background-color:var(--ui-gray-200);color:var(--ui-primary-700)}.rte-btn-danger{color:var(--ui-danger)}.rte-btn-danger:hover{background-color:var(--ui-danger-bg-strong);color:var(--ui-danger)}.rte-btn-save{background-color:var(--ui-accent-interactive);width:auto;color:var(--ui-on-accent);border-radius:4px;padding:.25rem .75rem;font-size:.75rem}.rte-btn-save:hover{background-color:var(--ui-accent-interactive-hover)}.rte-btn-save:disabled{opacity:.5;cursor:not-allowed}.rte-toolbar-status{align-items:center;gap:.5rem;margin-left:auto;font-size:.75rem;display:flex}.rte-status-saving{color:var(--ui-text-subtle)}.rte-status-unsaved{color:var(--ui-warning-accent)}.rte-status-saved{color:var(--ui-success)}.rich-text-editor{border:1px solid var(--ui-border-subtle);background:var(--ui-surface);border-radius:8px;overflow:hidden}.rte-upload-indicator{background:var(--ui-primary-50);color:var(--ui-primary-700);border-bottom:1px solid var(--ui-primary-100);padding:.5rem 1rem;font-size:.8125rem}.rte-content{min-height:300px;color:var(--ui-text);padding:1rem 1.5rem;font-size:1rem;line-height:1.7}.rte-content .tiptap{outline:none;min-height:280px}.rte-content .tiptap p.is-editor-empty:first-child:before{content:attr(data-placeholder);float:left;color:var(--ui-gray-400);pointer-events:none;height:0}.rte-content .tiptap h1{color:var(--ui-text);margin:1.5rem 0 .75rem;font-size:1.75rem;font-weight:700}.rte-content .tiptap h2{color:var(--ui-gray-700);margin:1.25rem 0 .5rem;font-size:1.375rem;font-weight:600}.rte-content .tiptap h3{color:var(--ui-gray-700);margin:1rem 0 .5rem;font-size:1.125rem;font-weight:600}.rte-content .tiptap h4{color:var(--ui-text-muted);margin:.75rem 0 .5rem;font-size:1rem;font-weight:600}.rte-content .tiptap p{margin:.5rem 0}.rte-content .tiptap ul,.rte-content .tiptap ol{margin:.5rem 0;padding-left:1.5rem}.rte-content .tiptap blockquote{border-left:3px solid var(--ui-border-subtle);color:var(--ui-text-muted);margin:.75rem 0;padding-left:1rem}.rte-content .tiptap pre{color:#e2e8f0;background:#1a202c;border-radius:6px;margin:.75rem 0;padding:1rem;font-family:Fira Code,Consolas,monospace;font-size:.875rem;overflow-x:auto}.rte-content .tiptap code{background:var(--ui-gray-100);border-radius:3px;padding:.125rem .375rem;font-family:Fira Code,Consolas,monospace;font-size:.875rem}.rte-content .tiptap pre code{background:0 0;padding:0}.rte-content .tiptap img,.rte-content .tiptap .rte-image{border-radius:4px;max-width:100%;height:auto;margin:.75rem 0}.rte-content .tiptap a{color:var(--ui-accent-interactive);text-decoration:underline}.rte-content .tiptap hr{border:none;border-top:1px solid var(--ui-border-subtle);margin:1.5rem 0}.rte-content .tiptap table{border-collapse:collapse;table-layout:fixed;width:100%;margin:.75rem 0;overflow:hidden}.rte-content .tiptap table td,.rte-content .tiptap table th{border:1px solid var(--ui-border-subtle);vertical-align:top;min-width:80px;padding:.5rem .75rem;position:relative}.rte-content .tiptap table th{background-color:var(--ui-gray-50);text-align:left;font-weight:600}.rte-content .tiptap table .selectedCell:after{content:"";background:color-mix(in srgb, var(--ui-accent-interactive) 10%, transparent);pointer-events:none;position:absolute;inset:0}.rte-content .tiptap .math-inline-node{cursor:default;padding:0 2px;display:inline}.rte-content .tiptap .math-display-node{text-align:center;cursor:default;margin:.75rem 0;padding:1rem 0;display:block}.rte-content .tiptap .math-error{color:var(--ui-danger);background:var(--ui-danger-bg);border-radius:3px;padding:.125rem .375rem;font-family:monospace;font-size:.875rem}.rte-content .tiptap pre .hljs-keyword{color:#c792ea}.rte-content .tiptap pre .hljs-string{color:#c3e88d}.rte-content .tiptap pre .hljs-comment{color:#676e95}.rte-content .tiptap pre .hljs-number{color:#f78c6c}.rte-content .tiptap pre .hljs-function,.rte-content .tiptap pre .hljs-title{color:#82aaff}.rte-content .tiptap pre .hljs-built_in,.rte-content .tiptap pre .hljs-type{color:#ffcb6b}.rte-content .tiptap pre .hljs-attr{color:#f78c6c}.rte-content .tiptap pre .hljs-tag,.rte-content .tiptap pre .hljs-name{color:#f07178}.rte-content .tiptap pre .hljs-selector-class{color:#ffcb6b}.rte-content .tiptap pre .hljs-selector-id{color:#82aaff}.dip-add-buttons{gap:.5rem;margin-top:.5rem;display:flex}.dip-section-header .dip-add-buttons{margin-top:0}.dip-empty{color:var(--ui-gray-500);margin:0;font-size:.875rem}.dip-doc{background:var(--ui-gray-50);border:1px solid var(--ui-gray-200);border-radius:var(--ui-radius-md);margin-bottom:.75rem;padding:.75rem}.dip-doc__head{justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.5rem;display:flex}.dip-doc__rename{flex:1}.dip-doc__rename-row{align-items:center;gap:.375rem;display:flex}.dip-doc__rename-row .ui-input{flex:1}.dip-doc__title{color:var(--ui-gray-700);overflow-wrap:anywhere;min-width:0;font-size:.875rem;font-weight:600}.dip-doc__actions{flex-shrink:0;gap:.5rem;display:flex}.dip-doc__actions--top{align-self:flex-start}.ui-btn.dip-doc__move-btn{width:26px;height:26px}.ui-btn.dip-doc__replace{cursor:pointer;margin-bottom:0}.ui-btn.dip-doc__replace--busy{cursor:wait}.dip-doc__file{color:var(--ui-gray-600);font-size:.875rem}.dip-add-form{background:var(--ui-primary-50);border:1px solid var(--ui-primary-200);border-radius:var(--ui-radius-md);margin-top:.5rem;margin-bottom:.75rem;padding:.75rem}.dip-add-form--in-section{margin-top:0}.dip-inline{border-left:2px solid var(--ui-gray-200);margin-top:.5rem;padding-left:.5rem}.dip-section-header{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.dip-section-header--collapsed{margin-bottom:0}.dip-toggle{cursor:pointer;font:inherit;background:0 0;border:none;align-items:center;gap:.5rem;padding:0;display:flex}.dip-toggle__chevron{transition:transform .15s}.dip-toggle[aria-expanded=false] .dip-toggle__chevron{transform:rotate(-90deg)}.dip-toggle__heading{color:var(--ui-gray-800);font-size:1rem;font-weight:600}.dip-toggle__count{background:var(--ui-gray-200);color:var(--ui-gray-700);border-radius:9999px;padding:.125rem .5rem;font-size:.75rem;font-weight:500}.sop-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;display:flex}.sop-head--open{margin-bottom:1rem}.sop-toggle__chevron{transition:transform .15s}.sop-toggle[aria-expanded=false] .sop-toggle__chevron{transform:rotate(-90deg)}.sop-toggle{cursor:pointer;font:inherit;background:0 0;border:none;align-items:center;gap:.5rem;padding:0;display:flex}.sop-heading{color:var(--ui-gray-800);font-size:1rem;font-weight:600}.sop-count{background:var(--ui-gray-200);color:var(--ui-gray-700);border-radius:9999px;padding:.125rem .5rem;font-size:.75rem;font-weight:500}.sop-tools{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.sop-search{border:1px solid var(--ui-gray-300);border-radius:var(--ui-radius-md);min-width:14rem;padding:.3rem .6rem;font-size:.8125rem}.sop-quiet{color:var(--ui-gray-500);margin:0;font-size:.875rem}.sop-summary{margin-bottom:.5rem}.sop-link{color:var(--ui-accent-interactive);cursor:pointer;font:inherit;background:0 0;border:none;padding:0;text-decoration:underline}.sop-tree,.sop-levels,.sop-outcomes{margin:0;padding:0;list-style:none}.sop-competency{border:1px solid var(--ui-gray-200);border-radius:var(--ui-radius-lg);background:var(--ui-surface);margin-bottom:.5rem;padding:.5rem .75rem}.sop-levels{margin:.4rem 0 0 1.25rem}.sop-level{border-top:1px solid var(--ui-gray-100);padding:.25rem 0}.sop-level:first-child{border-top:none}.sop-node{cursor:pointer;width:100%;font:inherit;text-align:left;color:var(--ui-gray-800);background:0 0;border:none;align-items:baseline;gap:.5rem;padding:.15rem 0;display:flex}.sop-caret{width:.8rem;color:var(--ui-gray-500);flex-shrink:0}.sop-ref{color:var(--ui-accent-700);background:var(--ui-accent-50);border-radius:var(--ui-radius-sm);white-space:nowrap;flex-shrink:0;padding:.05rem .35rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.75rem;font-weight:600}.sop-title{font-size:.875rem;font-weight:600}.sop-level .sop-title{font-weight:500}.sop-meta{color:var(--ui-gray-400);white-space:nowrap;margin-left:auto;font-size:.75rem}.sop-statement{color:var(--ui-gray-600);margin:.15rem 0 .25rem 1.3rem;font-size:.8125rem}.sop-indent{margin-left:1.3rem}.sop-outcomes{margin:.25rem 0 .25rem 1.3rem}.sop-outcome{border-top:1px dashed var(--ui-gray-100);align-items:baseline;gap:.6rem;padding:.35rem 0;font-size:.8125rem;display:flex}.sop-outcome:first-child{border-top:none}.sop-outcome-label{color:var(--ui-gray-800);font-weight:600}.sop-outcome-statement{color:var(--ui-gray-700)}.sop-keywords{flex-wrap:wrap;gap:.25rem;margin-top:.25rem;display:flex}.sop-keyword{background:var(--ui-gray-100);color:var(--ui-gray-600);border-radius:9999px;padding:.05rem .45rem;font-size:.6875rem}.sop-match{background:var(--ui-warning-border);color:inherit;border-radius:2px;padding:0 1px}.edit-syllabus-summary{grid-template-columns:auto 1fr;gap:.25rem 1rem;margin:0;font-size:.875rem;display:grid}.edit-syllabus-summary dt{color:var(--ui-gray-500);font-weight:500}.edit-syllabus-summary dd{color:var(--ui-gray-800);margin:0}.cp-revision-packs{flex-direction:column;gap:.75rem;scroll-margin-top:1rem;display:flex}.cp-revision-packs__grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:1rem;display:grid}.cp-revision-packs__grid:empty{display:none}.cp-revision-packs .revision-pack{box-shadow:none;border-radius:10px;padding:1.25rem}.cp-revision-packs__intro{color:#4b5563;margin:0;font-size:.875rem;line-height:1.5}.cp-revision-packs__badge--open,.cp-revision-packs__badge--closed{color:#4b5563;background-color:#f3f4f6;border:1px solid #e5e7eb}.cp-revision-packs__badge--open{color:#1d4ed8}.revision-pack__review-btn:disabled{opacity:.6;cursor:default}.cp-revision-packs__error{color:#92400e;background:#fffbeb;border:1px solid #fcd34d;border-radius:6px;margin:0;padding:.625rem .875rem;font-size:.875rem;line-height:1.5}.cp-root:not(.cp-root--light) .cp-revision-packs .revision-pack{background-color:var(--cp-bg-secondary);border-color:var(--cp-border);color:var(--cp-text)}.cp-root:not(.cp-root--light) .cp-revision-packs .revision-pack:hover{border-color:var(--cp-bg-hover)}.cp-root:not(.cp-root--light) .cp-revision-packs :is(.revision-pack__title,.revision-pack__stat-value,.revision-pack__next-review-date,.revision-pack__dates-value){color:var(--cp-text)}.cp-root:not(.cp-root--light) .cp-revision-packs :is(.revision-pack__courses,.revision-pack__stat-label,.revision-pack__stat-denominator,.revision-pack__outcome-summary,.revision-pack__dates-label,.revision-pack__next-review,.revision-pack__next-review-label,.revision-pack__self-report-link,.cp-revision-packs__intro){color:var(--cp-text-muted)}.cp-root:not(.cp-root--light) .cp-revision-packs .revision-pack__self-report-link:hover{color:var(--cp-accent-subtle);border-bottom-color:var(--cp-accent-subtle)}.cp-root:not(.cp-root--light) .cp-revision-packs .revision-pack__stats{background-color:var(--cp-bg);border-color:var(--cp-border)}.cp-root:not(.cp-root--light) .cp-revision-packs .revision-pack__stat{border-right-color:var(--cp-border)}.cp-root:not(.cp-root--light) .cp-revision-packs .revision-pack__actions{border-top-color:var(--cp-border)}.cp-root:not(.cp-root--light) .cp-revision-packs .revision-pack__stat-value--due{color:var(--cp-accent-subtle)}.cp-root:not(.cp-root--light) .cp-revision-packs .revision-pack__stat-value--streak,.cp-root:not(.cp-root--light) .cp-revision-packs .revision-pack__est-completion--warning{color:#fbbf24}.cp-root:not(.cp-root--light) .cp-revision-packs .revision-pack__outcome-bar{--srs-op-hover:var(--cp-bg-hover);--srs-op-no-questions:#4b5563}.cp-root:not(.cp-root--light) .cp-revision-packs .revision-pack__badge--self{color:#93c5fd;background-color:#3b82f61f;border-color:#93c5fd66}.cp-root:not(.cp-root--light) .cp-revision-packs .revision-pack__badge--course{color:#86efac;background-color:#22c55e1f;border-color:#86efac66}.cp-root:not(.cp-root--light) .cp-revision-packs .revision-pack__badge--paused{color:#fcd34d;background-color:#fcd34d1a;border-color:#fcd34d66}.cp-root:not(.cp-root--light) .cp-revision-packs :is(.cp-revision-packs__badge--open,.cp-revision-packs__badge--closed){background-color:var(--cp-bg-hover);color:var(--cp-text-muted);border-color:var(--cp-border)}.cp-root:not(.cp-root--light) .cp-revision-packs .cp-revision-packs__badge--open{color:var(--cp-accent-subtle)}.cp-root:not(.cp-root--light) .cp-revision-packs .cp-revision-packs__error{color:#fcd34d;background:#fcd34d14;border-color:#fcd34d66}.cp-copy-link-wrapper{align-items:center;display:flex;position:relative}.cp-copy-link-btn{color:var(--cp-text-muted);font-size:var(--tuto-text-lg);cursor:pointer;background:0 0;border:none;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;padding:.25rem .375rem;line-height:1;transition:background-color .15s,color .15s;display:flex}.cp-copy-link-btn:hover{background:var(--cp-bg-hover);color:var(--cp-text)}.cp-copy-link-btn:focus-visible{outline:2px solid var(--cp-accent);outline-offset:2px}.cp-copy-link-toast{white-space:nowrap;background:var(--cp-bg-secondary,#2d2f31);color:var(--cp-text,#d1d7dc);border:1px solid var(--cp-border,#3e4143);font-size:var(--tuto-text-sm);pointer-events:none;z-index:100;border-radius:6px;padding:.35rem .75rem;font-weight:500;animation:.15s ease-out cp-toast-in;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 4px 12px #00000040}@keyframes cp-toast-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.cp-copy-link-modal-backdrop{z-index:1000;background:#0000008c;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.cp-copy-link-modal{background:var(--cp-bg-secondary,#2d2f31);border:1px solid var(--cp-border,#3e4143);border-radius:10px;flex-direction:column;gap:1rem;width:calc(100% - 2rem);max-width:480px;padding:1.5rem;display:flex;box-shadow:0 8px 32px #0006}.cp-copy-link-modal-title{font-size:var(--tuto-text-xl);color:var(--cp-text,#d1d7dc);margin:0;font-weight:700}.cp-copy-link-modal-desc{font-size:var(--tuto-text-base);color:var(--cp-text-muted,#9ca3af);margin:0;line-height:1.5}.cp-copy-link-modal-input{width:100%;font-size:var(--tuto-text-base);background:var(--cp-bg,#1c1d1f);color:var(--cp-text,#d1d7dc);border:1px solid var(--cp-border,#3e4143);box-sizing:border-box;cursor:text;-webkit-user-select:text;user-select:text;border-radius:6px;padding:.5rem .75rem;font-family:monospace}.cp-copy-link-modal-input:focus{outline:2px solid var(--cp-accent,#2563eb);outline-offset:2px}.cp-copy-link-modal-close{font-size:var(--tuto-text-base);color:var(--cp-text,#d1d7dc);background:var(--cp-bg-hover,#3e4143);border:1px solid var(--cp-border,#3e4143);cursor:pointer;border-radius:6px;align-self:flex-end;padding:.5rem 1.25rem;font-weight:600;transition:background-color .15s}.cp-copy-link-modal-close:hover{background:var(--cp-accent,#2563eb);border-color:var(--cp-accent,#2563eb);color:#fff}.cp-copy-link-modal-close:focus-visible{outline:2px solid var(--cp-accent,#2563eb);outline-offset:2px}.cp-nav{pointer-events:none;z-index:20;position:absolute;inset:0}.cp-nav-btn{pointer-events:auto;color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(4px);width:2.75rem;height:2.75rem;min-width:unset;max-width:unset;background:#1414168c;border:1px solid #ffffff2e;border-radius:50%;justify-content:center;align-items:center;padding:0;font-family:inherit;font-size:0;transition:background .15s,opacity .15s;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.cp-nav-prev{left:.75rem}.cp-nav-next{flex-direction:unset;text-align:left;margin-left:unset;right:.75rem}.cp-nav-btn:hover:not(:disabled){background:#141416d9}.cp-nav-btn:focus-visible{outline-offset:2px;outline:2px solid #2563eb}.cp-nav-btn:disabled{opacity:0;pointer-events:none}@media (width<=640px){.cp-nav-btn{width:2.5rem;height:2.5rem;top:auto;bottom:.25rem;transform:none}.cp-nav-prev{left:.5rem}.cp-nav-next{right:.5rem}}.cp-nav-arrow{font-size:var(--tuto-text-2xl);color:#fff;flex-shrink:0;line-height:1}.cp-nav-label,.cp-nav-hint,.cp-nav-title{display:none}.cp-nav-page-indicator{pointer-events:none;color:#fff;font-size:var(--tuto-text-xs,.75rem);font-variant-numeric:tabular-nums;white-space:nowrap;-webkit-backdrop-filter:blur(4px);background:#1414168c;border:1px solid #ffffff2e;border-radius:9999px;padding:.1875rem .625rem;font-weight:500;line-height:1.4;position:absolute;bottom:.75rem;left:50%;transform:translate(-50%)}.gv-root{--gv-text:var(--cp-text,var(--ui-gray-800));--gv-muted:var(--cp-text-muted,var(--ui-gray-500));--gv-surface:var(--cp-bg-secondary,var(--ui-gray-50));--gv-hover:var(--cp-bg-hover,var(--ui-gray-100));--gv-border:var(--cp-border,var(--ui-gray-200));--gv-brand:var(--cp-brand,var(--tuto-brand));--gv-link:var(--cp-accent-subtle,var(--ui-primary-600));--gv-success:var(--cp-success,var(--tuto-success));--gv-danger:var(--ui-danger-hover);--gv-warn:var(--ui-warning);color:var(--gv-text);flex-direction:column;gap:1rem;min-width:0;display:flex}.cp-root--dark .gv-root{--gv-danger:#fca5a5;--gv-warn:#fcd34d}.gv-card{background:var(--gv-surface);border:1px solid var(--gv-border);border-radius:8px;padding:1rem 1.125rem}.gv-card__heading,.gv-group__heading{font-size:var(--tuto-text-md,.9375rem);margin:0 0 .625rem;font-weight:600}.gv-note{font-size:var(--tuto-text-sm,.8125rem);color:var(--gv-muted);margin:0}.gv-overall{flex-direction:column;gap:.25rem;display:flex}.gv-overall__main{flex-wrap:wrap;align-items:baseline;gap:.25rem .75rem;display:flex}.gv-overall__value{font-size:var(--tuto-text-3xl,2rem);color:var(--gv-brand);font-variant-numeric:tabular-nums;font-weight:700;line-height:1.1}.gv-overall__label{font-size:var(--tuto-text-lg,1rem);font-weight:600}.gv-overall__basis,.gv-overall__comparison{font-size:var(--tuto-text-sm,.8125rem);color:var(--gv-muted);margin:0}.gv-overall__comparison{color:var(--gv-text);font-weight:600}.gv-categories{grid-template-columns:repeat(auto-fill,minmax(11rem,1fr));gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.gv-category{border:1px solid var(--gv-border);background:var(--gv-hover);border-radius:6px;grid-template-columns:1fr auto;grid-template-areas:"name average""weight weight""count count";gap:.125rem .5rem;min-width:0;padding:.625rem .75rem;display:grid}.gv-category__name{overflow-wrap:anywhere;grid-area:name;font-weight:600}.gv-category__average{font-variant-numeric:tabular-nums;grid-area:average;font-weight:700}.gv-category__weight{font-size:var(--tuto-text-xs,.75rem);color:var(--gv-muted);grid-area:weight}.gv-category__count{font-size:var(--tuto-text-xs,.75rem);color:var(--gv-muted);grid-area:count}.gv-group__heading{justify-content:space-between;align-items:baseline;gap:.75rem;display:flex}.gv-group__average{font-size:var(--tuto-text-sm,.8125rem);color:var(--gv-muted);font-weight:500}.gv-items{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.gv-item{background:var(--gv-surface);border:1px solid var(--gv-border);border-radius:8px;padding:.75rem 1rem}.gv-item__row{align-items:center;gap:.75rem;display:flex}.gv-item__icon{color:var(--gv-brand);flex-shrink:0;font-size:1.25rem;display:inline-flex}.gv-item__text{flex-direction:column;flex:1;gap:.125rem;min-width:0;display:flex}.gv-item__title{color:var(--gv-text);overflow-wrap:anywhere;font-weight:600}a.gv-item__title--link{text-decoration:none}a.gv-item__title--link:hover{text-decoration:underline}.gv-item__meta{font-size:var(--tuto-text-xs,.75rem);color:var(--gv-muted)}.gv-item__end{text-align:right;flex-direction:column;flex-shrink:0;align-items:flex-end;gap:.25rem;display:flex}.gv-item__score{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:700}.gv-item__percent{color:var(--gv-muted);font-weight:500}.gv-chip{font-size:var(--tuto-text-2xs,.6875rem);white-space:nowrap;color:var(--gv-muted);background:var(--gv-hover);border:1px solid #0000;border-radius:9999px;align-items:center;gap:.25rem;padding:.125rem .625rem;font-weight:600;display:inline-flex}.gv-chip--pass{color:var(--gv-success)}.gv-chip--fail{color:var(--gv-danger)}.gv-chip--graded{color:var(--gv-text)}.gv-chip--awaiting_results,.gv-chip--awaiting_marking{color:var(--gv-warn)}.gv-chip--missing{color:var(--gv-danger)}.gv-chip--not_attempted{color:var(--gv-muted);border-color:var(--gv-border);background:0 0}.gv-chip--exempt{color:var(--gv-muted)}.gv-item__actions{flex-wrap:wrap;gap:.25rem 1rem;margin:.5rem 0 0 2rem;display:flex}.gv-item__action{font:inherit;font-size:var(--tuto-text-sm,.8125rem);color:var(--gv-link);cursor:pointer;background:0 0;border:0;align-items:center;gap:.25rem;padding:0;text-decoration:none;display:inline-flex}.gv-item__action:hover{text-decoration:underline}.gv-item__action:focus-visible,a.gv-item__title--link:focus-visible{outline:2px solid var(--cp-accent,var(--ui-focus));outline-offset:2px;border-radius:2px}.gv-item__feedback{border-left:3px solid var(--gv-brand);background:var(--gv-hover);font-size:var(--tuto-text-sm,.8125rem);white-space:pre-wrap;overflow-wrap:anywhere;border-radius:0 6px 6px 0;margin:.5rem 0 0 2rem;padding:.625rem .75rem}.gv-empty{text-align:center;border:1px dashed var(--gv-border);border-radius:8px;flex-direction:column;align-items:center;gap:.375rem;padding:2rem 1rem;display:flex}.gv-empty__icon{color:var(--gv-muted);font-size:2rem}.gv-empty__title{margin:0;font-weight:600}.gv-empty__text{font-size:var(--tuto-text-sm,.8125rem);color:var(--gv-muted);margin:0}@media (width<=480px){.gv-item__row{flex-wrap:wrap;align-items:flex-start}.gv-item__text{flex-basis:calc(100% - 2rem)}.gv-item__end{text-align:left;flex-flow:wrap;align-items:center;margin-left:2rem}.gv-categories{grid-template-columns:1fr}}.le-paged-measure{visibility:hidden;pointer-events:none;position:absolute;top:0;left:-100000px}.le-paged-scale .le-page{min-height:var(--le-paged-page-height);height:auto!important;overflow:visible!important}.srp-root{max-width:1340px;margin:0 auto;padding:2rem 1.5rem}.srp-header{margin-bottom:1.5rem}.srp-title{color:#1c1d1f;margin:0 0 .25rem;font-size:1.375rem;font-weight:700}.srp-count{color:#6b7280;margin:0;font-size:.875rem}.srp-grid{grid-template-columns:repeat(auto-fill,minmax(min(280px,100%),1fr));gap:1.25rem;margin:0;padding:0;list-style:none;display:grid}.srp-grid>li{display:flex}.srp-grid>li>*{flex:1}.srp-empty{text-align:center;color:#6b7280;padding:4rem 1.5rem}.srp-empty-icon{margin-bottom:.75rem;font-size:2.5rem;display:block}.srp-empty-title{color:#374151;margin:0 0 .375rem;font-size:1.125rem;font-weight:700}.srp-loading{justify-content:center;align-items:center;min-height:200px;display:flex}.srp-signin{background:#f5f3ff;border:1px solid #ddd6fe;border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem 1.5rem;margin:0 0 1.5rem;padding:1rem 1.25rem;display:flex}.srp-signin p{color:#374151;max-width:60ch;margin:0;font-size:.9375rem}.srp-signin-actions{flex-wrap:wrap;gap:.5rem;display:flex}.srp-signin--alone{text-align:center;flex-direction:column;align-items:center;margin-top:2rem;padding:2rem 1.25rem}.srp-subjects{flex-wrap:wrap;justify-content:center;gap:.5rem;margin:1.25rem 0 0;padding:0;list-style:none;display:flex}.srp-subject{color:#1c1d1f;background:#fff;border:1px solid #d1d5db;border-radius:999px;align-items:center;min-height:44px;padding:0 1rem;font-size:.9375rem;font-weight:600;text-decoration:none;display:inline-flex}.srp-subject:hover{color:#5624d0;border-color:#5624d0}.srp-sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.srp-page{flex:1 0 auto}.srp-searchbar{background:var(--st-soft,#f7f9fa);border-bottom:1px solid var(--st-line,#e5e7eb);padding:28px 0}.srp-searchbar .header-search{max-width:720px}.srp-body{padding-top:32px;padding-bottom:64px}.st-root .srp-title{font-family:var(--st-display,inherit);color:var(--st-ink,#1c1d1f)}.start-trial{justify-content:center;padding:2.5rem 1rem 4rem;display:flex}.start-trial-card{background:var(--ui-surface);border:1px solid var(--ui-gray-200);border-radius:var(--ui-radius-lg);flex-direction:column;gap:1.25rem;width:100%;max-width:560px;padding:2rem;display:flex;box-shadow:0 1px 3px #0f172a0f}.start-trial-card>div{flex-direction:column;gap:1rem;display:flex}.start-trial-title{font-size:var(--tuto-text-2xl,1.5rem);color:var(--ui-gray-900);margin:0;font-weight:700}.start-trial-lead{font-size:var(--tuto-text-md,.9375rem);color:var(--ui-gray-700);margin:0;line-height:1.55}.start-trial-muted{color:var(--ui-gray-500);font-size:var(--tuto-text-sm,.8125rem);margin:0}.start-trial-summary{background:var(--ui-primary-50);border:1px solid var(--ui-primary-100);border-radius:var(--ui-radius-md);font-size:var(--tuto-text-base,.875rem);color:var(--ui-gray-800);flex-direction:column;gap:.375rem;margin:0;padding:1rem 1rem 1rem 2.25rem;display:flex}.start-trial-facts{font-size:var(--tuto-text-base,.875rem);grid-template-columns:max-content 1fr;gap:.375rem 1rem;margin:0;display:grid}.start-trial-facts dt{color:var(--ui-gray-500)}.start-trial-facts dd{color:var(--ui-gray-800);margin:0}.start-trial-row{grid-template-columns:1fr 1fr;gap:1rem;display:grid}@media (width<=540px){.start-trial-row{grid-template-columns:1fr}.start-trial-card{padding:1.25rem}}.start-trial-actions{flex-wrap:wrap;justify-content:flex-end;gap:.5rem;display:flex}.start-trial-actions--start{justify-content:flex-start}.start-trial-contact{border-top:1px solid var(--ui-gray-200);font-size:var(--tuto-text-sm,.8125rem);color:var(--ui-gray-600);margin:0;padding-top:1rem}.instructor-profiles{margin-bottom:2rem}.instructor-profiles__grid{grid-template-columns:minmax(0,1fr);gap:1rem;margin:0;padding:0;list-style:none;display:grid}@media (width>=640px){.instructor-profiles__grid:not(.instructor-profiles__grid--single){grid-template-columns:repeat(2,minmax(0,1fr))}}.instructor-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;align-items:flex-start;gap:1rem;padding:1rem;display:flex}.instructor-card__avatar{flex-shrink:0}.instructor-card__body{flex:1;min-width:0}.instructor-card__name{color:#1c1d1f;overflow-wrap:anywhere;margin:0;font-size:1rem;font-weight:700}.instructor-card__headline{color:#6b7280;overflow-wrap:anywhere;margin:.125rem 0 0;font-size:.875rem}.instructor-card__bio{color:#374151;white-space:pre-line;overflow-wrap:anywhere;margin:.625rem 0 0;font-size:.9375rem;line-height:1.55}.instructor-card__bio--clamped{-webkit-line-clamp:4;line-clamp:4;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.instructor-card__more{color:#5624d0;cursor:pointer;background:0 0;border:none;margin-top:.25rem;padding:0;font-size:.875rem;font-weight:600}.instructor-card__more:hover,.instructor-card__more:focus-visible{text-decoration:underline}.pcp-sidebar .instructor-profiles{margin:1.5rem 0 0}.pcp-sidebar .instructor-profiles__grid,.pcp-sidebar .instructor-profiles__grid:not(.instructor-profiles__grid--single){grid-template-columns:minmax(0,1fr)}.ppp-loading{justify-content:center;padding:4rem 1.5rem;display:flex}.ppp-body{grid-template-columns:minmax(0,1fr) minmax(0,360px);gap:2rem;margin-bottom:3rem;display:grid}@media (width<=900px){.ppp-body{grid-template-columns:1fr}}.ppp-section-title{color:#111827;margin:0 0 .75rem;font-size:1.25rem;font-weight:700}.ppp-text{color:#374151;margin:0 0 1rem;font-size:1rem;line-height:1.6}.ppp-facts{gap:.75rem;margin:0;display:grid}.ppp-facts div{grid-template-columns:7rem 1fr;gap:1rem;display:grid}.ppp-facts dt{color:#4b5563;font-weight:600}.ppp-facts dd{color:#111827;margin:0}.ppp-courses{background:#f9fafb;border:1px solid #e5e7eb;border-radius:16px;align-self:start;padding:1.5rem}.ppp-course-list{gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.ppp-course{color:#111827;background:#fff;border:1px solid #e5e7eb;border-radius:10px;justify-content:space-between;align-items:center;gap:.75rem;min-height:44px;padding:.5rem .875rem;font-weight:600;text-decoration:none;display:flex}.ppp-course:hover{color:#1463d9;border-color:#1463d9}.ppp-description{white-space:pre-line;color:#111827}.progress-dashboard{flex-direction:column;gap:1.5rem;display:flex}.progress-dashboard--loading{padding:2rem 0}.progress-dashboard__skeleton-heading{background:linear-gradient(90deg, var(--ui-gray-100) 25%, var(--ui-gray-200) 50%, var(--ui-gray-100) 75%);background-size:200% 100%;border-radius:6px;width:280px;height:2rem;animation:1.4s ease-in-out infinite progress-dashboard-shimmer}@keyframes progress-dashboard-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.progress-dashboard__header{flex-direction:column;gap:.5rem;display:flex}.progress-dashboard__back-link{color:var(--ui-gray-500);align-self:flex-start;align-items:center;gap:.375rem;font-size:.875rem;text-decoration:none;transition:color .15s;display:inline-flex}.progress-dashboard__back-link:hover{color:var(--ui-gray-700);text-decoration:none}.progress-dashboard__back-link:focus-visible{outline:2px solid var(--ui-primary-500);outline-offset:2px;border-radius:3px}.progress-dashboard__title-row{justify-content:space-between;align-items:center;gap:1rem;display:flex}.progress-dashboard__heading{color:var(--ui-gray-800);margin:0;font-size:1.5rem;font-weight:700}.progress-dashboard__course-info{background-color:var(--ui-gray-50);border:1px solid var(--ui-gray-200);border-radius:8px;flex-wrap:wrap;align-items:center;gap:.625rem;padding:.625rem .875rem;display:flex}.progress-dashboard__course-org{color:var(--ui-gray-600);text-transform:uppercase;letter-spacing:.05em;background-color:var(--ui-gray-200);white-space:nowrap;border-radius:4px;padding:.125rem .5rem;font-size:.75rem;font-weight:600}.progress-dashboard__course-title{color:var(--ui-gray-800);font-size:.9375rem;font-weight:600}.progress-dashboard__tab-card{background-color:var(--ui-surface);border:1px solid var(--ui-gray-200);border-radius:8px;overflow:hidden}.progress-dashboard__tabs{border-bottom:1px solid var(--ui-gray-200);background-color:var(--ui-gray-50);flex-wrap:wrap;gap:0;padding:0 .5rem;display:flex}.progress-dashboard__tab{color:var(--ui-gray-500);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:.75rem 1rem;font-size:.9375rem;font-weight:500;line-height:1.5;transition:color .15s,border-color .15s,background-color .15s}.progress-dashboard__tab:hover{color:var(--ui-gray-700)}.progress-dashboard__tab:focus-visible{outline:2px solid var(--ui-primary-500);outline-offset:-2px;border-radius:4px 4px 0 0}.progress-dashboard__tab--active{color:var(--ui-primary-700);border-bottom-color:var(--ui-primary-700);background-color:var(--ui-surface);font-weight:600}.progress-dashboard__panels,.progress-dashboard__panels>[role=tabpanel]{display:block}.progress-dashboard__panels>[role=tabpanel][hidden]{display:none}.progress-dashboard__panels .section-panel{box-shadow:none;border:none;border-radius:0}.access-denied-page{justify-content:center;align-items:center;min-height:60vh;padding:2rem 1rem;display:flex}.access-denied-page__content{text-align:center;flex-direction:column;align-items:center;gap:1.25rem;max-width:480px;display:flex}.access-denied-page__icon{-webkit-user-select:none;user-select:none;font-size:3rem;line-height:1}.access-denied-page__heading{color:var(--ui-gray-800);margin:0;font-size:1.5rem;font-weight:700}.access-denied-page__message{color:var(--ui-gray-500);margin:0;font-size:.9375rem;line-height:1.6}.access-denied-page__back-link{margin-top:.5rem}.section-panel{background-color:var(--ui-surface);border:1px solid var(--ui-gray-200);border-radius:8px;flex-direction:column;gap:.75rem;padding:1.25rem;display:flex}.section-panel .section-title{color:var(--ui-gray-700);margin:0;font-size:1.125rem;font-weight:600}.section-panel__skeleton{flex-direction:column;gap:.5rem;display:flex}.section-panel__skeleton-line{background-color:var(--ui-gray-200);border-radius:4px;height:.875rem;animation:1.4s ease-in-out infinite section-panel-skeleton-pulse}.section-panel__skeleton-line:nth-child(2){width:80%}.section-panel__skeleton-line:nth-child(3){width:60%}@keyframes section-panel-skeleton-pulse{0%,to{opacity:1}50%{opacity:.5}}.section-panel__error{color:var(--ui-danger);background-color:var(--ui-danger-bg);border:1px solid var(--ui-danger-border);border-radius:8px;flex-direction:column;align-items:flex-start;gap:.5rem;padding:.75rem 1rem;font-size:.875rem;display:flex}.section-panel__error-message{margin:0}.section-panel__empty{color:var(--ui-gray-500);background-color:var(--ui-gray-50);border:1px solid var(--ui-gray-200);border-radius:8px;padding:.75rem 1rem;font-size:.875rem}.bank-choice{margin-bottom:1rem}.bank-choice__hint{color:var(--ui-gray-700);margin:0 0 .625rem;font-size:.875rem}.bank-choice__list{gap:.625rem;margin:0;padding:0;list-style:none;display:grid}.bank-choice__card{background:var(--ui-gray-50);border:1px solid var(--ui-gray-200);border-radius:.375rem;padding:.875rem 1rem}.bank-choice__label{color:var(--ui-gray-900);margin:0 0 .375rem;font-weight:700}.bank-choice__details{grid-template-columns:max-content 1fr;gap:.375rem 1.25rem;margin:0;font-size:.9375rem;display:grid}.bank-choice__details dt{color:var(--ui-gray-500);font-weight:500}.bank-choice__details dd{overflow-wrap:anywhere;margin:0}.bank-choice__strong{font-weight:600}.bank-choice__mono{font-family:monospace}.bank-choice__paid-into{border:1px solid var(--ui-gray-200);border-radius:.375rem;margin:0 0 .75rem;padding:.625rem .875rem}.bank-choice__paid-into[aria-invalid=true]{border-color:var(--ui-red-300)}.bank-choice__legend{padding:0 .25rem;font-size:.875rem;font-weight:500}.bank-choice__required{color:var(--ui-danger)}.bank-choice__option{cursor:pointer;align-items:center;gap:.5rem;padding:.25rem 0;font-size:.9375rem;display:flex}.bank-choice__error{color:var(--ui-danger);margin:.375rem 0 0;font-size:.875rem}.notif-prefs{color:var(--ui-gray-700);font-size:.875rem}.notif-prefs--loading,.notif-prefs--error{color:var(--ui-gray-500);padding:.5rem 0;font-size:.8125rem}.notif-prefs--error{color:var(--ui-danger)}.notif-prefs__heading{color:var(--ui-gray-800);text-transform:uppercase;letter-spacing:.04em;margin:0 0 .75rem;font-size:.8125rem;font-weight:600}.notif-prefs__row{justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.75rem;display:flex}.notif-prefs__label{color:var(--ui-gray-700);cursor:default;flex-direction:column;gap:.125rem;font-weight:500;display:flex}.notif-prefs__label-hint{color:var(--ui-gray-500);font-size:.75rem;font-weight:400;line-height:1.4}.notif-prefs__toggle{background-color:var(--ui-gray-300);cursor:pointer;border:none;border-radius:11px;flex-shrink:0;width:40px;height:22px;padding:0;transition:background-color .2s;position:relative}.notif-prefs__toggle:focus-visible{outline:2px solid var(--ui-primary-500);outline-offset:2px}.notif-prefs__toggle--on{background-color:var(--ui-primary-500)}.notif-prefs__toggle:disabled{opacity:.6;cursor:not-allowed}.notif-prefs__toggle-thumb{background-color:var(--ui-surface);border-radius:50%;width:16px;height:16px;transition:transform .2s;position:absolute;top:3px;left:3px}.notif-prefs__toggle--on .notif-prefs__toggle-thumb{transform:translate(18px)}.notif-prefs__fieldset{border:none;margin:0 0 .75rem;padding:0}.notif-prefs__legend{color:var(--ui-gray-700);flex-direction:column;gap:.125rem;margin-bottom:.5rem;font-weight:500;display:flex}.notif-prefs__radio-label{color:var(--ui-gray-700);cursor:pointer;align-items:center;gap:.5rem;padding:.25rem 0;font-size:.875rem;display:flex}.notif-prefs__radio-label--disabled{color:var(--ui-text-subtle);cursor:not-allowed}.notif-prefs__radio-label input[type=radio]{accent-color:var(--ui-primary-500);cursor:inherit}.notif-prefs__sms-disabled-msg{color:var(--ui-gray-500);background-color:var(--ui-gray-100);border-radius:6px;margin:.25rem 0 0;padding:.5rem .75rem;font-size:.75rem;line-height:1.5}.notif-prefs__link{color:var(--ui-primary-500);text-decoration:underline}.notif-prefs__link:hover{color:var(--ui-primary-600)}.notif-prefs__status{margin:.5rem 0 0;font-size:.75rem}.notif-prefs__status--saving{color:var(--ui-gray-500)}.notif-prefs__status--saved{color:var(--ui-emerald-600)}.notif-prefs__status--error{color:var(--ui-danger)}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.notification-feed{background-color:var(--ui-surface);border:1px solid var(--ui-gray-200);width:360px;max-height:480px;box-shadow:var(--ui-shadow-sm);z-index:200;border-radius:8px;flex-direction:column;display:flex;position:absolute;top:calc(100% + 8px);right:0;overflow:hidden}.notification-feed__header{border-bottom:1px solid var(--ui-gray-200);flex-shrink:0;justify-content:space-between;align-items:center;padding:.75rem 1rem;display:flex}.notification-feed__title{color:var(--ui-gray-800);margin:0;font-size:.875rem;font-weight:600}.notification-feed__header-actions{align-items:center;gap:.5rem;display:flex}.notification-feed__unread-label{color:var(--ui-primary-500);font-size:.75rem;font-weight:500}.notification-feed__settings-btn,.notification-feed__close-btn{width:28px;height:28px;color:var(--ui-gray-500);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:0;font-size:.875rem;transition:background-color .15s,color .15s;display:inline-flex}.notification-feed__settings-btn:hover,.notification-feed__close-btn:hover{background-color:var(--ui-gray-100);color:var(--ui-gray-700)}.notification-feed__settings-btn:focus-visible,.notification-feed__close-btn:focus-visible{outline:2px solid var(--ui-primary-500);outline-offset:2px}.notification-feed__preferences{border-bottom:1px solid var(--ui-gray-200);background-color:var(--ui-gray-50);flex-shrink:0;padding:.75rem 1rem}.notification-feed__list{flex:1;overflow-y:auto}.notification-feed__empty{text-align:center;color:var(--ui-gray-500);padding:2rem 1rem;font-size:.875rem}.notification-feed__item{border:none;border-bottom:1px solid var(--ui-gray-100);cursor:pointer;text-align:left;background:0 0;align-items:flex-start;gap:.75rem;width:100%;padding:.75rem 1rem;transition:background-color .15s;display:flex}.notification-feed__item:last-child{border-bottom:none}.notification-feed__item:hover{background-color:var(--ui-gray-50)}.notification-feed__item:focus-visible{outline:2px solid var(--ui-primary-500);outline-offset:-2px}.notification-feed__item--unread{background-color:var(--ui-primary-50)}.notification-feed__item--unread:hover{background-color:var(--ui-primary-100)}.notification-feed__item-icon{flex-shrink:0;font-size:1rem;line-height:1.5}.notification-feed__item-body{flex-direction:column;flex:1;gap:.125rem;min-width:0;display:flex}.notification-feed__item-type{color:var(--ui-gray-700);font-size:.75rem;font-weight:600}.notification-feed__item-message{color:var(--ui-gray-600);text-overflow:ellipsis;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.8125rem;line-height:1.4;display:-webkit-box;overflow:hidden}.notification-feed__item-time{color:var(--ui-text-subtle);margin-top:.125rem;font-size:.6875rem}.notification-feed__item-dot{background-color:var(--ui-primary-500);border-radius:50%;flex-shrink:0;width:8px;height:8px;margin-top:.375rem}.notification-bell{align-items:center;display:inline-flex;position:relative}.notification-bell__btn{width:36px;height:36px;color:var(--ui-gray-700);cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;padding:0;transition:background-color .15s,color .15s;display:inline-flex;position:relative}.notification-bell__btn:hover{background-color:var(--ui-gray-100);color:var(--ui-gray-900)}.notification-bell__btn:focus-visible{outline:2px solid var(--ui-primary-500);outline-offset:2px}.notification-bell__badge{background-color:var(--ui-danger-accent);min-width:16px;height:16px;color:var(--ui-on-accent);text-align:center;pointer-events:none;border-radius:8px;padding:0 4px;font-size:.625rem;font-weight:600;line-height:16px;position:absolute;top:2px;right:2px}.parent-access-page{flex-direction:column;gap:1.5rem;display:flex}.parent-access-page--loading{padding:2rem 0}.parent-access-page__skeleton-heading{background:linear-gradient(90deg, var(--ui-gray-100) 25%, var(--ui-gray-200) 50%, var(--ui-gray-100) 75%);background-size:200% 100%;border-radius:6px;width:280px;height:2rem;animation:1.4s ease-in-out infinite parent-access-shimmer}@keyframes parent-access-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.parent-access-page__header{flex-direction:column;gap:.5rem;display:flex}.parent-access-page__back-link{color:var(--ui-gray-500);align-self:flex-start;align-items:center;gap:.375rem;font-size:.875rem;text-decoration:none;transition:color .15s;display:inline-flex}.parent-access-page__back-link:hover{color:var(--ui-gray-700);text-decoration:none}.parent-access-page__back-link:focus-visible{outline:2px solid var(--ui-primary-500);outline-offset:2px;border-radius:3px}.parent-access-page__title-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.parent-access-page__heading{color:var(--ui-gray-800);margin:0;font-size:1.5rem;font-weight:700}.parent-access-page__success{color:var(--ui-success);background-color:var(--ui-success-bg);border:1px solid var(--ui-success-border);border-radius:8px;padding:.75rem 1rem;font-size:.875rem}.parent-access-table{border-collapse:collapse;width:100%;font-size:.875rem}.parent-access-table th{text-align:left;color:var(--ui-gray-500);border-bottom:1px solid var(--ui-gray-200);white-space:nowrap;padding:.5rem .75rem;font-weight:500}.parent-access-table td{color:var(--ui-gray-800);border-bottom:1px solid var(--ui-gray-100);vertical-align:middle;padding:.625rem .75rem}.parent-access-table tbody tr:last-child td{border-bottom:none}.parent-access-table tbody tr:hover td{background-color:var(--ui-gray-50)}.parent-access-revoke-btn{border:1px solid var(--ui-danger-border);background-color:var(--ui-danger-bg);color:var(--ui-danger-text);cursor:pointer;white-space:nowrap;border-radius:4px;padding:.25rem .625rem;font-size:.8125rem;font-weight:500;transition:background-color .15s}.parent-access-revoke-btn:hover:not(:disabled){background-color:var(--ui-danger-bg-strong)}.parent-access-revoke-btn:disabled{opacity:.5;cursor:not-allowed}.parent-access-dialog-overlay{background-color:var(--ui-overlay);z-index:1000;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.parent-access-dialog{background-color:var(--ui-surface);width:90%;max-width:480px;box-shadow:var(--ui-shadow-lg);border-radius:12px;flex-direction:column;gap:1rem;padding:1.5rem;display:flex}.parent-access-dialog__title{color:var(--ui-gray-800);margin:0;font-size:1.125rem;font-weight:600}.parent-access-dialog__field{flex-direction:column;gap:.375rem;display:flex}.parent-access-dialog__label{color:var(--ui-gray-700);font-size:.8125rem;font-weight:500}.parent-access-dialog__input,.parent-access-dialog__select{border:1px solid var(--ui-gray-300);background-color:var(--ui-surface);color:var(--ui-gray-800);box-sizing:border-box;border-radius:6px;width:100%;padding:.5rem .75rem;font-size:.875rem;transition:border-color .15s,box-shadow .15s}.parent-access-dialog__input:focus,.parent-access-dialog__select:focus{border-color:var(--ui-primary-500);box-shadow:var(--ui-focus-ring);outline:none}.parent-access-dialog__input:disabled,.parent-access-dialog__select:disabled{background-color:var(--ui-gray-50);cursor:not-allowed}.parent-access-dialog__error{color:var(--ui-danger-text);background-color:var(--ui-danger-bg);border:1px solid var(--ui-danger-border);border-radius:6px;margin:0;padding:.5rem .75rem;font-size:.8125rem}.parent-access-dialog__actions{justify-content:flex-end;gap:.5rem;margin-top:.25rem;display:flex}.child-overview{flex-direction:column;gap:1.5rem;display:flex}.child-overview--loading{padding:1rem 0}.child-overview__skeleton-heading{background:linear-gradient(90deg, var(--ui-gray-100) 25%, var(--ui-gray-200) 50%, var(--ui-gray-100) 75%);background-size:200% 100%;border-radius:6px;width:260px;height:2rem;margin-bottom:.5rem;animation:1.4s ease-in-out infinite child-overview-shimmer}.child-overview__skeleton-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem;display:grid}.child-overview__skeleton-card{background:linear-gradient(90deg, var(--ui-gray-100) 25%, var(--ui-gray-200) 50%, var(--ui-gray-100) 75%);background-size:200% 100%;border-radius:8px;height:140px;animation:1.4s ease-in-out infinite child-overview-shimmer}@keyframes child-overview-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.child-overview__header{flex-direction:column;gap:.375rem;display:flex}.child-overview__back-link{color:var(--ui-gray-500);align-self:flex-start;align-items:center;gap:.375rem;font-size:.875rem;text-decoration:none;transition:color .15s;display:inline-flex}.child-overview__back-link:hover{color:var(--ui-gray-700)}.child-overview__back-link:focus-visible{outline:2px solid var(--ui-primary-500);outline-offset:2px;border-radius:3px}.child-overview__heading{color:var(--ui-gray-800);margin:0;font-size:1.5rem;font-weight:700}.child-overview__subheading{color:var(--ui-gray-500);margin:0;font-size:.875rem}.child-overview__grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem;display:grid}.child-overview__course-card{background-color:var(--ui-surface);border:1px solid var(--ui-gray-200);cursor:pointer;border-radius:10px;outline:none;flex-direction:column;gap:.5rem;padding:1.25rem;transition:border-color .15s,box-shadow .15s;display:flex}.child-overview__course-card:hover{border-color:var(--ui-primary-500);box-shadow:var(--ui-shadow-md)}.child-overview__course-card:focus-visible{outline:2px solid var(--ui-primary-500);outline-offset:2px}.child-overview__course-org{color:var(--ui-gray-500);text-transform:uppercase;letter-spacing:.05em;background-color:var(--ui-gray-100);border-radius:4px;align-self:flex-start;padding:.125rem .5rem;font-size:.75rem;font-weight:600}.child-overview__course-title{color:var(--ui-gray-800);margin:0;font-size:1rem;font-weight:600;line-height:1.4}.child-overview__course-instructor{color:var(--ui-gray-500);margin:0;font-size:.8125rem}.child-overview__course-meta{justify-content:space-between;align-items:center;gap:.5rem;margin-top:.25rem;display:flex}.child-overview__course-date{color:var(--ui-text-subtle);font-size:.75rem}.child-overview__status{border-radius:9999px;padding:.125rem .5rem;font-size:.75rem;font-weight:500}.child-overview__status--active{background-color:var(--ui-success-bg-strong);color:var(--ui-success)}.child-overview__status--completed{background-color:var(--ui-primary-100);color:var(--ui-primary-800)}.child-overview__status--suspended{background-color:var(--ui-warning-bg-strong);color:var(--ui-warning)}.child-overview__course-cta{color:var(--ui-primary-600);margin-top:auto;padding-top:.25rem;font-size:.8125rem;font-weight:500}.child-overview__empty{color:var(--ui-gray-500);background-color:var(--ui-gray-50);border:1px solid var(--ui-gray-200);text-align:center;border-radius:8px;padding:2rem;font-size:.875rem}.child-overview__empty p{margin:0}.child-overview__srs{margin-top:2rem}.child-overview__srs-heading{margin:0 0 .25rem;font-size:1.25rem;font-weight:600}.child-overview__srs-muted{color:var(--ui-text-muted);margin:0;font-size:.875rem}.child-overview__srs-card{border:1px solid var(--ui-border);background:var(--ui-surface);border-radius:.5rem;flex-direction:column;gap:.375rem;min-width:0;padding:1rem;display:flex}.child-overview__srs-figure{margin:0}.child-overview__srs-milestones{flex-direction:column;gap:.25rem;margin:.25rem 0 0;padding:0;font-size:.875rem;list-style:none;display:flex}.child-overview__srs-milestone-title{overflow-wrap:anywhere;font-weight:500}.child-overview__srs-status{background:var(--ui-gray-100);color:var(--ui-gray-600);border-radius:999px;margin-left:.5rem;padding:0 .375rem;font-size:.75rem;font-weight:600}.child-overview__srs-outcomes-btn{border:1px solid var(--ui-border);color:var(--tuto-action);font:inherit;cursor:pointer;background:0 0;border-radius:.375rem;align-self:flex-start;margin-top:.5rem;padding:.375rem .75rem;font-size:.875rem;font-weight:500}.child-overview__srs-outcomes-btn:hover{background:var(--ui-surface-hover)}.child-overview__srs-outcomes-btn:focus-visible{outline:2px solid var(--tuto-action);outline-offset:2px}.child-overview__srs-status--ready{background:var(--ui-success-bg-strong);color:var(--ui-success)}.child-overview__srs-status--on_track{background:var(--ui-primary-100);color:var(--ui-primary-800)}.child-overview__srs-status--at_risk{background:var(--ui-warning-bg-strong);color:var(--ui-warning)}.invoice-dashboard{max-width:1200px;margin:0 auto;padding:1.5rem 1rem}.invoice-dashboard__header{margin-bottom:1.25rem}.invoice-dashboard__title{color:var(--ui-gray-900);margin:0;font-size:1.5rem;font-weight:700}.invoice-filter-bar{background:var(--ui-gray-50);border:1px solid var(--ui-gray-200);border-radius:.5rem;flex-wrap:wrap;align-items:center;gap:.5rem .75rem;margin-bottom:1.25rem;padding:.75rem 1rem;display:flex}.invoice-filter-bar__label{color:var(--ui-gray-700);white-space:nowrap;font-size:.8125rem;font-weight:500}.invoice-filter-bar__select,.invoice-filter-bar__date{border:1px solid var(--ui-gray-300);background:var(--ui-surface);color:var(--ui-gray-900);border-radius:.375rem;min-width:10rem;padding:.375rem .625rem;font-size:.875rem}.invoice-filter-bar__select:focus,.invoice-filter-bar__date:focus{outline:2px solid var(--ui-primary-700);outline-offset:1px}.invoice-tab-strip{border-bottom:2px solid var(--ui-gray-200);gap:.25rem;margin-bottom:1.25rem;display:flex}.invoice-tab{color:var(--ui-gray-700);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-2px;padding:.5rem 1rem;font-size:.9375rem;font-weight:400;transition:color .15s,border-color .15s}.invoice-tab:hover{color:var(--ui-primary-700)}.invoice-tab--active{color:var(--ui-primary-700);border-bottom-color:var(--ui-primary-700);font-weight:600}.invoice-tab:focus-visible{outline:2px solid var(--ui-primary-700);outline-offset:2px;border-radius:2px}.invoice-row--overdue{background-color:var(--ui-orange-50)}.invoice-row--overdue:hover{background-color:var(--ui-orange-100)}.invoice-status-badge{white-space:nowrap;border-radius:9999px;padding:.1875rem .5rem;font-size:.75rem;font-weight:600;display:inline-block}.invoice-status-badge--pending{background-color:var(--ui-warning-bg-strong);color:var(--ui-warning)}.invoice-status-badge--overdue{background-color:var(--ui-danger-bg-strong);color:var(--ui-danger-text)}.invoice-status-badge--awaiting{background-color:var(--ui-primary-100);color:var(--ui-primary-800)}.invoice-status-badge--completed{background-color:var(--ui-emerald-100);color:var(--ui-emerald-800)}.invoice-overdue-indicator{color:var(--ui-danger);font-size:.875rem}.invoice-awaiting-badge{background-color:var(--ui-primary-100);color:var(--ui-primary-800);white-space:nowrap;border-radius:.25rem;padding:.1875rem .5rem;font-size:.75rem;font-weight:500;display:inline-block}.invoice-row-actions{flex-wrap:wrap;align-items:center;gap:.375rem;display:flex}.invoice-empty-state{text-align:center;color:var(--ui-gray-500);flex-direction:column;justify-content:center;align-items:center;padding:3rem 1rem;display:flex}.invoice-empty-state__icon{opacity:.6;margin-bottom:.75rem;font-size:2.5rem}.invoice-empty-state__text{margin:0;font-size:.9375rem}.invoice-loading{color:var(--ui-gray-500);flex-direction:column;justify-content:center;align-items:center;gap:.75rem;padding:3rem 1rem;display:flex}.invoice-loading p{margin:0;font-size:.9375rem}.invoice-error{background-color:var(--ui-danger-bg);border:1px solid var(--ui-danger-border);border-radius:.5rem;flex-direction:column;align-items:flex-start;gap:.75rem;margin-bottom:1rem;padding:1rem;display:flex}.invoice-error__message{color:var(--ui-danger-text);margin:0;font-size:.9375rem}@media (width<=640px){.invoice-filter-bar{flex-direction:column;align-items:stretch}.invoice-filter-bar__select,.invoice-filter-bar__date{width:100%}.invoice-tab-strip{-webkit-overflow-scrolling:touch;overflow-x:auto}}.fc-page{max-width:1340px;margin:0 auto;padding:2rem 1.5rem}.fc-page__header{margin-bottom:1.75rem}.fc-page__title{color:#111827;margin:0 0 .5rem;font-size:1.75rem;font-weight:700}.fc-page__subtitle{color:#6b7280;margin:0;font-size:1rem}.fc-page__error{background-color:#fef2f2;border:1px solid #fecaca;border-radius:8px;align-items:center;gap:1rem;margin-bottom:1.5rem;padding:1rem 1.25rem;display:flex}.fc-page__error-message{color:#b91c1c;flex:1;margin:0;font-size:.9rem}.fc-page__retry-btn{color:#b91c1c;cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #b91c1c;border-radius:6px;padding:.4rem 1rem;font-size:.875rem;font-weight:500;transition:background-color .15s,color .15s}.fc-page__retry-btn:hover{color:#fff;background-color:#b91c1c}.fc-page__retry-btn:focus-visible{outline-offset:2px;outline:2px solid #2563eb}.fc-page__empty{color:#6b7280;text-align:center;padding:3rem 1rem;font-size:1rem}.fc-filter-toolbar{background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;flex-wrap:wrap;align-items:flex-end;gap:1rem;margin-bottom:1.75rem;padding:1rem 1.25rem;display:flex}.fc-filter-toolbar__field{flex-direction:column;flex:180px;gap:.3rem;min-width:180px;display:flex}.fc-filter-toolbar__label{color:#374151;text-transform:uppercase;letter-spacing:.03em;font-size:.8rem;font-weight:600}.fc-filter-toolbar__select{color:#1f2937;cursor:pointer;background-color:#fff;border:1px solid #d1d5db;border-radius:6px;padding:.5rem .75rem;font-size:.875rem;transition:border-color .15s,box-shadow .15s}.fc-filter-toolbar__select:focus{border-color:#2563eb;outline:none;box-shadow:0 0 0 3px #2563eb26}.fc-filter-toolbar__clear-btn{color:#374151;cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #d1d5db;border-radius:6px;align-self:flex-end;padding:.5rem 1rem;font-size:.875rem;font-weight:500;transition:background-color .15s,border-color .15s}.fc-filter-toolbar__clear-btn:hover{background-color:#f3f4f6;border-color:#9ca3af}.fc-filter-toolbar__clear-btn:focus-visible{outline-offset:2px;outline:2px solid #2563eb}.fc-catalog{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.25rem;display:grid}.fc-set-card{cursor:pointer;text-align:left;background-color:#fff;border:1px solid #e5e7eb;border-radius:10px;flex-direction:column;gap:.75rem;width:100%;padding:1.25rem 1.5rem;transition:border-color .15s,box-shadow .2s,transform .1s;display:flex;box-shadow:0 1px 3px #00000012}.fc-set-card:hover{border-color:#2563eb;transform:translateY(-1px);box-shadow:0 4px 12px #2563eb1f}.fc-set-card:focus-visible{outline-offset:2px;outline:2px solid #2563eb}.fc-set-card:active{transform:translateY(0)}.fc-set-card__name{color:#111827;margin:0;font-size:1.05rem;font-weight:600;line-height:1.3}.fc-set-card__meta{flex-direction:column;gap:.35rem;display:flex}.fc-set-card__meta-item{align-items:baseline;gap:.4rem;font-size:.85rem;display:flex}.fc-set-card__meta-label{color:#6b7280;min-width:70px;font-weight:600}.fc-set-card__meta-value{color:#374151}@media (width<=600px){.fc-page{padding:1.25rem 1rem}.fc-filter-toolbar{flex-direction:column;align-items:stretch}.fc-filter-toolbar__field{min-width:unset;flex:none;width:100%}.fc-filter-toolbar__clear-btn{text-align:center;width:100%}.fc-catalog{grid-template-columns:1fr}}.fc-session-page{flex-direction:column;max-width:800px;min-height:60vh;margin:0 auto;padding:2rem 1.5rem;display:flex}.fc-session-loading-container{flex-direction:column;flex:1;justify-content:center;align-items:center;gap:1.5rem;padding:3rem 1rem;display:flex}.fc-session-error{text-align:center;background-color:#fef2f2;border:1px solid #fecaca;border-radius:8px;flex-direction:column;align-items:center;gap:1rem;width:100%;max-width:480px;padding:1.5rem 2rem;display:flex}.fc-session-error__message{color:#b91c1c;margin:0;font-size:.9rem}.fc-session-error__retry-btn{color:#b91c1c;cursor:pointer;background:0 0;border:1px solid #b91c1c;border-radius:6px;padding:.5rem 1.5rem;font-size:.875rem;font-weight:500;transition:background-color .15s,color .15s}.fc-session-error__retry-btn:hover{color:#fff;background-color:#b91c1c}.fc-session-error__retry-btn:focus-visible{outline-offset:2px;outline:2px solid #2563eb}.fc-session-unavailable,.fc-session-no-questions{text-align:center;background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;flex-direction:column;align-items:center;gap:1.25rem;width:100%;max-width:480px;padding:2rem;display:flex}.fc-session-unavailable__message,.fc-session-no-questions__message{color:#6b7280;margin:0;font-size:1rem}.fc-setup-phase{flex-direction:column;flex:1;align-items:center;gap:2rem;padding:3rem 1rem;display:flex}.fc-setup-phase__header{text-align:center;flex-direction:column;gap:.5rem;display:flex}.fc-setup-phase__title{color:#111827;margin:0;font-size:1.75rem;font-weight:700}.fc-setup-phase__syllabus{color:#6b7280;margin:0;font-size:1rem}.fc-setup-phase__count{color:#374151;margin:0;font-size:.95rem;font-weight:500}.fc-setup-phase__options{flex-direction:column;align-items:center;gap:.75rem;display:flex}.fc-setup-phase__shuffle-label{color:#374151;cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:.5rem;font-size:.95rem;display:flex}.fc-setup-phase__shuffle-checkbox{cursor:pointer;accent-color:#2563eb;width:1rem;height:1rem}.fc-setup-phase__start-btn{color:#fff;cursor:pointer;background-color:#2563eb;border:none;border-radius:8px;padding:.75rem 2.5rem;font-size:1rem;font-weight:600;transition:background-color .15s,transform .1s}.fc-setup-phase__start-btn:hover{background-color:#1d4ed8}.fc-setup-phase__start-btn:focus-visible{outline-offset:3px;outline:2px solid #2563eb}.fc-setup-phase__start-btn:active{transform:scale(.98)}.fc-setup-phase__back-btn{color:#374151;cursor:pointer;background:0 0;border:1px solid #d1d5db;border-radius:6px;padding:.5rem 1.5rem;font-size:.875rem;font-weight:500;transition:background-color .15s}.fc-setup-phase__back-btn:hover{background-color:#f3f4f6}.fc-setup-phase__back-btn:focus-visible{outline-offset:2px;outline:2px solid #2563eb}.fc-session-phase{flex-direction:column;flex:1;gap:1.5rem;display:flex}.fc-session-phase__topbar{background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 1rem;display:flex}.fc-session-phase__counter{color:#374151;font-size:.9rem;font-weight:600}.fc-session-phase__progress-wrapper{flex:1;justify-content:center;display:flex}.fc-session-phase__progress{color:#6b7280;font-size:.875rem}.fc-session-phase__exit-btn{color:#6b7280;cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #d1d5db;border-radius:6px;padding:.4rem .875rem;font-size:.8rem;font-weight:500;transition:color .15s,border-color .15s}.fc-session-phase__exit-btn:hover{color:#b91c1c;border-color:#b91c1c}.fc-session-phase__exit-btn:focus-visible{outline-offset:2px;outline:2px solid #2563eb}.fc-session-phase__card{outline:none;flex:1}.fc-session-phase__card:focus-visible{outline-offset:4px;border-radius:4px;outline:2px solid #2563eb}.fc-session-phase__nav{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.fc-session-phase__nav-right{gap:.5rem;display:flex}.fc-session-phase__nav-btn{cursor:pointer;border-radius:6px;padding:.6rem 1.5rem;font-size:.9rem;font-weight:500;transition:background-color .15s,color .15s,transform .1s}.fc-session-phase__nav-btn:focus-visible{outline-offset:2px;outline:2px solid #2563eb}.fc-session-phase__nav-btn:active{transform:scale(.98)}.fc-session-phase__nav-btn--prev{color:#374151;background-color:#fff;border:1px solid #d1d5db}.fc-session-phase__nav-btn--prev:hover:not(:disabled){background-color:#f3f4f6}.fc-session-phase__nav-btn--prev:disabled{opacity:.4;cursor:not-allowed}.fc-session-phase__nav-btn--next{color:#fff;background-color:#2563eb;border:1px solid #2563eb}.fc-session-phase__nav-btn--next:hover:not(:disabled){background-color:#1d4ed8}.fc-session-phase__nav-btn--next:disabled{opacity:.4;cursor:not-allowed}.fc-session-phase__nav-btn--finish{color:#fff;background-color:#16a34a;border:1px solid #16a34a}.fc-session-phase__nav-btn--finish:hover{background-color:#15803d}.fc-card{background-color:#fff;border:1px solid #e5e7eb;border-radius:12px;flex-direction:column;gap:1.25rem;padding:1.75rem 2rem;display:flex;box-shadow:0 2px 8px #0000000f}.fc-card__question{color:#111827;margin:0;font-size:1.1rem;font-weight:500;line-height:1.6}.fc-card__mcq-options{flex-direction:column;gap:.6rem;display:flex}.fc-card__mcq-option{cursor:pointer;color:#374151;border:1px solid #e5e7eb;border-radius:8px;align-items:flex-start;gap:.6rem;padding:.75rem 1rem;font-size:.925rem;line-height:1.4;transition:background-color .12s,border-color .12s;display:flex}.fc-card__mcq-option:hover{background-color:#f0f7ff;border-color:#93c5fd}.fc-card__mcq-option--selected{color:#1d4ed8;background-color:#eff6ff;border-color:#2563eb}.fc-card__mcq-radio{accent-color:#2563eb;cursor:pointer;flex-shrink:0;margin-top:.1rem}.fc-card__mcq-option-text{flex:1}.fc-card__text-input-wrapper{flex-direction:column;gap:.35rem;display:flex}.fc-card__short-answer{color:#111827;box-sizing:border-box;background-color:#fff;border:1px solid #d1d5db;border-radius:6px;width:100%;padding:.6rem .875rem;font-size:.925rem;transition:border-color .15s,box-shadow .15s}.fc-card__short-answer:focus{border-color:#2563eb;outline:none;box-shadow:0 0 0 3px #2563eb26}.fc-card__essay{color:#111827;resize:vertical;box-sizing:border-box;background-color:#fff;border:1px solid #d1d5db;border-radius:6px;width:100%;min-height:120px;padding:.6rem .875rem;font-family:inherit;font-size:.925rem;line-height:1.5;transition:border-color .15s,box-shadow .15s}.fc-card__essay:focus{border-color:#2563eb;outline:none;box-shadow:0 0 0 3px #2563eb26}.fc-card__char-counter{color:#9ca3af;text-align:right;font-size:.775rem}.fc-card__feedback{background-color:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;padding:.875rem 1rem}.fc-card__explanation{color:#166534;margin:0;font-size:.9rem;line-height:1.55}.fc-card__no-explanation{color:#6b7280;margin:0;font-size:.875rem;font-style:italic}.fc-card--correct{border-color:#86efac}.fc-card--incorrect{border-color:#fca5a5}.fc-card__result-badge{border-radius:6px;align-items:center;width:fit-content;padding:.3rem .75rem;font-size:.85rem;font-weight:600;display:inline-flex}.fc-card__result-badge--correct{color:#166534;background-color:#dcfce7}.fc-card__result-badge--incorrect{color:#991b1b;background-color:#fee2e2}.fc-card__result-badge--neutral{color:#374151;background-color:#f3f4f6}.fc-card__mcq-option--correct{color:#166534;background-color:#f0fdf4;border-color:#4ade80}.fc-card__mcq-option--wrong{color:#991b1b;background-color:#fef2f2;border-color:#f87171}.fc-card__mcq-correct-mark{color:#16a34a;margin-left:auto;font-size:1rem;font-weight:700}.fc-card__mcq-wrong-mark{color:#dc2626;margin-left:auto;font-size:1rem;font-weight:700}.fc-card__short-answer:disabled,.fc-card__essay:disabled{color:#6b7280;cursor:not-allowed;background-color:#f9fafb}.fc-summary-phase{flex-direction:column;flex:1;justify-content:center;align-items:center;padding:3rem 1rem;display:flex}.fc-summary-phase__card{text-align:center;background-color:#fff;border:1px solid #e5e7eb;border-radius:12px;flex-direction:column;align-items:center;gap:1.5rem;width:100%;max-width:480px;padding:2.5rem 3rem;display:flex;box-shadow:0 2px 8px #0000000f}.fc-summary-phase__title{color:#111827;margin:0;font-size:1.5rem;font-weight:700}.fc-summary-phase__stat{color:#374151;margin:0;font-size:1.1rem}.fc-summary-phase__actions{flex-wrap:wrap;justify-content:center;gap:.75rem;width:100%;display:flex}.fc-summary-phase__restart-btn{color:#fff;cursor:pointer;background-color:#2563eb;border:none;border-radius:6px;padding:.6rem 1.75rem;font-size:.9rem;font-weight:500;transition:background-color .15s}.fc-summary-phase__restart-btn:hover{background-color:#1d4ed8}.fc-summary-phase__restart-btn:focus-visible{outline-offset:2px;outline:2px solid #2563eb}.fc-summary-phase__back-btn{color:#374151;cursor:pointer;background-color:#fff;border:1px solid #d1d5db;border-radius:6px;padding:.6rem 1.75rem;font-size:.9rem;font-weight:500;transition:background-color .15s}.fc-summary-phase__back-btn:hover{background-color:#f3f4f6}.fc-summary-phase__back-btn:focus-visible{outline-offset:2px;outline:2px solid #2563eb}@media (width<=600px){.fc-session-page{padding:1.25rem 1rem}.fc-card{padding:1.25rem}.fc-session-phase__topbar{flex-direction:column;align-items:flex-start;gap:.5rem}.fc-session-phase__progress-wrapper{justify-content:flex-start}.fc-setup-phase{padding:2rem .5rem}.fc-summary-phase__card{padding:1.75rem 1.25rem}.fc-summary-phase__actions{flex-direction:column;align-items:stretch}}.fc-review-slide{flex-direction:column;gap:1rem;display:flex}.fc-review-result-badge{border-radius:8px;align-self:flex-start;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:1rem;font-weight:600;display:inline-flex}.fc-review-result-badge--correct{color:#166534;background-color:#dcfce7;border:1px solid #86efac}.fc-review-result-badge--incorrect{color:#991b1b;background-color:#fef2f2;border:1px solid #fecaca}.fc-review-result-badge--neutral{color:#374151;background-color:#f3f4f6;border:1px solid #d1d5db}.fc-session-phase__nav-btn--check{color:#fff;background-color:#7c3aed;border:1px solid #7c3aed}.fc-session-phase__nav-btn--check:hover{background-color:#6d28d9}.srs-content-section__header{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.5rem;display:flex}.srs-content-section__label{margin-bottom:0}.srs-content-table{border:1px solid var(--ui-slate-200);border-radius:6px;overflow:hidden}.srs-content-table--error{border-color:var(--ui-danger)}.srs-content-table__empty{color:var(--ui-text-subtle);text-align:center;margin:0;padding:1.25rem;font-size:.875rem}.srs-content-table__table{border-collapse:collapse;width:100%;font-size:.875rem}.srs-content-table__th{background:var(--ui-slate-50);text-align:left;color:var(--ui-slate-600);border-bottom:1px solid var(--ui-slate-200);white-space:nowrap;padding:.625rem .875rem;font-weight:600}.srs-content-table__th--actions{width:130px}.srs-content-table__row:not(:last-child) .srs-content-table__td{border-bottom:1px solid var(--ui-slate-100)}.srs-content-table__td{vertical-align:middle;color:var(--ui-slate-800);padding:.625rem .875rem}.srs-content-table__td--syllabus{word-break:break-word;max-width:260px;font-weight:500}.srs-content-table__td--count,.srs-content-table__td--actions{white-space:nowrap}.srs-content-table__all-banks{color:var(--ui-text-subtle);font-style:italic}.srs-content-table__action-btn+.srs-content-table__action-btn{margin-left:.375rem}.srs-syllabi-list{color:var(--ui-gray-800);margin:0;padding-left:1.25rem;font-size:.9rem}.srs-syllabi-list li{padding:.125rem 0}.srs-syllabi-list__primary{color:var(--ui-gray-500);font-size:.8rem}.srs-syllabi-list__off{color:var(--ui-danger-text);font-size:.8rem}.curriculum-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem 1rem;display:grid}@media (width<=640px){.curriculum-fields{grid-template-columns:1fr}}.pptree-hint{color:var(--ui-text-subtle);margin:0 0 .5rem;font-size:.75rem}.pptree-error{align-items:center;gap:.5rem;margin:0 0 .5rem;display:flex}.pptree-error-dismiss{color:inherit;cursor:pointer;background:0 0;border:none;margin-left:auto;font-size:1rem;line-height:1}.pptree-row{border-bottom:1px solid var(--ui-gray-100);background:var(--ui-surface);flex-wrap:wrap;align-items:center;gap:.5rem;padding:.5rem .75rem;display:flex;position:relative}.pptree-row:hover{background:var(--ui-gray-50)}.pptree-row--group{background:var(--ui-slate-50)}.pptree-row[draggable=true]{cursor:grab}.pptree-handle{color:var(--ui-gray-400);cursor:grab;-webkit-user-select:none;user-select:none;flex-shrink:0;font-size:.875rem}.pptree-toggle,.pptree-toggle-space{flex-shrink:0;width:1.25rem;height:1.25rem}.pptree-toggle{color:var(--ui-text-muted);cursor:pointer;background:0 0;border:none;padding:0;font-size:.75rem}.pptree-link{color:inherit;text-decoration:none}.pptree-link:hover .pptree-label{color:var(--ui-primary-600);text-decoration:underline}.pptree-label{min-width:0}.pptree-count{color:var(--ui-text-subtle);font-size:.75rem}.pptree-actions{flex-wrap:wrap;align-items:center;gap:.375rem;margin-left:auto;display:inline-flex}.pptree-move{border:1px solid var(--ui-border);background:var(--ui-surface);color:var(--ui-gray-700);border-radius:4px;flex:none;width:8.5rem;padding:.1875rem .375rem;font-size:.75rem}.pptree-subform{padding:.375rem 0}.pptree-questions{margin:0;padding:0;list-style:none}.pptree-question{border-bottom:1px solid var(--ui-gray-100);color:var(--ui-gray-700);align-items:center;gap:.5rem;padding-top:.3125rem;padding-bottom:.3125rem;padding-right:.75rem;font-size:.8125rem;display:flex;position:relative}.pptree-question[draggable=true]{cursor:grab}.pptree-qno{min-width:2rem;color:var(--ui-accent-600);flex-shrink:0;font-weight:600}.pptree-qtext{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.pptree-muted,.pptree-questions-loading,.pptree-questions-empty{color:var(--ui-gray-400);font-style:italic}.pptree-questions-loading,.pptree-questions-empty{padding-top:.375rem;padding-bottom:.375rem;font-size:.8125rem}.pptree-dragging{opacity:.45}.pptree-drop--before:before,.pptree-drop--after:after{content:"";background:var(--ui-accent-600);pointer-events:none;border-radius:2px;height:3px;position:absolute;left:0;right:0}.pptree-drop--before:before{top:-2px}.pptree-drop--after:after{bottom:-2px}.pptree-drop--inside{background:var(--ui-accent-50);box-shadow:inset 0 0 0 2px var(--ui-accent-500)}.pptree-drop--invalid{background:var(--ui-gray-50);color:var(--ui-gray-400);cursor:not-allowed;box-shadow:inset 0 0 0 1px var(--ui-border-subtle)}.pptree-drop-end{border:2px dashed var(--ui-accent-200);color:var(--ui-accent-500);text-align:center;border-radius:6px;margin-top:.375rem;padding:.625rem;font-size:.8125rem}.pptree-drop-end--over{background:var(--ui-accent-50);border-color:var(--ui-accent-500)}.prs{flex-direction:column;gap:.6rem;display:flex;container-type:inline-size}.prs-head{flex-wrap:wrap;align-items:baseline;gap:.75rem;display:flex}.prs-head h2{margin:0}.prs-total,.prs-muted{color:var(--ui-text-muted,var(--ui-gray-600));font-size:.8125rem}.prs-progress{background:var(--ui-gray-200,var(--ui-gray-200));border-radius:999px;height:8px;display:flex;overflow:hidden}.prs-progress-seg{height:100%;display:block}.prs-lines{flex-direction:column;gap:.35rem;display:flex}.prs-line,.prs-pipeline{flex-wrap:wrap;align-items:center;gap:.35rem .6rem;margin:0;font-size:.875rem;display:flex}.prs-line-label{min-width:4.5rem;color:var(--ui-text-muted,var(--ui-gray-600));font-size:.75rem;font-weight:600}.prs-pipeline .pr-link{margin-left:0}.prs-pipeline-kind{font-weight:600}.prs .prs-chips{flex-wrap:wrap;gap:.35rem;margin:0;padding:0;list-style:none;display:flex}.prs-chip{border:1px solid var(--ui-border,var(--ui-gray-300));background:var(--ui-surface,var(--ui-surface));color:var(--ui-text,var(--ui-gray-900));font:inherit;font-variant-numeric:tabular-nums;border-radius:999px;align-items:center;gap:.35rem;padding:.15rem .55rem;font-size:.8125rem;line-height:1.4;display:inline-flex}.prs-chip--button{cursor:pointer}.prs-chip--button:hover{background:var(--ui-surface-hover,var(--ui-gray-50));border-color:var(--ui-gray-400,var(--ui-gray-400))}.prs-chip--button:focus-visible{outline:2px solid var(--ui-focus,var(--ui-primary-600));outline-offset:1px}.prs-chip-value{font-weight:700}.prs-chip-label{color:var(--ui-gray-700,var(--ui-gray-700))}.prs-dot{background:var(--ui-gray-400);border-radius:50%;width:9px;height:9px;display:inline-block}.prs-dot--verified{background:var(--ui-success-solid)}.prs-dot--unchecked{background:var(--ui-gray-400)}.prs-dot--fix{background:var(--ui-danger)}.prs-dot--ai{background:var(--ui-violet-600)}.prs-dot--replied,.prs-dot--recheck{background:var(--ui-warning-solid)}.prs-dot--draft{background:var(--ui-gray-300)}.prs-dot--in-review{background:var(--ui-warning-accent)}.prs-dot--published{background:var(--ui-brand)}.prs-dot--gap{background:var(--ui-warning-solid-hover)}.prs-gaps{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.5rem 1rem;display:flex}.prs-gaps-text{flex-direction:column;gap:.35rem;display:flex}.prs-gaps-actions{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.prs-groups{border:1px solid var(--ui-border,var(--ui-gray-300));border-radius:var(--ui-radius-md,.5rem);overflow:hidden}.prs-group+.prs-group{border-top:1px solid var(--ui-gray-200,var(--ui-gray-200))}.prs-group-summary{cursor:pointer;align-items:baseline;gap:.6rem;padding:.5rem .75rem;font-size:.875rem;display:flex}.prs-group-summary:hover{background:var(--ui-surface-hover,var(--ui-gray-50))}.prs-group-summary:focus-visible{outline:2px solid var(--ui-focus,var(--ui-primary-600));outline-offset:-2px}.prs-group-title{font-weight:600}.prs-group-count{background:var(--ui-gray-100,var(--ui-gray-100));text-align:center;font-variant-numeric:tabular-nums;border-radius:999px;min-width:1.5rem;padding:0 .4rem;font-size:.75rem;font-weight:700}.prs-group--action .prs-group-count{background:var(--ui-warning-bg,var(--ui-warning-bg));color:var(--ui-warning,var(--ui-warning-text))}.prs-group-hint{color:var(--ui-text-muted,var(--ui-gray-600));font-size:.8125rem}.prs-rows{margin:0;padding:0 0 .35rem;list-style:none}.prs-group>.ui-btn{margin:0 0 .5rem .75rem}.prs-row{padding:.35rem .75rem .35rem 1.75rem}.prs-row+.prs-row{border-top:1px dashed var(--ui-gray-200,var(--ui-gray-200))}.prs-row-main{align-items:center;gap:.5rem;min-width:0;display:flex}.prs-row-link{min-width:0;color:inherit;flex:auto;align-items:baseline;gap:.5rem;font-size:.875rem;text-decoration:none;display:flex}.prs-row-link:hover .prs-row-name,.prs-row-link:focus-visible .prs-row-name{text-decoration:underline}.prs-row-link:focus-visible{outline:2px solid var(--ui-focus,var(--ui-primary-600));outline-offset:2px;border-radius:2px}.prs-row-name{color:var(--ui-accent-interactive,var(--ui-primary-600));flex:none;font-weight:700}.prs-row-part{text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:40%;color:var(--ui-text-muted,var(--ui-gray-600));flex:0 auto;font-size:.8125rem;overflow:hidden}.prs-row-preview{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--ui-gray-700,var(--ui-gray-700));flex:auto;overflow:hidden}.prs-row-preview--empty{color:var(--ui-text-muted,var(--ui-gray-600));font-style:italic}.prs-row-chips{flex-wrap:wrap;flex:none;justify-content:flex-end;gap:.25rem;display:inline-flex}.prs-row-part-link.pr-link{flex:none;margin-left:.25rem;font-size:.8125rem}.prs-row-reason{color:var(--ui-text-muted,var(--ui-gray-600));overflow-wrap:anywhere;margin:.15rem 0 0;font-size:.8125rem}@media (width<=900px){.prs-row-main{flex-wrap:wrap}.prs-row-preview{white-space:normal}}@container (width<=640px){.prs-row-main{flex-wrap:wrap;row-gap:.25rem}.prs-row-link{flex:100%}.prs-row-chips{justify-content:flex-start}}.ppeditor-composer-page{flex-direction:column;gap:0;height:100%;min-height:0;display:flex}.ppeditor-breadcrumb{color:var(--ui-gray-500);align-items:center;gap:.375rem;font-size:.875rem;display:flex}.ppeditor-breadcrumb-link{color:var(--ui-accent-interactive);text-decoration:none;transition:color .15s}.ppeditor-breadcrumb-link:hover{color:var(--ui-accent-interactive-hover);text-decoration:underline}.ppeditor-breadcrumb-link:focus-visible{outline:2px solid var(--ui-focus);outline-offset:2px;border-radius:2px}.ppeditor-breadcrumb-sep{color:var(--ui-gray-300)}.ppeditor-breadcrumb-current{color:var(--ui-gray-700);text-overflow:ellipsis;white-space:nowrap;max-width:30ch;font-weight:500;overflow:hidden}.ppeditor-readonly-banner{background-color:var(--ui-warning-bg);border-bottom:1px solid var(--ui-warning-border-strong);color:var(--ui-warning-text);flex-wrap:wrap;flex-shrink:0;align-items:center;gap:.75rem;padding:.625rem 1rem;font-size:.875rem;display:flex}.ppeditor-readonly-banner-icon{flex-shrink:0;font-size:1rem}.ppeditor-readonly-banner>span:nth-child(2){flex:1}.ppeditor-loading{color:var(--ui-gray-500);margin:0;padding:1.5rem 1rem;font-size:.875rem}.ppeditor-load-error{background-color:var(--ui-danger-bg);border:1px solid var(--ui-danger-border);border-radius:var(--ui-radius-md);color:var(--ui-danger);justify-content:space-between;align-items:center;gap:1rem;margin:.75rem 1rem;padding:.875rem 1rem;font-size:.875rem;display:flex}.ppeditor-error-banner{background-color:var(--ui-danger-bg);border-bottom:1px solid var(--ui-danger-border);color:var(--ui-danger);flex-shrink:0;justify-content:space-between;align-items:center;gap:.75rem;padding:.625rem 1rem;font-size:.875rem;display:flex}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.ppeditor-muted{color:var(--ui-text-subtle);font-style:normal}.ppeditor-body{flex-direction:column;gap:1rem;min-width:0;padding:1rem;display:flex}.ppeditor-card{background:var(--ui-surface);border:1px solid var(--ui-gray-200);border-radius:var(--ui-radius-lg);min-width:0;padding:.875rem 1rem}.ppeditor-card-head{flex-wrap:wrap;align-items:center;gap:.625rem;margin-bottom:.75rem;display:flex}.ppeditor-card-title{color:var(--ui-gray-900);overflow-wrap:anywhere;min-width:0;margin:0;font-size:1.0625rem;font-weight:600}.ppeditor-card-subtitle{color:var(--ui-gray-900);margin:0;font-size:.9375rem;font-weight:600}.ppeditor-saving{color:var(--ui-text-subtle);font-size:.75rem}.ppeditor-settings{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);align-items:start;gap:1rem 1.5rem;display:grid}.ppeditor-fields{flex-wrap:wrap;align-items:flex-end;gap:.75rem 1.25rem;display:flex}.ppeditor-field{flex-direction:column;gap:.1875rem;display:flex}.ppeditor-field-label{color:var(--ui-gray-500);font-size:.75rem}.ppeditor-field-input-wrap{align-items:center;gap:.25rem;display:flex}.ppeditor-field-input{border:1px solid var(--ui-gray-300);background:var(--ui-surface);width:4.5rem;color:var(--ui-gray-900);border-radius:5px;padding:.3125rem .5rem;font-size:.875rem}.ppeditor-field-input:focus{border-color:var(--ui-accent-interactive);box-shadow:0 0 0 2px var(--ui-primary-100);outline:none}.ppeditor-field-suffix{color:var(--ui-text-subtle);font-size:.75rem}.ppeditor-field-value{color:var(--ui-gray-900);font-size:.875rem;font-weight:500}.ppeditor-check{color:var(--ui-gray-700);cursor:pointer;align-items:center;gap:.375rem;padding-bottom:.3125rem;font-size:.8125rem;display:inline-flex}.ppeditor-settings-error{color:var(--ui-danger);margin:0 0 .5rem;font-size:.8125rem}.ppeditor-syllabi-head{align-items:center;gap:.5rem;margin-bottom:.25rem;display:flex}.ppeditor-syllabi-label{color:var(--ui-gray-500);font-size:.75rem}.ppeditor-syllabi-list{margin:0;padding:0;list-style:none}.ppeditor-syllabi-list li{color:var(--ui-gray-800);overflow-wrap:anywhere;padding:.125rem 0;font-size:.8125rem;line-height:1.35}.ppeditor-syllabi-empty{color:var(--ui-text-subtle);margin:0;font-size:.8125rem;font-style:italic}.ppeditor-summary{border-top:1px solid var(--ui-gray-100);flex-wrap:wrap;gap:.5rem 1.25rem;margin:.875rem 0 0;padding:.625rem 0 0;display:flex}.ppeditor-summary-item{align-items:baseline;gap:.375rem;margin:0;display:flex}.ppeditor-summary-item dt{color:var(--ui-gray-500);order:2;font-size:.8125rem}.ppeditor-summary-item dd{color:var(--ui-gray-900);order:1;margin:0;font-size:1.125rem;font-weight:600}.ppeditor-issues{border-top:1px solid var(--ui-gray-100);margin-top:.875rem;padding-top:.625rem}.ppeditor-issues-head{color:var(--ui-warning-solid-hover);align-items:center;gap:.5rem;margin:0 0 .5rem;font-size:.8125rem;font-weight:600;display:flex}.ppeditor-issues-list{flex-direction:column;gap:.3125rem;margin:0;padding:0;list-style:none;display:flex}.ppeditor-issue-btn{text-align:left;width:100%;font:inherit;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:5px;flex-wrap:wrap;align-items:baseline;gap:.25rem .625rem;padding:.375rem .625rem;display:flex}.ppeditor-issue-btn:disabled{cursor:default}.ppeditor-issue-btn--error{background-color:var(--ui-danger-bg);border-color:var(--ui-danger-border);color:var(--ui-danger-hover)}.ppeditor-issue-btn--error:not(:disabled):hover{background-color:var(--ui-danger-bg-strong)}.ppeditor-issue-btn--warning{background-color:var(--ui-warning-bg);border-color:var(--ui-warning-border-strong);color:var(--ui-warning-text)}.ppeditor-issue-btn--warning:not(:disabled):hover{background-color:var(--ui-warning-bg-strong)}.ppeditor-issue-btn:focus-visible{outline:2px solid var(--ui-accent-interactive);outline-offset:1px}.ppeditor-issue-code{letter-spacing:.04em;text-transform:uppercase;opacity:.8;font-size:.6875rem;font-weight:600}.ppeditor-issue-msg{overflow-wrap:anywhere;font-size:.8125rem;line-height:1.35}.ppeditor-issue-where{opacity:.85;font-size:.75rem;text-decoration:underline}.ppeditor-structure-head{flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:.5rem;display:flex}.ppeditor-note{color:var(--ui-gray-700);background:var(--ui-gray-50);border:1px solid var(--ui-gray-200);border-radius:6px;margin:0 0 .5rem;padding:.5rem .75rem;font-size:.8125rem}.pptree-row--block{background:var(--ui-surface)}.pptree-row--focus,.pptree-question.pptree-row--focus{box-shadow:inset 3px 0 0 var(--ui-warning-accent);animation:2.4s ease-out pptree-focus}@keyframes pptree-focus{0%,40%{background-color:var(--ui-warning-bg-strong)}to{background-color:#0000}}.pptree-icon{color:var(--ui-gray-500);flex-shrink:0;font-size:.8125rem}.pptree-chip{white-space:nowrap;border-radius:999px;align-items:center;padding:.0625rem .4375rem;font-size:.6875rem;font-weight:600;display:inline-flex}.pptree-chip--random{background:var(--ui-violet-100);color:var(--ui-violet-700)}.pptree-chip--all{background:var(--ui-primary-100);color:var(--ui-primary-700)}.pptree-chip--manual{background:var(--ui-success-bg-strong);color:var(--ui-success-solid-hover)}.pptree-chip--issue{background:var(--ui-warning-bg-strong);color:var(--ui-warning-text)}.pptree-chip--short{background:var(--ui-danger-bg-strong);color:var(--ui-danger-hover)}.pptree-note{color:var(--ui-gray-500);overflow-wrap:anywhere;font-size:.75rem}.pptree-criteria{border-bottom:1px solid var(--ui-gray-100);color:var(--ui-gray-600);background:var(--ui-gray-50);flex-wrap:wrap;align-items:baseline;gap:.25rem .75rem;padding-top:.375rem;padding-bottom:.375rem;padding-right:.75rem;font-size:.75rem;display:flex}.pptree-criteria-outcomes{flex-basis:100%}.pptree-linkbtn{font:inherit;color:var(--ui-accent-interactive);cursor:pointer;background:0 0;border:none;padding:0;font-size:.75rem}.pptree-linkbtn:hover{text-decoration:underline}.pptree-details-form{border-bottom:1px solid var(--ui-gray-100);background:var(--ui-slate-50);flex-wrap:wrap;align-items:flex-end;gap:.5rem .75rem;padding:.5rem .75rem;display:flex}.pptree-details-form label{color:var(--ui-gray-500);flex-direction:column;gap:.1875rem;font-size:.75rem;display:flex}.pptree-details-form textarea{background:var(--ui-surface);color:var(--ui-text);width:min(32rem,100%);min-height:3.5rem;font:inherit;border:1px solid var(--ui-gray-300);resize:vertical;border-radius:5px;padding:.375rem .5rem;font-size:.8125rem}.pptree-details-form input[type=number]{background:var(--ui-surface);color:var(--ui-text);border:1px solid var(--ui-gray-300);border-radius:5px;width:5.5rem;padding:.3125rem .5rem;font-size:.8125rem}.pptree-details-instructions{flex:18rem;min-width:0}.pptree-details-mode{color:var(--ui-gray-500);border:0;flex-wrap:wrap;align-items:center;gap:.25rem .75rem;margin:0;padding:0;font-size:.75rem;display:flex}.pptree-details-mode legend{margin-bottom:.1875rem;padding:0}.pptree-details-form .pptree-details-mode label{color:var(--ui-gray-700);flex-direction:row;align-items:center;gap:.25rem;font-size:.8125rem}.pptree-details-hint{max-width:32rem;color:var(--ui-gray-500);flex-basis:100%}.pptree-details-actions{flex-wrap:wrap;align-items:center;gap:.375rem;display:flex}.pptree-preview-btn{flex-shrink:0}@media (width<=760px){.ppeditor-body{padding:.75rem .5rem}.ppeditor-card{padding:.75rem}.ppeditor-settings{grid-template-columns:minmax(0,1fr)}.ppeditor-error-banner{flex-wrap:wrap}.pptree--practice{--pptree-step:.875rem}.pptree--practice .pptree-question{flex-wrap:wrap}.pptree--practice .pptree-qtext{white-space:normal;flex:calc(100% - 4rem)}.pptree--practice .pptree-move{min-width:0;max-width:100%}.pptree--practice .pptree-question .pptree-move{max-width:10rem}.pptree--practice .pptree-question .pptree-preview-btn{margin-left:auto}}dl.ppeditor-fields,.ppeditor-field-value{margin:0}.pptree-outcomes-note{margin:var(--ui-space-1) 0}.pptree-confirm-line{display:block}.pptree-confirm-line--spaced{margin-top:var(--ui-space-2)}.pptree-questions-empty.pptree-tree-empty{padding:var(--ui-space-3)}.pptree-add-root{padding:var(--ui-space-2) var(--ui-space-3)}.aqp-canvas{background:var(--cp-canvas-bg);flex:1;min-height:0;overflow-y:auto}.aqp-hint{color:var(--cp-text-dim);white-space:nowrap;font-size:.8125rem}.aqp-print-btn{cursor:pointer;background:0 0}.aqp-print-btn:disabled{opacity:.5;cursor:not-allowed}.aqp-message{text-align:center;color:var(--cp-text-muted);margin:2rem auto}@media print{@page{size:A4;margin:0}.aqp-header{display:none}.aqp-page,.aqp-canvas{background:var(--ui-surface);height:auto;display:block;overflow:visible}.aqp-canvas .le-paged-scale{zoom:1!important}.aqp-canvas .le-readonly--paginated-container{zoom:.826;background:var(--ui-surface)!important;padding:0!important}.aqp-canvas .le-page{break-after:page;box-shadow:none!important;border:none!important;border-radius:0!important;margin:0!important}.aqp-canvas .le-page:last-child{break-after:auto}}.profile-setup-page{background:#f9fafb;justify-content:center;align-items:center;min-height:100vh;padding:2rem 1rem;display:flex}.profile-setup-container{background:#fff;border-radius:8px;flex-direction:column;width:100%;max-width:560px;min-height:480px;padding:2.5rem;display:flex;box-shadow:0 1px 3px #00000014,0 4px 12px #0000000a}.profile-setup-container h1{color:#1c1d1f;text-align:center;margin:0 0 .5rem;font-size:1.5rem;font-weight:800}.profile-setup-subtitle{color:#6b7280;text-align:center;margin:0 0 2rem;font-size:.875rem;line-height:1.5}.profile-setup-container .form-group{margin-bottom:1.5rem}.profile-setup-container label{color:#374151;margin-bottom:.375rem;font-size:.8125rem;font-weight:600;display:block}.profile-setup-container input[type=text]{color:#1c1d1f;box-sizing:border-box;background:#fff;border:1px solid #d1d5db;border-radius:4px;width:100%;padding:.75rem .875rem;font-size:.9375rem;transition:border-color .15s,box-shadow .15s}.profile-setup-container input[type=text]:focus{border-color:#5624d0;outline:none;box-shadow:0 0 0 3px #5624d01a}.profile-setup-container input[type=text]:disabled{color:#9ca3af;cursor:not-allowed;background:#f3f4f6}.profile-setup-container input[type=text][aria-invalid=true]{border-color:#ef4444}.profile-setup-container .field-error,.profile-setup-container .api-error{margin:.375rem 0 0;font-size:.8125rem;line-height:1.4}.profile-setup-container .field-error{color:#ef4444}.profile-setup-container .api-error{color:#ef4444;background:#fef2f2;border:1px solid #fecaca;border-radius:4px;padding:.5rem .75rem}.profile-setup-container button[type=submit]{color:#fff;cursor:pointer;background:#5624d0;border:none;border-radius:4px;justify-content:center;align-items:center;width:100%;padding:.875rem 1.5rem;font-size:.9375rem;font-weight:700;transition:background .15s,opacity .15s;display:flex}.profile-setup-container button[type=submit]:hover:not(:disabled){background:#401b9c}.profile-setup-container button[type=submit]:focus-visible{outline-offset:2px;outline:2px solid #5624d0}.profile-setup-container button[type=submit]:disabled{opacity:.6;cursor:not-allowed}.wizard-navigation{justify-content:space-between;align-items:center;gap:1rem;margin-top:auto;padding-top:2rem;display:flex}.wizard-btn{cursor:pointer;border:none;border-radius:4px;justify-content:center;align-items:center;padding:.875rem 1.5rem;font-size:.9375rem;font-weight:700;transition:background .15s,opacity .15s;display:flex}.wizard-btn:disabled{opacity:.6;cursor:not-allowed}.wizard-btn:focus-visible{outline-offset:2px;outline:2px solid #5624d0}.wizard-btn-continue{color:#fff;background:#5624d0;flex:1}.wizard-btn-continue:hover:not(:disabled){background:#401b9c}.notif-settings{color:#374151;font-size:.875rem}.notif-settings__message{color:#6b7280;margin:0;font-size:.8125rem}.notif-settings__message--error{color:#dc2626}.notif-settings__table{border-collapse:collapse;width:100%}.notif-settings__table th,.notif-settings__table td{text-align:left;vertical-align:middle;border-bottom:1px solid #e5e7eb;padding:.625rem .5rem}.notif-settings__channel{color:#6b7280;white-space:nowrap;font-size:.75rem;font-weight:600;text-align:center!important}.notif-settings__category{flex-direction:column;gap:.125rem;font-weight:500;display:flex}.notif-settings__category-hint{color:#6b7280;font-size:.75rem;font-weight:400;line-height:1.4}.notif-settings__cell{width:6rem;text-align:center!important}.notif-settings__toggle{cursor:pointer;background-color:#d1d5db;border:none;border-radius:11px;width:40px;height:22px;padding:0;transition:background-color .2s;position:relative}.notif-settings__toggle:focus-visible{outline-offset:2px;outline:2px solid #3b82f6}.notif-settings__toggle--on{background-color:#3b82f6}.notif-settings__toggle:disabled{opacity:.6;cursor:not-allowed}.notif-settings__toggle-thumb{background-color:#fff;border-radius:50%;width:16px;height:16px;transition:transform .2s;position:absolute;top:3px;left:3px}.notif-settings__toggle--on .notif-settings__toggle-thumb{transform:translate(18px)}.notif-settings__always-on{color:#6b7280;margin:.75rem 0 0;font-size:.75rem}.notif-settings__status{color:#059669;min-height:1.25rem;margin:.5rem 0 0;font-size:.75rem}.notif-settings .visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.notif-settings__telegram{flex-wrap:wrap;align-items:center;gap:.5rem .75rem;margin:.75rem 0 0;display:flex}.profile-page{max-width:480px;margin:2rem auto;padding:0 1rem}.profile-page__container{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:2rem}.profile-page__title{color:#111827;margin:0 0 1.5rem;font-size:1.375rem;font-weight:700}.profile-page__form{flex-direction:column;gap:1.125rem;display:flex}.profile-page__avatar{color:#fff;-webkit-user-select:none;user-select:none;background:#3b82f6;border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;margin-bottom:.5rem;font-size:1.75rem;font-weight:700;display:flex}.profile-page__field{flex-direction:column;gap:.3rem;display:flex}.profile-page__label{color:#374151;align-items:center;gap:.375rem;font-size:.875rem;font-weight:500;display:flex}.profile-page__field-hint{color:#16a34a;font-size:.75rem;font-weight:400}.profile-page__input{color:#111827;box-sizing:border-box;background:#fff;border:1px solid #d1d5db;border-radius:6px;width:100%;padding:.5rem .75rem;font-size:.9375rem}.profile-page__input:focus{outline-offset:1px;outline:2px solid #3b82f6}.profile-page__textarea{resize:vertical;min-height:6rem;font-family:inherit;line-height:1.5}.profile-page__counter{color:#6b7280;font-variant-numeric:tabular-nums;align-self:flex-end;font-size:.75rem}.profile-page__error{color:#dc2626;margin:0;font-size:.875rem}.profile-page__success{color:#16a34a;margin:0;font-size:.875rem}.profile-page__divider{border:none;border-top:1px solid #e5e7eb;margin:1.5rem 0}.profile-page__section{flex-direction:column;gap:.75rem;display:flex}.profile-page__section-title{color:#111827;margin:0;font-size:1rem;font-weight:600}.profile-page__link{color:var(--tuto-action,#2563eb);align-self:flex-start;font-size:.9375rem;font-weight:500;text-decoration:none}.profile-page__link:hover{text-decoration:underline}.profile-page__verified-field{color:#374151;align-items:center;gap:.5rem;font-size:.9375rem;display:flex}.profile-page__link-field{flex-direction:column;gap:.5rem;display:flex}.profile-page__input-row{align-items:center;gap:.5rem;display:flex}.profile-page__input-row .profile-page__input{flex:1}.profile-page__hint{color:#6b7280;margin:0;font-size:.875rem}.profile-page__avatar--fill{width:100%;height:100%;margin:0}.profile-page__avatar-error{color:#b91c1c;margin:0;font-size:.8125rem}.srs-badge{letter-spacing:.02em;white-space:nowrap;border:1px solid #0000;border-radius:12px;align-items:center;padding:2px 10px;font-size:.75rem;font-weight:600;line-height:1.5;display:inline-flex}.srs-badge--easy{color:#166534;background-color:#dcfce7;border-color:#bbf7d0}.srs-badge--medium{color:#92400e;background-color:#fef3c7;border-color:#fde68a}.srs-badge--hard{color:#991b1b;background-color:#fee2e2;border-color:#fca5a5}.srs-session-page{flex-direction:column;max-width:800px;min-height:60vh;margin:0 auto;padding:2rem 1.5rem;display:flex}.srs-session-loading{flex:1;justify-content:center;align-items:center;padding:4rem 1rem;display:flex}.srs-session-paused{max-width:640px;margin:2rem auto}.srs-session-error-container{text-align:center;background-color:#fef2f2;border:1px solid #fecaca;border-radius:8px;flex-direction:column;align-items:center;gap:1rem;width:100%;max-width:480px;margin:2rem auto;padding:2rem;display:flex}.srs-session-error-container__message{color:#b91c1c;margin:0;font-size:.95rem}.srs-session-error-container__retry-btn{color:#b91c1c;cursor:pointer;background:0 0;border:1px solid #b91c1c;border-radius:6px;padding:.5rem 1.5rem;font-size:.875rem;font-weight:500;transition:background-color .15s,color .15s}.srs-session-error-container__retry-btn:hover{color:#fff;background-color:#b91c1c}.srs-session-error-container__retry-btn:focus-visible{outline-offset:2px;outline:2px solid #2563eb}.srs-session-pre{flex:1;justify-content:center;align-items:center;padding:3rem 1rem;display:flex}.srs-session-pre__card{text-align:center;background-color:#fff;border:1px solid #e5e7eb;border-radius:12px;flex-direction:column;align-items:center;gap:1.75rem;width:100%;max-width:480px;padding:2.5rem 3rem;display:flex;box-shadow:0 2px 8px #0000000f}.srs-session-pre__title{color:#111827;margin:0;font-size:1.75rem;font-weight:700}.srs-session-pre__subtitle{color:#6b7280;margin:0;font-size:1rem}.srs-session-pre__stats{flex-wrap:wrap;justify-content:center;gap:2rem;display:flex}.srs-session-pre__stat{flex-direction:column;align-items:center;gap:.25rem;display:flex}.srs-session-pre__stat-value{color:#2563eb;font-size:2rem;font-weight:700;line-height:1}.srs-session-pre__stat-label{color:#6b7280;text-transform:uppercase;letter-spacing:.04em;font-size:.8rem;font-weight:500}.srs-session-pre__no-cards{color:#6b7280;margin:0;font-size:1rem}.srs-session-pre__start-btn{color:#fff;cursor:pointer;background-color:#2563eb;border:none;border-radius:8px;width:100%;max-width:280px;padding:.75rem 2.5rem;font-size:1rem;font-weight:600;transition:background-color .15s,transform .1s}.srs-session-pre__start-btn:hover{background-color:#1d4ed8}.srs-session-pre__start-btn:focus-visible{outline-offset:3px;outline:2px solid #2563eb}.srs-session-pre__start-btn:active{transform:scale(.98)}.srs-session-pre__actions{flex-direction:column;gap:.75rem;width:100%;max-width:280px;display:flex}.srs-session-pre__continue-btn{color:#fff;cursor:pointer;background-color:#2563eb;border:none;border-radius:8px;padding:.75rem 2rem;font-size:1rem;font-weight:600;transition:background-color .15s}.srs-session-pre__continue-btn:hover{background-color:#1d4ed8}.srs-session-pre__continue-btn:focus-visible{outline-offset:2px;outline:2px solid #2563eb}.srs-session-pre__start-over-btn{color:#374151;cursor:pointer;background-color:#fff;border:1px solid #d1d5db;border-radius:8px;padding:.65rem 2rem;font-size:.9rem;font-weight:500;transition:background-color .15s}.srs-session-pre__start-over-btn:hover{background-color:#f3f4f6}.srs-session-pre__start-over-btn:focus-visible{outline-offset:2px;outline:2px solid #2563eb}.srs-session-in-session{flex-direction:column;flex:1;gap:1.5rem;display:flex}.srs-session-in-session__topbar{background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 1rem;display:flex}.srs-session-in-session__counter{color:#374151;font-size:.9rem;font-weight:600}.srs-session-in-session__exit-btn{color:#6b7280;cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #d1d5db;border-radius:6px;padding:.4rem .875rem;font-size:.8rem;font-weight:500;transition:color .15s,border-color .15s}.srs-session-in-session__exit-btn:hover{color:#b91c1c;border-color:#b91c1c}.srs-session-in-session__exit-btn:focus-visible{outline-offset:2px;outline:2px solid #2563eb}.srs-session-in-session__card-region{outline:none;flex:1}.srs-session-in-session__card-region:focus-visible{outline-offset:4px;border-radius:4px;outline:2px solid #2563eb}.srs-session-in-session__nav{justify-content:flex-end;gap:.75rem;display:flex}.srs-session-in-session__nav-btn{cursor:pointer;border:none;border-radius:8px;padding:.65rem 1.75rem;font-size:.95rem;font-weight:600;transition:background-color .15s,transform .1s}.srs-session-in-session__nav-btn:focus-visible{outline-offset:2px;outline:2px solid #2563eb}.srs-session-in-session__nav-btn:active{transform:scale(.98)}.srs-session-in-session__nav-btn--next{color:#fff;background-color:#2563eb}.srs-session-in-session__nav-btn--next:hover{background-color:#1d4ed8}.srs-session-in-session__nav-btn--finish{color:#fff;background-color:#16a34a}.srs-session-in-session__nav-btn--finish:hover{background-color:#15803d}.srs-session-card{background-color:#fff;border:1px solid #e5e7eb;border-radius:12px;flex-direction:column;gap:1.25rem;padding:1.75rem 2rem;display:flex;box-shadow:0 2px 8px #0000000f}.srs-session-card__outcome{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.srs-session-card__outcome-ref{color:#6b7280;text-transform:uppercase;letter-spacing:.04em;font-size:.8rem;font-weight:600}.srs-session-card__outcome-text{color:#4b5563;flex:12rem;min-width:0;font-size:.85rem}.srs-session-card__question{color:#111827;margin:0;font-size:1.1rem;font-weight:500;line-height:1.6}.srs-session-card__mcq-options{border:none;flex-direction:column;gap:.6rem;min-width:0;margin:0;padding:0;display:flex}.srs-session-card__mcq-legend{color:#6b7280;margin-bottom:.4rem;padding:0;font-size:.8rem;font-weight:600}.srs-session-card__mcq-option{cursor:pointer;color:#374151;border:1px solid #e5e7eb;border-radius:8px;align-items:flex-start;gap:.6rem;padding:.75rem 1rem;font-size:.925rem;line-height:1.4;display:flex}.srs-session-card__mcq-radio{accent-color:#2563eb;flex-shrink:0;margin-top:.1rem}.srs-session-card__mcq-option-text{flex:1;min-width:0}.srs-session-card__mcq-option--selected{background-color:#eff6ff;border-color:#2563eb}.srs-session-card__mcq-option--correct{background-color:#f0fdf4;border-color:#16a34a}.srs-session-card__mcq-option--wrong{background-color:#fef2f2;border-color:#dc2626}.srs-session-card__mcq-options:disabled .srs-session-card__mcq-option{cursor:default}.srs-session-card__mcq-tag{flex-shrink:0;align-self:center;font-size:.75rem;font-weight:600}.srs-session-card__mcq-tag--correct{color:#15803d}.srs-session-card__mcq-tag--wrong{color:#b91c1c}.srs-session-card__actions{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.srs-session-card__dont-know-btn{color:#4b5563;cursor:pointer;background:0 0;border:1px solid #d1d5db;border-radius:8px;padding:.65rem 1.25rem;font-size:.9rem;font-weight:500}.srs-session-card__dont-know-btn:hover:not(:disabled){background-color:#f3f4f6}.srs-session-card__dont-know-btn:focus-visible{outline-offset:3px;outline:2px solid #7c3aed}.srs-session-card__guess-btn{color:#b45309;cursor:pointer;background:#fff;border:1px solid #fcd34d;border-radius:8px;padding:.65rem 1.25rem;font-size:.9rem;font-weight:600}.srs-session-card__guess-btn:hover:not(:disabled){background-color:#fffbeb}.srs-session-card__guess-btn:focus-visible{outline-offset:3px;outline:2px solid #7c3aed}.srs-session-card__reveal-btn:disabled,.srs-session-card__guess-btn:disabled,.srs-session-card__dont-know-btn:disabled{opacity:.55;cursor:not-allowed}.srs-session-card__verdict{margin:0;font-size:1rem;font-weight:700}.srs-session-card__verdict--correct{color:#15803d}.srs-session-card__verdict--wrong{color:#b91c1c}.srs-session-card__note{border-radius:8px;margin:.5rem 0 0;padding:.6rem .8rem;font-size:.9rem}.srs-session-card__note--guess{color:#78350f;background:#fffbeb;border:1px solid #fcd34d}.srs-session-card__note--sure-wrong{color:#7f1d1d;background:#fef2f2;border:1px solid #fecaca}.srs-session-card__confidence{flex-wrap:wrap;gap:.5rem;display:flex}.srs-session-card__confidence-btn{color:#374151;cursor:pointer;background-color:#fff;border:1px solid #d1d5db;border-radius:8px;flex:6rem;padding:.55rem 1rem;font-size:.9rem;font-weight:600}.srs-session-card__confidence-btn:hover:not(:disabled){border-color:#7c3aed}.srs-session-card__confidence-btn--selected{color:#fff;background-color:#7c3aed;border-color:#7c3aed}.srs-session-card__confidence-btn:disabled:not(.srs-session-card__confidence-btn--selected){opacity:.5;cursor:not-allowed}.srs-session-card__confidence-btn:focus-visible{outline-offset:2px;outline:2px solid #7c3aed}.srs-session-card__reveal-btn{color:#fff;cursor:pointer;background-color:#7c3aed;border:none;border-radius:8px;align-self:flex-start;padding:.65rem 1.75rem;font-size:.95rem;font-weight:600;transition:background-color .15s,transform .1s}.srs-session-card__reveal-btn:hover{background-color:#6d28d9}.srs-session-card__reveal-btn:focus-visible{outline-offset:3px;outline:2px solid #7c3aed}.srs-session-card__reveal-btn:active{transform:scale(.98)}.srs-session-card__answer-section{border-top:1px solid #e5e7eb;flex-direction:column;gap:1.25rem;padding-top:1rem;display:flex}.srs-session-card__answer-section:focus{outline:none}.srs-session-card__explanation-block{background-color:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;padding:.875rem 1rem}.srs-session-card__explanation-label{color:#15803d;text-transform:uppercase;letter-spacing:.05em;margin:0 0 .4rem;font-size:.8rem;font-weight:700}.srs-session-card__explanation-text{color:#166534;margin:0;font-size:.9rem;line-height:1.55}.srs-session-card__rating-section{flex-direction:column;gap:.75rem;display:flex}.srs-session-card__rating-prompt{color:#374151;margin:0;font-size:.9rem;font-weight:600}.srs-session-card__card-error{background-color:#fef2f2;border:1px solid #fecaca;border-radius:8px;flex-wrap:wrap;align-items:center;gap:.75rem;padding:.75rem 1rem;display:flex}.srs-session-card__card-error-message{color:#b91c1c;flex:1;margin:0;font-size:.875rem}.srs-session-card__rating-confirmed{color:#1e40af;background-color:#eff6ff;border:1px solid #bfdbfe;border-radius:6px;outline:none;align-items:center;gap:.5rem;padding:.6rem .875rem;font-size:.875rem;display:flex}.srs-session-card__rating-confirmed:focus-visible{outline-offset:2px;outline:2px solid #2563eb}.srs-session-complete{flex:1;justify-content:center;align-items:center;padding:3rem 1rem;display:flex}.srs-session-complete__card{text-align:center;background-color:#fff;border:1px solid #e5e7eb;border-radius:12px;flex-direction:column;align-items:center;gap:1.5rem;width:100%;max-width:480px;padding:2.5rem 3rem;display:flex;box-shadow:0 2px 8px #0000000f}.srs-session-complete__title{color:#111827;margin:0;font-size:1.5rem;font-weight:700}.srs-session-complete__stat-row{border-bottom:1px solid #f3f4f6;justify-content:space-between;align-items:center;width:100%;padding:.5rem 0;display:flex}.srs-session-complete__stat-label{color:#6b7280;font-size:.9rem}.srs-session-complete__stat-value{color:#111827;font-size:1.1rem;font-weight:700}.srs-session-complete__back-btn{color:#fff;cursor:pointer;background-color:#2563eb;border:none;border-radius:8px;width:100%;max-width:280px;padding:.65rem 2rem;font-size:.95rem;font-weight:600;transition:background-color .15s}.srs-session-complete__back-btn:hover{background-color:#1d4ed8}.srs-session-complete__back-btn:focus-visible{outline-offset:2px;outline:2px solid #2563eb}@media (width<=600px){.srs-session-page{padding:1.25rem 1rem}.srs-session-card{padding:1.25rem}.srs-session-in-session__topbar{flex-wrap:wrap;gap:.5rem}.srs-session-pre__card,.srs-session-complete__card{padding:1.75rem 1.25rem}.srs-session-pre__stats{gap:1.25rem}}.srs-courses{flex-direction:column;gap:.5rem;min-width:0;display:flex}.srs-courses__heading{color:var(--ui-text);margin:0;font-size:1.125rem;font-weight:600}.srs-courses__subheading{text-transform:uppercase;letter-spacing:.03em;color:var(--ui-text-muted);margin:.5rem 0 0;font-size:.8125rem;font-weight:600}.srs-courses__muted,.srs-courses__empty{color:var(--ui-text-muted);margin:0;font-size:.875rem}.srs-courses__list{border:1px solid var(--ui-border);border-radius:var(--ui-radius,.375rem);background:var(--ui-surface);margin:0;padding:0;list-style:none}.srs-courses__item{justify-content:space-between;align-items:center;gap:.75rem;min-width:0;padding:.625rem .75rem;display:flex}.srs-courses__item+.srs-courses__item{border-top:1px solid var(--ui-border)}.srs-courses__course{flex-direction:column;min-width:0;display:flex}.srs-courses__title{color:var(--ui-text);overflow-wrap:anywhere;font-weight:500}.srs-courses__meta{color:var(--ui-text-muted);overflow-wrap:anywhere;font-size:.8125rem}.srs-courses__btn{flex-shrink:0;padding:.3125rem .75rem;font-size:.8125rem}.srs-courses__error{color:var(--ui-danger);align-items:center;gap:.75rem;font-size:.875rem;display:flex}.srs-milestones{gap:var(--ui-space-3);flex-direction:column;min-width:0;display:flex}.srs-milestones__toolbar{justify-content:flex-end;display:flex}.srs-milestones__muted{color:var(--ui-text-muted);margin:0;font-size:.875rem}.srs-milestones__warn{color:var(--ui-warning-text)}.srs-milestones__error{color:var(--ui-danger);margin:0;font-size:.875rem}.srs-milestones__list{gap:var(--ui-space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.srs-milestones__past summary{cursor:pointer;color:var(--ui-text-muted);margin-bottom:.5rem;font-size:.875rem}.srs-milestone{gap:var(--ui-space-2);border:1px solid var(--ui-border);border-radius:var(--ui-radius);background:var(--ui-surface);border-left-width:4px;flex-direction:column;min-width:0;padding:.75rem 1rem;display:flex}.srs-milestone--ready{border-left-color:var(--ui-success-solid)}.srs-milestone--on_track{border-left-color:var(--ui-primary)}.srs-milestone--at_risk{border-left-color:var(--ui-warning-solid)}.srs-milestone--past{border-left-color:var(--ui-gray-400);opacity:.85}.srs-milestone--course{border-left-color:var(--ui-accent-600)}.srs-milestone__head{justify-content:space-between;align-items:flex-start;gap:var(--ui-space-3);flex-wrap:wrap;display:flex}.srs-milestone__title{overflow-wrap:anywhere;margin:0;font-size:1rem;font-weight:600}.srs-milestone__status{white-space:nowrap;border-radius:999px;padding:.125rem .5rem;font-size:.75rem;font-weight:600}.srs-milestone__status--ready{background:var(--ui-success-bg-strong);color:var(--ui-success-text)}.srs-milestone__status--on_track{background:var(--ui-primary-100);color:var(--ui-primary-800)}.srs-milestone__status--at_risk{background:var(--ui-warning-bg-strong);color:var(--ui-warning-text)}.srs-milestone__status--past{background:var(--ui-gray-100);color:var(--ui-gray-600)}.srs-milestone__readiness{gap:var(--ui-space-1);flex-direction:column;display:flex}.srs-milestone__bar{background:var(--ui-gray-100);border-radius:999px;height:.5rem;display:flex;overflow:hidden}.srs-milestone__bar-ready{background:var(--ui-success-solid)}.srs-milestone__bar-learning{background:var(--ui-primary-500)}.srs-milestone__bar-new{background:var(--ui-gray-300)}.srs-milestone__bar-locked{background:repeating-linear-gradient(45deg, var(--ui-warning-border-strong), var(--ui-warning-border-strong) 4px, var(--ui-warning-bg-strong) 4px, var(--ui-warning-bg-strong) 8px)}.srs-milestone__counts{color:var(--ui-text-muted);overflow-wrap:anywhere;margin:0;font-size:.875rem}.srs-milestone__actions{gap:var(--ui-space-2);flex-wrap:wrap;display:flex}.srs-milestone-form{gap:var(--ui-space-3);flex-direction:column;display:flex}.srs-milestone-form__content{border:none;min-width:0;margin:0;padding:0}.srs-milestone-form__kept{border-radius:var(--ui-radius);background:var(--ui-surface-sunken);border:1px solid var(--ui-border);margin:0 0 .5rem;padding:.5rem .75rem;font-size:.875rem}.srs-milestone-tree__scroll{border:1px solid var(--ui-border);border-radius:var(--ui-radius);max-height:22rem;padding:.5rem;overflow:auto}.srs-milestone-tree{margin:0;padding-left:1.25rem;list-style:none}.srs-milestone-tree__scroll>.srs-milestone-tree{padding-left:0}.srs-milestone-tree__label{align-items:flex-start;gap:var(--ui-space-2);cursor:pointer;overflow-wrap:anywhere;padding:.125rem 0;font-size:.875rem;display:flex}.srs-milestone-tree__label--section{font-weight:500}.srs-progress-page{max-width:900px;margin:0 auto;padding:1.5rem 1rem 3rem}.srs-progress__header{align-items:flex-start;gap:1rem;margin-bottom:1.5rem;display:flex}.srs-progress__back-btn{cursor:pointer;color:var(--color-primary,#06c);background:0 0;border:none;flex-shrink:0;margin-top:.3rem;padding:.25rem 0;font-size:.9rem}.srs-progress__back-btn:hover,.srs-progress__back-btn:focus-visible{outline:2px solid var(--color-primary,#06c);outline-offset:2px;text-decoration:underline}.srs-progress__title-block{flex:1}.srs-progress__title{color:var(--color-text-primary,#1a1a1a);margin:0 0 .25rem;font-size:1.5rem;font-weight:700}.srs-progress__subtitle{color:var(--color-text-secondary,#666);margin:0;font-size:.875rem}.loading-spinner{justify-content:center;align-items:center;padding:3rem;display:flex}.loading-spinner:after{content:"";border:3px solid var(--color-border,#ddd);border-top-color:var(--color-primary,#06c);border-radius:50%;width:2rem;height:2rem;animation:.7s linear infinite srs-spin}@keyframes srs-spin{to{transform:rotate(360deg)}}.srs-progress__error{background:#fff3f3;border:1px solid #f5c6c6;border-radius:6px;flex-direction:column;align-items:flex-start;gap:.75rem;margin-bottom:1rem;padding:1rem 1.25rem;display:flex}.srs-progress__error-message{color:#c0392b;margin:0;font-size:.9rem}.srs-progress__retry-btn{color:#fff;cursor:pointer;background:#c0392b;border:none;border-radius:4px;padding:.4rem .9rem;font-size:.875rem;font-weight:600}.srs-progress__retry-btn:hover,.srs-progress__retry-btn:focus-visible{outline-offset:2px;background:#a93226;outline:2px solid #c0392b}.srs-progress__summary{background:var(--color-surface,#fff);border:1px solid var(--color-border,#e0e0e0);border-radius:8px;flex-direction:column;gap:1rem;margin-bottom:1.5rem;padding:1.25rem 1.5rem;display:flex}.srs-progress__courses{gap:0}.srs-progress__dates{flex-wrap:wrap;gap:1.5rem;display:flex}.cp-root .srs-progress-page{padding:0}.cp-root .srs-progress__summary{background:var(--cp-paper-bg);border-color:var(--cp-paper-border);color:var(--cp-paper-text)}.cp-root .srs-progress__date-label{color:var(--cp-text-muted)}.cp-root .srs-progress__date-value{color:var(--cp-paper-text)}.srs-progress-page>.srs-op{margin:0 0 1.5rem}.srs-progress__dates--warning{background:#fffbf0;border-radius:6px;margin-top:-.25rem;padding:.75rem 1rem}.srs-progress__date-item{flex-direction:column;gap:.15rem;display:flex}.srs-progress__date-item--warning .srs-progress__date-value{color:#b7760b;font-weight:700}.srs-progress__date-label{color:var(--color-text-secondary,#666);align-items:center;gap:.3rem;font-size:.78rem;display:flex}.srs-progress__date-value{color:var(--color-text-primary,#1a1a1a);font-size:.95rem;font-weight:600}.srs-progress__warning-icon{color:#b7760b;cursor:default;font-size:.9rem}@media (width<=600px){.srs-progress-page{padding:1rem .75rem 2rem}.srs-progress__title{font-size:1.2rem}.srs-progress__dates{flex-direction:column;gap:.75rem}}.srs-progress__paused{margin-bottom:1rem}.srs-progress__milestones-heading{margin:0 0 .5rem;font-size:1.125rem;font-weight:600}.srs-self-report{max-width:760px;margin:0 auto;padding:1.5rem 1rem 3rem}.srs-self-report__header{margin-bottom:1.75rem}.srs-self-report__back-link{font:inherit;color:#2563eb;cursor:pointer;background:0 0;border:none;align-items:center;gap:.25rem;margin-bottom:.75rem;padding:0;font-size:.875rem;text-decoration:none;display:inline-flex}.srs-self-report__back-link:hover{text-decoration:underline}.srs-self-report__back-link:focus-visible{outline-offset:2px;border-radius:2px;outline:3px solid #1d4ed8}.srs-self-report__title{color:#111827;margin:0 0 .375rem;font-size:1.5rem;font-weight:700;line-height:1.25}.srs-self-report__subtitle{color:#6b7280;margin:0 0 .5rem;font-size:.9375rem;line-height:1.5}.srs-self-report__programme-name{color:#374151;margin:0;font-size:.9375rem;font-weight:600}.srs-self-report__save-error{color:#991b1b;background-color:#fef2f2;border:1px solid #fca5a5;border-radius:8px;margin-bottom:1rem;padding:.75rem 1rem;font-size:.9375rem}.srs-self-report__saving{color:#6b7280;align-items:center;gap:.5rem;margin-bottom:.75rem;font-size:.875rem;display:flex}.srs-self-report__saving-text{font-style:italic}.srs-self-report__empty{color:#6b7280;text-align:center;padding:2rem;font-size:.9375rem}.srs-self-report__tree{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.srs-self-report__node{list-style:none}.srs-self-report__node--depth-0{background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:10px;overflow:hidden}.srs-self-report__node--depth-1{background-color:#f3f4f6;border-left:3px solid #d1d5db;border-radius:0 6px 6px 0;margin-left:1rem}.srs-self-report__node--depth-2{background-color:#fff;border-left:3px solid #e5e7eb;border-radius:0 4px 4px 0;margin-left:2rem}.srs-self-report__node-row{justify-content:space-between;align-items:center;gap:1rem;padding:.875rem 1rem;display:flex}.srs-self-report__node--depth-1 .srs-self-report__node-row{padding:.625rem .875rem}.srs-self-report__node--depth-2 .srs-self-report__node-row{padding:.5rem .75rem}.srs-self-report__node-label{color:#111827;cursor:pointer;flex:1;min-width:0;font-size:.9375rem;font-weight:600;line-height:1.4}.srs-self-report__node-label--syllabus_subunit{color:#1f2937;font-size:.9rem;font-weight:500}.srs-self-report__node-label--outcome{color:#374151;font-size:.875rem;font-weight:400}.srs-self-report__toggle-wrapper{flex-shrink:0;align-items:center;gap:.625rem;display:flex}.srs-self-report__gate-badge{white-space:nowrap;border-radius:999px;align-items:center;padding:.25rem .625rem;font-size:.75rem;font-weight:600;display:inline-flex}.srs-self-report__gate-badge--unlocked{color:#166534;background-color:#dcfce7}.srs-self-report__gate-badge--locked{color:#6b7280;background-color:#f3f4f6}.srs-self-report__toggle{cursor:pointer;border:2px solid #0000;border-radius:999px;flex-shrink:0;align-items:center;width:44px;height:24px;padding:0;transition:background-color .2s;display:inline-flex;position:relative}.srs-self-report__toggle--on{background-color:#16a34a}.srs-self-report__toggle--off{background-color:#d1d5db}.srs-self-report__toggle:focus-visible{outline-offset:2px;outline:3px solid #1d4ed8}.srs-self-report__toggle:disabled{opacity:.5;cursor:not-allowed}.srs-self-report__toggle-thumb{background-color:#fff;border-radius:50%;width:18px;height:18px;transition:transform .2s;position:absolute;box-shadow:0 1px 3px #0003}.srs-self-report__toggle--on .srs-self-report__toggle-thumb{transform:translate(20px)}.srs-self-report__toggle--off .srs-self-report__toggle-thumb{transform:translate(2px)}.srs-self-report__children{flex-direction:column;gap:.25rem;margin:0;padding:0 0 .5rem;list-style:none;display:flex}.srs-self-report__legend{color:#6b7280;background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;flex-direction:column;gap:.5rem;margin-top:2rem;padding:1rem;font-size:.8125rem;display:flex}.srs-self-report__legend-item{align-items:center;gap:.625rem;display:flex}.srs-self-report__legend-label{line-height:1.4}.srs-self-report__loading{flex-direction:column;justify-content:center;align-items:center;gap:.75rem;padding:3rem 1rem;display:flex}.srs-self-report__loading-text{color:#6b7280;font-size:.9375rem}.srs-self-report__error{text-align:center;flex-direction:column;align-items:center;gap:1rem;padding:2rem 1rem;display:flex}.srs-self-report__error-message{color:#dc2626;margin:0;font-size:.9375rem}.srs-self-report__retry-btn{color:#fff;font:inherit;cursor:pointer;background-color:#2563eb;border:none;border-radius:6px;padding:.5rem 1.25rem;font-size:.9375rem;font-weight:500;transition:background-color .15s}.srs-self-report__retry-btn:hover{background-color:#1d4ed8}.srs-self-report__retry-btn:focus-visible{outline-offset:2px;outline:3px solid #1d4ed8}.srs-self-report__unavailable{text-align:center;background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:12px;max-width:560px;margin:2rem auto;padding:2rem 1.5rem}.srs-self-report__unavailable-message{color:#6b7280;margin:.75rem 0 1.5rem;font-size:.9375rem;line-height:1.6}.srs-self-report__back-btn{color:#fff;font:inherit;cursor:pointer;background-color:#2563eb;border:none;border-radius:6px;padding:.5rem 1.25rem;font-size:.9375rem;font-weight:500;transition:background-color .15s}.srs-self-report__back-btn:hover{background-color:#1d4ed8}.srs-self-report__back-btn:focus-visible{outline-offset:2px;outline:3px solid #1d4ed8}.srs-self-report__dialog-overlay{z-index:1000;background-color:#00000073;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.srs-self-report__dialog{background-color:#fff;border-radius:12px;width:100%;max-width:440px;padding:1.75rem;box-shadow:0 20px 60px #0003}.srs-self-report__dialog-title{color:#111827;margin:0 0 .75rem;font-size:1.125rem;font-weight:700;line-height:1.3}.srs-self-report__dialog-body{color:#4b5563;margin:0 0 1.5rem;font-size:.9375rem;line-height:1.6}.srs-self-report__dialog-actions{justify-content:flex-end;gap:.75rem;display:flex}.srs-self-report__dialog-btn{font:inherit;cursor:pointer;border:1px solid #0000;border-radius:6px;padding:.5rem 1.125rem;font-size:.9375rem;font-weight:500;transition:background-color .15s,color .15s}.srs-self-report__dialog-btn:focus-visible{outline-offset:2px;outline:3px solid #1d4ed8}.srs-self-report__dialog-btn--cancel{color:#374151;background-color:#f3f4f6;border-color:#d1d5db}.srs-self-report__dialog-btn--cancel:hover{background-color:#e5e7eb}.srs-self-report__dialog-btn--confirm{color:#fff;background-color:#dc2626}.srs-self-report__dialog-btn--confirm:hover{background-color:#b91c1c}html.high-contrast .srs-self-report__toggle--on{background-color:#166534;border:2px solid #fff}html.high-contrast .srs-self-report__toggle--off{background-color:#374151;border:2px solid #fff}html.high-contrast .srs-self-report__gate-badge--unlocked{color:#fff;background-color:#166534}html.high-contrast .srs-self-report__gate-badge--locked{color:#fff;background-color:#374151}html.reduced-motion .srs-self-report__toggle,html.reduced-motion .srs-self-report__toggle-thumb{transition:none}@media (width<=480px){.srs-self-report{padding:1rem .75rem 2rem}.srs-self-report__node-row{padding:.75rem}.srs-self-report__node-label{font-size:.875rem}.srs-self-report__dialog-actions{flex-direction:column-reverse}.srs-self-report__dialog-btn{text-align:center;width:100%}}.asrs-form__input--narrow{max-width:200px}.asrs-form__coverage{margin-top:2rem}.asrs-form__coverage h2{margin:0 0 .25rem;font-size:1.125rem}.asrs-form__coverage-hint{color:var(--ui-gray-500);margin:0 0 .75rem;font-size:.8125rem}.srs-coverage{flex-direction:column;gap:.5rem;display:flex}.srs-coverage__summary{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;display:flex}.srs-coverage__summary p{color:var(--ui-gray-700);margin:0;font-size:.875rem}.srs-coverage__actions{gap:.375rem;display:flex}.srs-coverage__button{border:1px solid var(--ui-border);background:var(--ui-surface);color:var(--ui-gray-700);cursor:pointer;border-radius:.375rem;padding:.25rem .625rem;font-size:.75rem}.srs-coverage__button:hover{background:var(--ui-gray-50)}.srs-coverage__note,.srs-coverage__status{color:var(--ui-text-subtle);margin:0;font-size:.8125rem}.srs-coverage__tree,.srs-coverage__children{margin:0;padding:0;list-style:none}.srs-coverage__tree{border:1px solid var(--ui-border-subtle);border-radius:.5rem;overflow:hidden}.srs-coverage__row{padding:.4rem .75rem .4rem calc(var(--srs-coverage-depth,0) * 1.25rem);border-top:1px solid var(--ui-gray-100);grid-template-columns:1.25rem minmax(0,1fr) minmax(6rem,14rem) 6.5rem 8.5rem;align-items:center;gap:.625rem;font-size:.8125rem;display:grid}.srs-coverage__tree>.srs-coverage__node:first-child>.srs-coverage__row{border-top:none}.srs-coverage__node--syllabus>.srs-coverage__row{background:var(--ui-gray-50);font-weight:600}.srs-coverage__toggle{width:1.25rem;height:1.25rem;color:var(--ui-text-subtle);cursor:pointer;background:0 0;border:none;margin-left:.5rem;padding:0;font-size:.75rem;line-height:1}.srs-coverage__toggle--leaf{cursor:default;display:inline-block}.srs-coverage__name{align-items:baseline;gap:.375rem;min-width:0;display:flex}.srs-coverage__kind{text-transform:uppercase;letter-spacing:.03em;color:var(--ui-gray-400);flex:none;font-size:.6875rem;font-weight:500}.srs-coverage__ref{color:var(--ui-gray-700);flex:none;font-weight:600}.srs-coverage__label{text-overflow:ellipsis;white-space:nowrap;color:var(--ui-text);overflow:hidden}.srs-coverage__bar{background:var(--ui-gray-100);border-radius:9999px;height:.625rem;position:relative;overflow:hidden}.srs-coverage__fill{border-radius:9999px;height:100%;transition:width .3s;display:block}.srs-coverage__fill--none{width:.375rem!important}.srs-coverage__count{text-align:right;font-variant-numeric:tabular-nums;color:var(--ui-text)}.srs-coverage__count--none{color:var(--ui-danger-hover);font-weight:600}.srs-coverage__outcomes{color:var(--ui-text-subtle);font-variant-numeric:tabular-nums;font-size:.75rem}@media (width<=640px){.srs-coverage__row{padding-left:calc(var(--srs-coverage-depth,0) * .625rem);grid-template-columns:1.25rem minmax(0,1fr) 6rem;grid-template-areas:"toggle name count"".bar bar"".outcomes outcomes";row-gap:.25rem}.srs-coverage__kind{display:none}.srs-coverage__name{flex-wrap:wrap}.srs-coverage__label{white-space:normal}.srs-coverage__toggle{grid-area:toggle}.srs-coverage__name{grid-area:name}.srs-coverage__bar{grid-area:bar}.srs-coverage__count{grid-area:count}.srs-coverage__outcomes{grid-area:outcomes}}.srs-history{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.srs-history__entry{border-bottom:1px solid var(--color-border,var(--ui-border-subtle));flex-wrap:wrap;justify-content:space-between;gap:.25rem 1rem;padding:.5rem 0;display:flex}.srs-history__entry:last-child{border-bottom:none}.srs-history__what{overflow-wrap:anywhere;min-width:0}.srs-history__meta,.srs-history__empty{color:var(--color-text-secondary,var(--ui-text-subtle));font-size:.875rem}.srs-history__retry{color:inherit;cursor:pointer;background:0 0;border:none;padding:0;text-decoration:underline}.ui-color-picker{flex-wrap:wrap;gap:.5rem;margin-top:.25rem;display:flex}.ui-color-swatch{border:2px solid var(--ui-surface);width:32px;height:32px;box-shadow:0 0 0 1px var(--ui-gray-300);cursor:pointer;border-radius:50%;padding:0;position:relative}.ui-color-swatch:disabled{cursor:not-allowed;opacity:.6}.ui-color-swatch--selected{box-shadow:0 0 0 2px var(--ui-gray-900)}.ui-color-swatch:focus-visible,.ui-color-custom:focus-within{outline:3px solid var(--tuto-action,var(--ui-primary-600));outline-offset:2px}.ui-color-custom{background:conic-gradient(#ef4444,#f59e0b,#22c55e,#06b6d4,#6366f1,#d946ef,#ef4444);overflow:hidden}.ui-color-custom input{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.ui-color-sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.pack-appearance-intro{max-width:65ch;color:var(--ui-gray-500);margin:0 0 1rem;font-size:.875rem}.pack-appearance-field{flex-direction:column;gap:.375rem;margin-bottom:1.25rem;display:flex}.pack-appearance-label{color:var(--ui-gray-700);font-size:.8125rem;font-weight:600}.pack-appearance-images{gap:1.5rem;display:grid}.pack-appearance-banner-fallback{width:100%;height:100%;display:block}.pack-appearance-logo-fallback{justify-content:center;align-items:center;width:100%;height:100%;font-size:1.75rem;font-weight:700;display:flex}.pack-appearance-description{border:1px solid var(--ui-border);background:var(--ui-surface);width:100%;max-width:640px;color:var(--ui-text);font:inherit;resize:vertical;border-radius:8px;padding:.625rem .75rem;font-size:.9375rem;line-height:1.5}.pack-appearance-description-row{justify-content:space-between;align-items:center;gap:1rem;max-width:640px;display:flex}.pack-appearance-count{color:var(--ui-text-subtle);font-size:.8125rem}.pay-channel-hint{color:var(--ui-gray-500);margin:0 0 .75rem;font-size:.8125rem}.pay-channels-table tbody th,.pay-channels-table td{vertical-align:top}.pay-channels-course{min-width:14rem}.pay-channels-course__title{margin-right:.5rem}.pay-channels-warning{margin-top:.5rem;font-weight:400}.pay-channel-cell{flex-direction:column;gap:.25rem;display:flex}.pay-channel-source{color:var(--ui-gray-500);font-size:.75rem}.pay-channel-switch{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:.5rem;display:inline-flex;position:relative}.pay-channel-switch--disabled{cursor:not-allowed}.pay-channel-switch__input{opacity:0;width:1px;height:1px;position:absolute}.pay-channel-switch__slider{background-color:var(--ui-gray-300);border-radius:20px;flex-shrink:0;width:36px;height:20px;transition:background-color .2s;display:inline-block;position:relative}.pay-channel-switch__slider:after{content:"";background-color:var(--ui-surface);width:16px;height:16px;box-shadow:var(--ui-shadow-sm);border-radius:50%;transition:transform .2s;position:absolute;top:2px;left:2px}.pay-channel-switch__input:checked+.pay-channel-switch__slider{background-color:var(--ui-accent-interactive)}.pay-channel-switch__input:checked+.pay-channel-switch__slider:after{transform:translate(16px)}.pay-channel-switch__input:focus-visible+.pay-channel-switch__slider{outline:2px solid var(--ui-focus);outline-offset:2px}.pay-channel-switch__input:disabled+.pay-channel-switch__slider{opacity:.5}.pay-channel-switch__state{color:var(--ui-gray-700);font-size:.8125rem}.pay-channel-switch--disabled .pay-channel-switch__state{color:var(--ui-gray-500)}@media (prefers-reduced-motion:reduce){.pay-channel-switch__slider,.pay-channel-switch__slider:after{transition:none}}.pay-bank-summary{flex-wrap:wrap;align-items:center;gap:.25rem .5rem;display:flex}.pay-bank-summary__text{color:var(--ui-gray-700);font-size:.75rem}.pay-bank-pool-hint{color:var(--ui-gray-600);margin:0 0 .75rem;font-size:.875rem}.pay-bank-options-fieldset{border:0;margin:0;padding:0}.pay-bank-options-legend{color:var(--ui-gray-900);margin-bottom:.5rem;font-size:.875rem;font-weight:600}.pay-bank-options{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.pay-bank-option{border:1px solid var(--ui-gray-200);border-radius:8px;padding:.625rem .75rem}.pay-bank-option__label{cursor:pointer;align-items:flex-start;gap:.625rem;display:flex}.pay-bank-option__label input{margin-top:.2rem}.pay-bank-option__details{flex-direction:column;gap:.125rem;display:flex}.pay-bank-option__name{color:var(--ui-gray-900);align-items:center;gap:.5rem;font-weight:500;display:inline-flex}.pay-bank-option__line{color:var(--ui-gray-600);font-size:.8125rem}.cad{padding:0}.cad__time-range{gap:.25rem;display:flex}.cad__summary,.cad__section{margin-bottom:2rem}.cad__section-title{margin:0 0 .75rem;font-size:1.125rem;font-weight:600}.cad__daily-chart{align-items:flex-end;gap:2px;height:120px;padding:.5rem 0;display:flex;overflow-x:auto}.cad__bar-wrapper{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;min-width:20px;height:100%;display:flex}.cad__bar{background:var(--ui-primary);border-radius:3px 3px 0 0;width:100%;max-width:24px;min-height:2px;transition:height .3s}.cad__bar-label{color:var(--ui-gray-500);white-space:nowrap;margin-top:.25rem;font-size:.625rem}.cad__empty{color:var(--ui-gray-500);font-style:italic}.cad__timestamp{white-space:nowrap;color:var(--ui-gray-500);font-size:.8125rem}.cad__events-table a{color:var(--ui-primary);text-decoration:none}.cad__events-table a:hover{text-decoration:underline}.cad__panel-toolbar{justify-content:flex-end;margin-bottom:1rem;display:flex}.ca-enrollment-name{align-items:center;gap:.375rem;display:inline-flex}.ca-enrollment-name__spacer{flex-shrink:0;width:calc(18px + .5rem);display:inline-block}.ca-parent-links-row td{background-color:var(--ui-gray-50);border-bottom:1px solid var(--ui-gray-200);padding:.75rem .75rem .75rem 2.5rem}.ca-parent-links-empty{color:var(--ui-gray-500);margin:0;padding:.25rem 0;font-size:.8125rem}.ca-parent-links-error{color:var(--ui-danger-text);margin:0;padding:.25rem 0;font-size:.8125rem}.ca-parent-links-table{border-collapse:collapse;background-color:var(--ui-surface);border:1px solid var(--ui-gray-200);border-radius:var(--ui-radius-md);width:100%;font-size:.8125rem;overflow:hidden}.ca-parent-links-table th{text-align:left;color:var(--ui-gray-500);background-color:var(--ui-gray-100);border-bottom:1px solid var(--ui-gray-200);padding:.375rem .625rem;font-weight:500}.ca-parent-links-table td{color:var(--ui-gray-700);border-bottom:1px solid var(--ui-gray-100);vertical-align:middle;padding:.5rem .625rem}.ca-parent-links-table tbody tr:last-child td{border-bottom:none}.ca-parent-success{color:var(--ui-success-text);background-color:var(--ui-success-bg);border:1px solid var(--ui-success-border);border-radius:var(--ui-radius-md);margin-top:.75rem;padding:.625rem .875rem;font-size:.875rem}.ca-summary-note{color:var(--ui-gray-500);margin:0 0 1rem;font-size:.8125rem}.ca-summary-toolbar{justify-content:flex-end;margin-bottom:.75rem;display:flex}.ca-enrollment-name__link{color:inherit;font-weight:inherit;text-decoration:underline;-webkit-text-decoration-color:var(--ui-gray-300);text-decoration-color:var(--ui-gray-300);text-underline-offset:2px}.ca-enrollment-name__link:hover{color:var(--ui-primary);text-decoration-color:currentColor}.ca-parent-chips{flex-wrap:wrap;align-items:center;gap:.375rem;display:flex}.ca-parent-chips__note{color:var(--ui-gray-500);font-size:.8125rem}.ca-parent-chips__note--error{color:var(--ui-danger-text)}.ca-parent-chip{border:1px solid var(--ui-gray-200);background-color:var(--ui-gray-50);max-width:100%;color:var(--ui-gray-700);border-radius:999px;align-items:center;gap:.375rem;padding:.125rem .25rem .125rem .625rem;font-size:.8125rem;display:inline-flex}.ca-parent-chip__email{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ca-parent-chip__relationship{color:var(--ui-gray-500)}.ca-parent-chip__remove{width:1.25rem;height:1.25rem;color:var(--ui-gray-500);cursor:pointer;background:0 0;border:none;border-radius:999px;justify-content:center;align-items:center;display:inline-flex}.ca-parent-chip__remove:hover:not(:disabled){background-color:var(--ui-danger-bg);color:var(--ui-danger-text)}.ca-parent-chip__remove:disabled{opacity:.5;cursor:default}.ca-summary-details{grid-template-columns:max-content 1fr;align-items:center;gap:.5rem 1rem;margin:0 0 1.25rem;font-size:.875rem;display:grid}.ca-summary-details dt{color:var(--ui-gray-500);font-weight:500}.ca-summary-details dd{min-width:0;margin:0}.ca-summary-section-title{margin:1.5rem 0 .75rem;font-size:1rem;font-weight:600}.ca-summary-note--after{margin:1rem 0 0}.ca-summary-programme+.ca-summary-programme{margin-top:1.5rem}.ca-radio-group{border:none;flex-wrap:wrap;align-items:center;gap:.5rem 1.25rem;margin:0;padding:0;display:flex}.ca-radio-group>legend{width:100%;margin-bottom:.375rem;padding:0}.ca-radio-option{cursor:pointer;align-items:center;gap:.4rem;font-size:.875rem;display:inline-flex}.ca-invite-resolved-user{border:1px solid var(--ui-success-border);border-radius:var(--ui-radius-md);background:var(--ui-success-bg);color:var(--ui-success-text);padding:.5rem .75rem;font-size:.8125rem}.ca-invite-resolved-email{color:var(--ui-gray-600);margin-left:.375rem}.ca-invite-resolved-note{margin-top:.25rem;display:block}.asrs-progress{flex-direction:column;gap:1rem;display:flex}.asrs-progress__header{flex-direction:column;gap:.375rem;display:flex}.asrs-progress__subtitle{color:var(--ui-gray-500);max-width:680px;margin:0;font-size:.875rem;line-height:1.5}.asrs-progress__loading{color:var(--ui-gray-500);align-items:center;gap:.625rem;padding:2rem 0;font-size:.9rem;display:flex}.asrs-progress__error{background-color:var(--ui-danger-bg);border:1px solid var(--ui-danger-border);border-radius:8px;align-items:center;gap:1rem;padding:1rem 1.25rem;display:flex}.asrs-progress__error-message{color:var(--ui-danger-hover);flex:1;margin:0;font-size:.9rem}.asrs-progress__retry-btn{color:var(--ui-danger-hover);border:1px solid var(--ui-danger-hover);cursor:pointer;white-space:nowrap;background:0 0;border-radius:6px;flex-shrink:0;padding:.4rem 1rem;font-size:.875rem;font-weight:500;transition:background-color .15s,color .15s}.asrs-progress__retry-btn:hover{background-color:var(--ui-danger-hover);color:var(--ui-on-solid)}.asrs-progress__retry-btn:focus-visible{outline:2px solid var(--ui-focus);outline-offset:2px}.asrs-progress__table-wrapper{border:1px solid var(--ui-gray-200);border-radius:8px;overflow-x:auto}.asrs-progress__table{border-collapse:collapse;width:100%;font-size:.875rem}.asrs-progress__thead{background-color:var(--ui-gray-50)}.asrs-progress__th{text-align:left;color:var(--ui-gray-700);border-bottom:1px solid var(--ui-gray-200);white-space:nowrap;vertical-align:bottom;padding:.75rem 1rem;font-weight:600}.asrs-progress__th--expand{width:2.5rem;padding-right:0}.asrs-progress__th--student{min-width:180px}.asrs-progress__th--programme{min-width:200px}.asrs-progress__th-programme-id{color:var(--ui-gray-500);text-overflow:ellipsis;white-space:nowrap;max-width:14ch;margin-top:.125rem;font-family:monospace;font-size:.7rem;font-weight:500;display:block;overflow:hidden}.asrs-progress__th-sub{color:var(--ui-gray-400);margin-top:.125rem;font-size:.7rem;font-weight:400;display:block}.asrs-progress__student-row{border-bottom:1px solid var(--ui-gray-100);transition:background-color .1s}.asrs-progress__student-row:hover,.asrs-progress__student-row--expanded,.asrs-progress__detail-row{background-color:var(--ui-gray-50)}.asrs-progress__td{color:var(--ui-gray-800);vertical-align:middle;border-bottom:1px solid var(--ui-gray-100);padding:.75rem 1rem}.asrs-progress__td--expand{text-align:center;width:2.5rem;padding-right:0}.asrs-progress__td--student{min-width:180px}.asrs-progress__td--mastery{vertical-align:middle;min-width:200px}.asrs-progress__td--detail{border-top:2px solid var(--ui-gray-200);padding:0}.asrs-progress__expand-icon{font-size:.625rem;line-height:1}.asrs-progress__student-name{color:var(--ui-text);text-overflow:ellipsis;white-space:nowrap;max-width:220px;font-weight:500;display:block;overflow:hidden}.asrs-progress__student-email{color:var(--ui-gray-500);text-overflow:ellipsis;white-space:nowrap;max-width:220px;margin-top:.125rem;font-size:.75rem;display:block;overflow:hidden}.asrs-progress__bar-wrapper{background-color:var(--ui-gray-200);border-radius:9999px;height:.5rem;margin-bottom:.25rem;position:relative;overflow:hidden}.asrs-progress__bar-fill{border-radius:9999px;height:100%;transition:width .3s}.asrs-progress__bar-fill.asrs-progress__mastery--high{background-color:var(--ui-success-solid)}.asrs-progress__bar-fill.asrs-progress__mastery--mid{background-color:var(--ui-warning-accent)}.asrs-progress__bar-fill.asrs-progress__mastery--low{background-color:var(--ui-danger-accent)}.asrs-progress__bar{min-width:5rem}.asrs-progress__bar-label{color:var(--ui-gray-700);font-size:.75rem;font-weight:600;display:block}.asrs-progress__last-session{color:var(--ui-gray-500);white-space:nowrap;text-overflow:ellipsis;margin-top:.25rem;font-size:.7rem;display:block;overflow:hidden}.asrs-progress__mastery-badge{border-radius:9999px;padding:.125rem .5rem;font-size:.75rem;font-weight:600;display:inline-block}.asrs-progress__mastery-badge.asrs-progress__mastery--high{background-color:var(--ui-success-bg-strong);color:var(--ui-success-text)}.asrs-progress__mastery-badge.asrs-progress__mastery--mid{background-color:var(--ui-warning-bg-strong);color:var(--ui-warning-text)}.asrs-progress__mastery-badge.asrs-progress__mastery--low{background-color:var(--ui-danger-bg-strong);color:var(--ui-danger-text)}.asrs-progress__student-detail{padding:1rem 1.5rem}.asrs-progress__programme-section{margin-bottom:1.25rem}.asrs-progress__programme-section:last-child{margin-bottom:0}.asrs-progress__outcomes{margin-top:.75rem}.asrs-progress__programme-section-title{color:var(--ui-gray-700);margin:0 0 .625rem;font-size:.8125rem;font-weight:600}.asrs-progress__programme-id-label{color:var(--ui-gray-500);font-family:monospace;font-size:.75rem}.asrs-progress__lo-table{border-collapse:collapse;border:1px solid var(--ui-gray-200);border-radius:6px;width:100%;font-size:.8125rem;overflow:hidden}.asrs-progress__lo-th{text-align:left;color:var(--ui-text-muted);background-color:var(--ui-gray-100);border-bottom:1px solid var(--ui-gray-200);white-space:nowrap;padding:.5rem .75rem;font-size:.75rem;font-weight:600}.asrs-progress__lo-row{border-bottom:1px solid var(--ui-gray-100)}.asrs-progress__lo-row:last-child{border-bottom:none}.asrs-progress__lo-row:hover{background-color:var(--ui-gray-50)}.asrs-progress__lo-td{color:var(--ui-gray-800);vertical-align:middle;padding:.5rem .75rem}.asrs-progress__lo-td--ref{white-space:nowrap;color:var(--ui-text-muted);font-family:monospace;font-size:.75rem;font-weight:600}.asrs-progress__lo-td--statement{max-width:320px;line-height:1.4}.asrs-progress__lo-td--chapter{color:var(--ui-text-muted);white-space:nowrap;text-overflow:ellipsis;max-width:180px;overflow:hidden}.asrs-progress__lo-td--score{white-space:nowrap}.asrs-progress__lo-td--count{text-align:center;font-variant-numeric:tabular-nums;font-weight:500}.asrs-progress__lo-td--date{white-space:nowrap;color:var(--ui-gray-500);font-size:.75rem}@media (width<=768px){.asrs-progress{padding:1rem}.asrs-progress__student-name,.asrs-progress__student-email{max-width:140px}}.asrs-progress__load-more{justify-content:center;margin-top:.75rem;display:flex}.srs-link-section .ui-section-header{margin-bottom:var(--ui-space-2)}.srs-link-section__intro{margin:0 0 var(--ui-space-4);color:var(--ui-text-muted)}.srs-unlink-message p{margin:0 0 var(--ui-space-2)}.srs-unlink-message ul{padding-left:var(--ui-space-5);margin:0}.srs-link-dialog__search{width:100%;margin-bottom:var(--ui-space-3)}.srs-link-dialog__list{border:1px solid var(--ui-gray-200);border-radius:.5rem;max-height:22rem;margin:0;padding:0;list-style:none;overflow-y:auto}.srs-link-dialog__list li+li{border-top:1px solid var(--ui-gray-100)}.srs-link-dialog__option{align-items:center;gap:var(--ui-space-3);cursor:pointer;padding:.625rem .875rem;display:flex}.srs-link-dialog__option:hover{background:var(--ui-gray-50)}.srs-link-dialog__name{overflow-wrap:anywhere;flex:1;min-width:0}.ca-row--muted td{color:var(--ui-gray-400);background-color:var(--ui-gray-50)}.ca-inline-error{margin-left:.5rem}.ca-person-cell{font-weight:500}.ca-person-subtext{color:var(--ui-gray-500);font-size:.8125rem;font-weight:400;display:block}.ca-num-cell{white-space:nowrap;font-variant-numeric:tabular-nums}.ca-row-actions{flex-wrap:wrap;justify-content:flex-end;gap:.5rem;display:inline-flex}.ca-amount-note{cursor:help;border-bottom:1px dotted var(--ui-gray-500)}.ca-amount-note__icon{color:var(--ui-gray-500);margin-left:.3em;font-size:.75em}.access-rules-section__title{margin:0 0 var(--ui-space-3);border-bottom:1px solid var(--ui-gray-200);color:var(--ui-gray-700);padding-bottom:.375rem;font-size:1rem;font-weight:600}.ca-exams{padding:0}.ca-exam-section-name{color:var(--ui-gray-500);margin:0 0 6px;font-size:.8125rem;font-weight:400}.ca-exam-toggle{flex-shrink:0;align-items:center;display:inline-flex;position:relative}.ca-exam-toggle input[type=checkbox]{opacity:0;width:0;height:0;position:absolute}.ca-exam-toggle-thumb{background:var(--ui-gray-300);border-radius:12px;width:44px;height:24px;transition:background .2s;display:block;position:relative}.ca-exam-toggle-thumb:after{content:"";background:var(--ui-surface);width:20px;height:20px;box-shadow:var(--ui-shadow-sm);border-radius:50%;transition:transform .2s;position:absolute;top:2px;left:2px}.ca-exam-toggle.on .ca-exam-toggle-thumb{background:var(--ui-primary-600)}.ca-exam-toggle.on .ca-exam-toggle-thumb:after{transform:translate(20px)}.ca-exam-toggle.saving .ca-exam-toggle-thumb{opacity:.6}.ca-exam-saving{color:var(--ui-gray-500);font-size:.775rem}.ca-exam-save-error{color:var(--ui-danger);font-size:.775rem}.ca-exam-grade-badge{background:var(--ui-primary-600);min-width:1.25rem;height:1.25rem;color:var(--ui-on-accent);border-radius:9999px;justify-content:center;align-items:center;padding:0 .35rem;font-size:.6875rem;font-weight:700;display:inline-flex}.exam-attempt-grading{max-width:900px;padding:0}.exam-attempt-grading__sheets{color:var(--ui-gray-500);margin:0 0 1rem;font-size:.875rem}.exam-attempt-grading__slide-nav-top{justify-content:center;align-items:center;margin-bottom:1rem;padding:.5rem;display:flex}.exam-attempt-grading__nav-info{color:var(--ui-slate-500);font-size:.875rem;font-weight:600}.exam-attempt-grading__slide{min-height:300px}.exam-attempt-grading__auto-graded{border:1px solid var(--ui-slate-200);background:var(--ui-surface);border-radius:8px;padding:1.25rem}.exam-attempt-grading__auto-header{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.exam-attempt-grading__auto-type{color:var(--ui-slate-500);text-transform:uppercase;letter-spacing:.025em;font-size:.75rem;font-weight:500}.exam-attempt-grading__auto-score{border-radius:4px;padding:.25rem .5rem;font-size:.875rem;font-weight:600}.exam-attempt-grading__auto-score.correct{background:var(--ui-success-bg-strong);color:var(--ui-success)}.exam-attempt-grading__auto-score.incorrect{background:var(--ui-danger-bg);color:var(--ui-danger-text)}.exam-attempt-grading__auto-section{margin-bottom:1rem}.exam-attempt-grading__auto-heading{color:var(--ui-slate-500);text-transform:uppercase;margin:0 0 .25rem;font-size:.75rem;font-weight:600}.exam-attempt-grading__auto-section p{color:var(--ui-slate-800);margin:0;font-size:.9375rem;line-height:1.5}.exam-attempt-grading__auto-correct{background:var(--ui-success-bg-strong);border-radius:6px;padding:.75rem}.exam-attempt-grading__slide .essay-grading-panel__save-btn{display:none}.exam-attempt-grading__bottom-bar{border-top:1px solid var(--ui-slate-200);align-items:center;gap:.5rem;margin-top:1.5rem;padding-top:1rem;display:flex}.exam-attempt-grading__bottom-bar .finalize-button-wrapper{margin-left:auto}.exam-essay-grading__header{flex-direction:column;align-items:flex-start;gap:.5rem;padding:1rem 0 0;display:flex}.exam-essay-grading__title{margin-bottom:.75rem}.exam-essay-grading-view__filter{color:var(--ui-gray-500);border-bottom:1px solid var(--ui-gray-200);justify-content:space-between;align-items:center;gap:.5rem;padding:8px 12px;font-size:.8125rem;display:flex}.exam-essay-grading-view{grid-template-columns:320px 1fr;height:calc(100vh - 160px);min-height:500px;display:grid}.exam-essay-grading-view__queue{border-right:1px solid var(--ui-gray-200);overflow-y:auto}.exam-essay-grading-view__panel{flex-direction:column;display:flex;overflow-y:auto}.exam-essay-grading-view__placeholder{height:100%;color:var(--ui-gray-500);justify-content:center;align-items:center;font-size:.9375rem;display:flex}.exam-essay-grading-view__loading{height:100%;color:var(--ui-gray-500);justify-content:center;align-items:center;font-size:.875rem;display:flex}.exam-essay-grading-view__content{flex-direction:column;height:100%;display:flex}.exam-essay-grading-view__nav{border-bottom:1px solid var(--ui-gray-200);background-color:var(--ui-gray-50);justify-content:space-between;align-items:center;padding:12px 24px;display:flex}.exam-essay-grading-view__nav-info{color:var(--ui-gray-500);font-size:.8125rem}.exam-essay-grading-view__error{color:var(--ui-danger-accent);background-color:var(--ui-danger-bg);margin:0;padding:12px 16px;font-size:.8125rem}.exam-essay-grading-view__complete{height:100%;color:var(--ui-success-accent);justify-content:center;align-items:center;font-size:.9375rem;display:flex}.exam-submissions{padding:0}.grades-tab{flex-direction:column;gap:1.5rem;display:flex}.grades-tab>.ui-tabs{margin-bottom:0}.grades-tab__content{min-height:200px}.ca-exam-results-released,.ca-exam-results-asmarked{color:var(--ui-gray-600);font-size:.8125rem}.ca-exam-results-cell{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.ca-exam-results-header{justify-content:center;align-items:center;gap:.25rem;margin-top:.25rem;display:flex}.ca-exam-results-dialog{flex-direction:column;gap:.75rem;display:flex}.ca-exam-results-dialog .ca-grades-grid__hint{margin:0}.ca-exam-results-dialog__row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;display:flex}.ca-exam-results-dialog__label{color:var(--ui-text);font-weight:500}.attempt-progress{flex-direction:column;gap:4px;min-width:120px;display:flex}.attempt-progress__bar,.attempt-progress__fill{display:block}.attempt-progress__text{color:var(--ui-gray-500);font-size:.8125rem}.attempt-progress__count{color:var(--ui-gray-800);font-weight:600}.attempt-progress__bar{background-color:var(--ui-gray-200);border-radius:3px;width:100%;height:6px;overflow:hidden}.attempt-progress__fill{background-color:var(--ui-primary-500);border-radius:3px;height:100%;transition:width .3s}.attempt-progress__fill--complete{background-color:var(--ui-success-accent)}.essay-grading-panel{flex-direction:column;gap:24px;height:100%;padding:24px;display:flex;overflow-y:auto}.essay-grading-panel__section{flex-direction:column;gap:8px;display:flex}.essay-grading-panel__section-title{text-transform:uppercase;letter-spacing:.025em;color:var(--ui-gray-500);margin:0;font-size:.8125rem;font-weight:600}.essay-grading-panel__question-text{color:var(--ui-gray-800);background-color:var(--ui-gray-50);border:1px solid var(--ui-gray-200);white-space:pre-wrap;border-radius:6px;padding:12px 16px;font-size:.9375rem;line-height:1.6}.essay-grading-panel__marking-guide{color:var(--ui-gray-500);background-color:var(--ui-warning-bg);border:1px solid var(--ui-warning-border);white-space:pre-wrap;border-radius:6px;padding:12px 16px;font-size:.875rem;line-height:1.5}.essay-grading-panel__student-answer{color:var(--ui-gray-800);background-color:var(--ui-surface);border:1px solid var(--ui-gray-200);white-space:pre-wrap;border-radius:6px;min-height:100px;padding:16px;font-size:.9375rem;line-height:1.6}.essay-grading-panel__grading{border-top:1px solid var(--ui-gray-200);flex-direction:column;gap:16px;padding-top:16px;display:flex}.essay-grading-panel__score-input-wrapper{align-items:center;gap:8px;display:flex}.essay-grading-panel__score-input.ui-input{width:96px}.essay-grading-panel__score-hint{color:var(--ui-gray-500);font-size:.875rem}.essay-grading-panel__feedback-input{resize:vertical;font-family:inherit;line-height:1.5}.essay-grading-panel__save-btn{align-self:flex-start}.paper-answer-sheet__meta{color:var(--ui-gray-500);flex-wrap:wrap;align-items:center;gap:.5rem;margin:0 0 .75rem;font-size:.875rem;display:flex}.paper-answer-sheet__file{color:var(--ui-gray-800);overflow-wrap:anywhere;font-weight:600}.paper-answer-sheet__late{margin-left:.25rem}.paper-answer-sheet__open{color:var(--ui-primary-600);margin-left:auto}.paper-answer-sheet__image{border:1px solid var(--ui-gray-200);border-radius:6px;max-width:100%;display:block}.paper-answer-sheet__pdf{border:1px solid var(--ui-gray-200);border-radius:6px;width:100%;height:70vh;display:block}.paper-answer-sheet__missing{background:var(--ui-warning-bg);border:1px solid var(--ui-warning-border);color:var(--ui-warning);border-radius:6px;margin:0;padding:.625rem .875rem;font-size:.875rem}.essay-grading-panel__ai-note{color:var(--ui-gray-500);margin:0 0 .5rem;font-size:.8125rem}.finalize-button-wrapper{flex-direction:column;align-items:flex-end;gap:.5rem;display:flex}.finalize-button__spinner.ui-spinner{border-width:2px;border-color:color-mix(in srgb, currentColor 40%, transparent);border-top-color:currentColor;width:1rem;height:1rem;display:inline-block}.finalize-button__tooltip{color:var(--ui-slate-500);margin:0;font-size:.8125rem;font-style:italic}.gradebook-grid-wrapper{border:1px solid var(--ui-slate-200);background:var(--ui-surface);border-radius:8px;max-width:44rem;position:relative;overflow:hidden}.gradebook-grid-scroll{overflow-x:auto}.gradebook-grid-table{table-layout:fixed;border-collapse:separate;border-spacing:0;width:100%;font-size:.875rem}.gradebook-grid-table thead{z-index:2;position:sticky;top:0}.gradebook-grid-table th{background:var(--ui-slate-50);text-align:center;border-bottom:1px solid var(--ui-slate-200);padding:.5rem .75rem;font-weight:600}.gradebook-grid-table .gradebook-col-student{text-align:left}.gradebook-col-overall{width:9.5rem}.gradebook-grid-table td{text-align:center;border-bottom:1px solid var(--ui-slate-100);font-variant-numeric:tabular-nums;padding:.5rem .75rem;transition:background-color .15s}.gradebook-grid-table tbody th{background:var(--ui-surface);border-bottom:1px solid var(--ui-slate-100);font-weight:400}.gradebook-grid-table tbody tr:hover td,.gradebook-grid-table tbody tr:hover th{background-color:var(--ui-slate-100)}.gradebook-student-name{text-overflow:ellipsis;white-space:nowrap;font-weight:500;display:block;overflow:hidden}.gradebook-overall-grade{color:var(--ui-slate-800);font-weight:600}.gradebook-overall-grade--none{color:var(--ui-slate-400);font-weight:400}.gradebook-cell{position:relative}.gradebook-cell--graded{background-color:var(--ui-success-bg)}.gradebook-cell--exempt{background-color:var(--ui-accent-50)}.gradebook-cell--submitted_ungraded{background-color:var(--ui-warning-bg)}.gradebook-cell-score{color:var(--ui-slate-800);font-weight:500}.gradebook-cell-exempt{color:var(--ui-accent-600);background:var(--ui-accent-100);letter-spacing:.05em;border-radius:4px;justify-content:center;align-items:center;padding:.125rem .375rem;font-size:.7rem;font-weight:700;display:inline-flex}.gradebook-cell-pending{color:var(--ui-warning-accent);font-size:.75rem}.gradebook-cell-empty{color:var(--ui-slate-400)}.gradebook-grid-empty{color:var(--ui-slate-500);text-align:center;justify-content:center;align-items:center;padding:3rem 2rem;display:flex}.gradebook-cell--graded.gradebook-cell--draft{background-color:var(--ui-slate-50)}.gradebook-cell-score--draft{color:var(--ui-slate-500);font-style:italic;font-weight:400}.gradebook-draft-marker{vertical-align:super;color:var(--ui-slate-400);margin-left:.2rem;font-size:.5rem;font-style:normal}.gradebook-grid-table tfoot th,.gradebook-grid-table tfoot td{z-index:1;background:var(--ui-slate-50);border-top:2px solid var(--ui-slate-200);border-bottom:none;font-weight:600;position:sticky;bottom:0}.gradebook-grid-table tfoot th{text-align:left}.gradebook-col-overall--drafts .gradebook-overall-grade{color:var(--ui-slate-600);font-style:italic;font-weight:400}.gradebook-col-overall--drafts .gradebook-overall-grade--none{color:var(--ui-slate-400);font-style:normal}.gradebook-basis-note{color:var(--ui-slate-600);margin:0 0 .5rem;font-size:.8125rem}.grade-weights{max-width:var(--admin-form-max);padding:0}.grade-weights__title{margin-bottom:.25rem}.grade-weights__description{color:var(--ui-gray-500);margin:0 0 1rem;font-size:.875rem}.grade-weights__error{margin-bottom:1rem}.grade-weights__col-weight{width:9rem}.grade-weights__col-actions{width:1%}.grade-weights__cell{border-bottom:1px solid var(--ui-gray-100);vertical-align:top;padding:.5rem 1rem}.grade-weights__cell--actions{text-align:right;white-space:nowrap;vertical-align:middle}.grade-weights__input--name{max-width:24rem}.grade-weights__weight{align-items:center;gap:.375rem;display:inline-flex}.grade-weights__input--weight{text-align:right;font-variant-numeric:tabular-nums;width:5.5rem}.grade-weights__suffix{color:var(--ui-gray-500)}.grade-weights__total{background-color:var(--ui-gray-50)}.grade-weights__total .grade-weights__cell{vertical-align:middle;border-bottom:none}.grade-weights__table .grade-weights__total-label{color:var(--ui-text);padding:.625rem 1rem;font-weight:600}.grade-weights__sum{text-align:right;font-variant-numeric:tabular-nums;min-width:5.5rem;color:var(--ui-text);font-weight:600;display:inline-block}.grade-weights__sum--invalid{color:var(--ui-warning-text)}.grade-weights__cell--status{white-space:nowrap}.grade-weights__status{font-size:.8125rem}.grade-weights__status--ok{color:var(--ui-success-solid)}.grade-weights__status--warning.ui-field-hint{color:var(--ui-warning-text)}.grade-weights__actions{justify-content:flex-end;gap:.5rem;margin-top:1rem;display:flex}.grade-weights__actions .grade-weights__add{margin-right:auto}.item-categories{margin-top:2rem}.item-categories__heading{color:var(--ui-text);margin:0 0 .25rem;font-size:1rem;font-weight:600}.item-categories__alert{margin-bottom:1rem}.grade-weights__table th.item-categories__item{white-space:normal;color:var(--ui-text);font-weight:500}.item-categories__title{display:block}.item-categories__type{color:var(--ui-gray-500);font-size:.75rem;font-weight:400;display:block}.item-categories__select{max-width:16rem}.essay-queue{border-right:1px solid var(--ui-gray-200);background-color:var(--ui-gray-50);flex-direction:column;height:100%;display:flex}.essay-queue__title{color:var(--ui-gray-800);border-bottom:1px solid var(--ui-gray-200);margin:0;padding:16px;font-size:.9375rem;font-weight:600}.essay-queue__loading{text-align:center;color:var(--ui-gray-500);padding:24px 16px;font-size:.875rem}.essay-queue__empty{text-align:center;color:var(--ui-gray-500);margin:0;padding:24px 16px;font-size:.875rem}.essay-queue__list{flex:1;margin:0;padding:0;list-style:none;overflow-y:auto}.essay-queue__item{border:none;border-bottom:1px solid var(--ui-gray-200);width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border-left:3px solid #0000;padding:12px 16px;transition:background-color .15s;display:block}.essay-queue__item:hover{background-color:var(--ui-gray-100)}.essay-queue__item:focus-visible{outline:2px solid var(--ui-focus);outline-offset:-2px}.essay-queue__item--selected{background-color:var(--ui-primary-50);border-left-color:var(--ui-primary-500)}.essay-queue__item-header{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.essay-queue__student-name{color:var(--ui-gray-800);font-size:.875rem;font-weight:500}.essay-queue__submitted-at{color:var(--ui-gray-500);font-size:.75rem}.ca-settings-subtitle{color:var(--ui-gray-700);margin:0 0 .625rem;font-size:.9375rem;font-weight:600}.ca-settings-row{align-items:center;gap:.75rem;display:flex}.ca-settings-row__label{min-width:80px;color:var(--ui-gray-700);font-weight:600}.ca-settings-row__value{margin:0;font-weight:500}.ca-settings-schedules{margin-bottom:0}.ca-settings-schedules th.ca-settings-schedules__type{text-align:left;width:200px;color:inherit;background:0 0;font-weight:500}.ca-settings-schedules__actions{justify-content:flex-end;align-items:center;gap:.75rem;display:flex}.ca-settings-schedule-edit{font-size:.85rem}.ca-settings-cell--name{min-width:120px}.ca-settings-cell--amount{min-width:100px}.ca-term-months{align-items:center;gap:.5rem;display:flex}.ca-term-months .ui-label{white-space:nowrap}.ca-term-months .ui-input{width:4.5rem}@media (width<=640px){.ca-settings-schedules,.ca-settings-schedules tbody,.ca-settings-schedules tr,.ca-settings-schedules th,.ca-settings-schedules td{display:block;width:auto!important}.ca-settings-schedules tr{border-bottom:1px solid var(--ui-gray-200);padding:.5rem 0}.ca-settings-schedules th,.ca-settings-schedules td{border:none;padding:.25rem 0}.ca-settings-schedules td:empty{display:none}.ca-settings-schedules__actions{flex-wrap:wrap;justify-content:flex-start}}.ca-course-info{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;margin:0;display:grid}.ca-course-info__field{margin:0}.ca-course-info__field--wide{grid-column:1/-1}.ca-course-info__label{letter-spacing:.05em;text-transform:uppercase;color:var(--ui-gray-500);margin-bottom:.25rem;font-size:.75rem;font-weight:600}.ca-course-info__value{margin:0}.ca-invoice-preview{margin-bottom:1rem}.ca-invoice-preview__amount{width:110px}.ca-invoice-preview__status{flex-wrap:wrap;gap:.25rem;display:inline-flex}.ca-pay-channels{gap:1rem;display:grid}.ca-pay-channel{border:1px solid var(--ui-gray-200);border-radius:var(--ui-radius-lg);padding:.875rem 1rem}.ca-pay-channel__title{margin:0 0 .625rem;font-size:.875rem;font-weight:600}.ca-pay-channel__details .ca-course-info__value{overflow-wrap:anywhere}.ca-pay-channel__hint{margin-top:.25rem;display:block}.ca-pay-channel__account+.ca-pay-channel__account{border-top:1px solid var(--ui-gray-200);margin-top:.75rem;padding-top:.75rem}.ca-pay-channel__account-label{margin:0 0 .375rem;font-size:.875rem;font-weight:600}.ca-pay-channel__source{color:var(--ui-text-muted);margin:.625rem 0 0;font-size:.8125rem}.ca-color-hint{color:var(--ui-gray-500);margin:.5rem 0 0;font-size:.8125rem}.ca-grade-settings__select{max-width:16rem}.ca-course-images{flex-direction:column;gap:1.25rem;margin-top:.25rem;display:flex}.ca-course-banner-fallback{width:100%;height:100%;display:block}.ca-card-instructors{flex-direction:column;gap:.5rem;margin-top:.25rem;display:flex}.ca-card-instructors-list{flex-direction:column;gap:.375rem;margin:0;padding:0;list-style:none;display:flex}.ca-card-instructor{align-items:center;gap:.5rem;display:flex}.ca-card-instructor-name{min-width:0;color:var(--ui-gray-900);flex:1;font-size:.875rem;font-weight:500}.ca-card-instructors-actions{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.ui-input.ca-card-instructors-select{width:auto;min-width:14rem}.ca-telegram-status{align-items:flex-start;gap:1rem;display:flex}.ca-telegram-status__logo{flex-shrink:0}.ca-telegram-status__body{flex:1;min-width:0}.ca-telegram-status__description{color:var(--ui-text-muted);margin:0;font-size:.9375rem;line-height:1.6}.ca-telegram-status__details{background-color:var(--ui-gray-50);border:1px solid var(--ui-gray-200);border-radius:var(--ui-radius-lg);margin:1rem 0 0;padding:1rem}.ca-telegram-status__field{flex-direction:column;gap:.125rem;margin:0 0 .75rem;display:flex}.ca-telegram-status__field:last-child{margin-bottom:0}.ca-telegram-status__label{color:var(--ui-gray-500);text-transform:uppercase;letter-spacing:.04em;font-size:.8125rem;font-weight:500}.ca-telegram-status__value{color:var(--ui-text);margin:0;font-size:.9375rem}.asgn-grading{max-width:900px;padding:1.5rem}.asgn-grading__section{border-bottom:1px solid var(--ui-slate-200);margin-bottom:1.5rem;padding-bottom:1.5rem}.asgn-grading__section-title{color:var(--ui-slate-800);margin:0 0 .75rem;font-size:1rem;font-weight:600}.asgn-grading__section-title--flush{margin:0}.asgn-grading__grade-status{border:1px solid var(--ui-slate-200);background:var(--ui-slate-50);color:var(--ui-slate-800);border-radius:.5rem;flex-wrap:wrap;align-items:center;gap:.5rem;margin:0 0 1.5rem;padding:.75rem 1rem;display:flex}.asgn-grading__grade-status-note{color:var(--ui-slate-600);font-size:.875rem}.asgn-grading__empty{color:var(--ui-slate-500);margin:0;font-style:italic}.asgn-grading__files{flex-direction:column;gap:.5rem;display:flex}.asgn-grading__file-row{border:1px solid var(--ui-slate-200);background:var(--ui-surface);border-radius:6px;justify-content:space-between;align-items:center;padding:.75rem 1rem;display:flex}.asgn-grading__file-info{flex-direction:column;gap:.125rem;display:flex}.asgn-grading__file-name{color:var(--ui-slate-800);font-weight:500}.asgn-grading__file-meta{color:var(--ui-slate-500);font-size:.75rem}.asgn-grading__late-badge{margin-left:.5rem}.asgn-grading__rubric{flex-direction:column;gap:1rem;display:flex}.asgn-grading__criterion{border:1px solid var(--ui-slate-200);background:var(--ui-surface);border-radius:8px;padding:1rem}.asgn-grading__criterion-header{justify-content:space-between;align-items:center;margin-bottom:.25rem;display:flex}.asgn-grading__criterion-name{color:var(--ui-slate-800);font-weight:600}.asgn-grading__criterion-max{color:var(--ui-slate-500);font-size:.875rem}.asgn-grading__criterion-desc{color:var(--ui-slate-500);margin:.25rem 0 .5rem;font-size:.8125rem}.asgn-grading__criterion-input{border:1px solid var(--ui-slate-200);border-radius:4px;width:80px;padding:.4rem .5rem;font-size:.9375rem}.asgn-grading__criterion-input:focus{border-color:var(--ui-accent-interactive);box-shadow:0 0 0 2px var(--ui-primary-100);outline:none}.asgn-grading__rubric-total{background:var(--ui-slate-50);border:1px solid var(--ui-slate-200);border-radius:6px;padding:.75rem 1rem;font-size:.9375rem}.asgn-grading__score-row{align-items:center;gap:.5rem;display:flex}.asgn-grading__score-input{border:1px solid var(--ui-slate-200);border-radius:6px;width:100px;padding:.5rem;font-size:1rem}.asgn-grading__score-input:focus{border-color:var(--ui-accent-interactive);box-shadow:0 0 0 2px var(--ui-primary-100);outline:none}.asgn-grading__score-max{color:var(--ui-slate-500);font-size:.9375rem}.asgn-grading__feedback{resize:vertical;width:100%}.asgn-grading__footer{border-top:1px solid var(--ui-slate-200);align-items:center;gap:.5rem;margin-top:1.5rem;padding-top:1rem;display:flex}.asgn-grading__nav-info{color:var(--ui-slate-500);font-size:.875rem}.asgn-grading__autograde-btn{margin-left:auto}.asgn-grading__ai-panel{background:var(--ui-slate-50);border:1px solid var(--ui-slate-200);border-radius:8px;padding:1rem 1.25rem}.asgn-grading__ai-header{align-items:center;gap:.75rem;margin-bottom:.875rem;display:flex}.asgn-grading__ai-score-row{flex-wrap:wrap;align-items:center;gap:1.25rem;margin-bottom:.75rem;display:flex}.asgn-grading__ai-score-value{color:var(--ui-slate-800);font-size:1.375rem;font-weight:700}.asgn-grading__ai-confidence{color:var(--ui-slate-500);align-items:center;gap:.5rem;font-size:.8125rem;display:flex}.asgn-grading__ai-confidence-bar{background:var(--ui-slate-200);border-radius:3px;width:80px;height:6px;display:inline-block;overflow:hidden}.asgn-grading__ai-confidence-fill{border-radius:3px;height:100%;transition:width .3s;display:block}.asgn-grading__ai-confidence-fill--high{background:var(--ui-success-accent)}.asgn-grading__ai-confidence-fill--medium{background:var(--ui-warning-accent)}.asgn-grading__ai-confidence-fill--low{background:var(--ui-danger-accent)}.asgn-grading__ai-routing-reason{color:var(--ui-warning);background:var(--ui-warning-bg);border:1px solid var(--ui-warning-border);border-radius:6px;margin:0 0 .75rem;padding:.5rem .75rem;font-size:.875rem}.asgn-grading__ai-feedback-block{margin-bottom:.875rem;font-size:.875rem}.asgn-grading__ai-feedback-text{color:var(--ui-slate-800);margin:.35rem 0 0;padding-left:1.1rem;font-size:.8125rem;line-height:1.5}.asgn-grading__ai-feedback-text li{margin-bottom:.15rem}.asgn-grading__ai-criteria{flex-direction:column;gap:.625rem;margin-bottom:.875rem;font-size:.875rem;display:flex}.asgn-grading__ai-criterion-row{background:var(--ui-surface);border:1px solid var(--ui-slate-200);border-radius:6px;padding:.625rem .75rem}.asgn-grading__ai-criterion-label{color:var(--ui-slate-800);justify-content:space-between;margin-bottom:.25rem;font-weight:600;display:flex}.asgn-grading__ai-criterion-pts{color:var(--ui-slate-500);font-weight:500}.asgn-grading__ai-criterion-reasoning{color:var(--ui-slate-500);margin:0;font-size:.8125rem;line-height:1.5}.asgn-grading__ai-questions{flex-direction:column;gap:.75rem;margin-bottom:.875rem;font-size:.875rem;display:flex}.asgn-grading__ai-question{background:var(--ui-surface);border:1px solid var(--ui-slate-200);border-radius:8px;flex-direction:column;gap:.5rem;padding:.75rem .875rem;display:flex}.asgn-grading__ai-question-group{background:var(--ui-slate-50);border:1px solid var(--ui-slate-200);border-radius:10px;flex-direction:column;gap:.625rem;padding:.625rem;display:flex}.asgn-grading__ai-question-group-title{color:var(--ui-slate-800);margin:0 .125rem;font-size:.8125rem;font-weight:700}.asgn-grading__ai-stem{color:var(--ui-slate-800);margin:0 .125rem;font-size:.8125rem;line-height:1.5}.asgn-grading__ai-subgroup{border-left:2px solid var(--ui-slate-200);flex-direction:column;gap:.625rem;padding-left:.875rem;display:flex}.asgn-grading__ai-subgroup-head{align-items:baseline;gap:.5rem;display:flex}.asgn-grading__ai-subgroup-label{color:var(--ui-slate-800);flex-shrink:0;font-size:.8125rem;font-weight:700}.asgn-grading__ai-subgroup-head .asgn-grading__ai-stem{margin:0}.asgn-grading__ai-snapshot{background:var(--ui-surface);border:1px solid var(--ui-slate-300);cursor:zoom-in;border-radius:6px;align-self:flex-start;max-width:100%;padding:.25rem;line-height:0}.asgn-grading__ai-snapshot:hover:not(:disabled),.asgn-grading__ai-snapshot:focus-visible{border-color:var(--ui-accent-interactive);box-shadow:0 0 0 2px var(--ui-primary-100)}.asgn-grading__ai-snapshot:disabled{cursor:default;opacity:.6}.asgn-grading__ai-summary-points{color:var(--ui-slate-800);margin:0;padding-left:1.1rem;font-size:.8125rem;line-height:1.5}.asgn-grading__ai-summary-points li{margin-bottom:.15rem}.asgn-grading__ai-question-header{justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.asgn-grading__ai-question-text{color:var(--ui-slate-800);font-weight:600}.asgn-grading__ai-question-status{color:var(--ui-slate-600);background:var(--ui-slate-100);white-space:nowrap;border-radius:4px;flex-shrink:0;padding:.15rem .5rem;font-size:.75rem;font-weight:600}.asgn-grading__ai-question-status--needs-look{color:var(--ui-orange-800);background:var(--ui-orange-50)}.asgn-grading__ai-question-status--regrading{color:var(--ui-yellow-800);background:var(--ui-yellow-100)}.asgn-grading__ai-question-score-row{flex-wrap:wrap;align-items:center;gap:.75rem;font-size:.8125rem;display:flex}.asgn-grading__ai-question-rubric-tag{color:var(--ui-slate-500);background:var(--ui-slate-100);border-radius:4px;padding:.1rem .45rem;font-size:.75rem}.asgn-grading__ai-question-number{text-transform:uppercase;letter-spacing:.03em;color:var(--ui-slate-500);margin-bottom:.15rem;font-size:.75rem;font-weight:700;display:block}.asgn-grading__ai-question-actions{flex-wrap:wrap;gap:.5rem;display:flex}.asgn-grading__q-btn{border:1px solid var(--ui-slate-300);background:var(--ui-surface);color:var(--ui-slate-800);cursor:pointer;border-radius:6px;padding:.3rem .7rem;font-size:.8125rem;font-weight:500}.asgn-grading__q-btn:hover:not(:disabled){background:var(--ui-slate-50);border-color:var(--ui-slate-400)}.asgn-grading__q-btn:disabled{opacity:.5;cursor:not-allowed}.asgn-grading__q-btn--primary{background:var(--ui-accent-interactive);border-color:var(--ui-accent-interactive);color:var(--ui-on-accent)}.asgn-grading__q-btn--primary:hover:not(:disabled){background:var(--ui-accent-interactive-hover);border-color:var(--ui-accent-interactive-hover)}.asgn-grading__ai-regrading{color:var(--ui-yellow-800);background:var(--ui-yellow-50);border:1px solid var(--ui-warning-border);border-radius:6px;margin:0;padding:.45rem .7rem;font-size:.8125rem}.asgn-grading__ai-crop-loading,.asgn-grading__ai-crop-missing{color:var(--ui-slate-500);margin:0;font-size:.8125rem}.asgn-grading__ai-manual-form{background:var(--ui-slate-50);border:1px solid var(--ui-slate-200);border-radius:6px;flex-direction:column;gap:.5rem;padding:.6rem .75rem;display:flex}.asgn-grading__ai-manual-label{color:var(--ui-slate-800);align-items:center;gap:.5rem;font-size:.8125rem;font-weight:600;display:flex}.asgn-grading__ai-manual-label .asgn-grading__criterion-input{width:6rem}.asgn-grading__ai-instructor-comment{color:var(--ui-accent-800);background:var(--ui-accent-50);border-radius:6px;margin:0;padding:.45rem .7rem;font-size:.8125rem}.asgn-grading__ai-use-marks{color:var(--ui-slate-500);flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:.875rem;font-size:.8125rem;display:flex}.answer-crop{flex-direction:column;gap:6px;max-width:100%;display:flex}.answer-crop__canvas{border:1px solid var(--ui-slate-200);background:var(--ui-surface);border-radius:4px;max-width:100%;height:auto;display:block}.answer-crop__error{color:var(--ui-danger-text);margin:0;font-size:.8125rem}.asgn-grading__ai-transcription{margin-top:.25rem}.asgn-grading__ai-transcription-text{background:var(--ui-surface);border:1px solid var(--ui-slate-200);white-space:pre-wrap;word-break:break-word;color:var(--ui-slate-800);border-radius:6px;max-height:300px;margin:.5rem 0 0;padding:.75rem;font-family:inherit;font-size:.8125rem;line-height:1.6;overflow-y:auto}.session-form-fieldset{border:1px solid var(--ui-gray-200);border-radius:var(--ui-radius-md);flex-direction:column;gap:.5rem;margin:0;padding:.75rem 1rem;display:flex}.session-form-fieldset--error{border-color:var(--ui-danger-accent)}.session-form-radio-group{flex-direction:column;gap:.5rem;display:flex}.session-form-radio-label{color:var(--ui-gray-800);cursor:pointer;align-items:center;gap:.5rem;font-size:.875rem;display:flex}.session-form-radio-label input[type=radio]{accent-color:var(--ui-primary-500);cursor:pointer;flex-shrink:0}.session-form-radio-label input[type=radio]:disabled{cursor:not-allowed}.session-form-fieldset>legend{padding:0 .25rem}.sc-list{flex-direction:column;gap:0;display:flex}.sc-list__toolbar{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.sc-list__empty{color:var(--ui-gray-500);margin:1.5rem 0;font-size:.9375rem}.sc-card-list{flex-direction:column;gap:1rem;margin:0;padding:0;list-style:none;display:flex}.sc-card{background:var(--ui-surface);border:1px solid var(--ui-gray-200);border-radius:var(--ui-radius-lg);padding:.75rem 1rem;transition:box-shadow .15s}.sc-card:hover{box-shadow:var(--ui-shadow-md)}.sc-card--live{background:var(--ui-success-bg);border-color:var(--ui-success-border)}.sc-card__header-row{align-items:center;gap:.5rem;margin-bottom:.375rem;display:flex}.sc-card__topic{color:var(--ui-text);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;margin:0;font-size:.9375rem;font-weight:600;overflow:hidden}.sc-card__header-right{flex-shrink:0;align-items:center;gap:.375rem;display:flex}.sc-recording-indicator{font-size:.875rem;line-height:1}.sc-card__body-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;display:flex}.sc-meta-row{color:var(--ui-text-muted);flex-wrap:wrap;align-items:center;gap:.25rem;font-size:.8125rem;display:flex}.sc-meta-item{align-items:center;gap:.2rem;display:inline-flex}.sc-meta-sep{color:var(--ui-gray-400);-webkit-user-select:none;user-select:none}.sc-action-row{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.sc-recording-row{flex-wrap:wrap;align-items:center;gap:.625rem;display:flex}.sc-vimeo-embed{aspect-ratio:16/9;border-radius:var(--ui-radius);background:#000;width:100%;max-width:560px;margin-top:.5rem;overflow:hidden}.sc-vimeo-embed iframe{border:none;width:100%;height:100%;display:block}.sc-recording-expanded{flex-direction:column;gap:.75rem;margin-top:.625rem;display:flex}.sc-recording-part{border-top:1px solid var(--ui-gray-200);padding-top:.625rem}.sc-recording-part:first-child{border-top:none;padding-top:0}.sc-recording-part-title{color:var(--ui-text-muted);margin:0 0 .375rem;font-size:.8125rem;font-weight:500}@media (width<=480px){.sc-meta-row{gap:.25rem .375rem}.sc-action-row{gap:.375rem}}.asrs-delivery-panel{padding:0}.asrs-delivery-result{background:var(--ui-success-bg);border:1px solid var(--ui-success-border);color:var(--ui-success-text);border-radius:6px;margin:0 0 1rem;padding:.625rem 1rem;font-size:.875rem}.asrs-delivery-error{background:var(--ui-danger-bg);border:1px solid var(--ui-danger-border);color:var(--ui-danger-text);border-radius:6px;margin-bottom:1rem;padding:.75rem 1rem;font-size:.875rem}.asrs-delivery-empty{color:var(--ui-gray-500);padding:2rem 0;font-size:.875rem}.asrs-delivery-tree-actions{gap:.5rem;margin-bottom:.75rem;display:flex}.asrs-delivery-tree{max-width:var(--admin-readable-max);flex-direction:column;gap:0;display:flex}.asrs-section-node{border-bottom:1px solid var(--ui-gray-200)}.asrs-section-node:last-child{border-bottom:none}.asrs-section-depth-1>.asrs-section-row{padding-left:0}.asrs-section-depth-2>.asrs-section-row{padding-left:1.5rem}.asrs-section-depth-3>.asrs-section-row{padding-left:3rem}.asrs-section-depth-4>.asrs-section-row{padding-left:4.5rem}.asrs-section-row{align-items:center;gap:.5rem;min-height:2.75rem;padding:.625rem .75rem;display:flex}.asrs-section-row:hover{background:var(--ui-gray-50)}.asrs-section-expand{cursor:pointer;width:1.5rem;height:1.5rem;color:var(--ui-gray-500);background:0 0;border:none;border-radius:3px;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:flex}.asrs-section-expand:hover{background:var(--ui-gray-200)}.asrs-section-expand:focus-visible{outline:2px solid var(--ui-focus);outline-offset:1px}.asrs-section-expand--leaf{pointer-events:none;cursor:default}.asrs-expand-icon{font-size:.625rem;line-height:1}.asrs-section-code{color:var(--ui-gray-500);flex-shrink:0;min-width:2.5rem;font-size:.8125rem;font-weight:600}.asrs-section-title{color:var(--ui-text);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:.875rem;overflow:hidden}.asrs-section-delivered-at{color:var(--ui-success-text);background:var(--ui-success-bg-strong);white-space:nowrap;border-radius:9999px;flex-shrink:0;padding:.125rem .5rem;font-size:.75rem}.asrs-delivery-label{cursor:pointer;-webkit-user-select:none;user-select:none;color:var(--ui-gray-500);border-radius:4px;flex-shrink:0;align-items:center;gap:.375rem;padding:.25rem .5rem;font-size:.8125rem;font-weight:500;transition:background .15s;display:inline-flex}.asrs-delivery-label:hover{background:var(--ui-gray-100)}.asrs-delivery-label--on{color:var(--ui-success-text)}.asrs-delivery-checkbox{cursor:pointer;width:1rem;height:1rem;accent-color:var(--ui-success-solid);flex-shrink:0}.asrs-delivery-checkbox:disabled{cursor:not-allowed;opacity:.6}.asrs-delivery-checkbox:focus-visible{outline:2px solid var(--ui-focus);outline-offset:2px}.asrs-delivery-spinner.ui-spinner{border-width:2px;flex-shrink:0;width:.875rem;height:.875rem}.asrs-delivery-text{white-space:nowrap}.asrs-section-children{flex-direction:column;display:flex}.sqb-exam-date{gap:.75rem;display:flex}.sqb-exam-date__field{flex:1}.sqb-importing-name{opacity:.7}.afc-tag.sqb-importing-tag{background-color:var(--ui-primary-100);color:var(--ui-primary-700)}.sqb-import-progress{align-items:center;gap:.5rem;min-width:180px;display:flex}.sqb-import-progress__track{background:var(--ui-slate-200);border-radius:3px;flex:1;height:6px;overflow:hidden}.sqb-import-progress__bar{background:var(--ui-accent-interactive);border-radius:3px;height:100%;transition:width .3s}.sqb-import-progress__count{color:var(--ui-slate-500);white-space:nowrap;font-size:.75rem}p.sqb-row-error{margin-top:.25rem}
