/* Saba atmosphere — dark / sunset / bright
   Tokens first; surfaces hardcoded elsewhere are remapped here. */

:root,
html[data-saba-theme="dark"] {
  color-scheme: dark;
  --bg-dark: #0c0b0a;
  --bg-card: #1c1814;
  --gold: #d4ae6a;
  --gold-light: #f0d9a8;
  --text-main: #f4eee4;
  --text-muted: #b8a894;
  --saba-surface: #161310;
  --saba-sheet-bg: rgba(16, 14, 12, 0.96);
  --saba-drawer-bar: linear-gradient(180deg, rgba(22, 18, 14, 0.98) 0%, rgba(16, 14, 12, 0.96) 100%);
  --saba-header-bg: linear-gradient(180deg, rgba(12, 11, 10, 0.88) 55%, rgba(12, 11, 10, 0.58) 88%, transparent);
  --saba-nav-bg: linear-gradient(180deg, rgba(28, 22, 16, 0.94), rgba(10, 8, 7, 0.98));
  --saba-nav-ink: rgba(244, 238, 228, 0.52);
  --saba-nav-ink-active: #f0d9a8;
  --saba-nav-icon: #f4eee4;
  --saba-nav-icon-active: #fff8ea;
  --saba-nav-label: #f4eee4;
  --saba-nav-label-active: #fff8ea;
  --saba-ink-soft: rgba(244, 238, 228, 0.72);
  --saba-line: rgba(212, 174, 106, 0.28);
  --saba-wash: rgba(255, 255, 255, 0.045);
  --saba-nude: #e6d0b8;
  --saba-tile-shadow: 0 4px 14px rgba(0, 0, 0, 0.18);
  --saba-cta-fg: #f6ecd8;
  --saba-cta-border: rgba(212, 175, 105, 0.48);
  --saba-cta-bg:
    linear-gradient(160deg, rgba(232, 205, 150, 0.26), rgba(120, 90, 45, 0.18) 55%, rgba(40, 32, 20, 0.34));
  --saba-cta-shadow:
    inset 0 1px 0 rgba(255, 248, 230, 0.14),
    0 8px 22px rgba(0, 0, 0, 0.28);
  --saba-tile-border: rgba(212, 174, 106, 0.3);
  --saba-tile-bg:
    linear-gradient(160deg, rgba(255, 255, 255, 0.05), transparent 48%),
    rgba(22, 18, 14, 0.72);
  --saba-info-bg:
    linear-gradient(180deg, rgba(255, 255, 255, 0.03), transparent 46%),
    rgba(16, 14, 12, 0.38);
  --saba-info-bg-hover:
    linear-gradient(180deg, rgba(255, 255, 255, 0.05), transparent 46%),
    rgba(20, 17, 14, 0.48);
  --saba-info-border: rgba(184, 168, 148, 0.2);
  --saba-info-border-hover: rgba(184, 168, 148, 0.34);
  --saba-info-shadow: none;
  --saba-info-icon: #b0a090;
  --saba-commerce-bg:
    linear-gradient(155deg, rgba(255, 248, 230, 0.07) 0%, rgba(36, 30, 24, 0.55) 42%, rgba(18, 15, 12, 0.72) 100%);
  --saba-commerce-bg-hover:
    linear-gradient(155deg, rgba(255, 248, 230, 0.11) 0%, rgba(42, 34, 26, 0.62) 42%, rgba(22, 18, 14, 0.78) 100%);
  --saba-commerce-border: rgba(196, 168, 120, 0.28);
  --saba-commerce-shadow:
    inset 0 1px 0 rgba(255, 248, 230, 0.08),
    0 8px 22px rgba(0, 0, 0, 0.22);
  --saba-commerce-icon: #c9b089;
  --saba-shadow: 0 18px 40px -12px rgba(0, 0, 0, 0.55);
  --saba-logo-wash: 0.09;
  --theme-color: #0c0b0a;
  --hero-gradient-start: #2a241c;
  --hero-gradient-end: #12100c;
  --saba-input-bg: rgba(12, 10, 8, 0.55);
  --saba-input-fg: #f0e6d4;
}

html[data-saba-theme="sunset"] {
  color-scheme: dark;
  --bg-dark: #1c120c;
  --bg-card: #2c1c14;
  --gold: #e0b56a;
  --gold-light: #f6e0b4;
  --text-main: #f8eedc;
  --text-muted: #d2b896;
  --saba-surface: #24160f;
  --saba-sheet-bg: rgba(36, 22, 14, 0.96);
  --saba-drawer-bar: linear-gradient(180deg, rgba(48, 28, 16, 0.98) 0%, rgba(32, 18, 12, 0.96) 100%);
  --saba-header-bg: linear-gradient(180deg, rgba(28, 16, 10, 0.88) 55%, rgba(28, 16, 10, 0.52) 88%, transparent);
  --saba-nav-bg: linear-gradient(180deg, rgba(52, 30, 16, 0.94), rgba(18, 10, 8, 0.98));
  --saba-nav-ink: rgba(248, 238, 220, 0.58);
  --saba-nav-ink-active: #ffe4b0;
  --saba-nav-icon: #f8eedc;
  --saba-nav-icon-active: #fff3d8;
  --saba-nav-label: #f8eedc;
  --saba-nav-label-active: #fff3d8;
  --saba-ink-soft: rgba(248, 238, 220, 0.78);
  --saba-line: rgba(224, 181, 106, 0.38);
  --saba-nude: #edd8c0;
  --saba-tile-shadow: 0 4px 16px rgba(40, 12, 4, 0.22);
  --saba-wash: rgba(255, 196, 120, 0.08);
  --saba-cta-fg: #fff4de;
  --saba-cta-border: rgba(232, 180, 90, 0.55);
  --saba-cta-bg:
    linear-gradient(160deg, rgba(255, 186, 92, 0.32), rgba(150, 72, 28, 0.22) 55%, rgba(48, 22, 12, 0.4));
  --saba-cta-shadow:
    inset 0 1px 0 rgba(255, 236, 200, 0.18),
    0 10px 28px rgba(80, 28, 8, 0.35);
  --saba-tile-border: rgba(224, 170, 88, 0.38);
  --saba-tile-bg:
    linear-gradient(160deg, rgba(255, 190, 110, 0.1), transparent 50%),
    rgba(42, 24, 14, 0.78);
  --saba-info-bg:
    linear-gradient(180deg, rgba(255, 210, 160, 0.06), transparent 48%),
    rgba(32, 18, 12, 0.42);
  --saba-info-bg-hover:
    linear-gradient(180deg, rgba(255, 210, 160, 0.1), transparent 48%),
    rgba(38, 22, 14, 0.52);
  --saba-info-border: rgba(210, 184, 150, 0.22);
  --saba-info-border-hover: rgba(210, 184, 150, 0.38);
  --saba-info-shadow: none;
  --saba-info-icon: #d2b896;
  --saba-commerce-bg:
    linear-gradient(155deg, rgba(255, 210, 150, 0.1) 0%, rgba(48, 28, 16, 0.55) 45%, rgba(28, 14, 10, 0.72) 100%);
  --saba-commerce-bg-hover:
    linear-gradient(155deg, rgba(255, 210, 150, 0.14) 0%, rgba(56, 32, 18, 0.6) 45%, rgba(34, 18, 12, 0.78) 100%);
  --saba-commerce-border: rgba(224, 180, 110, 0.32);
  --saba-commerce-shadow:
    inset 0 1px 0 rgba(255, 236, 200, 0.1),
    0 8px 22px rgba(40, 12, 4, 0.26);
  --saba-commerce-icon: #e0c498;
  --saba-shadow: 0 18px 40px -12px rgba(40, 12, 4, 0.5);
  --saba-logo-wash: 0.11;
  --theme-color: #1c120c;
  --hero-gradient-start: #3a2416;
  --hero-gradient-end: #1c1008;
  --saba-input-bg: rgba(20, 12, 8, 0.55);
  --saba-input-fg: #f8eedc;
}

html[data-saba-theme="bright"] {
  color-scheme: light;
  --bg-dark: #f3ead8;
  --bg-card: #fbf6ec;
  --gold: #8a6528;
  --gold-light: #a07830;
  --text-main: #241c14;
  --text-muted: #6a5a46;
  --saba-surface: #f7f0e2;
  --saba-sheet-bg: rgba(251, 246, 236, 0.98);
  --saba-drawer-bar: linear-gradient(180deg, rgba(251, 246, 236, 0.98) 0%, rgba(247, 240, 226, 0.96) 100%);
  --saba-header-bg: linear-gradient(180deg, rgba(243, 234, 216, 0.88) 55%, rgba(243, 234, 216, 0.52) 88%, transparent);
  --saba-nav-bg: linear-gradient(180deg, rgba(250, 244, 230, 0.96), rgba(238, 226, 204, 0.98));
  --saba-nav-ink: rgba(36, 28, 20, 0.72);
  --saba-nav-ink-active: #6e4e1c;
  --saba-nav-icon: #a8906c;
  --saba-nav-icon-active: #8a7048;
  --saba-nav-label: #7a6548;
  --saba-nav-label-active: #5c4a32;
  --saba-ink-soft: rgba(36, 28, 20, 0.72);
  --saba-line: rgba(138, 101, 40, 0.32);
  --saba-wash: rgba(138, 101, 40, 0.08);
  --saba-nude: #d4c0a4;
  --saba-tile-shadow: 0 3px 10px rgba(80, 50, 16, 0.07);
  --saba-cta-fg: #2a1e12;
  --saba-cta-border: rgba(110, 78, 28, 0.48);
  --saba-cta-bg:
    linear-gradient(160deg, #ead7a8 0%, #d4b56a 100%);
  --saba-cta-shadow:
    inset 0 1px 0 rgba(255, 252, 244, 0.55),
    0 6px 16px rgba(90, 60, 20, 0.12);
  --saba-tile-border: rgba(138, 101, 40, 0.28);
  --saba-tile-bg:
    linear-gradient(160deg, rgba(255, 255, 255, 0.7), transparent 48%),
    rgba(255, 250, 240, 0.88);
  --saba-info-bg:
    linear-gradient(180deg, rgba(255, 255, 255, 0.55), rgba(245, 238, 224, 0.92));
  --saba-info-bg-hover:
    linear-gradient(180deg, rgba(255, 255, 255, 0.72), rgba(248, 242, 230, 0.96));
  --saba-info-border: rgba(80, 64, 48, 0.14);
  --saba-info-border-hover: rgba(80, 64, 48, 0.24);
  --saba-info-shadow: none;
  --saba-info-icon: #b8a48a;
  --saba-commerce-bg:
    linear-gradient(160deg, rgba(255, 255, 255, 0.72) 0%, rgba(248, 240, 224, 0.94) 100%);
  --saba-commerce-bg-hover:
    linear-gradient(160deg, rgba(255, 255, 255, 0.88) 0%, rgba(250, 244, 232, 0.98) 100%);
  --saba-commerce-border: rgba(120, 96, 64, 0.22);
  --saba-commerce-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.85),
    0 6px 18px rgba(70, 50, 24, 0.08);
  --saba-commerce-icon: #b89a72;
  --saba-shadow: 0 16px 36px -14px rgba(80, 50, 16, 0.22);
  --saba-logo-wash: 0.07;
  --theme-color: #f3ead8;
  --hero-gradient-start: #fff8ec;
  --hero-gradient-end: #efe4ce;
  --saba-input-bg: rgba(255, 252, 244, 0.94);
  --saba-input-fg: #241c14;
  --shadow-elevation: 0 20px 40px -12px rgba(80, 50, 16, 0.18);
  --shadow-inset: inset 1px 1px 4px rgba(80, 50, 16, 0.08), inset -1px -1px 4px rgba(255, 255, 255, 0.7);
}

html {
  background-color: var(--bg-dark);
}

body {
  background-color: var(--bg-dark);
  color: var(--text-main);
  transition: background-color 0.45s var(--saba-ease, cubic-bezier(0.22, 1, 0.36, 1));
}

body::before {
  opacity: var(--saba-logo-wash, 0.08);
}

.modal-panel {
  background: var(--saba-sheet-bg);
  transition:
    transform 0.5s var(--saba-ease, cubic-bezier(0.22, 1, 0.36, 1)),
    background-color 0.45s var(--saba-ease, cubic-bezier(0.22, 1, 0.36, 1));
}

.modal-close-btn,
.modal-back-btn {
  color: rgba(255, 255, 255, 0.45);
  background: transparent;
  border-color: transparent;
  box-shadow: none;
  transition:
    color var(--saba-duration, 0.32s) var(--saba-ease, cubic-bezier(0.22, 1, 0.36, 1)),
    transform var(--saba-duration, 0.32s) var(--saba-ease, cubic-bezier(0.22, 1, 0.36, 1));
}
.modal-close-btn:hover,
.modal-back-btn:hover {
  color: rgba(255, 255, 255, 0.75);
  background: transparent;
}

.modal-drawer-chrome,
.modal-drawer-bar {
  background: var(--saba-drawer-bar);
  border-bottom-color: var(--saba-line);
}
.modal-drawer-chrome .modal-drawer-bar {
  background: transparent;
  border-bottom-color: transparent;
}

.app-header-fixed {
  background: var(--saba-header-bg);
}

.bottom-nav {
  background: color-mix(in srgb, var(--bg-dark) 40%, transparent);
  border-color: color-mix(in srgb, var(--saba-line) 75%, transparent);
  box-shadow:
    0 10px 32px color-mix(in srgb, var(--bg-dark) 38%, transparent),
    inset 0 1px 0 rgba(255, 255, 255, 0.14);
}

.bottom-nav-item {
  color: var(--saba-nav-ink);
  transition:
    color var(--saba-duration, 0.32s) var(--saba-ease, cubic-bezier(0.22, 1, 0.36, 1)),
    transform var(--saba-duration, 0.32s) var(--saba-ease, cubic-bezier(0.22, 1, 0.36, 1)),
    opacity 0.22s ease,
    padding 0.28s ease,
    min-width 0.28s ease,
    gap 0.22s ease;
}

.bottom-nav-item:active {
  transform: scale(0.94);
}

.bottom-nav-item.is-active {
  color: var(--saba-nav-ink-active);
}

.theme-cycle {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  width: 34px;
  min-width: 34px;
  max-width: 34px;
  height: 30px;
  padding: 0;
  margin: 0;
  border: 1px solid var(--saba-line);
  border-radius: 14px;
  background: var(--saba-wash);
  color: var(--gold-light);
  font-size: 0.82rem;
  cursor: pointer;
  overflow: hidden;
  opacity: 1;
  transform: scale(1);
  transition:
    max-width 0.42s cubic-bezier(0.42, 0, 0.18, 1),
    width 0.42s cubic-bezier(0.42, 0, 0.18, 1),
    min-width 0.42s cubic-bezier(0.42, 0, 0.18, 1),
    opacity 0.34s cubic-bezier(0.42, 0, 0.18, 1),
    transform 0.38s cubic-bezier(0.42, 0, 0.18, 1),
    margin 0.42s cubic-bezier(0.42, 0, 0.18, 1),
    border-width 0.32s ease,
    border-color var(--saba-duration, 0.32s) var(--saba-ease, cubic-bezier(0.22, 1, 0.36, 1)),
    background var(--saba-duration, 0.32s) var(--saba-ease, cubic-bezier(0.22, 1, 0.36, 1)),
    color var(--saba-duration, 0.32s) var(--saba-ease, cubic-bezier(0.22, 1, 0.36, 1)),
    box-shadow var(--saba-duration, 0.32s) var(--saba-ease, cubic-bezier(0.22, 1, 0.36, 1));
}
.theme-cycle.is-header-hidden {
  width: 0;
  min-width: 0;
  max-width: 0;
  margin: 0;
  padding: 0;
  opacity: 0;
  transform: scale(0.78);
  border-width: 0;
  pointer-events: none;
}
.theme-cycle.is-header-animating {
  will-change: max-width, opacity, transform;
}

.theme-cycle:hover {
  border-color: var(--gold);
  background: color-mix(in srgb, var(--gold) 16%, transparent);
  transform: translateY(-1px);
}

.theme-cycle:active {
  transform: scale(0.94);
}

.theme-cycle i {
  transition: transform 0.45s var(--saba-ease, cubic-bezier(0.22, 1, 0.36, 1));
}

.theme-cycle.is-switching i {
  animation: themeIconSpin 0.5s var(--saba-ease, cubic-bezier(0.22, 1, 0.36, 1));
}

.theme-dock {
  position: relative;
  z-index: 12;
  flex: 0 0 auto;
}
.theme-phase-popover {
  position: absolute;
  top: calc(100% + 10px);
  right: 0;
  width: min(312px, calc(100vw - 28px));
  padding: 8px;
  border-radius: 20px;
  background: var(--saba-header-bg, var(--bg-card, #1c1814));
  border: 1px solid var(--saba-line, rgba(191, 155, 88, 0.28));
  box-shadow:
    0 18px 40px -16px rgba(0, 0, 0, 0.55),
    0 1px 0 color-mix(in srgb, var(--gold-light, #f0d9a8) 12%, transparent);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  z-index: 50023;
}
.theme-phase-popover[hidden] {
  display: none !important;
}
html.is-theme-crossing .theme-phase-popover,
html.is-theme-fade-out .theme-phase-popover {
  opacity: 1 !important;
  background: var(--saba-wash, var(--bg-card, #1c1814));
}
.app-header-fixed:has(.theme-dock.is-open) {
  overflow: visible;
  z-index: 50024;
}

@keyframes themeIconSpin {
  from { transform: rotate(-40deg) scale(0.86); opacity: 0.4; }
  to { transform: none; opacity: 1; }
}

/* ——— Bright remaps for hardcoded dark surfaces ——— */
html[data-saba-theme="bright"] .modal-drawer-handle {
  background: rgba(36, 28, 20, 0.22);
}

html[data-saba-theme="bright"] .header-reception {
  color: var(--text-main);
}

html[data-saba-theme="bright"] .header-reception {
  background: linear-gradient(145deg, rgba(191, 155, 88, 0.28), rgba(255, 250, 240, 0.7));
  color: var(--text-main);
}

html[data-saba-theme="bright"] .lang-flags {
  border-color: rgba(36, 28, 20, 0.12);
  background: rgba(255, 255, 255, 0.45);
}

html[data-saba-theme="bright"] .welcome-replay-btn {
  background:
    radial-gradient(circle at 30% 30%, rgba(229, 204, 160, 0.45), transparent 55%),
    rgba(255, 250, 240, 0.9);
  color: #5a3c18;
}

html[data-saba-theme="bright"] .saba-hint-tip {
  background: rgba(42, 30, 18, 0.97);
  color: #f6ecd8;
  border-color: rgba(191, 155, 88, 0.5);
}

html[data-saba-theme="bright"] .roya-card,
html[data-saba-theme="bright"] .roya-intro {
  background: var(--saba-tile-bg);
  border-color: var(--saba-tile-border);
}

html[data-saba-theme="bright"] .roya-intro-text,
html[data-saba-theme="bright"] .roya-tab {
  color: var(--saba-ink-soft);
}

html[data-saba-theme="bright"] .roya-tab {
  border-color: var(--saba-tile-border);
  background: rgba(255, 255, 255, 0.45);
}

html[data-saba-theme="bright"] .welcome-pres-sticky,
html[data-saba-theme="bright"] .welcome-chap-dock {
  background: linear-gradient(180deg, var(--saba-surface) 75%, color-mix(in srgb, var(--saba-surface) 0%, transparent)) !important;
}

html[data-saba-theme="bright"] .welcome-chap-dock .h-scroll-hint {
  background: linear-gradient(90deg, transparent 0%, var(--saba-surface) 70%);
}
html[data-saba-theme="bright"] .welcome-chap-dock {
  border-bottom-color: var(--saba-line);
}

html[data-saba-theme="bright"] .welcome-chap-pill {
  color: var(--text-muted);
  border-color: var(--saba-tile-border);
  background: rgba(255, 255, 255, 0.55);
}

html[data-saba-theme="bright"] .welcome-chap-pill.is-on,
html[data-saba-theme="bright"] .welcome-chap-pill.is-active,
html[data-saba-theme="bright"] .welcome-chap-pill:hover {
  color: var(--text-main);
  border-color: rgba(138, 101, 40, 0.45);
  background: rgba(191, 155, 88, 0.16);
}

html[data-saba-theme="bright"] .welcome-body,
html[data-saba-theme="bright"] .welcome-pres-block,
html[data-saba-theme="bright"] .welcome-pres-p,
html[data-saba-theme="bright"] .welcome-quote-p,
html[data-saba-theme="bright"] .welcome-room-detail-block {
  color: var(--saba-ink-soft);
}

html[data-saba-theme="bright"] .caprices-sheet-panel,
html[data-saba-theme="bright"] .transport-sheet-panel,
html[data-saba-theme="bright"] .hk-sheet-panel,
html[data-saba-theme="bright"] .resupply-sheet-panel,
html[data-saba-theme="bright"] .reception-sheet-panel,
html[data-saba-theme="bright"] .a2hs-sheet-panel,
html[data-saba-theme="bright"] .basket-sheet-panel {
  background: var(--saba-sheet-bg);
  color: var(--text-main);
}

html[data-saba-theme="bright"] .basket-sheet-panel--receipt {
  background: linear-gradient(180deg, #fbf6ec 0%, #f3ead8 100%) !important;
}

html[data-saba-theme="bright"] .saba-cta,
html[data-saba-theme="bright"] .basket-send,
html[data-saba-theme="bright"] .caprices-add,
html[data-saba-theme="bright"] .transport-send,
html[data-saba-theme="bright"] .hk-send,
html[data-saba-theme="bright"] .roya-btn--gold,
html[data-saba-theme="bright"] .welcome-cta-premium {
  color: var(--saba-cta-fg) !important;
}

html[data-saba-theme="bright"] .weather-bento {
  background: linear-gradient(155deg, rgba(255, 250, 240, 0.88) 0%, rgba(242, 230, 206, 0.92) 100%) !important;
  box-shadow: var(--saba-shadow);
}

html[data-saba-theme="bright"] .collection-frame {
  border-color: var(--saba-tile-border);
  box-shadow: var(--saba-shadow);
}
html[data-saba-theme="bright"] .collection-work {
  color: #8a6a32;
}
html[data-saba-theme="bright"] .collection-more {
  background: rgba(255, 252, 244, 0.7);
  color: var(--text-muted);
}
html[data-saba-theme="bright"] .collection-info {
  border-color: var(--saba-tile-border);
}

html[data-saba-theme="bright"] .wifi-toggle {
  background: rgba(255, 255, 255, 0.45) !important;
  border-color: var(--saba-tile-border);
}

html[data-saba-theme="bright"] .hub-section {
  background: linear-gradient(160deg, rgba(255, 250, 240, 0.72) 0%, rgba(242, 230, 206, 0.82) 100%) !important;
}

html[data-saba-theme="bright"] .hero-card {
  border-color: rgba(255, 236, 200, 0.38);
  box-shadow:
    0 22px 44px -16px rgba(90, 50, 12, 0.28),
    inset 0 1px 0 rgba(255, 248, 230, 0.45);
}

html[data-saba-theme="bright"] .welcome-text {
  color: #f6ecd8;
}
html[data-saba-theme="bright"] body.is-house-mode .welcome-text {
  background: rgba(36, 28, 20, 0.78);
  color: #f6ecd8;
  border-color: rgba(138, 101, 40, 0.35);
}

html[data-saba-theme="bright"] .welcome-tour-shell {
  background:
    linear-gradient(165deg, rgba(255, 255, 255, 0.45) 0%, transparent 40%),
    linear-gradient(180deg, #fbf6ec 0%, #f3ead8 100%);
  box-shadow: 0 -24px 60px rgba(80, 50, 16, 0.18), 0 0 80px -30px rgba(191, 155, 88, 0.28);
}

html[data-saba-theme="bright"] .welcome-tour-backdrop {
  background:
    radial-gradient(ellipse 70% 50% at 50% 20%, rgba(191, 155, 88, 0.05), transparent 62%),
    rgba(243, 234, 216, 0.58);
}

html[data-saba-theme="bright"] .caprices-sheet-panel,
html[data-saba-theme="bright"] .transport-sheet-panel,
html[data-saba-theme="bright"] .hk-sheet-panel,
html[data-saba-theme="bright"] .resupply-sheet-panel,
html[data-saba-theme="bright"] .reception-sheet-panel,
html[data-saba-theme="bright"] .a2hs-sheet-panel,
html[data-saba-theme="bright"] .basket-sheet-panel,
html[data-saba-theme="bright"] .breakfast-menu-panel {
  background: linear-gradient(180deg, #fbf6ec 0%, #f3ead8 100%) !important;
  color: var(--text-main);
}

html[data-saba-theme="bright"] .roya-place-sheet-panel {
  background: linear-gradient(180deg, #fbf6ec 0%, #f3ead8 100%) !important;
  color: var(--text-main);
}

html[data-saba-theme="bright"] .roya-place-actions {
  background: linear-gradient(180deg, #fbf6ec 0%, #f3ead8 100%);
  border-top-color: var(--saba-line);
}

html[data-saba-theme="bright"] .roya-place-sheet-eyebrow,
html[data-saba-theme="bright"] .roya-transport legend,
html[data-saba-theme="bright"] .roya-group-title {
  color: var(--text-muted);
}

html[data-saba-theme="bright"] .roya-radio,
html[data-saba-theme="bright"] .roya-field {
  color: var(--text-main);
}

html[data-saba-theme="bright"] .roya-driver-note {
  color: var(--text-muted);
  background: rgba(191, 155, 88, 0.1);
  border-color: var(--saba-line);
}

html[data-saba-theme="bright"] .roya-transport {
  border-color: var(--saba-line);
}

html[data-saba-theme="bright"] .roya-place-sheet-handle {
  background: rgba(42, 30, 18, 0.22);
}

html[data-saba-theme="bright"] .saba-toast {
  background: rgba(251, 246, 236, 0.96);
  color: var(--text-main);
}

html[data-saba-theme="bright"] .riad-room-toggle-text strong,
html[data-saba-theme="bright"] .riad-tile-copy strong,
html[data-saba-theme="bright"] .riad-bento-text strong,
html[data-saba-theme="bright"] .home-feature-card strong,
html[data-saba-theme="bright"] .basket-demo-tip-title,
html[data-saba-theme="bright"] .header-reception-text strong,
html[data-saba-theme="bright"] .header-reception-text em {
  color: var(--text-main);
}

html[data-saba-theme="sunset"] .weather-bento {
  background: linear-gradient(155deg, rgba(72, 40, 22, 0.72) 0%, rgba(32, 16, 10, 0.82) 100%) !important;
}

html[data-saba-theme="sunset"] .collection-frame {
  box-shadow: 0 18px 40px -18px rgba(40, 12, 4, 0.55);
}
html[data-saba-theme="sunset"] .collection-more {
  background: rgba(42, 22, 12, 0.55);
}

html[data-saba-theme="sunset"] .hub-section {
  background: linear-gradient(160deg, rgba(56, 32, 18, 0.62) 0%, rgba(28, 14, 8, 0.72) 100%) !important;
}

/* ——— Bright ink: cream-on-cream was unreadable ——— */
html[data-saba-theme="bright"] .app-container,
html[data-saba-theme="bright"] .modal-panel,
html[data-saba-theme="bright"] .modal-drawer-body,
html[data-saba-theme="bright"] .view-title,
html[data-saba-theme="bright"] .service-label,
html[data-saba-theme="bright"] .hub-section-title,
html[data-saba-theme="bright"] .guide-title,
html[data-saba-theme="bright"] .story-title,
html[data-saba-theme="bright"] .catalog-cat-intro,
html[data-saba-theme="bright"] .wifi-main,
html[data-saba-theme="bright"] .wifi-text,
html[data-saba-theme="bright"] .roya-card-title,
html[data-saba-theme="bright"] .roya-place-sheet-head h3,
html[data-saba-theme="bright"] .header-reception-text strong,
html[data-saba-theme="bright"] .header-reception-text em {
  color: var(--text-main);
}

html[data-saba-theme="bright"] .service-sub,
html[data-saba-theme="bright"] .wifi-sub,
html[data-saba-theme="bright"] .view-lead,
html[data-saba-theme="bright"] .roya-group-title,
html[data-saba-theme="bright"] .riad-orders-title {
  color: var(--text-muted);
}
html[data-saba-theme="bright"] .section-title,
html[data-saba-theme="bright"] .view-heading .view-title,
html[data-saba-theme="bright"] .catalog-section-title,
html[data-saba-theme="bright"] .catalog-cat-name,
html[data-saba-theme="bright"] .catalog-cat-intro,
html[data-saba-theme="bright"] .catalog-group-sep,
html[data-saba-theme="bright"] .service-row .service-title {
  color: var(--text-main);
}

html[data-saba-theme="bright"] .bottom-nav-macaron {
  background: color-mix(in srgb, var(--gold) 12%, rgba(255, 252, 244, 0.28));
  color: color-mix(in srgb, var(--saba-nude) 78%, transparent);
  opacity: 0.76;
  border-color: color-mix(in srgb, var(--saba-line) 80%, transparent);
  box-shadow: none;
}

html[data-saba-theme="bright"] .bottom-nav-item--ticket.is-active .bottom-nav-macaron,
html[data-saba-theme="bright"] .bottom-nav-item--ticket.is-pulse .bottom-nav-macaron {
  opacity: 1;
  color: var(--saba-nude);
  background: color-mix(in srgb, var(--gold) 18%, rgba(255, 252, 244, 0.4));
  box-shadow: 0 0 10px color-mix(in srgb, var(--gold) 18%, transparent);
}

html[data-saba-theme="bright"] .bottom-nav-item--ticket.is-ticket-open .bottom-nav-macaron {
  background: color-mix(in srgb, var(--gold) 16%, rgba(255, 250, 240, 0.45));
  color: var(--saba-nude);
  box-shadow: none;
  opacity: 1;
}

html[data-saba-theme="bright"] .bottom-nav-item--ticket.is-ticket-open {
  color: var(--saba-nav-ink-active);
}

html[data-saba-theme="bright"] .basket-sheet-panel,
html[data-saba-theme="bright"] .basket-sheet-panel--receipt {
  background: linear-gradient(180deg, #fbf6ec 0%, #f3ead8 100%) !important;
  border-color: var(--saba-line) !important;
  box-shadow:
    0 -20px 50px rgba(80, 50, 16, 0.16),
    inset 0 1px 0 rgba(255, 255, 255, 0.7) !important;
  color: var(--text-main);
}

html[data-saba-theme="bright"] .basket-sheet-handle {
  background: rgba(138, 101, 40, 0.35) !important;
}

html[data-saba-theme="bright"] .basket-sheet-panel :is(
  h3, p, strong, em, span, label, legend, li, small,
  .basket-qty-val, .basket-qty-btn, .basket-line-remove,
  .basket-sheet-x, .basket-empty, .basket-empty-title, .basket-empty-msg,
  .basket-empty-choice, .basket-place-chip, .basket-place-opt,
  .basket-total, .basket-field, .basket-line-main strong, .basket-line-meta,
  .basket-bill-info-btn, .basket-bill-tip p
) {
  color: var(--text-main) !important;
}

html[data-saba-theme="bright"] .basket-bill-link {
  color: #8a6428 !important;
}
html[data-saba-theme="bright"] .basket-bill-link:hover,
html[data-saba-theme="bright"] .basket-bill-link:focus-visible {
  color: #6a4a1c !important;
}
html[data-saba-theme="bright"] .basket-bill-link.is-on {
  color: #9a7a48 !important;
}

html[data-saba-theme="bright"] .basket-sheet-panel :is(
  .basket-sheet-eyebrow, .basket-line-price, .basket-details-title,
  .basket-group-label, .basket-empty-suggest-lead, .basket-field,
  .basket-place legend, .basket-bill-info-btn.is-open
) {
  color: var(--gold) !important;
}

html[data-saba-theme="bright"] .basket-ticket,
html[data-saba-theme="bright"] .basket-details,
html[data-saba-theme="bright"] .basket-place-chip {
  background: rgba(255, 252, 244, 0.72);
  border-color: var(--saba-line);
}

html[data-saba-theme="bright"] .basket-ticket--receipt {
  background:
    repeating-linear-gradient(
      0deg,
      transparent,
      transparent 11px,
      rgba(138, 101, 40, 0.06) 11px,
      rgba(138, 101, 40, 0.06) 12px
    ),
    rgba(255, 252, 244, 0.88) !important;
  border-color: var(--saba-line) !important;
}

html[data-saba-theme="bright"] .basket-place-chip.is-on {
  background: linear-gradient(160deg, rgba(212, 160, 80, 0.28), rgba(255, 250, 240, 0.95));
  color: var(--text-main) !important;
}

html[data-saba-theme="bright"] .basket-field input,
html[data-saba-theme="bright"] .basket-field textarea {
  background: var(--saba-input-bg) !important;
  color: var(--saba-input-fg) !important;
  border-color: var(--saba-line);
}

html[data-saba-theme="bright"] .basket-send {
  color: var(--saba-cta-fg) !important;
  background: var(--saba-cta-bg) !important;
  border-color: var(--saba-cta-border) !important;
  box-shadow: var(--saba-cta-shadow) !important;
}

html[data-saba-theme="bright"] .basket-send i.fa-whatsapp {
  color: #148a42 !important;
}

html[data-saba-theme="bright"] .transport-opt,
html[data-saba-theme="bright"] .hk-cancel,
html[data-saba-theme="bright"] .resupply-sheet-panel,
html[data-saba-theme="bright"] .caprices-cat,
html[data-saba-theme="bright"] .profile-field {
  color: var(--text-main);
}

html[data-saba-theme="bright"] .hk-cancel {
  color: var(--text-muted) !important;
  background: rgba(255, 255, 255, 0.45);
  border-color: var(--saba-line);
}

html[data-saba-theme="bright"] .saba-toast {
  background: linear-gradient(135deg, #fbf6ec, #f3ead8);
  color: var(--text-main) !important;
}

/* Surfaces encore sombres : parchemin + encre espresso */
html[data-saba-theme="bright"] .riad-tile:hover,
html[data-saba-theme="bright"] .home-feature-card:hover,
html[data-saba-theme="bright"] .riad-bento:hover {
  background:
    linear-gradient(160deg, rgba(191, 155, 88, 0.16), transparent 52%),
    #fffaf0 !important;
}

html[data-saba-theme="bright"] .hub-section,
html[data-saba-theme="bright"] .hub-section--riad,
html[data-saba-theme="bright"] .hub-section--city {
  background: var(--saba-tile-bg) !important;
  border-color: var(--saba-tile-border) !important;
  box-shadow: none;
}

html[data-saba-theme="bright"] .hub-section--city .hub-section-eyebrow {
  color: var(--gold);
}

html[data-saba-theme="bright"] .roya-card,
html[data-saba-theme="bright"] .roya-intro {
  background: var(--saba-tile-bg) !important;
  border-color: var(--saba-tile-border);
}

html[data-saba-theme="bright"] .roya-card-media,
html[data-saba-theme="bright"] .roya-card-media--icon {
  background: linear-gradient(155deg, rgba(191, 155, 88, 0.2), #f3ead8);
}

html[data-saba-theme="bright"] .caprices-cat {
  background: rgba(255, 252, 244, 0.72);
  border-color: var(--saba-tile-border);
}

html[data-saba-theme="bright"] .caprices-cat.is-open {
  background: linear-gradient(160deg, rgba(191, 155, 88, 0.16), rgba(255, 250, 240, 0.94));
}

html[data-saba-theme="bright"] .caprices-cat-copy strong,
html[data-saba-theme="bright"] .caprices-cat-count {
  color: var(--text-main) !important;
}

html[data-saba-theme="bright"] .caprices-cat-icon {
  background: rgba(168, 132, 106, 0.16);
  color: var(--saba-nude) !important;
}

html[data-saba-theme="bright"] .transport-opt,
html[data-saba-theme="bright"] .transport-opt--soft {
  background: var(--saba-tile-bg) !important;
  color: var(--text-main) !important;
  border-color: var(--saba-tile-border);
}

html[data-saba-theme="bright"] .transport-field input,
html[data-saba-theme="bright"] .transport-field textarea,
html[data-saba-theme="bright"] .hk-field input,
html[data-saba-theme="bright"] .hk-field textarea {
  background: var(--saba-input-bg) !important;
  color: var(--saba-input-fg) !important;
}

html[data-saba-theme="bright"] .catalog-order-btn,
html[data-saba-theme="bright"] .wifi-card-cta,
html[data-saba-theme="bright"] .quick-action {
  background: rgba(191, 155, 88, 0.14) !important;
  color: var(--text-main) !important;
  border-color: var(--saba-tile-border);
}

html[data-saba-theme="bright"] .essential-chip,
html[data-saba-theme="bright"] .info-item,
html[data-saba-theme="bright"] .resupply-step {
  background: rgba(255, 252, 244, 0.7);
  border-color: var(--saba-tile-border);
  color: var(--text-main);
}

html[data-saba-theme="bright"] .guide-place-card {
  background: var(--saba-tile-bg) !important;
  color: var(--text-main);
}

html[data-saba-theme="bright"] .move-cta-icon,
html[data-saba-theme="bright"] .riad-tile-icon,
html[data-saba-theme="bright"] .riad-bento-icon {
  color: var(--saba-nude);
}

html[data-saba-theme="bright"] .service-btn i,
html[data-saba-theme="bright"] .service-btn--playlist i,
html[data-saba-theme="bright"] .view-page-icon,
html[data-saba-theme="bright"] .view-page-watermark,
html[data-saba-theme="bright"] .header-settings-btn i,
html[data-saba-theme="bright"] .header-weather-icon,
html[data-saba-theme="bright"] .header-reception-icon {
  color: var(--saba-nude) !important;
}

html[data-saba-theme="bright"] .bottom-nav-item i {
  color: var(--saba-nav-icon) !important;
}
html[data-saba-theme="bright"] .bottom-nav-item.is-active i {
  color: var(--saba-nav-icon-active) !important;
}

html[data-saba-theme="bright"] .basket-place-chip {
  background: rgba(255, 252, 244, 0.8) !important;
  color: var(--text-main) !important;
}

/* Traversée d’atmosphère — fade global → swap → fade-in */
.saba-theme-wash {
  position: fixed;
  inset: 0;
  z-index: 49990;
  pointer-events: none;
  opacity: 0;
}
.saba-theme-wash.is-active {
  opacity: 1;
}

.saba-theme-veil {
  position: fixed;
  inset: 0;
  z-index: 50000;
  pointer-events: none;
  opacity: 0;
}
.saba-theme-veil.is-sunrise {
  background:
    radial-gradient(ellipse 92% 58% at 50% 108%, rgba(255, 196, 120, 0.55) 0%, rgba(255, 148, 64, 0.22) 36%, transparent 68%);
}
.saba-theme-veil.is-sunset {
  background:
    radial-gradient(ellipse 92% 58% at 50% -8%, rgba(255, 170, 90, 0.5) 0%, rgba(220, 90, 48, 0.22) 38%, transparent 68%);
}
.saba-theme-veil.is-moon {
  background:
    radial-gradient(circle at 76% 14%, rgba(236, 228, 214, 0.18) 0%, transparent 16%),
    radial-gradient(ellipse 100% 72% at 50% -6%, rgba(48, 58, 96, 0.14) 0%, transparent 72%);
}
.saba-theme-veil.is-dusk {
  background:
    radial-gradient(ellipse 82% 62% at 50% 50%, rgba(232, 180, 110, 0.32) 0%, rgba(120, 60, 32, 0.16) 45%, transparent 72%);
}
.saba-theme-veil.is-active {
  animation: sabaCelestialVeil 1.2s cubic-bezier(0.42, 0, 0.18, 1) both;
}
@keyframes sabaCelestialVeil {
  0% { opacity: 0; }
  35% { opacity: 0.45; }
  100% { opacity: 0; }
}

html.is-theme-crossing,
html.is-theme-crossing body {
  transition: background-color 0.55s cubic-bezier(0.4, 0, 0.2, 1);
}

html.is-theme-crossing .app-container,
html.is-theme-crossing .bottom-nav,
html.is-theme-crossing .app-header-fixed,
html.is-theme-crossing .site-footer,
html.is-theme-crossing .settings-sheet,
html.is-theme-crossing .theme-cycle,
html.is-theme-crossing .theme-dock,
html.is-theme-crossing .theme-phase-popover {
  transition: opacity 0.52s cubic-bezier(0.4, 0, 0.2, 1);
}

html.is-theme-fade-out .app-container,
html.is-theme-fade-out .bottom-nav,
html.is-theme-fade-out .app-header-fixed,
html.is-theme-fade-out .site-footer,
html.is-theme-fade-out .settings-sheet .settings-sheet-panel,
html.is-theme-fade-out .theme-cycle,
html.is-theme-fade-out .theme-dock,
html.is-theme-fade-out .theme-phase-popover {
  opacity: 0 !important;
  pointer-events: none !important;
}

html.is-theme-fade-in .app-container,
html.is-theme-fade-in .bottom-nav,
html.is-theme-fade-in .app-header-fixed,
html.is-theme-fade-in .site-footer,
html.is-theme-fade-in .settings-sheet .settings-sheet-panel,
html.is-theme-fade-in .theme-cycle,
html.is-theme-fade-in .theme-dock,
html.is-theme-fade-in .theme-phase-popover {
  opacity: 1 !important;
  transition: opacity 0.64s cubic-bezier(0.33, 1, 0.32, 1);
}

@media (prefers-reduced-motion: reduce) {
  html.is-theme-crossing .app-container,
  html.is-theme-crossing .bottom-nav,
  html.is-theme-fade-out .app-container,
  html.is-theme-fade-in .app-container {
    transition: none !important;
    opacity: 1 !important;
  }
  .theme-cycle.is-header-hidden {
    width: 0;
    min-width: 0;
    max-width: 0;
    opacity: 0;
    transition: none;
  }
  .saba-theme-veil.is-active,
  .saba-theme-wash.is-active {
    animation: none !important;
    opacity: 0 !important;
  }
  .saba-theme-veil,
  .saba-theme-wash { display: none !important; }
}

/* ——— Bright drawers: espresso on ivory, gold as accent only ——— */
html[data-saba-theme="bright"] .modal-title,
html[data-saba-theme="bright"] .story-title,
html[data-saba-theme="bright"] .history-section-title,
html[data-saba-theme="bright"] .history-other-rooms-label,
html[data-saba-theme="bright"] .modal-story-subtitle,
html[data-saba-theme="bright"] .reception-sheet-title,
html[data-saba-theme="bright"] .a2hs-sheet-title,
html[data-saba-theme="bright"] .hk-sheet-title,
html[data-saba-theme="bright"] .transport-sheet-title,
html[data-saba-theme="bright"] .caprices-sheet-title,
html[data-saba-theme="bright"] .resupply-sheet-title,
html[data-saba-theme="bright"] .basket-sheet-head h3,
html[data-saba-theme="bright"] .resupply-sheet-title {
  color: var(--text-main) !important;
}

html[data-saba-theme="bright"] .story-text,
html[data-saba-theme="bright"] .story-text p,
html[data-saba-theme="bright"] .history-paragraph,
html[data-saba-theme="bright"] .history-lead,
html[data-saba-theme="bright"] .history-quote,
html[data-saba-theme="bright"] .reception-notice,
html[data-saba-theme="bright"] .catalog-order-btn,
html[data-saba-theme="bright"] .history-room-badge,
html[data-saba-theme="bright"] .history-story-switch-btn.is-active,
html[data-saba-theme="bright"] .history-youtube-text strong,
html[data-saba-theme="bright"] .history-youtube-text span {
  color: var(--text-main) !important;
}

html[data-saba-theme="bright"] .catalog-card--accent .guide-place-name {
  color: #f6edd8 !important;
}

html[data-saba-theme="bright"] .history-quote {
  background: rgba(138, 101, 40, 0.1);
  border-left-color: #8a6528;
}

html[data-saba-theme="bright"] .reception-notice {
  background: rgba(138, 101, 40, 0.1);
  border-color: rgba(138, 101, 40, 0.28);
}

html[data-saba-theme="bright"] .reception-notice--spa,
html[data-saba-theme="bright"] .reception-notice--gallery {
  background: rgba(255, 248, 235, 0.92);
  border-color: rgba(138, 101, 40, 0.28);
}

html[data-saba-theme="bright"] .reception-notice--spa .spa-notice-veil,
html[data-saba-theme="bright"] .reception-notice--gallery .spa-notice-veil {
  background:
    linear-gradient(180deg, rgba(255, 250, 240, 0.78) 0%, rgba(251, 246, 236, 0.9) 45%, rgba(243, 234, 216, 0.96) 100%),
    linear-gradient(90deg, rgba(191, 155, 88, 0.1), transparent 40%, rgba(191, 155, 88, 0.06));
}

html[data-saba-theme="bright"] .reception-notice--spa .spa-notice-content,
html[data-saba-theme="bright"] .reception-notice--gallery .spa-notice-content,
html[data-saba-theme="bright"] .reception-notice--spa .spa-notice-content span,
html[data-saba-theme="bright"] .reception-notice--gallery .spa-notice-content span {
  color: var(--text-main) !important;
  text-shadow: 0 1px 0 rgba(255, 255, 255, 0.75);
}

html[data-saba-theme="bright"] .catalog-order-btn {
  background: linear-gradient(160deg, #ead7a8 0%, #d4b56a 100%) !important;
  border-color: rgba(110, 78, 28, 0.45) !important;
  color: var(--text-main) !important;
}

html[data-saba-theme="bright"] .history-room-badge {
  background: rgba(191, 155, 88, 0.18);
  color: var(--text-main) !important;
}

html[data-saba-theme="bright"] .history-story-switch-btn.is-active {
  background: rgba(191, 155, 88, 0.16);
  color: var(--text-main);
}

html[data-saba-theme="bright"] .history-story-switch-btn:hover {
  color: var(--text-main);
}

html[data-saba-theme="bright"] .history-room-card-name {
  color: var(--text-main);
}
html[data-saba-theme="bright"] .history-room-card-tag {
  color: #6a5a46;
}
html[data-saba-theme="bright"] .roya-note-wa {
  color: #0b5c32 !important;
  background: rgba(37, 211, 102, 0.18) !important;
  border-color: rgba(22, 163, 74, 0.45) !important;
}
html[data-saba-theme="bright"] .roya-note-ig {
  color: #fff;
  background: linear-gradient(135deg, #f58529, #dd2a7b 52%, #8134af);
  border-color: transparent;
}

html[data-saba-theme="bright"] .modal-close-btn,
html[data-saba-theme="bright"] .modal-back-btn,
html[data-saba-theme="bright"] .sheet-close-btn,
html[data-saba-theme="bright"] .basket-sheet-x,
html[data-saba-theme="bright"] .roya-place-sheet-x {
  color: rgba(0, 0, 0, 0.35);
  background: transparent;
  border-color: transparent;
  box-shadow: none;
}
html[data-saba-theme="bright"] .modal-close-btn:hover,
html[data-saba-theme="bright"] .modal-back-btn:hover,
html[data-saba-theme="bright"] .sheet-close-btn:hover,
html[data-saba-theme="bright"] .basket-sheet-x:hover,
html[data-saba-theme="bright"] .roya-place-sheet-x:hover {
  color: rgba(0, 0, 0, 0.6);
  background: transparent;
}

/* ——— Icônes nude unifiées (écrans + YouTube + lexique) ——— */
.youtube-confirm-link {
  color: var(--saba-nude);
  text-decoration: none;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  transition: color 0.25s ease;
}
.service-btn i,
.service-btn--playlist i,
.service-btn-call i,
.riad-tile-icon,
.move-cta-icon,
.wifi-icon,
.wifi-toggle.revealed .wifi-icon,
.wifi-card-cta i,
.weather-bento-icon,
.weather-bento-tomorrow-detail i,
.weather-current-icon,
.weather-hero-icon,
.weather-day-icon,
.city-move-chip i,
.view-page-icon,
.roya-tab i,
.history-youtube-icon,
.history-youtube-icon i,
.video-modal-icon--yt,
.video-modal-icon--yt i,
.youtube-confirm-link,
.youtube-confirm-link i,
.riad-bento-icon,
#modal-lexique .guide-category-title i,
#modal-lexique .guide-place-name i,
#modal-lexique .guide-category-icon {
  color: var(--saba-nude) !important;
}
.roya-tab.is-active i {
  color: #1a1510 !important;
}

.service-btn,
.riad-tile,
.move-cta,
.wifi-toggle {
  box-shadow: var(--saba-tile-shadow) !important;
}
.service-btn::after,
.service-btn-danger::after,
.service-btn-call::after {
  display: none !important;
}

.footer-logo-orbit {
  background: #000;
}
html[data-saba-theme="bright"] .footer-logo-orbit {
  background: #000;
}

/* Lexique — contrastes bright + icônes nude */
#modal-lexique .guide-category {
  background: color-mix(in srgb, var(--saba-surface) 88%, #000);
  border-color: var(--saba-line);
  box-shadow: none;
}
#modal-lexique .guide-category:hover {
  background: color-mix(in srgb, var(--saba-surface) 82%, #000);
  box-shadow: none;
}
#modal-lexique .guide-category-header {
  background: color-mix(in srgb, var(--saba-nude) 10%, transparent);
}
#modal-lexique .guide-category-title {
  color: var(--text-main);
}
#modal-lexique .guide-place-card {
  background: var(--saba-tile-bg);
  border-color: var(--saba-tile-border);
}
#modal-lexique .guide-place-name {
  color: var(--text-main);
}
#modal-lexique .guide-place-desc {
  color: var(--text-muted);
}

html[data-saba-theme="bright"] #modal-lexique .guide-category {
  background: #fffaf2;
  border-color: rgba(80, 50, 16, 0.16);
}
html[data-saba-theme="bright"] #modal-lexique .guide-category:hover {
  background: #fffdf8;
  border-color: rgba(80, 50, 16, 0.24);
}
html[data-saba-theme="bright"] #modal-lexique .guide-category-header {
  background: rgba(176, 137, 112, 0.12);
}
html[data-saba-theme="bright"] #modal-lexique .guide-category-header.active {
  background: rgba(176, 137, 112, 0.2);
  border-bottom-color: rgba(80, 50, 16, 0.12);
}
html[data-saba-theme="bright"] #modal-lexique .guide-category-title,
html[data-saba-theme="bright"] #modal-lexique .modal-title,
html[data-saba-theme="bright"] #modal-lexique .guide-place-name {
  color: #2a1e12 !important;
}
html[data-saba-theme="bright"] #modal-lexique .modal-kicker,
html[data-saba-theme="bright"] #modal-lexique .guide-place-desc {
  color: #5a4636 !important;
}
html[data-saba-theme="bright"] #modal-lexique .guide-place-card {
  background: #fffef9 !important;
  border-color: rgba(80, 50, 16, 0.14);
}
html[data-saba-theme="bright"] #modal-lexique .guide-place-card:hover {
  background: #fff !important;
  box-shadow: 0 6px 16px rgba(80, 50, 16, 0.08);
}

/* Bright — toutes les icônes Font Awesome en beige nude (.fas = classe réelle du projet) */
html[data-saba-theme="bright"] .fas,
html[data-saba-theme="bright"] .far,
html[data-saba-theme="bright"] .fab,
html[data-saba-theme="bright"] .fa-solid,
html[data-saba-theme="bright"] .fa-regular,
html[data-saba-theme="bright"] .fa-brands {
  color: var(--saba-nude) !important;
}

/* Exceptions — marque / états où la couleur ne doit pas être nude */
html[data-saba-theme="bright"] .fa-whatsapp,
html[data-saba-theme="bright"] .fab.fa-whatsapp,
html[data-saba-theme="bright"] .basket-send .fa-whatsapp,
html[data-saba-theme="bright"] .transport-send .fa-whatsapp,
html[data-saba-theme="bright"] .hk-send .fa-whatsapp,
html[data-saba-theme="bright"] .roya-btn--gold .fa-whatsapp,
html[data-saba-theme="bright"] .roya-note-wa .fab,
html[data-saba-theme="bright"] .roya-note-ig .fab,
html[data-saba-theme="bright"] .wa-cta .fab,
html[data-saba-theme="bright"] .wa-cta--basket .fas,
html[data-saba-theme="bright"] .welcome-wa-note .fas,
html[data-saba-theme="bright"] .welcome-cta-wa .fas,
html[data-saba-theme="bright"] .welcome-wishes-submit .fas,
html[data-saba-theme="bright"] .reception-sheet-btn--wa .fas,
html[data-saba-theme="bright"] .roya-tab.is-active .fas,
html[data-saba-theme="bright"] .roya-tab.is-active .fa-solid,
html[data-saba-theme="bright"] .history-story-switch-btn.is-active .fas,
html[data-saba-theme="bright"] .history-story-switch-btn.is-active .fa-solid,
html[data-saba-theme="bright"] .catalog-card--accent .fas,
html[data-saba-theme="bright"] .catalog-card--accent .fa-solid,
html[data-saba-theme="bright"] .essential-chip--warn .fas,
html[data-saba-theme="bright"] .service-btn.disabled .fas {
  color: inherit !important;
}

html[data-saba-theme="bright"] .fa-whatsapp,
html[data-saba-theme="bright"] .fab.fa-whatsapp,
html[data-saba-theme="bright"] .basket-send .fa-whatsapp,
html[data-saba-theme="bright"] .transport-send .fa-whatsapp,
html[data-saba-theme="bright"] .hk-send .fa-whatsapp,
html[data-saba-theme="bright"] .roya-btn--gold .fa-whatsapp,
html[data-saba-theme="bright"] .roya-note-wa .fab,
html[data-saba-theme="bright"] .wa-cta .fab,
html[data-saba-theme="bright"] .welcome-wa-note .fas,
html[data-saba-theme="bright"] .welcome-cta-wa .fas,
html[data-saba-theme="bright"] .welcome-wishes-submit .fas,
html[data-saba-theme="bright"] .reception-sheet-btn--wa .fas,
html[data-saba-theme="bright"] .wa-cta--basket .fas {
  color: #25d366 !important;
}

html[data-saba-theme="bright"] .roya-note-ig .fab {
  color: #fff !important;
}

html[data-saba-theme="bright"] .basket-send-exit {
  color: var(--saba-nude) !important;
  opacity: 0.62;
}
html[data-saba-theme="bright"] .bottom-nav-item.is-active .fas,
html[data-saba-theme="bright"] .bottom-nav-item.is-active .fa-solid {
  color: var(--saba-nude) !important;
  filter: drop-shadow(0 0 6px color-mix(in srgb, var(--gold) 35%, transparent));
}
html[data-saba-theme="bright"] .bottom-nav-item.is-active::before {
  background: color-mix(in srgb, var(--gold) 16%, rgba(255, 255, 255, 0.35));
}
html[data-saba-theme="bright"] .bottom-nav::after {
  opacity: 0.28;
}
html[data-saba-theme="bright"] .bottom-nav {
  background: color-mix(in srgb, var(--bg-dark, #f3ead8) 62%, transparent);
  border-color: color-mix(in srgb, var(--gold) 28%, rgba(0, 0, 0, 0.08));
  box-shadow: 0 6px 24px rgba(80, 50, 16, 0.12), inset 0 1px 0 rgba(255, 255, 255, 0.45);
}
html[data-saba-theme="bright"] .bottom-nav-item {
  color: #6b4a22;
}
html[data-saba-theme="bright"] .bottom-nav-item.is-active {
  color: #3f2a11;
}
html[data-saba-theme="bright"] .bottom-nav-item i {
  color: var(--saba-nav-icon);
  filter: drop-shadow(0 1px 2px rgba(255, 255, 255, 0.65)) drop-shadow(0 1px 2px rgba(42, 30, 18, 0.18));
}
html[data-saba-theme="bright"] .hero-card .remote-info-icon,
html[data-saba-theme="bright"] .hero-card-cue {
  color: var(--saba-nude) !important;
}

/* ——— Bright audit pass 2 ——— */
html[data-saba-theme="bright"] .theme-cycle {
  color: var(--saba-nude);
}

html[data-saba-theme="bright"] .modal-backdrop,
html[data-saba-theme="bright"] .roya-place-sheet-backdrop,
html[data-saba-theme="bright"] .caprices-sheet-backdrop,
html[data-saba-theme="bright"] .transport-sheet-backdrop,
html[data-saba-theme="bright"] .resupply-sheet-backdrop,
html[data-saba-theme="bright"] .reception-sheet-backdrop,
html[data-saba-theme="bright"] .hk-sheet-backdrop,
html[data-saba-theme="bright"] .a2hs-sheet-backdrop,
html[data-saba-theme="bright"] .basket-sheet-backdrop {
  background: rgba(42, 30, 18, 0.32) !important;
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}

html[data-saba-theme="bright"] .music-fab {
  background: #f7f0e2;
  border-color: var(--saba-nude);
  box-shadow: 0 8px 24px rgba(80, 50, 16, 0.14);
}
html[data-saba-theme="bright"] .vinyl-grooves {
  background: repeating-radial-gradient(
    #e8dcc8 0,
    #e8dcc8 2px,
    #d4c4a8 3px,
    #d4c4a8 4px
  );
  opacity: 0.75;
}
html[data-saba-theme="bright"] .fab-icon {
  color: var(--saba-nude) !important;
}

html[data-saba-theme="bright"] .breakfast-menu-panel,
html[data-saba-theme="bright"] .breakfast-reserve-panel {
  background: linear-gradient(180deg, #fbf6ec 0%, #f3ead8 100%) !important;
}
html[data-saba-theme="bright"] .breakfast-menu-hero-veil {
  background: linear-gradient(180deg, rgba(243, 234, 216, 0.15), rgba(243, 234, 216, 0.88));
}
html[data-saba-theme="bright"] .breakfast-menu-hero-title {
  color: var(--text-main);
  text-shadow: 0 2px 12px rgba(255, 250, 240, 0.6);
}
html[data-saba-theme="bright"] .breakfast-menu-close {
  background: transparent;
  color: rgba(0, 0, 0, 0.35);
}
html[data-saba-theme="bright"] .breakfast-menu-close:hover {
  color: rgba(0, 0, 0, 0.6);
  background: transparent;
}
html[data-saba-theme="bright"] .breakfast-serve-note,
html[data-saba-theme="bright"] .breakfast-section ul,
html[data-saba-theme="bright"] .breakfast-allergy,
html[data-saba-theme="bright"] .breakfast-reserve-sub,
html[data-saba-theme="bright"] .breakfast-place-opt {
  color: var(--saba-ink-soft) !important;
}
html[data-saba-theme="bright"] .breakfast-section {
  background: rgba(255, 252, 244, 0.72);
  border-color: var(--saba-tile-border);
}
html[data-saba-theme="bright"] .breakfast-section h3,
html[data-saba-theme="bright"] .breakfast-price,
html[data-saba-theme="bright"] .breakfast-field,
html[data-saba-theme="bright"] .breakfast-place legend {
  color: var(--gold) !important;
}
html[data-saba-theme="bright"] .breakfast-field input,
html[data-saba-theme="bright"] .breakfast-field textarea {
  background: var(--saba-input-bg) !important;
  color: var(--saba-input-fg) !important;
  border-color: var(--saba-line);
}
html[data-saba-theme="bright"] .breakfast-place {
  border-color: var(--saba-line);
}
html[data-saba-theme="bright"] .breakfast-menu-sticky {
  background: linear-gradient(180deg, rgba(251, 246, 236, 0.4), #fbf6ec);
  border-top-color: var(--saba-line);
}
html[data-saba-theme="bright"] .breakfast-btn--gold {
  background: var(--saba-cta-bg) !important;
  color: var(--saba-cta-fg) !important;
  border-color: var(--saba-cta-border) !important;
}

html[data-saba-theme="bright"] .profile-field,
html[data-saba-theme="bright"] .profile-fieldset legend {
  color: var(--text-muted) !important;
}
html[data-saba-theme="bright"] .theme-phase-switch {
  background: rgba(90, 72, 48, 0.1);
  border-color: rgba(90, 72, 48, 0.12);
}
html[data-saba-theme="bright"] .theme-phase-thumb {
  background: #fffaf4;
  box-shadow:
    0 1px 2px rgba(60, 40, 16, 0.08),
    0 6px 16px rgba(60, 40, 16, 0.1);
}
html[data-saba-theme="bright"] .theme-phase-opt {
  color: rgba(42, 30, 18, 0.72);
}
html[data-saba-theme="bright"] .theme-phase-opt.is-on {
  color: #1a1208;
}
html[data-saba-theme="bright"] .profile-saved {
  color: var(--gold);
}

html[data-saba-theme="bright"] .riad-sub-btn {
  background: rgba(255, 252, 244, 0.72);
  border-color: var(--saba-tile-border);
  color: var(--text-main) !important;
}
html[data-saba-theme="bright"] .riad-sub-btn i {
  color: var(--saba-nude) !important;
}
html[data-saba-theme="bright"] .riad-room-toggle-icon {
  background: rgba(191, 155, 88, 0.14);
  color: var(--saba-nude) !important;
}
html[data-saba-theme="bright"] .riad-room-chevron {
  color: var(--saba-nude);
  opacity: 0.55;
}

html[data-saba-theme="bright"] .info-schedule-row,
html[data-saba-theme="bright"] .info-tour-row,
html[data-saba-theme="bright"] .info-price-row {
  background: rgba(255, 252, 244, 0.72);
  border-color: var(--saba-tile-border);
}
html[data-saba-theme="bright"] .info-block-head i,
html[data-saba-theme="bright"] .info-item-icon,
html[data-saba-theme="bright"] .info-schedule-left i,
html[data-saba-theme="bright"] .info-tour-num,
html[data-saba-theme="bright"] .essential-chip i {
  color: var(--saba-nude) !important;
}

html[data-saba-theme="bright"] .catalog-card {
  background: var(--saba-tile-bg);
  border-color: var(--saba-tile-border);
}
html[data-saba-theme="bright"] .catalog-card-body,
html[data-saba-theme="bright"] .catalog-card-name,
html[data-saba-theme="bright"] .catalog-card-desc {
  color: var(--text-main);
}
html[data-saba-theme="bright"] .catalog-card-price {
  color: var(--gold);
}

html[data-saba-theme="bright"] .remote-intro-title {
  color: var(--text-main) !important;
}
html[data-saba-theme="bright"] .remote-intro-subtitle,
html[data-saba-theme="bright"] .remote-intro-description,
html[data-saba-theme="bright"] .remote-intro-description p,
html[data-saba-theme="bright"] .remote-intro-conclusion {
  color: var(--saba-ink-soft) !important;
}
html[data-saba-theme="bright"] .remote-intro-icon {
  border-color: var(--saba-nude);
  background: rgba(191, 155, 88, 0.14);
}
html[data-saba-theme="bright"] .remote-intro-icon i {
  color: var(--saba-nude) !important;
}

html[data-saba-theme="bright"] .history-story-switch-btn {
  color: var(--text-muted);
  border-color: var(--saba-tile-border);
  background: rgba(255, 252, 244, 0.55);
}
html[data-saba-theme="bright"] .history-youtube-text span {
  color: var(--text-muted) !important;
}
html[data-saba-theme="bright"] .history-room-card {
  background: var(--saba-tile-bg);
  border-color: var(--saba-tile-border);
}

html[data-saba-theme="bright"] .caprices-sheet-icon,
html[data-saba-theme="bright"] .transport-sheet-icon,
html[data-saba-theme="bright"] .hk-sheet-icon,
html[data-saba-theme="bright"] .resupply-sheet-icon,
html[data-saba-theme="bright"] .reception-sheet-icon,
html[data-saba-theme="bright"] .a2hs-sheet-icon {
  background: rgba(191, 155, 88, 0.16);
  color: var(--saba-nude) !important;
}
html[data-saba-theme="bright"] .caprices-lead,
html[data-saba-theme="bright"] .transport-field,
html[data-saba-theme="bright"] .transport-back,
html[data-saba-theme="bright"] .hk-field,
html[data-saba-theme="bright"] .caprices-free-wrap,
html[data-saba-theme="bright"] .resupply-sheet-title {
  color: var(--text-muted) !important;
}
html[data-saba-theme="bright"] .transport-opt > i:first-child,
html[data-saba-theme="bright"] .transport-opt > .fa-chevron-right,
html[data-saba-theme="bright"] .caprices-chip i {
  color: var(--saba-nude) !important;
}
html[data-saba-theme="bright"] .transport-cancel,
html[data-saba-theme="bright"] .caprices-cancel {
  color: var(--text-muted) !important;
  background: rgba(255, 255, 255, 0.45);
  border-color: var(--saba-line);
}
html[data-saba-theme="bright"] .resupply-row {
  background: rgba(255, 252, 244, 0.72);
  border-color: var(--saba-tile-border);
  color: var(--text-main);
}
html[data-saba-theme="bright"] .resupply-row.is-on {
  background: linear-gradient(160deg, rgba(191, 155, 88, 0.16), rgba(255, 250, 240, 0.94));
  border-color: rgba(138, 101, 40, 0.38);
}
html[data-saba-theme="bright"] .reception-sheet-btn {
  background: var(--saba-tile-bg);
  border-color: var(--saba-tile-border);
  color: var(--text-main);
}
html[data-saba-theme="bright"] .reception-sheet-btn i {
  color: var(--saba-nude) !important;
}

html[data-saba-theme="bright"] .basket-line--card {
  background: rgba(255, 252, 244, 0.82) !important;
  border-color: var(--saba-line) !important;
  box-shadow: 0 4px 12px rgba(80, 50, 16, 0.06) !important;
}
html[data-saba-theme="bright"] .basket-lift-chip {
  background: rgba(255, 252, 244, 0.82) !important;
  border-color: var(--saba-line);
}
html[data-saba-theme="bright"] .basket-lift-idx {
  background: rgba(191, 155, 88, 0.18);
  color: var(--gold);
}
html[data-saba-theme="bright"] .basket-lift-chip em,
html[data-saba-theme="bright"] .basket-sheet-count {
  color: var(--gold) !important;
}
html[data-saba-theme="bright"] .basket-bill-info-btn {
  color: var(--gold) !important;
}
html[data-saba-theme="bright"] .basket-bill-info-btn.is-open {
  color: var(--text-main) !important;
}
html[data-saba-theme="bright"] .basket-bill-tip p {
  color: var(--text-muted) !important;
}
html[data-saba-theme="bright"] .basket-ticket--receipt .basket-line--card,
html[data-saba-theme="bright"] .basket-ticket--receipt .basket-line {
  border-bottom-color: var(--saba-line) !important;
}

html[data-saba-theme="bright"] .footer-logo-tooltip {
  background: rgba(251, 246, 236, 0.96);
  color: var(--text-main);
  border-color: var(--saba-line);
}
html[data-saba-theme="bright"] .footer-logo-tooltip::after {
  background: rgba(251, 246, 236, 0.96);
  border-color: var(--saba-line);
}

html[data-saba-theme="bright"] .home-feature-card,
html[data-saba-theme="bright"] .riad-tile,
html[data-saba-theme="bright"] .riad-bento,
html[data-saba-theme="bright"] .move-cta {
  background: var(--saba-tile-bg) !important;
  border-color: var(--saba-tile-border) !important;
}
html[data-saba-theme="bright"] .service-btn {
  background: var(--saba-tile-bg) !important;
  border-color: var(--saba-tile-border) !important;
}
html[data-saba-theme="bright"] .service-label {
  color: var(--text-main) !important;
}

html[data-saba-theme="bright"] .weather-bento-label,
html[data-saba-theme="bright"] .weather-bento-tomorrow-detail,
html[data-saba-theme="bright"] .weather-hero-temp,
html[data-saba-theme="bright"] .weather-stat-value,
html[data-saba-theme="bright"] .weather-current-temp,
html[data-saba-theme="bright"] .weather-day-label {
  color: var(--text-main);
}
html[data-saba-theme="bright"] .weather-bento-tomorrow-label {
  color: var(--text-muted);
}
html[data-saba-theme="bright"] .weather-today-bento {
  background:
    linear-gradient(155deg, rgba(212, 174, 106, 0.16) 0%, rgba(255, 250, 240, 0.92) 55%, rgba(247, 240, 226, 0.88) 100%);
  border-color: var(--saba-tile-border);
  box-shadow: 0 10px 28px -16px rgba(80, 50, 16, 0.18);
}
html[data-saba-theme="bright"] .weather-stat {
  background:
    linear-gradient(160deg, rgba(255, 255, 255, 0.7), transparent 55%),
    rgba(255, 252, 244, 0.72);
  border-color: var(--saba-tile-border);
}

html[data-saba-theme="bright"] .city-move-chip,
html[data-saba-theme="bright"] .view-page-icon-wrap {
  background: rgba(255, 252, 244, 0.72);
  border-color: var(--saba-tile-border);
}

html[data-saba-theme="bright"] .caprices-sheet-handle,
html[data-saba-theme="bright"] .transport-sheet-handle,
html[data-saba-theme="bright"] .resupply-sheet-handle,
html[data-saba-theme="bright"] .reception-sheet-handle,
html[data-saba-theme="bright"] .hk-sheet-handle,
html[data-saba-theme="bright"] .a2hs-sheet-handle {
  background: rgba(138, 101, 40, 0.28) !important;
}

html[data-saba-theme="bright"] .a2hs-sheet-title,
html[data-saba-theme="bright"] .a2hs-step-text,
html[data-saba-theme="bright"] .a2hs-step-num {
  color: var(--text-main);
}
html[data-saba-theme="bright"] .a2hs-step {
  background: rgba(255, 252, 244, 0.72);
  border-color: var(--saba-tile-border);
}

html[data-saba-theme="bright"] .basket-line-summary strong,
html[data-saba-theme="bright"] .basket-line-edit-btn {
  color: var(--text-main) !important;
}
html[data-saba-theme="bright"] .basket-line-sum-meta {
  color: var(--text-muted) !important;
}
html[data-saba-theme="bright"] .basket-line-sum-note {
  color: var(--text-muted) !important;
  opacity: 0.75;
}
html[data-saba-theme="bright"] .basket-line-edit-btn {
  background: rgba(191, 155, 88, 0.12) !important;
  border-color: var(--saba-line) !important;
  color: var(--saba-nude) !important;
}

html[data-saba-theme="bright"] .caprices-cat-story,
html[data-saba-theme="bright"] .caprices-chip,
html[data-saba-theme="bright"] .caprices-free-wrap {
  color: var(--text-muted) !important;
}
html[data-saba-theme="bright"] .caprices-chip.is-on {
  color: var(--text-main) !important;
  background: rgba(191, 155, 88, 0.16);
}
html[data-saba-theme="bright"] .caprices-cat.is-open {
  background: linear-gradient(160deg, rgba(191, 155, 88, 0.12), rgba(255, 250, 240, 0.94)) !important;
}
html[data-saba-theme="bright"] .caprices-cat-chevron {
  color: var(--saba-nude);
}

html[data-saba-theme="bright"] .basket-line-remove {
  color: var(--text-muted) !important;
  opacity: 0.65;
}
html[data-saba-theme="bright"] .riad-caprices-text strong {
  color: var(--text-main) !important;
}
html[data-saba-theme="bright"] .riad-caprices-text em {
  color: var(--text-muted) !important;
}
html[data-saba-theme="bright"] .riad-caprices > .fa-chevron-right {
  color: var(--saba-nude) !important;
}

html[data-saba-theme="bright"] .caprices-sheet-actions,
html[data-saba-theme="bright"] .transport-sheet-actions,
html[data-saba-theme="bright"] .basket-sheet-foot {
  background: linear-gradient(180deg, transparent, #fbf6ec 32%, #f3ead8 100%) !important;
}
html[data-saba-theme="bright"] .catalog-card-media {
  background: #efe4ce !important;
}

/* Bright — icônes custom (classes non-FA) encore bronze */
html[data-saba-theme="bright"] .header-reception-icon i,
html[data-saba-theme="bright"] .guide-category-icon,
html[data-saba-theme="bright"] .guide-subcategory-icon,
html[data-saba-theme="bright"] .quick-action-icon,
html[data-saba-theme="bright"] .home-feature-card i,
html[data-saba-theme="bright"] .city-move-chip i,
html[data-saba-theme="bright"] .info-transport-cta i,
html[data-saba-theme="bright"] .carnet-coach-icon,
html[data-saba-theme="bright"] .carnet-coach-sparkles i,
html[data-saba-theme="bright"] .riad-caprices-icon,
html[data-saba-theme="bright"] .basket-empty-icon,
html[data-saba-theme="bright"] .basket-empty-choice i,
html[data-saba-theme="bright"] .basket-place-chip i,
html[data-saba-theme="bright"] .resupply-row-icon,
html[data-saba-theme="bright"] .breakfast-allergy-icon,
html[data-saba-theme="bright"] .remote-feature-icon i,
html[data-saba-theme="bright"] .play-fab i,
html[data-saba-theme="bright"] .reception-notice i,
html[data-saba-theme="bright"] .guide-content i,
html[data-saba-theme="bright"] .catalog-card-swatch i,
html[data-saba-theme="bright"] .a2hs-tab i,
html[data-saba-theme="bright"] .riad-sub-btn--hk i,
html[data-saba-theme="bright"] .h-scroll-hint i {
  color: var(--saba-nude) !important;
}

html[data-saba-theme="bright"] .basket-place-chip.is-on i {
  color: var(--saba-nude) !important;
}

html[data-saba-theme="bright"] .hub-section--city .hub-section-eyebrow i {
  color: var(--saba-nude) !important;
}

/* ── Guide chambre / info-root bright mode ── */
html[data-saba-theme="bright"] .info-block {
  background: rgba(255, 252, 244, 0.75);
  border-color: var(--saba-tile-border);
}
html[data-saba-theme="bright"] .info-block--alert {
  background: rgba(200, 80, 60, 0.07);
  border-color: rgba(200, 80, 60, 0.25);
}
html[data-saba-theme="bright"] .info-block--tip {
  background: rgba(191, 155, 88, 0.07);
  border-color: rgba(191, 155, 88, 0.22);
}
html[data-saba-theme="bright"] .info-block-head h3 {
  color: var(--saba-nude);
}
html[data-saba-theme="bright"] .info-block-note,
html[data-saba-theme="bright"] .info-alert-body,
html[data-saba-theme="bright"] .info-tip-body {
  color: var(--text-main);
}
html[data-saba-theme="bright"] .info-item-label {
  color: var(--text-main);
  opacity: 0.7;
}
html[data-saba-theme="bright"] .info-item-value {
  color: var(--text-main);
}
html[data-saba-theme="bright"] .info-ext-cell {
  background: rgba(255, 252, 244, 0.8);
  border-color: var(--saba-tile-border);
}
html[data-saba-theme="bright"] .info-ext-cell.is-current {
  background: rgba(191, 155, 88, 0.1);
  border-color: color-mix(in srgb, var(--saba-nude) 40%, transparent);
}
html[data-saba-theme="bright"] .info-ext-num {
  color: var(--saba-nude);
}
html[data-saba-theme="bright"] .info-ext-name {
  color: var(--text-main);
  opacity: 0.65;
}
html[data-saba-theme="bright"] .info-price-val {
  color: var(--saba-nude);
}
html[data-saba-theme="bright"] .resupply-inline-cta {
  background: rgba(191, 155, 88, 0.08);
  border-color: rgba(191, 155, 88, 0.3);
  color: var(--text-main);
}
html[data-saba-theme="bright"] .resupply-inline-cta:hover {
  background: rgba(191, 155, 88, 0.15);
  border-color: rgba(191, 155, 88, 0.45);
}
html[data-saba-theme="bright"] .drawer-still img {
  opacity: 0.78;
  filter: saturate(0.88) contrast(1.02) brightness(1.02);
}
html[data-saba-theme="bright"] .drawer-still::after {
  background:
    linear-gradient(180deg, rgba(251, 246, 236, 0.12) 0%, rgba(36, 28, 20, 0.28) 100%),
    linear-gradient(90deg, color-mix(in srgb, var(--gold) 10%, transparent), transparent 40%);
  opacity: 0.85;
}
html[data-saba-theme="bright"] .collection-carousel:not(.is-expanded) {
  background:
    linear-gradient(160deg, rgba(255, 255, 255, 0.28), transparent 52%),
    color-mix(in srgb, var(--saba-surface) 35%, transparent);
  border-color: color-mix(in srgb, var(--gold) 14%, transparent);
}

/* ——— Intent: carnet (info) vs ticket d’or (commande) ——— */
html .riad-tile[data-intent="info"],
html .service-btn[data-intent="info"],
html[data-saba-theme="bright"] .riad-tile[data-intent="info"],
html[data-saba-theme="bright"] .service-btn[data-intent="info"] {
  position: relative;
  background: var(--saba-info-bg) !important;
  border: 1px solid var(--saba-info-border) !important;
  box-shadow: var(--saba-info-shadow) !important;
}
html .riad-tile[data-intent="info"]:hover,
html .service-btn[data-intent="info"]:hover,
html[data-saba-theme="bright"] .riad-tile[data-intent="info"]:hover,
html[data-saba-theme="bright"] .service-btn[data-intent="info"]:hover {
  background: var(--saba-info-bg-hover) !important;
  border-color: var(--saba-info-border-hover) !important;
  filter: none;
}
html .riad-tile[data-intent="info"] .riad-tile-icon,
html .riad-tile[data-intent="info"] .riad-tile-icon i,
html .service-btn[data-intent="info"] > i,
html[data-saba-theme="bright"] .riad-tile[data-intent="info"] .riad-tile-icon,
html[data-saba-theme="bright"] .riad-tile[data-intent="info"] .riad-tile-icon i,
html[data-saba-theme="bright"] .service-btn[data-intent="info"] > i {
  color: var(--saba-info-icon) !important;
}

html .riad-tile[data-intent="info"] > .fa-chevron-right {
  display: block;
  position: absolute;
  right: 14px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 0.68rem;
  color: var(--saba-info-icon);
  opacity: 0.42;
}
html .riad-tile[data-intent="info"].riad-tile--wide {
  padding-right: 32px;
}

html .riad-tile[data-intent="commerce"],
html .service-btn[data-intent="commerce"],
html[data-saba-theme="bright"] .riad-tile[data-intent="commerce"],
html[data-saba-theme="bright"] .riad-tile--hero[data-intent="commerce"],
html[data-saba-theme="bright"] .service-btn[data-intent="commerce"] {
  position: relative;
  overflow: hidden;
  background: var(--saba-commerce-bg) !important;
  border: 1px solid var(--saba-commerce-border) !important;
  box-shadow: var(--saba-commerce-shadow) !important;
}
html .riad-tile[data-intent="commerce"]:hover,
html .service-btn[data-intent="commerce"]:hover,
html[data-saba-theme="bright"] .riad-tile[data-intent="commerce"]:hover,
html[data-saba-theme="bright"] .riad-tile--hero[data-intent="commerce"]:hover {
  background: var(--saba-commerce-bg-hover) !important;
  filter: none;
}
html .riad-tile[data-intent="commerce"] .riad-tile-icon,
html .riad-tile[data-intent="commerce"] .riad-tile-icon i,
html[data-saba-theme="bright"] .riad-tile[data-intent="commerce"] .riad-tile-icon,
html[data-saba-theme="bright"] .riad-tile[data-intent="commerce"] .riad-tile-icon i {
  color: var(--saba-commerce-icon) !important;
}
html .riad-tile[data-intent="commerce"] .riad-tile-copy em {
  color: color-mix(in srgb, var(--saba-commerce-icon) 70%, var(--text-muted));
}

html .riad-tile--hero[data-intent="commerce"] {
  background:
    linear-gradient(125deg, color-mix(in srgb, var(--gold) 12%, transparent), transparent 52%),
    var(--saba-commerce-bg) !important;
}
html .riad-tile--hero[data-intent="commerce"]:hover,
html[data-saba-theme="bright"] .riad-tile--hero[data-intent="commerce"]:hover {
  background:
    linear-gradient(125deg, color-mix(in srgb, var(--gold) 18%, transparent), transparent 52%),
    var(--saba-commerce-bg-hover) !important;
}

html .riad-tile[data-intent="commerce"]::after {
  content: "";
  position: absolute;
  left: 0;
  top: 18%;
  bottom: 18%;
  width: 2px;
  border-radius: 2px;
  background: linear-gradient(
    180deg,
    transparent,
    color-mix(in srgb, var(--saba-commerce-icon) 70%, transparent) 30%,
    color-mix(in srgb, var(--saba-commerce-icon) 70%, transparent) 70%,
    transparent
  );
  opacity: 0.7;
  pointer-events: none;
}
html[data-saba-theme="bright"] .riad-tile[data-intent="commerce"]::after {
  opacity: 0.55;
  background: linear-gradient(
    180deg,
    transparent,
    color-mix(in srgb, var(--saba-commerce-icon) 55%, transparent) 28%,
    color-mix(in srgb, var(--saba-commerce-icon) 55%, transparent) 72%,
    transparent
  );
}

html .service-btn[data-intent="commerce"] > i {
  color: var(--saba-commerce-icon) !important;
}
html[data-saba-theme="bright"] .service-btn[data-intent="commerce"] > i {
  color: var(--saba-commerce-icon) !important;
}


