:root{
  --paper:#f4eadb;--paper-2:#e7d8c3;--white:#fffaf2;--ink:#27172d;--soft:#71606f;--line:rgba(70,39,68,.17);
  --accent:#c4563f;--accent-soft:#e7a465;--leaf:#6f8063;--plum:#3c2445;
  --display:"Baskerville","Iowan Old Style","Palatino Linotype",Georgia,serif;
  --sans:"Avenir Next",Avenir,"Century Gothic",Futura,sans-serif;--mono:"SFMono-Regular",Consolas,monospace;
  --ease:cubic-bezier(.22,1,.36,1);
}
*{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;padding:0 0 190px;background:radial-gradient(circle at 78% 8%,rgba(231,164,101,.25),transparent 28%),var(--paper);color:var(--ink);font-family:var(--sans);font-size:17px;line-height:1.55;-webkit-font-smoothing:antialiased}
body:after{content:"";position:fixed;inset:0;z-index:60;pointer-events:none;opacity:.035;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.7'/%3E%3C/svg%3E")}
button,input,select{font:inherit}button,a,input,select{outline-offset:4px}:focus-visible{outline:2px solid var(--ink)}
.skip-link{position:fixed;left:20px;top:-70px;z-index:70;background:var(--ink);color:#fff;padding:12px 18px;text-decoration:none}.skip-link:focus{top:20px}
.topbar{padding:28px 32px 0;border-bottom:1px solid var(--line)}
.masthead,.intro,.search-wrap,.controls,.years,main{width:min(1180px,calc(100% - 64px));margin-inline:auto}
.masthead{display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:13px}
.brand-mark{display:grid;place-items:center;width:38px;height:38px;background:var(--accent);color:var(--white);font-family:var(--display);font-size:19px;font-style:italic;box-shadow:6px 6px 0 var(--accent-soft)}
.brand-name{font-size:16px;font-weight:650;letter-spacing:-.02em}.brand-sub{padding-left:13px;border-left:1px solid var(--line);color:var(--soft);font-size:13px}
.install{padding:10px 18px;border:0;border-radius:999px;background:var(--ink);color:#fff;font-size:14px;font-weight:600;cursor:pointer;transition:transform .4s var(--ease),background .4s var(--ease)}.install:hover{transform:translateY(-2px);background:#30302d}.install:active{transform:scale(.97)}
.intro{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(330px,.75fr);align-items:end;gap:9vw;padding:90px 0 72px}
.eyebrow{display:flex;align-items:center;gap:16px;margin:0 0 25px;color:var(--soft);font-size:14px}.eyebrow span{padding:7px 13px;border-radius:999px;background:var(--leaf);color:var(--white);font-size:12px}
h1{margin:0;font-family:var(--display);font-size:clamp(78px,10vw,142px);font-weight:400;line-height:.72;letter-spacing:-.075em;color:var(--plum)}h1 em{padding-left:.55em;font-weight:400;color:var(--accent)}
.intro-copy{max-width:590px;margin:46px 0 0;font-size:20px;line-height:1.55;color:var(--soft);text-wrap:pretty}
.hero-art{position:relative;min-height:385px;overflow:hidden;border-radius:38px 38px 5px 38px;background:linear-gradient(145deg,var(--plum),#592f4d);color:var(--white);box-shadow:0 35px 70px rgba(80,43,66,.22),inset 0 1px rgba(255,255,255,.16)}
.hero-edition,.hero-caption{position:absolute;z-index:2;font-size:13px;line-height:1.35}.hero-edition{left:28px;top:26px}.hero-caption{right:28px;bottom:26px;text-align:right;color:#e9b99f}
.hero-disc{position:absolute;width:320px;height:320px;right:-63px;top:32px;border:1px solid rgba(255,255,255,.18);border-radius:50%;background:repeating-radial-gradient(circle,#bc4f3e 0,#bc4f3e 3px,#d67654 4px,#bc4f3e 6px);animation:drift 14s var(--ease) infinite alternate}.hero-disc:before{content:"";position:absolute;inset:65px;border-radius:50%;background:var(--accent-soft)}.hero-disc:after{content:"";position:absolute;inset:139px;border:10px solid var(--plum);border-radius:50%;background:#f7d98d}.hero-disc i{position:absolute;z-index:1;inset:111px;border:1px solid var(--plum);border-radius:50%}@keyframes drift{to{transform:rotate(18deg) translate(-5px,4px)}}
.search-wrap{position:relative;margin-bottom:14px;padding:7px;border-radius:20px;background:rgba(18,18,17,.06)}
.search{display:block;width:100%;height:68px;padding:0 90px 0 58px;border:0;border-radius:14px;background:var(--white);color:var(--ink);font-size:17px;box-shadow:inset 0 1px rgba(255,255,255,.9),0 8px 25px rgba(95,55,63,.08);appearance:none}.search::placeholder{color:#8b737e}.search:focus{outline:0;box-shadow:inset 0 0 0 2px var(--accent)}
.search-icon{position:absolute;left:29px;top:30px;width:17px;height:17px;border:1.7px solid var(--ink);border-radius:50%}.search-icon:after{content:"";position:absolute;width:7px;height:1.7px;right:-5px;bottom:-2px;background:var(--ink);transform:rotate(45deg)}kbd{position:absolute;right:23px;top:24px;padding:7px 10px;border-radius:7px;background:var(--paper-2);color:var(--soft);font-family:var(--mono);font-size:11px;box-shadow:inset 0 0 0 1px var(--line)}
.controls{display:grid;grid-template-columns:1fr auto auto;gap:10px;margin-bottom:17px}.select,.saved-toggle{height:48px;border:0;border-radius:12px;background:rgba(255,250,242,.78);color:var(--ink);font-size:14px;cursor:pointer;box-shadow:inset 0 0 0 1px var(--line);transition:transform .35s var(--ease),background .35s var(--ease)}.select{min-width:0;padding:0 42px 0 16px;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='9' height='6'%3E%3Cpath d='M0 0l4.5 6L9 0z' fill='%2371606f'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center}.saved-toggle{padding:0 21px;font-weight:600}.select:hover,.saved-toggle:hover{transform:translateY(-1px);background:var(--white)}.saved-toggle[aria-pressed="true"]{background:var(--accent);color:#fff;box-shadow:none}
.years{display:flex;gap:5px;overflow-x:auto;scrollbar-width:none}.years::-webkit-scrollbar{display:none}.years button{flex:none;padding:14px 14px 17px;border:0;border-bottom:2px solid transparent;background:none;color:var(--soft);font-family:var(--mono);font-size:12px;cursor:pointer;transition:color .35s var(--ease)}.years button:hover{color:var(--accent)}.years button.active{border-bottom-color:var(--accent);color:var(--accent);font-weight:700}
main{padding:70px 0 80px}.library-heading{display:flex;align-items:end;justify-content:space-between;padding-bottom:28px;border-bottom:2px solid var(--plum)}h2{margin:0;font-family:var(--display);font-size:48px;font-weight:400;letter-spacing:-.045em;color:var(--plum)}.count{margin:0 0 8px;color:var(--soft);font-size:14px}
.list{list-style:none;margin:0;padding:0}.list li{display:grid;grid-template-columns:42px 58px minmax(0,1fr) 46px;align-items:center;gap:20px;min-height:124px;padding:24px 8px;border-bottom:1px solid var(--line);cursor:pointer;transition:transform .5s var(--ease),background .5s var(--ease),padding .5s var(--ease);animation:row-in .7s var(--ease) both}.list li:hover{padding-inline:18px;background:rgba(251,250,247,.8);transform:scale(1.006)}@keyframes row-in{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
.episode-no{font-family:var(--display);font-size:17px;font-style:italic;color:#8d8981;font-variant-numeric:tabular-nums}.row-body{min-width:0}.row-title{overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-family:var(--display);font-size:23px;font-weight:500;line-height:1.25;letter-spacing:-.018em}.row-meta{overflow:hidden;margin-top:10px;color:var(--soft);font-size:14px;white-space:nowrap;text-overflow:ellipsis}.row-meta .len{font-family:var(--mono);font-size:12px;color:#77736c}.tag{display:inline-block;margin-left:10px;padding:4px 8px;border-radius:999px;background:var(--paper-2);color:#65625c;font-size:10px;letter-spacing:.04em;vertical-align:1px}
.play-btn{display:grid;place-items:center;width:56px;height:56px;border:0;border-radius:50%;background:var(--white);color:var(--plum);box-shadow:inset 0 0 0 1px var(--line),0 7px 18px rgba(94,50,68,.09);cursor:pointer;transition:transform .5s var(--ease),background .5s var(--ease),color .5s var(--ease)}.play-btn svg{width:16px;height:16px;margin-left:2px}.play-btn:hover,.play-btn.playing,.play-btn.loading{transform:scale(1.07);background:var(--accent);color:#fff}.play-btn:active,.pbtn:active{transform:scale(.95)}
.audio-loader{display:block;width:18px;height:18px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:spin .75s infinite}.pbtn .audio-loader{width:20px;height:20px}.player.is-loading .seek{opacity:.45}.player.is-loading .np-title{opacity:.82}
.save-btn{display:grid;place-items:center;width:44px;height:44px;border:0;border-radius:50%;background:transparent;color:var(--soft);cursor:pointer;transition:transform .4s var(--ease),background .4s var(--ease),color .4s var(--ease)}.save-btn svg{width:20px;height:20px}.save-btn:hover{transform:translateY(-2px);background:var(--paper-2);color:var(--accent)}.save-btn.saved{background:var(--leaf);color:#fff}.save-btn.saving svg{animation:spin 1s infinite}@keyframes spin{to{transform:rotate(360deg)}}
.load-more{display:block;margin:38px auto 0;padding:14px 22px;border:0;border-radius:999px;background:var(--ink);color:#fff;font-size:14px;cursor:pointer;transition:transform .4s var(--ease)}.load-more:hover{transform:translateY(-3px)}.empty{text-align:center;padding:110px 24px}.empty-title{margin:0;font-family:var(--display);font-size:24px;color:var(--soft)}
.player{position:fixed;left:22px;right:22px;bottom:20px;z-index:40;width:min(1180px,calc(100% - 44px));margin:auto;padding:10px;border-radius:28px;background:rgba(196,86,63,.2);box-shadow:0 26px 60px rgba(78,38,61,.28);backdrop-filter:blur(18px);animation:player-up .65s var(--ease)}.player:before{content:"";position:absolute;inset:10px;border-radius:20px;background:linear-gradient(105deg,var(--plum),#4b2948);z-index:-1}@keyframes player-up{from{opacity:0;transform:translateY(35px) scale(.98)}to{opacity:1;transform:none}}
.player-main{display:grid;grid-template-columns:70px minmax(220px,1fr) auto minmax(180px,1fr);align-items:center;gap:18px;padding:10px 12px 7px;color:#fff}.cover{position:relative;width:70px;height:70px;overflow:hidden;border-radius:14px 14px 3px 14px;background:var(--accent-soft);color:var(--plum)}.cover span{position:absolute;left:9px;top:7px;font-family:var(--display);font-size:16px;font-style:italic}.cover i{position:absolute;width:55px;height:55px;right:-14px;bottom:-15px;border:11px solid var(--accent);border-radius:50%}.np{min-width:0}.np-label{margin-bottom:4px;color:#d9b4a8;font-size:11px}.np-title{overflow:hidden;font-family:var(--display);font-size:18px;line-height:1.2;white-space:nowrap;text-overflow:ellipsis}.np-meta{overflow:hidden;margin-top:6px;color:#c6aab6;font-size:12px;white-space:nowrap;text-overflow:ellipsis}.player-controls{display:flex;align-items:center;gap:5px}.player-actions{display:flex;justify-content:flex-end;align-items:center;gap:5px}.pbtn{display:grid;place-items:center;width:44px;height:44px;border:0;border-radius:50%;background:none;color:#d7bcc9;text-decoration:none;cursor:pointer;transition:transform .4s var(--ease),background .4s var(--ease),color .4s var(--ease)}.pbtn:hover{transform:translateY(-2px);background:#63394f;color:#fff}.pbtn svg{width:19px;height:19px}.pbtn.play{width:58px;height:58px;background:var(--accent-soft);color:var(--plum);box-shadow:0 9px 24px rgba(25,10,26,.22)}.pbtn.play:hover{background:#f0be80}.pbtn.play svg{width:21px;height:21px}.pbtn.saved{color:#fff}#rate{width:auto;padding:0 12px;font-family:var(--mono);font-size:13px;font-weight:700}
.timeline{display:grid;grid-template-columns:44px 1fr 44px;align-items:center;gap:10px;padding:0 18px 6px;color:#777773;font-family:var(--mono);font-size:10px;font-variant-numeric:tabular-nums}.timeline span:last-child{text-align:right}.seek{width:100%;height:16px;margin:0;background:transparent;cursor:pointer;appearance:none}.seek::-webkit-slider-runnable-track{height:3px;border-radius:2px;background:#41413e}.seek::-moz-range-track{height:3px;background:#41413e}.seek::-webkit-slider-thumb{width:11px;height:11px;margin-top:-4px;border:0;border-radius:50%;background:var(--white);appearance:none}.seek::-moz-range-thumb{width:11px;height:11px;border:0;border-radius:50%;background:var(--white)}
@media(max-width:820px){body{padding-bottom:180px}.topbar{padding:20px 16px 0}.masthead,.intro,.search-wrap,.controls,.years,main{width:100%}.brand-sub,kbd{display:none}.intro{display:block;padding:60px 0 45px}.intro-copy-block{width:100%}h1{font-size:clamp(68px,22vw,100px);line-height:.76}.intro-copy{margin-top:35px;font-size:18px}.hero-art{min-height:240px;margin-top:44px;border-radius:28px 28px 4px 28px}.hero-disc{width:250px;height:250px;right:-45px;top:0}.hero-disc:before{inset:52px}.hero-disc:after{inset:108px}.hero-disc i{inset:88px}.search{height:62px}.controls{grid-template-columns:minmax(0,1fr) auto}.select:nth-child(2){display:none}main{padding:50px 16px 70px}.library-heading{padding-bottom:22px}h2{font-size:38px}.count{font-size:12px}.list li{grid-template-columns:54px minmax(0,1fr) 42px;gap:15px;min-height:115px;padding:21px 4px}.list li:hover{padding-inline:4px;transform:none}.episode-no{display:none}.row-title{font-size:20px}.row-meta{font-size:13px}.tag{display:none}.play-btn{width:52px;height:52px}.player{left:8px;right:8px;bottom:8px;width:calc(100% - 16px);padding:7px;border-radius:22px}.player:before{inset:7px;border-radius:16px}.player-main{grid-template-columns:54px minmax(0,1fr) auto;padding:9px 9px 5px;gap:11px}.cover{width:54px;height:54px;border-radius:11px}.cover i{width:44px;height:44px;border-width:9px}.player-actions{display:none}.player-controls{gap:0}.pbtn{width:35px;height:35px}.pbtn.play{width:48px;height:48px}.np-label{font-size:9px}.np-title{font-size:15px}.np-meta{font-size:10px}.timeline{padding-inline:12px}}
@media(max-width:430px){.eyebrow{font-size:12px;gap:10px}.eyebrow span{font-size:10px}.cover{display:none}.player-main{grid-template-columns:minmax(0,1fr) auto}.player-controls #prev{display:none}.player-controls #next{display:none}.search{padding-right:16px}.saved-toggle{padding-inline:15px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
