    /* Gate sheet (reuses #guest-lock-overlay for store-mode hooks). */
    .guest-lock-sheet.gv-gate {
      display: block;
      width: min(392px, 100%);
      padding: 0;
      border: 1px solid rgba(var(--amber-rgb), 0.24);
      border-radius: 4px;
      background: linear-gradient(180deg, #131920, #0a0e13);
      box-shadow: 0 24px 64px rgba(0, 0, 0, 0.66);
      text-align: left;
    }

    .gv-gate__head {
      position: relative;
      padding: 15px 18px 13px;
      border-bottom: 1px solid rgba(255, 255, 255, 0.055);
    }

    .gv-gate__head::before {
      position: absolute;
      top: 0;
      right: 0;
      left: 0;
      height: 2px;
      background: linear-gradient(90deg, var(--amber-hot), var(--amber) 42%, transparent 92%);
      content: "";
    }

    .gv-gate__eyebrow {
      display: flex;
      align-items: center;
      gap: 7px;
      margin: 0 0 6px;
      color: rgba(var(--amber-rgb), 0.9);
      font-family: Rajdhani, "Arial Narrow", sans-serif;
      font-size: 10px;
      font-weight: 700;
      letter-spacing: 0.14em;
      text-transform: uppercase;
    }

    .gv-gate__eyebrow > i { font-size: 10px; }

    .gv-gate__eyebrow > svg {
      width: 11px;
      height: 11px;
    }

    .guest-lock-sheet.gv-gate h3 {
      margin: 0 0 6px;
      font-family: Rajdhani, "Arial Narrow", sans-serif;
      font-size: 21px;
      font-weight: 700;
      letter-spacing: 0.045em;
      line-height: 1.1;
      text-transform: uppercase;
    }

    .guest-lock-sheet.gv-gate p.gv-gate__line {
      margin: 0;
      color: #8b959f;
      font-size: 12.5px;
      line-height: 1.5;
    }

    .guest-lock-sheet.gv-gate p.gv-gate__line[hidden],
    .gv-gate__bullets[hidden] {
      display: none;
    }

    .gv-gate__bullets {
      margin: 8px 0 0;
      padding: 0;
      list-style: none;
    }

    .gv-gate__bullets li {
      position: relative;
      padding: 2px 0 2px 12px;
      color: #8b959f;
      font-size: 12.5px;
      line-height: 1.45;
    }

    .gv-gate__bullets li + li {
      margin-top: 1px;
    }

    .gv-gate__bullets li::before {
      position: absolute;
      top: 0.55em;
      left: 0;
      width: 5px;
      height: 5px;
      border-radius: 1px;
      background: rgba(var(--amber-rgb), 0.55);
      content: "";
    }

    .gv-gate__foot {
      display: grid;
      gap: 7px;
      padding: 11px 13px 13px;
      border-top: 1px solid rgba(255, 255, 255, 0.055);
    }

    /* Wrong-account identity chip — same left-rule as the guest leaderboard "you" seat. */
    .wa-gate__who {
      display: grid;
      gap: 2px;
      margin: 10px 0 0;
      padding: 9px 12px 9px 10px;
      border-left: 2px solid rgba(var(--amber-rgb), 0.55);
      background: linear-gradient(90deg, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0.008) 78%);
    }

    .wa-gate__who span {
      color: #7c8792;
      font-size: 10px;
      font-weight: 700;
      letter-spacing: 0.14em;
      text-transform: uppercase;
    }

    .wa-gate__who strong {
      overflow: hidden;
      color: #e6ebf0;
      font-family: Rajdhani, "Arial Narrow", sans-serif;
      font-size: 15px;
      font-weight: 800;
      letter-spacing: 0.06em;
      text-overflow: ellipsis;
      text-transform: uppercase;
      white-space: nowrap;
    }

    /* LEADERBOARDS — guest seat under Top 10 (forked from lobby_guest). */
    .gv-lb-you {
      display: none;
      grid-template-columns: 28px minmax(0, 1fr) auto;
      align-items: center;
      gap: 10px;
      margin: 8px 0 0;
      padding: 9px 12px 9px 10px;
      border-left: 2px solid rgba(var(--amber-rgb), 0.55);
      background: linear-gradient(90deg, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0.008) 78%);
    }

    [data-lobby-account="guest"] .gv-lb-you { display: grid; }

    /* Inventory Cosmetics: retire the owned grid + floor bar. Crates stay in
       the top slot (DOM order: crate → preview → grid). Preview flex-grows
       under the crate — not above it. Boosts tab untouched.
       .gv-preview / .gv-hold chrome lives in friends-squad.css. */
    [data-lobby-account="guest"] #inv-grid,
    [data-lobby-account="guest"] #inv-actions {
      display: none;
    }

    /* Killstreaks RHS: Create account sits in the Care Package name cell —
       same .next-unlock chrome, not a wide bar above the rail. */
    [data-lobby-account="guest"] .next-unlock .gv-hold[data-gv-gate="killstreaks"] {
      flex: 0 1 auto;
      min-width: 0;
      min-height: 22px;
      max-width: 100%;
      padding: 0 8px;
      overflow: hidden;
      font-size: 11px;
      text-overflow: ellipsis;
    }

    /* Slot 0 uses the same locked treatment as the rest of the rail. */
    [data-lobby-account="guest"] .loadout__rail #lo-slot.is-locked {
      pointer-events: none;
      cursor: default;
    }

    [data-lobby-account="guest"] .loadout__rail #lo-slot .ks-hex__pulse {
      display: none;
    }

    [data-lobby-account="guest"] .loadout__rail #lo-pick {
      display: none !important;
    }

    /* Killstreaks center aperture — guest ladder: all sockets locked, no CTA. */
    [data-lobby-account="guest"] .killstreaks-aperture #ks-slot-0.is-locked {
      pointer-events: none;
      cursor: default;
    }

    [data-lobby-account="guest"] .killstreaks-aperture #ks-slot-0 .ks-hex__pulse {
      display: none;
    }

    [data-lobby-account="guest"] .killstreaks-aperture .gv-hold,
    [data-lobby-account="guest"] .killstreaks-aperture [data-gv-gate] {
      display: none !important;
    }

    /* Aperture progress dual markup — beat .ks-panel .rank-level display rules. */
    [data-lobby-account="guest"] .killstreaks-aperture [data-gv-when="account"] {
      display: none !important;
    }
    body:not([data-lobby-account="guest"]) .killstreaks-aperture [data-gv-when="guest"] {
      display: none !important;
    }

    /* Rank column = LV1 insignia (same asset family as lb-row__insignia), not a fake "#—". */
    .gv-lb-you__rank {
      display: grid;
      place-items: center;
      width: 28px;
      height: 28px;
    }

    .gv-lb-you__rank img {
      display: block;
      width: 28px;
      height: 28px;
      object-fit: contain;
      filter: drop-shadow(0 2px 3px rgba(0, 0, 0, 0.45));
    }

    .gv-lb-you__copy {
      display: grid;
      gap: 2px;
      min-width: 0;
    }

    .gv-lb-you__copy strong {
      overflow: hidden;
      color: #e6ebf0;
      font-family: Rajdhani, "Arial Narrow", sans-serif;
      font-size: 13px;
      font-weight: 700;
      letter-spacing: 0.05em;
      text-overflow: ellipsis;
      white-space: nowrap;
    }

    .gv-lb-you__copy span {
      color: #7c8792;
      font-size: 10px;
      letter-spacing: 0.03em;
    }

    @media (prefers-reduced-motion: reduce) {
      .slant-nav__surface,
      .slant-nav__surface::before,
      .slant-nav__surface::after,
      .slant-nav__label,
      .slant-nav__item::after {
        transition-duration: 0.01ms;
      }

      *,
      *::before,
      *::after {
        scroll-behavior: auto !important;
        transition-duration: 0.01ms !important;
      }
    }

