/* Reading and practice retain their existing pane and scroll geometry. */
html.cift-ui :is(.reading-page, .practice-focus-page, .page:has(> .practice-bank-layout)) {
  color: var(--cift-ink);
  background: var(--cift-bg) !important;
  font-family: var(--cift-font-ui);
  letter-spacing: 0;
}

html.cift-ui :is(.reading-page, .practice-focus-page, .practice-bank-layout) :is(h1, h2, h3, .eyebrow, .study-kicker, .feature-ball-section-label) {
  color: var(--cift-ink);
  letter-spacing: 0;
}

html.cift-ui :is(.reading-page, .practice-focus-page, .practice-bank-layout) :is(.eyebrow, .study-kicker, .feature-ball-section-label, .reading-selection-label, .reading-selection-hint, .reading-source-meta, .reading-paragraph-number, .practice-filter-note, .practice-scope-note, .authorized-answer-hint, .directions) {
  color: var(--cift-muted);
}

html.cift-ui :is(.reading-page, .practice-focus-page, .practice-bank-layout) :is(.panel, .reading-controls, .reading-paper, .reading-note, .practice-panel, .practice-state-notice, .practice-timer-bar) {
  border-color: var(--cift-line);
  border-radius: var(--cift-radius-md);
  background: var(--cift-surface) !important;
  box-shadow: var(--cift-shadow-soft);
}

html.cift-ui :is(.reading-page, .practice-focus-page, .practice-bank-layout) :is(.panel-head, .reading-masthead, .reading-note-head, .practice-content-head) {
  border-color: var(--cift-line);
  color: var(--cift-ink);
  background: var(--cift-surface);
  box-shadow: none;
}

html.cift-ui .reading-page :is(.reading-source, .reading-content-scroll, .reading-source-copy) {
  color: var(--cift-ink);
  background: var(--cift-surface);
}

html.cift-ui .reading-page :is(.reading-column-head, .reading-translation) {
  border-color: var(--cift-line);
  color: var(--cift-muted);
  background: var(--cift-surface);
}

html.cift-ui .reading-page :is(.reading-paragraph, .reading-outline, .reading-source-meta) { border-color: var(--cift-line); }
html.cift-ui .reading-page .reading-column-head > span + span { border-left-color: var(--cift-line); }
html.cift-ui .reading-page .reading-masthead-title h2 { color: var(--cift-ink); font-weight: 650; }
html.cift-ui .reading-page .reading-masthead-title p:not(.eyebrow) { color: var(--cift-muted); }
html.cift-ui .reading-page .reading-source-copy { font-family: var(--cift-font-reading); }

html.cift-ui .reading-page .reading-source .reading-sentence-translation,
html.cift-ui .reading-page .reading-source .reading-sentence-translation.is-paragraph-fallback {
  margin: 7px 0 0 !important;
  border: 0;
  padding: 0;
  color: var(--cift-muted);
  background: transparent;
  font-family: var(--cift-font-ui);
  font-size: 12px;
  font-weight: 400;
  line-height: 1.75;
  letter-spacing: 0;
  box-shadow: none;
}

html.cift-ui .reading-page .reading-sentence-translation::before { color: var(--cift-muted); opacity: .65; }
html.cift-ui .reading-page .reading-translation p { color: var(--cift-muted); font-family: var(--cift-font-ui); }
html.cift-ui .reading-page .reading-token-gloss { color: var(--cift-sky-ink); }

html.cift-ui .reading-page :is(.reading-note-context, .reading-note-provenance, .reading-note-candidates, .reading-root, .reading-note-disclaimer, .reading-preview-notice) {
  border-color: var(--cift-line);
  border-radius: var(--cift-radius-sm);
  color: var(--cift-muted);
  background: var(--cift-surface-muted);
  box-shadow: none;
}

html.cift-ui .reading-page :is(.reading-note-context, .reading-note-provenance, .reading-root) :is(strong, h3) { color: var(--cift-ink); }
html.cift-ui .reading-page .reading-sentence.is-selected,
html.cift-ui .reading-page .reading-paper.is-sentence-selecting .reading-sentence:hover {
  border-radius: var(--cift-radius-sm);
  border-color: var(--cift-sky);
  background-color: var(--cift-sky);
  box-shadow: none;
}

html.cift-ui :is(.reading-page, .practice-focus-page, .practice-bank-layout) :is(.button, .icon-button, .reading-controls-toggle, .reading-selection-button, .reading-outline-button, .reading-sentence-save, .external-reading-item, .practice-focus-back-button, .practice-focus-menu-button, .practice-focus-restart-button, .practice-focus-module, .practice-passage-tab, .section-button, .authorized-evidence-toggle, .authorized-order-move button) {
  border-color: transparent;
  border-radius: var(--cift-radius-pill);
  color: var(--cift-ink);
  background: var(--cift-control);
  font-family: var(--cift-font-ui);
  letter-spacing: 0;
  box-shadow: none;
  transform: none;
  transition: background-color var(--cift-duration-fast) ease, color var(--cift-duration-fast) ease, border-color var(--cift-duration-fast) ease, box-shadow var(--cift-duration-fast) ease;
}

html.cift-ui :is(.reading-page, .practice-focus-page, .practice-bank-layout) :is(.button, .icon-button, .reading-controls-toggle, .reading-selection-button, .reading-outline-button, .reading-sentence-save, .external-reading-item, .practice-focus-back-button, .practice-focus-menu-button, .practice-focus-restart-button, .practice-focus-module, .practice-passage-tab, .section-button, .authorized-evidence-toggle, .authorized-order-move button):hover:not(:disabled) {
  border-color: transparent;
  color: var(--cift-ink);
  background: var(--cift-control-hover);
  box-shadow: none;
  transform: none;
}

html.cift-ui :is(.reading-page, .practice-focus-page, .practice-bank-layout) :is(.button, .icon-button, .reading-controls-toggle, .reading-selection-button, .reading-outline-button, .reading-sentence-save, .external-reading-item, .practice-focus-back-button, .practice-focus-menu-button, .practice-focus-restart-button, .practice-focus-module, .practice-passage-tab, .section-button, .authorized-evidence-toggle, .authorized-order-move button):active:not(:disabled) { transform: none; }

html.cift-ui :is(.reading-page, .practice-focus-page, .practice-bank-layout) :is(.button:not(.secondary):not(.danger), .reading-selection-button.active, .reading-outline-button.active, .practice-focus-module.active, .practice-passage-tab.active, .section-button.active, .external-reading-item.active) {
  border-color: var(--cift-accent);
  color: var(--cift-on-accent);
  background: var(--cift-accent);
}

html.cift-ui :is(.reading-page, .practice-focus-page, .practice-bank-layout) :is(.practice-focus-module.active, .practice-passage-tab.active, .section-button.active, .external-reading-item.active) :is(strong, small, span) { color: inherit; }
html.cift-ui :is(.reading-page, .practice-focus-page, .practice-bank-layout) :is(.button:not(.secondary):not(.danger), .reading-selection-button.active, .reading-outline-button.active, .practice-focus-module.active, .practice-passage-tab.active, .section-button.active, .external-reading-item.active):hover:not(:disabled) { border-color: var(--cift-accent); color: var(--cift-on-accent); background: var(--cift-accent); }
html.cift-ui :is(.reading-page, .practice-focus-page, .practice-bank-layout) :is(.button.danger, .practice-focus-restart-button) { border-color: transparent; color: var(--cift-danger); background: var(--cift-danger-bg); }
html.cift-ui :is(.reading-page, .practice-focus-page, .practice-bank-layout) :is(.button.danger, .practice-focus-restart-button):hover:not(:disabled) { border-color: var(--cift-danger-bg); color: var(--cift-danger); background: var(--cift-danger-bg); }
html.cift-ui :is(.reading-page, .practice-focus-page, .practice-bank-layout) .reading-sentence-save.is-saved { color: var(--cift-sage-ink); background: var(--cift-sage); }

html.cift-ui :is(.reading-page, .practice-focus-page, .practice-bank-layout) :is(select, input:not([type="checkbox"]):not([type="radio"]):not([type="range"]), textarea) {
  border-color: var(--cift-line);
  border-radius: var(--cift-radius-sm);
  color: var(--cift-ink);
  background-color: var(--cift-surface);
  font-family: var(--cift-font-ui);
  box-shadow: none;
  letter-spacing: 0;
}

html.cift-ui :is(.reading-page, .practice-focus-page, .practice-bank-layout) :is(input[type="checkbox"], input[type="radio"], input[type="range"]) { accent-color: var(--cift-accent); }
html.cift-ui :is(.reading-page, .practice-focus-page, .practice-bank-layout) :is(button, select, input, textarea):focus-visible { outline: 2px solid var(--cift-accent); outline-offset: 3px; box-shadow: none; }

html.cift-ui :is(.reading-page, .practice-focus-page, .practice-bank-layout) .tag {
  border-color: transparent;
  border-radius: var(--cift-radius-pill);
  color: var(--cift-sage-ink);
  background: var(--cift-sage);
  box-shadow: none;
}

html.cift-ui :is(.reading-page, .practice-focus-page, .practice-bank-layout) :is(.tag.gray, .tag.reading-tag) { color: var(--cift-muted); background: var(--cift-surface-muted); }
html.cift-ui :is(.reading-page, .practice-focus-page, .practice-bank-layout) .tag.yellow { color: var(--cift-peach-ink); background: var(--cift-peach); }
html.cift-ui :is(.reading-page, .practice-focus-page, .practice-bank-layout) .tag.coral { color: var(--cift-danger); background: var(--cift-danger-bg); }

html.cift-ui .practice-focus-page .practice-focus-topbar { border-color: var(--cift-line); color: var(--cift-ink); background: var(--cift-bg); box-shadow: none; }
html.cift-ui .practice-focus-page .practice-focus-title { color: var(--cift-ink); font-family: var(--cift-font-ui); letter-spacing: 0; }
html.cift-ui .practice-focus-page .authorized-practice-dual-pane { background: var(--cift-bg); }
html.cift-ui .practice-focus-page .authorized-practice-pane { border-color: var(--cift-line); border-radius: var(--cift-radius-md); background: var(--cift-surface); box-shadow: var(--cift-shadow-soft); }
html.cift-ui .practice-focus-page .authorized-practice-workspace .authorized-answer-pane { border-color: var(--cift-line); background: var(--cift-surface); }
html.cift-ui .practice-focus-page .authorized-practice-workspace .authorized-pane-heading { border-color: var(--cift-line); border-radius: calc(var(--cift-radius-md) - 1px) calc(var(--cift-radius-md) - 1px) 0 0; color: var(--cift-ink); background: var(--cift-surface); }
html.cift-ui .practice-focus-page .authorized-pane-heading :is(h2, .study-kicker) { color: var(--cift-ink); }
html.cift-ui .practice-focus-page .authorized-pane-heading p { color: var(--cift-muted); }
html.cift-ui .practice-focus-page .authorized-practice-splitter { border-color: var(--cift-line); background-color: var(--cift-control); box-shadow: none; }
html.cift-ui .practice-focus-page .authorized-practice-splitter span { background: var(--cift-muted); }

html.cift-ui :is(.practice-focus-page, .practice-bank-layout) :is(.authorized-passage-block, .authorized-answer-card, .authorized-mapping-slot, .authorized-order-slot, .authorized-mapping-answer > section, .authorized-order-answer > section) { border-color: var(--cift-line); background-color: var(--cift-surface); box-shadow: none; }
html.cift-ui :is(.practice-focus-page, .practice-bank-layout) :is(.authorized-paper-body, .authorized-answer-body, .authorized-option-pool, .authorized-mapping-answer, .authorized-order-answer) { color: var(--cift-ink); background-color: var(--cift-surface); }

html.cift-ui :is(.practice-focus-page, .practice-bank-layout) :is(.authorized-passage-english, .authorized-order-source article > div > p:not(.authorized-passage-translation), .practice-passage, .practice-extracted-text) {
  color: var(--cift-ink);
  font-family: var(--cift-font-reading);
  letter-spacing: 0;
}

html.cift-ui :is(.practice-focus-page, .practice-bank-layout) :is(.authorized-passage-translation, .authorized-answer-translation, .authorized-choice-copy small) {
  border: 0;
  color: var(--cift-muted);
  background: transparent;
  font-family: var(--cift-font-ui);
  font-weight: 400;
  letter-spacing: 0;
  box-shadow: none;
}

html.cift-ui :is(.practice-focus-page, .practice-bank-layout) .authorized-passage-translation { font-size: 12px; line-height: 1.75; }
html.cift-ui :is(.practice-focus-page, .practice-bank-layout) .authorized-translation-underline { text-decoration-color: var(--cift-muted); }
html.cift-ui :is(.practice-focus-page, .practice-bank-layout) .practice-annotation-gloss { color: var(--cift-sky-ink); }

html.cift-ui :is(.practice-focus-page, .practice-bank-layout) :is(.authorized-passage-block > header span, .authorized-slot-number, .authorized-order-label) {
  border-color: var(--cift-line);
  border-radius: var(--cift-radius-pill);
  color: var(--cift-muted);
  background: var(--cift-surface-muted);
  font-family: var(--cift-font-ui);
}

html.cift-ui :is(.practice-focus-page, .practice-bank-layout) :is(.authorized-answer-card > header strong, .authorized-choice-copy strong) { color: var(--cift-ink); font-family: var(--cift-font-reading); font-weight: 500; }
html.cift-ui :is(.practice-focus-page, .practice-bank-layout) :is(.authorized-choice, .authorized-pool-option, .authorized-slot-drop, .authorized-order-fixed, .option) {
  border-color: var(--cift-line);
  border-radius: var(--cift-radius-sm);
  color: var(--cift-ink);
  background: var(--cift-surface-muted);
  box-shadow: none;
  transition: background-color var(--cift-duration-fast) ease, border-color var(--cift-duration-fast) ease, color var(--cift-duration-fast) ease;
}

html.cift-ui :is(.practice-focus-page, .practice-bank-layout) :is(.authorized-choice, .authorized-pool-option, .authorized-slot-drop, .option):hover:not(:disabled) {
  border-color: var(--cift-control-hover);
  color: var(--cift-ink);
  background: var(--cift-control-hover);
  box-shadow: none;
}

html.cift-ui :is(.practice-focus-page, .practice-bank-layout) :is(.authorized-choice.selected, .authorized-pool-option.active, .authorized-slot-drop.is-filled, .option.selected) { border-color: var(--cift-sky); color: var(--cift-sky-ink); background: var(--cift-sky); box-shadow: none; }
html.cift-ui :is(.practice-focus-page, .practice-bank-layout) :is(.authorized-choice-key, .option-key) { border-color: var(--cift-line); color: var(--cift-muted); background: var(--cift-surface); font-family: var(--cift-font-ui); }
html.cift-ui :is(.practice-focus-page, .practice-bank-layout) :is(.authorized-choice.selected, .option.selected) :is(.authorized-choice-key, .option-key) { border-color: transparent; color: var(--cift-on-accent); background: var(--cift-accent); }
html.cift-ui :is(.practice-focus-page, .practice-bank-layout) :is(.authorized-choice.selected, .authorized-pool-option.active) strong { color: inherit; }

html.cift-ui :is(.practice-focus-page, .practice-bank-layout) :is(.authorized-choice.is-correct-answer, .authorized-slot-drop.is-correct, .authorized-order-slot.is-correct, .option.correct),
html.cift-ui :is(.practice-focus-page, .practice-bank-layout) :is(.authorized-choice.is-correct-answer, .authorized-slot-drop.is-correct, .authorized-order-slot.is-correct, .option.correct):hover {
  border-color: var(--cift-sage);
  color: var(--cift-sage-ink);
  background: var(--cift-sage);
  box-shadow: none;
}

html.cift-ui :is(.practice-focus-page, .practice-bank-layout) :is(.authorized-choice.is-incorrect-answer, .authorized-slot-drop.is-incorrect, .authorized-order-slot.is-incorrect, .option.wrong),
html.cift-ui :is(.practice-focus-page, .practice-bank-layout) :is(.authorized-choice.is-incorrect-answer, .authorized-slot-drop.is-incorrect, .authorized-order-slot.is-incorrect, .option.wrong):hover {
  border-color: var(--cift-danger-bg);
  color: var(--cift-danger);
  background: var(--cift-danger-bg);
  box-shadow: none;
}

html.cift-ui :is(.practice-focus-page, .practice-bank-layout) :is(.authorized-choice.is-correct-answer, .authorized-choice.is-incorrect-answer) :is(.authorized-choice-copy strong, .authorized-choice-result) { color: inherit; }
html.cift-ui :is(.practice-focus-page, .practice-bank-layout) .authorized-choice-result { color: var(--cift-sage-ink); }
html.cift-ui :is(.practice-focus-page, .practice-bank-layout) .authorized-correct-answer { border-color: var(--cift-sage); color: var(--cift-sage-ink); background: transparent; }
html.cift-ui :is(.practice-focus-page, .practice-bank-layout) .authorized-result-summary { border-color: var(--cift-line); color: var(--cift-sage-ink); background: var(--cift-sage); }
html.cift-ui :is(.practice-focus-page, .practice-bank-layout) .authorized-result-summary.is-unavailable { align-items: center; flex-wrap: wrap; gap: 12px; color: var(--cift-ink); background: var(--cift-surface-muted); }
html.cift-ui .authorized-result-summary.is-unavailable > div { display: grid; flex: 1 1 200px; gap: 4px; }
html.cift-ui .authorized-result-summary.is-unavailable span { color: var(--cift-muted); line-height: 1.5; }
html.cift-ui .authorized-result-summary.is-unavailable > button { min-height: 44px; flex-shrink: 0; }
html.cift-ui :is(.practice-focus-page, .practice-bank-layout) .authorized-result-wrong { color: var(--cift-danger); }

html.cift-ui :is(.practice-focus-page, .practice-bank-layout) .authorized-question-analysis { border-color: var(--cift-line); background: transparent; }
html.cift-ui :is(.practice-focus-page, .practice-bank-layout) :is(.authorized-question-analysis-head, .authorized-analysis-correct > strong, .authorized-analysis-distractors > strong) { color: var(--cift-ink); }
html.cift-ui :is(.practice-focus-page, .practice-bank-layout) :is(.authorized-analysis-correct > p, .authorized-analysis-distractors p) { color: var(--cift-muted); }
html.cift-ui :is(.practice-focus-page, .practice-bank-layout) :is(.practice-question-type, .practice-analysis-type) { border-color: transparent; border-radius: var(--cift-radius-pill); color: var(--cift-lilac-ink); background: var(--cift-lilac); }
html.cift-ui :is(.practice-focus-page, .practice-bank-layout) .authorized-evidence-toggle.is-active { border-color: var(--cift-sky); color: var(--cift-sky-ink); background: var(--cift-sky); box-shadow: none; }
html.cift-ui :is(.practice-focus-page, .practice-bank-layout) .authorized-evidence-toggle > small { color: var(--cift-sky-ink); background: var(--cift-sky); }
html.cift-ui :is(.practice-focus-page, .practice-bank-layout) .authorized-sentence.is-answer-evidence { border-color: var(--cift-sky); border-radius: var(--cift-radius-sm); background: var(--cift-sky); box-shadow: none; }
html.cift-ui :is(.practice-focus-page, .practice-bank-layout) .authorized-analysis-distractors li > span { border-color: var(--cift-line); color: var(--cift-muted); background: var(--cift-surface-muted); }

html.cift-ui :is(.practice-focus-page, .practice-bank-layout) .practice-inline-blank { border-bottom-color: var(--cift-sky-ink); color: var(--cift-sky-ink); background: var(--cift-sky); }
html.cift-ui :is(.practice-focus-page, .practice-bank-layout) .practice-inline-blank:not(.is-filled) { color: var(--cift-muted); background: transparent; }
html.cift-ui :is(.practice-focus-page, .practice-bank-layout) .practice-inline-blank.is-correct { border-bottom-color: var(--cift-sage-ink); color: var(--cift-sage-ink); background: var(--cift-sage); }
html.cift-ui :is(.practice-focus-page, .practice-bank-layout) .practice-inline-blank.is-incorrect { border-bottom-color: var(--cift-danger); color: var(--cift-danger); background: var(--cift-danger-bg); }

html.cift-ui :is(.reading-page, .practice-focus-page, .practice-bank-layout) :is(.feature-ball-panel, .practice-focus-controls) {
  border-color: var(--cift-line);
  border-radius: var(--cift-radius-lg);
  color: var(--cift-ink);
  background: var(--cift-surface);
  box-shadow: var(--cift-shadow-float);
}

html.cift-ui :is(.reading-page, .practice-focus-page, .practice-bank-layout) :is(.feature-ball-panel-head, .feature-ball-section + .feature-ball-section) { border-color: var(--cift-line); }
html.cift-ui :is(.reading-page, .practice-focus-page, .practice-bank-layout) .feature-ball-trigger { border-color: var(--cift-line); color: var(--cift-ink); background: var(--cift-surface); box-shadow: var(--cift-shadow-float); }
html.cift-ui :is(.reading-page, .practice-focus-page, .practice-bank-layout) :is(.feature-ball-backdrop, .practice-focus-controls-backdrop) { background: var(--cift-scrim-light); }
html.cift-ui :is(.reading-page, .practice-focus-page, .practice-bank-layout) .feature-ball-content .study-timer-button { border-color: transparent; border-radius: var(--cift-radius-md); color: var(--cift-ink); background: var(--cift-surface-muted); box-shadow: none; }
html.cift-ui :is(.reading-page, .practice-focus-page, .practice-bank-layout) .practice-scope-switch { border-color: var(--cift-line); border-radius: var(--cift-radius-md); background: var(--cift-surface-muted); }
html.cift-ui :is(.reading-page, .practice-focus-page, .practice-bank-layout) .practice-scope-option { border-color: var(--cift-line); border-radius: var(--cift-radius-md); color: var(--cift-muted); background: transparent; box-shadow: none; }
html.cift-ui :is(.reading-page, .practice-focus-page, .practice-bank-layout) .practice-scope-option.is-active { color: var(--cift-on-accent); background: var(--cift-accent); }
html.cift-ui :is(.reading-page, .practice-focus-page, .practice-bank-layout) .practice-scope-option.is-active :is(span, strong) { color: inherit; }

html.cift-ui .practice-bank-layout :is(.practice-module-card, .practice-app-module, .practice-question-card, .practice-response-card, .practice-passage) { border-color: var(--cift-line); border-radius: var(--cift-radius-md); color: var(--cift-ink); background: var(--cift-surface); box-shadow: var(--cift-shadow-soft); }
html.cift-ui .practice-bank-layout :is(.practice-module-card.active, .practice-app-module.active) { border-color: var(--cift-sky); color: var(--cift-sky-ink); background: var(--cift-sky); }
html.cift-ui .practice-bank-layout .practice-timer-bar.is-running { border-color: var(--cift-line); background: var(--cift-sage) !important; }
html.cift-ui .practice-bank-layout .practice-timer-bar:is(.is-finished, .is-locked) { border-color: var(--cift-line); background: var(--cift-surface-muted) !important; }

html.cift-ui :is(.reading-page, .practice-focus-page, .practice-bank-layout) :is(.reading-content-scroll, .authorized-practice-pane, .feature-ball-content) { scrollbar-color: var(--cift-control-hover) transparent; }

@media (prefers-reduced-motion: reduce) {
  html.cift-ui :is(.reading-page, .practice-focus-page, .practice-bank-layout) :is(.button, .icon-button, .reading-selection-button, .reading-outline-button, .reading-controls-toggle, .authorized-choice, .authorized-pool-option, .authorized-slot-drop, .practice-focus-module) { transition-duration: .01ms; }
}
