/*
 * Phase18D18 — Light / Dark presentation system.
 * This file is intentionally loaded last so the selected visitor theme can
 * override public pages, dashboard, AI mode, reports and mobile/app layouts.
 */

:root,
html[data-flyup-theme="light"] {
    color-scheme: light;
}

html[data-flyup-theme="dark"] {
    color-scheme: dark;
    --bg: #07111f;
    --bg-alt: #0b1b2e;
    --bg-card: #101f33;
    --text-primary: #f8fbff;
    --text-secondary: #bfd0e5;
    --border: rgba(148, 163, 184, 0.26);
    --accent: #38bdf8;
    --accent-2: #5eead4;
    --success: #34d399;
    --danger: #fb7185;
    --shadow-sm: 0 16px 42px rgba(0, 0, 0, 0.32);
    --shadow-lg: 0 32px 86px rgba(0, 0, 0, 0.42);
}

html[data-flyup-theme="dark"] body {
    background:
        radial-gradient(circle at 8% -10%, rgba(56, 189, 248, 0.18), transparent 32rem),
        radial-gradient(circle at 98% 8%, rgba(94, 234, 212, 0.15), transparent 30rem),
        linear-gradient(180deg, #07111f 0%, #0a1728 42%, #0f1e33 100%) !important;
    color: var(--text-primary) !important;
}

html[data-flyup-theme="dark"] .site-header__inner,
html[data-flyup-theme="dark"] .card,
html[data-flyup-theme="dark"] .dashboard-card,
html[data-flyup-theme="dark"] .dashboard-shell,
html[data-flyup-theme="dark"] .dashboard-panel,
html[data-flyup-theme="dark"] .flyup-dashboard-main,
html[data-flyup-theme="dark"] .flyup-dashboard-section,
html[data-flyup-theme="dark"] .flyup-profile-card,
html[data-flyup-theme="dark"] .flyup-billing-card,
html[data-flyup-theme="dark"] .flyup-ai-card,
html[data-flyup-theme="dark"] .flyup-ai-form-card,
html[data-flyup-theme="dark"] .flyup-manual-card,
html[data-flyup-theme="dark"] .flyup-travel-budget-card,
html[data-flyup-theme="dark"] .pricing-card,
html[data-flyup-theme="dark"] .benefit-card,
html[data-flyup-theme="dark"] .step-card,
html[data-flyup-theme="dark"] .faq-item,
html[data-flyup-theme="dark"] .services-strip,
html[data-flyup-theme="dark"] .report-preview__mockup,
html[data-flyup-theme="dark"] .home-mode-card,
html[data-flyup-theme="dark"] .flyup-report-view,
html[data-flyup-theme="dark"] .flyup-inspiration-destination-card,
html[data-flyup-theme="dark"] .flyup-inspiration-detail-box,
html[data-flyup-theme="dark"] .flyup-inspiration-compare,
html[data-flyup-theme="dark"] .flyup-inspiration-compare-card,
html[data-flyup-theme="dark"] .flyup-ai-accordion,
html[data-flyup-theme="dark"] .flyup-mobile-app-shell,
html[data-flyup-theme="dark"] .flyup-mobile-app-card {
    background: rgba(15, 31, 51, 0.86) !important;
    border-color: rgba(148, 163, 184, 0.22) !important;
    color: var(--text-primary) !important;
    box-shadow: var(--shadow-sm) !important;
}

html[data-flyup-theme="dark"] .site-header__inner,
html[data-flyup-theme="dark"] .flyup-dashboard-sidebar,
html[data-flyup-theme="dark"] .dashboard-sidebar,
html[data-flyup-theme="dark"] .flyup-account-sidebar {
    background: rgba(10, 23, 40, 0.82) !important;
    backdrop-filter: blur(18px) !important;
}

html[data-flyup-theme="dark"] .site-nav__link,
html[data-flyup-theme="dark"] .site-nav__submenu a,
html[data-flyup-theme="dark"] .site-actions .btn-outline,
html[data-flyup-theme="dark"] .btn-outline,
html[data-flyup-theme="dark"] .section-title,
html[data-flyup-theme="dark"] h1,
html[data-flyup-theme="dark"] h2,
html[data-flyup-theme="dark"] h3,
html[data-flyup-theme="dark"] h4,
html[data-flyup-theme="dark"] strong,
html[data-flyup-theme="dark"] .flyup-ai-accordion__summary,
html[data-flyup-theme="dark"] .flyup-inspiration-dest-title h2,
html[data-flyup-theme="dark"] .flyup-inspiration-compare-card__body h3 {
    color: var(--text-primary) !important;
}

html[data-flyup-theme="dark"] p,
html[data-flyup-theme="dark"] li,
html[data-flyup-theme="dark"] small,
html[data-flyup-theme="dark"] label,
html[data-flyup-theme="dark"] .section-subtitle,
html[data-flyup-theme="dark"] .homepage-hero__description,
html[data-flyup-theme="dark"] .text-muted,
html[data-flyup-theme="dark"] .flyup-muted,
html[data-flyup-theme="dark"] .flyup-inspiration-dest-country,
html[data-flyup-theme="dark"] .flyup-inspiration-compare-card__location,
html[data-flyup-theme="dark"] .flyup-report-view__meta,
html[data-flyup-theme="dark"] .flyup-ai-accordion__content {
    color: var(--text-secondary) !important;
}

html[data-flyup-theme="dark"] .site-nav__submenu,
html[data-flyup-theme="dark"] .site-quick-switcher,
html[data-flyup-theme="dark"] .site-currency-switcher,
html[data-flyup-theme="dark"] .site-lang-switcher,
html[data-flyup-theme="dark"] .hero-trustbar span,
html[data-flyup-theme="dark"] .service-pill,
html[data-flyup-theme="dark"] .metric-box,
html[data-flyup-theme="dark"] .home-mode-card__mockup,
html[data-flyup-theme="dark"] .flyup-inspiration-decision-metric,
html[data-flyup-theme="dark"] .flyup-inspiration-budget-table td,
html[data-flyup-theme="dark"] .flyup-inspiration-tags .flyup-inspiration-tag,
html[data-flyup-theme="dark"] input,
html[data-flyup-theme="dark"] select,
html[data-flyup-theme="dark"] textarea,
html[data-flyup-theme="dark"] .form-control {
    background: rgba(8, 20, 36, 0.78) !important;
    border-color: rgba(148, 163, 184, 0.24) !important;
    color: var(--text-primary) !important;
}

html[data-flyup-theme="dark"] input::placeholder,
html[data-flyup-theme="dark"] textarea::placeholder {
    color: rgba(191, 208, 229, 0.68) !important;
}

html[data-flyup-theme="dark"] .site-quick-switcher__item {
    color: var(--text-primary) !important;
    background: transparent !important;
    border: 0 !important;
}

html[data-flyup-theme="dark"] .site-quick-switcher__item + .site-quick-switcher__item::before {
    background: rgba(226, 232, 240, 0.14) !important;
}

html[data-flyup-theme="dark"] .site-quick-switcher__item:hover,
html[data-flyup-theme="dark"] .site-quick-switcher__item:focus-visible {
    color: #062033 !important;
    background: linear-gradient(135deg, var(--accent), var(--accent-2)) !important;
}

.site-quick-switcher__item--theme {
    appearance: none;
    border: 0;
    background: transparent;
    cursor: pointer;
    padding: 0;
    font-size: 0.9rem;
}

.site-header .site-actions .site-quick-switcher {
    min-width: 124px !important;
}

.site-header .site-actions .site-quick-switcher__item {
    width: 38px !important;
    min-width: 38px !important;
}

.site-header .site-actions .site-quick-switcher__item--theme {
    font-size: 0.9rem !important;
}

html[data-flyup-theme="dark"] .btn-primary,
html[data-flyup-theme="dark"] .final-cta-card,
html[data-flyup-theme="dark"] .flyup-report-hero,
html[data-flyup-theme="dark"] .flyup-premium-reference-report .f4y-hero,
html[data-flyup-theme="dark"] .flyup-report-hero--inspiration,
html[data-flyup-theme="dark"] .flyup-report-hero--planner {
    background: linear-gradient(135deg, #0ea5e9, #14b8a6) !important;
    color: #ffffff !important;
}

html[data-flyup-theme="dark"] .btn-outline,
html[data-flyup-theme="dark"] .btn-ghost,
html[data-flyup-theme="dark"] .site-actions .btn-outline,
html[data-flyup-theme="dark"] .flyup-dashboard-nav a,
html[data-flyup-theme="dark"] .dashboard-nav a {
    background: rgba(8, 20, 36, 0.72) !important;
    border-color: rgba(148, 163, 184, 0.28) !important;
    color: var(--text-primary) !important;
}

html[data-flyup-theme="dark"] .flyup-dashboard-nav a.is-active,
html[data-flyup-theme="dark"] .dashboard-nav a.is-active,
html[data-flyup-theme="dark"] .flyup-dashboard-nav a:hover,
html[data-flyup-theme="dark"] .dashboard-nav a:hover {
    background: rgba(56, 189, 248, 0.14) !important;
    color: var(--accent) !important;
}

html[data-flyup-theme="dark"] .bg-alt,
html[data-flyup-theme="dark"] .homepage-benefits,
html[data-flyup-theme="dark"] .homepage-how-it-works,
html[data-flyup-theme="dark"] .homepage-report-preview,
html[data-flyup-theme="dark"] .homepage-pricing,
html[data-flyup-theme="dark"] .homepage-faq,
html[data-flyup-theme="dark"] .homepage-final-cta,
html[data-flyup-theme="dark"] .flyup-dashboard-page,
html[data-flyup-theme="dark"] .flyup-page-background {
    background: transparent !important;
}

html[data-flyup-theme="dark"] table,
html[data-flyup-theme="dark"] th,
html[data-flyup-theme="dark"] td,
html[data-flyup-theme="dark"] .flyup-inspiration-budget-table td {
    border-color: rgba(148, 163, 184, 0.22) !important;
}

html[data-flyup-theme="dark"] .flyup-inspiration-warning,
html[data-flyup-theme="dark"] .contact-alert--error {
    background: rgba(251, 113, 133, 0.12) !important;
    border-color: rgba(251, 113, 133, 0.30) !important;
    color: #fecdd3 !important;
}

html[data-flyup-theme="dark"] .contact-alert--success {
    background: rgba(52, 211, 153, 0.12) !important;
    border-color: rgba(52, 211, 153, 0.30) !important;
    color: #bbf7d0 !important;
}

html[data-flyup-theme="dark"] .site-actions__auth-icon-img {
    filter: drop-shadow(0 10px 18px rgba(56, 189, 248, 0.18));
}

html[data-flyup-theme="dark"] .flyup-inspiration-compare-card__top strong,
html[data-flyup-theme="dark"] .flyup-inspiration-score-badge {
    color: #ffffff !important;
}

html[data-flyup-theme="dark"] .flyup-inspiration-compare-card__top strong {
    background: #020617 !important;
}

@media (max-width: 768px) {
    .site-header .site-actions .site-quick-switcher {
        min-width: 116px !important;
    }

    .site-header .site-actions .site-quick-switcher__item {
        width: 35px !important;
        min-width: 35px !important;
    }
}

@media print {
    html[data-flyup-theme="dark"],
    html[data-flyup-theme="dark"] body,
    html[data-flyup-theme="dark"] * {
        color-scheme: light !important;
    }
}

/* STEP53 phase18D19 — Dark mode readability hardening
   Goal: never keep a white/grey surface with pale text in dark mode.
   This layer is loaded last and fixes dashboard, My Trips, AI mode, cards and report blocks. */
html[data-flyup-theme="dark"] {
    --flyup-dark-page: #07111f;
    --flyup-dark-panel: rgba(10, 23, 40, 0.92);
    --flyup-dark-card: rgba(15, 31, 51, 0.94);
    --flyup-dark-card-soft: rgba(18, 39, 64, 0.92);
    --flyup-dark-input: rgba(8, 20, 36, 0.88);
    --flyup-dark-line: rgba(148, 163, 184, 0.26);
    --flyup-dark-text: #f8fbff;
    --flyup-dark-muted: #c7d7ea;
    --flyup-dark-faint: #9fb3cb;
    --flyup-dark-accent: #38bdf8;
    --flyup-dark-accent-2: #5eead4;
}

html[data-flyup-theme="dark"] .flyup-dashboard-welcome,
html[data-flyup-theme="dark"] .flyup-dashboard-stat,
html[data-flyup-theme="dark"] .flyup-dashboard-service,
html[data-flyup-theme="dark"] .flyup-dashboard-panel-highlight,
html[data-flyup-theme="dark"] .flyup-dashboard-history-item,
html[data-flyup-theme="dark"] .flyup-dashboard-complete-grid > div,
html[data-flyup-theme="dark"] .flyup-my-trips-summary-card,
html[data-flyup-theme="dark"] .flyup-my-trip-card,
html[data-flyup-theme="dark"] .flyup-my-trips-pricing-card,
html[data-flyup-theme="dark"] .flyup-dashboard-mini-history__row,
html[data-flyup-theme="dark"] .flyup-billing-history-row,
html[data-flyup-theme="dark"] .flyup-billing-wallet-balance,
html[data-flyup-theme="dark"] .ai-mode-container,
html[data-flyup-theme="dark"] .ai-result-shell,
html[data-flyup-theme="dark"] .ai-result-shell--saved,
html[data-flyup-theme="dark"] .flyup-report-view__header,
html[data-flyup-theme="dark"] .flyup-inspiration-detail-intro,
html[data-flyup-theme="dark"] .flyup-inspiration-section-heading,
html[data-flyup-theme="dark"] .flyup-inspiration-additional-section,
html[data-flyup-theme="dark"] .flyup-inspiration-tip-card,
html[data-flyup-theme="dark"] .flyup-report-admin-footer,
html[data-flyup-theme="dark"] .report-block,
html[data-flyup-theme="dark"] .report-modal__dialog,
html[data-flyup-theme="dark"] .report-preview-luxury__body,
html[data-flyup-theme="dark"] .planner-chip,
html[data-flyup-theme="dark"] .report-day-mini,
html[data-flyup-theme="dark"] .pricing-card,
html[data-flyup-theme="dark"] .benefit-card,
html[data-flyup-theme="dark"] .step-card,
html[data-flyup-theme="dark"] .faq-item,
html[data-flyup-theme="dark"] .metric-box,
html[data-flyup-theme="dark"] .service-pill,
html[data-flyup-theme="dark"] .home-mode-card__mockup {
    background: linear-gradient(180deg, var(--flyup-dark-card), rgba(12, 27, 46, 0.94)) !important;
    border-color: var(--flyup-dark-line) !important;
    color: var(--flyup-dark-text) !important;
    box-shadow: 0 18px 42px rgba(0, 0, 0, 0.30) !important;
}

html[data-flyup-theme="dark"] .flyup-dashboard-sidebar,
html[data-flyup-theme="dark"] .flyup-dashboard-sidebar__inner,
html[data-flyup-theme="dark"] .flyup-account-sidebar,
html[data-flyup-theme="dark"] .dashboard-sidebar,
html[data-flyup-theme="dark"] .flyup-mobile-bottom-nav,
html[data-flyup-theme="dark"] .flyup-mobile-topbar {
    background: rgba(7, 17, 31, 0.94) !important;
    border-color: var(--flyup-dark-line) !important;
    color: var(--flyup-dark-text) !important;
}

html[data-flyup-theme="dark"] .flyup-dashboard-welcome h1,
html[data-flyup-theme="dark"] .flyup-dashboard-section h1,
html[data-flyup-theme="dark"] .flyup-dashboard-section h2,
html[data-flyup-theme="dark"] .flyup-dashboard-section h3,
html[data-flyup-theme="dark"] .flyup-dashboard-stat strong,
html[data-flyup-theme="dark"] .flyup-dashboard-service h3,
html[data-flyup-theme="dark"] .flyup-dashboard-complete-grid strong,
html[data-flyup-theme="dark"] .flyup-my-trips-summary-card strong,
html[data-flyup-theme="dark"] .flyup-my-trip-card h3,
html[data-flyup-theme="dark"] .flyup-my-trip-card__meta dd,
html[data-flyup-theme="dark"] .flyup-my-trips-pricing-card__top h3,
html[data-flyup-theme="dark"] .flyup-my-trips-pricing-card__price strong,
html[data-flyup-theme="dark"] .flyup-dashboard-mini-history h3,
html[data-flyup-theme="dark"] .flyup-dashboard-mini-history__row strong,
html[data-flyup-theme="dark"] .flyup-billing-history-row em,
html[data-flyup-theme="dark"] .flyup-report-view__intro h2,
html[data-flyup-theme="dark"] .flyup-report-view__header h1,
html[data-flyup-theme="dark"] .flyup-report-view__header h2,
html[data-flyup-theme="dark"] .flyup-inspiration-detail-intro h3,
html[data-flyup-theme="dark"] .flyup-inspiration-section-heading h3,
html[data-flyup-theme="dark"] .flyup-inspiration-tip-card h4,
html[data-flyup-theme="dark"] .report-preview-luxury__top h3 {
    color: var(--flyup-dark-text) !important;
}

html[data-flyup-theme="dark"] .flyup-dashboard-welcome p,
html[data-flyup-theme="dark"] .flyup-dashboard-section p,
html[data-flyup-theme="dark"] .flyup-dashboard-stat__label,
html[data-flyup-theme="dark"] .flyup-dashboard-stat small,
html[data-flyup-theme="dark"] .flyup-dashboard-service p,
html[data-flyup-theme="dark"] .flyup-dashboard-complete-grid span,
html[data-flyup-theme="dark"] .flyup-dashboard-complete-grid small,
html[data-flyup-theme="dark"] .flyup-my-trips-head p,
html[data-flyup-theme="dark"] .flyup-my-trip-card__meta dt,
html[data-flyup-theme="dark"] .flyup-my-trip-card__hint,
html[data-flyup-theme="dark"] .flyup-my-trips-summary-card span,
html[data-flyup-theme="dark"] .flyup-my-trips-pricing-card__description,
html[data-flyup-theme="dark"] .flyup-my-trips-pricing-card__features,
html[data-flyup-theme="dark"] .flyup-my-trips-pricing-card__note,
html[data-flyup-theme="dark"] .flyup-dashboard-mini-history__row span,
html[data-flyup-theme="dark"] .flyup-dashboard-mini-history__row small,
html[data-flyup-theme="dark"] .flyup-billing-history-row span,
html[data-flyup-theme="dark"] .flyup-billing-history-row small,
html[data-flyup-theme="dark"] .flyup-report-view__intro p,
html[data-flyup-theme="dark"] .flyup-report-view__meta,
html[data-flyup-theme="dark"] .flyup-inspiration-detail-intro p,
html[data-flyup-theme="dark"] .flyup-inspiration-section-heading p,
html[data-flyup-theme="dark"] .flyup-inspiration-small-note,
html[data-flyup-theme="dark"] .report-preview-luxury__subtitle {
    color: var(--flyup-dark-muted) !important;
}

html[data-flyup-theme="dark"] .flyup-my-trips-filters button,
html[data-flyup-theme="dark"] .flyup-my-trips-filters a,
html[data-flyup-theme="dark"] .flyup-dashboard-tab,
html[data-flyup-theme="dark"] .flyup-dashboard-nav-item,
html[data-flyup-theme="dark"] .flyup-my-trip-card__lang,
html[data-flyup-theme="dark"] .flyup-my-trip-status.is-neutral,
html[data-flyup-theme="dark"] .flyup-dashboard-badge.badge-subtle,
html[data-flyup-theme="dark"] .flyup-dashboard-badge,
html[data-flyup-theme="dark"] .flyup-inspiration-tag,
html[data-flyup-theme="dark"] .flyup-inspiration-budget-table td,
html[data-flyup-theme="dark"] .flyup-inspiration-decision-metric,
html[data-flyup-theme="dark"] .flyup-report-view__meta span,
html[data-flyup-theme="dark"] .flyup-inspiration-compare-card__body li,
html[data-flyup-theme="dark"] .flyup-inspiration-compare-card__body ul li {
    background: rgba(8, 20, 36, 0.86) !important;
    border-color: var(--flyup-dark-line) !important;
    color: var(--flyup-dark-muted) !important;
}

html[data-flyup-theme="dark"] .flyup-my-trips-filters button.is-active,
html[data-flyup-theme="dark"] .flyup-my-trips-filters button:hover,
html[data-flyup-theme="dark"] .flyup-my-trips-filters a.is-active,
html[data-flyup-theme="dark"] .flyup-my-trips-filters a:hover,
html[data-flyup-theme="dark"] .flyup-dashboard-tab.is-active,
html[data-flyup-theme="dark"] .flyup-dashboard-tab:hover,
html[data-flyup-theme="dark"] .flyup-dashboard-nav-item.is-active,
html[data-flyup-theme="dark"] .flyup-dashboard-nav-item:hover {
    background: rgba(56, 189, 248, 0.16) !important;
    border-color: rgba(56, 189, 248, 0.36) !important;
    color: #7dd3fc !important;
}

html[data-flyup-theme="dark"] .flyup-my-trip-status.is-success {
    background: rgba(22, 163, 74, 0.18) !important;
    border-color: rgba(52, 211, 153, 0.36) !important;
    color: #bbf7d0 !important;
}

html[data-flyup-theme="dark"] .flyup-my-trip-status.is-pending,
html[data-flyup-theme="dark"] .flyup-my-trip-retention-warning {
    background: rgba(245, 158, 11, 0.16) !important;
    border-color: rgba(251, 191, 36, 0.38) !important;
    color: #fde68a !important;
}

html[data-flyup-theme="dark"] .flyup-my-trip-retention-warning strong,
html[data-flyup-theme="dark"] .flyup-my-trip-retention-warning span {
    color: #fcd34d !important;
}

html[data-flyup-theme="dark"] .flyup-my-trip-status.is-error,
html[data-flyup-theme="dark"] .flyup-dashboard-notice--error {
    background: rgba(220, 38, 38, 0.16) !important;
    border-color: rgba(248, 113, 113, 0.38) !important;
    color: #fecaca !important;
}

html[data-flyup-theme="dark"] .flyup-action-icon-btn,
html[data-flyup-theme="dark"] .flyup-action-icon-btn--open,
html[data-flyup-theme="dark"] .flyup-action-icon-btn--edit,
html[data-flyup-theme="dark"] .flyup-action-icon-btn--download {
    background: rgba(8, 20, 36, 0.88) !important;
    border-color: rgba(56, 189, 248, 0.28) !important;
    color: #7dd3fc !important;
    box-shadow: 0 10px 24px rgba(0, 0, 0, 0.26) !important;
}

html[data-flyup-theme="dark"] .flyup-action-icon-btn--delete,
html[data-flyup-theme="dark"] .flyup-btn-danger {
    background: rgba(220, 38, 38, 0.14) !important;
    border-color: rgba(248, 113, 113, 0.32) !important;
    color: #fecaca !important;
}

html[data-flyup-theme="dark"] .flyup-report-hero,
html[data-flyup-theme="dark"] .flyup-report-hero--inspiration,
html[data-flyup-theme="dark"] .flyup-report-hero--planner,
html[data-flyup-theme="dark"] .ai-result-shell--saved .ai-generated-report.flyup-report-view--inspiration .flyup-report-view__header,
html[data-flyup-theme="dark"] .ai-result-shell--saved .ai-generated-report.flyup-report-view--planner .flyup-report-view__header,
html[data-flyup-theme="dark"] .ai-result-shell--html-editor .ai-generated-report.flyup-report-view--inspiration .flyup-report-view__header,
html[data-flyup-theme="dark"] .ai-result-shell--html-editor .ai-generated-report.flyup-report-view--planner .flyup-report-view__header {
    background: linear-gradient(135deg, #10213c 0%, #164e8a 55%, #0e7490 100%) !important;
    color: #ffffff !important;
    border-color: rgba(125, 211, 252, 0.28) !important;
}

html[data-flyup-theme="dark"] .flyup-report-hero *,
html[data-flyup-theme="dark"] .flyup-report-hero--inspiration *,
html[data-flyup-theme="dark"] .flyup-report-hero--planner *,
html[data-flyup-theme="dark"] .ai-result-shell--saved .flyup-report-view__header *,
html[data-flyup-theme="dark"] .ai-result-shell--html-editor .flyup-report-view__header * {
    color: #ffffff !important;
}

html[data-flyup-theme="dark"] .ai-result-shell--saved .flyup-report-view__intro p,
html[data-flyup-theme="dark"] .ai-result-shell--html-editor .flyup-report-view__intro p,
html[data-flyup-theme="dark"] .flyup-report-hero p {
    color: rgba(255, 255, 255, 0.88) !important;
}

html[data-flyup-theme="dark"] .ai-result-shell--saved .flyup-report-view__meta span,
html[data-flyup-theme="dark"] .ai-result-shell--html-editor .flyup-report-view__meta span,
html[data-flyup-theme="dark"] .flyup-report-hero__pill,
html[data-flyup-theme="dark"] .flyup-report-hero .flyup-report-view__meta span {
    background: rgba(255, 255, 255, 0.14) !important;
    color: #ffffff !important;
    border-color: rgba(255, 255, 255, 0.24) !important;
}

html[data-flyup-theme="dark"] .flyup-ai-accordion[open],
html[data-flyup-theme="dark"] .flyup-ai-accordion__content,
html[data-flyup-theme="dark"] .flyup-ai-accordion[open] > .flyup-ai-accordion__summary {
    background: rgba(12, 27, 46, 0.94) !important;
    color: var(--flyup-dark-text) !important;
    border-color: var(--flyup-dark-line) !important;
}

html[data-flyup-theme="dark"] .flyup-ai-accordion__content p,
html[data-flyup-theme="dark"] .flyup-ai-accordion__content li,
html[data-flyup-theme="dark"] .flyup-ai-accordion__content td,
html[data-flyup-theme="dark"] .flyup-ai-accordion__content span {
    color: var(--flyup-dark-muted) !important;
}

html[data-flyup-theme="dark"] .flyup-ai-accordion__content strong,
html[data-flyup-theme="dark"] .flyup-ai-accordion__content h3,
html[data-flyup-theme="dark"] .flyup-ai-accordion__content h4 {
    color: var(--flyup-dark-text) !important;
}

html[data-flyup-theme="dark"] input,
html[data-flyup-theme="dark"] select,
html[data-flyup-theme="dark"] textarea,
html[data-flyup-theme="dark"] .form-control,
html[data-flyup-theme="dark"] .flyup-form-input,
html[data-flyup-theme="dark"] .flyup-field input,
html[data-flyup-theme="dark"] .flyup-field select,
html[data-flyup-theme="dark"] .flyup-field textarea {
    background: var(--flyup-dark-input) !important;
    color: var(--flyup-dark-text) !important;
    border-color: var(--flyup-dark-line) !important;
}

html[data-flyup-theme="dark"] .flyup-inspiration-warning,
html[data-flyup-theme="dark"] .flyup-inspiration-final-warning {
    background: rgba(245, 158, 11, 0.16) !important;
    border-color: rgba(251, 191, 36, 0.36) !important;
    color: #fde68a !important;
}

html[data-flyup-theme="dark"] .flyup-inspiration-warning strong,
html[data-flyup-theme="dark"] .flyup-inspiration-final-warning strong {
    color: #fcd34d !important;
}

html[data-flyup-theme="dark"] .flyup-inspiration-compare-card__top strong,
html[data-flyup-theme="dark"] .flyup-inspiration-score-badge,
html[data-flyup-theme="dark"] .flyup-inspiration-score-badge strong,
html[data-flyup-theme="dark"] .flyup-inspiration-score-badge span {
    background: #020617 !important;
    color: #ffffff !important;
}

/* STEP53 phase18D20 — Global dark-mode readability pass for public pages.
   Fix homepage, Blog, Inspirations and sample/mockup cards where light grey/white
   surfaces kept pale text after dark mode activation. */
html[data-flyup-theme="dark"] {
    --flyup-dark-readable-surface: #10213a;
    --flyup-dark-readable-surface-2: #132944;
    --flyup-dark-readable-elevated: #172f4c;
    --flyup-dark-readable-text: #f8fbff;
    --flyup-dark-readable-muted: #d4e2f3;
    --flyup-dark-readable-soft: #b8cbe2;
    --flyup-dark-readable-border: rgba(148, 163, 184, 0.30);
}

/* Public page backgrounds */
html[data-flyup-theme="dark"] .flyup-blog-page,
html[data-flyup-theme="dark"] .flyup-single-blog,
html[data-flyup-theme="dark"] .flyup-inspirations-page,
html[data-flyup-theme="dark"] .flyup-inspiration-single,
html[data-flyup-theme="dark"] .homepage-sample-itineraries,
html[data-flyup-theme="dark"] .homepage-testimonials,
html[data-flyup-theme="dark"] .homepage-travel-budget,
html[data-flyup-theme="dark"] .flyup-section {
    background: transparent !important;
    color: var(--flyup-dark-readable-text) !important;
}

/* Main public cards and light panels */
html[data-flyup-theme="dark"] .how-report-proof,
html[data-flyup-theme="dark"] .sample-itinerary-card,
html[data-flyup-theme="dark"] .sample-report-current,
html[data-flyup-theme="dark"] .sample-report-picker__card,
html[data-flyup-theme="dark"] .sample-report-sidebar,
html[data-flyup-theme="dark"] .sample-report-frame,
html[data-flyup-theme="dark"] .travel-budget-home-card,
html[data-flyup-theme="dark"] .travel-budget-home-card__preview,
html[data-flyup-theme="dark"] .travel-budget-mini-card,
html[data-flyup-theme="dark"] .travel-budget-mini-line,
html[data-flyup-theme="dark"] .homepage-testimonials__shell,
html[data-flyup-theme="dark"] .homepage-testimonial-card,
html[data-flyup-theme="dark"] .flyup-blog-card,
html[data-flyup-theme="dark"] .flyup-single-blog__article,
html[data-flyup-theme="dark"] .flyup-single-blog__content,
html[data-flyup-theme="dark"] .flyup-inspirations-filters,
html[data-flyup-theme="dark"] .flyup-inspirations-how,
html[data-flyup-theme="dark"] .flyup-inspirations-how__list p,
html[data-flyup-theme="dark"] .flyup-inspiration-card,
html[data-flyup-theme="dark"] .flyup-inspiration-card__facts,
html[data-flyup-theme="dark"] .flyup-destination-modal__dialog,
html[data-flyup-theme="dark"] .flyup-destination-modal__content,
html[data-flyup-theme="dark"] .flyup-destination-modal__facts div,
html[data-flyup-theme="dark"] .flyup-inspiration-hero,
html[data-flyup-theme="dark"] .flyup-inspiration-content,
html[data-flyup-theme="dark"] .flyup-inspiration-section,
html[data-flyup-theme="dark"] .flyup-inspiration-side-card {
    background: linear-gradient(180deg, var(--flyup-dark-readable-surface), #0d1c31) !important;
    border-color: var(--flyup-dark-readable-border) !important;
    color: var(--flyup-dark-readable-text) !important;
    box-shadow: 0 18px 46px rgba(0, 0, 0, 0.34) !important;
}

/* Homepage mode cards and their inner mockups */
html[data-flyup-theme="dark"] .home-mode-card,
html[data-flyup-theme="dark"] .home-mode-card__mockup,
html[data-flyup-theme="dark"] .home-mode-card__mockup--planner,
html[data-flyup-theme="dark"] .home-mode-card__mockup--timeline,
html[data-flyup-theme="dark"] .home-mode-card .planner-chip,
html[data-flyup-theme="dark"] .home-mode-card .planner-chip--accent,
html[data-flyup-theme="dark"] .home-mode-card .report-day-mini,
html[data-flyup-theme="dark"] .planner-note-mini {
    background: linear-gradient(180deg, var(--flyup-dark-readable-surface-2), #0c1b2e) !important;
    border-color: var(--flyup-dark-readable-border) !important;
    color: var(--flyup-dark-readable-text) !important;
    box-shadow: 0 14px 34px rgba(0, 0, 0, 0.28) !important;
}

html[data-flyup-theme="dark"] .benefit-card,
html[data-flyup-theme="dark"] .step-card,
html[data-flyup-theme="dark"] .home-mode-card,
html[data-flyup-theme="dark"] .services-strip,
html[data-flyup-theme="dark"] .report-preview-luxury,
html[data-flyup-theme="dark"] .report-preview-luxury__body,
html[data-flyup-theme="dark"] .report-preview__mockup,
html[data-flyup-theme="dark"] .faq-item,
html[data-flyup-theme="dark"] .pricing-card,
html[data-flyup-theme="dark"] .metric-box,
html[data-flyup-theme="dark"] .service-pill {
    background: linear-gradient(180deg, var(--flyup-dark-readable-surface), #0d1c31) !important;
    border-color: var(--flyup-dark-readable-border) !important;
    color: var(--flyup-dark-readable-text) !important;
}

/* Mockup phones/screens: keep clean but readable */
html[data-flyup-theme="dark"] .how-report-proof__phone {
    background: #020817 !important;
    box-shadow: 0 24px 70px rgba(0, 0, 0, 0.52) !important;
}

html[data-flyup-theme="dark"] .how-report-proof__screen,
html[data-flyup-theme="dark"] .how-report-proof__map,
html[data-flyup-theme="dark"] .how-report-proof__budget,
html[data-flyup-theme="dark"] .how-report-proof__tip {
    background: linear-gradient(180deg, #132944, #0d1c31) !important;
    border-color: rgba(125, 211, 252, 0.28) !important;
    color: var(--flyup-dark-readable-text) !important;
}

html[data-flyup-theme="dark"] .how-report-proof__row {
    border-color: rgba(148, 163, 184, 0.26) !important;
    color: var(--flyup-dark-readable-muted) !important;
}

html[data-flyup-theme="dark"] .travel-budget-mini-card--wallet {
    background: linear-gradient(135deg, rgba(14, 165, 233, 0.20), rgba(20, 184, 166, 0.14)) !important;
}

html[data-flyup-theme="dark"] .travel-budget-mini-card--accent {
    background: #020817 !important;
    color: #ffffff !important;
}

/* Public text readability */
html[data-flyup-theme="dark"] .how-report-proof h3,
html[data-flyup-theme="dark"] .how-report-proof__map span,
html[data-flyup-theme="dark"] .how-report-proof__budget strong,
html[data-flyup-theme="dark"] .travel-budget-home-card h2,
html[data-flyup-theme="dark"] .travel-budget-mini-card strong,
html[data-flyup-theme="dark"] .travel-budget-mini-line strong,
html[data-flyup-theme="dark"] .homepage-testimonial-card strong,
html[data-flyup-theme="dark"] .flyup-blog-card h2,
html[data-flyup-theme="dark"] .flyup-blog-card h2 a,
html[data-flyup-theme="dark"] .flyup-single-blog__content h1,
html[data-flyup-theme="dark"] .flyup-single-blog__body h1,
html[data-flyup-theme="dark"] .flyup-single-blog__body h2,
html[data-flyup-theme="dark"] .flyup-single-blog__body h3,
html[data-flyup-theme="dark"] .flyup-inspirations-filters h2,
html[data-flyup-theme="dark"] .flyup-inspirations-how h3,
html[data-flyup-theme="dark"] .flyup-inspirations-how__list strong,
html[data-flyup-theme="dark"] .flyup-inspiration-card h3,
html[data-flyup-theme="dark"] .flyup-inspiration-card__location,
html[data-flyup-theme="dark"] .flyup-inspiration-card__facts strong,
html[data-flyup-theme="dark"] .flyup-destination-modal__content h2,
html[data-flyup-theme="dark"] .sample-report-picker__card strong,
html[data-flyup-theme="dark"] .sample-report-current h2,
html[data-flyup-theme="dark"] .sample-itinerary-card h3,
html[data-flyup-theme="dark"] .home-mode-card .planner-chip strong,
html[data-flyup-theme="dark"] .home-mode-card .report-day-mini p {
    color: var(--flyup-dark-readable-text) !important;
}

html[data-flyup-theme="dark"] .how-report-proof p,
html[data-flyup-theme="dark"] .how-report-proof__map small,
html[data-flyup-theme="dark"] .how-report-proof__row span,
html[data-flyup-theme="dark"] .how-report-proof__row em,
html[data-flyup-theme="dark"] .how-report-proof__budget span,
html[data-flyup-theme="dark"] .travel-budget-home-card p,
html[data-flyup-theme="dark"] .travel-budget-home-card li,
html[data-flyup-theme="dark"] .travel-budget-mini-card span,
html[data-flyup-theme="dark"] .travel-budget-mini-line span,
html[data-flyup-theme="dark"] .homepage-testimonial-card p,
html[data-flyup-theme="dark"] .homepage-testimonial-card span,
html[data-flyup-theme="dark"] .flyup-blog-card p,
html[data-flyup-theme="dark"] .flyup-blog-card__footer,
html[data-flyup-theme="dark"] .flyup-single-blog__meta,
html[data-flyup-theme="dark"] .flyup-single-blog__body,
html[data-flyup-theme="dark"] .flyup-single-blog__body p,
html[data-flyup-theme="dark"] .flyup-single-blog__body li,
html[data-flyup-theme="dark"] .flyup-inspirations-filters p,
html[data-flyup-theme="dark"] .flyup-inspirations-how__list span,
html[data-flyup-theme="dark"] .flyup-inspiration-card p,
html[data-flyup-theme="dark"] .flyup-inspiration-card__facts span,
html[data-flyup-theme="dark"] .flyup-destination-modal__intro,
html[data-flyup-theme="dark"] .sample-report-picker__card small,
html[data-flyup-theme="dark"] .sample-report-sidebar p,
html[data-flyup-theme="dark"] .sample-itinerary-card p,
html[data-flyup-theme="dark"] .home-mode-card__head p,
html[data-flyup-theme="dark"] .home-mode-card .planner-chip span,
html[data-flyup-theme="dark"] .home-mode-card .report-day-mini span,
html[data-flyup-theme="dark"] .planner-note-mini {
    color: var(--flyup-dark-readable-muted) !important;
}

/* Buttons, chips and pagination on public pages */
html[data-flyup-theme="dark"] .flyup-blog-pagination a,
html[data-flyup-theme="dark"] .flyup-blog-pagination span,
html[data-flyup-theme="dark"] .flyup-inspirations-pagination a,
html[data-flyup-theme="dark"] .flyup-inspirations-pagination span,
html[data-flyup-theme="dark"] .sample-report-filter-list a,
html[data-flyup-theme="dark"] .flyup-inspiration-card__facts,
html[data-flyup-theme="dark"] .flyup-inspiration-card__budget-chip,
html[data-flyup-theme="dark"] .flyup-blog-card__tag,
html[data-flyup-theme="dark"] .flyup-inspiration-card__kicker,
html[data-flyup-theme="dark"] .home-mode-card__tag {
    background: rgba(8, 20, 36, 0.88) !important;
    border-color: var(--flyup-dark-readable-border) !important;
    color: #7dd3fc !important;
}

html[data-flyup-theme="dark"] .flyup-blog-pagination .current,
html[data-flyup-theme="dark"] .flyup-inspirations-pagination .is-active,
html[data-flyup-theme="dark"] .sample-report-filter-list a.is-active,
html[data-flyup-theme="dark"] .sample-report-filter-list a:hover {
    background: linear-gradient(135deg, #0ea5e9, #14b8a6) !important;
    border-color: transparent !important;
    color: #ffffff !important;
}

/* Forms on inspiration/blog-related pages */
html[data-flyup-theme="dark"] .flyup-inspirations-filters input,
html[data-flyup-theme="dark"] .flyup-inspirations-filters select,
html[data-flyup-theme="dark"] .flyup-inspirations-filters textarea,
html[data-flyup-theme="dark"] .flyup-destination-modal input,
html[data-flyup-theme="dark"] .flyup-destination-modal select,
html[data-flyup-theme="dark"] .flyup-destination-modal textarea {
    background: rgba(8, 20, 36, 0.90) !important;
    border-color: var(--flyup-dark-readable-border) !important;
    color: var(--flyup-dark-readable-text) !important;
}

/* Keep dark call-to-action cards readable */
html[data-flyup-theme="dark"] .flyup-inspirations-direct-start,
html[data-flyup-theme="dark"] .final-cta-card,
html[data-flyup-theme="dark"] .btn-primary {
    color: #ffffff !important;
}

html[data-flyup-theme="dark"] .flyup-inspirations-direct-start p,
html[data-flyup-theme="dark"] .final-cta-card p {
    color: rgba(255, 255, 255, 0.88) !important;
}

/* Prevent white cards with almost-white text in any remaining homepage/public block. */
html[data-flyup-theme="dark"] .homepage-benefits .card,
html[data-flyup-theme="dark"] .homepage-how-it-works .card,
html[data-flyup-theme="dark"] .homepage-report-preview .card,
html[data-flyup-theme="dark"] .homepage-pricing .card,
html[data-flyup-theme="dark"] .homepage-faq .card,
html[data-flyup-theme="dark"] .homepage-testimonials .card,
html[data-flyup-theme="dark"] .homepage-travel-budget .card,
html[data-flyup-theme="dark"] .flyup-blog-page .card,
html[data-flyup-theme="dark"] .flyup-inspirations-page .card {
    background: linear-gradient(180deg, var(--flyup-dark-readable-surface), #0d1c31) !important;
    color: var(--flyup-dark-readable-text) !important;
    border-color: var(--flyup-dark-readable-border) !important;
}


/* STEP53 phase18D21 — Deep dark-mode pass for homepage, public tools,
   methodology and partners.
   Goal: remove the last pale-on-light blocks on public pages and guest tools. */
html[data-flyup-theme="dark"] {
    --flyup-dark-final-surface: #10213a;
    --flyup-dark-final-surface-2: #132844;
    --flyup-dark-final-border: rgba(148, 163, 184, 0.30);
    --flyup-dark-final-text: #f8fbff;
    --flyup-dark-final-muted: #d6e3f3;
    --flyup-dark-final-soft: #b8cbe2;
}

/* Dark surfaces for remaining public cards/panels */
html[data-flyup-theme="dark"] .trust-page .trust-hero,
html[data-flyup-theme="dark"] .trust-page .trust-panel,
html[data-flyup-theme="dark"] .trust-page .trust-panel__item,
html[data-flyup-theme="dark"] .trust-page .trust-card,
html[data-flyup-theme="dark"] .trust-page .trust-note,
html[data-flyup-theme="dark"] .flyup-legal-page .flyup-legal-hero,
html[data-flyup-theme="dark"] .flyup-legal-page .flyup-legal-content,
html[data-flyup-theme="dark"] .seo-planner-page .seo-planner-hero__card,
html[data-flyup-theme="dark"] .seo-planner-page .seo-planner-card,
html[data-flyup-theme="dark"] .flyup-home-mobile-app__hero,
html[data-flyup-theme="dark"] .flyup-home-mobile-app__ai-card,
html[data-flyup-theme="dark"] .flyup-home-mobile-app__item,
html[data-flyup-theme="dark"] .flyup-home-mobile-app__auth,
html[data-flyup-theme="dark"] .flyup-home-mobile-app__ai-options,
html[data-flyup-theme="dark"] .homepage-mobile-accordion__item,
html[data-flyup-theme="dark"] .homepage-mobile-accordion__content,
html[data-flyup-theme="dark"] .travel-budget-hero,
html[data-flyup-theme="dark"] .travel-budget-card,
html[data-flyup-theme="dark"] .travel-budget-overview__card,
html[data-flyup-theme="dark"] .travel-budget-table-wrap,
html[data-flyup-theme="dark"] .travel-budget-share-box,
html[data-flyup-theme="dark"] .travel-budget-share-box--soft,
html[data-flyup-theme="dark"] .travel-budget-share-field,
html[data-flyup-theme="dark"] .travel-budget-share-grid > *,
html[data-flyup-theme="dark"] .travel-budget-workspace,
html[data-flyup-theme="dark"] .travel-budget-section--trip,
html[data-flyup-theme="dark"] .travel-budget-section--participants,
html[data-flyup-theme="dark"] .travel-budget-section--expense-form,
html[data-flyup-theme="dark"] .travel-budget-section--expense-history,
html[data-flyup-theme="dark"] .travel-budget-section--summary,
html[data-flyup-theme="dark"] .travel-budget-section--sharing,
html[data-flyup-theme="dark"] .travel-budget-section--settlement,
html[data-flyup-theme="dark"] .manual-planner-header,
html[data-flyup-theme="dark"] .manual-summary-card,
html[data-flyup-theme="dark"] .manual-sidebar-card,
html[data-flyup-theme="dark"] .manual-trip-brief,
html[data-flyup-theme="dark"] .manual-mobile-summary,
html[data-flyup-theme="dark"] .manual-notes-card,
html[data-flyup-theme="dark"] .manual-print-card,
html[data-flyup-theme="dark"] .manual-days-timeline,
html[data-flyup-theme="dark"] .manual-budget-row,
html[data-flyup-theme="dark"] .manual-chip,
html[data-flyup-theme="dark"] .manual-trip-brief__grid > *,
html[data-flyup-theme="dark"] .manual-mobile-summary__item,
html[data-flyup-theme="dark"] .manual-mobile-summary__item--wide {
    background: linear-gradient(180deg, var(--flyup-dark-final-surface), #0c1b2f) !important;
    border-color: var(--flyup-dark-final-border) !important;
    color: var(--flyup-dark-final-text) !important;
    box-shadow: 0 18px 44px rgba(0, 0, 0, 0.32) !important;
}

/* Any residual light card inside public / guest pages */
html[data-flyup-theme="dark"] .trust-page :is(.card, [class*="card"], [class*="panel"], [class*="tile"], [class*="box"]),
html[data-flyup-theme="dark"] .flyup-legal-page :is(.card, [class*="card"], [class*="panel"], [class*="tile"], [class*="box"]),
html[data-flyup-theme="dark"] .seo-planner-page :is(.card, [class*="card"], [class*="panel"], [class*="tile"], [class*="box"]),
html[data-flyup-theme="dark"] .flyup-home-mobile-app :is(.card, [class*="card"], [class*="panel"], [class*="tile"], [class*="box"]),
html[data-flyup-theme="dark"] .flyup-travel-budget-page :is(.card, [class*="card"], [class*="panel"], [class*="tile"], [class*="box"]),
html[data-flyup-theme="dark"] .manual-planner-page :is(.card, [class*="card"], [class*="panel"], [class*="tile"], [class*="box"]) {
    background: linear-gradient(180deg, var(--flyup-dark-final-surface), #0c1b2f) !important;
    border-color: var(--flyup-dark-final-border) !important;
    color: var(--flyup-dark-final-text) !important;
}

/* Headings / strong text on these pages */
html[data-flyup-theme="dark"] .trust-page :is(h1,h2,h3,h4,strong,th),
html[data-flyup-theme="dark"] .flyup-legal-page :is(h1,h2,h3,h4,strong,th),
html[data-flyup-theme="dark"] .seo-planner-page :is(h1,h2,h3,h4,strong,th),
html[data-flyup-theme="dark"] .flyup-home-mobile-app :is(h1,h2,h3,h4,strong),
html[data-flyup-theme="dark"] .flyup-travel-budget-page :is(h1,h2,h3,h4,strong,th),
html[data-flyup-theme="dark"] .manual-planner-page :is(h1,h2,h3,h4,strong,th),
html[data-flyup-theme="dark"] .travel-budget-table thead th,
html[data-flyup-theme="dark"] .travel-budget-overview__card strong,
html[data-flyup-theme="dark"] .manual-summary-card strong,
html[data-flyup-theme="dark"] .manual-trip-brief strong {
    color: var(--flyup-dark-final-text) !important;
}

/* Body text / labels / muted copy */
html[data-flyup-theme="dark"] .trust-page :is(p,li,span,small,label,td,dt,dd),
html[data-flyup-theme="dark"] .flyup-legal-page :is(p,li,span,small,label,td,dt,dd),
html[data-flyup-theme="dark"] .seo-planner-page :is(p,li,span,small,label,td,dt,dd),
html[data-flyup-theme="dark"] .flyup-home-mobile-app :is(p,li,span,small,label,td,dt,dd),
html[data-flyup-theme="dark"] .flyup-travel-budget-page :is(p,li,span,small,label,td,dt,dd),
html[data-flyup-theme="dark"] .manual-planner-page :is(p,li,span,small,label,td,dt,dd),
html[data-flyup-theme="dark"] .travel-budget-table tbody td,
html[data-flyup-theme="dark"] .travel-budget-share-note,
html[data-flyup-theme="dark"] .travel-budget-feedback,
html[data-flyup-theme="dark"] .manual-save-status,
html[data-flyup-theme="dark"] .manual-trip-brief__grid span,
html[data-flyup-theme="dark"] .manual-mobile-summary__item span,
html[data-flyup-theme="dark"] .manual-notes-input::placeholder {
    color: var(--flyup-dark-final-muted) !important;
}

/* Inputs and internal blocks that stayed pale */
html[data-flyup-theme="dark"] .flyup-travel-budget-page :is(input,select,textarea,.travel-budget-share-input,.travel-budget-share-field,.travel-budget-toggle,.form-control),
html[data-flyup-theme="dark"] .manual-planner-page :is(input,select,textarea,.manual-input,.manual-field,.manual-notes-input,.form-control),
html[data-flyup-theme="dark"] .seo-planner-page :is(input,select,textarea,.form-control) {
    background: rgba(8, 20, 36, 0.92) !important;
    color: var(--flyup-dark-final-text) !important;
    border-color: var(--flyup-dark-final-border) !important;
}

/* Specific chips / mini stats / empty states */
html[data-flyup-theme="dark"] .seo-planner-features li,
html[data-flyup-theme="dark"] .travel-budget-hero__benefits li,
html[data-flyup-theme="dark"] .travel-budget-status-badge,
html[data-flyup-theme="dark"] .travel-budget-toolbar,
html[data-flyup-theme="dark"] .travel-budget-chip-group,
html[data-flyup-theme="dark"] .manual-planner-header__eyebrow,
html[data-flyup-theme="dark"] .manual-save-status,
html[data-flyup-theme="dark"] .trust-kicker,
html[data-flyup-theme="dark"] .section-kicker {
    background: rgba(8, 20, 36, 0.88) !important;
    border-color: var(--flyup-dark-final-border) !important;
    color: #7dd3fc !important;
}

/* Keep CTA buttons readable even inside corrected dark sections */
html[data-flyup-theme="dark"] .trust-page .btn-primary,
html[data-flyup-theme="dark"] .flyup-legal-page .btn-primary,
html[data-flyup-theme="dark"] .seo-planner-page .btn-primary,
html[data-flyup-theme="dark"] .flyup-home-mobile-app .btn-primary,
html[data-flyup-theme="dark"] .flyup-travel-budget-page .btn-primary,
html[data-flyup-theme="dark"] .manual-planner-page .btn-primary {
    color: #ffffff !important;
}

html[data-flyup-theme="dark"] .trust-page .btn-outline,
html[data-flyup-theme="dark"] .flyup-legal-page .btn-outline,
html[data-flyup-theme="dark"] .seo-planner-page .btn-outline,
html[data-flyup-theme="dark"] .flyup-home-mobile-app .btn-outline,
html[data-flyup-theme="dark"] .flyup-travel-budget-page .btn-outline,
html[data-flyup-theme="dark"] .manual-planner-page .btn-outline {
    background: rgba(8, 20, 36, 0.88) !important;
    border-color: var(--flyup-dark-final-border) !important;
    color: var(--flyup-dark-final-text) !important;
}

/* Borders and separators */
html[data-flyup-theme="dark"] .travel-budget-table th,
html[data-flyup-theme="dark"] .travel-budget-table td,
html[data-flyup-theme="dark"] .trust-page hr,
html[data-flyup-theme="dark"] .flyup-legal-page hr,
html[data-flyup-theme="dark"] .manual-planner-page hr {
    border-color: rgba(148, 163, 184, 0.22) !important;
}

/* STEP53 Phase18D22 — Dark-mode final pass: keep header light + readable auth pages.
   This section intentionally comes last and overrides the broad dark-mode rules above. */
html[data-flyup-theme="dark"] {
    --flyup-d22-dark-bg: #07111f;
    --flyup-d22-surface: #10213a;
    --flyup-d22-surface-2: #132844;
    --flyup-d22-line: rgba(148, 163, 184, 0.30);
    --flyup-d22-text: #f8fbff;
    --flyup-d22-muted: #d6e3f3;
    --flyup-d22-soft: #b8cbe2;
    --flyup-d22-input: #0b1626;
}

/* The public header must stay in the clear/light visual style in dark mode so the logo remains readable. */
html[data-flyup-theme="dark"] .site-header__inner {
    background: rgba(255, 255, 255, 0.94) !important;
    border: 1px solid rgba(203, 213, 225, 0.76) !important;
    box-shadow: 0 22px 60px rgba(14, 165, 233, 0.12) !important;
    backdrop-filter: blur(18px) !important;
}

html[data-flyup-theme="dark"] .site-header .site-logo,
html[data-flyup-theme="dark"] .site-header .site-logo__text,
html[data-flyup-theme="dark"] .site-header .site-nav__link,
html[data-flyup-theme="dark"] .site-header .site-nav__chevron {
    color: #334155 !important;
}

html[data-flyup-theme="dark"] .site-header .site-logo__image {
    filter: none !important;
    opacity: 1 !important;
}

html[data-flyup-theme="dark"] .site-header .site-nav__link:hover,
html[data-flyup-theme="dark"] .site-header .site-nav__link:focus-visible {
    color: #0284c7 !important;
}

html[data-flyup-theme="dark"] .site-header .site-nav__submenu {
    background: rgba(255, 255, 255, 0.96) !important;
    border-color: rgba(203, 213, 225, 0.76) !important;
    box-shadow: 0 24px 52px rgba(15, 23, 42, 0.14) !important;
}

html[data-flyup-theme="dark"] .site-header .site-nav__submenu a {
    color: #334155 !important;
}

html[data-flyup-theme="dark"] .site-header .site-nav__submenu a:hover,
html[data-flyup-theme="dark"] .site-header .site-nav__submenu a:focus-visible {
    background: rgba(14, 165, 233, 0.10) !important;
    color: #0284c7 !important;
}

html[data-flyup-theme="dark"] .site-header .site-quick-switcher {
    background: rgba(255, 255, 255, 0.88) !important;
    border-color: rgba(186, 230, 253, 0.95) !important;
    color: #0f172a !important;
    box-shadow: 0 14px 36px rgba(14, 165, 233, 0.13) !important;
}

html[data-flyup-theme="dark"] .site-header .site-quick-switcher__item {
    color: #0f172a !important;
}

html[data-flyup-theme="dark"] .site-header .site-quick-switcher__item + .site-quick-switcher__item::before {
    background: rgba(100, 116, 139, 0.22) !important;
}

html[data-flyup-theme="dark"] .site-header .site-quick-switcher__item:hover,
html[data-flyup-theme="dark"] .site-header .site-quick-switcher__item:focus-visible {
    background: linear-gradient(135deg, #0ea5e9, #14b8a6) !important;
    color: #ffffff !important;
}

html[data-flyup-theme="dark"] .site-header .btn-outline,
html[data-flyup-theme="dark"] .site-header .site-actions .btn-outline {
    background: rgba(255, 255, 255, 0.82) !important;
    border-color: rgba(203, 213, 225, 0.90) !important;
    color: #0f172a !important;
}

html[data-flyup-theme="dark"] .site-header .site-actions__auth-icon-img {
    filter: none !important;
}

html[data-flyup-theme="dark"] .site-header .site-menu-toggle span {
    background: #0f172a !important;
}

/* Auth pages: login / register / forgot password / reset password. */
html[data-flyup-theme="dark"] .flyup-auth-wrap,
html[data-flyup-theme="dark"] .flyup-auth-wrap.flyup-login-page,
html[data-flyup-theme="dark"] .flyup-auth-wrap.flyup-forgot-password-page,
html[data-flyup-theme="dark"] .flyup-auth-wrap.flyup-reset-password-page {
    background:
        radial-gradient(circle at 14% 0%, rgba(56, 189, 248, 0.18), transparent 34rem),
        radial-gradient(circle at 86% 10%, rgba(94, 234, 212, 0.14), transparent 32rem),
        linear-gradient(180deg, #07111f 0%, #0a1728 100%) !important;
    color: var(--flyup-d22-text) !important;
}

html[data-flyup-theme="dark"] .flyup-auth-card {
    background: linear-gradient(180deg, var(--flyup-d22-surface), #0c1b2f) !important;
    border: 1px solid var(--flyup-d22-line) !important;
    color: var(--flyup-d22-text) !important;
    box-shadow: 0 28px 80px rgba(0, 0, 0, 0.42) !important;
}

html[data-flyup-theme="dark"] .flyup-auth-card__header .homepage-hero__eyebrow {
    background: rgba(56, 189, 248, 0.12) !important;
    border-color: rgba(56, 189, 248, 0.26) !important;
    color: #7dd3fc !important;
}

html[data-flyup-theme="dark"] .flyup-auth-card h1,
html[data-flyup-theme="dark"] .flyup-auth-card h2,
html[data-flyup-theme="dark"] .flyup-auth-card h3,
html[data-flyup-theme="dark"] .flyup-auth-card label,
html[data-flyup-theme="dark"] .flyup-auth-card strong {
    color: var(--flyup-d22-text) !important;
}

html[data-flyup-theme="dark"] .flyup-auth-card p,
html[data-flyup-theme="dark"] .flyup-auth-card .flyup-auth-bottom-link,
html[data-flyup-theme="dark"] .flyup-auth-card .flyup-auth-row,
html[data-flyup-theme="dark"] .flyup-auth-card small {
    color: var(--flyup-d22-muted) !important;
}

html[data-flyup-theme="dark"] .flyup-auth-card a,
html[data-flyup-theme="dark"] .flyup-auth-row a,
html[data-flyup-theme="dark"] .flyup-auth-bottom-link a {
    color: #38bdf8 !important;
}

html[data-flyup-theme="dark"] .flyup-field input,
html[data-flyup-theme="dark"] .flyup-auth-card input,
html[data-flyup-theme="dark"] .flyup-auth-card select,
html[data-flyup-theme="dark"] .flyup-auth-card textarea {
    background: var(--flyup-d22-input) !important;
    border-color: rgba(148, 163, 184, 0.34) !important;
    color: var(--flyup-d22-text) !important;
    box-shadow: none !important;
}

html[data-flyup-theme="dark"] .flyup-field input:focus,
html[data-flyup-theme="dark"] .flyup-auth-card input:focus,
html[data-flyup-theme="dark"] .flyup-auth-card textarea:focus {
    border-color: rgba(56, 189, 248, 0.70) !important;
    box-shadow: 0 0 0 4px rgba(56, 189, 248, 0.16) !important;
}

html[data-flyup-theme="dark"] .flyup-auth-card input::placeholder,
html[data-flyup-theme="dark"] .flyup-auth-card textarea::placeholder {
    color: rgba(214, 227, 243, 0.60) !important;
}

html[data-flyup-theme="dark"] .flyup-google-auth-btn {
    background: #1f2937 !important;
    border-color: rgba(148, 163, 184, 0.34) !important;
    color: #ffffff !important;
}

html[data-flyup-theme="dark"] .flyup-google-auth-btn__icon {
    background: transparent !important;
}

html[data-flyup-theme="dark"] .flyup-password-field button {
    background: rgba(56, 189, 248, 0.14) !important;
    color: #7dd3fc !important;
}

html[data-flyup-theme="dark"] .flyup-auth-separator::before {
    border-color: rgba(148, 163, 184, 0.30) !important;
}

html[data-flyup-theme="dark"] .flyup-auth-separator span {
    background: var(--flyup-d22-surface) !important;
    color: var(--flyup-d22-muted) !important;
}

html[data-flyup-theme="dark"] .flyup-auth-alert {
    background: rgba(8, 20, 36, 0.92) !important;
    border-color: rgba(148, 163, 184, 0.26) !important;
    color: var(--flyup-d22-muted) !important;
}

html[data-flyup-theme="dark"] .flyup-auth-alert--error {
    background: rgba(127, 29, 29, 0.28) !important;
    border-color: rgba(248, 113, 113, 0.34) !important;
    color: #fecaca !important;
}

/* Public homepage / tools: force residual pale cards to readable dark cards. */
html[data-flyup-theme="dark"] .homepage-how-it-works :is(.step-card,.how-report-proof,.how-report-proof__row,.how-report-proof__budget,.services-strip,.service-pill),
html[data-flyup-theme="dark"] .homepage-modes :is(.home-mode-card,.home-mode-card__mockup,.planner-chip,.report-day-mini),
html[data-flyup-theme="dark"] .homepage-report-preview :is(.metric-box,.report-preview-luxury,.report-preview-luxury__body,.report-preview-luxury__weather span,.report-preview-luxury__highlights span),
html[data-flyup-theme="dark"] .homepage-travel-budget :is(.travel-budget-home-card,.travel-budget-home-card__preview,.travel-budget-mini-card,.travel-budget-mini-line),
html[data-flyup-theme="dark"] .homepage-testimonials :is(.homepage-testimonial-card,.homepage-testimonials__shell),
html[data-flyup-theme="dark"] .home-seo-panel :is(.home-seo-card),
html[data-flyup-theme="dark"] .flyup-home-mobile-app :is(.flyup-home-mobile-app__hero,.flyup-home-mobile-app__auth,.flyup-home-mobile-app__ai-card,.flyup-home-mobile-app__ai-options,.flyup-home-mobile-app__item),
html[data-flyup-theme="dark"] .homepage-mobile-accordion :is(.homepage-mobile-accordion__item,.homepage-mobile-accordion__content),
html[data-flyup-theme="dark"] .flyup-pricing-page :is(.flyup-pricing-card,.flyup-pricing-unlocks,.flyup-pricing-pro,.flyup-pricing-pro-card,.flyup-pricing-inline-note,.flyup-pricing-wallet,.flyup-pricing-member),
html[data-flyup-theme="dark"] .flyup-travel-budget-page :is(.travel-budget-share-box,.travel-budget-share-box--soft,.travel-budget-share-field,.travel-budget-status-badge,.travel-budget-empty,.travel-budget-feedback,.travel-budget-toolbar,.travel-budget-overview__card),
html[data-flyup-theme="dark"] .manual-planner-page :is(.manual-planner-header,.manual-save-status,.manual-activity-row,.manual-trip-brief,.manual-trip-brief__grid > *,.manual-mobile-summary__item,.manual-print-card,.manual-notes-card,.manual-summary-card) {
    background: linear-gradient(180deg, var(--flyup-d22-surface), #0c1b2f) !important;
    border-color: var(--flyup-d22-line) !important;
    color: var(--flyup-d22-text) !important;
    box-shadow: 0 16px 44px rgba(0, 0, 0, 0.28) !important;
}

html[data-flyup-theme="dark"] .homepage-how-it-works :is(.step-card,.how-report-proof,.how-report-proof__row,.how-report-proof__budget,.services-strip,.service-pill) :is(h1,h2,h3,h4,strong,span,em,p,small),
html[data-flyup-theme="dark"] .homepage-modes :is(.home-mode-card,.home-mode-card__mockup,.planner-chip,.report-day-mini) :is(h1,h2,h3,h4,strong,span,em,p,small),
html[data-flyup-theme="dark"] .homepage-report-preview :is(.metric-box,.report-preview-luxury,.report-preview-luxury__body,.report-preview-luxury__weather span,.report-preview-luxury__highlights span) :is(h1,h2,h3,h4,strong,span,em,p,small),
html[data-flyup-theme="dark"] .homepage-travel-budget :is(.travel-budget-home-card,.travel-budget-home-card__preview,.travel-budget-mini-card,.travel-budget-mini-line) :is(h1,h2,h3,h4,strong,span,em,p,small),
html[data-flyup-theme="dark"] .homepage-testimonials :is(.homepage-testimonial-card,.homepage-testimonials__shell) :is(h1,h2,h3,h4,strong,span,em,p,small),
html[data-flyup-theme="dark"] .home-seo-panel :is(.home-seo-card) :is(h1,h2,h3,h4,strong,span,em,p,small),
html[data-flyup-theme="dark"] .flyup-home-mobile-app :is(.flyup-home-mobile-app__hero,.flyup-home-mobile-app__auth,.flyup-home-mobile-app__ai-card,.flyup-home-mobile-app__ai-options,.flyup-home-mobile-app__item) :is(h1,h2,h3,h4,strong,span,em,p,small),
html[data-flyup-theme="dark"] .homepage-mobile-accordion :is(.homepage-mobile-accordion__item,.homepage-mobile-accordion__content) :is(h1,h2,h3,h4,strong,span,em,p,small),
html[data-flyup-theme="dark"] .flyup-pricing-page :is(.flyup-pricing-card,.flyup-pricing-unlocks,.flyup-pricing-pro,.flyup-pricing-pro-card,.flyup-pricing-inline-note,.flyup-pricing-wallet,.flyup-pricing-member) :is(h1,h2,h3,h4,strong,span,em,p,small,li),
html[data-flyup-theme="dark"] .flyup-travel-budget-page :is(.travel-budget-share-box,.travel-budget-share-box--soft,.travel-budget-share-field,.travel-budget-status-badge,.travel-budget-empty,.travel-budget-feedback,.travel-budget-toolbar,.travel-budget-overview__card) :is(h1,h2,h3,h4,strong,span,em,p,small,li),
html[data-flyup-theme="dark"] .manual-planner-page :is(.manual-planner-header,.manual-save-status,.manual-activity-row,.manual-trip-brief,.manual-trip-brief__grid > *,.manual-mobile-summary__item,.manual-print-card,.manual-notes-card,.manual-summary-card) :is(h1,h2,h3,h4,strong,span,em,p,small,li) {
    color: var(--flyup-d22-text) !important;
}

html[data-flyup-theme="dark"] .homepage-how-it-works :is(.how-report-proof__row,.how-report-proof__budget) span,
html[data-flyup-theme="dark"] .homepage-modes :is(.planner-chip,.report-day-mini) span,
html[data-flyup-theme="dark"] .homepage-report-preview :is(.metric-box,.report-preview-luxury__subtitle) ,
html[data-flyup-theme="dark"] .homepage-travel-budget :is(.travel-budget-mini-card span,.travel-budget-mini-line span),
html[data-flyup-theme="dark"] .homepage-testimonials .homepage-testimonial-card p,
html[data-flyup-theme="dark"] .home-seo-panel .home-seo-card p,
html[data-flyup-theme="dark"] .flyup-pricing-page .flyup-pricing-card__note,
html[data-flyup-theme="dark"] .flyup-travel-budget-page :is(.travel-budget-share-note,.travel-budget-card__head p,.travel-budget-empty),
html[data-flyup-theme="dark"] .manual-planner-page :is(.manual-save-status,.manual-trip-brief__grid span,.manual-mobile-summary__item span) {
    color: var(--flyup-d22-muted) !important;
}

html[data-flyup-theme="dark"] .flyup-travel-budget-page :is(input, select, textarea, .travel-budget-share-input),
html[data-flyup-theme="dark"] .manual-planner-page :is(input, select, textarea, .manual-input, .manual-notes-input),
html[data-flyup-theme="dark"] .homepage-modes :is(input, select, textarea),
html[data-flyup-theme="dark"] .homepage-how-it-works :is(input, select, textarea) {
    background: var(--flyup-d22-input) !important;
    color: var(--flyup-d22-text) !important;
    border-color: var(--flyup-d22-line) !important;
}

/* STEP53 Phase18D23 — Multicolor luminous container borders.
   Subtle in light mode, more visible in dark mode. No layout or content change. */
:root {
    --flyup-glow-cyan: rgba(56, 189, 248, 0.70);
    --flyup-glow-teal: rgba(94, 234, 212, 0.58);
    --flyup-glow-violet: rgba(167, 139, 250, 0.42);
    --flyup-glow-warm: rgba(249, 115, 22, 0.28);
}

:is(
    .site-header__inner,
    .card,
    .benefit-card,
    .step-card,
    .pricing-card,
    .faq-item,
    .services-strip,
    .metric-box,
    .home-mode-card,
    .home-mode-card__mockup,
    .report-preview-luxury,
    .report-preview__mockup,
    .homepage-testimonial-card,
    .flyup-auth-card,
    .flyup-dashboard-welcome,
    .flyup-dashboard-section,
    .flyup-dashboard-mobile-card,
    .flyup-my-trip-card,
    .flyup-my-trips-summary-card,
    .flyup-profile-card,
    .flyup-billing-card,
    .flyup-pricing-card,
    .flyup-pricing-pro-card,
    .flyup-pricing-wallet,
    .flyup-travel-budget-card,
    .travel-budget-share-box,
    .travel-budget-overview__card,
    .manual-planner-header,
    .manual-trip-brief,
    .manual-summary-card,
    .manual-notes-card,
    .manual-print-card,
    .ai-form-shell,
    .ai-progress-wrap,
    .ai-report-toolbar,
    .ai-price-modal__dialog,
    .flyup-report-view,
    .flyup-ai-accordion,
    .flyup-inspiration-compare,
    .flyup-inspiration-compare-card,
    .flyup-inspiration-destination-card,
    .flyup-inspiration-detail-box,
    .flyup-inspiration-tip-card,
    .flyup-legal-hero,
    .flyup-legal-content,
    .flyup-blog-card,
    .flyup-blog-post-card,
    .flyup-inspiration-card,
    .flyup-methodology-card,
    .flyup-partner-card
) {
    border-color: rgba(56, 189, 248, 0.24) !important;
    box-shadow:
        0 -1px 0 var(--flyup-glow-cyan),
        1px 0 0 var(--flyup-glow-teal),
        0 1px 0 var(--flyup-glow-violet),
        -1px 0 0 var(--flyup-glow-warm),
        0 16px 42px rgba(15, 23, 42, 0.07),
        0 0 26px rgba(56, 189, 248, 0.08) !important;
}

html[data-flyup-theme="dark"] :is(
    .card,
    .benefit-card,
    .step-card,
    .pricing-card,
    .faq-item,
    .services-strip,
    .metric-box,
    .home-mode-card,
    .home-mode-card__mockup,
    .report-preview-luxury,
    .report-preview__mockup,
    .homepage-testimonial-card,
    .flyup-auth-card,
    .flyup-dashboard-welcome,
    .flyup-dashboard-section,
    .flyup-dashboard-mobile-card,
    .flyup-my-trip-card,
    .flyup-my-trips-summary-card,
    .flyup-profile-card,
    .flyup-billing-card,
    .flyup-pricing-card,
    .flyup-pricing-pro-card,
    .flyup-pricing-wallet,
    .flyup-travel-budget-card,
    .travel-budget-share-box,
    .travel-budget-overview__card,
    .manual-planner-header,
    .manual-trip-brief,
    .manual-summary-card,
    .manual-notes-card,
    .manual-print-card,
    .ai-form-shell,
    .ai-progress-wrap,
    .ai-report-toolbar,
    .ai-price-modal__dialog,
    .flyup-report-view,
    .flyup-ai-accordion,
    .flyup-inspiration-compare,
    .flyup-inspiration-compare-card,
    .flyup-inspiration-destination-card,
    .flyup-inspiration-detail-box,
    .flyup-inspiration-tip-card,
    .flyup-legal-hero,
    .flyup-legal-content,
    .flyup-blog-card,
    .flyup-blog-post-card,
    .flyup-inspiration-card,
    .flyup-methodology-card,
    .flyup-partner-card
) {
    border-color: rgba(56, 189, 248, 0.38) !important;
    box-shadow:
        0 -1px 0 rgba(56, 189, 248, 0.85),
        1px 0 0 rgba(94, 234, 212, 0.72),
        0 1px 0 rgba(167, 139, 250, 0.58),
        -1px 0 0 rgba(249, 115, 22, 0.42),
        0 18px 52px rgba(0, 0, 0, 0.34),
        0 0 34px rgba(56, 189, 248, 0.16),
        0 0 48px rgba(167, 139, 250, 0.08) !important;
}

/* Header remains light in dark mode, but keeps a very soft luminous edge. */
html[data-flyup-theme="dark"] .site-header__inner {
    border-color: rgba(186, 230, 253, 0.88) !important;
    box-shadow:
        0 -1px 0 rgba(56, 189, 248, 0.58),
        1px 0 0 rgba(94, 234, 212, 0.46),
        0 1px 0 rgba(167, 139, 250, 0.30),
        -1px 0 0 rgba(249, 115, 22, 0.22),
        0 22px 60px rgba(14, 165, 233, 0.14) !important;
}

@media (hover: hover) {
    html[data-flyup-theme="dark"] :is(
        .card,
        .benefit-card,
        .step-card,
        .pricing-card,
        .home-mode-card,
        .flyup-my-trip-card,
        .flyup-pricing-card,
        .flyup-inspiration-card,
        .flyup-inspiration-destination-card,
        .flyup-dashboard-section
    ):hover {
        border-color: rgba(94, 234, 212, 0.55) !important;
        box-shadow:
            0 -1px 0 rgba(56, 189, 248, 0.96),
            1px 0 0 rgba(94, 234, 212, 0.88),
            0 1px 0 rgba(167, 139, 250, 0.70),
            -1px 0 0 rgba(249, 115, 22, 0.52),
            0 22px 60px rgba(0, 0, 0, 0.38),
            0 0 42px rgba(56, 189, 248, 0.22),
            0 0 58px rgba(167, 139, 250, 0.12) !important;
    }
}

/* STEP53 Phase18D24 — Multicolor luminous hover borders for buttons.
   Same visual principle as container glow, but only activated on mouse hover/focus. */
:root {
    --flyup-btn-glow-cyan: rgba(56, 189, 248, 0.95);
    --flyup-btn-glow-teal: rgba(94, 234, 212, 0.88);
    --flyup-btn-glow-violet: rgba(167, 139, 250, 0.72);
    --flyup-btn-glow-warm: rgba(249, 115, 22, 0.48);
}

:is(
    .btn,
    a.btn,
    button.btn,
    input[type="submit"],
    input[type="button"],
    .site-quick-switcher__item,
    .site-actions__auth-icon,
    .flyup-inspiration-card__button,
    .flyup-inspo-feature-card__button,
    .ai-generated-nav-button,
    .flyup-my-trip-card__actions button,
    .flyup-action-icon-btn,
    .flyup-inspirations-filters__actions .btn,
    .manual-planner-header__actions .btn,
    .ai-form-nav .btn,
    .ai-price-modal__actions .btn,
    .ai-report-toolbar__actions .btn,
    .travel-budget-share-box .btn,
    .flyup-billing-card .btn,
    .flyup-pricing-card .btn,
    .flyup-auth-form .btn
) {
    position: relative;
    transition:
        border-color 0.22s ease,
        box-shadow 0.22s ease,
        transform 0.22s ease,
        filter 0.22s ease,
        background-color 0.22s ease !important;
}

@media (hover: hover) {
    :is(
        .btn,
        a.btn,
        button.btn,
        input[type="submit"],
        input[type="button"],
        .site-quick-switcher__item,
        .site-actions__auth-icon,
        .flyup-inspiration-card__button,
        .flyup-inspo-feature-card__button,
        .ai-generated-nav-button,
        .flyup-my-trip-card__actions button,
        .flyup-action-icon-btn,
        .flyup-inspirations-filters__actions .btn,
        .manual-planner-header__actions .btn,
        .ai-form-nav .btn,
        .ai-price-modal__actions .btn,
        .ai-report-toolbar__actions .btn,
        .travel-budget-share-box .btn,
        .flyup-billing-card .btn,
        .flyup-pricing-card .btn,
        .flyup-auth-form .btn
    ):where(:hover, :focus-visible):not(:disabled):not([disabled]) {
        border-color: rgba(94, 234, 212, 0.70) !important;
        box-shadow:
            0 -1px 0 var(--flyup-btn-glow-cyan),
            1px 0 0 var(--flyup-btn-glow-teal),
            0 1px 0 var(--flyup-btn-glow-violet),
            -1px 0 0 var(--flyup-btn-glow-warm),
            0 0 0 3px rgba(56, 189, 248, 0.12),
            0 10px 30px rgba(14, 165, 233, 0.20),
            0 0 34px rgba(167, 139, 250, 0.12) !important;
        filter: saturate(1.08);
    }

    html[data-flyup-theme="dark"] :is(
        .btn,
        a.btn,
        button.btn,
        input[type="submit"],
        input[type="button"],
        .site-quick-switcher__item,
        .site-actions__auth-icon,
        .flyup-inspiration-card__button,
        .flyup-inspo-feature-card__button,
        .ai-generated-nav-button,
        .flyup-my-trip-card__actions button,
        .flyup-action-icon-btn,
        .flyup-inspirations-filters__actions .btn,
        .manual-planner-header__actions .btn,
        .ai-form-nav .btn,
        .ai-price-modal__actions .btn,
        .ai-report-toolbar__actions .btn,
        .travel-budget-share-box .btn,
        .flyup-billing-card .btn,
        .flyup-pricing-card .btn,
        .flyup-auth-form .btn
    ):where(:hover, :focus-visible):not(:disabled):not([disabled]) {
        border-color: rgba(94, 234, 212, 0.88) !important;
        box-shadow:
            0 -1px 0 rgba(56, 189, 248, 1),
            1px 0 0 rgba(94, 234, 212, 0.98),
            0 1px 0 rgba(167, 139, 250, 0.86),
            -1px 0 0 rgba(249, 115, 22, 0.66),
            0 0 0 3px rgba(56, 189, 248, 0.16),
            0 12px 34px rgba(0, 0, 0, 0.32),
            0 0 38px rgba(56, 189, 248, 0.24),
            0 0 52px rgba(167, 139, 250, 0.16) !important;
    }

    /* The icon-only login/logout button has no visible shell; keep the container size,
       and light the icon area without recreating a full circle around it. */
    .site-actions__auth-icon:where(:hover, :focus-visible) {
        border-radius: 12px !important;
        background: rgba(14, 165, 233, 0.08) !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    :is(.btn, a.btn, button.btn, input[type="submit"], input[type="button"], .site-quick-switcher__item, .site-actions__auth-icon) {
        transition: none !important;
    }
}

/* STEP53 Phase18D25 — Homepage/public dark-mode residual pale cards fix.
   Fixes remaining grey/white surfaces with low-contrast text on homepage,
   inspirations, methodology, partners, manual planner and travel budget pages. */
html[data-flyup-theme="dark"] {
    --flyup-d25-surface: #10213a;
    --flyup-d25-surface-2: #132844;
    --flyup-d25-surface-3: #0b1728;
    --flyup-d25-text: #f8fbff;
    --flyup-d25-muted: #d8e6f6;
    --flyup-d25-soft: #b9cde5;
    --flyup-d25-line: rgba(148, 163, 184, 0.34);
    --flyup-d25-input: #0b1626;
}

/* Homepage: remaining pale cards and mockups. */
html[data-flyup-theme="dark"] .homepage-hero .hero-pathway,
html[data-flyup-theme="dark"] .homepage-how-it-works :is(.step-card,.how-report-proof,.how-report-proof__row,.how-report-proof__budget,.services-strip,.service-pill),
html[data-flyup-theme="dark"] .homepage-modes :is(.home-mode-card,.home-mode-card__mockup,.planner-chip,.planner-chip--accent,.planner-note-mini,.report-day-mini),
html[data-flyup-theme="dark"] .homepage-report-preview :is(.metric-box,.report-preview-luxury,.report-preview-luxury__body,.report-preview-luxury__weather span,.report-preview-luxury__highlights span,.report-block,.report-modal__dialog),
html[data-flyup-theme="dark"] .homepage-travel-budget :is(.travel-budget-home-card,.travel-budget-home-card__preview,.travel-budget-mini-card,.travel-budget-mini-card--wallet,.travel-budget-mini-card--accent,.travel-budget-mini-line),
html[data-flyup-theme="dark"] .homepage-testimonials :is(.homepage-testimonials__shell,.homepage-testimonial-card),
html[data-flyup-theme="dark"] .homepage-seo-content :is(.home-seo-panel,.home-seo-card),
html[data-flyup-theme="dark"] .homepage-sample-itineraries :is(.sample-itinerary-card,.sample-itineraries-cta),
html[data-flyup-theme="dark"] .homepage-pricing :is(.pricing-card,.pricing-inline-note,.pricing-pro-cta),
html[data-flyup-theme="dark"] .homepage-benefits .benefit-card,
html[data-flyup-theme="dark"] .homepage-faq .faq-item,
html[data-flyup-theme="dark"] .flyup-home-mobile-app :is(.flyup-home-mobile-app__hero,.flyup-home-mobile-app__auth,.flyup-home-mobile-app__ai-card,.flyup-home-mobile-app__ai-options,.flyup-home-mobile-app__item),
html[data-flyup-theme="dark"] .homepage-mobile-accordion :is(.homepage-mobile-accordion__item,.homepage-mobile-accordion__content) {
    background: linear-gradient(135deg, var(--flyup-d25-surface), var(--flyup-d25-surface-3)) !important;
    border-color: var(--flyup-d25-line) !important;
    color: var(--flyup-d25-text) !important;
    box-shadow:
        0 -1px 0 rgba(56, 189, 248, 0.72),
        1px 0 0 rgba(94, 234, 212, 0.50),
        0 1px 0 rgba(167, 139, 250, 0.34),
        -1px 0 0 rgba(249, 115, 22, 0.24),
        0 18px 48px rgba(0, 0, 0, 0.30) !important;
}

html[data-flyup-theme="dark"] .homepage-hero .hero-pathway :is(h1,h2,h3,h4,strong,span,p,small),
html[data-flyup-theme="dark"] .homepage-how-it-works :is(.step-card,.how-report-proof,.how-report-proof__row,.how-report-proof__budget,.services-strip,.service-pill) :is(h1,h2,h3,h4,strong,span,em,p,small,li),
html[data-flyup-theme="dark"] .homepage-modes :is(.home-mode-card,.home-mode-card__mockup,.planner-chip,.planner-chip--accent,.planner-note-mini,.report-day-mini) :is(h1,h2,h3,h4,strong,span,em,p,small,li),
html[data-flyup-theme="dark"] .homepage-report-preview :is(.metric-box,.report-preview-luxury,.report-preview-luxury__body,.report-preview-luxury__weather span,.report-preview-luxury__highlights span,.report-block,.report-modal__dialog) :is(h1,h2,h3,h4,strong,span,em,p,small,li),
html[data-flyup-theme="dark"] .homepage-travel-budget :is(.travel-budget-home-card,.travel-budget-home-card__preview,.travel-budget-mini-card,.travel-budget-mini-line) :is(h1,h2,h3,h4,strong,span,em,p,small,li),
html[data-flyup-theme="dark"] .homepage-testimonials :is(.homepage-testimonials__shell,.homepage-testimonial-card) :is(h1,h2,h3,h4,strong,span,em,p,small,li),
html[data-flyup-theme="dark"] .homepage-seo-content :is(.home-seo-panel,.home-seo-card) :is(h1,h2,h3,h4,strong,span,em,p,small,li),
html[data-flyup-theme="dark"] .homepage-sample-itineraries :is(.sample-itinerary-card,.sample-itineraries-cta) :is(h1,h2,h3,h4,strong,span,em,p,small,li),
html[data-flyup-theme="dark"] .homepage-pricing :is(.pricing-card,.pricing-inline-note,.pricing-pro-cta) :is(h1,h2,h3,h4,strong,span,em,p,small,li),
html[data-flyup-theme="dark"] .homepage-benefits .benefit-card :is(h1,h2,h3,h4,strong,span,em,p,small,li),
html[data-flyup-theme="dark"] .homepage-faq .faq-item :is(h1,h2,h3,h4,strong,span,em,p,small,li),
html[data-flyup-theme="dark"] .flyup-home-mobile-app :is(.flyup-home-mobile-app__hero,.flyup-home-mobile-app__auth,.flyup-home-mobile-app__ai-card,.flyup-home-mobile-app__ai-options,.flyup-home-mobile-app__item) :is(h1,h2,h3,h4,strong,span,em,p,small,li),
html[data-flyup-theme="dark"] .homepage-mobile-accordion :is(.homepage-mobile-accordion__item,.homepage-mobile-accordion__content) :is(h1,h2,h3,h4,strong,span,em,p,small,li) {
    color: var(--flyup-d25-text) !important;
}

html[data-flyup-theme="dark"] .homepage-hero .hero-pathway p,
html[data-flyup-theme="dark"] .homepage-modes :is(.home-mode-card__head p,.planner-chip span,.report-day-mini span,.planner-note-mini),
html[data-flyup-theme="dark"] .homepage-how-it-works :is(.how-report-proof__row span,.how-report-proof__row em,.how-report-proof__budget span),
html[data-flyup-theme="dark"] .homepage-travel-budget :is(.travel-budget-home-card p,.travel-budget-home-card li,.travel-budget-mini-card span,.travel-budget-mini-line span),
html[data-flyup-theme="dark"] .homepage-testimonials .homepage-testimonial-card :is(p,span),
html[data-flyup-theme="dark"] .homepage-seo-content .home-seo-card p,
html[data-flyup-theme="dark"] .homepage-report-preview :is(.metric-box span,.report-preview-luxury__subtitle,.report-block p),
html[data-flyup-theme="dark"] .homepage-pricing :is(.pricing-card__lead,.pricing-card__note,.pricing-card__features li,.pricing-inline-note p),
html[data-flyup-theme="dark"] .homepage-sample-itineraries :is(.sample-itinerary-card p,.sample-itinerary-card__meta) {
    color: var(--flyup-d25-muted) !important;
}

/* Inspirations page: metrics and sidebar/cards that were still light grey. */
html[data-flyup-theme="dark"] .flyup-inspirations-hero__metrics > span,
html[data-flyup-theme="dark"] .flyup-inspirations-notice,
html[data-flyup-theme="dark"] .flyup-inspirations-direct-start,
html[data-flyup-theme="dark"] .flyup-inspirations-sidebar,
html[data-flyup-theme="dark"] .flyup-inspirations-filters,
html[data-flyup-theme="dark"] .flyup-inspirations-how,
html[data-flyup-theme="dark"] .flyup-inspiration-card,
html[data-flyup-theme="dark"] .flyup-inspiration-card__facts,
html[data-flyup-theme="dark"] .flyup-inspiration-card__budget-chip,
html[data-flyup-theme="dark"] .flyup-destination-modal__dialog,
html[data-flyup-theme="dark"] .flyup-destination-modal__facts div {
    background: linear-gradient(135deg, var(--flyup-d25-surface), var(--flyup-d25-surface-3)) !important;
    border-color: var(--flyup-d25-line) !important;
    color: var(--flyup-d25-text) !important;
}

html[data-flyup-theme="dark"] .flyup-inspirations-page :is(.flyup-inspirations-hero__metrics > span,.flyup-inspirations-notice,.flyup-inspirations-direct-start,.flyup-inspirations-sidebar,.flyup-inspirations-filters,.flyup-inspirations-how,.flyup-inspiration-card,.flyup-inspiration-card__facts,.flyup-inspiration-card__budget-chip,.flyup-destination-modal__dialog,.flyup-destination-modal__facts div) :is(h1,h2,h3,h4,strong,span,p,small,li,label) {
    color: var(--flyup-d25-text) !important;
}

html[data-flyup-theme="dark"] .flyup-inspirations-page :is(.flyup-inspiration-card p,.flyup-inspiration-card__description,.flyup-inspirations-filters p,.flyup-inspirations-how p,.flyup-inspiration-card__facts span,.flyup-destination-modal__intro) {
    color: var(--flyup-d25-muted) !important;
}

/* Manual planner and travel budget: empty states, rows and generated dynamic items. */
html[data-flyup-theme="dark"] .manual-planner-page :is(.manual-day-card,.manual-day-card__header,.manual-day-card__body,.manual-activity-item,.manual-add-day-btn,.manual-save-status,.manual-trip-brief,.manual-trip-brief__grid > *,.manual-notes-card,.manual-summary-card,.manual-print-card,.manual-mobile-summary,.manual-mobile-summary__item),
html[data-flyup-theme="dark"] .flyup-travel-budget-page :is(.travel-budget-hero,.travel-budget-hero__side,.travel-budget-workspace,.travel-budget-toolbar,.travel-budget-card,.travel-budget-list-row,.travel-budget-inline-form,.travel-budget-chip-group,.travel-budget-empty,.travel-budget-feedback,.travel-budget-share-box,.travel-budget-share-box--soft,.travel-budget-share-field,.travel-budget-overview__card,.travel-budget-status-badge,.travel-budget-table-wrap,.travel-budget-settlement-row) {
    background: linear-gradient(135deg, var(--flyup-d25-surface), var(--flyup-d25-surface-3)) !important;
    border-color: var(--flyup-d25-line) !important;
    color: var(--flyup-d25-text) !important;
}

html[data-flyup-theme="dark"] .manual-planner-page :is(.manual-day-card,.manual-day-card__header,.manual-day-card__body,.manual-activity-item,.manual-add-day-btn,.manual-save-status,.manual-trip-brief,.manual-trip-brief__grid > *,.manual-notes-card,.manual-summary-card,.manual-print-card,.manual-mobile-summary,.manual-mobile-summary__item) :is(h1,h2,h3,h4,strong,span,p,small,label,li),
html[data-flyup-theme="dark"] .flyup-travel-budget-page :is(.travel-budget-hero,.travel-budget-hero__side,.travel-budget-workspace,.travel-budget-toolbar,.travel-budget-card,.travel-budget-list-row,.travel-budget-inline-form,.travel-budget-chip-group,.travel-budget-empty,.travel-budget-feedback,.travel-budget-share-box,.travel-budget-share-box--soft,.travel-budget-share-field,.travel-budget-overview__card,.travel-budget-status-badge,.travel-budget-table-wrap,.travel-budget-settlement-row) :is(h1,h2,h3,h4,strong,span,p,small,label,li,td,th) {
    color: var(--flyup-d25-text) !important;
}

html[data-flyup-theme="dark"] .manual-planner-page :is(.manual-day-card__meta,.manual-save-status,.manual-field span,.manual-empty-note),
html[data-flyup-theme="dark"] .flyup-travel-budget-page :is(.travel-budget-card__head p,.travel-budget-share-note,.travel-budget-empty,.travel-budget-feedback) {
    color: var(--flyup-d25-muted) !important;
}

html[data-flyup-theme="dark"] .manual-planner-page :is(input,select,textarea,.manual-input),
html[data-flyup-theme="dark"] .flyup-travel-budget-page :is(input,select,textarea,.travel-budget-share-input,.travel-budget-share-field,.travel-budget-toggle) {
    background: var(--flyup-d25-input) !important;
    color: var(--flyup-d25-text) !important;
    border-color: var(--flyup-d25-line) !important;
}

html[data-flyup-theme="dark"] .manual-planner-page :is(input,textarea)::placeholder,
html[data-flyup-theme="dark"] .flyup-travel-budget-page :is(input,textarea)::placeholder {
    color: rgba(216, 230, 246, 0.68) !important;
}

/* Methodology and partners trust pages. */
html[data-flyup-theme="dark"] .trust-page :is(.trust-hero,.trust-panel,.trust-panel__item,.trust-card,.trust-note) {
    background: linear-gradient(135deg, var(--flyup-d25-surface), var(--flyup-d25-surface-3)) !important;
    border-color: var(--flyup-d25-line) !important;
    color: var(--flyup-d25-text) !important;
}

html[data-flyup-theme="dark"] .trust-page :is(.trust-hero,.trust-panel,.trust-panel__item,.trust-card,.trust-note) :is(h1,h2,h3,h4,strong,span,p,small,li) {
    color: var(--flyup-d25-text) !important;
}

html[data-flyup-theme="dark"] .trust-page :is(.trust-hero p,.trust-panel__item span,.trust-card p,.trust-card li,.trust-note p) {
    color: var(--flyup-d25-muted) !important;
}

/* =====================================================================
   Phase18D26 — AI / Manual Planner dark-mode header readability hard fix
   User screenshots showed the Planner/AI intro cards staying pale grey with
   white text. Keep the site header light, but force the internal planner
   hero cards, guest preview note and form intro blocks to real dark surfaces.
===================================================================== */
html[data-flyup-theme="dark"] .ai-mode-page .ai-page-header,
html[data-flyup-theme="dark"] .ai-mode-page .ai-page-header.card,
html[data-flyup-theme="dark"] .manual-planner-page .manual-planner-header,
html[data-flyup-theme="dark"] .manual-planner-page .manual-planner-header.card {
    background:
        radial-gradient(circle at 14% 0%, rgba(56, 189, 248, 0.16), transparent 26rem),
        linear-gradient(135deg, #10213a 0%, #0b1728 100%) !important;
    border: 1px solid rgba(56, 189, 248, 0.34) !important;
    color: #f8fbff !important;
    box-shadow:
        0 18px 46px rgba(0, 0, 0, 0.34),
        0 0 0 1px rgba(94, 234, 212, 0.08) inset !important;
}

html[data-flyup-theme="dark"] .ai-mode-page .ai-page-header :is(h1,h2,h3,h4,strong,span,p,small,label),
html[data-flyup-theme="dark"] .manual-planner-page .manual-planner-header :is(h1,h2,h3,h4,strong,span,p,small,label),
html[data-flyup-theme="dark"] .manual-planner-page .manual-trip-title {
    color: #f8fbff !important;
    -webkit-text-fill-color: #f8fbff !important;
    opacity: 1 !important;
}

html[data-flyup-theme="dark"] .ai-mode-page .ai-page-header p,
html[data-flyup-theme="dark"] .manual-planner-page .manual-planner-header__intro {
    color: #d8e6f6 !important;
    -webkit-text-fill-color: #d8e6f6 !important;
}

html[data-flyup-theme="dark"] .ai-mode-page .ai-page-header .homepage-hero__eyebrow,
html[data-flyup-theme="dark"] .manual-planner-page .manual-planner-header__eyebrow {
    color: #38bdf8 !important;
    -webkit-text-fill-color: #38bdf8 !important;
    background: rgba(56, 189, 248, 0.13) !important;
    border: 1px solid rgba(56, 189, 248, 0.22) !important;
}

html[data-flyup-theme="dark"] .ai-mode-page .ai-page-header__note,
html[data-flyup-theme="dark"] .ai-mode-page .ai-info-box,
html[data-flyup-theme="dark"] .ai-mode-page .ai-info-box--guest-demo,
html[data-flyup-theme="dark"] .manual-planner-page .manual-save-status,
html[data-flyup-theme="dark"] .manual-planner-page .manual-empty-note {
    background: rgba(8, 20, 36, 0.78) !important;
    border: 1px solid rgba(56, 189, 248, 0.28) !important;
    color: #d8e6f6 !important;
    -webkit-text-fill-color: #d8e6f6 !important;
}

html[data-flyup-theme="dark"] .ai-mode-page .ai-page-header__note strong,
html[data-flyup-theme="dark"] .ai-mode-page .ai-info-box strong,
html[data-flyup-theme="dark"] .ai-mode-page .ai-info-box--guest-demo strong {
    color: #f8fbff !important;
    -webkit-text-fill-color: #f8fbff !important;
}

/* Manual Planner form: prevent activity rows / empty states from reverting to
   pale cards with low contrast in the dark theme. */
html[data-flyup-theme="dark"] .manual-planner-page :is(.manual-activity-row,.manual-activity-item,.manual-day-card,.manual-day-card__body,.manual-day-card__header,.manual-add-activity,.manual-add-day-btn,.manual-field,.manual-cost-field,.manual-time-field,.manual-notes-card,.manual-summary-card,.manual-print-card,.manual-trip-brief,.manual-mobile-summary,.manual-progress-wrap,.manual-stepper,.manual-sidebar-card) {
    background: linear-gradient(135deg, #10213a, #0b1728) !important;
    border-color: rgba(148, 163, 184, 0.34) !important;
    color: #f8fbff !important;
}

html[data-flyup-theme="dark"] .manual-planner-page :is(.manual-activity-row,.manual-activity-item,.manual-day-card,.manual-day-card__body,.manual-day-card__header,.manual-add-activity,.manual-add-day-btn,.manual-field,.manual-cost-field,.manual-time-field,.manual-notes-card,.manual-summary-card,.manual-print-card,.manual-trip-brief,.manual-mobile-summary,.manual-progress-wrap,.manual-stepper,.manual-sidebar-card) :is(h1,h2,h3,h4,strong,span,p,small,label,li) {
    color: #f8fbff !important;
    -webkit-text-fill-color: #f8fbff !important;
    opacity: 1 !important;
}

html[data-flyup-theme="dark"] .manual-planner-page :is(.manual-step-label,.manual-day-card__meta,.manual-help,.manual-hint,.manual-field__hint,.manual-empty-note) {
    color: #d8e6f6 !important;
    -webkit-text-fill-color: #d8e6f6 !important;
}

html[data-flyup-theme="dark"] .manual-planner-page :is(input,select,textarea,.manual-input,.manual-trip-title,.manual-notes-input) {
    background: #0b1626 !important;
    color: #f8fbff !important;
    -webkit-text-fill-color: #f8fbff !important;
    border-color: rgba(148, 163, 184, 0.34) !important;
}

html[data-flyup-theme="dark"] .manual-planner-page :is(input,textarea,.manual-input,.manual-notes-input)::placeholder {
    color: rgba(216, 230, 246, 0.72) !important;
    -webkit-text-fill-color: rgba(216, 230, 246, 0.72) !important;
}

/* =====================================================================
   Phase18D27 — dark-mode readability hardening for Inspiration details,
   Inspiration modal cards and AI stepper.
   Screenshots showed pale grey panels with white/washed text.
===================================================================== */
html[data-flyup-theme="dark"] .flyup-inspirations-page .flyup-inspirations-hero__metrics > span,
html[data-flyup-theme="dark"] .flyup-inspirations-page .flyup-destination-modal__block,
html[data-flyup-theme="dark"] .flyup-inspirations-page .flyup-destination-modal__facts div,
html[data-flyup-theme="dark"] .flyup-destination-modal__block,
html[data-flyup-theme="dark"] .flyup-destination-modal__facts div {
    background:
        radial-gradient(circle at 12% 0%, rgba(56, 189, 248, 0.14), transparent 24rem),
        linear-gradient(135deg, #10213a 0%, #0b1728 100%) !important;
    border-color: rgba(56, 189, 248, 0.34) !important;
    color: #f8fbff !important;
    -webkit-text-fill-color: #f8fbff !important;
    box-shadow:
        0 16px 42px rgba(0, 0, 0, 0.30),
        0 0 0 1px rgba(94, 234, 212, 0.07) inset !important;
}

html[data-flyup-theme="dark"] .flyup-inspirations-page .flyup-inspirations-hero__metrics > span :is(strong,span,small),
html[data-flyup-theme="dark"] .flyup-inspirations-page .flyup-destination-modal__block :is(h1,h2,h3,h4,strong,dt,dd),
html[data-flyup-theme="dark"] .flyup-destination-modal__block :is(h1,h2,h3,h4,strong,dt,dd),
html[data-flyup-theme="dark"] .flyup-destination-modal__facts :is(dt,dd,strong) {
    color: #f8fbff !important;
    -webkit-text-fill-color: #f8fbff !important;
    opacity: 1 !important;
}

html[data-flyup-theme="dark"] .flyup-inspirations-page .flyup-destination-modal__block :is(p,li,span,small),
html[data-flyup-theme="dark"] .flyup-destination-modal__block :is(p,li,span,small),
html[data-flyup-theme="dark"] .flyup-destination-modal__facts dt,
html[data-flyup-theme="dark"] .flyup-inspirations-page .flyup-inspirations-hero__metrics > span:not(:has(strong)) {
    color: #d8e6f6 !important;
    -webkit-text-fill-color: #d8e6f6 !important;
    opacity: 1 !important;
}

html[data-flyup-theme="dark"] .flyup-inspirations-page .flyup-inspirations-hero__metrics > span > strong {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    text-shadow: 0 0 18px rgba(56, 189, 248, 0.22) !important;
}

html[data-flyup-theme="dark"] .flyup-inspirations-page .flyup-destination-modal__content,
html[data-flyup-theme="dark"] .flyup-destination-modal__content {
    background: linear-gradient(180deg, #0d1c31 0%, #081424 100%) !important;
    color: #f8fbff !important;
}

html[data-flyup-theme="dark"] .flyup-inspirations-page .flyup-destination-modal__content > :is(h1,h2,h3,h4,strong,span,p,small,li),
html[data-flyup-theme="dark"] .flyup-destination-modal__content > :is(h1,h2,h3,h4,strong,span,p,small,li) {
    opacity: 1 !important;
}

html[data-flyup-theme="dark"] .flyup-inspirations-page .flyup-destination-modal__intro,
html[data-flyup-theme="dark"] .flyup-destination-modal__intro {
    color: #d8e6f6 !important;
    -webkit-text-fill-color: #d8e6f6 !important;
}

html[data-flyup-theme="dark"] .flyup-destination-modal__block ul,
html[data-flyup-theme="dark"] .flyup-destination-modal__block li {
    color: #d8e6f6 !important;
    -webkit-text-fill-color: #d8e6f6 !important;
}

/* AI / Inspiration quiz progress bar: keep active labels and inactive circles readable. */
html[data-flyup-theme="dark"] .ai-mode-page .ai-progress-wrap,
html[data-flyup-theme="dark"] .ai-mode-page .ai-progress-steps {
    background: linear-gradient(135deg, #10213a, #0b1728) !important;
    border-color: rgba(56, 189, 248, 0.34) !important;
    color: #f8fbff !important;
}

html[data-flyup-theme="dark"] .ai-mode-page .ai-progress-steps::before {
    background: rgba(148, 163, 184, 0.30) !important;
}

html[data-flyup-theme="dark"] .ai-mode-page .ai-step-dot {
    background: #f8fbff !important;
    border-color: rgba(216, 230, 246, 0.55) !important;
    color: #0f172a !important;
    -webkit-text-fill-color: #0f172a !important;
}

html[data-flyup-theme="dark"] .ai-mode-page .ai-step-indicator.active .ai-step-dot,
html[data-flyup-theme="dark"] .ai-mode-page .ai-step-indicator.completed .ai-step-dot {
    background: linear-gradient(135deg, #38bdf8, #5eead4) !important;
    border-color: transparent !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

html[data-flyup-theme="dark"] .ai-mode-page .ai-step-label {
    color: #d8e6f6 !important;
    -webkit-text-fill-color: #d8e6f6 !important;
    opacity: 1 !important;
}

html[data-flyup-theme="dark"] .ai-mode-page .ai-step-indicator.active .ai-step-label,
html[data-flyup-theme="dark"] .ai-mode-page .ai-step-indicator.completed .ai-step-label {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    font-weight: 800 !important;
}

/* =====================================================================
   Phase18D28 — Inspiration card rating visibility in dark mode
   The rating pill inside "View card" was white but the score inherited a
   pale/washed text color from dark-mode overrides. Force a high-contrast
   score while keeping the existing capsule layout.
===================================================================== */
html[data-flyup-theme="dark"] .flyup-inspo-feature-card__button {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    border-color: rgba(255, 255, 255, 0.34) !important;
    background: rgba(15, 23, 42, 0.58) !important;
    box-shadow: 0 12px 28px rgba(0, 0, 0, 0.24) !important;
}

html[data-flyup-theme="dark"] .flyup-inspo-feature-card__button strong,
html[data-flyup-theme="dark"] .flyup-inspo-feature-card__button .flyup-inspo-score,
html[data-flyup-theme="dark"] .flyup-inspo-feature-card__button [class*="score"],
html[data-flyup-theme="dark"] .flyup-inspo-feature-card__button [class*="rating"] {
    background: #ffffff !important;
    color: #0f172a !important;
    -webkit-text-fill-color: #0f172a !important;
    opacity: 1 !important;
    text-shadow: none !important;
    font-weight: 950 !important;
}

html[data-flyup-theme="dark"] .flyup-inspiration-card__rating {
    background: #ffffff !important;
    color: #0f172a !important;
    -webkit-text-fill-color: #0f172a !important;
    opacity: 1 !important;
    text-shadow: none !important;
}

/* =====================================================================
   Phase18D29 — Tablet / GSM content pass
   Scope intentionally excludes the two menus:
   - no header/menu structural changes
   - no dashboard/sidebar/mobile navigation changes
   This block only improves page content, cards, forms, reports and modals
   on tablet and phone layouts.
===================================================================== */
@media screen and (max-width: 1180px) {
    .homepage-hero .hero-shell,
    .homepage-modes .home-modes-grid,
    .homepage-report-preview .report-preview,
    .homepage-travel-budget .travel-budget-home-card,
    .flyup-inspirations-page .flyup-inspirations-body-grid,
    .flyup-blog-page .flyup-blog-layout,
    .flyup-travel-budget-page .travel-budget-layout,
    .manual-planner-page .manual-planner-layout,
    .manual-planner-page .manual-planner-top-grid,
    .flyup-dashboard-page .flyup-dashboard-content-grid,
    .flyup-dashboard-page .flyup-dashboard-stats,
    .flyup-pricing-page .pricing-grid,
    .flyup-pricing-page .pricing-grid--two {
        grid-template-columns: 1fr !important;
    }

    .homepage-hero__content,
    .homepage-hero__description,
    .homepage-hero__title,
    .section-title--left,
    .section-subtitle--left,
    .travel-budget-home-card__content .section-title,
    .travel-budget-home-card__content .section-subtitle {
        max-width: 100% !important;
    }

    .flyup-page > .container,
    .homepage-hero .container,
    .homepage-modes .container,
    .homepage-travel-budget .container,
    .homepage-report-preview .container,
    .homepage-pricing .container,
    .homepage-testimonials .container,
    .flyup-dashboard-page > .container,
    .ai-mode-page > .container,
    .manual-planner-page > .container,
    .flyup-travel-budget-page > .container,
    .flyup-pricing-page > .container {
        width: min(calc(100% - 28px), 980px) !important;
        max-width: min(calc(100% - 28px), 980px) !important;
    }

    .flyup-inspirations-page .flyup-inspirations-sidebar,
    .flyup-blog-page .flyup-blog-sidebar {
        position: static !important;
        width: 100% !important;
        max-width: 100% !important;
    }

    .flyup-inspirations-page .flyup-inspirations-grid,
    .flyup-blog-page .flyup-blog-grid,
    .homepage-sample-itineraries .sample-itineraries-grid,
    .benefits-grid,
    .steps-grid,
    .pricing-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .flyup-inspiration-card,
    .flyup-blog-card,
    .home-mode-card,
    .benefit-card,
    .step-card,
    .pricing-card,
    .flyup-dashboard-section,
    .travel-budget-card,
    .manual-sidebar-card,
    .ai-form-shell {
        min-width: 0 !important;
    }
}

@media screen and (max-width: 760px) {
    html,
    body {
        overflow-x: hidden !important;
    }

    .flyup-page > .container,
    .homepage-hero .container,
    .homepage-modes .container,
    .homepage-travel-budget .container,
    .homepage-report-preview .container,
    .homepage-pricing .container,
    .homepage-testimonials .container,
    .flyup-dashboard-page > .container,
    .ai-mode-page > .container,
    .manual-planner-page > .container,
    .flyup-travel-budget-page > .container,
    .flyup-pricing-page > .container {
        width: min(calc(100% - 18px), 540px) !important;
        max-width: min(calc(100% - 18px), 540px) !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    .homepage-hero,
    .homepage-modes,
    .homepage-how-it-works,
    .homepage-report-preview,
    .homepage-travel-budget,
    .homepage-pricing,
    .homepage-testimonials,
    .homepage-final-cta,
    .flyup-inspirations-hero,
    .flyup-inspirations-content,
    .flyup-blog-page,
    .flyup-travel-budget-page,
    .manual-planner-page,
    .ai-mode-page {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    .homepage-hero__title,
    .section-title,
    .section-title--left,
    .flyup-inspirations-hero h1,
    .flyup-blog-page h1,
    .ai-page-header h1,
    .manual-planner-header h1,
    .travel-budget-hero h1,
    .flyup-dashboard-page h1 {
        font-size: clamp(2rem, 9vw, 3.1rem) !important;
        line-height: 1.05 !important;
        letter-spacing: -0.045em !important;
        overflow-wrap: anywhere !important;
    }

    .homepage-hero__description,
    .section-subtitle,
    .section-subtitle--left,
    .flyup-inspirations-hero p,
    .flyup-blog-page p,
    .ai-page-header p,
    .manual-planner-header p,
    .travel-budget-hero p,
    .flyup-dashboard-page p {
        font-size: 0.96rem !important;
        line-height: 1.55 !important;
    }

    .homepage-hero__actions,
    .travel-budget-home-card__actions,
    .final-cta-card__actions,
    .flyup-inspirations-filters__actions,
    .flyup-inspiration-card__bottom,
    .flyup-blog-card__actions,
    .flyup-pricing-card .pricing-card__actions {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 0.7rem !important;
    }

    .homepage-hero__actions .btn,
    .travel-budget-home-card__actions .btn,
    .final-cta-card__actions .btn,
    .flyup-inspirations-filters__actions .btn,
    .flyup-inspiration-card__button,
    .flyup-pricing-card .btn,
    .ai-form-nav .btn,
    .manual-add-day-btn,
    .travel-budget-card .btn {
        width: 100% !important;
        min-height: 48px !important;
        justify-content: center !important;
        white-space: normal !important;
    }

    .flyup-inspirations-page .flyup-inspirations-grid,
    .flyup-blog-page .flyup-blog-grid,
    .homepage-sample-itineraries .sample-itineraries-grid,
    .benefits-grid,
    .steps-grid,
    .pricing-grid,
    .pricing-grid--two,
    .report-preview__metrics,
    .hero-stats,
    .ai-form-grid,
    .ai-checkbox-grid,
    .ai-chip-grid,
    .manual-trip-meta-grid,
    .manual-planner-top-grid,
    .travel-budget-setup-grid,
    .travel-budget-public-grid,
    .travel-budget-summary-grid,
    .travel-budget-share-grid,
    .flyup-dashboard-stats,
    .my-trips-grid {
        grid-template-columns: 1fr !important;
    }

    .card,
    .home-mode-card,
    .benefit-card,
    .step-card,
    .pricing-card,
    .final-cta-card,
    .report-preview-luxury,
    .travel-budget-home-card,
    .travel-budget-mini-card,
    .travel-budget-mini-line,
    .homepage-testimonial-card,
    .flyup-inspiration-card,
    .flyup-blog-card,
    .flyup-dashboard-section,
    .flyup-dashboard-stat,
    .manual-sidebar-card,
    .manual-day-card,
    .travel-budget-card,
    .ai-form-shell,
    .ai-progress-wrap,
    .ai-review-box,
    .ai-info-box {
        border-radius: 22px !important;
    }

    .home-mode-card,
    .benefit-card,
    .step-card,
    .pricing-card,
    .final-cta-card,
    .report-preview-luxury__body,
    .travel-budget-home-card,
    .homepage-testimonial-card,
    .flyup-inspiration-card__body,
    .flyup-blog-card__body,
    .flyup-dashboard-section,
    .manual-sidebar-card,
    .manual-day-card,
    .travel-budget-card,
    .ai-form-step,
    .ai-review-box,
    .ai-info-box {
        padding: 1rem !important;
    }

    .flyup-inspiration-card__visual,
    .flyup-blog-card__image,
    .report-preview-luxury__media {
        min-height: 190px !important;
        height: auto !important;
    }

    .flyup-inspiration-card__visual img,
    .flyup-blog-card__image img,
    .report-preview-luxury__media img {
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
    }

    .flyup-inspiration-card__facts,
    .flyup-inspirations-hero__metrics,
    .travel-budget-home-card__preview,
    .manual-summary-card__head,
    .travel-budget-mini-line,
    .travel-budget-participant-row,
    .travel-budget-expense-row {
        grid-template-columns: 1fr !important;
    }

    .flyup-destination-modal__dialog,
    .ai-price-modal__dialog {
        width: min(calc(100% - 18px), 540px) !important;
        max-height: calc(100svh - 24px) !important;
        overflow: auto !important;
        border-radius: 24px !important;
    }

    .flyup-destination-modal__media {
        min-height: 190px !important;
        max-height: 240px !important;
    }

    .flyup-destination-modal__content,
    .ai-price-modal__dialog {
        padding: 1rem !important;
    }

    .manual-activity-row,
    .manual-activity-item {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 0.65rem !important;
        padding: 0.8rem !important;
    }

    .manual-activity-row input,
    .manual-activity-row textarea,
    .manual-activity-row select,
    .manual-activity-item input,
    .manual-activity-item textarea,
    .manual-activity-item select,
    .travel-budget-card input,
    .travel-budget-card select,
    .travel-budget-card textarea,
    .ai-form-shell input,
    .ai-form-shell select,
    .ai-form-shell textarea {
        width: 100% !important;
        min-width: 0 !important;
        font-size: 0.95rem !important;
    }

    .manual-days-timeline,
    .travel-budget-table-wrap,
    .flyup-dashboard-table-wrap,
    .flyup-report-view,
    .flyup-inspiration-report-shell {
        max-width: 100% !important;
        overflow-x: auto !important;
    }

    .flyup-report-view--inspiration .flyup-inspiration-compare__grid,
    .flyup-report-view--planner .flyup-report-planner-kpis,
    .flyup-inspiration-details-grid,
    .flyup-inspiration-decision-strip,
    .flyup-report-view .ai-generated-grid {
        grid-template-columns: 1fr !important;
    }

    .flyup-report-view--inspiration .flyup-report-hero,
    .flyup-report-view--planner .flyup-report-hero {
        padding: 1rem !important;
        border-radius: 22px !important;
    }

    .flyup-report-view--inspiration .flyup-report-hero h1,
    .flyup-report-view--planner .flyup-report-hero h1 {
        font-size: clamp(1.65rem, 7.6vw, 2.4rem) !important;
        line-height: 1.08 !important;
    }

    .flyup-ai-accordion__summary {
        padding: 1rem !important;
        font-size: 1rem !important;
    }

    .flyup-ai-accordion__content {
        padding: 0 1rem 1rem !important;
    }
}

@media screen and (max-width: 760px) and (orientation: landscape) {
    .ai-form-nav {
        bottom: calc(64px + env(safe-area-inset-bottom, 0px)) !important;
    }

    .ai-form-step {
        padding-bottom: calc(122px + env(safe-area-inset-bottom, 0px)) !important;
    }
}

@media screen and (max-width: 1180px) {
    html[data-flyup-theme="dark"] :is(
        .homepage-mobile-accordion__content,
        .homepage-mobile-accordion__content > section,
        .flyup-home-mobile-app__ai-card,
        .flyup-home-mobile-app__item,
        .home-mode-card,
        .benefit-card,
        .step-card,
        .pricing-card,
        .report-preview-luxury,
        .travel-budget-home-card,
        .travel-budget-mini-card,
        .travel-budget-mini-line,
        .homepage-testimonial-card,
        .flyup-inspiration-card,
        .flyup-inspirations-direct-start,
        .flyup-inspirations-filters,
        .flyup-inspirations-how,
        .flyup-blog-card,
        .flyup-blog-sidebar-card,
        .ai-form-shell,
        .ai-mode-option,
        .ai-chip,
        .ai-checkbox-card,
        .ai-period-card,
        .ai-quiz-track-card,
        .ai-review-box,
        .manual-sidebar-card,
        .manual-day-card,
        .manual-activity-row,
        .manual-activity-item,
        .travel-budget-card,
        .travel-budget-public-card,
        .travel-budget-empty-state,
        .flyup-dashboard-section,
        .flyup-dashboard-stat,
        .flyup-my-trip-card,
        .flyup-pricing-card,
        .flyup-legal-card,
        .flyup-contact-card
    ) {
        background:
            radial-gradient(circle at 12% 0%, rgba(56, 189, 248, 0.12), transparent 22rem),
            linear-gradient(135deg, #10213a 0%, #0b1728 100%) !important;
        border-color: rgba(56, 189, 248, 0.30) !important;
        color: #f8fbff !important;
        -webkit-text-fill-color: #f8fbff !important;
        box-shadow:
            0 16px 42px rgba(0,0,0,0.30),
            0 0 0 1px rgba(94,234,212,0.06) inset !important;
    }

    html[data-flyup-theme="dark"] :is(
        .homepage-mobile-accordion__content,
        .flyup-home-mobile-app__ai-card,
        .flyup-home-mobile-app__item,
        .home-mode-card,
        .benefit-card,
        .step-card,
        .pricing-card,
        .report-preview-luxury,
        .travel-budget-home-card,
        .travel-budget-mini-card,
        .travel-budget-mini-line,
        .homepage-testimonial-card,
        .flyup-inspiration-card,
        .flyup-inspirations-direct-start,
        .flyup-inspirations-filters,
        .flyup-inspirations-how,
        .flyup-blog-card,
        .ai-form-shell,
        .ai-mode-option,
        .ai-chip,
        .ai-checkbox-card,
        .ai-period-card,
        .ai-quiz-track-card,
        .ai-review-box,
        .manual-sidebar-card,
        .manual-day-card,
        .manual-activity-row,
        .manual-activity-item,
        .travel-budget-card,
        .travel-budget-public-card,
        .travel-budget-empty-state,
        .flyup-dashboard-section,
        .flyup-dashboard-stat,
        .flyup-my-trip-card,
        .flyup-pricing-card,
        .flyup-legal-card,
        .flyup-contact-card
    ) :is(h1,h2,h3,h4,h5,strong,b,label,legend,dt,dd,span,p,small,li,em) {
        color: #f8fbff !important;
        -webkit-text-fill-color: #f8fbff !important;
        opacity: 1 !important;
        text-shadow: none !important;
    }

    html[data-flyup-theme="dark"] :is(
        .homepage-mobile-accordion__content,
        .flyup-home-mobile-app__ai-card,
        .flyup-home-mobile-app__item,
        .home-mode-card,
        .benefit-card,
        .step-card,
        .pricing-card,
        .report-preview-luxury,
        .travel-budget-home-card,
        .homepage-testimonial-card,
        .flyup-inspiration-card,
        .flyup-blog-card,
        .ai-form-shell,
        .manual-day-card,
        .travel-budget-card,
        .flyup-dashboard-section,
        .flyup-my-trip-card,
        .flyup-pricing-card
    ) :is(p,small,li,em,.section-subtitle,.homepage-hero__description,.flyup-inspiration-card__description,.flyup-blog-card__excerpt,.manual-help,.manual-hint) {
        color: #d8e6f6 !important;
        -webkit-text-fill-color: #d8e6f6 !important;
    }

    html[data-flyup-theme="dark"] :is(
        .homepage-mobile-accordion__content,
        .ai-form-shell,
        .manual-planner-page,
        .flyup-travel-budget-page,
        .flyup-pricing-page,
        .flyup-inspirations-page,
        .flyup-blog-page,
        .flyup-dashboard-page
    ) :is(input,select,textarea,.form-control,.manual-input) {
        background: #0b1626 !important;
        color: #f8fbff !important;
        -webkit-text-fill-color: #f8fbff !important;
        border-color: rgba(148, 163, 184, 0.36) !important;
    }

    html[data-flyup-theme="dark"] :is(
        .homepage-mobile-accordion__content,
        .ai-form-shell,
        .manual-planner-page,
        .flyup-travel-budget-page,
        .flyup-pricing-page,
        .flyup-inspirations-page,
        .flyup-blog-page,
        .flyup-dashboard-page
    ) :is(input,textarea,.form-control,.manual-input)::placeholder {
        color: rgba(216, 230, 246, 0.72) !important;
        -webkit-text-fill-color: rgba(216, 230, 246, 0.72) !important;
    }

    html[data-flyup-theme="dark"] .flyup-inspiration-card__rating,
    html[data-flyup-theme="dark"] .flyup-inspo-feature-card__button strong,
    html[data-flyup-theme="dark"] .flyup-inspo-feature-card__button [class*="rating"],
    html[data-flyup-theme="dark"] .flyup-inspo-feature-card__button [class*="score"] {
        background: #ffffff !important;
        color: #0f172a !important;
        -webkit-text-fill-color: #0f172a !important;
        opacity: 1 !important;
    }
}

@media screen and (max-width: 760px) {
    html[data-flyup-theme="dark"] .ai-form-nav,
    html[data-flyup-theme="dark"] .manual-planner-page .manual-mobile-actions,
    html[data-flyup-theme="dark"] .flyup-destination-modal__dialog,
    html[data-flyup-theme="dark"] .ai-price-modal__dialog {
        background: rgba(8, 20, 36, 0.94) !important;
        border-color: rgba(56, 189, 248, 0.34) !important;
        color: #f8fbff !important;
        -webkit-text-fill-color: #f8fbff !important;
    }

    html[data-flyup-theme="dark"] .ai-form-nav .btn,
    html[data-flyup-theme="dark"] .manual-planner-page .manual-mobile-actions .btn {
        color: #ffffff !important;
        -webkit-text-fill-color: #ffffff !important;
    }
}

/* =====================================================================
   STEP53 Phase18D30 — GSM / Tablet dark-mode content readability pass
   Scope: content only. Header/top mobile bar and bottom app menu are not edited.
===================================================================== */

@media screen and (max-width: 1180px) {
    html[data-flyup-theme="dark"] body.flyup-account-app-shell,
    html[data-flyup-theme="dark"] body.flyup-mobile-public-app-shell,
    html[data-flyup-theme="dark"] body.flyup-mobile-app-home-shell {
        background:
            radial-gradient(circle at 8% 0%, rgba(14, 165, 233, .16), transparent 30rem),
            radial-gradient(circle at 96% 4%, rgba(20, 184, 166, .14), transparent 28rem),
            linear-gradient(180deg, #06111f 0%, #0b1728 100%) !important;
    }

    /* Mobile dashboard/menu cards: keep the app-like pale cards, but force dark readable text. */
    html[data-flyup-theme="dark"] :is(
        .flyup-dashboard-mobile-card,
        .flyup-mobile-menu-card,
        .flyup-account-mobile-card,
        .flyup-mobile-app-card,
        .flyup-mobile-card-link,
        .flyup-mobile-entry-card
    ) {
        background: linear-gradient(135deg, rgba(248, 251, 255, .98), rgba(226, 240, 248, .96)) !important;
        border-color: rgba(56, 189, 248, .28) !important;
        color: #0f172a !important;
        -webkit-text-fill-color: #0f172a !important;
        box-shadow: 0 16px 38px rgba(0, 0, 0, .22) !important;
    }

    html[data-flyup-theme="dark"] :is(
        .flyup-dashboard-mobile-card,
        .flyup-mobile-menu-card,
        .flyup-account-mobile-card,
        .flyup-mobile-app-card,
        .flyup-mobile-card-link,
        .flyup-mobile-entry-card
    ) :is(h1,h2,h3,h4,strong,b,span,p,small,em,li) {
        color: #0f172a !important;
        -webkit-text-fill-color: #0f172a !important;
        opacity: 1 !important;
        text-shadow: none !important;
    }

    html[data-flyup-theme="dark"] :is(
        .flyup-dashboard-mobile-card,
        .flyup-mobile-menu-card,
        .flyup-account-mobile-card,
        .flyup-mobile-app-card,
        .flyup-mobile-card-link,
        .flyup-mobile-entry-card
    ) :is(p,small,.card-subtitle,.flyup-dashboard-mobile-card__text) {
        color: #475569 !important;
        -webkit-text-fill-color: #475569 !important;
    }

    /* AI choice cards on GSM/tablet: readable text inside the white cards. */
    html[data-flyup-theme="dark"] .flyup-ai-mobile-choice {
        background:
            radial-gradient(circle at 15% 0%, rgba(56, 189, 248, .12), transparent 18rem),
            linear-gradient(135deg, #0f2138 0%, #0a1728 100%) !important;
        color: #f8fbff !important;
        -webkit-text-fill-color: #f8fbff !important;
    }

    html[data-flyup-theme="dark"] .flyup-ai-mobile-choice :is(h1,h2,h3,p,.flyup-ai-mobile-choice__eyebrow) {
        color: #f8fbff !important;
        -webkit-text-fill-color: #f8fbff !important;
        opacity: 1 !important;
    }

    html[data-flyup-theme="dark"] .flyup-ai-mobile-choice__card {
        background: linear-gradient(180deg, #ffffff, #eef8ff) !important;
        border-color: rgba(56, 189, 248, .28) !important;
        color: #0f172a !important;
        -webkit-text-fill-color: #0f172a !important;
        box-shadow: 0 16px 36px rgba(0, 0, 0, .20) !important;
    }

    html[data-flyup-theme="dark"] .flyup-ai-mobile-choice__card :is(strong,small,span,p) {
        color: #0f172a !important;
        -webkit-text-fill-color: #0f172a !important;
        opacity: 1 !important;
        text-shadow: none !important;
    }

    html[data-flyup-theme="dark"] .flyup-ai-mobile-choice__card small {
        color: #475569 !important;
        -webkit-text-fill-color: #475569 !important;
    }

    /* Saved AI reports on phone/tablet: avoid content being hidden by fixed app chrome. */
    html[data-flyup-theme="dark"] .ai-result-shell--saved,
    html[data-flyup-theme="dark"] .ai-result-shell--html-editor,
    html[data-flyup-theme="dark"] .ai-report-stage {
        scroll-margin-top: 92px !important;
    }

    html[data-flyup-theme="dark"] .ai-report-stage,
    html[data-flyup-theme="dark"] .ai-report-content {
        padding-bottom: calc(108px + env(safe-area-inset-bottom, 0px)) !important;
    }

    /* Report cards/accordions: keep the clean light mobile cards, but use dark typography. */
    html[data-flyup-theme="dark"] .ai-report-stage .flyup-report-view,
    html[data-flyup-theme="dark"] .ai-result-shell .flyup-report-view,
    html[data-flyup-theme="dark"] .flyup-mobile-html-report-stage .flyup-report-view {
        background: linear-gradient(180deg, #f8fbff 0%, #eaf6ff 100%) !important;
        border-color: rgba(56, 189, 248, .32) !important;
        color: #0f172a !important;
        -webkit-text-fill-color: #0f172a !important;
    }

    html[data-flyup-theme="dark"] .ai-report-stage .flyup-ai-accordion,
    html[data-flyup-theme="dark"] .ai-result-shell .flyup-ai-accordion,
    html[data-flyup-theme="dark"] .flyup-mobile-html-report-stage .flyup-ai-accordion {
        background: #ffffff !important;
        border-color: rgba(56, 189, 248, .25) !important;
        color: #0f172a !important;
        -webkit-text-fill-color: #0f172a !important;
        box-shadow: 0 10px 28px rgba(15, 23, 42, .08) !important;
    }

    html[data-flyup-theme="dark"] .ai-report-stage .flyup-ai-accordion__summary,
    html[data-flyup-theme="dark"] .ai-result-shell .flyup-ai-accordion__summary,
    html[data-flyup-theme="dark"] .flyup-mobile-html-report-stage .flyup-ai-accordion__summary,
    html[data-flyup-theme="dark"] .flyup-mobile-html-report-stage details.flyup-ai-accordion > summary {
        background: linear-gradient(180deg, #ffffff 0%, #eef8ff 100%) !important;
        color: #0f172a !important;
        -webkit-text-fill-color: #0f172a !important;
        opacity: 1 !important;
    }

    html[data-flyup-theme="dark"] .ai-report-stage .flyup-ai-accordion__summary :is(h1,h2,h3,h4,strong,span,p),
    html[data-flyup-theme="dark"] .ai-result-shell .flyup-ai-accordion__summary :is(h1,h2,h3,h4,strong,span,p),
    html[data-flyup-theme="dark"] .flyup-mobile-html-report-stage .flyup-ai-accordion__summary :is(h1,h2,h3,h4,strong,span,p) {
        color: #0f172a !important;
        -webkit-text-fill-color: #0f172a !important;
        opacity: 1 !important;
    }

    html[data-flyup-theme="dark"] .ai-report-stage .flyup-ai-accordion__content,
    html[data-flyup-theme="dark"] .ai-result-shell .flyup-ai-accordion__content,
    html[data-flyup-theme="dark"] .flyup-mobile-html-report-stage .flyup-ai-accordion__content {
        background: #ffffff !important;
        color: #1e293b !important;
        -webkit-text-fill-color: #1e293b !important;
    }

    html[data-flyup-theme="dark"] .ai-report-stage .flyup-ai-accordion__content :is(p,li,span,small,em,div,td,th),
    html[data-flyup-theme="dark"] .ai-result-shell .flyup-ai-accordion__content :is(p,li,span,small,em,div,td,th),
    html[data-flyup-theme="dark"] .flyup-mobile-html-report-stage .flyup-ai-accordion__content :is(p,li,span,small,em,div,td,th) {
        color: #1e293b !important;
        -webkit-text-fill-color: #1e293b !important;
        opacity: 1 !important;
        text-shadow: none !important;
    }

    html[data-flyup-theme="dark"] .ai-report-stage .flyup-ai-accordion__content :is(h1,h2,h3,h4,strong,b),
    html[data-flyup-theme="dark"] .ai-result-shell .flyup-ai-accordion__content :is(h1,h2,h3,h4,strong,b),
    html[data-flyup-theme="dark"] .flyup-mobile-html-report-stage .flyup-ai-accordion__content :is(h1,h2,h3,h4,strong,b) {
        color: #0f172a !important;
        -webkit-text-fill-color: #0f172a !important;
        opacity: 1 !important;
    }
}

@media screen and (max-width: 760px) {
    /* Keep room for fixed mobile header/bottom bar without touching the bars themselves. */
    body.flyup-account-app-shell .ai-mode-container,
    body.flyup-account-app-shell .flyup-dashboard-main,
    body.flyup-account-app-shell .flyup-dashboard-main--guest {
        padding-bottom: calc(108px + env(safe-area-inset-bottom, 0px)) !important;
    }

    body.flyup-account-app-shell .ai-result-shell--saved {
        margin-top: .35rem !important;
    }

    /* Compact the AI quiz on GSM. */
    html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-progress-wrap {
        margin-top: .35rem !important;
        margin-bottom: .7rem !important;
        padding: .62rem .48rem !important;
        border-radius: 22px !important;
        background: rgba(10, 23, 40, .96) !important;
        border-color: rgba(56, 189, 248, .36) !important;
    }

    html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-step-label,
    html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-step-dot {
        color: #0f172a !important;
        -webkit-text-fill-color: #0f172a !important;
        opacity: 1 !important;
    }

    html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-step-indicator.active .ai-step-dot,
    html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-step-indicator.active .ai-step-label {
        color: #ffffff !important;
        -webkit-text-fill-color: #ffffff !important;
    }

    html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active {
        min-height: 0 !important;
        padding-bottom: calc(118px + env(safe-area-inset-bottom, 0px)) !important;
    }

    html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .flyup-mobile-question-meta {
        position: static !important;
        justify-content: flex-end !important;
        margin: 0 0 .45rem !important;
        padding: 0 !important;
        background: transparent !important;
        border: 0 !important;
        box-shadow: none !important;
    }

    html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .flyup-mobile-question-meta strong {
        min-height: 26px !important;
        padding: .32rem .58rem !important;
        border-radius: 999px !important;
        font-size: .66rem !important;
        line-height: 1 !important;
        font-weight: 900 !important;
    }

    html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .flyup-mobile-question-meta strong.is-required {
        background: rgba(239, 68, 68, .18) !important;
        color: #fecaca !important;
        -webkit-text-fill-color: #fecaca !important;
        border: 1px solid rgba(248, 113, 113, .28) !important;
    }

    html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .flyup-mobile-question-meta strong.is-optional {
        background: rgba(148, 163, 184, .18) !important;
        color: #e2e8f0 !important;
        -webkit-text-fill-color: #e2e8f0 !important;
        border: 1px solid rgba(148, 163, 184, .28) !important;
    }

    html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .flyup-field.flyup-mobile-question-current,
    html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .ai-checkbox-grid.flyup-mobile-question-current,
    html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .ai-mode-toggle.flyup-mobile-question-current,
    html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .ai-service-toggle.flyup-mobile-question-current {
        margin: 0 0 .75rem !important;
        padding: .92rem !important;
        border-radius: 24px !important;
        background: linear-gradient(180deg, #ffffff 0%, #eef8ff 100%) !important;
        border: 1px solid rgba(56, 189, 248, .28) !important;
        color: #0f172a !important;
        -webkit-text-fill-color: #0f172a !important;
        box-shadow: 0 14px 34px rgba(0,0,0,.18) !important;
    }

    html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .flyup-mobile-question-current :is(label,legend,h1,h2,h3,h4,strong,b,span,p,small,li) {
        color: #0f172a !important;
        -webkit-text-fill-color: #0f172a !important;
        opacity: 1 !important;
        text-shadow: none !important;
    }

    html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .flyup-mobile-question-current :is(small,p,.ai-inline-note) {
        color: #475569 !important;
        -webkit-text-fill-color: #475569 !important;
    }

    html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .flyup-field.flyup-mobile-question-current input:not([type="checkbox"]):not([type="radio"]),
    html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .flyup-field.flyup-mobile-question-current select,
    html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .flyup-field.flyup-mobile-question-current textarea {
        background: #ffffff !important;
        color: #0f172a !important;
        -webkit-text-fill-color: #0f172a !important;
        border-color: rgba(148, 163, 184, .46) !important;
        box-shadow: none !important;
    }

    html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .flyup-field.flyup-mobile-question-current input::placeholder,
    html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .flyup-field.flyup-mobile-question-current textarea::placeholder {
        color: rgba(71, 85, 105, .72) !important;
        -webkit-text-fill-color: rgba(71, 85, 105, .72) !important;
    }

    html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-nav {
        margin-top: .55rem !important;
        padding: .7rem !important;
        border-radius: 24px !important;
        background: rgba(7, 18, 32, .95) !important;
        border-color: rgba(56, 189, 248, .28) !important;
        position: static !important;
    }

    html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-nav .btn {
        min-height: 54px !important;
        border-radius: 18px !important;
        font-size: 1.12rem !important;
        line-height: 1 !important;
    }

    /* Report hero/accordions in saved reports: compact and readable on GSM. */
    html[data-flyup-theme="dark"] .ai-result-shell .flyup-report-hero,
    html[data-flyup-theme="dark"] .flyup-mobile-html-report-stage .flyup-report-hero {
        border-radius: 26px !important;
        padding: 1rem !important;
        margin-top: .35rem !important;
    }

    html[data-flyup-theme="dark"] .ai-result-shell .flyup-report-hero h1,
    html[data-flyup-theme="dark"] .flyup-mobile-html-report-stage .flyup-report-hero h1 {
        font-size: clamp(1.45rem, 7vw, 2.05rem) !important;
        line-height: 1.08 !important;
    }

    html[data-flyup-theme="dark"] .ai-result-shell .flyup-report-hero p,
    html[data-flyup-theme="dark"] .flyup-mobile-html-report-stage .flyup-report-hero p {
        color: rgba(255,255,255,.90) !important;
        -webkit-text-fill-color: rgba(255,255,255,.90) !important;
        font-size: .94rem !important;
    }

    html[data-flyup-theme="dark"] .ai-result-shell .flyup-report-hero__pill,
    html[data-flyup-theme="dark"] .flyup-mobile-html-report-stage .flyup-report-hero__pill {
        color: #0f172a !important;
        -webkit-text-fill-color: #0f172a !important;
    }

    html[data-flyup-theme="dark"] .ai-result-shell .flyup-ai-accordion__content,
    html[data-flyup-theme="dark"] .flyup-mobile-html-report-stage .flyup-ai-accordion__content {
        font-size: .95rem !important;
        line-height: 1.55 !important;
    }
}

@media screen and (min-width: 761px) and (max-width: 1180px) {
    /* Tablet: 2-column where useful, but no overflow and no invisible text. */
    html[data-flyup-theme="dark"] .ai-mode-page .container,
    html[data-flyup-theme="dark"] .flyup-dashboard-main,
    html[data-flyup-theme="dark"] .ai-mode-container {
        max-width: min(100%, 960px) !important;
    }

    html[data-flyup-theme="dark"] .ai-form-shell,
    html[data-flyup-theme="dark"] .ai-progress-wrap,
    html[data-flyup-theme="dark"] .ai-review-box,
    html[data-flyup-theme="dark"] .flyup-ai-mobile-choice {
        border-color: rgba(56, 189, 248, .34) !important;
    }

    html[data-flyup-theme="dark"] .ai-form-grid,
    html[data-flyup-theme="dark"] .ai-checkbox-grid,
    html[data-flyup-theme="dark"] .ai-chip-grid,
    html[data-flyup-theme="dark"] .flyup-inspiration-compare__grid,
    html[data-flyup-theme="dark"] .flyup-inspiration-details-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    html[data-flyup-theme="dark"] .ai-form-shell :is(.flyup-field,.ai-period-card,.ai-detail-panel,.ai-checkbox-card,.ai-chip,.ai-review-box) :is(label,h1,h2,h3,h4,strong,span,p,small,li) {
        color: #f8fbff !important;
        -webkit-text-fill-color: #f8fbff !important;
        opacity: 1 !important;
    }
}

/* STEP53 Phase18D31 — GSM/Tablette dark final pass
   Fixes: bottom app bar color, dashboard mobile cards, AI quiz nav alignment,
   input/question containers, and saved AI report readability in dark mode. */
@media screen and (max-width: 1180px) {
  html[data-flyup-theme="dark"] body.flyup-account-app-shell {
    background: #061523 !important;
    color: #f8fbff !important;
  }

  /* Bottom mobile app menu: no more grey bar in dark mode. */
  html[data-flyup-theme="dark"] .flyup-mobile-app-nav {
    background: linear-gradient(180deg, rgba(12, 28, 48, .98), rgba(7, 18, 32, .98)) !important;
    border-color: rgba(56, 189, 248, .34) !important;
    box-shadow: 0 18px 46px rgba(0,0,0,.42), 0 0 22px rgba(56,189,248,.12) !important;
    backdrop-filter: blur(22px) !important;
  }

  html[data-flyup-theme="dark"] .flyup-mobile-app-nav__item {
    color: #c8d8ea !important;
    -webkit-text-fill-color: #c8d8ea !important;
    background: transparent !important;
  }

  html[data-flyup-theme="dark"] .flyup-mobile-app-nav__item :is(span,small,strong),
  html[data-flyup-theme="dark"] .flyup-mobile-app-nav__label {
    color: #c8d8ea !important;
    -webkit-text-fill-color: #c8d8ea !important;
    opacity: 1 !important;
  }

  html[data-flyup-theme="dark"] .flyup-mobile-app-nav__icon,
  html[data-flyup-theme="dark"] .flyup-mobile-app-nav__icon svg,
  html[data-flyup-theme="dark"] .flyup-mobile-app-nav__icon svg * {
    color: #c8d8ea !important;
    fill: none !important;
    stroke: #c8d8ea !important;
    opacity: 1 !important;
  }

  html[data-flyup-theme="dark"] .flyup-mobile-app-nav__item.is-active {
    background: linear-gradient(135deg, rgba(56,189,248,.22), rgba(45,212,191,.16)) !important;
    color: #38bdf8 !important;
    -webkit-text-fill-color: #38bdf8 !important;
    box-shadow: inset 0 0 0 1px rgba(56,189,248,.18), 0 10px 26px rgba(56,189,248,.10) !important;
  }

  html[data-flyup-theme="dark"] .flyup-mobile-app-nav__item.is-active :is(span,small,strong),
  html[data-flyup-theme="dark"] .flyup-mobile-app-nav__item.is-active .flyup-mobile-app-nav__label {
    color: #38bdf8 !important;
    -webkit-text-fill-color: #38bdf8 !important;
  }

  html[data-flyup-theme="dark"] .flyup-mobile-app-nav__item.is-active .flyup-mobile-app-nav__icon svg,
  html[data-flyup-theme="dark"] .flyup-mobile-app-nav__item.is-active .flyup-mobile-app-nav__icon svg * {
    stroke: #38bdf8 !important;
    color: #38bdf8 !important;
  }

  /* Dashboard/menu cards inside the mobile account home. */
  html[data-flyup-theme="dark"] :is(.flyup-dashboard-mobile-accordion__trigger,.flyup-dashboard-mobile-card,.flyup-home-mobile-app__item,.flyup-home-mobile-app__ai-card > summary) {
    background: linear-gradient(180deg, rgba(16,33,58,.98), rgba(9,22,38,.98)) !important;
    border: 1px solid rgba(56,189,248,.28) !important;
    color: #f8fbff !important;
    -webkit-text-fill-color: #f8fbff !important;
    box-shadow: 0 14px 34px rgba(0,0,0,.30) !important;
  }

  html[data-flyup-theme="dark"] :is(.flyup-dashboard-mobile-accordion__trigger,.flyup-dashboard-mobile-card,.flyup-home-mobile-app__item,.flyup-home-mobile-app__ai-card > summary) :is(h1,h2,h3,h4,strong,span,p,small) {
    color: #f8fbff !important;
    -webkit-text-fill-color: #f8fbff !important;
    opacity: 1 !important;
    text-shadow: none !important;
  }

  html[data-flyup-theme="dark"] :is(.flyup-dashboard-mobile-accordion__trigger,.flyup-dashboard-mobile-card,.flyup-home-mobile-app__item,.flyup-home-mobile-app__ai-card > summary) small,
  html[data-flyup-theme="dark"] :is(.flyup-dashboard-mobile-accordion__trigger,.flyup-dashboard-mobile-card,.flyup-home-mobile-app__item,.flyup-home-mobile-app__ai-card > summary) p {
    color: #c8d8ea !important;
    -webkit-text-fill-color: #c8d8ea !important;
  }

  html[data-flyup-theme="dark"] :is(.flyup-dashboard-mobile-accordion__icon,.flyup-home-mobile-app__icon,.flyup-home-mobile-app__plus) {
    background: rgba(56,189,248,.14) !important;
    color: #38bdf8 !important;
    -webkit-text-fill-color: #38bdf8 !important;
    border-color: rgba(56,189,248,.24) !important;
  }

  /* AI mode first choice cards. */
  html[data-flyup-theme="dark"] .flyup-ai-mobile-choice__card,
  html[data-flyup-theme="dark"] .ai-service-option,
  html[data-flyup-theme="dark"] .ai-mode-option {
    background: linear-gradient(180deg, rgba(16,33,58,.98), rgba(9,22,38,.98)) !important;
    border: 1px solid rgba(56,189,248,.30) !important;
    color: #f8fbff !important;
    -webkit-text-fill-color: #f8fbff !important;
    box-shadow: 0 14px 34px rgba(0,0,0,.30) !important;
  }

  html[data-flyup-theme="dark"] .flyup-ai-mobile-choice__card :is(strong,span,p,small),
  html[data-flyup-theme="dark"] .ai-service-option :is(strong,span,p,small),
  html[data-flyup-theme="dark"] .ai-mode-option :is(strong,span,p,small) {
    color: #f8fbff !important;
    -webkit-text-fill-color: #f8fbff !important;
    opacity: 1 !important;
  }

  html[data-flyup-theme="dark"] .flyup-ai-mobile-choice__card small,
  html[data-flyup-theme="dark"] .ai-service-option small,
  html[data-flyup-theme="dark"] .ai-mode-option small {
    color: #c8d8ea !important;
    -webkit-text-fill-color: #c8d8ea !important;
  }

  /* AI quiz: center the nav, restore both arrows, and stop left overflow. */
  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-nav {
    position: static !important;
    left: auto !important;
    right: auto !important;
    bottom: auto !important;
    transform: none !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: .8rem auto 0 !important;
    padding: .72rem !important;
    display: grid !important;
    grid-template-columns: minmax(0,1fr) minmax(0,1fr) !important;
    gap: .72rem !important;
    overflow: visible !important;
    border-radius: 26px !important;
    background: rgba(7,18,32,.96) !important;
    border: 1px solid rgba(56,189,248,.34) !important;
    box-shadow: 0 14px 34px rgba(0,0,0,.26) !important;
  }

  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-nav .btn {
    width: 100% !important;
    min-width: 0 !important;
    min-height: 58px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 20px !important;
    font-size: 1.35rem !important;
    line-height: 1 !important;
    opacity: 1 !important;
    transform: none !important;
    overflow: visible !important;
  }

  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-nav .btn:first-child {
    background: rgba(8,20,36,.94) !important;
    color: #e2e8f0 !important;
    -webkit-text-fill-color: #e2e8f0 !important;
    border: 1px solid rgba(148,163,184,.22) !important;
  }

  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-nav .btn:last-child,
  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-nav .btn-primary {
    background: linear-gradient(135deg, #0ea5e9, #14b8a6) !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    border: 1px solid rgba(94,234,212,.28) !important;
    box-shadow: 0 14px 32px rgba(14,165,233,.24) !important;
  }

  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-nav .btn[disabled],
  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-nav .btn.is-disabled {
    opacity: .44 !important;
    color: #94a3b8 !important;
    -webkit-text-fill-color: #94a3b8 !important;
    box-shadow: none !important;
  }

  /* AI quiz current question: dark card + dark input with luminous outline. */
  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .flyup-field.flyup-mobile-question-current,
  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .ai-checkbox-grid.flyup-mobile-question-current,
  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .ai-chip-grid.flyup-mobile-question-current,
  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .ai-mode-toggle.flyup-mobile-question-current,
  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .ai-service-toggle.flyup-mobile-question-current {
    background: linear-gradient(180deg, rgba(16,33,58,.98), rgba(8,20,36,.98)) !important;
    border: 1px solid rgba(56,189,248,.36) !important;
    color: #f8fbff !important;
    -webkit-text-fill-color: #f8fbff !important;
    box-shadow: 0 16px 42px rgba(0,0,0,.30), 0 0 20px rgba(56,189,248,.10) !important;
  }

  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .flyup-mobile-question-current :is(label,legend,h1,h2,h3,h4,strong,b,span,p,small,li) {
    color: #f8fbff !important;
    -webkit-text-fill-color: #f8fbff !important;
    opacity: 1 !important;
  }

  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .flyup-mobile-question-current :is(small,p,.ai-inline-note) {
    color: #c8d8ea !important;
    -webkit-text-fill-color: #c8d8ea !important;
  }

  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .flyup-field.flyup-mobile-question-current input:not([type="checkbox"]):not([type="radio"]),
  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .flyup-field.flyup-mobile-question-current select,
  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .flyup-field.flyup-mobile-question-current textarea {
    min-height: 58px !important;
    border-radius: 18px !important;
    background: rgba(5,15,28,.98) !important;
    color: #f8fbff !important;
    -webkit-text-fill-color: #f8fbff !important;
    border: 1px solid rgba(56,189,248,.34) !important;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.03), 0 0 0 3px rgba(56,189,248,.08) !important;
  }

  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .flyup-field.flyup-mobile-question-current input::placeholder,
  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .flyup-field.flyup-mobile-question-current textarea::placeholder {
    color: #94a3b8 !important;
    -webkit-text-fill-color: #94a3b8 !important;
  }

  /* AI quiz stepper labels in dark mode. */
  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-step-label {
    color: #c8d8ea !important;
    -webkit-text-fill-color: #c8d8ea !important;
  }

  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-step-indicator.active .ai-step-label {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
  }

  /* Saved AI reports on GSM/tablet: use a consistent dark card system. */
  html[data-flyup-theme="dark"] :is(.ai-result-shell,.ai-report-stage,.flyup-mobile-html-report-stage) .flyup-report-view,
  html[data-flyup-theme="dark"] :is(.ai-result-shell,.ai-report-stage,.flyup-mobile-html-report-stage) .ai-generated-report,
  html[data-flyup-theme="dark"] :is(.ai-result-shell,.ai-report-stage,.flyup-mobile-html-report-stage) .flyup-ai-accordion,
  html[data-flyup-theme="dark"] :is(.ai-result-shell,.ai-report-stage,.flyup-mobile-html-report-stage) .flyup-ai-accordion__content,
  html[data-flyup-theme="dark"] :is(.ai-result-shell,.ai-report-stage,.flyup-mobile-html-report-stage) :is(.ai-generated-subsection,.ai-generated-place,.ai-generated-hotel-start,.ai-generated-grid article,.flyup-inspiration-detail-box,.flyup-inspiration-destination-card,.flyup-inspiration-tip-card,.flyup-inspiration-compare-card,.flyup-report-planner-kpi,.flyup-report-planner-day-card) {
    background: linear-gradient(180deg, rgba(16,33,58,.98), rgba(8,20,36,.98)) !important;
    border-color: rgba(56,189,248,.30) !important;
    color: #f8fbff !important;
    -webkit-text-fill-color: #f8fbff !important;
    box-shadow: 0 14px 34px rgba(0,0,0,.28) !important;
  }

  html[data-flyup-theme="dark"] :is(.ai-result-shell,.ai-report-stage,.flyup-mobile-html-report-stage) .flyup-ai-accordion__summary,
  html[data-flyup-theme="dark"] :is(.ai-result-shell,.ai-report-stage,.flyup-mobile-html-report-stage) details.flyup-ai-accordion > summary {
    background: linear-gradient(180deg, rgba(16,33,58,.98), rgba(10,25,44,.98)) !important;
    border-color: rgba(56,189,248,.30) !important;
    color: #f8fbff !important;
    -webkit-text-fill-color: #f8fbff !important;
  }

  html[data-flyup-theme="dark"] :is(.ai-result-shell,.ai-report-stage,.flyup-mobile-html-report-stage) :is(.flyup-ai-accordion__summary,.flyup-ai-accordion__content,.ai-generated-subsection,.ai-generated-place,.ai-generated-hotel-start,.ai-generated-grid article,.flyup-inspiration-detail-box,.flyup-inspiration-destination-card,.flyup-inspiration-tip-card,.flyup-inspiration-compare-card,.flyup-report-planner-kpi,.flyup-report-planner-day-card) :is(h1,h2,h3,h4,strong,b,span,p,small,li,div,td,th) {
    color: #f8fbff !important;
    -webkit-text-fill-color: #f8fbff !important;
    opacity: 1 !important;
    text-shadow: none !important;
  }

  html[data-flyup-theme="dark"] :is(.ai-result-shell,.ai-report-stage,.flyup-mobile-html-report-stage) .flyup-ai-accordion__content :is(p,li,small,span,div,td,th),
  html[data-flyup-theme="dark"] :is(.ai-result-shell,.ai-report-stage,.flyup-mobile-html-report-stage) :is(.ai-generated-subsection,.ai-generated-place,.ai-generated-hotel-start,.ai-generated-grid article,.flyup-inspiration-detail-box,.flyup-inspiration-tip-card,.flyup-inspiration-compare-card,.flyup-report-planner-kpi,.flyup-report-planner-day-card) :is(p,li,small,span,div,td,th) {
    color: #c8d8ea !important;
    -webkit-text-fill-color: #c8d8ea !important;
  }

  html[data-flyup-theme="dark"] :is(.ai-result-shell,.ai-report-stage,.flyup-mobile-html-report-stage) :is(.flyup-ai-accordion__summary h2,.flyup-ai-accordion__summary h3,.flyup-ai-accordion__summary strong,.flyup-report-section-title,.ai-generated-subsection h4,.flyup-inspiration-detail-box h3) {
    color: #f8fbff !important;
    -webkit-text-fill-color: #f8fbff !important;
  }

  html[data-flyup-theme="dark"] :is(.ai-result-shell,.ai-report-stage,.flyup-mobile-html-report-stage) .flyup-ai-accordion__summary::after {
    background: rgba(56,189,248,.14) !important;
    color: #38bdf8 !important;
    -webkit-text-fill-color: #38bdf8 !important;
    border: 1px solid rgba(56,189,248,.24) !important;
  }

  html[data-flyup-theme="dark"] :is(.ai-result-shell,.ai-report-stage,.flyup-mobile-html-report-stage) .flyup-ai-accordion[open] > .flyup-ai-accordion__summary::after {
    background: linear-gradient(135deg, #0ea5e9, #14b8a6) !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
  }
}

/* =====================================================================
   STEP53 PHASE18D32 — GSM/tablet dark mode hardening
   Fixes: mobile bottom nav, quiz arrows, autocomplete/dropdown visibility,
   input cards, and mobile report readability. Menus HTML are not changed.
===================================================================== */
@media screen and (max-width: 900px) {
  html[data-flyup-theme="dark"] .flyup-mobile-app-nav {
    background: linear-gradient(180deg, rgba(8, 20, 36, .98), rgba(5, 15, 28, .98)) !important;
    border: 1px solid rgba(56, 189, 248, .34) !important;
    box-shadow: 0 20px 48px rgba(0, 0, 0, .42), 0 0 26px rgba(56, 189, 248, .10) !important;
    backdrop-filter: blur(22px) !important;
  }

  html[data-flyup-theme="dark"] .flyup-mobile-app-nav__item {
    color: #c8d8ea !important;
    -webkit-text-fill-color: #c8d8ea !important;
    background: transparent !important;
  }

  html[data-flyup-theme="dark"] .flyup-mobile-app-nav__item :is(svg, path, span) {
    color: inherit !important;
    -webkit-text-fill-color: inherit !important;
    stroke: currentColor !important;
  }

  html[data-flyup-theme="dark"] .flyup-mobile-app-nav__item.is-active {
    color: #07111f !important;
    -webkit-text-fill-color: #07111f !important;
    background: linear-gradient(135deg, #d9f8ff, #c7fff3) !important;
    box-shadow: 0 10px 26px rgba(56, 189, 248, .20) !important;
  }

  html[data-flyup-theme="dark"] .flyup-mobile-app-nav__item.is-active :is(svg, path, span) {
    color: #0369a1 !important;
    -webkit-text-fill-color: #0369a1 !important;
    stroke: currentColor !important;
  }

  /* Dashboard mobile cards: do not allow white-on-white cards in dark mode. */
  html[data-flyup-theme="dark"] :is(.flyup-mobile-menu-card,.flyup-mobile-dashboard-card,.flyup-mobile-app-card,.dashboard-mobile-card,.flyup-account-mobile-card) {
    background: linear-gradient(180deg, rgba(16, 33, 58, .98), rgba(8, 20, 36, .98)) !important;
    border: 1px solid rgba(56, 189, 248, .28) !important;
    color: #f8fbff !important;
    -webkit-text-fill-color: #f8fbff !important;
    box-shadow: 0 14px 36px rgba(0, 0, 0, .28) !important;
  }

  html[data-flyup-theme="dark"] :is(.flyup-mobile-menu-card,.flyup-mobile-dashboard-card,.flyup-mobile-app-card,.dashboard-mobile-card,.flyup-account-mobile-card) :is(h1,h2,h3,h4,strong,b,span,p,small,div) {
    color: #f8fbff !important;
    -webkit-text-fill-color: #f8fbff !important;
    opacity: 1 !important;
  }

  html[data-flyup-theme="dark"] :is(.flyup-mobile-menu-card,.flyup-mobile-dashboard-card,.flyup-mobile-app-card,.dashboard-mobile-card,.flyup-account-mobile-card) :is(p,small,.muted,.desc,.description) {
    color: #c8d8ea !important;
    -webkit-text-fill-color: #c8d8ea !important;
  }
}

@media screen and (max-width: 760px) {
  /* Make the quiz stage fit the phone width. */
  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active :is(.ai-form-shell,.ai-form-step,.ai-form-step.active,.ai-question-stage,.ai-form-step__body) {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    overflow: visible !important;
    box-sizing: border-box !important;
  }

  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .flyup-mobile-question-current {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
  }

  /* Question card + fields: strong contrast on GSM dark mode. */
  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .flyup-field.flyup-mobile-question-current,
  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active :is(.ai-checkbox-grid,.ai-chip-grid,.ai-service-toggle,.ai-mode-toggle).flyup-mobile-question-current {
    padding: 1.05rem !important;
    border-radius: 24px !important;
    background: linear-gradient(180deg, rgba(16, 33, 58, .99), rgba(7, 18, 32, .99)) !important;
    border: 1px solid rgba(56, 189, 248, .40) !important;
    box-shadow: 0 18px 42px rgba(0, 0, 0, .32), 0 0 22px rgba(56, 189, 248, .10) !important;
  }

  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .flyup-field.flyup-mobile-question-current label {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    font-weight: 900 !important;
    opacity: 1 !important;
  }

  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .flyup-field.flyup-mobile-question-current :is(input,select,textarea,.form-control) {
    width: 100% !important;
    max-width: 100% !important;
    min-height: 60px !important;
    border-radius: 19px !important;
    background: #050f1c !important;
    border: 1px solid rgba(56, 189, 248, .45) !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    caret-color: #38bdf8 !important;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.03), 0 0 0 4px rgba(56,189,248,.09) !important;
  }

  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .flyup-field.flyup-mobile-question-current :is(input,select,textarea,.form-control)::placeholder {
    color: #94a3b8 !important;
    -webkit-text-fill-color: #94a3b8 !important;
  }

  /* Required/optional chip: visible, not floating over the header. */
  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .flyup-mobile-question-meta {
    color: #c8d8ea !important;
    -webkit-text-fill-color: #c8d8ea !important;
  }

  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .flyup-mobile-question-meta strong.is-required {
    color: #fecdd3 !important;
    -webkit-text-fill-color: #fecdd3 !important;
    background: rgba(127, 29, 29, .42) !important;
    border: 1px solid rgba(248, 113, 113, .36) !important;
  }

  /* Navigation arrows: centered, visible, no left overflow. */
  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-nav {
    position: relative !important;
    left: auto !important;
    right: auto !important;
    bottom: auto !important;
    transform: none !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: .95rem auto 0 !important;
    padding: .62rem !important;
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: .72rem !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
    border-radius: 24px !important;
    background: rgba(5, 15, 28, .98) !important;
    border: 1px solid rgba(56, 189, 248, .34) !important;
  }

  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-nav .btn {
    width: 100% !important;
    min-width: 0 !important;
    height: 58px !important;
    min-height: 58px !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    border-radius: 19px !important;
    font-size: 1.55rem !important;
    line-height: 1 !important;
    overflow: hidden !important;
  }

  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-nav .btn[data-mobile-nav-arrow="back"] {
    background: rgba(8, 20, 36, .96) !important;
    border: 1px solid rgba(148, 163, 184, .26) !important;
    color: #e2e8f0 !important;
    -webkit-text-fill-color: #e2e8f0 !important;
  }

  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-nav .btn[data-mobile-nav-arrow="next"],
  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-nav .btn-primary {
    background: linear-gradient(135deg, #0ea5e9, #14b8a6) !important;
    border: 1px solid rgba(94, 234, 212, .32) !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
  }

  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-nav .btn[disabled],
  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-nav .btn.flyup-mobile-app-button-disabled-soft {
    opacity: .62 !important;
    color: #94a3b8 !important;
    -webkit-text-fill-color: #94a3b8 !important;
  }

  /* Autocomplete/dropdown list. The panel is appended to body, so it needs global dark styling. */
  html[data-flyup-theme="dark"] .flyup-autocomplete-panel {
    z-index: 999999 !important;
    background: linear-gradient(180deg, #10213a, #071220) !important;
    border: 1px solid rgba(56, 189, 248, .42) !important;
    box-shadow: 0 22px 50px rgba(0,0,0,.48), 0 0 24px rgba(56,189,248,.12) !important;
    color: #f8fbff !important;
    -webkit-text-fill-color: #f8fbff !important;
  }

  html[data-flyup-theme="dark"] .flyup-autocomplete-option {
    background: transparent !important;
    color: #f8fbff !important;
    -webkit-text-fill-color: #f8fbff !important;
  }

  html[data-flyup-theme="dark"] .flyup-autocomplete-option:hover,
  html[data-flyup-theme="dark"] .flyup-autocomplete-option:focus {
    background: rgba(56, 189, 248, .14) !important;
  }

  html[data-flyup-theme="dark"] .flyup-autocomplete-option__title {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
  }

  html[data-flyup-theme="dark"] .flyup-autocomplete-option__meta,
  html[data-flyup-theme="dark"] .flyup-autocomplete-empty {
    color: #c8d8ea !important;
    -webkit-text-fill-color: #c8d8ea !important;
    font-weight: 700 !important;
  }

  /* Mobile AI reports: force every remaining white/grey inner block to readable dark. */
  html[data-flyup-theme="dark"] :is(.ai-result-shell,.ai-report-stage,.flyup-mobile-html-report-stage,.flyup-premium-reference-report) :is(.flyup-report-view,.ai-generated-report,.flyup-ai-accordion,.flyup-ai-accordion__content,.ai-generated-subsection,.ai-generated-place,.ai-generated-hotel-start,.ai-generated-grid article,.flyup-inspiration-detail-box,.flyup-inspiration-destination-card,.flyup-inspiration-tip-card,.flyup-inspiration-compare,.flyup-inspiration-compare-card,.flyup-inspiration-additional-section,.flyup-report-planner-kpi,.flyup-report-planner-day-card,.flyup-report-section,.flyup-report-card,.f4y-route-card,.f4y-route-point,.f4y-rest-card) {
    background: linear-gradient(180deg, rgba(16,33,58,.99), rgba(8,20,36,.99)) !important;
    border-color: rgba(56,189,248,.32) !important;
    color: #f8fbff !important;
    -webkit-text-fill-color: #f8fbff !important;
  }

  html[data-flyup-theme="dark"] :is(.ai-result-shell,.ai-report-stage,.flyup-mobile-html-report-stage,.flyup-premium-reference-report) :is(.flyup-report-view,.ai-generated-report,.flyup-ai-accordion,.flyup-ai-accordion__content,.ai-generated-subsection,.ai-generated-place,.ai-generated-hotel-start,.ai-generated-grid article,.flyup-inspiration-detail-box,.flyup-inspiration-destination-card,.flyup-inspiration-tip-card,.flyup-inspiration-compare,.flyup-inspiration-compare-card,.flyup-inspiration-additional-section,.flyup-report-planner-kpi,.flyup-report-planner-day-card,.flyup-report-section,.flyup-report-card,.f4y-route-card,.f4y-route-point,.f4y-rest-card) :is(h1,h2,h3,h4,strong,b,span,p,small,li,div,td,th) {
    color: #f8fbff !important;
    -webkit-text-fill-color: #f8fbff !important;
    opacity: 1 !important;
    text-shadow: none !important;
  }

  html[data-flyup-theme="dark"] :is(.ai-result-shell,.ai-report-stage,.flyup-mobile-html-report-stage,.flyup-premium-reference-report) :is(.flyup-ai-accordion__content,.ai-generated-subsection,.ai-generated-place,.ai-generated-hotel-start,.ai-generated-grid article,.flyup-inspiration-detail-box,.flyup-inspiration-tip-card,.flyup-inspiration-compare-card,.flyup-report-planner-kpi,.flyup-report-planner-day-card,.f4y-route-card,.f4y-route-point,.f4y-rest-card) :is(p,li,small,span,div,td,th) {
    color: #c8d8ea !important;
    -webkit-text-fill-color: #c8d8ea !important;
  }
}

/* =====================================================================
   STEP53 PHASE18D33 — GSM/tablet dark mode selected choices visibility
   Fixes: AI quiz option chips were readable but selected state was not
   visually obvious enough on dark mobile/tablet screens. Menus untouched.
===================================================================== */
@media screen and (max-width: 1180px) {
  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .flyup-mobile-question-current .ai-chip,
  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .ai-chip,
  html[data-flyup-theme="dark"] .ai-form-shell .ai-chip {
    position: relative !important;
    isolation: isolate !important;
    background: linear-gradient(180deg, rgba(14, 42, 70, .98), rgba(8, 24, 42, .98)) !important;
    border: 1px solid rgba(56, 189, 248, .42) !important;
    color: #f8fbff !important;
    -webkit-text-fill-color: #f8fbff !important;
    opacity: 1 !important;
    box-shadow:
      inset 0 0 0 1px rgba(255,255,255,.045),
      0 10px 24px rgba(0,0,0,.28),
      0 0 12px rgba(56,189,248,.10) !important;
  }

  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .flyup-mobile-question-current .ai-chip:hover,
  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .flyup-mobile-question-current .ai-chip:focus-visible {
    border-color: rgba(94, 234, 212, .78) !important;
    box-shadow:
      inset 0 0 0 1px rgba(255,255,255,.08),
      0 12px 28px rgba(0,0,0,.30),
      0 0 22px rgba(56,189,248,.22) !important;
  }

  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .flyup-mobile-question-current .ai-chip.selected,
  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .ai-chip.selected,
  html[data-flyup-theme="dark"] .ai-form-shell .ai-chip.selected {
    background: linear-gradient(135deg, #38bdf8 0%, #22d3ee 45%, #2dd4bf 100%) !important;
    border-color: rgba(190, 255, 245, .95) !important;
    color: #031525 !important;
    -webkit-text-fill-color: #031525 !important;
    font-weight: 900 !important;
    opacity: 1 !important;
    box-shadow:
      0 16px 36px rgba(14, 165, 233, .32),
      0 0 0 3px rgba(45, 212, 191, .18),
      0 0 26px rgba(45, 212, 191, .26) !important;
    transform: translateY(-1px) !important;
  }

  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .flyup-mobile-question-current .ai-chip.selected::before,
  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .ai-chip.selected::before,
  html[data-flyup-theme="dark"] .ai-form-shell .ai-chip.selected::before {
    content: "✓" !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 1.15em !important;
    height: 1.15em !important;
    margin-right: .42em !important;
    border-radius: 999px !important;
    background: rgba(3, 21, 37, .16) !important;
    color: #031525 !important;
    -webkit-text-fill-color: #031525 !important;
    font-weight: 1000 !important;
    line-height: 1 !important;
  }

  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .flyup-mobile-question-current .ai-chip.selected *,
  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .ai-chip.selected *,
  html[data-flyup-theme="dark"] .ai-form-shell .ai-chip.selected * {
    color: #031525 !important;
    -webkit-text-fill-color: #031525 !important;
    opacity: 1 !important;
  }

  /* Checkbox cards use the native input state, so make checked rows visibly active too. */
  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .flyup-mobile-question-current .ai-checkbox-card,
  html[data-flyup-theme="dark"] .ai-form-shell .ai-checkbox-card {
    background: linear-gradient(180deg, rgba(14, 42, 70, .98), rgba(8, 24, 42, .98)) !important;
    border: 1px solid rgba(56, 189, 248, .36) !important;
    color: #f8fbff !important;
    -webkit-text-fill-color: #f8fbff !important;
    opacity: 1 !important;
  }

  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .flyup-mobile-question-current .ai-checkbox-card:has(input:checked),
  html[data-flyup-theme="dark"] .ai-form-shell .ai-checkbox-card:has(input:checked) {
    background: linear-gradient(135deg, #38bdf8 0%, #22d3ee 45%, #2dd4bf 100%) !important;
    border-color: rgba(190, 255, 245, .95) !important;
    color: #031525 !important;
    -webkit-text-fill-color: #031525 !important;
    font-weight: 900 !important;
    box-shadow:
      0 16px 36px rgba(14, 165, 233, .30),
      0 0 0 3px rgba(45, 212, 191, .18),
      0 0 26px rgba(45, 212, 191, .24) !important;
  }

  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .flyup-mobile-question-current .ai-checkbox-card:has(input:checked) :is(strong,span,small,p,label),
  html[data-flyup-theme="dark"] .ai-form-shell .ai-checkbox-card:has(input:checked) :is(strong,span,small,p,label) {
    color: #031525 !important;
    -webkit-text-fill-color: #031525 !important;
    opacity: 1 !important;
  }
}

/* =====================================================================
   STEP53 PHASE18D34 — GSM/tablet dark mode gastronomy quiz visibility
   Fixes: gastronomy question kept white/grey cards from mobile quiz layout
   (Include gastronomy, Breakfast/Lunch/Dinner, Dining preference).
   Menus untouched.
===================================================================== */
@media screen and (max-width: 1180px) {
  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .ai-gastronomy-options.flyup-mobile-question-current,
  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .ai-form-grid--gastronomy.flyup-mobile-question-current,
  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .ai-checkbox-grid.flyup-mobile-question-current.flyup-gastronomy-question,
  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .flyup-mobile-question-current.ai-gastronomy-options {
    display: block !important;
    width: 100% !important;
    margin: 0 0 .95rem !important;
    padding: 1.05rem !important;
    border-radius: 24px !important;
    background: linear-gradient(180deg, rgba(8, 22, 39, .99), rgba(5, 15, 28, .99)) !important;
    border: 1px solid rgba(56, 189, 248, .42) !important;
    box-shadow:
      inset 0 0 0 1px rgba(255,255,255,.045),
      0 14px 34px rgba(0,0,0,.32),
      0 0 18px rgba(56,189,248,.12) !important;
    color: #f8fbff !important;
    -webkit-text-fill-color: #f8fbff !important;
    box-sizing: border-box !important;
  }

  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .ai-gastronomy-options.flyup-mobile-question-current *,
  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .ai-form-grid--gastronomy.flyup-mobile-question-current *,
  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .flyup-mobile-question-current.ai-gastronomy-options * {
    color: #f8fbff !important;
    -webkit-text-fill-color: #f8fbff !important;
    opacity: 1 !important;
    text-shadow: none !important;
  }

  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .ai-gastronomy-options.flyup-mobile-question-current > label,
  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .ai-gastronomy-options.flyup-mobile-question-current .ai-checkbox-row--toggle,
  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .flyup-mobile-question-current.ai-gastronomy-options > label,
  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .flyup-mobile-question-current.ai-gastronomy-options .ai-checkbox-row--toggle {
    display: flex !important;
    align-items: center !important;
    gap: .78rem !important;
    min-height: 54px !important;
    margin: 0 0 .85rem !important;
    padding: .92rem 1rem !important;
    border-radius: 18px !important;
    background: rgba(15, 37, 63, .96) !important;
    border: 1px solid rgba(56, 189, 248, .36) !important;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.04), 0 8px 20px rgba(0,0,0,.18) !important;
  }

  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .ai-gastronomy-options.flyup-mobile-question-current .ai-checkbox-grid,
  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .flyup-mobile-question-current.ai-gastronomy-options .ai-checkbox-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: .72rem !important;
    margin: .8rem 0 1rem !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
  }

  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .ai-gastronomy-options.flyup-mobile-question-current .ai-checkbox-card,
  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .flyup-mobile-question-current.ai-gastronomy-options .ai-checkbox-card {
    display: flex !important;
    align-items: center !important;
    gap: .86rem !important;
    min-height: 58px !important;
    padding: .86rem 1rem !important;
    border-radius: 18px !important;
    background: linear-gradient(180deg, rgba(14, 42, 70, .98), rgba(8, 24, 42, .98)) !important;
    border: 1px solid rgba(56, 189, 248, .38) !important;
    color: #f8fbff !important;
    -webkit-text-fill-color: #f8fbff !important;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.045), 0 8px 20px rgba(0,0,0,.22) !important;
  }

  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .ai-gastronomy-options.flyup-mobile-question-current input[type="checkbox"],
  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .flyup-mobile-question-current.ai-gastronomy-options input[type="checkbox"] {
    appearance: none !important;
    -webkit-appearance: none !important;
    width: 24px !important;
    height: 24px !important;
    flex: 0 0 24px !important;
    margin: 0 !important;
    border-radius: 6px !important;
    background: rgba(2, 8, 23, .92) !important;
    border: 2px solid rgba(203, 213, 225, .72) !important;
    box-shadow: inset 0 1px 3px rgba(0,0,0,.45), 0 0 0 1px rgba(56,189,248,.10) !important;
    position: relative !important;
  }

  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .ai-gastronomy-options.flyup-mobile-question-current input[type="checkbox"]:checked,
  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .flyup-mobile-question-current.ai-gastronomy-options input[type="checkbox"]:checked {
    background: linear-gradient(135deg, #38bdf8, #2dd4bf) !important;
    border-color: rgba(190, 255, 245, .95) !important;
    box-shadow: 0 0 0 3px rgba(45,212,191,.18), 0 0 18px rgba(45,212,191,.22) !important;
  }

  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .ai-gastronomy-options.flyup-mobile-question-current input[type="checkbox"]:checked::after,
  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .flyup-mobile-question-current.ai-gastronomy-options input[type="checkbox"]:checked::after {
    content: "✓" !important;
    position: absolute !important;
    inset: -1px 0 0 0 !important;
    display: grid !important;
    place-items: center !important;
    color: #031525 !important;
    -webkit-text-fill-color: #031525 !important;
    font-size: 18px !important;
    font-weight: 1000 !important;
    line-height: 1 !important;
  }

  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .ai-gastronomy-options.flyup-mobile-question-current .ai-checkbox-card:has(input:checked),
  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .flyup-mobile-question-current.ai-gastronomy-options .ai-checkbox-card:has(input:checked) {
    background: linear-gradient(135deg, rgba(56,189,248,.98), rgba(45,212,191,.94)) !important;
    border-color: rgba(190,255,245,.95) !important;
    box-shadow: 0 14px 32px rgba(14,165,233,.28), 0 0 0 3px rgba(45,212,191,.16) !important;
  }

  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .ai-gastronomy-options.flyup-mobile-question-current .ai-checkbox-card:has(input:checked) :is(span,strong,small,label),
  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .flyup-mobile-question-current.ai-gastronomy-options .ai-checkbox-card:has(input:checked) :is(span,strong,small,label) {
    color: #031525 !important;
    -webkit-text-fill-color: #031525 !important;
  }

  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .ai-gastronomy-options.flyup-mobile-question-current :is(input:not([type="checkbox"]):not([type="radio"]),select,textarea),
  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .flyup-mobile-question-current.ai-gastronomy-options :is(input:not([type="checkbox"]):not([type="radio"]),select,textarea) {
    width: 100% !important;
    min-height: 56px !important;
    border-radius: 18px !important;
    background: #06111f !important;
    border: 1px solid rgba(56, 189, 248, .42) !important;
    color: #f8fbff !important;
    -webkit-text-fill-color: #f8fbff !important;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.04), 0 0 16px rgba(56,189,248,.10) !important;
  }

  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .ai-gastronomy-options.flyup-mobile-question-current :is(input,select,textarea)::placeholder,
  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .flyup-mobile-question-current.ai-gastronomy-options :is(input,select,textarea)::placeholder {
    color: rgba(226, 232, 240, .72) !important;
    -webkit-text-fill-color: rgba(226, 232, 240, .72) !important;
  }
}

/* =====================================================================
   STEP53 PHASE18D35 — GSM/tablet quiz final Generate positioning fix
   Fixes the final review action bar overflowing left/right on small screens.
   Menus are not modified.
===================================================================== */
@media screen and (max-width: 760px) {
  body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step[data-step="5"].active,
  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step[data-step="5"].active {
    padding-bottom: calc(172px + env(safe-area-inset-bottom, 0px)) !important;
    overflow: visible !important;
  }

  body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step[data-step="5"].active .ai-review-box,
  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step[data-step="5"].active .ai-review-box {
    margin-bottom: 1.1rem !important;
  }

  body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step[data-step="5"].active .ai-form-nav,
  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step[data-step="5"].active .ai-form-nav {
    position: fixed !important;
    left: 50% !important;
    right: auto !important;
    bottom: calc(96px + env(safe-area-inset-bottom, 0px)) !important;
    transform: translateX(-50%) !important;
    width: min(calc(100vw - 28px), 430px) !important;
    max-width: min(calc(100vw - 28px), 430px) !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: .56rem !important;
    display: grid !important;
    grid-template-columns: minmax(76px, .82fr) minmax(0, 1.45fr) !important;
    gap: .62rem !important;
    box-sizing: border-box !important;
    overflow: visible !important;
    z-index: 119 !important;
    border-radius: 24px !important;
    background: rgba(6, 17, 31, .96) !important;
    border: 1px solid rgba(56, 189, 248, .36) !important;
    box-shadow: 0 18px 44px rgba(0,0,0,.38), 0 0 18px rgba(56,189,248,.14) !important;
    backdrop-filter: blur(18px) !important;
  }

  body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step[data-step="5"].active .ai-form-nav .btn,
  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step[data-step="5"].active .ai-form-nav .btn {
    width: 100% !important;
    min-width: 0 !important;
    height: 62px !important;
    min-height: 62px !important;
    max-height: 62px !important;
    padding: 0 .45rem !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    border-radius: 20px !important;
    line-height: 1 !important;
    overflow: hidden !important;
    white-space: nowrap !important;
    transform: none !important;
  }

  body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step[data-step="5"].active .ai-form-nav .btn[data-mobile-nav-arrow="back"],
  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step[data-step="5"].active .ai-form-nav .btn[data-mobile-nav-arrow="back"] {
    font-size: 1.46rem !important;
    background: rgba(8, 20, 36, .98) !important;
    color: #e2e8f0 !important;
    -webkit-text-fill-color: #e2e8f0 !important;
    border: 1px solid rgba(148, 163, 184, .28) !important;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.035) !important;
  }

  body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step[data-step="5"].active .ai-form-nav .btn[data-mobile-final-submit="1"],
  body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step[data-step="5"].active .ai-form-nav .btn-primary,
  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step[data-step="5"].active .ai-form-nav .btn[data-mobile-final-submit="1"],
  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step[data-step="5"].active .ai-form-nav .btn-primary {
    font-size: clamp(1.08rem, 5.1vw, 1.55rem) !important;
    font-weight: 1000 !important;
    letter-spacing: -.03em !important;
    background: linear-gradient(135deg, #0ea5e9, #14b8a6) !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    border: 1px solid rgba(94, 234, 212, .36) !important;
    box-shadow: 0 14px 32px rgba(14,165,233,.26), 0 0 16px rgba(45,212,191,.16) !important;
  }

  body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step[data-step="5"].active .ai-form-nav .btn[disabled],
  body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step[data-step="5"].active .ai-form-nav .btn.flyup-mobile-app-button-disabled-soft,
  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step[data-step="5"].active .ai-form-nav .btn[disabled],
  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step[data-step="5"].active .ai-form-nav .btn.flyup-mobile-app-button-disabled-soft {
    opacity: .62 !important;
  }
}

@media screen and (min-width: 761px) and (max-width: 1180px) {
  body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step[data-step="5"].active .ai-form-nav,
  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step[data-step="5"].active .ai-form-nav {
    width: min(100%, 520px) !important;
    max-width: 520px !important;
    margin: 1rem auto 0 !important;
    grid-template-columns: minmax(110px, .8fr) minmax(0, 1.5fr) !important;
  }
}

/* =====================================================================
   STEP53 PHASE18D37 — GSM/tablet dark mode gastronomy parent hard fix
   Base: phase18D35. The previous fix styled inner gastronomy options but
   the mobile question container itself could stay light/grey, making labels
   invisible. Menus untouched.
===================================================================== */
@media screen and (max-width: 1180px) {
  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .ai-detail-panel--gastronomy.flyup-mobile-question-current,
  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .flyup-mobile-question-current.ai-detail-panel--gastronomy {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 auto 1rem !important;
    padding: 1.05rem !important;
    border-radius: 26px !important;
    background: linear-gradient(180deg, rgba(8, 22, 39, .99), rgba(5, 15, 28, .99)) !important;
    border: 1px solid rgba(56, 189, 248, .46) !important;
    box-shadow:
      inset 0 0 0 1px rgba(255,255,255,.045),
      0 18px 40px rgba(0,0,0,.34),
      0 0 22px rgba(56,189,248,.14) !important;
    color: #f8fbff !important;
    -webkit-text-fill-color: #f8fbff !important;
    box-sizing: border-box !important;
    opacity: 1 !important;
  }

  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .ai-detail-panel--gastronomy.flyup-mobile-question-current :is(label,legend,h1,h2,h3,h4,strong,b,span,p,small,li,div),
  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .flyup-mobile-question-current.ai-detail-panel--gastronomy :is(label,legend,h1,h2,h3,h4,strong,b,span,p,small,li,div) {
    color: #f8fbff !important;
    -webkit-text-fill-color: #f8fbff !important;
    opacity: 1 !important;
    text-shadow: none !important;
  }

  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .ai-detail-panel--gastronomy.flyup-mobile-question-current .ai-gastronomy-toggle,
  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .ai-detail-panel--gastronomy.flyup-mobile-question-current .flyup-field.ai-gastronomy-toggle {
    margin: 0 0 .95rem !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .ai-detail-panel--gastronomy.flyup-mobile-question-current .ai-checkbox-row--toggle {
    display: flex !important;
    align-items: center !important;
    gap: .8rem !important;
    min-height: 58px !important;
    margin: 0 !important;
    padding: .9rem 1rem !important;
    border-radius: 18px !important;
    background: linear-gradient(180deg, rgba(14, 42, 70, .98), rgba(8, 24, 42, .98)) !important;
    border: 1px solid rgba(56, 189, 248, .40) !important;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.045), 0 8px 20px rgba(0,0,0,.22) !important;
  }

  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .ai-detail-panel--gastronomy.flyup-mobile-question-current .ai-checkbox-row--toggle > span,
  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .ai-detail-panel--gastronomy.flyup-mobile-question-current .ai-checkbox-row--toggle strong,
  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .ai-detail-panel--gastronomy.flyup-mobile-question-current .ai-checkbox-row--toggle small {
    color: #f8fbff !important;
    -webkit-text-fill-color: #f8fbff !important;
    opacity: 1 !important;
  }

  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .ai-detail-panel--gastronomy.flyup-mobile-question-current .ai-checkbox-row--toggle small {
    color: rgba(203, 213, 225, .88) !important;
    -webkit-text-fill-color: rgba(203, 213, 225, .88) !important;
  }

  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .ai-detail-panel--gastronomy.flyup-mobile-question-current .ai-checkbox-row--toggle input[type="checkbox"],
  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .ai-detail-panel--gastronomy.flyup-mobile-question-current .ai-checkbox-card input[type="checkbox"] {
    appearance: none !important;
    -webkit-appearance: none !important;
    width: 24px !important;
    height: 24px !important;
    flex: 0 0 24px !important;
    margin: 0 !important;
    border-radius: 6px !important;
    background: rgba(2, 8, 23, .95) !important;
    border: 2px solid rgba(203, 213, 225, .76) !important;
    box-shadow: inset 0 1px 3px rgba(0,0,0,.45), 0 0 0 1px rgba(56,189,248,.12) !important;
    position: relative !important;
  }

  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .ai-detail-panel--gastronomy.flyup-mobile-question-current .ai-checkbox-row--toggle input[type="checkbox"]:checked,
  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .ai-detail-panel--gastronomy.flyup-mobile-question-current .ai-checkbox-card input[type="checkbox"]:checked {
    background: linear-gradient(135deg, #38bdf8, #2dd4bf) !important;
    border-color: rgba(190, 255, 245, .96) !important;
    box-shadow: 0 0 0 3px rgba(45,212,191,.18), 0 0 18px rgba(45,212,191,.22) !important;
  }

  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .ai-detail-panel--gastronomy.flyup-mobile-question-current .ai-checkbox-row--toggle input[type="checkbox"]:checked::after,
  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .ai-detail-panel--gastronomy.flyup-mobile-question-current .ai-checkbox-card input[type="checkbox"]:checked::after {
    content: "✓" !important;
    position: absolute !important;
    inset: -1px 0 0 0 !important;
    display: grid !important;
    place-items: center !important;
    color: #031525 !important;
    -webkit-text-fill-color: #031525 !important;
    font-size: 18px !important;
    font-weight: 1000 !important;
    line-height: 1 !important;
  }

  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .ai-detail-panel--gastronomy.flyup-mobile-question-current #gastronomyOptions,
  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .ai-detail-panel--gastronomy.flyup-mobile-question-current .ai-gastronomy-options {
    display: block !important;
    width: 100% !important;
    margin: .95rem 0 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
  }

  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .ai-detail-panel--gastronomy.flyup-mobile-question-current #gastronomyOptions[hidden] {
    display: none !important;
  }

  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .ai-detail-panel--gastronomy.flyup-mobile-question-current .ai-gastronomy-options__intro,
  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .ai-detail-panel--gastronomy.flyup-mobile-question-current .ai-form-grid--gastronomy label,
  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .ai-detail-panel--gastronomy.flyup-mobile-question-current .ai-dietary-other-field label {
    color: #f8fbff !important;
    -webkit-text-fill-color: #f8fbff !important;
    opacity: 1 !important;
    font-weight: 850 !important;
  }

  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .ai-detail-panel--gastronomy.flyup-mobile-question-current .ai-checkbox-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: .75rem !important;
    margin: .85rem 0 1rem !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
  }

  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .ai-detail-panel--gastronomy.flyup-mobile-question-current .ai-checkbox-card {
    display: flex !important;
    justify-content: flex-start !important;
    align-items: center !important;
    gap: .86rem !important;
    min-height: 58px !important;
    width: 100% !important;
    padding: .86rem 1rem !important;
    border-radius: 18px !important;
    background: linear-gradient(180deg, rgba(14, 42, 70, .98), rgba(8, 24, 42, .98)) !important;
    border: 1px solid rgba(56, 189, 248, .40) !important;
    color: #f8fbff !important;
    -webkit-text-fill-color: #f8fbff !important;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.045), 0 8px 20px rgba(0,0,0,.22) !important;
  }

  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .ai-detail-panel--gastronomy.flyup-mobile-question-current .ai-checkbox-card span {
    color: #f8fbff !important;
    -webkit-text-fill-color: #f8fbff !important;
    font-size: .96rem !important;
    font-weight: 850 !important;
    opacity: 1 !important;
  }

  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .ai-detail-panel--gastronomy.flyup-mobile-question-current .ai-checkbox-card:has(input:checked) {
    background: linear-gradient(135deg, rgba(56,189,248,.98), rgba(45,212,191,.94)) !important;
    border-color: rgba(190,255,245,.96) !important;
    box-shadow: 0 14px 32px rgba(14,165,233,.28), 0 0 0 3px rgba(45,212,191,.16) !important;
  }

  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .ai-detail-panel--gastronomy.flyup-mobile-question-current .ai-checkbox-card:has(input:checked) span {
    color: #031525 !important;
    -webkit-text-fill-color: #031525 !important;
  }

  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .ai-detail-panel--gastronomy.flyup-mobile-question-current :is(select,input:not([type="checkbox"]):not([type="radio"]),textarea,.form-control) {
    width: 100% !important;
    min-height: 56px !important;
    border-radius: 18px !important;
    background: #06111f !important;
    border: 1px solid rgba(56, 189, 248, .44) !important;
    color: #f8fbff !important;
    -webkit-text-fill-color: #f8fbff !important;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.045), 0 0 18px rgba(56,189,248,.10) !important;
  }

  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-step.active .ai-detail-panel--gastronomy.flyup-mobile-question-current :is(select,input:not([type="checkbox"]):not([type="radio"]),textarea,.form-control)::placeholder {
    color: rgba(226, 232, 240, .74) !important;
    -webkit-text-fill-color: rgba(226, 232, 240, .74) !important;
  }
}


/* Phase18D38 — Header theme icon visibility
   Keep the sun icon yellow when dark mode is active / when the next action is light mode. */
.site-quick-switcher__item--theme {
    font-family: Arial, Helvetica, sans-serif !important;
    font-weight: 900 !important;
    line-height: 1 !important;
    transition: color .18s ease, background .18s ease, box-shadow .18s ease, transform .18s ease !important;
}

.site-quick-switcher__item--theme[data-theme="light"],
html[data-flyup-theme="dark"] .site-quick-switcher__item--theme[data-theme="light"] {
    color: #facc15 !important;
    -webkit-text-fill-color: #facc15 !important;
    text-shadow: 0 0 8px rgba(250, 204, 21, .45), 0 0 16px rgba(251, 146, 60, .22) !important;
}

.site-quick-switcher__item--theme[data-theme="dark"] {
    color: #0f172a !important;
    -webkit-text-fill-color: #0f172a !important;
    text-shadow: none !important;
}

html[data-flyup-theme="dark"] .site-quick-switcher__item--theme:hover,
html[data-flyup-theme="dark"] .site-quick-switcher__item--theme:focus-visible {
    color: #facc15 !important;
    -webkit-text-fill-color: #facc15 !important;
    text-shadow: 0 0 10px rgba(250, 204, 21, .65), 0 0 22px rgba(251, 146, 60, .34) !important;
}

.site-quick-switcher__item--theme:hover,
.site-quick-switcher__item--theme:focus-visible {
    transform: translateY(-1px);
}

/* Phase18D39 — mobile/tablet header cleanup
   Language is already available in the compact oval; keep the auth icon inside the header. */
@media (max-width: 1024px) {
  body.flyup-account-app-shell .flyup-mobile-lang-drawer,
  body.flyup-mobile-app-home-shell .flyup-mobile-lang-drawer,
  body.flyup-mobile-public-app-shell .flyup-mobile-lang-drawer {
    display: none !important;
  }

  body.flyup-account-app-shell .site-header__inner,
  body.flyup-mobile-app-home-shell .site-header__inner,
  body.flyup-mobile-public-app-shell .site-header__inner {
    padding-right: clamp(1rem, 3.8vw, 1.35rem) !important;
  }

  body.flyup-account-app-shell .site-actions,
  body.flyup-mobile-app-home-shell .site-actions,
  body.flyup-mobile-public-app-shell .site-actions {
    gap: clamp(.42rem, 1.8vw, .62rem) !important;
    padding-right: .16rem !important;
  }

  body.flyup-account-app-shell .site-actions__auth-icon,
  body.flyup-mobile-app-home-shell .site-actions__auth-icon,
  body.flyup-mobile-public-app-shell .site-actions__auth-icon,
  body.flyup-account-app-shell .site-actions__logout.site-actions__auth-icon,
  body.flyup-mobile-app-home-shell .site-actions__logout.site-actions__auth-icon,
  body.flyup-mobile-public-app-shell .site-actions__logout.site-actions__auth-icon,
  body.flyup-account-app-shell .site-actions__login.site-actions__auth-icon,
  body.flyup-mobile-app-home-shell .site-actions__login.site-actions__auth-icon,
  body.flyup-mobile-public-app-shell .site-actions__login.site-actions__auth-icon {
    margin-right: 0 !important;
    transform: translateX(-2px) !important;
  }

  body.flyup-account-app-shell .site-actions__auth-icon:hover,
  body.flyup-mobile-app-home-shell .site-actions__auth-icon:hover,
  body.flyup-mobile-public-app-shell .site-actions__auth-icon:hover,
  body.flyup-account-app-shell .site-actions__auth-icon:focus-visible,
  body.flyup-mobile-app-home-shell .site-actions__auth-icon:focus-visible,
  body.flyup-mobile-public-app-shell .site-actions__auth-icon:focus-visible {
    transform: translateX(-2px) !important;
  }
}

@media (max-width: 420px) {
  body.flyup-account-app-shell .site-header__inner,
  body.flyup-mobile-app-home-shell .site-header__inner,
  body.flyup-mobile-public-app-shell .site-header__inner {
    padding-right: 1.12rem !important;
  }

  body.flyup-account-app-shell .site-actions,
  body.flyup-mobile-app-home-shell .site-actions,
  body.flyup-mobile-public-app-shell .site-actions {
    gap: .48rem !important;
  }
}

/* Phase18D41 — dark mode AI path selection: remove grey/white selected cards */
html[data-flyup-theme="dark"] .ai-form-shell--separate-quiz .ai-service-toggle--two .ai-mode-option,
html[data-flyup-theme="dark"] .ai-form-shell--separate-quiz .ai-service-toggle--two .ai-mode-option.selected,
html[data-flyup-theme="dark"] .ai-form-shell--separate-quiz .ai-mode-option,
html[data-flyup-theme="dark"] .ai-form-shell--separate-quiz .ai-mode-option.selected,
html[data-flyup-theme="dark"] body.flyup-account-app-shell .ai-form-shell--separate-quiz .ai-mode-option,
html[data-flyup-theme="dark"] body.flyup-account-app-shell .ai-form-shell--separate-quiz .ai-mode-option.selected {
  background: linear-gradient(180deg, rgba(13,32,55,.98), rgba(7,19,34,.98)) !important;
  border: 1px solid rgba(56,189,248,.42) !important;
  color: #f8fbff !important;
  -webkit-text-fill-color: #f8fbff !important;
  opacity: 1 !important;
  box-shadow: 0 14px 34px rgba(0,0,0,.34), inset 0 0 0 1px rgba(94,234,212,.08) !important;
}

html[data-flyup-theme="dark"] .ai-form-shell--separate-quiz .ai-mode-option.selected,
html[data-flyup-theme="dark"] body.flyup-account-app-shell .ai-form-shell--separate-quiz .ai-mode-option.selected {
  background: linear-gradient(135deg, rgba(14,165,233,.24), rgba(20,184,166,.20), rgba(13,32,55,.98)) !important;
  border-color: rgba(94,234,212,.72) !important;
  box-shadow: 0 18px 42px rgba(14,165,233,.20), 0 0 0 2px rgba(94,234,212,.14), inset 0 0 0 1px rgba(255,255,255,.06) !important;
}

html[data-flyup-theme="dark"] .ai-form-shell--separate-quiz .ai-mode-option :is(h3,h4,strong,span,p,small),
html[data-flyup-theme="dark"] body.flyup-account-app-shell .ai-form-shell--separate-quiz .ai-mode-option :is(h3,h4,strong,span,p,small) {
  color: #f8fbff !important;
  -webkit-text-fill-color: #f8fbff !important;
  opacity: 1 !important;
  text-shadow: none !important;
}

html[data-flyup-theme="dark"] .ai-form-shell--separate-quiz .ai-mode-option p,
html[data-flyup-theme="dark"] .ai-form-shell--separate-quiz .ai-mode-option small,
html[data-flyup-theme="dark"] body.flyup-account-app-shell .ai-form-shell--separate-quiz .ai-mode-option p,
html[data-flyup-theme="dark"] body.flyup-account-app-shell .ai-form-shell--separate-quiz .ai-mode-option small {
  color: #c8d8ea !important;
  -webkit-text-fill-color: #c8d8ea !important;
}

html[data-flyup-theme="dark"] .ai-form-shell--separate-quiz .ai-quiz-track-card,
html[data-flyup-theme="dark"] body.flyup-account-app-shell .ai-form-shell--separate-quiz .ai-quiz-track-card,
html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-quiz-track-card {
  background: linear-gradient(135deg, rgba(13,32,55,.98), rgba(7,19,34,.98)) !important;
  border: 1px solid rgba(56,189,248,.48) !important;
  color: #f8fbff !important;
  -webkit-text-fill-color: #f8fbff !important;
  opacity: 1 !important;
  box-shadow: 0 16px 38px rgba(0,0,0,.36), inset 0 0 0 1px rgba(94,234,212,.08) !important;
}

html[data-flyup-theme="dark"] .ai-form-shell--separate-quiz .ai-quiz-track-card :is(span,strong,p,small),
html[data-flyup-theme="dark"] body.flyup-account-app-shell .ai-form-shell--separate-quiz .ai-quiz-track-card :is(span,strong,p,small),
html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-quiz-track-card :is(span,strong,p,small) {
  color: #f8fbff !important;
  -webkit-text-fill-color: #f8fbff !important;
  opacity: 1 !important;
}

html[data-flyup-theme="dark"] .ai-form-shell--separate-quiz .ai-quiz-track-card > span,
html[data-flyup-theme="dark"] body.flyup-account-app-shell .ai-form-shell--separate-quiz .ai-quiz-track-card > span {
  color: #38bdf8 !important;
  -webkit-text-fill-color: #38bdf8 !important;
}

html[data-flyup-theme="dark"] .ai-form-shell--separate-quiz .ai-quiz-track-card a,
html[data-flyup-theme="dark"] body.flyup-account-app-shell .ai-form-shell--separate-quiz .ai-quiz-track-card a,
html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-quiz-track-card a {
  background: linear-gradient(135deg, rgba(14,165,233,.22), rgba(20,184,166,.18)) !important;
  border-color: rgba(94,234,212,.48) !important;
  color: #f8fbff !important;
  -webkit-text-fill-color: #f8fbff !important;
  box-shadow: 0 10px 24px rgba(14,165,233,.16) !important;
}

@media (max-width: 720px) {
  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-shell--separate-quiz .ai-mode-option,
  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-shell--separate-quiz .ai-mode-option.selected,
  html[data-flyup-theme="dark"] body.flyup-account-app-shell.flyup-mobile-quiz-active .ai-form-shell--separate-quiz .ai-quiz-track-card {
    border-radius: 24px !important;
    overflow: hidden !important;
  }
}

/* Phase18D42 — Travel Budget UX dark mode polish */
html[data-flyup-theme="dark"] .travel-budget-flow,
html[data-flyup-theme="dark"] .travel-budget-quick-result,
html[data-flyup-theme="dark"] .travel-budget-participant-card {
    background: rgba(12, 27, 45, 0.94) !important;
    border-color: rgba(56, 189, 248, 0.28) !important;
    color: #f8fbff !important;
}

html[data-flyup-theme="dark"] .travel-budget-flow__step,
html[data-flyup-theme="dark"] .travel-budget-quick-result__grid article,
html[data-flyup-theme="dark"] .travel-budget-inline-form,
html[data-flyup-theme="dark"] .travel-budget-list-row,
html[data-flyup-theme="dark"] .travel-budget-transfer,
html[data-flyup-theme="dark"] .travel-budget-share-box,
html[data-flyup-theme="dark"] .travel-budget-toggle {
    background: rgba(8, 20, 35, 0.96) !important;
    border-color: rgba(56, 189, 248, 0.22) !important;
    color: #f8fbff !important;
}

html[data-flyup-theme="dark"] .travel-budget-quick-result__settlement.needs-action {
    background: rgba(69, 45, 12, 0.56) !important;
    border-color: rgba(251, 191, 36, 0.35) !important;
}

html[data-flyup-theme="dark"] .travel-budget-quick-result__settlement.balanced,
html[data-flyup-theme="dark"] .travel-budget-transfer.is-settled {
    background: rgba(6, 78, 59, 0.36) !important;
    border-color: rgba(52, 211, 153, 0.34) !important;
}

html[data-flyup-theme="dark"] .travel-budget-flow__step strong,
html[data-flyup-theme="dark"] .travel-budget-quick-result__grid strong,
html[data-flyup-theme="dark"] .travel-budget-participant-card__top strong,
html[data-flyup-theme="dark"] .travel-budget-card__head h3,
html[data-flyup-theme="dark"] .travel-budget-transfer strong,
html[data-flyup-theme="dark"] .travel-budget-table td strong {
    color: #f8fbff !important;
    -webkit-text-fill-color: #f8fbff !important;
}

html[data-flyup-theme="dark"] .travel-budget-flow__step small,
html[data-flyup-theme="dark"] .travel-budget-quick-result__head p,
html[data-flyup-theme="dark"] .travel-budget-quick-result__grid span,
html[data-flyup-theme="dark"] .travel-budget-participant-card__top small,
html[data-flyup-theme="dark"] .travel-budget-card__head p,
html[data-flyup-theme="dark"] .travel-budget-transfer p,
html[data-flyup-theme="dark"] .travel-budget-table td small,
html[data-flyup-theme="dark"] .travel-budget-share-note {
    color: #c9d8ea !important;
    -webkit-text-fill-color: #c9d8ea !important;
}

html[data-flyup-theme="dark"] .travel-budget-chip {
    background: rgba(8, 20, 35, 0.96) !important;
    border-color: rgba(56, 189, 248, 0.28) !important;
    color: #eaf6ff !important;
    -webkit-text-fill-color: #eaf6ff !important;
}

html[data-flyup-theme="dark"] .travel-budget-chip.is-active {
    background: linear-gradient(135deg, #38bdf8, #2dd4bf) !important;
    border-color: rgba(94, 234, 212, 0.55) !important;
    color: #06111f !important;
    -webkit-text-fill-color: #06111f !important;
}

html[data-flyup-theme="dark"] .travel-budget-participant-card input,
html[data-flyup-theme="dark"] .travel-budget-participant-card select,
html[data-flyup-theme="dark"] .travel-budget-participant-card textarea,
html[data-flyup-theme="dark"] .travel-budget-inline-form input,
html[data-flyup-theme="dark"] .travel-budget-inline-form select,
html[data-flyup-theme="dark"] .travel-budget-inline-form textarea {
    background: rgba(3, 12, 24, 0.92) !important;
    color: #f8fbff !important;
    -webkit-text-fill-color: #f8fbff !important;
    border-color: rgba(56, 189, 248, 0.30) !important;
}

html[data-flyup-theme="dark"] .travel-budget-participant-card label,
html[data-flyup-theme="dark"] .travel-budget-inline-form label {
    color: #dbeafe !important;
    -webkit-text-fill-color: #dbeafe !important;
}

/* Phase18D43 — Travel Budget popup workflow dark mode */
html[data-flyup-theme="dark"] .travel-budget-trip-summary article,
html[data-flyup-theme="dark"] .travel-budget-action-card,
html[data-flyup-theme="dark"] .travel-budget-modal__dialog {
    background: linear-gradient(180deg, rgba(8, 20, 35, 0.98), rgba(15, 32, 54, 0.96)) !important;
    border-color: rgba(56, 189, 248, 0.30) !important;
    color: #f8fbff !important;
    box-shadow: 0 0 0 1px rgba(56, 189, 248, 0.12), 0 22px 70px rgba(0, 0, 0, 0.40) !important;
}

html[data-flyup-theme="dark"] .travel-budget-trip-summary span,
html[data-flyup-theme="dark"] .travel-budget-action-card p,
html[data-flyup-theme="dark"] .travel-budget-participant-card__meta span {
    color: #c9d8ea !important;
    -webkit-text-fill-color: #c9d8ea !important;
}

html[data-flyup-theme="dark"] .travel-budget-trip-summary strong,
html[data-flyup-theme="dark"] .travel-budget-action-card strong,
html[data-flyup-theme="dark"] .travel-budget-modal__head h3,
html[data-flyup-theme="dark"] .travel-budget-modal__dialog label {
    color: #f8fbff !important;
    -webkit-text-fill-color: #f8fbff !important;
}

html[data-flyup-theme="dark"] .travel-budget-modal__close {
    background: rgba(56, 189, 248, 0.14) !important;
    border-color: rgba(56, 189, 248, 0.34) !important;
    color: #eaf6ff !important;
}

html[data-flyup-theme="dark"] .travel-budget-modal__dialog input,
html[data-flyup-theme="dark"] .travel-budget-modal__dialog select,
html[data-flyup-theme="dark"] .travel-budget-modal__dialog textarea {
    background: rgba(3, 12, 24, 0.94) !important;
    border-color: rgba(56, 189, 248, 0.34) !important;
    color: #f8fbff !important;
    -webkit-text-fill-color: #f8fbff !important;
}

html[data-flyup-theme="dark"] .travel-budget-modal__dialog input::placeholder,
html[data-flyup-theme="dark"] .travel-budget-modal__dialog textarea::placeholder {
    color: #8ea4bd !important;
    -webkit-text-fill-color: #8ea4bd !important;
}

html[data-flyup-theme="dark"] .btn-danger {
    color: #fecaca !important;
    -webkit-text-fill-color: #fecaca !important;
    border-color: rgba(248, 113, 113, 0.42) !important;
    background: rgba(127, 29, 29, 0.34) !important;
}

/* Phase18D44 — Mobile dashboard "Create an AI guide" dark readability fix.
   Scope: content only. Header/top controls and bottom app menu are not touched. */
@media screen and (max-width: 1180px) {
    html[data-flyup-theme="dark"] .flyup-dashboard-mobile-card .flyup-dashboard-mobile-mini-list {
        display: grid !important;
        gap: 0.62rem !important;
    }

    html[data-flyup-theme="dark"] .flyup-dashboard-mobile-card .flyup-dashboard-mobile-mini-list span {
        position: relative !important;
        display: flex !important;
        align-items: center !important;
        min-height: 46px !important;
        padding: 0.72rem 0.9rem 0.72rem 2.05rem !important;
        border-radius: 16px !important;
        background: linear-gradient(180deg, rgba(12, 29, 49, 0.98), rgba(7, 18, 33, 0.98)) !important;
        border: 1px solid rgba(56, 189, 248, 0.30) !important;
        color: #eaf6ff !important;
        -webkit-text-fill-color: #eaf6ff !important;
        opacity: 1 !important;
        text-shadow: none !important;
        box-shadow: inset 0 0 0 1px rgba(56, 189, 248, 0.08), 0 10px 24px rgba(0, 0, 0, 0.24) !important;
    }

    html[data-flyup-theme="dark"] .flyup-dashboard-mobile-card .flyup-dashboard-mobile-mini-list span::before {
        content: "" !important;
        position: absolute !important;
        left: 0.82rem !important;
        top: 50% !important;
        width: 8px !important;
        height: 8px !important;
        transform: translateY(-50%) !important;
        border-radius: 999px !important;
        background: linear-gradient(135deg, #38bdf8, #5eead4) !important;
        box-shadow: 0 0 14px rgba(56, 189, 248, 0.45) !important;
    }

    html[data-flyup-theme="dark"] .flyup-dashboard-mobile-card h2,
    html[data-flyup-theme="dark"] .flyup-dashboard-mobile-card > p {
        opacity: 1 !important;
        text-shadow: none !important;
    }

    html[data-flyup-theme="dark"] .flyup-dashboard-mobile-card > p {
        color: #c8d8ea !important;
        -webkit-text-fill-color: #c8d8ea !important;
    }
}

/* =====================================================================
   STEP53 PHASE18D45 — Mobile personal space dark mode card readability
   Scope: dashboard mobile content only. Header and bottom menu are untouched.
===================================================================== */
@media screen and (max-width: 900px) {
  html[data-flyup-theme="dark"] .flyup-dashboard-page--hub .flyup-dashboard-mobile-card,
  html[data-flyup-theme="dark"] .flyup-dashboard-page--hub .flyup-dashboard-mobile-accordion__panel .card {
    background: linear-gradient(180deg, rgba(16, 33, 58, .99), rgba(7, 18, 32, .99)) !important;
    border: 1px solid rgba(56, 189, 248, .38) !important;
    color: #f8fbff !important;
    -webkit-text-fill-color: #f8fbff !important;
    box-shadow: 0 18px 42px rgba(0, 0, 0, .34), 0 0 22px rgba(56, 189, 248, .09) !important;
  }

  html[data-flyup-theme="dark"] .flyup-dashboard-page--hub .flyup-dashboard-mobile-card :is(h1,h2,h3,h4,strong,b,label,legend),
  html[data-flyup-theme="dark"] .flyup-dashboard-page--hub .flyup-dashboard-mobile-accordion__panel .card :is(h1,h2,h3,h4,strong,b,label,legend) {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    opacity: 1 !important;
    text-shadow: none !important;
  }

  html[data-flyup-theme="dark"] .flyup-dashboard-page--hub .flyup-dashboard-mobile-card :is(p,small,span,li,div),
  html[data-flyup-theme="dark"] .flyup-dashboard-page--hub .flyup-dashboard-mobile-accordion__panel .card :is(p,small,span,li,div) {
    color: #c8d8ea !important;
    -webkit-text-fill-color: #c8d8ea !important;
    opacity: 1 !important;
    text-shadow: none !important;
  }

  html[data-flyup-theme="dark"] .flyup-dashboard-page--hub .homepage-hero__eyebrow {
    background: rgba(56, 189, 248, .14) !important;
    color: #38bdf8 !important;
    -webkit-text-fill-color: #38bdf8 !important;
    border: 1px solid rgba(56, 189, 248, .22) !important;
  }

  html[data-flyup-theme="dark"] .flyup-dashboard-page--hub .flyup-dashboard-mobile-stats > div,
  html[data-flyup-theme="dark"] .flyup-dashboard-page--hub .flyup-dashboard-mobile-mini-list span,
  html[data-flyup-theme="dark"] .flyup-dashboard-page--hub .flyup-dashboard-billing__row,
  html[data-flyup-theme="dark"] .flyup-dashboard-page--hub .flyup-dashboard-quota,
  html[data-flyup-theme="dark"] .flyup-dashboard-page--hub .flyup-dashboard-history-item,
  html[data-flyup-theme="dark"] .flyup-dashboard-page--hub .flyup-dashboard-notice,
  html[data-flyup-theme="dark"] .flyup-dashboard-page--hub .flyup-dashboard-mobile-card .flyup-profile-form label {
    background: linear-gradient(180deg, rgba(9, 22, 38, .98), rgba(5, 15, 28, .98)) !important;
    border: 1px solid rgba(56, 189, 248, .30) !important;
    color: #f8fbff !important;
    -webkit-text-fill-color: #f8fbff !important;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.025), 0 10px 24px rgba(0,0,0,.20) !important;
  }

  html[data-flyup-theme="dark"] .flyup-dashboard-page--hub .flyup-dashboard-mobile-stats > div span,
  html[data-flyup-theme="dark"] .flyup-dashboard-page--hub .flyup-dashboard-mobile-mini-list span,
  html[data-flyup-theme="dark"] .flyup-dashboard-page--hub .flyup-dashboard-billing__row span,
  html[data-flyup-theme="dark"] .flyup-dashboard-page--hub .flyup-dashboard-quota :is(span,small),
  html[data-flyup-theme="dark"] .flyup-dashboard-page--hub .flyup-dashboard-history-item :is(span,small,p) {
    color: #bcd0e8 !important;
    -webkit-text-fill-color: #bcd0e8 !important;
    opacity: 1 !important;
  }

  html[data-flyup-theme="dark"] .flyup-dashboard-page--hub .flyup-dashboard-mobile-stats > div strong,
  html[data-flyup-theme="dark"] .flyup-dashboard-page--hub .flyup-dashboard-billing__row strong,
  html[data-flyup-theme="dark"] .flyup-dashboard-page--hub .flyup-dashboard-quota strong,
  html[data-flyup-theme="dark"] .flyup-dashboard-page--hub .flyup-dashboard-history-item :is(h3,strong) {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    opacity: 1 !important;
  }

  html[data-flyup-theme="dark"] .flyup-dashboard-page--hub .flyup-dashboard-mobile-card input,
  html[data-flyup-theme="dark"] .flyup-dashboard-page--hub .flyup-dashboard-mobile-card select,
  html[data-flyup-theme="dark"] .flyup-dashboard-page--hub .flyup-dashboard-mobile-card textarea {
    background: #050f1c !important;
    border: 1px solid rgba(56, 189, 248, .42) !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    caret-color: #38bdf8 !important;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.03), 0 0 0 4px rgba(56,189,248,.08) !important;
  }

  html[data-flyup-theme="dark"] .flyup-dashboard-page--hub .flyup-dashboard-mobile-card input::placeholder,
  html[data-flyup-theme="dark"] .flyup-dashboard-page--hub .flyup-dashboard-mobile-card textarea::placeholder {
    color: #94a3b8 !important;
    -webkit-text-fill-color: #94a3b8 !important;
    opacity: 1 !important;
  }

  html[data-flyup-theme="dark"] .flyup-dashboard-page--hub .flyup-dashboard-mobile-back,
  html[data-flyup-theme="dark"] .flyup-dashboard-page--hub .flyup-dashboard-mobile-page-back {
    background: rgba(8, 20, 36, .96) !important;
    border: 1px solid rgba(56, 189, 248, .30) !important;
    color: #f8fbff !important;
    -webkit-text-fill-color: #f8fbff !important;
  }
}
