/* Shared, opt-in charcoal palette. Photographs and product demos retain their colors. */
:root { color-scheme: light; }
.site-nav .nav-inner { gap: 0.8rem; }
.site-nav .nav-inner > .brand { margin-right: auto; flex-shrink: 0; }
.av-theme-toggle {
    display: inline-flex; align-items: center; justify-content: center; gap: 0.45rem;
    flex: 0 0 auto; min-width: 44px; min-height: 44px; padding: 0.55rem 0.7rem;
    border: 1px solid var(--line); border-radius: 12px;
    background: var(--surface); color: var(--muted); font: inherit;
    font-size: 0.75rem; font-weight: 700; cursor: pointer;
    transition: background 160ms ease, border-color 160ms ease, color 160ms ease;
}
.av-theme-toggle:hover { background: var(--surface-strong); color: var(--ink); border-color: var(--blue); }
.av-theme-toggle:focus-visible { outline: 3px solid var(--blue); outline-offset: 4px; }
.av-theme-icons { width: 18px; height: 18px; display: grid; }
.av-theme-icons svg { width: 18px; height: 18px; grid-area: 1 / 1; transition: opacity 160ms ease, transform 160ms ease; }
.av-theme-sun { opacity: 0; transform: rotate(-45deg) scale(0.6); }
html[data-theme="dark"] .av-theme-moon { opacity: 0; transform: rotate(45deg) scale(0.6); }
html[data-theme="dark"] .av-theme-sun { opacity: 1; transform: none; }
@media (min-width: 981px) and (max-width: 1340px) {
    .site-nav .nav-links { gap: 0.7rem; }
    .av-theme-toggle { padding: 0.55rem; }
    .av-theme-label { display: none; }
}
@media (max-width: 980px) {
    .site-nav .av-theme-toggle { order: 1; }
    .site-nav .mobile-menu { order: 2; }
    .site-nav .nav-links { order: 3; }
}
@media (max-width: 420px) {
    .site-nav .nav-inner { gap: 0.5rem; }
    .av-theme-toggle { padding: 0.5rem; }
    .av-theme-label { display: none; }
}

html[data-theme="dark"] {
    color-scheme: dark;
    --bg: #111213; --surface: #1b1d20; --surface-strong: #25282d;
    --ink: #f1f2f3; --muted: #bac0c8; --soft: #969ea9; --line: #363a41;
    --blue: #69b3ff; --blue-dark: #84c2ff; --blue-glow: #9bcaff;
    --green: #56dbb0; --green-soft: #102e2b; --purple: #b19aff; --purple-light: #cabaff;
    --shadow: 0 20px 60px rgba(0, 4, 14, 0.3); --shadow-lg: 0 40px 80px rgba(0, 4, 14, 0.45);
    background: var(--bg);
}
html[data-theme="dark"] body { background: var(--bg); color: var(--ink); }
html[data-theme="dark"] body::before {
    background: radial-gradient(ellipse at 70% 8%, rgba(210, 220, 235, 0.035), transparent 45%),
        radial-gradient(ellipse at 15% 44%, rgba(210, 220, 235, 0.02), transparent 42%),
        linear-gradient(180deg, #111213, #151617 58%, #111213);
    animation: none;
}
html[data-theme="dark"] ::selection { background: #275a8c; color: #fff; }
html[data-theme="dark"] :focus-visible { outline-color: #92c9ff; }
html[data-theme="dark"] .skip-link { background: #f1f2f3; color: #111213; }
html[data-theme="dark"] #particles { opacity: 0.42; }
html[data-theme="dark"] .site-nav,
html[data-theme="dark"] .site-nav.scrolled {
    background: rgba(18, 19, 21, 0.92); border-color: rgba(210, 219, 234, 0.12);
    box-shadow: 0 8px 32px rgba(0, 4, 14, 0.16);
}
html[data-theme="dark"] .nav-links .dropdown { background: #1b1d20; }
html[data-theme="dark"] .hero::before { background: radial-gradient(circle, rgba(210, 220, 235, 0.025), transparent 70%); }
html[data-theme="dark"] .gradient-text,
html[data-theme="dark"] .av-page-title-accent {
    background-image: linear-gradient(110deg, #8ed7ff 5%, #69aaff 55%, #b2a2ff 100%);
    -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent;
}
html[data-theme="dark"] :is(.eyebrow, .tool-widget-shell .guide-section > .label) { color: #80e8c7; }
html[data-theme="dark"] :is(.btn-primary, .nav-links .nav-cta, .plan-badge, .cta-card .badge-pop,
    .av-start-button--primary, .av-start-step-number, .steps-list > li::before) {
    background: linear-gradient(135deg, #2286ed, #0861cf); color: #fff;
    box-shadow: 0 8px 26px rgba(13, 100, 215, 0.23);
}
html[data-theme="dark"] :is(.btn-secondary, .metric, .lms-inner, .feature-card, .hiw-tab,
    .ios-badge, .review, .faq-item, .steps-list > li, .toc-grid a, .feed-box, .q-opts span,
    .check-list li, .av-start-button--secondary, .av-start-overview, .av-start-rail,
    .av-start-step, .av-start-plan, .av-start-tools article, .study-tool-card) {
    background: var(--surface); border-color: var(--line); box-shadow: 0 8px 28px rgba(0, 4, 14, 0.15);
}
html[data-theme="dark"] :is(.feature-card:hover, .hiw-tab:hover, .btn-secondary:hover, .btn-secondary:focus) {
    background: #26292e; border-color: #646b77;
}
html[data-theme="dark"] :is(.product-frame, .hiw-stage) {
    box-shadow: 0 26px 70px rgba(0, 4, 14, 0.45), 0 0 0 1px rgba(215, 225, 240, 0.035);
    border-color: #434951;
}
html[data-theme="dark"] .product-frame::before,
html[data-theme="dark"] .hiw-stage::before {
    background: linear-gradient(90deg, #25282d, #30343a); border-color: var(--line);
}
html[data-theme="dark"] :is(.pill, .tool-widget-shell kbd) { color: #b6d9ff; }
html[data-theme="dark"] .flow-step.is-answer,
html[data-theme="dark"] .q-mock { background: linear-gradient(145deg, #252a2f, #1b1e22); border-color: #424a54; }
html[data-theme="dark"] .why-steps li::before { background: #2d333b; }
html[data-theme="dark"] :is(.check-list li::before, .ans-strip .conf, .engine-proof .swap em,
    .plan .save, .check-c, .final2 .feed li .when, .vs-cell.vs-apex::before) { color: #72e2be; }
html[data-theme="dark"] .band { background: #141618; border-block: 1px solid #30343a; }
html[data-theme="dark"] :is(.why-card, .subject-band, .band-stats div) { background: #202327; border-color: #363a41; }
html[data-theme="dark"] :is(.site-footer, .final-panel) { background: #101112; border-top: 1px solid #2c3036; }

/* Page families use their own named tokens. Keep these in sync with the shell. */
html[data-theme="dark"] :is(main#main, #pricing, .av-start-guide, .av-page-article) {
    --pricing-navy: #f1f2f3; --pricing-blue: #69b3ff; --pricing-blue-dark: #84c2ff;
    --pricing-blue-soft: #252d37; --pricing-green: #72e2be; --pricing-text: #c9cdd3;
    --pricing-muted: #aab1bc; --pricing-line: #363a41;
    --guide-navy: #f1f2f3; --guide-blue: #69b3ff; --guide-blue-dark: #84c2ff;
    --guide-blue-soft: #252d37; --guide-green: #72e2be; --guide-text: #c9cdd3;
    --guide-muted: #aab1bc; --guide-line: #363a41;
    --start-navy: #f1f2f3; --start-blue: #69b3ff; --start-blue-dark: #84c2ff;
    --start-blue-soft: #252d37; --start-green: #72e2be; --start-text: #c9cdd3;
    --start-muted: #aab1bc; --start-line: #363a41;
}
html[data-theme="dark"] :is(main#main, .av-start-guide, .av-editorial-page .av-page-main) { background: transparent; }
html[data-theme="dark"] main#main :is(.plan, .review, .faq-item, .guide-section, .toc-grid,
    .study-tool-card, .page-meta .pill, .kbd-table, .pill.kbd) {
    background: var(--surface); border-color: var(--line);
}
html[data-theme="dark"] main#main #pricing .plan { background: linear-gradient(160deg, #22252a, #1b1d21); }
html[data-theme="dark"] main#main #pricing .plan.featured {
    border-color: transparent;
    background: linear-gradient(155deg, #303640, #25282e 60%, #22252a) padding-box,
        linear-gradient(135deg, #6d98d0, #536b9e 55%, #7c79a5) border-box;
    box-shadow: 0 24px 64px rgba(0, 8, 24, 0.4), 0 0 32px rgba(115, 137, 176, 0.07);
}
html[data-theme="dark"] #pricing .plan .btn-secondary { background: #2a2e35; color: #edf0f4; }
html[data-theme="dark"] #pricing .plan.featured .btn-primary { background: linear-gradient(135deg, #2486f0, #0861cf); }
html[data-theme="dark"] #pricing .plan-badge { background: linear-gradient(135deg, #297bd7, #4059c7); }
html[data-theme="dark"] #pricing .plan .pill-row .pill { color: #b6d9ff; }
html[data-theme="dark"] #pricing .plan-top img { background: #eaf3ff; }
html[data-theme="dark"] main#main :is(.free-note, .free-note strong),
html[data-theme="dark"] .free-note { background: #102d29; border-color: #295b4f; color: #8ee8c9; }
html[data-theme="dark"] main#main :is(.steps-list > li, .info-list li, .kbd-table tbody tr:nth-child(even)) { background: #24272c; }
html[data-theme="dark"] main#main > .band { background: #141618; }
html[data-theme="dark"] main#main > .band .btn-primary { background: #edf0f4; color: #1b2027; }
html[data-theme="dark"] main#main #faq .faq-item[open] { background: #2b3037; }
html[data-theme="dark"] main#main #faq .faq-item { background: var(--surface); }
html[data-theme="dark"] main#main #faq summary .plus { background: #2c333d; border-color: var(--line); }
html[data-theme="dark"] main#main :is(.pricing-trust, .compare-wrap) { background: var(--surface); }
html[data-theme="dark"] main#main :is(.recharge-card, .compare-row.head) { background: #22262b; }
html[data-theme="dark"] main#main .recharge-actions .btn { background: #30363f; color: #f0f2f5; border-color: #48525e; }
html[data-theme="dark"] main#main .compare-row:not(.head):nth-of-type(even) { background: #202327; }
html[data-theme="dark"] main#main #reviews { background: #16181b; }
html[data-theme="dark"] main#main .reviews-grid.compact .review,
html[data-theme="dark"] main#main .reviews-grid.compact .review:nth-child(-n + 2) { background: linear-gradient(145deg, #26292e, #1c1f23); }
html[data-theme="dark"] .steps-list > li::before { background: #1c69b8; color: #fff; }
html[data-theme="dark"] .check-list li::before,
html[data-theme="dark"] .vs-cell.vs-apex::before { color: #72e2be; }
html[data-theme="dark"] .av-start-rail nav a { color: var(--muted); }
html[data-theme="dark"] :is(.av-start-checks > div, .av-start-choice, .av-start-match > div,
    .av-start-mini-steps li, .av-start-mini-steps li > span, .av-start-tools kbd) { background: #292d33; color: var(--muted); }
html[data-theme="dark"] .av-start-note { background: #30291b; }
html[data-theme="dark"] .av-start-note :is(strong, span) { color: #ecd199; }
html[data-theme="dark"] .av-start-button--light { color: #1b2027; }
html[data-theme="dark"] .av-start-help { background: #22262b; }
html[data-theme="dark"] main#main .tool-limits { background: #22291e; border-color: #4b503a; }
html[data-theme="dark"] main#main .tool-limits :is(h3, p, li, strong) { color: #d5dec5; }

/* Forms, uploaded-file lists and generated study results. */
html[data-theme="dark"] .tool-widget-shell form,
html[data-theme="dark"] .tool-widget-shell :is(input[type="text"], input[type="file"], select, textarea,
    [class$="-results"], [class$="-response-box"], [class$="-file-item"], [class$="-question-card"],
    [class$="-question"], [class$="-priority-item"], [class$="-option"], .av-fc-card, .av-hwh-file-preview) {
    background: var(--surface); border-color: var(--line); color: var(--ink);
}
html[data-theme="dark"] .tool-widget-shell :is(input, textarea)::placeholder { color: #8fa3c0; }
html[data-theme="dark"] .tool-widget-shell :is([class$="-badge"], [class$="-free-badge"]) { color: #b6d9ff; }
html[data-theme="dark"] .tool-widget-shell :is([class$="-error"], [class$="-limit-reached"], [class$="-status-incorrect"]) { color: #ffaaa8; }
html[data-theme="dark"] .tool-widget-shell :is([class$="-limit-warning"]) { color: #efd196; }
html[data-theme="dark"] .tool-widget-shell [class$="-status-correct"] { color: #80e8c7; }

/* Editorial and policy content keeps the same reading hierarchy. */
html[data-theme="dark"] :is(.av-page-summary, .av-page-toc, .av-page-eyebrow,
    .av-editorial-page .av-page-article, .av-page-article > section, .av-direct-answer,
    .av-stat-callout, .av-pull-quote, .av-table-scroll) {
    background: var(--surface); border-color: var(--line);
}
html[data-theme="dark"] .av-page-summary::before { background: linear-gradient(145deg, rgba(107, 160, 241, 0.06), transparent); }
html[data-theme="dark"] :is(.av-page-article, .av-page-toc a, .av-page-updated,
    .av-direct-answer p, .av-stat-source, .av-quote-source) { color: var(--muted); }
html[data-theme="dark"] :is(.av-page-article strong, .av-direct-answer h2, .av-stat-claim,
    .av-pull-quote blockquote p, .av-pull-quote cite) { color: var(--ink); }
html[data-theme="dark"] .av-page-article :is(th, td) { border-color: var(--line); }
html[data-theme="dark"] .av-page-article :is(thead, th, tr:nth-child(even)) { background: #2c323a; color: var(--ink); }
html[data-theme="dark"] .av-editorial-page .av-page-article :is(.quick-answer, .av-sb-lead,
    .av-sb-three-ways-section, .av-sb-answers-section, .av-sb-features-section) { background: #2b3037 !important; }
html[data-theme="dark"] .av-page-main--refund { background: transparent; }
html[data-theme="dark"] :is(.av-page-main--refund, .av-page-article--refund) {
    --refund-navy: #f1f2f3; --refund-blue: #78b9ff; --refund-blue-dark: #a1cdff;
    --refund-sky: #29323d; --refund-line: #363a41; --refund-muted: #b2bac6;
    --refund-green-soft: #102e2b; --refund-red-soft: #33212d;
}
html[data-theme="dark"] .av-page-main--refund .av-page-hero { background: transparent; }
html[data-theme="dark"] .av-page-main--refund :is(.av-page-summary, .av-page-toc) { background: var(--surface); }
html[data-theme="dark"] .av-page-main--refund :is(.av-page-summary-item, .av-refund-action-facts li) { background: #282d34; }
html[data-theme="dark"] .av-page-main--refund .av-page-lede { color: var(--muted); }
html[data-theme="dark"] .av-page-article--refund :is(.av-refund-intro, .av-refund-section,
    .av-refund-action-panel, .av-refund-step, .av-refund-timeline-item, .av-refund-highlight-box,
    .av-refund-cancel-card, .av-refund-contact-card, .av-refund-list li) { background: #24272c; border-color: var(--line); }
html[data-theme="dark"] .av-page-article--refund :is(p, .av-refund-subsection-title, .av-refund-list li) { color: var(--muted); }
html[data-theme="dark"] .av-page-article--refund :is(.av-refund-section-number, .av-refund-step-number,
    .av-refund-action-link--primary) { background: #1869c4; color: #fff; }
html[data-theme="dark"] .av-page-article--refund .av-refund-action-link--secondary { background: #313942; color: var(--ink); }
html[data-theme="dark"] .av-page-article--refund .av-refund-section--contact { background: #222a33; }
html[data-theme="dark"] .av-page-article--refund .av-refund-section--contact .av-refund-contact-card { background: #303b47; }
html[data-theme="dark"] .av-page-summary-item { background: #282d34; border-color: var(--line); }
html[data-theme="dark"] .av-page-article :is(.apex-about-main, .apex-about-info-card,
    [class$="-service-card"], [class$="-contact-card"], [class$="-cancel-card"], [class$="-step"],
    [class$="-timeline-item"], [class$="-use-item"], [class$="-faq-item"], [class$="-highlight-box"],
    .av-refund-info-box, .av-refund-warning-box, .av-integrity-emphasis, .av-integrity-email-template,
    .av-integrity-citation-box, .av-integrity-email-box, table, .policy-search-widget input,
    .policy-search-widget select, .school-list) {
    background: #24272c; border-color: var(--line); color: var(--muted);
}
html[data-theme="dark"] .av-page-article--safety-and-compliance :is(.av-integrity-line-section,
    .av-integrity-use-cases, .av-integrity-use-item, .av-integrity-decision-grid li,
    .av-integrity-faq-item, .av-integrity-email-template, .av-integrity-citation-box, .av-integrity-email-box) {
    background: #24272c; border-color: var(--line);
}
html[data-theme="dark"] .av-page-article--safety-and-compliance .av-integrity-acceptable { background: #112e2b; }
html[data-theme="dark"] .av-page-article--safety-and-compliance .av-integrity-prohibited { background: #322330; }
html[data-theme="dark"] .av-page-article--safety-and-compliance .av-integrity-cta-secondary { background: #303b46; color: #f1f2f3; }
html[data-theme="dark"] .av-page-article--safety-and-compliance :is(p, li, .av-integrity-citation-label,
    .av-integrity-decision-content > span, .av-integrity-email-content) { color: var(--muted); }
html[data-theme="dark"] .av-page-article--safety-and-compliance :is(h2, h3, h4, strong) { color: var(--ink); }
html[data-theme="dark"] .av-page-article--safety-and-compliance code { color: #c9d8eb; }
html[data-theme="dark"] main#main .review .stars { background: #332d1f; color: #f5ce7a; }
html[data-theme="dark"] .av-editorial-page .av-page-article :is(.av-guide-cta, .av-guide-cta__actions a,
    .av-related-guides__card, [class$="-faq-item"]) { background: #2b3037; border-color: var(--line); }
html[data-theme="dark"] .av-editorial-page .av-page-article > section.av-guide-cta :is(h2, strong) { color: var(--ink); }
html[data-theme="dark"] .av-editorial-page .av-page-article > section.av-guide-cta p { color: var(--muted); }
html[data-theme="dark"] .av-editorial-page .av-guide-cta__actions a { color: #b6d9ff; }
html[data-theme="dark"] .av-editorial-page .av-guide-cta__actions a:first-child { background: #1264c3; color: #fff; }
@media (max-width: 980px) {
    html[data-theme="dark"] .site-nav .nav-links { background: #1b1e22; border-color: var(--line); }
    html[data-theme="dark"] .site-nav .nav-links .dropdown { background: #242930; }
}
@media (prefers-reduced-motion: reduce) {
    .av-theme-toggle, .av-theme-icons svg { transition: none; }
}
@media print { .av-theme-toggle { display: none; } }

/* Controls need independent text and fill colors; --ink is a text token. */
html[data-theme="dark"] .store-btn {
    background: #202225; color: #f1f2f3; border-color: #41464e;
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.18);
}
html[data-theme="dark"] .store-btn:hover { background: #30343a; border-color: #737c88; }
html[data-theme="dark"] .store-btn :is(small, strong, svg) { color: inherit; }
html[data-theme="dark"] .vs-head .vs-apex em { background: #205343; color: #d6f6e9; }
html[data-theme="dark"] :is(.step-tag b, .subhead .tag, .cta-quote .who .av) { background: #255b93; color: #fff; }
html[data-theme="dark"] main#main .kbd-table th { background: #30343a; color: #f1f2f3; border-color: var(--line); }
html[data-theme="dark"] main#main .cta-card .btn {
    background: linear-gradient(135deg, #216cc2, #1159ad); color: #fff; border-color: #367dc8;
}
html[data-theme="dark"] main#main .tool-widget-shell [id$="-submit-btn"],
html[data-theme="dark"] :is(.btn-primary, .nav-links .nav-cta, .av-start-button--primary) {
    background: linear-gradient(135deg, #216cc2, #1159ad); color: #fff;
    border-color: #367dc8; box-shadow: 0 8px 24px rgba(0, 0, 0, 0.22);
}
html[data-theme="dark"] main#main #pricing .plan.featured .btn-primary { background: linear-gradient(135deg, #216cc2, #1159ad); }
html[data-theme="dark"] :is(.btn-primary:hover, .nav-links .nav-cta:hover, .av-start-button--primary:hover) { background: #226dc1; }
html[data-theme="dark"] main#main #pricing .plan-badge {
    background: #31567e; color: #f0f4fa;
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.2), 0 0 0 4px #15171a;
}
html[data-theme="dark"] main#main #pricing .plan.featured:hover { box-shadow: 0 24px 60px rgba(0, 0, 0, 0.4); }
html[data-theme="dark"] .cross-c { color: #e9938e; }
html[data-theme="dark"] .av-stat-source a,
html[data-theme="dark"] .av-related-guides__card span { color: #8bb7e6; }
html[data-theme="dark"] .tool-widget-shell :is(input, textarea, select):focus {
    border-color: #88b5e7; outline-color: #88b5e7;
    box-shadow: 0 0 0 3px rgba(136, 181, 231, 0.12);
}
html[data-theme="dark"] .tool-widget-shell input::file-selector-button {
    background: #30343a; color: #e3e7ed; border: 1px solid #555d69; border-radius: 6px;
}
html[data-theme="dark"] main#main .tool-widget-shell :is(.av-pe-option, .av-fc-card, .av-hwh-response-box,
    .av-fc-results, .av-sg-results, .av-pe-results, .av-mp-results, .av-ew-results) { background: #1e2125; }
html[data-theme="dark"] main#main .tool-widget-shell :is(.av-pe-option.correct, .av-pe-option-correct) { background: #20362d; border-color: #599a7a; }
html[data-theme="dark"] main#main .tool-widget-shell :is(.av-pe-option.incorrect, .av-pe-option-incorrect) { background: #3c282b; border-color: #bf767a; }
html[data-theme="dark"] main#main .tool-widget-shell :is(.av-pe-option-selected, .av-pe-option:hover:not(.av-pe-option-disabled)) { background: #293442; border-color: #7da7d4; }
html[data-theme="dark"] main#main .tool-widget-shell :is(.av-hwh-action-btn-primary, .av-pe-toggle-btn.active) { background: #255f9d; color: #fff; }
html[data-theme="dark"] .band::before { background: radial-gradient(ellipse at 40% 30%, rgba(225, 230, 240, 0.035), transparent 70%); }
html[data-theme="dark"] :is(.vs-head, .compare-row.head) { background: linear-gradient(135deg, #2a2d32, #1c1f23); }
html[data-theme="dark"] main#main .reviews-overview { background: linear-gradient(135deg, #292e35, #1c2026); border-color: #424b58; }
html[data-theme="dark"] main#main .recharge-card > .btn {
    background: #2b333e; color: #dce9f9; border-color: #526477;
}
/* The artwork is transparent. Only its separate caption layer changes ink in
   dark mode; the phone, screen and transparent surround keep their colors. */
.phone .av-ios-caption { display: none; }
html[data-theme="dark"] .phone .ios-shot { background: transparent; }
html[data-theme="dark"] .phone .ios-shot[data-av-ios-caption-cut] {
    clip-path: inset(var(--av-ios-caption-cut) 0 0);
}
html[data-theme="dark"] .phone .av-ios-caption {
    display: block; grid-area: 1 / 1; width: 100%; height: auto;
    opacity: 0; pointer-events: none;
    clip-path: inset(0 0 calc(100% - var(--av-ios-caption-cut)) 0);
    filter: brightness(0) invert(0.94);
    transition: opacity 0.8s ease;
}
html[data-theme="dark"] .phone .ios-shot.active + .av-ios-caption { opacity: 1; }
/* The flashcard follow-up panel is emitted with inline light colors. */
html[data-theme="dark"] main#main .av-fc-next-step { background: #262c33 !important; border-color: #48525e !important; }
html[data-theme="dark"] main#main .av-fc-next-step :is(h4, p) { color: #d8dee7 !important; }
html[data-theme="dark"] main#main .av-fc-next-step a { background: #1b65b8 !important; color: #fff !important; }
html[data-theme="dark"] main#main .compare-row.head .apex { background: #293e58; color: #f4f6f9; }
html[data-theme="dark"] .cta-card .badge-pop { background: #255b93; color: #fff; box-shadow: 0 6px 18px rgba(0, 0, 0, 0.2); }
html[data-theme="dark"] .vs-head .vs-dim { color: #a9b1bc; }
html[data-theme="dark"] main#main .av-start-step-number { background: #255b93; color: #fff; }
html[data-theme="dark"] #av-hwh-new-btn { background: #1b65b8 !important; color: #fff; }
html[data-theme="dark"] main#main .tool-widget-shell :is(.av-pe-question-card.av-pe-correct, .av-pe-question-card.av-pe-incorrect) {
    background: #1e2125; color: var(--ink);
}
html[data-theme="dark"] main#main .tool-widget-shell .av-pe-option-indicator {
    background: #30363e; border-color: #59636f; color: #e5eaf1;
}
html[data-theme="dark"] main#main .tool-widget-shell .av-pe-option-correct .av-pe-option-indicator { background: #246346; border-color: #599a7a; color: #fff; }
html[data-theme="dark"] main#main .tool-widget-shell .av-pe-option-incorrect .av-pe-option-indicator { background: #85404b; border-color: #bf767a; color: #fff; }
html[data-theme="dark"] main#main .av-pe-reset-btn {
    display: inline-flex; align-items: center; justify-content: center; gap: 8px;
    min-height: 44px; padding: 12px 20px; border: 1px solid #536071; border-radius: 10px;
    background: #303944; color: #eef2f7; font: inherit; font-weight: 700; cursor: pointer;
}
html[data-theme="dark"] main#main .av-pe-reset-btn:hover { background: #3a4655; }
html[data-theme="dark"] main#main .av-pe-next-step { background: #262c33 !important; border-color: #48525e !important; }
html[data-theme="dark"] main#main .av-pe-next-step :is(h4, p) { color: #d8dee7 !important; }
html[data-theme="dark"] main#main .av-pe-next-step a { background: #1b65b8 !important; color: #fff !important; }
html[data-theme="dark"] main#main :is(.av-sg-next-step, .av-ew-next-step) { background: #262c33 !important; border-color: #48525e !important; }
html[data-theme="dark"] main#main :is(.av-sg-next-step, .av-ew-next-step) :is(h4, p) { color: #d8dee7 !important; }
html[data-theme="dark"] main#main :is(.av-sg-next-step, .av-ew-next-step) a { background: #1b65b8 !important; color: #fff !important; }
html[data-theme="dark"] main#main .av-sg-section-content { color: #d8dee7 !important; }
html[data-theme="dark"] main#main .av-sg-practice-cta div { color: #c8d0dc !important; }
html[data-theme="dark"] main#main :is(.av-sg-toc-item, .av-sg-toc > div:first-child, .av-sg-section-header span) { color: #9ac7ff !important; }
html[data-theme="dark"] main#main :is(#av-sg-download-md-btn, #av-sg-practice-exam-btn) { background: #1b65b8 !important; color: #fff !important; }
html[data-theme="dark"] main#main .av-mp-solution-body :is(p, li, div, blockquote) { color: #c8d0dc !important; }
html[data-theme="dark"] main#main .av-mp-solution-body :is(h2, h3, h4) { color: #f1f2f3 !important; }
html[data-theme="dark"] main#main .av-mp-solution-body strong { color: #9ac7ff !important; }
html[data-theme="dark"] main#main :is(.av-sg-toc, .av-sg-practice-cta) {
    background: #24282e !important; border-color: #414954 !important;
}
html[data-theme="dark"] main#main .av-sg-collapsible-section { border-color: #414954 !important; }
html[data-theme="dark"] main#main .av-sg-section-header { background: #2a2e34 !important; }
html[data-theme="dark"] main#main .av-sg-section-header:hover { background: #323943 !important; }
html[data-theme="dark"] main#main #av-sg-practice-exam-btn { box-shadow: 0 4px 16px rgba(0, 0, 0, .2) !important; }
@media (max-width: 420px) {
    html[data-theme="dark"] main#main .av-fc-controls {
        display: grid; grid-template-columns: 44px minmax(0, 1fr) minmax(0, 1fr) 44px; gap: 6px;
    }
    html[data-theme="dark"] main#main .av-fc-controls > button { min-width: 0; min-height: 44px; padding: 8px 4px; }
    html[data-theme="dark"] main#main :is(.av-fc-shuffle-btn, .av-fc-flip-btn) { font-size: 11px; gap: 4px; letter-spacing: 0; }
}
