:root {
  --background: 0 0% 3% !important;
  --foreground: 220 9% 96% !important;
  --card: 0 0% 8% !important;
  --card-foreground: 220 9% 96% !important;
  --popover: 0 0% 8% !important;
  --popover-foreground: 220 9% 96% !important;
  --primary: 353 88% 47% !important;
  --primary-foreground: 0 0% 100% !important;
  --secondary: 220 8% 78% !important;
  --secondary-foreground: 0 0% 8% !important;
  --muted: 220 6% 14% !important;
  --muted-foreground: 220 7% 72% !important;
  --accent: 353 88% 47% !important;
  --accent-foreground: 0 0% 100% !important;
  --border: 220 7% 23% !important;
  --input: 220 7% 21% !important;
  --ring: 353 88% 50% !important;
  --sidebar-background: 0 0% 4% !important;
  --sidebar-foreground: 220 9% 94% !important;
  --sidebar-primary: 353 88% 47% !important;
  --sidebar-primary-foreground: 0 0% 100% !important;
  --sidebar-accent: 220 6% 13% !important;
  --sidebar-accent-foreground: 220 9% 94% !important;
  --sidebar-border: 220 7% 22% !important;
  --sidebar-ring: 353 88% 50% !important;
  --luxe: 353 88% 47% !important;
  --luxe-glow: 220 8% 82% !important;
  --glass: 0 0% 100% / 0.055 !important;
  --glass-border: 220 8% 85% / 0.14 !important;
}

html.light {
  --background: 220 9% 96% !important;
  --foreground: 0 0% 8% !important;
  --card: 0 0% 100% !important;
  --card-foreground: 0 0% 8% !important;
  --popover: 0 0% 100% !important;
  --popover-foreground: 0 0% 8% !important;
  --primary: 353 88% 43% !important;
  --primary-foreground: 0 0% 100% !important;
  --secondary: 220 8% 84% !important;
  --secondary-foreground: 0 0% 8% !important;
  --muted: 220 8% 91% !important;
  --muted-foreground: 220 7% 35% !important;
  --accent: 353 88% 43% !important;
  --accent-foreground: 0 0% 100% !important;
  --border: 220 8% 78% !important;
  --input: 220 8% 78% !important;
  --ring: 353 88% 45% !important;
  --sidebar-background: 220 9% 97% !important;
  --sidebar-foreground: 0 0% 10% !important;
  --sidebar-primary: 353 88% 43% !important;
  --sidebar-primary-foreground: 0 0% 100% !important;
  --sidebar-accent: 220 8% 90% !important;
  --sidebar-accent-foreground: 0 0% 10% !important;
  --sidebar-border: 220 8% 78% !important;
  --sidebar-ring: 353 88% 45% !important;
  --luxe: 353 88% 43% !important;
  --luxe-glow: 220 7% 46% !important;
}

html,
body {
  background-color: #070708 !important;
}

body {
  background-image:
    radial-gradient(circle at 15% 5%, rgb(217 170 82 / 9%), transparent 26rem),
    linear-gradient(135deg, #070708 0%, #0d0d0f 55%, #070708 100%) !important;
}

.text-luxe-gradient {
  background-image: linear-gradient(118deg, #efc56b 0%, #d9aa52 42%, #f2f2f3 100%) !important;
}

button.bg-emerald-500,
a.bg-emerald-500 {
  background-color: #d9aa52 !important;
  box-shadow: 0 10px 28px rgb(217 170 82 / 22%) !important;
}

button.bg-emerald-500:hover,
a.bg-emerald-500:hover {
  background-color: #9f6a1d !important;
}

.courtesy-brand-card {
  border-color: rgb(217 170 82 / 28%) !important;
  box-shadow:
    inset 0 1px 0 rgb(255 255 255 / 5%),
    0 18px 50px rgb(0 0 0 / 24%);
}

#courtesy-global-brand {
  position: fixed;
  top: max(0.55rem, env(safe-area-inset-top));
  left: 0.75rem;
  z-index: 1250;
  display: block;
  width: 11rem;
  height: 7.25rem;
  overflow: hidden;
  border: 1px solid rgb(214 216 221 / 34%);
  border-radius: 0.8rem;
  background: #050506;
  box-shadow:
    0 0 0 1px rgb(217 170 82 / 38%),
    0 16px 40px rgb(0 0 0 / 58%),
    0 0 32px rgb(217 170 82 / 10%);
  transition: transform 180ms ease, box-shadow 180ms ease;
}

#courtesy-global-brand:hover,
#courtesy-global-brand:focus-visible {
  transform: translateY(-1px) scale(1.015);
  box-shadow:
    0 0 0 1px rgb(239 15 48 / 74%),
    0 18px 46px rgb(0 0 0 / 64%),
    0 0 36px rgb(217 170 82 / 22%);
}

#courtesy-global-brand img {
  display: block;
  width: 100%;
  height: auto;
  transform: translateY(-0.2rem);
}

/* Keep the persistent Prestige mark visible in operating consoles without
   allowing its fixed visual box to intercept dispatcher controls underneath. */
html.courtesy-operational-route #courtesy-global-brand {
  pointer-events: none;
}

/* The booking workspace is a true viewport-centered task window. These rules
   intentionally live in the last-loaded brand sheet so legacy utility styles
   cannot pull the dialog toward the dashboard edge. */
html.courtesy-booking-open #courtesy-global-brand {
  display: none !important;
}

[data-courtesy-booking-dialog="true"] {
  position: fixed !important;
  /* Use viewport lengths, not percentages. Some admin views establish a
     transformed containing block; percentage offsets center inside that view
     and make the dialog appear pinned to the upper-left of the screen. */
  inset: auto !important;
  left: 50vw !important;
  top: 50dvh !important;
  z-index: 5000 !important;
  display: flex !important;
  width: min(50rem, calc(100vw - 2rem - env(safe-area-inset-left) - env(safe-area-inset-right))) !important;
  height: min(44rem, calc(100vh - 2rem - env(safe-area-inset-top) - env(safe-area-inset-bottom))) !important;
  height: min(44rem, calc(100dvh - 2rem - env(safe-area-inset-top) - env(safe-area-inset-bottom))) !important;
  max-width: none !important;
  max-height: calc(100vh - 2rem - env(safe-area-inset-top) - env(safe-area-inset-bottom)) !important;
  max-height: calc(100dvh - 2rem - env(safe-area-inset-top) - env(safe-area-inset-bottom)) !important;
  margin: 0 !important;
  padding: 0 !important;
  /* Cancel Tailwind's individual translate property before applying the
     explicit viewport-centering transform. Otherwise the dialog moves twice. */
  translate: none !important;
  transform: translate(-50%, -50%) !important;
  flex-direction: column !important;
  gap: 0 !important;
  overflow: hidden !important;
  border: 1px solid rgb(217 170 82 / 52%) !important;
  border-radius: 1rem !important;
  background: #09090b !important;
  box-shadow:
    0 30px 90px rgb(0 0 0 / 82%),
    0 0 0 1px rgb(255 255 255 / 6%),
    0 0 46px rgb(217 170 82 / 14%) !important;
}

[data-courtesy-primary-booking-trigger="true"] {
  min-height: 3rem !important;
  border: 1px solid rgb(255 255 255 / 12%) !important;
  background: linear-gradient(135deg, #ed1234, #9f6a1d) !important;
  box-shadow: 0 12px 28px rgb(217 170 82 / 24%) !important;
}

[data-courtesy-primary-booking-trigger="true"]:hover,
[data-courtesy-primary-booking-trigger="true"]:focus-visible {
  background: linear-gradient(135deg, #f21a3c, #ce0927) !important;
  box-shadow: 0 14px 32px rgb(217 170 82 / 34%) !important;
}

[data-courtesy-booking-dialog="true"] [data-booking-header="true"] {
  flex: 0 0 auto !important;
  gap: 0.45rem !important;
  padding: 1.15rem 4.75rem 1rem 1.25rem !important;
  border-bottom: 1px solid rgb(255 255 255 / 10%) !important;
  background:
    linear-gradient(90deg, rgb(217 170 82 / 14%), transparent 48%),
    #0b0b0d !important;
}

[data-courtesy-booking-dialog="true"] [data-booking-header="true"] h2 {
  color: #ffffff !important;
  font-size: 1.05rem !important;
  letter-spacing: 0.08em !important;
}

[data-courtesy-booking-dialog="true"] [data-booking-header="true"] p {
  max-width: 40rem;
  color: #b8bac1 !important;
  line-height: 1.45 !important;
}

[data-courtesy-booking-dialog="true"] [data-booking-scroll="true"] {
  min-height: 0 !important;
  flex: 1 1 auto !important;
  align-content: start !important;
  padding: 1rem 1.25rem 1.25rem !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  overscroll-behavior: contain;
  scrollbar-gutter: stable;
}

[data-courtesy-booking-dialog="true"] [data-testid="dialog-close"] {
  top: 0.8rem !important;
  right: 0.8rem !important;
  z-index: 30 !important;
  width: 2.75rem !important;
  height: 2.75rem !important;
  border: 1px solid rgb(255 255 255 / 14%) !important;
  border-radius: 0.65rem !important;
  background: rgb(255 255 255 / 5%) !important;
  color: #ffffff !important;
  opacity: 1 !important;
}

[data-courtesy-booking-dialog="true"] [data-booking-actions="true"] {
  position: sticky !important;
  bottom: -1.25rem !important;
  z-index: 20 !important;
  margin: 0 -1.25rem -1.25rem !important;
  padding: 1rem 1.25rem max(1rem, env(safe-area-inset-bottom)) !important;
  border-top: 1px solid rgb(255 255 255 / 10%) !important;
  background: rgb(9 9 11 / 96%) !important;
  box-shadow: 0 -14px 30px rgb(0 0 0 / 54%) !important;
  backdrop-filter: blur(14px);
}

[data-courtesy-booking-dialog="true"] [data-booking-actions="true"] > button {
  min-height: 3rem !important;
  border-radius: 0.65rem !important;
  font-weight: 750 !important;
}

[data-courtesy-booking-dialog="true"] [data-booking-submit="true"] {
  min-width: 15rem;
  background: #d9aa52 !important;
  box-shadow: 0 10px 28px rgb(217 170 82 / 25%) !important;
}

[data-courtesy-booking-dialog="true"] [data-booking-submit="true"]:disabled {
  background: #3a3a40 !important;
  color: #a7a7ae !important;
  box-shadow: none !important;
}

.courtesy-original-brand {
  opacity: 0 !important;
  pointer-events: none !important;
}

.courtesy-inline-brand {
  display: block;
  width: min(10.5rem, 100%);
  height: auto;
  margin-inline: auto;
  filter: drop-shadow(0 10px 22px rgb(0 0 0 / 55%));
}

.courtesy-admin-brand-host {
  width: 100%;
  padding-block: 0.25rem 0.45rem;
  text-align: center;
}

#courtesy-brand-splash {
  position: fixed;
  inset: 0;
  z-index: 2147482000;
  display: grid;
  place-items: center;
  background:
    radial-gradient(circle at 50% 42%, rgb(217 170 82 / 16%), transparent 26rem),
    repeating-linear-gradient(120deg, transparent 0 38px, rgb(255 255 255 / 1.2%) 39px 40px),
    #050506;
  opacity: 1;
  visibility: visible;
  transition: opacity 320ms ease, visibility 320ms ease;
}

#courtesy-brand-splash.courtesy-splash--hidden {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}

.courtesy-splash-inner {
  display: flex;
  width: min(24rem, 82vw);
  flex-direction: column;
  align-items: center;
  text-align: center;
}

.courtesy-splash-logo {
  display: block;
  width: 100%;
  height: auto;
  filter: drop-shadow(0 24px 42px rgb(0 0 0 / 72%));
}

.courtesy-splash-line {
  width: 9rem;
  height: 0.18rem;
  margin-top: 1rem;
  overflow: hidden;
  border-radius: 999px;
  background: rgb(255 255 255 / 12%);
}

.courtesy-splash-line::after {
  display: block;
  width: 50%;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #d9aa52, #ffffff, #d9aa52);
  content: "";
  animation: courtesy-brand-load 900ms ease-in-out infinite alternate;
}

.courtesy-splash-copy {
  margin-top: 0.85rem;
  color: #c7c8cd;
  font: 700 0.68rem/1.4 Montserrat, system-ui, sans-serif;
  letter-spacing: 0.24em;
  text-transform: uppercase;
}

@keyframes courtesy-brand-load {
  from { transform: translateX(-15%); }
  to { transform: translateX(115%); }
}

@media (min-width: 768px) {
  html.courtesy-admin-route #courtesy-global-brand {
    display: none;
  }
}

@media (max-width: 640px) {
  [data-courtesy-booking-dialog="true"] {
    width: calc(100vw - 0.75rem - env(safe-area-inset-left) - env(safe-area-inset-right)) !important;
    height: calc(100vh - 1rem - env(safe-area-inset-top) - env(safe-area-inset-bottom)) !important;
    height: calc(100dvh - 1rem - env(safe-area-inset-top) - env(safe-area-inset-bottom)) !important;
    max-height: calc(100vh - 1rem - env(safe-area-inset-top) - env(safe-area-inset-bottom)) !important;
    max-height: calc(100dvh - 1rem - env(safe-area-inset-top) - env(safe-area-inset-bottom)) !important;
    border-radius: 0.75rem !important;
  }

  [data-courtesy-booking-dialog="true"] [data-booking-header="true"] {
    padding: 1rem 4rem 0.85rem 1rem !important;
  }

  [data-courtesy-booking-dialog="true"] [data-booking-header="true"] h2 {
    font-size: 0.95rem !important;
  }

  [data-courtesy-booking-dialog="true"] [data-booking-scroll="true"] {
    padding: 0.875rem 1rem 1rem !important;
  }

  [data-courtesy-booking-dialog="true"] [data-booking-layout="customer"],
  [data-courtesy-booking-dialog="true"] [data-booking-layout="schedule"],
  [data-courtesy-booking-dialog="true"] [data-booking-layout="payment"],
  [data-courtesy-booking-dialog="true"] [data-booking-layout="override"] {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  [data-courtesy-booking-dialog="true"] [data-booking-layout="trip-type"] {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }

  [data-courtesy-booking-dialog="true"] [data-booking-layout="trip-type"] button {
    min-width: 0 !important;
    padding-inline: 0.35rem !important;
    font-size: 0.68rem !important;
  }

  [data-courtesy-booking-dialog="true"] [data-booking-actions="true"] {
    bottom: -1rem !important;
    margin: 0 -1rem -1rem !important;
    padding: 0.8rem 1rem max(0.8rem, env(safe-area-inset-bottom)) !important;
  }

  [data-courtesy-booking-dialog="true"] [data-booking-actions="true"] > button {
    min-width: 0 !important;
    flex: 1 1 0 !important;
  }

  #courtesy-global-brand {
    display: none !important;
  }

  .courtesy-splash-inner {
    width: min(20rem, 84vw);
  }
}

/* Keep the complete Prestige logo legible and the business line reachable. */
#courtesy-global-brand {
  width: 10.5rem !important;
  height: 7rem !important;
  padding: .35rem !important;
}

#courtesy-global-brand img {
  object-fit: contain !important;
}

#prestige-global-call {
  position: fixed;
  right: max(1rem, env(safe-area-inset-right));
  bottom: max(1rem, env(safe-area-inset-bottom));
  z-index: 2147482500;
  padding: .8rem 1rem;
  border: 1px solid rgb(211 165 75 / 70%);
  border-radius: 999px;
  color: #fff7df;
  background: #0b594f;
  box-shadow: 0 .8rem 2rem rgb(4 43 38 / 28%);
  font: 800 .82rem/1 Arial, sans-serif;
  text-decoration: none;
}

#prestige-global-call:focus-visible {
  outline: 3px solid #f3cf7b;
  outline-offset: 3px;
}

@media (max-width: 640px) {
  #courtesy-global-brand {
    display: none !important;
  }
  #prestige-global-call {
    right: .65rem;
    bottom: calc(.65rem + env(safe-area-inset-bottom));
    padding: .72rem .8rem;
    font-size: .72rem;
  }
}

@media (pointer: coarse) {
  #courtesy-global-brand {
    display: none !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  #courtesy-global-brand,
  #courtesy-brand-splash,
  .courtesy-splash-line::after {
    animation: none !important;
    transition: none !important;
  }
}

/* Prestige tropical-luxe operations skin ----------------------------------
   The legacy application still powers several working tools. This last layer
   keeps every one of those routes inside the same dark Florida brand system. */
:root,
html.light.prestige-legacy-surface,
html.dark.prestige-legacy-surface {
  --background: 169 58% 7% !important;
  --foreground: 45 43% 95% !important;
  --card: 168 48% 11% !important;
  --card-foreground: 45 43% 95% !important;
  --popover: 168 50% 9% !important;
  --popover-foreground: 45 43% 95% !important;
  --primary: 42 68% 58% !important;
  --primary-foreground: 169 58% 8% !important;
  --secondary: 165 38% 23% !important;
  --secondary-foreground: 45 43% 95% !important;
  --muted: 167 31% 16% !important;
  --muted-foreground: 45 21% 75% !important;
  --accent: 14 72% 59% !important;
  --accent-foreground: 0 0% 100% !important;
  --border: 42 35% 30% !important;
  --input: 164 30% 27% !important;
  --ring: 42 68% 58% !important;
  --sidebar-background: 169 59% 8% !important;
  --sidebar-foreground: 45 43% 95% !important;
  --sidebar-primary: 42 68% 58% !important;
  --sidebar-primary-foreground: 169 58% 8% !important;
  --sidebar-accent: 166 37% 20% !important;
  --sidebar-accent-foreground: 45 43% 95% !important;
  --sidebar-border: 42 31% 27% !important;
  --sidebar-ring: 42 68% 58% !important;
  --luxe: 42 68% 58% !important;
  --luxe-glow: 42 78% 76% !important;
  --glass: 167 48% 10% / 0.82 !important;
  --glass-border: 42 64% 64% / 0.24 !important;
}

html.prestige-legacy-surface,
html.prestige-legacy-surface body {
  min-height: 100%;
  background-color: #041c18 !important;
}

html.prestige-legacy-surface body {
  background-image:
    linear-gradient(118deg, rgb(2 19 17 / 96%) 0%, rgb(4 39 33 / 88%) 48%, rgb(2 25 22 / 94%) 100%),
    url("/prestige/florida/call-center-team.png") !important;
  background-position: center, center top !important;
  background-size: cover, cover !important;
  background-attachment: fixed, fixed !important;
  color: #f7f1e5 !important;
}

html.prestige-legacy-surface #root {
  min-height: 100dvh;
  background:
    radial-gradient(circle at 8% 10%, rgb(220 173 79 / 19%), transparent 26rem),
    radial-gradient(circle at 92% 16%, rgb(33 164 135 / 17%), transparent 32rem),
    linear-gradient(180deg, rgb(3 28 24 / 30%), rgb(3 21 19 / 72%));
}

html.prestige-legacy-surface #root > [class*="bg-background"],
html.prestige-legacy-surface #root > [class*="min-h-dvh"] {
  background-color: rgb(4 28 24 / 82%) !important;
  background-image:
    linear-gradient(135deg, rgb(6 50 42 / 46%), rgb(3 22 19 / 84%)),
    radial-gradient(circle at 88% 8%, rgb(219 171 78 / 16%), transparent 25rem) !important;
}

html.prestige-legacy-surface .text-luxe-gradient {
  background-image: linear-gradient(118deg, #fff1bf 0%, #dcac4e 48%, #f5c763 100%) !important;
}

html.prestige-legacy-surface button.bg-emerald-500,
html.prestige-legacy-surface a.bg-emerald-500,
html.prestige-legacy-surface [data-courtesy-primary-booking-trigger="true"] {
  border: 1px solid rgb(255 241 191 / 28%) !important;
  background: linear-gradient(135deg, #e2b653, #b3791f) !important;
  color: #05231e !important;
  box-shadow: 0 0.8rem 2rem rgb(220 173 79 / 24%) !important;
}

html.prestige-legacy-surface button.bg-emerald-500:hover,
html.prestige-legacy-surface a.bg-emerald-500:hover,
html.prestige-legacy-surface [data-courtesy-primary-booking-trigger="true"]:hover {
  background: linear-gradient(135deg, #f1ce78, #c68d2b) !important;
}

html.prestige-legacy-surface .courtesy-brand-card,
html.prestige-legacy-surface [class*="bg-card"] {
  border-color: rgb(220 173 79 / 24%) !important;
  background-color: rgb(5 44 37 / 86%) !important;
  box-shadow:
    inset 0 1px 0 rgb(255 255 255 / 7%),
    0 1rem 2.8rem rgb(0 0 0 / 28%) !important;
  backdrop-filter: blur(14px);
}

#courtesy-global-brand {
  top: max(0.65rem, env(safe-area-inset-top));
  width: 7.5rem;
  height: 7.85rem;
  padding: .35rem;
  border: 2px solid #e7b94f;
  border-radius: 1rem;
  background: #000;
  box-shadow: 0 0 0 4px rgb(231 185 79 / 10%), 0 1rem 2.8rem rgb(0 0 0 / 52%);
}

#courtesy-global-brand:hover,
#courtesy-global-brand:focus-visible {
  box-shadow: 0 1rem 2.5rem rgb(14 70 62 / 30%), 0 0 0 3px rgb(211 165 75 / 30%);
}

#courtesy-global-brand img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  transform: none;
}

[data-courtesy-booking-dialog="true"] {
  border-color: rgb(220 173 79 / 42%) !important;
  background: #062b25 !important;
  color: #f7f1e5 !important;
  box-shadow: 0 2rem 6rem rgb(0 0 0 / 56%) !important;
}

[data-courtesy-booking-dialog="true"] [data-booking-header="true"] {
  border-bottom-color: rgb(255 255 255 / 13%) !important;
  background:
    linear-gradient(90deg, rgb(206 154 61 / 22%), transparent 52%),
    #073f36 !important;
}

[data-courtesy-booking-dialog="true"] [data-booking-header="true"] h2 {
  color: #fff !important;
}

[data-courtesy-booking-dialog="true"] [data-booking-header="true"] p {
  color: rgb(255 255 255 / 74%) !important;
}

[data-courtesy-booking-dialog="true"] [data-testid="dialog-close"] {
  border-color: rgb(255 255 255 / 20%) !important;
  background: rgb(255 255 255 / 10%) !important;
}

[data-courtesy-booking-dialog="true"] [data-booking-actions="true"] {
  border-top-color: rgb(220 173 79 / 22%) !important;
  background: rgb(5 37 32 / 98%) !important;
  box-shadow: 0 -0.8rem 2rem rgb(0 0 0 / 22%) !important;
}

[data-courtesy-booking-dialog="true"] [data-booking-submit="true"] {
  background: linear-gradient(135deg, #e2b653, #b3791f) !important;
  color: #05231e !important;
  box-shadow: 0 0.7rem 1.6rem rgb(220 173 79 / 24%) !important;
}

[data-courtesy-booking-dialog="true"] [data-booking-submit="true"]:disabled {
  background: #aab7b2 !important;
  color: #f5f6f5 !important;
}

.courtesy-inline-brand {
  width: 4.4rem;
  border-radius: .9rem;
  box-shadow: 0 .7rem 1.5rem rgb(6 58 51 / 18%);
  filter: none;
}

#courtesy-brand-splash {
  background:
    linear-gradient(90deg, rgb(5 47 42 / 91%), rgb(5 47 42 / 42%)),
    url("/prestige/florida/call-center-team.png") center / cover !important;
}

.courtesy-splash-inner {
  width: min(46rem, 88vw);
  padding: 1.5rem;
  border: 1px solid rgb(255 255 255 / 16%);
  border-radius: 1.5rem;
  background: rgb(5 47 42 / 58%);
  box-shadow: 0 2rem 5rem rgb(0 0 0 / 26%);
  backdrop-filter: blur(12px);
}

.courtesy-splash-logo {
  width: min(38rem, 100%);
  border-radius: 1rem;
  filter: none;
}

.courtesy-splash-line::after {
  background: linear-gradient(90deg, #d9ad56, #fff3ce, #d9ad56);
}

.courtesy-splash-copy {
  color: #f0e7d5;
  font-size: .75rem;
  line-height: 1.5;
}

html.prestige-legacy-surface input,
html.prestige-legacy-surface select,
html.prestige-legacy-surface textarea {
  border-color: rgb(220 173 79 / 28%) !important;
  background-color: rgb(2 27 23 / 78%) !important;
  color: #fff9ec !important;
}

html.prestige-legacy-surface input::placeholder,
html.prestige-legacy-surface textarea::placeholder {
  color: rgb(235 225 203 / 62%) !important;
}

html.prestige-legacy-surface option {
  background: #062b25;
  color: #fff9ec;
}

html.prestige-legacy-surface button,
html.prestige-legacy-surface [role="button"] {
  transition: transform 160ms ease, box-shadow 160ms ease, background-color 160ms ease;
}

html.prestige-legacy-surface button:hover,
html.prestige-legacy-surface [role="button"]:hover {
  transform: translateY(-1px);
}

/* Older app bundles contain a few 8–11px utility labels. Keep them readable
   on every viewport without changing the surrounding dashboard layout. */
html.prestige-legacy-surface [class*="text-[8px]"],
html.prestige-legacy-surface [class*="text-[9px]"],
html.prestige-legacy-surface [class*="text-[10px]"],
html.prestige-legacy-surface [class*="text-[11px]"] {
  font-size: .75rem !important;
  line-height: 1.45 !important;
}

@media (max-width: 640px) {
  #courtesy-global-brand {
    width: 5.8rem;
    height: 6.1rem;
    padding: .25rem;
  }
  html.prestige-legacy-surface body {
    background-position: center, 63% top !important;
  }
  html.prestige-legacy-surface #root {
    background:
      linear-gradient(180deg, rgb(3 42 35 / 42%), rgb(3 21 19 / 84%)),
      radial-gradient(circle at 82% 6%, rgb(220 173 79 / 18%), transparent 20rem);
  }
  .courtesy-splash-inner { width: calc(100% - 1rem); padding: .7rem; }
  .courtesy-splash-logo { border-radius: .7rem; }
  html.prestige-legacy-surface small { font-size: .75rem; line-height: 1.45; }
}
