@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Outfit:wght@400;500;600;700&display=swap');
:root{color-scheme:dark;--bg:#081319;--panel:#0d1b24ed;--line:#29404c;--muted:#93aaba;--cyan:#00dcea}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:#f4f8fb;font:14px 'DM Sans',sans-serif}button,input,select{font:inherit}button{cursor:pointer;color:inherit;border:0;background:none}button:disabled{opacity:.4;cursor:default}button:hover:not(:disabled){color:var(--cyan)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--cyan);outline-offset:3px}a,b{color:var(--cyan)}[hidden]{display:none!important}header{height:88px;display:flex;align-items:center;gap:36px;padding:0 30px;border-bottom:1px solid var(--line);position:relative;z-index:10;background:#0b171f}.brand{display:flex;align-items:center;gap:13px;color:#fff;text-decoration:none;font:600 34px Outfit,sans-serif;min-width:235px}.waves{font-size:24px;letter-spacing:2px;color:var(--cyan)}.brand small{display:block;font:9px 'DM Sans',sans-serif;letter-spacing:2px;color:var(--muted);margin-top:2px}#searchForm{display:flex;align-items:center;gap:12px;max-width:730px;flex:1;background:#152630;border:1px solid #2b414c;border-radius:30px;padding:7px 9px 7px 18px}#searchForm>span{font-size:28px;color:var(--muted)}input[type=search]{background:none;border:0;color:#fff;width:100%;min-width:0;outline:none}input::placeholder{color:#8fa6b5}#searchForm button{padding:9px 16px;border-radius:22px;background:#243c48;font-size:12px}nav{display:flex;gap:22px;margin-left:auto;align-items:center}nav button{white-space:nowrap;padding:17px 0;font-size:15px;border-bottom:2px solid transparent}nav .active{color:var(--cyan);border-color:var(--cyan)}main{height:calc(100dvh - 186px);min-height:420px;position:relative;overflow:hidden}#map{height:100%;width:100%;background:#07131b;z-index:0}.panel{background:var(--panel);border:1px solid var(--line);border-radius:15px;box-shadow:0 15px 50px #0004;backdrop-filter:blur(18px)}.browser{position:absolute;left:22px;top:22px;bottom:22px;width:315px;padding:25px 22px 15px;display:flex;flex-direction:column}.eyebrow{font-size:9px;letter-spacing:2.1px;color:var(--cyan);font-weight:700}h1{font:600 35px/1.08 Outfit,sans-serif;letter-spacing:-1px;margin:14px 0}p{color:var(--muted);line-height:1.6}.intro{margin:0 0 18px;font-size:13px}.filters{display:flex;gap:8px}.filters label{width:50%;font-size:10px;color:var(--muted)}select{width:100%;margin-top:6px;padding:10px 7px;background:#101f29;border:1px solid var(--line);border-radius:8px;color:#d9e6ed;font-size:12px}.list-heading{display:flex;align-items:center;justify-content:space-between;margin-top:21px}h2{font:500 17px Outfit,sans-serif;margin:0}#clear{font-size:11px;color:var(--muted)}#listStatus{font-size:11px;margin:7px 0 10px;min-height:17px}#stations{overflow:auto;min-height:0;flex:1;scrollbar-width:thin;scrollbar-color:#29404c transparent}.station{display:flex;gap:10px;align-items:center;padding:10px 3px;border-bottom:1px solid #25384480}.station.selected{background:#00dcea0c}.art{height:43px;width:43px;flex-shrink:0;object-fit:contain;background:#18303a;border-radius:9px;padding:3px}.placeholder{display:grid;place-items:center;color:var(--cyan);font-size:22px;background:linear-gradient(140deg,#173a45,#12232e)}.station-name{min-width:0;flex:1;text-align:left;padding:0}.station strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:500}.station small{font-size:10px;color:var(--muted);display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-top:5px}.mini-play{border:1px solid #557685;border-radius:50%;width:30px;height:30px;flex-shrink:0;font-size:12px}footer{padding-top:15px;font-size:10px;color:#7996a6}i{display:inline-block;width:6px;height:6px;background:var(--cyan);border-radius:50%;margin-right:7px;box-shadow:0 0 10px #00dcea77}.map-label{position:absolute;top:24px;left:365px;background:#0b1b24d9;border:1px solid var(--line);border-radius:20px;padding:10px 15px;color:#b1c6d2;font-size:11px;pointer-events:none}.map-tools{position:absolute;bottom:42px;right:22px;display:grid;gap:8px}.map-tools button{width:40px;height:40px;border:1px solid var(--line);background:#10232eea;border-radius:10px;font-size:24px}.detail{position:absolute;right:22px;top:22px;width:280px;padding:24px}.hero-art{height:110px;width:100%;background:radial-gradient(ellipse at top right,#075566,#10232e 70%);display:grid;place-items:center;border-radius:10px;margin-bottom:20px}.hero-art .art{width:76px;height:76px}.detail h2{font-size:25px;line-height:1.2;margin-bottom:10px;overflow-wrap:anywhere}.detail p{font-size:12px}.detail .close{position:absolute;right:10px;top:8px}.detail-actions{display:flex;gap:10px;align-items:center;margin:18px 0}.primary{background:var(--cyan);color:#052029!important;border-radius:24px;padding:12px 22px;font-weight:700}.secondary{border:1px solid var(--line);border-radius:8px;padding:10px;font-size:12px;margin-top:10px}.tag{display:inline-block;border:1px solid #254655;background:#132b36;border-radius:12px;color:#8dc3d3;font-size:10px;padding:4px 9px;margin:3px}.detail a{font-size:11px}.close{font-size:25px;color:var(--muted)}.player{height:98px;display:flex;align-items:center;justify-content:space-between;padding:14px 30px;background:#0d1a22;border-top:1px solid var(--line);gap:25px}.now{display:flex;align-items:center;gap:14px;width:33%;min-width:0}.now .art{height:57px;width:57px}.now>div:last-child{min-width:0}.now strong{display:block;font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.now small{display:block;font-size:11px;color:var(--muted);margin-top:7px}.transport{display:flex;justify-content:center;align-items:center;gap:22px;position:relative;padding-bottom:15px}.transport>button{font-size:24px}.transport .play-main{width:51px;height:51px;border:2px solid var(--cyan);border-radius:50%;color:var(--cyan);font-size:20px;background:#00dcea0a}#playStatus{position:absolute;bottom:-5px;white-space:nowrap;font-size:8px;letter-spacing:1.6px;color:var(--muted)}.volume{display:flex;align-items:center;justify-content:flex-end;gap:16px;width:33%}.volume button{font-size:24px}.volume input{width:125px;accent-color:var(--cyan)}.leaflet-control-attribution{font-size:9px!important;background:#0b1b24d9!important;color:#8099a7!important}.leaflet-control-attribution a{color:#91b7c7!important}.leaflet-control-zoom a{background:#10232e!important;color:#c6e4ee!important;border-color:#29404c!important}.leaflet-control-zoom{border:1px solid #29404c!important;margin-bottom:145px!important;margin-right:22px!important}.leaflet-tooltip{background:#122b37;color:#e4f5fb;border:1px solid #3e6978;box-shadow:none}.cluster-icon{background:#062732e8;border:1px solid #00dceab0;border-radius:50%;color:#a7faff;display:grid;place-items:center;font-size:11px;box-shadow:0 0 17px #00dcea25}.station-dot{background:#00dcea;border:2px solid #77f8ff;border-radius:50%;box-shadow:0 0 12px #00dcea}#toggleBrowse{display:none}#toast{position:absolute;bottom:24px;left:50%;transform:translateX(-50%);background:#16313f;border:1px solid #3d697a;border-radius:10px;padding:13px 18px;z-index:1000;max-width:90%;font-size:12px}dialog{max-width:540px;width:calc(100% - 32px);background:#10212b;border:1px solid #355565;border-radius:18px;color:#effaff;padding:32px;line-height:1.7}dialog::backdrop{background:#000a}dialog>.close{float:right}dialog h2{font-size:30px;margin-top:14px}dialog p{font-size:13px}dialog h3{font-size:15px}
@media(min-width:1600px){.browser{width:340px;padding:30px 25px}.map-label{left:390px}.detail{width:300px}h1{font-size:40px}}@media(max-width:1000px){header{gap:20px;padding:0 20px}.brand{min-width:185px;font-size:29px}nav{gap:15px}nav span{display:none}.detail{width:240px}.browser{width:285px;padding:20px 17px}.map-label{left:325px}.volume input{width:85px}}
@media(max-width:700px){header{height:122px;padding:12px 16px;align-items:flex-start;gap:12px;flex-wrap:wrap}.brand{font-size:26px;min-width:0}.brand small{font-size:7px}.waves{font-size:19px}nav{height:35px;gap:22px}nav button{padding:4px;font-size:20px}#searchForm{order:3;max-width:none;flex-basis:100%;height:38px;padding:3px 6px 3px 14px}#searchForm input{font-size:12px}#searchForm button{padding:7px 13px}main{height:calc(100dvh - 210px);min-height:330px}.browser{display:none;left:12px;right:12px;top:57px;bottom:58px;width:auto;z-index:600;padding:18px}.browser.mobile-open{display:flex}.browser h1,.browser .eyebrow,.browser .intro,footer{display:none}.list-heading{margin-top:13px}.filters{gap:12px}.map-label{left:12px;top:12px;padding:9px 12px;font-size:10px;max-width:calc(100% - 75px)}.map-tools{right:12px;bottom:15px;gap:6px}.map-tools button{height:35px;width:35px}#toggleBrowse{display:block;position:absolute;bottom:18px;left:12px;border:1px solid #3c6171;background:#102b38;padding:12px 18px;border-radius:24px;z-index:650;font-size:12px}.detail{right:12px;left:12px;top:auto;bottom:66px;width:auto;padding:20px;z-index:620}.hero-art{height:55px;width:55px;float:left;margin:0 14px 8px 0}.hero-art .art{height:50px;width:50px}.detail h2{font-size:20px;padding-right:15px}.detail p{margin:7px 0}.detail-actions{margin:12px 0 4px}.detail .tag{font-size:9px}.player{height:88px;padding:12px 15px;gap:9px}.now{flex:1;width:auto}.now .art{width:42px;height:42px}.now strong{font-size:12px}.now small{font-size:10px}.transport{gap:12px;padding-bottom:0}.transport .play-main{width:44px;height:44px;font-size:17px}.transport>button{font-size:20px}#random,#playStatus,.volume{display:none}.leaflet-control-zoom{margin-bottom:112px!important;margin-right:12px!important}#toast{bottom:70px;width:max-content}}
/* Preserve a dark basemap without altering station markers. */
.leaflet-tile-pane{filter:invert(1) hue-rotate(180deg) saturate(.45) brightness(.75)}
@media(min-width:701px) and (max-height:820px){.browser{padding:20px 20px 12px}.browser h1{font-size:29px;margin:10px 0}.intro{font-size:11px;margin-bottom:12px}.list-heading{margin-top:12px}.station{padding:8px 2px}.station .art{height:34px;width:34px}footer{padding-top:10px}.eyebrow{font-size:8px}.filters select{padding:8px 5px}}
@media(max-width:700px){header{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:44px 38px;gap:10px 8px;padding:10px 14px;height:122px}.brand{min-width:0;font-size:25px;gap:8px}.brand .waves{font-size:16px;letter-spacing:0}.brand small{font-size:6px;letter-spacing:1.2px}nav{margin:0;gap:12px;align-self:center}#searchForm{grid-column:1/-1;order:initial;width:100%;height:38px}nav button{font-size:19px}}
@media(max-width:700px){header .brand{grid-column:1;grid-row:1}header nav{grid-column:2;grid-row:1}#searchForm{grid-row:2}}
/* Station details and player controls */
button svg{width:20px;height:20px;display:block;flex-shrink:0}.detail{max-height:calc(100% - 44px);overflow:auto;scrollbar-width:thin}.detail-actions{display:grid;gap:9px;margin:18px 0}.detail-actions button{display:flex;align-items:center;justify-content:center;gap:9px;width:100%;min-height:43px;margin:0;font-size:12px}.detail-actions .secondary{border-radius:23px;background:#142a35;border-color:#35515e;color:#c7dce5}.detail-actions .secondary[aria-pressed=true]{color:var(--cyan);border-color:#00dcea60}.detail-actions .secondary[aria-pressed=true] svg{fill:#00dcea25}.primary.is-playing{background:#123f46;color:#66f5ef!important;box-shadow:inset 0 0 0 1px #00dcea70}.station-facts{margin:17px 0 18px;border-top:1px solid var(--line);padding-top:4px}.station-facts>div{display:grid;grid-template-columns:78px minmax(0,1fr);gap:10px;padding:9px 0;border-bottom:1px solid #29404c66;font-size:11px;line-height:1.5}.station-facts dt{color:#7895a5}.station-facts dd{margin:0;color:#c8dee8;overflow-wrap:anywhere;text-align:right}.on-air-bars{display:flex;align-items:center;gap:3px;height:18px}.on-air-bars em{width:3px;height:9px;background:currentColor;border-radius:3px;animation:airfm-bars .9s ease-in-out infinite alternate}.on-air-bars em:nth-child(2){height:17px;animation-delay:-.3s}.on-air-bars em:nth-child(3){height:12px;animation-delay:-.6s}@keyframes airfm-bars{to{transform:scaleY(.35)}}
.transport{gap:13px;padding:7px 17px 19px;border:1px solid #294653;background:linear-gradient(180deg,#17313d,#10222c);border-radius:40px;box-shadow:0 5px 20px #0003}.transport>button{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#213c49;color:#c0d8e4;transition:background .15s,transform .15s}.transport>button:hover:not(:disabled){background:#2a4c59;transform:translateY(-1px)}.transport .play-main{height:51px;width:51px;border:0;background:var(--cyan);color:#05242c;box-shadow:0 0 22px #00dcea25}.transport .play-main:hover:not(:disabled){background:#68f5ff;color:#05242c}.transport .play-main svg{width:24px;height:24px}#playStatus{bottom:5px;font-size:7px;letter-spacing:1.3px}.player.is-playing .now .art{box-shadow:0 0 0 1px #00dcea70,0 0 18px #00dcea15}.volume>button{display:grid;place-items:center;width:36px;height:36px;border:1px solid #2c4653;background:#142b36;border-radius:11px}.volume .is-saved{color:var(--cyan)}.volume .is-saved svg{fill:#00dcea33}.volume input{height:5px}.now small{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media(max-width:700px){.transport{padding:4px;gap:7px;border-radius:30px}.transport>button{width:31px;height:31px}.transport .play-main{width:42px;height:42px}.detail{max-height:calc(100% - 80px)}.detail-actions{display:flex}.detail-actions button{font-size:11px;min-height:39px;padding:8px 11px}.detail-actions .secondary{flex:1.3}.detail-actions .primary{flex:1}.station-facts{clear:both;margin:12px 0}.station-facts>div{padding:6px 0;grid-template-columns:78px 1fr}.detail .hero-art{margin-bottom:12px}}
@media(prefers-reduced-motion:reduce){.on-air-bars em{animation:none}}
/* Navigation, map and creator signature */
header nav{gap:6px;padding:5px;border:1px solid #243d49;background:#10232d;border-radius:16px}header nav button{display:flex;align-items:center;gap:8px;padding:10px 13px;border:0;border-radius:11px;font-size:12px;color:#9eb5c3;transition:background .15s,color .15s}header nav button .nav-icon{display:inline-block;font-size:18px;line-height:1}header nav button .nav-label{display:inline}header nav button:hover{background:#1c3541}header nav .active{background:#00dcea16;color:#30e5ed;box-shadow:inset 0 0 0 1px #00dcea35}header nav #about{border-left:1px solid #2b4654;margin-left:4px}.site-footer{height:28px;display:flex;justify-content:space-between;align-items:center;gap:14px;padding:0 30px;border-top:1px solid #20343f;background:#09161e;color:#77909f;font-size:9px;letter-spacing:.2px}.site-footer a{color:#8da9b9;text-decoration:none}.signature{color:#ff434f;font-weight:700;font-size:11px}.love{color:#ed5663}.sidebar-bottom{display:flex;flex-direction:column;gap:9px;padding-top:12px;font-size:10px;color:#8ca8b8}.sidebar-bottom>a{font-size:9px;text-decoration:none;color:#829eae}.online-count{display:flex;align-items:center;color:#7b93a1;font-size:10px}.online-count i{background:#667c88;box-shadow:none}.online-count.connected{color:#b8d7dd}.online-count.connected i{background:#17ddc2;box-shadow:0 0 9px #17ddc266}main{height:calc(100dvh - 214px)}#map{background:radial-gradient(ellipse at 60% 30%,#0d2330,#07121c 75%)}.country-label{color:#718f9e;font:10px 'DM Sans',sans-serif;text-align:center;white-space:nowrap;text-shadow:0 1px 4px #07121c,0 0 5px #07121c;pointer-events:none}.map-tools .active{color:var(--cyan);border-color:#00dcea77}
@media(max-width:1100px) and (min-width:701px){header{gap:18px}.brand{min-width:175px}header nav button{padding:10px}header nav button .nav-label{display:none}}
@media(max-width:700px){header nav{gap:2px;padding:3px;border-radius:12px;height:auto}header nav button{padding:7px 8px}header nav button .nav-label{display:none}header nav #about{margin-left:0;border:0}.site-footer{display:flex;height:31px;padding:0 12px;font-size:7px;gap:6px}.site-footer a{display:none}.signature{font-size:9px}main{height:calc(100dvh - 241px)}.sidebar-bottom{flex-direction:row;justify-content:space-between;align-items:center;padding-top:9px}.country-label{font-size:9px}}
/* Crawlable radio directories */
.directory-page header{height:88px;justify-content:space-between}.directory-page .brand{min-width:0}.directory-back{border:1px solid #315362;border-radius:24px;padding:12px 18px;color:#b8e7ed;text-decoration:none;font-size:12px}.directory-content{max-width:1080px;margin:0 auto;padding:55px 28px}.directory-content h1{font-size:clamp(38px,6vw,67px);line-height:1.05;margin:20px 0}.directory-lead{max-width:740px;font-size:17px;line-height:1.8;margin-bottom:28px}.directory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:36px 0}.directory-card{display:block;padding:25px;border:1px solid #294752;border-radius:15px;background:linear-gradient(135deg,#132f3c,#0d202b);text-decoration:none;transition:border-color .15s}.directory-card:hover{border-color:var(--cyan)}.directory-card>span{font-size:9px;letter-spacing:1.5px;color:#72b8c6}.directory-card h2{font-size:24px;margin:17px 0;color:#e4f4f9}.directory-card p{font-size:12px;margin-bottom:0}.directory-about{margin-top:40px;padding-top:25px;border-top:1px solid #29414e;max-width:800px}.directory-about h2{font-size:22px;margin:30px 0 12px}.directory-about p{line-height:1.9}.directory-footer{display:block;height:auto;padding:28px;text-align:center;border-top:1px solid #29414e;font-size:11px;color:#8ea6b4}.directory-footer p{font-size:10px}.breadcrumbs{margin:0 0 35px;font-size:12px;display:flex;gap:13px;align-items:center}.breadcrumbs a{text-decoration:none}.directory-cta{display:inline-block;padding:13px 21px;border-radius:25px;background:var(--cyan);color:#05242c;font-size:13px;text-decoration:none;font-weight:700}.directory-section-title{font-size:26px;margin:38px 0 20px}.directory-stations{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.directory-stations a{display:flex;flex-direction:column;gap:8px;padding:19px 20px;background:#102632;border:1px solid #28444f;border-radius:12px;text-decoration:none;height:100%}.directory-stations strong{font-size:15px;color:#e2f5fa}.directory-stations span{font-size:11px;color:#88a6b6}.directory-stations em{font-size:11px;font-style:normal;color:var(--cyan);margin-top:5px}.directory-note{font-size:11px}.directory-page nav{background:none;border:0;padding:0}
@media(max-width:700px){.directory-page header{display:flex;height:80px;flex-wrap:nowrap;padding:16px}.directory-page .brand{font-size:27px}.directory-back{font-size:10px;padding:10px 12px}.directory-content{padding:30px 20px}.directory-lead{font-size:15px}.directory-grid,.directory-stations{grid-template-columns:1fr}.directory-grid{gap:12px}.directory-card{padding:22px}.directory-card h2{margin:12px 0}.directory-footer{display:block}.breadcrumbs{font-size:10px;gap:8px;flex-wrap:wrap}}
/* Local discoveries below the map; one non-overlapping map control stack. */
:root{--trending-space:236px;--browse-width:315px}#map{height:calc(100% - var(--trending-space))}.map-tools{bottom:calc(var(--trending-space) + 22px);right:22px;gap:8px;z-index:450}.zoom-buttons{display:flex;flex-direction:column;border:1px solid #355462;border-radius:11px;overflow:hidden;background:#10232e}.zoom-buttons button{border:0;border-radius:0;width:38px;height:35px;font-size:24px;line-height:1}.zoom-buttons button+button{border-top:1px solid #355462}.zoom-buttons button:disabled{opacity:.3}.map-tools>button{width:40px;height:36px;font-size:22px}.overview-locked,.overview-locked .leaflet-interactive{cursor:default!important}.trending{position:absolute;left:calc(var(--browse-width) + 44px);right:22px;bottom:18px;height:206px;z-index:4}.trending-heading{display:flex;gap:18px;align-items:center;justify-content:space-between;margin-bottom:13px}.trending-heading h2{font-size:21px;font-weight:500;letter-spacing:-.3px}.trending-heading h2:before{content:'↗';color:#00dcea;display:inline-block;margin-right:9px}.trending-heading p{margin:5px 0 0;font-size:10px;line-height:1.5;color:#7f9eae}.trending-heading>div{min-width:0}.trending-heading select{max-width:175px;width:175px;flex-shrink:0;margin:0;background:#102630;border-color:#2d4b59;font-size:11px;padding:9px 12px;border-radius:18px}.trending-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:67px;gap:10px}.trending-card{display:flex;gap:10px;align-items:center;min-width:0;border:1px solid #263f4c;background:linear-gradient(130deg,#132936,#0d1e29);border-radius:12px;padding:10px 12px;transition:border-color .15s}.trending-card:hover{border-color:#3e7584}.trending-card.is-active{border-color:#00dcea88;background:#10313b}.trending-card .art{height:39px;width:39px}.trending-name{min-width:0;flex:1;text-align:left;padding:0}.trending-name strong{display:block;font-size:12px;font-weight:500;color:#e8f8ff;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.trending-name small{display:block;color:#829fae;font-size:9px;margin-top:6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.trending-card .mini-play{height:28px;width:28px;display:grid;place-items:center}.trending-card .mini-play svg{height:14px;width:14px}.trending-message{grid-column:1/-1;display:flex;align-items:center;justify-content:center;gap:20px;min-height:110px;color:#819faf;font-size:12px;border:1px dashed #294653;border-radius:12px;padding:20px;line-height:1.6}.trending-message .secondary{margin:0;flex-shrink:0}.detail{max-height:calc(100% - var(--trending-space) - 44px);z-index:460}.language-control{display:flex;align-items:center;gap:5px;margin-left:auto;padding:5px 9px;border:1px solid #2a4653;border-radius:13px;background:#10232d;color:#8ab7c6}.language-control>span{font-size:17px}.language-control select{margin:0;border:0;padding:7px 2px;font-size:11px;width:100px;background:transparent;color:#b2cbd6}.language-control select:focus{outline-offset:1px}header nav{margin-left:0;flex-shrink:0}header{gap:23px}.language-control{flex-shrink:0}.trending-cards button:focus-visible{outline-offset:2px}
@media(min-width:1600px){:root{--browse-width:340px}.trending{height:211px}.trending-cards{grid-auto-rows:70px}.trending-name strong{font-size:13px}}
@media(max-width:1250px) and (min-width:701px){header{gap:15px}.brand{min-width:170px;font-size:29px}.language-control select{width:78px}.trending-cards{grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:67px}.trending-card:nth-child(n+7){display:none}.trending-heading select{max-width:145px}.trending-card{padding:9px}.trending-card .art{height:32px;width:32px}.trending-heading h2{font-size:18px}.trending-heading p{font-size:9px}.trending-card .mini-play{width:25px;height:25px}.trending-name strong{font-size:11px}}
@media(max-width:1000px) and (min-width:701px){:root{--browse-width:285px;--trending-space:232px}.trending-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.trending-card:nth-child(n+5){display:none}.trending-heading{gap:8px;align-items:flex-start}.trending-heading select{width:118px;font-size:10px}.trending-heading p{max-width:210px}.language-control{padding:5px 6px}.language-control>span{display:none}.language-control select{width:65px}header nav button{padding:9px 8px}}
@media(max-height:820px) and (min-width:701px){:root{--trending-space:210px}.trending{height:186px}.trending-cards{grid-auto-rows:60px;gap:8px}.trending-heading{margin-bottom:10px}.trending-heading h2{font-size:18px}.trending-card{padding:8px}.detail .hero-art{height:58px;margin-bottom:12px}.detail .hero-art .art{height:47px;width:47px}.detail{padding:18px}.detail h2{font-size:20px}.map-tools{gap:5px;bottom:calc(var(--trending-space) + 18px)}.map-tools>button{height:32px;width:34px}.zoom-buttons button{width:32px;height:29px}}
@media(max-width:700px){:root{--trending-space:155px}.trending{left:12px;right:12px;bottom:11px;height:134px}.trending-heading{margin-bottom:9px;gap:10px}.trending-heading h2{font-size:16px;line-height:1.2;max-width:225px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.trending-heading h2:before{margin-right:5px}.trending-heading p{display:none}.trending-heading select{width:115px;max-width:115px;font-size:10px;padding:7px 8px}.trending-cards{display:flex;overflow-x:auto;gap:9px;scroll-snap-type:x mandatory;padding:2px 1px 9px;scrollbar-width:thin;scrollbar-color:#294b5b transparent}.trending-card{flex:0 0 235px;min-height:77px;scroll-snap-align:start;padding:12px}.trending-card .art{width:40px;height:40px}.trending-card:nth-child(n){display:flex}.trending-name strong{font-size:12px}.trending-name small{font-size:10px}.trending-message{min-height:80px;flex:1;gap:10px;padding:12px;font-size:11px}.map-tools{right:12px;bottom:calc(var(--trending-space) + 16px);gap:6px}.map-tools>button{height:33px;width:34px}.zoom-buttons button{height:28px;width:32px;font-size:22px}#toggleBrowse{bottom:calc(var(--trending-space) + 16px);padding:10px 14px}.browser{bottom:calc(var(--trending-space) + 59px);top:57px;padding:15px;z-index:600}.browser.mobile-open{bottom:58px}.detail{bottom:calc(var(--trending-space) + 15px);max-height:calc(100% - var(--trending-space) - 32px);top:auto;z-index:620}.language-control{grid-column:2;grid-row:1;margin:0;justify-self:end;border:0;background:none;padding:0}.language-control>span{display:none}.language-control select{width:48px;font-size:10px;padding:7px 0}header{grid-template-columns:minmax(0,1fr) 52px 107px;gap:10px 5px;padding:10px 12px}header nav{grid-column:3;grid-row:1;gap:0}header nav button{padding:7px 7px}header .brand{font-size:23px;gap:6px}.brand .waves{font-size:12px!important}.brand small{font-size:5px!important;letter-spacing:1px!important}#searchForm{grid-column:1/-1}.sidebar-bottom{gap:5px}.sources{font-size:11px}#toast{bottom:calc(var(--trending-space) + 65px)}}
.language-control #languageCode{display:block;font-size:10px;font-weight:700;letter-spacing:.5px;color:#52dce5}.language-control:focus-within{outline:2px solid var(--cyan);outline-offset:3px}
@media(max-width:700px){.language-control{position:relative;width:48px;height:34px;display:flex;align-items:center;justify-content:center;gap:3px;background:#10232d;border:1px solid #2b4552;border-radius:10px}.language-control #languageCode{display:block;font-size:10px}.language-control:after{content:'⌄';font-size:11px;color:#7fa7b8}.language-control select{position:absolute;inset:0;width:100%;height:100%;opacity:0;padding:0;cursor:pointer}}
@media(max-width:700px){.detail{bottom:calc(var(--trending-space) + 65px);max-height:calc(100% - var(--trending-space) - 85px)}}
/* Dark language list, independent of operating-system select styling. */
.language-control{position:relative;padding:0;background:#10232d;border:1px solid #2a4653;border-radius:13px;display:block;z-index:20}.language-control #languageButton{display:flex;align-items:center;justify-content:center;gap:10px;padding:12px 13px;min-height:40px;border-radius:12px;color:#b9d5df;font-size:11px;white-space:nowrap}.language-control #languageMenu{position:absolute;top:calc(100% + 10px);right:0;width:225px;max-height:min(65vh,365px);overflow-y:auto;padding:7px;background:#10232d;color:#d9edf4;border:1px solid #365665;border-radius:13px;box-shadow:0 15px 45px #0009;scrollbar-width:thin;scrollbar-color:#395b6b #10232d;z-index:1500}.language-option{display:flex;width:100%;align-items:center;justify-content:space-between;gap:15px;padding:11px 13px;border-radius:8px;text-align:left;color:#c9e0e9;background:#10232d;font-size:12px}.language-option:hover,.language-option:focus-visible{background:#1c3d49;color:#6ceff5}.language-option[aria-selected=true]{background:#00dcea15;color:var(--cyan)}select,select option{color-scheme:dark}select option{background:#10232d;color:#d4e8f0}.language-control:after{display:none!important}.trending-heading>div{width:100%}.trending-heading h2{max-width:100%}
@media(max-width:1100px) and (min-width:701px){.language-control #languageButton{gap:6px;padding:11px 9px;font-size:10px}}
@media(max-width:700px){.language-control{width:48px;height:34px;position:relative;padding:0;display:block;justify-self:end}.language-control #languageButton{width:100%;min-height:32px;height:32px;padding:0;gap:4px}.language-control #languageLabel{display:none}.language-control #languageMenu{right:-90px;width:215px;max-height:min(65vh,355px)}.language-control #languageMenu .language-option{font-size:12px;padding:12px}.trending-heading h2{max-width:100%}.trending-heading{min-height:27px}}
/* Worldwide directory: useful country facts and a fast alphabetical search. */
.directory-genres{margin:30px 0 38px}.directory-genres h2{font-size:21px;margin-bottom:15px}.genre-links{display:flex;gap:12px;flex-wrap:wrap}.genre-links a{padding:11px 18px;background:#15333f;border:1px solid #315865;border-radius:22px;color:#a7e9ee;text-decoration:none;font-size:13px}.directory-countries-heading{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-top:30px}.directory-countries-heading h2{font-size:25px}.directory-countries-heading label{display:block;max-width:340px;flex:1}.directory-countries-heading label>span{display:block;font-size:10px;color:#91adbb;margin-bottom:7px}.directory-countries-heading input{width:100%;border:1px solid #365361;border-radius:11px;background:#102632;padding:12px 14px;color:#e0f7ff;font-size:12px}#directoryCount{font-size:11px;margin-top:13px}#countryCards{margin-top:20px}.directory-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:30px 0;padding:0}.directory-facts>div{background:#102632;border:1px solid #284653;border-radius:12px;padding:19px}.directory-facts span{display:block;color:#7f9fae;font-size:11px;margin-bottom:10px}.directory-facts strong{color:#e6f9ff;font:500 28px Outfit,sans-serif}.directory-facts p{margin:0;font-size:13px;color:#b1d1de;line-height:1.7}
@media(max-width:700px){.directory-countries-heading{display:block}.directory-countries-heading h2{font-size:23px;margin-bottom:20px}.directory-countries-heading label{max-width:none}.directory-facts{gap:10px}.directory-facts>div{padding:14px}.directory-facts span{font-size:10px}.directory-facts p{font-size:12px}.directory-facts strong{font-size:24px}}
/* One clean outline per navigation item; no nested edge around About. */
header nav{padding:0;background:transparent;border:0;gap:7px;border-radius:0}header nav button{border:1px solid #2b4553;background:#10232d;border-radius:12px;padding:11px 13px;box-shadow:none}header nav #about{border:1px solid #2b4553;margin:0;box-shadow:none}header nav button.active{border-color:#00dcea55;background:#10313b;box-shadow:none}header nav button:hover{background:#193746}.filters .filter-field{flex:1;min-width:0;color:#91aab8;font-size:10px}.filters .filter-field>span{display:block;margin-bottom:6px}.filter-picker{position:relative}.filter-button{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;height:41px;background:linear-gradient(150deg,#152c38,#10212d);border:1px solid #2d4958;border-radius:10px;padding:0 12px;color:#c8dfe9;text-align:left;font-size:12px}.filter-button>span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.filter-chevron{color:#6d9caa;font-size:15px;flex-shrink:0}.filter-button:hover,.filter-button[aria-expanded=true]{border-color:#3a9aa7;color:#d8faff}.filter-button.is-filtered{background:#12303b;border-color:#34717d}.filter-menu{position:absolute;top:calc(100% + 8px);left:0;width:calc(200% + 8px);display:flex;flex-direction:column;max-height:320px;min-height:95px;padding:8px;background:#10232d;border:1px solid #385966;border-radius:12px;box-shadow:0 12px 35px #0009;z-index:1200}.filter-field:last-child .filter-menu{left:auto;right:0}.filter-menu>input{flex-shrink:0;min-height:36px;font-size:12px;padding:9px 11px;border:1px solid #2e4c59;background:#0b1c26;border-radius:8px;color:#d7edf5;margin-bottom:7px}.filter-options{overflow-y:auto;min-height:0;scrollbar-width:thin;scrollbar-color:#3b6272 #10232d}.filter-option{display:flex;align-items:center;justify-content:space-between;width:100%;gap:12px;text-align:left;padding:10px 12px;color:#bed8e3;font-size:12px;border-radius:8px;line-height:1.4}.filter-option:hover,.filter-option:focus-visible{background:#1b3b49;color:#a6f4fa}.filter-option[aria-selected=true]{background:#00dcea14;color:var(--cyan)}.filter-empty{padding:10px;font-size:12px}.library-tabs{display:grid;grid-template-columns:1fr 1.25fr;gap:4px;padding:4px;background:#0c1d27;border:1px solid #253f4d;border-radius:12px;margin-top:15px}.library-tabs button{display:flex;align-items:center;justify-content:center;gap:6px;padding:8px 5px;border-radius:8px;color:#829fad;font-size:10px;min-width:0;line-height:1.35}.library-tabs button.active{background:#1b3542;color:#d8f2f8;box-shadow:0 1px 5px #0002}.library-tabs #recentIcon{display:flex}.library-tabs svg{height:13px;width:13px}.recent-count{display:inline-grid;place-items:center;min-width:16px;height:16px;font-size:9px;background:#00dcea15;color:#67dbe4;border-radius:6px;padding:0 3px}.list-heading{gap:9px;align-items:flex-start}.list-heading h2{line-height:1.2}.list-tools{display:flex;flex-direction:column;align-items:flex-end;gap:7px;flex-shrink:0}#clearRecent{font-size:9px;color:#8eabb9;padding:0}#clearRecent:hover{color:#ff7c89}.recent-time{display:block;margin-top:5px;color:#5d899c;font-size:9px}.detail-actions .share-action{min-height:34px;background:transparent;color:#8dbacb;font-size:11px}.detail-actions .share-action svg{width:16px;height:16px}.share-preview{display:flex;align-items:center;gap:14px;background:#132c38;border:1px solid #2b4b59;border-radius:12px;padding:16px;margin:22px 0}.share-preview .art{height:51px;width:51px}.share-preview strong{font-size:16px;overflow-wrap:anywhere}.share-preview small{display:block;color:#8ba9ba;font-size:12px;margin-top:8px}.share-link-label{display:block;font-size:11px;color:#92b3c1}.share-link-label>span{display:block;margin-bottom:8px}#shareUrl{width:100%;border:1px solid #365665;border-radius:9px;background:#0a1c27;color:#bdebf2;padding:12px;font-size:12px}.share-actions{display:flex;gap:10px;margin-top:16px}.share-actions button{flex:1;margin:0;min-height:42px;font-size:12px}#shareDialog{max-width:490px;max-height:calc(100dvh - 40px);overflow:auto}#shareDialog h2{font-size:27px}#shareStatus{min-height:20px;font-size:12px;color:var(--cyan);margin:13px 0 0}.share-preview-notice{font-size:10px;margin:12px 0 0;color:#7898a8}.share-actions .secondary{border-radius:24px;background:#18303b}
@media(max-width:1100px) and (min-width:701px){header nav button,header nav #about{padding:10px 9px}}
@media(max-width:700px){header nav{gap:3px}header nav button,header nav #about{padding:7px 6px;border-radius:10px}.filter-button{height:39px;font-size:12px;padding:0 11px}.filter-menu>input{font-size:16px}.filter-option{padding:11px 12px}.library-tabs{margin-top:12px}.library-tabs button{font-size:11px;padding:9px 5px}.library-tabs{grid-template-columns:1fr 1.2fr}.detail-actions{display:grid;grid-template-columns:1fr 1.25fr}.detail-actions .share-action{grid-column:1/-1;min-height:31px;padding:5px 10px}.share-actions{flex-direction:column}#shareDialog{padding:24px}.share-preview{padding:13px}.share-preview strong{font-size:15px}.share-link-label>span{font-size:12px}.share-actions button{min-height:43px}}
/* Keep map controls clear of the expanded station card. */
:root{--detail-width:280px}main.has-station .map-tools{right:calc(var(--detail-width) + 36px)}.detail>.close{position:sticky;top:0;right:auto;display:grid;place-items:center;width:30px;height:30px;margin:-16px -14px -14px auto;z-index:5;background:#16313d;border:1px solid #315361;border-radius:50%;font-size:22px;line-height:1}
@media(min-width:1600px){:root{--detail-width:300px}}
@media(max-width:1000px) and (min-width:701px){:root{--detail-width:240px}}
@media(max-width:700px){main.has-station .map-tools{visibility:hidden}.detail>.close{margin:-12px -8px -18px auto}}

/* Station names appear beneath individual dots at city-level zoom. */
.leaflet-tooltip.station-name-label{background:rgba(8,25,34,.9);border:1px solid #315665;border-radius:5px;color:#e6f8ff;padding:3px 7px;font-size:11px;font-weight:600;line-height:1.35;max-width:160px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;box-shadow:0 2px 8px #0005;pointer-events:none}.leaflet-tooltip-bottom.station-name-label:before{display:none}

/* The currently playing station remains distinct even inside a clustered city. */
.playing-station-marker{background:none;border:0;cursor:pointer}
.playing-station-core{position:absolute;left:11px;top:11px;width:10px;height:10px;border:2px solid #d4ffff;border-radius:50%;background:#00dcea;box-shadow:0 0 12px #00dcea}
.playing-station-halo{position:absolute;inset:1px;border:2px solid #00dcea;border-radius:50%;box-shadow:0 0 16px #00dcea70;background:#00dcea12}
.playing-station-marker.is-on-air .playing-station-halo{animation:airfm-map-pulse 1.8s ease-out infinite}
@keyframes airfm-map-pulse{0%{transform:scale(.75);opacity:1}100%{transform:scale(1.5);opacity:.15}}
.playing-map-connection{position:absolute;inset:0;z-index:1;pointer-events:none;overflow:hidden}
.playing-map-connection svg{width:100%;height:100%;display:block;overflow:hidden}
.playing-map-line{fill:none;stroke:#00dcea;stroke-width:1.5;stroke-dasharray:3 5;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 3px #00dcea80)}
.playing-map-end{fill:#00dcea}
@media(prefers-reduced-motion:reduce){.playing-station-marker.is-on-air .playing-station-halo{animation:none}}

.playing-station-core{box-shadow:0 0 6px #fff,0 0 15px #00dcea,0 0 26px #00dcea80}.playing-station-halo{border-width:1.5px;box-shadow:0 0 7px #00dcea,0 0 18px #00dcea60}

/* Keep the radio application comfortable on ultrawide displays.
   The page remains fluid below 1600px; directory pages are unaffected. */
:root{--airfm-app-max-width:1600px}
html:has(body>main #map){background:#050d13}
body:has(>main #map){width:100%;max-width:var(--airfm-app-max-width);margin-inline:auto;background:#081319;box-shadow:0 0 80px #0006}
@media(min-width:1601px){
  body:has(>main #map){margin-block:24px;border:1px solid #203541;border-radius:16px;overflow:clip}
  body:has(>main #map)>main{max-height:min(900px,calc(100dvh - 264px))}
  body:has(>main #map)>header{border-radius:15px 15px 0 0}
}
@media(min-width:1601px) and (max-height:900px){
  body:has(>main #map){margin-block:0;border-block:0;border-radius:0}
  body:has(>main #map)>header{border-radius:0}
  body:has(>main #map)>main{max-height:none}
}
