/* Zabanisa Dark Mode — Learning Tools Phase 2
   Scope: dictionary page + inline dictionary sheet, goal discovery/start,
   lesson AI assistant, lesson speaking studio and Web Speaking surfaces.
   This layer changes presentation only. No routing, scoring, speech logic or assets.
   Illustrations stay unfiltered and use neutral light islands when their artwork was
   designed for light backgrounds. */

/* -------------------------------------------------------------------------- */
/* Dictionary page                                                           */
/* -------------------------------------------------------------------------- */
html[data-zabanisa-theme="dark"] .page-shell--dictionary {
    color:var(--dm-text);
}
html[data-zabanisa-theme="dark"] .dictionary-hero-copy h1 { color:var(--dm-text)!important; }
html[data-zabanisa-theme="dark"] .dictionary-hero-copy p { color:var(--dm-muted)!important; }
html[data-zabanisa-theme="dark"] .dictionary-search-card,
html[data-zabanisa-theme="dark"] .dictionary-result-card {
    background:linear-gradient(180deg,var(--dm-surface) 0%,#0f1a2b 100%)!important;
    border-color:var(--dm-border)!important;
    color:var(--dm-text)!important;
    box-shadow:var(--dm-shadow-soft)!important;
}
html[data-zabanisa-theme="dark"] .dictionary-search-title {
    color:var(--dm-text)!important;
}
html[data-zabanisa-theme="dark"] .dictionary-search-input {
    background:#0c1728!important;
    border-color:#34465f!important;
    color:var(--dm-text)!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.025)!important;
}
html[data-zabanisa-theme="dark"] .dictionary-search-input::placeholder { color:#71839b!important; }
html[data-zabanisa-theme="dark"] .dictionary-search-input:focus {
    border-color:rgba(53,208,187,.72)!important;
    box-shadow:0 0 0 3px rgba(53,208,187,.12)!important;
}
html[data-zabanisa-theme="dark"] .dictionary-input-icon { color:#8fa1b8!important; }
html[data-zabanisa-theme="dark"] .dictionary-tabs {
    background:#0b1627!important;
    border:1px solid #24364d;
}
html[data-zabanisa-theme="dark"] .dictionary-tab {
    color:var(--dm-muted)!important;
}
html[data-zabanisa-theme="dark"] .dictionary-tab:hover { color:var(--dm-text-2)!important; }
html[data-zabanisa-theme="dark"] .dictionary-tab.is-active {
    background:#1b2a40!important;
    color:#78e5d5!important;
    box-shadow:0 7px 16px rgba(0,0,0,.22)!important;
}
html[data-zabanisa-theme="dark"] .dictionary-tab-single {
    background:#12382f!important;
    color:#78e5d5!important;
    border:1px solid #28554d;
}
html[data-zabanisa-theme="dark"] .dictionary-headword,
html[data-zabanisa-theme="dark"] .dictionary-example-card .en-text,
html[data-zabanisa-theme="dark"] .dictionary-offline-definition-head,
html[data-zabanisa-theme="dark"] .dictionary-empty-state strong,
html[data-zabanisa-theme="dark"] .dictionary-recent-card strong {
    color:var(--dm-text)!important;
}
html[data-zabanisa-theme="dark"] .dictionary-pronunciation,
html[data-zabanisa-theme="dark"] .dictionary-definition-block > span,
html[data-zabanisa-theme="dark"] .dictionary-example-card .fa-text,
html[data-zabanisa-theme="dark"] .dictionary-offline-definition-copy,
html[data-zabanisa-theme="dark"] .dictionary-empty-state,
html[data-zabanisa-theme="dark"] .dictionary-empty-state p,
html[data-zabanisa-theme="dark"] .dictionary-section-head h2,
html[data-zabanisa-theme="dark"] .dictionary-recent-card span,
html[data-zabanisa-theme="dark"] .dictionary-recent-empty {
    color:var(--dm-muted)!important;
}
html[data-zabanisa-theme="dark"] .dictionary-meaning { color:#9ff0df!important; }
html[data-zabanisa-theme="dark"] .dictionary-divider {
    background:linear-gradient(90deg,transparent,#33455d,transparent)!important;
}
html[data-zabanisa-theme="dark"] .dictionary-round-speak,
html[data-zabanisa-theme="dark"] .dictionary-pos-pill,
html[data-zabanisa-theme="dark"] .dictionary-quote-mark,
html[data-zabanisa-theme="dark"] .dictionary-empty-icon {
    background:#12382f!important;
    border-color:#28554d!important;
    color:#78e5d5!important;
    box-shadow:none!important;
}
/* Example rows are intentionally transparent in the page design. */
html[data-zabanisa-theme="dark"] .dictionary-example-card {
    background:transparent!important;
    border:none!important;
    box-shadow:none!important;
}
html[data-zabanisa-theme="dark"] .dictionary-offline-definition-card {
    background:#152238!important;
    border-color:#2b3d55!important;
    box-shadow:none!important;
}
html[data-zabanisa-theme="dark"] .dictionary-add-review-btn {
    background:linear-gradient(135deg,#12382f,#11342f)!important;
    border-color:#2c6056!important;
    color:#8cebdc!important;
}
html[data-zabanisa-theme="dark"] .dictionary-auth-prompt {
    background:#17233a!important;
    border:1px solid #33435e;
    color:var(--dm-text-2)!important;
}
html[data-zabanisa-theme="dark"] .dictionary-recent-empty {
    background:#0d1829!important;
    border-color:#2f5b55!important;
}
html[data-zabanisa-theme="dark"] .dictionary-recent-card {
    background:#111b2e!important;
    border-color:#2b3d55!important;
    color:var(--dm-text)!important;
    box-shadow:0 8px 20px rgba(0,0,0,.19)!important;
}
html[data-zabanisa-theme="dark"] .dictionary-recent-card:hover,
html[data-zabanisa-theme="dark"] .dictionary-recent-card:focus-visible {
    background:#17263b!important;
    border-color:#3c526d!important;
}
html[data-zabanisa-theme="dark"] .dictionary-recent-card em { color:#78e5d5!important; }

/* Inline dictionary sheet used throughout lessons. */
html[data-zabanisa-theme="dark"] .dict-sheet-backdrop { background:rgba(3,8,16,.62)!important; }
html[data-zabanisa-theme="dark"] .dict-sheet {
    background:linear-gradient(180deg,#111b2e 0%,#0d1829 100%)!important;
    border-color:#2b3d55!important;
    box-shadow:0 26px 70px rgba(0,0,0,.46)!important;
}
html[data-zabanisa-theme="dark"] .dict-sheet-head { background:transparent!important; }
html[data-zabanisa-theme="dark"] .dict-sheet-close {
    background:#1b2a40!important;
    color:#c8d5e6!important;
}
html[data-zabanisa-theme="dark"] .dict-sheet-headword { color:var(--dm-text)!important; }
html[data-zabanisa-theme="dark"] .dict-sheet-meaning,
html[data-zabanisa-theme="dark"] .dict-sheet .dictionary-meaning { color:#9ff0df!important; }
html[data-zabanisa-theme="dark"] .dict-sheet-meta { color:var(--dm-muted)!important; }
html[data-zabanisa-theme="dark"] .dict-sheet .dictionary-tabs { background:#0a1525!important; border:1px solid #26384f; }
html[data-zabanisa-theme="dark"] .dict-sheet .dictionary-tab { color:var(--dm-muted)!important; }
html[data-zabanisa-theme="dark"] .dict-sheet .dictionary-tab.is-active {
    background:#1b2a40!important;
    color:#78e5d5!important;
}
html[data-zabanisa-theme="dark"] .dict-sheet .dictionary-tab-single,
html[data-zabanisa-theme="dark"] .dict-sheet-pill {
    background:#17263b!important;
    border-color:#33465f!important;
    color:#c8d5e6!important;
}
html[data-zabanisa-theme="dark"] .dict-sheet .dictionary-example-card,
html[data-zabanisa-theme="dark"] .dict-sheet-note,
html[data-zabanisa-theme="dark"] .dict-sheet-context,
html[data-zabanisa-theme="dark"] .dict-sheet .dictionary-offline-definition-card {
    background:#152238!important;
    border-color:#2d4059!important;
    color:var(--dm-text-2)!important;
    box-shadow:none!important;
}
html[data-zabanisa-theme="dark"] .dict-sheet .dictionary-example-card .en-text,
html[data-zabanisa-theme="dark"] .dict-sheet .dictionary-offline-definition-head { color:var(--dm-text)!important; }
html[data-zabanisa-theme="dark"] .dict-sheet .dictionary-example-card .fa-text,
html[data-zabanisa-theme="dark"] .dict-sheet .dictionary-offline-definition-copy,
html[data-zabanisa-theme="dark"] .dict-sheet-note,
html[data-zabanisa-theme="dark"] .dict-sheet-context { color:var(--dm-muted)!important; }

/* Contextual AI inside dictionary results/sheet. */
html[data-zabanisa-theme="dark"] .dictionary-ai-context-btn {
    background:#12382f!important;
    border-color:#2c6056!important;
    color:#8cebdc!important;
}
html[data-zabanisa-theme="dark"] .dictionary-ai-context-card {
    background:#111f2f!important;
    border-color:#28534d!important;
    color:var(--dm-text)!important;
}
html[data-zabanisa-theme="dark"] .dictionary-ai-context-card.is-error {
    background:#321e25!important;
    border-color:#653741!important;
}
html[data-zabanisa-theme="dark"] .dictionary-ai-context-kicker { color:#78e5d5!important; }
html[data-zabanisa-theme="dark"] .dictionary-ai-context-term,
html[data-zabanisa-theme="dark"] .dictionary-ai-context-meaning,
html[data-zabanisa-theme="dark"] .dictionary-ai-context-example strong { color:var(--dm-text)!important; }
html[data-zabanisa-theme="dark"] .dictionary-ai-context-note,
html[data-zabanisa-theme="dark"] .dictionary-ai-context-status,
html[data-zabanisa-theme="dark"] .dictionary-ai-context-example span,
html[data-zabanisa-theme="dark"] .dictionary-ai-context-feedback > span,
html[data-zabanisa-theme="dark"] .dictionary-ai-context-feedback small { color:var(--dm-muted)!important; }
html[data-zabanisa-theme="dark"] .dictionary-ai-context-example,
html[data-zabanisa-theme="dark"] .dictionary-ai-context-actions button,
html[data-zabanisa-theme="dark"] .dictionary-ai-context-feedback button {
    background:#17263b!important;
    border-color:#33465f!important;
    color:var(--dm-text-2)!important;
}
html[data-zabanisa-theme="dark"] .dictionary-ai-context-actions button:hover { background:#1d2e46!important; border-color:#3c5c5c!important; }
html[data-zabanisa-theme="dark"] .dictionary-ai-context-feedback { border-top-color:#2b443f!important; }
html[data-zabanisa-theme="dark"] .dictionary-ai-context-feedback button.is-selected {
    background:#12382f!important;
    border-color:#337066!important;
    color:#8cebdc!important;
}

/* -------------------------------------------------------------------------- */
/* Goal discovery / choose goal / choose starting level                       */
/* -------------------------------------------------------------------------- */
html[data-zabanisa-theme="dark"] :is(.goal-picker-screen,.goal-start-screen) { color:var(--dm-text); }
html[data-zabanisa-theme="dark"] .goal-start-back {
    background:#152238!important;
    border-color:#2c3f58!important;
    color:#a9bfdc!important;
    box-shadow:none!important;
}
html[data-zabanisa-theme="dark"] .goal-start-back:hover { background:#1a2a41!important; color:#dce8f8!important; }
html[data-zabanisa-theme="dark"] .goal-picker-head h1,
html[data-zabanisa-theme="dark"] .goal-level-head h2,
html[data-zabanisa-theme="dark"] .goal-start-hero-copy h1,
html[data-zabanisa-theme="dark"] .goal-discovery-title { color:var(--dm-text)!important; }
html[data-zabanisa-theme="dark"] .goal-picker-head small { color:var(--dm-muted)!important; }
html[data-zabanisa-theme="dark"] .goal-start-hero {
    background:linear-gradient(135deg,#112035 0%,#102a30 100%)!important;
    border-color:#2d4a52!important;
    box-shadow:var(--dm-shadow-soft)!important;
}
html[data-zabanisa-theme="dark"] .goal-start-hero-copy > span,
html[data-zabanisa-theme="dark"] .goal-level-head small { color:#78e5d5!important; }
/* Artwork intentionally remains on a neutral light island; no filter/invert. */
html[data-zabanisa-theme="dark"] .goal-start-hero-art,
html[data-zabanisa-theme="dark"] .goal-discovery-art,
html[data-zabanisa-theme="dark"] .goal-picker-art {
    background:var(--dm-illustration-bg)!important;
    border-color:rgba(220,232,232,.72)!important;
    box-shadow:none!important;
}
html[data-zabanisa-theme="dark"] .goal-picker-art { background:linear-gradient(180deg,#f3f7f6,#eaf1ef)!important; }
html[data-zabanisa-theme="dark"] .goal-discovery-art img[src*="display-name-avatar"] { background:#fff8e9!important; }
html[data-zabanisa-theme="dark"] .goal-level-option,
html[data-zabanisa-theme="dark"] .goal-placement-option,
html[data-zabanisa-theme="dark"] .goal-picker-card,
html[data-zabanisa-theme="dark"] .goal-discovery-home-card {
    background:#111b2e!important;
    border-color:#2b3d55!important;
    color:var(--dm-text)!important;
    box-shadow:var(--dm-shadow-soft)!important;
}
html[data-zabanisa-theme="dark"] .goal-level-option:hover,
html[data-zabanisa-theme="dark"] .goal-picker-card:hover { background:#152238!important; border-color:#3a4e69!important; }
html[data-zabanisa-theme="dark"] .goal-level-option.is-recommended,
html[data-zabanisa-theme="dark"] .goal-picker-card.is-active {
    background:linear-gradient(135deg,#10282d,#14243a)!important;
    border-color:#357068!important;
    box-shadow:0 10px 24px rgba(0,0,0,.22)!important;
}
html[data-zabanisa-theme="dark"] .goal-level-code {
    background:#17263b!important;
    color:#b9cff3!important;
}
html[data-zabanisa-theme="dark"] .goal-level-option.is-recommended .goal-level-code,
html[data-zabanisa-theme="dark"] .goal-level-option em,
html[data-zabanisa-theme="dark"] .goal-picker-copy small {
    background:#12382f!important;
    color:#8cebdc!important;
}
html[data-zabanisa-theme="dark"] .goal-level-arrow,
html[data-zabanisa-theme="dark"] .goal-picker-placement > span:last-child { color:#8496ad!important; }
html[data-zabanisa-theme="dark"] .goal-placement-option,
html[data-zabanisa-theme="dark"] .goal-picker-placement {
    background:linear-gradient(135deg,#241f19,#171d29)!important;
    border-color:#4d412f!important;
    color:#c5b69e!important;
}
html[data-zabanisa-theme="dark"] .goal-placement-icon {
    background:#3b2d1c!important;
    color:#efc476!important;
}
html[data-zabanisa-theme="dark"] .goal-placement-option small { color:#aa9a83!important; }
html[data-zabanisa-theme="dark"] .goal-picker-placement strong { color:#efc476!important; }
html[data-zabanisa-theme="dark"] .goal-discovery-label { color:var(--dm-text-2)!important; }
html[data-zabanisa-theme="dark"] .goal-discovery-scroll-cue {
    color:#78e5d5!important;
    background:#12312f!important;
    border-color:#28564f!important;
    box-shadow:none!important;
}
html[data-zabanisa-theme="dark"] .goal-discovery-scroll-cue i {
    background:radial-gradient(circle,#6fc8bb 1.2px,transparent 1.4px) 0 50%/5px 3px repeat-x!important;
}
html[data-zabanisa-theme="dark"] .goal-discovery-edge-cue {
    background:linear-gradient(90deg,rgba(17,27,46,.98) 0%,rgba(17,27,46,.90) 40%,rgba(17,27,46,0) 100%)!important;
}

/* -------------------------------------------------------------------------- */
/* Lesson AI assistant                                                        */
/* -------------------------------------------------------------------------- */
html[data-zabanisa-theme="dark"] .lesson-ai-fab {
    background:linear-gradient(145deg,#17263b,#102d31)!important;
    border-color:#356b63!important;
    color:#8cebdc!important;
    box-shadow:0 10px 28px rgba(0,0,0,.28)!important;
}
html[data-zabanisa-theme="dark"] .lesson-ai-backdrop { background:rgba(2,7,15,.66)!important; }
html[data-zabanisa-theme="dark"] .lesson-ai-sheet {
    background:linear-gradient(180deg,#111b2e 0%,#0d1829 100%)!important;
    border-color:#2b3d55!important;
    color:var(--dm-text)!important;
    box-shadow:0 -22px 65px rgba(0,0,0,.46)!important;
}
html[data-zabanisa-theme="dark"] .lesson-ai-head {
    background:rgba(17,27,46,.96)!important;
    border-bottom-color:#2a3a51!important;
    color:var(--dm-text)!important;
}
html[data-zabanisa-theme="dark"] .lesson-ai-brand-icon,
html[data-zabanisa-theme="dark"] .lesson-ai-sentence-number,
html[data-zabanisa-theme="dark"] .lesson-ai-topic-icon,
html[data-zabanisa-theme="dark"] .lesson-ai-playing {
    background:#12382f!important;
    border-color:#28554d!important;
    color:#8cebdc!important;
}
html[data-zabanisa-theme="dark"] .lesson-ai-head-copy strong,
html[data-zabanisa-theme="dark"] .lesson-ai-step-head strong,
html[data-zabanisa-theme="dark"] .lesson-ai-sentence-copy strong,
html[data-zabanisa-theme="dark"] .lesson-ai-selected-sentence strong,
html[data-zabanisa-theme="dark"] .lesson-ai-answer-main,
html[data-zabanisa-theme="dark"] .lesson-ai-answer-point,
html[data-zabanisa-theme="dark"] .lesson-ai-example strong,
html[data-zabanisa-theme="dark"] .lesson-ai-gate strong { color:var(--dm-text)!important; }
html[data-zabanisa-theme="dark"] .lesson-ai-head-copy span,
html[data-zabanisa-theme="dark"] .lesson-ai-step-head span,
html[data-zabanisa-theme="dark"] .lesson-ai-sentence-copy small,
html[data-zabanisa-theme="dark"] .lesson-ai-selected-sentence span,
html[data-zabanisa-theme="dark"] .lesson-ai-freeform-actions > span,
html[data-zabanisa-theme="dark"] .lesson-ai-status p,
html[data-zabanisa-theme="dark"] .lesson-ai-example span,
html[data-zabanisa-theme="dark"] .lesson-ai-feedback > span,
html[data-zabanisa-theme="dark"] .lesson-ai-feedback small,
html[data-zabanisa-theme="dark"] .lesson-ai-gate p { color:var(--dm-muted)!important; }
html[data-zabanisa-theme="dark"] .lesson-ai-quota {
    background:#12312f!important;
    border-color:#29524e!important;
    color:#a9c9c3!important;
}
html[data-zabanisa-theme="dark"] .lesson-ai-quota b { color:#8cebdc!important; }
html[data-zabanisa-theme="dark"] .lesson-ai-close {
    background:#1b2a40!important;
    color:#c8d5e6!important;
}
html[data-zabanisa-theme="dark"] .lesson-ai-sentence-option,
html[data-zabanisa-theme="dark"] .lesson-ai-topic-grid button,
html[data-zabanisa-theme="dark"] .lesson-ai-selected-sentence,
html[data-zabanisa-theme="dark"] .lesson-ai-answer-point,
html[data-zabanisa-theme="dark"] .lesson-ai-example,
html[data-zabanisa-theme="dark"] .lesson-ai-answer-actions button,
html[data-zabanisa-theme="dark"] .lesson-ai-feedback-actions button {
    background:#152238!important;
    border-color:#2f425b!important;
    color:var(--dm-text-2)!important;
}
html[data-zabanisa-theme="dark"] .lesson-ai-sentence-option:hover,
html[data-zabanisa-theme="dark"] .lesson-ai-topic-grid button:hover,
html[data-zabanisa-theme="dark"] .lesson-ai-answer-actions button:hover {
    background:#1a2a41!important;
    border-color:#3a625e!important;
}
html[data-zabanisa-theme="dark"] .lesson-ai-back-link { color:#78e5d5!important; }
html[data-zabanisa-theme="dark"] .lesson-ai-freeform textarea {
    background:#0b1627!important;
    border-color:#34465f!important;
    color:var(--dm-text)!important;
}
html[data-zabanisa-theme="dark"] .lesson-ai-freeform textarea::placeholder { color:#71839a!important; }
html[data-zabanisa-theme="dark"] .lesson-ai-freeform textarea:focus {
    border-color:#37756b!important;
    box-shadow:0 0 0 3px rgba(53,208,187,.10)!important;
}
html[data-zabanisa-theme="dark"] .lesson-ai-answer-main {
    background:#102b2d!important;
    border-color:#2b554f!important;
}
html[data-zabanisa-theme="dark"] .lesson-ai-answer-badge { color:#8cebdc!important; }
html[data-zabanisa-theme="dark"] .lesson-ai-feedback { border-top-color:#2c3e55!important; }
html[data-zabanisa-theme="dark"] .lesson-ai-feedback-actions button.is-selected {
    background:#12382f!important;
    border-color:#337066!important;
    color:#8cebdc!important;
}
html[data-zabanisa-theme="dark"] .lesson-ai-spinner {
    border-color:#244039!important;
    border-top-color:#53dbc6!important;
}
html[data-zabanisa-theme="dark"] .lesson-ai-status-icon {
    background:#3a2423!important;
    border-color:#62403a!important;
    color:#ffad9c!important;
}
html[data-zabanisa-theme="dark"] .lesson-ai-gate-icon {
    background:linear-gradient(145deg,#12382f,#18263d)!important;
    border-color:#2d5c55!important;
    color:#8cebdc!important;
}

/* -------------------------------------------------------------------------- */
/* Speaking Studio / Shadowing / Role play                                    */
/* -------------------------------------------------------------------------- */
html[data-zabanisa-theme="dark"] .lesson-segment-play,
html[data-zabanisa-theme="dark"] .lesson-segment-mic {
    background:#17263b!important;
    border-color:#315e58!important;
    color:#78e5d5!important;
    box-shadow:none!important;
}
html[data-zabanisa-theme="dark"] .lesson-segment-play.is-playing,
html[data-zabanisa-theme="dark"] .lesson-segment-mic.is-listening {
    background:#147d70!important;
    border-color:#2d9f90!important;
    color:#fff!important;
}
html[data-zabanisa-theme="dark"] .lesson-shadow-rate-menu {
    background:#111b2e!important;
    border-color:#394966!important;
    box-shadow:0 16px 34px rgba(0,0,0,.34)!important;
}
html[data-zabanisa-theme="dark"] .lesson-shadow-rate-menu button {
    background:#17263b!important;
    border-color:#33465f!important;
    color:#c0cee0!important;
}
html[data-zabanisa-theme="dark"] .lesson-shadow-rate-menu button.is-active {
    background:#465aa5!important;
    border-color:#7185dd!important;
    color:#fff!important;
}
html[data-zabanisa-theme="dark"] .lesson-speaking-shadow-mode .transcript-segment {
    background:linear-gradient(135deg,#2f281d 0%,#261f19 75%,#1b1d25 100%)!important;
    border-color:#5b4729!important;
    box-shadow:none!important;
}
html[data-zabanisa-theme="dark"] .lesson-speaking-shadow-mode .transcript-segment .transcript-speaker { color:#e2ae68!important; }
html[data-zabanisa-theme="dark"] .lesson-speaking-shadow-mode .transcript-segment .transcript-en { color:#f2dfc2!important; }
html[data-zabanisa-theme="dark"] .lesson-speaking-shadow-mode .transcript-segment .transcript-fa { color:#c3aa87!important; }
html[data-zabanisa-theme="dark"] .lesson-speaking-shadow-mode .transcript-segment.is-active {
    background:linear-gradient(135deg,#493619 0%,#3b2b1b 62%,#2b241c 100%)!important;
    border-color:#9a6b31!important;
    box-shadow:0 10px 24px rgba(0,0,0,.22)!important;
}
html[data-zabanisa-theme="dark"] .lesson-speaking-shadow-mode .transcript-segment.is-active .transcript-en { color:#ffd999!important; }
html[data-zabanisa-theme="dark"] .lesson-speaking-shadow-mode .transcript-segment.is-active .transcript-fa { color:#e9bc7e!important; }
html[data-zabanisa-theme="dark"] .lesson-shadow-summary {
    background:linear-gradient(135deg,#182445,#131d34)!important;
    border-color:#354878!important;
    box-shadow:none!important;
}
html[data-zabanisa-theme="dark"] .lesson-shadow-summary-copy strong { color:#b7c5ff!important; }
html[data-zabanisa-theme="dark"] .lesson-shadow-summary-copy small { color:#9eacc2!important; }
html[data-zabanisa-theme="dark"] .lesson-shadow-summary-rate {
    background:#1b2942!important;
    border-color:#3b4e7d!important;
    color:#c8d3ff!important;
}
html[data-zabanisa-theme="dark"] .lesson-speaking-studio { background:rgba(2,7,15,.66)!important; }
html[data-zabanisa-theme="dark"] .lesson-speaking-sheet {
    background:linear-gradient(180deg,#111b2e 0%,#0d1829 100%)!important;
    border-color:#2e4555!important;
    box-shadow:0 26px 70px rgba(0,0,0,.48)!important;
}
html[data-zabanisa-theme="dark"] .lesson-speaking-sheet-title strong,
html[data-zabanisa-theme="dark"] .lesson-speaking-mode-copy strong,
html[data-zabanisa-theme="dark"] .lesson-speaking-focus strong,
html[data-zabanisa-theme="dark"] .lesson-speaking-field-label strong,
html[data-zabanisa-theme="dark"] .lesson-speaking-repeat-preview strong,
html[data-zabanisa-theme="dark"] .lesson-speaking-complete h3 { color:var(--dm-text)!important; }
html[data-zabanisa-theme="dark"] .lesson-speaking-sheet-title span,
html[data-zabanisa-theme="dark"] .lesson-speaking-mode-copy span,
html[data-zabanisa-theme="dark"] .lesson-speaking-focus small,
html[data-zabanisa-theme="dark"] .lesson-speaking-field-label span,
html[data-zabanisa-theme="dark"] .lesson-speaking-repeat-preview small,
html[data-zabanisa-theme="dark"] .lesson-speaking-role span,
html[data-zabanisa-theme="dark"] .lesson-speaking-complete p { color:var(--dm-muted)!important; }
html[data-zabanisa-theme="dark"] .lesson-speaking-close {
    background:#1b2a40!important;
    color:#c8d5e6!important;
}
html[data-zabanisa-theme="dark"] .lesson-speaking-mode,
html[data-zabanisa-theme="dark"] .lesson-speaking-speed,
html[data-zabanisa-theme="dark"] .lesson-speaking-role,
html[data-zabanisa-theme="dark"] .lesson-speaking-selfcheck button {
    background:#152238!important;
    border-color:#2f425b!important;
    color:var(--dm-text-2)!important;
}
html[data-zabanisa-theme="dark"] .lesson-speaking-mode:hover,
html[data-zabanisa-theme="dark"] .lesson-speaking-mode:focus-visible,
html[data-zabanisa-theme="dark"] .lesson-speaking-role:hover,
html[data-zabanisa-theme="dark"] .lesson-speaking-selfcheck button:hover {
    background:#1a2a41!important;
    border-color:#3c5d60!important;
}
html[data-zabanisa-theme="dark"] .lesson-speaking-mode[disabled] { background:#111d2f!important; }
html[data-zabanisa-theme="dark"] .lesson-speaking-mode-icon,
html[data-zabanisa-theme="dark"] .lesson-speaking-focus > span,
html[data-zabanisa-theme="dark"] .lesson-speaking-repeat-preview-mic,
html[data-zabanisa-theme="dark"] .lesson-speaking-complete-icon {
    background:#12382f!important;
    color:#8cebdc!important;
}
html[data-zabanisa-theme="dark"] .lesson-speaking-technique-head {
    background:linear-gradient(135deg,#102c2d,#111d2f)!important;
    border-color:#29554e!important;
}
html[data-zabanisa-theme="dark"] .lesson-speaking-technique-icon {
    background:#17263b!important;
    color:#8cebdc!important;
    box-shadow:none!important;
}
html[data-zabanisa-theme="dark"] .lesson-speaking-technique-head strong { color:#8cebdc!important; }
html[data-zabanisa-theme="dark"] .lesson-speaking-technique-head p { color:var(--dm-muted)!important; }
html[data-zabanisa-theme="dark"] .lesson-speaking-help {
    background:#152238!important;
    border-color:#315e58!important;
    color:#8cebdc!important;
}
html[data-zabanisa-theme="dark"] .lesson-speaking-focus,
html[data-zabanisa-theme="dark"] .lesson-speaking-repeat-preview {
    background:#111d2f!important;
    border-color:#2b3d55!important;
}
html[data-zabanisa-theme="dark"] .lesson-speaking-speed.is-active,
html[data-zabanisa-theme="dark"] .lesson-speaking-role.is-active,
html[data-zabanisa-theme="dark"] .lesson-speaking-selfcheck button.is-active {
    background:#12382f!important;
    border-color:#337066!important;
    color:#8cebdc!important;
}
html[data-zabanisa-theme="dark"] .lesson-speaking-secondary {
    background:#17263b!important;
    border-color:#33465f!important;
    color:#c8d5e6!important;
}
/* Role-play keeps two roles visually distinct without returning to white cards. */
html[data-zabanisa-theme="dark"] .lesson-speaking-roleplay-mode .transcript-segment.is-role-user {
    background:linear-gradient(135deg,#102d2c,#111e2d)!important;
    border-color:#2d635a!important;
}
html[data-zabanisa-theme="dark"] .lesson-speaking-roleplay-mode .transcript-segment.is-role-peer {
    background:linear-gradient(135deg,#33291c,#211e22)!important;
    border-color:#654d2b!important;
}
html[data-zabanisa-theme="dark"] .lesson-speaking-roleplay-mode .transcript-segment.is-role-user .transcript-speaker { color:#78e5d5!important; }
html[data-zabanisa-theme="dark"] .lesson-speaking-roleplay-mode .transcript-segment.is-role-peer .transcript-speaker { color:#e7b56e!important; }
html[data-zabanisa-theme="dark"] .lesson-speaking-roleplay-mode .transcript-segment.is-role-current.is-role-user .transcript-en { color:#9ff0df!important; }
html[data-zabanisa-theme="dark"] .lesson-speaking-roleplay-mode .transcript-segment.is-role-current.is-role-peer .transcript-en { color:#ffd99c!important; }
html[data-zabanisa-theme="dark"] .lesson-speaking-roleplay-mode .transcript-segment.is-role-current.is-role-user .lesson-segment-play,
html[data-zabanisa-theme="dark"] .lesson-speaking-roleplay-mode .transcript-segment.is-role-current.is-role-user .lesson-segment-mic {
    background:#17263b!important;
    border-color:#337066!important;
}
html[data-zabanisa-theme="dark"] .lesson-speaking-selfcheck-feedback { color:#8cebdc!important; }
html[data-zabanisa-theme="dark"] .lesson-speaking-tour-card {
    background:linear-gradient(145deg,#152238,#0f1a2b)!important;
    border-color:#33465f!important;
    color:var(--dm-text)!important;
    box-shadow:0 24px 58px rgba(0,0,0,.42)!important;
}
html[data-zabanisa-theme="dark"] .lesson-speaking-tour-title { color:var(--dm-text)!important; }
html[data-zabanisa-theme="dark"] .lesson-speaking-tour-count,
html[data-zabanisa-theme="dark"] .lesson-speaking-tour-body { color:var(--dm-muted)!important; }
html[data-zabanisa-theme="dark"] .lesson-speaking-tour-btn {
    background:#17263b!important;
    border-color:#33465f!important;
    color:#c8d5e6!important;
}
html[data-zabanisa-theme="dark"] .lesson-speaking-tour-btn.is-primary { background:linear-gradient(135deg,#17b39f,#0f8f74)!important; color:#fff!important; }
html[data-zabanisa-theme="dark"] .lesson-speaking-tour-dot { background:#435169!important; }
html[data-zabanisa-theme="dark"] .lesson-speaking-tour-dot.is-active { background:#35d0bb!important; }

/* -------------------------------------------------------------------------- */
/* Web microphone permission + live speech feedback                           */
/* -------------------------------------------------------------------------- */
html[data-zabanisa-theme="dark"] .z-web-mic-backdrop { background:rgba(2,7,15,.68)!important; }
html[data-zabanisa-theme="dark"] .z-web-mic-card {
    background:linear-gradient(180deg,#152238,#0f1a2b)!important;
    border:1px solid #33465f;
    color:var(--dm-text)!important;
    box-shadow:0 22px 60px rgba(0,0,0,.46)!important;
}
html[data-zabanisa-theme="dark"] .z-web-mic-icon { background:#17284a!important; }
html[data-zabanisa-theme="dark"] .z-web-mic-card h3 { color:var(--dm-text)!important; }
html[data-zabanisa-theme="dark"] .z-web-mic-card p { color:var(--dm-muted)!important; }
html[data-zabanisa-theme="dark"] .z-web-mic-secondary {
    background:#1b2a40!important;
    color:#c8d5e6!important;
    border:1px solid #33465f!important;
}
html[data-zabanisa-theme="dark"] .z-web-mic-close { color:#aebed1!important; }
html[data-zabanisa-theme="dark"] .z-web-speaking-live {
    background:#111d2f!important;
    border-color:#314b72!important;
    box-shadow:0 7px 22px rgba(0,0,0,.20)!important;
}
html[data-zabanisa-theme="dark"] .z-web-speaking-live-head { color:#c8d5e6!important; }
html[data-zabanisa-theme="dark"] .z-web-speaking-live-time,
html[data-zabanisa-theme="dark"] .z-web-speaking-live-transcript-label,
html[data-zabanisa-theme="dark"] .z-web-speaking-live-score { color:#93a5bc!important; }
html[data-zabanisa-theme="dark"] .z-web-speaking-live-transcript,
html[data-zabanisa-theme="dark"] .z-web-speaking-live-score { border-top-color:#314157!important; }
html[data-zabanisa-theme="dark"] .z-web-speaking-live-transcript-text { color:#e2ebf7!important; }
html[data-zabanisa-theme="dark"] .z-web-speaking-live-transcript:not(.is-final) .z-web-speaking-live-transcript-text,
html[data-zabanisa-theme="dark"] .z-web-speaking-live-transcript-text[dir="rtl"] { color:#b2c1d4!important; }
html[data-zabanisa-theme="dark"] .z-web-speaking-live-score strong {
    background:#17284a!important;
    color:#9bbcff!important;
}
html[data-zabanisa-theme="dark"] .lesson-speaking-live-feedback {
    background:#152238!important;
    border-color:#33465f!important;
    color:#b5c4d7!important;
}
html[data-zabanisa-theme="dark"] .lesson-speaking-live-feedback.is-listening,
html[data-zabanisa-theme="dark"] .lesson-speaking-live-feedback.is-success {
    background:#12382f!important;
    border-color:#2e6259!important;
    color:#8cebdc!important;
}
html[data-zabanisa-theme="dark"] .lesson-speaking-live-feedback.is-transcript {
    background:#182445!important;
    border-color:#354878!important;
    color:#b9c9ff!important;
}
html[data-zabanisa-theme="dark"] .lesson-speaking-live-feedback.is-retry {
    background:#3b2d1c!important;
    border-color:#654c29!important;
    color:#efc476!important;
}

@media (prefers-reduced-motion: reduce) {
    html[data-zabanisa-theme="dark"] .goal-discovery-edge-cue b { animation:none!important; }
}

/* Phase-2 polish: dictionary has no regular topbar, so its compact learning
   stats are part of the page hero and need an explicit dark surface. */
html[data-zabanisa-theme="dark"] .dictionary-hero-stats .topbar-learning-stat {
    background:#111b2e!important;
    border-color:#2b3d55!important;
    box-shadow:0 8px 18px rgba(0,0,0,.20)!important;
}
html[data-zabanisa-theme="dark"] .dictionary-hero-stats .topbar-learning-stat-copy small { color:#8fa1b8!important; }
html[data-zabanisa-theme="dark"] .dictionary-hero-stats .topbar-learning-stat-copy strong { color:#dbe8f8!important; }
html[data-zabanisa-theme="dark"] .dictionary-hero-stats .topbar-learning-stat-icon { background:#12382f!important; }
html[data-zabanisa-theme="dark"] .dictionary-hero-stats .topbar-learning-stat--points .topbar-learning-stat-icon { background:#3b2d1c!important; }

/* Keep compact speaking controls from flashing white inside otherwise-dark
   shadowing/role-play status bars. */
html[data-zabanisa-theme="dark"] .lesson-shadow-status-rate {
    background:#1b2942!important;
    border-color:#536895!important;
    color:#dbe4ff!important;
    box-shadow:0 5px 12px rgba(0,0,0,.20)!important;
}
html[data-zabanisa-theme="dark"] .lesson-role-status-next {
    background:rgba(10,18,36,.42)!important;
    border:1px solid rgba(255,255,255,.22)!important;
    color:#fff!important;
    box-shadow:none!important;
}
html[data-zabanisa-theme="dark"] .lesson-role-status-count,
html[data-zabanisa-theme="dark"] .lesson-role-status-close {
    background:rgba(8,15,32,.32)!important;
}
