*{box-sizing:border-box}
:root{--ink:#111412;--rail:#0d100e;--rail2:#151917;--cream:#f3efe6;--paper:#fbf8f1;--line:#d8d3c9;--green:#146d48;--green2:#1f8a5e;--muted:#6f746f}
html,body{margin:0;min-height:100%;background:#080d0a;color:var(--ink)}
body{font-family:Arial,Helvetica,sans-serif}
button,input{font:inherit}
button{cursor:pointer}
.stage{min-height:100vh;padding:22px;background:radial-gradient(circle at 5% 8%,rgba(34,103,70,.22),transparent 31%),linear-gradient(145deg,#07100b,#0a100d 58%,#050806)}
.preview-note{max-width:1580px;margin:0 auto 10px;color:#a8b0aa;font-size:10px;letter-spacing:.16em;text-transform:uppercase;display:flex;justify-content:space-between}
.preview-note span{color:#6f7b73;letter-spacing:.08em;text-transform:none}
.app-shell{max-width:1580px;margin:auto;background:var(--cream);border:1px solid rgba(255,255,255,.22);border-radius:18px;overflow:hidden;box-shadow:0 30px 90px rgba(0,0,0,.52);position:relative;padding-bottom:92px}
.app-layout{display:grid;grid-template-columns:228px minmax(0,1fr);min-height:860px}
.side-rail{background:linear-gradient(180deg,#111412,#090b0a);color:#fff;padding:26px 18px 22px;border-right:1px solid #262b28;display:flex;flex-direction:column;gap:22px}
.wordmark{display:flex;align-items:center;gap:12px;color:#fff;text-decoration:none;padding:0 5px}
.wordmark img{width:50px;height:50px;object-fit:cover;border-radius:50%;filter:grayscale(1)}
.wordmark span{font:600 14px/1.05 Georgia,'Times New Roman',serif;letter-spacing:.13em}
.rail-search{height:46px;border:1px solid #454d48;border-radius:9px;background:#151a17;display:flex;align-items:center;gap:8px;padding:0 12px}
.search-mark{font-size:22px;transform:rotate(-18deg);color:#d6dbd7}
.rail-search input{min-width:0;width:100%;border:0;outline:0;background:transparent;color:#f0f2ef;font-size:13px}
.rail-search input::placeholder{color:#8f9791}
.rail-nav{display:flex;flex-direction:column;gap:4px}
.rail-nav a{min-height:43px;padding:0 12px;border-radius:7px;color:#cbd0cc;text-decoration:none;display:flex;align-items:center;justify-content:space-between;font-size:13px}
.rail-nav a:hover{background:#171d19;color:#fff}
.rail-nav a.active{background:#f1eee6;color:#111412;font-weight:700}
.rail-nav a b{font-size:18px;font-weight:400;color:#6d756f}
.rail-nav a.active b{color:var(--green)}
.rail-rule{height:1px;background:#262c28;margin:7px 4px}
.rail-foot{margin-top:auto;border-top:1px solid #252b27;padding:18px 8px 0;display:flex;gap:9px;align-items:center}
.live-dot{width:8px;height:8px;border-radius:50%;background:var(--green2);box-shadow:0 0 0 4px rgba(31,138,94,.12)}
.rail-foot small{display:block;color:#718078;font-size:8px;letter-spacing:.15em;margin-bottom:3px}
.rail-foot strong{display:block;color:#d4d9d5;font-size:11px;font-weight:600}
.app-main{min-width:0;background:var(--cream)}
.content-bar{height:82px;padding:0 30px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;background:#f8f5ee}
.content-bar small{display:block;color:var(--green);font-size:9px;font-weight:800;letter-spacing:.15em;margin-bottom:4px}
.content-bar strong{font:600 22px/1 Georgia,'Times New Roman',serif}
.content-actions{display:flex;align-items:center;gap:8px}
.content-actions button{border:1px solid #d4d0c7;background:#fffaf2;border-radius:999px;min-height:36px;padding:0 14px;color:#363a36;font-size:11px}
.content-actions .live-button{border-color:var(--green);background:var(--green);color:#fff;font-weight:700}
.dashboard{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(360px,.88fr);grid-template-areas:'continue companion' 'recent follow';background:var(--cream)}
.panel{padding:29px 31px;border-bottom:1px solid var(--line)}
.continue{grid-area:continue;border-right:1px solid var(--line)}
.companion{grid-area:companion}
.recent{grid-area:recent;border-right:1px solid var(--line)}
.follow{grid-area:follow}
.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:16px}
.section-head.compact{align-items:flex-start}
.kicker{display:block;color:#68706a;font-size:8px;font-weight:800;letter-spacing:.16em;margin-bottom:7px}
.section-head h1,.section-head h2{font:600 29px/1 Georgia,'Times New Roman',serif;margin:0;letter-spacing:-.03em}
.section-link{border:0;background:transparent;color:#5f655f;font-size:10px;padding:6px 0}
.section-link span{color:var(--green);font-size:16px;margin-left:4px}
.continue-card{display:grid;grid-template-columns:41% 1fr;background:var(--paper);border:1px solid #ddd8ce;border-radius:11px;overflow:hidden;box-shadow:0 7px 20px rgba(52,45,34,.05)}
.hero-art{min-height:287px;background-size:cover;background-position:center;position:relative;filter:grayscale(1)}
.hero-art:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 42%,rgba(0,0,0,.66))}
.art-label{position:absolute;z-index:2;left:20px;bottom:18px;color:#fff;font:700 13px/1.2 Georgia,serif;letter-spacing:.08em}
.episode-copy{padding:29px 28px 20px;display:flex;flex-direction:column}
.eyebrow{color:var(--green);font-size:9px;font-weight:800;letter-spacing:.16em;margin-bottom:8px}
.episode-copy h2,.voice-feature h3{font:600 27px/1.04 Georgia,'Times New Roman',serif;margin:0 0 8px;letter-spacing:-.025em}
.meta{color:#666b66;font-size:11px;margin:0 0 14px}
.dek{font:15px/1.45 Georgia,'Times New Roman',serif;color:#525752;max-width:540px;margin:0 0 18px}
.resume-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:17px}
.play-main{display:inline-flex;align-items:center;gap:10px;border:0;background:transparent;padding:0;color:#161a17;font-weight:700}
.play-main span{display:grid;place-items:center;width:43px;height:43px;border-radius:50%;background:var(--green);color:#fff;font-size:14px}
.more{border:0;background:transparent;font-size:23px;color:#454944}
.progress-line{height:5px;background:#d2d1c9;border-radius:999px;margin-top:auto;overflow:hidden}
.progress-line i{display:block;height:100%;background:var(--green2);border-radius:inherit}
.time-row{display:flex;justify-content:space-between;font-size:9px;color:#777c77;margin-top:6px}
.companion-list{background:var(--paper);border:1px solid #ddd8ce;border-radius:11px;padding:2px 18px}
.companion-list button{width:100%;min-height:68px;border:0;border-bottom:1px solid #dfdbd3;background:transparent;display:grid;grid-template-columns:40px 1fr 18px;align-items:center;text-align:left;color:#191c19}
.companion-list button:last-child{border-bottom:0}
.companion-list button:hover strong{color:var(--green)}
.companion-list .ico{width:29px;height:29px;border-radius:50%;border:1px solid #aac2b5;display:grid;place-items:center;color:var(--green);font-size:9px;font-weight:800}
.companion-list strong{display:block;font-size:13px;margin-bottom:4px}
.companion-list em{display:block;font-style:normal;font-size:10px;color:#747974}
.companion-list b{font-size:20px;font-weight:400;color:#565c57}
.companion-detail{margin-top:10px;border-radius:8px;background:#10251a;color:#f3f0e8;padding:15px 17px;font:13px/1.5 Georgia,serif}
.recent-list{display:grid}
.recent-item{display:grid;grid-template-columns:70px 1fr 28px;align-items:center;min-height:72px;border:0;border-bottom:1px solid #ddd8cf;background:transparent;text-align:left;padding:7px 3px;color:#171a17}
.recent-item:hover{background:#f8f4ec}
.recent-item .thumb{display:grid;place-items:center;width:61px;height:55px;border-radius:6px;background:linear-gradient(145deg,#202522,#666b66);color:#fff;font:700 21px Georgia,serif}
.recent-item strong{display:block;font:600 15px Georgia,serif}
.recent-item em{display:block;font-style:normal;font-size:10px;color:#555b56;margin-top:3px;padding-right:68px}
.recent-item small{float:right;margin-top:-17px;font-size:9px;color:#888d88}
.recent-item>b{font-size:19px;font-weight:400;color:#4a4f4b}
.voice-feature{display:grid;grid-template-columns:150px 1fr;gap:20px;align-items:center}
.voice-portrait{height:152px;border-radius:8px;background:radial-gradient(circle at 37% 28%,#737a74,#262b27 46%,#111411 75%);position:relative;overflow:hidden;border:1px solid #202620}
.voice-portrait:before{content:"";position:absolute;width:90px;height:130px;border-radius:50% 50% 42% 42%;background:rgba(255,255,255,.05);left:29px;top:24px}
.portrait-label{position:absolute;left:18px;bottom:14px;color:#fff;font:700 33px Georgia,serif;letter-spacing:-.04em}
.voice-portrait small{position:absolute;right:-28px;top:48px;transform:rotate(90deg);font-size:7px;letter-spacing:.18em;color:#8da093}
.voice-feature p{font-size:11px;line-height:1.45;color:#5e645f;margin:0 0 14px}
.green-button{border:0;border-radius:6px;background:var(--green);color:#fff;min-height:39px;padding:0 15px;font-weight:700;font-size:11px}
.green-button:hover{background:#0d5638}
.green-button span{margin-left:15px}
.voice-row{display:flex;gap:11px;margin-top:19px;align-items:flex-start;justify-content:space-between}
.voice-row button{border:0;background:transparent;padding:0;color:#171a17;width:59px}
.voice-row button span{display:grid;place-items:center;width:52px;height:52px;margin:auto;border:1px solid #8f9790;border-radius:50%;background:linear-gradient(145deg,#606660,#181c19);color:#fff;font:700 13px Georgia,serif}
.voice-row button:hover span{box-shadow:0 0 0 3px rgba(31,138,94,.18);border-color:var(--green2)}
.voice-row em{display:block;font-style:normal;font-size:8px;line-height:1.1;margin-top:6px;color:#3f4540}
.player-bar{position:absolute;left:0;right:0;bottom:0;height:92px;background:linear-gradient(180deg,#111612,#070a08);border-top:3px solid var(--green2);color:#f3f5f2;display:grid;grid-template-columns:196px minmax(260px,1.1fr) minmax(250px,.8fr) minmax(290px,1fr);align-items:center;padding:0 25px 0 18px;gap:18px}
.player-brand{height:56px;border-right:1px solid #2c332e;display:flex;align-items:center;gap:9px}
.player-brand span{font:700 23px Georgia,serif;letter-spacing:.02em}
.player-brand small{font-size:8px;letter-spacing:.2em;color:#7e8a82}
.now-block{display:grid;grid-template-columns:58px 1fr;align-items:center;gap:13px;min-width:0}
.now-art{width:58px;height:58px;border-radius:6px;background-size:cover;background-position:center;filter:grayscale(1)}
.now-copy{min-width:0}
.now-copy strong{display:block;font:600 15px Georgia,serif;margin-bottom:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.now-copy span{display:block;font-size:9px;color:#a8b0aa;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.player-controls{display:flex;justify-content:center;align-items:center;gap:18px}
.player-controls button,.player-time button{border:0;background:transparent;color:#f2f4f0;font-size:15px}
.player-controls .pause{width:48px;height:48px;border-radius:50%;border:2px solid #e7ebe7;background:var(--green);font-size:17px}
.player-time{display:flex;align-items:center;justify-content:flex-end;gap:11px;font-size:9px;color:#c4cac5}
.player-time i{width:125px;height:4px;background:#303832;border-radius:99px;position:relative}
.player-time i b{display:block;width:68%;height:100%;background:var(--green2);border-radius:inherit}
.search-hidden{display:none!important}
.pulse{animation:pulse .45s ease}
@keyframes pulse{50%{transform:scale(.98)}}
@media(max-width:1250px){
  .stage{padding:14px}.app-layout{grid-template-columns:204px minmax(0,1fr)}
  .dashboard{grid-template-columns:1fr;grid-template-areas:'continue' 'companion' 'recent' 'follow'}
  .continue,.recent{border-right:0}.voice-feature{grid-template-columns:180px 1fr}
  .player-bar{grid-template-columns:166px minmax(230px,1fr) 240px}.player-time{display:none}
}
@media(max-width:860px){
  .stage{padding:0}.preview-note{padding:10px 14px;margin:0}.app-shell{border-radius:0;border-left:0;border-right:0;padding-bottom:82px}
  .app-layout{display:block}.side-rail{padding:13px 14px;display:grid;grid-template-columns:170px 1fr;gap:10px 14px;position:relative}
  .wordmark{padding:0}.wordmark img{width:42px;height:42px}.wordmark span{font-size:12px}
  .rail-search{height:42px}.rail-nav{grid-column:1/-1;display:flex;flex-direction:row;overflow-x:auto;padding-bottom:2px;gap:6px;scrollbar-width:none}.rail-nav::-webkit-scrollbar{display:none}
  .rail-nav a{white-space:nowrap;min-height:38px;background:#171c18;padding:0 12px}.rail-nav a b,.rail-rule,.rail-foot{display:none}
  .content-bar{height:68px;padding:0 18px}.content-actions button:not(.live-button){display:none}.content-actions .live-button{min-height:34px;padding:0 12px}
  .panel{padding:23px 18px}.voice-feature{grid-template-columns:145px 1fr}
  .player-bar{position:fixed;z-index:50;height:82px;grid-template-columns:minmax(0,1fr) 190px;padding:0 14px}.player-brand{display:none}.now-block{grid-template-columns:48px 1fr}.now-art{width:48px;height:48px}.player-time{display:none}
}
@media(max-width:620px){
  .preview-note span{display:none}.side-rail{grid-template-columns:145px 1fr}.rail-search input{font-size:12px}
  .content-bar strong{font-size:19px}.section-head{align-items:flex-start}.section-head h1,.section-head h2{font-size:25px}.section-link{display:none}
  .continue-card{grid-template-columns:1fr}.hero-art{min-height:205px}.episode-copy{padding:21px}.dek{font-size:14px}
  .voice-feature{grid-template-columns:1fr}.voice-portrait{height:180px}.voice-row{overflow-x:auto;justify-content:flex-start;padding-bottom:4px}
  .recent-item em{padding-right:0}.recent-item small{float:none;display:block;margin:4px 0 0}
  .player-bar{grid-template-columns:minmax(0,1fr) 54px}.player-controls button{display:none}.player-controls .pause{display:block;width:44px;height:44px}.now-copy strong{font-size:13px}.now-copy span{font-size:8px}
}