/* Magnetic tapes, version 2 (inc/reels-v2.php, template-parts/reels-v2.php, assets/js/tapes-v2.js).
   Colours follow the archive's dimensions: people terracotta, music navy, works orange, language ochre,
   companies olive, places powder blue. Logical properties throughout: the Arabic page runs right to left. */
.tv, .tv-inline { --tv-navy:#32365f; --tv-terra:#b84329; --tv-orange:#ef6530; --tv-orange-ink:#a8360c; --tv-ochre:#d4ad52; --tv-olive:#5f6f35; --tv-blue:#a8c5dc; --tv-pale:#eef4f9; --tv-line:#d9d9d3; --tv-ink:var(--ink, #1d1d1a); }
.tv [lang="ar"] { font-family:var(--font-ar); }
:where(.tv) button { font:inherit; color:inherit; cursor:pointer; }
.tv-tools[hidden] { display:none !important; }
.tv-chip-play svg { flex:none; }

/* sections */
.tv-sec { margin-top:44px; scroll-margin-top:calc(var(--head-b, 160px) + 16px); }
.tv-sec:first-of-type { margin-top:18px; }
.tv .tv-afac { margin:18px 0 6px; color:#4a4a44; }
.tv .tv-afac img { width:200px; }
.tv-head { display:flex; flex-wrap:wrap; align-items:baseline; justify-content:space-between; gap:6px 28px; padding-top:14px; border-top:1px solid var(--tv-ink); }
.tv-h2 { margin:0; font-size:clamp(22px, 2.2vw, 30px); line-height:1.1; font-weight:500; letter-spacing:-.04em; text-transform:uppercase; }
.lang-ar .tv-h2 { letter-spacing:0; text-transform:none; font-weight:600; }
.tv-h3 { margin:0; font-size:13px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.lang-ar .tv-h3 { font-size:15px; letter-spacing:0; }
.tv-lede { margin:0; max-width:76ch; font-size:var(--text-small, 15px); line-height:1.6; color:#3d3d38; }
.tv-kicker { margin:0; font-size:12px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; color:var(--tv-orange-ink); }
.lang-ar .tv-kicker { font-size:14px; letter-spacing:0; }
.tv-muted { color:var(--muted, #6b6b64); }
.tv-col { display:flex; justify-content:space-between; gap:12px; margin:0 0 8px; font-size:12px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.lang-ar .tv-col { font-size:14px; letter-spacing:0; }
.tv-col small { font-weight:600; opacity:.75; letter-spacing:0; }
.tv-col--plain { justify-content:flex-start; }
.tv-link { display:inline-flex; align-items:center; gap:6px; min-height:36px; padding:0; border:0; background:none; font-size:14px; font-weight:700; text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:4px; }
.tv-link:hover { text-decoration-thickness:2px; }
.tv-link--light { color:#fff; }

/* tags */
.tv-tags { display:flex; flex-wrap:wrap; gap:4px; margin:5px 0 0; }
.tv-tag { display:inline-flex; align-items:center; min-height:22px; padding:1px 7px; border:0; background:#e8edf2; color:#34425c; font-size:11.5px; font-weight:700; line-height:1.3; white-space:nowrap; }
.lang-ar .tv-tag { font-size:13px; }
.tv-tag--f { background:#f3e7c6; color:#4b4229; }
.tv-tag--w { background:#fde2d5; color:#7a2e10; }
button.tv-tag--w:hover { background:var(--tv-orange); color:#1f140e; }
.tv-tag--radio { background:var(--tv-navy); color:#fff; }
.tv-tag--film { background:var(--tv-olive); color:#fff; }
.tv-tag--priv { background:#f2ddd5; color:#8f2f1b; }
.tv-tag--talk { background:#3d6a91; color:#fff; }
.tv-tag--disc { background:#e8c26a; color:#1f1d16; }

/* ways on ("Continue on AMAR") */
.tv-gos { display:grid; grid-template-columns:repeat(auto-fill, minmax(200px, 1fr)); gap:10px; margin-top:12px; }
.tv-go { display:flex; flex-direction:column; align-items:flex-start; gap:2px; padding:9px 12px 10px; border:1px solid var(--tv-line); border-top:4px solid var(--c, var(--tv-navy)); background:#fff; color:var(--tv-ink); text-align:start; text-decoration:none; }
.tv-go small { font-size:11px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; color:#5b5b55; }
.lang-ar .tv-go small { font-size:12.5px; letter-spacing:0; }
.tv-go b { font-size:14px; line-height:1.35; }
.tv-go:hover { background:#f5f7f9; }

/* ---- one piece, two ages */
.tv-tabs { display:grid; grid-template-columns:repeat(4, minmax(0, 1fr)); margin-top:18px; border:1px solid var(--tv-ink); }
.tv-tab { display:flex; flex-direction:column; gap:2px; padding:10px 14px 12px; border:0; border-inline-end:1px solid var(--tv-ink); background:#fff; text-align:start; }
.tv-tab:last-child { border-inline-end:0; }
.tv-tab:hover { background:#fff4ee; }
.tv-tab[aria-pressed="true"] { background:var(--tv-orange); color:#1f140e; }
.tv-tab__ar { font-size:21px; font-weight:700; line-height:1.35; }
.tv-tab__la { font-size:13.5px; font-weight:700; }
.tv-tab__n { font-size:12px; color:#4a4a44; }
.tv-tab[aria-pressed="true"] .tv-tab__n { color:#1f140e; }
.tv-bridge { margin-top:26px; }
.tv-piece__top { display:grid; grid-template-columns:minmax(0, 1fr) auto; gap:8px 32px; align-items:end; }
.tv-piece__la { margin:6px 0 0; font-size:clamp(28px, 3vw, 42px); line-height:1.05; font-weight:500; letter-spacing:-.04em; }
.tv-piece__ar { margin:0; font-size:clamp(46px, 5.6vw, 78px); line-height:1.1; font-weight:700; color:var(--tv-orange); text-align:end; }
.lang-ar .tv-piece__top { grid-template-columns:minmax(0, 1fr); }
.lang-ar .tv-piece__ar { order:-1; text-align:start; }
.tv-piece__lede { margin-top:14px; font-size:var(--text-body, 17px); color:var(--tv-ink); }
.tv-bridge__grid { display:grid; grid-template-columns:minmax(0, 1fr) 58px minmax(0, 1.2fr); margin-top:20px; border:1px solid var(--tv-ink); }
.tv-bridge__room { padding:18px 20px 16px; background:var(--tv-navy); color:#fff; }
.tv-bridge__room .tv-col span + span { color:#c3c6de; }
.tv-bridge__age { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:10px; border-inline:1px solid var(--tv-ink); background:#fff; }
.tv-bridge__arrow { font-size:26px; line-height:1; }
.tv-bridge__word { writing-mode:vertical-rl; font-size:11px; font-weight:800; letter-spacing:.14em; text-transform:uppercase; }
.lang-ar .tv-bridge__word { font-size:13px; letter-spacing:0; }
.tv-bridge__reels { padding:18px 20px 12px; background:var(--tv-pale); min-width:0; }
.tv-discs, .tv-tapes { list-style:none; margin:0; padding:0; }
.tv-disc { display:grid; grid-template-columns:68px minmax(0, 1fr) auto; gap:14px; align-items:center; padding:10px 0; border-top:1px solid rgba(255,255,255,.16); }
.tv-disc__pic img, .tv-disc__drawn { display:block; width:68px; height:68px; border-radius:50%; object-fit:cover; background:#111; }
.tv-disc__drawn { background:radial-gradient(circle, #e8c26a 0 21%, #111 22% 100%); box-shadow:inset 0 0 0 1px rgba(255,255,255,.2); }
.tv-disc__txt { display:flex; flex-direction:column; min-width:0; }
.tv-disc__y { font-size:24px; line-height:1; font-weight:500; letter-spacing:-.03em; color:#e8c26a; }
.tv-disc__a { margin-top:4px; font-size:15px; font-weight:700; line-height:1.3; }
.tv-disc__c { font-size:13px; color:#c3c6de; }
.tv-disc__ep { margin-top:2px; font-size:12.5px; color:#fff; }
.tv-play { display:inline-flex; align-items:center; gap:7px; min-height:40px; padding:0 13px; border:1px solid rgba(255,255,255,.55); border-radius:999px; background:transparent; color:#fff; font-size:13px; font-weight:800; white-space:nowrap; }
.tv-play svg .s, .tv-play.is-playing svg .p { display:none; }
.tv-play.is-playing svg .s { display:inline; }
.tv-play:hover, .tv-play.is-playing { background:#fff; color:var(--tv-navy); }
.tv-noroom { margin:6px 0 0; font-size:15px; line-height:1.5; color:#dfe1ef; }
.tv-tape { display:grid; grid-template-columns:64px minmax(0, 1fr) auto; gap:12px; align-items:start; padding:8px 0; border-top:1px solid #c9d8e5; }
.tv-tape__reel { min-height:32px; padding:2px 0; border:0; background:none; font-size:14px; font-weight:800; text-align:start; text-decoration:underline; text-underline-offset:3px; text-decoration-color:transparent; }
.tv-tape__reel span { font-weight:600; color:#5b6474; }
.tv-tape__reel:hover { text-decoration-color:currentColor; }
.tv-tape__txt { display:flex; flex-direction:column; gap:1px; min-width:0; }
.tv-tape__by { font-size:14.5px; font-weight:700; line-height:1.35; }
.tv-tape__t { font-size:15px; line-height:1.45; color:#2e3440; }
.tv-tape__note { font-size:13px; color:#5b6474; }
.tv-name { padding:0; border:0; background:none; font-weight:700; text-align:start; text-decoration:underline; text-decoration-color:rgba(29,29,26,.3); text-underline-offset:3px; }
.tv-name.has-voice { text-decoration-color:var(--tv-terra); text-decoration-thickness:2px; }
.tv-name:hover { color:var(--tv-terra); }
.tv-bridge__more { display:flex; flex-wrap:wrap; justify-content:space-between; gap:4px 20px; margin:6px 0 0; }

/* the pieces in both archives */
.tv-both { margin-top:34px; }
.tv-both .tv-tools { margin-top:10px; padding:12px 14px; background:var(--tv-blue); color:#1c2433; --sec-fg:#1c2433; --sec-tool:rgba(255,255,255,.45); --sec-tool-line:rgba(28,36,51,.3); --tool-ink:#1c2433; }
.tv-both .tv-tools .ed-count { color:#1c2433; }
.tv-list { display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:0 28px; list-style:none; margin:10px 0 0; padding:0; border-top:2px solid var(--tv-ink); }
.tv-card { display:flex; flex-direction:column; gap:3px; width:100%; padding:12px 0 13px; border:0; border-bottom:1px solid var(--tv-line); background:none; text-align:start; }
.tv-card__top { display:flex; justify-content:space-between; align-items:baseline; gap:12px; }
.tv-card__la { font-size:15.5px; line-height:1.3; }
.tv-card__ar { font-size:19px; font-weight:700; line-height:1.35; color:var(--tv-orange-ink); }
.lang-ar .tv-card__ar { color:var(--tv-ink); }
.tv-card__meta { font-size:12.5px; color:#5b5b55; }
.tv-card__n { display:flex; flex-wrap:wrap; align-items:center; gap:4px 8px; margin-top:4px; font-size:12px; font-weight:700; color:#3d4152; }
.tv-dots { display:inline-flex; gap:2px; }
.tv-dots i { width:9px; height:9px; border-radius:50%; }
.tv-dots--d i { background:var(--tv-navy); box-shadow:inset 0 0 0 3px var(--tv-navy), inset 0 0 0 4px #e8c26a; }
.tv-dots--t i { border:2.5px solid #7fa6c6; box-sizing:border-box; }
.tv-card__play { display:inline-flex; align-items:center; gap:5px; margin-inline-start:auto; padding:1px 8px; background:var(--tv-navy); color:#fff; }
.tv-card__play svg { width:9px; height:9px; }
.tv-card__play svg .s { display:none; }
.tv-card:hover .tv-card__la, .tv-card:hover .tv-card__ar { text-decoration:underline; text-underline-offset:4px; }
.tv-card.is-on { box-shadow:inset 3px 0 0 var(--tv-orange); padding-inline-start:10px; }
.lang-ar .tv-card.is-on { box-shadow:inset -3px 0 0 var(--tv-orange); }
.tv-none { margin:12px 0 0; color:var(--muted, #6b6b64); }
.tv-more { display:inline-flex; align-items:center; min-height:44px; margin-top:14px; padding:0 18px; border:1px solid var(--tv-ink); border-radius:999px; background:#fff; font-size:14px; font-weight:700; }
.tv-more:hover { background:var(--tv-ink); color:#fff; }
.tv-more[hidden] { display:none; }

/* ---- the shelf */
.tv-lenses { display:flex; flex-wrap:wrap; gap:8px; margin-top:16px; }
.tv-lens { display:inline-flex; align-items:center; gap:8px; min-height:38px; padding:0 14px; border:1px solid #b9b9b2; border-radius:999px; background:#fff; font-size:13.5px; font-weight:700; }
.lang-ar .tv-lens { font-size:14.5px; }
.tv-lens small { font-weight:600; color:#5b5b55; }
.tv-lens[aria-pressed="true"] small { color:inherit; }
.tv-lens__sw { width:12px; height:12px; border-radius:50%; background:var(--c); }
.tv-lens[aria-pressed="true"] { background:var(--c); border-color:var(--c); color:var(--k); }
.tv-lens[aria-pressed="true"] .tv-lens__sw { box-shadow:0 0 0 2px var(--k); }
.tv-lens:hover { border-color:var(--tv-ink); }
.tv-lit { margin:10px 0 0; font-size:14px; color:#4a4a44; min-height:1.5em; }
.tv-shelves { display:flex; flex-direction:column; gap:18px; margin-top:16px; overflow-x:auto; padding:8px 2px 4px; }
.tv-row { min-width:900px; }
.tv-spines { display:flex; align-items:flex-end; gap:2px; height:118px; border-bottom:5px solid var(--tv-ink); }
.tv-spine { flex:1 1 8px; max-width:15px; height:var(--h); padding:4px 0 0; border:0; background:#e6ebf0; color:#738093; display:flex; justify-content:center; align-items:flex-start; transition:transform .12s ease, background-color .15s; }
.tv-spine span { writing-mode:vertical-rl; transform:rotate(180deg); font-size:8.5px; font-weight:700; line-height:1; font-family:Manrope, sans-serif; }
.tv-spine.is-lit { background:var(--lc); color:var(--lk); }
.tv-spine:hover { transform:translateY(-6px); }
.tv-spine.is-on { background:#1c2433; color:#fff; box-shadow:0 0 0 2px #fff, 0 0 0 4px #1c2433; position:relative; z-index:1; }
.tv-spine:focus-visible { outline:2px solid #1c2433; outline-offset:2px; }
.tv-row__foot { display:flex; justify-content:space-between; margin:5px 0 0; font-size:11px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; color:#6b6b64; }
.lang-ar .tv-row__foot { font-size:12.5px; letter-spacing:0; }
.tv-picks { display:flex; flex-wrap:wrap; align-items:center; gap:8px; margin-top:18px; }
.tv-picks__label { margin-inline-end:6px; font-size:11.5px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; color:#4a4a44; }
.lang-ar .tv-picks__label { font-size:13.5px; letter-spacing:0; }
.tv-pick { min-height:36px; padding:0 13px; border:1px solid var(--tv-ink); border-radius:999px; background:#fff; font-size:13px; font-weight:600; }
.tv-pick b { font-weight:800; }
.tv-pick[aria-pressed="true"], .tv-pick:hover { background:#1c2433; color:#fff; border-color:#1c2433; }
.tv-reel { display:grid; grid-template-columns:270px minmax(0, 1fr); margin-top:20px; border:1px solid var(--tv-ink); min-height:200px; }
.tv-reel__id { display:flex; flex-direction:column; gap:10px; padding:22px 22px 20px; background:#1c2433; color:#fff; }
.tv-reel__svg { width:110px; height:110px; color:var(--tv-blue); }
.tv-reel__k { margin:0; font-size:12px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; color:var(--tv-blue); }
.lang-ar .tv-reel__k { font-size:14px; letter-spacing:0; }
.tv-reel__n { margin:-8px 0 0; font-size:60px; line-height:.95; font-weight:500; letter-spacing:-.05em; }
.tv-reel__c { margin:0; font-size:14px; color:#d6e3ee; }
.tv-reel__s { margin:0; font-size:15px; line-height:1.5; }
.tv-reel__id .tv-link { margin-top:auto; }
.tv-reel__body { padding:18px 22px 18px; min-width:0; }
.tv-sides { display:grid; grid-template-columns:repeat(auto-fit, minmax(200px, 1fr)); gap:18px; }
.tv-side__h { display:flex; justify-content:space-between; margin:0 0 2px; padding-bottom:6px; border-bottom:2px solid var(--tv-ink); font-size:12px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.lang-ar .tv-side__h { font-size:14px; letter-spacing:0; }
.tv-side__h span + span { color:#6b6b64; }
.tv-side ol { list-style:none; margin:0; padding:0; }
.tv-side li { display:flex; flex-direction:column; padding:8px 0; border-bottom:1px solid #e3e3dd; }
.tv-side__t { font-size:15.5px; font-weight:600; line-height:1.45; }
.tv-side__by { margin-top:1px; font-size:13px; color:#4a4a44; }
.tv-reel__body .tv-col { margin-top:16px; padding-top:12px; border-top:1px solid var(--tv-ink); }

/* ---- the radio programmes */
.tv-progs { list-style:none; margin:14px 0 0; padding:0; border-top:2px solid var(--tv-ink); }
.tv-prog { display:grid; grid-template-columns:minmax(220px, 300px) minmax(0, 1fr) auto; gap:10px 24px; align-items:center; padding:14px 0; border-bottom:1px solid var(--tv-line); }
.tv-prog__name p { margin:0; }
.tv-prog__name b { font-size:18px; font-weight:800; }
.tv-prog__name span[lang="ar"] { margin-inline-start:8px; font-size:16px; color:var(--tv-navy); white-space:nowrap; }
.tv-prog__sub { margin-top:2px !important; font-size:13.5px; color:#4a4a44; }
.tv-prog__pieces { display:flex; flex-wrap:wrap; gap:6px; }
.tv-wchip { min-height:34px; padding:2px 11px; border:1px solid var(--tv-orange); background:#fff4ee; color:#7a2e10; font-size:15px; font-weight:600; }
.tv-wchip:hover { background:var(--tv-orange); color:#1f140e; }

/* ---- before the tape */
.tv-voices { display:grid; grid-template-columns:repeat(5, minmax(0, 1fr)); gap:22px; list-style:none; margin:18px 0 0; padding:0; }
.tv-voice-card { border-top:4px solid var(--tv-navy); padding-top:12px; }
.tv-voice-card__btn { display:flex; flex-direction:column; align-items:flex-start; gap:2px; width:100%; padding:0; border:0; background:none; text-align:start; }
.tv-voice-card__btn img, .tv-voice-card__ph { display:block; width:100%; aspect-ratio:1 / 1; object-fit:cover; margin-bottom:10px; background:#e8edf2; }
.tv-voice-card__n { font-size:16.5px; font-weight:800; line-height:1.25; }
.tv-voice-card__y { font-size:13px; color:#5b5b55; }
.tv-voice-card__btn:hover .tv-voice-card__n { color:var(--tv-terra); text-decoration:underline; text-underline-offset:4px; }
.tv-voice-card__t { margin:8px 0 0; font-size:14px; line-height:1.5; }
.tv-voice-card__l { margin:6px 0 0; font-size:13px; font-weight:700; color:var(--tv-navy); }

/* ---- the collection */
.tv-coll { display:grid; grid-template-columns:minmax(0, 340px) minmax(0, 1fr); gap:24px 40px; align-items:start; padding-top:22px; border-top:1px solid var(--tv-ink); }
.tv-coll__pic { margin:0; }
.tv-coll__pic img { display:block; width:100%; height:auto; filter:grayscale(1) contrast(1.05); }
.tv-coll__body { margin-top:12px; max-width:72ch; font-size:var(--text-body, 17px); line-height:1.75; }
.tv-coll__body p { margin:0 0 1em; }

/* ---- the voice panel (sheet) and its inline form above the catalogue's results */
.tv-sheet { position:fixed; z-index:49; inset-block:var(--tv-top, 0px) var(--tv-bot, 0px); inset-inline:auto 0; width:min(520px, 100vw); height:auto; max-width:100vw; max-height:none; margin:0; padding:0; border:0; border-inline-start:1px solid var(--tv-ink); overflow-y:auto; overscroll-behavior:contain; background:#fff; color:var(--tv-ink); box-shadow:-24px 0 40px -24px rgba(0,0,0,.4); }
.lang-ar .tv-sheet { box-shadow:24px 0 40px -24px rgba(0,0,0,.4); }
/* under the head (z-index 50) and the menu, above the page; placed by tapes-v2.js (--tv-top = where the head ends now) */
.tv-sheet[open] { animation:tv-in .2s ease-out; }
@keyframes tv-in { from { transform:translateX(24px); opacity:0; } to { transform:none; opacity:1; } }
.lang-ar .tv-sheet[open] { animation-name:tv-in-rtl; }
@keyframes tv-in-rtl { from { transform:translateX(-24px); opacity:0; } to { transform:none; opacity:1; } }
.tv-sheet__in { min-height:100%; }
.tv-v__id { display:grid; grid-template-columns:96px minmax(0, 1fr) auto; gap:16px; align-items:center; padding:22px; background:var(--tv-terra); color:#fff; }
.tv-v__id img, .tv-v__ph { width:96px; height:96px; border-radius:50%; object-fit:cover; box-shadow:0 0 0 3px rgba(255,255,255,.35); }
.tv-v__ph { display:flex; align-items:center; justify-content:center; background:#f2ddd5; color:#8f2f1b; font-size:34px; font-weight:800; }
.tv-v__o { margin:0; font-size:15px; font-weight:600; color:#fff; }
.tv-v__n { margin:0; font-size:22px; line-height:1.2; font-weight:800; letter-spacing:-.02em; }
.tv-v__y { margin:4px 0 0; font-size:14px; color:#fff; }
.tv-v__x { align-self:start; width:40px; height:40px; border:1px solid rgba(255,255,255,.5); border-radius:50%; background:transparent; color:#fff; font-size:22px; line-height:1; }
.tv-v__x:hover { background:#fff; color:var(--tv-terra); }
.tv-v__body { display:flex; flex-direction:column; gap:18px; padding:20px 22px 28px; }
.tv-v__sum { margin:0; font-size:24px; line-height:1.2; font-weight:500; letter-spacing:-.02em; }
.tv-v__list { list-style:none; margin:10px 0 6px; padding:0; border-top:2px solid var(--tv-ink); }
.tv-v__list li { display:grid; grid-template-columns:64px minmax(0, 1fr) auto; gap:10px; align-items:center; padding:6px 0; border-bottom:1px solid #e3e3dd; font-size:15px; }
.tv-v__also .tv-col { margin-top:6px; }
.tv-v__x-list, .tv-v__ep { list-style:none; margin:0 0 12px; padding:0; }
.tv-play--row { width:100%; justify-content:flex-start; min-height:40px; margin-bottom:6px; padding:0 14px; border-color:var(--tv-navy); color:var(--tv-navy); font-weight:700; }
.tv-play--row small { margin-inline-start:auto; font-weight:600; opacity:.8; }
.tv-play--row:hover, .tv-play--row.is-playing { background:var(--tv-navy); color:#fff; }
.tv-v__ep li { padding:5px 0; border-bottom:1px solid #e3e3dd; font-size:14.5px; }
.tv-v__ep a { color:var(--tv-ink); }
.tv-inline { margin:4px 0 18px; border:1px solid var(--tv-ink); }
.tv-v--inline .tv-v__id { grid-template-columns:72px minmax(0, 1fr); padding:14px 18px; }
.tv-v--inline .tv-v__id img, .tv-v--inline .tv-v__ph { width:72px; height:72px; font-size:26px; }
.tv-v--inline .tv-v__body { flex-direction:row; flex-wrap:wrap; padding:16px 18px; }
.tv-v--inline .tv-v__reels { flex:2 1 340px; min-width:0; }
.tv-v--inline .tv-v__also { flex:1 1 240px; min-width:0; }

/* reels.css enlarges Arabic inside English text (.rc-page [lang="ar"]); these elements keep their own size */
.rc-page .tv .tv-tab__ar[lang] { font-size:21px; }
.rc-page .tv .tv-piece__ar[lang] { font-size:clamp(46px, 5.6vw, 78px); }
.rc-page .tv .tv-card__ar[lang] { font-size:19px; }
.rc-page .tv .tv-tape__t[lang] { font-size:15px; }
.rc-page .tv .tv-tape__note[lang] { font-size:13px; }
.rc-page .tv .tv-side__t[lang] { font-size:15.5px; }
.rc-page .tv .tv-wchip[lang] { font-size:15px; }
.rc-page .tv .tv-prog__name span[lang] { font-size:16px; }
/* on the English page an Arabic line under an English name starts where the name starts */
.editorial:not(.lang-ar) .tv-tape__t, .editorial:not(.lang-ar) .tv-tape__note { text-align:left; }

/* ---- smaller screens */
@media (max-width:1100px) {
	.tv-list { grid-template-columns:repeat(2, minmax(0, 1fr)); }
	.tv-voices { grid-template-columns:repeat(3, minmax(0, 1fr)); }
	.tv-prog { grid-template-columns:minmax(0, 1fr) auto; }
	.tv-prog__pieces { grid-column:1 / -1; grid-row:2; }
}
@media (max-width:820px) {
	.tv-tabs { display:flex; overflow-x:auto; scrollbar-width:none; }
	.tv-tab { flex:0 0 46%; }
	.tv-piece__top { grid-template-columns:minmax(0, 1fr); }
	.tv-piece__ar { text-align:start; }
	.tv-bridge__grid { grid-template-columns:minmax(0, 1fr); }
	.tv-bridge__age { flex-direction:row; padding:8px; border-inline:0; border-block:1px solid var(--tv-ink); }
	.tv-bridge__arrow { transform:rotate(90deg); font-size:20px; }
	.lang-ar .tv-bridge__arrow { transform:rotate(-90deg); }
	.tv-bridge__word { writing-mode:horizontal-tb; }
	.tv-reel { grid-template-columns:minmax(0, 1fr); }
	.tv-reel__id { display:grid; grid-template-columns:72px minmax(0, 1fr); gap:4px 14px; align-items:center; }
	.tv-reel__svg { width:72px; height:72px; grid-row:span 3; }
	.tv-reel__n { margin:0; font-size:40px; }
	.tv-reel__s, .tv-reel__id .tv-link { grid-column:1 / -1; }
	.tv-coll { grid-template-columns:minmax(0, 1fr); }
}
@media (max-width:640px) {
	.tv .tv-afac { flex-wrap:wrap; gap:10px; }
	.tv .tv-afac img { width:160px; }
	.tv-list { grid-template-columns:minmax(0, 1fr); }
	.tv-gos { grid-template-columns:repeat(2, minmax(0, 1fr)); gap:8px; }
	.tv-voices { grid-template-columns:repeat(2, minmax(0, 1fr)); gap:16px; }
	.tv-tab { flex-basis:72%; }
	.tv-disc { grid-template-columns:54px minmax(0, 1fr) auto; }
	.tv-disc__pic img, .tv-disc__drawn { width:54px; height:54px; }
	.tv-tape { grid-template-columns:54px minmax(0, 1fr); }
	.tv-tape > .tv-tag, .tv-tape > span:last-child:empty { grid-column:2; justify-self:start; }
	.tv-row { min-width:0; width:max-content; } /* responsive QA 2026-11-05: real reel spines, a fade where the shelf goes on */
	.tv-spine { flex:0 0 auto; width:12px; max-width:none; }
	.tv-spine span { font-size:10px; }
	.tv-shelves { padding-inline-end:32px; -webkit-mask-image:linear-gradient(to var(--fade-to, right), #000 calc(100% - 32px), transparent); mask-image:linear-gradient(to var(--fade-to, right), #000 calc(100% - 32px), transparent); }
	[dir='rtl'] .tv-shelves { --fade-to: left; }
	.tv-v__id { grid-template-columns:72px minmax(0, 1fr) auto; padding:16px; }
	.tv-v__id img, .tv-v__ph { width:72px; height:72px; }
	.tv-v__body { padding:16px 16px 24px; }
}
@media (prefers-reduced-motion:reduce) {
	.tv-spine, .tv-sheet[open] { transition:none; animation:none; }
}

/* responsive QA 2026-11-05, polish */
@media (pointer: coarse) { .tv-name { padding-block: 4px; margin-block: -4px; } .tv-disc__ep { padding-block: 4px; margin-block: -2px -4px; } }
