@import url("./portrait.css");
:root{line-height:1.5}

/* Monthly roles share the frozen portrait visual baseline. */
[hidden]{display:none!important}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.monthly-heading .monthly-title{white-space:normal}
.monthly-heading .monthly-title>span{margin-top:0}
.route-note,.scene-intro{font-size:13px;font-weight:400;line-height:1.9;letter-spacing:normal;color:#666;margin:0 0 24px}
.route-note{margin-bottom:18px}
.recommendation{font-size:13px;font-weight:400;line-height:1.9;letter-spacing:normal;color:#555;min-width:0}
.recommendation p{margin:0 0 14px}
.recommendation p:last-child{margin-bottom:0}
.track-links{font-size:11px;font-weight:400;line-height:1.5;letter-spacing:normal;color:#666;margin:14px 0 0}
.track-links>a:not(.ref){color:#666}
.track-links>a:not(.ref):hover{color:#1da0c3}
.ref{display:inline-block;vertical-align:super;font-size:9px;font-weight:400;line-height:1;letter-spacing:0;color:#1da0c3;margin-left:5px;padding:3px 1px}
.status{display:inline-block;font-size:10px;font-weight:400;line-height:1.8;letter-spacing:normal;color:#777;background:transparent;border:0;padding:0;margin-top:7px}
.status:before{content:"· ";color:#999}
.cover-placeholder{display:grid;place-items:center;width:56px;height:56px;background:#f5f5f5;color:#888;font-size:15px}
.margin-anchor{height:1px}
.scene .section-top{min-width:0}
.scene .section-top h2,.song-story h3,.song-story h4,.source-detail,.route-tabs button{overflow-wrap:anywhere}
.closing-section{padding-top:0}
.source-detail p:last-child{margin-bottom:0}
@media(max-width:767px){
 .monthly-heading .monthly-title>span{margin-top:0}
 .ref{font-size:8px}
 .cover-placeholder{width:39px;height:39px}
 .track-play{position:relative}
 .track-play:before{content:"";position:absolute;width:44px;height:44px;top:50%;left:50%;transform:translate(-50%,-50%)}
 .recommendation{grid-column:2}
 .route-controls button{min-width:0;flex:1}
 .hero-deck p{min-width:0}
}
@media print{.listening,.closing-actions{display:none}}

/* Local audio: the magazine keeps its original editorial typography. */
.hero>img{object-position:38% 45%}
.playlist-player{border-bottom:1px solid #eee;padding:0 0 24px;margin-bottom:24px;min-width:0}
.playlist-controls{display:flex;align-items:center;justify-content:space-between;gap:18px}
.playlist-start{border:1px solid #111;padding:10px 14px;font-size:12px;line-height:18px;color:#222;min-height:44px}
.playlist-start>span{margin-left:20px;font-size:10px}
.playlist-start:hover{background:#111;color:#fff}
.skip-controls{display:flex;gap:20px;flex-shrink:0}
.skip-controls button{font-size:11px;line-height:18px;color:#666;min-height:44px;padding:8px 0}
.skip-controls button:hover{color:#111}
.now-playing{font-size:12px;line-height:1.8;color:#555;overflow-wrap:anywhere;margin:20px 0 10px}
#monthly-audio{display:block;width:100%;min-width:0;height:44px}
.player-status{font-size:10px;line-height:1.8;color:#888;margin:10px 0 0;min-height:18px}
button.track-play{padding:0;flex-shrink:0}
button.track-play>span{font-size:11px;line-height:1}
.current-track .track-number{color:#1da0c3}
.track-play[aria-pressed="true"]{background:#111;color:#fff}
.story-play{font-size:11px;color:#666;padding:6px 0;line-height:18px;min-height:32px}
.story-play>[aria-hidden]{display:inline-block;width:14px;font-size:9px}
.story-play:hover{color:#1da0c3}
.fallback-audio{display:block;width:100%;max-width:330px;min-width:0;height:40px;margin-top:12px}
.js-audio-ready .fallback-audio{display:none}
button:disabled{cursor:default;color:#aaa}
.scene-intro:empty{display:none}
@media(max-width:767px){
 .playlist-controls{gap:12px;align-items:center;flex-wrap:wrap}
 .playlist-start{font-size:11px;padding:8px 12px}
 .playlist-start>span{margin-left:12px}
 .skip-controls{gap:18px}
 .playlist-player{padding-bottom:20px;margin-bottom:20px}
 .now-playing{font-size:11px;margin-top:16px}
 .story-play{min-height:44px}
}
@media print{.playlist-player,.story-play,.fallback-audio{display:none}}
