:root{
--green:#d8ff20;--purple:#b33fd1;--text:#f4f3ed;--muted:#9ba095;--line:#283017;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;background:
  radial-gradient(circle at 10% 35%,rgba(110,145,28,.12),transparent 22%),
  radial-gradient(circle at 88% 75%,rgba(121,38,137,.12),transparent 24%),
  #050705;
  color:var(--text);font-family:Inter,Segoe UI,Arial,sans-serif;overflow-x:hidden
}
a{text-decoration:none;color:inherit}
button{font:inherit}
.topbar{
  height:76px;padding:0 4vw;display:flex;align-items:center;justify-content:space-between;
  position:sticky;top:0;z-index:20;background:#030503f2;border-bottom:1px solid #262b20
}
.brand{display:flex;align-items:center;gap:12px}
.crest{
  width:44px;height:44px;border:1px solid #6f8719;border-radius:10px;display:grid;place-items:center;
  color:var(--green);font-size:22px;background:#0b0f08;box-shadow:0 0 20px rgba(202,255,32,.08)
}
.brand strong{display:block;font:700 20px Georgia,serif;letter-spacing:3px}
.brand small{display:block;font-size:9px;letter-spacing:2px;color:#858a80;margin-top:3px}
nav{display:flex;align-items:center;gap:28px;font-size:12px}
nav a:hover{color:var(--green)}
.join{border:1px solid #6b801c;border-radius:7px;padding:12px 17px;color:var(--green)}
.menu{display:none;background:none;border:0;color:#fff;font-size:24px}
.shell{width:min(1120px,calc(100% - 40px));margin:0 auto}
.hero{padding:56px 0 18px;display:grid;grid-template-columns:.9fr 1.1fr;gap:46px;align-items:center}
.eyebrow{font-size:10px;letter-spacing:2.7px;font-weight:900;color:var(--green)}
.purple-text{color:#d06de1}
.hero h1,.radio-copy h2,.clan-intro h2{font-family:Georgia,serif}
.hero h1{font-size:clamp(58px,7vw,86px);line-height:.91;letter-spacing:-4px;margin:12px 0 18px}
.hero h1 span{color:var(--green);text-shadow:0 0 22px rgba(211,255,32,.18)}
.hero p{color:#afb3aa;line-height:1.6;font-size:16px;max-width:535px}
.hero-actions{display:flex;gap:14px;margin:22px 0}
.btn{border:0;border-radius:7px;padding:14px 20px;font-weight:900;cursor:pointer}
.neon{background:linear-gradient(#e4ff45,#a9d80d);color:#111504;box-shadow:0 0 18px rgba(201,255,33,.12)}
.purple{background:linear-gradient(#7f2fa2,#5c1d78);color:#fff;border:1px solid #a04ec0}
.status-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.status-strip div{background:#080b08;border:1px solid #2e371c;border-radius:7px;padding:11px 13px}
.status-strip span,.status-strip strong{display:block}.status-strip span{font-size:9px;color:#7c8177;letter-spacing:1.1px}.status-strip strong{font-size:12px;margin-top:4px}
.hero-art{min-height:365px}
.electric-emblem{
  height:365px;position:relative;overflow:hidden;border:1px solid #74851a;border-radius:12px;
  background:radial-gradient(circle at 50% 48%,#21300c 0,#0b0f08 31%,#050705 70%);
  display:flex;flex-direction:column;align-items:center;justify-content:center
}
.electric-emblem:before{
  content:"";position:absolute;inset:0;background:
  linear-gradient(130deg,transparent 24%,rgba(206,255,33,.08) 24.5%,transparent 25%),
  linear-gradient(48deg,transparent 65%,rgba(186,50,208,.1) 65.5%,transparent 66%)
}
.lightning{position:absolute;top:48%;height:2px;width:45%;filter:blur(.3px)}
.green-light{left:0;background:linear-gradient(90deg,transparent,#caff2b)}
.purple-light{right:0;background:linear-gradient(90deg,#b844d2,transparent)}
.ring{position:absolute;border-radius:50%;border:1px solid rgba(195,246,40,.28)}
.ring-1{width:230px;height:230px}.ring-2{width:290px;height:290px;border-color:rgba(171,57,191,.23)}
.core{font-size:110px;filter:drop-shadow(0 0 18px #d7ff31)}
.logo-word{font:900 42px Impact,Arial Black,sans-serif;color:var(--green);letter-spacing:3px;transform:skew(-7deg);text-shadow:0 0 18px rgba(202,255,34,.22)}
.sub{font-size:10px;letter-spacing:2.2px;margin-top:7px;color:#e3e3dc}
.activity-bar{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:10px}
.activity-bar a{
  min-height:112px;border:1px solid #4a561c;border-radius:9px;background:linear-gradient(#0d110c,#070906);
  text-align:center;padding:15px;transition:.18s
}
.activity-bar a:hover{transform:translateY(-2px);box-shadow:0 0 16px rgba(209,255,34,.1)}
.activity-bar span{font-size:28px;display:block}.activity-bar b{display:block;margin-top:6px;color:var(--green);font-size:12px}.activity-bar small{display:block;margin-top:4px;color:#c6c9c0;font-size:11px}
.member-banner{
  margin-top:12px;height:116px;border:1px solid #768820;border-radius:10px;background:
  linear-gradient(90deg,#0a0d08 0%,#0d100b 48%,#110d12 100%);
  display:grid;grid-template-columns:95px 1fr 48%;align-items:center;overflow:hidden
}
.member-icon{
  width:74px;height:74px;margin-left:14px;border-radius:50%;border:1px solid #81972a;background:#152007;
  display:grid;place-items:center;font-size:34px;box-shadow:0 0 24px rgba(204,255,36,.14)
}
.member-copy span,.member-copy small{display:block}.member-copy span{font-size:11px;letter-spacing:2px;font-weight:800}.member-copy strong{display:block;font-size:30px;color:var(--green);margin:4px 0}.member-copy small{color:#d3d4cd}
.member-scene{
  height:100%;position:relative;background:
  radial-gradient(circle at 68% 52%,rgba(161,55,179,.28),transparent 27%),
  linear-gradient(90deg,transparent,#160f19 85%);
}
.member-scene:before{
  content:"";position:absolute;left:0;right:0;bottom:0;height:46%;
  background:repeating-linear-gradient(90deg,transparent 0 18px,rgba(118,73,126,.2) 18px 21px)
}
.obelisk{
  position:absolute;right:35%;top:16px;width:42px;height:82px;display:grid;place-items:center;
  border:1px solid #b049c7;background:linear-gradient(#391546,#180d1f);clip-path:polygon(50% 0,100% 35%,90% 100%,10% 100%,0 35%);
  color:var(--green);font-size:30px;filter:drop-shadow(0 0 12px #ad42c3)
}
.radio-row{display:grid;grid-template-columns:.7fr 1.3fr;gap:30px;align-items:center;padding:28px 0;border-bottom:1px solid #292e22}
.radio-copy h2{font-size:38px;line-height:1.0;margin:8px 0 10px}.radio-copy p{color:#b2b6ad;line-height:1.6}
.player{
  min-height:94px;display:grid;grid-template-columns:66px 1fr auto;gap:16px;align-items:center;
  border:1px solid #394116;border-radius:9px;background:#070a07;padding:16px
}
#playBtn{width:56px;height:56px;border:0;border-radius:50%;background:var(--green);color:#071000;font-size:21px;cursor:pointer;box-shadow:0 0 22px rgba(207,255,36,.22);display:grid;place-items:center;flex:0 0 auto}
.track small,.track span{display:block}.track small{color:var(--green);font-size:10px}.track strong{display:block;font-size:16px;margin:6px 0}.track span{font-size:11px;color:#a4a99f}
.player-links{display:grid;gap:7px;text-align:right;justify-items:end;min-width:118px;align-content:center}.player-links a{font-size:10px;color:#d767e7;white-space:nowrap}
.clan-row{display:grid;grid-template-columns:.63fr 1.37fr;gap:28px;padding:10px 0 18px}
.clan-intro h2{font-size:36px;line-height:1;margin:8px 0 10px}.clan-intro p{color:#b1b4ac;line-height:1.55}
.clan-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
article{border:1px solid #48521b;border-radius:8px;background:#090c08;padding:18px;min-height:154px}
.icon{font-size:24px}article h3{color:var(--green);font-size:15px;margin:8px 0 7px}article p{font-size:11px;color:#b5b8af;line-height:1.55;margin:0}
footer{
  min-height:64px;border-top:1px solid #2a2e24;padding:0 3vw;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;
  color:#c3c5bf;font-size:10px
}
footer strong{color:var(--green);letter-spacing:2px}.socials{font-size:16px;color:#ddd;text-align:center}footer small{text-align:right;color:var(--green);letter-spacing:1.5px}
.toast{position:fixed;right:22px;bottom:22px;background:#11180f;border:1px solid #405424;color:#dff5c8;padding:13px 16px;border-radius:8px;opacity:0;transform:translateY(10px);transition:.25s}.toast.show{opacity:1;transform:none}

@media(max-width:900px){
  nav{display:none;position:absolute;top:76px;left:0;right:0;background:#050705;padding:18px 5vw;flex-direction:column;align-items:flex-start}nav.open{display:flex}.menu{display:block}
  .hero,.radio-row,.clan-row{grid-template-columns:1fr}.activity-bar{grid-template-columns:1fr 1fr}.member-banner{grid-template-columns:88px 1fr}.member-scene{display:none}.clan-cards{grid-template-columns:1fr 1fr}
}
@media(max-width:560px){
  .shell{width:min(100% - 24px,1120px)}.hero{padding-top:40px}.hero h1{font-size:54px;letter-spacing:-2px}.hero-actions{flex-direction:column;align-items:flex-start}.status-strip,.activity-bar,.clan-cards{grid-template-columns:1fr}
  .member-banner{height:auto;padding:16px;grid-template-columns:1fr;text-align:center}.member-icon{margin:auto}.player{grid-template-columns:56px 1fr}.player-links{grid-column:2;text-align:left}
  footer{grid-template-columns:1fr;text-align:center;gap:9px;padding:15px}footer small{text-align:center}
}

/* V3.4 live radio status */
.player-links span{
  font-size:9px;
  color:#8e958a;
  letter-spacing:1px;
}
#listenerCount{
  color:var(--green);
}
#djStatus{
  color:#d767e7;
}


/* V3.5 — Electric Song Requests */
.request-link{width:auto!important;height:auto!important;min-width:0!important;background:none!important;border:0!important;border-radius:0!important;box-shadow:none!important;padding:0!important;color:#e54cff!important;font-size:10px!important;line-height:1.25!important;cursor:pointer;text-align:right;white-space:nowrap}.request-link:hover{color:#fff!important;text-shadow:0 0 12px #c829ff}
.request-modal{position:fixed;inset:0;z-index:999;display:none}.request-modal.open{display:block}.request-backdrop{position:absolute;inset:0;background:#000c;backdrop-filter:blur(5px)}
.request-panel{position:relative;z-index:1;width:min(760px,calc(100% - 32px));max-height:min(760px,calc(100vh - 48px));overflow:auto;margin:24px auto;background:linear-gradient(145deg,#090d09,#100713);border:1px solid #89ad13;border-radius:16px;padding:28px;box-shadow:0 28px 90px #000,0 0 55px #aaff0012}
.request-panel h2{font-family:Georgia,serif;font-size:42px;line-height:1;margin:8px 0 10px}.request-help{color:#b7b7b7;max-width:620px}.request-close{position:absolute;right:18px;top:14px;border:0;background:none;color:#aaa;font-size:32px;cursor:pointer}.request-close:hover{color:#caff00}
.request-search{display:grid;grid-template-columns:1fr auto;gap:10px;margin:22px 0 12px}.request-search input{min-width:0;background:#050805;border:1px solid #35420d;border-radius:9px;padding:13px 14px;color:#fff;outline:none}.request-search input:focus{border-color:#bfff00;box-shadow:0 0 0 3px #bfff0012}.request-search button,.song-request-btn{border:1px solid #a9dc00;background:#bfff00;color:#071000;font-weight:900;border-radius:9px;padding:0 18px;cursor:pointer}.request-search button:hover,.song-request-btn:hover{filter:brightness(1.08)}
.request-status{min-height:24px;color:#8d9389;font-size:12px;margin-bottom:8px}.request-status.error{color:#ff7373}.request-status.success{color:#caff00}.request-results{display:grid;gap:8px}.request-song{display:grid;grid-template-columns:1fr auto;gap:14px;align-items:center;border:1px solid #26300c;background:#080b08;border-radius:10px;padding:12px 12px 12px 14px}.request-song:hover{border-color:#556c12}.request-song strong{display:block;color:#f3f3ef;font-size:14px}.request-song span{display:block;color:#8e948d;font-size:11px;margin-top:3px}.song-request-btn{padding:9px 13px;font-size:11px}.song-request-btn:disabled{opacity:.45;cursor:wait}.request-empty{border:1px dashed #35420d;border-radius:10px;padding:25px;text-align:center;color:#8d9389}
body.modal-open{overflow:hidden}
@media(max-width:600px){.request-panel{padding:22px 16px;margin:12px auto;max-height:calc(100vh - 24px)}.request-panel h2{font-size:34px}.request-search{grid-template-columns:1fr}.request-search button{padding:12px}.request-song{grid-template-columns:1fr}.song-request-btn{padding:11px}.request-link{text-align:left}}

/* Launch V1.1 radio-player containment fix */
.player{overflow:hidden}
.track{min-width:0}
.track strong,.track span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.player-links span{white-space:nowrap}
@media(max-width:700px){
  .player{grid-template-columns:56px minmax(0,1fr)}
  .player-links{grid-column:2;justify-items:start;text-align:left;min-width:0}
  .request-link{text-align:left}
}

/* Launch V1.2 listener volume control */
.volume-control{
  display:flex;
  align-items:center;
  gap:8px;
  margin-top:9px;
  max-width:260px;
}
.volume-control button{
  width:auto!important;
  height:auto!important;
  min-width:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:none!important;
  box-shadow:none!important;
  color:var(--green)!important;
  cursor:pointer;
  font-size:15px!important;
  line-height:1!important;
}
.volume-control input[type="range"]{
  width:150px;
  accent-color:var(--green);
  cursor:pointer;
}
.volume-control span{
  min-width:34px;
  color:#a9b09f;
  font-size:9px;
  letter-spacing:.5px;
}
@media(max-width:560px){
  .volume-control input[type="range"]{width:120px}
}
