:root {
  --ui-color-action: var(--ui-primitive-brand-500);
  --ui-color-action-hover: var(--ui-primitive-brand-600);
  --ui-color-action-active: var(--ui-primitive-brand-700);
  --ui-color-action-muted: var(--ui-primitive-brand-50);
  --ui-color-action-text: var(--ui-color-action);
  --ui-color-secondary-bg: var(--ui-primitive-neutral-200);

  --ui-color-success: var(--ui-primitive-success-600);
  --ui-color-success-muted: var(--ui-primitive-success-50);
  --ui-color-success-strong: var(--ui-primitive-success-600);
  --ui-color-success-on-muted: var(--ui-color-success-strong);
  --ui-color-warning: var(--ui-primitive-warning-600);
  --ui-color-warning-muted: var(--ui-primitive-warning-50);
  --ui-color-warning-strong: var(--ui-primitive-warning-600);
  --ui-color-warning-on-muted: var(--ui-color-warning-strong);
  --ui-color-danger: var(--ui-primitive-danger-600);
  --ui-color-danger-muted: var(--ui-primitive-danger-50);
  --ui-color-danger-strong: var(--ui-primitive-danger-600);
  --ui-color-danger-on-muted: var(--ui-color-danger-strong);
  --ui-color-info: var(--ui-primitive-brand-500);
  --ui-color-info-muted: var(--ui-primitive-brand-50);
  --ui-color-info-strong: var(--ui-primitive-brand-700);
  --ui-color-info-on-muted: var(--ui-color-info-strong);

  --ui-surface-base: var(--ui-primitive-white);
  --ui-surface-muted: var(--ui-primitive-neutral-50);
  --ui-surface-raised: var(--ui-primitive-white);
  --ui-surface-inverse: var(--ui-primitive-neutral-900);
  --ui-surface-glass: rgba(255, 255, 255, 0.6);
  --ui-surface-glass-strong: rgba(255, 255, 255, 0.86);
  --ui-surface-transparent: transparent;
  --ui-surface-hover: rgba(0, 0, 0, 0.05);
  --ui-surface-active: rgba(0, 0, 0, 0.08);
  --ui-surface-shell: var(--ui-surface-base);
  --ui-surface-panel: var(--ui-surface-raised);
  --ui-surface-card: var(--ui-surface-raised);
  --ui-surface-card-hover: var(--ui-primitive-neutral-100);
  --ui-surface-card-active: var(--ui-surface-active);
  --ui-surface-modal: var(--ui-surface-raised);
  --ui-surface-toolbar: var(--ui-surface-glass);
  --ui-surface-empty: var(--ui-primitive-neutral-100);

  --ui-border-subtle: var(--ui-primitive-neutral-200);
  --ui-border-strong: var(--ui-primitive-neutral-300);
  --ui-border-card: var(--ui-border-strong);
  --ui-border-row: var(--ui-border-strong);
  --ui-border-glass: rgba(0, 0, 0, 0.16);
  --ui-border-selected: var(--ui-color-action);
  --ui-header-accent-neutral: #424245;

  --ui-text-primary: var(--ui-primitive-neutral-900);
  --ui-text-secondary: var(--ui-primitive-neutral-600);
  --ui-text-muted: var(--ui-primitive-neutral-500);
  --ui-text-inverse: var(--ui-primitive-white);
  --ui-text-on-accent: var(--ui-primitive-white);

  --ui-icon: var(--ui-text-secondary);
  --ui-icon-filter-muted: none;
  --ui-focus-ring: var(--ui-primitive-focus-ring);
  --ui-shadow-sm: var(--ui-primitive-shadow-sm);
  --ui-shadow-md: var(--ui-primitive-shadow-md);
  --ui-shadow-panel: 0 4px 18px rgba(15, 23, 42, 0.1), 0 1px 3px rgba(15, 23, 42, 0.06);
  --ui-shadow-card: 0 2px 10px rgba(15, 23, 42, 0.1), 0 1px 2px rgba(15, 23, 42, 0.06);
  --ui-shadow-highlight-warning: 0 0 0 3px color-mix(in srgb, var(--ui-color-warning) 45%, transparent);
  --ui-backdrop-blur-sm: 8px;
  --ui-backdrop-blur-md: 10px;
  --ui-backdrop-blur-lg: 18px;
  --ui-filter-hover-soft: brightness(0.97);
  --ui-filter-active-soft: brightness(0.95);
  --ui-filter-busy: saturate(0.9) grayscale(0.15);
  --ui-filter-muted: saturate(0.9);
  --ui-opacity-list-busy: 0.55;
  --ui-backdrop-saturate: saturate(180%);
  --ui-skeleton-shimmer-motion: 1200ms var(--ui-motion-easing-standard) infinite;
  --ui-home-hero-cursor-animation: 1200ms steps(1, end) infinite;
  --ui-home-hero-block-animation: 800ms var(--ui-motion-easing-emphasized) forwards;
  --ui-home-hero-card-animation: 700ms var(--ui-motion-easing-emphasized) forwards;
  --ui-home-hero-block-delay-1: 50ms;
  --ui-home-hero-block-delay-2: 150ms;
  --ui-home-hero-block-delay-3: 250ms;
  --ui-home-hero-block-delay-4: 350ms;
  --ui-home-hero-block-delay-5: 450ms;
  --ui-home-hero-card-delay: 80ms;
  --ui-radius-none: 0;
  --ui-radius-control: var(--ui-radius-sm);
  --ui-radius-card: var(--ui-radius-lg);
  --ui-radius-panel: var(--ui-radius-xl);
  --ui-radius-shell: 1.125rem;
  --ui-radius-modal: var(--ui-radius-lg);
  --ui-font-size-xs: 0.75rem;
  --ui-font-size-sm: 0.875rem;
  --ui-font-size-md: 1rem;
  --ui-font-weight-medium: 500;
  --ui-font-weight-semibold: 600;
  --ui-font-weight-bold: 700;
  --ui-state-hover-bg: var(--ui-surface-hover);
  --ui-state-active-bg: var(--ui-surface-active);
  --ui-state-selected-bg: var(--ui-color-action-muted);
  --ui-state-disabled-opacity: 0.62;
  --ui-state-busy-opacity: 0.72;
  --ui-state-muted-opacity: 0.68;
  --ui-section-gap: var(--ui-space-4);
  --ui-card-gap: var(--ui-space-3);
  --ui-row-gap: var(--ui-space-3);
  --ui-toolbar-gap: var(--ui-space-3);
  --ui-card-bg: var(--ui-surface-card);
  --ui-card-border: var(--ui-border-card);
  --ui-card-radius: var(--ui-radius-card);
  --ui-card-shadow: var(--ui-shadow-card);
  --ui-card-hover-bg: var(--ui-surface-card-hover);
  --ui-card-hover-border: var(--ui-border-strong);
  --ui-card-selected-bg: var(--ui-state-selected-bg);
  --ui-card-selected-border: var(--ui-border-selected);
  --ui-card-padding: var(--ui-space-3);
  --ui-list-row-bg: var(--ui-surface-muted);
  --ui-list-row-border: var(--ui-border-row);
  --ui-list-row-radius: var(--ui-radius-md);
  --ui-list-row-padding: var(--ui-space-2) var(--ui-space-3);
  --ui-list-row-hover-bg: var(--ui-state-hover-bg);
  --ui-list-row-active-bg: var(--ui-state-active-bg);
  --ui-list-row-selected-bg: var(--ui-state-selected-bg);
  --ui-toolbar-bg: var(--ui-surface-toolbar);
  --ui-toolbar-border: var(--ui-border-strong);
  --ui-toolbar-radius: var(--ui-radius-panel);
  --ui-toolbar-padding: var(--ui-space-2);
  --ui-toolbar-sticky-bg: var(--ui-surface-header-solid);
  --ui-empty-bg: var(--ui-surface-empty);
  --ui-empty-border: var(--ui-border-strong);
  --ui-empty-radius: var(--ui-radius-panel);
  --ui-empty-padding: var(--ui-space-5);
  --ui-btn-radius: var(--ui-radius-sm);
  --ui-btn-font-size: var(--ui-font-size-sm);
  --ui-btn-font-weight: var(--ui-font-weight-medium);
  --ui-btn-gap: 0.375rem;
  --ui-btn-height: 2rem;
  --ui-btn-padding: 0.375rem 0.75rem;
  --ui-btn-sm-height: 1.875rem;
  --ui-btn-sm-padding: 0.3125rem 0.625rem;
  --ui-btn-xs-height: 1.625rem;
  --ui-btn-xs-padding: 0.1875rem 0.5rem;
  --ui-btn-lg-height: 2.25rem;
  --ui-btn-lg-padding: 0.5rem 0.875rem;
  --ui-btn-primary-bg: var(--ui-color-action);
  --ui-btn-primary-border: var(--ui-color-action);
  --ui-btn-primary-text: var(--ui-text-on-accent);
  --ui-btn-primary-hover-bg: var(--ui-color-action-hover);
  --ui-btn-primary-hover-border: var(--ui-color-action-hover);
  --ui-btn-primary-active-bg: var(--ui-color-action-active);
  --ui-btn-primary-active-border: var(--ui-color-action-active);
  --ui-btn-toggle-checked-bg: var(--ui-btn-primary-bg);
  --ui-btn-toggle-checked-border: var(--ui-btn-primary-border);
  --ui-btn-toggle-checked-text: var(--ui-btn-primary-text);
  --ui-btn-secondary-bg: var(--ui-surface-transparent);
  --ui-btn-secondary-border: var(--ui-border-strong);
  --ui-btn-secondary-text: var(--ui-text-primary);
  --ui-btn-secondary-hover-bg: var(--ui-surface-hover);
  --ui-btn-secondary-hover-border: var(--ui-border-strong);
  --ui-btn-secondary-active-bg: var(--ui-surface-active);
  --ui-btn-secondary-active-border: var(--ui-border-strong);
  --ui-btn-danger-bg: var(--ui-surface-transparent);
  --ui-btn-danger-border: color-mix(in srgb, var(--ui-color-danger) 62%, var(--ui-surface-raised));
  --ui-btn-danger-text: var(--ui-color-danger-strong);
  --ui-btn-danger-hover-bg: color-mix(in srgb, var(--ui-color-danger) 12%, transparent);
  --ui-btn-danger-hover-border: color-mix(in srgb, var(--ui-color-danger) 74%, var(--ui-surface-raised));
  --ui-btn-danger-active-bg: color-mix(in srgb, var(--ui-color-danger) 18%, transparent);
  --ui-btn-danger-active-border: color-mix(in srgb, var(--ui-color-danger) 82%, var(--ui-surface-raised));
  --ui-btn-success-bg: var(--ui-surface-transparent);
  --ui-btn-success-border: color-mix(in srgb, var(--ui-color-success) 62%, var(--ui-surface-raised));
  --ui-btn-success-text: var(--ui-color-success-strong);
  --ui-btn-success-hover-bg: color-mix(in srgb, var(--ui-color-success) 12%, transparent);
  --ui-btn-success-hover-border: color-mix(in srgb, var(--ui-color-success) 74%, var(--ui-surface-raised));
  --ui-btn-success-active-bg: color-mix(in srgb, var(--ui-color-success) 18%, transparent);
  --ui-btn-success-active-border: color-mix(in srgb, var(--ui-color-success) 82%, var(--ui-surface-raised));
  --ui-btn-info-bg: var(--ui-surface-transparent);
  --ui-btn-info-border: color-mix(in srgb, var(--ui-color-info) 62%, var(--ui-surface-raised));
  --ui-btn-info-text: var(--ui-color-info-strong);
  --ui-btn-info-hover-bg: color-mix(in srgb, var(--ui-color-info) 12%, transparent);
  --ui-btn-info-hover-border: color-mix(in srgb, var(--ui-color-info) 74%, var(--ui-surface-raised));
  --ui-btn-info-active-bg: color-mix(in srgb, var(--ui-color-info) 18%, transparent);
  --ui-btn-info-active-border: color-mix(in srgb, var(--ui-color-info) 82%, var(--ui-surface-raised));
  --ui-status-pill-bg: var(--ui-surface-muted);
  --ui-status-pill-border: var(--ui-border-subtle);
  --ui-status-pill-text: var(--ui-text-secondary);
  --ui-table-bg: var(--ui-surface-raised);
  --ui-table-border: var(--ui-border-subtle);
  --ui-table-head-bg: var(--ui-surface-muted);
  --ui-table-cell-padding: var(--ui-space-2) var(--ui-space-3);
  --ui-table-dense-cell-padding: 0.25rem var(--ui-space-2);
  --ui-table-shell-radius: var(--ui-radius-sm);
  --ui-table-row-hover-bg: var(--ui-state-hover-bg);
  --ui-table-row-selected-bg: var(--ui-state-selected-bg);

  --ui-layout-header-height: 40px;
  --ui-space-toast-offset: var(--ui-space-6);
  --ui-modal-width-create-class: 560px;
  --ui-modal-width-md: 1080px;
  --ui-modal-width-lg: 1620px;
  --ui-modal-width-xl: 1280px;
  --ui-modal-width-answers: 1430px;
  --ui-modal-width-clerical-answers: 1960px;
  --ui-modal-width-clerical-answers-table: 1860px;
  --ui-modal-width-clerical-template-settings: 1000px;
  --ui-modal-width-clerical-statuses: 1100px;
  --ui-modal-width-rating-quick-settings: 1480px;
  --ui-modal-width-rating-class-formation: 1836px;

  --ui-surface-header: rgba(245, 245, 247, 0.6);
  --ui-surface-header-solid: rgba(250, 250, 250, 0.98);
  --ui-surface-header-hover: rgba(0, 0, 0, 0.06);
  --ui-surface-header-active: rgba(0, 0, 0, 0.06);
  --ui-border-header: rgba(0, 0, 0, 0.1);
  --ui-header-border-gradient-start: rgba(0, 0, 0, 0);
  --ui-header-border-gradient-mid: rgba(0, 0, 0, 0.1);
  --ui-shadow-header: 0 10px 40px rgba(0, 0, 0, 0.1);
  --ui-shadow-toast-hover: 0 14px 40px rgba(0, 0, 0, 0.28);
  --ui-toast-bg: var(--ui-surface-inverse);
  --ui-toast-text: var(--ui-text-inverse);
  --ui-toast-success-bg: var(--ui-color-success);
  --ui-toast-error-bg: var(--ui-color-danger);
  --ui-toast-warning-bg: var(--ui-color-warning);
  --ui-modal-backdrop-bg: rgba(0, 0, 0, 0.5);
  --ui-btn-close-filter: none;
  --ui-btn-close-opacity: 0.72;
  --ui-btn-close-hover-opacity: 1;
  --ui-print-bg: var(--ui-primitive-white);
  --ui-print-text: var(--ui-primitive-neutral-900);
  --ui-print-muted: var(--ui-primitive-neutral-600);
  --ui-print-border: var(--ui-primitive-neutral-300);
  --ui-print-surface-muted: var(--ui-primitive-neutral-50);
  --ui-print-card-radius: var(--ui-radius-sm);
  --ui-print-code-radius: var(--ui-radius-sm);
  --ui-overlay-bg: rgba(255, 255, 255, 0.8);
  --ui-overlay-strong-bg: rgba(15, 16, 20, 0.98);

  /* ui-z-* is the global stacking map (ADR-008). Keep numeric literals here. */
  --ui-z-tab-decoration: 0;
  --ui-z-tab-decoration-raised: 1;
  --ui-z-sticky: 100;
  --ui-z-underlay: -1;
  --ui-z-raised: 10;
  --ui-z-dropdown: 1000;
  --ui-z-modal-backdrop: 1040;
  --ui-z-modal: 1050;
  --ui-z-editor-popover: 1065;
  --ui-z-announcement: 2000;
  --ui-z-overlay: 5000;
  --ui-z-proctor: 8300;
  --ui-z-header: 8000;
  --ui-z-header-dropdown: 8010;
  --ui-z-toast: 8200;

  /* @alias-sunset: VIS-P1-002 */
  --color-primary: var(--ui-color-action);
  --color-error: var(--ui-color-danger);

  /* Header aliases are global because .main-content consumes --header-height. */
  --header-bg: var(--ui-surface-header);
  --header-bg-solid: var(--ui-surface-header-solid);
  --header-text-primary: var(--ui-text-primary);
  --header-text-secondary: var(--ui-text-secondary);
  --header-accent: var(--ui-header-accent-neutral);
  --header-border: var(--ui-border-header);
  --header-hover: var(--ui-surface-header-hover);
  --header-active-bg: var(--ui-surface-header-active);
  --header-blur: 10px;
  --header-shadow: var(--ui-shadow-header);
  --header-font: -apple-system, BlinkMacSystemFont, 'SF Pro Display', sans-serif;
  --header-font-size-base: 0.85rem;
  --header-font-size-logo: 1.2rem;
  --header-height: var(--ui-layout-header-height);
  --header-padding-x: 22px;
  --header-logo-height: 20px;
  --header-logo-margin-right: 30px;
  --header-logo-text-gap: var(--ui-space-2);
  --header-logo-letter-spacing: -0.5px;
  --header-nav-link-padding: 10px 15px;
  --header-nav-link-height: 60%;
  --header-nav-link-radius: var(--ui-radius-pill);
  --header-nav-indicator-height: 2px;
  --header-nav-indicator-inset-inline: 18px;
  --header-actions-gap: 20px;
  --header-account-gap: var(--ui-space-2);
  --header-account-padding: 6px 14px;
  --header-account-radius: var(--ui-radius-pill);
  --header-account-hover-height: 34px;
  --header-account-icon-size: 32px;
  --header-account-icon-font-size: 22px;
  --header-rewards-gap: var(--ui-space-1);
  --header-rewards-margin-left: var(--ui-space-2);
  --header-transition-fast: var(--ui-motion-duration-fast) var(--ui-motion-easing-standard);
  --header-transition-medium: var(--ui-motion-duration-slow) var(--ui-motion-easing-standard);
  --header-transition-slow: var(--ui-motion-duration-slow) var(--ui-motion-easing-emphasized);
  --header-transition-delay-fast: 100ms;
  --header-z-index: var(--ui-z-header);
  --dropdown-z-index: var(--ui-z-header-dropdown);
  --header-dropdown-radius: var(--ui-radius-shell);
  --header-dropdown-open-height: 75vh;
  --header-dropdown-open-height-mobile: 80vh;
  --header-dropdown-sidebar-width: 220px;
  --header-dropdown-sidebar-width-tablet: 200px;
  --header-dropdown-sidebar-max-height-mobile: 100px;
  --header-dropdown-sidebar-max-height-compact: 90px;
  --header-dropdown-sidebar-padding-y: 28px;
  --header-dropdown-sidebar-padding-y-tablet: 24px;
  --header-dropdown-sidebar-padding-y-mobile: 8px;
  --header-dropdown-content-padding: 12px;
  --header-dropdown-content-padding-tablet: 24px;
  --header-dropdown-content-padding-compact: 8px;
  --header-dropdown-column-min: 180px;
  --header-dropdown-column-gap: 12px;
  --header-dropdown-column-gap-tablet: 32px;
  --header-dropdown-column-gap-mobile: 16px;
  --header-dropdown-item-padding-y: 10px;
  --header-dropdown-item-padding-x: 24px;
  --header-dropdown-item-padding-y-mobile: 8px;
  --header-dropdown-item-padding-x-mobile: 12px;
  --header-dropdown-item-font-size: 15px;
  --header-dropdown-item-font-weight: var(--ui-font-weight-medium);
  --header-dropdown-link-radius: var(--ui-radius-sm);
  --header-dropdown-link-font-size: 0.85rem;
  --header-dropdown-sidebar-link-padding: var(--ui-space-2) 10px;
  --header-dropdown-sidebar-link-margin: 0 6px 2px 6px;
  --header-dropdown-nav-link-padding-mobile: 10px;
  --header-dropdown-category-font-size: 13px;
  --header-dropdown-category-font-weight: var(--ui-font-weight-semibold);
  --header-dropdown-section-offset: 8px;
  --header-dropdown-sidebar-list-padding: 0 var(--ui-space-2);
  --header-dropdown-active-border-width: 3px;
  --header-dropdown-sidebar-item-margin-inline-end: 1px;
  --header-dropdown-category-gap: var(--ui-space-1);
  --header-dropdown-category-margin-bottom: 2px;
  --header-dropdown-category-letter-spacing: -0.2px;
  --auth-tabs-max-width: 680px;

  --ui-tabs-bg: var(--ui-surface-header);
  --ui-tabs-bg-solid: var(--ui-surface-header-solid);
  --ui-tabs-hover-bg: var(--ui-surface-header-hover);
  --ui-tabs-active-bg: var(--ui-surface-base);
  --ui-tabs-border: rgba(0, 0, 0, 0.1);
  --ui-tabs-text: var(--ui-text-secondary);
  --ui-tabs-text-hover: var(--ui-text-primary);
  --ui-tabs-text-active: var(--ui-color-action);
  --ui-tabs-muted: var(--ui-text-muted);
  --ui-tabs-backdrop-blur: 10px;
  --ui-tabs-height: 30px;
  --ui-tabs-padding-y: 1px;
  --ui-tabs-padding-x: 16px;
  --ui-tabs-font-size: 13px;
  --ui-tabs-font-weight: 500;
  --ui-tabs-edge-fade-width: 30px;
  --ui-tabs-edge-radius: var(--ui-radius-lg);
  --ui-tabs-active-indicator-height: 2px;
  --ui-tabs-close-size: 14px;
  --ui-tabs-close-icon-size: 8px;
  --ui-tabs-close-radius: var(--ui-radius-pill);
  --ui-tabs-action-size: 25px;
  --ui-tabs-action-radius: var(--ui-radius-md);
  --ui-tabs-closable-padding-end: 32px;
  --ui-tabs-close-offset-inline: var(--ui-space-2);
  --ui-tabs-indicator-bg: var(--ui-color-action);
  --ui-tabs-indicator-inset-inline: 0px;
  --ui-tabs-panel-animation: fadeIn var(--ui-motion-duration-normal) var(--ui-motion-easing-standard);
  --ui-tabs-motion: var(--ui-motion-duration-fast) var(--ui-motion-easing-standard);
  --ui-tabs-content-padding: 24px 40px;
  --ui-tabs-content-compact-padding: var(--ui-space-3) var(--ui-space-4);

  --ui-score-cell-row-size: 16px;
  --ui-score-cell-grid-rows: var(--ui-score-cell-row-size) auto var(--ui-score-cell-row-size);
  --ui-score-cell-min-height: 28px;
  --ui-score-cell-indicator-font-size: 15px;
  --ui-score-cell-indicator-padding: 2px var(--ui-space-1);
  --ui-score-cell-icon-font-size: 12px;
  --ui-score-cell-icon-small-font-size: 10px;
  --ui-score-cell-icon-offset: 2px;
  --ui-score-cell-icon-gap: 2px;
  --ui-score-cell-center-padding: 2px 0;
  --ui-student-notes-scroll-offset: 200px;
  --ui-student-notes-score-min-height: 50px;
  --ui-student-notes-score-padding: var(--ui-space-1);
  --ui-student-notes-score-row-height: 18px;
  --ui-student-notes-score-center-font-size: 14px;
  --ui-student-notes-score-center-margin: var(--ui-space-1) 0;
  --ui-student-credentials-modal-width: 1024px;
  --ui-student-info-modal-width: 60vw;
  --ui-modal-secondary-backdrop-opacity: 0.3;
  --ui-teaching-stats-margin: 0 1%;
  --ui-teaching-stats-max-width: 98%;
  --ui-teaching-stats-date-filter-min-width: 120px;
  --ui-teaching-stats-lesson-filter-min-width: 160px;
  --ui-teaching-stats-person-filter-min-width: 180px;
  --ui-page-preview-max-height: 70vh;
  --ui-page-preview-padding: var(--ui-space-2);
  --ui-exam-participant-student-min-width: 220px;
  --ui-exam-participant-attempt-min-width: 110px;
  --ui-exam-participant-status-min-width: 120px;
  --ui-exam-participant-grade-min-width: 80px;
  --ui-exam-participant-finished-min-width: 160px;
  --ui-teaching-presentation-pre-max-height: 160px;
  --ui-teaching-presentation-pre-compact-max-height: 120px;

  --ui-cabinet-sidebar-collapsed-width: 30px;
  --ui-cabinet-sidebar-expanded-width: 248px;
  --ui-cabinet-sidebar-padding-x: var(--ui-space-1);
  --ui-cabinet-sidebar-padding-y: var(--ui-space-8);
  --ui-cabinet-sidebar-bg: var(--ui-surface-glass);
  --ui-cabinet-sidebar-bg-expanded: var(--ui-surface-glass-strong);
  --ui-cabinet-sidebar-blur: var(--ui-backdrop-blur-md);
  --ui-cabinet-sidebar-expanded-blur: var(--ui-backdrop-blur-lg);
  --ui-cabinet-sidebar-shadow: var(--ui-shadow-panel);
  --ui-cabinet-sidebar-expanded-shadow: var(--ui-shadow-card);
  --ui-cabinet-sidebar-edge-width: 12px;
  --ui-cabinet-sidebar-link-font-size: var(--ui-font-size-sm);
  --ui-cabinet-sidebar-link-padding-y: 3px;
  --ui-cabinet-sidebar-link-padding-x: 6px;
  --ui-cabinet-sidebar-link-active-bg: color-mix(in srgb, var(--ui-text-primary) 14%, var(--ui-surface-muted));
  --ui-cabinet-sidebar-link-active-text: var(--ui-text-primary);
  --ui-cabinet-sidebar-link-hover-bg: var(--ui-surface-hover);
  --ui-cabinet-module-bg: transparent;
  --ui-cabinet-sidebar-icon-size: 16px;
  --ui-cabinet-sidebar-school-icon-size: 20px;
  --ui-cabinet-sidebar-first-item-offset: 3px;
  --ui-cabinet-sidebar-toggle-size: 34px;
  --ui-cabinet-sidebar-toggle-top: 96px;
  --ui-cabinet-scope-row-padding: var(--ui-space-4) var(--ui-space-8) 0;
  --ui-cabinet-scope-switcher-padding: 10px 14px;
  --ui-cabinet-scope-switcher-gap: var(--ui-space-3);
  --ui-cabinet-scope-select-min-width: 240px;
  --ui-cabinet-scope-select-max-width: 360px;
  --ui-cabinet-content-height: calc(100vh - var(--ui-layout-header-height));

  --rating-final-panel-bg: var(--ui-color-success-muted);
  --rating-final-panel-border: color-mix(in srgb, var(--ui-color-success) 22%, transparent);
  --rating-final-panel-radius: var(--ui-radius-md);
  --rating-final-cell-default-bg: var(--ui-surface-muted);
  --rating-final-cell-text: var(--ui-text-primary);
  --rating-final-dropdown-bg: var(--ui-surface-raised);
  --rating-final-dropdown-border: var(--ui-border-subtle);
  --rating-final-dropdown-radius: var(--ui-radius-md);
  --rating-final-dropdown-shadow: var(--ui-shadow-card);
  --rating-final-dropdown-hover-bg: var(--ui-surface-hover);
  --rating-final-dropdown-selected-bg: var(--ui-color-action-muted);
  --rating-final-dropdown-muted-text: var(--ui-text-muted);
  --rating-final-rule-panel-shadow: var(--ui-shadow-card);
  --rating-final-rule-delete-hover-bg: var(--ui-color-danger-muted);
  --rating-final-rule-delete-hover-text: var(--ui-color-danger);
  --rating-final-selection-ring: rgba(13, 110, 253, 0.32);
  --rating-final-selection-bg: rgba(13, 110, 253, 0.08);
  --rating-final-readonly-selection-bg: rgba(108, 117, 125, 0.08);
  --rating-final-active-ring: var(--ui-color-action);
  --rating-final-selection-shadow: inset 0 0 0 1px var(--rating-final-selection-ring);
  --rating-final-active-shadow: inset 0 0 0 2px var(--rating-final-active-ring);
  --rating-final-fill-handle-bg: var(--ui-color-action);
  --rating-final-fill-handle-border: var(--ui-surface-raised);
  --rating-final-fill-preview-ring: var(--ui-color-success);
  --rating-final-error-ring: var(--ui-color-danger);
  --rating-final-fill-preview-shadow: inset 0 0 0 1px var(--rating-final-fill-preview-ring);
  --rating-final-error-shadow: inset 0 0 0 2px var(--rating-final-error-ring);
  --rating-final-editor-bg: var(--ui-surface-raised);
  --rating-final-hover-filter: var(--ui-filter-hover-soft);
  --rating-final-open-filter: var(--ui-filter-active-soft);
  --rating-final-loading-filter: var(--ui-filter-busy);
  --rating-final-check-hidden-opacity: 0;
  --rating-final-check-visible-opacity: 1;
  --rating-final-saving-opacity: 0.72;
  --rating-final-loading-opacity: 0.55;
  --rating-final-notice-bg: var(--ui-color-warning-muted);
  --rating-final-notice-border: var(--ui-color-warning);
  --rating-final-invalid-bg: var(--ui-color-warning-muted);
  --rating-final-invalid-border: var(--ui-color-warning);
  --rating-final-invalid-shadow: inset 0 0 0 1px var(--rating-final-invalid-border);
  --rating-final-table-head-bg: var(--ui-surface-raised);
  --rating-final-table-border: var(--ui-border-subtle);
  --rating-final-table-head-shadow: inset 0 -1px 0 var(--rating-final-table-border);
  --rating-final-pinned-edge-shadow: inset -1px 0 0 var(--rating-final-table-border);
  --rating-final-palette-red: color-mix(in srgb, var(--ui-color-danger) 14%, var(--ui-surface-raised));
  --rating-final-palette-green: color-mix(in srgb, var(--ui-color-success) 14%, var(--ui-surface-raised));
  --rating-final-palette-yellow: color-mix(in srgb, var(--ui-color-warning) 18%, var(--ui-surface-raised));
  --rating-final-palette-blue: color-mix(in srgb, var(--ui-color-action) 14%, var(--ui-surface-raised));
  --rating-final-palette-violet: color-mix(in srgb, var(--ui-color-action) 10%, var(--ui-color-danger-muted));
  --rating-final-palette-gray: var(--ui-surface-muted);

  --ui-ai-thinking-duration: 1200ms;
  --ui-ai-thinking-delay-step: 150ms;

  --ui-clerical-error-pulse-shadow-start: 0 0 0 0 var(--ui-color-danger);
  --ui-clerical-error-pulse-shadow-mid: 0 0 0 10px transparent;
  --ui-clerical-error-pulse-shadow-end: 0 0 0 0 transparent;

  --ui-lesson-selected-shadow: 0 0 0 2px var(--lesson-selected-ring) inset;
  --ui-lesson-rubric-pulse-duration: 2500ms;
  --ui-lesson-rubric-pulse-delay: 300ms;
  --ui-lesson-rubric-pulse-shadow-start: 0 0 0 0 var(--lesson-rubric-pulse-strong), 0 0 0 0 var(--lesson-rubric-pulse-md);
  --ui-lesson-rubric-pulse-shadow-early: 0 0 0 0.5em var(--lesson-rubric-pulse-md), 0 0 0 0 var(--lesson-rubric-pulse-soft);
  --ui-lesson-rubric-pulse-shadow-mid: 0 0 0 1.5em var(--lesson-rubric-pulse-soft), 0 0 0 1em var(--lesson-rubric-pulse-soft);
  --ui-lesson-rubric-pulse-shadow-late: 0 0 0 2.5em var(--lesson-rubric-pulse-soft), 0 0 0 2em var(--lesson-rubric-pulse-soft);
  --ui-lesson-rubric-pulse-shadow-end: 0 0 0 4em transparent, 0 0 0 3.5em transparent;
  --ui-lesson-rubric-pulse-shadow-2-early: 0 0 0 0.3em var(--lesson-rubric-pulse-md), 0 0 0 0 var(--lesson-rubric-pulse-md);
  --ui-lesson-rubric-pulse-shadow-2-mid: 0 0 0 1.2em var(--lesson-rubric-pulse-soft), 0 0 0 0.8em var(--lesson-rubric-pulse-soft);
  --ui-lesson-rubric-pulse-shadow-2-late: 0 0 0 2.2em var(--lesson-rubric-pulse-soft), 0 0 0 1.8em var(--lesson-rubric-pulse-soft);
  --ui-lesson-rubric-pulse-shadow-2-end: 0 0 0 3.8em transparent, 0 0 0 3.3em transparent;
  --ui-lesson-rightbar-narrow-transform-motion: var(--ui-motion-duration-normal) var(--ui-motion-easing-standard);
  --ui-lesson-rightbar-narrow-opacity-motion: var(--ui-motion-duration-fast) var(--ui-motion-easing-standard);

  --accent-color: var(--ui-color-action);
}
