/* ============================================================================
   DICE B3 · Buyer post-login — CATALOGUE + FILTER RAIL
   FLAT REFERENCE STYLESHEET. Matches the shipped OFF-7 look (D1/D2 tokens,
   navy header, bc-card grid). Extends the buyer-catalogue reskin with the full
   ~11-filter rail. Self-contained: every token resolved in-file; full
   responsive layer at the bottom. Pair with catalogue.html.

   TWO STATES on the root, both from ONE markup — no fork:
     <div class="cat cat--verified">  full 11 filters (verified buyer)
     <div class="cat cat--anon">      limited facets; the rest locked behind sign-in
   The build sets the root class from auth/verification state.
   ========================================================================== */

/* ---- TOKENS (mirror of tokens/*.css, 2026.06.13 — same as pillar-landing) -- */
:root {
  --navy: #071E32;
  --ink: #0B1B2B;
  --text: #3D4754;
  --muted: #595959;
  --accent: #0B599C;
  --accent-strong: #094B82;
  --bg: #FFFFFF;
  --bg-subtle: #F8F8F8;
  --bg-muted: #EEF1F4;
  --border: #E2E6EA;
  --border-strong: #CBD2D9;
  --surface-page: #FFFFFF;
  --surface-subtle: #F8F8F8;
  --text-on-dark-muted: #B7C2CE;
  --focus-ring: rgba(31, 128, 190, 0.5);

  --pillar-entertainment-fill: #ECE3F7; --pillar-entertainment-ink: #4A148C; --pillar-entertainment-base: #7B2FBE;
  --pillar-sports-fill: #D7F0EC;        --pillar-sports-ink: #00504A;        --pillar-sports-base: #0C7C6F;
  --pillar-channels-fill: #FBEFCC;      --pillar-channels-ink: #6B4A00;      --pillar-channels-base: #C08A12;
  --pillar-solutions-fill: #DEEAFB;     --pillar-solutions-ink: #0D3C8B;     --pillar-solutions-base: #1E5FC4;

  --font: "Open Sans", -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  --radius-sm: 4px;
  --radius: 6px;
  --radius-lg: 10px;
  --radius-pill: 999px;
  --shadow-xs: 0 1px 2px rgba(7,30,50,0.06);
  --shadow-sm: 0 1px 3px rgba(7,30,50,0.08), 0 1px 2px rgba(7,30,50,0.04);
  --shadow-md: 0 6px 18px rgba(7,30,50,0.10);
  --shadow-card-hover: 0 12px 32px rgba(7,30,50,0.16);
  --container: 1320px;
  --rail-w: 288px;
  --ease-out: cubic-bezier(0.22, 1, 0.36, 1);
  --ease-standard: cubic-bezier(0.4, 0, 0.2, 1);
  --dur-fast: 0.15s;
  --dur-base: 0.25s;
}

*, *::before, *::after { box-sizing: border-box; }
.cat { margin: 0; font-family: var(--font); color: var(--text); background: var(--surface-page); min-height: 100vh; -webkit-font-smoothing: antialiased; }
.cat a { text-decoration: none; color: inherit; }
.cat img { display: block; }
.cat button { font-family: var(--font); cursor: pointer; }
.cat ::selection { background: var(--pillar-sports-fill); color: var(--pillar-sports-ink); }

/* ============================================================================
   HEADER / NAV  (shipped OFF-7 pattern, post-login variant)
   ========================================================================== */
.cat-header { position: sticky; top: 0; z-index: 40; background: rgba(7,30,50,0.94); backdrop-filter: blur(10px); border-bottom: 1px solid rgba(255,255,255,0.08); }
.cat-header__inner { max-width: var(--container); margin: 0 auto; padding: 14px 32px; display: flex; align-items: center; gap: 32px; }
.cat-logo { flex: none; display: inline-flex; align-items: center; }
.cat-logo img { height: 22px; }
.cat-nav { display: flex; align-items: center; gap: 26px; flex: 1; }
.cat-nav__link { font-size: 14.5px; font-weight: 600; color: rgba(255,255,255,0.62); transition: color var(--dur-fast) var(--ease-standard); }
.cat-nav__link:hover { color: #fff; }
.cat-nav__link--active { font-weight: 700; color: #fff; padding-bottom: 2px; border-bottom: 2px solid var(--pillar-sports-base); }
.cat-header__end { display: flex; align-items: center; gap: 14px; flex: none; }

/* button atoms (shipped) */
.cat-btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; font-family: var(--font); font-weight: 600; white-space: nowrap; border-radius: var(--radius); cursor: pointer; transition: background var(--dur-fast) var(--ease-standard), color var(--dur-fast) var(--ease-standard), border-color var(--dur-fast) var(--ease-standard); }
.cat-btn--sm { height: 38px; padding: 0 16px; font-size: 14px; }
.cat-btn--md { height: 42px; padding: 0 18px; font-size: 14.5px; }
.cat-btn--primary { background: var(--accent); color: #fff; border: 1px solid var(--accent); }
.cat-btn--primary:hover { background: var(--accent-strong); border-color: var(--accent-strong); }
.cat-btn--white { background: #fff; color: var(--navy); border: 1px solid #fff; }
.cat-btn--white:hover { background: #EAF1F8; }
.cat-btn--outline-light { background: transparent; color: #fff; border: 1px solid rgba(255,255,255,0.28); }
.cat-btn--outline-light:hover { background: rgba(255,255,255,0.08); }
.cat-btn--ghost { background: #fff; color: var(--accent); border: 1px solid var(--border-strong); }
.cat-btn--ghost:hover { border-color: var(--accent); background: var(--bg-subtle); }

.cat-avatar { width: 36px; height: 36px; border-radius: var(--radius-pill); background: var(--pillar-sports-base); color: #fff; display: inline-flex; align-items: center; justify-content: center; font-size: 13px; font-weight: 700; flex: none; }
.cat-user { font-size: 14px; color: rgba(255,255,255,0.62); }

/* show account cluster only when verified; Request access / Sign in only when anon */
.cat-header__verified, .cat-header__anon { display: none; align-items: center; gap: 14px; }
.cat--verified .cat-header__verified { display: flex; }
.cat--anon .cat-header__anon { display: flex; }

/* ============================================================================
   PAGE HEAD — title, result count, sort
   ========================================================================== */
.cat-head { max-width: var(--container); margin: 0 auto; padding: 30px 32px 22px; display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 18px; }
.cat-head__crumb { font-size: 12.5px; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; color: var(--pillar-sports-base); margin-bottom: 9px; }
.cat-head h1 { font-size: 30px; font-weight: 800; letter-spacing: -0.01em; color: var(--ink); margin: 0; }
.cat-head p { font-size: 14.5px; color: var(--muted); margin: 7px 0 0; }
.cat-head__sort { display: flex; align-items: center; gap: 10px; }
.cat-head__sort label { font-size: 13px; font-weight: 600; color: var(--muted); }

/* select (shipped form language) */
.cat-select { height: 40px; min-width: 180px; font-family: var(--font); font-size: 14px; font-weight: 600; color: var(--ink); background: var(--bg); border: 1px solid var(--border-strong); border-radius: var(--radius); padding: 0 36px 0 12px; appearance: none; background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'><path d='M1 1l5 5 5-5' fill='none' stroke='%23595959' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/></svg>"); background-repeat: no-repeat; background-position: right 13px center; transition: border-color var(--dur-fast) var(--ease-standard), box-shadow var(--dur-fast) var(--ease-standard); }
.cat-select:focus { outline: none; border-color: var(--accent); box-shadow: 0 0 0 3px var(--focus-ring); }

/* ============================================================================
   BODY LAYOUT — rail + results
   ========================================================================== */
.cat-body { max-width: var(--container); margin: 0 auto; padding: 0 32px 80px; display: grid; grid-template-columns: var(--rail-w) 1fr; gap: 30px; align-items: start; }

/* mobile "Filters" trigger — hidden on desktop */
.cat-filterbtn { display: none; }

/* ---- RAIL ----------------------------------------------------------------- */
.cat-rail { position: sticky; top: 64px; align-self: start; background: #fff; border: 1px solid var(--border); border-radius: var(--radius-lg); box-shadow: var(--shadow-sm); overflow: hidden; } /* P3 #4: flush under the 64px .dch chrome (was 78px); matches .lst-tabs top:64px */
.cat-rail__head { display: flex; align-items: center; justify-content: space-between; padding: 16px 18px; border-bottom: 1px solid var(--border); }
.cat-rail__head h2 { font-size: 15px; font-weight: 700; color: var(--ink); margin: 0; }
.cat-rail__clear { background: none; border: none; font-size: 13px; font-weight: 600; color: var(--accent); padding: 0; }
.cat-rail__clear:hover { color: var(--accent-strong); }

/* search box */
.cat-search { padding: 16px 18px 6px; }
.cat-search__box { position: relative; }
.cat-search__box svg { position: absolute; left: 12px; top: 50%; transform: translateY(-50%); pointer-events: none; }
.cat-search input { width: 100%; height: 42px; font-family: var(--font); font-size: 14px; color: var(--ink); background: var(--bg); border: 1px solid var(--border-strong); border-radius: var(--radius); padding: 0 12px 0 36px; outline: none; transition: border-color var(--dur-fast) var(--ease-standard), box-shadow var(--dur-fast) var(--ease-standard); }
.cat-search input::placeholder { color: var(--muted); }
.cat-search input:focus { border-color: var(--accent); box-shadow: 0 0 0 3px var(--focus-ring); }

/* filter group (collapsible) */
.cat-group { border-top: 1px solid var(--border); }
.cat-group:first-of-type { border-top: none; }
.cat-group__head { width: 100%; display: flex; align-items: center; justify-content: space-between; gap: 10px; background: none; border: none; padding: 14px 18px; text-align: left; }
.cat-group__head:hover { background: var(--bg-subtle); }
.cat-group__label { display: flex; align-items: center; gap: 9px; font-size: 13.5px; font-weight: 700; color: var(--ink); letter-spacing: 0.01em; }
.cat-group__count { min-width: 18px; height: 18px; padding: 0 6px; border-radius: var(--radius-pill); background: var(--pillar-sports-base); color: #fff; font-size: 11px; font-weight: 700; display: none; align-items: center; justify-content: center; }
.cat-group__count--on { display: inline-flex; }
.cat-group__chev { flex: none; color: var(--muted); transition: transform var(--dur-base) var(--ease-standard); }
.cat-group--open .cat-group__chev { transform: rotate(180deg); }
.cat-group__body { display: none; padding: 2px 18px 16px; }
.cat-group--open .cat-group__body { display: block; }

/* checkbox row */
.cat-opt { display: flex; align-items: center; gap: 10px; padding: 7px 0; cursor: pointer; }
.cat-opt__box { width: 18px; height: 18px; border-radius: var(--radius-sm); border: 1.5px solid var(--border-strong); background: #fff; flex: none; position: relative; transition: background var(--dur-fast), border-color var(--dur-fast); }
.cat-opt input { position: absolute; opacity: 0; width: 0; height: 0; }
.cat-opt input:checked + .cat-opt__box { background: var(--accent); border-color: var(--accent); }
.cat-opt input:checked + .cat-opt__box::after { content: ""; position: absolute; left: 5px; top: 2px; width: 5px; height: 9px; border: solid #fff; border-width: 0 2px 2px 0; transform: rotate(45deg); }
.cat-opt input:focus-visible + .cat-opt__box { box-shadow: 0 0 0 3px var(--focus-ring); }
.cat-opt__label { flex: 1; font-size: 13.5px; color: var(--text); }
.cat-opt__n { font-size: 12px; color: var(--muted); }
.cat-opt:hover .cat-opt__label { color: var(--ink); }

/* chip-style options (Type, Territory quick picks) */
.cat-optchips { display: flex; flex-wrap: wrap; gap: 7px; padding-top: 4px; }
.cat-optchip { font-size: 13px; font-weight: 600; padding: 6px 12px; border-radius: var(--radius-pill); border: 1px solid var(--border); background: #fff; color: var(--ink); cursor: pointer; transition: border-color var(--dur-fast), background var(--dur-fast), color var(--dur-fast); }
.cat-optchip:hover { border-color: var(--pillar-sports-base); background: var(--pillar-sports-fill); color: var(--pillar-sports-ink); }
.cat-optchip--on { border-color: var(--pillar-sports-base); background: var(--pillar-sports-fill); color: var(--pillar-sports-ink); }

/* range (duration) */
.cat-range { display: flex; align-items: center; gap: 10px; padding-top: 6px; }
.cat-range input { width: 100%; height: 40px; font-family: var(--font); font-size: 13.5px; color: var(--ink); background: var(--bg); border: 1px solid var(--border-strong); border-radius: var(--radius); padding: 0 10px; outline: none; }
.cat-range input:focus { border-color: var(--accent); box-shadow: 0 0 0 3px var(--focus-ring); }
.cat-range span { font-size: 13px; color: var(--muted); }
.cat-subrow { display: flex; gap: 8px; margin-top: 10px; }
.cat-subrow .cat-seg { flex: 1; text-align: center; font-size: 12.5px; font-weight: 600; padding: 7px 0; border: 1px solid var(--border-strong); border-radius: var(--radius); color: var(--muted); background: #fff; cursor: pointer; }
.cat-subrow .cat-seg--on { border-color: var(--accent); color: var(--accent); background: var(--bg-subtle); }
.cat-showmore { background: none; border: none; padding: 8px 0 0; font-size: 13px; font-weight: 600; color: var(--accent); }
.cat-showmore:hover { color: var(--accent-strong); }

/* ---- LOCKED group (anon state) -------------------------------------------- */
.cat-group--lockable { position: relative; }
.cat--anon .cat-group--lockable .cat-group__head { cursor: not-allowed; }
.cat--anon .cat-group--lockable .cat-group__label { color: var(--muted); }
.cat--anon .cat-group--lockable .cat-group__body { display: none !important; }
.cat-lock { display: none; }
.cat--anon .cat-group--lockable .cat-lock { display: inline-flex; align-items: center; color: var(--muted); }
/* verified: locks never show, groups behave normally */
.cat--verified .cat-lock { display: none !important; }

/* anon sign-in nudge under the rail */
.cat-railcta { display: none; padding: 16px 18px; border-top: 1px solid var(--border); background: var(--bg-subtle); }
.cat--anon .cat-railcta { display: block; }
.cat-railcta p { margin: 0 0 12px; font-size: 13px; line-height: 1.5; color: var(--text); }
.cat-railcta .cat-btn { width: 100%; }

/* ============================================================================
   RESULTS
   ========================================================================== */
.cat-results { min-width: 0; }
.cat-applied { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-bottom: 20px; }
.cat-applied__count { font-size: 14px; font-weight: 700; color: var(--ink); margin-right: 4px; }
.cat-appchip { display: inline-flex; align-items: center; gap: 7px; font-size: 12.5px; font-weight: 600; padding: 5px 8px 5px 11px; border-radius: var(--radius-pill); background: var(--pillar-sports-fill); color: var(--pillar-sports-ink); border: 1px solid transparent; }
.cat-appchip button { background: none; border: none; padding: 0; display: inline-flex; color: var(--pillar-sports-ink); opacity: 0.7; line-height: 0; }
.cat-appchip button:hover { opacity: 1; }
.cat-applied__clear { background: none; border: none; font-size: 13px; font-weight: 600; color: var(--accent); padding: 0 0 0 4px; }
.cat-applied__clear:hover { color: var(--accent-strong); }

.cat-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(210px, 1fr)); gap: 22px; }

/* anon T1 banner above results */
.cat-t1banner { display: none; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 20px; padding: 16px 20px; border: 1px solid var(--border); border-left: 3px solid var(--pillar-sports-base); border-radius: var(--radius); background: var(--bg-subtle); }
.cat--anon .cat-t1banner { display: flex; }
.cat-t1banner p { margin: 0; font-size: 14px; line-height: 1.5; color: var(--text); }
.cat-t1banner strong { color: var(--ink); font-weight: 700; }

/* ============================================================================
   bc-CARD  (shipped catalogue card — caption-below default; cover / blur-fill / channel)
   ========================================================================== */
.bc-card { font-family: var(--font); cursor: pointer; }
.bc-poster { position: relative; width: 100%; aspect-ratio: 2 / 3; border-radius: var(--radius-lg); overflow: hidden; background: var(--navy); box-shadow: var(--shadow-sm); transition: transform var(--dur-base) var(--ease-out), box-shadow var(--dur-base) var(--ease-out); }
.bc-card:hover .bc-poster { transform: translateY(-4px); box-shadow: var(--shadow-card-hover); }
.bc-badge { position: absolute; top: 10px; left: 10px; z-index: 3; padding: 4px 9px; border-radius: var(--radius-pill); font-size: 10.5px; font-weight: 700; letter-spacing: 0.04em; text-transform: uppercase; background: rgba(255,255,255,0.92); color: var(--ink); backdrop-filter: blur(4px); }
.bc-badge--live { background: #E5484D; color: #fff; }
.bc-ka { position: absolute; inset: 0; }
.bc-ka__inner { position: absolute; left: 0; right: 0; top: 36%; transform: translateY(-50%); text-align: center; padding: 0 16px; color: #fff; text-shadow: 0 2px 14px rgba(0,0,0,0.4); }
.bc-ka__kicker { font-size: 10px; font-weight: 700; letter-spacing: 0.22em; text-transform: uppercase; opacity: 0.82; margin-bottom: 8px; }
.bc-ka__title { font-size: 21px; font-weight: 800; line-height: 1.05; }
.bc-grain::after { content: ""; position: absolute; inset: 0; background-image: radial-gradient(rgba(255,255,255,0.05) 1px, transparent 1px); background-size: 4px 4px; opacity: 0.6; mix-blend-mode: overlay; }
.bc-art--noir { background: radial-gradient(120% 80% at 50% 8%, rgba(214,151,72,0.55), transparent 55%), linear-gradient(180deg, #1a2433 0%, #0c1622 55%, #060d16 100%); }
.bc-art--aurora { background: radial-gradient(130% 70% at 50% 100%, rgba(40,210,160,0.5), transparent 60%), radial-gradient(90% 60% at 80% 10%, rgba(120,80,200,0.45), transparent 60%), linear-gradient(180deg, #0d1430 0%, #122a3a 70%, #0a1822 100%); }
.bc-art--action { background: radial-gradient(120% 80% at 50% 0%, rgba(231,72,77,0.6), transparent 55%), linear-gradient(180deg, #2a0e14 0%, #14202e 60%, #0a141d 100%); }
.bc-art--cold { background: radial-gradient(130% 70% at 50% 0%, rgba(170,205,235,0.6), transparent 55%), linear-gradient(180deg, #6f93b4 0%, #355875 45%, #14222f 100%); }
.bc-art--ember { background: radial-gradient(120% 80% at 50% 6%, rgba(240,180,90,0.5), transparent 55%), linear-gradient(180deg, #3a2412 0%, #1c1410 55%, #0c0a08 100%); }
.bc-art--violet { background: radial-gradient(120% 80% at 30% 0%, rgba(150,90,210,0.55), transparent 58%), linear-gradient(180deg, #1a1238 0%, #140f2a 60%, #0a0817 100%); }
/* blur-fill (off-ratio art) */
.bc-blur__fill { position: absolute; inset: 0; filter: blur(22px) brightness(0.62); transform: scale(1.25); }
.bc-blur__dim { position: absolute; inset: 0; background: rgba(7,30,50,0.30); }
.bc-blur__img { position: absolute; left: 0; right: 0; top: 50%; transform: translateY(-50%); width: 100%; aspect-ratio: 16 / 9; overflow: hidden; box-shadow: 0 6px 20px rgba(0,0,0,0.35); }
.bc-blur__img .bc-ka__inner { top: 50%; }
.bc-blur__img .bc-ka__kicker { font-size: 9px; letter-spacing: 0.2em; margin-bottom: 6px; }
.bc-blur__img .bc-ka__title { font-size: 19px; }
/* channel logo tile */
.bc-tile { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; padding: 12px; }
.bc-tile img { width: 80%; max-width: 80%; max-height: 65%; object-fit: contain; opacity: 0.96; }
.bc-tile--sports { background: linear-gradient(160deg, #eafaf6 0%, var(--pillar-sports-fill) 100%); }
.bc-tile--ent { background: linear-gradient(160deg, #f5eefc 0%, var(--pillar-entertainment-fill) 100%); }
.bc-tile--channels { background: linear-gradient(160deg, #fdf6e2 0%, var(--pillar-channels-fill) 100%); }
/* caption-below (shipped default) */
.bc-cap-below { padding: 11px 3px 0; }
.bc-cap-below .t { font-size: 14.5px; font-weight: 700; color: var(--ink); line-height: 1.22; margin: 0 0 3px; }
.bc-cap-below .m { font-size: 12px; color: var(--muted); margin: 0 0 8px; }
.bc-chip { display: inline-flex; align-items: center; gap: 5px; font-size: 11px; font-weight: 600; padding: 3px 9px; border-radius: var(--radius-pill); background: var(--bg-subtle); color: var(--ink); border: 1px solid var(--border); }
.bc-dot { width: 5px; height: 5px; border-radius: var(--radius-pill); }
.bc-dot--all { background: var(--accent); }
.bc-dot--terr { background: var(--pillar-sports-base); }

/* ============================================================================
   FOOTER
   ========================================================================== */
.cat-footer { background: var(--navy); }
.cat-footer__inner { max-width: var(--container); margin: 0 auto; padding: 40px 32px; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 20px; }
.cat-footer__inner img { height: 20px; }
.cat-footer__nav { display: flex; flex-wrap: wrap; gap: 24px; }
.cat-footer__nav a { font-size: 14px; color: rgba(255,255,255,0.62); transition: color var(--dur-fast) var(--ease-standard); }
.cat-footer__nav a:hover { color: #fff; }
.cat-footer__copy { font-size: 13px; color: rgba(255,255,255,0.4); }

/* mobile rail scrim */
.cat-scrim { display: none; }

/* ============================================================================
   LISTING DETAIL + COMMERCIALS DEAL-BUILDER  (/content/<id>)
   Shares the tokens, header, footer, buttons and bc-card above.
   THREE-TIER GATE on the root, from ONE markup:
     <div class="cat lst lst--t1">  public: Info subset + synopsis only
     <div class="cat lst lst--t2">  signed-in: + screener + rights/availability matrix
     <div class="cat lst lst--t3">  verified buyer: + the Commercials deal-builder
   Each tier is additive — t3 also shows everything t2 and t1 show.
   ========================================================================== */
.lst-wrap { max-width: var(--container); margin: 0 auto; padding: 0 32px; }
.lst-crumb { padding: 22px 0 18px; font-size: 13px; color: var(--muted); display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.lst-crumb a:hover { color: var(--ink); }
.lst-crumb__sep { color: var(--border-strong); }
.lst-crumb__here { color: var(--ink); font-weight: 600; }

/* hero: art + title block */
.lst-hero { display: grid; grid-template-columns: 300px 1fr; gap: 40px; align-items: start; padding-bottom: 34px; border-bottom: 1px solid var(--border); }
.lst-art { position: relative; width: 100%; aspect-ratio: 2 / 3; border-radius: var(--radius-lg); overflow: hidden; background: var(--navy); box-shadow: var(--shadow-md); }
.lst-tier { display: inline-flex; align-items: center; gap: 7px; font-size: 12px; font-weight: 700; color: var(--pillar-sports-ink); background: var(--pillar-sports-fill); padding: 5px 11px; border-radius: var(--radius-pill); margin-bottom: 14px; }
.lst-title { font-size: clamp(30px, 3.4vw, 42px); line-height: 1.08; letter-spacing: -0.01em; font-weight: 800; color: var(--ink); margin: 0; }
.lst-metaline { margin: 12px 0 0; font-size: 15px; color: var(--text); display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.lst-metaline .dot { width: 3px; height: 3px; border-radius: 50%; background: var(--border-strong); }
.lst-holder { margin: 18px 0 0; display: flex; align-items: center; gap: 11px; }
.lst-holder__logo { width: 40px; height: 40px; border-radius: var(--radius); background: var(--bg-subtle); border: 1px solid var(--border); display: inline-flex; align-items: center; justify-content: center; flex: none; }
.lst-holder__logo img { width: 24px; opacity: 0.8; }
.lst-holder__name { font-size: 14px; font-weight: 700; color: var(--ink); }
.lst-holder__sub { font-size: 12.5px; color: var(--muted); }
.lst-avail { margin: 20px 0 0; display: flex; flex-wrap: wrap; gap: 10px; }
.lst-avail__item { display: flex; align-items: center; gap: 8px; font-size: 13.5px; color: var(--text); background: var(--bg-subtle); border: 1px solid var(--border); border-radius: var(--radius); padding: 9px 13px; }
.lst-avail__item svg { color: var(--pillar-sports-base); flex: none; }
.lst-actions { margin: 26px 0 0; display: flex; flex-wrap: wrap; gap: 12px; }
.lst-actions .cat-btn--lg { height: 52px; padding: 0 28px; font-size: 16px; }
.cat-btn--lg { height: 52px; padding: 0 28px; font-size: 16px; }
/* save to shortlist (Lightbox entry point) — T2+ active; T1 shows a padlock */
.lst-save__ico { flex: none; }
.lst-save__lock { display: none; margin-left: 2px; color: var(--muted); }
.lst--t1 .lst-save__lock { display: inline-flex; }
.lst-save--on { border-color: var(--pillar-sports-base); background: var(--pillar-sports-fill); color: var(--pillar-sports-ink); }
.lst-save--on .lst-save__ico path { fill: currentColor; }

/* tabs */
.lst-tabs { display: flex; gap: 4px; border-bottom: 1px solid var(--border); margin: 8px 0 0; position: sticky; top: 64px; background: var(--surface-page); z-index: 20; }
.lst-tab { position: relative; background: none; border: none; padding: 18px 18px 16px; font-family: var(--font); font-size: 15px; font-weight: 600; color: var(--muted); }
.lst-tab:hover { color: var(--ink); }
.lst-tab--active { color: var(--ink); font-weight: 700; }
.lst-tab--active::after { content: ""; position: absolute; left: 18px; right: 18px; bottom: -1px; height: 2px; background: var(--pillar-sports-base); border-radius: 2px; }
.lst-tab__lock { margin-left: 7px; color: var(--muted); vertical-align: -1px; }

/* panels */
.lst-panel { display: none; padding: 34px 0 20px; }
.lst-panel--active { display: block; }
.lst-grid2 { display: grid; grid-template-columns: 1.55fr 1fr; gap: 36px; align-items: start; }

/* Info */
.lst-h { font-size: 16px; font-weight: 700; color: var(--ink); margin: 0 0 14px; }
.lst-synopsis { font-size: 16px; line-height: 1.65; color: var(--text); margin: 0 0 12px; max-width: 680px; }
.lst-spec { border: 1px solid var(--border); border-radius: var(--radius-lg); overflow: hidden; }
.lst-spec__row { display: grid; grid-template-columns: 150px 1fr; gap: 16px; padding: 12px 18px; border-bottom: 1px solid var(--border); }
.lst-spec__row:last-child { border-bottom: none; }
.lst-spec__row:nth-child(odd) { background: var(--bg-subtle); }
.lst-spec__k { font-size: 12.5px; font-weight: 700; letter-spacing: 0.03em; text-transform: uppercase; color: var(--muted); }
.lst-spec__v { font-size: 14.5px; color: var(--ink); font-weight: 600; }
.lst-tags { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 16px; }
.lst-tag { font-size: 12.5px; font-weight: 600; padding: 5px 11px; border-radius: var(--radius-pill); background: var(--pillar-sports-fill); color: var(--pillar-sports-ink); }

/* rights / availability matrix (T2+) */
.lst-gated { position: relative; }
.lst-matrix { width: 100%; border-collapse: collapse; border: 1px solid var(--border); border-radius: var(--radius-lg); overflow: hidden; }
.lst-matrix th, .lst-matrix td { text-align: left; padding: 12px 16px; font-size: 14px; border-bottom: 1px solid var(--border); }
.lst-matrix thead th { background: var(--bg-subtle); font-size: 12px; font-weight: 700; letter-spacing: 0.03em; text-transform: uppercase; color: var(--muted); }
.lst-matrix td { color: var(--text); }
.lst-matrix td:first-child { font-weight: 600; color: var(--ink); }
.lst-matrix tr:last-child td { border-bottom: none; }
.lst-avpill { font-size: 11.5px; font-weight: 700; padding: 3px 9px; border-radius: var(--radius-pill); }
.lst-avpill--open { background: #D7F0EC; color: #00504A; }
.lst-avpill--partial { background: #FBEFCC; color: #6B4A00; }
.lst-avpill--closed { background: var(--bg-muted); color: var(--muted); }

/* ---- deal-builder (Commercials, T3) --------------------------------------- */
.lst-deal { background: #fff; border: 1px solid var(--border); border-radius: var(--radius-lg); box-shadow: var(--shadow-sm); padding: 26px 28px; }
.lst-deal__title { font-size: 18px; font-weight: 700; color: var(--ink); margin: 0 0 4px; }
.lst-deal__lede { font-size: 14px; line-height: 1.55; color: var(--muted); margin: 0 0 22px; }
.lst-field { margin-bottom: 20px; }
.lst-fieldlabel { display: block; font-size: 13.5px; font-weight: 700; color: var(--ink); margin-bottom: 9px; }
.lst-fieldlabel .req { color: var(--pillar-sports-base); }
.lst-multi { display: flex; flex-wrap: wrap; gap: 8px; }
.lst-mchip { font-size: 13px; font-weight: 600; padding: 8px 14px; border-radius: var(--radius-pill); border: 1px solid var(--border-strong); background: #fff; color: var(--ink); cursor: pointer; transition: border-color var(--dur-fast), background var(--dur-fast), color var(--dur-fast); }
.lst-mchip:hover { border-color: var(--pillar-sports-base); }
.lst-mchip--on { border-color: var(--pillar-sports-base); background: var(--pillar-sports-fill); color: var(--pillar-sports-ink); }
.lst-mchip--on::before { content: "✓ "; }
.lst-seg { display: inline-flex; background: var(--bg-subtle); border: 1px solid var(--border); border-radius: var(--radius); padding: 3px; }
.lst-seg__btn { font-size: 13.5px; font-weight: 600; border: none; background: none; border-radius: var(--radius-sm); padding: 8px 18px; color: var(--muted); cursor: pointer; }
.lst-seg__btn--on { background: #fff; color: var(--ink); box-shadow: var(--shadow-xs); }
.lst-stepper { display: inline-flex; align-items: center; border: 1px solid var(--border-strong); border-radius: var(--radius); overflow: hidden; }
.lst-stepper button { width: 42px; height: 44px; background: #fff; border: none; font-size: 19px; color: var(--ink); cursor: pointer; }
.lst-stepper button:hover { background: var(--bg-subtle); }
.lst-stepper input { width: 64px; height: 44px; border: none; border-left: 1px solid var(--border); border-right: 1px solid var(--border); text-align: center; font-family: var(--font); font-size: 15px; font-weight: 700; color: var(--ink); outline: none; }
.lst-textarea { width: 100%; font-family: var(--font); font-size: 14.5px; color: var(--text); background: var(--bg); border: 1px solid var(--border-strong); border-radius: var(--radius); padding: 12px; resize: vertical; min-height: 92px; outline: none; }
.lst-textarea:focus { border-color: var(--accent); box-shadow: 0 0 0 3px var(--focus-ring); }
.lst-deal__foot { display: flex; flex-direction: column; gap: 12px; margin-top: 4px; }
.lst-deal__foot .cat-btn { width: 100%; height: 52px; font-size: 16px; }
.lst-deal__note { font-size: 12.5px; line-height: 1.5; color: var(--muted); text-align: center; margin: 0; }

/* deal summary aside */
.lst-summary { background: var(--bg-subtle); border: 1px solid var(--border); border-radius: var(--radius-lg); padding: 22px 24px; position: sticky; top: 120px; }
.lst-summary__label { font-size: 12.5px; font-weight: 700; letter-spacing: 0.04em; text-transform: uppercase; color: var(--muted); margin-bottom: 14px; }
.lst-summary__row { display: flex; justify-content: space-between; gap: 14px; padding: 9px 0; border-bottom: 1px solid var(--border); font-size: 13.5px; }
.lst-summary__row:last-of-type { border-bottom: none; }
.lst-summary__k { color: var(--muted); }
.lst-summary__v { color: var(--ink); font-weight: 600; text-align: right; }
.lst-summary__hint { margin: 16px 0 0; font-size: 12.5px; line-height: 1.5; color: var(--muted); }

/* ---- gate overlays (shown per tier) --------------------------------------- */
.lst-gate { border: 1px dashed var(--border-strong); border-radius: var(--radius-lg); background: var(--bg-subtle); padding: 40px 32px; text-align: center; }
.lst-gate__icon { width: 48px; height: 48px; border-radius: var(--radius-pill); background: #fff; border: 1px solid var(--border); display: inline-flex; align-items: center; justify-content: center; color: var(--pillar-sports-base); margin-bottom: 16px; }
.lst-gate__title { font-size: 19px; font-weight: 700; color: var(--ink); margin: 0 0 8px; }
.lst-gate__copy { font-size: 14.5px; line-height: 1.55; color: var(--text); margin: 0 auto 20px; max-width: 420px; }
.lst-gate__actions { display: inline-flex; gap: 12px; flex-wrap: wrap; justify-content: center; }

/* screener */
.lst-screener { position: relative; aspect-ratio: 16 / 9; border-radius: var(--radius-lg); overflow: hidden; background: var(--navy); display: flex; align-items: center; justify-content: center; }
.lst-screener__ka { position: absolute; inset: 0; }
.lst-screener__play { position: relative; width: 68px; height: 68px; border-radius: var(--radius-pill); background: rgba(255,255,255,0.92); display: inline-flex; align-items: center; justify-content: center; }
.lst-screener__play::after { content: ""; margin-left: 4px; border-style: solid; border-width: 12px 0 12px 20px; border-color: transparent transparent transparent var(--navy); }
.lst-screener__lock { position: absolute; inset: 0; background: rgba(7,30,50,0.72); backdrop-filter: blur(3px); display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 12px; color: #fff; text-align: center; padding: 24px; }
.lst-screener__lock p { margin: 0; font-size: 14.5px; max-width: 320px; line-height: 1.5; color: var(--text-on-dark-muted); }

/* TIER VISIBILITY — the gate logic */
.lst-t2, .lst-t3 { display: none; }        /* higher-tier content hidden by default */
.lst--t2 .lst-t2, .lst--t3 .lst-t2 { display: block; }
.lst--t3 .lst-t3 { display: block; }
.lst-gate--t1, .lst-gate--t2 { display: none; }
.lst--t1 .lst-gate--t1 { display: block; }    /* T1 sees the sign-in gate on gated tabs */
.lst--t2 .lst-gate--t2 { display: block; }    /* T2 sees the request-access gate on the deal-builder */
.lst--t1 .lst-screener__lock { display: flex; }
.lst--t2 .lst-screener__lock, .lst--t3 .lst-screener__lock { display: none; }
.lst-tab__lock { display: none; }
.lst--t1 .lst-tab__lock--t2 { display: inline; }
.lst--t1 .lst-tab__lock--t3, .lst--t2 .lst-tab__lock--t3 { display: inline; }

/* listing responsive */
@media (max-width: 1080px) {
  .lst-wrap { padding-left: 24px; padding-right: 24px; }
  .lst-hero { grid-template-columns: 240px 1fr; gap: 30px; }
  .lst-grid2 { gap: 26px; }
}
@media (max-width: 860px) {
  .lst-hero { grid-template-columns: 1fr; gap: 24px; }
  .lst-art { max-width: 260px; }
  .lst-grid2 { grid-template-columns: 1fr; }
  .lst-summary { position: static; }
  .lst-tabs { top: 56px; overflow-x: auto; }
}
@media (max-width: 600px) {
  .lst-wrap { padding-left: 16px; padding-right: 16px; }
  .lst-actions .cat-btn--lg { width: 100%; }
  .lst-spec__row { grid-template-columns: 120px 1fr; }
}

/* ============================================================================
   RESPONSIVE LAYER — 1080 / 860 / 600 + reduced motion
   ========================================================================== */
@media (max-width: 1080px) {
  .cat-header__inner, .cat-head, .cat-body, .cat-footer__inner { padding-left: 24px; padding-right: 24px; }
  :root { --rail-w: 250px; }
  .cat-grid { grid-template-columns: repeat(auto-fill, minmax(180px, 1fr)); gap: 18px; }
}

@media (max-width: 860px) {
  .cat-nav { display: none; }
  .cat-header__inner { gap: 16px; }
  .cat-user { display: none; }

  /* rail becomes an off-canvas drawer; a Filters button opens it */
  .cat-body { grid-template-columns: 1fr; }
  .cat-filterbtn { display: inline-flex; align-items: center; gap: 8px; height: 42px; padding: 0 16px; border-radius: var(--radius); border: 1px solid var(--border-strong); background: #fff; color: var(--ink); font-size: 14px; font-weight: 600; margin-bottom: 18px; }
  .cat-filterbtn__n { min-width: 18px; height: 18px; padding: 0 5px; border-radius: var(--radius-pill); background: var(--pillar-sports-base); color: #fff; font-size: 11px; font-weight: 700; display: inline-flex; align-items: center; justify-content: center; }
  .cat-rail { position: fixed; top: 0; left: 0; bottom: 0; width: 320px; max-width: 88vw; z-index: 60; border-radius: 0; box-shadow: 0 12px 40px rgba(7,30,50,0.28); transform: translateX(-102%); transition: transform var(--dur-base) var(--ease-out); overflow-y: auto; }
  .cat--railopen .cat-rail { transform: translateX(0); }
  .cat--railopen .cat-scrim { display: block; position: fixed; inset: 0; z-index: 55; background: rgba(7,30,50,0.4); }
  .cat-grid { grid-template-columns: repeat(auto-fill, minmax(160px, 1fr)); }
}

@media (max-width: 600px) {
  .cat-header__inner { padding: 12px 16px; }
  .cat-head, .cat-body, .cat-footer__inner { padding-left: 16px; padding-right: 16px; }
  .cat-head { flex-direction: column; align-items: flex-start; }
  .cat-head__sort { width: 100%; }
  .cat-select { flex: 1; min-width: 0; }
  .cat-grid { grid-template-columns: repeat(2, 1fr); gap: 14px; }
  .bc-ka__title { font-size: 17px; }
  .cat-footer__inner { flex-direction: column; align-items: flex-start; gap: 18px; padding: 32px 16px; }
}

@media (prefers-reduced-motion: reduce) {
  .cat *, .cat *::before, .cat *::after { transition-duration: 0.001ms !important; animation-duration: 0.001ms !important; }
}

/* B3-P1 #4 (a11y contrast): keep white text on the primary button inside the STORE chrome too —
   the store's link colour was overriding .cat-btn--primary (dark text on blue). Scoped to .cat/.lst.
   Flagged to DH/CD to mirror in the CD master.
   B3.1 axe: the availability empty-state 'Request a Proposal' CTA (.av-empty__cta, an <a> on the
   blue) hit the SAME override — `.cat a{color:inherit}` (0,1,1) beat `.av-empty__cta{color:#fff}`
   (0,1,0), so it inherited --text #3d4754 on #0b599c = 1.31. Folded into the same white-text rule. */
.cat .cat-btn--primary, .lst .cat-btn--primary,
.cat a.cat-btn--primary, .lst a.cat-btn--primary,
.cat a.av-empty__cta, .lst a.av-empty__cta { color: #fff !important; }

/* QA #3: catalogue sort control (in the filter rail) */
.cat-sort { display: flex; align-items: center; gap: 8px; padding: 12px 16px; border-bottom: 1px solid var(--border); }
.cat-sort label { font-size: 12px; font-weight: 700; text-transform: uppercase; letter-spacing: .04em; color: var(--muted); white-space: nowrap; }
.cat-sort select { flex: 1; min-width: 0; height: 36px; border: 1px solid var(--border-strong, #CBD2D9); border-radius: var(--radius, 8px); background: #fff; font-family: var(--font); font-size: 14px; color: var(--ink); padding: 0 8px; }

/* QA #4: detail Preview screener list + empty state (verified buyers) */
.lst-screeners { display: flex; flex-direction: column; gap: 10px; max-width: 620px; }
.lst-screener { display: flex; align-items: center; gap: 14px; padding: 15px 18px; background: var(--bg-subtle, #F8F8F8); border: 1px solid var(--border, #E2E6EA); border-radius: var(--radius-lg, 10px); color: var(--ink, #0B1B2B); transition: border-color .15s ease, background .15s ease; }
.lst-screener:hover { border-color: var(--accent, #0B599C); background: #fff; }
.lst-screener__play { flex: none; width: 34px; height: 34px; border-radius: 999px; background: var(--accent, #0B599C); color: #fff; display: inline-flex; align-items: center; justify-content: center; font-size: 12px; }
.lst-screener__body { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.lst-screener__title { font-weight: 700; font-size: 15px; }
.lst-screener__login { font-size: 12.5px; color: var(--muted, #595959); }
.lst-empty { background: var(--bg-subtle, #F8F8F8); border: 1px solid var(--border, #E2E6EA); border-radius: var(--radius-lg, 10px); padding: 28px; max-width: 620px; }
.lst-empty .lst-h { margin: 0 0 8px; }

/* QA 🟡: detail Related panel — real cards */
.lst-related__head { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; margin: 0 0 16px; }
.lst-related__all { font-size: 13.5px; font-weight: 600; color: var(--accent, #0B599C); white-space: nowrap; }
.lst-related__grid { grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); }

/* ============================================================================
   B3-P3 #6 · Detail AVAILABILITY DISPLAY (Platform · Rights · Territories)
   Ported from cd-b3-p3-export/availability-display.css. Honest 3-state block,
   driven by the class on .av: .av--present (structured matrix — NO source yet,
   never fabricated) | .av--absent.has-signal (coarse territory badge) |
   .av--absent (proposal-led + known-facts chips). Tokens scoped to .av (NOT a
   global :root — reskin no-leak rule); reuses catalogue-b3 --accent fallbacks.
   ========================================================================== */
.av{
  --av-ink:#0B1B2B;--av-text:#3D4754;--av-muted:#595959;--av-accent:#0B599C;--av-accent-strong:#094B82;
  --av-bg-subtle:#F8F8F8;--av-border:#E2E6EA;--av-ps:#0C7C6F;
  --av-open-f:#D7F0EC;--av-open-i:#00504A;--av-part-f:#FBEFCC;--av-part-i:#6B4A00;--av-clos-f:#EEF1F4;--av-clos-i:#7A8794;
  --av-r:6px;--av-rl:10px;--av-rp:999px;
  color:var(--av-text);
}
.av__head{display:flex;align-items:center;gap:10px;margin:0 0 6px}
.av__h{font-size:16px;font-weight:700;color:var(--av-ink);margin:0}
.av__asof{font-size:12px;color:var(--av-muted)}
.av__lede{font-size:13.5px;line-height:1.55;color:var(--av-muted);margin:0 0 16px;max-width:640px}
.av--present .av-absent{display:none}
.av--absent  .av-present{display:none}
.av-meta{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 18px}
.av-meta__item{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--av-text);background:var(--av-bg-subtle);border:1px solid var(--av-border);border-radius:var(--av-r);padding:8px 12px}
.av-meta__item svg{color:var(--av-ps);flex:none}
.av-meta__k{color:var(--av-muted)}
.av-meta__v{color:var(--av-ink);font-weight:600}
.av-imdb{font-weight:700;color:#0B1B2B;background:#F5C518;border-radius:3px;padding:1px 5px;font-size:11.5px;letter-spacing:.02em}
.av-matrix{width:100%;border-collapse:collapse;border:1px solid var(--av-border);border-radius:var(--av-rl);overflow:hidden}
.av-matrix th,.av-matrix td{padding:12px 14px;text-align:left;font-size:13.5px;border-bottom:1px solid var(--av-border)}
.av-matrix thead th{background:var(--av-bg-subtle);font-size:11.5px;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:var(--av-muted)}
.av-matrix tbody td:first-child{font-weight:700;color:var(--av-ink)}
.av-matrix tbody tr:last-child td{border-bottom:none}
.av-matrix .terr-sub{display:block;font-size:11.5px;font-weight:400;color:var(--av-muted);margin-top:2px}
.av-pill{display:inline-flex;align-items:center;gap:5px;font-size:11.5px;font-weight:700;padding:3px 9px;border-radius:var(--av-rp)}
.av-pill::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;opacity:.9}
.av-pill--open{background:var(--av-open-f);color:var(--av-open-i)}
.av-pill--part{background:var(--av-part-f);color:var(--av-part-i)}
.av-pill--clos{background:var(--av-clos-f);color:var(--av-clos-i)}
.av-legend{display:flex;flex-wrap:wrap;gap:16px;margin-top:12px;font-size:12px;color:var(--av-muted)}
.av-legend span{display:inline-flex;align-items:center;gap:6px}
.av-legend i{width:8px;height:8px;border-radius:50%}
.av-note{margin-top:14px;font-size:12.5px;line-height:1.5;color:var(--av-muted)}
.av-note a{color:var(--av-accent);font-weight:600;text-decoration:none}
.av-rollup{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 12px}
.av-rollup__t{font-size:13px;font-weight:600;color:var(--av-ink)}
.av-rollup__a{font-size:13px;font-weight:600;color:var(--av-accent);text-decoration:none;background:none;border:none;cursor:pointer}
.av-empty{border:1px solid var(--av-border);border-radius:var(--av-rl);background:linear-gradient(180deg,var(--av-bg-subtle),#fff);padding:26px 28px;display:flex;gap:20px;align-items:flex-start}
.av-empty__ico{width:46px;height:46px;border-radius:var(--av-rp);background:#fff;border:1px solid var(--av-border);display:inline-flex;align-items:center;justify-content:center;color:var(--av-ps);flex:none}
.av-empty__t{font-size:16px;font-weight:700;color:var(--av-ink);margin:0 0 6px}
.av-empty__c{font-size:14px;line-height:1.6;color:var(--av-text);margin:0 0 16px;max-width:520px}
.av-empty__c b{color:var(--av-ink)}
.av-empty__cta{display:inline-flex;align-items:center;gap:8px;height:44px;padding:0 20px;border-radius:var(--av-r);background:var(--av-accent);color:#fff;font-size:14.5px;font-weight:600;border:none;cursor:pointer;text-decoration:none}
.av-empty__cta:hover{background:var(--av-accent-strong)}
.av-known{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.av-known__chip{font-size:12.5px;font-weight:600;padding:5px 11px;border-radius:var(--av-rp);background:#fff;border:1px solid var(--av-border);color:var(--av-text)}
.av-signal{display:none;align-items:center;gap:10px;margin:0 0 16px;padding:11px 14px;border:1px solid var(--av-border);border-left:3px solid var(--av-ps);border-radius:var(--av-r);background:var(--av-bg-subtle)}
.av--absent.has-signal .av-signal{display:flex}
.av-signal__ico{color:var(--av-ps);flex:none}
.av-signal__t{font-size:13.5px;color:var(--av-ink)}
.av-signal__t b{font-weight:700}
.av-signal__t .sub{color:var(--av-muted);font-weight:400}
@media (max-width:640px){
  .av-empty{flex-direction:column;gap:14px}
  .av-matrix{display:block;overflow-x:auto;white-space:nowrap}
}

/* B3.1 #1/#2: per-option live facet count in the rail (hide-empty + faceted narrowing) */
.cat-opt__count{margin-left:auto;font-size:11.5px;font-weight:600;color:var(--muted,#8a94a0);padding-left:8px;flex:none}
.cat-opt{display:flex;align-items:center}

/* B3.1 batch-2: endless-catalogue container. The visuals now come from CD's `_8` skin in
   postlogin-b3.css (.eb / .eb-loading / .eb-sentinel / .sec-h / .ptiles), which applies because the
   container also carries `.dpl`. Only the wrapper spacing + the end-block reveal live here. */
.cat-endless { margin-top: 26px; }
.cat-endless__end { padding-bottom: 8px; }

/* QA detail-parity: IMDb chip inside the availability known-facts row (link, opens in a new tab) */
.av-known__chip--imdb { display: inline-flex; align-items: center; gap: 7px; text-decoration: none; }
.av-known__chip--imdb:hover { border-color: var(--av-accent, #0B599C); }
.av-known__rating { font-weight: 700; color: var(--av-ink, #0B1B2B); }
