/* SKYDAY News: R18/R19 site structure (Lane G). Builds on news.css tokens (R11). Presentation only. */
/* G2: the page background is the theme's from the first frame (the boot script sets data-news-theme). */
html{background:var(--rh-bg-app);color-scheme:light}
:root[data-news-theme=dark]{color-scheme:dark}
:root{--cat-exec:var(--rh-text-accent)}
[data-section=ai-tech],[data-category=ai-tech],[data-news-category=ai-tech]{--cat:var(--cat-ai-tech)}
[data-section=geopolitics],[data-category=geopolitics],[data-news-category=geopolitics]{--cat:var(--cat-geopolitics)}
[data-section=uk-local],[data-category=uk-local],[data-news-category=uk-local]{--cat:var(--cat-uk-local)}
[data-section=science-energy],[data-category=science-energy],[data-news-category=science-energy]{--cat:var(--cat-science-energy)}
[data-section=economics-markets],[data-category=economics-markets],[data-news-category=economics-markets]{--cat:var(--cat-economics-markets)}
[data-section=homelab-security],[data-category=homelab-security],[data-news-category=homelab-security]{--cat:var(--cat-homelab-security)}
[data-category=executive]{--cat:var(--cat-exec)}[data-category=history]{--cat:var(--news-line-strong)}
.news-dot{display:inline-block;flex:none;width:8px;height:8px;border-radius:50%;background:var(--cat,currentColor)}
.news-eyebrow{display:inline-block;font:700 12px/1.3 var(--font-ui);letter-spacing:.16em;text-transform:uppercase;color:var(--rh-text-accent)}

/* ---- Masthead: row 1 + section rail ---- */
.news-topbar{gap:20px}
.news-nav{margin-left:auto}
.news-nav a{display:inline-flex;align-items:center;gap:7px}
.news-nav-wave{width:16px;height:16px}
.news-avatar{display:none!important;place-items:center;width:34px;height:34px;border-radius:50%;background:linear-gradient(135deg,#2459ed,#5b3fd6);color:#fff;font-size:14px;font-weight:700}
.news-menu-button{display:none}
.news-rail{display:flex;align-items:center;gap:2px;height:44px;font-size:14px;font-weight:600;overflow-x:auto;scrollbar-width:none;border-top:1px solid color-mix(in srgb,var(--rh-border-default) 60%,transparent)}
.news-rail::-webkit-scrollbar{display:none}
.news-rail a[data-section]{position:relative;display:inline-flex;align-items:center;gap:8px;white-space:nowrap;text-decoration:none;color:var(--rh-text-secondary);padding:0 12px;height:44px;transition:color .2s}
.news-rail a[data-section]:first-child{padding-left:2px}
.news-rail a[data-section]:hover{color:var(--rh-text-primary)}
.news-rail a[data-section]::after{content:"";position:absolute;left:12px;right:12px;bottom:-1px;height:3px;border-radius:3px 3px 0 0;background:var(--cat);transform:scaleX(0);transition:transform .25s var(--ease)}
.news-rail a[data-section]:first-child::after{left:2px}
.news-rail a[data-section]:hover::after,.news-rail a[aria-current]::after{transform:scaleX(1)}
.news-rail-end{margin-left:auto;font-size:12.5px;font-weight:500;color:var(--rh-text-tertiary);white-space:nowrap;padding-left:16px}
.news-rail-end a{color:var(--rh-text-accent);text-decoration:none;font-weight:600}
html{scroll-padding-top:120px}

/* Phone menu sheet */
.news-menu{position:fixed;inset:0;z-index:70;background:var(--rh-bg-app);display:flex;flex-direction:column;padding:0 16px 24px;overflow-y:auto;animation:news-menu-in .25s var(--ease) both}
@keyframes news-menu-in{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}
.news-menu-top{display:flex;align-items:center;justify-content:space-between;min-height:60px}
.news-menu-big{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:14px 6px;border-bottom:1px solid var(--rh-border-default);text-decoration:none;font:600 26px/1.1 var(--font-display);letter-spacing:-.01em;color:var(--rh-text-primary)}
.news-menu-big small{font:500 13px/1.3 var(--font-ui);color:var(--rh-text-secondary);text-align:right}
.news-menu-big[aria-current]{color:var(--rh-text-accent)}
.news-menu-heading{font:700 11.5px/1 var(--font-ui);letter-spacing:.16em;text-transform:uppercase;color:var(--rh-text-secondary);margin:18px 4px 10px}
.news-menu-sections{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:6px}
.news-menu-section{display:flex;align-items:center;padding:12px;border-radius:14px;background:var(--rh-bg-surface);border:1px solid var(--rh-border-default);border-left:4px solid var(--cat);text-decoration:none;font-weight:600;font-size:15px;color:var(--rh-text-primary)}
.news-menu-account{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:22px}
.news-menu-who{font-weight:600}.news-menu-note{font-size:13.5px;color:var(--rh-text-secondary)}
.news-menu-signin,.news-menu-signout{background:var(--rh-text-primary);color:var(--rh-bg-app);padding:9px 18px;border-radius:999px;text-decoration:none;font-size:14px;font-weight:600;border:0}
:root[data-news-menu=open] body{overflow:hidden}

/* Welcome line */
.news-ribbon h1{font:600 22px/1.3 var(--font-display);letter-spacing:-.01em;text-transform:none;margin:0}
.news-ribbon h1 span{color:var(--rh-text-secondary);font-weight:400}
.news-ribbon{border-bottom:0;padding:24px 0 16px;margin-bottom:0}

/* ---- Pages ---- */
/* G4: Podcast, Settings and About are views over the reader; only its one player stays from it. */
:root:is([data-news-page=podcast],[data-news-page=settings],[data-news-page=about]) .news-columns{display:block}
:root:is([data-news-page=podcast],[data-news-page=settings],[data-news-page=about]) .news-reading{display:none}
:root:is([data-news-page=podcast],[data-news-page=settings],[data-news-page=about]) .news-sidebar{height:0;overflow:visible;padding:0;margin:0;border:0}
:root:is([data-news-page=podcast],[data-news-page=settings],[data-news-page=about]) .news-sidebar>:not(.news-audio-panel),:root:is([data-news-page=podcast],[data-news-page=settings],[data-news-page=about]) .news-audio-panel>:not(#player-bar){display:none!important}
:root:is([data-news-page=podcast],[data-news-page=settings],[data-news-page=about]) .news-audio-panel{padding:0;border:0;background:none;box-shadow:none;height:0}
:root[data-news-page=podcast] .news-ribbon,:root[data-news-page=settings] .news-ribbon,:root[data-news-page=about] .news-ribbon{display:none}
.news-page{padding-bottom:80px}
/* Home: the grid uses the whole width; the sidebar keeps only the (fixed) dock. */
:root[data-news-catalogue=true] .news-columns{display:block}
:root[data-news-catalogue=true] .news-sidebar{height:0;overflow:visible;padding:0;margin:0;border:0}
:root[data-news-catalogue=true] .news-sidebar>:not(.news-audio-panel),:root[data-news-catalogue=true] .news-audio-panel>:not(#player-bar){display:none!important}
:root[data-news-catalogue=true] .news-audio-panel{padding:0;border:0;background:none;box-shadow:none;height:0}

/* ---- Home hero ---- */
.news-home-hero{margin:0 0 30px}
.news-hero{position:relative;display:grid;grid-template-columns:minmax(0,1fr);min-height:540px;border-radius:26px;overflow:hidden;background:var(--news-player);box-shadow:var(--news-shadow-lift);isolation:isolate;animation:news-rise .6s var(--ease) both}
@keyframes news-rise{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.news-hero-art{position:absolute;inset:0;z-index:-1}
.news-hero-art img{width:100%;height:100%;object-fit:cover;display:block}
.news-hero-art::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#0b1220f2 0%,#0b1220c4 34%,#0b122000 62%),linear-gradient(0deg,#0b1220d9 0%,#0b122000 45%)}
.news-hero-copy{grid-column:1;align-self:end;padding:44px 48px;color:#fff;max-width:660px}
.news-hero-eyebrow{font:700 12px/1.3 var(--font-ui);letter-spacing:.16em;text-transform:uppercase;color:var(--news-lime)}
.news-hero-copy h2{font:600 clamp(34px,4vw,54px)/1.04 var(--font-display);letter-spacing:-.024em;margin:12px 0 14px;text-wrap:balance;color:#fff}
.news-hero-copy p{font:400 18.5px/1.55 var(--font-serif);color:#dbe3f1;margin:0 0 24px;max-width:560px}
.news-hero-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.news-hero a.news-hero-read{display:inline-flex;flex-direction:row;align-items:center;gap:9px;width:auto;background:#fff;color:#0f1726;border-radius:999px;padding:13px 22px;font-weight:700;font-size:15.5px;text-decoration:none;border:0;grid-column:auto;grid-template-columns:none;margin:0;box-shadow:none}
.news-hero a.news-hero-read svg{width:16px;height:16px}
.news-hero a.news-hero-read:hover{transform:translateY(-1px)}
.news-hero-listen{display:inline-flex;align-items:center;gap:12px;background:var(--news-lime);color:var(--news-lime-ink);border-radius:999px;padding:7px 20px 7px 7px;font-weight:700;font-size:15.5px;border:0;box-shadow:0 10px 28px #c9ee5c40;text-align:left;line-height:1.2;transition:transform .2s var(--ease)}
.news-hero-listen:hover{transform:translateY(-1px)}
.news-hero-listen i{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--news-lime-ink);color:var(--news-lime);flex:none}
.news-hero-listen i svg{width:15px;height:15px;margin-left:2px}
.news-hero-listen small{display:block;font-weight:600;font-size:12px;opacity:.75;margin-top:2px}
.news-hero-time{font-size:13.5px;color:#c6d0e1}
.news-hero-side{grid-column:2;margin:20px 20px 20px 0;border-radius:20px;background:#0f1726b8;backdrop-filter:blur(16px) saturate(1.3);-webkit-backdrop-filter:blur(16px) saturate(1.3);border:1px solid #ffffff1f;color:var(--news-dock-ink);padding:18px 14px 12px;display:flex;flex-direction:column;max-height:500px;overflow:hidden}
.news-hero-side h3{display:flex;justify-content:space-between;font:700 11.5px/1 var(--font-ui);letter-spacing:.16em;text-transform:uppercase;color:var(--news-dock-ink-2);margin:2px 6px 12px}
.news-hero-side ol{list-style:none;margin:0;padding:0;display:grid;gap:2px;overflow-y:auto;scrollbar-width:thin}
.news-hero-item{white-space:normal;display:grid;grid-template-columns:30px minmax(0,1fr) auto;gap:10px;align-items:start;width:100%;text-align:left;border:0;background:transparent;color:inherit;padding:7px 6px;border-radius:12px}
.news-hero-item:hover{background:#ffffff12}
.news-hero-mini{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;border:1px solid #ffffff33;color:#fff}
.news-hero-mini svg{width:10px;height:10px;margin-left:1px}
.news-hero-item-text b{display:block;font:700 10.5px/1.3 var(--font-ui);letter-spacing:.12em;text-transform:uppercase;color:var(--cat-dark,var(--news-lime))}
.news-hero-item-text span{display:block;font:600 14px/1.35 var(--font-serif);color:#fff}
.news-hero-item small{font:600 12px/1 var(--font-ui);color:var(--news-dock-ink-2);font-variant-numeric:tabular-nums;padding-top:3px}
.news-hero-side [data-category=ai-tech]{--cat-dark:#b5a4ff}.news-hero-side [data-category=geopolitics]{--cat-dark:#ff9a92}.news-hero-side [data-category=uk-local]{--cat-dark:#95b8ff}.news-hero-side [data-category=science-energy]{--cat-dark:#72d7a3}.news-hero-side [data-category=economics-markets]{--cat-dark:#f3b65f}.news-hero-side [data-category=homelab-security]{--cat-dark:#66d2dd}
.news-hero-side.is-short{align-self:end}
.news-hero-foot{margin:auto 6px 0;padding-top:12px;border-top:1px solid #ffffff1a;font-size:12.5px;color:var(--news-dock-ink-2)}
.news-hero.has-side{grid-template-columns:minmax(0,1fr) 360px}

/* ---- Search and filters ---- */
:root[data-news-catalogue=true] .news-archive-tools{position:sticky;top:108px;z-index:6;background:color-mix(in srgb,var(--rh-bg-app) 92%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);padding:14px 0 12px;margin-bottom:10px;border-bottom:1px solid var(--rh-border-default)}
.news-archive-tools{flex-wrap:wrap}
.news-filter select{border:1px solid var(--rh-border-default);border-radius:999px;background:var(--rh-bg-surface);color:inherit;padding:10px 34px 10px 16px;font-size:14px;font-weight:600;min-height:44px}
.news-topics{flex-basis:100%}
.news-topics button{display:inline-flex;align-items:center;gap:7px}
.news-topics button.is-selected .news-dot{background:currentColor}
.news-audio-filter{border-style:dashed!important}
.news-audio-filter.is-selected{border-style:solid!important}
.news-section-heading{border-bottom:0;margin:22px 0 14px;padding-bottom:0}
.news-section-heading h2{font-size:30px}

/* ---- Grid ---- */
:root[data-news-catalogue=true] .news-story-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:26px 22px}
#news-home-today{margin:8px 0 6px}
.news-today{grid-column:1/-1}
.news-story-end{grid-column:1/-1;text-align:center;color:var(--rh-text-secondary);font-size:14px;padding:18px 0 0}
.news-story-end b{display:block;font:600 19px/1.3 var(--font-display);color:var(--rh-text-primary);margin-bottom:4px}
.news-today-tile,.news-pod-item,.news-settings-row button,.news-scheme{white-space:normal}
.news-today-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:0 0 14px}
.news-today-head h3{font:600 26px/1.15 var(--font-display);letter-spacing:-.012em;margin:0}
.news-today-head span{font-size:13.5px;color:var(--rh-text-secondary)}
.news-today-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.news-today-tile{position:relative;display:flex;flex-direction:column;gap:8px;text-decoration:none;color:inherit;background:var(--rh-bg-surface);border:1px solid var(--rh-border-default);border-radius:18px;padding:18px 20px 16px;box-shadow:var(--news-shadow);overflow:hidden;transition:transform .2s var(--ease),box-shadow .2s}
.news-today-tile::before{content:"";position:absolute;left:0;top:0;right:0;height:4px;background:var(--cat)}
.news-today-tile:hover{transform:translateY(-2px);box-shadow:var(--news-shadow-lift)}
.news-today-tile .news-story-tag,.news-day-stories .news-story-tag{color:var(--cat);font:700 11.5px/1.3 var(--font-ui);letter-spacing:.12em;text-transform:uppercase}
.news-today-tile h4{font:600 19px/1.26 var(--font-display);margin:0;text-wrap:balance}
.news-today-tile small{margin-top:auto;font-size:12.5px;color:var(--rh-text-secondary)}
.news-story.news-day{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:0;background:var(--rh-bg-surface);border:1px solid var(--rh-border-default);border-radius:18px;overflow:hidden;box-shadow:var(--news-shadow)}
.news-story.news-day .news-story-art{margin:0;border-radius:0;aspect-ratio:auto;height:100%;min-height:220px;box-shadow:none}
.news-story.news-day:hover .news-story-art{transform:none}
.news-story.news-day .news-story-body{padding:20px 24px 18px;display:flex;flex-direction:column}
.news-story.news-day h3{font-size:24px}
.news-day-stories{list-style:none;margin:6px 0 10px;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 18px}
.news-day-stories li{display:grid;grid-template-columns:10px minmax(0,1fr) auto;gap:8px;align-items:baseline;font:600 14.5px/1.35 var(--font-serif);color:var(--rh-text-primary)}
.news-day-stories li .news-dot{transform:translateY(-1px)}
.news-day-stories small{font:500 12px/1 var(--font-ui);color:var(--rh-text-tertiary)}
.news-story.news-history h3{font-size:18px}
.news-story-body{display:flex;flex-direction:column;flex:1}

/* ---- Listening dock (home hero and Podcast page) ---- */
.news-pod-seek{-webkit-appearance:none;appearance:none;width:100%;height:6px;margin:0;border-radius:999px;background:linear-gradient(90deg,var(--news-lime) calc(var(--seek,0)*100%),#ffffff2e 0);cursor:pointer}
.news-pod-seek::-webkit-slider-thumb{-webkit-appearance:none;width:14px;height:14px;border-radius:50%;background:#fff;border:0;box-shadow:0 1px 4px #0006}

/* ---- Podcast page ---- */
.news-pod-head{display:flex;justify-content:space-between;align-items:end;gap:32px;padding:40px 0 28px;border-bottom:1px solid var(--rh-border-default);margin-bottom:32px}
.news-pod-head h1{font:600 clamp(36px,4.6vw,56px)/1.04 var(--font-display);letter-spacing:-.022em;margin:10px 0 12px;text-wrap:balance}
.news-pod-head p{margin:0;color:var(--rh-text-secondary);font-size:17px;max-width:640px;line-height:1.55}
.news-pod-stats{display:flex;gap:28px;flex:none}
.news-pod-stat b{display:block;font:600 28px/1 var(--font-display)}
.news-pod-stat span{font-size:12.5px;color:var(--rh-text-secondary)}
.news-pod-layout{display:grid;grid-template-columns:440px minmax(0,1fr);gap:48px;align-items:start}
.news-pod-layout>*{min-width:0}
.news-pod-stage{--cat:var(--news-lime);position:sticky;top:132px;border-radius:24px;background:linear-gradient(160deg,var(--news-player) 0%,#14244a 58%,#1b2d52 100%);color:var(--news-dock-ink);padding:22px;box-shadow:0 24px 60px #0f172640,0 2px 8px #0f172626;overflow:hidden;isolation:isolate}
.news-pod-art{position:relative;border-radius:16px;overflow:hidden;aspect-ratio:16/10;background:linear-gradient(135deg,#2459ed,#0f1726);box-shadow:0 12px 30px #0006}
.news-pod-art img{width:100%;height:100%;object-fit:cover;display:block}
.news-pod-badge{position:absolute;left:12px;top:12px;background:#0f1726d9;backdrop-filter:blur(8px);color:#fff;font:700 11px/1 var(--font-ui);letter-spacing:.12em;text-transform:uppercase;padding:7px 10px;border-radius:999px}
.news-pod-badge:empty{display:none}
.news-pod-kicker{margin:18px 0 6px;font:700 11.5px/1.3 var(--font-ui);letter-spacing:.14em;text-transform:uppercase;color:var(--news-lime)}
.news-pod-stage h2{font:600 26px/1.18 var(--font-display);letter-spacing:-.012em;margin:0 0 8px;color:#fff;text-wrap:balance}
.news-pod-from{font-size:13.5px;color:var(--news-dock-ink-2);margin:0 0 18px}
.news-pod-from a{color:#fff;text-underline-offset:3px;text-decoration-color:#ffffff55}
.news-pod-seek:disabled{opacity:.5;cursor:default}
.news-pod-times{display:flex;justify-content:space-between;margin-top:8px;font:600 12.5px/1 var(--font-ui);font-variant-numeric:tabular-nums;color:var(--news-dock-ink-2)}
.news-pod-controls{display:flex;align-items:center;justify-content:center;gap:16px;margin:16px 0 18px}
.news-pod-controls button{display:grid;place-items:center;width:44px;height:44px;border:0;border-radius:50%;background:transparent;color:#fff;padding:0}
.news-pod-controls button:hover{background:#ffffff14}
.news-pod-controls svg{width:22px;height:22px}
.news-pod-controls .news-pod-play{width:68px;height:68px;background:var(--news-lime);color:var(--news-lime-ink);box-shadow:0 8px 24px #c9ee5c55}
.news-pod-controls .news-pod-play:hover{background:var(--news-lime);transform:scale(1.04)}
.news-pod-controls .news-pod-play svg{width:28px;height:28px}
.news-pod-links{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.news-pod-read,.news-pod-speed{display:flex;align-items:center;justify-content:center;gap:8px;padding:11px 12px;border-radius:12px;border:1px solid #ffffff22;font-size:14px;font-weight:600;text-decoration:none}
.news-pod-read{background:#fff;color:var(--news-player)}
.news-pod-read svg{width:15px;height:15px}
.news-pod-speed{background:#ffffff12;color:#fff}
.news-pod-panel-head{margin:20px 0 10px;padding-bottom:8px;border-bottom:1px solid #ffffff1f;font:700 12px/1 var(--font-ui);letter-spacing:.12em;text-transform:uppercase;color:#fff}
.news-pod-panel{list-style:none;margin:0;padding:0;display:grid;gap:4px;max-height:280px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#405776 transparent}
.news-pod-panel li button{display:grid;grid-template-columns:24px 1fr;gap:10px;width:100%;text-align:left;border:0;background:transparent;color:var(--news-dock-ink-2);padding:8px;border-radius:10px;font-size:14px;line-height:1.5}
.news-pod-panel li button b{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#2459ed;color:#fff;font-size:11px}
.news-pod-panel li[data-speaker=B] button b{background:#0a7480}
.news-pod-panel li[aria-current] button{background:#c9ee5c1f;color:#fff;box-shadow:inset 3px 0 0 var(--news-lime)}
.news-pod-next{display:grid;grid-template-columns:auto 1fr auto;gap:8px;padding:8px 6px;font-size:13.5px;color:var(--news-dock-ink-2)}
.news-pod-next b{color:#fff}.news-pod-next small{font-variant-numeric:tabular-nums}
.news-pod-next-empty{padding:8px 6px;font-size:13.5px;color:var(--news-dock-ink-2)}
.news-pod-tools{position:sticky;top:108px;z-index:5;background:color-mix(in srgb,var(--rh-bg-app) 92%,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);padding:14px 0 12px;display:flex;justify-content:space-between;align-items:center;gap:16px}
.news-pod-chips{flex:1 1 auto;flex-wrap:wrap}
.news-pod-sort{font-size:13px;color:var(--rh-text-secondary);white-space:nowrap}
.news-pod-day{margin:20px 0 8px}
.news-pod-day-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 0;border-bottom:1px solid var(--rh-border-default);margin-bottom:6px}
.news-pod-day-head h3{font:600 22px/1.2 var(--font-display);margin:0;letter-spacing:-.01em}
.news-pod-day-head h3 small{display:block;font:500 13px/1.4 var(--font-ui);color:var(--rh-text-secondary);margin-top:3px}
.news-pod-day-actions{display:flex;gap:8px}
.news-pod-day-read,.news-pod-day-play{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--rh-border-default);background:var(--rh-bg-surface);border-radius:999px;padding:8px 15px;font-size:13.5px;font-weight:600;text-decoration:none;color:var(--rh-text-primary);white-space:nowrap}
.news-pod-day-play svg{width:13px;height:13px}
.news-pod-day:first-child .news-pod-day-play{background:var(--news-lime);color:var(--news-lime-ink);border-color:transparent}
.news-pod-item{--cat:var(--cat-exec);display:grid;grid-template-columns:44px 4px minmax(0,1fr) auto;gap:14px;align-items:center;padding:12px 10px;border-radius:14px;transition:background-color .2s}
.news-pod-item+.news-pod-item{border-top:1px solid color-mix(in srgb,var(--rh-border-default) 60%,transparent)}
.news-pod-item-play{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;border:1px solid var(--rh-border-default);background:var(--rh-bg-surface);color:var(--rh-text-primary);padding:0}
.news-pod-item-play svg{width:14px;height:14px;margin-left:2px}
.news-pod-bar{align-self:stretch;border-radius:4px;background:var(--cat)}
.news-pod-item[data-category=history] .news-pod-bar{background:repeating-linear-gradient(180deg,var(--news-line-strong) 0 4px,transparent 4px 7px)}
.news-pod-item-meta{display:flex;flex-wrap:wrap;align-items:center;gap:4px 12px}
.news-pod-kind{font:700 11px/1.3 var(--font-ui);letter-spacing:.12em;text-transform:uppercase;color:var(--cat)}
.news-pod-item[data-category=history] .news-pod-kind{color:var(--rh-text-tertiary)}
.news-pod-date{font-size:12.5px;font-weight:600;color:var(--rh-text-primary)}
.news-pod-now{font-size:12.5px;font-weight:600;color:var(--rh-text-primary)}
.news-pod-item h4{font:600 17px/1.32 var(--font-serif);margin:3px 0 4px}
.news-pod-item-read{font-size:13px;font-weight:600;color:var(--rh-text-accent);text-decoration:none}
.news-pod-dur{font:600 13.5px/1 var(--font-ui);font-variant-numeric:tabular-nums;color:var(--rh-text-secondary)}
.news-pod-item[aria-current]{background:var(--rh-bg-surface);box-shadow:var(--news-shadow),inset 0 0 0 1px var(--rh-border-default)}
.news-pod-item[aria-current] .news-pod-item-play{background:var(--news-lime);color:var(--news-lime-ink);border-color:transparent}
.news-pod-item .news-review{font-size:11px;padding:2px 8px;border-radius:999px;border:1px solid var(--rh-border-default);font-weight:600}
.news-pod-item .news-review[data-status=accepted]{color:#0f6b3d;background:#e3f6ea;border-color:#a8dcbb}
.news-pod-item .news-review[data-status=rejected]{color:#8a4d00;background:#fff3db;border-color:#f0d29a}
:root[data-news-theme=dark] .news-pod-item .news-review[data-status=accepted]{color:#8be0b0;background:#0f2f20;border-color:#21583b}
:root[data-news-theme=dark] .news-pod-item .news-review[data-status=rejected]{color:#ffcf85;background:#33240b;border-color:#6b4f1d}
.news-eq{display:inline-flex;gap:2px;align-items:end;height:14px}
.news-eq i{width:3px;background:currentColor;border-radius:2px;animation:news-eq 1s ease-in-out infinite}
.news-eq i:nth-child(1){height:60%;animation-delay:-.2s}.news-eq i:nth-child(2){height:100%;animation-delay:-.5s}.news-eq i:nth-child(3){height:40%}
@keyframes news-eq{50%{transform:scaleY(.45)}}
.news-eq i{transform-origin:bottom}
.news-pod-status{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:6px 10px;text-align:center;padding:26px 0 8px;color:var(--rh-text-secondary);font-size:14px}
.news-pod-status:empty{display:none}
.news-pod-status b{display:block;width:100%;font:600 19px/1.3 var(--font-display);color:var(--rh-text-primary)}
.news-pod-spinner{width:16px;height:16px;border-radius:50%;border:2px solid var(--rh-border-default);border-top-color:var(--rh-text-accent);animation:news-spin 1s linear infinite}
@keyframes news-spin{to{transform:rotate(360deg)}}
.news-pod-more{display:block;margin:10px auto 0;border:1px solid var(--rh-border-default);background:var(--rh-bg-surface);border-radius:999px;padding:9px 18px;font-weight:600}
.news-pod-sentinel{height:1px}

/* ---- Settings ---- */
.news-settings-layout{display:grid;grid-template-columns:220px minmax(0,760px);gap:56px;align-items:start}
.news-settings-nav{position:sticky;top:132px;display:grid;gap:2px;font-size:14px;font-weight:600}
.news-settings-nav a{text-decoration:none;color:var(--rh-text-secondary);padding:9px 12px;border-radius:10px}
.news-settings-nav a:hover,.news-settings-nav a[aria-current]{background:var(--news-surface-2);color:var(--rh-text-primary)}
.news-settings-banner{display:flex;gap:14px;align-items:center;background:var(--rh-bg-surface);border:1px solid var(--rh-border-default);border-left:4px solid var(--rh-text-accent);border-radius:16px;padding:14px 16px;margin-bottom:22px;font-size:14px;color:var(--rh-text-secondary)}
.news-settings-banner b{color:var(--rh-text-primary)}
.news-settings-saved{margin-left:auto;font-size:12.5px;font-weight:600;color:#16603d;background:#e2f6ea;border-radius:999px;padding:4px 10px;white-space:nowrap}
.news-settings-saved[data-state=saving]{color:var(--rh-text-secondary);background:var(--news-surface-2)}
.news-settings-saved[data-state=warn],.news-settings-saved[data-state=error]{color:#8a4d00;background:#fff3db;white-space:normal}
:root[data-news-theme=dark] .news-settings-saved{color:#8fe3b4;background:#123526}
:root[data-news-theme=dark] .news-settings-saved[data-state=warn],:root[data-news-theme=dark] .news-settings-saved[data-state=error]{color:#ffcf85;background:#33240b}
.news-settings-card{background:var(--rh-bg-surface);border:1px solid var(--rh-border-default);border-radius:20px;padding:24px 26px;margin-bottom:20px;box-shadow:var(--news-shadow);scroll-margin-top:130px}
.news-settings-card h2{display:flex;align-items:center;gap:10px;font:600 24px/1.2 var(--font-display);margin:0 0 4px;letter-spacing:-.01em}
.news-settings-intro{margin:0 0 16px;color:var(--rh-text-secondary);font-size:14.5px;line-height:1.55}
.news-schemes{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:6px}
.news-scheme{border:1.5px solid var(--rh-border-default);border-radius:16px;padding:10px;background:var(--rh-bg-app);text-align:left;color:inherit;transition:border-color .2s,box-shadow .2s}
.news-scheme[aria-checked=true]{border-color:var(--rh-text-accent);box-shadow:0 0 0 3px var(--news-accent-soft)}
.news-scheme-preview{display:grid;gap:5px;align-content:start;height:82px;border-radius:10px;padding:22px 8px 8px;border:1px solid #0000001a;position:relative}
.news-scheme-preview::before{content:"";position:absolute;left:0;right:0;top:0;height:14px;border-radius:10px 10px 0 0}
.news-scheme-preview i{display:block;height:5px;border-radius:3px}
.news-scheme-preview i:first-child{height:8px;width:70%}
.news-scheme-light{background:#f6f4ef}.news-scheme-light::before{background:#ece8de}.news-scheme-light i{background:#c9c3b6}.news-scheme-light i:first-child{background:#15181e}
.news-scheme-dark{background:#0e1727}.news-scheme-dark::before{background:#142037}.news-scheme-dark i{background:#34486a}.news-scheme-dark i:first-child{background:#eef2fa}
.news-scheme-system{background:linear-gradient(105deg,#f6f4ef 50%,#0e1727 50%)}.news-scheme-system::before{background:linear-gradient(105deg,#ece8de 50%,#142037 50%)}.news-scheme-system i{background:#8a93a5}
.news-scheme strong{display:flex;justify-content:space-between;align-items:center;font-size:14.5px;margin:10px 4px 2px}
.news-scheme small{display:block;font-size:12.5px;color:var(--rh-text-secondary);margin:0 4px 2px}
.news-radio{width:18px;height:18px;border-radius:50%;border:2px solid var(--news-line-strong);display:inline-grid;place-items:center}
.news-scheme[aria-checked=true] .news-radio{border-color:var(--rh-text-accent)}
.news-scheme[aria-checked=true] .news-radio::after{content:"";width:8px;height:8px;border-radius:50%;background:var(--rh-text-accent)}
.news-settings-row{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 0;border-top:1px solid var(--rh-border-default)}
.news-settings-intro+.news-settings-row{border-top:0}
.news-settings-label{min-width:0;flex:1 1 200px}
.news-settings-label b{display:flex;align-items:center;gap:9px;font-size:15px}
.news-settings-label b .news-dot{width:10px;height:10px}
.news-settings-label small{display:block;font-size:13px;color:var(--rh-text-secondary);line-height:1.45;margin-top:2px}
.news-switch{flex:none;position:relative;width:46px;height:28px;border-radius:999px;border:0;background:var(--news-line-strong);padding:0;transition:background-color .2s}
.news-switch::after{content:"";position:absolute;top:4px;left:4px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0004;transition:transform .2s var(--ease)}
.news-switch[aria-checked=true]{background:var(--rh-text-accent)}
.news-switch[aria-checked=true]::after{transform:translateX(18px)}
:root[data-news-theme=dark] .news-switch[aria-checked=true]::after{background:#0e1727}
.news-switch:disabled{opacity:.45;cursor:default}
.news-seg{display:inline-flex;flex:none;flex-wrap:wrap;border:1px solid var(--rh-border-default);border-radius:999px;padding:3px;background:var(--rh-bg-app)}
.news-seg button{border:0;background:transparent;color:var(--rh-text-secondary);padding:6px 12px;border-radius:999px;font-size:13.5px;font-weight:600}
.news-seg button[aria-checked=true]{background:var(--rh-text-primary);color:var(--rh-bg-app)}
.news-settings-select{border:1px solid var(--rh-border-default);border-radius:12px;padding:9px 14px;background:var(--rh-bg-app);font-size:14px;font-weight:600;color:inherit}
.news-soon{display:inline-flex;font:700 10.5px/1 var(--font-ui);letter-spacing:.1em;text-transform:uppercase;color:var(--news-lime-ink);background:var(--news-lime);padding:5px 8px;border-radius:999px}
.news-guidance{display:grid;gap:8px;border:1.5px dashed var(--news-line-strong);border-radius:14px;padding:16px;background:var(--rh-bg-app);color:var(--rh-text-tertiary);font-size:14px}
.news-guidance-fake{border-radius:10px;background:var(--rh-bg-surface);border:1px solid var(--rh-border-default);padding:12px;font-family:var(--font-serif);font-style:italic;min-height:56px}
.news-settings-danger{border:0;background:none;padding:0;color:#a12a24;font-weight:600;font-size:14px;text-decoration:underline;text-underline-offset:3px}
:root[data-news-theme=dark] .news-settings-danger{color:#ff9a92}

/* ---- About ---- */
.news-page-about{max-width:720px;margin:0 auto;padding:40px 0 80px;background:none;border:0;border-radius:0;overflow:visible;min-height:0}
.news-page-about h1{font:600 clamp(40px,5vw,62px)/1.05 var(--font-display);letter-spacing:-.024em;margin:12px 0 16px;text-wrap:balance}
.news-about-standfirst{font:400 21px/1.55 var(--font-serif);color:var(--rh-text-secondary);margin:0 0 28px}
.news-page-about h2{font:600 26px/1.2 var(--font-display);margin:36px 0 10px;letter-spacing:-.01em}
.news-page-about>p{font:400 19px/1.72 var(--font-serif);margin:0 0 16px}
.news-about-pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:0 0 30px}
.news-about-pillars div{background:var(--rh-bg-surface);border:1px solid var(--rh-border-default);border-radius:16px;padding:16px}
.news-about-pillars b{display:block;font:600 17px/1.3 var(--font-display);margin-bottom:6px}
.news-about-pillars span{display:block;font-size:13.5px;color:var(--rh-text-secondary);line-height:1.5}
.news-about-who{display:grid;grid-template-columns:64px 1fr;gap:18px;align-items:center;background:var(--rh-bg-surface);border:1px solid var(--rh-border-default);border-radius:18px;padding:18px 20px;margin:12px 0 20px;box-shadow:var(--news-shadow)}
.news-about-mark{display:grid;place-items:center;width:64px;height:64px;border-radius:16px;background:linear-gradient(135deg,#2459ed,#0f1726);color:#fff}
.news-about-mark svg{width:34px;height:34px}
.news-about-who p{margin:0;font-size:15px;color:var(--rh-text-secondary);line-height:1.55}
.news-about-who b{display:block;font:600 19px/1.3 var(--font-display);color:var(--rh-text-primary)}
.news-about-link{display:inline-flex;border:1px solid var(--rh-border-default);background:var(--rh-bg-surface);border-radius:999px;padding:10px 18px;font:600 15px/1 var(--font-ui);text-decoration:none;color:var(--rh-text-primary)}

/* ---- Reading size ---- */
:root[data-news-reading-size=large] #edition p,:root[data-news-reading-size=large] #edition li{font-size:21.5px;line-height:1.72}
:root[data-news-reading-size=large] #edition h2{font-size:clamp(38px,5vw,64px)}

/* ---- Responsive ---- */
@media(max-width:1100px){
  .news-hero.has-side{grid-template-columns:minmax(0,1fr) 320px}
  .news-pod-layout{grid-template-columns:380px minmax(0,1fr);gap:32px}
  :root[data-news-catalogue=true] .news-story-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:860px){
  .news-topbar{flex-wrap:nowrap;min-height:58px;height:58px;padding-top:0}
  .news-nav,.news-account #news-login,.news-account #news-logout,.news-avatar{display:none!important}
  .news-menu-button{display:inline-grid}
  .news-account{margin-left:auto}
  .news-rail{height:42px;font-size:13.5px;-webkit-mask-image:linear-gradient(90deg,#000 88%,transparent);mask-image:linear-gradient(90deg,#000 88%,transparent)}
  .news-rail a[data-section]{height:42px;padding:0 10px}
  .news-rail-end{display:none}
  html{scroll-padding-top:110px}
  .news-ribbon{display:block;padding:16px 0 12px}.news-ribbon h1{font-size:18px}.news-ribbon-meta{margin-top:6px}
  .news-hero,.news-hero.has-side{grid-template-columns:1fr;min-height:0;border-radius:22px}
  .news-hero-art{position:relative;aspect-ratio:4/3;z-index:0}
  .news-hero-art::after{background:linear-gradient(0deg,var(--news-player) 2%,#0b122000 60%)}
  .news-hero-copy{grid-column:1;padding:0 20px 20px;margin-top:-56px;position:relative}
  .news-hero-copy h2{font-size:31px}.news-hero-copy p{font-size:16px;margin-bottom:18px;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
  .news-hero-actions>*{flex:1 1 100%;justify-content:center}.news-hero-listen{justify-content:flex-start}.news-hero-time{display:none}
  .news-hero-side{grid-column:1;margin:0 12px 12px;max-height:none}
  .news-hero-side li:nth-child(n+4){display:none}
  :root[data-news-catalogue=true] .news-archive-tools{top:100px;margin-left:-16px;margin-right:-16px;padding:10px 16px}
  .news-topics{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}.news-topics::-webkit-scrollbar{display:none}
  .news-topics button{flex:none}
  .news-filter{flex:1 1 40%}.news-filter select{width:100%}
  :root[data-news-catalogue=true] .news-story-grid{grid-template-columns:1fr 1fr}
  .news-today-tiles{grid-template-columns:1fr 1fr}
  .news-story.news-day{grid-template-columns:1fr}
  .news-story.news-day .news-story-art{aspect-ratio:16/9;min-height:0}
  .news-pod-head{display:block;padding:24px 0 18px;margin-bottom:18px}.news-pod-head h1{font-size:34px}.news-pod-head p{font-size:15.5px}.news-pod-stats{margin-top:16px}
  .news-pod-layout{grid-template-columns:1fr;gap:20px}
  .news-pod-stage{position:relative;top:0;padding:14px;border-radius:20px;display:grid;grid-template-columns:76px minmax(0,1fr);gap:4px 14px;align-items:center}
  .news-pod-art{grid-row:1/3;aspect-ratio:1;border-radius:12px}.news-pod-badge{display:none}
  .news-pod-kicker{margin:0;font-size:10.5px}.news-pod-stage h2{font-size:17px;margin:0;grid-column:2}
  .news-pod-from,.news-pod-seek,.news-pod-times,.news-pod-controls,.news-pod-links{grid-column:1/-1}
  .news-pod-from{margin:8px 0 6px;font-size:13px}
  .news-pod-controls{margin:10px 0 12px;gap:10px}.news-pod-controls .news-pod-play{width:58px;height:58px}
  .news-pod-panel-head,.news-pod-panel{display:none}
  .news-pod-tools{top:100px;margin:0 -16px;padding:10px 16px}
  .news-pod-chips{flex-wrap:nowrap}.news-pod-sort{display:none}
  .news-pod-day-head h3{font-size:19px}.news-pod-day-read{display:none}.news-pod-day-play span{display:none}
  .news-pod-item{grid-template-columns:38px 3px minmax(0,1fr);gap:10px;padding:11px 4px}.news-pod-item-play{width:36px;height:36px}.news-pod-dur{display:none}.news-pod-item h4{font-size:16px}
  .news-settings-layout{grid-template-columns:1fr;gap:16px}
  /* R81: phones keep the Settings menu as one sticky row of chips under the header (it was hidden). */
  .news-settings-layout .news-settings-nav{display:flex;flex-wrap:nowrap;overflow-x:auto;gap:6px;top:100px;z-index:4;margin:0 -16px;padding:8px 16px;background:var(--rh-bg-app);border-bottom:1px solid var(--rh-border-default);scrollbar-width:none}
  .news-settings-layout .news-settings-nav a{flex:none;white-space:nowrap;padding:7px 12px;border:1px solid var(--rh-border-default);border-radius:999px}
  .news-settings-card{padding:18px;border-radius:18px}.news-settings-row{flex-wrap:wrap}
  .news-schemes{gap:8px}.news-scheme{padding:7px}.news-scheme-preview{height:56px}.news-scheme small{display:none}.news-scheme strong{font-size:13px;margin:8px 2px 0}
  .news-seg button{padding:6px 9px;font-size:12.5px}
  .news-settings-banner{flex-wrap:wrap}.news-settings-saved{margin-left:0}
  .news-about-pillars{grid-template-columns:1fr}
  .news-page-about{padding-top:24px}.news-page-about h1{font-size:38px}.news-about-standfirst{font-size:18.5px}.news-page-about>p{font-size:17.5px}
}
@media(max-width:560px){
  .news-ribbon h1{position:static;width:auto;height:auto;overflow:visible;clip-path:none;white-space:normal}
  :root[data-news-catalogue=true] .news-story-grid{grid-template-columns:1fr;gap:18px}
  .news-today-tiles{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:10px;margin-right:-16px;padding-right:16px;scrollbar-width:none}
  .news-today-tile{flex:0 0 78%;scroll-snap-align:start}
  .news-day-stories{grid-template-columns:1fr}
  .news-day-stories li:nth-child(n+4){display:none}
}
@media(prefers-reduced-motion:reduce){.news-hero,.news-menu,.news-audio-panel .player-bar,.news-eq i,.news-pod-spinner{animation:none!important}.news-today-tile,.news-hero-listen{transition:none}}

/* R27: the combined briefing as a secondary choice next to the segment playlist. */
#edition .edition-podcast-alt{margin:-18px auto 30px;font-size:14px;color:var(--rh-text-secondary)}
#edition .edition-podcast-alt button{border:0;background:none;padding:6px 0;min-height:28px;color:var(--rh-text-accent);font-weight:600;font-size:14px;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
/* REVIEW-G1 S3: tap targets of at least 24 px; S5: the no-sections state; S7: breathing room. */
.news-pod-item-read{display:inline-flex;align-items:center;min-height:28px}
.news-rail-end a{display:inline-flex;align-items:center;min-height:28px;padding:0 2px}
.news-no-sections{grid-column:1/-1;text-align:center;background:var(--rh-bg-surface);border:1.5px dashed var(--news-line-strong);border-radius:18px;padding:26px 22px;margin:4px 0 10px}
.news-no-sections h3{font:600 22px/1.2 var(--font-display);margin:0 0 6px}
.news-no-sections p{margin:0 0 14px;color:var(--rh-text-secondary);font-size:15px}
.news-no-sections-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}
.news-show-all{background:var(--rh-text-primary);color:var(--rh-bg-app);border:0;border-radius:999px;padding:10px 18px;font-weight:600;min-height:44px}
.news-no-sections-link{display:inline-flex;align-items:center;min-height:44px;padding:0 14px;border:1px solid var(--rh-border-default);border-radius:999px;text-decoration:none;font-weight:600;color:var(--rh-text-primary)}
#news-home-today{margin-top:20px}

/* ---- R29/R31: one player, two listening modes (Lane G) ---- */
:root{--host-a:#2459ed;--host-b:#0a7480;--narrator:#7a4fd6}
:root[data-news-theme=dark]{--host-a:#5b86ff;--host-b:#2fb5c2;--narrator:#a98bff}
.listen-modes{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px;border-radius:18px;background:#ffffff10;border:1px solid #ffffff1f;max-width:640px;margin:14px 0 0}
.listen-mode{display:flex;align-items:center;gap:10px;min-width:0;padding:9px 12px;border:0;border-radius:14px;background:transparent;color:var(--news-dock-ink-2);text-align:left;white-space:normal}
.listen-mode-glyph{display:grid;place-items:center;width:36px;height:36px;flex:none;border-radius:11px;background:#ffffff12;border:1px solid #ffffff22;color:#fff}
.listen-mode-glyph svg{width:18px;height:18px}
.listen-mode-words{min-width:0}
.listen-mode b{display:flex;align-items:center;gap:6px;font-size:15px;color:#fff}
.listen-mode small{display:block;font-size:12.5px;color:var(--news-dock-ink-2)}
.listen-mode[aria-checked=true]{background:#ffffff16;box-shadow:inset 0 0 0 1.5px var(--news-lime)}
.listen-mode[aria-checked=true] .listen-mode-glyph{background:var(--news-lime);color:var(--news-lime-ink);border-color:transparent}
.listen-soon-tag{font:700 10px/1 var(--font-ui);letter-spacing:.08em;text-transform:uppercase;color:var(--news-lime-ink);background:var(--news-lime);padding:3px 6px;border-radius:999px}
.listen-modes--compact{max-width:360px;margin:0}
.listen-modes--compact .listen-mode{padding:6px 10px;gap:8px}
.listen-modes--compact .listen-mode-glyph{width:26px;height:26px;border-radius:8px}
.listen-modes--compact .listen-mode b{font-size:13.5px}
.listen-explain{display:flex;gap:10px;align-items:flex-start;margin:10px 2px 0;max-width:640px;font:400 13.5px/1.5 var(--font-ui);color:var(--news-dock-ink-2)}
.listen-explain svg{width:17px;height:17px;flex:none;margin-top:1px;color:var(--news-lime)}
.listen-soon{display:grid;grid-template-columns:auto minmax(0,1fr);gap:16px;align-items:center;margin-top:14px;border:1.5px dashed #ffffff33;border-radius:16px;padding:14px 16px}
.listen-narrator{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:#ffffff1c;color:var(--news-dock-ink-2)}
.listen-narrator svg{width:24px;height:24px}
.listen-soon b{display:block;font:600 17px/1.3 var(--font-display);color:#fff}
.listen-soon p{margin:4px 0 10px;font-size:13.5px;line-height:1.5;color:var(--news-dock-ink-2)}
.listen-soon-back{display:inline-flex;align-items:center;gap:8px;border:0;border-radius:999px;background:var(--news-lime);color:var(--news-lime-ink);font-weight:700;font-size:13.5px;padding:8px 14px 8px 10px;min-height:36px}
.listen-soon-back svg{width:16px;height:16px}
/* The edition's Listen card in "coming soon": the hosts' list stays visible but quiet. */
#edition .edition-playlist[data-mode=soon] .edition-playlist-list{opacity:.45}
#edition .edition-playlist[data-mode=soon] .edition-playlist-play{opacity:.6}
/* Story control: [Hosts discuss 4:48 | Read the article soon] */
#edition .segment-pill--dual{display:inline-flex;gap:0;padding:3px;border-radius:999px;border:1px solid var(--rh-border-default);background:var(--rh-bg-surface);box-shadow:var(--news-shadow);margin:2px 0 16px}
#edition .segment-pill--dual button{display:inline-flex;align-items:center;gap:7px;border:0;background:transparent;border-radius:999px;padding:7px 13px 7px 10px;min-height:34px;font-size:13.5px;font-weight:600;color:var(--rh-text-secondary);white-space:nowrap}
#edition .segment-pill--dual button svg{width:16px;height:16px}
#edition .segment-pill--dual button small{font-weight:500;opacity:.8}
#edition .segment-pill--dual button[aria-pressed=true]{background:var(--rh-text-primary);color:var(--rh-bg-app)}
#edition .segment-pill--dual .segment-pill-hosts .eq{display:none}
#edition .segment-pill--dual[data-playing=true] .segment-pill-hosts .eq{display:inline-flex}
#edition .segment-pill--dual[data-playing=true] .segment-pill-hosts svg{display:none}
/* The earlier format, after the stories */
#edition .edition-podcast-alt{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:6px 16px;align-items:center;margin:36px auto 28px;padding:14px 18px;border:1px solid var(--rh-border-default);border-radius:16px;background:var(--news-surface-2);font-size:14px;color:var(--rh-text-secondary)}
#edition .edition-podcast-alt>span{font:700 11px/1 var(--font-ui);letter-spacing:.14em;text-transform:uppercase;color:var(--rh-text-tertiary)}
#edition .edition-podcast-alt p{margin:0;font-size:14px}
#edition .edition-podcast-alt button{border:1px solid var(--rh-border-default);background:var(--rh-bg-surface);border-radius:999px;padding:8px 14px;min-height:36px;font-size:13.5px;font-weight:600;color:var(--rh-text-primary);text-decoration:none}
/* Dock: who is talking (Theo / Iris), the stage in the panel, and the switch */
.player-bar[data-hosts=true] .dock-chapter{display:none}
.dock-modes,.dock-stage{grid-column:1/-1}
.dock-stage{display:none}
.player-bar[data-hosts=true] .dock-stage{display:block}
.dock-stage-hosts{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:16px;align-items:center}
.dock-stage-host{display:grid;justify-items:center;gap:5px;width:70px}
.dock-stage-host i{position:relative;overflow:hidden;display:grid;place-items:center;width:50px;height:50px;border-radius:50%;font:700 17px/1 var(--font-ui);font-style:normal;color:#fff;background:var(--host-a);box-shadow:0 0 0 3px #ffffff14;transition:box-shadow .2s}
.dock-stage-host[data-speaker=B] i{background:var(--host-b)}
.dock-stage-host b{font-size:12.5px;color:var(--news-dock-ink-2)}
.player-bar[data-speaker=A] .dock-stage-host[data-speaker=A] i,.player-bar[data-speaker=B] .dock-stage-host[data-speaker=B] i{box-shadow:0 0 0 3px var(--news-lime),0 0 0 9px #c9ee5c26}
.player-bar[data-speaker=A] .dock-stage-host[data-speaker=A] b,.player-bar[data-speaker=B] .dock-stage-host[data-speaker=B] b{color:#fff}
.dock-wave{display:flex;align-items:center;gap:3px;height:46px;min-width:0;overflow:hidden}
.dock-wave i{flex:1;max-width:5px;border-radius:3px;background:#ffffff38}
.player-bar[data-speaker=A] .dock-wave i:nth-child(-n+14),.player-bar[data-speaker=B] .dock-wave i:nth-child(n+15){background:var(--news-lime)}
.dock-stage-line{margin:10px 0 0;font-size:14px;line-height:1.45;color:var(--news-dock-ink-2);min-height:20px}
.dock-modes .listen-soon{margin-top:10px}
@media(max-width:560px){
  .listen-mode{padding:8px 9px;gap:8px}.listen-mode-glyph{width:30px;height:30px}.listen-mode b{font-size:13.5px}.listen-mode small{font-size:11.5px}
  .listen-soon-tag{display:none}
  #edition .segment-pill--dual button{padding:7px 10px 7px 8px;font-size:12.5px}
  #edition .edition-podcast-alt{grid-template-columns:1fr}
  .dock-stage-host{width:56px}.dock-stage-host i{width:42px;height:42px}
}
#edition .listen-explain,.news-hero-copy .listen-explain,.player-bar .listen-explain{display:flex;gap:10px;align-items:flex-start;margin:10px 2px 0;max-width:640px;font:400 13.5px/1.5 var(--font-ui);color:var(--news-dock-ink-2)}
#edition .listen-soon p,.news-hero-copy .listen-soon p,.player-bar .listen-soon p{margin:4px 0 10px;font:400 13.5px/1.5 var(--font-ui);color:var(--news-dock-ink-2);max-width:none}
#edition .listen-soon b{color:#fff}
.dock-stage{max-width:760px}
.dock-stage-hosts{justify-content:start}
.dock-wave{justify-content:center}
.dock-stage-line{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}

/* G4 one player. Expanded on a wide screen, the dock is a drawer at the right and the page makes room for
   it, so it never covers the article; on a phone it is a sheet that the chevron or Esc folds back into the
   dock (and a page change folds it). On the Podcast page (wide) the page itself is the player view. */
@media(min-width:861px){
  :root[data-news-dock=active][data-news-dock-open=true]:not([data-news-page=podcast]) body{padding-right:456px}
  :root[data-news-dock=active][data-news-dock-open=true]:not([data-news-page=podcast]) #news-rail-store{display:none}
  .news-audio-panel .player-bar[data-open=true]{left:auto;right:16px;top:16px;bottom:16px;width:424px;max-height:none;transform:none;animation:none}
  .news-audio-panel .player-bar[data-open=true] .dock-main{grid-template-columns:44px minmax(0,1fr) auto}
  .news-audio-panel .player-bar[data-open=true] .playlist-controls{grid-column:1/-1;grid-row:2;justify-content:center;flex-wrap:wrap;row-gap:6px}
  .news-audio-panel .player-bar[data-open=true] .dock-expand{grid-column:3;grid-row:1}
  .news-audio-panel .player-bar[data-open=true] .dock-expand svg{transform:rotate(90deg)}
  .news-audio-panel .player-bar[data-open=true] .dock-panel{grid-template-columns:1fr;flex:1 1 auto}
  :root[data-news-page=podcast] .news-audio-panel .player-bar{display:none}
  :root[data-news-page=podcast][data-news-dock=active] body{padding-bottom:0}
}

/* R31 review: the disabled "Not ready yet" is quiet, never the lime Play button. */
#edition .edition-playlist[data-mode=soon] .edition-playlist-play,#edition .edition-playlist .edition-playlist-play:disabled{background:#ffffff14;color:var(--news-dock-ink-2);box-shadow:none;border:1px solid #ffffff24;opacity:1;cursor:default}

/* R43 (Lane H): the side player, tidied.
   - Time, Auto-advance and the simple/advanced toggle sit under the title; the hosts appear once (the stage).
   - The switch's explainer, the current line and the queue status fold into "More info".
   - The transcript shows the line being spoken; unfolded it scrolls on its own and keeps that line centred.
   - The playlist stays visible under the transcript.
   - Simple (the default) hides skip, stop, speed and the shortcut legend.
   - Phones: the open player is full screen. Wide screens: the drawer as before. */
.dock-status{display:flex;align-items:center;flex-wrap:wrap;gap:4px 12px;margin-top:3px;min-width:0}
.dock-status .dock-time{font-size:12.5px}
.dock-auto,.dock-view{display:none}
.player-bar[data-open=true] .dock-auto{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;color:var(--news-dock-ink-2);cursor:pointer;min-height:28px}
.player-bar .dock-auto input{accent-color:var(--news-lime);margin:0;width:15px;height:15px}
.player-bar[data-open=true] .dock-view{display:inline-grid;place-items:center;width:30px;height:30px;margin-left:auto;padding:0;border:1px solid #ffffff26;border-radius:9px;background:transparent;color:var(--news-dock-ink-2);cursor:pointer}
.player-bar .dock-view svg{width:17px;height:17px}
.player-bar .dock-view:hover{background:#ffffff14;color:#fff}
.player-bar .dock-view[aria-pressed=true]{background:var(--news-lime);border-color:var(--news-lime);color:var(--news-lime-ink)}
.player-bar[data-view=simple] :is(#dock-back,#dock-forward,#playlist-stop,.dock-speed),.player-bar[data-view=simple] .dock-keys{display:none!important}
/* More info: closed by default, one quiet line under the switch. */
.dock-info{grid-column:1/-1;margin:-4px 0 0;font-size:13px;color:var(--news-dock-ink-2)}
.dock-info>summary{display:inline-flex;align-items:center;gap:6px;cursor:pointer;list-style:none;font:600 12.5px/1 var(--font-ui);color:var(--news-dock-ink-2);padding:6px 2px;min-height:28px}
.dock-info>summary::-webkit-details-marker{display:none}
.dock-info>summary::before{content:"i";display:grid;place-items:center;width:16px;height:16px;border-radius:50%;border:1.5px solid currentColor;font:700 10px/1 var(--font-ui)}
.dock-info>summary::after{content:"";width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg) translateY(-2px);transition:transform .2s}
.dock-info[open]>summary::after{transform:rotate(-135deg) translate(-2px,0)}
.dock-info>summary:hover{color:#fff}
.dock-info .listen-explain{margin:4px 0 8px}
.dock-info .dock-stage-line{margin:0 0 8px;display:block;-webkit-line-clamp:unset}
.dock-info .dock-stage-line:empty{display:none}
.news-audio-panel .dock-info #playlist-summary{font-size:13px;margin:0}
/* Hosts once: the avatars carry an illustrated portrait when the chosen pair is installed. */
.dock-avatar img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:50%}
.dock-avatar[data-photo=true] .dock-avatar-initial{visibility:hidden}
.dock-stage-host i.dock-avatar{width:56px;height:56px}
/* Transcript: one line by default, the full text on request. */
.dock-transcript-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 6px}
.dock-transcript-head h3{margin:0!important}
.dock-transcript-toggle{border:1px solid #ffffff26;background:transparent;color:var(--news-dock-ink-2);border-radius:999px;padding:5px 12px;min-height:28px;font:600 12.5px/1 var(--font-ui);cursor:pointer}
.dock-transcript-toggle:hover{background:#ffffff14;color:#fff}
.dock-transcript-toggle[aria-expanded=true]{color:var(--news-lime);border-color:#c9ee5c66}
.dock-transcript ol{position:relative}
.dock-transcript[data-full=false] #dock-turns{max-height:none;overflow:visible}
.dock-transcript[data-full=false] #dock-turns li:not([data-shown=true]){display:none}
.dock-transcript[data-full=true] #dock-turns{max-height:min(38vh,340px);overflow-y:auto;overscroll-behavior:contain;scroll-padding:8px}
.news-audio-panel .player-bar[data-open=true] .dock-transcript[data-full=true] #dock-turns{max-height:min(38vh,340px)}
/* Playlist under the transcript: the playing item stands out. */
.news-audio-panel #playlist-queue{position:relative}
.news-audio-panel #playlist-queue button[aria-current=true]{box-shadow:inset 3px 0 0 var(--news-lime);font-weight:600}
/* The mini player is never under the page's sticky bars: the sticky sidebar that holds it is a stacking
   context, so it is lifted above the sticky search/filter bars (z 5-6) and stays under the masthead (30)
   and the menu (70). Phones (no sticky sidebar) already stack the dock at 40. */
.news-sidebar{z-index:8}
@media(min-width:861px){
  .news-audio-panel .player-bar[data-open=true] .dock-main{grid-template-columns:44px minmax(0,1fr) auto;row-gap:8px}
}
/* Phones: the open player takes the whole screen; the page behind does not scroll. */
@media(max-width:860px){
  .news-audio-panel .player-bar[data-open=true]{top:0;left:0;right:0;bottom:0;width:auto;height:auto;max-height:none;transform:none;border-radius:0;border:0;animation:none;padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom)}
  .news-audio-panel .player-bar[data-open=true] .dock-scrub{margin-top:14px}
  .news-audio-panel .player-bar[data-open=true] .dock-panel{flex:1 1 auto}
  .player-bar[data-open=true] .dock-main{row-gap:10px}
  :root[data-news-dock=active][data-news-dock-open=true] body{overflow:hidden}
  .dock-stage-host i.dock-avatar{width:52px;height:52px}
}
.news-audio-panel .player-bar[data-entered=true]{animation:none}
@media(prefers-reduced-motion:reduce){.dock-info>summary::after{transition:none}.dock-transcript[data-full=true] #dock-turns{scroll-behavior:auto}}

/* R46 (Lane H): "Read the article" is read by one host per story. The stage names the reader and dims the
   other host; the reader's avatar and waveform side light up with the same colours as Hosts discuss. */
.dock-stage-reads{display:none;margin:10px 0 0;font:600 13.5px/1.3 var(--font-ui);color:#fff;text-align:center}
.player-bar:is([data-reading=A],[data-reading=B]) .dock-stage-reads{display:block}
.player-bar[data-reading=A] .dock-stage-host[data-speaker=B],.player-bar[data-reading=B] .dock-stage-host[data-speaker=A]{opacity:.35}

/* R53/R56 (Lane H): the player in Polish. R63: nothing English plays on /pl/; held stories wait, disabled. */
.player-bar[data-l10n-held=true] #playlist-play{display:none}
.news-audio-panel #playlist-queue button[data-held]{opacity:.62;cursor:default;font-style:italic}
.news-audio-panel #playlist-queue button[data-held]:hover{background:transparent;color:var(--news-dock-ink-2)}
/* R63 (owner): Polish runs longer; every player text wraps inside its box, nothing is cut. */
.player-bar .listen-soon,.player-bar .listen-soon>div{min-width:0}
.player-bar .listen-soon-back{white-space:normal;max-width:100%;height:auto;text-align:left;line-height:1.35}
.player-bar .listen-mode,.player-bar .listen-mode-words,.player-bar .listen-mode b{min-width:0;white-space:normal;overflow-wrap:anywhere}
.player-bar .dock-info,.player-bar .dock-transcript,.player-bar .playlist-disclosure,.player-bar .dock-status{min-width:0;overflow-wrap:anywhere}
.player-bar .dock-transcript-head{flex-wrap:wrap}
.player-bar .dock-transcript-toggle{white-space:normal;text-align:center}
/* R71: open, the title wraps to at most two lines (the fixed half stays short); the whole title is its tooltip and in the playlist. */
.player-bar[data-open=true] .player-label{white-space:normal;overflow:hidden;text-overflow:clip;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.player-bar .dock-keys{overflow-wrap:anywhere}
/* R63 (Lane G): on /pl/ an item without its Polish version shows its title and an in-progress state, never English
   text; never-translated editions are "English only" entries that open the English page. */
.news-rail.is-compact #news-rail-store,.news-rail.is-compact .news-rail-sep{display:none}
.news-rail.is-compact a[data-section]{padding:0 9px}.news-rail.is-compact a[data-section]::after{left:9px;right:9px}
.news-rail.is-tight{font-size:13.5px}.news-rail.is-tight a[data-section]{padding:0 7px;gap:6px}.news-rail.is-tight a[data-section]::after{left:7px;right:7px}
.news-rail.is-tightest .news-rail-end{display:none}
.listen-mode-words b{white-space:normal;overflow-wrap:anywhere}
.l10n-badge{display:inline-flex;align-items:center;gap:6px;max-width:100%;padding:3px 10px;border-radius:999px;background:var(--news-accent-soft);color:var(--rh-text-accent);font:600 12px/1.35 var(--font-ui);white-space:normal;overflow-wrap:anywhere}
.l10n-badge::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;flex:none;animation:l10n-pulse 1.6s ease-in-out infinite}
@keyframes l10n-pulse{50%{opacity:.35}}
@media (prefers-reduced-motion:reduce){.l10n-badge::before{animation:none}}
.l10n-progress{display:grid;gap:6px;justify-items:start;margin:8px 0 4px}
.l10n-note{margin:0;color:var(--rh-text-secondary);font-size:14.5px;line-height:1.5;max-width:60ch}
.l10n-edition{margin:12px 0;padding:12px 16px;border-radius:12px;border:1px dashed var(--news-line-strong);background:var(--news-surface-2);color:var(--rh-text-primary);font-weight:600}
.l10n-english-only{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin:8px 0 0}
.l10n-open-english{font-weight:600;color:var(--rh-text-accent);text-decoration:none}
.l10n-open-english:hover{text-decoration:underline}
.on-dark .l10n-badge,.l10n-english-only.on-dark .l10n-badge{background:#ffffff1f;color:#fff}
.l10n-english-only.on-dark .l10n-open-english{color:#fff}
.news-hero-copy>.l10n-badge{margin:4px 0 2px}
.category-card.is-translating .section-body,.category-card.is-translating .citations,.category-card.is-translating details.sources{display:none}
.news-hero-listen.is-waiting{background:#ffffff1f;color:#fff;cursor:default;box-shadow:none}
.news-hero-listen.is-waiting:hover{transform:none}
.news-hero-listen.is-waiting i{display:none}
.news-hero-listen.is-waiting{padding:9px 18px}
.news-pod-item--waiting{opacity:.85}
.news-pod-item--waiting .news-pod-item-wait{width:36px;height:36px;border-radius:50%;border:1px dashed var(--news-line-strong)}
.news-pod-note{margin:4px 0 8px;color:var(--rh-text-secondary);font-size:14px}
.news-pod-item--english{grid-template-columns:1fr}

/* R66 (Lane G): the language switch. Desktop: B, a segmented pill English | Polski (radio group). Phones (<= 560px):
   C, one flip button "PL | EN". The same element is re-filled at the breakpoint, so only one control exists. */
.news-account .news-lang[hidden]{display:none}
.news-account .news-lang[data-variant=segmented]{position:relative;display:inline-grid;grid-template-columns:1fr 1fr;align-items:center;padding:3px;height:36px;box-sizing:border-box;border-radius:999px;background:var(--rh-bg-elevated);border:1px solid var(--rh-border-default)}
.news-account .news-lang .news-lang-thumb{position:absolute;top:3px;bottom:3px;left:3px;width:calc(50% - 3px);border-radius:999px;background:var(--rh-text-primary);transition:transform .2s var(--ease)}
.news-account .news-lang .news-lang-thumb.is-pl{transform:translateX(100%)}
.news-account .news-lang .news-lang-option{all:unset;box-sizing:border-box;position:relative;z-index:1;min-width:0;padding:0 12px;text-align:center;font:600 12.5px/28px var(--font-ui);color:var(--rh-text-secondary);cursor:pointer;border-radius:999px;white-space:nowrap}
.news-account .news-lang .news-lang-option[aria-checked=true]{color:var(--rh-bg-app)}
.news-account .news-lang .news-lang-option:focus-visible{outline:2px solid var(--rh-text-accent);outline-offset:2px}
.news-account .news-lang[data-variant=button]{display:inline-flex}
.news-account .news-lang .news-lang-one{all:unset;box-sizing:border-box;display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 11px 0 9px;border-radius:999px;border:1px solid var(--news-line-strong);background:var(--rh-bg-surface);color:var(--rh-text-primary);font:600 12.5px/1 var(--font-ui);letter-spacing:.04em;cursor:pointer;white-space:nowrap}
.news-account .news-lang .news-lang-one svg{width:16px;height:16px;flex:none}
.news-account .news-lang .news-lang-now{font-weight:700}
.news-account .news-lang .news-lang-other{color:var(--rh-text-tertiary);font-weight:500;padding-left:6px;border-left:1px solid var(--rh-border-default)}
.news-account .news-lang .news-lang-one:focus-visible{outline:2px solid var(--rh-text-accent);outline-offset:2px}
@media (prefers-reduced-motion:reduce){.news-account .news-lang .news-lang-thumb{transition:none}}
/* R63 review F1 (Lane G): a long title badge ("[Private partial draft · 4 of 6 sections]") wraps inside its card. */
.news-story .title-badge{display:inline;white-space:normal;overflow-wrap:anywhere;line-height:1.9;-webkit-box-decoration-break:clone;box-decoration-break:clone}
/* R71 (owner): the top half of the open player stays put (transport, mode switch, More info, hosts and waveform,
   transcript line); only the playlist scrolls, in its own box that fills the rest. Unfolded, the full transcript
   takes that room instead and the playlist folds to its heading (open, the two share it). */
.news-audio-panel .player-bar[data-open=true]{min-height:0}
.news-audio-panel .player-bar[data-open=true] .dock-panel{display:flex;flex-direction:column;align-items:stretch;gap:14px;flex:1 1 auto;min-height:0;overflow-y:auto}
.news-audio-panel .player-bar[data-open=true] .dock-panel>*{flex:none;min-width:0}
.news-audio-panel .player-bar[data-open=true] .dock-panel>.playlist-disclosure{flex:0 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#405776 transparent}
.news-audio-panel .player-bar[data-open=true] .dock-panel>.playlist-disclosure[open]{min-height:96px}
.news-audio-panel .player-bar[data-open=true] .playlist-disclosure>summary{position:sticky;top:0;z-index:1;margin:0;padding:2px 0 8px;background:var(--news-player)}
.news-audio-panel .player-bar[data-open=true] .dock-panel>.dock-transcript[data-full=true]{flex:1 1 0;min-height:min(160px,30vh);display:flex;flex-direction:column}
.news-audio-panel .player-bar[data-open=true] .dock-transcript[data-full=true] #dock-turns{flex:1 1 auto;min-height:0;max-height:none}
.news-audio-panel .player-bar[data-open=true] .dock-panel[data-transcript=full]>.playlist-disclosure[open]{flex:1 1 0}
/* Review F1: the folded transcript line is at most 3 lines and always that high ("Full transcript" reads the rest), and
   the open title keeps a 2-line height, so the fixed half is one constant height and the playlist edge stays put. */
.news-audio-panel .player-bar[data-open=true] .player-label{min-height:calc(2 * 1.35em)}
.news-audio-panel .player-bar[data-open=true] .dock-transcript[data-full=false] #dock-turns li[data-shown=true] button{height:calc(3 * 1.5em + 16px);overflow:hidden}
.news-audio-panel .player-bar[data-open=true] .dock-transcript[data-full=false] #dock-turns li[data-shown=true] button>span{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
/* Review F2: short screens (most laptops, phones up to about 860 px high) compact the fixed half so that about three
   playlist rows show: a 1-line title, a 2-line transcript line, the hosts and waveform in one 32 px row (names beside
   the faces), a slimmer mode switch, no keyboard-help line (the shortcuts still work). */
@media(max-height:860px){
  .news-audio-panel .player-bar[data-open=true] .dock-panel{gap:8px;padding-top:10px;padding-bottom:12px}
  .news-audio-panel .player-bar[data-open=true] .player-label{-webkit-line-clamp:1;min-height:1.35em}
  .news-audio-panel .player-bar[data-open=true] .dock-transcript[data-full=false] #dock-turns li[data-shown=true] button{height:calc(2 * 1.5em + 12px);padding-top:6px;padding-bottom:6px}
  .news-audio-panel .player-bar[data-open=true] .dock-transcript[data-full=false] #dock-turns li[data-shown=true] button>span{-webkit-line-clamp:2}
  .news-audio-panel .player-bar[data-open=true] .dock-transcript-head{margin-bottom:4px}
  .news-audio-panel .player-bar[data-open=true] .dock-transcript-toggle{min-height:24px;padding:3px 10px}
  .news-audio-panel .player-bar[data-open=true] .dock-stage-host{grid-auto-flow:column;width:auto;gap:6px;align-items:center}
  .news-audio-panel .player-bar[data-open=true] .dock-stage-host i.dock-avatar{width:30px;height:30px}
  .news-audio-panel .player-bar[data-open=true] .dock-wave{height:24px}
  .news-audio-panel .player-bar[data-open=true] .dock-modes .listen-mode{padding:5px 9px;gap:8px}
  .news-audio-panel .player-bar[data-open=true] .dock-modes .listen-mode-glyph{width:26px;height:26px}
  .news-audio-panel .player-bar[data-open=true] .dock-modes .listen-mode b{font-size:13px}
  .news-audio-panel .player-bar[data-open=true] .dock-keys{display:none}
}
/* Review F2: landscape phones (480 px high or less) cannot hold a fixed half: there the whole panel scrolls under the
   transport, and the playlist is part of it (no box inside a scrolling box). */
@media(max-height:480px){
  .news-audio-panel .player-bar[data-open=true] .dock-panel>.playlist-disclosure,.news-audio-panel .player-bar[data-open=true] .dock-panel>.playlist-disclosure[open]{flex:none;min-height:0;overflow:visible}
  .news-audio-panel .player-bar[data-open=true] .playlist-disclosure>summary{position:static}
  .news-audio-panel .player-bar[data-open=true] .dock-panel>.dock-transcript[data-full=true]{flex:none}
  .news-audio-panel .player-bar[data-open=true] .dock-transcript[data-full=true] #dock-turns{max-height:70vh}
}
/* R71 review of the phone sheet: the sidebar is a grid item with z-index 8 (R43), so on phones it is a stacking context
   under the sticky masthead (30), which covered the top of the full-screen player. Open, it rises above the masthead. */
@media(max-width:860px){:root[data-news-dock-open=true] .news-sidebar{z-index:35}}
/* Owner, 28 Oct 21:26Z (Android Chrome): the full-screen player is exactly the visible screen: the dynamic viewport
   height (vh as the fallback), so the browser's URL bar never pushes its top row off screen; the top row keeps the
   safe-area inset (the player's padding-top) clear of the status bar and notch. */
@media(max-width:860px){.news-audio-panel .player-bar[data-open=true]{bottom:auto;height:100vh;height:100dvh}}
/* Phones have no keyboard: the shortcut line would only take room from the playlist. */
@media(max-width:860px){.news-audio-panel .player-bar[data-open=true] .dock-keys{display:none}}
/* R87 (owner): a simpler reader. */
/* (1, 3) The greeting line, its date and the "Public editions" badge are no longer shown, on Home and on an edition;
   the line stays in the page for screen readers as its first heading. */
.news-wrap.news-ribbon,.news-ribbon{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;margin:0;padding:0;border:0}
/* (2) The Home hero headline is clearly smaller; it is still the largest text on the page. */
.news-hero-copy h2{font-size:clamp(32px,2.6vw,38px);line-height:1.1}
@media(max-width:860px){.news-hero-copy h2{font-size:28px}.news-section-heading h2{font-size:26px}}
/* (4) The "Categories of interest" picker folds behind one line, closed by default; the card's "listening room"
   heading and the archive note show only when the edition has archive recordings to list. */
.news-interests>summary{cursor:pointer;font-size:13px;font-weight:600;color:var(--rh-text-primary);padding:2px 0}
.news-interests:has(> #category-filter[hidden]){display:none}
.news-interests .category-filter legend{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}
.news-interests .category-filter{margin-top:10px}
.news-audio-panel:not(:has(#news-edition-recordings > *)) :is(.news-audio-heading,.news-audio-policy){display:none}
.news-audio-panel:not(:has(#news-edition-recordings > *)) .news-interests .category-filter{border-top:0;padding-top:0}
/* R88 (owner): every play and pause icon sits in the optical centre of its button, at any zoom.
   The dock's button (side player and folded footer player): its hidden text made a second grid row and pushed the
   icon up; the icon is now placed on the button itself, and the triangle (15 px) moves by a sixth of its width
   towards its point so that its centroid, not its box, is on the centre. The pause bars are symmetric. */
.news-audio-panel #playlist-play{position:relative}
.news-audio-panel #playlist-play::before{position:absolute;inset:0;margin:auto;transform:translateX(2.5px)}
.news-audio-panel #playlist-play[data-state=playing]::before{margin:auto;transform:none}
/* The SVG triangles carry their own optical shift now: the old nudges would double it. */
.news-hero-listen i svg,.news-hero-mini svg,.news-pod-item-play svg{margin-left:0}
/* F3 follow-up: the phone menu's "Choose sections" link, under the sections, to Settings at Sections. */
.news-menu-choose{display:inline-flex;align-items:center;min-height:44px;padding:0 6px;margin:2px 0 4px -6px;font-size:14px;font-weight:600;color:var(--rh-text-accent);text-decoration:none}  /* review F3: a 44 px tap target */
.news-menu-choose:hover{text-decoration:underline}

/* E7.1 G1-1: members' private sections (Settings and the edition page) and the owner's public-section guidance. */
.news-ms-list{display:grid;gap:14px;margin:12px 0}
.news-ms-item{border:1px solid var(--rh-border-default);border-radius:14px;padding:14px 16px;background:var(--rh-bg-app)}
.news-ms-item h3{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font:600 17px/1.3 var(--font-display);margin:0 0 8px}
.news-ms-form{display:grid;gap:10px}
.news-ms-field{display:grid;gap:4px}
.news-ms-label{font-weight:600;font-size:14px}
.news-ms-field input,.news-ms-field textarea{width:100%;box-sizing:border-box;font:inherit;font-size:15px;padding:9px 11px;border-radius:10px;border:1px solid var(--rh-border-default);background:var(--rh-bg-surface);color:var(--rh-text-primary)}
.news-ms-field textarea{resize:vertical;min-height:88px}
.news-ms-count{justify-self:end;color:var(--rh-text-tertiary);font-size:12.5px}
.news-ms-count[data-over=true]{color:#a12a24}
.news-ms-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px}
.news-ms-save,.news-ms-add,.news-ms-cancel{border-radius:999px;padding:8px 16px;font-weight:600;font-size:14px;border:1px solid var(--rh-border-default);background:var(--rh-bg-surface);color:var(--rh-text-primary)}
.news-ms-save{background:var(--rh-text-primary);color:var(--rh-bg-app);border-color:transparent}
.news-ms-state,.news-ms-note,.news-ms-empty{color:var(--rh-text-tertiary);font-size:13.5px}
.news-ms-status{min-height:1.2em;font-size:14px;color:var(--rh-text-secondary)}
.news-ms-badge{font:700 10.5px/1 var(--font-ui);letter-spacing:.08em;text-transform:uppercase;color:var(--news-lime-ink);background:var(--news-lime);padding:5px 8px;border-radius:999px}
.news-ms-guidance{white-space:pre-wrap;margin:0 0 6px;font-family:var(--font-serif)}
.news-ms-subhead{font:600 18px/1.3 var(--font-display);margin:18px 0 4px}
.news-og-brief summary{cursor:pointer;font-weight:600;font-size:14px}
.news-og-brief-text{white-space:pre-wrap;overflow-wrap:anywhere;max-height:320px;overflow:auto;font-size:13px;background:var(--rh-bg-surface);border:1px solid var(--rh-border-default);border-radius:10px;padding:10px}
.news-ms-block{margin-top:28px;border-top:1px solid var(--rh-border-default);padding-top:12px}
.news-ms-heading{font:600 22px/1.25 var(--font-display);margin:0 0 8px}
.news-ms-kicker{color:var(--news-lime-ink)}
.news-ms-name{font-weight:600;margin:0 0 6px}
.news-ms-placeholder{color:var(--rh-text-secondary);font-style:italic}
.news-ms-why{font-size:15px}
