:root{
  --wine:#7a1738;--wine2:#9e2147;--coral:#e45a48;--orange:#f0803c;--gold:#d7a33d;--gold2:#f3cb72;
  --ink:#0a0d13;--ink2:#10151d;--panel:rgba(9,13,20,.88);--panel2:rgba(17,10,15,.86);
  --text:#fff8ef;--muted:#c9c4c6;--line:rgba(243,203,114,.42);--danger:#ff7588;--success:#7de3a1;
}
*{box-sizing:border-box}html{color-scheme:dark}body{margin:0;min-height:100vh;font-family:"Century Gothic","Trebuchet MS",Arial,sans-serif;color:var(--text);background:#0a0b22;overflow-x:hidden}
button,input,select{font:inherit}.brand-bg{position:fixed;z-index:-2;inset:0;overflow:hidden;background:
radial-gradient(ellipse at 50% 0%,rgba(122,43,190,.38),transparent 55%),radial-gradient(circle at 12% 78%,rgba(214,45,120,.22),transparent 40%),radial-gradient(circle at 88% 70%,rgba(243,160,52,.20),transparent 42%),linear-gradient(180deg,#0a0b22 0%,#0b0c1c 45%,#150a1f 100%)}
.brand-bg::before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(0deg,rgba(255,255,255,.012) 0 1px,transparent 1px 4px);pointer-events:none}
.brand-orb{position:absolute;border-radius:50%;filter:blur(2px);mix-blend-mode:screen;opacity:.30;animation:orbFloat 15s ease-in-out infinite alternate}.orb-1{width:320px;height:320px;left:-80px;top:-70px;background:#7a2bbe}.orb-2{width:220px;height:220px;left:120px;top:20px;background:#d62d78;animation-delay:-4s}.orb-3{width:150px;height:150px;left:310px;top:110px;background:#f5a43a;animation-delay:-7s}.orb-4{width:320px;height:320px;right:-105px;bottom:-85px;background:#5b2bb0}.orb-5{width:230px;height:230px;right:90px;bottom:40px;background:#e0485a;animation-delay:-5s}.orb-6{width:140px;height:140px;right:300px;bottom:170px;background:#f5c35a;opacity:.20;animation-delay:-9s}
.floating-note{position:absolute;color:rgba(245,195,90,.20);font-family:Georgia,serif;text-shadow:0 0 20px rgba(245,164,58,.35);animation:noteDrift 13s ease-in-out infinite alternate}.note-1{font-size:62px;left:7%;top:46%}.note-2{font-size:46px;left:34%;top:12%;animation-delay:-3s}.note-3{font-size:72px;right:17%;top:37%;animation-delay:-8s}.note-4{font-size:52px;right:8%;bottom:13%;animation-delay:-5s}.music-thread{position:absolute;width:48vw;height:150px;border-top:2px solid rgba(214,45,120,.20);border-radius:50%;filter:drop-shadow(0 0 12px rgba(214,45,120,.30));transform:rotate(-8deg)}.thread-1{left:-6%;bottom:22%}.thread-2{right:-8%;top:26%;transform:rotate(9deg);border-top-color:rgba(245,164,58,.20);filter:drop-shadow(0 0 12px rgba(245,164,58,.30))}
.eq-bg{position:absolute;left:0;right:0;bottom:0;height:34vh;display:flex;align-items:flex-end;justify-content:space-between;gap:.6vw;padding:0 1vw;opacity:.55;-webkit-mask-image:linear-gradient(to top,#000 20%,transparent);mask-image:linear-gradient(to top,#000 20%,transparent)}
.eq-bg i{flex:1;max-width:3.2vw;height:100%;transform-origin:bottom;transform:scaleY(.3);border-radius:3px 3px 0 0;background:linear-gradient(to top,#7a2bbe,#d62d78 45%,#f5a43a 80%,#ffe08a);box-shadow:0 0 14px rgba(214,45,120,.35);animation:eqBars 1.6s ease-in-out infinite alternate}
.eq-bg i:nth-child(3n){animation-duration:1.1s;animation-delay:-.4s}.eq-bg i:nth-child(3n+1){animation-duration:2.1s;animation-delay:-.9s}.eq-bg i:nth-child(5n){animation-duration:1.4s;animation-delay:-1.3s}.eq-bg i:nth-child(7n){animation-duration:.9s;animation-delay:-.2s}
@keyframes eqBars{0%{transform:scaleY(.12)}35%{transform:scaleY(.62)}70%{transform:scaleY(.35)}100%{transform:scaleY(.92)}}
@media(prefers-reduced-motion:reduce){.eq-bg i,.brand-orb,.floating-note{animation:none}}
@keyframes orbFloat{to{transform:translate3d(18px,-16px,0) scale(1.05)}}@keyframes noteDrift{to{transform:translate3d(14px,-22px,0) rotate(7deg)}}

.topbar{position:relative;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 22px;flex-wrap:wrap;background:linear-gradient(180deg,rgba(5,8,13,.94),rgba(8,8,12,.68));backdrop-filter:blur(18px);border-bottom:1px solid var(--line);box-shadow:0 12px 36px rgba(0,0,0,.28)}
.brand-hitbox{border:0;background:transparent;padding:0;cursor:pointer;display:flex;align-items:center}.logo{height:116px;width:auto;max-width:min(35vw,300px);object-fit:contain;filter:drop-shadow(0 8px 24px rgba(0,0,0,.32))}.logo-fallback{display:none;flex-direction:column;line-height:.95;color:#fff;font-size:24px}.logo-fallback.show{display:flex}.logo-fallback strong{font-size:31px;color:var(--gold2);font-style:italic}.logo-fallback small{margin-top:6px;color:#ff4964;font-size:10px;letter-spacing:1.4px}
.weather-zone{flex:1;min-width:360px}.weather-row{display:flex;justify-content:center;gap:8px;flex-wrap:wrap}.weather-source{text-align:center;margin-top:5px;color:rgba(255,248,239,.52);font-size:9px;letter-spacing:1.2px}.weather-card{display:grid;grid-template-columns:38px auto;grid-template-areas:"icon city" "icon temp";column-gap:7px;align-items:center;min-width:112px;padding:8px 10px;background:linear-gradient(150deg,rgba(8,12,18,.90),rgba(45,13,26,.69));border:1px solid rgba(243,203,114,.46);border-radius:12px;box-shadow:0 8px 24px rgba(0,0,0,.18)}.weather-icon{grid-area:icon;width:38px;height:38px}.weather-icon svg{width:38px;height:38px}.weather-card .city{grid-area:city;color:var(--gold2);font-size:11px;font-weight:800;align-self:end}.weather-card .temp{grid-area:temp;font-size:17px;font-weight:800;align-self:start}.weather-card .models{display:none}
.svg-sun-group{animation:sunSpin 13s linear infinite}.weather-icon .rain-line{animation:rainFall .9s linear infinite}.weather-icon .snow-dot{animation:snowFall 1.4s linear infinite}.weather-icon .fog-line{animation:fogDrift 3s ease-in-out infinite}.weather-icon .bolt{animation:flashBolt 2.2s infinite}@keyframes sunSpin{to{transform:rotate(360deg)}}@keyframes rainFall{0%{transform:translateY(-1px);opacity:.25}50%{opacity:1}100%{transform:translateY(2px);opacity:.25}}@keyframes snowFall{0%{transform:translateY(-1px);opacity:.4}50%{transform:translate(1px,1px);opacity:1}100%{transform:translateY(2px);opacity:.35}}@keyframes fogDrift{50%{transform:translateX(2px)}}@keyframes flashBolt{0%,88%,100%{opacity:.62}91%,95%{opacity:1}}
.top-actions{display:flex;align-items:center;gap:10px;margin-left:auto}.datetime-box{min-width:168px;padding:8px 12px;text-align:right;background:linear-gradient(145deg,rgba(104,17,49,.52),rgba(19,13,21,.84));border:1px solid rgba(243,203,114,.52);border-radius:12px}.site-time{color:var(--gold2);font-size:22px;font-weight:900;letter-spacing:1px;font-variant-numeric:tabular-nums}.site-date{margin-top:2px;color:rgba(255,248,239,.76);font-size:10px}.hamburger{padding:8px 13px;color:var(--gold2);font-size:22px;cursor:pointer;background:rgba(122,23,56,.33);border:1px solid var(--gold);border-radius:9px}
.side-panel{position:fixed;z-index:100;top:0;right:-350px;width:min(330px,90vw);height:100%;overflow-y:auto;padding:24px;background:linear-gradient(180deg,rgba(7,10,16,.99),rgba(36,10,21,.99));border-left:1px solid rgba(243,203,114,.55);transition:right .25s ease;box-shadow:-20px 0 60px rgba(0,0,0,.5)}.side-panel.open{right:0}.side-panel a{display:block;padding:12px 0;color:var(--text);text-decoration:none;border-bottom:1px solid rgba(255,255,255,.08)}.side-panel a:hover{color:var(--gold2)}.side-panel h3{color:var(--gold2)}.close-panel{float:right;background:none;border:0;color:var(--gold2);font-size:20px;cursor:pointer}.overlay{display:none;position:fixed;z-index:90;inset:0;background:rgba(0,0,0,.62)}.overlay.show{display:block}#weatherPanel{display:grid;gap:8px}.side-panel .weather-card{width:100%}
main{width:min(1040px,calc(100% - 28px));margin:0 auto;padding:25px 0 18px}.radio-hero{margin:3px auto 18px;padding:22px 24px;text-align:center;background:linear-gradient(135deg,rgba(10,13,19,.84),rgba(78,15,38,.38));border:1px solid rgba(243,203,114,.46);border-radius:18px;box-shadow:0 20px 70px rgba(0,0,0,.24),inset 0 0 35px rgba(255,190,62,.02);backdrop-filter:blur(10px)}.hero-kicker{font-size:11px;font-weight:900;letter-spacing:2px;color:var(--gold2)}.hero-dot{display:inline-block;width:9px;height:9px;margin-right:7px;border-radius:50%;background:#ff3658;box-shadow:0 0 14px #ff3658}.radio-hero h1{margin:8px 0 4px;font-size:clamp(25px,4vw,40px);color:#fff}.radio-hero p{margin:0;color:var(--muted)}
.now-card{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(260px,.75fr);gap:12px;margin-bottom:20px}.now-playing,.listen-panel,.request-form,.bottom-item{background:linear-gradient(150deg,rgba(8,12,18,.93),rgba(51,12,27,.72));border:1px solid rgba(243,203,114,.5);box-shadow:0 16px 50px rgba(0,0,0,.24);backdrop-filter:blur(12px)}.now-playing{position:relative;min-height:155px;padding:22px 24px;border-radius:17px;overflow:hidden}.live-dot{display:inline-block;color:#ff5870;font-weight:900}.live-dot.offline{color:#9a9098}.np-caption{display:inline-block;margin-left:10px;color:var(--gold2);font-size:12px;font-weight:900;letter-spacing:1px}#npTitle{display:block;margin:20px 0 4px;font-size:clamp(20px,3vw,28px)}#npGenre{color:var(--gold2);font-size:13px}.mini-eq{position:absolute;right:22px;bottom:18px;display:flex;align-items:flex-end;height:30px;gap:4px}.mini-eq i{display:block;width:4px;background:linear-gradient(#ff4665,var(--gold));border-radius:3px;animation:eq 1.05s ease-in-out infinite alternate}.mini-eq i:nth-child(1){height:10px}.mini-eq i:nth-child(2){height:24px;animation-delay:-.6s}.mini-eq i:nth-child(3){height:16px;animation-delay:-.3s}.mini-eq i:nth-child(4){height:29px;animation-delay:-.8s}.mini-eq i:nth-child(5){height:13px;animation-delay:-.2s}.mini-eq i:nth-child(6){height:21px;animation-delay:-.7s}.mini-eq i:nth-child(7){height:8px;animation-delay:-.4s}.mini-eq i:nth-child(8){height:18px;animation-delay:-.9s}@keyframes eq{to{transform:scaleY(.35);opacity:.6}}
.listen-panel{border-radius:17px;padding:19px 18px;display:flex;flex-direction:column;justify-content:center;gap:12px}.listen-copy{display:grid;gap:3px}.listen-copy strong{color:var(--gold2);font-size:13px;letter-spacing:.7px}.listen-copy small{color:var(--muted);font-size:11px}.listen-controls{display:grid;grid-template-columns:42px 38px auto 1fr 43px;align-items:center;gap:7px}.listen-controls button{height:38px;border-radius:50%;cursor:pointer}.listen-main{border:1px solid #ff637a;background:linear-gradient(145deg,#9c1e45,#5e1532);color:#fff;font-size:17px}.listen-stop{border:1px solid rgba(243,203,114,.45);background:#17131a;color:#f5d88b}.volume-icon{font-size:14px}.listen-controls input{width:100%;accent-color:#d52d52}.listen-controls output{font-size:11px;color:var(--gold2);text-align:right}.youtube-fallback{font-size:10px;color:rgba(255,248,239,.65);text-decoration:none}.youtube-fallback:hover{color:var(--gold2)}.youtube-host{position:absolute;width:1px;height:1px;overflow:hidden;opacity:.001;pointer-events:none}
.request-section{margin-top:4px}.section-title{text-align:center;color:var(--gold2);font-size:clamp(18px,3vw,24px);letter-spacing:1.1px}.request-form{padding:20px 22px;border-radius:17px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.request-form label{display:flex;flex-direction:column;gap:6px;color:var(--gold2);font-size:12px;font-weight:800}.request-form .wide{grid-column:1/-1}.request-form input,.request-form select{width:100%;padding:11px 12px;color:var(--text);background:rgba(4,8,13,.86);border:1px solid rgba(243,203,114,.42);border-radius:9px;outline:none}.request-form input:focus,.request-form select:focus{border-color:var(--gold2);box-shadow:0 0 0 3px rgba(215,163,61,.10)}.request-form select:disabled,.request-form input:disabled{opacity:.55}.submit-wrap{display:flex;align-items:end}.request-form button{width:100%;padding:12px;border:0;border-radius:9px;color:#1d1013;background:linear-gradient(180deg,var(--gold2),var(--gold));font-weight:900;cursor:pointer}.request-form button:disabled{opacity:.45;cursor:not-allowed}.form-msg{min-height:18px;margin:10px 0 0;text-align:center;font-size:12px}.form-msg.error{color:var(--danger)}.form-msg.success{color:var(--success)}
.bottom-bar{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;width:100%;margin:14px 0 6px}.bottom-item{min-width:0;display:flex;align-items:center;gap:11px;padding:12px 14px;border-radius:13px;color:#fff;text-decoration:none;overflow:hidden}.bottom-item>span{flex:0 0 auto;font-size:27px;color:var(--gold2)}.bottom-item div{min-width:0;display:grid;gap:2px}.bottom-item strong{font-size:13px;color:var(--gold2)}.bottom-item small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:normal;color:var(--muted);font-size:10px;line-height:1.25}
footer{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:18px max(18px,calc((100vw - 1040px)/2));border-top:1px solid rgba(243,203,114,.3);background:rgba(4,7,11,.68);color:rgba(255,248,239,.58);font-size:11px}footer strong{color:var(--gold2)}a{color:var(--gold2)}.about-main{padding-top:55px}.about-card{max-width:700px;margin:0 auto}.about-card h2,.about-card h3{color:var(--gold2)}
/* ADMIN */
.admin-modal{display:none;position:fixed;z-index:500;inset:0;padding:20px;background:rgba(3,4,8,.86);backdrop-filter:blur(10px);overflow-y:auto}.admin-modal.show{display:block}.admin-shell{position:relative;width:min(1120px,97vw);margin:12px auto;padding:22px;background:linear-gradient(145deg,#081019,#1d0a13);border:1px solid rgba(243,203,114,.58);border-radius:19px;box-shadow:0 30px 100px rgba(0,0,0,.65)}.admin-close{position:absolute;right:14px;top:12px;padding:7px 10px;background:#3a1730;color:#fff;border:0;border-radius:8px;cursor:pointer}.admin-help{color:var(--muted);font-size:12px}.admin-login-form{max-width:440px;display:grid;gap:10px}.admin-login-form input,.admin-inline-form input,.queue-add-head input,.queue-add-head select,.admin-section-title input,.admin-section-title select{padding:10px;border-radius:8px;border:1px solid rgba(243,203,114,.28);background:#090d13;color:#fff}.admin-login-form button,.admin-head-actions button,#adminTestNewYear,.lock-btn,.admin-row-actions button,.admin-song-row button,.admin-media-row button,.admin-queue-row button,.admin-inline-form button,#adminQueueRefresh{padding:9px 11px;border:0;border-radius:8px;background:#46203a;color:#fff;cursor:pointer}.admin-login-form button,#adminTestNewYear,.admin-inline-form button{background:linear-gradient(180deg,var(--gold2),var(--gold));color:#1b1011;font-weight:900}.admin-head{display:flex;justify-content:space-between;align-items:center;gap:14px;padding-right:35px}.admin-head h2{margin:0 0 3px}.admin-head small{color:var(--muted)}.admin-head-actions{display:flex;gap:7px}.admin-card{margin-top:14px;padding:16px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:14px}.admin-card h3{margin-top:0;color:var(--gold2)}.danger-card{border-color:rgba(255,117,136,.22)}.admin-section-title{display:flex;gap:12px;align-items:center;justify-content:space-between}.admin-inline-form{display:grid;grid-template-columns:1fr auto;gap:8px}.admin-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:9px}.admin-mini-card{display:flex;align-items:center;justify-content:space-between;gap:9px;padding:11px;background:rgba(0,0,0,.2);border-radius:10px}.lock-btn.locked{background:#772541}.admin-request-row,.admin-song-row,.admin-media-row,.admin-queue-row{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.07)}.admin-request-info,.admin-media-info,.admin-queue-info{display:grid;gap:2px;min-width:0}.admin-request-info span,.admin-request-info small,.admin-media-info small,.admin-queue-info small{color:var(--muted);font-size:11px}.admin-row-actions,.queue-actions{display:flex;gap:6px;flex-wrap:wrap}.admin-row-actions .danger,.queue-actions .danger{background:#6b2534}.admin-song-list,.admin-media-list{max-height:410px;overflow:auto}.admin-song-row.disabled-song{opacity:.55}.admin-song-row span,.admin-media-info strong,.admin-queue-info strong{min-width:0;overflow:hidden;text-overflow:ellipsis}.queue-add-head{display:grid;grid-template-columns:1fr 180px;gap:8px;margin:12px 0}.admin-queue{margin-bottom:6px}.queue-position{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:50%;background:rgba(243,203,114,.12);color:var(--gold2);font-weight:900}.media-badge{display:inline-block;padding:2px 6px;border-radius:20px;background:rgba(243,203,114,.12);color:var(--gold2);font-size:9px}.visual-badge{color:#91ddff}.live-config-card code{color:var(--gold2)}#adminCommandMsg,#adminYoutubeMsg{font-size:11px;color:var(--success)}
@media(max-width:980px){.topbar{align-items:flex-start}.weather-zone{order:3;width:100%;flex-basis:100%}.now-card{grid-template-columns:1fr}.bottom-bar{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.topbar{padding:11px 12px}.logo{height:84px;max-width:48vw}.datetime-box{min-width:125px}.site-time{font-size:17px}.site-date{font-size:8px}.weather-card{min-width:100px;flex:1 1 100px}.form-grid{grid-template-columns:1fr}.request-form .wide{grid-column:auto}.bottom-bar{grid-template-columns:1fr 1fr}.admin-modal{padding:6px}.admin-shell{padding:16px}.admin-head,.admin-section-title{align-items:stretch;flex-direction:column}.admin-request-row,.admin-song-row,.admin-media-row,.admin-queue-row{align-items:flex-start;flex-direction:column}.admin-row-actions,.queue-actions{width:100%}.admin-row-actions button,.queue-actions button{flex:1}.queue-add-head{grid-template-columns:1fr}.listen-controls{grid-template-columns:40px 36px auto 1fr 42px}}
@media(max-width:430px){main{width:min(100% - 18px,1040px)}.bottom-bar{grid-template-columns:1fr}.weather-row{display:grid;grid-template-columns:repeat(2,1fr)}.weather-card{width:100%}.radio-hero{padding:18px 12px}.now-playing,.listen-panel,.request-form{padding:16px}.top-actions{width:100%;justify-content:flex-end}.brand-hitbox{max-width:65%}}

/* Promo banner: 2 μήνες live */
.promo-banner{margin:0 0 14px;padding:16px 20px;text-align:center;border-radius:15px;border:1px solid rgba(255,224,138,.75);background:linear-gradient(120deg,rgba(122,43,190,.55),rgba(214,45,120,.50),rgba(245,164,58,.45));box-shadow:0 0 34px rgba(214,45,120,.30),inset 0 0 24px rgba(255,255,255,.05);animation:promoGlow 3s ease-in-out infinite alternate}
.promo-banner[hidden]{display:none}.promo-title{font-size:clamp(16px,2.6vw,21px);font-weight:900;letter-spacing:.8px;color:#fff3c4}.promo-text{margin-top:5px;font-size:clamp(13px,2vw,15px);color:#fff}.promo-text strong{color:#ffe08a}.promo-count{margin-top:8px;display:inline-block;padding:4px 12px;border-radius:20px;background:rgba(5,6,18,.55);color:#ffe08a;font-size:12px;font-weight:800;font-variant-numeric:tabular-nums;letter-spacing:.6px}
.about-promo{padding:10px 12px;border-radius:10px;border:1px solid rgba(255,224,138,.6);background:rgba(214,45,120,.20)}.about-promo[hidden]{display:none}
@keyframes promoGlow{to{box-shadow:0 0 52px rgba(245,164,58,.45),inset 0 0 24px rgba(255,255,255,.08)}}