/* OneScene UX9 CANDIDATE — CSS only, scoped to desktop Today page.
   Test in a browser before adoption. No catalog overflow masking changes. */
@media (min-width: 1100px) and (min-height: 820px) {
  html body .pv3-root[data-r18-viewport-dashboard="today"]
  .ss-today-page[data-today-ui="canonical-v2418"][data-today-freeze="v2422"]
  .ss-today-stage {
    grid-template-rows:minmax(0,.98fr) minmax(0,.89fr) minmax(0,.91fr)!important;
    gap:10px!important;
    min-height:0!important;
    height:100%!important;
  }
  html body .pv3-root[data-r18-viewport-dashboard="today"]
  .ss-today-page[data-today-freeze="v2422"] .ss-today-hero {
    min-height:0!important;
    height:100%!important;
    max-height:none!important;
  }
  html body .pv3-root[data-r18-viewport-dashboard="today"]
  .ss-today-page[data-today-freeze="v2422"] .ss-today-recommendations,
  html body .pv3-root[data-r18-viewport-dashboard="today"]
  .ss-today-page[data-today-freeze="v2422"] .ss-today-bottom {
    min-height:0!important;
    height:100%!important;
  }
  html body .pv3-root[data-r18-viewport-dashboard="today"]
  .ss-today-page[data-today-freeze="v2422"] .ss-today-recommendations {
    grid-template-rows:34px minmax(0,1fr)!important;
  }
  html body .pv3-root.pv3-root[data-r18-standard-shell="today-authority-v1"]
  [data-today-freeze="v2422"].ss-today-page {
    padding-bottom:0!important;
  }
  html body .pv3-root.pv3-root[data-r18-standard-shell="today-authority-v1"]
  >.ss-today-shell-main > .ss-today-content {
    padding-bottom:16px!important;
    box-sizing:border-box!important;
  }
}

/* Defeat the generic .ss-today-scene-media positioning; the media cannot
   enter document flow or steal the hero's row height. */
@media (min-width:980px) {
  html body .pv3-root[data-r18-viewport-dashboard="today"]
  .ss-today-page[data-today-ui="canonical-v2418"][data-today-freeze="v2422"]
  .ss-today-hero > .ss-today-hero-media {
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    overflow:hidden!important;
    z-index:0!important;
  }
  html body .pv3-root[data-r18-viewport-dashboard="today"]
  .ss-today-page[data-today-ui="canonical-v2418"][data-today-freeze="v2422"]
  .ss-today-hero > .ss-today-hero-copy {
    position:relative!important;
    z-index:5!important;
    width:min(54%,640px)!important;
    height:100%!important;
    visibility:visible!important;
    opacity:1!important;
  }
  html body .pv3-root[data-r18-viewport-dashboard="today"]
  .ss-today-page[data-today-ui="canonical-v2418"][data-today-freeze="v2422"]
  .ss-today-hero .ss-today-hero-visual > .pv3-visual-card-foreground {
    position:absolute!important;
    left:auto!important;
    top:auto!important;
    right:1%!important;
    bottom:0!important;
    width:37%!important;
    max-width:37%!important;
    height:88%!important;
    max-height:88%!important;
    object-fit:contain!important;
    object-position:right bottom!important;
    transform:none!important;
    opacity:.98!important;
  }
  html body .pv3-root[data-r18-viewport-dashboard="today"]
  .ss-today-page[data-today-ui="canonical-v2418"][data-today-freeze="v2422"]
  .ss-today-hero .ss-today-hero-visual > .pv3-visual-card-foreground[data-r18-actor-frame="full"] {
    height:108%!important;
    max-height:108%!important;
  }
  html body .pv3-root[data-r18-viewport-dashboard="today"]
  .ss-today-page[data-today-ui="canonical-v2418"][data-today-freeze="v2422"]
  .ss-today-hero .ss-today-hero-visual > .pv3-visual-card-foreground[data-r18-actor-frame="chest"] {
    height:82%!important;
    max-height:82%!important;
  }
}
