/* Eu Amo Música V12: unified public interface, original advertising sizes. */
:root{--bg:#0b0c0f;--surface:#14161b;--surface-2:#1d2026;--surface-3:#272b33;--line:#2c3039;--muted:#a5abb6;--yellow:#facc15;--yellow-hover:#ffe477}
html[data-theme=light]{--bg:#f4f5f7;--surface:#fff;--surface-2:#f0f2f5;--surface-3:#e7ebf0;--line:#dce1e7;--text:#17202e;--muted:#596578}
body{background:radial-gradient(ellipse at 10% 0%,#facc1509,transparent 45%),var(--bg)}
.wrap{width:min(1520px,calc(100% - 48px))}
.public-nav{height:84px;background:var(--bg);border-bottom:1px solid var(--line)}
@supports(backdrop-filter:blur(20px)){.public-nav{background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(20px)}}
.navlinks>a,.navlinks>button{border-radius:999px;padding:10px 14px;color:var(--muted)}
.navlinks .nav-install{box-shadow:0 4px 20px #facc1520}.brand img{width:100px}
.discovery-head{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:8px 0 18px}.discovery-head h1{font:700 clamp(24px,3vw,38px)/1.12 'Space Grotesk',sans-serif;letter-spacing:-.05em;margin:5px 0}.discovery-head .eyebrow{font-size:9px}.discovery-head>a{font-size:12px;font-weight:700;color:var(--muted)}
.discovery-links{display:flex;gap:8px;overflow-x:auto;max-width:100%;padding:0 0 15px;scrollbar-width:thin}.discovery-links a{white-space:nowrap;padding:8px 14px;border-radius:999px;border:1px solid var(--line);background:var(--surface);font-size:12px;font-weight:700}.discovery-links a:hover{border-color:var(--yellow);color:var(--text)}
.catalog-panel{border-radius:18px;box-shadow:0 8px 25px #00000008}.catalog-panel>summary{padding:17px 18px}.catalog-panel .catalog-filters{border-radius:12px}.catalog-search input,.catalog-selects select{border-radius:10px}
.catalog-toolbar{padding:8px 0 17px;gap:15px}.catalog-result strong{font-size:14px}.catalog-result small{font-size:11px}.catalog-view{padding:4px;border:1px solid var(--line);background:var(--surface);border-radius:13px}.catalog-view button{border:0;border-radius:9px;background:transparent;color:var(--muted)}.catalog-view button[aria-pressed=true]{background:var(--yellow);color:#171717;box-shadow:0 3px 10px #0001}
.sidebar-panel{padding:20px 10px;border-radius:20px;background:var(--surface);border:1px solid var(--line)}.side-link{padding:11px 12px;border-radius:11px;color:var(--muted)}.catalog-sidebar h3{font-size:10px}.catalog-sidebar{top:102px}
.station-card{border-radius:20px;background:linear-gradient(145deg,var(--surface),var(--surface-2));border:1px solid var(--line);box-shadow:0 4px 14px #00000008}.station-card:hover{transform:translateY(-2px);box-shadow:0 12px 30px #00000018;border-color:#facc1580}.station-card h3{letter-spacing:-.025em}.station-tag{font-weight:600;padding:4px 9px}.station-card .play{border-radius:12px;min-height:42px}.station-image{border-radius:14px}.heart{transition:transform .18s}.heart:hover{transform:scale(1.12)}.card-actions .play-count{color:var(--muted);font-size:10px}
.radio-results[data-catalog-layout=list] .station-card{border-radius:14px;box-shadow:none}.radio-results[data-catalog-layout=large] .station-card{border-radius:24px}
.load-more-area{padding:26px 0}.load-more-area .btn{min-width:220px;border-radius:999px}.load-more-area p{font-size:12px}
.station-hero{background:radial-gradient(ellipse at top right,#facc1512,transparent 65%),var(--surface);padding:32px;border-radius:26px}.station-hero>img{width:150px;height:150px}.station-share .chip{border-radius:12px}.detail-grid>*{min-width:0}.detail-grid .card,.card.section{border-radius:20px}.hero.compact{border-radius:24px;background:var(--surface)}.form input,.form select,.form textarea{background:var(--surface-2);color:var(--text)}.form label{color:var(--muted)}.highlight-card{border-radius:18px;padding:18px}.footer{margin-top:48px}
.player{background:var(--surface);border-top:2px solid var(--yellow);box-shadow:0 -10px 40px #0003}.player-in{width:min(1480px,calc(100% - 40px));padding:13px 0}.player-toggle{box-shadow:0 0 0 5px #facc1512}.player-close{color:var(--text)}
:focus-visible{outline:2px solid var(--yellow);outline-offset:3px}
/* Restore 154 / 120 / 60 px without shrinking creatives to fit six slots. */
.public-columns.has-right-ads{grid-template-columns:minmax(0,1fr) 154px;gap:24px}.right-ad-rail{position:sticky;top:102px;max-height:calc(100dvh - 225px);overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:var(--line) transparent;--ad-base:154px;padding:0 0 4px}.right-ad-label{font-size:9px;margin-bottom:10px}.right-ad-slots{gap:12px;justify-items:stretch}.right-ad-square{width:100%;height:auto;aspect-ratio:1;border-radius:12px;border:1px solid var(--line);background:var(--surface);overflow:hidden}.right-ad-square a,.right-ad-square img{width:100%;height:100%;aspect-ratio:1;display:block}.right-ad-square img{object-fit:contain;border-radius:0}
@media(max-width:1100px){.public-columns.has-right-ads{grid-template-columns:minmax(0,1fr) 120px;gap:18px}.right-ad-rail{--ad-base:120px}.has-right-ads .radio-timeline .radio-results[data-catalog-layout=compact]{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:840px){.wrap{width:calc(100% - 28px)}.public-nav{height:73px}.right-ad-rail{top:89px;max-height:calc(100dvh - 245px)}.mobile-tabbar{background:var(--surface);box-shadow:0 -3px 24px #00000015}.mobile-tab[aria-current=page]{background:#facc1514}.player-in{width:calc(100% - 24px)}.discovery-head h1{font-size:28px}}
@media(max-width:650px){.public-columns.has-right-ads{grid-template-columns:minmax(0,1fr) 60px;gap:10px}.right-ad-rail{--ad-base:60px}.right-ad-label{font-size:7px;letter-spacing:0}.right-ad-slots{gap:9px}.right-ad-square{width:60px;height:60px;border-radius:7px}.right-ad-square a,.right-ad-square img{width:100%;height:100%}.discovery-head{align-items:start;margin-bottom:14px}.discovery-head h1{font-size:24px}.discovery-head>a{display:none}.discovery-links{gap:6px;padding-bottom:12px}.discovery-links a{font-size:11px;padding:7px 11px}.catalog-panel>summary{padding:12px 10px}.catalog-toolbar{gap:10px}.catalog-result strong{font-size:12px}.catalog-result small{font-size:10px}.station-hero{padding:20px 14px}.station-hero>img{width:112px;height:112px}.station-hero h1{font-size:27px}.has-right-ads .radio-results[data-catalog-layout=compact] .station-card{padding:10px;border-radius:15px}.has-right-ads .radio-results[data-catalog-layout=compact] h3{font-size:14px}.has-right-ads .radio-results[data-catalog-layout=compact] .play{font-size:10px;padding:9px 3px}.load-more-area .btn{min-width:0;width:100%}.radio-results[data-catalog-layout=list] .station-card{border-radius:12px}.footer{gap:20px}}
@media(prefers-reduced-motion:reduce){.station-card:hover,.heart:hover{transform:none}}

/* V13: full-size, unlimited advertising rail and restrained spring motion. */
.public-columns.has-right-ads{grid-template-columns:minmax(0,1fr) 144px}.right-ad-rail{--ad-base:144px}.right-ad-square{width:144px;height:144px;flex-shrink:0}.right-ad-slots{justify-items:start}
:root{--ease-spring:cubic-bezier(.22,1.35,.38,1)}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
 .station-card,.highlight-card,.admin-workflow{transition:transform .36s var(--ease-spring),box-shadow .25s,border-color .2s}
 .station-card:hover,.highlight-card:hover{transform:translateY(-3px)}
 .btn,.chip,.catalog-view button,.heart,.round-play,.player-toggle,.discovery-links a{transition:transform .3s var(--ease-spring),background .2s,color .2s,box-shadow .2s}
 .btn:hover,.round-play:hover,.player-toggle:hover{transform:translateY(-1px) scale(1.025)}
 .btn:active,.chip:active,.heart:active,.round-play:active,.player-toggle:active{transform:scale(.96)}
 .discovery-links a:hover{transform:translateY(-2px)}
}
@media(prefers-reduced-motion:no-preference){
 .catalog-panel[open]>.catalog-panel-body{animation:panel-arrive .26s ease-out}
 .catalog-view button:active,.mobile-tab:active{transform:scale(.97);transition:transform .15s}
 .station-card.v13-enter{animation:card-arrive .38s var(--ease-spring) both;animation-delay:var(--enter-delay,0ms)}
 @keyframes card-arrive{from{opacity:0;transform:translateY(8px) scale(.99)}to{opacity:1;transform:translateY(0) scale(1)}}
 @keyframes panel-arrive{from{opacity:.5;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}
}
@media(max-width:650px){.public-columns.has-right-ads{grid-template-columns:minmax(0,1fr) 50px;gap:10px}.right-ad-rail{--ad-base:50px}.right-ad-square{width:50px;height:50px}.right-ad-label{font-size:6px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* V14: 10% smaller advertising and a brief session-only launch screen. */
.public-columns.has-right-ads{grid-template-columns:minmax(0,1fr) 130px}.right-ad-rail{--ad-base:130px}.right-ad-square{width:130px;height:130px}
@media(max-width:650px){.public-columns.has-right-ads{grid-template-columns:minmax(0,1fr) 45px}.right-ad-rail{--ad-base:45px}.right-ad-square{width:45px;height:45px}}
.app-intro{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;background:var(--bg);pointer-events:none;animation:intro-safety 1.4s both}.app-intro-brand{display:flex;flex-direction:column;align-items:center;gap:12px;animation:intro-brand .55s cubic-bezier(.2,1.18,.4,1) both}.app-intro-brand img{width:180px;height:140px;object-fit:contain}.app-intro-brand strong{font:700 18px 'Space Grotesk',system-ui,sans-serif;letter-spacing:-.04em;color:var(--text)}.intro-signal{display:flex;align-items:center;gap:5px;height:25px;margin-top:12px}.intro-signal i{width:4px;height:10px;border-radius:5px;background:var(--yellow);animation:intro-wave .6s ease-in-out 2 alternate}.intro-signal i:nth-child(2),.intro-signal i:nth-child(4){height:18px;animation-delay:.08s}.intro-signal i:nth-child(3){height:25px;animation-delay:.16s}.app-intro.intro-exit{opacity:0;transition:opacity .2s;animation:none}
@keyframes intro-brand{from{opacity:0;transform:translateY(8px) scale(.96)}to{opacity:1;transform:none}}
@keyframes intro-wave{from{transform:scaleY(.55)}to{transform:scaleY(1)}}
@keyframes intro-safety{0%,80%{visibility:visible}100%{visibility:hidden}}
@media(prefers-reduced-motion:reduce){.app-intro{display:none}.app-intro *{animation:none!important}}

/* V15: complete creatives in the natural page flow; no nested scrolling. */
.right-ad-rail{position:static;max-height:none;overflow:visible;padding-bottom:0}
.right-ad-slots{overflow:visible}.right-ad-square{flex-shrink:0}
.app-intro{animation-duration:3.2s}.intro-signal i{animation-iteration-count:4}

/* V17: complete creatives in a sticky, paged rail. */
.right-ad-rail{position:sticky;top:102px;max-height:none;overflow:visible}.right-ad-square[hidden],.ad-rail-controls[hidden]{display:none!important}.ad-rail-controls{display:flex;align-items:center;justify-content:space-between;gap:3px;margin-top:10px}.ad-rail-controls button{width:32px;height:32px;padding:0;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--text);font-size:24px;line-height:1}.ad-page-status{font-size:10px;color:var(--muted)}
@media(max-width:840px){.right-ad-rail{top:89px}}
@media(max-width:650px){.ad-rail-controls{display:grid;grid-template-columns:1fr 1fr;gap:3px}.ad-rail-controls button{width:21px;height:30px}.ad-page-status{grid-column:1/-1;grid-row:2;text-align:center;font-size:9px}}
.app-intro{overflow:hidden;background:radial-gradient(ellipse at 50% 45%,#facc1514,transparent 55%),var(--bg);animation-duration:3.8s}.app-intro-brand{position:relative;z-index:2;gap:10px;animation:intro-brand .9s cubic-bezier(.16,1.2,.3,1) both}.app-intro-brand img{width:210px;height:160px;filter:drop-shadow(0 0 28px #facc1520)}.app-intro-brand strong{font-size:20px}.intro-tagline{font-size:12px;letter-spacing:.12em;color:var(--muted);animation:intro-brand .6s .45s both}.intro-signal{gap:7px;height:32px;margin-top:22px}.intro-signal i{width:5px;animation-duration:.7s;animation-iteration-count:4}.intro-ring{position:absolute;left:50%;top:50%;width:min(75vw,420px);aspect-ratio:1;border-radius:50%;border:1px solid #facc1528;transform:translate(-50%,-50%);animation:intro-ripple 2.7s ease-out both;pointer-events:none}.intro-ring:nth-child(2){animation-delay:.25s}.intro-ring:nth-child(3){animation-delay:.5s}
@keyframes intro-ripple{0%{opacity:0;transform:translate(-50%,-50%) scale(.7)}25%{opacity:.8}100%{opacity:0;transform:translate(-50%,-50%) scale(1.8)}}
@media(prefers-reduced-motion:reduce){.app-intro{display:none}.intro-ring{animation:none}}
/* A single subtle spring when the player becomes visible. */
@media(prefers-reduced-motion:no-preference){
 .player.on{animation:player-spring-in .48s both}
 @keyframes player-spring-in{0%{opacity:0;transform:translateY(22px)}62%{opacity:1;transform:translateY(-4px)}82%{transform:translateY(1px)}100%{opacity:1;transform:translateY(0)}}
}
@media(prefers-reduced-motion:reduce){.player.on{animation:none!important}}
/* V18: all ads together. Never paginate, crop or internally scroll the rail. */
.right-ad-rail{position:static;max-height:none;overflow:visible}
.right-ad-rail.rail-fits{position:sticky;top:102px}
.right-ad-square[hidden]{display:block!important}
@media(max-width:840px){.right-ad-rail.rail-fits{top:89px}}

@media(prefers-reduced-motion:no-preference){.player.on.player-switch{animation:player-switch .42s both}@keyframes player-switch{0%{transform:translateY(0)}40%{transform:translateY(-5px)}70%{transform:translateY(2px)}100%{transform:translateY(0)}}}
.ad-rail-controls{display:none!important}
.geo-filters{display:flex;flex-wrap:wrap;gap:12px;margin:20px 0}.geo-filters label{display:grid;gap:5px;font-size:12px;min-width:0}.geo-filters select{max-width:100%;min-height:44px;background:var(--surface);color:var(--text);border:1px solid var(--line);padding:8px;border-radius:9px}.geo-daily{max-height:420px;overflow:auto}@media(max-width:650px){.geo-filters label{width:100%}.geo-filters select{font-size:16px;width:100%}}
.geo-daily table{min-width:0;table-layout:fixed}.geo-daily th,.geo-daily td{overflow-wrap:anywhere}@media(max-width:650px){.geo-daily th,.geo-daily td{padding:10px 7px;font-size:11px}}
