:root{--radio-cyan:#77e3f6;--radio-muted:#9dafc2;--radio-line:#314759;--radio-bg:#07111c}body{background:radial-gradient(ellipse at 0 10%,#12304488,transparent 45%),#060c14}button,input,select{font:inherit}button{cursor:pointer;color:#e9f6ff;background:linear-gradient(160deg,#253b4d,#101c29);border:1px solid #526b7e;border-radius:13px;padding:11px 16px;box-shadow:inset 0 1px #ffffff16,0 3px 0 #02070c}button:hover{border-color:var(--radio-cyan);filter:brightness(1.15)}button:disabled{opacity:.4;cursor:default;filter:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--radio-cyan);outline-offset:4px}button.primary{color:#041724;background:linear-gradient(135deg,#95efff,#42bfdc);border-color:#a4f5ff;font-weight:700}button.quiet{background:transparent;box-shadow:none;color:var(--radio-muted);font-size:.85rem}.radio-main{max-width:1180px;padding:50px 24px 35px;margin:auto}.radio-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:34px}.radio-heading h1{font-size:clamp(2.8rem,5vw,4.7rem);line-height:1.05;letter-spacing:-.05em;margin:15px 0 18px}.radio-heading h1 span{color:var(--radio-cyan)}.lead{color:#b4c6d5;font-size:1.08rem}.live-badge{color:var(--radio-cyan);letter-spacing:.12em;font-size:.75rem;border:1px solid #456776;padding:12px 18px;border-radius:40px;white-space:nowrap}.radio-layout{display:grid;grid-template-columns:370px minmax(0,1fr);gap:28px;align-items:start}.glass{border:1px solid #5b7182;border-radius:24px;background:linear-gradient(145deg,#283b4a,#0c1823 45%,#101e2b 80%,#293c4a);box-shadow:inset 0 1px 1px #ffffff24,0 20px 50px #0005}.player{padding:25px;position:sticky;top:110px;text-align:center}.player-top{display:flex;justify-content:space-between;align-items:center;gap:8px}.label{color:var(--radio-muted);font-size:.65rem;letter-spacing:.15em;font-weight:700}.state{color:var(--radio-cyan);font-size:.72rem}.radio-icon{height:110px;width:110px;margin:35px auto 24px;border:1px solid #7cc9df;border-radius:30px;display:grid;place-items:center;font-size:65px;color:var(--radio-cyan);box-shadow:0 0 45px #57d8fb19,inset 0 0 20px #5fddff22;background:linear-gradient(145deg,#24465b,#071723)}.player h2{font-size:1.8rem;line-height:1.2;margin:0 0 8px;overflow-wrap:anywhere}.player p{color:var(--radio-muted);line-height:1.5}.wave{height:65px;display:flex;justify-content:center;align-items:center;gap:4px;margin:15px 0}.wave i{display:block;background:var(--radio-cyan);width:3px;height:var(--h);border-radius:4px;opacity:.4;transform:scaleY(.4)}.is-playing .wave i{animation:pulse .8s ease-in-out infinite alternate;animation-delay:var(--d);opacity:.9}@keyframes pulse{to{transform:scaleY(1)}}.transport{display:flex;justify-content:center;align-items:center;gap:12px;margin-bottom:26px}.round{border-radius:50%;width:43px;height:43px;padding:0}.play-button{width:70px;height:70px;border-radius:50%;font-size:27px;color:var(--radio-cyan);border:2px solid #82d6ed;background:radial-gradient(circle at 40% 30%,#416b82,#0b1b29 65%);box-shadow:0 0 25px #76d9ff20,inset 0 0 14px #9feaff20}.volume-label{display:flex;justify-content:space-between;font-size:.8rem;color:var(--radio-muted)}input[type=range]{accent-color:var(--radio-cyan);width:100%;cursor:pointer;margin:12px 0 22px}.timer-row{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:.85rem}.timer-row select{width:auto}.fine{font-size:.76rem!important;line-height:1.6;color:var(--radio-muted);margin-top:16px}.notice{border:1px solid #355265;border-radius:10px;padding:10px;font-size:.8rem}.notice.error{border-color:#b45568;color:#ffacba}.section-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:6px 0 20px}.section-head h2{font-size:1.8rem;margin:7px 0}.section-head h2 span{font-size:.9rem;color:var(--radio-cyan);background:#203444;padding:5px 10px;border-radius:30px}.library-tools{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;margin-bottom:20px}.station-list{display:flex;flex-direction:column;gap:12px;max-height:650px;overflow-y:auto;padding:2px 8px 10px 2px;scrollbar-color:#70dcef #1b2b38;scrollbar-width:auto}.station{padding:16px 18px;border:1px solid #415b6e;border-radius:20px;background:linear-gradient(120deg,#192e3f,#0c1926);box-shadow:inset 0 1px #ffffff0c,0 5px 12px #0003}.station.active{border-color:var(--radio-cyan);box-shadow:0 0 20px #5ee0ff12}.station-top{display:flex;align-items:center;gap:12px}.station-number{color:var(--radio-cyan);font-size:1.25rem;border:1px solid #365a72;padding:12px;border-radius:13px}.station-info{flex:1;min-width:0}.station-info h3{margin:0 0 4px;font-size:1.08rem;overflow-wrap:anywhere}.station-info p{color:var(--radio-muted);font-size:.72rem;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.station-actions{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;padding-top:13px;margin-top:13px;border-top:1px solid #293f50}.station-actions button{padding:6px;font-size:.85rem}.station-actions .delete{color:#ffa3b5;background:linear-gradient(#57303e,#321c29);border-color:#805064}.empty{padding:40px 30px;text-align:center}.empty>span{font-size:3rem;color:var(--radio-cyan)}.empty h3{font-size:1.5rem}.empty p{color:var(--radio-muted);line-height:1.7}.empty button{margin-top:14px}.radio-notes{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;border-top:1px solid #273c4d;margin-top:50px;padding-top:30px}.radio-notes span{color:var(--radio-cyan);letter-spacing:.1em;font-size:.68rem}.radio-notes h3{font-size:1.1rem}.radio-notes p{color:var(--radio-muted);font-size:.85rem;line-height:1.7}.radio-footer{display:flex;justify-content:center;flex-wrap:wrap;gap:20px;padding:30px 24px;color:var(--radio-muted);font-size:.8rem}.radio-footer a:hover{color:var(--radio-cyan)}dialog{background:linear-gradient(145deg,#223849,#081522);color:#f3f8ff;border:1px solid #66899f;border-radius:24px;max-width:650px;width:calc(100% - 30px);max-height:90dvh;padding:25px;box-shadow:0 30px 120px #000b}dialog::backdrop{background:#020810c9;backdrop-filter:blur(7px)}.dialog-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.dialog-head h2{margin:8px 0 20px}.dialog-head button{border-radius:50%;width:42px;height:42px;padding:0}form label{display:block;color:#b2c8d8;font-size:.85rem;margin-bottom:15px}input:not([type=range]),select{display:block;width:100%;background:#0b1925;color:#f5f9ff;border:1px solid #456075;border-radius:10px;padding:12px;margin-top:7px;min-width:0}form .primary{width:100%}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.search-results{display:flex;flex-direction:column;gap:8px;max-height:42dvh;overflow:auto;scrollbar-color:#70dcef #1b2b38}.search-result{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid #2e485b;border-radius:12px;background:#112331}.search-result>div{flex:1;min-width:0}.search-result strong{display:block;overflow-wrap:anywhere}.search-result small{display:block;color:var(--radio-muted);margin-top:5px}#search-status{color:var(--radio-cyan);font-size:.85rem}#form-status{color:#ffafbe}.policy{max-width:980px;padding:clamp(20px,4vw,48px);margin:40px auto;line-height:1.8}.policy h1{font-size:clamp(2rem,4vw,3rem);line-height:1.15}.policy h2{font-size:1.35rem;color:var(--radio-cyan);margin-top:35px}.policy p,.policy li{color:#c1cfdb}.policy a{color:var(--radio-cyan);overflow-wrap:anywhere}.policy code{overflow-wrap:anywhere}.policy ul{padding-left:22px}[hidden]{display:none!important}@media(max-width:850px){.radio-layout{grid-template-columns:1fr 1.2fr;gap:18px}.radio-main{padding:30px 16px}.player{padding:20px}.section-head{flex-wrap:wrap}.station-actions{gap:5px}.policy{margin:24px 16px}.radio-heading{align-items:flex-start}.live-badge{display:none}}@media(max-width:650px){.radio-layout{grid-template-columns:1fr}.player{position:static}.radio-heading h1{font-size:3.2rem}.radio-icon{width:80px;height:80px;font-size:48px;margin:20px auto 14px}.wave{height:50px;margin:8px 0}.radio-notes{grid-template-columns:1fr;gap:10px}.station-list{max-height:580px}.transport{margin-bottom:18px}.form-row{grid-template-columns:1fr}.site-header{position:relative;top:0}.nav{flex-wrap:wrap}.section-head .primary{font-size:.85rem}.radio-footer{gap:12px}}@media(prefers-reduced-motion:reduce){.wave i{animation:none!important}html{scroll-behavior:auto}}

/* Night-glass radio desk: desktop follows the reference; mobile stacks naturally. */
body{background:radial-gradient(circle at 10% 45%,#003d6580,transparent 38%),radial-gradient(circle at 92% 80%,#07334c70,transparent 38%),#020810}
body::before{background-size:64px 64px;opacity:.65;mask-image:none}
.radio-main{max-width:1320px;padding-top:30px}.compact-heading{margin-bottom:22px}.compact-heading h1{font-size:1.9rem;line-height:1.15;margin:4px 0}.compact-heading h1 br{display:none}.compact-heading h1 span{margin-left:8px}.compact-heading .eyebrow,.compact-heading .lead{display:none}
.radio-layout{grid-template-columns:365px minmax(0,1fr);gap:32px;align-items:start}.player{top:100px;padding:26px 25px;min-height:710px}.glass,.station{border:1px solid #78b7dc;background:linear-gradient(125deg,#27486577,transparent 23%,#011020bb 52%,#35587944 66%,#031121 80%),linear-gradient(165deg,#10263a,#030f1b);box-shadow:inset 0 0 0 3px #7fc5ff14,inset 0 0 0 5px #c3e7ff13,inset 0 1px 12px #b3e7ff22,0 0 0 2px #264863,0 0 22px #23aaff32,0 18px 35px #0008;position:relative}.player::before,.station::before{content:"";position:absolute;inset:4px;border:1px solid #70c6ff2e;border-radius:inherit;pointer-events:none}.player{position:sticky}.station{border-radius:20px;padding:17px 20px}.station:hover{border-color:#b0e9ff}.station.active{border-color:#9feaff;box-shadow:inset 0 0 12px #49b7ff22,0 0 0 2px #336587,0 0 24px #1aafff45}.station-list{gap:18px;padding:5px 10px 15px 5px;max-height:790px;scrollbar-gutter:stable}.station-top>.round{border:1px solid #8ddfff;color:#bcf4ff;background:radial-gradient(circle at 35% 25%,#436d86,#061625 70%);box-shadow:inset 0 0 0 3px #ffffff12,0 0 12px #3bbaff60;width:49px;height:49px;font-size:21px}.station-actions{padding-top:10px;margin-top:12px}.station-actions button{background:linear-gradient(#233b51,#061320);border-color:#536d85;box-shadow:inset 0 1px #bedcff22,0 3px 0 #01060c}.station-actions .delete{background:linear-gradient(#4a2035,#190b17);border-color:#82445f}.radio-icon{background:linear-gradient(130deg,#316b8b,#031221 45%);box-shadow:inset 0 0 0 3px #a7deff14,0 0 0 2px #244c68,0 0 26px #00b7ff40}.play-button{box-shadow:inset 0 0 0 3px #d9f5ff15,inset 0 0 20px #7ee0ff25,0 0 18px #00b7ff55}.search-bulk{display:flex;gap:15px;align-items:center;margin:16px 0}.search-bulk .fine{margin:0}@media(min-width:1000px){.radio-notes{margin-top:35px}.player #now-title{margin-top:5px}.radio-icon{margin-top:30px}.player .wave{margin:20px 0}.library .section-head{margin-top:12px}}
@media(max-width:900px){.radio-layout{grid-template-columns:300px minmax(0,1fr);gap:22px}.player{padding:23px 18px}.station{padding:14px}.section-head{flex-wrap:wrap}.radio-main{padding:25px 18px}.station-actions{gap:5px}}
@media(max-width:680px){.radio-layout{grid-template-columns:1fr}.player{position:relative;top:auto;min-height:0}.compact-heading h1{font-size:1.6rem}.compact-heading h1 span{display:block;margin-left:0}.radio-icon{margin-top:20px}.station-list{max-height:650px}.search-bulk{flex-wrap:wrap}}

/* Static perspective is rendered locally; no server or animation loop required. */
.radio-main{max-width:1370px}.radio-layout{gap:40px;padding:18px 12px 22px;isolation:isolate}.library{min-width:0}.player{transform:perspective(1500px) rotateY(7deg) rotateZ(1.1deg);transform-origin:50% 45%;border-radius:28px;box-shadow:inset 0 0 0 2px #afe4ff55,inset 0 0 0 5px #244e6d,inset 0 0 0 7px #8cd4ff33,inset 0 0 28px #93d8ff30,5px 3px 0 #2c6082,8px 5px 0 #0c2940,0 0 24px #28b5ff66,0 25px 40px #000a}.player::after,.station::after{content:'';position:absolute;pointer-events:none;border-radius:inherit;inset:1px;background:linear-gradient(123deg,transparent 34%,#b2dfff0b 43%,#b2dfff22 47%,transparent 53%,transparent 70%,#b2dfff08 78%,transparent 85%);z-index:0}.player>*{position:relative;z-index:1}.station{transform:perspective(1500px) rotateY(-4deg) rotateZ(-.7deg);transform-origin:center;box-shadow:inset 0 0 0 2px #9bd4ff25,inset 0 0 0 5px #6ab9ff14,inset 0 1px 17px #9cdaff2e,3px 2px 0 #285272,6px 4px 0 #071d30,0 0 18px #26a6ff3d,0 14px 24px #0007}.station:nth-child(even){transform:perspective(1500px) rotateY(-4deg) rotateZ(.7deg)}.station>*{position:relative;z-index:1}.station.active,.station.search-hit{border-color:#b0f0ff;box-shadow:inset 0 0 0 2px #9bd4ff55,inset 0 0 20px #35aaff30,4px 3px 0 #23567d,0 0 26px #28c4ff65}.station.search-hit{outline:2px solid #ffd570;outline-offset:5px}.station-list{padding:15px 22px 24px 15px;gap:23px;scroll-padding-block:20px;overflow-x:hidden}.radio-icon{border-radius:28px}.station-number{background:linear-gradient(135deg,#193d56,#061422);box-shadow:inset 0 1px #b6e8ff1c,0 4px 8px #0004}.radio-main:after{content:'';position:relative;display:block;height:35px;background:radial-gradient(ellipse at 17% 15%,#16aaff55,transparent 20%),radial-gradient(ellipse at 80% 0,#16aaff22,transparent 35%);pointer-events:none}.library-tools{align-items:center;gap:10px}.find-saved{display:flex;flex:1 1 225px;gap:7px;align-items:center;margin:0}.find-saved input[type=search]{margin:0;min-width:80px;font-size:.85rem;padding:11px 12px}.find-saved button{font-size:.85rem}.find-saved-status{font-size:.82rem;color:#8de6ff;line-height:1.5;margin:0 0 8px}.find-saved-status:empty{display:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.library-tools #open-add{font-size:.85rem}.library-tools #erase{margin-left:auto}.radio-notes{margin-top:20px}
@media(min-width:1000px){.radio-main{padding-top:22px}.player{top:25px}.station{padding:16px 18px}.station-actions{margin-top:10px}.station-actions button{padding:6px}.section-head h2{font-size:1.9rem}}
@media(max-width:900px){.radio-layout{gap:25px;padding-inline:6px}.player{transform:perspective(1500px) rotateY(3deg) rotateZ(.5deg)}.find-saved{flex-basis:100%}.library-tools #erase{margin-left:0}.station-list{padding-inline:10px}.station,.station:nth-child(even){transform:perspective(1500px) rotateY(-2deg)}}
@media(max-width:680px){.radio-layout{padding:10px 4px}.player{transform:none;position:relative;top:auto}.station,.station:nth-child(even){transform:none}.station-list{padding:12px 12px 22px 8px;gap:18px}.radio-main{padding-inline:14px}.find-saved{order:3;flex-basis:100%}.library-tools #erase{margin-left:auto}}
@media(prefers-reduced-motion:reduce){.player,.station,.station:nth-child(even){transform:none}.station-list{scroll-behavior:auto}}

/* Parallel station faces, compact actions and polished frame reflections. */
.station,.station:nth-child(even){transform:perspective(1600px) rotateY(-4deg) rotateZ(-.7deg);transform-origin:50% 50%;transition:border-color .2s,background-color .2s,box-shadow .2s}
.station-actions{display:flex;justify-content:flex-start;gap:8px;padding-top:10px}.station-actions button{flex:0 0 auto;width:76px;min-height:34px;padding:6px 8px;font-size:.8rem}.station-actions button:nth-child(-n+2){width:48px}.station-actions .delete{width:76px}
.player{background:linear-gradient(125deg,#81caff14,transparent 22%,#00071166 47%,#91cfff12 60%,transparent 70%),linear-gradient(155deg,#17394f,#061523 45%,#07131f);border-color:#b0e7ff;box-shadow:inset 0 0 0 1px #e4f8ff9c,inset 0 0 0 3px #4387b6,inset 0 0 0 5px #071a2d,inset 0 0 0 7px #8ddaff62,inset 0 0 22px #60c3ff38,4px 2px 0 #b5eaff66,7px 4px 0 #174465,10px 7px 0 #06192b,0 0 22px #30aaff70,0 25px 40px #0009}
.player::before{inset:2px;border:2px solid transparent;background:conic-gradient(from 35deg,#0b37550d 0deg,#6dc8ff99 26deg,#e8fbffed 31deg,#8ed9ff99 36deg,#0c284212 58deg,#0c284212 106deg,#43b8ffb0 124deg,#ecfcffff 131deg,#5cbeffb0 140deg,#0b2f4c11 166deg,#0b2f4c11 236deg,#c3f4ffb8 251deg,#ffffffed 255deg,#79cdff80 261deg,#09274311 290deg,#0b37550d 360deg) border-box;mask:linear-gradient(#fff 0 0) padding-box,linear-gradient(#fff 0 0);mask-composite:exclude;box-shadow:inset 0 0 6px #b1e6ff30;z-index:2}
.player::after{inset:7px;background:linear-gradient(123deg,transparent 17%,#c1e9ff0b 23%,#bce9ff22 27%,transparent 33%,transparent 62%,#a6dbff0d 70%,transparent 78%);box-shadow:inset 1px 1px 1px #c8edff33,inset -1px -1px 8px #91dcff1f}
.station.playing{border-color:#a3f5ff;background:linear-gradient(125deg,#1f759455,transparent 38%,#2d72863b 68%,transparent 80%),linear-gradient(165deg,#123d51,#051827);box-shadow:inset 0 0 0 2px #a2f2ff66,inset 0 0 0 5px #4bb4d92b,inset 0 0 25px #41d9ff27,3px 2px 0 #2d799a,6px 4px 0 #09283b,0 0 22px #3cdaff65,0 12px 25px #0008}
.station.playing .station-number{background:linear-gradient(#287c93,#0b3446);border-color:#8decff;color:#daffff}.station.playing .station-top>.round{color:#e6ffff;border-color:#c6fcff;box-shadow:inset 0 0 0 3px #bbffff24,0 0 19px #52e5ff85}.station-playing-label{display:block;margin-top:5px;font-size:.64rem;letter-spacing:.12em;font-weight:700;color:#88efff}.station.playing h3{color:#daffff}
@media(max-width:900px){.station,.station:nth-child(even){transform:perspective(1600px) rotateY(-2deg) rotateZ(-.4deg)}}
@media(max-width:680px){.station,.station:nth-child(even){transform:none}.station-actions button{width:66px}.station-actions button:nth-child(-n+2){width:42px}.station-actions .delete{width:66px}.station-actions{gap:6px}}
@media(prefers-reduced-motion:reduce){.station,.station:nth-child(even){transform:none;transition:none}}

/* Station faces remain parallel to the page; the radio retains its perspective. */
.station,.station:nth-child(even){transform:none}
.spectrum-shell{position:relative;margin:20px 0 22px;padding:11px 10px 6px;border:1px solid #284c45;border-radius:12px;background:linear-gradient(#020a0d,#071913);box-shadow:inset 0 3px 13px #000b,0 0 15px #00e8990a;overflow:hidden}
#spectrum{display:block;width:100%;height:auto;aspect-ratio:640/230}.spectrum-labels{display:flex;justify-content:space-between;color:#6c9c89;font-size:.57rem;letter-spacing:.03em}
/* Moving highlights stay outside interactive content and cannot intercept clicks. */
.player::before{animation:frame-reflections 11s linear infinite}
@keyframes frame-reflections{0%{background-position:0% 0%}50%{background-position:100% 100%}100%{background-position:0% 0%}}
.player::before{background-size:220% 220%}
body::after{background:radial-gradient(circle at 12% 27%,#78dfffbd 0 1px,#55beff2d 2px,transparent 6px),radial-gradient(circle at 83% 38%,#71ddffd9 0 1px,#48afff3d 2px,transparent 7px),radial-gradient(circle at 29% 78%,#7ddfffbb 0 1px,#36b9ff3d 3px,transparent 8px),radial-gradient(circle at 94% 82%,#a3ecffbb 0 1px,#25aaff30 3px,transparent 10px),radial-gradient(circle at 60% 15%,#63bfff99 0 1px,transparent 5px);opacity:.6;animation:drifting-reflections 20s ease-in-out infinite alternate;pointer-events:none}
@keyframes drifting-reflections{from{transform:translate3d(-10px,-12px,0);opacity:.35}to{transform:translate3d(20px,25px,0);opacity:.8}}
.effects-paused::after,.effects-paused .player::before{animation-play-state:paused}
@media(prefers-reduced-motion:reduce){body::after,.player::before{animation:none}}

/* Thick optical glass: layered bevel, cold edge and bright corner reflections. */
.player{border:1px solid #e2f7ff;border-radius:30px;background:radial-gradient(ellipse at 4% 3%,#e1f8ff2b,transparent 24%),radial-gradient(ellipse at 96% 98%,#48c4ff2b,transparent 30%),linear-gradient(123deg,transparent 16%,#c3eaff0e 22%,#c3eaff29 27%,transparent 34%,transparent 57%,#b1e1ff10 66%,transparent 73%),linear-gradient(155deg,#1c3e53ed,#061624f5 47%,#071723f2);box-shadow:inset 0 0 0 1px #ffffffd6,inset 0 0 0 3px #79bfe0b3,inset 0 0 0 5px #132f49,inset 0 0 0 7px #d5f3ff80,inset 0 0 0 9px #27769980,inset 0 0 0 12px #83d4ff18,inset 0 0 32px #93dcff35,inset 12px 7px 22px #a3e3ff1a,2px 1px 0 #effcffbd,4px 2px 0 #559abeb3,6px 3px 0 #153c5b,8px 4px 0 #94d4ef8c,10px 5px 0 #286383,13px 7px 0 #071b2d,15px 9px 0 #030c16,0 0 24px #3ebdff70,4px 10px 50px #2a9bff1c,0 30px 44px #000b}
.player::before{inset:2px;border-width:3px;box-shadow:inset 0 0 7px #e1f8ff8c,0 0 9px #c2f3ff4d}
.player::after{inset:9px;border-radius:22px;background:radial-gradient(ellipse at 0 0,#eaffff70,transparent 16%),radial-gradient(ellipse at 100% 100%,#9ce9ff50,transparent 19%),linear-gradient(124deg,transparent 15%,#e6f6ff08 20%,#d1efff20 26%,transparent 33%,transparent 61%,#d7f6ff0e 69%,transparent 77%);box-shadow:inset 2px 2px 2px #e4f9ff70,inset -2px -2px 3px #a5eaff73,inset 0 0 15px #88cfff24}
/* Gold and teal distinguish actual playback from selection and search results. */
.station.playing{border:2px solid #ffdc86;background:radial-gradient(ellipse at 0 45%,#22dfc33d,transparent 58%),linear-gradient(115deg,#125347,#10343d 48%,#182b3c 83%,#60472255),linear-gradient(#133b42,#0c2631);box-shadow:inset 0 0 0 1px #fff2c86b,inset 0 0 0 4px #f2ce6524,inset 6px 0 18px #40ffd41c,inset 0 0 28px #27ebc614,3px 2px 0 #a7874399,6px 4px 0 #342b19,0 0 20px #f4ca6545,0 0 35px #20d5bb24,0 13px 25px #0009}
.station.playing::before{inset:5px;border-color:#ffedb038;border-left:4px solid #ffe8a3;box-shadow:-3px 0 12px #ffdc7350}
.station.playing .station-number{background:linear-gradient(145deg,#ffe6a0,#cda246);border-color:#fff0bf;color:#172a2a;font-weight:750;box-shadow:inset 0 1px #fff9,0 0 13px #ffe08340}
.station.playing .station-playing-label{display:inline-flex;align-items:center;padding:5px 9px;border:1px solid #ffe29a99;border-radius:7px;margin-top:7px;background:#0b241fd9;color:#ffebac;font-size:.66rem;font-weight:800;letter-spacing:.15em;box-shadow:0 0 10px #ffd67919}
.station.playing .station-top>.round{background:radial-gradient(circle at 35% 20%,#fff0bb,#e4bd5e 47%,#b78429);color:#0c262c;border:2px solid #fff3ce;box-shadow:inset 0 0 0 3px #9a6f2338,0 0 20px #ffdf8299}
.station.playing h3{color:#fff5d7;font-weight:800}.station.playing .station-info p{color:#bce2d7}
@media(max-width:680px){.player{box-shadow:inset 0 0 0 1px #ffffffb3,inset 0 0 0 3px #79bfe0a6,inset 0 0 0 5px #132f49,inset 0 0 0 7px #d5f3ff66,inset 0 0 24px #93dcff33,3px 2px 0 #a9e5ff8c,6px 4px 0 #285b7b,8px 6px 0 #051320,0 0 20px #3ebdff4d,0 20px 34px #0009}}

/* Collection tools preserve the original station tile size. */
.collection-tools{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin:12px 0 18px}.collection-tabs{display:flex;flex-wrap:wrap;gap:6px}.collection-tabs button{padding:9px 11px;font-size:.8rem}.collection-tabs [aria-pressed=true]{color:#a7f5ff;border-color:#7ee5f4;background:linear-gradient(#24566c,#123444)}.category-filter{font-size:.72rem;color:#acc5d7;display:flex;align-items:center;gap:7px}.category-filter select{margin:0;font-size:.8rem;padding:8px;width:auto;max-width:190px}.backup-tools{display:flex;gap:7px;flex-wrap:wrap}.backup-tools button{font-size:.75rem;padding:9px 11px}#collection-status{color:#a7e9f2;font-size:.8rem;line-height:1.5}#collection-status:empty{display:none}.filter-empty{border:1px dashed #476779;padding:20px;border-radius:16px;text-align:center;color:#bad0db;margin:12px 0}.filter-empty button{font-size:.8rem}.favorite-button{width:33px;height:38px;padding:0;color:#b3c9d6;border-color:transparent;background:transparent;box-shadow:none;font-size:23px;flex-shrink:0}.favorite-button[aria-pressed=true]{color:#ffda7c;text-shadow:0 0 12px #ffd57055}.station-category{display:inline-block;font-size:.64rem;background:#142d3d;border:1px solid #3f6076;border-radius:5px;color:#b9deec;padding:2px 6px;margin-top:5px}.radio-check{display:flex;align-items:center;gap:9px;text-align:left;font-size:.72rem;line-height:1.45;color:#a9c6d5;margin:12px 0}.radio-check input[type=checkbox]{appearance:auto;width:17px;height:17px;margin:0;padding:0;background:none;border:0;accent-color:#79dfed;flex-shrink:0}.recover-stream{width:100%;font-size:.8rem;margin-top:10px;border-color:#d8ba73;color:#ffe19a}.visual-effects-off::after{opacity:0;animation:none}.visual-effects-off .player::before{animation:none}.visual-effects-off #spectrum{opacity:.45}.mobile-player{display:none}
@media(max-width:680px){.mobile-player:not([hidden]){position:fixed;display:flex;align-items:center;gap:10px;bottom:0;left:0;right:0;z-index:90;padding:10px 15px calc(10px + env(safe-area-inset-bottom));background:linear-gradient(#17313ff2,#06131bf5);border-top:1px solid #7ad3ee;box-shadow:0 -8px 25px #0008;backdrop-filter:blur(14px)}.mobile-player>div{flex:1;min-width:0}.mobile-player strong,.mobile-player span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mobile-player strong{font-size:.85rem}.mobile-player span{font-size:.65rem;color:#92c9dc;margin-top:4px}.mobile-player .round{flex-shrink:0;width:42px;height:42px;color:#9be6f5}.has-mobile-player{padding-bottom:calc(85px + env(safe-area-inset-bottom))}.collection-tools{gap:10px}.collection-tabs{width:100%}.category-filter select{max-width:200px}.station-top{gap:8px}}

/* Player artwork supplied by the owner. */
.player .radio-brand-art{width:142px;height:142px;padding:5px;margin:25px auto 20px;overflow:hidden;border-radius:25px;background:#050e18;box-shadow:inset 0 0 0 2px #9cddff20,0 0 0 2px #244c68,0 0 24px #00b7ff35}.radio-brand-art img{display:block;width:100%;height:100%;object-fit:contain;border-radius:19px}@media(max-width:680px){.player .radio-brand-art{width:120px;height:120px;margin:18px auto 16px;border-radius:23px}}

/* Visible listening guide and search-friendly page heading. */
.radio-heading.compact-heading h1{font-size:clamp(1.9rem,4.5vw,3.5rem);overflow-wrap:break-word}
.radio-heading .lead{max-width:760px;line-height:1.65}
.radio-guide{margin-top:38px;padding:clamp(20px,4vw,36px);border:1px solid var(--radio-line);border-radius:24px;background:#0c1823;color:#d5e3ee;line-height:1.75}
.radio-guide h2{font-size:clamp(1.25rem,2.5vw,1.65rem);line-height:1.3;margin:28px 0 14px;color:#e9f6ff}
.radio-guide h2:first-child{margin-top:0}
.radio-guide ol{padding-left:24px}
.radio-guide li{margin-bottom:8px}
.radio-guide details{border-top:1px solid var(--radio-line);padding:15px 0}
.radio-guide summary{cursor:pointer;font-weight:600;color:var(--radio-cyan)}
.radio-guide details p{margin:12px 0 0}
.radio-guide a{color:var(--radio-cyan);text-decoration:underline;text-underline-offset:3px}
@media(max-width:680px){.radio-heading.compact-heading{flex-wrap:wrap}.radio-guide{margin-top:24px}}

/* Selectable radio face based on the supplied two-panel reference. */
.style-select{display:block;margin:14px 0 18px;text-align:left;color:#a9c6d5;font-size:.76rem;font-weight:700}
.style-select select{margin-top:7px;padding:10px 12px;font-size:.85rem}
.panel-help{display:none;text-align:left;color:#9fd5e3;font-size:.7rem;line-height:1.5;margin:-6px 0 17px}
.radio-style-photo .panel-help{display:block}
body.radio-style-photo{background:radial-gradient(ellipse at 55% 57%,#102b3d75,transparent 58%),radial-gradient(ellipse at 5% 92%,#0b47735e,transparent 32%),#030b15}
.radio-style-photo .radio-main{max-width:1510px}
.radio-style-photo .radio-heading{margin-bottom:20px}
.radio-style-photo .radio-heading.compact-heading h1{font-size:clamp(2.6rem,5vw,4.35rem);line-height:1.03}
.radio-style-photo .radio-heading h1 span{color:#91e7ff}
.radio-style-photo .radio-layout{grid-template-columns:minmax(340px,390px) minmax(0,1fr);gap:75px;padding:30px 20px 28px;align-items:start;overflow:visible}
.radio-style-photo .player,.radio-style-photo .library{
  --panel-x:0px;--panel-y:0px;--panel-pitch:0deg;--panel-yaw:0deg;--panel-scale:1;
  backface-visibility:hidden;transform-style:flat;cursor:grab;
  border:1px solid #d8f7ff;border-radius:31px;
  background:
    radial-gradient(ellipse at 0 0,#ecfbff40,transparent 35%),
    radial-gradient(ellipse at 100% 100%,#58dfff26,transparent 32%),
    linear-gradient(118deg,transparent 12%,#e3f7ff18 24%,#d2f5ff07 31%,transparent 43%,transparent 66%,#aeefff0c 76%,transparent 84%),
    linear-gradient(145deg,#3f6177ee,#10283bf2 34%,#061522f7 72%,#214458f2);
  background-color:#061522;
  box-shadow:
    inset 0 0 0 1px #f0fdffb3,
    inset 0 0 0 3px #78bcd2b3,
    inset 0 0 0 5px #102f43,
    inset 0 0 0 7px #c8f6ff73,
    inset 0 0 0 9px #48a6c236,
    inset 8px 7px 24px #b4eaff26,
    inset -5px -6px 20px #53d7ff24,
    2px 1px 0 #e5fbffad,
    4px 2px 0 #477f9b,
    7px 4px 0 #9edbed66,
    10px 6px 0 #17475e,
    14px 9px 0 #061622,
    0 0 27px #48cfe65c,
    0 28px 55px #000b;
}
.radio-style-photo input{cursor:text}
.radio-style-photo input[type=range]{cursor:pointer}
.radio-style-photo .player{top:65px;min-height:0;padding:29px 29px 27px;transform:none;transform-origin:50% 45%;overflow:hidden;isolation:isolate}
.radio-style-photo .player .radio-brand-art{width:150px;height:150px;margin:30px auto 22px}
.radio-style-photo .player h2{font-size:2rem;font-style:italic;font-weight:800}
.radio-style-photo .spectrum-shell{border-color:#2b7a83;background:linear-gradient(#020b12,#051b20);box-shadow:inset 0 3px 15px #000d,0 0 17px #15d4e42e}
.radio-style-photo .play-button{color:#caffff;border-color:#a8f7ff;box-shadow:inset 0 0 0 3px #d9ffff3a,0 0 20px #65e6ffcf,0 0 34px #38e3ff80}
.radio-style-photo .volume-label output{color:#89f4ff;font-weight:700}
.radio-style-photo input[type=range]{accent-color:#7beeff}
.radio-style-photo .library{padding:32px 28px 24px;position:relative;z-index:1;overflow:hidden;transform:none;transform-origin:50% 45%}
.radio-style-photo .player.panel-transformed,.radio-style-photo .library.panel-transformed{transform:translate(var(--panel-x),var(--panel-y)) perspective(1400px) rotateX(var(--panel-pitch)) rotateY(var(--panel-yaw)) scale(var(--panel-scale))}
.radio-style-photo .panel-adjusting{will-change:transform;user-select:none;cursor:grabbing}
.radio-style-photo [data-panel]:focus-visible{outline:2px solid #a7f5ff;outline-offset:5px}
.radio-style-photo .player::before,.radio-style-photo .player::after,.radio-style-photo .library::before,.radio-style-photo .station::before,.radio-style-photo .station::after{content:none!important;animation:none!important}
.radio-style-photo .radio-main::after{display:none}
.radio-style-photo .radio-notes{border-top:none}
.radio-style-photo .library>*{position:relative}
.radio-style-photo .library .section-head{margin:0 0 20px}
.radio-style-photo .library .label{font-size:.8rem;letter-spacing:.31em;color:#94f4ff}
.radio-style-photo .library .section-head h2{font-size:clamp(2rem,3vw,3rem);line-height:1.08;margin:13px 0 0}
.radio-style-photo .library .section-head h2 span{display:inline-block;vertical-align:middle;font-size:1rem;letter-spacing:0}
.radio-style-photo .library-tools{justify-content:flex-start;gap:12px}
.radio-style-photo .library-tools #erase{margin-left:0}
.radio-style-photo .find-saved{flex:1 1 265px}
.radio-style-photo .station-viewport{overflow:hidden;isolation:isolate;clip-path:inset(0 round 15px);-webkit-mask-image:linear-gradient(#000,#000);mask-image:linear-gradient(#000,#000);cursor:auto}
.radio-style-photo .station-list{max-height:705px;gap:10px;padding:12px 14px 18px 10px;scrollbar-gutter:auto}
.radio-style-photo .station,.radio-style-photo .station:nth-child(even){
  flex:0 0 auto;padding:12px 14px;border:1px solid #6896ac;border-radius:19px;transform:none;overflow:hidden;isolation:isolate;
  background:linear-gradient(118deg,#d6f7ff12,transparent 25%,#acddff06 68%,transparent 78%),linear-gradient(140deg,#24485d,#071a2b 56%,#16374a);
  box-shadow:inset 1px 1px 3px #d5f8ff66,inset -2px -2px 5px #6bd7f233,inset 0 0 0 4px #94d5ee0c,0 8px 15px #0008;
}
.radio-style-photo .station.active{border-color:#79cadd;box-shadow:inset 0 0 18px #36d8ff3d,0 10px 20px #000b}
.radio-style-photo .station.playing{
  border-color:#e4bd69;
  background:radial-gradient(ellipse at 0 0,#f9d78124,transparent 60%),linear-gradient(118deg,#fff0c00d,transparent 37%,#e6b8540d 76%,transparent),linear-gradient(140deg,#263e46,#101f2c 58%,#34382c);
  box-shadow:inset 1px 1px 4px #fff0be8c,inset -2px -2px 7px #d9a84d38,inset 0 0 18px #e7bd4b21,0 0 12px #eac46066,0 8px 15px #0009;
}
.radio-style-photo .station.playing .station-number{background:linear-gradient(145deg,#695b33,#252c2b);color:#ffe9ae;border-color:#dfbd73;box-shadow:inset 0 1px 2px #fff0c440,0 0 12px #e9bd4726}
.radio-style-photo .station.playing h3{color:#fff3d5}
.radio-style-photo .station-playing-label{color:#ffe5a2!important;border-color:#d9b465!important;background:#302b1e!important}
.radio-style-photo .station-top>.round{color:#aaf7ff;border:2px solid #99f1ff;background:radial-gradient(circle at 38% 30%,#3b849b,#0b2737 72%);box-shadow:inset 0 0 0 2px #cffaff38,0 0 16px #4bdfff9c}
.radio-style-photo .station.playing .station-top>.round{color:#fff2c7;border-color:#f5da96;background:radial-gradient(circle at 36% 26%,#8c7848,#282c26 73%);box-shadow:inset 0 0 0 2px #fff0bf30,0 0 16px #eac2676b}
.radio-style-photo .station-actions{border-top-color:#4889a559}
/* The moving light is clipped inside its SVG and the masked station viewport. */
.station-rim{display:none}
.radio-style-photo .station>.station-rim{position:absolute;inset:0;width:100%;height:100%;overflow:hidden;pointer-events:none;z-index:2}
.radio-style-photo .station.playing>.station-rim{display:block}
.station-rim rect{width:calc(100% - 6px);height:calc(100% - 6px);fill:none;stroke-linecap:round}
.radio-style-photo .station.playing .station-rim rect{animation:station-gold-lap 10s linear infinite}
.station-rim-halo{stroke:#f3ce77;stroke-width:6;stroke-opacity:.3;stroke-dasharray:.3 99.7}
.station-rim-light{stroke:#fff9e8;stroke-width:2.8;stroke-dasharray:.08 99.92}
@keyframes station-gold-lap{from{stroke-dashoffset:0}to{stroke-dashoffset:-100}}
.radio-style-photo.visual-effects-off .station>.station-rim{display:none}
.radio-style-photo.effects-paused .station.playing .station-rim rect{animation-play-state:paused}
@media(prefers-reduced-motion:reduce){.radio-style-photo .station>.station-rim{display:none}}
@media(max-width:1000px){.radio-style-photo .radio-layout{grid-template-columns:minmax(290px,34%) minmax(0,1fr);gap:38px;padding-inline:9px}.radio-style-photo .library{padding:26px 18px}.radio-style-photo .player{padding:23px 18px}.radio-style-photo .library-tools{flex-wrap:wrap}}
@media(max-width:680px){.radio-style-photo .radio-layout{grid-template-columns:1fr;gap:25px;padding:20px 5px 18px}.radio-style-photo .player{position:relative;top:auto}.radio-style-photo .library{padding:24px 15px}.radio-style-photo .station-list{max-height:600px}.radio-style-photo .library .section-head h2{font-size:2rem}}

.clock-timer{margin:13px 0 17px;text-align:left;color:#b5d1de;font-size:.78rem}
.clock-timer>span{display:block;margin-bottom:7px}
.clock-fields{display:flex;align-items:end;gap:6px;flex-wrap:wrap}
.clock-fields label{display:flex;flex-direction:column;gap:3px;margin:0;color:#a9c6d5;font-size:.68rem}
.clock-fields label input{box-sizing:border-box;width:58px;margin:0;padding:9px 5px;text-align:center;font-size:.85rem}
.clock-fields>span{align-self:end;padding-bottom:9px;font-size:1.1rem}
.clock-fields button{align-self:end;padding:9px 10px;font-size:.72rem}
.clock-fields #clear-clock-timer{color:#b5cbd6;background:#102333}
.radio-style-photo .station-top>.round,.radio-style-photo .favorite-button{backface-visibility:hidden}

/* Reserve the playback badge's space so play/pause never adds a row. */
.station-actions{align-items:center}
.station-actions>button{flex-shrink:1}
.station-actions>.station-playing-label,.station.playing .station-actions>.station-playing-label{
  display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;
  margin:0 0 0 auto;padding:4px 6px;border:1px solid #d9b465;border-radius:7px;
  font-size:.6rem;line-height:1.2;font-weight:700;letter-spacing:.04em;white-space:nowrap;
}
.station-actions>.station-playing-label[hidden]{display:inline-flex!important;visibility:hidden}
.station.playing{border-width:1px}
@media(max-width:680px){
  .station-actions{gap:4px}
  .station-actions>button{padding:6px 3px;font-size:.7rem;min-width:24px}
  .station-actions>.station-playing-label,.station.playing .station-actions>.station-playing-label{font-size:.56rem;letter-spacing:0;padding:4px}
}
#playback-block-dialog p{color:#c8dce7;line-height:1.55;margin:0 0 20px}
.playback-block-actions{display:flex;gap:10px;flex-wrap:wrap}
.playback-block-actions a{display:inline-flex;align-items:center;justify-content:center;padding:11px 16px;border:1px solid #a4f5ff;border-radius:10px;background:linear-gradient(135deg,#95efff,#42bfdc);color:#041724;font-weight:700;text-decoration:none}
.playback-block-actions [hidden]{display:none}
