:root.darb-platform {
  --darb-forest: #10382e;
  --darb-pine: #185649;
  --darb-jade: #267566;
  --darb-brass: #c6a36a;
  --darb-gold: #f4dcb0;
  --darb-gold-ink: #664b23;
  --darb-ivory: #f6f3ea;
  --darb-mint: #e8f2ed;
  --darb-line: #dce5de;
  --darb-ink: #172b25;
  --darb-muted: #52675f;
  --darb-paper: #fff;
  --darb-page: #f3f5f1;
  --darb-shadow: 0 12px 36px #18382c0e, 0 2px 7px #18382c08;
  --ink: var(--darb-ink);
  --muted: var(--darb-muted);
  --blue: var(--darb-pine);
  --navy: var(--darb-forest);
  --pink: var(--darb-gold-ink);
  --violet: var(--darb-pine);
  --canvas: var(--darb-page);
  --line: var(--darb-line);
  --surface: var(--darb-paper);
  --tint: var(--darb-mint);
  --brand: var(--darb-pine);
  --blue-soft: var(--darb-mint);
  --brand-gradient: linear-gradient(90deg, var(--darb-forest) 35%, var(--darb-jade) 75%, var(--darb-brass));
  --card-shadow: var(--darb-shadow);
  --workspace-soft: var(--darb-mint);
  --workspace-blue: var(--darb-pine);
  --workspace-dark: var(--darb-ink);
  background: var(--darb-page);
  color: var(--darb-ink);
  font-family: var(--bustan-font, system-ui, Tahoma, sans-serif);
}
:root.darb-platform:not(.traveler-portal-page),
:root.darb-platform.traveler-portal-page:not([data-traveler-theme="navy"], [data-traveler-theme="plum"]),
.darb-platform .hub-theme-swatch[data-theme-swatch="oasis"] {
  --bt-canvas: #f6f5ed;
  --bt-surface: #fff;
  --bt-surface-soft: #f8f9f5;
  --bt-tint: #e8f2ed;
  --bt-line: #dce5de;
  --bt-line-emphasis: #a9c8b9;
  --bt-control-line: #6e8c7d;
  --bt-ink-rgb: 23 43 37;
  --bt-muted: #52675f;
  --bt-brand-rgb: 24 86 73;
  --bt-deep-rgb: 16 56 46;
  --bt-focus: #87632f;
  --bt-hero-muted-rgb: 224 236 226;
  --bt-hero-accent-rgb: 240 215 166;
  --bt-hero-layer-rgb: 220 235 226;
  --bt-hero-ring-rgb: 198 163 106;
  --bt-hero-gradient: #185649;
  --bt-hero-glow: #236251;
  --bt-hero-alt: #244d3e;
  --bt-hero-progress: #c6a36a;
  --bt-hero-highlight: #fff0cf;
  --bt-art-hue: 0deg;
}
:root.darb-platform:not(.traveler-portal-page) {
  --bustan-pine: var(--darb-forest);
  --bustan-green: var(--darb-pine);
  --bustan-gold: var(--darb-brass);
  --bustan-ivory: var(--darb-ivory);
  --bustan-card: var(--darb-paper);
  --bustan-ink: var(--darb-ink);
  --bustan-muted: var(--darb-muted);
  --bustan-line: var(--darb-line);
}
.darb-platform .top-inner { min-block-size: 66px; }
.darb-platform .top::before { block-size: 3px; }
.darb-platform .top .brand { gap: .72rem; }
.darb-platform :is(.top, .login-brand) .brand-logo {
  position: static;
  inline-size: 2.9rem;
  block-size: 2.9rem;
  aspect-ratio: 1;
  background: transparent;
  border-radius: .75rem;
}
.darb-platform :is(.top, .login-brand) .brand-logo img {
  position: static;
  inline-size: 100%;
  block-size: 100%;
  object-fit: contain;
  inset: auto;
}
.darb-platform .brand-copy { border: 0; padding: 0; }
.darb-platform :is(.brand-copy, .darb-nav-brand, .hub-brand, .darb-public-brand) .darb-latin {
  display: block;
  color: inherit;
  direction: ltr;
  text-align: start;
  font: 650 .62rem/1.35 system-ui, sans-serif;
  letter-spacing: .075em;
}
.darb-platform :is(.brand-copy, .darb-nav-brand, .hub-brand, .darb-public-brand) strong { display: block; }
.darb-platform .brand-copy .darb-latin, .darb-platform .hub-brand .darb-latin { color: var(--darb-muted); }
.darb-platform .top-product { background: var(--darb-ivory); color: var(--darb-gold-ink); }
.darb-platform .top-product span { background: var(--darb-gold-ink); }

.darb-platform .login--branded { border: 1px solid var(--darb-line); box-shadow: var(--darb-shadow); }
.darb-platform .login--branded .login-brand {
  background: url('/brand/darb-route.svg') left bottom / min(110%, 32rem) auto no-repeat,
    linear-gradient(128deg, #10382e 15%, #185649 100%);
  color: #fff;
}
.darb-platform .login-brand .login-route { display: none; }
.darb-platform .login-brand .login-kicker { color: #f3dbad; }
.darb-platform .login-brand .login-brand-copy strong { color: #fff; }
.darb-platform .login-brand .login-brand-copy span { color: #e3efe7; }
.darb-platform :is(input, select, textarea, button, a):focus-visible {
  outline-color: #8a642d;
}
.darb-platform #app:not(:has(.hub)) :is(.btn-primary, .primary, button[type="submit"]) {
  background-color: var(--darb-pine);
  border-color: var(--darb-pine);
  color: #fff;
}
.darb-platform #app:not(:has(.hub)) :is(.btn-primary, .primary, button[type="submit"]):hover {
  background-color: var(--darb-forest);
}
.darb-platform .darb-nav-brand { display: none; }
.darb-platform .darb-workspace-toolbar {
  align-items: center;
  background: var(--darb-paper);
  border: 1px solid var(--darb-line);
  border-radius: .72rem;
  color: var(--darb-muted);
  display: flex;
  font-size: .8rem;
  gap: .45rem;
  justify-content: space-between;
  margin-block-end: .9rem;
  min-block-size: 45px;
  padding: .45rem .75rem;
}
.darb-platform .darb-workspace-toolbar strong { color: var(--darb-ink); }
.darb-platform .darb-workspace-toolbar .darb-scope {
  align-items: center;
  display: inline-flex;
  gap: .45rem;
  min-inline-size: 0;
  overflow-wrap: anywhere;
}
.darb-platform .darb-workspace-toolbar .darb-scope > bdi {
  color: var(--darb-gold-ink);
  background: var(--darb-ivory);
  padding: .12rem .42rem;
  border-radius: .4rem;
  font: 650 .69rem/1.55 system-ui, sans-serif;
}
.darb-platform .office-hero {
  background: linear-gradient(110deg, #10382e, #185649 95%);
  box-shadow: var(--darb-shadow);
  border-radius: 1.18rem;
  padding: clamp(1.1rem, 3vw, 1.8rem);
}
.darb-platform .office-hero::before {
  background: url('/brand/darb-route.svg') left center / auto 110% no-repeat;
  border: 0;
  border-radius: 0;
  block-size: auto;
  inline-size: auto;
  transform: none;
  content: '';
  inset: 0;
  opacity: .72;
  pointer-events: none;
  position: absolute;
  z-index: -1;
}
.darb-platform .office-hero::after { content: none; }
.darb-platform .office-hero .office-hero-kicker { color: #f0d7a6; }
.darb-platform .office-hero .office-hero-copy h1 { color: #fff; }
.darb-platform .office-hero .office-hero-copy > p:not(.office-hero-kicker) { color: #e5f0e8; }
.darb-platform .office-hero .office-hero-action {
  background: var(--darb-gold);
  border-color: var(--darb-gold);
  color: #3d2e16;
}
.darb-platform .office-hero .office-hero-action:hover { background: #ffedcb; }
.darb-platform .office-hero .office-hero-date {
  background: #12382deb;
  border: 1px solid #ffffff37;
  color: #fff;
}
.darb-platform .office-hero .office-hero-date > span { color: #f0d7a6; }
.darb-platform .darb-hero-meta { display: grid; justify-items: end; gap: .65rem; min-inline-size: 0; }
.darb-platform .darb-next-trip {
  display: grid;
  gap: .08rem;
  min-inline-size: min(12rem, 100%);
  max-inline-size: 19rem;
  padding: .56rem .76rem;
  background: #12382def;
  border: 1px solid #ffffff37;
  border-radius: .75rem;
  color: #f5faf6;
}
.darb-platform .darb-next-trip :is(small, strong) { display: block; overflow-wrap: anywhere; }
.darb-platform .darb-next-trip small { color: #f0d7a6; font-size: .72rem; }
.darb-platform .darb-next-trip strong { color: #fff; font-size: .95rem; }
.darb-platform :is(.overview-tile-icon, .overview-trip-icon, .office-trip-monitor__phase) {
  color: var(--darb-pine);
  background: var(--darb-mint);
}
.darb-platform :is(.overview-tile, .overview-trips, .office-trip-monitor, .records-workbench, .booking-detail-top) {
  border-color: var(--darb-line);
}
.darb-platform .overview-tile:hover { background: #f7faf6; border-color: #b1cbbf; }
.darb-platform .overview-tile .overview-arrow { color: var(--darb-pine); }
.darb-platform .overview-section-heading h2 { color: var(--darb-forest); }
.darb-platform .office-trip-monitor { border-inline-start-color: var(--darb-brass); }
.darb-platform .office-branches { --ob-accent: var(--darb-pine); --ob-soft: var(--darb-mint); }
.darb-platform .office-branches .ob-heading { background: var(--darb-mint); }
.darb-platform .office-branch-origin { color: var(--darb-gold-ink); }
.darb-platform .workspace-nav .nav-links button[aria-current="true"],
.darb-platform .workspace-nav[data-expanded="true"] .nav-links button[aria-current="true"] {
  color: var(--darb-forest);
  background: var(--darb-mint);
  border-color: #b3ccbd;
  box-shadow: none;
}
.darb-platform .workspace-nav .nav-links button[aria-current="true"] .nav-icon { color: var(--darb-pine); }
.darb-platform .workspace-nav .nav-menu { color: var(--darb-forest); background: var(--darb-mint); }

@media (min-width: 960px) {
  .darb-platform:has(#app > .workspace) body > .top { display: none; }
  .darb-platform #app.shell:has(> .workspace) {
    max-inline-size: 1510px;
    padding-inline: clamp(1rem, 2vw, 1.85rem);
    padding-block: 1.1rem 2rem;
  }
  .darb-platform .workspace {
    --darb-nav-width: 14.2rem;
    grid-template-columns: var(--darb-nav-width) minmax(0,1fr);
    gap: 0;
    min-block-size: min(43rem, 85vh);
    background: linear-gradient(to left, var(--darb-forest) var(--darb-nav-width), var(--darb-page) var(--darb-nav-width));
    border: 1px solid var(--darb-line);
    border-radius: 1.25rem;
    box-shadow: var(--darb-shadow);
  }
  .darb-platform .workspace-main { padding: 0 1.15rem 1.3rem; min-width: 0; }
  .darb-platform .darb-workspace-toolbar {
    border-width: 0 0 1px;
    border-radius: 1.2rem 0 0 0;
    margin: 0 -1.15rem 1.05rem;
    min-block-size: 54px;
    padding-inline: 1.15rem;
  }
  .darb-platform .workspace-nav {
    background: var(--darb-forest);
    border: 0;
    border-radius: 0 1.2rem 0 0;
    box-shadow: none;
    color: #f5faf6;
    margin: 0;
    padding: .92rem .73rem;
    scrollbar-color: #517b6a transparent;
    scrollbar-width: thin;
  }
  .darb-platform .darb-nav-brand {
    display: flex;
    align-items: center;
    gap: .62rem;
    padding: .15rem .3rem .45rem;
    color: #f7fbf7;
  }
  .darb-platform .darb-nav-brand img { inline-size: 2.65rem; block-size: 2.65rem; flex: none; }
  .darb-platform .darb-nav-brand strong { font-size: 1.05rem; white-space: nowrap; }
  .darb-platform .darb-nav-brand .darb-latin { color: #e3d4b5; }
  .darb-platform .workspace-nav .nav-workspace-label {
    background: #ffffff0c;
    border: 1px solid #ffffff2a;
    border-radius: .73rem;
    margin: 0 .02rem .3rem;
    padding: .58rem .55rem;
    min-inline-size: 0;
  }
  .darb-platform .workspace-nav .nav-workspace-label strong { color: #f7fbf7; overflow-wrap: anywhere; }
  .darb-platform .workspace-nav .nav-workspace-label small,
  .darb-platform .workspace-nav .nav-group-label,
  .darb-platform .workspace-nav .user { color: #c9ded2; }
  .darb-platform .workspace-nav .nav-workspace-label > span,
  .darb-platform .workspace-nav .nav-avatar {
    background: #ffffff15;
    color: #f0d7a6;
  }
  .darb-platform .workspace-nav .nav-links button,
  .darb-platform .workspace-nav .nav-links button .nav-icon,
  .darb-platform .workspace-nav .user strong {
    color: #e7f3eb;
  }
  .darb-platform .workspace-nav .nav-links button { background: transparent; border-color: transparent; }
  .darb-platform .workspace-nav .nav-links button:hover { background: #ffffff15; }
  .darb-platform .workspace-nav .nav-links button[aria-current="true"] {
    border-color: #ffffff32;
    background: #ffffff1b;
    color: #fff;
    box-shadow: inset -3px 0 var(--darb-brass);
  }
  .darb-platform .workspace-nav .nav-links button[aria-current="true"] .nav-icon { color: #f0d7a6; }
  .darb-platform .workspace-nav .nav-session { border-color: #ffffff2a; }
  .darb-platform .workspace-nav [data-view="logout"] { background: #ffffff13; color: #f8fdf9; border-color: #ffffff2a; }
  .darb-platform .workspace-nav [data-view="logout"]:hover { background: #ffffff24; }
}
@media (max-width: 959px) {
  .darb-platform .workspace .darb-workspace-toolbar { margin-block-end: .75rem; }
  .darb-platform .workspace-nav { border-color: var(--darb-line); background: var(--darb-paper); }
  .darb-platform .office-hero::before { opacity: .4; background-size: auto 100%; }
}
@media (max-width: 530px) {
  .darb-platform .top-inner { min-block-size: 58px; }
  .darb-platform .brand-copy strong { font-size: 1.14rem; }
  .darb-platform .darb-workspace-toolbar { flex-wrap: wrap; }
  .darb-platform .darb-hero-meta { justify-items: start; }
  .darb-platform .darb-next-trip { max-inline-size: min(19rem, 100%); }
}
.darb-platform :is(.hub, .bpc) .hub-brand img,
.darb-platform .hub-family .hub-brand img {
  inline-size: 2.65rem;
  block-size: 2.65rem;
  background: transparent;
  border-radius: .67rem;
  object-fit: contain;
}
.darb-platform .hub-brand strong { color: var(--darb-forest); }
.darb-platform .hub-brand .hub-kicker { color: var(--bt-muted); }
.darb-platform .hub .hub-hero::before {
  background-image: url('/brand/darb-route.svg');
  filter: none;
  opacity: .78;
}
.darb-platform .hub :is(.hub-card, .hub-nav, .hub-top), .darb-platform .bpc .bpc-card {
  box-shadow: var(--darb-shadow);
}
.darb-platform .wallet-pass-logo img { object-fit: contain; }
.darb-platform .copy-card {
  border-color: var(--darb-line);
  box-shadow: var(--darb-shadow);
}
.darb-platform .copy-brand { color: var(--darb-pine); }
.darb-platform .copy-card button { color: #fff; background: var(--darb-pine); border-color: var(--darb-pine); }
.darb-platform .darb-public-page { margin: 0; background: var(--darb-page); }
.darb-platform .darb-public-shell { width: min(44rem, calc(100% - 1.5rem)); margin: 2rem auto; }
.darb-platform .darb-public-brand { display: flex; align-items: center; gap: .7rem; color: var(--darb-forest); margin-block-end: .9rem; }
.darb-platform .darb-public-brand img { width: 2.9rem; height: 2.9rem; }
.darb-platform .darb-public-card {
  padding: clamp(1rem, 4vw, 1.75rem);
  border: 1px solid var(--darb-line);
  border-radius: 1.1rem;
  background: var(--darb-paper);
  box-shadow: var(--darb-shadow);
}
.darb-platform .darb-app-downloads { list-style: none; margin: .8rem 0; padding: 0; display: grid; gap: .5rem; }
.darb-platform .darb-app-downloads a {
  display: block;
  color: var(--darb-forest);
  background: var(--darb-mint);
  border: 1px solid #b3ccbd;
  border-radius: .68rem;
  padding: .65rem .85rem;
  font-weight: 700;
  text-decoration: none;
}
.darb-platform .darb-app-downloads a:hover { background: #dcece3; }
