/* Dark-mode completion layer for all public pages. Loaded after page styles. */

.dark body.page-news {
  --news-navy: hsl(var(--foreground));
  --news-navy-soft: hsl(210 75% 78%);
  --news-red: hsl(350 82% 68%);
  --news-red-hover: hsl(350 88% 76%);
  --news-bg: hsl(var(--background));
  --news-border: hsl(var(--border));
  --news-muted: hsl(var(--muted-foreground));
  --news-shadow: 0 4px 16px rgb(0 0 0 / 0.24);
  --news-shadow-lg: 0 10px 30px rgb(0 0 0 / 0.34);
}

.dark body.page-about {
  --about-navy: hsl(var(--foreground));
  --about-navy-soft: hsl(210 75% 78%);
  --about-red: hsl(350 82% 68%);
  --about-red-hover: hsl(350 88% 76%);
  --about-green: hsl(var(--success));
  --about-bg: hsl(var(--background));
  --about-surface: hsl(var(--card));
  --about-border: hsl(var(--border));
  --about-muted: hsl(var(--muted-foreground));
  --brand-navy: hsl(var(--foreground));
  --brand-border: hsl(var(--border));
  --brand-text: hsl(var(--foreground));
  --brand-red: hsl(350 82% 68%);
  --brand-red-hover: hsl(350 88% 76%);
  --off-white: hsl(var(--background));
}

.dark body.page-contact {
  --contact-navy: hsl(var(--foreground));
  --contact-navy-soft: hsl(210 75% 78%);
  --contact-red: hsl(350 82% 68%);
  --contact-red-hover: hsl(350 88% 76%);
  --contact-bg: hsl(var(--background));
  --contact-surface: hsl(var(--card));
  --contact-border: hsl(var(--border));
  --contact-muted: hsl(var(--muted-foreground));
  --contact-text: hsl(var(--foreground));
  --brand-navy: hsl(var(--foreground));
  --brand-border: hsl(var(--border));
  --brand-text: hsl(var(--foreground));
  --brand-red: hsl(350 82% 68%);
  --brand-red-hover: hsl(350 88% 76%);
  --off-white: hsl(var(--background));
  --nav-blue: hsl(var(--foreground));
}

.dark body.page-schedule {
  --schedule-navy: hsl(var(--foreground));
  --schedule-navy-soft: hsl(210 75% 78%);
  --schedule-red: hsl(350 82% 68%);
  --schedule-red-hover: hsl(350 88% 76%);
  --schedule-bg: hsl(var(--background));
  --schedule-surface: hsl(var(--card));
  --schedule-border: hsl(var(--border));
  --schedule-muted: hsl(var(--muted-foreground));
  --schedule-text: hsl(var(--foreground));
  --brand-navy: hsl(var(--foreground));
  --brand-border: hsl(var(--border));
  --brand-text: hsl(var(--foreground));
  --brand-red: hsl(350 82% 68%);
  --brand-red-hover: hsl(350 88% 76%);
  --off-white: hsl(var(--background));
  --nav-blue: hsl(var(--foreground));
  --nav-light: hsl(210 75% 78%);
  --text-dark: hsl(var(--foreground));
  --text-light: hsl(var(--muted-foreground));
  --border-color: hsl(var(--border));
  --white: hsl(var(--card));
}

.dark .page-schedule .route-tab.active {
  background: hsl(var(--primary));
  border-color: hsl(var(--primary));
  color: hsl(var(--primary-foreground));
}

.dark .page-schedule .schedule-map-wrap {
  background: hsl(var(--card));
  border-color: hsl(var(--border));
}

.dark .page-schedule .schedule-map.leaflet-container {
  background: hsl(var(--muted)) !important;
}

.dark .page-schedule .schedule-map .leaflet-tile-pane {
  filter: brightness(0.62) saturate(0.72) contrast(1.16);
}

.dark .page-schedule .schedule-map :is(.leaflet-control-zoom a, .leaflet-popup-content-wrapper, .leaflet-popup-tip) {
  background: hsl(var(--card));
  border-color: hsl(var(--border));
  color: hsl(var(--foreground));
}

.dark .page-schedule .trip-card {
  background: hsl(var(--card));
  border-color: hsl(var(--border));
  color: hsl(var(--foreground));
  box-shadow: 0 5px 18px rgb(0 0 0 / 0.22);
}

.dark .page-schedule .trip-card :is(
  .trip-card__time,
  .trip-card__route,
  .trip-card__price,
  .trip-card__clock,
  .trip-card__vessel-name,
  strong
) {
  color: hsl(var(--foreground));
}

.dark .page-schedule .trip-card :is(
  .trip-card__meta,
  .trip-card__label,
  .trip-card__place,
  .trip-card__route-label,
  .trip-card__route-dur,
  .trip-card__vessel-type,
  .trip-card__price-sub,
  small
) {
  color: hsl(var(--muted-foreground));
}

.dark .page-schedule .trip-card .trip-card__price-amt {
  color: hsl(210 90% 76%);
}

.dark .page-schedule .trip-card .trip-card__badge--rec {
  background: hsl(210 60% 24%);
  color: hsl(210 90% 84%);
}

.dark .page-schedule .trip-card .trip-card__avail--ok {
  background: hsl(var(--success) / 0.14);
  color: hsl(142 70% 72%);
}

.dark .page-schedule .home-bottom-nav {
  --bottom-nav-navy: hsl(var(--foreground));
  --bottom-nav-red: hsl(350 82% 68%);
  background: hsl(var(--card));
  border-top-color: hsl(var(--border));
  box-shadow: 0 -5px 18px rgb(0 0 0 / 0.3);
}

.dark body.page-booking,
.dark body.page-booking .bk-page-wrap {
  --bk-navy: hsl(var(--foreground));
  --bk-blue: hsl(210 90% 76%);
  --bk-blue-light: hsl(210 100% 72%);
  --bk-blue-soft: hsl(var(--muted));
  --bk-red: hsl(350 82% 68%);
  --bk-green: hsl(var(--success));
  --bk-green-dark: hsl(var(--success));
  --bk-orange: hsl(var(--warning));
  --bk-surface: hsl(var(--card));
  --bk-bg: hsl(var(--background));
  --bk-border: hsl(var(--border));
  --bk-border-soft: hsl(var(--border) / 0.72);
  --bk-muted: hsl(var(--muted-foreground));
  --bk-ink: hsl(var(--foreground));
  --brand-navy: hsl(var(--foreground));
  --brand-border: hsl(var(--border));
  --brand-text: hsl(var(--foreground));
  --brand-red: hsl(350 82% 68%);
  --off-white: hsl(var(--background));
}

/* Booking flow surfaces define their own local tokens; remap them in dark mode. */
.dark body.page-booking .tr-page {
  --bk-surface: hsl(var(--card));
  --bk-surface-soft: hsl(var(--background));
  --bk-surface-tint: hsl(216 42% 22%);
  --bk-border: hsl(var(--border));
  --bk-hairline: hsl(var(--border) / 0.72);
  --bk-ink: hsl(var(--foreground));
  --bk-muted: hsl(var(--muted-foreground));
  --bk-faint: hsl(215 18% 68%);
  --nav-blue: hsl(210 90% 76%);
  --bk-shadow-card: 0 18px 40px -28px rgb(0 0 0 / 0.72);
  --bk-shadow-hover: 0 24px 48px -24px rgb(0 0 0 / 0.78);
}

.dark .page-booking .bk-filter-chip-label {
  color: hsl(var(--muted-foreground)) !important;
}

.dark .page-booking .bk-filter-chip-text {
  color: hsl(var(--foreground)) !important;
}

.dark .page-booking .bk-mobile-sum-bar {
  background: hsl(var(--card)) !important;
  border-color: hsl(var(--border)) !important;
}

.dark .page-booking .bk-mobile-sum-bar__title,
.dark .page-booking .bk-mobile-sum-bar__total-amt {
  color: hsl(var(--foreground)) !important;
}

.dark .page-booking :is(
  .bk-search-summary,
  .bk-filter-chip,
  .trip-card,
  .bk-show-more,
  .bk-route-map-card,
  .bk-empty-state,
  .bk-sub-back-link,
  .booking-step .step-circle
) {
  background: hsl(var(--card)) !important;
  border-color: hsl(var(--border)) !important;
  color: hsl(var(--foreground)) !important;
}

.dark .page-booking .bk-sub-back-link:hover {
  background: hsl(216 42% 22%) !important;
  border-color: hsl(210 55% 44%) !important;
  color: hsl(var(--foreground)) !important;
}

.dark .page-booking .bk-search-summary-swap {
  background: hsl(var(--background)) !important;
  border-color: hsl(var(--input)) !important;
  color: hsl(210 90% 76%) !important;
}

.dark .page-booking :is(
  .bk-search-outer.bk-editing,
  .bk-search-toolbar,
  #bkSearchOuter .booking-glass-panel,
  #bkSearchOuter .booking-form
) {
  background: hsl(var(--card)) !important;
  border-color: hsl(var(--border)) !important;
  color: hsl(var(--foreground)) !important;
}

.dark .page-booking .bk-search-close-btn {
  background: hsl(var(--background)) !important;
  border-color: hsl(var(--input)) !important;
  color: hsl(var(--muted-foreground)) !important;
  box-shadow: 0 2px 10px rgb(0 0 0 / 0.22);
}

.dark .page-booking .bk-search-close-btn:hover {
  background: hsl(216 42% 22%) !important;
  border-color: hsl(210 55% 44%) !important;
  color: hsl(var(--foreground)) !important;
}

.dark .page-booking :is(
  .bk-search-summary-value,
  .trip-card__time,
  .trip-card__clock,
  .trip-card__vessel-name,
  .trip-card__price,
  .trip-card__price-amt,
  .bk-empty-state-title
) {
  color: hsl(var(--foreground)) !important;
}

.dark .page-booking :is(
  .bk-search-summary-label,
  .trip-card__place,
  .trip-card__route-label,
  .trip-card__route-dur,
  .trip-card__vessel-type,
  .trip-card__price-from,
  .trip-card__price-sub,
  .bk-empty-state-desc
) {
  color: hsl(var(--muted-foreground)) !important;
}

.dark .page-booking .trip-card__nextday,
.dark .page-booking .bk-sum-route-end--arrive .bk-sum-route-date,
.dark .page-booking .bk-summary-full-leg-point--arrive .bk-summary-full-leg-day {
  color: hsl(210 90% 76%) !important;
}

.dark .page-booking .trip-card:hover:not(.trip-card--full),
.dark .page-booking .trip-card--selected {
  background: hsl(216 42% 22%) !important;
  border-color: hsl(210 65% 52%) !important;
  box-shadow: 0 8px 22px rgb(0 0 0 / 0.24);
}

.dark .page-booking .trip-card__badge--rec {
  background: hsl(210 55% 22%) !important;
  border-color: hsl(210 50% 34%) !important;
  color: hsl(210 92% 80%) !important;
}

.dark .page-booking .bk-skeleton-card {
  background: linear-gradient(90deg, hsl(218 32% 18%) 25%, hsl(218 30% 23%) 50%, hsl(218 32% 18%) 75%);
  background-size: 400% 100%;
  border-color: hsl(var(--border));
}

.dark .page-booking .booking-step.active .step-circle {
  background: hsl(210 72% 58%) !important;
  border-color: hsl(210 82% 68%) !important;
  color: #fff !important;
}

.dark .page-booking .booking-step.completed .step-circle {
  background: hsl(216 52% 30%) !important;
  border-color: hsl(210 58% 48%) !important;
  color: #fff !important;
}

.dark .page-booking :is(.bk-form-input, .bk-form-select):focus {
  background-color: hsl(var(--background)) !important;
}

.dark .page-booking :is(.bk-pax-child, .bk-pax-type-child) {
  background: hsl(152 42% 20%) !important;
  color: hsl(145 62% 72%) !important;
}

.dark .page-booking :is(
  .prv-pax-section,
  .prv-terms-section,
  .prv-payment-section,
  .prv-confirm-notice--inline
) {
  background: hsl(var(--card)) !important;
  border-color: hsl(var(--border)) !important;
  color: hsl(var(--foreground)) !important;
  box-shadow: 0 8px 24px rgb(0 0 0 / 0.2);
}

.dark .page-booking :is(
  .prv-pax-card,
  .prv-terms-box,
  .prv-pay-method-tile
) {
  background: hsl(var(--background)) !important;
  border-color: hsl(var(--border)) !important;
  color: hsl(var(--foreground)) !important;
}

.dark .page-booking :is(
  .prv-pay-method-tile:hover,
  .prv-pay-method-tile.is-selected,
  .prv-pay-method-tile:has(input:checked)
) {
  background: hsl(216 42% 22%) !important;
  border-color: hsl(210 55% 44%) !important;
}

.dark .page-booking :is(
  .prv-pax-section-title,
  .prv-pax-card-name,
  .prv-terms-section-title,
  .prv-terms-accept-text,
  .prv-payment-section-title,
  .prv-pay-method-tile__name,
  .prv-payment-notice__text strong,
  .prv-summary-sidebar-title
) {
  color: hsl(var(--foreground)) !important;
}

.dark .page-booking :is(
  .prv-pax-kv-row dd,
  .prv-terms-list,
  .prv-payment-muted,
  .prv-pay-trust-item,
  .prv-confirm-notice,
  .prv-summary-header p,
  .bk-finish-link-home,
  .bk-summary-card .text-secondary
) {
  color: hsl(var(--muted-foreground)) !important;
}

.dark .page-booking .prv-payment-notice {
  background: hsl(35 52% 18%) !important;
  border-color: hsl(35 48% 30%) !important;
}

.dark .page-booking .prv-payment-notice__text {
  color: hsl(38 70% 72%) !important;
}

.dark .page-booking .bk-reserve-countdown {
  background: hsl(28 48% 18%) !important;
  border-color: hsl(28 52% 32%) !important;
}

.dark .page-booking .bk-reserve-countdown-label {
  color: hsl(30 76% 72%) !important;
}

.dark .page-booking .bk-reserve-countdown-value {
  color: hsl(8 82% 70%) !important;
}

.dark .page-booking .bk-reserve-countdown.is-urgent {
  background: hsl(0 42% 18%) !important;
  border-color: hsl(0 48% 32%) !important;
}

.dark .page-booking .bk-finish-success-icon {
  background: hsl(152 42% 20%) !important;
  color: hsl(145 62% 72%) !important;
}

.dark .page-booking .bk-summary-card .border-light-subtle {
  border-color: hsl(var(--border)) !important;
}

.dark body:is(.page-news, .page-about, .page-contact, .page-schedule, .page-booking) {
  color-scheme: dark;
  background: hsl(var(--background));
  color: hsl(var(--foreground));
}

.dark body :is(hr, .dropdown-divider) {
  color: hsl(var(--border));
  border-color: hsl(var(--border));
  opacity: 0.45;
}

.dark body:not(.page-home) .home-navbar-light {
  background: hsl(var(--card) / 0.97) !important;
  border-bottom-color: hsl(var(--border)) !important;
  box-shadow: 0 2px 18px rgb(0 0 0 / 0.28) !important;
}

.dark body:not(.page-home) .home-navbar .nav-link,
.dark body:not(.page-home) .home-navbar .nav-link.active,
.dark body:not(.page-home) .home-nav-phone,
.dark body:not(.page-home) .home-brand-main {
  color: hsl(var(--foreground)) !important;
}

.dark body:not(.page-home) .home-navbar-light .lang-btn,
.dark body:not(.page-home) .home-navbar-light .home-navbar-lang-btn,
.dark body:not(.page-home) .home-navbar-light .navbar-toggler {
  background: hsl(var(--background)) !important;
  border-color: hsl(var(--input)) !important;
  color: hsl(var(--foreground)) !important;
}

.dark :is(.news-hero-overlay, .about-hero-overlay, .contact-hero-overlay, .schedule-hero-overlay, .bk-hero-overlay) {
  background: linear-gradient(105deg, hsl(222 40% 10% / 0.94), hsl(218 38% 15% / 0.82) 48%, hsl(216 50% 13% / 0.66)) !important;
}

.dark :is(.news-hero, .about-hero, .contact-hero, .schedule-hero, .bk-hero) :is(h1, h2, p, a, span) {
  color: hsl(var(--foreground));
  text-shadow: 0 2px 12px rgb(0 0 0 / 0.72);
}

.dark .page-news :is(.news-card, .news-featured-card, .news-sidebar-card, .news-empty, .news-search-form, .news-article, .news-related-card, .news-filter-btn),
.dark .page-about :is(.about-stat-card, .about-value-card, .about-route-card, .about-fleet-card, .about-timeline-dot),
.dark .page-contact :is(.contact-methods__item, .contact-form-panel, .contact-branch-card, .contact-map, .contact-map-empty),
.dark .page-schedule :is(.schedule-search-card, .schedule-filter-card, .schedule-results, .schedule-card, .schedule-empty),
.dark .page-booking :is(.bk-card, .bk-panel, .bk-result-card, .bk-empty-state, .bk-summary-card, .bk-fare-card, .bk-lookup-card) {
  background: hsl(var(--card)) !important;
  border-color: hsl(var(--border)) !important;
  color: hsl(var(--foreground));
  box-shadow: 0 5px 18px rgb(0 0 0 / 0.22);
}

.dark .page-booking .lkp-search-card :is(h1, h2, h3, h4, h5, h6) {
  color: hsl(var(--foreground)) !important;
}

.dark .page-booking .lkp-search-card :is(.text-secondary, .lkp-otp-lead) {
  color: hsl(var(--muted-foreground)) !important;
}

.dark .page-booking .lkp-search-card-header-icon {
  background: hsl(210 60% 24%) !important;
  color: hsl(210 90% 84%) !important;
}

.dark .page-news .news-widget,
.dark .page-about :is(.about-mvv-card, .about-svc, .about-svc__card, .about-safe, .about-commit),
.dark .page-about .about-timeline-icon {
  background: hsl(var(--card)) !important;
  border-color: hsl(var(--border)) !important;
  color: hsl(var(--foreground));
}

.dark .page-about :is(.about-svc, .about-safe) {
  background: hsl(var(--background)) !important;
}

.dark .page-about .about-commit-title {
  color: hsl(var(--foreground));
}

.dark .page-about :is(.about-commit, .about-commit-card) {
  background: hsl(216 42% 20%) !important;
  color: hsl(var(--foreground));
}

.dark .page-about :is(.about-svc__title, .about-svc__card-title, .about-safe__title) {
  color: hsl(var(--foreground)) !important;
}

.dark :is(.page-news, .page-about, .page-contact, .page-schedule, .page-booking) :is(input, select, textarea, .form-control, .form-select) {
  background-color: hsl(var(--background)) !important;
  border-color: hsl(var(--input)) !important;
  color: hsl(var(--foreground)) !important;
}

.dark :is(.page-news, .page-about, .page-contact, .page-schedule, .page-booking) :is(input, textarea)::placeholder {
  color: hsl(var(--muted-foreground)) !important;
  opacity: 1;
}

.dark :is(.page-news, .page-about, .page-contact, .page-schedule, .page-booking) :is(input, select, textarea, button):focus-visible {
  border-color: hsl(var(--ring)) !important;
  box-shadow: 0 0 0 3px hsl(var(--ring) / 0.2) !important;
}

.dark .page-contact .contact-form__control,
.dark .page-contact .contact-map-empty,
.dark .page-contact .contact-methods__item,
.dark .page-news .news-empty {
  background: hsl(var(--card)) !important;
  border-color: hsl(var(--border)) !important;
  color: hsl(var(--foreground)) !important;
}

.dark body:not(.page-home) .home-btn-book,
.dark .page-contact .contact-form__submit,
.dark .page-news :is(.news-cat-tab.is-active, .news-newsletter-btn),
.dark .page-about .about-cta {
  background: hsl(350 78% 36%) !important;
  border-color: hsl(350 78% 36%) !important;
  color: #fff !important;
}

.dark .page-about .about-cta-btn--primary {
  background: hsl(var(--foreground)) !important;
  color: hsl(350 72% 30%) !important;
}

.dark .page-booking .bk-btn-primary {
  background: hsl(216 72% 40%) !important;
  border-color: hsl(216 72% 40%) !important;
  color: #fff !important;
}

.dark .page-booking .bk-alert-validation {
  background: hsl(var(--card)) !important;
  border-color: hsl(var(--border)) !important;
}

.dark .page-booking .bk-alert-validation-title {
  color: hsl(var(--foreground)) !important;
}

.dark .page-booking .bk-alert-validation-lead {
  color: hsl(var(--muted-foreground)) !important;
}

.dark .page-booking .bk-alert-validation-item {
  background: hsl(var(--background)) !important;
  border-color: hsl(var(--border)) !important;
  color: hsl(var(--foreground)) !important;
}

.dark .page-booking :is(.home-route-input-composite, .dropdown-panel, .home-sidebar-input--stacked, .home-sidebar-input--stacked.pax-bs-trigger) {
  background: hsl(var(--card)) !important;
  border-color: hsl(var(--input)) !important;
  color: hsl(var(--foreground)) !important;
}

.dark .page-booking .home-booking-sidebar .home-sidebar-input--stacked .home-field-label-inline {
  background: hsl(var(--card)) !important;
  color: hsl(var(--muted-foreground)) !important;
}

.dark .page-home :is(.mob-cal-footer, .mob-pax-vehicle-option, .mob-oc-search-wrap, .schedule-feedback) {
  background: hsl(var(--card)) !important;
  border-color: hsl(var(--border)) !important;
  color: hsl(var(--foreground)) !important;
}

.dark .page-schedule .leaflet-bar a {
  background: hsl(var(--card)) !important;
  border-color: hsl(var(--border)) !important;
  color: hsl(var(--foreground)) !important;
}

.dark .page-booking :is(.bg-white, .card, .modal-content, .dropdown-menu, .accordion-item, .list-group-item),
.dark .page-schedule :is(.modal-content, .dropdown-menu),
.dark .page-news :is(.modal-content, .dropdown-menu) {
  background-color: hsl(var(--card)) !important;
  border-color: hsl(var(--border)) !important;
  color: hsl(var(--foreground)) !important;
}

.dark :is(.page-news, .page-about, .page-contact, .page-schedule, .page-booking) :is(.text-dark, .text-body) {
  color: hsl(var(--foreground)) !important;
}

.dark :is(.page-news, .page-about, .page-contact, .page-schedule, .page-booking) :is(.text-muted, .form-text) {
  color: hsl(var(--muted-foreground)) !important;
}

/* Booking finish: calm confirmation surface with accessible dark-mode contrast. */
.dark .page-booking-finish .bk-finish-confirmation__badge,
.dark .page-booking-finish .bk-finish-next__secure {
  background: hsl(152 42% 20%) !important;
  color: hsl(145 62% 72%) !important;
}

.dark .page-booking-finish .bk-finish-confirmation__check {
  background: hsl(150 55% 38%) !important;
  color: #fff !important;
}

.dark .page-booking-finish :is(.bk-finish-confirmation__ticket, .bk-finish-next__head-icon, .bk-finish-next__num) {
  background: hsl(216 42% 22%) !important;
  border-color: hsl(var(--border)) !important;
  color: hsl(210 90% 76%) !important;
}

.dark .page-booking-finish .bk-finish-action--primary {
  background: hsl(216 72% 40%) !important;
  color: #fff !important;
}

.dark .page-booking-finish .bk-finish-action--secondary {
  background: hsl(var(--background)) !important;
  border-color: hsl(var(--border)) !important;
  color: hsl(var(--foreground)) !important;
}

/* Payment return */
.dark body.page-payment-return,
.dark .page-payment-return .pay-return-page {
  background-color: hsl(var(--background)) !important;
}

.dark .page-payment-return .pay-return-page {
  background-image:
    radial-gradient(circle at 8% 2%, hsl(210 80% 48% / 0.14), transparent 28rem),
    radial-gradient(circle at 96% 92%, hsl(350 78% 50% / 0.08), transparent 24rem) !important;
}

.dark .page-payment-return .pay-return-page::before {
  background-image: linear-gradient(hsl(var(--foreground) / 0.035) 1px, transparent 1px), linear-gradient(90deg, hsl(var(--foreground) / 0.035) 1px, transparent 1px);
}

.dark .page-payment-return :is(.pay-return-status-card, .pay-return-guide) {
  background: hsl(var(--card)) !important;
  border-color: hsl(var(--border)) !important;
  box-shadow: 0 24px 60px -34px rgb(0 0 0 / 0.82);
}

.dark .page-payment-return :is(.pay-return-kicker, .pay-return-guide__icon, .pay-return-steps li.is-active > span) {
  background: hsl(216 42% 22%) !important;
  border-color: hsl(213 38% 30%) !important;
  color: hsl(210 90% 76%) !important;
}

.dark .page-payment-return .pay-return-kicker--error {
  background: hsl(350 40% 20%) !important;
  color: hsl(350 82% 72%) !important;
}

.dark .page-payment-return .pay-return-live-status { color: hsl(var(--muted-foreground)) !important; }
.dark .page-payment-return .pay-return-keep-open { background: hsl(42 38% 17%); border-color: hsl(42 38% 28%); }
.dark .page-payment-return .pay-return-keep-open__icon { background: hsl(42 44% 25%); color: hsl(42 88% 72%); }
.dark .page-payment-return .pay-return-keep-open :is(strong, small) { color: hsl(42 78% 78%); }
.dark .page-payment-return .pay-return-btn--primary { background: hsl(216 72% 40%) !important; color: #fff !important; }
.dark .page-payment-return .pay-return-btn--secondary { background: hsl(var(--background)) !important; border-color: hsl(var(--border)) !important; color: hsl(var(--foreground)) !important; }
.dark .page-payment-return .pay-return-steps li > span { background: hsl(var(--background)); border-color: hsl(var(--border)); }
.dark .page-payment-return .pay-return-steps li.is-complete > span { background: hsl(152 42% 20%); border-color: hsl(152 34% 30%); color: hsl(145 62% 72%); }
.dark .page-payment-return .pay-return-secure { background: hsl(152 32% 17%); border-color: hsl(152 26% 28%); color: hsl(145 52% 74%); }
.dark .page-payment-return .pay-return-secure :is(strong, small) { color: hsl(145 52% 74%); }

/* Payment expired */
.dark body.page-payment-expired,
.dark .page-payment-expired .payment-expired-page { background-color: hsl(var(--background)) !important; }
.dark .page-payment-expired .payment-expired-page { background-image: radial-gradient(circle at 10% 4%, hsl(32 72% 48% / 0.12), transparent 28rem), radial-gradient(circle at 96% 90%, hsl(210 80% 48% / 0.1), transparent 25rem) !important; }
.dark .page-payment-expired .payment-expired-page::before { background-image: linear-gradient(hsl(var(--foreground) / 0.035) 1px, transparent 1px), linear-gradient(90deg, hsl(var(--foreground) / 0.035) 1px, transparent 1px); }
.dark .page-payment-expired :is(.payment-expired-card, .payment-expired-help) { background: hsl(var(--card)) !important; border-color: hsl(var(--border)) !important; box-shadow: 0 24px 60px -34px rgb(0 0 0 / 0.82); }
.dark .page-payment-expired :is(.payment-expired-kicker, .payment-expired-help__icon) { background: hsl(32 42% 21%) !important; color: hsl(38 88% 72%) !important; }
.dark .page-payment-expired .payment-expired-notice { background: hsl(152 32% 17%); border-color: hsl(152 26% 28%); }
.dark .page-payment-expired .payment-expired-notice > iconify-icon,
.dark .page-payment-expired .payment-expired-notice :is(strong, small) { color: hsl(145 52% 74%); }
.dark .page-payment-expired .payment-expired-btn--primary { background: hsl(216 72% 40%); color: #fff; }
.dark .page-payment-expired .payment-expired-btn--secondary { background: hsl(var(--background)); border-color: hsl(var(--border)); color: hsl(var(--foreground)); }
.dark .page-payment-expired .payment-expired-support { background: hsl(var(--background)); border-color: hsl(var(--border)); }
.dark .page-booking .pay-card-brands > span { background: hsl(var(--background)); border-color: hsl(var(--border)); color: hsl(var(--foreground)); }
