/* Preview-only home polish: calmer Apple-like spacing and material hierarchy. */
#ynp-phone .ynp-h2 .ynp-home-scroll.ynp-home-short{
  box-sizing:border-box!important;
  padding-top:clamp(18px,2.8vh,28px)!important;
  gap:clamp(28px,4.2vh,40px)!important;
  padding-bottom:calc(104px + env(safe-area-inset-bottom,0px))!important;
  scroll-padding-top:clamp(18px,2.8vh,28px)!important;
}

/* The home viewport has a fixed height. Keep its modules at their natural
   height so flex gap changes can never collapse the boarding pass again. */
#ynp-phone .ynp-h2 .ynp-home-scroll.ynp-home-short>.blk{
  flex:0 0 auto!important;
  min-height:0;
}

#ynp-phone .ynp-h2 .ynp-home-scroll.ynp-home-short>.feed{
  margin-top:0!important;
}

#ynp-phone .ynp-h2 .ticket{
  border-radius:26px!important;
  border:1px solid rgba(255,255,255,.055)!important;
  box-shadow:
    0 22px 52px -34px rgba(20,31,51,.72),
    0 10px 24px -18px rgba(38,57,88,.38)!important;
}

#ynp-phone .ynp-h2 .group{
  border:1px solid rgba(39,51,70,.035)!important;
  border-radius:22px!important;
  background:rgba(237,234,229,.86)!important;
}

#ynp-phone .ynp-h2 .row{border-radius:18px!important}

#ynp-phone .ynp-h2 .app .sq{
  border-radius:17px!important;
  border-color:rgba(45,57,75,.055)!important;
  box-shadow:0 10px 26px -21px rgba(35,50,73,.42)!important;
}

#ynp-phone .ynp-h2 .dock{
  bottom:14px!important;
  background:rgba(255,255,255,.86)!important;
  backdrop-filter:blur(24px) saturate(145%)!important;
  -webkit-backdrop-filter:blur(24px) saturate(145%)!important;
  box-shadow:
    0 16px 38px -28px rgba(37,53,78,.52),
    inset 0 1px 0 rgba(255,255,255,.72)!important;
}

@media (max-height:700px){
  #ynp-phone .ynp-h2 .ynp-home-scroll.ynp-home-short{
    padding-top:14px!important;
    gap:clamp(24px,3.8vh,32px)!important;
  }
}

@media (prefers-reduced-motion:reduce){
  #ynp-phone .ynp-h2 .ynp-home-scroll{scroll-behavior:auto!important}
}
