/* ============================================================
   Merk Arts — theme-minimal.css
   DIRECTION: MINIMAL / MODERN — Apple-TV+ restraint.
   Pure black + white. Type-driven. Maximum negative space.
   Exactly ONE red accent (--brand #C0272D) used sparingly:
   the active scrubber, a single revolver hover dot, the X-Ray
   paused dot. Hairlines at rgba(255,255,255,.10). Thin lines,
   tiny wide-tracked uppercase micro-labels, calm hero.
   Display + body = Hanken Grotesk (light weights for big quiet
   headlines). Accents = Zen Kaku Gothic New.
   ALL rules scoped under .theme-minimal. CSS only.
   ============================================================ */

/* ---------------------------------------------------------------
   Tokens — override the foundation
   --------------------------------------------------------------- */
.theme-minimal{
  /* Brand red stays constant, but we hold it back almost everywhere */
  --brand:        #C0272D;
  --brand-bright: #C0272D;   /* keep the red singular & restrained — no hot variant */
  --brand-deep:   #C0272D;

  /* Surfaces — pure black, barely-there elevation */
  --bg:        #0A0A0A;
  --bg-elev:   #0A0A0A;
  --surface:   #0E0E0E;
  --surface-2: #141414;
  --scrim:     rgba(10,10,10,.66);

  /* Text — quiet white scale */
  --text:      #F4F4F2;
  --text-dim:  #A6A6A4;
  --text-mute: #8A8A88;   /* lightened to meet WCAG AA (>=4.5:1) on the near-black surfaces */
  --on-brand:  #FFFFFF;

  /* Lines — hairlines */
  --line:        rgba(255,255,255,.10);
  --line-strong: rgba(255,255,255,.18);

  /* Accent — NEUTRALIZED to white/grey so red stays singular.
     Anything that used --accent (gold) now reads as quiet white. */
  --accent:    #F4F4F2;
  --accent-2:  #F4F4F2;
  --on-accent: #0A0A0A;

  /* Shape — softer, smaller radii; precise, not bubbly */
  --radius:    8px;
  --radius-sm: 6px;
  --radius-lg: 12px;
  --pill:      999px;
  --card-radius: 6px;

  /* Elevation — essentially flat; rely on hairlines + space */
  --shadow-1: none;
  --shadow-2: 0 30px 90px -50px rgba(0,0,0,.9);
  --shadow-card: none;

  /* Layout — wider gutters, more air, calmer hero */
  --maxw:  1200px;
  --gut:   clamp(20px, 5vw, 64px);
  --nav-h: 74px;
  --hero-min: 78vh;

  /* Type — Hanken Grotesk display (light) + body; Zen Kaku accents */
  --font-display: 'Hanken Grotesk', system-ui, sans-serif;
  --font-body:    'Hanken Grotesk', system-ui, sans-serif;
  --font-accent:  'Zen Kaku Gothic New', system-ui, sans-serif;
  --display-weight: 250;
  --display-tracking: -0.02em;
  --display-transform: none;
  --display-leading: 1.0;

  /* Motion — slow, quiet, precise */
  --ease: cubic-bezier(.22,.61,.36,1);
  --ease-spring: cubic-bezier(.22,.61,.36,1);
  --dur: .6s;

  /* Atmosphere — OFF. No grain, no glow. Just black. */
  --grain-opacity: 0;
  --hero-overlay: linear-gradient(180deg, rgba(10,10,10,.10) 0%, rgba(10,10,10,.55) 62%, var(--bg) 100%);
  --hero-side-overlay: linear-gradient(90deg, rgba(10,10,10,.92) 4%, rgba(10,10,10,.46) 40%, transparent 72%);
}

/* Kill the atmospheric grain + brand glow layers entirely */
.theme-minimal body::before{ display:none; }
.theme-minimal body::after{ display:none; }

.theme-minimal body{ line-height:1.65; letter-spacing:.005em; }

/* Quiet, white focus ring (no loud red) */
.theme-minimal :focus-visible{
  outline:1.5px solid var(--text);
  outline-offset:3px;
  border-radius:3px;
}

/* ---------------------------------------------------------------
   Shell + micro-labels
   --------------------------------------------------------------- */
.theme-minimal .page{ padding-bottom:120px; }

/* Tiny, wide-tracked uppercase micro-label */
.theme-minimal .label{
  right:18px;bottom:18px;
  font-family:var(--font-accent);
  font-weight:500;
  font-size:9.5px;letter-spacing:.42em;
  color:var(--text-mute);
  background:transparent;
  border:1px solid var(--line);
  padding:8px 14px 7px;
  border-radius:0;
  backdrop-filter:none;-webkit-backdrop-filter:none;
}

.theme-minimal .back-link{
  left:18px;bottom:18px;
  font-family:var(--font-accent);
  font-size:11px;letter-spacing:.16em;text-transform:uppercase;
  color:var(--text-mute);
  background:transparent;
  border:1px solid var(--line);
  border-radius:0;
  padding:9px 16px;
  backdrop-filter:none;-webkit-backdrop-filter:none;
}
.theme-minimal .back-link:hover{ border-color:var(--line-strong); color:var(--text); transform:none; }

/* ---------------------------------------------------------------
   Top nav — hairline, transparent, calm
   --------------------------------------------------------------- */
.theme-minimal .app-nav{
  background:color-mix(in srgb, var(--bg) 72%, transparent);
  backdrop-filter:blur(20px) saturate(1.05);-webkit-backdrop-filter:blur(20px) saturate(1.05);
  border-bottom:1px solid var(--line);
}
.theme-minimal .app-nav .container{ gap:28px; }

.theme-minimal .brand{ gap:14px; }
.theme-minimal .brand-word{
  font-family:var(--font-display);
  font-weight:600;
  letter-spacing:.14em;
  font-size:16px;
  text-transform:uppercase;
}
/* Brand mark: red word becomes quiet white — keep red singular */
.theme-minimal .brand-word b{ color:var(--text); font-weight:600; }

/* Revolver-cylinder mark: dots dimmed to grey; one lights on hover */
.theme-minimal .brand-cyl .cyl-dots circle{ fill:#3a3a3a; transition:fill .4s var(--ease); }
.theme-minimal .brand-cyl:hover .cyl-dots circle{ fill:#555; }
.theme-minimal .brand-cyl svg{ transition:transform 1.2s var(--ease); }
.theme-minimal .brand-cyl:hover svg{ transform:rotate(60deg); }

.theme-minimal .nav-links{ gap:2px; margin-left:18px; }
.theme-minimal .nav-links a{
  font-family:var(--font-accent);
  font-size:12px;letter-spacing:.06em;
  color:var(--text-mute);
  border-radius:0;
  padding:8px 14px;
}
.theme-minimal .nav-links a:hover{ color:var(--text); background:transparent; }
.theme-minimal .nav-links a[aria-current="page"]{ color:var(--text); }
.theme-minimal .nav-links a[aria-current="page"]::after{
  left:14px;right:14px;bottom:-2px;height:1px;
  background:var(--text);border-radius:0;
}

.theme-minimal .nav-actions{ gap:8px; }

/* Buttons — flat, hairline, restrained. No coloured shadows. */
.theme-minimal .btn{
  font-family:var(--font-accent);
  font-weight:500;font-size:12.5px;letter-spacing:.05em;
  text-transform:uppercase;
  padding:12px 22px;
  border:1px solid var(--line-strong);
  border-radius:var(--pill);
  background:transparent;
  transition:background .35s var(--ease), border-color .35s var(--ease), color .35s var(--ease), transform .35s var(--ease);
}
.theme-minimal .btn:hover{ background:transparent; border-color:var(--text); transform:none; }
.theme-minimal .btn:active{ transform:scale(.99); }

/* Primary CTA: solid WHITE on black (the calm, confident default) */
.theme-minimal .btn--primary{
  background:var(--text);color:#0A0A0A;border-color:var(--text);
  box-shadow:none;
}
.theme-minimal .btn--primary:hover{ background:#fff;color:#0A0A0A;border-color:#fff; }

.theme-minimal .btn--ghost{ background:transparent;color:var(--text-dim);border-color:var(--line); }
.theme-minimal .btn--ghost:hover{ background:transparent;color:var(--text);border-color:var(--line-strong); }

.theme-minimal .icon-btn{
  width:40px;height:40px;
  border:1px solid var(--line);
  color:var(--text-mute);
}
.theme-minimal .icon-btn:hover{ border-color:var(--line-strong); color:var(--text); background:transparent; }

/* ---------------------------------------------------------------
   Revolver overlay — pure black; hairline chambers; grey dots that
   light to the lone red on hover; slow quiet hub spin.
   --------------------------------------------------------------- */
.theme-minimal .rev-overlay{ transition:opacity .6s var(--ease), visibility .6s var(--ease); }
.theme-minimal .rev-backdrop{
  background:#0A0A0A;
  backdrop-filter:none;-webkit-backdrop-filter:none;
}
.theme-minimal .rev-close{
  border:1px solid var(--line);color:var(--text-mute);
}
.theme-minimal .rev-close:hover{ border-color:var(--line-strong);color:var(--text);transform:none; }

/* Hub: slow, quiet; strip the red dots to faint grey */
.theme-minimal .rev-hub svg{ animation-duration:48s; }
.theme-minimal .rev-hub .cyl-dots circle{ fill:#2a2a2a; }
.theme-minimal .rev-hub svg circle[stroke]{ stroke:rgba(255,255,255,.10) !important; }

/* Chambers: outline-only ring, small grey dot inside */
.theme-minimal .chamber .dot{
  width:60px;height:60px;
  background:transparent;
  border:1px solid var(--line);
  color:var(--text-dim);
  font-family:var(--font-display);
  font-weight:300;font-size:15px;letter-spacing:.02em;
  box-shadow:none;
  position:relative;
  transition:border-color .4s var(--ease), color .4s var(--ease), transform .4s var(--ease);
}
/* the small grey dot that lights to the lone red */
.theme-minimal .chamber .dot::after{
  content:"";position:absolute;bottom:-13px;left:50%;transform:translateX(-50%);
  width:5px;height:5px;border-radius:50%;
  background:#3a3a3a;
  transition:background .4s var(--ease), box-shadow .4s var(--ease);
}
.theme-minimal .chamber:hover .dot,
.theme-minimal .chamber:focus-visible .dot{
  transform:scale(1.06);
  background:transparent;
  border-color:var(--line-strong);
  color:var(--text);
  box-shadow:none;
}
.theme-minimal .chamber:hover .dot::after,
.theme-minimal .chamber:focus-visible .dot::after{
  background:var(--brand);                 /* the lone red, only on hover */
  box-shadow:0 0 8px rgba(192,39,45,.7);
}
.theme-minimal .chamber .clbl{
  font-family:var(--font-accent);
  font-size:10px;letter-spacing:.24em;color:var(--text-mute);
  margin-top:8px;
}
.theme-minimal .chamber:hover .clbl,
.theme-minimal .chamber:focus-visible .clbl{ color:var(--text-dim); }
.theme-minimal .rev-hint{
  font-family:var(--font-accent);
  font-size:10px;letter-spacing:.28em;color:var(--text-mute);
}

/* ---------------------------------------------------------------
   Hero — spacious, calm, type-driven. Key art understated.
   --------------------------------------------------------------- */
.theme-minimal .hero{ align-items:center; min-height:var(--hero-min); }
.theme-minimal .hero__bg{
  object-position:center 28%;
  filter:saturate(.82) brightness(.62) contrast(1.02);
}
/* understated, not a loud scrim — let the art breathe but keep text crisp */
.theme-minimal .hero__scrim{
  background:var(--hero-overlay), var(--hero-side-overlay);
}
.theme-minimal .hero__inner{ padding-bottom:0; max-width:var(--maxw); }

.theme-minimal .hero__kicker{
  font-family:var(--font-accent);
  font-style:normal;
  font-weight:500;
  color:var(--text-dim);
  font-size:11px;letter-spacing:.32em;text-transform:uppercase;
  margin-bottom:24px;
}
.theme-minimal .hero__title{
  font-family:var(--font-display);
  font-weight:200;
  letter-spacing:-0.035em;
  line-height:.98;
  font-size:clamp(56px,11vw,150px);
  max-width:none;
  text-shadow:none;
}
.theme-minimal .hero__meta{
  font-family:var(--font-accent);
  margin-top:26px;
  font-size:12px;letter-spacing:.06em;color:var(--text-dim);
  gap:12px;
}
.theme-minimal .hero__meta .sep{ color:var(--text-mute); }
.theme-minimal .hero__synopsis{
  margin-top:22px;max-width:54ch;
  color:var(--text-dim);font-size:15px;line-height:1.75;font-weight:300;
}
.theme-minimal .hero__actions{ margin-top:34px;gap:12px; }

/* Studio badge: flat hairline pill, quiet label */
.theme-minimal .studio-badge{
  font-family:var(--font-accent);
  padding:11px 18px;
  border:1px solid var(--line);background:transparent;
  font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim);
  backdrop-filter:none;-webkit-backdrop-filter:none;
}
.theme-minimal .studio-badge:hover{ border-color:var(--line-strong);background:transparent;color:var(--text); }
.theme-minimal .studio-badge b{ color:var(--text); font-weight:600; }

/* hero pill (NEW · Premiere) — quiet, white text, no gold */
.theme-minimal .pill{
  font-family:var(--font-accent);
  border:1px solid var(--line);background:transparent;color:var(--text-dim);
  font-size:11px;letter-spacing:.08em;text-transform:uppercase;
}
.theme-minimal .pill .score{ color:var(--text);font-weight:600; }

/* ---------------------------------------------------------------
   Rails — generous spacing, quiet headings, hairline controls
   --------------------------------------------------------------- */
.theme-minimal .rail-section{ margin-top:clamp(56px,9vh,104px); }
.theme-minimal .rail-head{ margin-bottom:26px; align-items:baseline; }
.theme-minimal .rail-head h2{
  font-family:var(--font-display);
  font-weight:300;
  letter-spacing:-0.01em;
  font-size:clamp(20px,2.6vw,28px);
}
.theme-minimal .rail-head .see-all{
  font-family:var(--font-accent);
  font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--text-mute);
}
.theme-minimal .rail-head .see-all:hover{ color:var(--text); }

.theme-minimal .rail{ gap:22px; padding-bottom:18px; }
.theme-minimal .rail > .card{ flex:0 0 clamp(150px,18vw,184px); }

/* Rail buttons: flat hairline circles, white (no red) hover */
.theme-minimal .rail__btn{
  width:40px;height:40px;
  background:rgba(10,10,10,.7);
  border:1px solid var(--line);color:var(--text-dim);
  box-shadow:none;
  backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);
}
.theme-minimal .rail__btn:hover{
  background:rgba(10,10,10,.92);border-color:var(--text);color:var(--text);
  transform:translateY(-50%) scale(1);
}

/* ---------------------------------------------------------------
   Poster card — minimal, subtle hover (slight scale/opacity only)
   --------------------------------------------------------------- */
.theme-minimal .card{
  background:transparent;
  border-radius:0;
  transition:transform .5s var(--ease), opacity .5s var(--ease);
}
.theme-minimal .card:hover{ transform:none; box-shadow:none; }
.theme-minimal .card:hover .card__art{ transform:scale(1.012); }
.theme-minimal .card:hover .card__art img{ transform:none; opacity:.92; }

.theme-minimal .card__art{
  border-radius:var(--card-radius);
  border:1px solid var(--line);
  background:var(--surface-2);
  transition:transform .5s var(--ease), border-color .5s var(--ease);
}
.theme-minimal .card:hover .card__art{ border-color:var(--line-strong); }
.theme-minimal .card__art img{ transition:opacity .5s var(--ease); }

/* Badge: tiny, flat, uppercase grey */
.theme-minimal .card__badge{
  top:8px;left:8px;
  font-family:var(--font-accent);
  font-size:9px;letter-spacing:.14em;
  padding:4px 8px;border-radius:0;
  background:rgba(10,10,10,.7);color:var(--text-dim);
  border:1px solid var(--line);
  backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);
}

/* Play affordance on hover: hairline ring, white — no red bubble */
.theme-minimal .card__play{
  width:46px;height:46px;
  background:rgba(10,10,10,.55);
  color:var(--text);
  border:1px solid rgba(255,255,255,.55);
  box-shadow:none;
  backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);
}

/* Progress: thin hairline line, not a chunky bar. White fill. */
.theme-minimal .card__progress{
  height:1.5px;background:rgba(255,255,255,.16);
}
.theme-minimal .card__progress > i{ background:var(--text); }

.theme-minimal .card__title{
  font-family:var(--font-display);
  margin:14px 1px 3px;
  font-size:13.5px;font-weight:500;letter-spacing:-0.005em;color:var(--text);
}
.theme-minimal .card__meta{
  font-family:var(--font-accent);
  font-size:10.5px;letter-spacing:.06em;color:var(--text-mute);
}

/* ---------------------------------------------------------------
   Studios strip — flat hairline tiles, no red gradient wash
   --------------------------------------------------------------- */
.theme-minimal .studios{ gap:14px; }
.theme-minimal .studio-card{
  min-height:128px;padding:22px;
  border-radius:var(--radius);
  border:1px solid var(--line);
  background:var(--surface);
  transition:border-color .4s var(--ease), background .4s var(--ease), transform .4s var(--ease);
}
.theme-minimal .studio-card:hover{
  transform:none;border-color:var(--line-strong);background:var(--surface-2);box-shadow:none;
}
.theme-minimal .studio-card .studio-card__eyebrow{
  font-family:var(--font-accent);
  font-size:9.5px;letter-spacing:.28em;color:var(--text-mute);
}
.theme-minimal .studio-card .studio-card__name{
  font-family:var(--font-display);
  font-weight:300;letter-spacing:-0.01em;
  font-size:19px;color:var(--text);margin-top:10px;
}

/* ---------------------------------------------------------------
   Footer — calm, hairline, generous
   --------------------------------------------------------------- */
.theme-minimal .footer{
  margin-top:clamp(80px,12vh,140px);
  border-top:1px solid var(--line);
  background:var(--bg);
}
.theme-minimal .footer .container{ padding-block:64px; }
.theme-minimal .footer__brand .brand-word{ font-size:18px;letter-spacing:.14em; }
.theme-minimal .footer__tagline{
  font-family:var(--font-accent);
  font-style:normal;
  color:var(--text-mute);
  font-size:12px;letter-spacing:.06em;margin-top:14px;
}
.theme-minimal .footer__logo{
  height:30px;background:#fff;border-radius:4px;padding:5px 9px;margin-top:22px;
}
.theme-minimal .footer__col h3{
  font-family:var(--font-accent);
  font-weight:500;font-size:10px;letter-spacing:.28em;color:var(--text-mute);margin-bottom:18px;
}
.theme-minimal .footer__col a{
  font-family:var(--font-accent);
  color:var(--text-dim);font-size:12.5px;letter-spacing:.02em;
}
.theme-minimal .footer__col a:hover{ color:var(--text); }
.theme-minimal .social a{
  width:38px;height:38px;border:1px solid var(--line);color:var(--text-mute);
}
.theme-minimal .social a:hover{ border-color:var(--line-strong);color:var(--text);transform:none; }
.theme-minimal .footer__legal{
  margin-top:48px;padding-top:26px;
  font-family:var(--font-accent);
  font-size:10.5px;letter-spacing:.1em;color:var(--text-mute);
}

/* ---------------------------------------------------------------
   Browse — big quiet title, hairline search + chips
   --------------------------------------------------------------- */
.theme-minimal .browse-head{ padding-top:clamp(48px,8vh,88px); }
.theme-minimal .section-eyebrow{
  font-family:var(--font-accent);
  font-weight:500;text-transform:uppercase;
  font-size:10px;letter-spacing:.34em;color:var(--text-mute);
  margin-bottom:18px;
}
.theme-minimal .browse-head h1{
  font-family:var(--font-display);
  font-weight:200;letter-spacing:-0.04em;line-height:.96;
  font-size:clamp(48px,9vw,108px);
}
.theme-minimal .browse-head .browse-sub{
  color:var(--text-dim);margin-top:18px;max-width:50ch;font-size:14.5px;font-weight:300;
}
.theme-minimal .search{ margin-top:34px;max-width:520px; }
.theme-minimal .search input{
  background:transparent;
  border:1px solid var(--line);
  border-radius:0;
  padding:15px 18px 15px 48px;
  font-family:var(--font-accent);
  font-size:14px;letter-spacing:.02em;
  transition:border-color .3s var(--ease);
}
.theme-minimal .search input::placeholder{ color:var(--text-mute); }
.theme-minimal .search input:focus{ border-color:var(--text);box-shadow:none; }
.theme-minimal .search .search__icon{ color:var(--text-mute); }

.theme-minimal .filters{ margin-top:30px;gap:16px; }
.theme-minimal .filter-group .filter-label{
  font-family:var(--font-accent);
  font-size:9.5px;letter-spacing:.26em;color:var(--text-mute);min-width:58px;
}
.theme-minimal .chip{
  font-family:var(--font-accent);
  padding:7px 15px;border-radius:var(--pill);
  border:1px solid var(--line);background:transparent;color:var(--text-mute);
  font-size:11.5px;letter-spacing:.04em;
  transition:border-color .3s var(--ease), color .3s var(--ease), background .3s var(--ease);
}
.theme-minimal .chip:hover{ border-color:var(--line-strong);color:var(--text); }
/* active chip: subtle white fill — NOT red */
.theme-minimal .chip.is-active{
  background:var(--text);border-color:var(--text);color:#0A0A0A;
}

.theme-minimal .grid{ margin-top:48px;gap:26px; }
@media (max-width:1100px){ .theme-minimal .grid{ gap:22px; } }
@media (max-width:720px){ .theme-minimal .grid{ gap:16px; } }

/* ---------------------------------------------------------------
   Series detail
   --------------------------------------------------------------- */
.theme-minimal .series-hero{ min-height:52vh; }
.theme-minimal .series-hero__bg{ filter:saturate(.82) brightness(.6) contrast(1.02); }
.theme-minimal .series__layout{ gap:40px; }
.theme-minimal .series__poster{
  border-radius:var(--radius);
  border:1px solid var(--line-strong);
  box-shadow:var(--shadow-2);
}
.theme-minimal .series__kicker{
  font-family:var(--font-accent);font-style:normal;
  color:var(--text-dim);font-size:11px;letter-spacing:.3em;text-transform:uppercase;margin-bottom:12px;
}
.theme-minimal .series__title{
  font-family:var(--font-display);
  font-weight:200;letter-spacing:-0.035em;line-height:.98;
  font-size:clamp(42px,7vw,88px);
  text-shadow:none;
}
.theme-minimal .series__meta{
  font-family:var(--font-accent);
  margin-top:16px;font-size:12px;letter-spacing:.05em;color:var(--text-dim);
}
.theme-minimal .series__body{ margin-top:80px; }
.theme-minimal .series__synopsis{
  max-width:64ch;color:var(--text-dim);font-size:16px;line-height:1.8;font-weight:300;
}
.theme-minimal .series__actions{ margin-top:30px;gap:12px; }
.theme-minimal .studio-link{
  font-family:var(--font-accent);
  color:var(--text-dim);font-size:12px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;
}
.theme-minimal .studio-link:hover{ gap:13px;color:var(--text); }

/* Episodes — flat rows, hairline separators, subtle hover */
.theme-minimal .section-title{
  font-family:var(--font-display);
  font-weight:300;letter-spacing:-0.01em;
  font-size:clamp(22px,3vw,30px);margin-bottom:26px;
}
.theme-minimal .episodes{ margin-top:56px;gap:0; }
.theme-minimal .ep{
  border:0;
  border-top:1px solid var(--line);
  border-radius:0;
  background:transparent;
  padding:20px 6px;
  gap:24px;
  transition:opacity .35s var(--ease);
}
.theme-minimal .episodes .ep:last-child{ border-bottom:1px solid var(--line); }
.theme-minimal .ep:hover{ border-color:var(--line);background:transparent;transform:none;opacity:.78; }
.theme-minimal .ep__thumb{ border-radius:var(--radius-sm);border:1px solid var(--line); }
.theme-minimal .ep__num{
  font-family:var(--font-accent);
  font-size:9.5px;letter-spacing:.12em;border-radius:0;
  background:rgba(10,10,10,.7);color:var(--text-dim);border:1px solid var(--line);
}
.theme-minimal .ep__title{ font-family:var(--font-display);font-weight:500;font-size:15px; }
.theme-minimal .ep__desc{ font-family:var(--font-accent);font-size:12px;color:var(--text-mute); }
.theme-minimal .ep__dur{ font-family:var(--font-accent);font-size:11px;letter-spacing:.06em;color:var(--text-mute); }
.theme-minimal .ep__progress{ height:1.5px;border-radius:0;background:rgba(255,255,255,.16);margin-top:14px; }
.theme-minimal .ep__progress > i{ background:var(--text); }

/* Cast — flat hairline tiles, mono-tone avatar */
.theme-minimal .cast{ gap:14px; }
.theme-minimal .cast__person{
  border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);
}
.theme-minimal .cast__avatar{
  background:var(--surface-2);
  border:1px solid var(--line);
  color:var(--text-dim);
  font-family:var(--font-display);font-weight:400;
}
.theme-minimal .cast__name{ font-family:var(--font-display);font-weight:500;font-size:13.5px; }
.theme-minimal .cast__role{ font-family:var(--font-accent);font-size:11px;color:var(--text-mute); }

/* ---------------------------------------------------------------
   Player — calm stage, thin scrubber w/ the lone red active line
   --------------------------------------------------------------- */
.theme-minimal .player{ padding-top:clamp(32px,5vh,56px); }
.theme-minimal .stage{
  border-radius:var(--radius);
  border:1px solid var(--line);
  background:#000;
}
.theme-minimal .stage__vignette{
  background:radial-gradient(120% 80% at 50% 120%, rgba(0,0,0,.45), transparent 60%);
}

/* Center play/pause: hairline white ring, NOT a red bubble */
.theme-minimal [data-playtoggle]{
  width:78px;height:78px;
  background:rgba(10,10,10,.4);
  color:var(--text);
  border:1px solid rgba(255,255,255,.6);
  box-shadow:none;
  backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);
  transition:transform .3s var(--ease), background .3s var(--ease), border-color .3s var(--ease);
}
.theme-minimal [data-playtoggle]:hover{
  transform:scale(1.04);background:rgba(10,10,10,.55);border-color:#fff;
}

/* X-Ray overlay — quiet black, hairline cards.
   The ONE red detail in the player lives here: the paused dot. */
.theme-minimal .xray{
  background:linear-gradient(0deg, rgba(10,10,10,.95) 30%, transparent);
}
.theme-minimal .xray__badge{
  font-family:var(--font-accent);
  font-weight:500;font-size:10px;letter-spacing:.28em;color:var(--text-dim);
  margin-bottom:18px;
}
.theme-minimal .xray__badge::before{
  width:6px;height:6px;
  background:var(--brand);                 /* the lone red dot — paused signal */
  box-shadow:0 0 10px rgba(192,39,45,.75);
}
.theme-minimal .xray__cards{ gap:12px; }
.theme-minimal .xray__card{
  border:1px solid var(--line);border-radius:var(--radius);
  background:rgba(14,14,14,.82);
  backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);
}
.theme-minimal .xray__avatar{
  background:var(--surface-2);border:1px solid var(--line);color:var(--text-dim);
  font-family:var(--font-display);font-weight:400;
}
.theme-minimal .xray__char{ font-family:var(--font-display);font-weight:600;font-size:14px; }
.theme-minimal .xray__va{ font-family:var(--font-accent);font-size:11px;color:var(--text-dim); }
.theme-minimal .xray__note{ font-family:var(--font-accent);font-size:11px;color:var(--text-mute);line-height:1.5; }

/* Controls — flat hairline shelf */
.theme-minimal .controls{
  margin-top:18px;padding:16px 18px;
  border:1px solid var(--line);border-radius:var(--radius);background:transparent;
}
.theme-minimal .controls .ctrl-btn{ color:var(--text-mute);border-radius:6px; }
.theme-minimal .controls .ctrl-btn:hover{ color:var(--text);background:transparent; }
/* CC toggle stays in the quiet palette — white fill when active, not red */
.theme-minimal .controls .ctrl-btn--cc{ border-color:var(--line); color:var(--text-mute); }
.theme-minimal .controls .ctrl-btn--cc.is-active{
  background:var(--text);color:#0A0A0A;border-color:var(--text);
}
.theme-minimal .controls .ctrl-btn--cc.is-active:hover{ background:#fff; }
.theme-minimal .controls .time{
  font-family:var(--font-accent);font-size:11.5px;letter-spacing:.04em;color:var(--text-mute);
}

/* Scrubber: THIN line. The played portion is the lone red accent. */
.theme-minimal .scrubber{
  height:2px;border-radius:0;background:rgba(255,255,255,.16);
}
.theme-minimal .scrubber > i{ border-radius:0;background:var(--brand); }
.theme-minimal .scrubber::after{
  width:10px;height:10px;
  background:#fff;
  box-shadow:0 0 0 1px var(--brand);
}

/* Up next — flat hairline card */
.theme-minimal .upnext{
  margin-top:14px;padding:16px;
  border:1px solid var(--line);border-radius:var(--radius);background:transparent;
}
.theme-minimal .upnext__thumb{ border-radius:var(--radius-sm);border:1px solid var(--line); }
.theme-minimal .upnext__eyebrow{
  font-family:var(--font-accent);font-size:9.5px;letter-spacing:.24em;color:var(--text-mute);
}
.theme-minimal .upnext__title{ font-family:var(--font-display);font-weight:500;font-size:15px; }
.theme-minimal .upnext__count{ font-family:var(--font-accent);font-size:11.5px;color:var(--text-dim); }

/* Meta block + credits — hairline divider, quiet credits */
.theme-minimal .meta-block{ margin-top:48px;gap:48px; }
.theme-minimal .meta-block .meta-synopsis{
  color:var(--text-dim);font-size:15px;line-height:1.8;font-weight:300;
}
.theme-minimal .licensor{
  font-family:var(--font-accent);
  font-size:10px;letter-spacing:.1em;color:var(--text-mute);margin-top:26px;
}
.theme-minimal .credits{ border-left:1px solid var(--line);padding-left:28px; }
.theme-minimal .credits dl{ gap:11px 18px; }
.theme-minimal .credits dt{
  font-family:var(--font-accent);
  font-size:9.5px;letter-spacing:.2em;color:var(--text-mute);
}
.theme-minimal .credits dd{ font-family:var(--font-accent);font-size:12.5px;color:var(--text); }

/* Player eyebrow + title (uses .section-eyebrow / .section-title) */
.theme-minimal .player .section-eyebrow{ color:var(--text-mute); }
.theme-minimal .player > .section-title{
  font-family:var(--font-display);
  font-weight:200;letter-spacing:-0.035em;line-height:1;
  font-size:clamp(34px,5.5vw,64px);margin-bottom:30px;
}

/* ---------------------------------------------------------------
   Bits
   --------------------------------------------------------------- */
.theme-minimal .badge{
  font-family:var(--font-accent);
  font-size:9.5px;letter-spacing:.14em;border-radius:0;
  background:transparent;color:var(--text-dim);border:1px solid var(--line);
}
.theme-minimal .progress{ height:1.5px;border-radius:0;background:rgba(255,255,255,.16); }
.theme-minimal .progress > i{ background:var(--text); }

/* ---------------------------------------------------------------
   Responsive niceties (1280 → mobile)
   --------------------------------------------------------------- */
@media (max-width:900px){
  .theme-minimal .nav-links{ display:none; }   /* lean on the revolver menu */
}
@media (max-width:760px){
  .theme-minimal .studios{ gap:12px; }
  .theme-minimal .meta-block{ gap:30px; }
  .theme-minimal .credits{ border-left:0;border-top:1px solid var(--line);padding-left:0;padding-top:26px; }
}
@media (max-width:620px){
  .theme-minimal .hero__title{ font-size:clamp(40px,13vw,72px); }
  .theme-minimal .browse-head h1{ font-size:clamp(40px,13vw,72px); }
  .theme-minimal .series__title{ font-size:clamp(36px,11vw,72px); }
  .theme-minimal .controls{ flex-wrap:wrap; }
}
