/*
Theme Name: DushiToday Radio
Author: DushiToday
Version: 7.50.0
Description: Compact international online-radio app theme for DushiToday.
*/
:root{--bg:#04121e;--panel:#071d2c;--panel2:#092538;--line:#123d59;--blue:#139ff5;--text:#f7fbff;--muted:#9bb2c4}*{box-sizing:border-box}html{scroll-behavior:smooth}html,body{margin:0;background:radial-gradient(circle at 50% 0,#082238 0,#04121e 38%,#03101a 100%);color:var(--text);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif}body{padding-bottom:88px}button,input{font:inherit}.dt-shell{min-height:100vh}.dt-header{height:92px;display:grid;grid-template-columns:280px minmax(300px,820px) 1fr;gap:28px;align-items:center;padding:14px 28px;border-bottom:1px solid #0d2b40;background:#04121ee8;position:sticky;top:0;z-index:50;backdrop-filter:blur(14px)}.dt-logo{font-size:29px;font-weight:950;letter-spacing:-1.5px}.dt-logo span{color:#16aaf7}.dt-tag{font-size:10px;letter-spacing:5px;color:#c2d1dc;margin-top:2px}.dt-search{width:100%;height:50px;border-radius:28px;border:1px solid #275572;background:#102b40;color:#fff;padding:0 24px;font-size:15px;outline:none}.dt-search:focus{border-color:#19aafa;box-shadow:0 0 0 3px #159ff417}.dt-actions{justify-self:end;display:flex;gap:13px}.dt-actions button,.dt-heart{border:0;background:transparent;color:#d9e8f2;font-size:22px;cursor:pointer}.dt-main{padding:12px 28px 30px;max-width:1700px;margin:auto}.dt-dashboard{display:grid;grid-template-columns:1.25fr 1fr;gap:18px;margin-bottom:30px}.dt-mini-panel{border:1px solid var(--line);border-radius:12px;background:linear-gradient(145deg,#061a28,#082335);padding:14px 16px;min-width:0}.dt-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:12px}.dt-head h2{margin:0;font-size:21px;letter-spacing:-.3px}.dt-view{border:0;background:none;color:#16aafa;font-weight:800;cursor:pointer;white-space:nowrap}.dt-topstrip,.dt-recentstrip{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px}.dt-topitem,.dt-recentitem{min-width:0;display:flex;align-items:center;gap:8px;border:0;background:transparent;color:#fff;text-align:left;padding:4px;cursor:pointer}.dt-topitem .rank{font-size:18px;color:#c5d6e3}.dt-topitem img,.dt-recentitem img{width:46px;height:46px;border-radius:7px;object-fit:cover;background:#102c40;flex:0 0 auto}.dt-topitem b,.dt-recentitem b{font-size:12px;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dt-topitem small,.dt-recentitem small{font-size:10px;color:#9cb2c3;display:block;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dt-section{margin:26px 0 34px}.dt-titleline{display:flex;align-items:center;gap:26px;min-width:0}.dt-filters{display:flex;gap:10px;overflow:auto}.dt-filters button{height:34px;min-width:74px;border:1px solid #12364f;border-radius:18px;background:#092236;color:#a9bfd0;padding:0 17px;cursor:pointer}.dt-filters button.active,.dt-filters button:hover{background:#159ff4;color:white;border-color:#159ff4}.dt-stations{display:grid;grid-template-columns:repeat(auto-fill,128px);gap:12px;justify-content:start;align-items:start}.dt-station{min-width:0;background:#071d2c;border:1px solid #10344d;border-radius:10px;overflow:hidden;transition:.16s}.dt-station:hover{transform:translateY(-2px);border-color:#23668f}.dt-art{position:relative;width:128px;height:118px;background:#102b40;overflow:hidden}.dt-art img{width:100%;height:100%;object-fit:cover;display:block}.dt-fallback{width:100%;height:100%;display:grid;place-items:center;text-align:center;padding:12px;font-size:12px;font-weight:900;background:linear-gradient(145deg,#103a57,#071725)}.dt-cardplay{position:absolute;left:50%;bottom:5px;transform:translateX(-50%);width:28px;height:28px;border:0;border-radius:50%;background:#159ff4;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 4px 12px #0007;padding:0}.dt-cardplay .tri{width:0;height:0;border-top:5px solid transparent;border-bottom:5px solid transparent;border-left:8px solid white;margin-left:2px}.dt-cardplay.playing{background:#fff}.dt-cardplay .pause{display:none;width:9px;height:10px;border-left:3px solid #159ff4;border-right:3px solid #159ff4}.dt-cardplay.playing .tri{display:none}.dt-cardplay.playing .pause{display:block}.dt-info{padding:8px 9px 10px}.dt-info h3{font-size:13px;margin:0 0 4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dt-meta{color:#91a9bb;font-size:10.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dt-stat{margin-top:7px;color:#a8bdcc;font-size:10.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dt-country-grid{display:grid;grid-template-columns:repeat(11,minmax(90px,1fr));gap:10px}.dt-country{height:96px;border:1px solid #17405e;border-radius:9px;background:linear-gradient(145deg,#0c2b43,#081c2b);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;cursor:pointer}.dt-country:hover{border-color:#18a9f7;transform:translateY(-2px)}.dt-flag{font-size:30px;line-height:1}.dt-country b{font-size:12px}.dt-country small{color:#8faabd;font-size:10px}.dt-genre-grid{display:grid;grid-template-columns:repeat(11,minmax(90px,1fr));gap:10px}.dt-genre{height:82px;border:0;border-radius:9px;color:#fff;font-size:12px;font-weight:800;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;cursor:pointer}.dt-genre span{font-size:20px}.dt-genre:nth-child(11n+1){background:linear-gradient(145deg,#c51c5c,#7d113c)}.dt-genre:nth-child(11n+2){background:linear-gradient(145deg,#e64924,#9d2815)}.dt-genre:nth-child(11n+3){background:linear-gradient(145deg,#eda31b,#996006)}.dt-genre:nth-child(11n+4){background:linear-gradient(145deg,#7435dc,#41158d)}.dt-genre:nth-child(11n+5){background:linear-gradient(145deg,#178646,#0d542c)}.dt-genre:nth-child(11n+6){background:linear-gradient(145deg,#126de0,#0b448e)}.dt-genre:nth-child(11n+7){background:linear-gradient(145deg,#0aa7ba,#087184)}.dt-genre:nth-child(11n+8){background:linear-gradient(145deg,#159fe6,#0871a5)}.dt-genre:nth-child(11n+9){background:linear-gradient(145deg,#3159c8,#1d347c)}.dt-genre:nth-child(11n+10){background:linear-gradient(145deg,#5c6771,#303941)}.dt-genre:nth-child(11n){background:linear-gradient(145deg,#aa7a24,#624514)}.dt-player{position:fixed;z-index:999;left:0;right:0;bottom:0;height:88px;background:#04121ef8;border-top:1px solid #17415e;backdrop-filter:blur(18px);display:grid;grid-template-columns:1.2fr 1fr 1.2fr;align-items:center;padding:8px 28px}.dt-now{display:flex;align-items:center;gap:13px;min-width:0}.dt-now img{width:60px;height:60px;border-radius:7px;object-fit:cover;background:#10263a}.dt-now strong,.dt-now small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dt-now strong{font-size:14px}.dt-now small{color:#91a9bb;margin-top:4px;font-size:12px}.dt-heart{margin-left:14px}.dt-controls{display:flex;justify-content:center;align-items:center;gap:23px}.dt-minor{border:0;background:none;color:#d9e7f1;font-size:17px}.dt-master{width:56px;height:56px;border-radius:50%;border:2px solid #159ff4;background:#159ff4;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0}.dt-master .master-tri{width:0;height:0;border-top:8px solid transparent;border-bottom:8px solid transparent;border-left:12px solid white;margin-left:3px}.dt-master .master-pause{display:none;width:14px;height:18px;border-left:5px solid white;border-right:5px solid white}.dt-master.playing .master-tri{display:none}.dt-master.playing .master-pause{display:block}.dt-right{display:flex;align-items:center;justify-content:flex-end;gap:11px;color:#a8bdcb}.dt-right input{width:160px;accent-color:#159ff4}.dt-error{font-size:10px;color:#ffaaaa;margin-top:2px}.dt-empty{padding:30px 0;color:#7893a8}.hidden{display:none!important}@media(max-width:1350px){.dt-stations{grid-template-columns:repeat(auto-fill,128px)}.dt-country-grid,.dt-genre-grid{grid-template-columns:repeat(8,1fr)}.dt-topstrip,.dt-recentstrip{grid-template-columns:repeat(4,1fr)}.dt-topitem:nth-child(5),.dt-recentitem:nth-child(5){display:none}}@media(max-width:1000px){.dt-header{grid-template-columns:220px 1fr auto}.dt-dashboard{grid-template-columns:1fr}.dt-stations{grid-template-columns:repeat(auto-fill,128px)}.dt-country-grid,.dt-genre-grid{grid-template-columns:repeat(6,1fr)}.dt-titleline{display:block}.dt-filters{margin-top:12px}.dt-player{grid-template-columns:1fr auto}.dt-right{display:none}}@media(max-width:700px){body{padding-bottom:76px}.dt-header{height:auto;grid-template-columns:1fr auto;padding:14px}.dt-brand{grid-column:1}.dt-search{grid-row:2;grid-column:1/-1;height:44px}.dt-main{padding:10px 14px 25px}.dt-dashboard{gap:12px}.dt-topstrip,.dt-recentstrip{grid-template-columns:repeat(3,1fr)}.dt-topitem:nth-child(n+4),.dt-recentitem:nth-child(n+4){display:none}.dt-stations{grid-template-columns:repeat(auto-fill,minmax(104px,1fr))}.dt-art{width:100%;height:auto;aspect-ratio:1.08}.dt-country-grid,.dt-genre-grid{grid-template-columns:repeat(3,1fr)}.dt-player{height:76px;padding:7px 12px}.dt-now img{width:52px;height:52px}.dt-minor{display:none}.dt-controls{gap:0}.dt-master{width:48px;height:48px}.dt-head h2{font-size:18px}.dt-filters{display:none}}


/* V6.1 precision fixes */
.dt-topitem,.dt-recentitem{overflow:hidden;min-width:0}
.dt-topitem>span:last-child,.dt-recentitem>span:last-child{min-width:0;overflow:hidden;display:block}
.dt-topitem b,.dt-recentitem b{max-width:100%;line-height:1.2}
.dt-topitem small,.dt-recentitem small{max-width:100%;line-height:1.25}
.dt-topstrip,.dt-recentstrip{min-width:0}
.dt-art{overflow:visible;margin-bottom:14px}
.dt-art img,.dt-fallback{border-radius:9px 9px 0 0;overflow:hidden}
.dt-cardplay{bottom:-14px;width:28px;height:28px;z-index:4;border:2px solid #071d2c;box-shadow:0 3px 10px #0008}
.dt-info{padding-top:3px}
.dt-stat{display:flex;align-items:center;gap:5px}
.dt-plays-icon{width:15px;height:15px;border:1.5px solid #8fb6cf;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;flex:0 0 15px;position:relative}
.dt-plays-icon:before{content:'';width:0;height:0;border-top:3px solid transparent;border-bottom:3px solid transparent;border-left:5px solid #8fb6cf;margin-left:1px}
.dt-master.playing{background:#fff;border-color:#fff;box-shadow:0 0 0 4px #159ff420}
.dt-master.playing .master-pause{border-left-color:#159ff4;border-right-color:#159ff4}
.dt-master:not(.playing){background:#159ff4;border-color:#159ff4}
@media(max-width:1350px){.dt-topitem img,.dt-recentitem img{width:40px;height:40px}.dt-topitem .rank{font-size:16px}}

.dt-heart.active,#dtFavTop.active{color:#159ff4}.dt-heart.active{transform:scale(1.08)}#dtFavTop{min-width:30px}.dt-fav-empty{color:#91a9bb;padding:18px 0}


/* V6.7 compact ranked layout */
.dt-main{padding-top:14px}.dt-head{margin-bottom:9px}.dt-head h2{font-size:18px;letter-spacing:-.2px}.dt-section{margin:18px 0 24px}
.dt-recent-panel{max-width:760px;margin:0 0 14px auto;border:1px solid var(--line);border-radius:10px;background:linear-gradient(145deg,#061a28,#082335);padding:10px 12px}.dt-recent-panel .dt-head h2{font-size:16px}.dt-recentstrip{grid-template-columns:repeat(5,minmax(0,1fr))}.dt-recentitem img{width:38px;height:38px}.dt-recentitem b{font-size:11px}.dt-recentitem small{font-size:9px}
.dt-content-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:24px;align-items:start}.dt-left-content{min-width:0}.dt-genre-side{position:sticky;top:108px;border-left:1px solid #0f3148;padding-left:20px;min-width:0}.dt-genre-side .dt-head{margin-top:18px}
.dt-stations{grid-template-columns:repeat(auto-fill,128px);gap:12px;justify-content:start}.dt-station{position:relative}.dt-rankbadge{position:absolute;z-index:8;top:-9px;left:-9px;width:27px;height:27px;border-radius:50%;display:grid;place-items:center;background:#f7fbff;color:#071522;border:2px solid #159ff4;font-size:11px;font-weight:900;box-shadow:0 3px 10px #0009}
.dt-country-grid{grid-template-columns:repeat(auto-fill,118px);gap:10px;justify-content:start}.dt-country{position:relative;width:118px;height:88px;overflow:hidden;background-image:linear-gradient(180deg,#07131a33,#03101ae8),var(--country-bg,linear-gradient(145deg,#0c2b43,#081c2b));background-size:cover;background-position:center;border-color:#17405e}.dt-country>*{position:relative;z-index:2}.dt-country-shade{position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,#07131a15,#03101ad9)}.dt-country .dt-flag{font-size:27px;text-shadow:0 2px 8px #000}.dt-country b{font-size:11px;text-shadow:0 1px 5px #000}.dt-country small{font-size:9px;color:#d2e1eb;text-shadow:0 1px 4px #000}
.dt-genre-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.dt-genre{height:72px;font-size:11px;border-radius:9px}.dt-genre span{font-size:17px}.dt-genre:nth-child(11n+1){background:linear-gradient(145deg,#c51c5c,#7d113c)}.dt-genre:nth-child(11n+2){background:linear-gradient(145deg,#e64924,#9d2815)}.dt-genre:nth-child(11n+3){background:linear-gradient(145deg,#eda31b,#996006)}.dt-genre:nth-child(11n+4){background:linear-gradient(145deg,#7435dc,#41158d)}.dt-genre:nth-child(11n+5){background:linear-gradient(145deg,#178646,#0d542c)}.dt-genre:nth-child(11n+6){background:linear-gradient(145deg,#126de0,#0b448e)}.dt-genre:nth-child(11n+7){background:linear-gradient(145deg,#0aa7ba,#087184)}.dt-genre:nth-child(11n+8){background:linear-gradient(145deg,#159fe6,#0871a5)}.dt-genre:nth-child(11n+9){background:linear-gradient(145deg,#3159c8,#1d347c)}.dt-genre:nth-child(11n+10){background:linear-gradient(145deg,#5c6771,#303941)}.dt-genre:nth-child(11n){background:linear-gradient(145deg,#aa7a24,#624514)}
@media(min-width:1750px){.dt-main{max-width:1780px}.dt-content-layout{grid-template-columns:minmax(0,1fr) 350px}}
@media(max-width:1100px){.dt-content-layout{grid-template-columns:1fr}.dt-genre-side{position:static;border-left:0;padding-left:0}.dt-genre-grid{grid-template-columns:repeat(auto-fill,92px);justify-content:start}.dt-genre{width:92px}.dt-recent-panel{max-width:none}.dt-country-grid{grid-template-columns:repeat(auto-fill,112px)}.dt-country{width:112px}}
@media(max-width:700px){.dt-recentstrip{grid-template-columns:repeat(3,1fr)}.dt-recentitem:nth-child(n+4){display:none}.dt-content-layout{display:block}.dt-stations{grid-template-columns:repeat(auto-fill,minmax(104px,1fr))}.dt-rankbadge{top:-7px;left:-6px}.dt-country-grid{grid-template-columns:repeat(3,1fr)}.dt-country{width:100%}.dt-genre-grid{grid-template-columns:repeat(3,1fr)}.dt-genre{width:100%}}

/* V6.8 header recently-played + visible compact rank badge */
.dt-header{grid-template-columns:250px minmax(300px,650px) minmax(300px,520px) auto;gap:18px;height:82px;padding-top:10px;padding-bottom:10px}
.dt-header-recent{min-width:0;display:flex;align-items:center;gap:10px;height:54px;padding:5px 8px 5px 11px;border-left:1px solid #12384f}
.dt-recent-label{font-size:11px;font-weight:800;color:#b8cad7;white-space:nowrap}
.dt-header-recent .dt-recentstrip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;min-width:0;flex:1}
.dt-header-recent .dt-recentitem{padding:2px;gap:5px;min-width:0}
.dt-header-recent .dt-recentitem:nth-child(n+4){display:none}
.dt-header-recent .dt-recentitem img{width:30px;height:30px;border-radius:6px}
.dt-header-recent .dt-recentitem b{font-size:9.5px}
.dt-header-recent .dt-recentitem small{font-size:8px}
.dt-station{overflow:visible}
.dt-art{border-radius:9px 9px 0 0}
.dt-info{background:#071d2c;border-radius:0 0 9px 9px}
.dt-rankbadge{top:-6px;left:-6px;width:21px;height:21px;border-width:1.5px;font-size:9px;line-height:1;box-shadow:0 2px 7px #0008}
@media(max-width:1250px){.dt-header{grid-template-columns:220px minmax(280px,1fr) minmax(250px,360px) auto}.dt-header-recent .dt-recentstrip{grid-template-columns:repeat(2,minmax(0,1fr))}.dt-header-recent .dt-recentitem:nth-child(n+3){display:none}}
@media(max-width:900px){.dt-header{grid-template-columns:1fr auto;height:auto}.dt-brand{grid-column:1}.dt-actions{grid-column:2}.dt-search{grid-column:1/-1;grid-row:2}.dt-header-recent{grid-column:1/-1;grid-row:3;border-left:0;border-top:1px solid #12384f;height:48px;padding-left:0}.dt-header-recent .dt-recentstrip{grid-template-columns:repeat(3,minmax(0,1fr))}.dt-header-recent .dt-recentitem:nth-child(3){display:flex}}
@media(max-width:700px){.dt-header-recent .dt-recent-label{font-size:10px}.dt-header-recent .dt-recentitem img{width:27px;height:27px}.dt-rankbadge{top:-5px;left:-4px;width:19px;height:19px;font-size:8px}}

/* V6.9 editable country artwork */
.dt-country .dt-flag{width:34px;height:24px;display:flex;align-items:center;justify-content:center}
.dt-flag-img{display:block;width:34px;height:24px;object-fit:cover;border-radius:4px;box-shadow:0 2px 8px #0009;border:1px solid #ffffff55}
.dt-flag-emoji{font-size:27px;line-height:1}


/* V7.0 — clean header, no Recently Played, mobile genre scrolling fix */
.dt-header{grid-template-columns:250px minmax(300px,1fr) auto;gap:18px}
@media(max-width:900px){
  html,body{height:auto!important;min-height:100%;overflow-x:hidden!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch}
  body{padding-bottom:110px!important}
  .dt-shell{min-height:0!important;height:auto!important;overflow:visible!important}
  .dt-header{grid-template-columns:1fr auto;height:auto;position:sticky;top:0}
  .dt-brand{grid-column:1}.dt-actions{grid-column:2}.dt-search{grid-column:1/-1;grid-row:2}
  .dt-content-layout{display:block!important;height:auto!important;overflow:visible!important}
  .dt-left-content,.dt-main{height:auto!important;overflow:visible!important}
  .dt-genre-side{position:static!important;top:auto!important;max-height:none!important;height:auto!important;overflow:visible!important;border-left:0;padding-left:0;padding-bottom:40px}
  .dt-genre-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;height:auto!important;max-height:none!important;overflow:visible!important}
  .dt-genre{display:flex!important;width:100%!important;min-height:72px}
}
@media(max-width:700px){
  .dt-main{padding-bottom:55px!important}
  .dt-genre-side{padding-bottom:70px!important}
  .dt-genre-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px}
}

/* V7.1 — station favorites + functional previous/next controls */
.dt-info{position:relative;padding-right:30px}
.dt-cardfav{position:absolute;right:7px;bottom:7px;width:24px;height:24px;border:0;background:transparent;color:#91a9bb;font-size:20px;line-height:1;display:grid;place-items:center;cursor:pointer;padding:0;z-index:7;transition:transform .15s ease,color .15s ease}
.dt-cardfav:hover{transform:scale(1.1);color:#dceaf4}.dt-cardfav.active{color:#159ff4}
.dt-skip{width:38px;height:38px;border:0;background:transparent;color:#d8e7f1;display:flex;align-items:center;justify-content:center;gap:2px;cursor:pointer;border-radius:50%;padding:0}
.dt-skip:hover{background:#ffffff0c;color:#fff}.dt-skip .skip-bar{width:2px;height:13px;border-radius:2px;background:currentColor}.dt-skip .skip-prev{width:0;height:0;border-top:7px solid transparent;border-bottom:7px solid transparent;border-right:10px solid currentColor}.dt-skip .skip-next{width:0;height:0;border-top:7px solid transparent;border-bottom:7px solid transparent;border-left:10px solid currentColor}
@media(max-width:700px){.dt-skip{display:flex!important;width:32px;height:32px}.dt-cardfav{right:5px;bottom:5px;width:22px;height:22px;font-size:18px}.dt-info{padding-right:27px}}


/* V7.3 — working light/dark mode */
html[data-theme="light"],html[data-theme="light"] body{background:#eef4f8;color:#102334}
html[data-theme="light"]{--bg:#eef4f8;--panel:#ffffff;--panel2:#f5f9fc;--line:#d7e3eb;--blue:#139ff5;--text:#102334;--muted:#607789}
html[data-theme="light"] .dt-header{background:rgba(255,255,255,.94);border-bottom-color:#d9e5ed}
html[data-theme="light"] .dt-logo,html[data-theme="light"] .dt-head h2,html[data-theme="light"] .dt-info h3{color:#102334}
html[data-theme="light"] .dt-tag,html[data-theme="light"] .dt-meta,html[data-theme="light"] .dt-stat{color:#647b8d}
html[data-theme="light"] .dt-search{background:#fff;border-color:#cbdce7;color:#102334}
html[data-theme="light"] .dt-actions button,html[data-theme="light"] .dt-heart{color:#24445a}
html[data-theme="light"] .dt-station{background:#fff;border-color:#d7e3eb;box-shadow:0 5px 16px rgba(31,63,82,.06)}
html[data-theme="light"] .dt-player{background:rgba(255,255,255,.97);border-top-color:#d3e1ea}
html[data-theme="light"] .dt-now strong{color:#102334}
html[data-theme="light"] .dt-now small,html[data-theme="light"] .dt-right{color:#647b8d}
html[data-theme="light"] .dt-filters button{background:#fff;border-color:#d3e1ea;color:#526c7e}
html[data-theme="light"] .dt-filters button.active,html[data-theme="light"] .dt-filters button:hover{background:#159ff4;color:#fff;border-color:#159ff4}
#dtThemeToggle{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;font-size:19px;line-height:1}

/* V7.3 — light-mode station readability + blue player skip controls */
.dt-skip{color:#159ff4}
.dt-skip:hover{color:#0b8fe2;background:rgba(21,159,244,.10)}
html[data-theme="light"] .dt-info{background:#f7fbfe;color:#102334}
html[data-theme="light"] .dt-info h3{color:#102334}
html[data-theme="light"] .dt-meta{color:#587184}
html[data-theme="light"] .dt-stat{color:#60798b}
html[data-theme="light"] .dt-cardfav{color:#159ff4}
html[data-theme="light"] .dt-skip{color:#159ff4}
html[data-theme="light"] .dt-skip:hover{color:#087fca;background:rgba(21,159,244,.10)}

/* V7.4: clean idle player artwork + Random Mix */
.dt-now img.dt-now-art-hidden{display:none!important}.dt-random{margin-top:8px}.dt-random .dt-head{margin-bottom:12px}


/* V7.5 — sidebar countries + horizontally scrollable station rows + desktop page scrolling */
html,body{height:auto!important;min-height:100%;overflow-x:hidden!important;overflow-y:auto!important}
.dt-shell,.dt-main,.dt-content-layout,.dt-left-content{height:auto!important;max-height:none!important;overflow:visible!important}
.dt-content-layout{grid-template-columns:minmax(0,1fr) 330px;align-items:start}
.dt-genre-side{position:static!important;top:auto!important;max-height:none!important;height:auto!important;overflow:visible!important;border-left:1px solid #0f3148;padding-left:20px}
.dt-side-countries{margin-top:18px;margin-bottom:28px}.dt-side-genres{margin-bottom:30px}
.dt-genre-side .dt-head{margin-top:0}
.dt-genre-side .dt-country-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;justify-content:stretch}
.dt-genre-side .dt-country{width:100%;height:92px}
.dt-genre-side .dt-genre-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.dt-genre-side .dt-genre{width:100%;min-width:0;height:72px}
/* Station rows never grow vertically; extra stations scroll sideways. */
.dt-popular .dt-stations,.dt-random .dt-stations{display:flex!important;flex-wrap:nowrap!important;gap:12px;overflow-x:auto!important;overflow-y:visible!important;padding:10px 8px 14px 8px;margin-left:-8px;margin-right:-8px;scroll-snap-type:x proximity;scrollbar-width:thin;scrollbar-color:#159ff4 transparent;-webkit-overflow-scrolling:touch}
.dt-popular .dt-station,.dt-random .dt-station{flex:0 0 128px;width:128px;scroll-snap-align:start}
.dt-popular .dt-stations::-webkit-scrollbar,.dt-random .dt-stations::-webkit-scrollbar{height:6px}.dt-popular .dt-stations::-webkit-scrollbar-thumb,.dt-random .dt-stations::-webkit-scrollbar-thumb{background:#159ff4;border-radius:10px}
/* Keep every ranking badge visible, including #1. */
.dt-popular .dt-rankbadge{top:-5px!important;left:5px!important;width:20px!important;height:20px!important;font-size:9px!important;border-width:1.5px!important;z-index:20!important}
@media(max-width:1100px){.dt-content-layout{grid-template-columns:1fr}.dt-genre-side{border-left:0;padding-left:0}.dt-side-countries{margin-top:8px}.dt-genre-side .dt-country-grid{grid-template-columns:repeat(auto-fill,minmax(112px,1fr))}.dt-genre-side .dt-genre-grid{grid-template-columns:repeat(auto-fill,minmax(92px,1fr))}}
@media(max-width:700px){.dt-popular .dt-station,.dt-random .dt-station{flex-basis:112px;width:112px}.dt-popular .dt-art,.dt-random .dt-art{width:112px}.dt-genre-side .dt-country-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dt-genre-side .dt-genre-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.dt-genre-side{padding-bottom:100px!important}}

/* V7.6 — sidebar station navigation */
.dt-side-nav{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0 0 18px}
.dt-side-navbtn{min-height:42px;border:1px solid var(--line);border-radius:10px;background:var(--panel);color:var(--text);font-weight:700;font-size:13px;cursor:pointer;padding:8px 10px;transition:.18s ease}
.dt-side-navbtn:hover{border-color:var(--blue);color:var(--blue)}
.dt-side-navbtn.active{background:var(--blue);border-color:var(--blue);color:#fff}
html[data-theme="light"] .dt-side-navbtn{background:#fff;border-color:#d3e1ea;color:#36566b}
html[data-theme="light"] .dt-side-navbtn:hover{border-color:#159ff4;color:#087fca}
html[data-theme="light"] .dt-side-navbtn.active{background:#159ff4;border-color:#159ff4;color:#fff}
@media(max-width:1100px){.dt-side-nav{max-width:420px;margin-top:8px}}
@media(max-width:700px){.dt-side-nav{max-width:none;width:100%;margin:10px 0 18px}.dt-side-navbtn{min-height:44px}}


/* V7.8 — expandable Popular Stations */
.dt-popular.is-expanded .dt-stations{display:grid!important;grid-template-columns:repeat(auto-fill,128px)!important;overflow:visible!important;scroll-snap-type:none!important;padding:10px 8px 14px 8px}
.dt-popular.is-expanded .dt-station{width:128px!important;flex:none!important}
.dt-popular.is-expanded{position:relative;z-index:3}
@media(max-width:700px){.dt-popular.is-expanded .dt-stations{grid-template-columns:repeat(auto-fill,minmax(104px,112px))!important}.dt-popular.is-expanded .dt-station{width:112px!important}}


/* V7.9 — rotating advertising banner */
.dt-ad-wrap{margin:12px 0 22px}.dt-ad-label{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin:0 0 6px 2px}.dt-ad-slider{position:relative;width:100%;overflow:hidden;border-radius:14px;border:1px solid var(--line);background:var(--panel);aspect-ratio:24/5;min-height:0;max-height:none}.dt-ad-slide{position:absolute;inset:0;opacity:0;pointer-events:none;transition:opacity .55s ease}.dt-ad-slide.active{opacity:1;pointer-events:auto}.dt-ad-slide a,.dt-ad-slide>span{display:block;width:100%;height:100%}.dt-ad-slide img{width:100%;height:100%;display:block;object-fit:contain;background:var(--panel)}.dt-ad-dots{position:absolute;left:50%;bottom:7px;transform:translateX(-50%);display:flex;gap:5px;z-index:3}.dt-ad-dot{width:6px;height:6px;border:0;border-radius:50%;padding:0;background:rgba(255,255,255,.5);cursor:pointer}.dt-ad-dot.active{background:#159ff4}.dt-ad-slider[data-count="1"] .dt-ad-dots{display:none}html[data-theme="light"] .dt-ad-slider{background:#fff;border-color:#d3e1ea}@media(max-width:700px){.dt-ad-wrap{margin:8px 0 18px}.dt-ad-slider{aspect-ratio:24/5;min-height:0;max-height:none;border-radius:11px}.dt-ad-slide img{object-fit:contain}}

/* V7.11 — selection state + banner width guard */
.dt-left-content .dt-ad-wrap{width:100%;max-width:100%;min-width:0}
.dt-country.active{border-color:var(--blue)!important;box-shadow:inset 0 -3px 0 var(--blue),0 0 0 1px rgba(21,159,244,.18)}
html[data-theme="light"] .dt-country.active{border-color:#159ff4!important;box-shadow:inset 0 -3px 0 #159ff4,0 0 0 1px rgba(21,159,244,.12)}

/* V7.12 — mobile fit/overflow cleanup; desktop unchanged */
@media(max-width:700px){
  html,body{width:100%;max-width:100%;overflow-x:hidden!important}
  .dt-shell,.dt-header,.dt-main,.dt-content-layout,.dt-left-content,.dt-genre-side,.dt-section,.dt-popular,.dt-random,.dt-ad-wrap{width:100%;max-width:100%;min-width:0}
  .dt-header{padding:12px 12px 10px!important;gap:10px!important}
  .dt-brand{min-width:0}.dt-logo{font-size:25px}.dt-tag{font-size:9px;letter-spacing:3px}
  .dt-actions{gap:6px}.dt-actions button,.dt-heart{font-size:20px;padding:4px}
  .dt-search{min-width:0;width:100%;padding:0 16px}
  .dt-main{padding:10px 12px 28px!important}
  .dt-head{gap:10px}.dt-head h2{min-width:0}.dt-view{font-size:12px}
  .dt-popular .dt-stations,.dt-random .dt-stations{width:calc(100% + 0px);max-width:100%;margin-left:0!important;margin-right:0!important;padding-left:4px!important;padding-right:4px!important;overscroll-behavior-x:contain}
  .dt-popular.is-expanded .dt-stations{grid-template-columns:repeat(auto-fit,minmax(104px,1fr))!important;padding-left:0!important;padding-right:0!important;gap:10px!important}
  .dt-popular.is-expanded .dt-station{width:100%!important;max-width:128px!important;justify-self:start}
  .dt-side-nav{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important}.dt-side-navbtn{min-width:0;padding-left:6px;padding-right:6px;font-size:12px}
  .dt-genre-side .dt-country-grid{width:100%;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px}.dt-genre-side .dt-country{min-width:0;width:100%!important}
  .dt-genre-side .dt-genre-grid{width:100%;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:7px}.dt-genre-side .dt-genre{min-width:0;width:100%!important;font-size:11px;padding:5px}
  .dt-ad-slider{width:100%;max-width:100%;aspect-ratio:24/5}.dt-ad-slide,.dt-ad-slide a,.dt-ad-slide>span,.dt-ad-slide img{max-width:100%}
  .dt-player{width:100%;max-width:100%;grid-template-columns:minmax(0,1fr) auto!important;padding:7px 10px!important;gap:6px}
  .dt-now{min-width:0;gap:8px}.dt-now img{flex:0 0 48px;width:48px;height:48px}.dt-now strong{font-size:12px}.dt-now small{font-size:10px}.dt-heart{margin-left:4px}
  .dt-controls{flex:0 0 auto;gap:2px!important}.dt-skip{width:29px!important;height:29px!important}.dt-master{width:44px;height:44px}
}
@media(max-width:380px){
  .dt-main{padding-left:10px!important;padding-right:10px!important}.dt-logo{font-size:23px}.dt-tag{letter-spacing:2px}.dt-genre-side .dt-genre-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.dt-now img{width:44px;height:44px;flex-basis:44px}.dt-skip{width:27px!important}.dt-master{width:42px;height:42px}
}


/* V7.14 — restore reliable vertical page scrolling on phones/tablets */
@media(max-width:1100px){
  html{height:auto!important;min-height:100%!important;overflow-y:scroll!important;overflow-x:hidden!important;-webkit-overflow-scrolling:touch!important}
  body{position:static!important;height:auto!important;min-height:100vh!important;max-height:none!important;overflow-y:visible!important;overflow-x:hidden!important;touch-action:pan-y!important}
  .dt-shell,.dt-main,.dt-content-layout,.dt-left-content,.dt-genre-side,.dt-section{position:relative;height:auto!important;min-height:0!important;max-height:none!important;overflow-y:visible!important}
  .dt-content-layout{align-items:start!important}
  .dt-popular .dt-stations,.dt-random .dt-stations{touch-action:pan-x pan-y!important;-webkit-overflow-scrolling:touch!important}
  .dt-country-grid,.dt-genre-grid,.dt-side-nav{touch-action:pan-y!important}
}
@media(max-width:700px){
  body{padding-bottom:92px!important}
  .dt-main{padding-bottom:42px!important}
  .dt-genre-side{padding-bottom:34px!important}
}

/* V7.14 — desktop/web vertical scrolling fix */
@media (min-width:701px){
  html{height:auto!important;min-height:100%!important;overflow-x:hidden!important;overflow-y:auto!important;scroll-behavior:smooth}
  body{position:static!important;height:auto!important;min-height:100vh!important;max-height:none!important;overflow-x:hidden!important;overflow-y:auto!important;padding-bottom:88px!important}
  .dt-shell{position:static!important;height:auto!important;min-height:100vh!important;max-height:none!important;overflow:visible!important}
  .dt-main{position:static!important;height:auto!important;min-height:0!important;max-height:none!important;overflow:visible!important}
  .dt-content-layout,.dt-left-content,.dt-genre-side,.dt-section{height:auto!important;max-height:none!important;overflow-y:visible!important}
}

/* V7.16 — advertising banner keeps its designed 1200x250 shape and never grows with wide pages */
.dt-left-content .dt-ad-wrap{
  width:100%!important;
  max-width:1200px!important;
  min-width:0!important;
}
.dt-left-content .dt-ad-slider{
  width:100%!important;
  max-width:1200px!important;
  aspect-ratio:24 / 5!important;
  height:auto!important;
  min-height:0!important;
  max-height:250px!important;
}
.dt-left-content .dt-ad-slide,
.dt-left-content .dt-ad-slide a,
.dt-left-content .dt-ad-slide>span,
.dt-left-content .dt-ad-slide img{
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
}
.dt-left-content .dt-ad-slide img{
  object-fit:contain!important;
}
@media(max-width:700px){
  .dt-left-content .dt-ad-wrap,.dt-left-content .dt-ad-slider{max-width:100%!important}
  .dt-left-content .dt-ad-slider{aspect-ratio:24 / 5!important;height:auto!important;max-height:none!important}
}

/* V7.16 — fixed desktop advertising canvas */
@media (min-width:901px){
.dt-left-content .dt-ad-wrap{width:900px!important;max-width:100%!important}
.dt-left-content .dt-ad-slider{width:900px!important;height:187.5px!important;max-width:100%!important;max-height:187.5px!important;aspect-ratio:auto!important;flex:none!important}
}
@media (max-width:900px){
.dt-left-content .dt-ad-wrap{width:100%!important;max-width:100%!important}
.dt-left-content .dt-ad-slider{width:100%!important;height:auto!important;max-width:100%!important;max-height:none!important;aspect-ratio:24/5!important}
}

/* V7.17 — centered advertising + branded player accent */
.dt-left-content .dt-ad-wrap{margin-left:auto!important;margin-right:auto!important}
.dt-player{border-top:3px solid var(--blue)!important;box-shadow:0 -8px 24px rgba(0,0,0,.16)}
.dt-minor{color:var(--blue)!important}
.dt-right input{accent-color:var(--blue)!important}
html[data-theme="light"] .dt-player{border-top:3px solid var(--blue)!important}

/* V7.18 — ad carousel controls below the bordered advertising frame */
.dt-ad-wrap .dt-ad-dots{position:static!important;left:auto!important;bottom:auto!important;transform:none!important;display:flex;justify-content:center;align-items:center;gap:6px;margin:9px 0 0;min-height:8px;z-index:auto}
.dt-ad-wrap .dt-ad-dot{width:7px;height:7px;flex:0 0 7px}
.dt-ad-wrap:has(.dt-ad-slider[data-count="1"]) .dt-ad-dots{display:none!important}

/* V7.19: pagination dots physically outside the advertisement box */
.dt-ad-dots-outside{position:static!important;transform:none!important;display:flex!important;justify-content:center;align-items:center;gap:7px;width:900px;max-width:100%;margin:9px auto 20px!important;min-height:8px;background:transparent!important}
.dt-ad-dots-outside[data-count="1"]{display:none!important}
@media(max-width:900px){.dt-ad-dots-outside{width:100%;margin-top:8px!important}}

.dt-site-live{font-size:12px;color:var(--muted);white-space:nowrap}.dt-site-live b{color:var(--blue);font-weight:800}@media(max-width:700px){.dt-site-live{font-size:11px}}

/* V7.24 — keep public "listening now" visible in the mobile player */
@media(max-width:700px){
  .dt-player .dt-now{
    min-width:0!important;
    overflow:visible!important;
  }
  .dt-player .dt-now>div{
    min-width:0!important;
    overflow:visible!important;
  }
  .dt-player #dtSiteLive.dt-site-live{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    position:static!important;
    width:auto!important;
    max-width:100%!important;
    height:auto!important;
    margin-top:2px!important;
    overflow:visible!important;
    white-space:nowrap!important;
    font-size:10px!important;
    line-height:1.15!important;
    color:var(--muted)!important;
  }
  .dt-player #dtSiteLive.dt-site-live b{
    display:inline!important;
    color:var(--blue)!important;
  }
}

/* V7.25 — listener count belongs to station info, not desktop-only volume area */
.dt-now>div{min-width:0}
.dt-now #dtSiteLive.dt-site-live{display:block;margin-top:2px;line-height:1.15}
@media(max-width:700px){
 .dt-now #dtSiteLive.dt-site-live{display:block!important;font-size:10px!important;white-space:nowrap!important}
}

/* V7.26 — All Stations / Country / Genre results show the complete list */
.dt-popular.dt-results-view .dt-stations{
 display:grid!important;
 grid-template-columns:repeat(auto-fill,128px)!important;
 gap:14px!important;
 overflow:visible!important;
 max-height:none!important;
 height:auto!important;
 flex-wrap:unset!important;
}
.dt-popular.dt-results-view .dt-station{width:128px!important;min-width:128px!important}
@media(max-width:700px){
 .dt-popular.dt-results-view .dt-stations{
  grid-template-columns:repeat(auto-fill,minmax(104px,1fr))!important;
  gap:10px!important;
 }
 .dt-popular.dt-results-view .dt-station{width:100%!important;min-width:0!important}
}

/* V7.48 mini player */
.dt-popout{border:0;background:transparent;color:var(--blue);font-size:18px;cursor:pointer;padding:4px 5px;border-radius:8px}.dt-popout:hover{background:rgba(19,159,245,.12)}@media(max-width:700px){.dt-popout{font-size:16px;padding:3px}}

/* V7.49 — home logo, mobile station navigation, bounded sidebar lists */
.dt-brand-home{display:block;color:inherit;text-decoration:none;cursor:pointer}
.dt-brand-home:hover .dt-logo{opacity:.92}
.dt-mobile-station-nav{display:none}
@media(min-width:1101px){
  .dt-genre-side{align-self:start}
  .dt-side-countries .dt-country-grid,
  .dt-side-genres .dt-genre-grid{
    max-height:300px!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    padding-right:6px;
    scrollbar-width:thin;
    scrollbar-color:var(--blue) transparent;
  }
  .dt-side-countries .dt-country-grid::-webkit-scrollbar,
  .dt-side-genres .dt-genre-grid::-webkit-scrollbar{width:6px}
  .dt-side-countries .dt-country-grid::-webkit-scrollbar-thumb,
  .dt-side-genres .dt-genre-grid::-webkit-scrollbar-thumb{background:var(--blue);border-radius:10px}
}
@media(max-width:1100px){
  .dt-genre-side>.dt-side-nav{display:none!important}
  .dt-mobile-station-nav{display:grid;grid-template-columns:1fr 1fr;gap:8px;width:100%;margin:0 0 16px}
}

/* V7.50 — hide Random Mix while viewing a country */
.dt-random.dt-country-hidden{display:none!important}
