/* GlobalBase Premium Dark Radio – public frontend v1.0 */
:root{color-scheme:dark;--gb-bg:#080e16;--gb-surface:#111d2a;--gb-raised:#182838;--gb-line:#2b3c4a;--gb-ink:#f1f6fb;--gb-muted:#9dafbf;--gb-accent:#ff842b;--gb-accent-hi:#ffaf6d;--gb-green:#43e6ad;--gb-radius:16px}
html{scroll-behavior:smooth}body{background:radial-gradient(ellipse at 8% 0%,#203b43 0%,transparent 32%),radial-gradient(ellipse at 93% 4%,#2c1b16 0%,transparent 29%),var(--gb-bg)!important;color:var(--gb-ink)!important;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif!important;line-height:1.55}
a{color:var(--gb-accent-hi);transition:color .18s ease}a:hover{color:#ffd0ab}h1,h2,h3,h4,h5,h6{color:var(--gb-ink)!important;letter-spacing:-.024em}p,li,small{overflow-wrap:break-word}::selection{background:#ff842b;color:#081019}
:is(header,.header,#header,nav,.navbar,.navigation,#navigation,#menu,.menu){border-color:var(--gb-line)}
:is(.wrapper,.container,#container,.content,#content,.main,.main-content){max-width:100%}
:is(.box,.card,.panel,.widget,.content-box,.news-box,.radio-box){background-color:var(--gb-surface);border:1px solid var(--gb-line);border-radius:var(--gb-radius);box-shadow:0 12px 34px #0004}
:is(.box,.card,.panel,.widget,.content-box) :is(h2,h3,.title,.heading){color:var(--gb-ink)!important}
:is(.box,.card,.panel,.widget,.content-box) :is(p,small,.date,.meta){color:var(--gb-muted)}
:is(button,.button,.btn,input[type=submit],input[type=button],.graybutton){border:1px solid #ffaf6d!important;border-radius:10px!important;background:linear-gradient(135deg,#ff9b45,#f96a21)!important;color:#10171e!important;font-weight:700!important;box-shadow:0 5px 17px #fb772b38;cursor:pointer;transition:transform .18s ease,filter .18s ease,box-shadow .18s ease}
:is(button,.button,.btn,input[type=submit],input[type=button],.graybutton):hover{filter:brightness(1.09);transform:translateY(-1px);box-shadow:0 8px 24px #fb772b50}
:is(input[type=text],input[type=email],input[type=password],input[type=search],input[type=number],textarea,select){background:#101b27!important;color:var(--gb-ink)!important;border:1px solid #3d5060!important;border-radius:10px!important;padding:9px 12px;max-width:100%;box-sizing:border-box}
:is(input,textarea,select,button,a):focus-visible{outline:2px solid var(--gb-accent-hi)!important;outline-offset:2px}
table{border-collapse:collapse;max-width:100%}table th{background:#1d3140;color:#fff;border-color:var(--gb-line)}table td{border-color:var(--gb-line);color:#dce8ef}table tr:nth-child(even){background:#ffffff06}
:is(.player,.radio-player,#player,.now-playing,.onair,.on-air){border-color:#ff842b55;border-radius:14px}
:is(.active,.current,.selected){border-color:var(--gb-accent)}
img,video,iframe{max-width:100%}img{height:auto}
@media(max-width:800px){body{overflow-x:hidden}:is(.box,.card,.panel,.widget,.content-box){border-radius:12px}:is(.content,#content,.main,.main-content){min-width:0!important}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}


/* GlobalBase Halloween 2026 — public-facing pages only. Existing CMS layout preserved. */
/* The image assets are cropped from the artwork already approved in this conversation. */
@media (min-width: 1120px) {
  html body {
    background-color: #0b090d !important;
    background-image:
      url("./halloween-left.webp"),
      url("./halloween-right.webp"),
      linear-gradient(90deg,#0a090d 0%,#170e11 48%,#0a090d 100%) !important;
    background-repeat: no-repeat, no-repeat, no-repeat !important;
    background-position: left top, right top, center top !important;
    background-size:
      max(0px, calc((100vw - 1040px) / 2)) 100vh,
      max(0px, calc((100vw - 1040px) / 2)) 100vh,
      cover !important;
    background-attachment: fixed, fixed, fixed !important;
  }
}
@media (max-width: 1119px) {
  html body {
    background-image: linear-gradient(130deg,#160a0e,#0b1018 55%,#21100b) !important;
    background-color: #100b0e !important;
  }
}
/* Keep the original GlobalBase dancebase positioning and player / show blocks. */
/* The legacy theme puts the Gruß-/Wunschbox image in the header directly after the player. */
/* public.css v1 had a generic img{height:auto} declaration; restore the intended 70px image height. */
html body .header a[href="wunschbox"] img[src*="grussbox.gif"],
html body .header a[href$="/wunschbox"] img[src*="grussbox.gif"] {
  height: 70px !important;
  width: auto !important;
  max-width: none !important;
  display: block;
}
/* Don't introduce any extra placement / overlay / animation for the Wunschbox. */
@media(prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto; }
}

/* GLOBALBASE-HALLOWEEN-FINISH-V2-BEGIN */
/* GlobalBase Halloween Finish V2 — NUR OEFFENTLICHE SEITE.
   Dancebase: Positionierung von .playerbox, .aktuelbox, .nextbox und
   dem vorhandenen Wunschbox-Element wird NICHT geaendert. */
:root{--gbh-orange:#ff8e0b;--gbh-gold:#ffbd37;--gbh-border:#dc7806;--gbh-panel:#090c10;}
/* Halloween-Raender von der vorhandenen Installation bleiben bestehen. */
body{color:#f3f0ec!important;}
/* Nachtraegliche gestalterische Angleichung innerhalb des Original-Templates. */
body .header {isolation:isolate;}
body .header .login{
  background:linear-gradient(118deg,rgba(7,9,14,.95),rgba(12,10,13,.92))!important;
  border:1px solid rgba(255,137,14,.85)!important;
  border-radius:10px!important;
  box-shadow:0 0 0 1px rgba(255,143,0,.12),0 0 24px rgba(255,97,0,.14),inset 0 0 22px rgba(255,106,0,.04)!important;
  color:#f2f2f3!important;
  box-sizing:border-box;
}
body .header .login a{color:#f2e5d5!important;text-decoration:none}
body .header .login a:hover{color:#ffad3d!important}
body .header .sc_title{color:var(--gbh-gold)!important;text-shadow:0 1px 9px rgba(255,100,0,.35)}
/* Player-Hintergrund verbessern ohne Playerkoordinaten anzufassen. */
body .header .playerbox{
  border:1px solid rgba(241,136,5,.6)!important;
  border-radius:7px!important;
  background-color:rgba(11,12,15,.94)!important;
  box-shadow:inset 0 0 0 1px rgba(255,194,55,.08),0 5px 18px rgba(0,0,0,.38)!important;
}
/* Aktuelle / Naechste Show: Rahmen und Lesbarkeit, Positionen bleiben original. */
body .header .aktuelbox,
body .header .nextbox{
  background-color:rgba(8,10,13,.92)!important;
  border-radius:9px!important;
  box-shadow:0 0 0 1px rgba(255,137,7,.75),0 0 10px rgba(255,116,3,.18)!important;
  color:#f6f3ef!important;
}
body .header .aktuelbox a,body .header .nextbox a{color:#ffd27a!important}
body .header .aktuelbox *,body .header .nextbox *{text-shadow:0 1px 3px #000}
/* //Aktuelle Show / //Naechste Show bleiben dort, wo PHP sie ausgibt.
   Kein ::before, keine absolute Neupositionierung, kein z-index ueber den Labels. */
body .header .counter,body .header .online{
  background-color:rgba(9,11,14,.92)!important;
  border:1px solid rgba(227,127,7,.52)!important;
  border-radius:7px!important;
  box-shadow:0 2px 10px rgba(0,0,0,.3)!important;
  color:#eee!important;
}
/* Die Wunschbox bleibt unveraendert: kein position, transform, margin,
   z-index oder neues width/height auf ihrem Link / ihren Eltern. */
/* Untere Sidebar + Nachrichten, ohne Breiten/Positionen umzubauen. */
body .content .nav_mid,
body .content .connt{
  color:#eee8dc!important;
}
body .content .nav_mid{
  background-color:rgba(8,12,15,.92)!important;
  border-left:1px solid rgba(236,135,7,.42)!important;
  border-right:1px solid rgba(236,135,7,.42)!important;
}
body .content .navi_title_l{
  color:#ffb638!important;
  text-shadow:0 1px 3px #000!important;
}
body .content .connt a:hover,body .content .navigation a:hover{color:#ffc45d!important}
body .content .connt :is(h2,h3,h4){color:#ffb02a!important}
/* Hintergrund und Motivbilder kommen weiterhin aus halloween.css. */
@media(max-width:1119px){body .header .login{box-shadow:none!important}}

/* GLOBALBASE-HALLOWEEN-FINISH-V2-END */
