/* Appfid Rádios v1.2.8: styles isolated to the portal, no external fonts or frameworks */
:root{--afr-ink:#16253b;--afr-slate:#65718a;--afr-accent:#f05b3e;--afr-blue:#2875f0;--afr-border:#e8ebf2;--afr-bg:#f6f8fc}
.afr-embed-page{margin:0;background:var(--afr-bg)}
.afr-app,.afr-player{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;font-size:15px;color:var(--afr-ink);-webkit-font-smoothing:antialiased}
.afr-app *,.afr-app *::before,.afr-app *::after,.afr-player *,.afr-player *::before,.afr-player *::after{box-sizing:border-box}
.afr-app a{text-decoration:none;color:inherit}.afr-app button,.afr-app input,.afr-app select,.afr-app textarea,.afr-player button{font:inherit}
.afr-app button,.afr-player button{cursor:pointer}.afr-app img{display:block;max-width:100%}
.afr-template-wrap{background:var(--afr-bg)}
.afr-app{background:var(--afr-bg);min-height:100vh;line-height:1.5;position:relative;padding-bottom:120px;overflow:clip}
.afr-shell{width:min(1200px,calc(100% - 44px));margin:0 auto}
.afr-header{display:flex;align-items:center;gap:32px;justify-content:space-between;min-height:98px}
.afr-brand{display:flex;align-items:center;gap:10px;flex-shrink:0}
.afr-brand-icon{width:43px;height:43px;display:grid;place-items:center;background:linear-gradient(145deg,#f58e62,#ee4f45);border-radius:15px;box-shadow:0 8px 20px #f05b3e38;color:white;font-size:26px;line-height:1}
.afr-brand strong{font-size:21px;font-weight:900;letter-spacing:-.9px;white-space:nowrap;display:block;line-height:1.15}.afr-brand em{font-style:normal;color:var(--afr-accent)}.afr-brand small{display:block;font-size:11px;color:var(--afr-slate);letter-spacing:.15px;margin-top:2px}
.afr-nav{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.afr-nav a{color:#69758b;border-radius:10px;padding:10px 13px;font-size:13px;font-weight:700;transition:.16s}.afr-nav a:hover,.afr-nav a.is-active{color:#213a5c;background:#e7edf8}
.afr-submit-link{flex-shrink:0;padding:12px 19px;border:1px solid #d9dee9;border-radius:12px;font-size:13px;font-weight:800;background:#fff}.afr-submit-link:hover{border-color:var(--afr-accent);color:var(--afr-accent)}
.afr-hero{min-height:377px;border-radius:27px;overflow:hidden;position:relative;background:radial-gradient(circle at 73% 49%,#26489b 0,#142c62 33%,#111b36 67%,#10162c 100%);color:#fff;display:flex;align-items:center;padding:48px 58px;isolation:isolate;box-shadow:0 18px 55px #10152a17}
.afr-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(14,24,48,.15),transparent);z-index:-1}.afr-hero-copy{position:relative;max-width:665px;z-index:2;width:64%}
.afr-eyebrow,.afr-section-kicker{display:flex;gap:8px;align-items:center;font-size:11px;font-weight:900;letter-spacing:2.1px;color:#f5b39d}.afr-live-dot{height:8px;width:8px;background:#fb7b59;border-radius:50%;box-shadow:0 0 0 4px #fb7b5922;display:inline-block}
.afr-hero h1{font-size:clamp(32px,4.2vw,52px);line-height:1.13;max-width:620px;letter-spacing:-2.2px;margin:18px 0;font-weight:900;color:#fff}
.afr-hero p{font-size:15px;line-height:1.75;color:#c0cbe2;margin:0 0 22px;max-width:470px}
.afr-search-form{display:flex;align-items:center;gap:10px;width:min(540px,100%);background:#fff;padding:7px 7px 7px 18px;border-radius:14px;box-shadow:0 16px 42px #07132d35}
.afr-search-icon{font-size:30px;color:#8795ab;line-height:1}.afr-search-form input{height:41px;border:0!important;outline:0!important;flex:1;min-width:0;color:#172742!important;background:#fff!important;box-shadow:none!important;padding:0!important;font-size:13px!important}
.afr-search-form button,.afr-primary-submit{padding:13px 19px;background:var(--afr-accent);border:0;border-radius:9px;color:#fff;font-weight:800;font-size:12px;white-space:nowrap}.afr-search-form button:hover,.afr-primary-submit:hover{background:#da4a31}
.afr-hero-foot{display:flex;flex-wrap:wrap;gap:18px;margin-top:23px;font-size:11px;color:#b1bdd7}.afr-hero-art{position:absolute;inset:0 0 0 auto;width:47%;overflow:hidden;z-index:1}
.afr-orbit{position:absolute;left:50%;top:51%;transform:translate(-50%,-50%);border:1px solid #a7bffd23;border-radius:50%}.afr-orbit-1{width:205px;height:205px}.afr-orbit-2{width:320px;height:320px}.afr-orbit-3{width:450px;height:450px}
.afr-hero-symbol{position:absolute;left:50%;top:49%;transform:translate(-50%,-50%);width:168px;height:168px;display:grid;place-items:center;border-radius:50%;font-size:93px;font-weight:700;line-height:1;color:#fff;background:linear-gradient(140deg,#ffb16f,#e54e59);box-shadow:0 24px 80px #ee52617a,0 0 0 13px #f7705930}
.afr-art-chip{position:absolute;color:#fff;font-size:10px;font-weight:800;border:1px solid #8ea9ff35;background:#071d427f;border-radius:11px;padding:8px 12px;backdrop-filter:blur(8px)}.afr-chip-1{top:26%;left:12%}.afr-chip-2{bottom:20%;right:10%}
.afr-content-section{padding:50px 0 36px}.afr-section-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:26px}.afr-section-kicker{color:var(--afr-accent);margin-bottom:6px}
.afr-section-head h2,.afr-help-box h2{font-size:28px;font-weight:900;letter-spacing:-1.15px;margin:3px 0 5px;color:#192b45}.afr-section-head p{font-size:13px;color:var(--afr-slate);margin:0}.afr-result-total{font-size:12px;color:var(--afr-slate);background:#fff;border:1px solid var(--afr-border);border-radius:20px;padding:9px 14px;white-space:nowrap}
.afr-filter-form{display:flex;align-items:end;gap:10px;margin-bottom:25px;flex-wrap:wrap}
.afr-filter-form label{display:flex;flex:1 1 182px;flex-direction:column;gap:6px;font-size:12px;font-weight:800;color:#56647d;min-width:155px}.afr-filter-form select{height:43px;width:100%;border:1px solid #dfe4ef;background:#fff;color:#304059;padding:0 12px;border-radius:10px;min-width:0;outline-color:var(--afr-blue)}.afr-filter-form select:disabled{background:#eef1f6;color:#8d98aa;cursor:not-allowed}
.afr-filter-button,.afr-secondary-button{display:inline-flex;align-items:center;justify-content:center;background:#fff;color:#293e59;border:1px solid #d9e0ed;border-radius:10px;padding:11px 16px;font-size:13px;font-weight:800;min-height:43px}.afr-filter-button:hover,.afr-secondary-button:hover{border-color:var(--afr-accent);color:var(--afr-accent)}.afr-clear{font-size:12px;color:#64728a!important;padding:12px}
.afr-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.afr-card{display:flex;align-items:center;gap:15px;border:1px solid #e8ecf3;border-radius:17px;background:#fff;padding:16px;min-width:0;box-shadow:0 5px 24px #14244408;transition:transform .16s,box-shadow .16s}
.afr-card:hover{transform:translateY(-3px);box-shadow:0 15px 34px #14244415}.afr-card-image{width:76px;height:76px;min-width:76px;display:grid;place-items:center;overflow:hidden;background:linear-gradient(140deg,#e2e9fb,#fbe6e0);border-radius:13px}.afr-card-image img{width:100%;height:100%;object-fit:contain;background:#fff}.afr-placeholder{font-size:45px;color:#f06a51}
.afr-card-info{flex:1;min-width:0;align-self:center}.afr-card-title{font-size:14px;line-height:1.35;display:block;color:#192a43!important;font-weight:900;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.afr-card-title:hover{color:var(--afr-accent)!important}.afr-card-sub{font-size:11px;color:#718096;margin:5px 0 2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.afr-card-tags{font-size:10px;color:#8b96a9;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.afr-card-actions{display:flex;flex-direction:column;align-items:center;gap:7px;align-self:center}.afr-icon-button{display:grid;place-items:center;width:31px;height:31px;background:#fff;border:1px solid #e1e6ef;border-radius:9px;color:#8d98ab;font-size:23px;line-height:1}.afr-icon-button:hover,.afr-icon-button.is-fav{color:#f1604c;background:#fff4f1;border-color:#ffd5cc}.afr-play{display:inline-flex;align-items:center;gap:5px;border:0;background:var(--afr-accent);color:#fff;font-size:11px;font-weight:850;padding:9px 10px;border-radius:9px}.afr-play:hover{background:#d94831}.afr-play span{white-space:nowrap}
.afr-empty{grid-column:1/-1;text-align:center;border:1px dashed #cfd7e6;border-radius:18px;padding:54px 24px;color:#687992;background:#fff}.afr-empty a{color:var(--afr-accent)!important;font-weight:700}
.afr-favorites-empty{background:#fff;border:1px dashed #d6dfea;border-radius:15px;padding:28px;text-align:center;color:#6b7890}.afr-favorites-empty[hidden]{display:none}
.afr-pagination{display:flex;gap:9px;justify-content:center;margin:34px 0}.afr-pagination a{display:grid;place-items:center;width:36px;height:36px;background:#fff;border:1px solid #dfe4ed;border-radius:9px;font-size:13px;font-weight:800}.afr-pagination .is-current{background:var(--afr-accent);color:white;border-color:var(--afr-accent)}
.afr-community-strip{display:flex;align-items:center;justify-content:space-between;gap:20px;background:#fff;border:1px solid var(--afr-border);padding:27px 31px;border-radius:19px;margin:9px 0 25px}.afr-community-strip strong{font-size:19px;font-weight:900}.afr-community-strip p{color:var(--afr-slate);font-size:13px;margin:6px 0 0}.afr-community-strip>a{background:#1c2c49;color:#fff;padding:12px 18px;border-radius:9px;font-size:12px;font-weight:800;white-space:nowrap}.afr-site-footer{padding:25px 0 15px;margin-top:18px;border-top:1px solid #e5eaf2;display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap;color:#7d8aa1;font-size:12px}.afr-site-footer a:hover{color:#f05b3e}
.afr-back{padding-top:22px}.afr-back a{font-size:13px;font-weight:700;color:#64748b}.afr-back a:hover{color:var(--afr-accent)}
.afr-detail{display:flex;align-items:center;gap:38px;margin:24px 0 31px;padding:48px;background:#fff;border:1px solid var(--afr-border);border-radius:23px}.afr-detail-cover{display:grid;place-items:center;flex:0 0 230px;height:230px;border-radius:22px;overflow:hidden;background:linear-gradient(135deg,#fce0dc,#dceafa)}.afr-detail-cover img{width:100%;height:100%;object-fit:contain;background:#fff}.afr-detail-cover .afr-placeholder{font-size:115px}
.afr-detail-copy h1{font-size:clamp(29px,4vw,44px);font-weight:900;letter-spacing:-1.6px;margin:10px 0 7px;line-height:1.2}.afr-detail-location{color:#68768e;margin:0 0 19px}.afr-detail-genres{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px}.afr-detail-genres span{background:#f2f5fa;padding:6px 10px;border-radius:7px;color:#66758f;font-size:12px}.afr-detail-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.afr-big-play{padding:15px 26px;font-size:14px}.afr-detail-actions .afr-icon-button{height:45px;width:45px;font-size:29px}.afr-description,.afr-help-box{background:#fff;border:1px solid var(--afr-border);border-radius:20px;padding:28px 32px;margin-bottom:22px}.afr-description h2{margin:0 0 10px;font-size:20px}.afr-description div{color:#66738b;line-height:1.8}.afr-help-box{display:flex;align-items:center;justify-content:space-between;gap:18px;background:#eef3fd}.afr-help-box h2{font-size:19px}.afr-help-box p{font-size:13px;color:#68768f;margin:5px 0 0}
.afr-form-heading{padding:30px 0 26px;max-width:760px}.afr-form-heading h1{font-size:clamp(28px,4vw,39px);line-height:1.17;font-weight:900;letter-spacing:-1.5px;margin:14px 0}.afr-form-heading p{color:var(--afr-slate);max-width:620px;font-size:14px}
.afr-form{background:#fff;border:1px solid var(--afr-border);padding:31px;border-radius:20px;max-width:900px;box-shadow:0 10px 36px #18243b08}.afr-form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.afr-field{display:flex;flex-direction:column;gap:8px;color:#253c58;font-weight:750;font-size:13px;margin-bottom:19px}.afr-field-note{font-size:11px;color:#9ba6b9;font-weight:500}.afr-field input,.afr-field select,.afr-field textarea{font-size:14px!important;font-family:inherit;width:100%;min-height:46px;color:#1e3451;border:1px solid #dce3ef!important;background:#fff;border-radius:10px;padding:11px 12px;outline-color:var(--afr-blue)}.afr-field textarea{resize:vertical}.afr-field input[type="file"]{font-size:12px!important;cursor:pointer}.afr-form-divider{font-size:12px;font-weight:900;letter-spacing:1px;color:#6f7e95;text-transform:uppercase;border-bottom:1px solid #e9edf4;margin:9px 0 23px;padding-bottom:11px}.afr-checkbox{display:flex;align-items:flex-start;gap:10px;font-size:12px;line-height:1.6;color:#586780}.afr-checkbox input{width:16px;height:16px;flex-shrink:0;margin-top:2px}.afr-form-help{font-size:12px;color:#8692a8;margin:15px 0 22px}.afr-primary-submit{padding:15px 28px;font-size:14px}.afr-message{border-radius:11px;padding:14px 18px;font-weight:700;font-size:14px;max-width:900px;margin-bottom:20px}.afr-message-success{background:#e8faf0;color:#176f47;border:1px solid #b5e7cc}.afr-message-error{background:#fff0ed;color:#ab382b;border:1px solid #ffcbc2}.afr-honeypot{position:absolute!important;left:-99999px!important;width:1px;height:1px;overflow:hidden}
.afr-player{position:fixed;bottom:16px;left:50%;transform:translateX(-50%);width:min(860px,calc(100% - 28px));z-index:999999;background:#151f36;color:#fff;border-radius:18px;box-shadow:0 14px 55px #111c3580;border:1px solid #54617b6b}.afr-player[hidden]{display:none!important}.afr-player-inner{display:flex;align-items:center;gap:16px;padding:13px 19px}.afr-player-cover{flex-shrink:0;display:grid;place-items:center;width:55px;height:55px;border-radius:12px;background:linear-gradient(140deg,#ef8b65,#e34a50);font-size:34px;overflow:hidden}.afr-player-cover img{width:100%;height:100%;object-fit:contain;background:#fff}.afr-player-meta{display:flex;flex-direction:column;gap:1px;flex:1;min-width:0}.afr-player-label{font-size:9px;font-weight:900;letter-spacing:1.7px;color:#ef987e}.afr-player-meta strong{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:15px}.afr-player-status{font-size:11px;color:#a9b8d3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.afr-player-buttons{display:flex;align-items:center;gap:12px}.afr-player-buttons button{border:none;background:transparent;color:#fff;font-size:25px;width:33px;height:36px;display:grid;place-items:center}.afr-player-buttons #afr-player-toggle{border-radius:50%;width:45px;height:45px;background:#f15a46;font-size:18px}.afr-player-buttons button:hover{opacity:.8}
.afr-sr{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important}
@media(max-width:1060px){.afr-header{gap:15px}.afr-nav{gap:0}.afr-nav a{padding:9px}.afr-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.afr-hero{padding:41px}.afr-hero-copy{width:70%}}
@media(max-width:720px){.afr-shell{width:min(100% - 26px,620px)}.afr-header{min-height:94px;flex-wrap:wrap;justify-content:space-between;gap:9px;padding:15px 0}.afr-brand strong{font-size:19px}.afr-brand-icon{width:39px;height:39px}.afr-nav{order:3;display:flex;overflow:auto;white-space:nowrap;flex-wrap:nowrap;width:100%;padding-top:3px;scrollbar-width:none}.afr-nav::-webkit-scrollbar{display:none}.afr-nav a{padding:8px 12px}.afr-submit-link{font-size:11px;padding:9px 11px}.afr-hero{padding:35px 23px;min-height:360px;border-radius:20px}.afr-hero-copy{width:100%}.afr-hero h1{font-size:36px;letter-spacing:-1.5px;max-width:470px}.afr-hero p{max-width:400px;font-size:13px}.afr-hero-art{opacity:.23;width:75%;pointer-events:none}.afr-hero-foot{font-size:10px;gap:10px}.afr-search-form{position:relative}.afr-search-form button{padding:13px 10px}.afr-content-section{padding-top:33px}.afr-section-head h2{font-size:23px}.afr-result-total{display:none}.afr-filter-form{display:grid;grid-template-columns:1fr 1fr;gap:10px}.afr-filter-form label,.afr-filter-form select{min-width:0;width:100%}.afr-filter-button,.afr-clear{text-align:center}.afr-grid{grid-template-columns:1fr}.afr-card{padding:13px}.afr-card-image{width:72px;height:72px;min-width:72px}.afr-community-strip{padding:21px;flex-direction:column;align-items:flex-start}.afr-site-footer{font-size:11px}.afr-detail{flex-direction:column;align-items:flex-start;gap:22px;padding:27px 23px}.afr-detail-cover{height:175px;width:175px;flex-basis:175px}.afr-detail-copy h1{font-size:30px}.afr-help-box{align-items:flex-start;flex-direction:column}.afr-form{padding:20px 15px}.afr-form-row{grid-template-columns:1fr;gap:0}.afr-player{bottom:8px;border-radius:14px}.afr-player-inner{padding:10px;gap:10px}.afr-player-cover{width:43px;height:43px}.afr-player-meta strong{font-size:12px}.afr-player-buttons{gap:2px}.afr-player-buttons #afr-player-toggle{height:40px;width:40px}}
@media(max-width:380px){.afr-hero h1{font-size:30px}.afr-hero-foot span:last-child{display:none}.afr-card-actions .afr-play span{display:none}.afr-header .afr-submit-link{max-width:115px;text-align:center}}
@media(prefers-reduced-motion:reduce){.afr-app *{scroll-behavior:auto!important;transition:none!important}}

/* v1.2 compact directory refresh */
.afr-directory-top{padding:14px 0 36px}
.afr-section-head-compact{margin-bottom:14px;align-items:flex-end}
.afr-section-head-compact h2{font-size:24px;letter-spacing:-1px;margin-bottom:2px}
.afr-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:18px}
.afr-search-inline{display:flex;align-items:center;gap:10px;width:min(460px,100%);background:#fff;border:1px solid var(--afr-border);border-radius:14px;padding:0 14px;box-shadow:0 8px 26px #14244408}
.afr-search-inline input{height:46px;border:0!important;outline:0!important;flex:1;min-width:0;color:#172742!important;background:transparent!important;box-shadow:none!important;padding:0!important;font-size:14px!important}
.afr-search-inline .afr-search-icon{font-size:20px;color:#98a4b8}
.afr-filter-form-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;align-items:end;margin-bottom:18px}
.afr-filter-form-grid label{min-width:0}
.afr-filter-actions{display:flex;align-items:center;gap:10px;grid-column:1 / -1}
.afr-filter-actions .afr-clear{padding:10px 4px}
.afr-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:14px}
.afr-tile{position:relative;display:flex;flex-direction:column;align-items:stretch;gap:10px;padding:12px;border-radius:16px;min-width:0}
.afr-tile:hover{transform:translateY(-2px);box-shadow:0 14px 28px #14244412}
.afr-tile-image{width:100%;height:118px;min-width:0;border-radius:12px;background:#fff;border:1px solid #eef2f7;padding:8px}
.afr-tile-image img{width:100%;height:100%;object-fit:contain;background:#fff}
.afr-tile-info{min-width:0;display:flex;flex-direction:column;gap:3px}
.afr-tile-title{font-size:13px;line-height:1.32;white-space:normal;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;min-height:34px}
.afr-tile-sub,.afr-tile-tags{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.afr-tile-sub{font-size:10px;color:#6f7e95;margin:0}
.afr-tile-tags{font-size:10px;color:#98a3b5}
.afr-tile-play,.afr-tile-fav{position:absolute;z-index:2;top:10px}
.afr-tile-play{left:10px;width:29px;height:29px;border:none;border-radius:9px;background:rgba(18,35,62,.92);color:#fff;font-size:13px;display:grid;place-items:center;box-shadow:0 6px 14px #0d183026}
.afr-tile-fav{right:10px;width:29px;height:29px;border-radius:9px;background:rgba(255,255,255,.96);backdrop-filter:blur(4px)}
.afr-community-strip{padding:20px 24px;margin-top:20px}
.afr-community-strip strong{font-size:18px}

/* compact the listing page and remove giant hero visual noise */
.afr-directory-top + .afr-content-section{padding-top:0}

/* search busy state */
.afr-search-inline.is-loading{border-color:#cfd8ea;box-shadow:0 0 0 3px #eef3fb}

@media (max-width: 1060px){
  .afr-grid{grid-template-columns:repeat(auto-fill,minmax(145px,1fr))}
}
@media (max-width: 720px){
  .afr-directory-top{padding-top:6px}
  .afr-section-head-compact{align-items:flex-start}
  .afr-toolbar{margin-bottom:14px}
  .afr-search-inline{width:100%}
  .afr-filter-form-grid{grid-template-columns:1fr 1fr}
  .afr-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .afr-tile-image{height:104px}
  .afr-tile-title{font-size:12px;min-height:31px}
  .afr-community-strip{padding:18px}
}
@media (max-width: 420px){
  .afr-filter-form-grid{grid-template-columns:1fr}
  .afr-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .afr-tile{padding:10px}
  .afr-tile-image{height:92px}
  .afr-tile-play,.afr-tile-fav{top:8px}
  .afr-result-total{display:none}
}

/* v1.2.1 logo-only directory tiles */
.afr-grid{grid-template-columns:repeat(auto-fill,minmax(112px,1fr));gap:12px;align-items:start}
.afr-logo-tile{position:relative;display:block;padding:8px;border-radius:14px;background:#fff;border:1px solid #e8ecf3;box-shadow:0 5px 18px #14244408;overflow:hidden;aspect-ratio:1/1}
.afr-logo-tile:hover{transform:translateY(-2px);box-shadow:0 12px 24px #14244412}
.afr-logo-link{display:grid;place-items:center;width:100%;height:100%;border-radius:10px;background:#fff;padding:8px}
.afr-logo-link img{width:100%;height:100%;object-fit:contain;background:#fff}
.afr-logo-play,.afr-logo-fav{position:absolute;z-index:2;width:28px;height:28px;border-radius:9px;display:grid;place-items:center}
.afr-logo-play{left:8px;top:8px;border:none;background:rgba(20,35,62,.92);color:#fff;font-size:12px;box-shadow:0 6px 14px #0d183026}
.afr-logo-fav{right:8px;top:8px;background:rgba(255,255,255,.96);backdrop-filter:blur(4px);font-size:21px}
.afr-logo-tile .afr-placeholder{font-size:46px}
/* neutralize old text-heavy tile layout on directory */
.afr-logo-tile .afr-card-info,.afr-logo-tile .afr-tile-info,.afr-logo-tile .afr-card-title,.afr-logo-tile .afr-card-sub,.afr-logo-tile .afr-card-tags{display:none!important}

@media (max-width: 1060px){
  .afr-grid{grid-template-columns:repeat(auto-fill,minmax(108px,1fr))}
}
@media (max-width: 720px){
  .afr-grid{grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:10px}
  .afr-logo-tile{padding:7px;border-radius:12px}
  .afr-logo-play,.afr-logo-fav{width:26px;height:26px}
}
@media (max-width: 420px){
  .afr-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
  .afr-logo-tile{padding:6px}
  .afr-logo-play,.afr-logo-fav{top:6px}
  .afr-logo-play{left:6px}
  .afr-logo-fav{right:6px}
}


/* v1.2.6 aligned logo tiles */
.afr-grid{grid-template-columns:repeat(auto-fill,minmax(132px,1fr));gap:16px;align-items:start}
.afr-logo-tile{position:relative;display:flex;flex-direction:column;justify-content:space-between;min-height:156px;padding:10px;border-radius:16px;background:#fff;border:1px solid #e8ecf3;box-shadow:0 6px 18px #14244408;overflow:hidden}
.afr-logo-tile:hover{transform:translateY(-2px);box-shadow:0 12px 24px #14244412}
.afr-logo-link{display:grid;place-items:center;flex:1;min-height:102px;border-radius:12px;background:#fff;padding:10px}
.afr-logo-link img{width:100%;height:100%;max-height:92px;object-fit:contain;background:#fff}
.afr-logo-actions{display:flex;align-items:center;gap:8px;margin-top:10px}
.afr-logo-play,.afr-logo-fav{position:static!important;top:auto!important;left:auto!important;right:auto!important}
.afr-logo-play{display:inline-flex;align-items:center;justify-content:center;gap:6px;flex:1;height:34px;border:none;border-radius:10px;background:#1b2f52;color:#fff;font-size:12px;font-weight:800;box-shadow:none}
.afr-logo-play:hover{background:#132540}
.afr-logo-play span{display:inline}
.afr-logo-fav{width:34px;height:34px;border-radius:10px;background:#fff;border:1px solid #dbe2ee;color:#8d98ab;font-size:22px;flex-shrink:0}
.afr-logo-fav:hover,.afr-logo-fav.is-fav{color:#f1604c;background:#fff4f1;border-color:#ffd5cc}
.afr-logo-tile .afr-placeholder{font-size:44px}

@media (max-width: 720px){
  .afr-grid{grid-template-columns:repeat(auto-fill,minmax(112px,1fr));gap:12px}
  .afr-logo-tile{min-height:142px;padding:9px}
  .afr-logo-link{min-height:88px;padding:8px}
  .afr-logo-link img{max-height:78px}
  .afr-logo-play{height:32px;font-size:11px}
  .afr-logo-fav{width:32px;height:32px}
}
@media (max-width: 420px){
  .afr-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
  .afr-logo-tile{min-height:132px;padding:8px}
  .afr-logo-link{min-height:78px}
  .afr-logo-link img{max-height:68px}
  .afr-logo-play span{display:none}
  .afr-logo-play{width:40px;flex:0 0 40px}
}


/* v1.2.6 organized station grid */
.afr-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,150px));gap:18px;justify-content:flex-start;align-items:start}
.afr-logo-tile{position:relative;aspect-ratio:1/1;min-height:0;height:auto;padding:12px 12px 48px;border-radius:18px;background:#fff;border:1px solid #e5eaf2;box-shadow:0 8px 24px #1424440a;overflow:hidden}
.afr-logo-tile:hover{transform:translateY(-2px);box-shadow:0 14px 26px #14244414}
.afr-logo-link{display:grid;place-items:center;width:100%;height:100%;min-height:0;padding:10px;background:#fff;border-radius:12px}
.afr-logo-link img{width:100%;height:100%;max-height:none;object-fit:contain}
.afr-logo-actions{position:absolute;left:10px;right:10px;bottom:10px;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px;border-radius:12px;background:#f5f8fc;border:1px solid #e3e9f3;box-shadow:inset 0 1px 0 rgba(255,255,255,.7)}
.afr-logo-play,.afr-logo-fav{position:static!important;top:auto!important;left:auto!important;right:auto!important;margin:0}
.afr-logo-play{flex:1;display:inline-flex;align-items:center;justify-content:center;height:30px;min-width:0;border:none;border-radius:9px;background:#1a3157;color:#fff;font-size:12px;font-weight:800;box-shadow:none}
.afr-logo-play:hover{background:#112846}
.afr-logo-play span{display:none!important}
.afr-logo-fav{width:30px;height:30px;display:grid;place-items:center;border-radius:9px;background:#fff;border:1px solid #d8e0ec;color:#8b96aa;font-size:20px;line-height:1;flex:0 0 30px}
.afr-logo-fav:hover,.afr-logo-fav.is-fav{color:#ee5c47;background:#fff5f2;border-color:#ffd4cb}

@media (max-width: 900px){
  .afr-grid{grid-template-columns:repeat(auto-fill,minmax(132px,132px));gap:14px}
  .afr-logo-tile{padding:10px 10px 44px}
  .afr-logo-actions{left:8px;right:8px;bottom:8px;padding:5px}
}
@media (max-width: 520px){
  .afr-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
  .afr-logo-tile{padding:8px 8px 40px;border-radius:14px}
  .afr-logo-link{padding:8px}
  .afr-logo-actions{left:6px;right:6px;bottom:6px;gap:6px;padding:4px;border-radius:10px}
  .afr-logo-play,.afr-logo-fav{height:28px}
  .afr-logo-fav{width:28px;flex-basis:28px;font-size:18px}
}


/* v1.2.6 preserve full original logo without cropping or obstruction */
.afr-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,160px));gap:18px;justify-content:flex-start;align-items:start}
.afr-logo-tile{display:grid;grid-template-rows:minmax(126px,1fr) auto;aspect-ratio:auto;min-height:0;height:190px;padding:10px;border-radius:18px;background:#fff;border:1px solid #e5eaf2;box-shadow:0 8px 24px #1424440a;overflow:hidden}
.afr-logo-link{display:grid;place-items:center;width:100%;height:100%;min-height:126px;padding:10px 10px 14px;background:#fff;border-radius:12px;overflow:visible}
.afr-logo-link img{display:block;width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;object-position:center center;background:#fff}
.afr-logo-actions{position:static;left:auto;right:auto;bottom:auto;margin-top:8px;display:grid;grid-template-columns:1fr 34px;align-items:center;gap:8px;padding:0;background:transparent;border:none;box-shadow:none}
.afr-logo-play,.afr-logo-fav{position:static!important;margin:0}
.afr-logo-play{height:34px;border:none;border-radius:10px;background:#1a3157;color:#fff;font-size:12px;font-weight:800;box-shadow:none}
.afr-logo-play:hover{background:#112846}
.afr-logo-fav{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:#fff;border:1px solid #d8e0ec;color:#8b96aa;font-size:20px;line-height:1}
.afr-logo-fav:hover,.afr-logo-fav.is-fav{color:#ee5c47;background:#fff5f2;border-color:#ffd4cb}

@media (max-width: 900px){
  .afr-grid{grid-template-columns:repeat(auto-fill,minmax(146px,146px));gap:14px}
  .afr-logo-tile{height:176px}
  .afr-logo-link{min-height:114px}
}
@media (max-width: 520px){
  .afr-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
  .afr-logo-tile{height:152px;padding:8px;border-radius:14px}
  .afr-logo-link{min-height:96px;padding:8px 8px 12px}
  .afr-logo-actions{grid-template-columns:1fr 30px;gap:6px}
  .afr-logo-play{height:30px}
  .afr-logo-fav{width:30px;height:30px;font-size:18px;border-radius:9px}
}


/* v1.2.8 — fixed-height card with a real, independent action footer.
   Scoping protects the directory from older theme and plugin card rules. */
#afr-app .afr-grid{
  display:grid;
  grid-template-columns:repeat(auto-fill,148px);
  justify-content:start;
  align-items:start;
  gap:18px;
}
#afr-app .afr-grid > .afr-logo-tile{
  position:relative;
  display:flex;
  flex-direction:column;
  align-items:stretch;
  justify-content:flex-start;
  gap:8px;
  box-sizing:border-box;
  width:148px;
  height:190px;
  min-width:0;
  min-height:0;
  margin:0;
  padding:10px;
  border:1px solid #e4e9f2;
  border-radius:18px;
  background:#fff;
  box-shadow:0 8px 24px rgba(20,36,68,.06);
  overflow:hidden;
}
#afr-app .afr-logo-tile > .afr-logo-link{
  display:flex;
  flex:1 1 auto;
  align-items:center;
  justify-content:center;
  box-sizing:border-box;
  width:100%;
  height:auto;
  min-height:0;
  min-width:0;
  margin:0;
  padding:8px;
  border-radius:12px;
  background:#fff;
  overflow:hidden;
}
#afr-app .afr-logo-link > img{
  display:block;
  flex:0 1 auto;
  width:100%;
  height:100%;
  min-width:0;
  min-height:0;
  max-width:100%;
  max-height:100%;
  object-fit:contain;
  object-position:center;
}
#afr-app .afr-logo-tile > .afr-logo-actions{
  position:static;
  display:flex;
  flex:0 0 36px;
  align-items:center;
  justify-content:center;
  gap:10px;
  width:100%;
  height:36px;
  min-height:36px;
  margin:0;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}
#afr-app .afr-logo-actions > .afr-logo-play,
#afr-app .afr-logo-actions > .afr-logo-fav{
  position:static!important;
  inset:auto!important;
  display:flex;
  flex:0 0 36px;
  align-items:center;
  justify-content:center;
  box-sizing:border-box;
  width:36px;
  height:36px;
  min-width:36px;
  min-height:36px;
  margin:0;
  padding:0;
  border-radius:11px;
  line-height:1;
  box-shadow:none;
  transition:background .16s ease, border-color .16s ease, color .16s ease;
}
#afr-app .afr-logo-actions > .afr-logo-play{
  border:1px solid #1a3157;
  background:#1a3157;
  color:#fff;
  font-size:15px;
  font-weight:700;
}
#afr-app .afr-logo-play > span{display:none!important}
#afr-app .afr-logo-actions > .afr-logo-play:hover{
  background:#10243f;
  border-color:#10243f;
}
#afr-app .afr-logo-actions > .afr-logo-fav{
  border:1px solid #d7dfeb;
  background:#fff;
  color:#8794a8;
  font-size:21px;
}
#afr-app .afr-logo-actions > .afr-logo-fav:hover,
#afr-app .afr-logo-actions > .afr-logo-fav.is-fav{
  background:#fff6f3;
  border-color:#ffd6ce;
  color:#ef5d48;
}
/* Keep the filters on-screen; no changes to their form behavior. */
#afr-app .afr-filter-form-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
@media (max-width:900px){
  #afr-app .afr-grid{grid-template-columns:repeat(auto-fill,136px);gap:14px}
  #afr-app .afr-grid > .afr-logo-tile{width:136px;height:178px}
}
@media (max-width:720px){
  #afr-app .afr-filter-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:520px){
  #afr-app .afr-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
  #afr-app .afr-grid > .afr-logo-tile{width:100%;height:156px;padding:8px;gap:6px;border-radius:14px}
  #afr-app .afr-logo-tile > .afr-logo-link{padding:6px}
  #afr-app .afr-logo-tile > .afr-logo-actions{flex-basis:32px;height:32px;min-height:32px;gap:8px}
  #afr-app .afr-logo-actions > .afr-logo-play,
  #afr-app .afr-logo-actions > .afr-logo-fav{flex-basis:32px;width:32px;height:32px;min-width:32px;min-height:32px;border-radius:10px}
  #afr-app .afr-logo-actions > .afr-logo-fav{font-size:19px}
}
@media (max-width:420px){
  #afr-app .afr-filter-form-grid{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:360px){
  #afr-app .afr-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
}

.afr-player{background:#13213c;border:1px solid rgba(255,255,255,.08);box-shadow:0 16px 44px rgba(10,20,40,.34)}
.afr-player-inner{align-items:center;gap:16px;padding:14px 18px}
.afr-player-cover{width:56px;height:56px;border-radius:14px;background:#fff;overflow:hidden}
.afr-player-cover img{width:100%;height:100%;object-fit:contain;background:#fff}
.afr-player-meta{gap:2px}
.afr-player-label{font-size:10px;letter-spacing:1.6px;color:#f0a089}
.afr-player-meta strong{font-size:16px;line-height:1.25}
.afr-player-status{font-size:12px;color:#aebad1}
.afr-player-buttons{display:flex;align-items:center;gap:10px}
.afr-player-buttons button{width:38px;height:38px;border-radius:12px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.06);color:#fff;font-size:20px;display:grid;place-items:center;padding:0;opacity:1}
.afr-player-buttons button:hover{background:rgba(255,255,255,.12)}
.afr-player-buttons #afr-player-toggle{width:48px;height:48px;border-radius:50%;background:#f15a46;border:none;font-size:20px;order:2}
.afr-player-buttons #afr-player-toggle:hover{background:#e04e3a}
.afr-player-buttons #afr-player-backup{order:1}
.afr-player-buttons #afr-player-close{order:3}

@media (max-width: 900px){
  #afr-app .afr-grid{grid-template-columns:repeat(auto-fill,minmax(136px,136px));gap:14px}
  #afr-app .afr-logo-tile{height:172px}
  #afr-app .afr-logo-link{min-height:108px}
}
@media (max-width: 520px){
  #afr-app .afr-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
  #afr-app .afr-logo-tile{height:150px;padding:8px;border-radius:14px}
  #afr-app .afr-logo-link{min-height:92px;padding:8px}
  #afr-app .afr-logo-actions{grid-template-columns:32px 32px;gap:8px;margin-top:6px}
  #afr-app .afr-logo-play,#afr-app .afr-logo-fav{width:32px;height:32px;min-width:32px;min-height:32px;border-radius:10px}
  #afr-app .afr-logo-fav{font-size:18px}
  .afr-player{bottom:8px;border-radius:15px;width:min(100% - 16px,860px)}
  .afr-player-inner{padding:10px 12px;gap:10px}
  .afr-player-cover{width:46px;height:46px;border-radius:12px}
  .afr-player-meta strong{font-size:13px}
  .afr-player-status{font-size:11px}
  .afr-player-buttons{gap:6px}
  .afr-player-buttons button{width:34px;height:34px;border-radius:10px;font-size:18px}
  .afr-player-buttons #afr-player-toggle{width:42px;height:42px;font-size:18px}
}

/* v1.2.9 – explicit cascading-filter feedback; never hide a fetch failure. */
#afr-app .afr-filter-form-grid .afr-location-message{
  grid-column:1/-1;margin:0;padding:9px 12px;background:#fff8ed;
  border:1px solid #eadcbe;border-radius:9px;color:#695433;
  font-size:12px;font-weight:600;line-height:1.5;
}
#afr-app .afr-filter-form-grid .afr-location-message[hidden]{display:none!important}

/* v1.2.10: really hide empty dependent filters, even under theme display:flex rules. */
#afr-app .afr-filter-form-grid > label[hidden]{display:none!important}
