/* Optional companion controls retain the archive's paper/forest/gold palette. */
.podcast-listen { border:1px solid #d8c7a5; border-radius:999px; background:#fff8e8; color:#12391f; font:inherit; font-weight:700; padding:10px 16px; cursor:pointer; min-height:44px; }
.card > .podcast-listen { position:absolute; left:12px; top:12px; z-index:4; }
.main-poster > .podcast-listen { position:absolute; left:14px; bottom:14px; z-index:4; }
.podcast-listen:focus-visible,.podcast-dismiss:focus-visible { outline:3px solid #b87408; outline-offset:3px; }
.podcast-player[hidden] { display:none; }
.podcast-player { position:fixed; z-index:100; bottom:0; left:0; right:0; display:grid; grid-template-columns:56px minmax(100px,1fr) minmax(250px,380px) 44px; align-items:center; gap:12px; padding:12px max(16px,env(safe-area-inset-right)) calc(12px + env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left)); background:#fff8e8; color:#12391f; border-top:1px solid #d8c7a5; box-shadow:0 -4px 24px #12391f18; }
.podcast-thumbnail { width:56px; height:64px; object-fit:contain; border-radius:6px; background:#eee5d2; }
.podcast-context { min-width:0; }
.podcast-context strong { display:block; font-family:'Fraunces',Georgia,serif; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.podcast-context small { display:block; font-size:12px; line-height:1.4; margin-top:3px; }
.podcast-player audio { width:100%; min-width:0; }
.podcast-dismiss { color:#12391f; border:1px solid #d8c7a5; background:transparent; border-radius:50%; width:44px; height:44px; font-size:24px; cursor:pointer; }
body.podcast-active { padding-bottom:calc(var(--podcast-player-height,160px) + 16px); }
@media(max-width:640px) {
 .podcast-player { grid-template-columns:44px minmax(0,1fr) 44px; gap:8px 12px; }
 .podcast-thumbnail { width:44px; height:52px; }
 .podcast-player audio { grid-column:1 / -1; grid-row:2; }
}
