/* GENERATED by scripts/generate_dark_theme.py - do not edit by hand.
   Change the light stylesheets (or the tokens in the generator) and re-run it. */

@media screen {
  html[data-theme="dark"] {
    color-scheme: dark;
    --bg: #111827;
    --surface: #1c2736;
    --surface-alt: #263447;
    --primary: #3569aa;
    --primary-dark: #dce8fa;
    --primary-hover: #2b5a94;
    --primary-soft: #293d59;
    --accent: #83b8ff;
    --text: #e7edf5;
    --muted: #aab6c6;
    --border: #3b4a5d;
    --shadow: 0 18px 35px rgba(0, 0, 0, 0.28);
    --success: #57b88c;
    --premium: #a487ff;
    --premium-soft: #352d4a;
    --lab-accent-text: #6fd3c7;
    --lab-warm-text: #f2a65a;
  }

  /* static/css/style.css */
  :where(html[data-theme="dark"]) body {
    background: var(--bg);
    color: var(--text);
  }
  :where(html[data-theme="dark"]) a {
    color: inherit;
  }
  :where(html[data-theme="dark"]) :where(
  input:not([type]),
  input[type="text"],
  input[type="email"],
  input[type="password"],
  input[type="search"],
  input[type="number"],
  input[type="url"],
  input[type="tel"],
  textarea,
  [contenteditable="true"]
) {
    color: var(--text);
    caret-color: currentColor;
  }
  :where(html[data-theme="dark"]) .brand {
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .brand:hover, :where(html[data-theme="dark"]) .brand:focus-visible {
    color: var(--accent);
  }
  :where(html[data-theme="dark"]) .brand:focus-visible {
    outline: 3px solid rgba(15, 159, 154, 0.28);
  }
  :where(html[data-theme="dark"]) .primary-btn, :where(html[data-theme="dark"]) .secondary-btn, :where(html[data-theme="dark"]) .filter-btn {
    border: none;
  }
  :where(html[data-theme="dark"]) .primary-btn {
    background: var(--primary);
    color: white;
    box-shadow: var(--shadow);
  }
  :where(html[data-theme="dark"]) .primary-btn:hover {
    background: var(--primary-hover);
  }
  :where(html[data-theme="dark"]) .secondary-btn {
    background: var(--primary-soft);
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .inline-edit-form input[type="text"], :where(html[data-theme="dark"]) .inline-edit-form input[type="number"] {
    border: 1px solid var(--border);
    background: #1d2734;
    color: var(--text);
  }
  :where(html[data-theme="dark"]) .inline-edit-form input[type="text"]:hover, :where(html[data-theme="dark"]) .inline-edit-form input[type="number"]:hover {
    border-color: #284166;
  }
  :where(html[data-theme="dark"]) .inline-edit-form input[type="text"]:focus-visible, :where(html[data-theme="dark"]) .inline-edit-form input[type="number"]:focus-visible {
    outline: none;
    border-color: var(--primary);
    background: #1d2734;
    box-shadow: 0 0 0 4px rgba(35, 77, 139, 0.14);
  }
  :where(html[data-theme="dark"]) .danger-btn {
    background: #3f1a1c;
    color: #f19e98;
  }
  :where(html[data-theme="dark"]) .danger-btn:hover {
    background: #441c1f;
  }
  :where(html[data-theme="dark"]) .danger-link {
    background: #3f1a1c;
    color: #f19e98;
  }
  :where(html[data-theme="dark"]) .danger-link:hover {
    background: #441c1f;
  }
  :where(html[data-theme="dark"]) .danger-zone {
    border-color: #5c232a;
  }
  :where(html[data-theme="dark"]) .danger-zone h2 {
    color: #f49fb7;
  }
  :where(html[data-theme="dark"]) .delete-summary div {
    border: 1px solid var(--border);
    background: #1e2836;
  }
  :where(html[data-theme="dark"]) .delete-summary dt {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .checkbox-row, :where(html[data-theme="dark"]) .login-form .checkbox-row {
    border: 1px solid var(--border);
    background: #1e2836;
  }
  :where(html[data-theme="dark"]) .checkbox-row:has(input[type="checkbox"]:checked) {
    border-color: var(--primary);
    background: var(--primary-soft);
  }
  :where(html[data-theme="dark"]) .checkbox-row:has(input:focus-visible) {
    outline: 3px solid var(--accent);
  }
  :where(html[data-theme="dark"]) .checkbox-row input[type="checkbox"] {
    border: 0;
    accent-color: var(--accent);
  }
  :where(html[data-theme="dark"]) .flash-message {
    border: 1px solid var(--border);
    background: var(--surface);
    color: var(--text);
  }
  :where(html[data-theme="dark"]) .flash-error {
    border-color: #5c232a;
    background: #3f1a1c;
    color: #f19e98;
  }
  :where(html[data-theme="dark"]) .flash-success {
    border-color: #27663d;
    background: #1a4026;
    color: #b9f0ce;
  }
  :where(html[data-theme="dark"]) .login-panel {
    background: var(--surface);
    border: 1px solid var(--border);
    box-shadow: var(--shadow);
  }
  :where(html[data-theme="dark"]) .error-page {
    --accent: #0f9f9a;
    --primary: #176b87;
    --primary-dark: #bae4f2;
    --primary-hover: #124e62;
    --primary-soft: #1d4644;
  }
  :where(html[data-theme="dark"]) .error-card {
    border: 1px solid var(--border);
    background: var(--surface);
    box-shadow: var(--shadow);
  }
  :where(html[data-theme="dark"]) .error-kicker {
    color: var(--accent);
  }
  :where(html[data-theme="dark"]) .error-status {
    color: var(--accent);
  }
  :where(html[data-theme="dark"]) .error-card p:not(.error-kicker):not(.error-status) {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .login-form label {
    color: var(--text);
  }
  :where(html[data-theme="dark"]) .login-row input {
    border: 1px solid var(--border);
  }
  :where(html[data-theme="dark"]) .form-error {
    color: #f19e98;
  }
  :where(html[data-theme="dark"]) .panel-divider {
    border: 0;
    border-top: 1px solid var(--border);
  }
  :where(html[data-theme="dark"]) .auth-form input {
    border: 1px solid var(--border);
  }
  :where(html[data-theme="dark"]) .auth-form select {
    border: 1px solid var(--border);
    background: #1d2734;
  }
  :where(html[data-theme="dark"]) .auth-form textarea {
    border: 1px solid var(--border);
  }
  :where(html[data-theme="dark"]) .auth-form a {
    color: var(--accent);
  }
  :where(html[data-theme="dark"]) .english-results-link {
    color: var(--accent);
  }
  :where(html[data-theme="dark"]) .eyebrow {
    color: var(--accent);
  }
  :where(html[data-theme="dark"]) .lead {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .hero-card {
    background: var(--surface);
    border: 1px solid var(--border);
    box-shadow: var(--shadow);
  }
  :where(html[data-theme="dark"]) .hero-card-kicker {
    color: var(--accent);
  }
  :where(html[data-theme="dark"]) .hero-info-card p {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .hero-info-list li {
    border-top: 1px solid var(--border);
    color: var(--text);
  }
  :where(html[data-theme="dark"]) .hero-steps li::before {
    background: var(--primary-soft);
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .hero-steps strong {
    color: var(--text);
  }
  :where(html[data-theme="dark"]) .hero-steps span {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .hero-info-card .hero-steps-summary {
    border-top: 1px solid var(--border);
    color: var(--text);
  }
  :where(html[data-theme="dark"]) .hero-steps-link {
    color: var(--accent);
  }
  :where(html[data-theme="dark"]) .section-soft {
    background: linear-gradient(180deg, rgba(27, 40, 65, 0.55), rgba(245, 247, 251, 0));
  }
  :where(html[data-theme="dark"]) .external-project-promo {
    border: 1px solid var(--border);
    border-left: 5px solid var(--accent);
    background: var(--surface);
    box-shadow: var(--shadow);
  }
  :where(html[data-theme="dark"]) .external-project-copy p:last-child {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .about-section > .about-container > p:not(.eyebrow) {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .about-reason-list, :where(html[data-theme="dark"]) .about-content-list {
    border-top: 1px solid var(--border);
  }
  :where(html[data-theme="dark"]) .about-reason-list > div, :where(html[data-theme="dark"]) .about-content-list article {
    border-bottom: 1px solid var(--border);
  }
  :where(html[data-theme="dark"]) .about-reason-list p, :where(html[data-theme="dark"]) .about-content-list p {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .about-content-label {
    color: var(--accent) !important;
  }
  :where(html[data-theme="dark"]) .classroom-flow li:not(:last-child)::after {
    background: var(--border);
  }
  :where(html[data-theme="dark"]) .classroom-flow span {
    background: var(--primary);
    color: #fff;
  }
  :where(html[data-theme="dark"]) .about-edugames {
    border: 1px solid var(--border);
    border-left: 5px solid var(--accent);
    background: var(--surface);
    box-shadow: var(--shadow);
  }
  :where(html[data-theme="dark"]) .about-edugames > p:not(.eyebrow) {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .project-comparison {
    border-top: 1px solid var(--border);
    border-bottom: 1px solid var(--border);
  }
  :where(html[data-theme="dark"]) .project-comparison strong {
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .project-comparison span {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .app-card, :where(html[data-theme="dark"]) .detail-card, :where(html[data-theme="dark"]) .info-panel {
    background: var(--surface);
    border: 1px solid var(--border);
    box-shadow: var(--shadow);
  }
  :where(html[data-theme="dark"]) .app-card-lesson-count {
    color: var(--accent);
  }
  :where(html[data-theme="dark"]) .section-heading-link {
    color: var(--accent);
  }
  :where(html[data-theme="dark"]) .app-tile {
    border: 1px solid var(--border);
    background: var(--surface);
    color: var(--text);
  }
  :where(html[data-theme="dark"]) .app-tile:hover, :where(html[data-theme="dark"]) .app-tile:focus-visible {
    border-color: var(--accent);
  }
  :where(html[data-theme="dark"]) .app-tile-category {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .app-tile-count {
    color: var(--accent);
  }
  :where(html[data-theme="dark"]) .programming-world-promo {
    border: 1px solid var(--border);
    border-left: 5px solid var(--premium);
    background: var(--surface);
    box-shadow: var(--shadow);
  }
  :where(html[data-theme="dark"]) .programming-world-badge {
    background: var(--premium-soft);
    color: var(--premium);
  }
  :where(html[data-theme="dark"]) .programming-world-copy p:last-child {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .demo-lesson-promo {
    border: 1px solid var(--border);
    border-left: 5px solid var(--accent);
    background: var(--surface);
    box-shadow: var(--shadow);
  }
  :where(html[data-theme="dark"]) .demo-lesson-badge {
    background: var(--surface-alt);
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .demo-lesson-case-title {
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .demo-lesson-copy p:not(.demo-lesson-case-title) {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .demo-lesson-meta {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .demo-lesson-unavailable {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .meta-row > span, :where(html[data-theme="dark"]) .category-chip {
    background: var(--surface-alt);
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .tag.free {
    background: rgba(47, 158, 113, 0.12);
    color: var(--success);
  }
  :where(html[data-theme="dark"]) .tag.premium {
    background: var(--premium-soft);
    color: var(--premium);
  }
  :where(html[data-theme="dark"]) .app-card p, :where(html[data-theme="dark"]) .info-panel p, :where(html[data-theme="dark"]) .detail-card p, :where(html[data-theme="dark"]) .narrow p {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .session-danger {
    border-top: 1px solid var(--border);
  }
  :where(html[data-theme="dark"]) .session-danger h2 {
    color: #efa3a3;
  }
  :where(html[data-theme="dark"]) .classroom-session-card {
    border-left: 6px solid var(--border);
  }
  :where(html[data-theme="dark"]) .classroom-session-card.is-active {
    border-left-color: var(--success);
  }
  :where(html[data-theme="dark"]) .classroom-session-card.is-closed {
    border-left-color: #4c5c73;
  }
  :where(html[data-theme="dark"]) .session-status-chip.is-active {
    background: rgba(47, 158, 113, 0.14);
    color: var(--success);
  }
  :where(html[data-theme="dark"]) .session-status-chip.is-closed {
    background: #233144;
    color: #c0c8d4;
  }
  :where(html[data-theme="dark"]) .filter-btn {
    background: #212c3b;
    color: var(--primary-dark);
    border: 1px solid var(--border);
  }
  :where(html[data-theme="dark"]) .filter-btn.active {
    background: var(--primary);
    color: white;
  }
  :where(html[data-theme="dark"]) .teacher-welcome-mail-preview summary {
    color: var(--accent);
  }
  :where(html[data-theme="dark"]) .teacher-welcome-mail-preview pre {
    border: 1px solid var(--border);
    background: var(--surface-alt);
  }
  :where(html[data-theme="dark"]) .account-info-list div {
    border: 1px solid var(--border);
    background: #1e2836;
  }
  :where(html[data-theme="dark"]) .account-info-list dt {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .account-info-list dd {
    color: var(--text);
  }
  :where(html[data-theme="dark"]) .premium-panel {
    background: linear-gradient(180deg, #1f2937 0%, #231a40 100%);
  }
  :where(html[data-theme="dark"]) .english-draft-status {
    border: 1px solid #244460;
    background: #1f2937;
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .english-panel {
    background: var(--surface);
    border: 1px solid var(--border);
    box-shadow: var(--shadow);
  }
  :where(html[data-theme="dark"]) .english-panel > p {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .english-form label, :where(html[data-theme="dark"]) .english-results-filter label {
    color: var(--text);
  }
  :where(html[data-theme="dark"]) .english-form input[type="text"], :where(html[data-theme="dark"]) .english-form textarea, :where(html[data-theme="dark"]) .english-results-filter select {
    border: 1px solid var(--border);
    background: #1d2734;
    color: var(--text);
  }
  :where(html[data-theme="dark"]) .english-reminder {
    border: 1px solid #244460;
    border-left: 5px solid var(--accent);
    background: #1f2937;
  }
  :where(html[data-theme="dark"]) .english-reminder-title {
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .english-reminder-body p {
    color: var(--text);
  }
  :where(html[data-theme="dark"]) .english-reminder-body strong {
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .english-question {
    background: #1f2936;
    border: 1px solid var(--border);
  }
  :where(html[data-theme="dark"]) .english-choice-list label, :where(html[data-theme="dark"]) .english-check-list label, :where(html[data-theme="dark"]) .english-check-row {
    border: 1px solid var(--border);
    background: #1d2734;
  }
  :where(html[data-theme="dark"]) .passive-clue-list {
    border: 1px solid #314152;
    background: #1e2836;
  }
  :where(html[data-theme="dark"]) .passive-choice-preview span, :where(html[data-theme="dark"]) .passive-choice-preview-item, :where(html[data-theme="dark"]) .passive-support-list span, :where(html[data-theme="dark"]) .passive-language-support span, :where(html[data-theme="dark"]) .passive-highlight-list strong {
    border: 1px solid var(--border);
    background: #1d2734;
    color: var(--text);
  }
  :where(html[data-theme="dark"]) .passive-answer-details {
    border: 1px solid #244460;
    background: #1f2937;
  }
  :where(html[data-theme="dark"]) .passive-answer-details summary {
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .passive-examples-grid article, :where(html[data-theme="dark"]) .passive-info-card {
    border: 1px solid var(--border);
    background: #1e2836;
  }
  :where(html[data-theme="dark"]) .passive-rule {
    border-left: 5px solid var(--accent);
    background: #1f2937;
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .passive-speaking-panel {
    border-left: 5px solid var(--accent);
  }
  :where(html[data-theme="dark"]) .passive-role-note {
    background: var(--primary-soft);
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .passive-info-card dt {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .passive-object-card {
    border: 1px solid #314152;
    background: #1d2734;
  }
  :where(html[data-theme="dark"]) .passive-object-card span {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .passive-object-card strong {
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .english-summary-grid h2 {
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .english-section-results div {
    border-bottom: 1px solid var(--border);
  }
  :where(html[data-theme="dark"]) .english-section-results div:last-child {
    border-bottom: 0;
  }
  :where(html[data-theme="dark"]) .english-question-stats article, :where(html[data-theme="dark"]) .english-feedback-row {
    border: 1px solid var(--border);
    background: #1e2836;
  }
  :where(html[data-theme="dark"]) .english-feedback-row.is-correct {
    border-left: 5px solid var(--success);
  }
  :where(html[data-theme="dark"]) .english-feedback-row.is-wrong {
    border-left: 5px solid #f3c48f;
  }
  :where(html[data-theme="dark"]) .submission-code-block {
    border: 1px solid #c8d0d6;
    background: #18242f;
    color: #f4f7f9;
  }
  :where(html[data-theme="dark"]) .submission-code-block code {
    background: transparent;
    color: inherit;
  }
  :where(html[data-theme="dark"]) .submission-comment summary {
    color: var(--accent);
  }
  :where(html[data-theme="dark"]) .submission-comment textarea {
    border: 1px solid var(--border);
    background: #1d2734;
    color: var(--text);
  }
  :where(html[data-theme="dark"]) .submission-comment-status {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .submission-comment-status.is-error {
    color: #f19e98;
  }
  :where(html[data-theme="dark"]) .submission-teacher-comment {
    border-left: 4px solid #f3c48f;
    background: #42351b;
  }
  :where(html[data-theme="dark"]) .submission-teacher-comment strong {
    color: #f5c3a5;
  }
  :where(html[data-theme="dark"]) .submission-teacher-comment-notice {
    background: #42351b;
    color: #f5c3a5;
  }
  :where(html[data-theme="dark"]) .student-session-body {
    --accent: #0f9f9a;
    --primary: #176b87;
    --primary-dark: #bae4f2;
    --primary-hover: #124e62;
    --primary-soft: #1d4644;
    background: #202a38;
  }
  :where(html[data-theme="dark"]) .student-session-header {
    background: rgba(32, 42, 56, 0.94);
    border-bottom: 1px solid var(--border);
  }
  :where(html[data-theme="dark"]) .student-session-header-inner {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .student-session-header-inner .brand {
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .student-session-header .theme-toggle, :where(html[data-theme="dark"]) .student-session-header .lesson-download-btn {
    border: 1px solid var(--border);
    background: var(--surface);
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .student-session-header .theme-toggle:hover, :where(html[data-theme="dark"]) .student-session-header .theme-toggle:focus-visible, :where(html[data-theme="dark"]) .student-session-header .lesson-download-btn:hover, :where(html[data-theme="dark"]) .student-session-header .lesson-download-btn:focus-visible {
    border-color: var(--accent);
  }
  :where(html[data-theme="dark"]) .student-session-card {
    background: var(--surface);
    border: 1px solid var(--border);
    box-shadow: var(--shadow);
  }
  :where(html[data-theme="dark"]) .session-unavailable-meta {
    border: 1px solid var(--border);
    background: var(--primary-soft);
  }
  :where(html[data-theme="dark"]) .session-unavailable-meta span {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .student-session-title h1, :where(html[data-theme="dark"]) .student-session-complete h1 {
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .student-session-entry-form label {
    color: var(--text);
  }
  :where(html[data-theme="dark"]) .student-session-entry-form input, :where(html[data-theme="dark"]) .student-session-entry-form select, :where(html[data-theme="dark"]) .english-form select {
    border: 1px solid var(--border);
    background: #1d2734;
    color: var(--text);
  }
  :where(html[data-theme="dark"]) .student-session-entry-form input:focus, :where(html[data-theme="dark"]) .student-session-entry-form select:focus, :where(html[data-theme="dark"]) .english-form input[type="text"]:focus, :where(html[data-theme="dark"]) .english-form textarea:focus, :where(html[data-theme="dark"]) .english-form select:focus {
    border-color: var(--accent);
    box-shadow: 0 0 0 4px rgba(15, 159, 154, 0.16);
    outline: none;
  }
  :where(html[data-theme="dark"]) .demo-switch-team-link {
    color: var(--accent);
  }
  :where(html[data-theme="dark"]) .demo-picker-option {
    border: 1px solid var(--border);
    background: var(--surface);
    color: var(--primary-dark);
    box-shadow: var(--shadow);
  }
  :where(html[data-theme="dark"]) .demo-picker-option:hover, :where(html[data-theme="dark"]) .demo-picker-option:focus-visible {
    border-color: var(--accent);
    background: var(--primary-soft);
  }
  :where(html[data-theme="dark"]) .demo-result-note {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .demo-lesson-outro {
    border: 1px solid var(--border);
    border-left: 5px solid var(--accent);
    background: var(--primary-soft);
  }
  :where(html[data-theme="dark"]) .demo-lesson-outro p {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .demo-product-panel-inner {
    border: 1px solid var(--border);
    background: var(--primary-soft);
  }
  :where(html[data-theme="dark"]) .demo-product-list {
    color: var(--text);
  }
  :where(html[data-theme="dark"]) .demo-product-highlight {
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .demo-product-note {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .completion-answer-block, :where(html[data-theme="dark"]) .completion-solution-block {
    border: 1px solid var(--border);
    background: #1e2836;
  }
  :where(html[data-theme="dark"]) .completion-solution-block {
    border-color: rgba(160, 244, 242, 0.32);
    background: #202b3a;
  }
  :where(html[data-theme="dark"]) .inline-solution-reference + .inline-solution-reference {
    border-top: 1px solid rgba(15, 159, 154, 0.24);
  }
  :where(html[data-theme="dark"]) .student-session-footer {
    border-top: 1px solid var(--border);
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .mission-jump-nav a {
    border: 1px solid var(--border);
    background: var(--surface);
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .mission-board-intro, :where(html[data-theme="dark"]) .mission-block {
    background: var(--surface);
    border: 1px solid var(--border);
    box-shadow: var(--shadow);
  }
  :where(html[data-theme="dark"]) .mission-heading span {
    color: var(--accent);
  }
  :where(html[data-theme="dark"]) .station-heading p {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .mission-card, :where(html[data-theme="dark"]) .mission-items {
    border: 1px solid var(--border);
    background: #1e2836;
  }
  :where(html[data-theme="dark"]) .core-card {
    border-left: 5px solid var(--primary);
    background: #1f2936;
  }
  :where(html[data-theme="dark"]) .support-card {
    border-left: 5px solid #a4e4ca;
    background: #202a39;
  }
  :where(html[data-theme="dark"]) .challenge-card {
    border-left: 5px solid #f3c48f;
    background: #40321a;
  }
  :where(html[data-theme="dark"]) .everyone-speaks {
    border: 1px dashed var(--primary);
    background: var(--primary-soft);
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .rotation-table th, :where(html[data-theme="dark"]) .rotation-table td {
    border-bottom: 1px solid var(--border);
  }
  :where(html[data-theme="dark"]) .rotation-table th {
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .big-prompt {
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .case-jump-nav a {
    border: 1px solid #2f425d;
    background: #1d2734;
    color: #bad0ef;
  }
  :where(html[data-theme="dark"]) .case-hero, :where(html[data-theme="dark"]) .case-section {
    border: 1px solid #2f425d;
    background: #1d2734;
    box-shadow: var(--shadow);
  }
  :where(html[data-theme="dark"]) .case-hero {
    background: linear-gradient(135deg, rgba(24, 57, 101, 0.94), rgba(35, 77, 139, 0.86)),
    #183965;
    color: #fff;
  }
  :where(html[data-theme="dark"]) .case-label {
    color: #b9d6ff;
  }
  :where(html[data-theme="dark"]) .case-subtitle {
    color: #eaf1ff;
  }
  :where(html[data-theme="dark"]) .case-brief {
    border: 1px solid rgba(234, 241, 255, 0.28);
    background: rgba(255, 255, 255, 0.08);
  }
  :where(html[data-theme="dark"]) .case-section-heading span {
    color: #abc4ea;
  }
  :where(html[data-theme="dark"]) .case-section-heading p {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .evidence-card, :where(html[data-theme="dark"]) .code-card, :where(html[data-theme="dark"]) .emergency-english, :where(html[data-theme="dark"]) .timer-card, :where(html[data-theme="dark"]) .phone-unlocked, :where(html[data-theme="dark"]) .evidence-strip {
    border: 1px solid #263c5b;
    background: #1e2836;
  }
  :where(html[data-theme="dark"]) .evidence-card {
    border-top: 5px solid #abc4ea;
  }
  :where(html[data-theme="dark"]) .evidence-topline span {
    color: #bad0ef;
  }
  :where(html[data-theme="dark"]) .evidence-topline strong {
    color: #f6ddad;
  }
  :where(html[data-theme="dark"]) .secret-note {
    border: 1px dashed #f3c48f;
    background: #40321a;
    color: #f7ddb7;
  }
  :where(html[data-theme="dark"]) .timer-card {
    background: #1f2936;
  }
  :where(html[data-theme="dark"]) .timer-card span {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .timer-card strong {
    color: #bad0ef;
  }
  :where(html[data-theme="dark"]) .emergency-english {
    background: #202a39;
  }
  :where(html[data-theme="dark"]) .new-evidence-section {
    border-color: #f3c48f;
  }
  :where(html[data-theme="dark"]) .evidence-strip {
    border-left: 6px solid #f3c48f;
    background: #40321a;
  }
  :where(html[data-theme="dark"]) .case-question, :where(html[data-theme="dark"]) .case-rule, :where(html[data-theme="dark"]) .case-summary {
    background: var(--primary-soft);
    color: #bad0ef;
  }
  :where(html[data-theme="dark"]) .locked-phone-section {
    border-color: #bad0ef;
  }
  :where(html[data-theme="dark"]) .code-card {
    background: #1f2936;
  }
  :where(html[data-theme="dark"]) .password-line, :where(html[data-theme="dark"]) .teacher-key {
    color: #bad0ef;
  }
  :where(html[data-theme="dark"]) .phone-unlocked {
    border-color: #27663d;
    background: #1a4026;
  }
  :where(html[data-theme="dark"]) .case-closed-section {
    border-color: #a4e4ca;
  }
  :where(html[data-theme="dark"]) .submission-pager-controls {
    border: 1px solid var(--border);
    background: #1e2836;
  }
  :where(html[data-theme="dark"]) .submission-pager-current strong {
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .submission-pager-current span {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .submission-pager-button {
    border: 1px solid var(--border);
    background: var(--primary-soft);
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .submission-pager-button:not(:disabled):hover, :where(html[data-theme="dark"]) .submission-pager-button:not(:disabled):focus-visible {
    border-color: var(--primary);
    background: var(--primary);
    color: #fff;
  }
  :where(html[data-theme="dark"]) .app-submission-summary::after {
    color: var(--accent);
  }
  :where(html[data-theme="dark"]) .app-submission-meta {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .muted-small {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .english-results-table th, :where(html[data-theme="dark"]) .english-results-table td {
    border-bottom: 1px solid var(--border);
  }
  :where(html[data-theme="dark"]) .english-results-table th {
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .english-results-table a {
    color: var(--accent);
  }
  :where(html[data-theme="dark"]) .maturita-progress-line {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .maturita-progress-line strong {
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .maturita-progress-track {
    background: #1d2e46;
  }
  :where(html[data-theme="dark"]) .maturita-progress-bar {
    background: var(--primary);
  }
  :where(html[data-theme="dark"]) .maturita-question h2 {
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .maturita-choice {
    border: 1px solid var(--border);
    background: #1e2836;
  }
  :where(html[data-theme="dark"]) .maturita-choice:hover, :where(html[data-theme="dark"]) .maturita-choice:focus-within {
    border-color: var(--primary);
    background: var(--primary-soft);
  }
  :where(html[data-theme="dark"]) .maturita-choice-key {
    background: #1d2734;
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .maturita-open-answer {
    color: var(--text);
  }
  :where(html[data-theme="dark"]) .maturita-open-answer input {
    border: 1px solid var(--border);
  }
  :where(html[data-theme="dark"]) .maturita-open-answer input:focus {
    border-color: var(--accent);
    box-shadow: 0 0 0 4px rgba(15, 159, 154, 0.16);
    outline: none;
  }
  :where(html[data-theme="dark"]) .maturita-feedback {
    border: 1px solid rgba(160, 244, 242, 0.32);
    background: #202b3a;
  }
  :where(html[data-theme="dark"]) .maturita-feedback h3 {
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .maturita-feedback-answer {
    color: var(--text);
  }
  :where(html[data-theme="dark"]) .maturita-result-meta dt {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .maturita-result-meta dd {
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .maturita-breakdown-row {
    border-bottom: 1px solid var(--border);
  }
  :where(html[data-theme="dark"]) .maturita-review-item {
    border: 1px solid var(--border);
    background: #1e2836;
  }
  :where(html[data-theme="dark"]) .maturita-review-item h3 {
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .maturita-teacher-answer {
    border: 1px solid var(--border);
    background: #1e2836;
  }
  :where(html[data-theme="dark"]) .maturita-teacher-answer.is-correct {
    border-left-color: #a4e4ca;
  }
  :where(html[data-theme="dark"]) .maturita-teacher-answer.is-wrong {
    border-left-color: #f3c48f;
  }
  :where(html[data-theme="dark"]) .docs-section {
    background: #202a38;
  }
  :where(html[data-theme="dark"]) .docs-sidebar-home {
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .docs-search-label {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .docs-search {
    border: 1px solid var(--border);
    background: var(--surface);
    color: var(--text);
  }
  :where(html[data-theme="dark"]) .docs-search:focus {
    border-color: var(--primary);
    outline: 3px solid var(--primary-soft);
  }
  :where(html[data-theme="dark"]) .docs-navigation-section h2 {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .docs-navigation-section a {
    border-left: 3px solid transparent;
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .docs-navigation-section a:hover, :where(html[data-theme="dark"]) .docs-navigation-section a:focus-visible, :where(html[data-theme="dark"]) .docs-navigation-section a[aria-current="page"] {
    border-left-color: var(--primary);
    background: var(--primary-soft);
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .docs-search-empty {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .docs-introduction {
    border-bottom: 1px solid var(--border);
  }
  :where(html[data-theme="dark"]) .docs-introduction p:last-child {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .docs-directory-list {
    border-top: 1px solid var(--border);
  }
  :where(html[data-theme="dark"]) .docs-directory-link {
    border-bottom: 1px solid var(--border);
    color: var(--text);
  }
  :where(html[data-theme="dark"]) .docs-directory-link small {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .docs-directory-link span:last-child {
    color: var(--accent);
  }
  :where(html[data-theme="dark"]) .docs-directory-link:hover, :where(html[data-theme="dark"]) .docs-directory-link:focus-visible {
    background: var(--surface-alt);
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .docs-breadcrumbs {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .docs-article-header {
    border-bottom: 1px solid var(--border);
  }
  :where(html[data-theme="dark"]) .docs-mockup-window, :where(html[data-theme="dark"]) .docs-mockup-diagram {
    border: 1px solid var(--border);
    background: var(--bg);
    box-shadow: var(--shadow);
  }
  :where(html[data-theme="dark"]) .docs-mockup-diagram {
    background: var(--surface);
  }
  :where(html[data-theme="dark"]) .docs-mockup-bar {
    border-bottom: 1px solid var(--border);
    background: var(--surface-alt);
  }
  :where(html[data-theme="dark"]) .docs-mockup-dots i {
    background: #6d2c2c;
  }
  :where(html[data-theme="dark"]) .docs-mockup-dots i:nth-child(2) {
    background: #fbbf24;
  }
  :where(html[data-theme="dark"]) .docs-mockup-dots i:nth-child(3) {
    background: #34d399;
  }
  :where(html[data-theme="dark"]) .docs-mockup-url {
    border: 1px solid var(--border);
    background: var(--surface);
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .docs-mockup-title {
    color: var(--text);
  }
  :where(html[data-theme="dark"]) .docs-mockup-try {
    background: #1d472c;
    color: #b9f0ce;
  }
  :where(html[data-theme="dark"]) .docs-mockup-legend {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .docs-mockup-legend li::before, :where(html[data-theme="dark"]) .docs-marker {
    background: #ea580c;
    color: #fff;
  }
  :where(html[data-theme="dark"]) .docs-marker {
    box-shadow: 0 0 0 3px rgba(234, 88, 12, 0.22);
  }
  :where(html[data-theme="dark"]) .docs-mockup-note {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .mk-card {
    border: 1px solid var(--border);
    background: var(--surface);
  }
  :where(html[data-theme="dark"]) .mk-eyebrow {
    color: var(--accent);
  }
  :where(html[data-theme="dark"]) .mk-title {
    color: var(--text);
  }
  :where(html[data-theme="dark"]) .mk-subtitle {
    color: var(--text);
  }
  :where(html[data-theme="dark"]) .mk-muted {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .mk-label {
    color: var(--text);
  }
  :where(html[data-theme="dark"]) .mk-input {
    border: 1px solid var(--border);
    background: var(--surface);
    color: var(--text);
  }
  :where(html[data-theme="dark"]) .mk-input.is-empty {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .mk-btn {
    background: var(--primary);
    color: #fff;
  }
  :where(html[data-theme="dark"]) .mk-btn.is-secondary {
    background: var(--primary-soft);
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .mk-btn.is-danger {
    background: #411b1b;
    color: #f19e98;
  }
  :where(html[data-theme="dark"]) .mk-chip {
    border: 1px solid var(--border);
    background: var(--surface-alt);
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .mk-badge {
    background: var(--surface-alt);
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .mk-badge.is-blue {
    background: #1d2f47;
    color: #9baeee;
  }
  :where(html[data-theme="dark"]) .mk-badge.is-green {
    background: #1d472c;
    color: #b9f0ce;
  }
  :where(html[data-theme="dark"]) .mk-badge.is-orange {
    background: #49361e;
    color: #f4b6a1;
  }
  :where(html[data-theme="dark"]) .mk-badge.is-red {
    background: #451c1c;
    color: #efa3a3;
  }
  :where(html[data-theme="dark"]) .mk-table th, :where(html[data-theme="dark"]) .mk-table td {
    border-bottom: 1px solid var(--border);
  }
  :where(html[data-theme="dark"]) .mk-table th {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .mk-arrow {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .mk-key {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .mk-link {
    color: var(--accent);
  }
  :where(html[data-theme="dark"]) .mk-pre {
    border: 1px solid var(--border);
    background: #0f172a;
    color: #e2e8f0;
  }
  :where(html[data-theme="dark"]) .mk-flow-lane-title {
    color: var(--accent);
  }
  :where(html[data-theme="dark"]) .mk-flow-lane.is-lesson .mk-flow-lane-title {
    color: #adf2c7;
  }
  :where(html[data-theme="dark"]) .mk-flow-steps li {
    border: 1px solid var(--border);
    border-top: 3px solid var(--primary);
    background: var(--bg);
  }
  :where(html[data-theme="dark"]) .mk-flow-lane.is-lesson .mk-flow-steps li {
    border-top-color: #9ef2bd;
  }
  :where(html[data-theme="dark"]) .mk-flow-steps li:not(:last-child)::after {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .mk-flow-steps strong {
    color: var(--text);
  }
  :where(html[data-theme="dark"]) .mk-flow-steps small {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .mk-url-part.is-host {
    background: var(--surface-alt);
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .mk-url-part.is-teacher {
    background: #1d2f47;
    color: #9baeee;
  }
  :where(html[data-theme="dark"]) .mk-url-part.is-code {
    background: #1d472c;
    color: #b9f0ce;
  }
  :where(html[data-theme="dark"]) .mk-url-notes {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .mk-option {
    border: 1px solid var(--border);
    background: var(--surface);
  }
  :where(html[data-theme="dark"]) .mk-option.is-selected {
    border: 2px solid var(--primary);
    background: var(--primary-soft);
  }
  :where(html[data-theme="dark"]) .mk-option small {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .mk-blueprint-head {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .mk-blueprint-available {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .mk-blueprint-available.is-short, :where(html[data-theme="dark"]) .mk-blueprint-summary.is-short {
    color: #f19e98;
  }
  :where(html[data-theme="dark"]) .mk-blueprint-count input, :where(html[data-theme="dark"]) .mk-grade-scale input {
    border: 1px solid var(--border);
    background: var(--surface);
    color: var(--text);
  }
  :where(html[data-theme="dark"]) .mk-blueprint-summary {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .mk-slip {
    border: 1px dashed var(--muted);
    background: var(--surface);
  }
  :where(html[data-theme="dark"]) .mk-slip-brand {
    color: var(--accent);
  }
  :where(html[data-theme="dark"]) .mk-slip-name {
    color: var(--text);
  }
  :where(html[data-theme="dark"]) .mk-slip-code {
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .mk-slip-url {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .mk-entry-input {
    border: 2px solid var(--border);
    background: var(--surface);
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .mk-entry-input:focus {
    border-color: var(--primary);
    outline: none;
    box-shadow: 0 0 0 4px var(--primary-soft);
  }
  :where(html[data-theme="dark"]) .mk-entry-form .mk-btn {
    border: 0;
  }
  :where(html[data-theme="dark"]) .mk-state {
    border: 1px solid var(--border);
    background: var(--bg);
  }
  :where(html[data-theme="dark"]) .mk-state small {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .mk-lifecycle-back {
    border-left: 3px solid #9ef2bd;
    background: var(--bg);
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .mk-live-stats p {
    border: 1px solid var(--border);
    background: var(--surface);
  }
  :where(html[data-theme="dark"]) .mk-live-stats strong {
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .mk-live-stats span {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .mk-choice {
    border: 1px solid var(--border);
    background: var(--bg);
  }
  :where(html[data-theme="dark"]) .mk-choice:has(input:checked) {
    border-color: var(--primary);
    background: var(--primary-soft);
  }
  :where(html[data-theme="dark"]) .mk-test-grid span {
    border: 1px solid var(--border);
    background: var(--bg);
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .mk-test-grid span.is-answered {
    border-color: var(--primary);
    background: var(--primary-soft);
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .mk-test-grid span.is-current {
    outline: 2px solid var(--primary);
  }
  :where(html[data-theme="dark"]) .mk-grade-try input[type="range"] {
    accent-color: var(--accent);
  }
  :where(html[data-theme="dark"]) .mk-grade-percent {
    color: var(--text);
  }
  :where(html[data-theme="dark"]) .mk-grade-result {
    background: var(--primary-soft);
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .mk-percent {
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .mk-bars p {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .mk-bar {
    background: var(--surface-alt);
  }
  :where(html[data-theme="dark"]) .mk-bar i {
    background: #3d4a5c;
  }
  :where(html[data-theme="dark"]) .mk-bar i.is-correct {
    background: #16a34a;
  }
  :where(html[data-theme="dark"]) .mk-editor-block {
    border-left: 3px solid var(--primary);
  }
  :where(html[data-theme="dark"]) .mk-picker-search {
    border: 1px solid var(--border);
    background: var(--surface);
    color: var(--text);
  }
  :where(html[data-theme="dark"]) .mk-picker-button {
    border: 1px solid var(--border);
    background: var(--bg);
    color: var(--text);
  }
  :where(html[data-theme="dark"]) .mk-picker-more {
    border: 0;
    background: none;
    color: var(--accent);
  }
  :where(html[data-theme="dark"]) .mk-page {
    border: 1px solid var(--mk-page);
    background: var(--mk-page-soft);
    color: var(--mk-page-ink);
  }
  :where(html[data-theme="dark"]) .mk-page.is-current {
    background: var(--mk-page);
    color: #fff;
  }
  :where(html[data-theme="dark"]) .mk-page.is-theory, :where(html[data-theme="dark"]) .mk-page-dot.is-theory {
    --mk-page: #2563eb;
    --mk-page-ink: #aabced;
    --mk-page-soft: #1b2841;
  }
  :where(html[data-theme="dark"]) .mk-page.is-interactive, :where(html[data-theme="dark"]) .mk-page-dot.is-interactive {
    --mk-page: #16a34a;
    --mk-page-ink: #c1f0d4;
    --mk-page-soft: #1c452c;
  }
  :where(html[data-theme="dark"]) .mk-page.is-project, :where(html[data-theme="dark"]) .mk-page-dot.is-project {
    --mk-page: #ea580c;
    --mk-page-ink: #f3c0ae;
    --mk-page-soft: #422c1b;
  }
  :where(html[data-theme="dark"]) .mk-page-dot {
    background: var(--mk-page);
  }
  :where(html[data-theme="dark"]) .mk-pager-legend {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .mk-qr {
    background: #1d2734;
    fill: #e6e6e6;
  }
  :where(html[data-theme="dark"]) .mk-session-header {
    border-bottom: 1px solid var(--border);
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .mk-session-header strong {
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .mk-poll-option {
    border: 2px solid var(--border);
    background: var(--surface);
  }
  :where(html[data-theme="dark"]) .mk-poll-option.is-correct {
    border-color: #9ef2bd;
    background: #1c452c;
  }
  :where(html[data-theme="dark"]) .mk-poll-letter {
    background: var(--primary);
    color: #fff;
  }
  :where(html[data-theme="dark"]) .mk-poll-option.is-correct .mk-poll-letter {
    background: #16a34a;
  }
  :where(html[data-theme="dark"]) .mk-poll-option.is-correct .mk-bar i {
    background: #16a34a;
  }
  :where(html[data-theme="dark"]) .mk-poll-explanation {
    border-left: 3px solid #9ef2bd;
    background: var(--bg);
    color: var(--text);
  }
  :where(html[data-theme="dark"]) .mk-poll .mk-btn {
    border: 0;
  }
  :where(html[data-theme="dark"]) .docs-pagination {
    border-top: 1px solid var(--border);
  }
  :where(html[data-theme="dark"]) .docs-pagination a {
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .docs-pagination a span {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .site-footer {
    border-top: 1px solid var(--border);
    background: #212b3a;
  }
  :where(html[data-theme="dark"]) .footer-inner {
    color: var(--muted);
  }
  @media (max-width: 860px), (max-height: 520px) and (orientation: landscape) {
    :where(html[data-theme="dark"]) .docs-sidebar {
      border-bottom: 1px solid var(--border);
    }
    :where(html[data-theme="dark"]) .docs-sidebar-disclosure > summary {
      border: 1px solid var(--border);
      background: var(--surface);
      color: var(--primary-dark);
    }
  }
  :where(html[data-theme="dark"]) .test-live-dashboard {
    background: #202a38;
    border-bottom: 1px solid var(--border);
  }
  :where(html[data-theme="dark"]) .test-paused-banner {
    border-left: 4px solid #edca97;
    background: #43361b;
    color: #f7d9b3;
  }
  :where(html[data-theme="dark"]) .test-live-summary, :where(html[data-theme="dark"]) .test-results-summary {
    border: 1px solid var(--border);
    background: var(--border);
  }
  :where(html[data-theme="dark"]) .test-live-summary div, :where(html[data-theme="dark"]) .test-results-summary div {
    background: var(--surface);
  }
  :where(html[data-theme="dark"]) .test-live-summary dt, :where(html[data-theme="dark"]) .test-results-summary dt, :where(html[data-theme="dark"]) .test-question-stats dt {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .test-live-table-wrap {
    border: 1px solid var(--border);
    background: var(--surface);
  }
  :where(html[data-theme="dark"]) .test-live-table th, :where(html[data-theme="dark"]) .test-live-table td {
    border-bottom: 1px solid var(--border);
  }
  :where(html[data-theme="dark"]) .test-live-table th {
    background: var(--surface-alt);
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .test-live-table tbody tr:last-child td {
    border-bottom: 0;
  }
  :where(html[data-theme="dark"]) .test-live-remaining {
    color: #e6afac;
  }
  :where(html[data-theme="dark"]) .test-live-actions summary {
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .test-live-actions > div {
    border: 1px solid var(--border);
    background: var(--surface);
  }
  :where(html[data-theme="dark"]) .test-live-sync {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .test-live-sync.is-error {
    color: #e7a6a3;
  }
  :where(html[data-theme="dark"]) .test-results-table a {
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .test-result-filter .secondary-btn.is-active {
    background: var(--primary);
    color: #fff;
    border-color: transparent;
  }
  :where(html[data-theme="dark"]) .test-result-filter-empty {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .test-question-analytic, :where(html[data-theme="dark"]) .test-result-question {
    border: 1px solid var(--border);
    background: var(--surface);
  }
  :where(html[data-theme="dark"]) .test-answer-distribution > span, :where(html[data-theme="dark"]) .test-answer-distribution > div {
    border: 1px solid var(--border);
    background: var(--surface-alt);
  }
  :where(html[data-theme="dark"]) .test-answer-distribution > .is-correct, :where(html[data-theme="dark"]) .test-result-options .is-correct, :where(html[data-theme="dark"]) .test-question-analytic-heading .is-correct {
    border-color: #4c835d;
    background: #222d3c;
    color: #c1e4cc;
  }
  :where(html[data-theme="dark"]) .test-result-lead {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .test-result-lead strong {
    color: var(--text);
  }
  :where(html[data-theme="dark"]) .test-result-option {
    border: 1px solid var(--border);
  }
  :where(html[data-theme="dark"]) .test-result-options .is-wrong, :where(html[data-theme="dark"]) .test-question-analytic-heading .is-wrong {
    border-color: #7a3832;
    background: #3f1c1a;
    color: #e8b2ae;
  }
  :where(html[data-theme="dark"]) .test-question-analytic-heading .is-partial {
    border-color: #907537;
    background: #483d1e;
    color: #f7ddb3;
  }
  :where(html[data-theme="dark"]) .test-result-options small {
    color: inherit;
  }
  :where(html[data-theme="dark"]) .student-test-body {
    background: #212b3a;
    color: #cedbee;
  }
  :where(html[data-theme="dark"]) .student-test-brand {
    border-bottom: 1px solid #334453;
    background: #1d2734;
  }
  :where(html[data-theme="dark"]) .student-test-brand a {
    color: #a9d2f5;
  }
  :where(html[data-theme="dark"]) .student-test-brand span {
    border-left: 1px solid #3c4c5a;
    color: #bac4cf;
  }
  :where(html[data-theme="dark"]) .student-test-entry {
    border: 1px solid #334453;
    border-top: 4px solid #a2d1f5;
    background: #1d2734;
    box-shadow: 0 12px 32px rgba(19, 34, 56, 0.08);
  }
  :where(html[data-theme="dark"]) .student-test-code-form input {
    border: 2px solid #485d6f;
  }
  :where(html[data-theme="dark"]) .student-test-alert {
    border-left: 4px solid #e39995;
    background: #3f1c1a;
    color: #ecb3b0;
  }
  :where(html[data-theme="dark"]) .student-test-summary div {
    border: 1px solid #334453;
    background: #1f2a38;
  }
  :where(html[data-theme="dark"]) .student-test-summary dt {
    color: #b7c1cb;
  }
  :where(html[data-theme="dark"]) .student-test-session-header {
    border-bottom: 1px solid #374958;
  }
  :where(html[data-theme="dark"]) .student-test-timer {
    color: #e7a8a5;
  }
  :where(html[data-theme="dark"]) .student-test-save-state {
    color: #badcc5;
  }
  :where(html[data-theme="dark"]) .student-test-save-state.is-error {
    color: #e6a5a2;
  }
  :where(html[data-theme="dark"]) .student-test-question {
    border: 1px solid #334555;
    background: #1d2734;
    box-shadow: 0 8px 24px rgba(19, 34, 56, 0.06);
  }
  :where(html[data-theme="dark"]) .student-test-question-number {
    color: #b7c1cb;
  }
  :where(html[data-theme="dark"]) .student-test-options {
    border: 0;
  }
  :where(html[data-theme="dark"]) .student-test-option {
    border: 1px solid #3e5261;
    background: #1d2734;
  }
  :where(html[data-theme="dark"]) .student-test-option:hover {
    border-color: #a2d1f5;
    background: #202b39;
  }
  :where(html[data-theme="dark"]) .student-test-option:has(input:checked) {
    border-color: #a2d1f5;
    box-shadow: inset 4px 0 0 #0c5f9e;
    background: #1b3442;
  }
  :where(html[data-theme="dark"]) .answer-option-code {
    border: 1px solid #34495b;
    background: #17232e;
    color: #f4f7f9;
  }
  :where(html[data-theme="dark"]) .student-test-immediate-feedback.is-correct {
    border: 1px solid #478659;
    background: #222d3c;
    color: #c0e7cc;
  }
  :where(html[data-theme="dark"]) .student-test-immediate-feedback.is-wrong {
    border: 1px solid #7a3832;
    background: #3f1c1a;
    color: #e8b2ae;
  }
  :where(html[data-theme="dark"]) .student-test-overview {
    border-left: 3px solid #a2d1f5;
    background: #1d2734;
  }
  :where(html[data-theme="dark"]) .student-test-overview-grid button {
    border: 1px solid #435666;
    background: #1d2734;
    color: #c9d6e5;
  }
  :where(html[data-theme="dark"]) .student-test-overview-grid button.is-answered {
    border-color: #b3d8c0;
    background: #232e3e;
    color: #c1e4cc;
  }
  :where(html[data-theme="dark"]) .student-test-overview-grid button.is-current {
    outline: 3px solid #2f5e7c;
  }
  :where(html[data-theme="dark"]) .student-test-pause-overlay {
    background: rgba(20, 31, 43, 0.7);
  }
  :where(html[data-theme="dark"]) .student-test-pause-overlay > div {
    background: #1d2734;
  }
  :where(html[data-theme="dark"]) .student-test-submit-dialog {
    border: 0;
    box-shadow: 0 24px 70px rgba(0, 0, 0, 0.28);
  }
  :where(html[data-theme="dark"]) .student-test-submit-dialog::backdrop {
    background: rgba(20, 31, 43, 0.62);
  }
  :where(html[data-theme="dark"]) .student-test-score {
    border-left: 4px solid #b4e2c4;
    background: #222d3c;
  }
  :where(html[data-theme="dark"]) .student-test-review-question {
    border: 1px solid #334555;
    background: #1d2734;
  }
  :where(html[data-theme="dark"]) .student-test-review-options .is-correct, :where(html[data-theme="dark"]) .student-test-review-result.is-correct {
    background: #232e3e;
    color: #c1e4cc;
  }
  :where(html[data-theme="dark"]) .student-test-review-options .is-wrong, :where(html[data-theme="dark"]) .student-test-review-result.is-wrong {
    background: #401c1a;
    color: #e9b2ae;
  }
  :where(html[data-theme="dark"]) .student-test-review-result.is-partial {
    background: #483d1e;
    color: #f7ddb3;
  }
  :where(html[data-theme="dark"]) .student-test-explanation {
    background: #222d3c;
    color: #c3d2df;
  }
  :where(html[data-theme="dark"]) .student-test-release-message {
    border-left: 4px solid #ebc892;
    background: #42351b;
  }
  :where(html[data-theme="dark"]) .test-session-form textarea {
    border: 1px solid #435666;
  }
  @media (max-width: 760px) {
    :where(html[data-theme="dark"]) .student-test-overview {
      border-left: 0;
      border-top: 3px solid #a2d1f5;
    }
  }
  :where(html[data-theme="dark"]) .maturita-test-tools {
    border: 1px solid rgba(20, 31, 46, 0.12);
    background: rgba(29, 39, 52, 0.96);
    box-shadow: 0 10px 28px rgba(20, 31, 46, 0.08);
  }
  :where(html[data-theme="dark"]) .maturita-progress {
    background: #263243;
  }
  :where(html[data-theme="dark"]) .maturita-progress span {
    background: #2563eb;
  }
  :where(html[data-theme="dark"]) .maturita-review-links a {
    border: 1px solid rgba(20, 31, 46, 0.14);
  }
  :where(html[data-theme="dark"]) .maturita-test-question {
    border: 1px solid rgba(20, 31, 46, 0.1);
    background: #1d2734;
  }
  :where(html[data-theme="dark"]) .maturita-test-question.is-unanswered {
    border-color: #f4c19b;
    box-shadow: 0 0 0 3px rgba(245, 158, 11, 0.18);
  }
  :where(html[data-theme="dark"]) .maturita-submit-warning {
    border: 1px solid rgba(244, 193, 155, 0.32);
    background: #402f1a;
    color: #f3c0ae;
  }
  :where(html[data-theme="dark"]) .maturita-breakdown-grid div, :where(html[data-theme="dark"]) .maturita-weakest-area {
    border: 1px solid rgba(20, 31, 46, 0.1);
    background: #1f2937;
  }
  :where(html[data-theme="dark"]) .maturita-filter-buttons .is-active {
    border-color: #3d5ca0;
    color: #89a4ef;
  }
  :where(html[data-theme="dark"]) .maturita-teacher-breakdown span {
    background: #1a2340;
  }
  :where(html[data-theme="dark"]) .lesson-list-row {
    background: var(--surface);
    border: 1px solid var(--border);
  }
  :where(html[data-theme="dark"]) .lesson-list-row-title strong {
    color: var(--text);
  }
  :where(html[data-theme="dark"]) .lesson-list-row-title span {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .submission-answer-text.is-indented {
    background: rgba(27, 36, 48, 0.05);
    color: var(--text);
  }
  :where(html[data-theme="dark"]) .lesson-answer-indent-hint {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .lesson-subject-link {
    color: inherit;
    text-decoration-color: color-mix(in srgb, currentColor 35%, transparent);
  }
  :where(html[data-theme="dark"]) .lesson-subject-link:hover, :where(html[data-theme="dark"]) .lesson-subject-link:focus-visible {
    color: var(--accent);
    text-decoration-color: currentColor;
  }
  :where(html[data-theme="dark"]) .lesson-status-badge.draft {
    background: var(--surface-alt);
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .lesson-status-badge.published {
    background: rgba(47, 158, 113, 0.12);
    color: var(--success);
  }
  :where(html[data-theme="dark"]) .lesson-review-verdict--ok {
    background: rgba(47, 158, 113, 0.12);
    color: #b7f0da;
  }
  :where(html[data-theme="dark"]) .lesson-review-verdict--minor {
    background: #483e1e;
    color: #f7e0b3;
  }
  :where(html[data-theme="dark"]) .lesson-review-verdict--problem {
    background: #3f1c1a;
    color: #f3a5a0;
  }
  :where(html[data-theme="dark"]) .lesson-list-row.is-review-pending {
    border-left: 4px solid var(--accent);
  }
  :where(html[data-theme="dark"]) .lesson-review-finding {
    border: 1px solid var(--border);
    border-left: 4px solid var(--muted);
  }
  :where(html[data-theme="dark"]) .lesson-review-finding--major {
    border-left-color: #f19e98;
  }
  :where(html[data-theme="dark"]) .lesson-review-finding--minor {
    border-left-color: #edca97;
  }
  :where(html[data-theme="dark"]) .lesson-review-finding--info {
    border-left-color: var(--accent);
  }
  :where(html[data-theme="dark"]) .lesson-review-finding-tags {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .lesson-review-suggestion {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .back-link {
    color: var(--accent);
  }
  :where(html[data-theme="dark"]) .lesson-editor-meta {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .lesson-editor-block {
    border: 1px solid var(--border);
    background: #1e2836;
  }
  :where(html[data-theme="dark"]) .lesson-editor-drag-handle {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .lesson-editor-drag-handle:hover {
    background: var(--surface-alt);
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .lesson-editor-block.is-drop-before, :where(html[data-theme="dark"]) .lesson-order-row.is-drop-before {
    box-shadow: 0 -4px 0 0 var(--primary);
  }
  :where(html[data-theme="dark"]) .lesson-editor-block.is-drop-after, :where(html[data-theme="dark"]) .lesson-order-row.is-drop-after {
    box-shadow: 0 4px 0 0 var(--primary);
  }
  @media (prefers-reduced-motion: reduce) {
    :where(html[data-theme="dark"]) .lesson-editor-block.is-moved, :where(html[data-theme="dark"]) .lesson-order-row.is-moved {
      border-color: var(--primary);
    }
  }
  :where(html[data-theme="dark"]) .lesson-order-row {
    border: 1px solid var(--border);
    background: var(--surface);
  }
  :where(html[data-theme="dark"]) .lesson-order-number {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .lesson-order-meta {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .lesson-editor-block-type-badge {
    color: var(--primary-dark);
    background: var(--surface-alt);
  }
  :where(html[data-theme="dark"]) .lesson-editor-block-summary {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .lesson-editor-block-btn {
    border: 1px solid var(--border);
    background: #1d2734;
    color: var(--text);
  }
  :where(html[data-theme="dark"]) .lesson-editor-block-btn:hover {
    background: var(--surface-alt);
  }
  :where(html[data-theme="dark"]) .lesson-editor-block-btn.lesson-editor-block-delete {
    color: #f19e98;
    border-color: rgba(241, 158, 152, 0.3);
  }
  :where(html[data-theme="dark"]) .lesson-editor-block-body {
    border-top: 1px dashed var(--border);
  }
  :where(html[data-theme="dark"]) .lesson-editor-field span {
    color: var(--text);
  }
  :where(html[data-theme="dark"]) .lesson-editor-field input, :where(html[data-theme="dark"]) .lesson-editor-field select, :where(html[data-theme="dark"]) .lesson-editor-field textarea {
    border: 1px solid var(--border);
  }
  :where(html[data-theme="dark"]) .block-type-picker {
    border: 1px solid var(--border);
    background: #1d2734;
  }
  :where(html[data-theme="dark"]) .block-type-picker-search {
    border: 1px solid var(--border);
  }
  :where(html[data-theme="dark"]) .block-type-picker-more {
    border: 0;
    background: none;
    color: var(--accent);
  }
  :where(html[data-theme="dark"]) .block-type-picker-group-label {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .two-columns-editor-column {
    border: 1px solid var(--border);
    background: #1d2734;
  }
  :where(html[data-theme="dark"]) .two-columns-editor-label {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .lesson-editor-mode-btn.is-active {
    background: var(--primary);
    color: #fff;
    border-color: transparent;
  }
  :where(html[data-theme="dark"]) .preview-group-switcher .secondary-btn.is-active {
    background: var(--primary);
    color: #fff;
    border-color: transparent;
  }
  :where(html[data-theme="dark"]) .lesson-editor-save-feedback {
    color: var(--success);
  }
  :where(html[data-theme="dark"]) .lesson-block-list {
    color: var(--text);
  }
  :where(html[data-theme="dark"]) ol.lesson-block-list li::before {
    background: var(--primary);
    color: #fff;
  }
  :where(html[data-theme="dark"]) ul.lesson-block-list li::before {
    background: var(--primary);
    box-shadow: 0 0 0 4px var(--primary-soft);
  }
  :where(html[data-theme="dark"]) .lesson-step-number {
    background: var(--primary);
    color: #fff;
  }
  :where(html[data-theme="dark"]) .detail-card .lesson-step-detail, :where(html[data-theme="dark"]) .lesson-step-detail {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .lesson-step-detail kbd, :where(html[data-theme="dark"]) .lesson-mini-card kbd, :where(html[data-theme="dark"]) .lesson-interactive-block kbd, :where(html[data-theme="dark"]) .lesson-block kbd, :where(html[data-theme="dark"]) .english-feedback-row kbd {
    border: 1px solid #2f496b;
    background: #1d2734;
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .lesson-inline-code {
    border: 1px solid rgba(27, 36, 48, 0.14);
    border: 1px solid color-mix(in srgb, currentColor 16%, transparent);
    background: rgba(27, 36, 48, 0.06);
    background: color-mix(in srgb, currentColor 8%, transparent);
    color: inherit;
  }
  :where(html[data-theme="dark"]) .lesson-block-formula figcaption {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .lesson-inline-ui {
    background: var(--primary-soft);
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .lesson-mini-card {
    border: 1px solid #254162;
    background: var(--surface);
  }
  :where(html[data-theme="dark"]) .lesson-mini-card strong {
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .detail-card .lesson-mini-card p, :where(html[data-theme="dark"]) .lesson-mini-card p {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .lesson-timeline-item:not(:last-child)::before {
    background: #213852;
  }
  :where(html[data-theme="dark"]) .lesson-timeline-marker {
    border: 3px solid var(--primary);
    background: var(--surface);
  }
  :where(html[data-theme="dark"]) .detail-card .lesson-timeline-date, :where(html[data-theme="dark"]) .lesson-timeline-date {
    background: var(--primary-soft);
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .detail-card .lesson-timeline-text, :where(html[data-theme="dark"]) .lesson-timeline-text {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .lesson-interactive-block {
    border: 1px solid #254162;
    border-left: 4px solid var(--primary);
    background: var(--surface);
  }
  :where(html[data-theme="dark"]) .lesson-interactive-title {
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .detail-card .lesson-interactive-result, :where(html[data-theme="dark"]) .lesson-interactive-result {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .lesson-interactive-result.is-correct {
    color: #b7f0da;
  }
  :where(html[data-theme="dark"]) .lesson-interactive-result.is-wrong {
    color: #f3a5a0;
  }
  :where(html[data-theme="dark"]) .lesson-interactive-result.is-partial {
    color: #f6ddad;
  }
  :where(html[data-theme="dark"]) .lesson-interactive-note {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .lesson-math-answer-input {
    border: 2px solid #4c6276;
    background: #1d2734;
    color: var(--text);
  }
  :where(html[data-theme="dark"]) .lesson-math-answer-input:focus-visible {
    outline: 3px solid var(--accent);
  }
  :where(html[data-theme="dark"]) .lesson-math-answer-input.is-correct {
    border-color: var(--success);
    background: #1b4332;
  }
  :where(html[data-theme="dark"]) .lesson-math-answer-input.is-wrong {
    border-color: #f19e98;
    background: #3f1c1a;
  }
  :where(html[data-theme="dark"]) .lesson-math-answer-unit {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .lesson-math-understood {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .lesson-math-solution {
    border-left: 4px solid var(--success);
    background: var(--surface-alt);
  }
  :where(html[data-theme="dark"]) .lesson-practice-score {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .lesson-steps-equation-label {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .lesson-steps-status.is-correct {
    color: var(--success);
  }
  :where(html[data-theme="dark"]) .lesson-steps-status.is-wrong {
    color: #f19e98;
  }
  :where(html[data-theme="dark"]) .lesson-steps-note {
    color: #f3a5a0;
  }
  :where(html[data-theme="dark"]) .lesson-steps-help {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .lesson-graph-canvas {
    border: 1px solid var(--border);
    background: var(--surface);
  }
  :where(html[data-theme="dark"]) .lesson-graph-grid line {
    stroke: var(--border);
  }
  :where(html[data-theme="dark"]) .lesson-graph-axes line {
    stroke: var(--muted);
  }
  :where(html[data-theme="dark"]) .lesson-graph-axes text {
    fill: var(--muted);
  }
  :where(html[data-theme="dark"]) .lesson-graph-line {
    fill: none;
  }
  :where(html[data-theme="dark"]) .lesson-block-function-graph {
    --graph-1: #2563c9;
    --graph-2: #d1495b;
    --graph-3: #1b9e77;
    --graph-4: #9a6fb0;
  }
  :where(html[data-theme="dark"]) .lesson-graph-line-1 {
    stroke: var(--graph-1);
  }
  :where(html[data-theme="dark"]) .lesson-graph-line-2 {
    stroke: var(--graph-2);
  }
  :where(html[data-theme="dark"]) .lesson-graph-line-3 {
    stroke: var(--graph-3);
  }
  :where(html[data-theme="dark"]) .lesson-graph-line-4 {
    stroke: var(--graph-4);
  }
  :where(html[data-theme="dark"]) .lesson-graph-swatch-1 {
    background: var(--graph-1);
  }
  :where(html[data-theme="dark"]) .lesson-graph-swatch-2 {
    background: var(--graph-2);
  }
  :where(html[data-theme="dark"]) .lesson-graph-swatch-3 {
    background: var(--graph-3);
  }
  :where(html[data-theme="dark"]) .lesson-graph-swatch-4 {
    background: var(--graph-4);
  }
  :where(html[data-theme="dark"]) .lesson-graph-slider input {
    accent-color: var(--accent);
  }
  :where(html[data-theme="dark"]) .lesson-block-function-graph figcaption, :where(html[data-theme="dark"]) .lesson-block-number-line figcaption, :where(html[data-theme="dark"]) .lesson-block-geogebra figcaption {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .lesson-number-line-axis, :where(html[data-theme="dark"]) .lesson-number-line-tick {
    stroke: var(--text);
  }
  :where(html[data-theme="dark"]) .lesson-number-line-arrow {
    fill: var(--text);
  }
  :where(html[data-theme="dark"]) .lesson-number-line-label, :where(html[data-theme="dark"]) .lesson-number-line-point-label, :where(html[data-theme="dark"]) .lesson-number-line-interval-label {
    fill: var(--text);
  }
  :where(html[data-theme="dark"]) .lesson-block-number-line {
    --line-1: #90b3eb;
    --line-2: #9d3b48;
    --line-3: #a1efd8;
    --line-4: #754c8a;
  }
  :where(html[data-theme="dark"]) .lesson-number-line-interval-1 {
    stroke: var(--line-1);
    fill: var(--line-1);
  }
  :where(html[data-theme="dark"]) .lesson-number-line-interval-2 {
    stroke: var(--line-2);
    fill: var(--line-2);
  }
  :where(html[data-theme="dark"]) .lesson-number-line-interval-3 {
    stroke: var(--line-3);
    fill: var(--line-3);
  }
  :where(html[data-theme="dark"]) .lesson-number-line-interval-4 {
    stroke: var(--line-4);
    fill: var(--line-4);
  }
  :where(html[data-theme="dark"]) .lesson-number-line-interval.is-open, :where(html[data-theme="dark"]) .lesson-number-line-point.is-open {
    fill: var(--surface);
  }
  :where(html[data-theme="dark"]) .lesson-number-line-point {
    stroke: var(--text);
    fill: var(--text);
  }
  :where(html[data-theme="dark"]) .geometry-canvas {
    --geo-1: #2563c9;
    --geo-2: #d1495b;
    --geo-3: #1b9e77;
    --geo-4: #9a6fb0;
    --geo-target: #c2410c;
    border: 1px solid var(--border);
    background: var(--surface);
  }
  :where(html[data-theme="dark"]) .lesson-practice-figure figcaption, :where(html[data-theme="dark"]) .lesson-block-geometry figcaption, :where(html[data-theme="dark"]) .lesson-block-solid figcaption, :where(html[data-theme="dark"]) .geometry-caption {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .geometry-hint {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .geometry-grid line {
    stroke: var(--border);
  }
  :where(html[data-theme="dark"]) .geometry-axes line {
    stroke: var(--muted);
  }
  :where(html[data-theme="dark"]) .geometry-axes text {
    fill: var(--muted);
  }
  :where(html[data-theme="dark"]) .geometry-line, :where(html[data-theme="dark"]) .geometry-polygon, :where(html[data-theme="dark"]) .geometry-circle, :where(html[data-theme="dark"]) .geometry-tick, :where(html[data-theme="dark"]) .solid-edge {
    fill: none;
    stroke: var(--geo-ink);
  }
  :where(html[data-theme="dark"]) .geometry-color-1 {
    stroke: var(--geo-1);
  }
  :where(html[data-theme="dark"]) .geometry-color-2 {
    stroke: var(--geo-2);
  }
  :where(html[data-theme="dark"]) .geometry-color-3 {
    stroke: var(--geo-3);
  }
  :where(html[data-theme="dark"]) .geometry-color-4 {
    stroke: var(--geo-4);
  }
  :where(html[data-theme="dark"]) .geometry-polygon.is-filled.geometry-color-1, :where(html[data-theme="dark"]) .geometry-circle.is-filled.geometry-color-1, :where(html[data-theme="dark"]) .geometry-angle.is-filled.geometry-color-1 {
    fill: color-mix(in srgb, var(--geo-1) 14%, transparent);
  }
  :where(html[data-theme="dark"]) .geometry-polygon.is-filled.geometry-color-2, :where(html[data-theme="dark"]) .geometry-circle.is-filled.geometry-color-2, :where(html[data-theme="dark"]) .geometry-angle.is-filled.geometry-color-2 {
    fill: color-mix(in srgb, var(--geo-2) 14%, transparent);
  }
  :where(html[data-theme="dark"]) .geometry-polygon.is-filled.geometry-color-3, :where(html[data-theme="dark"]) .geometry-circle.is-filled.geometry-color-3, :where(html[data-theme="dark"]) .geometry-angle.is-filled.geometry-color-3 {
    fill: color-mix(in srgb, var(--geo-3) 14%, transparent);
  }
  :where(html[data-theme="dark"]) .geometry-polygon.is-filled.geometry-color-4, :where(html[data-theme="dark"]) .geometry-circle.is-filled.geometry-color-4, :where(html[data-theme="dark"]) .geometry-angle.is-filled.geometry-color-4 {
    fill: color-mix(in srgb, var(--geo-4) 14%, transparent);
  }
  :where(html[data-theme="dark"]) .geometry-angle {
    fill: none;
  }
  :where(html[data-theme="dark"]) .geometry-angle-dot {
    fill: var(--geo-ink);
  }
  :where(html[data-theme="dark"]) .geometry-arrow {
    fill: var(--geo-ink);
  }
  :where(html[data-theme="dark"]) .geometry-label, :where(html[data-theme="dark"]) .geometry-point-name {
    fill: var(--geo-ink);
    stroke: var(--surface);
  }
  :where(html[data-theme="dark"]) .geometry-point-dot {
    fill: var(--geo-ink);
  }
  :where(html[data-theme="dark"]) .geometry-point.is-draggable .geometry-point-dot {
    fill: var(--geo-1);
    stroke: var(--surface);
  }
  :where(html[data-theme="dark"]) .geometry-point.is-target .geometry-point-dot {
    fill: var(--geo-target);
  }
  :where(html[data-theme="dark"]) .geometry-point.is-correct .geometry-point-dot {
    fill: var(--success);
  }
  :where(html[data-theme="dark"]) .geometry-point.is-wrong .geometry-point-dot {
    fill: #f19e98;
  }
  :where(html[data-theme="dark"]) .geometry-point-hit {
    fill: transparent;
  }
  :where(html[data-theme="dark"]) .geometry-point.is-draggable:focus {
    outline: none;
  }
  :where(html[data-theme="dark"]) .geometry-point.is-draggable:focus-visible .geometry-point-hit {
    stroke: var(--accent);
  }
  :where(html[data-theme="dark"]) .geometry-point.is-correct .geometry-point-mark {
    fill: var(--success);
  }
  :where(html[data-theme="dark"]) .geometry-point.is-wrong .geometry-point-mark {
    fill: #f19e98;
  }
  :where(html[data-theme="dark"]) .geometry-answer-ghost {
    fill: none;
    stroke: var(--success);
  }
  :where(html[data-theme="dark"]) .solid-face {
    fill: color-mix(in srgb, var(--geo-1) 12%, transparent);
    stroke: var(--geo-ink);
  }
  :where(html[data-theme="dark"]) .solid-face.is-base {
    fill: color-mix(in srgb, var(--geo-3) 20%, transparent);
  }
  :where(html[data-theme="dark"]) .solid-net-slider input {
    accent-color: var(--accent);
  }
  :where(html[data-theme="dark"]) .solid-svg:focus-visible {
    outline: 3px solid var(--accent);
  }
  :where(html[data-theme="dark"]) .lesson-geogebra-frame {
    border: 1px dashed var(--border);
    background: var(--surface-alt);
  }
  :where(html[data-theme="dark"]) .lesson-geogebra-frame.is-loaded {
    border: 0;
    background: none;
  }
  :where(html[data-theme="dark"]) .lesson-geogebra-note {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .lesson-geogebra-iframe {
    border: 0;
  }
  :where(html[data-theme="dark"]) .lesson-interactive-code {
    border: 1px solid #c8d0d6;
    background: #18242f;
    color: #f4f7f9;
  }
  :where(html[data-theme="dark"]) .lesson-fill-blank {
    border: 2px solid #4c6276;
    background: #1d2734;
    color: #dce0e4;
  }
  :where(html[data-theme="dark"]) .lesson-fill-blank.is-correct, :where(html[data-theme="dark"]) .lesson-trace-table input.is-correct {
    border-color: var(--success);
    background: #1b4332;
  }
  :where(html[data-theme="dark"]) .lesson-fill-blank.is-wrong, :where(html[data-theme="dark"]) .lesson-trace-table input.is-wrong {
    border-color: #f19e98;
    background: #3f1c1a;
  }
  :where(html[data-theme="dark"]) .detail-card .lesson-fill-text, :where(html[data-theme="dark"]) .lesson-fill-text {
    color: var(--text);
  }
  :where(html[data-theme="dark"]) .lesson-fill-hint-toggle {
    border: 1px solid #4c6276;
    background: var(--surface);
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .lesson-fill-hint-toggle:hover {
    border-color: var(--primary);
  }
  :where(html[data-theme="dark"]) .lesson-fill-hint-toggle[aria-expanded="true"] {
    border-color: var(--primary);
    background: var(--primary);
    color: #fff;
  }
  :where(html[data-theme="dark"]) .detail-card .lesson-fill-hint, :where(html[data-theme="dark"]) .lesson-fill-hint {
    border-left: 3px solid var(--accent);
    background: var(--surface-alt);
    color: var(--text);
  }
  :where(html[data-theme="dark"]) .lesson-fill-status.is-correct {
    color: #b7f0da;
  }
  :where(html[data-theme="dark"]) .lesson-fill-status.is-wrong {
    color: #f3a5a0;
  }
  :where(html[data-theme="dark"]) .lesson-fill-explanation {
    border-left: 4px solid var(--success);
    background: var(--surface-alt);
  }
  :where(html[data-theme="dark"]) .lesson-order-item {
    border: 1px solid var(--border);
    background: var(--surface-alt);
  }
  :where(html[data-theme="dark"]) .lesson-order-item.is-correct {
    border-color: var(--success);
    background: #1b4332;
  }
  :where(html[data-theme="dark"]) .lesson-order-item.is-wrong {
    border-color: #f19e98;
    background: #3f1c1a;
  }
  :where(html[data-theme="dark"]) .lesson-order-position {
    background: var(--primary);
    color: #fff;
  }
  :where(html[data-theme="dark"]) .lesson-interactive-icon-btn {
    border: 1px solid var(--border);
    background: #1d2734;
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .lesson-match-column h4 {
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .lesson-match-item {
    border: 1px solid var(--border);
    background: #1d2734;
    color: var(--text);
  }
  :where(html[data-theme="dark"]) .lesson-match-item.is-selected {
    border-color: var(--primary);
    box-shadow: 0 0 0 3px var(--primary-soft);
  }
  :where(html[data-theme="dark"]) .lesson-match-item.is-correct {
    border-color: var(--success);
    background: #1b4332;
    color: #b7f0da;
  }
  :where(html[data-theme="dark"]) .lesson-match-item.is-wrong {
    border-color: #f19e98;
    background: #3f1c1a;
    color: #f3a5a0;
  }
  :where(html[data-theme="dark"]) .detail-card .lesson-match-counter, :where(html[data-theme="dark"]) .lesson-match-counter {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .detail-card .lesson-flashcards-counter, :where(html[data-theme="dark"]) .lesson-flashcards-counter {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .lesson-flashcard {
    border: 0;
    background: transparent;
    color: var(--text);
  }
  :where(html[data-theme="dark"]) .lesson-flashcard-face {
    border: 1px solid #254162;
    background: var(--surface);
  }
  :where(html[data-theme="dark"]) .lesson-flashcard-front {
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .lesson-flashcard-back {
    border-color: var(--primary);
    background: var(--primary-soft);
  }
  :where(html[data-theme="dark"]) .lesson-flashcard:hover .lesson-flashcard-face {
    border-color: var(--primary);
  }
  :where(html[data-theme="dark"]) .lesson-interactive-block .lesson-flashcard:focus-visible {
    outline: 3px solid rgba(61, 92, 160, 0.35);
  }
  :where(html[data-theme="dark"]) .lesson-find-code {
    border: 1px solid #c8d0d6;
    background: #18242f;
  }
  :where(html[data-theme="dark"]) .lesson-find-line {
    border: 0;
    background: transparent;
    color: #f4f7f9;
  }
  :where(html[data-theme="dark"]) .lesson-find-line:hover:not(:disabled), :where(html[data-theme="dark"]) .lesson-find-line:focus-visible {
    background: rgba(255, 255, 255, 0.09);
  }
  :where(html[data-theme="dark"]) .lesson-find-line.is-correct {
    background: rgba(47, 158, 113, 0.28);
  }
  :where(html[data-theme="dark"]) .lesson-find-line.is-wrong {
    background: rgba(180, 35, 24, 0.36);
  }
  :where(html[data-theme="dark"]) .lesson-find-line-number {
    border-right: 1px solid rgba(255, 255, 255, 0.16);
    color: #9fb1c1;
  }
  :where(html[data-theme="dark"]) .lesson-find-line code {
    color: inherit;
  }
  :where(html[data-theme="dark"]) .lesson-trace-table th, :where(html[data-theme="dark"]) .lesson-trace-table td {
    border: 1px solid var(--border);
  }
  :where(html[data-theme="dark"]) .lesson-trace-table thead th {
    background: var(--surface-alt);
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .lesson-trace-table tbody th {
    background: #1f2937;
  }
  :where(html[data-theme="dark"]) .lesson-trace-table input {
    border: 2px solid var(--border);
  }
  :where(html[data-theme="dark"]) .lesson-trace-table input[readonly] {
    border-color: transparent;
    background: var(--surface-alt);
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .lesson-interactive-block button:focus-visible, :where(html[data-theme="dark"]) .lesson-interactive-block input:focus-visible {
    outline: 3px solid rgba(61, 92, 160, 0.35);
  }
  :where(html[data-theme="dark"]) .lesson-block-table th, :where(html[data-theme="dark"]) .lesson-block-table td {
    border: 1px solid var(--border);
  }
  :where(html[data-theme="dark"]) .lesson-block-table th {
    background: var(--surface-alt);
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .lesson-block-code {
    border: 1px solid #c8d0d6;
    background: #18242f;
    color: #f4f7f9;
  }
  :where(html[data-theme="dark"]) .lesson-code-copy {
    border: 1px solid #4a5b69;
    background: #2c3b48;
    color: #f4f7f9;
  }
  :where(html[data-theme="dark"]) .lesson-code-copy:hover {
    background: #3b4d5c;
  }
  :where(html[data-theme="dark"]) .lesson-code-copy.is-copied {
    border-color: #2f8f5b;
    background: #1f6b43;
  }
  :where(html[data-theme="dark"]) .lesson-block-reveal {
    border: 1px solid var(--border);
    background: var(--surface);
  }
  :where(html[data-theme="dark"]) .lesson-block-reveal > summary {
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .lesson-block-reveal-hint {
    border-left: 4px solid var(--accent);
  }
  :where(html[data-theme="dark"]) .lesson-block-reveal-solution {
    border-left: 4px solid var(--success);
  }
  :where(html[data-theme="dark"]) .lesson-block-reveal-info {
    border-left: 4px solid var(--primary);
  }
  :where(html[data-theme="dark"]) .lesson-route-tabs {
    border: 1px solid var(--border);
    background: rgba(29, 39, 52, 0.96);
    box-shadow: 0 0.35rem 1rem rgba(17, 24, 39, 0.1);
  }
  :where(html[data-theme="dark"]) .lesson-route-tab {
    border: 1px solid transparent;
    background: transparent;
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .lesson-route-tab:hover, :where(html[data-theme="dark"]) .lesson-route-tab:focus-visible {
    border-color: var(--primary);
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .lesson-route-tab.is-active {
    background: var(--primary);
    color: #fff;
  }
  :where(html[data-theme="dark"]) .lesson-group-switcher-note {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .lesson-block-divider {
    border: none;
    border-top: 1px solid var(--border);
  }
  :where(html[data-theme="dark"]) .lesson-block-callout {
    border-left: 4px solid var(--border);
    background: var(--surface-alt);
  }
  :where(html[data-theme="dark"]) .lesson-block-callout p {
    color: var(--text);
  }
  :where(html[data-theme="dark"]) .lesson-block-callout-info {
    border-left-color: var(--primary);
    background: var(--primary-soft);
  }
  :where(html[data-theme="dark"]) .lesson-block-callout-warning {
    border-left-color: #f3c48f;
    background: #402f1a;
  }
  :where(html[data-theme="dark"]) .lesson-block-callout-success {
    border-left-color: var(--success);
    background: #1b4332;
  }
  :where(html[data-theme="dark"]) .lesson-block-callout-tip {
    border-left-color: var(--premium);
    background: var(--premium-soft);
  }
  :where(html[data-theme="dark"]) .lesson-editor-list-item-row input {
    border: 1px solid var(--border);
  }
  :where(html[data-theme="dark"]) .lesson-editor-structured-item {
    border: 1px solid var(--border);
    background: var(--surface-alt);
  }
  :where(html[data-theme="dark"]) .lesson-editor-structured-item > strong {
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .lesson-editor-fill-warning {
    color: #f7ddb3;
  }
  :where(html[data-theme="dark"]) .lesson-editor-table-grid td {
    border: 1px solid var(--border);
  }
  :where(html[data-theme="dark"]) .lesson-editor-table-grid input {
    border: 1px solid var(--border);
  }
  :where(html[data-theme="dark"]) .lesson-editor-reveal-nested-label {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .lesson-editor-reveal-nested {
    border: 1px dashed var(--border);
    background: var(--surface-alt);
  }
  :where(html[data-theme="dark"]) .lesson-editor-field-note {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .lesson-editor-math-row {
    border: 1px solid var(--border);
  }
  :where(html[data-theme="dark"]) .lesson-editor-practice-sample {
    border: 1px dashed var(--border);
  }
  :where(html[data-theme="dark"]) .lesson-editor-formula-preview {
    border: 1px dashed var(--border);
    background: var(--surface);
  }
  :where(html[data-theme="dark"]) .lesson-editor-formula-preview.is-empty {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .lesson-editor-save-status.dirty {
    color: #f4c19b;
  }
  :where(html[data-theme="dark"]) .lesson-editor-save-status.clean {
    color: var(--success);
  }
  :where(html[data-theme="dark"]) .lesson-block-link-plain {
    color: var(--accent);
  }
  :where(html[data-theme="dark"]) .lesson-block-link-button {
    background: var(--primary);
    color: #fff;
  }
  :where(html[data-theme="dark"]) .lesson-block-link-button:hover {
    background: var(--primary-hover);
  }
  :where(html[data-theme="dark"]) .lesson-image-zoom-trigger {
    border: 0;
    background: transparent;
  }
  :where(html[data-theme="dark"]) .lesson-image-zoom-trigger:focus-visible {
    outline: 3px solid rgba(61, 92, 160, 0.45);
  }
  :where(html[data-theme="dark"]) .lesson-block-image-caption {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .lesson-image-dialog {
    border: 0;
    background: rgba(8, 15, 25, 0.96);
    color: #fff;
  }
  :where(html[data-theme="dark"]) .lesson-image-dialog::backdrop {
    background: rgba(8, 15, 25, 0.96);
  }
  :where(html[data-theme="dark"]) .lesson-image-dialog-caption {
    color: #fff;
  }
  :where(html[data-theme="dark"]) .lesson-image-dialog-close {
    border: 1px solid rgba(255, 255, 255, 0.45);
    background: rgba(8, 15, 25, 0.8);
    color: #fff;
  }
  :where(html[data-theme="dark"]) .lesson-image-dialog-close:focus-visible {
    outline: 3px solid #333333;
  }
  :where(html[data-theme="dark"]) .lesson-block-file {
    border: 1px solid var(--border);
    background: var(--surface);
    color: var(--text);
  }
  :where(html[data-theme="dark"]) .lesson-block-file:hover {
    border-color: var(--primary);
    background: var(--surface-alt);
  }
  :where(html[data-theme="dark"]) .lesson-block-file-icon {
    background: var(--primary-soft);
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .lesson-block-file-label {
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .lesson-block-file-description {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .lesson-editor-style-picker label {
    border: 1.5px solid var(--border);
    background: var(--surface);
    color: var(--text);
  }
  :where(html[data-theme="dark"]) .lesson-editor-style-picker label:hover {
    border-color: var(--accent);
    background: var(--surface-alt);
  }
  :where(html[data-theme="dark"]) .lesson-editor-style-picker label:has(input:checked) {
    border-color: var(--primary);
    background: var(--primary-soft);
  }
  :where(html[data-theme="dark"]) .lesson-editor-style-picker label:has(input:focus-visible) {
    outline: 3px solid var(--accent);
  }
  :where(html[data-theme="dark"]) .lesson-editor-style-picker input[type="radio"] {
    accent-color: var(--accent);
  }
  :where(html[data-theme="dark"]) .lesson-feedback-mode-picker {
    border: 0;
    border-top: 1px solid var(--border);
    border-bottom: 1px solid var(--border);
  }
  :where(html[data-theme="dark"]) .lesson-feedback-mode-picker legend {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .lesson-advanced-fields > summary {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .lesson-editor-info {
    border: 0;
    border-bottom: 1px solid var(--border);
  }
  :where(html[data-theme="dark"]) .lesson-editor-info legend {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .lesson-used-badge {
    background: var(--surface-alt);
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .lesson-section {
    border: 1px solid var(--border);
    border-left: 4px solid var(--primary);
    background: var(--surface);
  }
  :where(html[data-theme="dark"]) .lesson-section-title {
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .lesson-section--theory {
    border-left-color: var(--accent);
  }
  :where(html[data-theme="dark"]) .lesson-section--practice {
    border-left-color: var(--success);
  }
  :where(html[data-theme="dark"]) .lesson-section--summary {
    border-left-color: var(--premium);
  }
  @media (max-width: 720px) {
    :where(html[data-theme="dark"]) .lesson-interactive-code, :where(html[data-theme="dark"]) .lesson-find-code, :where(html[data-theme="dark"]) .lesson-trace-scroll, :where(html[data-theme="dark"]) .lesson-block-code {
      border-right: 0;
      border-left: 0;
    }
  }
  :where(html[data-theme="dark"]) .lesson-editor-block--section {
    border-left: 4px solid var(--primary);
    background: var(--surface-alt);
  }
  :where(html[data-theme="dark"]) .lesson-editor-pager-preview {
    border: 1px solid var(--border);
    background: var(--surface);
  }
  :where(html[data-theme="dark"]) .lesson-editor-pager-preview-title {
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .lesson-editor-page-kind-chip {
    background: var(--page-kind-soft);
    color: var(--page-kind-ink);
    border: 1px solid var(--page-kind);
  }
  :where(html[data-theme="dark"]) .lesson-editor-block--page-break {
    border-top: 3px dashed var(--accent);
  }
  :where(html[data-theme="dark"]) .lesson-pager-nav {
    border: 1px solid var(--border);
    background: var(--surface);
  }
  :where(html[data-theme="dark"]) .detail-card .lesson-pager-progress-text, :where(html[data-theme="dark"]) .lesson-pager-progress-text {
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .lesson-pager-bar {
    background: var(--primary-soft);
  }
  :where(html[data-theme="dark"]) .lesson-pager-bar-fill {
    background: var(--primary);
  }
  :where(html[data-theme="dark"]) .lesson-pager-toc-link {
    border: 1px solid var(--border);
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .lesson-pager-toc-link:hover {
    border-color: var(--primary);
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .lesson-pager-toc-link[aria-current="page"] {
    border-color: var(--primary);
    background: var(--primary);
    color: #fff;
  }
  :where(html[data-theme="dark"]) .lesson-pager-kind-theory {
    --page-kind: #2563eb;
    --page-kind-ink: #aabced;
    --page-kind-soft: #1b2841;
  }
  :where(html[data-theme="dark"]) .lesson-pager-kind-interactive {
    --page-kind: #16a34a;
    --page-kind-ink: #c1f0d4;
    --page-kind-soft: #1c452c;
  }
  :where(html[data-theme="dark"]) .lesson-pager-kind-project {
    --page-kind: #ea580c;
    --page-kind-ink: #f3c0ae;
    --page-kind-soft: #422c1b;
  }
  :where(html[data-theme="dark"]) .lesson-pager-toc-link[class*="lesson-pager-kind-"] {
    border-color: color-mix(in srgb, var(--page-kind) 45%, transparent);
    border-left: 4px solid var(--page-kind);
    background: var(--page-kind-soft);
    color: var(--page-kind-ink);
  }
  :where(html[data-theme="dark"]) .lesson-pager-toc-link[class*="lesson-pager-kind-"]:hover {
    border-color: var(--page-kind);
    color: var(--page-kind-ink);
  }
  :where(html[data-theme="dark"]) .lesson-pager-toc-link[class*="lesson-pager-kind-"][aria-current="page"] {
    border-color: var(--page-kind-ink);
    background: var(--page-kind);
    color: #fff;
    box-shadow: 0 0 0 2px color-mix(in srgb, var(--page-kind) 30%, transparent);
  }
  :where(html[data-theme="dark"]) .lesson-pager-toc-toggle[class*="lesson-pager-kind-"] {
    border-left: 4px solid var(--page-kind);
    background: var(--page-kind-soft);
    color: var(--page-kind-ink);
  }
  :where(html[data-theme="dark"]) .lesson-pager-legend {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .lesson-pager-legend-swatch {
    background: var(--page-kind);
  }
  :where(html[data-theme="dark"]) .lesson-pager-toc-toggle {
    border: 1px solid var(--border);
    background: var(--primary-soft);
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .lesson-page-heading {
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .lesson-pager-controls {
    border-top: 1px solid var(--border);
  }
  :where(html[data-theme="dark"]) .lesson-pager-nav a:focus-visible, :where(html[data-theme="dark"]) .lesson-pager-nav button:focus-visible, :where(html[data-theme="dark"]) .lesson-pager-controls button:focus-visible, :where(html[data-theme="dark"]) .lesson-paged [tabindex="-1"]:focus-visible {
    outline: 3px solid rgba(61, 92, 160, 0.45);
  }
  :where(html[data-theme="dark"]) .lesson-list-counts {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .lesson-filter-field label {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .lesson-filter-field input, :where(html[data-theme="dark"]) .lesson-filter-field select {
    border: 1px solid var(--border);
    background: #1d2734;
  }
  :where(html[data-theme="dark"]) .lesson-list-row-description {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .lesson-more-actions-menu {
    border: 1px solid var(--border);
    background: #1d2734;
    box-shadow: var(--shadow);
  }
  :where(html[data-theme="dark"]) .lesson-editor-media-source {
    border: 1px dashed var(--border);
    background: var(--surface-alt);
  }
  :where(html[data-theme="dark"]) .lesson-editor-media-upload-status {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .lesson-editor-media-upload-error {
    color: #f19e98;
  }
  :where(html[data-theme="dark"]) .lesson-editor-media-upload-success {
    color: var(--success);
  }
  :where(html[data-theme="dark"]) .lesson-editor-media-preview {
    border: 1px solid var(--border);
  }
  :where(html[data-theme="dark"]) .lesson-kind {
    border: none;
  }
  :where(html[data-theme="dark"]) .lesson-kind legend {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .lesson-kind-summary {
    border: 1px solid var(--border);
    background: var(--surface-alt);
  }
  :where(html[data-theme="dark"]) .lesson-kind-summary span {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .lesson-mode-badge--view_only {
    background: var(--surface-alt);
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .lesson-mode-badge--collect_answers {
    background: rgba(130, 87, 255, 0.12);
    color: var(--premium);
  }
  :where(html[data-theme="dark"]) .lesson-mode-badge--graded {
    background: rgba(47, 158, 113, 0.12);
    color: var(--success);
  }
  :where(html[data-theme="dark"]) .lesson-mode-badge--group_activity {
    background: rgba(106, 168, 255, 0.18);
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .preview-notice {
    background: var(--surface-alt);
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .lesson-block-response {
    border: 1px solid var(--border);
    background: var(--surface);
  }
  :where(html[data-theme="dark"]) .lesson-block-response-label {
    color: var(--text);
  }
  :where(html[data-theme="dark"]) .lesson-block-response input[type="text"], :where(html[data-theme="dark"]) .lesson-block-response textarea {
    border: 1px solid var(--border);
    background: #1d2734;
  }
  :where(html[data-theme="dark"]) .lesson-block-response input[type="text"]:disabled, :where(html[data-theme="dark"]) .lesson-block-response textarea:disabled {
    background: var(--surface-alt);
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .lesson-single-choice-option.is-correct {
    background: rgba(47, 158, 113, 0.12);
    color: #b7f0da;
  }
  :where(html[data-theme="dark"]) .lesson-single-choice-option.is-wrong {
    background: rgba(180, 35, 24, 0.1);
    color: #f3a5a0;
  }
  :where(html[data-theme="dark"]) .lesson-class-poll-note {
    background: var(--surface-alt);
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .lesson-choice-letter {
    border: 1px solid var(--border, #404d56);
  }
  :where(html[data-theme="dark"]) .lesson-class-poll-message {
    border-left: 4px solid var(--border);
    background: var(--surface-alt);
    color: var(--text);
  }
  :where(html[data-theme="dark"]) .lesson-class-poll-message[data-state="saved"] {
    border-left-color: var(--primary);
  }
  :where(html[data-theme="dark"]) .lesson-class-poll-message[data-state="error"] {
    border-left-color: #f19e98;
  }
  :where(html[data-theme="dark"]) .lesson-choice-feedback-message {
    border-left: 4px solid var(--border);
    background: var(--surface-alt);
    color: var(--text);
  }
  :where(html[data-theme="dark"]) .lesson-choice-feedback-message.is-correct {
    border-left-color: var(--success);
  }
  :where(html[data-theme="dark"]) .lesson-choice-feedback-message.is-wrong {
    border-left-color: #f19e98;
  }
  :where(html[data-theme="dark"]) .lesson-editor-option-row--none {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .question-bank-list-row, :where(html[data-theme="dark"]) .question-list-row {
    border: 1px solid var(--border);
    background: var(--surface);
  }
  :where(html[data-theme="dark"]) .question-bank-list-row.is-archived, :where(html[data-theme="dark"]) .question-list-row.is-inactive {
    background: var(--surface-alt);
  }
  :where(html[data-theme="dark"]) .question-bank-status.active {
    background: rgba(47, 158, 113, 0.12);
    color: var(--success);
  }
  :where(html[data-theme="dark"]) .question-bank-status.inactive, :where(html[data-theme="dark"]) .question-bank-status.archived {
    background: #222d3d;
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .question-bank-meta, :where(html[data-theme="dark"]) .question-bank-updated span, :where(html[data-theme="dark"]) .question-bank-updated strong {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .question-bank-updated strong {
    color: var(--text);
  }
  :where(html[data-theme="dark"]) .question-bank-stats dt, :where(html[data-theme="dark"]) .question-list-meta dt {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .question-tag-list span {
    background: #1a2740;
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .question-bank-danger-zone {
    border-top: 1px solid #5c232a;
  }
  :where(html[data-theme="dark"]) .question-bank-danger-zone h2 {
    color: #f49fb7;
  }
  :where(html[data-theme="dark"]) .question-bank-danger-zone p {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .question-editor-code-fieldset, :where(html[data-theme="dark"]) .question-editor-options-fieldset {
    border: 1px solid var(--border);
  }
  :where(html[data-theme="dark"]) .question-editor-option {
    border: 1px solid var(--border);
    background: var(--surface-alt);
  }
  :where(html[data-theme="dark"]) .question-editor-option-kind > span, :where(html[data-theme="dark"]) .question-editor-option-code label > span {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .question-option-remove {
    border: 1px solid #5c232a;
    background: #3f1a1c;
    color: #f19e98;
  }
  :where(html[data-theme="dark"]) .question-preview-content, :where(html[data-theme="dark"]) .question-preview-empty {
    border: 1px solid var(--border);
    background: var(--surface);
  }
  :where(html[data-theme="dark"]) .question-preview-empty {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .teacher-test-row {
    border: 1px solid var(--border);
    background: var(--surface);
  }
  :where(html[data-theme="dark"]) .teacher-test-stats dt, :where(html[data-theme="dark"]) .test-config-grid dt {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .teacher-test-secondary-meta span, :where(html[data-theme="dark"]) .teacher-test-secondary-meta strong {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .teacher-test-secondary-meta strong {
    color: var(--text);
  }
  :where(html[data-theme="dark"]) .test-status {
    background: #222d3d;
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .test-status-open, :where(html[data-theme="dark"]) .test-status-in_progress {
    background: rgba(47, 158, 113, 0.12);
    color: var(--success);
  }
  :where(html[data-theme="dark"]) .test-status-paused {
    background: #483d1e;
    color: #f7ddb3;
  }
  :where(html[data-theme="dark"]) .test-status-closed, :where(html[data-theme="dark"]) .test-status-submitted, :where(html[data-theme="dark"]) .test-status-timed_out, :where(html[data-theme="dark"]) .test-status-invalidated {
    background: #222d3d;
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .test-form-section {
    border: 1px solid var(--border);
    background: var(--surface);
    box-shadow: var(--shadow);
  }
  :where(html[data-theme="dark"]) .test-form-section-number {
    background: var(--primary);
    color: #fff;
  }
  :where(html[data-theme="dark"]) .test-form-section-heading p {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .test-session-form input[type="text"], :where(html[data-theme="dark"]) .test-session-form input[type="number"], :where(html[data-theme="dark"]) .test-session-form select, :where(html[data-theme="dark"]) .participant-row input[type="text"] {
    border: 1px solid var(--border);
    background: #1d2734;
    color: var(--text);
  }
  :where(html[data-theme="dark"]) .test-session-form input[type="text"]:focus-visible, :where(html[data-theme="dark"]) .test-session-form input[type="number"]:focus-visible, :where(html[data-theme="dark"]) .test-session-form select:focus-visible {
    outline: 3px solid rgba(51, 102, 204, 0.25);
    border-color: var(--primary);
  }
  :where(html[data-theme="dark"]) .form-help {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .test-bank-summary {
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) label.test-option-card {
    border: 1px solid var(--border);
    background: #1d2734;
    color: var(--text);
  }
  :where(html[data-theme="dark"]) .test-option-card:hover {
    border-color: var(--accent);
    background: var(--surface-alt);
  }
  :where(html[data-theme="dark"]) .test-option-card:has(input:checked) {
    border-color: var(--primary);
    background: var(--primary-soft);
    box-shadow: 0 0 0 1px var(--primary) inset;
  }
  :where(html[data-theme="dark"]) .test-option-card:has(input:focus-visible) {
    outline: 3px solid var(--accent);
  }
  :where(html[data-theme="dark"]) .test-option-card input[type="radio"] {
    accent-color: var(--accent);
  }
  :where(html[data-theme="dark"]) .test-option-card-description {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .test-recommended-badge {
    background: #1e4433;
    color: #b8f0d8;
  }
  :where(html[data-theme="dark"]) .test-selection-panel {
    border-left: 3px solid var(--primary);
    background: var(--surface-alt);
  }
  :where(html[data-theme="dark"]) .blueprint-heading {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .blueprint-rule-available {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .blueprint-rule-available.is-short, :where(html[data-theme="dark"]) [data-blueprint-availability].is-short {
    color: #f19e98;
  }
  :where(html[data-theme="dark"]) .blueprint-total {
    background: #1d2734;
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .test-duration-option, :where(html[data-theme="dark"]) .test-check-row {
    border: 1px solid var(--border);
    background: #1d2734;
  }
  :where(html[data-theme="dark"]) .test-duration-option:has(input[type="radio"]:checked), :where(html[data-theme="dark"]) .test-check-row:has(input[type="checkbox"]:checked) {
    border-color: var(--primary);
    background: var(--primary-soft);
  }
  :where(html[data-theme="dark"]) .test-duration-option:has(input:focus-visible), :where(html[data-theme="dark"]) .test-check-row:has(input:focus-visible) {
    outline: 3px solid var(--accent);
  }
  :where(html[data-theme="dark"]) .test-duration-option > input[type="radio"], :where(html[data-theme="dark"]) .test-check-row > input[type="checkbox"] {
    accent-color: var(--accent);
  }
  :where(html[data-theme="dark"]) .test-duration-option small, :where(html[data-theme="dark"]) .test-check-row small {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .test-duration-input {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .test-form-summary {
    border-left: 4px solid var(--primary);
    background: var(--surface-alt);
  }
  :where(html[data-theme="dark"]) .test-form-summary-grid div {
    border-left: 1px solid var(--border);
  }
  :where(html[data-theme="dark"]) .test-form-summary-grid div:first-child {
    border-left: 0;
  }
  :where(html[data-theme="dark"]) .test-form-summary-grid dt {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .test-form-actions {
    border: 1px solid var(--border);
    background: rgba(29, 39, 52, 0.96);
    box-shadow: var(--shadow);
  }
  :where(html[data-theme="dark"]) .test-detail-section {
    border-bottom: 1px solid var(--border);
  }
  :where(html[data-theme="dark"]) .blueprint-summary span {
    background: #1a2740;
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .participant-row {
    border: 1px solid var(--border);
    background: var(--surface);
  }
  :where(html[data-theme="dark"]) .participant-code {
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .sr-only {
    border: 0;
  }
  :where(html[data-theme="dark"]) .test-code-card {
    border: 1px dashed #b3bbc8;
    background: #1d2734;
  }
  :where(html[data-theme="dark"]) .test-code-brand {
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .test-code-label {
    color: #c0c8d4;
  }
  :where(html[data-theme="dark"]) .test-code-card code {
    color: #d7deed;
  }
  :where(html[data-theme="dark"]) .test-code-url {
    color: #c0c8d4;
  }
  @media (max-width: 720px) {
    :where(html[data-theme="dark"]) .test-form-summary-grid div, :where(html[data-theme="dark"]) .test-form-summary-grid div:first-child {
      border-top: 1px solid var(--border);
      border-left: 0;
    }
    :where(html[data-theme="dark"]) .test-form-summary-grid div:first-child {
      border-top: 0;
    }
  }
  :where(html[data-theme="dark"]) .question-type-badge {
    background: var(--primary-soft);
    color: var(--accent);
  }
  :where(html[data-theme="dark"]) .question-type-badge.question-type-fill-in-code {
    background: var(--premium-soft);
    color: #a695df;
  }
  :where(html[data-theme="dark"]) .question-type-picker {
    border: 0;
  }
  :where(html[data-theme="dark"]) .question-type-option {
    border: 1px solid var(--border);
    background: var(--surface);
  }
  :where(html[data-theme="dark"]) .question-type-option:has(input:checked) {
    border-color: var(--primary);
    background: var(--primary-soft);
  }
  :where(html[data-theme="dark"]) .question-type-option small {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .question-editor-type-panel {
    border: 0;
  }
  :where(html[data-theme="dark"]) .question-fill-blank {
    border: 1px solid var(--border);
    background: #1e2836;
  }
  :where(html[data-theme="dark"]) .question-fill-marker-status, :where(html[data-theme="dark"]) .lesson-editor-fill-status {
    color: var(--success);
  }
  :where(html[data-theme="dark"]) .question-fill-marker-status.is-warning, :where(html[data-theme="dark"]) .lesson-editor-fill-status.is-warning {
    border: 1px solid #7f6230;
    background: #42361b;
    color: #f7ddb3;
  }
  :where(html[data-theme="dark"]) .student-test-fill {
    border: 0;
  }
  :where(html[data-theme="dark"]) .test-fill-review-blank {
    border: 2px solid #4c6276;
  }
  :where(html[data-theme="dark"]) .test-fill-review-blank.is-correct {
    border-color: var(--success);
    background: #1b4332;
    color: #c7edda;
  }
  :where(html[data-theme="dark"]) .test-fill-review-blank.is-wrong {
    border-color: #f19e98;
    background: #3f1c1a;
    color: #f2b5b0;
  }
  :where(html[data-theme="dark"]) .test-fill-review-list li.is-correct {
    background: #232e3e;
    color: #c1e4cc;
  }
  :where(html[data-theme="dark"]) .test-fill-review-list li.is-wrong {
    background: #401c1a;
    color: #e9b2ae;
  }
  :where(html[data-theme="dark"]) .test-fill-result-summary {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .test-result-override-note {
    color: #c1e4cc;
  }
  :where(html[data-theme="dark"]) .test-result-override-note.is-wrong {
    color: #e9b2ae;
  }
  :where(html[data-theme="dark"]) .test-result-override-note.is-partial {
    color: #f7ddb3;
  }
  :where(html[data-theme="dark"]) .test-result-points-field {
    border: 1px solid var(--border);
    background: var(--surface-alt);
  }
  :where(html[data-theme="dark"]) .test-result-points-field label {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .test-result-points-max {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .test-result-points-auto {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .test-review-state {
    background: #222d3d;
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .test-review-state-correct, :where(html[data-theme="dark"]) .test-review-state-accepted {
    background: #222d3c;
    color: #c1e4cc;
  }
  :where(html[data-theme="dark"]) .test-review-state-confirmed_wrong {
    background: #3f1c1a;
    color: #e8b2ae;
  }
  :where(html[data-theme="dark"]) .test-review-state-pending {
    background: #483d1e;
    color: #f7ddb3;
  }
  :where(html[data-theme="dark"]) .test-review-state-adjusted {
    background: #1a2740;
    color: #afc2e6;
  }
  :where(html[data-theme="dark"]) .test-review-unanswered {
    border: 1px dashed #ebc892;
    background: #42351b;
    color: #f7ddb3;
  }
  :where(html[data-theme="dark"]) .test-result-question-link, :where(html[data-theme="dark"]) .test-question-analytic-heading h3 a, :where(html[data-theme="dark"]) .test-question-review-card h2 a {
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .test-question-review-counts {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .test-question-review-counts strong {
    color: var(--text);
  }
  :where(html[data-theme="dark"]) .test-question-review-strip a {
    border: 1px solid var(--border);
    background: var(--surface);
    color: var(--text);
  }
  :where(html[data-theme="dark"]) .test-question-review-strip a.test-review-state-correct, :where(html[data-theme="dark"]) .test-question-review-strip a.test-review-state-accepted {
    border-color: #4c835d;
    background: #222d3c;
    color: #c1e4cc;
  }
  :where(html[data-theme="dark"]) .test-question-review-strip a.test-review-state-confirmed_wrong {
    border-color: #7a3832;
    background: #3f1c1a;
    color: #e8b2ae;
  }
  :where(html[data-theme="dark"]) .test-question-review-strip a.test-review-state-adjusted {
    border-color: #2e4879;
    background: #1a2740;
    color: #afc2e6;
  }
  :where(html[data-theme="dark"]) .test-question-review-strip a.test-review-state-pending {
    border-color: #907537;
    background: #483d1e;
    color: #f7ddb3;
  }
  :where(html[data-theme="dark"]) .test-question-review-strip a.test-review-state-unanswered {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .test-question-review-strip a.is-current {
    outline: 3px solid var(--accent);
  }
  :where(html[data-theme="dark"]) .student-test-notes {
    border-top: 1px solid #324453;
  }
  :where(html[data-theme="dark"]) .student-test-notes p {
    color: #b9c4d0;
  }
  :where(html[data-theme="dark"]) .question-bank-filter-count {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .question-review-card {
    border: 1px solid var(--border);
    background: var(--surface);
  }
  :where(html[data-theme="dark"]) .question-review-card.is-inactive {
    background: var(--surface-alt);
  }
  :where(html[data-theme="dark"]) .question-review-chip {
    background: #222d3d;
    color: var(--text);
  }
  :where(html[data-theme="dark"]) .question-review-code-meta, :where(html[data-theme="dark"]) .question-review-prompt {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .question-review-marker {
    border: 1px dashed #2b4373;
    background: rgba(106, 168, 255, 0.18);
    color: #cfe0ff;
  }
  :where(html[data-theme="dark"]) .question-review-options li {
    border: 1px solid var(--border);
  }
  :where(html[data-theme="dark"]) .question-review-options li.is-correct {
    border-color: #478659;
    background: #222d3c;
    color: #c0e7cc;
  }
  :where(html[data-theme="dark"]) .question-review-blanks li {
    background: #202a38;
  }
  :where(html[data-theme="dark"]) .question-review-accepted code {
    border: 1px solid #336946;
    background: #222d3c;
    color: #c0e7cc;
  }
  :where(html[data-theme="dark"]) .question-review-label {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .question-review-explanation {
    border-left: 3px solid #3d5a73;
    background: #222d3c;
    color: #c3d2df;
  }
  :where(html[data-theme="dark"]) .question-review-actions {
    border-top: 1px solid var(--border);
  }
  :where(html[data-theme="dark"]) .question-review-actions a:focus-visible, :where(html[data-theme="dark"]) .question-review-actions button:focus-visible, :where(html[data-theme="dark"]) .question-review-empty a:focus-visible {
    outline: 3px solid var(--accent);
  }
  :where(html[data-theme="dark"]) .lesson-answer-image-preview, :where(html[data-theme="dark"]) .answer-image {
    border: 1px solid var(--border);
  }
  :where(html[data-theme="dark"]) .lesson-answer-image-status {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .lesson-answer-image-status.is-error {
    color: #f19e98;
  }
  :where(html[data-theme="dark"]) .class-poll-list-item {
    border: 1px solid var(--border);
    background: var(--surface);
  }
  :where(html[data-theme="dark"]) .class-poll-status.is-open {
    background: var(--primary-soft);
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .class-poll-status.is-open.is-results {
    background: rgba(47, 158, 113, 0.14);
    color: var(--success);
  }
  :where(html[data-theme="dark"]) .class-poll-list-count {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .lesson-presentation-thumb img {
    border: 1px solid var(--border);
    background: #000;
  }
  :where(html[data-theme="dark"]) .lesson-presentation-number {
    background: rgba(0, 0, 0, 0.65);
    color: #fff;
  }
  :where(html[data-theme="dark"]) .student-presentation-bar {
    border: 1px solid var(--border);
    background: var(--surface);
  }
  :where(html[data-theme="dark"]) .student-presentation-tabs {
    background: var(--surface-alt);
  }
  :where(html[data-theme="dark"]) .student-presentation-tab {
    border: 0;
    background: transparent;
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .student-presentation-tab[aria-pressed="true"] {
    background: var(--primary);
    color: #fff;
  }
  :where(html[data-theme="dark"]) .student-presentation-frame {
    background: #000;
  }
  :where(html[data-theme="dark"]) .student-presentation-frame:fullscreen {
    background: #000;
  }
  :where(html[data-theme="dark"]) .student-presentation-paused {
    color: #9aa6b8;
  }
  :where(html[data-theme="dark"]) .student-presentation-feedback {
    border: 1px solid var(--border);
    background: var(--surface);
  }
  :where(html[data-theme="dark"]) .student-hand {
    border: 2px solid var(--primary);
    background: var(--surface);
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .student-hand.is-raised {
    border-color: #b45309;
    background: #f59e0b;
    color: #1f1300;
  }
  :where(html[data-theme="dark"]) .student-hand:focus-visible {
    outline: 3px solid var(--primary);
  }
  :where(html[data-theme="dark"]) .student-hand-status {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .student-reaction {
    border: 1px solid var(--border);
    background: var(--surface-alt);
    color: var(--text);
  }
  :where(html[data-theme="dark"]) .student-reaction.is-active {
    border: 2px solid var(--primary);
    background: var(--primary);
    color: #fff;
  }
  :where(html[data-theme="dark"]) .student-reaction:focus-visible {
    outline: 3px solid var(--primary);
  }
  :where(html[data-theme="dark"]) .student-reactions-off, :where(html[data-theme="dark"]) .student-reaction-status {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .presentation-comments {
    border-top: 1px solid var(--border);
  }
  :where(html[data-theme="dark"]) .presentation-comment {
    background: var(--surface-alt);
  }
  :where(html[data-theme="dark"]) .presentation-comment.is-teacher {
    border-left: 4px solid var(--primary);
  }
  :where(html[data-theme="dark"]) .presentation-comment-head time {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .presentation-comment-badge {
    background: var(--primary);
    color: #fff;
  }
  :where(html[data-theme="dark"]) .presentation-comments-empty, :where(html[data-theme="dark"]) .presentation-comments-off, :where(html[data-theme="dark"]) .presentation-comment-status {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .presentation-comment-form input[type="text"] {
    border: 1px solid var(--border);
  }
  :where(html[data-theme="dark"]) .presentation-comment-counter {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .session-comment {
    background: var(--surface-alt);
  }
  :where(html[data-theme="dark"]) .session-comment.is-teacher {
    border-left: 4px solid var(--primary);
  }
  :where(html[data-theme="dark"]) .session-comment.is-deleted .session-comment-text {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .session-comment-meta {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .student-presentation-bar.is-live {
    border: 2px solid var(--primary);
    background: var(--primary-soft);
    box-shadow: 0 10px 24px rgba(26, 35, 56, 0.16);
  }
  :where(html[data-theme="dark"]) .student-presentation-bar.is-live .student-presentation-notice {
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .student-presentation-live-dot {
    background: #dc2626;
  }
  :where(html[data-theme="dark"]) .slide-pointer {
    border: 2px solid #fff;
    background: #ff3d00;
    box-shadow: 0 0 0 4px rgb(255 61 0 / 0.35), 0 0 18px 6px rgb(255 61 0 / 0.55);
  }
  :where(html[data-theme="dark"]) .session-student-count {
    background: var(--primary-soft);
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .session-student-name-item {
    border: 1px solid var(--border);
    background: var(--surface);
  }
  :where(html[data-theme="dark"]) .session-student-name-item:hover, :where(html[data-theme="dark"]) .session-student-name-item:focus-within {
    border-color: #284166;
    box-shadow: 0 8px 20px rgba(26, 35, 56, 0.06);
  }
  :where(html[data-theme="dark"]) .session-student-avatar {
    background: var(--primary-soft);
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .session-student-name-form input[type="text"] {
    border-color: transparent;
    background: var(--bg);
  }
  :where(html[data-theme="dark"]) .session-student-names-empty {
    border: 1px dashed var(--border);
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .student-name-change-link {
    color: inherit;
  }
  :where(html[data-theme="dark"]) .teacher-subject-card-link {
    color: inherit;
  }
  :where(html[data-theme="dark"]) .teacher-subject-card:has(.teacher-subject-card-link.is-active) {
    border-color: var(--primary);
    background: var(--primary-soft);
  }
  :where(html[data-theme="dark"]) .teacher-subject-card-order {
    color: var(--accent);
  }
  :where(html[data-theme="dark"]) .feedback-notice a {
    border: 1px solid #632626;
    background: #202a38;
    color: #e6a5a5;
  }
  :where(html[data-theme="dark"]) .feedback-fab {
    border: 1px solid var(--border);
    background: var(--surface);
    box-shadow: var(--shadow);
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .feedback-fab:hover, :where(html[data-theme="dark"]) .feedback-fab:focus-visible {
    background: var(--primary-soft);
  }
  :where(html[data-theme="dark"]) .feedback-dialog {
    border: 1px solid var(--border);
    box-shadow: var(--shadow);
  }
  :where(html[data-theme="dark"]) .feedback-dialog::backdrop {
    background: rgba(27, 36, 48, 0.4);
  }
  :where(html[data-theme="dark"]) .feedback-dialog-close {
    border: 0;
    background: none;
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .feedback-form textarea {
    border: 1px solid var(--border);
  }
  :where(html[data-theme="dark"]) .feedback-kind {
    border: 0;
  }
  :where(html[data-theme="dark"]) .feedback-where {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .feedback-url {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .feedback-row {
    color: inherit;
  }
  :where(html[data-theme="dark"]) .feedback-row:hover, :where(html[data-theme="dark"]) .feedback-row:focus-visible {
    border-color: var(--accent);
  }
  :where(html[data-theme="dark"]) .feedback-row.is-unread {
    border-color: #742c2c;
  }
  :where(html[data-theme="dark"]) .feedback-unread-dot {
    background: #d64545;
  }
  :where(html[data-theme="dark"]) .feedback-message {
    border: 1px solid var(--border);
    background: var(--surface);
  }
  :where(html[data-theme="dark"]) .feedback-message.is-mine {
    background: var(--primary-soft);
  }
  :where(html[data-theme="dark"]) .feedback-message-meta {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .feedback-image {
    border: 1px solid var(--border);
    background: var(--bg);
  }
  :where(html[data-theme="dark"]) .practice-code span {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .practice-table-wrap {
    border: 1px solid var(--border);
    background: var(--surface);
  }
  :where(html[data-theme="dark"]) .practice-table th, :where(html[data-theme="dark"]) .practice-table td {
    border-bottom: 1px solid var(--border);
  }
  :where(html[data-theme="dark"]) .practice-table thead th {
    background: var(--surface);
  }
  :where(html[data-theme="dark"]) .practice-group {
    border-left: 2px solid var(--border);
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .practice-item {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .practice-item.is-focus {
    color: var(--primary-dark);
    background: var(--primary-soft);
  }
  :where(html[data-theme="dark"]) .practice-name, :where(html[data-theme="dark"]) .practice-name-head {
    background: var(--surface);
  }
  :where(html[data-theme="dark"]) .practice-student {
    border: 0;
    background: none;
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .practice-current {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .practice-cell.is-done, :where(html[data-theme="dark"]) .practice-cell.is-star {
    background: #1c452c;
    color: #adf2c7;
  }
  :where(html[data-theme="dark"]) .practice-cell.is-trying {
    background: #43361b;
    color: #f4c19b;
  }
  :where(html[data-theme="dark"]) tr.is-stuck .practice-name {
    box-shadow: inset 4px 0 0 #dc2626;
  }
  :where(html[data-theme="dark"]) .practice-badge.is-stuck {
    background: #411b1b;
    color: #ef9696;
  }
  :where(html[data-theme="dark"]) .practice-badge.is-away {
    background: var(--primary-soft);
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .practice-empty {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .practice-error {
    color: #ef9696;
  }
  :where(html[data-theme="dark"]) .practice-ok {
    color: #adf2c7;
  }
  :where(html[data-theme="dark"]) .practice-code-view {
    background: #111827;
    color: #e5f3ff;
  }
  :where(html[data-theme="dark"]) .pricing-card h2 span {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .pricing-card-pro {
    border-top: 5px solid var(--premium);
  }
  :where(html[data-theme="dark"]) .pricing-alt, :where(html[data-theme="dark"]) .pricing-founder-note {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .pricing-founder-note {
    color: var(--premium);
  }
  :where(html[data-theme="dark"]) .founder-panel {
    border-left: 5px solid var(--premium);
  }
  :where(html[data-theme="dark"]) .pro-ending-notice a {
    border-color: var(--border);
    background: var(--premium-soft);
    color: var(--premium);
  }
  :where(html[data-theme="dark"]) .invite-form input, :where(html[data-theme="dark"]) .invite-url {
    border: 1px solid var(--border);
    background: var(--surface);
    color: var(--text);
  }
  :where(html[data-theme="dark"]) .first-steps-item {
    border: 1px solid var(--border);
    background: var(--surface);
  }
  :where(html[data-theme="dark"]) .first-steps-item p {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .first-steps-mark {
    background: var(--primary-soft);
    color: var(--accent);
  }
  :where(html[data-theme="dark"]) .first-steps-item.is-done {
    background: var(--surface-alt);
  }
  :where(html[data-theme="dark"]) .first-steps-item.is-done .first-steps-mark {
    background: var(--success);
    color: #fff;
  }
  :where(html[data-theme="dark"]) .first-steps-item.is-done strong {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .pro-period-options {
    border: 0;
  }
  :where(html[data-theme="dark"]) .pro-period-option input[type="radio"] {
    border: 0;
    accent-color: var(--accent);
  }
  :where(html[data-theme="dark"]) .pro-period-option:has(input[type="radio"]:checked) {
    border-color: var(--primary);
    background: var(--primary-soft);
  }
  :where(html[data-theme="dark"]) .pro-qr-code {
    border: 1px solid var(--border);
    background: #1d2734;
  }
  :where(html[data-theme="dark"]) .pro-invoice-header p {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .pro-invoice-parties h2 {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .pro-invoice-items th, :where(html[data-theme="dark"]) .pro-invoice-items td {
    border-bottom: 1px solid var(--border);
  }
  :where(html[data-theme="dark"]) .test-grade-form fieldset {
    border: 0;
  }
  :where(html[data-theme="dark"]) .submission-receipt {
    border: 2px solid var(--success);
    background: #222d3d;
  }
  :where(html[data-theme="dark"]) .submission-receipt-check {
    background: var(--success);
    color: #fff;
  }
  :where(html[data-theme="dark"]) .submission-receipt h2 {
    color: #b8ecd7;
  }
  :where(html[data-theme="dark"]) .submission-receipt-code {
    background: var(--surface);
  }
  :where(html[data-theme="dark"]) .submission-receipt-code > span {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .submission-receipt-code p {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .student-already-submitted {
    border-left: 4px solid var(--success);
    background: #222d3d;
  }
  :where(html[data-theme="dark"]) .student-already-submitted > span[aria-hidden] {
    color: var(--success);
  }
  :where(html[data-theme="dark"]) .submission-lookup-label {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .submission-lookup-input {
    border: 2px solid var(--border);
    background: var(--surface-alt);
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .submission-lookup-input::placeholder {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .submission-lookup-input:focus {
    border-color: var(--primary);
    background: var(--surface);
    outline: none;
    box-shadow: 0 0 0 4px var(--primary-soft);
  }
  :where(html[data-theme="dark"]) .submission-lookup-input.is-complete {
    border-color: var(--success);
  }
  :where(html[data-theme="dark"]) .submission-lookup-input.is-invalid {
    border-color: #f19e98;
  }
  :where(html[data-theme="dark"]) .submission-lookup-form .form-error {
    color: #f19e98;
  }
  :where(html[data-theme="dark"]) .submission-lookup-help {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .school-seats-bar {
    background: var(--surface-alt);
  }
  :where(html[data-theme="dark"]) .school-seats-bar span {
    background: var(--success);
  }
  :where(html[data-theme="dark"]) .school-invite-qr {
    background: #1d2734;
  }
  :where(html[data-theme="dark"]) .school-flyer {
    border: 1px solid var(--border);
    background: #1d2734;
    color: #d5dde7;
  }
  :where(html[data-theme="dark"]) .school-flyer-school {
    color: #b6bfca;
  }
  :where(html[data-theme="dark"]) .school-flyer h2 span {
    color: #abc4ea;
  }
  :where(html[data-theme="dark"]) .school-flyer-points li {
    background: no-repeat left 0.2rem / 1.05rem url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232f9e71' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E");
  }
  :where(html[data-theme="dark"]) .school-flyer-join {
    border: 2px dashed #abc4ea;
  }
  :where(html[data-theme="dark"]) .school-flyer-footer {
    color: #b6bfca;
  }
  :where(html[data-theme="dark"]) .school-card-grid {
    border-top: 1px dashed #57606b;
    border-left: 1px dashed #57606b;
    background: #1d2734;
    color: #d5dde7;
  }
  :where(html[data-theme="dark"]) .school-card {
    border-right: 1px dashed #57606b;
    border-bottom: 1px dashed #57606b;
  }
  :where(html[data-theme="dark"]) .school-card-title {
    color: #abc4ea;
  }
  :where(html[data-theme="dark"]) .school-card-school {
    color: #b6bfca;
  }
  :where(html[data-theme="dark"]) .student-test-answer-hint {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .student-test-text-answer {
    border: 0;
  }
  :where(html[data-theme="dark"]) .student-test-open-review, :where(html[data-theme="dark"]) .test-open-result-answer, :where(html[data-theme="dark"]) .test-open-result-reference {
    border: 1px solid var(--border);
    background: var(--surface-alt);
  }
  :where(html[data-theme="dark"]) .test-open-result-label {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .test-text-result div {
    border: 1px solid var(--border);
  }
  :where(html[data-theme="dark"]) .test-text-result dt {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .test-text-result dd.is-correct {
    color: var(--success);
  }
  :where(html[data-theme="dark"]) .test-text-result dd.is-wrong {
    color: #f19e98;
  }
  :where(html[data-theme="dark"]) .difference-heading p:last-child {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .difference-card {
    border: 1px solid var(--border);
    background: var(--surface);
    box-shadow: var(--shadow);
  }
  :where(html[data-theme="dark"]) .difference-card::before {
    background: var(--card-accent);
  }
  :where(html[data-theme="dark"]) .difference-card:hover {
    border-color: var(--card-accent);
  }
  :where(html[data-theme="dark"]) .difference-card-live {
    --card-soft: #1c4530;
  }
  :where(html[data-theme="dark"]) .difference-card-tasks {
    --card-accent: #d9701f;
    --card-soft: #422e1b;
  }
  :where(html[data-theme="dark"]) .difference-scene {
    background: var(--card-soft);
  }
  :where(html[data-theme="dark"]) .difference-number {
    color: var(--card-accent);
  }
  :where(html[data-theme="dark"]) .difference-card > p:last-child {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .difference-timeline li {
    background: var(--surface);
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .difference-timeline span {
    border: 2px solid var(--card-accent);
  }
  :where(html[data-theme="dark"]) .difference-timeline .is-done {
    color: var(--text);
  }
  :where(html[data-theme="dark"]) .difference-timeline .is-done span {
    background: var(--card-accent);
  }
  :where(html[data-theme="dark"]) .difference-timeline .is-now {
    color: var(--text);
    box-shadow: 0 0 0 2px var(--card-accent);
  }
  :where(html[data-theme="dark"]) .difference-join {
    background: var(--surface);
  }
  :where(html[data-theme="dark"]) .difference-join-label {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .difference-join-count {
    color: var(--card-accent);
  }
  :where(html[data-theme="dark"]) .difference-join-count i {
    background: var(--card-accent);
  }
  :where(html[data-theme="dark"]) .difference-code {
    background: #1b2430;
    color: #e7edf5;
  }
  :where(html[data-theme="dark"]) .difference-code b {
    color: #f2a65a;
  }
  :where(html[data-theme="dark"]) .difference-blank {
    border: 1px dashed #2d4d77;
    background: rgba(131, 184, 255, 0.18);
  }
  :where(html[data-theme="dark"]) .difference-check {
    background: var(--success);
    color: #fff;
  }
  :where(html[data-theme="dark"]) .difference-blocks span {
    border-left: 4px solid var(--card-accent);
    background: var(--surface);
  }
  :where(html[data-theme="dark"]) .difference-blocks .is-new {
    border: 2px dashed var(--card-accent);
    background: transparent;
    color: var(--card-accent);
  }

  /* static/css/site-header.css */
  :where(html[data-theme="dark"]) .site-header {
    --surface: #1d2734;
    --primary: #234d8b;
    --primary-dark: #bad0ef;
    --primary-hover: #183965;
    --primary-soft: #1b2841;
    --accent: #6aa8ff;
    --text: #d5dde7;
    --muted: #b6bfca;
    --border: #2f3b4e;
    --shadow: 0 18px 35px rgba(26, 35, 56, 0.08);
    background: rgba(32, 42, 57, 0.9);
    border-bottom: 1px solid rgba(47, 59, 78, 0.9);
    color: var(--text);
  }
  :where(html[data-theme="dark"]) .site-header a {
    color: inherit;
  }
  :where(html[data-theme="dark"]) .site-header .brand {
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .site-header .brand:hover, :where(html[data-theme="dark"]) .site-header .brand:focus-visible {
    color: var(--accent);
  }
  :where(html[data-theme="dark"]) .site-header .brand:focus-visible {
    outline: 3px solid rgba(15, 159, 154, 0.28);
  }
  :where(html[data-theme="dark"]) .site-header .main-nav a {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .site-header .nav-creation-menu > summary {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .site-header .nav-creation-menu > summary::after {
    border-right: 2px solid currentColor;
    border-bottom: 2px solid currentColor;
  }
  :where(html[data-theme="dark"]) .site-header .nav-creation-menu-panel {
    border: 1px solid var(--border);
    background: var(--surface);
    box-shadow: var(--shadow);
  }
  :where(html[data-theme="dark"]) .site-header .nav-creation-menu-panel a:hover, :where(html[data-theme="dark"]) .site-header .nav-creation-menu-panel a:focus-visible {
    background: var(--primary-soft);
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .site-header .teacher-nav-status {
    color: var(--muted);
  }
  :where(html[data-theme="dark"]) .site-header .login-btn {
    background: #1a2740;
    border: 1px solid var(--border);
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .site-header .theme-toggle {
    border: 1px solid var(--border);
    background: var(--primary-soft);
    color: var(--primary-dark);
  }
  :where(html[data-theme="dark"]) .site-header .theme-toggle:hover, :where(html[data-theme="dark"]) .site-header .theme-toggle:focus-visible {
    outline: none;
    border-color: var(--accent);
    background: var(--surface);
  }
  @media (max-width: 860px), (max-height: 520px) and (orientation: landscape) {
    :where(html[data-theme="dark"]) .site-header.mobile-nav-ready .mobile-nav-toggle {
      border: 1px solid var(--border);
      background: var(--surface);
      color: var(--primary-dark);
    }
    :where(html[data-theme="dark"]) .site-header .mobile-nav-toggle:hover {
      border-color: var(--accent);
      background: var(--primary-soft);
    }
    :where(html[data-theme="dark"]) .site-header .mobile-nav-toggle:focus-visible {
      outline: 3px solid var(--accent);
    }
    :where(html[data-theme="dark"]) .site-header .nav-panel {
      border-top: 1px solid var(--border);
    }
    :where(html[data-theme="dark"]) .site-header .nav-group-teacher {
      border-top: 1px solid var(--border);
    }
    :where(html[data-theme="dark"]) .site-header .nav-creation-menu-panel {
      border: 0;
      background: transparent;
      box-shadow: none;
    }
    :where(html[data-theme="dark"]) .site-header .main-nav a:hover, :where(html[data-theme="dark"]) .site-header .main-nav a:focus-visible, :where(html[data-theme="dark"]) .site-header .teacher-nav-status:hover, :where(html[data-theme="dark"]) .site-header .teacher-nav-status:focus-visible, :where(html[data-theme="dark"]) .site-header .nav-account .login-btn:hover, :where(html[data-theme="dark"]) .site-header .nav-account .login-btn:focus-visible {
      outline: none;
      background: var(--primary-soft);
      color: var(--primary-dark);
    }
    :where(html[data-theme="dark"]) .site-header .main-nav a:focus-visible, :where(html[data-theme="dark"]) .site-header .teacher-nav-status:focus-visible, :where(html[data-theme="dark"]) .site-header .nav-account .login-btn:focus-visible {
      box-shadow: 0 0 0 3px var(--accent) inset;
    }
    :where(html[data-theme="dark"]) .site-header .nav-account {
      border-top: 1px solid var(--border);
    }
    :where(html[data-theme="dark"]) .site-header .nav-account .login-btn {
      border: 0;
      background: transparent;
    }
    :where(html[data-theme="dark"]) .site-header .nav-account .theme-toggle {
      background: var(--primary-soft);
    }
  }
  :where(html[data-theme="dark"]) .site-header .nav-badge {
    background: #d64545;
    color: #fff;
  }
  :where(html[data-theme="dark"]) .site-header .mobile-nav-badge {
    background: #d64545;
  }
  :where(html[data-theme="dark"]) .site-header .pro-badge {
    background: var(--premium-soft, #241b41);
    color: var(--premium, #8257ff);
  }

  /* static/css/question-print.css */
  :where(html[data-theme="dark"]) .question-print-sheet {
    border: 1px solid var(--border);
    background: #1d2734;
    color: #e6e6e6;
    box-shadow: var(--shadow);
  }
  :where(html[data-theme="dark"]) .question-print-header {
    border-bottom: 2px solid #e6e6e6;
  }
  :where(html[data-theme="dark"]) .question-print-title:focus {
    outline: 2px dashed var(--accent);
  }
  :where(html[data-theme="dark"]) .question-print-line {
    border-bottom: 1px solid #e6e6e6;
  }
  :where(html[data-theme="dark"]) .question-print-prefix .lesson-image-zoom-trigger {
    border: 0;
    background: none;
  }
  :where(html[data-theme="dark"]) .question-print-code, :where(html[data-theme="dark"]) .question-print-prefix .lesson-block-code {
    border: 1px solid #666666;
    background: #202b39;
    color: #e6e6e6;
  }
  :where(html[data-theme="dark"]) .question-print-checkbox {
    border: 1.5px solid #e6e6e6;
  }
  :where(html[data-theme="dark"]) .question-print-instruction {
    color: #d2d2d2;
  }
  :where(html[data-theme="dark"]) .question-print-blank {
    border-bottom: 1.5px solid #e6e6e6;
  }
  :where(html[data-theme="dark"]) .question-print-hints {
    color: #d2d2d2;
  }
  :where(html[data-theme="dark"]) .question-print-empty {
    color: var(--muted);
  }

  /* static/css/pronunciation-lab.css */
  :where(html[data-theme="dark"]) .pronunciation-lab {
    --lab-ink: #d2daeb;
    --lab-muted: #bfc7cf;
    --lab-border: #27405c;
    --lab-panel: #1f2936;
    --lab-accent: #0f766e;
    --lab-warm: #b45309;
  }
  :where(html[data-theme="dark"]) .pronunciation-anchor-nav {
    border: 1px solid var(--lab-border);
    background: rgba(29, 39, 52, 0.96);
    box-shadow: 0 10px 30px rgba(15, 23, 42, 0.08);
  }
  :where(html[data-theme="dark"]) .pronunciation-anchor-nav a, :where(html[data-theme="dark"]) .pronunciation-chip-row button, :where(html[data-theme="dark"]) .pronunciation-symbol-grid button, :where(html[data-theme="dark"]) .pronunciation-keyboard button, :where(html[data-theme="dark"]) .pronunciation-self-check button, :where(html[data-theme="dark"]) .pronunciation-schwa-hunt button, :where(html[data-theme="dark"]) .pronunciation-recorder-controls button {
    border: 1px solid var(--lab-border);
    background: #1d2734;
    color: var(--lab-ink);
  }
  :where(html[data-theme="dark"]) .pronunciation-anchor-nav a {
    color: var(--lab-accent-text);
  }
  :where(html[data-theme="dark"]) .pronunciation-lab button:focus-visible, :where(html[data-theme="dark"]) .pronunciation-anchor-nav a:focus-visible, :where(html[data-theme="dark"]) .pronunciation-lab textarea:focus-visible, :where(html[data-theme="dark"]) .pronunciation-lab input:focus-visible {
    outline: 3px solid rgba(15, 118, 110, 0.28);
  }
  :where(html[data-theme="dark"]) .pronunciation-hero {
    background: linear-gradient(135deg, rgba(15, 118, 110, 0.08), rgba(180, 83, 9, 0.08)),
    #1d2734;
  }
  :where(html[data-theme="dark"]) .pronunciation-chip-row button[aria-pressed="true"], :where(html[data-theme="dark"]) .pronunciation-symbol-grid button[aria-pressed="true"], :where(html[data-theme="dark"]) .pronunciation-keyboard button:active, :where(html[data-theme="dark"]) .pronunciation-self-check button.is-selected, :where(html[data-theme="dark"]) .pronunciation-schwa-hunt button.is-selected {
    border-color: var(--lab-accent);
    background: rgba(15, 118, 110, 0.12);
    color: #c1f3ef;
  }
  :where(html[data-theme="dark"]) .pronunciation-detail, :where(html[data-theme="dark"]) .pronunciation-station, :where(html[data-theme="dark"]) .pronunciation-self-check, :where(html[data-theme="dark"]) .pronunciation-submission-task, :where(html[data-theme="dark"]) .pronunciation-preview-field, :where(html[data-theme="dark"]) .pronunciation-note, :where(html[data-theme="dark"]) .pronunciation-deep-dive, :where(html[data-theme="dark"]) .pronunciation-reference-grid article {
    border: 1px solid var(--lab-border);
    background: var(--lab-panel);
  }
  :where(html[data-theme="dark"]) .pronunciation-symbol {
    color: var(--lab-accent-text);
  }
  :where(html[data-theme="dark"]) .pronunciation-comparison-grid article, :where(html[data-theme="dark"]) .pronunciation-spelling-grid span, :where(html[data-theme="dark"]) .pronunciation-stress-examples span {
    border: 1px solid var(--lab-border);
    background: #1d2734;
  }
  :where(html[data-theme="dark"]) .pronunciation-minimal-example span, :where(html[data-theme="dark"]) .pronunciation-minimal-example strong {
    border: 1px solid var(--lab-border);
    background: #1d2734;
  }
  :where(html[data-theme="dark"]) .pronunciation-deep-dive summary {
    color: var(--lab-accent-text);
  }
  :where(html[data-theme="dark"]) .pronunciation-chart section {
    border: 1px solid var(--lab-border);
    background: #1d2734;
  }
  :where(html[data-theme="dark"]) .pronunciation-mouth-map span {
    border: 1px solid var(--lab-border);
    background: #1d2734;
    color: var(--lab-accent-text);
  }
  :where(html[data-theme="dark"]) .pronunciation-note {
    border-color: #7e5e30;
    background: #40341a;
  }
  :where(html[data-theme="dark"]) .pronunciation-feedback, :where(html[data-theme="dark"]) .pronunciation-self-check [data-feedback], :where(html[data-theme="dark"]) .pronunciation-schwa-hunt [data-feedback], :where(html[data-theme="dark"]) .pronunciation-recorder [data-record-status], :where(html[data-theme="dark"]) .pronunciation-ipa-detail [data-speech-status] {
    color: var(--lab-muted);
  }
  :where(html[data-theme="dark"]) .pronunciation-self-check button.is-correct, :where(html[data-theme="dark"]) .pronunciation-schwa-hunt button.is-correct {
    border-color: #adf2c7;
    background: #1b412b;
    color: #c1f0d4;
  }
  :where(html[data-theme="dark"]) .pronunciation-self-check button.is-wrong, :where(html[data-theme="dark"]) .pronunciation-schwa-hunt button.is-wrong {
    border-color: #a53f3f;
    background: #3f1a1c;
    color: #efa3a3;
  }
  :where(html[data-theme="dark"]) .pronunciation-practice-pad, :where(html[data-theme="dark"]) .pronunciation-submission-field label {
    color: var(--lab-ink);
  }
  :where(html[data-theme="dark"]) .pronunciation-practice-pad input, :where(html[data-theme="dark"]) .pronunciation-submission-field textarea {
    border: 1px solid var(--lab-border);
    background: #1d2734;
  }
  :where(html[data-theme="dark"]) .pronunciation-schwa-hunt article {
    border: 1px solid var(--lab-border);
    background: #1d2734;
  }
  :where(html[data-theme="dark"]) .pronunciation-ready-panel .english-check-list label {
    background: #1d2734;
  }
}
