/* The station descriptions have their own row, outside every drag target. */
.station-tools{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:center;gap:12px;margin:22px auto 0;max-width:640px}
.station-tools .dial-label{position:static;inset:auto;min-width:0;min-height:44px;width:100%;padding:8px 3px;font-size:10px;letter-spacing:.08em;overflow-wrap:anywhere}
.station-tools .dial-label small{font-size:8px;line-height:1.6}
.station-tools .dial-label svg{width:18px;height:18px}
.station-tools .dial-country,.station-tools .dial-format{display:block;text-align:center}
.station-tools .dial-format small{display:block;margin-top:5px}
.dial-label-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;max-width:480px;margin:18px auto 0;font-size:12px;color:#b8c0cc;text-align:center;line-height:1.6}
.dial-label-row span{display:grid;gap:2px}
.dial-label-row output{color:#ff8a90;font-weight:650;font-variant-numeric:tabular-nums}
.dial-label-row-bottom{margin:0 auto 24px}
.dial-functional{margin:8px auto;aspect-ratio:1;max-width:480px}
.dial-functional .orb{width:62%}
.dial-functional .dial-controls{pointer-events:auto;overflow:visible;touch-action:none}
.dial-control{cursor:grab;outline:none;touch-action:none}
.dial-control:active{cursor:grabbing}
.dial-track{stroke:#667081;stroke-width:2;opacity:.6;pointer-events:none}
.dial-fill{stroke:#ff535c;stroke-width:3;stroke-linecap:round;pointer-events:none}
.dial-hit{stroke:transparent;stroke-width:44;vector-effect:non-scaling-stroke;pointer-events:stroke;touch-action:none}
.dial-thumb{fill:#ff535c;stroke:#ff535c44;stroke-width:7;vector-effect:non-scaling-stroke;pointer-events:none}
.dial-control:focus-visible .dial-track{stroke:#fff;opacity:1;stroke-width:4}
.dial-control:focus-visible .dial-thumb{stroke:#fff;stroke-width:3}
html.pc-ui .dial-control:focus-visible{outline:none;box-shadow:none}
@media(max-width:680px){
 .station-tools{gap:6px;margin-top:16px}
 .station-tools .dial-label{font-size:9px;letter-spacing:.035em}
 .station-tools .dial-label small{font-size:7px}
 .dial-functional{margin:4px auto}
}
@media(max-width:380px){.station-tools{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 12px}}

/* Original radio gradients, above the shared interface's flat backgrounds. */
html.pc-ui body:has(.console){background:radial-gradient(ellipse at 92% 9%,#393a3c 0,transparent 36%),linear-gradient(116deg,#1b1c1e 20%,#141517 65%,#262729)}
html.pc-ui body:has(.console) .station-panel{background:linear-gradient(100deg,#0c0d0f,#101113)}
html.pc-ui body:has(.console) .player-panel{background:linear-gradient(135deg,#ffffff04,transparent 38%,#ffffff03 38.1%,transparent 77%),repeating-linear-gradient(90deg,#ffffff01 0,#ffffff01 1px,transparent 1px,transparent 4px),#101113}
html.pc-ui body:has(.console) .orb{background:radial-gradient(circle at 36% 65%,#84202620 0,#5b202420 37%,#1c1517 69%,#101112 100%);box-shadow:inset 0 0 0 1px #a7616220,inset 0 0 44px #68212313,0 0 50px #c2252c07}
html.pc-ui body:has(.console) .spectrum-panel{background:linear-gradient(130deg,#0d0e0f,#161416)}
html.pc-ui body:has(.console) .wide-display{background:radial-gradient(ellipse at 15% 50%,#88272e1a,transparent 70%),#141214}

/* Existing library tracks retain the green status inside the red radio theme. */
html.pc-ui body:has(.console) .save-music.in-music{color:#32cd32;border-color:#32cd3255;background:#32cd3212}

/* Two independent metadata sources, together beside the player. */
html.pc-ui body:has(.console) .now-playing{max-width:720px;width:100%;padding:0;margin:4px auto 20px;gap:12px}
.track-cards{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;width:100%;min-width:0}
.track-cards[data-pair="true"]{grid-template-columns:repeat(2,minmax(0,1fr))}
html.pc-ui body:has(.console) .track-card{display:flex;flex-direction:column;align-items:center;gap:10px;min-width:0;padding:18px 16px;border:1px solid #ffffff16;border-radius:14px;background:linear-gradient(145deg,#ffffff04,#ffffff01);text-align:center}
html.pc-ui body:has(.console) .track-card.recognized-track{border-color:#72b7ff33;background:linear-gradient(145deg,#72b7ff09,#72b7ff02)}
.track-card-source{font-size:10px;font-weight:600;letter-spacing:.08em;color:#a0a8b4;line-height:1.5}
.recognized-track .track-card-source{color:#72b7ff}
html.pc-ui body:has(.console) .track-card strong,html.pc-ui body:has(.console) #spectrum-title[data-recognized="true"]{display:block;font-size:clamp(16px,1.5vw,20px);font-weight:600;line-height:1.45;letter-spacing:normal;text-transform:none;overflow-wrap:anywhere;max-width:100%;color:#fff;text-shadow:none}
html.pc-ui body:has(.console) .track-card #track-artist{color:#b8c0cc;font-size:14px;line-height:1.5;overflow-wrap:anywhere}
html.pc-ui body:has(.console) #spectrum-title[data-recognized="true"]{color:#72b7ff}
html.pc-ui body:has(.console) .track-card[data-state="unavailable"] strong,html.pc-ui body:has(.console) .track-card[data-state="loading"] strong,html.pc-ui body:has(.console) .track-card[data-state="external"] strong{font-size:14px;color:#a0a8b4}
.track-confirmation{color:#72b7ff;font-size:11px;line-height:1.5;overflow-wrap:anywhere}
html.pc-ui body:has(.console) #spectrum-title,.track-confirmation{opacity:1;transition:opacity .2s ease}
html.pc-ui body:has(.console) #spectrum-title[data-pending="true"],.track-confirmation[data-pending="true"]{opacity:.4}
.track-card-actions{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;width:100%;margin-top:auto;padding-top:4px}
html.pc-ui body:has(.console) .track-card .save-music{min-height:44px;max-width:100%;white-space:normal;line-height:1.5;text-align:center;flex:1 1 140px;margin:0}
html.pc-ui body:has(.console) .recognized-library-actions .save-music.in-music{color:#72b7ff;border-color:#72b7ff66;background:#72b7ff12}
html.pc-ui body:has(.console) .track-navigation{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;padding:0;border:1px solid #32cd3255;border-radius:9px;background:#32cd320b;color:#32cd32;font-size:21px}
html.pc-ui body:has(.console) .recognized-track .track-navigation{color:#72b7ff;border-color:#72b7ff66;background:#72b7ff0b}
.track-card .save-music-status{width:100%;overflow-wrap:anywhere;line-height:1.5}
@media(max-width:680px){.track-cards[data-pair="true"]{grid-template-columns:minmax(0,1fr)}html.pc-ui body:has(.console) .track-card{padding:16px 14px}.spectrum-sidebar>a{flex-shrink:0}}
@media(prefers-reduced-motion:reduce){html.pc-ui body:has(.console) #spectrum-title,.track-confirmation{transition:none}}

/* A one-column player must not inherit the intrinsic width of its title or SVG. */
html.pc-ui body:has(.console) :is(.page-shell,.console,.player-panel,.station-panel,.spectrum-panel,.spectrum-main,.player-bottom,.now-playing){min-width:0;max-width:100%;box-sizing:border-box}
html.pc-ui body:has(.console) .dial-functional{width:100%;min-width:0;max-width:480px;box-sizing:border-box}
html.pc-ui body:has(.console) .dial-controls{width:100%;height:100%;max-width:100%}
html.pc-ui body:has(.console) :is(.track-card strong,.track-card .track-card-artist,.track-card #track-artist){white-space:normal;overflow-wrap:anywhere;min-width:0}
.radio-background-note{max-width:100%;font-size:11px;line-height:1.6;color:#b8c0cc;overflow-wrap:anywhere}
@media(max-width:760px){
 html.pc-ui body:has(.console) .console{grid-template-columns:minmax(0,1fr)}
 html.pc-ui body:has(.console) .player-panel{grid-column:1;grid-row:1}
 html.pc-ui body:has(.console) .station-panel{grid-column:1;grid-row:3;border-right:0;border-top:1px solid var(--line)}
 html.pc-ui body:has(.console) .spectrum-panel{grid-column:1;grid-row:2;grid-template-columns:minmax(0,1fr)}
 html.pc-ui body:has(.console) .spectrum-sidebar{border-right:0}
 html.pc-ui body:has(.console) .station-stepper{max-width:100%}
 html.pc-ui body:has(.console) .dial-label-row{min-width:0;width:100%;max-width:100%}
}

html.pc-ui body:has(.console) #station-category{overflow-wrap:anywhere;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}

/* A single green glow on a new song, with no repeated flashing. */
.track-title-flash{animation:radio-title-green-glow 1.4s ease-out}
@keyframes radio-title-green-glow{0%,100%{text-shadow:none}18%,40%{color:#baffc1;text-shadow:0 0 6px #baffc1,0 0 18px #32cd32cc,0 0 36px #32cd3277}}
@media(prefers-reduced-motion:reduce){.track-title-flash{animation:none}}

/* Fit the complete embedded desktop console when the controls remain readable. */
@media(min-width:900px){
 html.pc-ui.pc-embedded.radio-fit .page-shell{padding:12px;max-width:1600px}
 html.pc-ui.pc-embedded.radio-fit :is(.intro,.page-footer){display:none}
 html.pc-ui.pc-embedded.radio-fit .console{height:calc(100dvh - 24px);grid-template-rows:minmax(0,1fr) 132px}
 html.pc-ui.pc-embedded.radio-fit .station-panel{min-height:0;height:100%;overflow:hidden}
 html.pc-ui.pc-embedded.radio-fit .station-list{flex:1;min-height:0;max-height:none}
 html.pc-ui.pc-embedded.radio-fit .station-panel-footer{padding:10px 18px}
 html.pc-ui.pc-embedded.radio-fit .player-panel{padding:10px 18px;display:flex;flex-direction:column;gap:4px;min-height:0}
 html.pc-ui.pc-embedded.radio-fit .player-panel>div{flex-shrink:0;margin:0 auto;width:100%}
 html.pc-ui.pc-embedded.radio-fit .player-heading{min-height:42px;display:flex;align-items:center;justify-content:center}
 html.pc-ui.pc-embedded.radio-fit .player-heading h2{font-size:18px;letter-spacing:3px;margin:0;line-height:1}.radio-fit .player-heading>.eyebrow{display:none}
 html.pc-ui.pc-embedded.radio-fit .station-tools{gap:8px}
 html.pc-ui.pc-embedded.radio-fit .station-tools .dial-label{padding:0 3px;font-size:9px;gap:2px;min-height:32px;line-height:1.2}
 html.pc-ui.pc-embedded.radio-fit .station-tools .dial-label small{font-size:7px}
 html.pc-ui.pc-embedded.radio-fit .dial-label-row{font-size:10px;line-height:1.3}
 html.pc-ui.pc-embedded.radio-fit .dial-label-row span{display:flex;justify-content:center;gap:5px}
 html.pc-ui.pc-embedded.radio-fit .player-panel>.dial-functional{width:var(--radio-fit-dial,220px);height:var(--radio-fit-dial,220px);max-width:100%;aspect-ratio:1}
 html.pc-ui.pc-embedded.radio-fit .orb strong{font-size:16px;margin-top:4px}
 html.pc-ui.pc-embedded.radio-fit .orb>span:not(.orb-kicker){font-size:7px;margin-top:3px}
 html.pc-ui.pc-embedded.radio-fit .orb .play-button{width:44px;height:44px;bottom:9%}
 html.pc-ui.pc-embedded.radio-fit .now-playing .track-card{padding:7px 12px;gap:3px}
 html.pc-ui.pc-embedded.radio-fit .track-card strong{font-size:13px;line-height:1.3}
 html.pc-ui.pc-embedded.radio-fit .track-card #track-artist{font-size:11px;line-height:1.3}
 html.pc-ui.pc-embedded.radio-fit .track-card-source{font-size:9px}
 html.pc-ui.pc-embedded.radio-fit .track-card .save-music{min-height:36px;font-size:11px}
 html.pc-ui.pc-embedded.radio-fit .track-card .track-navigation{height:36px}
 html.pc-ui.pc-embedded.radio-fit .station-stepper{height:32px}
 html.pc-ui.pc-embedded.radio-fit .player-bottom :is(#status,.radio-background-note){font-size:10px;line-height:1.4;margin:3px 0}
 html.pc-ui.pc-embedded.radio-fit .spectrum-panel{min-height:0;height:132px}
 html.pc-ui.pc-embedded.radio-fit .spectrum-sidebar{padding:10px 18px}
 html.pc-ui.pc-embedded.radio-fit .spectrum-sidebar strong{margin:5px 0 0}
 html.pc-ui.pc-embedded.radio-fit .spectrum-sidebar p{margin:4px 0}
 html.pc-ui.pc-embedded.radio-fit .spectrum-main{padding:8px 18px}
 html.pc-ui.pc-embedded.radio-fit .wide-display{height:62px}
 html.pc-ui.pc-embedded.radio-fit .wide-display canvas{top:20px;height:26px}
 html.pc-ui.pc-embedded.radio-fit .display-caption{top:5px}
 html.pc-ui.pc-embedded.radio-fit .frequency-labels{bottom:4px}
 html.pc-ui.pc-embedded.radio-fit .sound-controls{margin-top:6px;min-height:44px}
}

.track-card-actions:not(:has(button:not([hidden]))),.save-music-status:empty,#track-artist:empty{display:none}
.radio-track-favorites .rf-tools{justify-content:center;margin:12px 0}.radio-track-favorites .rf-note{font-size:10px}
@media(min-width:900px){
 html.pc-ui.pc-embedded.radio-fit .radio-track-favorites{position:absolute;left:0;top:0;width:auto;max-width:42%;text-align:left}
 html.pc-ui.pc-embedded.radio-fit .radio-track-favorites .rf-tools{flex-wrap:nowrap;gap:6px;margin:0}
 html.pc-ui.pc-embedded.radio-fit .radio-track-favorites .rf-tools button{font-size:10px;min-height:36px;padding:7px 9px}
 html.pc-ui.pc-embedded.radio-fit .radio-track-favorites .rf-open>span:first-child{font-size:0}
 html.pc-ui.pc-embedded.radio-fit .radio-track-favorites .rf-open>span:first-child::after{content:'Ulubione';font-size:10px}
 html.pc-ui.pc-embedded.radio-fit .radio-track-favorites .rf-note{display:none}
 html.pc-ui.pc-embedded.radio-fit .player-heading .live-chip{top:12px}
 html.pc-ui.pc-embedded.radio-fit .track-card-source{display:none}
 html.pc-ui.pc-embedded.radio-fit .station-tools .dial-label svg{width:14px;height:14px}
 html.pc-ui.pc-embedded.radio-fit .station-tools .dial-label{min-height:28px;line-height:1}
 html.pc-ui.pc-embedded.radio-fit .track-card #track-artist{font-size:10px;line-height:1.2}
 html.pc-ui.pc-embedded.radio-fit .player-bottom p{min-height:0}
}
