/* VIENNA v173 — production release polish.
   Mobile entry stability, guest drawer rebuild and explicit Black map mode. */
:root{
  --v173-orange:#F59A62;
  --v173-orange-light:#FFC39B;
  --v173-orange-deep:#D9703F;
  --v173-paper:#FFFBF2;
  --v173-ink:#27231F;
  --v173-muted:#706861;
  --v173-line:rgba(112,104,97,.17);
  --v173-black:#171512;
  --v173-black-2:#211E1B;
  --v173-black-3:#2B2723;
}

/* Never distort brand assets. */
img[src*="vienna-logo"],img[src*="vienna-wordmark"]{object-fit:contain!important;object-position:center!important}

/* -------------------------------------------------------------
   Map Black button
   ------------------------------------------------------------- */
.map-theme-btn{position:relative!important;overflow:hidden!important}
.map-theme-btn .map-theme-day,.map-theme-btn .map-theme-night{position:absolute!important;inset:0!important;display:grid!important;place-items:center!important;transition:opacity .16s ease,transform .18s ease!important}
.map-theme-btn .map-theme-day{opacity:1;transform:scale(1)}
.map-theme-btn .map-theme-night{opacity:0;transform:scale(.72)}
html[data-rairo-theme="black"] .map-theme-btn .map-theme-day{opacity:0;transform:scale(.72)}
html[data-rairo-theme="black"] .map-theme-btn .map-theme-night{opacity:1;transform:scale(1)}
html[data-rairo-theme="black"] .map-theme-btn{background:linear-gradient(145deg,#302B27,#211E1B)!important;color:#FFC39B!important;border-color:rgba(255,195,155,.22)!important;box-shadow:0 12px 30px rgba(0,0,0,.30),inset 0 1px 0 rgba(255,255,255,.08)!important}

/* -------------------------------------------------------------
   Guest drawer — three dots while signed out
   ------------------------------------------------------------- */
.ws-app .guest-account-drawer{padding:12px!important;overflow:hidden!important}
.ws-app .guest-account-drawer .drawer-grab{margin-bottom:9px!important;background:rgba(112,104,97,.22)!important}
.guest-drawer-content{padding:4px 3px 6px!important;min-width:0!important}
.guest-drawer-top{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;margin-bottom:18px!important}
.guest-drawer-brand{display:flex!important;align-items:center!important;gap:11px!important;min-width:0!important}
.guest-drawer-brand img{width:42px!important;height:42px!important;flex:0 0 42px!important;border-radius:13px!important;box-shadow:0 9px 22px rgba(217,112,63,.16)!important}
.guest-drawer-brand div{min-width:0!important}
.guest-drawer-brand small{display:block!important;color:var(--v173-orange-deep)!important;font-size:8px!important;font-weight:950!important;letter-spacing:.14em!important;line-height:1!important}
.guest-drawer-brand b{display:block!important;margin-top:5px!important;color:var(--v173-ink)!important;font-size:11px!important;font-weight:850!important;line-height:1.25!important;white-space:normal!important;overflow-wrap:anywhere!important}
.guest-drawer-close{width:36px!important;height:36px!important;flex:0 0 36px!important;display:grid!important;place-items:center!important;padding:0!important;border:1px solid var(--v173-line)!important;border-radius:12px!important;background:#FFF8F2!important;color:#655D57!important;box-shadow:none!important}
.guest-drawer-content h3{margin:0!important;color:var(--v173-ink)!important;font-size:22px!important;letter-spacing:-.75px!important;line-height:1.05!important}
.guest-drawer-content>p{margin:9px 0 0!important;max-width:34ch!important;color:#7A716B!important;font-size:11px!important;line-height:1.55!important;overflow-wrap:anywhere!important}
.guest-drawer-benefits{display:grid!important;grid-template-columns:1fr!important;gap:7px!important;margin-top:17px!important}
.guest-drawer-benefits span{min-width:0!important;display:flex!important;align-items:center!important;gap:9px!important;padding:10px 11px!important;border:1px solid rgba(112,104,97,.12)!important;border-radius:13px!important;background:#FFF9F4!important;color:#5E5651!important;font-size:10px!important;font-weight:800!important;line-height:1.2!important}
.guest-drawer-benefits svg{flex:0 0 auto!important;color:var(--v173-orange-deep)!important}
.guest-drawer-actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important;margin-top:17px!important}
.guest-drawer-primary,.guest-drawer-secondary{min-width:0!important;min-height:47px!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:0 10px!important;border-radius:14px!important;font-size:10.5px!important;font-weight:900!important;text-align:center!important}
.guest-drawer-primary{background:linear-gradient(135deg,var(--v173-orange-light),var(--v173-orange) 58%,var(--v173-orange-deep))!important;color:#fff!important;box-shadow:0 10px 22px rgba(217,112,63,.20)!important}
.guest-drawer-secondary{border:1px solid var(--v173-line)!important;background:#fff!important;color:var(--v173-ink)!important}
.guest-drawer-continue{width:100%!important;min-height:40px!important;margin-top:7px!important;padding:0 12px!important;border:0!important;background:transparent!important;color:#827973!important;font-size:9.5px!important;font-weight:800!important;box-shadow:none!important}

/* -------------------------------------------------------------
   Real Black mode. Only Vienna charcoal + orange; no legacy violet.
   ------------------------------------------------------------- */
html[data-rairo-theme="black"] body{--bg:#171512;--surface:#211E1B;--surface-2:#2B2723;--surface-3:#332E29;--text:#FFFBF2;--muted:#B8AEA7;--muted-2:#8F857E;--line:rgba(255,251,242,.11);background:#171512!important;color:#FFFBF2!important}
html[data-rairo-theme="black"] .ws-app{background:#171512!important;color:#FFFBF2!important}
html[data-rairo-theme="black"] :is(.search-card,.sheet#planSheet,.sheet,.destination-confirm,.prefs-drawer,.safety-drawer,.account-drawer,.options-drawer,.nav-panel.nav-minimal,.nav-maneuver-top,.nav-street-chip,.floating-speedo,.nav-stack-btn,.nav-audio-toggle,.nav-map-mode,.nav-tracking,.nav-voice-popover,.nav-alt-hint,.nav-feedback,.traffic-radar,.route-loading-card,.resume-trip-card,.quick-alert-card,.guest-limit-card){background:rgba(33,30,27,.96)!important;color:#FFFBF2!important;border-color:rgba(255,251,242,.10)!important;box-shadow:0 18px 48px rgba(0,0,0,.30)!important}
html[data-rairo-theme="black"] :is(.search-card input,.location-input,.route-card,.planner-preset,.nearby-service,.drawer-link,.safety-tool,.pref-row,.quick-alert-grid button,.parking-item,.preview-actions .sub-action,.segment button,.travel button){background:#27231F!important;color:#F7EFEA!important;border-color:rgba(255,251,242,.10)!important}
html[data-rairo-theme="black"] :is(.planner-heading-copy b,.route-head h2,.route-card h3,.nav-maneuver-copy b,.nav-summary-item strong,.floating-speedo strong,.drawer-user b,.drawer-login h3,.safety-head h3,.prefs-head h3,.destination-confirm h3,.guest-drawer-brand b,.guest-drawer-content h3){color:#FFFBF2!important}
html[data-rairo-theme="black"] :is(.drawer-user span,.drawer-login p,.guest-drawer-content>p,.planner-heading-copy span,.route-card-meta,.route-ai,.nav-summary-item small,.traffic-radar-copy span,.destination-confirm p){color:#B6ACA5!important}
html[data-rairo-theme="black"] :is(.options-btn,.map-tools .map-btn,.floating-locate){background:rgba(39,35,31,.95)!important;color:#FFFBF2!important;border-color:rgba(255,251,242,.12)!important;box-shadow:0 10px 26px rgba(0,0,0,.28)!important}
html[data-rairo-theme="black"] :is(.options-btn,.map-tools .map-btn,.floating-locate):hover{background:#302B27!important;color:#FFC39B!important}
html[data-rairo-theme="black"] :is(.segment button.active,.travel button.active,.planner-preset.active,.nearby-service.active){background:rgba(245,154,98,.13)!important;color:#FFC39B!important;border-color:rgba(245,154,98,.30)!important}
html[data-rairo-theme="black"] .guest-drawer-brand small,html[data-rairo-theme="black"] .quick-alert-head small{color:#FFC39B!important}
html[data-rairo-theme="black"] .guest-drawer-close,html[data-rairo-theme="black"] .guest-drawer-secondary{background:#27231F!important;color:#FFFBF2!important;border-color:rgba(255,251,242,.10)!important}
html[data-rairo-theme="black"] .guest-drawer-benefits span{background:#27231F!important;color:#D4CAC3!important;border-color:rgba(255,251,242,.08)!important}
html[data-rairo-theme="black"] .guest-drawer-continue{color:#AAA098!important}
html[data-rairo-theme="black"] .mapboxgl-popup-content{background:rgba(33,30,27,.98)!important;color:#FFFBF2!important;border-color:rgba(255,251,242,.10)!important}
html[data-rairo-theme="black"] .mapboxgl-popup-tip{border-top-color:#211E1B!important}
html[data-rairo-theme="black"] .mapboxgl-ctrl-group button{background:#27231F!important;color:#FFFBF2!important}

/* -------------------------------------------------------------
   Phone entry/login — predictable single-column layout.
   ------------------------------------------------------------- */
@media(max-width:760px){
  body:has(.auth-page[data-auth-page="login"]){overflow-x:hidden!important;background:#FFFBF2!important}
  .auth-page[data-auth-page="login"]{display:block!important;min-height:100dvh!important;height:auto!important;padding:0!important;background:#FFFBF2!important;overflow:visible!important}
  .auth-page[data-auth-page="login"] .auth-shell{display:block!important;min-height:100dvh!important;height:auto!important;width:100%!important;border:0!important;border-radius:0!important;background:#FFFBF2!important;box-shadow:none!important;overflow:visible!important}
  .auth-page[data-auth-page="login"] .route-pane{display:none!important}
  .auth-page[data-auth-page="login"] .auth-pane{display:block!important;min-height:100dvh!important;padding:max(18px,env(safe-area-inset-top)) max(18px,env(safe-area-inset-right)) max(24px,calc(env(safe-area-inset-bottom) + 10px)) max(18px,env(safe-area-inset-left))!important;background:#FFFBF2!important;overflow:visible!important}
  .auth-page[data-auth-page="login"] .brand-row{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;flex-wrap:nowrap!important;width:100%!important}
  .auth-page[data-auth-page="login"] .brand{display:flex!important;min-width:0!important;max-width:60%!important}
  .auth-page[data-auth-page="login"] .auth-brand-wordmark{display:block!important;width:min(156px,44vw)!important;height:auto!important;max-height:34px!important;object-fit:contain!important;object-position:left center!important}
  .auth-page[data-auth-page="login"] .product-pill{flex:0 0 auto!important;max-width:42%!important;padding:7px 9px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;font-size:8px!important}
  .auth-page[data-auth-page="login"] .auth-copy{display:block!important;padding:clamp(34px,8vh,72px) 0 0!important;margin:0!important;max-width:none!important}
  .auth-page[data-auth-page="login"] .eyebrow{font-size:9px!important;letter-spacing:.12em!important}
  .auth-page[data-auth-page="login"] h1{margin:12px 0 13px!important;max-width:11ch!important;font-size:clamp(37px,11.6vw,54px)!important;line-height:.96!important;letter-spacing:-2.3px!important;color:#27231F!important}
  .auth-page[data-auth-page="login"] h1 span{display:block!important;color:#D9703F!important}
  .auth-page[data-auth-page="login"] .lead{max-width:42ch!important;margin:0!important;font-size:13px!important;line-height:1.55!important;color:#706861!important}
  .auth-page[data-auth-page="login"] .auth-actions{display:grid!important;gap:9px!important;margin-top:26px!important;width:100%!important}
  .auth-page[data-auth-page="login"] .auth-button{width:100%!important;min-width:0!important;height:52px!important;min-height:52px!important;border-radius:15px!important}
  .auth-page[data-auth-page="login"] .auth-links{margin-top:2px!important;font-size:10.5px!important;line-height:1.4!important;text-align:center!important}
  .auth-page[data-auth-page="login"] .guest-link{width:100%!important;height:44px!important;min-height:44px!important;margin-top:0!important;border-radius:14px!important}
  .auth-page[data-auth-page="login"] .legal{margin-top:24px!important;padding-top:15px!important;font-size:9px!important;line-height:1.5!important;color:#8B817A!important}
  .auth-page[data-auth-page="login"] .status-note{margin:15px 0 0!important}
  .auth-sheet{align-items:flex-end!important;justify-content:center!important;padding:0!important}
  .auth-sheet .sheet-card{width:100%!important;max-width:none!important;max-height:min(88dvh,720px)!important;border-radius:24px 24px 0 0!important;padding:max(18px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(18px,calc(env(safe-area-inset-bottom) + 8px)) max(16px,env(safe-area-inset-left))!important;overflow:auto!important}
  .auth-sheet .sheet-input,.auth-sheet .sheet-select{font-size:16px!important}
}
@media(max-width:370px){
  .auth-page[data-auth-page="login"] .auth-pane{padding-left:max(14px,env(safe-area-inset-left))!important;padding-right:max(14px,env(safe-area-inset-right))!important}
  .auth-page[data-auth-page="login"] .auth-brand-wordmark{width:132px!important}
  .auth-page[data-auth-page="login"] .product-pill{font-size:7px!important;padding:6px 7px!important}
  .auth-page[data-auth-page="login"] .auth-copy{padding-top:30px!important}
  .auth-page[data-auth-page="login"] h1{font-size:36px!important}
}

/* -------------------------------------------------------------
   Registration — remove the unstable illustration column on phones.
   ------------------------------------------------------------- */
@media(max-width:760px){
  .rairo-entry{min-height:100dvh!important;background:#FFFBF2!important;overflow-x:hidden!important}
  .rairo-entry .rairo-splash{display:none!important}
  .rairo-entry .v63-entry-shell{display:block!important;width:100%!important;min-height:100dvh!important;margin:0!important;border:0!important;border-radius:0!important;box-shadow:none!important;background:#FFFBF2!important;overflow:visible!important}
  .rairo-entry .v63-route-stage{display:none!important}
  .rairo-entry .v63-entry-panel{width:100%!important;min-height:100dvh!important;padding:max(24px,env(safe-area-inset-top)) max(18px,env(safe-area-inset-right)) max(28px,calc(env(safe-area-inset-bottom) + 10px)) max(18px,env(safe-area-inset-left))!important;background:#FFFBF2!important}
  .rairo-entry .v63-entry-brand{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;min-width:0!important}
  .rairo-entry .rairo-entry-wordmark{width:min(156px,44vw)!important;height:auto!important;max-height:34px!important;object-fit:contain!important;object-position:left center!important}
  .rairo-entry .v63-entry-brand em{max-width:44%!important;font-size:8px!important;line-height:1.2!important;text-align:right!important;white-space:normal!important}
  .rairo-entry .v63-entry-kicker{margin-top:clamp(38px,8vh,72px)!important;font-size:9px!important}
  .rairo-entry .v63-entry-panel h1{max-width:10ch!important;margin:10px 0 13px!important;font-size:clamp(38px,11vw,52px)!important;line-height:.96!important;letter-spacing:-2.2px!important}
  .rairo-entry .v63-entry-lead{max-width:42ch!important;font-size:13px!important;line-height:1.55!important}
  .rairo-entry .v63-entry-proof{display:flex!important;gap:7px!important;flex-wrap:wrap!important;margin-top:17px!important}
  .rairo-entry .v63-entry-proof span{font-size:8.5px!important}
  .rairo-entry .v63-auth-block{margin-top:24px!important;width:100%!important}
  .rairo-entry .auth-google{min-height:52px!important;border-radius:15px!important}
  .rairo-entry .v63-auth-row{grid-template-columns:1fr!important;gap:8px!important}
  .rairo-entry .auth-choice{min-height:48px!important}
  .rairo-entry .auth-guest{min-height:42px!important}
  .rairo-entry .auth-legal{font-size:9px!important;line-height:1.5!important}
}

/* -------------------------------------------------------------
   Onboarding logo + phone sizing.
   ------------------------------------------------------------- */
.rairo-mini .rairo-mini-wordmark{width:128px!important;height:auto!important;max-height:28px!important;border-radius:0!important;filter:none!important;object-fit:contain!important;object-position:left center!important}
@media(max-width:430px){
  .onboard{padding-top:max(14px,env(safe-area-inset-top))!important;padding-left:max(12px,env(safe-area-inset-left))!important;padding-right:max(12px,env(safe-area-inset-right))!important}
  .ob-top{min-height:44px!important}
  .rairo-mini .rairo-mini-wordmark{width:112px!important;max-height:24px!important}
  .step-pill{font-size:7.5px!important;letter-spacing:.06em!important;padding:6px 8px!important}
  .ob-head{padding:22px 1px 17px!important}
  .ob-head h1{font-size:clamp(34px,10.8vw,44px)!important;line-height:.98!important}
  .ob-head p{font-size:11px!important;line-height:1.5!important}
  .choice-grid{grid-template-columns:1fr!important}
  .night-card{grid-template-columns:minmax(0,1fr) auto!important}
  .privacy-note{font-size:8.5px!important}
}

/* Guest drawer is a bottom sheet on phones; never a clipped right panel. */
@media(max-width:640px){
  .ws-app .account-drawer.guest-account-drawer{left:max(8px,env(safe-area-inset-left))!important;right:max(8px,env(safe-area-inset-right))!important;top:auto!important;bottom:max(8px,env(safe-area-inset-bottom))!important;width:auto!important;max-width:none!important;max-height:min(82dvh,620px)!important;border-radius:24px!important;overflow:auto!important;transform:translateY(calc(100% + 30px))!important;transition:transform .24s cubic-bezier(.2,.78,.2,1)!important}
  .ws-app .account-drawer.guest-account-drawer.show{transform:none!important}
  .guest-drawer-content h3{font-size:21px!important}
  .guest-drawer-content>p{max-width:none!important;font-size:10.5px!important}
  .guest-drawer-benefits{grid-template-columns:1fr!important}
  .guest-drawer-actions{grid-template-columns:1fr!important}
  .guest-drawer-primary,.guest-drawer-secondary{min-height:46px!important}
}

/* Small landscape phones: keep only what matters. */
@media(max-height:520px) and (orientation:landscape) and (max-width:960px){
  .auth-page[data-auth-page="login"] .auth-copy{padding-top:14px!important}
  .auth-page[data-auth-page="login"] h1{font-size:34px!important;margin:8px 0!important}
  .auth-page[data-auth-page="login"] .lead{font-size:11px!important;line-height:1.35!important}
  .auth-page[data-auth-page="login"] .auth-actions{margin-top:12px!important}
  .auth-page[data-auth-page="login"] .legal{margin-top:10px!important;padding-top:8px!important}
}

/* Keep the Black toggle visible in the free-map control rail. */
body:not(.body-nav) .map-tools #mapThemeBtn{
  display:grid!important;
  width:44px!important;
  height:44px!important;
  border-radius:15px!important;
  border:1px solid rgba(112,104,97,.17)!important;
  background:rgba(255,251,242,.96)!important;
  color:#4F4843!important;
  box-shadow:0 9px 22px rgba(74,51,36,.10)!important;
}
html[data-rairo-theme="black"] body:not(.body-nav) .map-tools #mapThemeBtn{
  background:linear-gradient(145deg,#302B27,#211E1B)!important;
  color:#FFC39B!important;
  border-color:rgba(255,195,155,.20)!important;
}


/* ------------------------------------------------------------------
   VIENNA v174 — dark-mode text cleanup + auth brand lockup polish.
   ------------------------------------------------------------------ */
html[data-rairo-theme="black"] :is(
  .search-label,.search-label span,.search-label em,.search-message,.search-message b,.search-message span,
  .result-copy b,.result-address,.result-copy small,.result-stars,.result-meta,
  .search-suggestion,.search-suggestion b,.search-suggestion small,
  .drawer-link,.drawer-link span,.drawer-link em,.drawer-link i,
  .guest-drawer-content h3,.guest-drawer-content>p,.guest-drawer-brand b,.guest-drawer-brand small,
  .guest-drawer-benefits span,.guest-drawer-continue,.guest-drawer-secondary,
  .quick-alert-head h3,.quick-alert-head p,.quick-alert-label,.quick-alert-status,
  .planner-heading-copy b,.planner-heading-copy span,.planner-tip,
  .route-card h3,.route-card p,.route-card-meta,.route-ai,.route-ai *,
  .sheet-head h2,.sheet-head p,.sheet-switch,.sheet-switch a,.sheet-field label,
  .destination-confirm h3,.destination-confirm p,.preview-actions .sub-action,
  .travel button,.segment button,.planner-preset,.planner-preset *,
  .nearby-service,.nearby-service *, .safety-tool,.safety-tool *, .pref-row,.pref-row *,
  .nav-summary-item strong,.nav-summary-item small,.nav-street-chip,.nav-map-mode,.nav-tracking,.nav-feedback,
  .traffic-radar-copy b,.traffic-radar-copy span,.guest-limit-card *,.parking-item *
){color:#FFFBF2!important}
html[data-rairo-theme="black"] :is(
  .guest-drawer-content>p,.drawer-user span,.drawer-login p,.planner-heading-copy span,.route-card-meta,.route-ai,
  .nav-summary-item small,.traffic-radar-copy span,.destination-confirm p,.search-label,.search-label em,
  .result-address,.result-copy small,.sheet-head p,.sheet-switch,.sheet-field label,.quick-alert-head p,.quick-alert-label,
  .guest-drawer-benefits span,.guest-drawer-continue,.parking-item span,.search-suggestion small
){color:#D5CBC4!important}
html[data-rairo-theme="black"] :is(.search-card input,.location-input,.sheet-input,.sheet-select,.search-item,.search-suggestion,.drawer-link,.quick-alert-grid button,.planner-preset,.nearby-service,.safety-tool,.pref-row,.parking-item){color:#FFFBF2!important}
html[data-rairo-theme="black"] :is(.search-card input,.location-input,.sheet-input)::placeholder{color:#B8AEA7!important}
html[data-rairo-theme="black"] :is(.drawer-link:hover,.search-item:active,.search-suggestion:active,.quick-alert-grid button:active,.planner-preset:active,.nearby-service:active){color:#FFC39B!important}
html[data-rairo-theme="black"] .guest-drawer-primary{color:#fff!important}
html[data-rairo-theme="black"] .mapboxgl-popup-content *{color:inherit!important}
html[data-rairo-theme="black"] .route-card .badge,html[data-rairo-theme="black"] .route-card .delta{color:#FFC39B!important}

/* Shared brand lockup used on register page. */
.vienna-auth-lockup{display:flex!important;align-items:center!important;gap:12px!important;min-width:0!important;text-decoration:none!important}
.vienna-auth-lockup img.vienna-auth-icon{width:48px!important;height:48px!important;flex:0 0 48px!important;border-radius:15px!important;box-shadow:0 10px 22px rgba(217,112,63,.16)!important;object-fit:contain!important}
.vienna-auth-brand-copy{display:flex!important;flex-direction:column!important;min-width:0!important}
.vienna-auth-brand-copy .vienna-auth-wordmark{width:170px!important;max-width:100%!important;height:auto!important;max-height:48px!important;object-fit:contain!important;object-position:left center!important}
.vienna-auth-tagline{display:block!important;margin-top:6px!important;color:#706861!important;font-size:12px!important;font-weight:700!important;line-height:1.28!important;letter-spacing:-.1px!important}
.vienna-auth-tagline br{display:block!important}
@media(max-width:760px){
  .vienna-auth-lockup img.vienna-auth-icon{width:44px!important;height:44px!important;flex-basis:44px!important;border-radius:14px!important}
  .vienna-auth-brand-copy .vienna-auth-wordmark{width:min(154px,44vw)!important;max-height:34px!important}
  .vienna-auth-tagline{font-size:10.5px!important;line-height:1.25!important;margin-top:4px!important}
}


/* ------------------------------------------------------------------
   VIENNA v175 — auth banner, true auth dark mode, and global black cleanup.
   ------------------------------------------------------------------ */
.vienna-auth-banner-link{display:block!important;max-width:min(100%,560px)!important;text-decoration:none!important}
.vienna-auth-banner{display:block!important;width:min(100%,520px)!important;height:auto!important;max-height:112px!important;object-fit:contain!important;object-position:left center!important;filter:drop-shadow(0 14px 34px rgba(74,51,36,.10))}
.vienna-auth-banner--compact{width:min(100%,420px)!important;max-height:96px!important}
.vienna-auth-tagline{display:block!important;margin-top:10px!important;color:#706861!important;font-size:14px!important;font-weight:700!important;line-height:1.35!important;letter-spacing:-.12px!important}

html[data-rairo-theme="black"] :is(.topbar,footer,.mobile-dock,.auth-page,.auth-shell,.auth-pane,.route-pane,.route-summary,.reroute-card,.status-note,.product-pill,.rairo-entry,.v63-entry-shell,.v63-entry-panel,.v63-auth-block,.sheet-card,.sheet-input,.sheet-select,.auth-google,.auth-choice.secondary,.auth-guest,.auth-legal,.v63-entry-proof span,.v63-stage-card,.v63-stage-brand,.field input,.input-shell){color:#FFFBF2!important}
html[data-rairo-theme="black"] :is(body,.auth-page,.rairo-entry){background:#171512!important}
html[data-rairo-theme="black"] :is(.auth-shell,.v63-entry-shell){background:#211E1B!important;border-color:rgba(255,251,242,.08)!important;box-shadow:0 22px 72px rgba(0,0,0,.34)!important}
html[data-rairo-theme="black"] :is(.auth-pane,.v63-entry-panel,.v63-auth-block,.sheet-card){background:#211E1B!important;border-color:rgba(255,251,242,.08)!important}
html[data-rairo-theme="black"] :is(.eyebrow,.v63-entry-kicker,.v63-entry-brand em,.sheet-field label,.sheet-switch,.auth-legal,.lead,.v63-entry-lead,.legal,.route-summary p,.reroute-card span,.status-note,.product-pill,.auth-links,.guest-link,.v63-entry-proof span){color:#D5CBC4!important}
html[data-rairo-theme="black"] :is(h1,.auth-copy h1,.v63-entry-panel h1,.sheet-head h2,.route-summary h2,.reroute-card b,.auth-links a,.guest-link,.status-note,.v63-auth-label span:first-child){color:#FFFBF2!important}
html[data-rairo-theme="black"] :is(h1 span,.eyebrow,.v63-entry-kicker,.v63-auth-label span:last-child,.sheet-switch a,.auth-links a:hover,.guest-link:hover){color:#FFC39B!important}
html[data-rairo-theme="black"] :is(.product-pill,.status-note,.v63-entry-proof span,.v63-stage-card,.v63-stage-brand){background:#27231F!important;border-color:rgba(255,251,242,.10)!important;box-shadow:none!important}
html[data-rairo-theme="black"] .product-pill i{background:#F59A62!important;box-shadow:0 0 0 4px rgba(245,154,98,.11)!important}
html[data-rairo-theme="black"] :is(.auth-button.google,.auth-google,.auth-choice.secondary,.auth-guest,.sheet-close){background:#27231F!important;color:#FFFBF2!important;border-color:rgba(255,251,242,.10)!important;box-shadow:none!important}
html[data-rairo-theme="black"] :is(.auth-button.email,.auth-choice.primary,.sheet-submit){color:#fff!important}
html[data-rairo-theme="black"] :is(.sheet-input,.sheet-select,.field input,.input-shell){background:#27231F!important;color:#FFFBF2!important;border-color:rgba(255,251,242,.10)!important}
html[data-rairo-theme="black"] :is(.sheet-input,.sheet-select,.field input)::placeholder{color:#B8AEA7!important}
html[data-rairo-theme="black"] .route-pane{background:#1B1815!important;border-left-color:rgba(255,251,242,.08)!important}
html[data-rairo-theme="black"] .route-summary,html[data-rairo-theme="black"] .reroute-card{background:rgba(39,35,31,.95)!important;border-color:rgba(255,251,242,.10)!important;color:#FFFBF2!important}
html[data-rairo-theme="black"] .summary-kicker,html[data-rairo-theme="black"] .summary-kicker span:first-child{color:#D5CBC4!important}
html[data-rairo-theme="black"] .route-metrics div{background:#27231F!important;border:1px solid rgba(255,251,242,.08)!important}
html[data-rairo-theme="black"] .route-metrics strong{color:#FFFBF2!important}
html[data-rairo-theme="black"] .route-metrics span{color:#C6BBB4!important}
html[data-rairo-theme="black"] .vienna-auth-tagline{color:#D5CBC4!important}
@media(max-width:760px){
  .vienna-auth-banner{width:min(100%,350px)!important;max-height:84px!important}
  .vienna-auth-tagline{font-size:11px!important;line-height:1.3!important;margin-top:8px!important}
  html[data-rairo-theme="black"] .auth-page[data-auth-page="login"]{background:#171512!important}
  html[data-rairo-theme="black"] .auth-page[data-auth-page="login"] .auth-shell{background:#171512!important}
  html[data-rairo-theme="black"] .auth-page[data-auth-page="login"] .auth-pane,html[data-rairo-theme="black"] .rairo-entry .v63-entry-panel{background:#171512!important}
}
