/* TopPodcasters Player */
.tpnp{--mg:#FFB400;--beat:.8333s;color:#fff;font-family:"Instrument Sans",system-ui,sans-serif}

/* frame + vintage mic badge that breathes from gold to golden white */
.tpnp-frame{position:relative;padding:6px;border-radius:14px;background:#151515;box-shadow:inset 0 0 0 1px #2A2A2A}
.tpnp-mic{position:absolute;z-index:3;top:-16px;right:22px;display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:#000;box-shadow:0 0 0 2px #151515;color:#FFB400;animation:tpnp-mic 3.2s ease-in-out infinite alternate}
.tpnp-mic svg{width:26px;height:32px;overflow:visible}
@keyframes tpnp-mic{from{color:#FFB400;filter:drop-shadow(0 0 0 rgba(255,200,80,0))}to{color:#FFF1C9;filter:drop-shadow(0 0 10px rgba(255,214,120,.55))}}

/* sound-on prompt for muted autoplay */
.tpnp-sound{position:absolute;z-index:3;top:14px;left:14px;display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 16px 0 12px;border:0;border-radius:6px;background:#FFB400;color:#000;font:900 20px/1 "Big Shoulders Display","Arial Narrow",Impact,sans-serif;text-transform:uppercase;cursor:pointer;box-shadow:0 8px 24px rgba(0,0,0,.4)}
.tpnp-sound[hidden]{display:none}
.tpnp-sound svg{width:22px;height:22px}
.tpnp-sound:hover{background:#FFF1C9}
.tpnp-sound:focus-visible{outline:3px solid #fff;outline-offset:2px}

.tpnp-hold{position:relative;aspect-ratio:16/9}
.tpnp-screen{position:absolute;inset:0;background:#0d0d0d;overflow:hidden;border-radius:9px}
.tpnp-screen iframe{position:absolute;inset:0;width:100%;height:100%;border:0}

/* cover */
.tpnp-cover{position:absolute;inset:0;z-index:2;display:block;width:100%;height:100%;padding:0;border:0;background:#000;cursor:pointer;color:inherit;font:inherit}
.tpnp-cover__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.7,.2,1),filter .4s}
.tpnp-cover__scrim{position:absolute;inset:auto 0 0 0;height:55%;background:linear-gradient(transparent,rgba(0,0,0,.72))}
.tpnp-cover:hover .tpnp-cover__img{transform:scale(1.03);filter:brightness(1.08)}
.tpnp-cover:focus-visible{outline:4px solid var(--mg);outline-offset:-4px}

/* play pill */
.tpnp-play{position:absolute;left:clamp(14px,3vw,28px);bottom:clamp(14px,3vw,28px);display:inline-flex;align-items:center;gap:12px;background:var(--mg);color:#000;border-radius:6px;padding:10px 16px 10px 12px;box-shadow:0 10px 30px rgba(0,0,0,.35);animation:tpnp-in .7s cubic-bezier(.2,.8,.2,1.2) both .15s}
.tpnp-play__icon{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:#000;color:var(--mg)}
.tpnp-play__icon svg{width:20px;height:20px;margin-left:3px}
.tpnp-play__label{font:900 clamp(22px,2.6vw,30px)/1 "Big Shoulders Display","Arial Narrow",Impact,sans-serif;text-transform:uppercase;padding-top:2px}
.tpnp-eq{display:flex;align-items:flex-end;gap:3px;height:24px;margin-left:2px}
.tpnp-eq i{width:4px;height:100%;border-radius:1px;background:#000;transform-origin:bottom;transform:scaleY(.3);animation:tpnp-eqbeat var(--beat) ease-in-out infinite}
.tpnp-eq i:nth-child(2){animation-delay:.05s}.tpnp-eq i:nth-child(3){animation-delay:.1s}.tpnp-eq i:nth-child(4){animation-delay:.15s}.tpnp-eq i:nth-child(5){animation-delay:.2s}.tpnp-eq i:nth-child(6){animation-delay:.25s}
@keyframes tpnp-eqbeat{0%{transform:scaleY(.3)}10%{transform:scaleY(1)}20%{transform:scaleY(.5)}30%{transform:scaleY(.85)}50%,100%{transform:scaleY(.3)}}
.tpnp.is-loading .tpnp-eq i{animation-duration:.4s}
.tpnp.is-loading .tpnp-cover__img{transform:scale(1.06);filter:brightness(.6)}
.tpnp.is-playing .tpnp-cover{opacity:0;pointer-events:none;transition:opacity .45s}
@keyframes tpnp-in{from{opacity:0;transform:translateY(18px) scale(.92)}to{opacity:1;transform:none}}

/* toolbar */
.tpnp-bar{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:16px 0 0}
.tpnp-actions{display:flex;flex-wrap:wrap;gap:8px}
.tpnp-btn{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 16px;border:2px solid #3A3A3A;border-radius:4px;background:transparent;color:#fff;font:600 15px/1 "Instrument Sans",system-ui,sans-serif;text-decoration:none;cursor:pointer}
.tpnp-btn:hover,.tpnp-btn[aria-pressed="true"]{border-color:#fff}
.tpnp-btn--mic{border:0;padding:0 18px 0 14px;background:#000;color:var(--mg);box-shadow:inset 0 0 0 2px var(--mg);font:900 20px/1 "Big Shoulders Display","Arial Narrow",Impact,sans-serif;text-transform:uppercase;letter-spacing:.01em}
.tpnp-btn--mic svg{width:20px;height:20px;transition:transform .25s}
.tpnp-btn--mic:hover,.tpnp-btn--mic[aria-expanded="true"]{background:var(--mg);color:#000}
.tpnp-btn--mic[aria-expanded="true"] svg{transform:rotate(-18deg)}
.tpnp-btn:focus-visible,.tpnp-share a:focus-visible,.tpnp-share button:focus-visible,.tpnp-share input:focus-visible{outline:3px solid var(--mg);outline-offset:2px}

/* share card */
.tpnp-share{margin-top:14px;max-width:640px;padding:16px;border-radius:10px;background:#111;border:1px solid #2A2A2A;box-shadow:inset 0 3px 0 var(--mg);animation:tpnp-pop .3s cubic-bezier(.2,.8,.2,1.2) both}
.tpnp-share[hidden]{display:none}
.tpnp-share__head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 16px;margin-bottom:12px}
.tpnp-share__title{font:900 22px/1 "Big Shoulders Display","Arial Narrow",Impact,sans-serif;text-transform:uppercase}
.tpnp-share__at[hidden]{display:none}
.tpnp-share__at{display:inline-flex;align-items:center;gap:8px;font-size:14px;cursor:pointer}
.tpnp-share__at input{width:18px;height:18px;accent-color:var(--mg)}
.tpnp-share__at b{color:var(--mg)}
.tpnp-share__link-row{display:flex;margin-bottom:12px}
.tpnp-share__url{flex:1;min-width:0;height:44px;padding:0 12px;border:1px solid #3A3A3A;border-right:0;border-radius:4px 0 0 4px;background:#000;color:#DADADA;font:400 14px/1 "Instrument Sans",system-ui,sans-serif}
.tpnp-share__copy{height:44px;padding:0 18px;border:0;border-radius:0 4px 4px 0;background:var(--mg);color:#000;font:700 15px/1 "Instrument Sans",system-ui,sans-serif;cursor:pointer}
.tpnp-share__to{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}
.tpnp-share__dest{display:flex;align-items:center;justify-content:center;min-height:44px;border-radius:4px;background:#1C1C1C;color:#fff;font:600 14px/1 "Instrument Sans",system-ui,sans-serif;text-decoration:none}
.tpnp-share__dest:hover{background:#fff;color:#000}
@keyframes tpnp-pop{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}

/* sticky mini player */
.tpnp-dock{display:none}
.tpnp.is-docked .tpnp-screen{position:fixed;inset:auto 20px 20px auto;width:min(440px,44vw);height:auto;aspect-ratio:16/9;z-index:9990;overflow:visible;border-radius:0 0 8px 8px;box-shadow:0 0 0 3px var(--mg),0 18px 50px rgba(0,0,0,.5);animation:tpnp-dock .35s cubic-bezier(.2,.8,.2,1.1) both}
.tpnp.is-docked .tpnp-dock{display:flex;align-items:center;gap:6px;position:absolute;left:-3px;right:-3px;bottom:100%;height:40px;padding:0 6px 0 12px;background:var(--mg);color:#000;border-radius:8px 8px 0 0}
.tpnp-dock__title{flex:1;min-width:0;font-size:13px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tpnp-dock__btn{min-height:30px;padding:0 10px;border:0;border-radius:4px;background:#000;color:#fff;font:600 13px/1 "Instrument Sans",system-ui,sans-serif;cursor:pointer}
.tpnp-dock__btn:hover{background:#fff;color:#000}
.tpnp-dock__btn:focus-visible{outline:3px solid #000;outline-offset:1px}
@keyframes tpnp-dock{from{opacity:0;transform:translateY(24px) scale(.96)}to{opacity:1;transform:none}}

.tpnp.is-docked .tpnp-sound{top:8px;left:8px;min-height:36px;font-size:16px}

/* chapters */
.tpnp-chapters{max-width:72ch;margin:6px 0 14px}
.tpnp-chapters__h{font:900 28px/1 "Big Shoulders Display","Arial Narrow",Impact,sans-serif;text-transform:uppercase;margin:0 0 10px}
.tpnp-chapters__list{list-style:none;margin:0;padding:0;border-top:1px solid #D9D9D9}
.tpnp-ch{display:flex;align-items:baseline;gap:14px;width:100%;min-height:44px;padding:10px 4px;border:0;border-bottom:1px solid #D9D9D9;background:none;color:#000;font:500 16px/1.35 "Instrument Sans",system-ui,sans-serif;text-align:left;cursor:pointer}
.tpnp-ch:hover{background:#F2F2F2}
.tpnp-ch:focus-visible{outline:3px solid #1F47D6;outline-offset:-3px}
.tpnp-ch__t{flex:none;min-width:4.2em;padding:3px 7px 2px;border-radius:3px;background:var(--g,#FFB400);color:var(--gi,#000);font:800 15px/1 "Big Shoulders Display","Arial Narrow",Impact,sans-serif;text-align:center;letter-spacing:.02em}
.tpnp-ch.is-current{font-weight:700}

/* theater mode */
.tpn-stage.is-theater .tpn-stage__in{max-width:1680px}

@media (max-width:700px){
	.tpnp-frame{padding:4px;border-radius:10px}
	.tpnp-mic{top:-13px;right:14px;width:38px;height:38px}
	.tpnp-mic svg{width:21px;height:26px}
	.tpnp-screen{border-radius:7px}
	.tpnp.is-docked .tpnp-screen{inset:auto 0 env(safe-area-inset-bottom,0px) 0;width:100%;border-radius:0;box-shadow:0 -12px 30px rgba(0,0,0,.5)}
	.tpnp.is-docked .tpnp-dock{left:0;right:0;border-radius:0}
	body:has(.tpnp.is-docked){padding-bottom:calc(56.25vw + 40px + env(safe-area-inset-bottom,0px))}
	.tpnp-share__to{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:600px){
	.tpnp-play{gap:8px;padding:8px 12px 8px 8px}
	.tpnp-play__icon{width:34px;height:34px}
	.tpnp-theater{display:none}
}
@media (prefers-reduced-motion:reduce){
	.tpnp-mic,.tpnp-play,.tpnp-share,.tpnp.is-docked .tpnp-screen{animation:none!important}
	.tpnp-eq i{animation:none!important;transform:scaleY(.6)}
	.tpnp-cover__img{transition:none}
}
