:root{--bg:#0B1222;--surface:#151F34;--accent:#4FE2C1;--text:#F3F7FF;--muted:#9BA9C0;--line:rgba(255,255,255,.10)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--text);background:var(--bg);font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;line-height:1.5;min-height:100vh}button,input,select{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}.app-shell{max-width:1250px;margin:auto;padding:0 25px}.topbar{height:76px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:18px}.brand{display:flex;align-items:center;gap:11px;min-width:0}.brand-icon{color:var(--accent);font-size:36px;line-height:1}.brand strong{font-size:22px;letter-spacing:-.6px;display:block;line-height:1.1}.brand small{font-size:9px;font-weight:800;letter-spacing:2px;color:var(--muted)}.topbar-right{display:flex;align-items:center;gap:24px}.live-indicator{font-size:11px;font-weight:800;letter-spacing:1.1px}.live-indicator i{display:inline-block;width:8px;height:8px;background:#fb575d;border-radius:50%;box-shadow:0 0 0 4px rgba(251,87,93,.13);margin-right:7px}.admin-link{color:var(--muted);font-size:12px;font-weight:700}.admin-link:hover{color:var(--accent)}.intro{display:flex;justify-content:space-between;align-items:end;gap:20px;padding:36px 0 23px}.section-kicker{font-size:10px;letter-spacing:2px;color:var(--accent);font-weight:800}.intro h1{font-size:clamp(25px,3vw,38px);letter-spacing:-1.25px;line-height:1.25;margin:6px 0}.intro h1 span{color:var(--accent)}.intro p{color:var(--muted);margin:6px 0 0;font-size:14px}.intro-label{text-align:right;min-width:95px}.intro-label>span{display:block;font-size:30px;font-weight:800;color:var(--accent);line-height:1.1}.intro-label small{color:var(--muted);font-size:11px}.layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:21px;align-items:start}.primary-column{min-width:0}.now-playing{display:grid;grid-template-columns:142px minmax(0,1fr) 120px;align-items:center;gap:22px;min-height:208px;padding:22px;border:1px solid var(--line);border-radius:20px;background:linear-gradient(120deg,rgba(255,255,255,.06),rgba(255,255,255,.012) 44%),var(--surface);box-shadow:0 12px 36px #0000001a;position:relative;overflow:hidden}.now-playing:before{content:"";position:absolute;width:220px;height:220px;right:-110px;top:-155px;background:var(--accent);opacity:.075;filter:blur(55px);pointer-events:none}.now-cover{position:relative;width:142px;height:142px;border-radius:14px;background:#222f42;overflow:hidden;flex-shrink:0}.now-cover img{display:block;width:100%;height:100%;object-fit:cover}.on-air{position:absolute;bottom:9px;left:9px;background:#e03445;border-radius:5px;padding:4px 7px;font-size:9px;font-weight:800;letter-spacing:1px}.now-copy{min-width:0;position:relative}.now-eyebrow{color:var(--accent);font-size:11px;letter-spacing:1.1px;font-weight:800;text-transform:uppercase;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.now-copy h2{font-size:clamp(19px,2vw,26px);line-height:1.2;margin:9px 0 7px;overflow-wrap:anywhere}.now-copy p{color:var(--muted);margin:0;font-size:14px;min-height:24px;overflow-wrap:anywhere}.audio-status{display:inline-block;font-size:11px;color:var(--muted);margin-top:17px}.now-controls{position:relative;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:14px}.round-play{width:65px;height:65px;display:grid;place-items:center;border-radius:50%;border:none;background:var(--accent);color:var(--bg);font-weight:900;box-shadow:0 9px 25px #0002}.round-play:hover{filter:brightness(1.12)}.round-play span{font-size:24px;margin-left:3px}.round-play.is-playing span{margin-left:0}.volume-control{display:flex;align-items:center;gap:5px;width:100%;color:var(--muted);font-size:13px}.volume-control input{width:100%;accent-color:var(--accent);height:4px}.share-button{color:var(--muted);background:none;border:0;font-size:11px;font-weight:700;white-space:nowrap}.share-button:hover{color:var(--accent)}.directory-heading{display:flex;align-items:end;justify-content:space-between;margin:26px 2px 15px}.directory-heading h2{font-size:21px;letter-spacing:-.5px;margin:5px 0 0}.filter-summary{font-size:12px;color:var(--muted)}.directory-tools{display:flex;gap:12px;margin:0 0 16px}.search-wrap{position:relative;flex:1;min-width:0}.search-wrap span{position:absolute;left:13px;top:4px;font-size:27px;color:var(--muted)}.search-wrap input,.directory-tools select{width:100%;border:1px solid var(--line);background:var(--surface);border-radius:10px;color:var(--text);outline:none;padding:12px 14px;font-size:13px;height:46px}.search-wrap input{padding-left:41px}.search-wrap input:focus,.directory-tools select:focus{border-color:var(--accent)}.directory-tools select{width:190px}.directory-tools select option{background:var(--surface)}.stations-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.station-card{width:100%;min-width:0;min-height:114px;display:flex;gap:13px;text-align:left;padding:14px;border:1px solid var(--line);border-radius:14px;background:var(--surface);color:var(--text);transition:border-color .2s,background .2s;position:relative}.station-card:hover{border-color:var(--accent)}.station-card.active{border-color:var(--accent);background:linear-gradient(110deg,rgba(255,255,255,.055),transparent 80%),var(--surface)}.station-card img{width:74px;height:74px;flex-shrink:0;object-fit:cover;border-radius:10px;background:#243044}.station-detail{min-width:0;display:flex;flex-direction:column;justify-content:center}.station-category{color:var(--accent);text-transform:uppercase;letter-spacing:.7px;font-size:10px;font-weight:800}.station-detail strong{font-size:14px;line-height:1.28;margin:4px 0;overflow-wrap:anywhere}.station-detail small{color:var(--muted);font-size:11px;line-height:1.35;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.station-card .sound-wave{position:absolute;right:12px;top:10px;font-size:14px;color:var(--accent);opacity:0}.station-card.active .sound-wave{opacity:1}.empty{color:var(--muted);grid-column:1/-1;padding:28px;text-align:center;border:1px dashed var(--line);border-radius:12px}.globe-box{background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:20px;overflow:hidden}.sidebar-heading{display:flex;justify-content:space-between;gap:12px}.sidebar-heading h3{margin:4px 0 0;font-size:16px;letter-spacing:-.2px}.orbit-symbol{color:var(--accent);font-size:27px}.globe-canvas-wrap{height:255px;display:flex;align-items:center;justify-content:center;position:relative}.globe-canvas-wrap:before{content:"";position:absolute;inset:22px;background:radial-gradient(circle,rgba(80,226,193,.08),transparent 72%);border-radius:50%}.globe-canvas-wrap canvas{position:relative;width:236px;height:236px;max-width:100%}.metrics{display:grid;grid-template-columns:1fr 1fr;gap:12px;border-top:1px solid var(--line);padding-top:16px}.metrics div{display:flex;flex-direction:column;gap:2px}.metrics strong{font-size:23px;font-weight:800}.metrics span,.mini-countries,.footnote{color:var(--muted);font-size:11px}.mini-countries{padding:15px 0 6px}.country-row{display:flex;align-items:center;justify-content:space-between;padding:5px 0}.country-row b{color:var(--text);font-weight:600}.footnote{margin:9px 0 0;line-height:1.55}.muted{color:var(--muted)}.footer{margin:35px 0 0;padding:21px 0 30px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;color:var(--muted);font-size:11px}.is-embed{background:transparent;min-height:0}.is-embed .app-shell{max-width:800px;padding:0}.is-embed .topbar{display:none}.is-embed .layout{display:block}.is-embed .now-playing{grid-template-columns:110px minmax(0,1fr) 90px;min-height:160px;padding:15px;gap:14px;border-radius:12px}.is-embed .now-cover{width:110px;height:110px}.is-embed .round-play{width:55px;height:55px}.is-embed .now-copy h2{font-size:18px}.is-embed .audio-status{margin-top:8px}
@media(max-width:1000px){.layout{grid-template-columns:minmax(0,1fr) 260px}.globe-box{padding:15px}.now-playing{grid-template-columns:114px minmax(0,1fr) 98px;padding:16px;gap:15px;min-height:164px}.now-cover{width:114px;height:114px}.stations-grid{grid-template-columns:1fr}}
@media(max-width:700px){.app-shell{padding:0 15px}.topbar{height:67px}.brand strong{font-size:19px}.brand-icon{font-size:30px}.topbar-right{gap:11px}.live-indicator{font-size:9px}.admin-link{font-size:11px}.intro{padding:25px 0 18px}.intro p{font-size:12px}.layout{grid-template-columns:1fr}.sidebar{order:2}.stations-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.station-card{min-height:104px;padding:10px;gap:9px}.station-card img{width:59px;height:59px}.station-detail strong{font-size:12px}.station-detail small{font-size:10px}.station-category{font-size:9px}.globe-canvas-wrap{height:240px}.footer{flex-wrap:wrap}.now-playing{grid-template-columns:105px minmax(0,1fr) 68px;gap:12px;min-height:150px;padding:13px}.now-cover{width:105px;height:105px}.round-play{width:55px;height:55px}.round-play span{font-size:20px}.now-copy h2{font-size:17px;margin:6px 0}.now-copy p{font-size:12px}.now-eyebrow{font-size:10px}.audio-status{margin-top:8px}.volume-control{display:none}.share-button{font-size:10px}.directory-heading{margin-top:22px}}
@media(max-width:460px){.live-indicator{display:none}.stations-grid{grid-template-columns:1fr}.station-card img{width:62px;height:62px}.station-detail strong{font-size:14px}.directory-tools{gap:8px}.directory-tools select{width:38%;font-size:11px;padding:8px}.search-wrap input{font-size:12px}.now-playing{grid-template-columns:82px minmax(0,1fr) 53px;padding:11px;gap:10px;min-height:118px}.now-cover{width:82px;height:82px}.now-cover .on-air{font-size:7px;left:5px;bottom:5px;padding:2px 4px}.now-copy h2{font-size:15px}.now-copy p{font-size:11px}.now-eyebrow{font-size:9px}.audio-status{font-size:10px}.round-play{width:45px;height:45px}.round-play span{font-size:17px}.share-button{font-size:0}.share-button:first-letter{font-size:17px}.is-embed .now-playing{grid-template-columns:82px minmax(0,1fr) 52px;min-height:112px;padding:10px}.is-embed .now-cover{width:82px;height:82px}.is-embed .round-play{width:46px;height:46px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
/* Embed independiente: reproductor y globo en una misma tarjeta compacta */
.is-embed.embed-with-globe{background:transparent}
.is-embed.embed-with-globe .app-shell{max-width:none;padding:0}
.is-embed.embed-with-globe .layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(180px,240px);gap:0;align-items:stretch;border-radius:18px;overflow:hidden;background:var(--surface);border:1px solid var(--line)}
.is-embed.embed-with-globe .now-playing{min-height:320px;border:0;border-radius:0;background:none;box-shadow:none;grid-template-columns:115px minmax(0,1fr);gap:14px;align-content:center}
.is-embed.embed-with-globe .now-cover{width:115px;height:115px}
.is-embed.embed-with-globe .now-controls{grid-column:1/-1;flex-direction:row;justify-content:flex-start;gap:18px;padding-left:4px}
.is-embed.embed-with-globe .volume-control{display:flex;max-width:130px}
.is-embed.embed-with-globe .sidebar{min-width:0;border-left:1px solid var(--line)}
.is-embed.embed-with-globe .globe-box{border:0;border-radius:0;background:transparent;padding:12px}
.is-embed.embed-with-globe .sidebar-heading h3{font-size:13px}
.is-embed.embed-with-globe .globe-canvas-wrap{height:175px}
.is-embed.embed-with-globe .globe-canvas-wrap canvas{width:164px;height:164px}
.is-embed.embed-with-globe .metrics{gap:6px;padding-top:9px}
.is-embed.embed-with-globe .metrics strong{font-size:17px}
.is-embed.embed-with-globe .mini-countries{padding:6px 0}
.is-embed.embed-with-globe .footnote{font-size:9px}
@media(max-width:570px){.is-embed.embed-with-globe .layout{grid-template-columns:1fr}.is-embed.embed-with-globe .now-playing{min-height:148px;grid-template-columns:87px minmax(0,1fr) 50px;gap:9px;padding:11px}.is-embed.embed-with-globe .now-cover{width:87px;height:87px}.is-embed.embed-with-globe .now-controls{grid-column:3;flex-direction:column;padding:0;gap:8px}.is-embed.embed-with-globe .volume-control{display:none}.is-embed.embed-with-globe .sidebar{border-left:0;border-top:1px solid var(--line)}.is-embed.embed-with-globe .globe-box{display:grid;grid-template-columns:1fr 1fr;align-items:start;gap:7px}.is-embed.embed-with-globe .sidebar-heading,.is-embed.embed-with-globe .metrics,.is-embed.embed-with-globe .mini-countries,.is-embed.embed-with-globe .footnote{grid-column:1}.is-embed.embed-with-globe .globe-canvas-wrap{grid-row:1/5;grid-column:2;height:160px}.is-embed.embed-with-globe .globe-canvas-wrap canvas{height:150px;width:150px}.is-embed.embed-with-globe .footnote{display:none}}

/* Campañas publicitarias: nunca superponer banners sobre controles o el globo */
.rg-ad-placement{margin:13px 0}.rg-ad-list{display:flex;align-items:stretch;flex-wrap:wrap;gap:10px;max-width:100%}.rg-ad{position:relative;display:block;flex:1 1 220px;max-width:100%;min-width:0;border-radius:12px;overflow:hidden;background:var(--surface);border:1px solid var(--line)}.rg-ad img{display:block;width:100%;height:auto;max-height:210px;object-fit:contain}.rg-ad span{position:absolute;top:3px;right:5px;background:#101826d9;color:#eee;font-size:9px;padding:2px 5px;border-radius:4px}.sidebar .rg-ad img{max-height:160px}.embed-ad{margin:8px 0}.is-embed .embed-ad .rg-ad img{max-height:85px}.is-embed .topbar{display:none}

/* Audiencia en dos partes: el embed mantiene un alto predecible aunque crezcan los países. */
.rg-country-heading{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:12px}.rg-country-heading strong{display:block;font-size:12px}.rg-country-heading small{display:block;font-size:10px;margin-top:2px}.rg-country-toggle{border:1px solid var(--line);color:var(--accent);background:transparent;border-radius:8px;padding:5px 9px;font-size:11px;font-weight:750;flex:none}.rg-country-toggle:hover{background:#ffffff12}.rg-country-filter{display:block;margin-top:8px;position:relative}.rg-country-filter span{position:absolute;left:9px;top:6px;opacity:.6}.rg-country-filter input{width:100%;padding:7px 8px 7px 25px;background:var(--bg);border:1px solid var(--line);color:var(--text);border-radius:8px;font-size:12px}.rg-country-row{display:grid!important;grid-template-columns:27px minmax(0,1fr) auto;align-items:center;column-gap:7px;row-gap:4px;min-height:44px;padding:6px!important;border-bottom:1px solid var(--line);background:transparent!important}.rg-country-flag{font-size:20px;line-height:1}.rg-country-name{font-size:12px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.rg-country-row b{font-variant-numeric:tabular-nums;font-size:12px}.rg-country-bar{grid-column:2/-1;height:3px;border-radius:5px;background:linear-gradient(90deg,var(--accent) var(--pct),#ffffff20 var(--pct))}.rg-country-all{max-height:250px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}.rg-part-label{padding:9px 13px;font-size:10px;font-weight:850;letter-spacing:1.5px;color:var(--muted);border-bottom:1px solid var(--line)}.rg-part-label span{color:var(--accent);margin-right:9px}.is-embed.embed-with-globe .layout{display:flex;flex-direction:column;align-items:stretch;gap:0;border-radius:15px;background:transparent}.is-embed.embed-with-globe .primary-column{width:100%;border-bottom:1px solid var(--line);background:var(--surface)}.is-embed.embed-with-globe .now-playing{min-height:0;display:grid;grid-template-columns:112px minmax(0,1fr) auto;padding:12px 14px;gap:14px;align-items:center;align-content:center}.is-embed.embed-with-globe .now-cover{width:106px;height:106px}.is-embed.embed-with-globe .now-controls{grid-column:auto;flex-direction:column;gap:8px;padding:0}.is-embed.embed-with-globe .now-copy h2{font-size:18px}.is-embed.embed-with-globe .sidebar{border-left:0;min-width:0;background:var(--surface)}.is-embed.embed-with-globe .globe-box{display:grid;grid-template-columns:165px minmax(0,1fr);gap:5px 17px;align-items:start;padding:9px 14px 12px}.is-embed.embed-with-globe .sidebar-heading{grid-column:1;grid-row:1}.is-embed.embed-with-globe .sidebar-heading h3{font-size:12px}.is-embed.embed-with-globe .globe-canvas-wrap{grid-column:1;grid-row:2/5;height:160px}.is-embed.embed-with-globe .globe-canvas-wrap canvas{height:156px;width:156px}.is-embed.embed-with-globe .metrics{grid-column:2;grid-row:1;display:flex;flex-wrap:wrap;justify-content:space-between;gap:7px;border-bottom:1px solid var(--line);padding:0 0 7px}.is-embed.embed-with-globe .metrics div{flex:1 1 60px}.is-embed.embed-with-globe .metrics strong{font-size:19px}.is-embed.embed-with-globe .rg-country-heading{grid-column:2;grid-row:2;margin:0}.is-embed.embed-with-globe .rg-country-filter{grid-column:2;grid-row:3;margin:0}.is-embed.embed-with-globe .mini-countries{grid-column:2;grid-row:4;max-height:161px;overflow-y:auto;padding:0;scrollbar-width:thin}.is-embed.embed-with-globe .footnote{grid-column:1/-1;text-align:center;margin:4px 0 0;font-size:9px;opacity:.8}.is-embed.embed-with-globe .rg-country-row{min-height:32px;padding:4px!important}.is-embed.embed-with-globe .rg-country-flag{font-size:17px}
@media(max-width:560px){.is-embed.embed-with-globe .layout{display:flex;flex-direction:column}.is-embed.embed-with-globe .now-playing{grid-template-columns:76px minmax(0,1fr) 54px;gap:9px;padding:10px}.is-embed.embed-with-globe .now-cover{width:75px;height:75px}.is-embed.embed-with-globe .now-copy h2{font-size:16px}.is-embed.embed-with-globe .now-copy p{font-size:11px}.is-embed.embed-with-globe .now-controls{grid-column:3;flex-direction:column}.is-embed.embed-with-globe .now-controls .round-play{width:45px;height:45px}.is-embed.embed-with-globe .globe-box{grid-template-columns:118px minmax(0,1fr);gap:5px 8px;padding:8px}.is-embed.embed-with-globe .globe-canvas-wrap{grid-column:1;grid-row:2/5;height:120px}.is-embed.embed-with-globe .globe-canvas-wrap canvas{width:115px;height:115px}.is-embed.embed-with-globe .sidebar-heading{grid-column:1;grid-row:1}.is-embed.embed-with-globe .metrics{grid-column:2;grid-row:1;gap:3px}.is-embed.embed-with-globe .metrics strong{font-size:14px}.is-embed.embed-with-globe .rg-country-heading{grid-column:2;grid-row:2}.is-embed.embed-with-globe .rg-country-filter{grid-column:2;grid-row:3}.is-embed.embed-with-globe .mini-countries{grid-column:2;grid-row:4;max-height:125px}.is-embed.embed-with-globe .footnote{grid-column:1/-1;display:block}.is-embed.embed-with-globe .sidebar{border-top:0}.rg-country-name{font-size:11px}}
@media(max-width:360px){.is-embed.embed-with-globe .globe-box{grid-template-columns:95px minmax(0,1fr)}.is-embed.embed-with-globe .globe-canvas-wrap{height:95px}.is-embed.embed-with-globe .globe-canvas-wrap canvas{height:90px;width:90px}.is-embed.embed-with-globe .now-controls .share-button{display:none}}

/* Ventana Compartir: siempre visible al pulsar, incluso sin Web Share API. */
.share-button{display:inline-flex;align-items:center;justify-content:center;gap:4px;padding:6px;border:1px solid var(--line);border-radius:7px;min-width:44px;min-height:30px}.share-button:focus-visible,.rg-share-dialog :focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.rg-share-overlay[hidden],.rg-share-dialog [hidden]{display:none!important}.rg-share-open{overflow:hidden}.rg-share-overlay{position:fixed;inset:0;z-index:999999;display:flex;align-items:center;justify-content:center;padding:14px;background:rgba(2,7,17,.82);backdrop-filter:blur(5px)}.rg-share-dialog{display:block;width:min(510px,100%);max-height:calc(100vh - 28px);overflow-y:auto;overscroll-behavior:contain;border:1px solid var(--line);border-radius:18px;background:var(--surface);color:var(--text);padding:21px;box-shadow:0 18px 70px #0009}.rg-share-head{display:flex;justify-content:space-between;gap:12px;align-items:center}.rg-share-head h2{font-size:20px;margin:5px 0}.rg-share-dialog p{font-size:12px;line-height:1.5}.rg-share-close{border:1px solid var(--line);border-radius:9px;background:transparent;color:var(--text);font-size:27px;width:37px;height:37px;line-height:1}.rg-share-social{display:flex;gap:7px;flex-wrap:wrap;margin:14px 0}.rg-share-social>a,.rg-share-social>button{border:1px solid var(--line);background:var(--bg);border-radius:8px;padding:8px 10px;color:var(--text);font-size:12px;font-weight:750}.rg-share-social>a:hover,.rg-share-social>button:hover{border-color:var(--accent)}.rg-share-label{display:block;font-size:12px;font-weight:750;margin:15px 0 6px}.rg-share-copy{display:flex;gap:7px}.rg-share-dialog input,.rg-share-dialog textarea{width:100%;min-width:0;border:1px solid var(--line);border-radius:8px;background:var(--bg);color:var(--text);padding:10px;font-size:12px;line-height:1.5}.rg-share-dialog textarea{resize:vertical;min-height:75px}.rg-share-copy button,.rg-share-copy-embed{white-space:nowrap;padding:10px 12px;background:var(--accent);color:#091321;font-weight:800;border:0;border-radius:8px;font-size:12px}.rg-share-copy-embed{margin-top:7px}.rg-share-feedback{min-height:17px;margin:10px 0 0;color:var(--accent)!important}.is-embed .rg-share-overlay{padding:6px}.is-embed .rg-share-dialog{padding:12px;max-height:calc(100vh - 12px);border-radius:10px}.is-embed .rg-share-head h2{font-size:15px}.is-embed .rg-share-social{margin:6px 0}.is-embed .rg-share-dialog p{margin:6px 0}.is-embed .rg-share-label{margin:8px 0 4px}.is-embed .rg-share-dialog textarea{min-height:45px;height:50px}.is-embed .rg-share-dialog .rg-share-copy-embed{padding:7px}.is-embed .rg-share-dialog input{padding:7px}
@media(max-width:570px){.share-button{font-size:12px}.share-button .share-caption{display:none}.rg-share-dialog{padding:15px}.rg-share-copy{flex-direction:column}.rg-share-copy button{align-self:start}.is-embed.embed-with-globe .now-controls .share-button{display:flex;min-height:30px;min-width:40px}.is-embed.embed-with-globe .now-controls .share-caption{display:none}}

/* RadioGlobo 2026-10-15: sin franja negra tras el globo; cada bandera como imagen real local. */
.is-embed{background:var(--surface)!important}
.is-embed .app-shell{background:var(--surface);width:100%}
.is-embed.embed-with-globe .layout{border-radius:15px;background:var(--surface)}
.is-embed.embed-with-globe .sidebar,.is-embed.embed-with-globe .primary-column{background:var(--surface)}
.rg-country-flag{display:inline-flex;align-items:center;justify-content:center;min-width:30px;width:30px;height:24px;font-size:19px;line-height:1}
.rg-flag-image{display:block;width:30px;height:21px;object-fit:fill;border-radius:2px;border:1px solid #ffffff36;box-shadow:0 1px 3px #0004;background:#fff}
.rg-country-row{grid-template-columns:34px minmax(0,1fr) auto}
.is-embed.embed-with-globe .rg-country-flag{min-width:27px;width:27px}
.is-embed.embed-with-globe .rg-flag-image{width:27px;height:19px}
.is-embed.embed-with-globe .rg-country-row{grid-template-columns:29px minmax(0,1fr) auto}
@media(max-width:360px){.is-embed.embed-with-globe .rg-country-row{grid-template-columns:27px minmax(0,1fr) auto}.is-embed.embed-with-globe .rg-country-flag{min-width:25px;width:25px}.is-embed.embed-with-globe .rg-flag-image{width:25px;height:18px}}

/* 2026-10-15: banderas de la lista EN VIVO, con reserva visible si falta el PNG. */
.rg-country-row .rg-country-flag{display:inline-flex!important;align-items:center;justify-content:center;visibility:visible!important;opacity:1!important;min-width:30px;min-height:22px;overflow:visible}
.rg-country-row .rg-flag-image{display:block!important;visibility:visible!important;opacity:1!important;position:static!important;width:30px!important;height:21px!important;min-width:30px;min-height:21px;object-fit:fill;flex-shrink:0}
.rg-flag-fallback{display:inline-flex;min-width:28px;height:21px;align-items:center;justify-content:center;border:1px solid #ffffff66;border-radius:2px;background:#213b59;color:#fff;font-size:10px;font-weight:900;letter-spacing:.5px}
.is-embed.embed-with-globe .rg-country-row .rg-flag-image{width:27px!important;height:19px!important;min-width:27px;min-height:19px}

/* 2026-10-15: países compactos en cuadrícula fluida, SIN scrollbar ni límite de altura. */
.mini-countries,.rg-country-all,.is-embed.embed-with-globe .mini-countries{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(min(100%,168px),1fr));
  gap:6px!important;
  max-height:none!important;height:auto!important;
  overflow:visible!important;overflow-y:visible!important;
  scrollbar-width:none!important;align-content:start;padding:8px 0!important;
}
.mini-countries>p{grid-column:1/-1}
.rg-country-row,.is-embed.embed-with-globe .rg-country-row{
  display:grid!important;grid-template-columns:27px minmax(0,1fr) auto!important;
  gap:6px!important;align-items:center;min-height:37px!important;
  padding:6px!important;margin:0!important;
  background:color-mix(in srgb,var(--text) 4%,var(--surface))!important;
  border:1px solid var(--line)!important;border-radius:8px;
}
.rg-country-row .rg-country-bar{display:none!important}
.rg-country-row .rg-country-name{font-size:11px;line-height:1.3;min-width:0}
.rg-country-row b{font-size:12px;font-weight:850;color:var(--accent)}
.rg-country-row .rg-country-flag{min-width:26px!important;width:26px!important;height:21px!important}
.rg-country-row .rg-flag-image,.is-embed.embed-with-globe .rg-country-row .rg-flag-image{
 width:26px!important;height:18px!important;min-width:26px!important;min-height:18px!important;
}
.rg-globe-speed{display:flex;align-items:center;flex-wrap:wrap;gap:5px 8px;margin-top:7px}
.rg-globe-speed label{font-size:10px;color:var(--muted)}
.rg-globe-speed input{width:92px;max-width:100%;height:15px;accent-color:var(--accent);cursor:pointer}
.rg-globe-speed output{font-size:10px;color:var(--accent);font-weight:750;min-width:55px}
.rg-globe-speed input:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.is-embed.embed-with-globe .globe-box{align-content:start}
.is-embed.embed-with-globe .rg-country-heading,.is-embed.embed-with-globe .mini-countries{min-width:0}
@media(max-width:560px){
 .is-embed.embed-with-globe .globe-box{grid-template-columns:minmax(100px,33%) minmax(0,1fr)}
 .is-embed.embed-with-globe .rg-globe-speed input{width:65px}
 .is-embed.embed-with-globe .rg-globe-speed output{font-size:9px}
 .is-embed.embed-with-globe .mini-countries{grid-template-columns:1fr;gap:4px!important}
 .is-embed.embed-with-globe .rg-country-row{min-height:32px!important;padding:4px!important}
}
@media(min-width:850px){.is-embed.embed-with-globe .mini-countries{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}}

/* Las filas nuevas de países ocupan todo el ancho debajo del globo (sin áreas negras vacías). */
.is-embed.embed-with-globe .globe-box{grid-template-columns:minmax(112px,165px) minmax(0,1fr);grid-template-rows:auto auto auto auto auto auto;align-content:start;gap:6px 12px}
.is-embed.embed-with-globe .sidebar-heading{grid-column:1;grid-row:1;align-self:start}
.is-embed.embed-with-globe .metrics{grid-column:2;grid-row:1/3;align-self:start;display:flex;flex-wrap:wrap}
.is-embed.embed-with-globe .globe-canvas-wrap{grid-column:1;grid-row:2;align-self:start;height:155px}
.is-embed.embed-with-globe .rg-country-heading{grid-column:1/-1;grid-row:3;align-self:start;margin:0}
.is-embed.embed-with-globe .rg-country-filter{grid-column:1/-1;grid-row:4}
.is-embed.embed-with-globe .mini-countries{grid-column:1/-1;grid-row:5;grid-template-columns:repeat(auto-fit,minmax(min(100%,145px),1fr))}
.is-embed.embed-with-globe .footnote{grid-column:1/-1;grid-row:6}
@media(max-width:560px){.is-embed.embed-with-globe .mini-countries{grid-template-columns:repeat(auto-fit,minmax(min(100%,137px),1fr))}}
@media(max-width:360px){.is-embed.embed-with-globe .globe-box{grid-template-columns:minmax(95px,35%) minmax(0,1fr)}}

/* RadioGlobo 2026-10-15: banderas PNG reales, colores guardados y velocidad visible. */
.rg-directory-audience{margin:12px 0 18px;border:1px solid var(--line);background:var(--surface);border-radius:13px;padding:11px 14px}
.rg-directory-audience-head{display:flex;justify-content:space-between;align-items:center;gap:9px;margin-bottom:8px;flex-wrap:wrap}
.rg-directory-audience-head strong{font-size:12px;color:var(--text)}
.rg-directory-audience-head small{font-size:11px;color:var(--accent);font-weight:650}
.rg-directory-flags{display:flex;flex-wrap:wrap;align-items:center;gap:7px;min-height:29px}
.rg-directory-flag-chip{display:inline-flex;align-items:center;gap:6px;border-radius:9px;border:1px solid var(--line);background:color-mix(in srgb,var(--bg) 68%,var(--surface));padding:5px 8px;font-size:11px;min-width:0}
.rg-directory-flag-chip img{width:25px!important;height:17px!important;object-fit:fill;border-radius:2px;flex-shrink:0;background:transparent}
.rg-directory-flag-chip b{color:var(--accent);font-size:12px;font-variant-numeric:tabular-nums}
.rg-country-flag .rg-flag-image{width:29px!important;height:20px!important;object-fit:fill}
.rg-country-flag img[hidden],.rg-directory-flags img[hidden],.rg-country-filter[hidden],.rg-country-toggle[hidden]{display:none!important}
/* Los colores del reproductor (o del directorio) deben gobernar sus botones, sin sobrescribirse por la emisora. */
.round-play{background:var(--accent)!important;color:var(--bg)!important}
.share-button{border:1px solid var(--accent)!important;color:var(--accent)!important;background:transparent!important}
.share-button:hover,.share-button:focus-visible{background:var(--accent)!important;color:var(--bg)!important}
.rg-globe-speed{display:flex!important;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:7px 10px;margin:8px 0 10px;padding:8px 10px;border:1px solid var(--line);border-radius:10px;background:color-mix(in srgb,var(--bg) 55%,var(--surface));min-height:43px;min-width:0;visibility:visible!important;opacity:1!important}
.rg-globe-speed label{color:var(--text)!important;font-size:11px!important;font-weight:750;white-space:nowrap}
.rg-globe-speed select{border:1px solid var(--accent)!important;border-radius:8px;background:var(--surface);color:var(--text);font:inherit;font-size:11px;padding:6px 8px;min-width:110px;max-width:100%;cursor:pointer}
.rg-globe-speed output{color:var(--accent)!important;font-size:10px!important;font-weight:800;white-space:nowrap}
.rg-globe-speed select:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
/* En el embed, el selector ocupa una franja propia, con países ilimitados en filas inferiores. */
.is-embed.embed-with-globe .globe-box{grid-template-rows:auto auto auto auto auto auto auto!important;align-content:start}
.is-embed.embed-with-globe .rg-globe-speed{grid-column:1/-1!important;grid-row:3!important;align-self:start;margin:2px 0 5px;justify-content:flex-start}
.is-embed.embed-with-globe .rg-globe-speed output{margin-left:auto}
.is-embed.embed-with-globe .rg-country-heading{grid-column:1/-1!important;grid-row:4!important}
.is-embed.embed-with-globe .rg-country-filter{grid-column:1/-1!important;grid-row:5!important}
.is-embed.embed-with-globe .mini-countries{grid-column:1/-1!important;grid-row:6!important;max-height:none!important;height:auto!important;overflow:visible!important;scrollbar-width:none!important}
.is-embed.embed-with-globe .footnote{grid-column:1/-1!important;grid-row:7!important}
@media(max-width:560px){
 .rg-directory-flag-chip{padding:4px 6px;gap:4px;font-size:10px}
 .is-embed.embed-with-globe .rg-globe-speed{gap:5px}
 .is-embed.embed-with-globe .rg-globe-speed label{font-size:10px!important}
}



/* RadioGlobo 15-oct-2026: banderas visibles A LA DERECHA del globo; 
   giro configurado solo por el administrador. */
.rg-globe-speed{display:none!important} /* ocultar controles de versiones en cache */

/* Principal: dar al globo suficiente ancho para banderas en varias columnas.
   La columna del directorio se convierte en contenedor transparente de grid,
   de modo que emisoras y filtros ocupen el ancho completo debajo del player. */
body:not(.is-embed) .layout:has(>.sidebar){
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1.03fr);
  align-items:start; gap:14px 17px;
}
body:not(.is-embed) .layout:has(>.sidebar)>.primary-column{display:contents}
body:not(.is-embed) .layout:has(>.sidebar) .now-playing{grid-column:1;grid-row:1;min-width:0;}
body:not(.is-embed) .layout:has(>.sidebar)>.sidebar{grid-column:2;grid-row:1;min-width:0;}
body:not(.is-embed) .layout:has(>.sidebar) .directory-heading,
body:not(.is-embed) .layout:has(>.sidebar) .directory-tools,
body:not(.is-embed) .layout:has(>.sidebar) .stations-grid,
body:not(.is-embed) .layout:has(>.sidebar) .rg-ad-placement{grid-column:1/-1;min-width:0}
body:not(.is-embed) .layout:has(>.sidebar) .directory-heading{margin-top:16px}

/* Globo izquierda, métricas y tarjetas de países a la derecha.
   Cada país nuevo ocupa la siguiente tarjeta, sin barra ni límite de altura. */
body .globe-box,
body.is-embed.embed-with-globe .globe-box{
  display:grid!important;
  grid-template-columns:minmax(142px,37%) minmax(0,1fr)!important;
  grid-template-rows:auto auto auto 1fr auto!important;
  gap:5px 13px!important;
  padding:13px!important;
  align-content:start;
  align-items:start;
}
body .globe-box>.sidebar-heading,
body.is-embed.embed-with-globe .globe-box>.sidebar-heading{
  grid-column:1!important;grid-row:1!important;min-width:0;align-self:start;
}
body .globe-box>.globe-canvas-wrap,
body.is-embed.embed-with-globe .globe-box>.globe-canvas-wrap{
  grid-column:1!important;grid-row:2/5!important;align-self:start;
  width:100%;height:auto;min-height:148px;display:flex;justify-content:center;
}
body .globe-box>.globe-canvas-wrap canvas,
body.is-embed.embed-with-globe .globe-box>.globe-canvas-wrap canvas{
  width:min(100%,192px)!important;height:auto!important;aspect-ratio:1/1;
}
body .globe-box>.metrics,
body.is-embed.embed-with-globe .globe-box>.metrics{
  grid-column:2!important;grid-row:1!important;
  display:flex!important;flex-wrap:wrap!important;align-items:start;
  gap:5px!important;padding:0 0 6px!important;border-top:0!important;border-bottom:1px solid var(--line)!important;
}
body .globe-box>.metrics div,
body.is-embed.embed-with-globe .globe-box>.metrics div{flex:1 1 64px;min-width:0}
body .globe-box>.metrics strong{font-size:18px}
body .globe-box>.metrics span{font-size:10px}
body .globe-box>.rg-country-heading,
body.is-embed.embed-with-globe .globe-box>.rg-country-heading{
  grid-column:2!important;grid-row:2!important;margin:5px 0 2px!important;
}
body .globe-box>.rg-country-filter,
body.is-embed.embed-with-globe .globe-box>.rg-country-filter{
  grid-column:2!important;grid-row:3!important;margin:0!important;
}
body .globe-box>.mini-countries,
body.is-embed.embed-with-globe .globe-box>.mini-countries{
  grid-column:2!important;grid-row:4!important;
  min-width:0;max-height:none!important;height:auto!important;
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(min(100%,132px),1fr))!important;
  gap:6px!important;overflow:visible!important;overflow-y:visible!important;
  padding:4px 0 0!important;align-self:start;
}
body .globe-box>.footnote,
body.is-embed.embed-with-globe .globe-box>.footnote{
  grid-column:1/-1!important;grid-row:5!important;margin:7px 0 0!important;
}
body .globe-box .rg-country-row{min-width:0}
/* Pantallas intermedias: globo sobre el directorio, sin estrechar los controles de radio. */
@media(max-width:1050px){
  body:not(.is-embed) .layout:has(>.sidebar){grid-template-columns:1fr!important}
  body:not(.is-embed) .layout:has(>.sidebar) .now-playing{grid-column:1!important;grid-row:1!important}
  body:not(.is-embed) .layout:has(>.sidebar)>.sidebar{grid-column:1!important;grid-row:2!important}
  body:not(.is-embed) .layout:has(>.sidebar) .directory-heading,
  body:not(.is-embed) .layout:has(>.sidebar) .directory-tools,
  body:not(.is-embed) .layout:has(>.sidebar) .stations-grid,
  body:not(.is-embed) .layout:has(>.sidebar) .rg-ad-placement{grid-column:1!important}
}
/* Reproductor incrustado: también ocupa el ancho disponible a la derecha. */
body.is-embed.embed-with-globe .layout{display:flex!important;flex-direction:column}
body.is-embed.embed-with-globe .sidebar{width:100%;min-width:0}
body.is-embed.embed-with-globe .globe-box{grid-template-columns:minmax(120px,29%) minmax(0,1fr)!important}
@media(max-width:450px){
  body .globe-box,
  body.is-embed.embed-with-globe .globe-box{grid-template-columns:1fr!important;grid-template-rows:auto auto auto auto auto auto!important;gap:7px!important}
  body .globe-box>.sidebar-heading,
  body.is-embed.embed-with-globe .globe-box>.sidebar-heading{grid-column:1!important;grid-row:1!important}
  body .globe-box>.globe-canvas-wrap,
  body.is-embed.embed-with-globe .globe-box>.globe-canvas-wrap{grid-column:1!important;grid-row:2!important;min-height:0}
  body .globe-box>.globe-canvas-wrap canvas{width:156px!important;height:156px!important}
  body .globe-box>.metrics,
  body.is-embed.embed-with-globe .globe-box>.metrics{grid-column:1!important;grid-row:3!important}
  body .globe-box>.rg-country-heading,
  body.is-embed.embed-with-globe .globe-box>.rg-country-heading{grid-column:1!important;grid-row:4!important}
  body .globe-box>.rg-country-filter,
  body.is-embed.embed-with-globe .globe-box>.rg-country-filter{grid-column:1!important;grid-row:5!important}
  body .globe-box>.mini-countries,
  body.is-embed.embed-with-globe .globe-box>.mini-countries{grid-column:1!important;grid-row:6!important;grid-template-columns:repeat(auto-fit,minmax(min(100%,140px),1fr))!important}
  body .globe-box>.footnote,
  body.is-embed.embed-with-globe .globe-box>.footnote{grid-column:1!important;grid-row:7!important}
}
