/* Shared directory and archive design, including responsive list and grid cards. */
.tunesera-internet-radio-directory-directory,
.tunesera-internet-radio-directory-directory.tunesera-internet-radio-directory-archive {
 --tunesera-bg:#f2f7fb; --tunesera-surface:#fff; --tunesera-text:#10132f; --tunesera-muted:#64708d; --tunesera-line:#e0e6ef;
 --tunesera-brand:#633cff; --tunesera-brand-soft:#f0ecff; --tunesera-radius:9px; --tunesera-shadow:none;
 max-width:1200px; margin:auto; padding:24px 12px 42px; color:var(--tunesera-text);
 font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
 font-size:14px; line-height:1.5; letter-spacing:0;
}
.tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-layout,.tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-archive__layout {grid-template-columns:252px minmax(0,1fr);gap:16px;}
.tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-archive__layout.is-full {grid-template-columns:minmax(0,1fr);}
.tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-layout > main,.tunesera-internet-radio-directory-archive__layout > div {min-width:0;}
.tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-page-head,.tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-archive__head {margin-bottom:16px;}
.tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-page-head h2,.tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-archive__title-wrap h1 {font-size:28px;line-height:1.2;font-weight:700;letter-spacing:-.6px;margin:0;}
.tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-eyebrow,.tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-archive__eyebrow {display:none;}
.tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-subtitle,.tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-archive__title-wrap p {font-size:14px;line-height:1.5;color:var(--tunesera-muted);margin:4px 0 0;}
.tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-archive__flag {height:54px;width:64px;font-size:36px;border-radius:10px;}
.tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-archive__count {display:none;}
.tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-archive__breadcrumb {font-size:13px;margin-bottom:20px;}
.tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-sidebar,.tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-archive__sidebar {padding:16px 12px;border-radius:9px;box-shadow:none;}
.tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-sidebar-head h3,.tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-archive__sidebar-title h2 {font-size:16px;font-weight:650;color:var(--tunesera-text);}
.tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-country,.tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-archive__location-item {font-size:14px;padding:10px 12px;border-radius:8px;line-height:1.4;}
.tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-filter-panel {padding:14px 16px;margin-bottom:16px;box-shadow:none;border-radius:9px;}
.tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-filter-top {gap:16px;grid-template-columns:minmax(200px,1.6fr) minmax(130px,1fr) minmax(130px,1fr) auto;}
.tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-search-wrap input,.tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-select,.tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-sort {height:42px;border-radius:8px;border:1px solid var(--tunesera-line);font-size:14px;color:var(--tunesera-text);background-color:#fff;}
.tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-search-wrap input {padding:0 14px 0 42px;font-size:13px;}
.tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-icon-search {left:14px;right:auto;display:flex;color:#7b86a0;}
.tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-reset-btn {height:42px;padding:0 4px;gap:5px;}
.tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-results-panel {border-radius:9px 9px 0 0;box-shadow:none;}
.tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-results-header {padding:16px 18px;gap:16px;align-items:center;}
.tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-results strong {font-size:23px;line-height:1.2;font-weight:700;letter-spacing:-.5px;}
.tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-results span {font-size:13px;color:var(--tunesera-muted);}
.tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-results-divider {display:none;}
.tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-view-switch {gap:16px;}
.tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-view-switch .tunesera-internet-radio-directory-sort {width:158px;font-size:13px;}
.tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-view-segment {height:42px;padding:3px;border:1px solid var(--tunesera-line);border-radius:8px;gap:0;}
.tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-view-segment button {height:34px;min-width:72px;gap:7px;font-size:13px;font-weight:500;}
.tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-pagination-controls {margin-top:0;justify-content:space-between;padding:14px 18px;background:#fff;border:1px solid var(--tunesera-line);border-top:0;border-radius:0 0 9px 9px;gap:12px;}
.tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-per-page select,.tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-page-btn {height:35px;min-width:32px;border-radius:6px;font-size:12px;padding:0 11px;}
.tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-per-page select {padding-right:28px;}
.tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-pagination {gap:5px;}
.tunesera-internet-radio-directory-directory .tunesera-station-card {display:grid;grid-template-columns:60px minmax(150px,1fr) minmax(150px,250px) 110px;column-gap:20px;row-gap:2px;padding:10px 20px;color:var(--tunesera-text);min-height:79px;}
.tunesera-internet-radio-directory-directory .tunesera-card__body {display:contents;}
.tunesera-internet-radio-directory-directory .tunesera-card__logo {grid-column:1;grid-row:1 / 4;width:60px;height:58px;border-radius:10px;background:#fafbfd;}
.tunesera-internet-radio-directory-directory .tunesera-card__logo img {object-fit:contain;}
.tunesera-internet-radio-directory-directory .tunesera-card__title {grid-column:2;grid-row:1;align-self:end;}
.tunesera-internet-radio-directory-directory .tunesera-card__title h2 {font-size:16px;font-weight:650;line-height:1.35;letter-spacing:-.2px;}
.tunesera-internet-radio-directory-directory .tunesera-card__title > span {display:none;}
.tunesera-internet-radio-directory-directory .tunesera-card__body p {grid-column:2;grid-row:2;margin:0;font-size:13px;color:var(--tunesera-muted);line-height:1.5;}
.tunesera-internet-radio-directory-directory .tunesera-card__meta {grid-column:3;grid-row:1 / 4;flex-direction:row;align-items:center;gap:20px;color:var(--tunesera-muted);font-size:12px;}
.tunesera-internet-radio-directory-directory .tunesera-card__locations {flex:1;gap:4px;flex-wrap:nowrap;}
.tunesera-internet-radio-directory-directory .tunesera-card__locations:has(a + a) a:first-child {display:none;}
.tunesera-internet-radio-directory-directory .tunesera-card__locations::before {content:"";width:16px;height:16px;flex-shrink:0;background:currentColor;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2a8 8 0 0 0-8 8c0 6 8 12 8 12s8-6 8-12a8 8 0 0 0-8-8Zm0 11a3 3 0 1 1 0-6 3 3 0 0 1 0 6Z'/%3E%3C/svg%3E") center/contain no-repeat;}
.tunesera-internet-radio-directory-directory .tunesera-card__tag {font-size:12px;padding:4px 11px;background:#f0f2f6;}
.tunesera-internet-radio-directory-directory .tunesera-card__now {grid-column:2 / 4;grid-row:3;font-size:12px;color:var(--tunesera-muted);margin-top:5px;}
.tunesera-internet-radio-directory-directory .tunesera-card__now b {color:var(--tunesera-brand);font-weight:500;}
.tunesera-internet-radio-directory-directory .tunesera-card__play {grid-column:4;grid-row:1 / 4;height:40px;min-width:0;width:110px;border-radius:8px;background:linear-gradient(135deg,#7450ff,#5930ff);box-shadow:none;font-size:14px;font-weight:500;}
.tunesera-internet-radio-directory-directory .tunesera-card__play:not(.is-loading)::before {content:"";width:16px;height:16px;flex-shrink:0;background:currentColor;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m7 3 14 9-14 9z'/%3E%3C/svg%3E") center/contain no-repeat;}
.tunesera-internet-radio-directory-directory .tunesera-card__play.is-playing::before {mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Crect x='4' y='4' width='16' height='16' rx='2'/%3E%3C/svg%3E");}
.tunesera-internet-radio-directory-directory .tunesera-station-card:has(.is-playing) {background:#f6f3ff;box-shadow:inset 3px 0 var(--tunesera-brand);}
.tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-station-list.is-grid {gap:14px;padding:0 14px 18px;}
.tunesera-internet-radio-directory-directory .is-grid > .tunesera-station-card {grid-template-columns:80px minmax(0,1fr) 44px;align-items:start;gap:14px;padding:18px 14px;min-height:150px;border-radius:9px;}
.tunesera-internet-radio-directory-directory .is-grid .tunesera-card__body {display:flex;flex-direction:column;gap:8px;grid-column:2;grid-row:1;}
.tunesera-internet-radio-directory-directory .is-grid .tunesera-card__logo {grid-column:1;grid-row:1;height:80px;width:80px;}
.tunesera-internet-radio-directory-directory .is-grid .tunesera-card__title {order:0;}
.tunesera-internet-radio-directory-directory .is-grid .tunesera-card__title h2 {font-size:18px;}
.tunesera-internet-radio-directory-directory .is-grid .tunesera-card__meta {order:1;gap:8px;flex-wrap:wrap;}
.tunesera-internet-radio-directory-directory .is-grid .tunesera-card__locations {flex:initial;}
.tunesera-internet-radio-directory-directory .is-grid .tunesera-card__genres {gap:6px;}
.tunesera-internet-radio-directory-directory .is-grid .tunesera-card__tag {padding:0;background:none;}
.tunesera-internet-radio-directory-directory .is-grid .tunesera-card__body p {order:2;white-space:normal;font-size:13px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;}
.tunesera-internet-radio-directory-directory .is-grid .tunesera-card__now {order:3;margin:0;}
.tunesera-internet-radio-directory-directory .is-grid .tunesera-card__play {grid-column:3;grid-row:1;width:44px;height:42px;font-size:0;padding:0;gap:0;}
.tunesera-internet-radio-directory-directory .is-grid .tunesera-station-card:has(.is-playing) {border-color:var(--tunesera-brand);box-shadow:none;}
@media(max-width:1000px) {
 .tunesera-internet-radio-directory-directory .tunesera-station-card {grid-template-columns:56px minmax(0,1fr) 90px;gap:4px 14px;}
 .tunesera-internet-radio-directory-directory .tunesera-card__meta {grid-column:2;grid-row:3;gap:12px;}
 .tunesera-internet-radio-directory-directory .tunesera-card__now {grid-column:2;grid-row:4;}
 .tunesera-internet-radio-directory-directory .tunesera-card__play {grid-column:3;width:90px;}
 .tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-filter-top {grid-template-columns:1fr 1fr;gap:10px;}
 .tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-search-wrap {grid-column:1 / -1;}
}
@media(max-width:760px) {
 .tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-layout,.tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-archive__layout {grid-template-columns:minmax(0,1fr);}
 .tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-results-header {align-items:flex-start;flex-direction:column;}
 .tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-view-switch {justify-content:space-between;width:100%;}
 .tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-pagination-controls {justify-content:center;}
 .tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-page-btn {padding:0 8px;}
 .tunesera-internet-radio-directory-directory .tunesera-card__logo {width:48px;height:48px;}
 .tunesera-internet-radio-directory-directory .is-grid > .tunesera-station-card {grid-template-columns:64px minmax(0,1fr) 40px;}
 .tunesera-internet-radio-directory-directory .is-grid .tunesera-card__logo {width:64px;height:64px;}
}
.tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-archive__total {display:none;}
.tunesera-internet-radio-directory-directory .tunesera-card__body p {font-size:14px;}
.tunesera-internet-radio-directory-directory .tunesera-card__meta {font-size:13px;}
.tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-reset-btn[hidden] {display:none;}
.tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-filter-top:not(:has(.tunesera-internet-radio-directory-reset-btn:not([hidden]))) {grid-template-columns:minmax(200px,1.6fr) minmax(130px,1fr) minmax(130px,1fr);}
.tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-archive__sidebar:has(.tunesera-internet-radio-directory-archive__location-item:nth-child(-n+8):last-child) .tunesera-internet-radio-directory-archive__location-search {display:none;}
@media(max-width:1000px) {.tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-filter-top:not(:has(.tunesera-internet-radio-directory-reset-btn:not([hidden]))) {grid-template-columns:1fr 1fr;}}
.tunesera-internet-radio-directory-directory .is-grid .tunesera-card__title {align-self:stretch;}
.tunesera-internet-radio-directory-directory .tunesera-station-card:not(:has(.is-playing)) .tunesera-card__now {display:none;}
.tunesera-internet-radio-directory-directory .tunesera-card__logo img {object-fit:cover;}
.tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-archive__title-wrap,.tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-archive__title-wrap > div {min-width:0;}
.tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-archive__title-wrap p {white-space:normal;overflow-wrap:anywhere;}
@media(max-width:560px) {
 .tunesera-internet-radio-directory-directory,.tunesera-internet-radio-directory-directory.tunesera-internet-radio-directory-archive {width:100%;padding:20px 12px 32px;}
 .tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-filter-top,.tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-filter-top:not(:has(.tunesera-internet-radio-directory-reset-btn:not([hidden]))) {grid-template-columns:minmax(0,1fr);}
 .tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-search-wrap {grid-column:auto;}
 .tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-view-switch {flex-wrap:wrap;}
 .tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-archive__title-wrap {width:100%;}
}
/* Keep genres below the description and show the full country/city location. */
.tunesera-internet-radio-directory-directory .tunesera-card__meta {display:contents;}
.tunesera-internet-radio-directory-directory .tunesera-card__genres {grid-column:2;grid-row:3;align-self:start;margin-top:5px;}
.tunesera-internet-radio-directory-directory .tunesera-card__locations {grid-column:3;grid-row:1 / 4;display:flex;flex-wrap:wrap;align-items:center;align-self:center;gap:4px 8px;}
.tunesera-internet-radio-directory-directory .tunesera-card__locations:has(a + a) a:first-child {display:inline;}
.tunesera-internet-radio-directory-directory .tunesera-card__locations::before {display:none;}
.tunesera-internet-radio-directory-directory .tunesera-card__locations a + a::before {content:'·';margin-right:7px;}
.tunesera-internet-radio-directory-directory .tunesera-card__now {grid-row:4;}
.tunesera-internet-radio-directory-directory .is-grid .tunesera-card__meta {display:contents;}
.tunesera-internet-radio-directory-directory .is-grid .tunesera-card__locations {order:1;align-self:flex-start;}
.tunesera-internet-radio-directory-directory .is-grid .tunesera-card__body p {order:2;}
.tunesera-internet-radio-directory-directory .is-grid .tunesera-card__genres {order:3;}
.tunesera-internet-radio-directory-directory .is-grid .tunesera-card__now {order:4;}
.tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-station-list[aria-busy=true] {opacity:.6;}
@media(max-width:1000px) {
 .tunesera-internet-radio-directory-directory .tunesera-card__locations {grid-column:2;grid-row:4;}
 .tunesera-internet-radio-directory-directory .tunesera-card__now {grid-row:5;}
}
/* Explicit text colors prevent theme button hover rules from turning labels white. */
.tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-country,
.tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-archive__location-item {color:var(--tunesera-text);box-shadow:none;}
.tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-country:hover,
.tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-country:focus-visible,
.tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-archive__location-item:hover,
.tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-archive__location-item:focus-visible {background:var(--tunesera-brand-soft);color:var(--tunesera-brand);box-shadow:none;}
.tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-country.is-active,
.tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-country.is-active:hover,
.tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-archive__location-item.is-active {background:var(--tunesera-brand-soft);color:var(--tunesera-brand);}
.tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-country:hover .tunesera-internet-radio-directory-count,
.tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-country.is-active .tunesera-internet-radio-directory-count {color:var(--tunesera-brand);}
.tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-filter-top:has(.tunesera-internet-radio-directory-select--country) {grid-template-columns:minmax(180px,1.5fr) repeat(3,minmax(110px,1fr)) auto;gap:12px;}
.tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-filter-top:has(.tunesera-internet-radio-directory-select--country):not(:has(.tunesera-internet-radio-directory-reset-btn:not([hidden]))) {grid-template-columns:minmax(180px,1.5fr) repeat(3,minmax(110px,1fr));}
@media(max-width:1100px) {
 .tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-filter-top:has(.tunesera-internet-radio-directory-select--country),.tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-filter-top:has(.tunesera-internet-radio-directory-select--country):not(:has(.tunesera-internet-radio-directory-reset-btn:not([hidden]))) {grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:560px) {
 .tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-filter-top:has(.tunesera-internet-radio-directory-select--country),.tunesera-internet-radio-directory-directory .tunesera-internet-radio-directory-filter-top:has(.tunesera-internet-radio-directory-select--country):not(:has(.tunesera-internet-radio-directory-reset-btn:not([hidden]))) {grid-template-columns:minmax(0,1fr);}
}

/* Keep archive sizing stable inside theme flex containers as results change. */
.tunesera-internet-radio-directory-directory.tunesera-internet-radio-directory-archive {width:100%;min-width:0;box-sizing:border-box;}

/* Explicit playback SVGs replace the legacy pseudo-element icon. */
.tunesera-card__play:has(> svg)::before {display:none!important;}
.tunesera-card__play > svg {display:inline-block!important;width:18px;height:18px;flex-shrink:0;}

/* Keep playback symbols visible when themes style station buttons. */
.tunesera-internet-radio-directory-directory .tunesera-card__play > svg {display:inline-block!important;width:18px!important;height:18px!important;flex-shrink:0;fill:none;}

/* SVG playback buttons must not reserve a second pseudo-icon slot. */
.tunesera-internet-radio-directory-directory.tunesera-internet-radio-directory-directory.tunesera-internet-radio-directory-directory.tunesera-internet-radio-directory-directory .tunesera-card__play:has(> svg)::before,.tunesera-internet-radio-directory-directory.tunesera-internet-radio-directory-directory.tunesera-internet-radio-directory-directory.tunesera-internet-radio-directory-directory .tunesera-card__play:has(> svg)::after {content:none!important;display:none!important;margin:0!important;}
