[hidden]{display:none!important}
:root{color-scheme:light;--navy:#092553;--blue:#087cff;--soft:#ebf4ff;--muted:#4c6081;--line:#dfe8f3;--bg:#f9fbff;--shadow:0 10px 32px rgba(29,67,115,.055);font-family:Inter,"Segoe UI",Arial,sans-serif;font-synthesis:none}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--bg);color:var(--navy)}html{scroll-behavior:smooth}button,select,input{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default;opacity:.45}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #61a6ff;outline-offset:3px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.shell{width:100%;min-height:100vh;display:grid;grid-template-rows:auto minmax(0,1fr) auto auto;gap:0;max-width:1950px;margin:auto;background:linear-gradient(#fff 0 100px,#f9fbff 101px);}
.masthead{height:91px;display:flex;align-items:center;gap:26px;padding:12px clamp(20px,3vw,52px);border-bottom:1px solid var(--line);background:#fff}.brand{display:flex;align-items:center;flex:0 0 auto}.brand img{height:64px;width:auto;object-fit:contain;max-width:min(245px,24vw)}.brand-tagline{border-left:1px solid #c9d5e6;padding-left:28px;color:#41577f;font-size:clamp(14px,1.4vw,19px);white-space:nowrap;line-height:1.25}.header-spacer{flex:1}.language-control{position:relative}.language-control select{appearance:none;-webkit-appearance:none;display:block;min-height:45px;padding:9px 39px 9px 16px;border:1px solid #dce8f7;border-radius:12px;background:#fff;color:var(--navy);font-weight:650;font-size:16px;cursor:pointer}.chevron{pointer-events:none;position:absolute;right:15px;top:8px;font-size:22px}.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;white-space:nowrap;min-height:47px;padding:11px 20px;border-radius:12px;border:1px solid transparent;text-decoration:none;font-size:16px;font-weight:700;line-height:1.2;transition:background .16s,transform .16s}.button:active:not(:disabled){transform:translateY(1px)}.button-primary{color:#fff;background:#087bfa}.button-primary:hover{background:#005dd4}.button-outline{background:#fff;color:var(--navy);border-color:#cad7e9}.button-outline:hover:not(:disabled){background:#e9f3ff}.header-app{min-width:166px}
.main-grid{display:grid;grid-template-columns:minmax(0,1.58fr) minmax(440px,1fr);gap:22px;padding:20px clamp(20px,3vw,52px) 12px;min-height:0;max-height:100%;}
.player-column{min-height:0;display:flex;flex-direction:column;gap:10px}.art-frame{width:100%;flex:1 1 auto;min-height:200px;max-height:52vh;overflow:hidden;border-radius:15px;background:#e6eef7;box-shadow:var(--shadow)}.art-button{position:relative;display:block;width:100%;height:100%;border:none;padding:0;background:transparent;overflow:hidden}.art-button img{width:100%;height:100%;object-fit:cover;object-position:center 45%;display:block}.view-art{position:absolute;right:12px;bottom:12px;background:#08234bcc;color:#fff;padding:8px 12px;border-radius:8px;font-size:12px;font-weight:650;opacity:0;transition:opacity .15s}.art-button:hover .view-art,.art-button:focus-visible .view-art{opacity:1}.player-info{flex:0 0 auto;min-height:92px;display:flex;flex-direction:column;justify-content:center;gap:4px}.eyebrow{color:var(--blue);font-size:clamp(12px,1.2vw,15px);font-weight:800;letter-spacing:.08em;text-transform:uppercase}.player-info h1{margin:1px 0;font-size:clamp(23px,2.65vw,36px);line-height:1.12;letter-spacing:-.035em;font-weight:800}.episode-ref{color:#526787;font-size:clamp(14px,1.45vw,20px)}.audio-controls{min-height:66px;display:flex;gap:18px;align-items:center}.round-play{border:0;border-radius:50%;background:var(--blue);height:68px;width:68px;min-width:68px;color:#fff;display:grid;place-items:center;box-shadow:0 5px 15px rgba(0,109,243,.15)}.round-play svg{width:29px;height:29px}.round-play:hover{background:#005dd4}.round-play:disabled{opacity:.5}.progress-container{width:100%;min-width:0}.progress-container input{height:25px;width:100%;margin:0;cursor:pointer;accent-color:var(--blue)}.time-row{display:flex;justify-content:space-between;color:#53688b;font-size:14px;font-variant-numeric:tabular-nums}.player-status{margin:0;color:#7c4e18;font-size:13px;line-height:1.25;min-height:0}.player-status:empty{display:none}.episode-navigation{border-top:1px solid var(--line);padding-top:10px;display:flex;justify-content:space-between;gap:8px}.episode-navigation .button{min-width:154px}.episode-navigation .button:disabled{opacity:.38}
.playlist-panel{border:1px solid #e8eef6;box-shadow:var(--shadow);border-radius:16px;background:#fff;padding:20px 18px;min-width:0;min-height:0;display:flex;flex-direction:column}.playlist-heading{flex:0 0 auto;padding:0 6px 9px}.playlist-heading h2{margin:0 0 3px;font-size:clamp(23px,2.2vw,32px);letter-spacing:-.025em;line-height:1.13}.playlist-heading p{margin:0;color:#52688e;font-size:clamp(14px,1.35vw,19px);line-height:1.35}.episode-list{list-style:none;overflow-y:auto;min-height:0;overscroll-behavior:contain;margin:0;padding:0 2px 0 0;scrollbar-color:#c6d7eb transparent;scrollbar-width:thin}.episode-list li{margin:0}.episode-row{display:grid;grid-template-columns:70px 32px minmax(0,1fr) auto;gap:9px;align-items:center;width:100%;min-height:38px;padding:3px 8px;border:0;border-radius:10px;text-align:left;background:transparent;color:#496083}.episode-row:hover{background:#f1f7ff}.episode-row[aria-current="true"]{background:#e6f2ff;color:#092553;font-weight:800}.episode-row img{display:block;width:70px;height:35px;object-fit:cover;border-radius:6px;background:#e0ebf8}.episode-number{font-size:15px;font-variant-numeric:tabular-nums;color:#5d7195}.episode-row[aria-current="true"] .episode-number{color:var(--blue);font-weight:800}.episode-name{font-size:15px;line-height:1.18;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.episode-row[aria-current="true"] .episode-name{color:var(--navy)}.row-play{border-radius:50%;width:23px;height:23px;background:var(--blue);color:white;display:grid;place-items:center;font-size:11px}
.app-promo{margin:2px clamp(14px,1.5vw,25px) 0;min-height:75px;display:flex;align-items:center;gap:17px;padding:8px clamp(18px,4vw,45px);border-radius:15px;background:linear-gradient(100deg,#eaf5ff 0%,#eaf4ff 68%,#d7eafb 100%);position:relative;overflow:hidden}.app-promo::before{content:"";position:absolute;right:9%;bottom:-50px;width:27%;height:95px;border-radius:45%;background:#b6d8ef66;transform:rotate(-12deg)}.app-promo>*{position:relative}.promo-symbol{color:var(--blue);flex:0 0 auto;display:grid;place-items:center}.promo-symbol svg{height:40px;width:40px}.promo-copy{flex:1}.promo-copy h2{margin:0 0 2px;font-size:20px;line-height:1.15}.promo-copy p{margin:0;font-size:16px;line-height:1.25}.promo-button{min-width:170px}.utility-links{min-height:28px;display:flex;justify-content:center;align-items:center;gap:12px;font-size:12px;color:#8490a4}.utility-links a{color:#536886}.art-dialog{position:fixed;max-width:min(93vw,900px);max-height:93vh;padding:12px;border-radius:15px;border:0;box-shadow:0 16px 60px #0006}.art-dialog::backdrop{background:#0b183ec9}.art-dialog .dialog-bar{display:flex;justify-content:space-between;align-items:center;font-weight:800;padding:5px 8px 12px}.art-dialog img{max-width:100%;max-height:78vh;object-fit:contain;display:block}.dialog-close{border:0;border-radius:6px;background:#e6f2ff;color:#07265a;font-size:25px;line-height:1;min-width:36px;min-height:36px}
@media(min-width:1024px) and (min-height:700px){.shell{height:100dvh;min-height:700px;overflow:hidden}.main-grid{overflow:hidden}.player-column{overflow:hidden}.art-frame{max-height:none}.playlist-panel{overflow:hidden}.episode-list{display:flex;flex-direction:column;justify-content:space-evenly}.episode-row{min-height:0;height:100%;max-height:45px}.episode-list li{flex:1;min-height:0}.view-art{bottom:10px}}
@media(max-height:820px) and (min-width:1024px){.masthead{height:71px;padding-top:5px;padding-bottom:5px}.brand img{height:53px}.main-grid{padding-top:10px;gap:16px}.playlist-panel{padding:12px 13px}.playlist-heading h2{font-size:24px}.playlist-heading p{font-size:15px}.playlist-heading{padding-bottom:5px}.episode-row{grid-template-columns:62px 30px minmax(0,1fr) auto;min-height:0;padding-top:1px;padding-bottom:1px}.episode-row img{height:30px;width:62px}.episode-name{font-size:14px}.episode-number{font-size:14px}.player-info{min-height:68px}.player-info h1{font-size:27px}.audio-controls{min-height:52px}.round-play{height:54px;width:54px;min-width:54px}.episode-navigation{padding-top:6px}.episode-navigation .button{min-height:40px}.app-promo{min-height:61px}.promo-copy h2{font-size:16px}.promo-copy p{font-size:14px}.promo-symbol svg{height:32px;width:32px}.promo-button{min-height:42px}.utility-links{min-height:18px}}
@media(max-width:1023px){.masthead{height:auto;min-height:75px;gap:12px}.brand img{height:54px}.brand-tagline{display:none}.main-grid{grid-template-columns:1fr;max-height:none;gap:18px}.art-frame{max-height:400px;min-height:270px}.player-column{gap:10px}.playlist-panel{max-height:none}.episode-list{overflow:visible}.episode-row{min-height:42px;grid-template-columns:80px 35px minmax(0,1fr) auto}.episode-row img{width:76px;height:39px}.episode-name{font-size:16px}.app-promo{margin:12px 15px 0}.utility-links{margin-bottom:8px}}
@media(max-width:590px){.masthead{padding:10px 13px;gap:9px;flex-wrap:wrap}.brand img{width:148px;height:auto}.header-spacer{flex:1}.language-control select{min-height:38px;font-size:14px;padding:6px 28px 6px 9px}.chevron{right:9px;top:5px}.header-app{min-height:38px;padding:7px 10px;font-size:13px;min-width:0}.header-app span:last-child{display:none}.main-grid{padding:12px 12px 0;gap:15px}.art-frame{min-height:0;height:clamp(190px,57vw,270px)}.player-info h1{font-size:27px}.eyebrow{font-size:12px}.episode-ref{font-size:16px}.round-play{height:58px;width:58px;min-width:58px}.episode-navigation .button{min-width:125px;padding:9px 12px}.playlist-panel{padding:15px 10px}.playlist-heading h2{font-size:23px}.playlist-heading p{font-size:15px}.episode-row{grid-template-columns:63px 26px minmax(0,1fr) auto;gap:8px;min-height:45px}.episode-row img{height:34px;width:62px}.episode-name{font-size:14px;white-space:normal}.episode-number{font-size:14px}.app-promo{gap:8px;padding:12px}.promo-symbol{display:none}.promo-copy h2{font-size:17px}.promo-copy p{font-size:13px}.promo-button{min-width:0;font-size:13px;padding:10px 8px;gap:4px}.promo-button span:last-child{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button,.view-art{transition:none}}

/* v7.1: source-faithful episode names, accessible focus and compact non-scrolling desktop */
.episode-row { cursor:pointer; }
.episode-row:focus-visible, .art-button:focus-visible, .round-play:focus-visible, .button:focus-visible, .language-control select:focus-visible { outline:3px solid #086bed; outline-offset:3px; }
.episode-ref[hidden] {display:none;}
.audio-controls input:disabled {cursor:not-allowed; opacity:.65;}
@media (min-width:1024px) and (max-height:820px) { .episode-name {font-size:14px;} .episode-row{gap:6px;} .playlist-heading h2{font-size:22px;} }

@media (max-width:590px) { .episode-name{font-size:15px;} }


/* v7.2 — Original 1254x1254 user artwork, fully visible (no cover crop),
   matched Spanish logo, properly drawn language chevron, responsive single-screen desktop. */
:root { --abj-image-max: min(100%, 55vh); }
.brand img { width:220px; height:61px; max-width:220px; max-height:61px; object-fit:contain; }
.language-control { display:flex; align-items:center; min-height:46px; border:1px solid #c9defb; border-radius:12px; background:#fff; color:#076dea; overflow:hidden; box-shadow:0 2px 7px rgba(0,82,175,.035); }
.language-control:focus-within {outline:3px solid #61a6ff;outline-offset:2px}
.language-control .language-globe {width:21px;height:21px;flex:0 0 21px;margin-left:14px;pointer-events:none}
.language-control select {font-size:15px;border:none;border-radius:0;min-height:44px;color:var(--navy);padding:8px 30px 8px 8px;background:transparent;position:relative;z-index:1;min-width:120px;}
.language-control select:focus-visible {outline:0}
.language-control .language-chevron {position:absolute;right:12px;top:50%;transform:translateY(-50%);width:17px;height:17px;pointer-events:none;z-index:2}
.main-grid {grid-template-columns:minmax(0,1.04fr) minmax(0,1fr);gap:20px}
.player-column {align-items:stretch;gap:7px}
.art-frame {flex:0 0 auto;align-self:center;display:block;width:min(100%, calc(100dvh - 369px), 585px);aspect-ratio:1/1;height:auto;min-height:0;max-height:none;overflow:hidden;background:#fff;}
.art-button {width:100%;height:100%;display:block}
.art-button img {width:100%;height:100%;object-fit:contain;object-position:center;display:block}
.player-info {min-height:62px;gap:2px;flex:0 0 auto}
.player-info h1 {font-size:clamp(22px,2.6vw,34px)}
.episode-ref {font-size:clamp(14px,1.35vw,18px)}
.audio-controls {min-height:58px}
.episode-navigation {padding-top:7px}
.episode-list {overflow-y:auto}
.episode-row {grid-template-columns:38px 29px minmax(0,1fr) auto;gap:9px;min-height:34px;padding:2px 7px}
.episode-row img {width:34px;height:34px;object-fit:contain;aspect-ratio:1;border-radius:5px}
.episode-name {font-size:14px}
@media(min-width:1024px) and (min-height:700px) {
  .shell {height:100dvh;min-height:700px;overflow:hidden}
  .main-grid {min-height:0;max-height:100%;overflow:hidden}
  .player-column {overflow:hidden}
  .art-frame {flex:0 1 auto;min-height:0;max-height:none}
  .playlist-panel{overflow:hidden}
  .episode-list {display:flex;flex-direction:column;justify-content:space-between}
  .episode-list li {flex:1;min-height:0}
  .episode-row {height:100%;max-height:42px;min-height:0}
}
@media(min-width:1024px) and (max-height:820px){
  .art-frame {width:min(100%, calc(100dvh - 335px), 490px)}
  .brand img {height:52px;width:190px}
  .language-control{min-height:40px}
  .language-control select{min-height:39px;font-size:14px}
  .language-control .language-globe{width:19px;height:19px;flex-basis:19px}
  .main-grid{padding-top:10px;padding-bottom:8px}
  .player-info{min-height:55px}
  .player-info h1{font-size:26px}
  .audio-controls{min-height:50px}
  .episode-navigation .button{min-height:39px}
  .episode-row{grid-template-columns:31px 25px minmax(0,1fr) auto;gap:7px;padding:1px 6px}
  .episode-row img{width:29px;height:29px}
  .playlist-heading{padding-bottom:5px}
  .playlist-heading h2{font-size:23px}
  .playlist-heading p{font-size:14px}
}
@media(max-width:1023px){
  .main-grid{grid-template-columns:1fr}
  .player-column{overflow:visible}
  .art-frame{width:min(100%, 500px);max-height:none;min-height:0;aspect-ratio:1}
  .episode-row{grid-template-columns:43px 32px minmax(0,1fr) auto;min-height:45px}
  .episode-row img{height:39px;width:39px}
  .episode-list{overflow:visible}
}
@media(max-width:590px){
  .brand img{height:43px;width:155px;max-width:155px}
  .masthead{gap:8px}
  .language-control {min-height:39px}
  .language-control .language-globe{margin-left:7px;width:16px;height:16px;flex-basis:16px}
  .language-control select{min-height:37px;font-size:13px;min-width:95px;padding:5px 23px 5px 6px}
  .language-control .language-chevron{width:14px;height:14px;right:7px}
  .art-frame{width:min(100%,470px);max-height:none;height:auto;aspect-ratio:1}
  .player-info{min-height:74px}
  .episode-row{grid-template-columns:38px 25px minmax(0,1fr) auto;min-height:46px}
  .episode-row img{width:34px;height:34px}
}

/* Final alignment: keep the original collage square, including on short monitors. */
@media (min-width:1024px) and (min-height:700px){
 .art-frame{width:min(100%, calc(100dvh - 395px), 540px); flex:0 0 auto;aspect-ratio:1 / 1}
 .player-info,.audio-controls,.episode-navigation{width:min(100%,560px);align-self:center}
}
@media (min-width:1024px) and (min-height:1020px){
 .art-frame{width:min(100%,calc(100dvh - 450px),585px)}
}
@media(max-width:590px){
 .masthead{padding:9px 8px;gap:7px}
 .brand img{width:130px;max-width:130px;height:41px}
 .language-control .language-globe{margin-left:6px;width:15px;height:15px;flex-basis:15px}
 .language-control select{min-width:88px;font-size:12px;padding:5px 20px 5px 5px}
 .language-control .language-chevron{right:5px;width:13px;height:13px}
 .header-app{padding:7px 8px;font-size:12px}
}

/* v7.3 — height-aware uncropped artwork, controls-first desktop sizing and readable playlist.
   Intentionally reserve the player, episode navigation and campaign banner at every desktop size. */
@media (min-width:1024px) and (min-height:700px) {
  .shell { height:100dvh; min-height:0; grid-template-rows:auto minmax(0,1fr) auto auto; overflow:hidden; }
  .main-grid {min-height:0; overflow:hidden; align-items:stretch;}
  .player-column {
    min-height:0; min-width:0; overflow:hidden; display:grid;
    grid-template-rows:minmax(0,1fr) auto auto auto;
    gap:clamp(3px,.65vh,8px);
    align-items:stretch;
  }
  .art-frame {
    /* The artwork may shrink, but the metadata, play controls and navigation cannot. */
    box-sizing:border-box; width:auto; height:100%; max-width:100%; max-height:100%;
    min-width:0; min-height:0; flex:none; aspect-ratio:1 / 1; justify-self:center; align-self:center;
  }
  .player-info,.audio-controls,.episode-navigation,.player-status {width:min(100%,560px);justify-self:center;align-self:stretch;}
  .player-info{min-height:0;gap:2px;justify-content:flex-start;}
  .player-info h1 {font-size:clamp(22px,2.35vw,32px);line-height:1.1;overflow-wrap:break-word;}
  .audio-controls {min-height:52px;}
  .episode-navigation {min-height:43px;padding-top:4px;align-items:center;}
  .episode-navigation .button {min-height:40px;}
  .episode-list {min-height:0;}
  .episode-row {min-height:0;}
  .episode-name {font-size:clamp(14px,1.02vw,16px);color:#334b70;line-height:1.22;}
  .episode-number {color:#48658e;}
  .episode-row[aria-current="true"] {background:#e4f1ff;}
  .episode-row:hover:not([aria-current="true"]) {background:#f5f9fe;}
}
@media (min-width:1024px) and (max-height:820px) {
  .player-column {gap:3px;}
  .player-info h1 {font-size:clamp(21px,2.05vw,27px);line-height:1.09;}
  .episode-ref {font-size:15px;}
  .audio-controls {min-height:48px;}
  .round-play {width:52px;height:52px;min-width:52px;}
  .episode-navigation {min-height:40px;}
  .episode-navigation .button {min-height:39px;}
  .episode-name {font-size:14px;}
}
@media (max-width:1023px) {
  /* Small screens and text zoom must scroll rather than hide controls. */
  .player-column {display:flex;flex-direction:column;overflow:visible;}
  .art-frame {width:min(100%,500px);height:auto;aspect-ratio:1/1;max-height:none;}
  .player-info,.audio-controls,.episode-navigation {min-height:auto;}
  .episode-name {color:#334b70;}
}
/* At unusually short browser heights, prefer readable scrolling to hiding playback. */
@media (min-width:1024px) and (max-height:699px) {
  .shell {height:auto; min-height:100vh;overflow:visible;}
  .main-grid,.player-column {overflow:visible;}
  .art-frame {width:min(100%,380px);height:auto;aspect-ratio:1 / 1;}
}
/* Legibility without adding extra visual chrome. */
@media(min-width:1024px) and (min-height:821px){
 .episode-name{font-size:15.5px;}
}
@media(min-width:1024px) and (min-height:700px) and (max-height:820px){
 .episode-name{font-size:14.5px;}
}
