/* V3_15R8R9_NATIVE_INSET_AND_RENDERED_FORM_BOUNDARY */
/* VW_WATCH_TOGETHER_PRIVATE_CHAT_SINGLE_GEOMETRY_OWNER_V3_15R8R3
   R8: canonical CSS loads after all legacy PM/player layers and owns thread geometry. */
:root{
  --vw-r5r3p2-gap:4px;
  --vw-r5r3p2-toolbar-gap:4px;
  --vw-r5r3p2-toolbar-h:48px;
  --vw-r5r3p2-video-h:clamp(152px,43vw,172px);
  --vw-r5r3p2-toolbar-top:calc(var(--vw-r5r3p2-video-h) + var(--vw-r5r3p2-gap));
  --vw-r5r3p2-content-top:calc(var(--vw-r5r3p2-toolbar-top) + var(--vw-r5r3p2-toolbar-h) + var(--vw-r5r3p2-toolbar-gap));
  --vw-r5r3p2-ease:cubic-bezier(.2,.78,.2,1);
}
@media (max-width:980px){
  body.vw-pm-single-owner-ready.vw-private-messages-open.vw-private-thread-open:not(.vw-gif-tray-open){
    --vw-r5r3p2-video-h:clamp(152px,43vw,172px);
    overflow:hidden!important;
    overscroll-behavior:none!important;
  }
  /* V3.15R8R3: Android shell already captures the exact pre-keyboard
     #videoWrap height in --vw-android-stable-video-height. Keep that exact
     height for the complete IME session instead of shrinking to 108/104px. */
  body.vw-pm-single-owner-ready.vw-private-messages-open.vw-private-thread-open.vw-android-keyboard-open:not(.vw-gif-tray-open):not(.vw-premium-video-hidden),
  body.vw-pm-single-owner-ready.vw-private-messages-open.vw-private-thread-open.vw-android-ime-session:not(.vw-gif-tray-open):not(.vw-premium-video-hidden),
  body.vw-pm-single-owner-ready.vw-private-messages-open.vw-private-thread-open.vw-android-keyboard-tight:not(.vw-gif-tray-open):not(.vw-premium-video-hidden){
    --vw-r5r3p2-video-h:var(--vw-android-stable-video-height,clamp(152px,43vw,172px));
  }
  body.vw-pm-single-owner-ready.vw-private-messages-open.vw-private-thread-open.vw-premium-video-hidden:not(.vw-gif-tray-open){
    --vw-r5r3p2-toolbar-top:6px;
    --vw-r5r3p2-content-top:calc(6px + var(--vw-r5r3p2-toolbar-h) + var(--vw-r5r3p2-toolbar-gap));
  }

  body.vw-pm-single-owner-ready.vw-private-messages-open.vw-private-thread-open:not(.vw-gif-tray-open) .room-grid{
    position:relative!important;
  }
  body.vw-pm-single-owner-ready.vw-player-premium-ready.vw-private-messages-open.vw-private-thread-open:not(.vw-gif-tray-open):not(.vw-premium-video-hidden) .stage.card{
    box-sizing:border-box!important;
    position:absolute!important;
    left:0!important; right:0!important;
    top:var(--vw-private-vv-top,0px)!important;
    width:100%!important;
    height:var(--vw-r5r3p2-video-h)!important;
    min-height:var(--vw-r5r3p2-video-h)!important;
    max-height:var(--vw-r5r3p2-video-h)!important;
    margin:0!important; padding:0!important;
    overflow:hidden!important;
    z-index:2147482700!important;
    transform:translate3d(0,0,0)!important;
    transition:opacity .11s ease,transform .13s var(--vw-r5r3p2-ease),box-shadow .13s ease!important;
    animation:none!important;
    contain:layout paint!important;
  }
  body.vw-pm-single-owner-ready.vw-private-messages-open.vw-private-thread-open .stage.card>#videoWrap{
    position:relative!important;
    width:100%!important; height:100%!important;
    min-height:0!important; max-height:100%!important;
    margin:0!important; overflow:hidden!important;
    transform:translateZ(0)!important;
    contain:paint!important;
  }
  body.vw-pm-single-owner-ready.vw-private-messages-open.vw-private-thread-open .stage.card #vwPlayerPremiumRail{
    position:absolute!important; z-index:20!important;
  }
  body.vw-pm-single-owner-ready.vw-private-messages-open.vw-private-thread-open .stage.card>.controls.vw-premium-control-drawer{
    position:fixed!important;
  }

  body.vw-pm-single-owner-ready.vw-private-messages-open.vw-private-thread-open:not(.vw-gif-tray-open) .private-messages-surface{
    box-sizing:border-box!important;
    position:fixed!important;
    left:0!important; right:0!important;
    top:var(--vw-private-vv-top,0px)!important;
    bottom:auto!important;
    width:100%!important;
    height:var(--vw-private-surface-height,calc(var(--vw-private-vv-height,100dvh) - 74px))!important;
    max-height:none!important;
    margin:0!important; padding:0!important;
    overflow:hidden!important;
    overscroll-behavior:none!important;
    z-index:2147482600!important;
    transform:none!important;
    transition:opacity .10s ease!important;
    animation:none!important;
    contain:layout paint!important;
  }

  body.vw-pm-single-owner-ready.vw-private-messages-open.vw-private-thread-open:not(.vw-gif-tray-open) .private-thread-head{
    box-sizing:border-box!important;
    position:absolute!important;
    left:6px!important; right:auto!important;
    top:var(--vw-r5r3p2-toolbar-top)!important;
    width:calc(100% - 12px)!important;
    height:48px!important; min-height:48px!important; max-height:48px!important;
    margin:0!important; padding:5px 7px!important;
    display:grid!important;
    grid-template-columns:38px minmax(0,1fr)!important;
    align-items:center!important;
    gap:6px!important;
    z-index:40!important;
    border:1px solid rgba(255,255,255,.075)!important;
    border-radius:12px!important;
    background:rgba(8,13,21,.985)!important;
    box-shadow:0 6px 16px rgba(0,0,0,.18)!important;
    overflow:hidden!important;
    pointer-events:auto!important;
    opacity:1!important;
    transform:translate3d(0,0,0)!important;
    transition:opacity .10s ease,transform .12s var(--vw-r5r3p2-ease),border-color .10s ease,background-color .10s ease!important;
    animation:none!important;
    contain:layout paint!important;
  }
  body.vw-pm-single-owner-ready.vw-private-messages-open.vw-private-thread-open .private-thread-avatar{display:none!important}
  body.vw-pm-single-owner-ready.vw-private-messages-open.vw-private-thread-open .private-thread-head .private-surface-back{
    box-sizing:border-box!important;
    grid-column:1!important; grid-row:1!important;
    width:38px!important; min-width:38px!important; max-width:38px!important;
    height:38px!important; min-height:38px!important; max-height:38px!important;
    margin:0!important; padding:0!important; border-radius:11px!important;
  }
  body.vw-pm-single-owner-ready.vw-private-messages-open.vw-private-thread-open .private-thread-head .private-thread-title{
    box-sizing:border-box!important;
    grid-column:2!important; grid-row:1!important;
    min-width:0!important;
    padding-right:126px!important;
    overflow:hidden!important;
  }
  body.vw-pm-single-owner-ready.vw-private-messages-open.vw-private-thread-open .private-thread-title>b,
  body.vw-pm-single-owner-ready.vw-private-messages-open.vw-private-thread-open .private-thread-title>small{
    display:block!important;
    max-width:100%!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  body.vw-pm-single-owner-ready.vw-private-messages-open.vw-private-thread-open .private-thread-head .vw-premium-pm-actions{
    box-sizing:border-box!important;
    position:absolute!important;
    right:7px!important; top:50%!important;
    z-index:3!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:4px!important;
    margin:0!important;
    transform:translate3d(0,-50%,0)!important;
    white-space:nowrap!important;
    overflow:visible!important;
  }
  body.vw-pm-single-owner-ready.vw-private-messages-open.vw-private-thread-open .vw-premium-pm-actions .vw-premium-pm-icon,
  body.vw-pm-single-owner-ready.vw-private-messages-open.vw-private-thread-open .vw-premium-pm-actions .private-thread-close{
    box-sizing:border-box!important;
    position:relative!important;
    height:34px!important; min-height:34px!important; max-height:34px!important;
    margin:0!important; border-radius:10px!important;
    transform:translateZ(0)!important;
    transition:transform .09s ease,opacity .09s ease,background-color .09s ease,border-color .09s ease!important;
  }
  body.vw-pm-single-owner-ready.vw-private-messages-open.vw-private-thread-open #vwPremiumPmVideoBtn{
    display:inline-grid!important;
    place-items:center!important;
    opacity:.62!important;
  }
  body.vw-pm-single-owner-ready.vw-private-messages-open.vw-private-thread-open #vwPremiumPmVideoBtn:hover,
  body.vw-pm-single-owner-ready.vw-private-messages-open.vw-private-thread-open #vwPremiumPmVideoBtn:focus-visible,
  body.vw-pm-single-owner-ready.vw-private-messages-open.vw-private-thread-open #vwPremiumPmVideoBtn:active,
  body.vw-pm-single-owner-ready.vw-private-messages-open.vw-private-thread-open.vw-premium-video-hidden #vwPremiumPmVideoBtn{opacity:1!important}

  body.vw-pm-single-owner-ready.vw-private-messages-open.vw-private-thread-open #vwR6R2HideVideoChip,
  body.vw-pm-single-owner-ready.vw-private-messages-open.vw-private-thread-open #vwR6R2HeaderShowVideo,
  body.vw-pm-single-owner-ready.vw-private-messages-open.vw-private-thread-open #vwPremiumPmShowVideoChip{
    display:none!important; visibility:hidden!important; pointer-events:none!important;
  }

  body.vw-pm-single-owner-ready.vw-private-messages-open.vw-private-thread-open:not(.vw-gif-tray-open) .private-thread-messages{
    box-sizing:border-box!important;
    position:absolute!important;
    left:0!important; right:0!important;
    top:var(--vw-r5r3p2-content-top)!important;
    bottom:0!important;
    width:100%!important; height:auto!important;
    min-height:0!important; max-height:none!important;
    margin:0!important;
    padding:8px 8px 12px!important;
    gap:7px!important;
    overflow-x:hidden!important; overflow-y:auto!important;
    overscroll-behavior-y:contain!important;
    -webkit-overflow-scrolling:touch!important;
    touch-action:pan-y!important;
    scroll-behavior:auto!important;
    scroll-padding-top:8px!important; scroll-padding-bottom:12px!important;
    scrollbar-width:none!important;
    overflow-anchor:auto!important;
    z-index:1!important;
    transform:translateZ(0)!important;
    contain:layout paint style!important;
  }

  /* While IME geometry is changing, browser scroll anchoring must not keep an
     older bubble pinned. R8R3 owns one explicit final tail settle instead. */
  body.vw-pm-single-owner-ready.vw-private-messages-open.vw-private-thread-open.vw-android-ime-session:not(.vw-gif-tray-open) .private-thread-messages,
  body.vw-pm-single-owner-ready.vw-private-messages-open.vw-private-thread-open.vw-android-keyboard-open:not(.vw-gif-tray-open) .private-thread-messages{
    overflow-anchor:none!important;
  }

  body.vw-pm-single-owner-ready.vw-private-messages-open.vw-private-thread-open .private-thread-messages::-webkit-scrollbar{display:none!important}

  body.vw-pm-single-owner-ready.vw-r6r2-focus-ready.vw-r6r2-focus-mode.vw-private-messages-open.vw-private-thread-open .private-thread-head{
    display:grid!important; opacity:1!important; pointer-events:auto!important;
  }
  body.vw-pm-single-owner-ready.vw-private-messages-open.vw-private-thread-open #chatForm{
    z-index:2147483500!important;
    transition:opacity .09s ease,transform .09s ease,border-color .09s ease,background-color .09s ease!important;
  }
}
@media (max-width:380px){
  body.vw-pm-single-owner-ready.vw-private-messages-open.vw-private-thread-open .private-thread-head .private-thread-title{padding-right:116px!important}
  body.vw-pm-single-owner-ready.vw-private-messages-open.vw-private-thread-open .private-thread-head .vw-premium-pm-actions{right:5px!important;gap:3px!important}
  body.vw-pm-single-owner-ready.vw-private-messages-open.vw-private-thread-open .private-thread-messages{padding-left:6px!important;padding-right:6px!important}
}
@media (prefers-reduced-motion:reduce){
  body.vw-pm-single-owner-ready .stage.card,
  body.vw-pm-single-owner-ready .private-messages-surface,
  body.vw-pm-single-owner-ready .private-thread-head,
  body.vw-pm-single-owner-ready #chatForm,
  body.vw-pm-single-owner-ready #chatForm>button{
    transition:none!important; animation:none!important;
  }
}


/* V3.15R8 FINAL AUTHORITY SEAL
   Hidden-video gets an equally-specific surface rule so the old player-clean
   layer cannot move the PM surface. Legacy floating chips stay retired. */
@media (max-width:980px){
  body.vw-pm-single-owner-ready.vw-private-messages-open.vw-private-thread-open.vw-premium-video-hidden:not(.vw-gif-tray-open) .private-messages-surface{
    box-sizing:border-box!important;
    position:fixed!important;
    left:0!important;
    right:0!important;
    top:var(--vw-private-vv-top,0px)!important;
    bottom:auto!important;
    width:100%!important;
    height:var(--vw-private-surface-height,calc(var(--vw-private-vv-height,100dvh) - 74px))!important;
    max-height:none!important;
    margin:0!important;
    padding:0!important;
    overflow:hidden!important;
    transform:none!important;
    transition:opacity .10s ease!important;
  }

  body.vw-pm-single-owner-ready.vw-r6r2-focus-ready.vw-r6r2-focus-mode.vw-private-messages-open.vw-private-thread-open #vwR6R2HideVideoChip,
  body.vw-pm-single-owner-ready.vw-r6r2-focus-ready.vw-r6r2-focus-mode.vw-private-messages-open.vw-private-thread-open #vwR6R2HeaderShowVideo,
  body.vw-pm-single-owner-ready.vw-private-messages-open.vw-private-thread-open #vwPremiumPmShowVideoChip{
    display:none!important;
    visibility:hidden!important;
    pointer-events:none!important;
  }
}


/* V3.15R8R5 — COMPOSER-FIRST FINAL CONTRACT */
@media (max-width:980px){
  body.vw-pm-single-owner-ready.vw-private-messages-open.vw-private-thread-open.vw-private-composer-focus-lock:not(.vw-gif-tray-open) .private-messages-surface{
    top:var(--vw-private-vv-top,0px)!important;
    height:max(
      0px,
      calc(
        var(--vw-private-rendered-composer-top,var(--vw-private-composer-top,100dvh))
        - var(--vw-private-vv-top,0px)
        - 8px
      )
    )!important;
    min-height:0!important;
    max-height:none!important;
    bottom:auto!important;
    overflow:hidden!important;
  }

  body.vw-pm-single-owner-ready.vw-private-messages-open.vw-private-thread-open:not(.vw-gif-tray-open) .private-thread-head{
    top:var(--vw-r5r3p2-toolbar-top)!important;
    height:48px!important;
    min-height:48px!important;
    max-height:48px!important;
    padding:5px 7px!important;
  }

  body.vw-pm-single-owner-ready.vw-private-messages-open.vw-private-thread-open:not(.vw-gif-tray-open) .private-thread-messages{
    top:var(--vw-r5r3p2-content-top)!important;
    bottom:0!important;
    min-height:0!important;
    max-height:none!important;
    padding-bottom:8px!important;
    scroll-padding-bottom:8px!important;
    overflow-y:auto!important;
    overscroll-behavior-y:contain!important;
    touch-action:pan-y!important;
  }

  body.vw-pm-single-owner-ready.vw-private-messages-open.vw-private-thread-open.vw-private-composer-focus-lock:not(.vw-gif-tray-open) .private-thread-messages{
    overflow-anchor:none!important;
  }
}


/* Native inset diagnostic bridge. CSS env cannot be read directly by JS, so
   expose it through a custom property for inspection. */
@media (max-width:980px){
  body.vw-private-thread-open{
    --vw-r8r9-native-inset:env(keyboard-inset-height, 0px);
  }
}


/* ==========================================================================
 * V3.15R8R9G1 — PRIVATE GIF SPLIT VIEW
 *
 * R8/R9 remains the single player/toolbar/message geometry owner.
 * GIF mode no longer replaces the private conversation or shrinks the player.
 * ========================================================================== */
@media (max-width:980px){
  body.vw-pm-single-owner-ready.vw-private-messages-open.vw-private-thread-open.vw-gif-tray-open{
    --vw-r5r3p2-video-h:clamp(152px,43vw,172px);
    overflow:hidden!important;
    overscroll-behavior:none!important;
  }

  body.vw-pm-single-owner-ready.vw-private-messages-open.vw-private-thread-open.vw-gif-tray-open.vw-premium-video-hidden{
    --vw-r5r3p2-toolbar-top:6px;
    --vw-r5r3p2-content-top:calc(6px + var(--vw-r5r3p2-toolbar-h) + var(--vw-r5r3p2-toolbar-gap));
  }

  body.vw-pm-single-owner-ready.vw-private-messages-open.vw-private-thread-open.vw-gif-tray-open .room-grid{
    position:relative!important;
  }

  body.vw-pm-single-owner-ready.vw-player-premium-ready.vw-private-messages-open.vw-private-thread-open.vw-gif-tray-open:not(.vw-premium-video-hidden) .stage.card{
    box-sizing:border-box!important;
    position:absolute!important;
    left:0!important;
    right:0!important;
    top:var(--vw-private-vv-top,0px)!important;
    width:100%!important;
    height:var(--vw-r5r3p2-video-h)!important;
    min-height:var(--vw-r5r3p2-video-h)!important;
    max-height:var(--vw-r5r3p2-video-h)!important;
    margin:0!important;
    padding:0!important;
    overflow:hidden!important;
    z-index:2147482700!important;
    transform:translate3d(0,0,0)!important;
    transition:opacity .11s ease,transform .13s var(--vw-r5r3p2-ease),box-shadow .13s ease!important;
    animation:none!important;
    contain:layout paint!important;
  }

  /* Override the old private-messages.css "display:none" GIF mode. */
  body.vw-pm-single-owner-ready.vw-private-messages-open.vw-private-thread-open.vw-gif-tray-open .private-messages-surface{
    box-sizing:border-box!important;
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    pointer-events:auto!important;
    position:fixed!important;
    left:0!important;
    right:0!important;
    top:var(--vw-private-vv-top,0px)!important;
    bottom:auto!important;
    width:100%!important;
    height:var(--vw-private-surface-height,calc(var(--vw-private-vv-height,100dvh) - 74px))!important;
    min-height:0!important;
    max-height:none!important;
    margin:0!important;
    padding:0!important;
    overflow:hidden!important;
    z-index:2147482600!important;
    transform:none!important;
    contain:layout paint!important;
  }

  body.vw-pm-single-owner-ready.vw-private-messages-open.vw-private-thread-open.vw-gif-tray-open .private-thread-head{
    box-sizing:border-box!important;
    position:absolute!important;
    left:6px!important;
    right:auto!important;
    top:var(--vw-r5r3p2-toolbar-top)!important;
    width:calc(100% - 12px)!important;
    height:48px!important;
    min-height:48px!important;
    max-height:48px!important;
    margin:0!important;
    padding:5px 7px!important;
    display:grid!important;
    grid-template-columns:38px minmax(0,1fr)!important;
    align-items:center!important;
    gap:6px!important;
    z-index:40!important;
    opacity:1!important;
    pointer-events:auto!important;
  }

  body.vw-pm-single-owner-ready.vw-private-messages-open.vw-private-thread-open.vw-gif-tray-open .private-thread-messages{
    box-sizing:border-box!important;
    position:absolute!important;
    display:flex!important;
    left:0!important;
    right:0!important;
    top:var(--vw-r5r3p2-content-top)!important;
    bottom:var(--vw-r5-gif-message-reserve,228px)!important;
    width:100%!important;
    height:auto!important;
    min-height:var(--vw-r5-gif-message-min,92px)!important;
    max-height:none!important;
    margin:0!important;
    padding:7px 8px 8px!important;
    gap:7px!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    overscroll-behavior-y:contain!important;
    -webkit-overflow-scrolling:touch!important;
    touch-action:pan-y!important;
    scroll-padding-bottom:10px!important;
    scrollbar-width:none!important;
    z-index:1!important;
  }

  /* The GIF browser is a compact bottom panel above the canonical composer. */
  body.vw-pm-single-owner-ready.vw-private-messages-open.vw-private-thread-open.vw-gif-tray-open #gifTray{
    box-sizing:border-box!important;
    position:fixed!important;
    display:flex!important;
    left:6px!important;
    right:6px!important;
    top:var(--vw-r5-gif-top)!important;
    bottom:auto!important;
    width:auto!important;
    height:var(--vw-r5-gif-height,236px)!important;
    min-height:0!important;
    max-height:286px!important;
    margin:0!important;
    padding:3px 4px 4px!important;
    overflow:hidden!important;
    z-index:2147482650!important;
    border-radius:14px!important;
    pointer-events:auto!important;
    contain:layout paint!important;
  }

  body.vw-pm-single-owner-ready.vw-private-messages-open.vw-private-thread-open.vw-gif-tray-open #chatForm{
    display:grid!important;
    z-index:2147483500!important;
  }
}

@media (max-width:380px){
  body.vw-pm-single-owner-ready.vw-private-messages-open.vw-private-thread-open.vw-gif-tray-open #gifTray{
    left:4px!important;
    right:4px!important;
    padding-left:3px!important;
    padding-right:3px!important;
  }
}
