@font-face {
  font-family: 'Bustan Arabic';
  src: url('/fonts/NotoSansArabic-UI.woff2') format('woff2');
  font-weight: 400 800;
  font-style: normal;
  font-display: swap;
  unicode-range: U+0600-06FF, U+0750-077F, U+0870-0891, U+0897-08FF, U+200C-200E, U+FB50-FDFF, U+FE70-FEFC;
}
/* Each palette is also available on its preview swatch. */
:root, .hub-theme-swatch[data-theme-swatch="navy"] {
  --bt-canvas: #f3f6fa;
  --bt-surface: #fff;
  --bt-surface-soft: #f7f9fc;
  --bt-tint: #e9f1fa;
  --bt-line: #dce4ee;
  --bt-line-emphasis: #a6bfd9;
  --bt-control-line: #778ba5;
  --bt-ink-rgb: 19 41 67;
  --bt-muted: #52637a;
  --bt-brand-rgb: 33 76 122;
  --bt-deep-rgb: 17 40 67;
  --bt-focus: #2864a3;
  --bt-hero-muted-rgb: 203 218 234;
  --bt-hero-accent-rgb: 174 201 234;
  --bt-hero-layer-rgb: 207 222 244;
  --bt-hero-ring-rgb: 201 225 255;
  --bt-hero-gradient: #1e4166;
  --bt-hero-glow: #294d75;
  --bt-hero-alt: #325577;
  --bt-hero-progress: #91b1d1;
  --bt-hero-highlight: #e3efff;
  --bt-art-hue: 165deg;
}
:root.traveler-portal-page:not([data-traveler-theme="navy"], [data-traveler-theme="plum"]),
.hub-theme-swatch[data-theme-swatch="oasis"] {
  --bt-canvas: #f7f4e9;
  --bt-surface: #fffdf7;
  --bt-surface-soft: #f9f6eb;
  --bt-tint: #eeefe2;
  --bt-line: #ddd9c8;
  --bt-line-emphasis: #b2b99f;
  --bt-control-line: #788670;
  --bt-ink-rgb: 27 49 43;
  --bt-muted: #53635a;
  --bt-brand-rgb: 32 96 78;
  --bt-deep-rgb: 16 55 47;
  --bt-focus: #86601f;
  --bt-hero-muted-rgb: 226 233 218;
  --bt-hero-accent-rgb: 235 203 134;
  --bt-hero-layer-rgb: 230 218 184;
  --bt-hero-ring-rgb: 231 201 135;
  --bt-hero-gradient: #1c4d3e;
  --bt-hero-glow: #2b624d;
  --bt-hero-alt: #315b49;
  --bt-hero-progress: #c1b483;
  --bt-hero-highlight: #ffedbf;
  --bt-art-hue: 0deg;
}
:root.traveler-portal-page[data-traveler-theme="plum"], .hub-theme-swatch[data-theme-swatch="plum"] {
  --bt-canvas: #f5f1f8;
  --bt-surface: #fff;
  --bt-surface-soft: #f9f5fb;
  --bt-tint: #eee5f4;
  --bt-line: #e4d8eb;
  --bt-line-emphasis: #c3abd1;
  --bt-control-line: #87738f;
  --bt-ink-rgb: 48 33 58;
  --bt-muted: #64576c;
  --bt-brand-rgb: 101 70 121;
  --bt-deep-rgb: 57 35 70;
  --bt-focus: #77528b;
  --bt-hero-muted-rgb: 231 215 236;
  --bt-hero-accent-rgb: 228 198 237;
  --bt-hero-layer-rgb: 232 214 239;
  --bt-hero-ring-rgb: 237 211 249;
  --bt-hero-gradient: #563963;
  --bt-hero-glow: #684875;
  --bt-hero-alt: #694478;
  --bt-hero-progress: #c8a4d5;
  --bt-hero-highlight: #f5e3f9;
  --bt-art-hue: 225deg;
}
:root, .hub-theme-swatch {
  --bt-ink: rgb(var(--bt-ink-rgb));
  --bt-brand: rgb(var(--bt-brand-rgb));
  --bt-deep: rgb(var(--bt-deep-rgb));
  --bt-hero-muted: rgb(var(--bt-hero-muted-rgb));
  --bt-hero-accent: rgb(var(--bt-hero-accent-rgb));
}
:root {
  --bt-ok: #176246;
  --bt-ok-bg: #e8f4ed;
  --bt-warn: #78510c;
  --bt-warn-bg: #fff2da;
  --bt-error: #973535;
  --bt-error-bg: #fcebee;
  --bt-card-radius: 18px;
  --bt-control-radius: 12px;
  --bt-touch: 48px;
  --bt-safe-top: env(safe-area-inset-top, 0px);
  --bt-safe-right: env(safe-area-inset-right, 0px);
  --bt-safe-bottom: env(safe-area-inset-bottom, 0px);
  --bt-safe-left: env(safe-area-inset-left, 0px);
  --bt-mobile-nav-space: calc(4.2rem + var(--bt-safe-bottom));
  --bt-mobile-launch-size: 3.7rem;
  --bt-mobile-launch-gap: .55rem;
  --bt-mobile-overlay-space: calc(var(--bt-mobile-nav-space) + var(--bt-mobile-launch-size) + var(--bt-mobile-launch-gap));
  --bt-shadow: 0 6px 20px rgb(var(--bt-deep-rgb) / .047);
  --bustan-pine: #092e29;
  --bustan-green: #12604e;
  --bustan-gold: #c69a55;
  --bustan-ivory: #f7f6f0;
  --bustan-card: #fffdfa;
  --bustan-ink: #172d29;
  --bustan-muted: #536861;
  --bustan-line: #dfe6dc;
  --bustan-font: 'Bustan Arabic', system-ui, Tahoma, sans-serif;
}

.bustan-ui.traveler-portal-page {
  --bustan-pine: var(--bt-deep);
  --bustan-green: var(--bt-brand);
  --bustan-gold: var(--bt-hero-accent);
  --bustan-ivory: var(--bt-canvas);
  --bustan-card: var(--bt-surface);
  --bustan-ink: var(--bt-ink);
  --bustan-muted: var(--bt-muted);
  --bustan-line: var(--bt-line);
  min-height: 100%;
  background: var(--bt-canvas);
  color: var(--bt-ink);
  font-family: var(--bustan-font);
}
.bustan-ui.traveler-portal-page body { background: var(--bt-canvas); }
.bustan-ui.traveler-portal-page body > .top { display: none; }
.bustan-ui.traveler-portal-page #app {
  --bt-page-gutter: clamp(12px, 3vw, 32px);
  padding-block: max(clamp(12px, 3vw, 28px), calc(var(--bt-safe-top) + .4rem)) 20px;
  padding-left: max(var(--bt-page-gutter), calc(var(--bt-safe-left) + .5rem));
  padding-right: max(var(--bt-page-gutter), calc(var(--bt-safe-right) + .5rem));
}
@media (max-width: 680px) {
  .bustan-ui.traveler-portal-page:has(.hub-nav) {
    scroll-padding-block-start: calc(var(--bt-safe-top) + .4rem);
    scroll-padding-block-end: calc(var(--bt-mobile-nav-space) + .6rem);
  }
  .bustan-ui.traveler-portal-page:has(.hub-nav):has(.zad-launch:not([hidden])) {
    scroll-padding-block-end: calc(var(--bt-mobile-overlay-space) + .6rem);
  }
  .bustan-ui.traveler-portal-page #app { padding-block-end: 12px; }
}
@media (max-width: 680px) and (max-height: 480px) {
  :root { --bt-mobile-launch-size: max(var(--bt-touch), 2.75rem); }
}
.bustan-ui .bpc, .bustan-ui .hub-admin { font-family: var(--bustan-font); }

.bustan-ui .hub-legacy .traveler-portal { max-inline-size: none; margin-block-start: 1rem; }
.bustan-ui .hub-legacy:not(.hub-legacy-fallback) .traveler-portal-header { display: none; }
.bustan-ui .hub-legacy .traveler-portal-trip { background: var(--bt-deep); border-radius: 18px; }
.bustan-ui .hub-legacy .traveler-portal-nav, .bustan-ui .hub-legacy .traveler-portal .card { background: var(--bustan-card); border-color: var(--bustan-line); }
.bustan-ui .hub-legacy .traveler-portal-nav button, .bustan-ui .hub-legacy .traveler-portal-section-label { color: var(--bustan-green); }
.bustan-ui .hub-legacy button.primary { background: var(--bustan-green); border-color: var(--bustan-green); color: #fff; }
