:root{font-family:system-ui,sans-serif;color:#f7f7f4;background:#101113;--muted:#aaaeb0;--accent:#b8f578}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--accent);outline-offset:4px}a{color:inherit}.app{min-height:100vh;display:grid;grid-template-columns:248px 1fr}.rail{border-right:1px solid #28292b;padding:28px 22px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh}.brand{font-family:system-ui,sans-serif;font-size:35px;font-weight:700;text-decoration:none;line-height:1}.brand span,.mark-dot,.cover>span span{color:var(--accent)}.rail-label,.eyebrow,.top,.edition,.now-label,.player-bottom,.section-head>span,.chapter-meta,.rail-bottom,.private{font-size:10px;font-weight:700;letter-spacing:.14em}.rail-label{margin:67px 0 17px;color:#73777a}.nav-item{display:flex;align-items:center;gap:14px;width:100%;padding:12px 13px;margin:3px 0;color:#9c9fa2;background:none;border:0;border-radius:9px;text-align:left;font-size:14px}.nav-item.active{background:#272b25;color:#e9f8db}.icon{font-size:18px}.rail-bottom{margin-top:auto;color:#62686b;line-height:1.5}.logout{margin-top:20px;background:none;border:0;color:#9da2a3;padding:0;font-size:12px}.main{max-width:1580px;width:100%;margin:auto;padding:0 5.5vw 100px}.top{display:flex;justify-content:space-between;padding:33px 0;border-bottom:1px solid #28292b;color:#b8bbbc}.top-slash{color:#636768;margin:0 12px}.private{color:var(--accent)}.heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin:54px 0 38px}.eyebrow{color:var(--accent);margin:0 0 13px}.heading h1{font:600 clamp(36px,4vw,63px)/1.04 system-ui,sans-serif;letter-spacing:-.035em;margin:0}.intro{color:var(--muted);line-height:1.55;margin:16px 0 0;max-width:690px}.edition{color:#818789;white-space:nowrap}.player-shell{border:1px solid #343638;background:#1a1c1e;border-radius:18px;overflow:hidden}.player-top{display:grid;grid-template-columns:minmax(230px,37%) 1fr;min-height:360px}.cover{background:#b8f578;color:#101113;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;min-height:300px}.cover-ring{position:absolute;width:80%;aspect-ratio:1;border:2px solid #527f2f;border-radius:50%;opacity:.35;box-shadow:0 0 0 38px #b8f578,0 0 0 40px #527f2f,0 0 0 78px #b8f578,0 0 0 80px #527f2f}.cover>span{z-index:1;font:700 clamp(64px,9vw,128px)/1 system-ui,sans-serif;letter-spacing:-.09em}.cover>span span{color:#1a1c1e}.cover small{position:absolute;bottom:27px;left:28px;font-size:10px;font-weight:700;letter-spacing:.2em;line-height:1.4}.player-main{padding:39px clamp(28px,4vw,68px);display:flex;flex-direction:column}.now-label{color:var(--accent);display:flex;align-items:center;gap:9px}.live-dot{width:7px;height:7px;background:var(--accent);border-radius:50%}.player-main h2{font:600 clamp(25px,2.8vw,40px)/1.12 system-ui,sans-serif;letter-spacing:-.025em;margin:32px 0 9px}.player-main p{color:#aaafb1;line-height:1.5;margin:0;max-width:520px;font-size:14px}.timeline{margin-top:auto;padding-top:28px}.timeline label{position:absolute;clip:rect(0 0 0 0)}#seek{width:100%;height:6px;accent-color:var(--accent);cursor:pointer}.timestamps{display:flex;justify-content:space-between;color:#a8acae;font-size:11px;font-variant-numeric:tabular-nums;margin-top:7px}.controls{display:flex;align-items:center;justify-content:center;gap:30px;margin-top:13px;position:relative}.controls button{background:none;border:0;color:#eceeed;width:36px;height:36px;padding:5px}.controls svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.controls .play{width:54px;height:54px;background:var(--accent);color:#101113;border-radius:50%;display:grid;place-items:center;padding:14px}.play svg{fill:currentColor;stroke:none}.controls .speed{position:absolute;right:0;font-size:13px;color:#bec4c3}.player-bottom{display:flex;justify-content:space-between;background:#202325;padding:17px 29px;color:#a6acae;border-top:1px solid #343638}.content-grid{display:grid;grid-template-columns:minmax(280px,42%) 1fr;gap:50px;margin-top:47px}.section-head{display:flex;align-items:baseline;justify-content:space-between;border-bottom:1px solid #343638;padding-bottom:17px;margin-bottom:9px}.section-head h2{font:600 22px system-ui;letter-spacing:-.02em;margin:0}.section-head span{color:#858c8e}.chapter{width:100%;display:flex;align-items:center;gap:16px;text-align:left;border:0;border-bottom:1px solid #2a2d2f;background:none;color:#d1d4d4;padding:19px 9px}.chapter:hover,.chapter.active{background:#202620}.chapter.active{color:var(--accent)}.chapter-index{font:500 12px system-ui;color:#87908d;min-width:25px}.chapter-body{flex:1}.chapter-title{font-weight:600;display:block;font-size:14px}.chapter-meta{display:block;color:#858c8e;margin-top:7px}.chapter-arrow{font-size:20px}#chapter-context{padding:18px 0;color:#bbc0c1;line-height:1.75;font-size:14px;max-width:680px}#chapter-context h3{font:600 27px system-ui;color:#fff;line-height:1.2;margin:0 0 14px}#chapter-context p{margin:0 0 16px}#chapter-context a{color:var(--accent);text-decoration:underline;text-underline-offset:3px}#chapter-context ul{padding-left:20px}.archive-list{margin-top:45px}.archive-entry{border-bottom:1px solid #343638;padding:22px 6px;display:flex;align-items:center;justify-content:space-between;gap:20px}.archive-entry strong{font:600 22px system-ui}.archive-entry p{color:#aeb3b5;margin:7px 0 0}.archive-entry button{border:1px solid #7e9470;border-radius:50px;padding:10px 18px;background:transparent;color:var(--accent)}[hidden]{display:none!important}.login{min-height:100vh;background:#101113;display:grid;place-items:center}.login-box{width:min(440px,calc(100vw - 44px))}.mark{font:700 48px system-ui}.login h1{font:600 clamp(38px,7vw,58px)/1.08 system-ui;letter-spacing:-.035em;margin:46px 0 12px}.login p{color:#aeb3b5}.login form{margin-top:48px;display:grid;gap:12px}.login label{font-size:12px;color:#c5c9ca}.login input{background:#25282a;border:1px solid #555b5c;border-radius:9px;padding:15px;color:white}.login button{border:0;border-radius:9px;background:var(--accent);font-weight:700;padding:15px;display:flex;justify-content:space-between}@media(max-width:850px){.app{display:block}.rail{height:auto;position:static;border:0;border-bottom:1px solid #28292b;padding:15px 22px;flex-direction:row;align-items:center;justify-content:space-between}.brand{font-size:28px}.rail-label,.rail-bottom{display:none}.rail nav{display:flex}.nav-item{width:auto;font-size:12px;padding:8px}.main{padding:0 22px 80px}.top{padding:20px 0}.heading{margin:36px 0 26px}.edition{display:none}.player-top{grid-template-columns:1fr}.cover{min-height:250px}.cover-ring{width:240px}.cover>span{font-size:90px}.player-main{min-height:340px}.content-grid{grid-template-columns:1fr;gap:34px}.player-bottom{font-size:9px}}@media(max-width:480px){.top{font-size:9px}.private{display:none}.nav-item .icon{display:none}.heading h1{font-size:37px}.cover{min-height:210px}.player-main{padding:28px 23px}.player-bottom span:last-child{display:none}.chapter{padding:17px 5px}}
@media(max-width:480px){.heading{margin:27px 0 22px}.eyebrow{margin-bottom:8px}.intro{margin-top:10px;font-size:14px}.cover{min-height:140px;height:140px}.cover-ring{width:200px}.cover>span{font-size:74px}.cover small{bottom:14px;left:18px;font-size:8px}.player-main{min-height:258px;padding:21px 23px}.player-main h2{margin:15px 0 5px}.timeline{padding-top:15px}.controls{margin-top:8px}.content-grid{margin-top:28px}}
.mobile-start,.mobile-program,.mini-player{display:none}.program-sheet{border:0;padding:0}
@media(max-width:850px){
  body.sheet-open{overflow:hidden}
  .mobile-start{display:inline-flex;align-items:center;gap:22px;margin-top:22px;border:0;background:var(--accent);color:#101113;border-radius:999px;padding:12px 17px;font-size:13px;font-weight:700}
  .mobile-start:disabled{opacity:.5;cursor:not-allowed}
  #player-view .player-shell,#player-view .chapters{display:none}
  #player-view .content-grid{display:block;margin-top:31px}
  #player-view .context{display:flex;flex-direction:column;height:calc(100dvh - 350px);min-height:300px;overflow:hidden}
  #player-view .context .section-head{flex:none;margin-bottom:0}
  #chapter-context{overflow-y:auto;overscroll-behavior:contain;flex:1;max-width:none;padding:24px 1px 40px;font-size:15px;scrollbar-color:#565d5d transparent}
  #chapter-context h3{font-size:clamp(29px,7vw,42px);letter-spacing:-.025em;margin-bottom:16px}
  #chapter-context .context-summary{font-size:18px;color:#eff1ed;line-height:1.45}
  #chapter-context h4{color:var(--accent);margin:27px 0 8px}
  .mobile-program{display:flex;align-items:center;justify-content:space-between;flex:none;width:100%;margin-top:10px;padding:13px 16px;border-radius:9px;border:1px solid #4b5550;background:#1f2920;color:#d7f0d1;text-align:left;font-weight:600}
  .has-mini .main{padding-bottom:126px}
  .mini-player:not([hidden]){display:block;position:fixed;z-index:20;left:12px;right:12px;bottom:calc(10px + env(safe-area-inset-bottom));background:#252a27;border:1px solid #566157;border-radius:13px;box-shadow:0 14px 35px rgba(0,0,0,.42);overflow:hidden}
  .mini-progress{height:7px;background:#3d4640}
  .mini-progress input{display:block;width:100%;height:7px;margin:0;accent-color:var(--accent);cursor:pointer}
  .mini-main{display:flex;align-items:center;gap:8px;min-height:70px;padding:8px 10px 10px 15px}
  .mini-topic{flex:1;min-width:0;border:0;background:none;color:white;text-align:left;padding:0;display:flex;flex-direction:column;gap:3px}
  .mini-topic span{font-weight:700;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
  .mini-topic small{color:#b5bcb5;font-size:11px;font-variant-numeric:tabular-nums}
  .mini-control{width:34px;height:38px;flex:none;padding:6px;border:0;background:none;color:white}
  .mini-control svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
  .mini-play{width:40px;height:40px;border-radius:50%;background:var(--accent);color:#101113;padding:10px}
  .mini-play svg{fill:currentColor;stroke:none}
  .program-sheet[open]{display:flex;flex-direction:column;position:fixed;inset:auto 0 0;width:100%;max-width:700px;height:min(78dvh,760px);max-height:none;margin:auto auto 0;background:#202422;color:#f5f7f3;border:1px solid #526053;border-bottom:0;border-radius:21px 21px 0 0;box-shadow:0 -20px 70px rgba(0,0,0,.35);overflow:hidden}
  .program-sheet::backdrop{background:rgba(0,0,0,.68)}
  .sheet-handle{width:100%;height:30px;flex:none;touch-action:pan-y;position:relative}
  .sheet-handle::after{content:'';position:absolute;top:11px;left:calc(50% - 22px);width:44px;height:5px;border-radius:99px;background:#819082}
  .sheet-heading{display:flex;justify-content:space-between;align-items:start;padding:8px 22px 0}
  .sheet-heading p{color:var(--accent);font-size:10px;font-weight:700;letter-spacing:.16em;margin:0 0 8px}
  .sheet-heading h2{font:600 30px/1.1 system-ui;margin:0;letter-spacing:-.025em}
  .sheet-heading button{background:#343b35;border:0;border-radius:50%;color:white;width:34px;height:34px}
  .sheet-hint{padding:0 22px;color:#b7beb8;font-size:13px;margin:13px 0 14px}
  .sheet-chapters{padding:0 15px calc(25px + env(safe-area-inset-bottom));overflow-y:auto;overscroll-behavior:contain;scrollbar-color:#657267 transparent}
  .sheet-chapters .chapter{padding:18px 10px;min-height:70px}
  .sheet-chapters .chapter.active{border-radius:9px}
}
@media(max-width:480px){#player-view .context{height:calc(100dvh - 340px)}.heading{margin-bottom:20px}.mobile-start{margin-top:16px}#player-view .content-grid{margin-top:22px}.context .section-head h2{font-size:20px}}
@media(prefers-reduced-motion:no-preference){.program-sheet[open]{animation:sheet-in .25s cubic-bezier(.2,.8,.2,1)}@keyframes sheet-in{from{transform:translateY(30px);opacity:.8}to{transform:translateY(0);opacity:1}}}
@media(max-width:850px){.has-mini .mobile-start{display:none}}
/* Listening view: a continuous transcript-like brief, separate from the landing brief. */
.listening-view{display:none}
@media(max-width:850px){
  #player-view:not(.is-listening) .player-shell,#player-view:not(.is-listening) .chapters{display:block}
  #player-view:not(.is-listening) .content-grid{display:grid;grid-template-columns:1fr}
  #player-view:not(.is-listening) .context{height:auto;min-height:0;overflow:visible}
  #player-view:not(.is-listening) #chapter-context{overflow:visible}
  #player-view.is-listening>.heading,#player-view.is-listening>.player-shell,#player-view.is-listening>.content-grid{display:none!important}
  #player-view.is-listening .listening-view{display:flex;flex-direction:column;height:calc(100dvh - 174px);min-height:340px}
  .listening-header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:21px 0 12px;color:#9ca69f;font-size:12px}
  .listening-header button{background:none;border:0;padding:8px 0;color:#d7ead0;font-size:13px}
  .listening-tools{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 0 12px;border-bottom:1px solid #333a34}
  .listening-tools button{background:none;border:0;color:#abb8ac;font-size:12px;padding:8px 0;text-align:left}
  .listening-tools button[aria-pressed=true],.listening-tools #sync-chapter{color:var(--accent)}
  .listening-sections{position:relative;flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-color:#657267 transparent;scroll-padding-top:24px;mask-image:linear-gradient(to bottom,transparent,#000 30px,#000 calc(100% - 55px),transparent)}
  .listening-section{padding:28px 2px 42px;max-width:680px;min-height:42vh;opacity:.48;transition:opacity .35s ease;border-bottom:1px solid #343b35;scroll-margin-top:16px}
  .listening-section.is-current{opacity:1}
  .listening-section.is-past{opacity:.35}
  .listening-number{font-size:11px;letter-spacing:.12em;color:var(--accent);font-weight:700}
  .listening-section h2{font-size:clamp(30px,7vw,47px);line-height:1.12;letter-spacing:-.025em;margin:14px 0 20px}
  .listening-section p{font-size:16px;line-height:1.7;color:#d2d9d2;max-width:68ch}
  .listening-section .listening-summary{font-size:19px;line-height:1.5;color:#f1f4ef}
  .listening-section h3{font-size:14px;color:var(--accent);margin-top:30px}
  .listening-section ul{padding-left:20px;line-height:1.7}
  .listening-section a{color:var(--accent);text-underline-offset:3px}
  .mini-topic{cursor:pointer}
}
@media(max-width:480px){#player-view.is-listening .listening-view{height:calc(100dvh - 162px)}.listening-section{min-height:48vh}}
@media(prefers-reduced-motion:reduce){.listening-section{transition:none}}
@media(max-width:850px){.listening-section.is-browsed{opacity:1}}
@media(max-width:850px){
  body:has(#player-view.is-listening) .top{display:none}
  #player-view.is-listening .listening-view{height:calc(100dvh - 156px)}
  .listening-header{align-items:center;padding:20px 0 16px;border-bottom:1px solid #343b35}
  .listening-kicker{display:block;color:var(--accent);font-size:10px;font-weight:700;letter-spacing:.14em;margin-bottom:7px}
  .listening-header h1{font-size:clamp(21px,5.5vw,28px);letter-spacing:-.025em;line-height:1.2;margin:0}
  .listening-header button{display:grid;place-items:center;flex:none;width:42px;height:42px;border-radius:50%;background:#303832;border:1px solid #536153;color:#f4f7f2;font-size:20px}
  .listening-sections{mask-image:linear-gradient(to bottom,transparent,#000 14px,#000 calc(100% - 24px),transparent)}
  .listening-section{opacity:.72}
  .listening-section.is-past{opacity:.62}
  .mini-player:not([hidden]){left:0;right:0;bottom:0;border:0;border-top:1px solid #47544a;border-radius:0;background:#202722;box-shadow:0 -12px 38px rgba(0,0,0,.28);overflow:visible;padding-bottom:env(safe-area-inset-bottom)}
  .mini-progress{height:23px;background:transparent;padding:7px 18px 0}
  .mini-progress input{width:100%;height:16px;margin:0;appearance:none;background:transparent;display:block}
  .mini-progress input::-webkit-slider-runnable-track{height:4px;border-radius:4px;background:linear-gradient(to right,var(--accent) var(--value),#5c685f var(--value))}
  .mini-progress input::-moz-range-track{height:4px;border-radius:4px;background:#5c685f}
  .mini-progress input::-moz-range-progress{height:4px;background:var(--accent)}
  .mini-progress input::-webkit-slider-thumb{appearance:none;width:16px;height:16px;margin-top:-6px;border:3px solid #202722;border-radius:50%;background:var(--accent);box-shadow:0 0 0 1px #c8f5a1}
  .mini-progress input::-moz-range-thumb{width:13px;height:13px;border:2px solid #202722;border-radius:50%;background:var(--accent)}
  .mini-main{padding:5px 16px 13px;min-height:65px;gap:11px}
  .mini-topic span{font-size:13px}
  .mini-topic small{font-size:12px}
  .mini-open{color:var(--accent)}
  .program-sheet[open]{width:100%;max-width:700px;height:min(76dvh,700px);border-radius:18px 18px 0 0;touch-action:none}
  .sheet-heading,.sheet-handle{touch-action:none;user-select:none}
  .sheet-chapters{touch-action:pan-y}
}
@media(max-width:480px){#player-view.is-listening .listening-view{height:calc(100dvh - 145px)}}
@media(max-width:850px){
  .listen-from-here{display:inline-flex;align-items:center;gap:9px;background:#2c382c;border:1px solid #61775c;border-radius:999px;color:#ddf5d4;padding:9px 13px;font-size:12px;font-weight:700;margin:0 0 14px}
  .listen-from-here span{font-size:11px}
  .listen-from-here time{font-variant-numeric:tabular-nums;color:#b3c9ad;font-weight:500}
}
/* Installed/mobile viewport: keep controls clear of notches and the home indicator. */
.login{padding:calc(24px + env(safe-area-inset-top)) calc(22px + env(safe-area-inset-right)) calc(24px + env(safe-area-inset-bottom)) calc(22px + env(safe-area-inset-left))}
.listening-header button svg{width:19px;height:19px;display:block;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}
@media(max-width:850px){
  .rail{padding-top:calc(15px + env(safe-area-inset-top));padding-left:calc(22px + env(safe-area-inset-left));padding-right:calc(22px + env(safe-area-inset-right))}
  .main{padding-left:calc(22px + env(safe-area-inset-left));padding-right:calc(22px + env(safe-area-inset-right));padding-bottom:calc(80px + env(safe-area-inset-bottom));min-width:0}
  .has-mini .main{padding-bottom:calc(126px + env(safe-area-inset-bottom))}
  #player-view.is-listening .listening-view{height:calc(100dvh - 156px - env(safe-area-inset-top) - env(safe-area-inset-bottom))}
  .mini-main{padding-left:calc(16px + env(safe-area-inset-left));padding-right:calc(16px + env(safe-area-inset-right))}
  .mini-progress{padding-left:calc(18px + env(safe-area-inset-left));padding-right:calc(18px + env(safe-area-inset-right))}
  .mini-control{width:40px;height:44px;padding:4px}
  .mini-play{width:42px;height:42px;padding:10px}
  .controls button:not(.play):not(.speed){width:44px;height:44px;padding:4px}
  .program-sheet[open]{height:min(76dvh,700px);max-height:calc(100dvh - env(safe-area-inset-top));padding-bottom:env(safe-area-inset-bottom)}
  .sheet-heading{padding-left:calc(22px + env(safe-area-inset-left));padding-right:calc(22px + env(safe-area-inset-right))}
  .sheet-hint{padding-left:calc(22px + env(safe-area-inset-left));padding-right:calc(22px + env(safe-area-inset-right))}
  .sheet-chapters{padding-left:calc(15px + env(safe-area-inset-left));padding-right:calc(15px + env(safe-area-inset-right))}
}
@media(max-width:480px){#player-view.is-listening .listening-view{height:calc(100dvh - 145px - env(safe-area-inset-top) - env(safe-area-inset-bottom))}}
@media(max-height:580px) and (max-width:850px){#player-view.is-listening .listening-view{min-height:220px;height:calc(100dvh - 130px - env(safe-area-inset-top) - env(safe-area-inset-bottom))}.program-sheet[open]{height:min(90dvh,700px)}}
