/* Avelune v0.20.15 — direct trip workspace layout.
   No runtime DOM re-parenting. The static trip markup owns the layout. */

#tripWorkspace .aveluneMobileWeather{display:none}
#tripWorkspace > main.tripMainLayout{box-sizing:border-box;min-width:0}
#tripWorkspace .tripLeftColumn,#tripWorkspace .panel,#tripWorkspace .mapPane,#tripWorkspace #content{min-width:0;box-sizing:border-box}
#tripWorkspace .tripContextCards{min-width:0}
#tripWorkspace .tripContextCards>.avHeroCard{min-width:0;margin:0!important}

/* Calendar language is now native to the render path. */
#tripWorkspace #planCalendarBtn small{letter-spacing:.12em}

@media (min-width:1000px){
  #tripWorkspace > main.tripMainLayout{
    width:100%!important;
    height:calc(100dvh - 78px)!important;
    min-height:600px!important;
    margin:0!important;
    padding:18px 32px 24px!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(560px,1fr)!important;
    gap:26px!important;
    align-items:stretch!important;
    overflow:hidden!important;
  }
  #tripWorkspace .tripLeftColumn{
    display:grid!important;
    grid-template-rows:auto minmax(0,1fr)!important;
    gap:14px!important;
    min-height:0!important;
    height:100%!important;
  }
  #tripWorkspace .tripContextCards{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:14px!important;
    align-items:stretch!important;
  }
  #tripWorkspace .tripContextCards>.avHeroCard{
    display:block!important;
    position:relative!important;
    inset:auto!important;
    width:100%!important;
    max-width:none!important;
    min-height:116px!important;
    height:116px!important;
    overflow:hidden!important;
  }
  #tripWorkspace #mobileMapToggle{display:none!important}
  #tripWorkspace .mapPane{
    display:flex!important;
    flex-direction:column!important;
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    max-height:none!important;
    margin:0!important;
    overflow:hidden!important;
  }
  #tripWorkspace .mapPane #map{
    flex:1 1 auto!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
  }
  #tripWorkspace .panel{
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    max-height:none!important;
    margin:0!important;
    overflow:hidden!important;
    align-self:stretch!important;
  }
  #tripWorkspace .panel #content{
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    max-height:none!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    overscroll-behavior:contain;
    scrollbar-gutter:stable;
  }
  #tripWorkspace #content .plannerToolbar{
    position:sticky!important;
    top:0!important;
    z-index:30!important;
    background:var(--ivory,#fffaf0)!important;
  }
  #tripWorkspace #content .planDay>.dayHead{
    position:sticky!important;
    top:76px!important;
    z-index:29!important;
    background:var(--ivory,#fffaf0)!important;
    border-bottom:1px solid rgba(198,162,110,.28)!important;
  }
}

@media (max-width:760px){
  /* Weather remains a compact trip-level control in the simplified header. */
  #tripWorkspace .aveluneMobileWeather{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:7px!important;
    min-width:0!important;
    min-height:44px!important;
    max-width:142px!important;
    padding:8px 13px!important;
    border-radius:999px!important;
    border:1px solid rgba(198,162,110,.45)!important;
    background:rgba(255,255,255,.035)!important;
    color:inherit!important;
    font:inherit!important;
    white-space:nowrap!important;
    overflow:hidden!important;
  }
  #tripWorkspace .aveluneMobileWeather span{font-size:19px;line-height:1;flex:0 0 auto}
  #tripWorkspace .aveluneMobileWeather b{min-width:0;overflow:hidden;text-overflow:ellipsis;font-weight:800}

  #tripWorkspace > main.tripMainLayout{
    display:block!important;
    width:100%!important;
    height:auto!important;
    margin:0!important;
    padding:0!important;
    overflow:visible!important;
  }
  #tripWorkspace .tripLeftColumn{
    display:block!important;
    width:100%!important;
    height:auto!important;
    overflow:visible!important;
  }
  #tripWorkspace .tripContextCards{
    display:block!important;
    width:100%!important;
    margin:0!important;
    padding:0!important;
  }
  #tripWorkspace #heroNext{
    display:block!important;
    width:auto!important;
    max-width:none!important;
    margin:12px 12px 8px!important;
  }
  #tripWorkspace #heroWeather{display:none!important}

  /* Preserve the existing Map View behavior; the map stays collapsed until requested. */
  #tripWorkspace .mapPane{margin:0!important}
  #tripWorkspace .panel{
    width:100%!important;
    max-width:none!important;
    height:auto!important;
    max-height:none!important;
    margin:0!important;
    padding:0!important;
    overflow:visible!important;
  }
  #tripWorkspace .panel #content{
    width:100%!important;
    max-width:none!important;
    height:auto!important;
    max-height:none!important;
    margin:0!important;
    padding-top:0!important;
    padding-bottom:calc(122px + env(safe-area-inset-bottom,0px))!important;
    overflow:visible!important;
  }
  #tripWorkspace #content .plannerToolbar{
    position:sticky!important;
    top:68px!important;
    z-index:40!important;
    margin-top:0!important;
    margin-bottom:0!important;
    background:var(--ivory,#fffaf0)!important;
  }
  #tripWorkspace #content .planDay{
    margin-top:0!important;
    padding-top:0!important;
    overflow:visible!important;
  }
  #tripWorkspace #content .plannerToolbar + .planDay{margin-top:0!important;padding-top:0!important}
  #tripWorkspace #content .planDay>.dayHead{
    position:sticky!important;
    top:calc(68px + 124px)!important;
    z-index:39!important;
    margin-top:0!important;
    padding-top:10px!important;
    padding-bottom:9px!important;
    background:var(--ivory,#fffaf0)!important;
    border-bottom:1px solid rgba(198,162,110,.28)!important;
    box-shadow:0 8px 14px rgba(11,31,42,.035)!important;
  }
}

#tripWorkspace .planningStateBadge{
  border-color:rgba(203,162,85,.38)!important;
  color:var(--avelune-navy,#081a2f)!important;
  background:rgba(203,162,85,.12)!important;
}
#tripWorkspace .p34StateRow{display:flex;align-items:center;margin-bottom:5px}
#tripWorkspace .bookingRequirement{display:grid;gap:4px;padding:12px 14px;border:1px solid rgba(203,162,85,.32);border-radius:12px;background:rgba(203,162,85,.08)}
#tripWorkspace .bookingRequirement small{color:var(--muted,#64717c)}
