body{background:#f4f6fb;font-family:Arial,Helvetica,sans-serif}.logo{height:42px}.hero{background:linear-gradient(135deg,#111827,#7c1d1d)}.card{border:0;border-radius:18px}.btn-primary{background:#c1121f;border-color:#c1121f}iframe{background:#111;border-radius:12px}
.top-header{background:linear-gradient(135deg,#25104d,#b81f7a)}
.logo{max-height:90px;width:auto}
.hero{background:linear-gradient(135deg,#39156b,#d02082)}
.site-footer a:hover{text-decoration:underline}
.team-avatar{width:150px;height:150px;object-fit:cover;border-radius:50%;border:4px solid #fff;box-shadow:0 4px 16px rgba(0,0,0,.18)}
.team-avatar-placeholder{display:flex;align-items:center;justify-content:center;background:#212529;color:#fff;font-weight:700;font-size:2rem}
.team-card{transition:transform .15s ease, box-shadow .15s ease}.team-card:hover{transform:translateY(-3px);box-shadow:0 .75rem 1.5rem rgba(0,0,0,.12)!important}
.chat-messages{height:420px; overflow-y:auto; background:#f8f9fa;}
.chat-line{padding:.45rem .6rem; border-bottom:1px solid rgba(0,0,0,.06); background:#fff; border-radius:.4rem;}
.chat-card .card-header{background:#fff;}


/* Studio Mooi header zoals voorbeeldplaatje */
.studio-header{
  background:#3f9fe3;
  min-height:230px;
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
}
.studio-header-logo-wrap{
  position:absolute;
  left:95px;
  top:0;
  width:180px;
  text-align:center;
}
.studio-header-logo-link{display:block;text-decoration:none;}
.studio-header-logo{
  width:175px;
  max-height:220px;
  object-fit:contain;
}
.studio-header-title{
  color:#000;
  font-weight:900;
  line-height:.92;
  text-align:center;
  font-size:clamp(42px, 5.2vw, 92px);
  letter-spacing:-2px;
  padding:20px 240px 20px 260px;
}
.navbar{margin-top:0;}
@media(max-width:992px){
  .studio-header{min-height:180px;align-items:center;justify-content:center;flex-direction:column;padding:15px 10px;}
  .studio-header-logo-wrap{position:static;width:auto;margin-bottom:8px;}
  .studio-header-logo{width:120px;max-height:130px;}
  .studio-header-title{font-size:clamp(32px, 8vw, 54px);padding:0;letter-spacing:-1px;}
}

/* v13 vaste header zoals aangeleverd voorbeeld */
.top-header{display:none!important;}
.studio-header{display:none!important;}
.smr-main-header{background:#fff!important;height:240px!important;min-height:240px!important;}


/* v14: 3 kolommen radio layout zoals voorbeeld */
body{background:transparent;}
.radio-home-wrap{background:transparent!important;color:#fff;min-height:70vh;}
.radio-panel{background:#050505;border:2px solid #ff6a00;border-radius:4px;box-shadow:0 0 8px rgba(255,106,0,.45);overflow:hidden;color:#fff;}
.radio-panel-title{background:linear-gradient(#ff7b20,#311000);border-bottom:1px solid #ffd14a;color:#fff;text-align:center;font-weight:800;text-transform:uppercase;padding:8px 10px;font-size:15px;text-shadow:1px 1px 2px #000;}
.radio-panel-body{padding:16px;background:#050505;color:#fff;}
.radio-panel-content{font-size:14px;line-height:1.55;}
.radio-panel-img{display:block;margin-left:auto;margin-right:auto;border:1px solid #ff6a00;max-height:360px;object-fit:contain;background:#111;}
.radio-main-content h1{color:#ffde00;text-shadow:2px 2px #f25b00;font-size:24px;margin-bottom:14px;}
.radio-main-content div{font-size:15px;line-height:1.75;}
.radio-news-banner{border:2px solid #ff6a00;background:#050505;box-shadow:0 0 8px rgba(255,106,0,.45);}
.recent-side-list{list-style:none;padding:0;margin:0;}
.recent-side-list li{padding:10px 0;border-bottom:1px solid #333;font-size:14px;}
.recent-side-list li:last-child{border-bottom:0;}
@media(max-width:991px){.radio-home-wrap .container-fluid{padding-left:12px!important;padding-right:12px!important}.radio-panel-body{padding:12px}}

/* v15: oude home hersteld, maar in 3 kolommen radio-stijl */
.home-old-3col .old-home-welcome .radio-panel-body{
  background:transparent!important;
  padding:42px 26px;
}
.home-old-3col .old-home-welcome h1{
  color:#fff;
  text-shadow:none;
  font-size:32px;
  font-weight:500;
}
.home-old-3col .old-home-welcome .radio-main-content div{
  color:#fff;
  font-size:16px;
  line-height:1.7;
}
.home-old-3col .ratio iframe{border:0;background:#111;border-radius:8px;}
.home-old-3col h2,.home-old-3col h3,.home-old-3col h4{color:#fff;}
.home-old-3col .onair-title{color:#ff7b20;text-transform:uppercase;text-shadow:1px 1px 0 #fff;font-weight:900;}
.home-old-3col .radio-panel .alert{border-radius:4px;}
@media(max-width:991px){
  .home-old-3col .old-home-welcome .radio-panel-body{padding:28px 15px;}
  .home-old-3col .old-home-welcome h1{font-size:26px;}
}

/* v16 klassieke 3 kolommen radio stijl */
body{background:linear-gradient(135deg,#8e2de2 0%,#e83e8c 45%,#ff77b7 100%) fixed;}
.radio-home-wrap .radio-panel,.smr-content-card{background:#169be8;border:3px solid rgba(255,255,255,.35);border-radius:14px;box-shadow:0 8px 18px rgba(0,0,0,.22);overflow:hidden;color:#fff;}
.radio-panel-title,.smr-card-title{background:#0579c9;color:#fff;font-weight:900;text-transform:uppercase;text-align:center;padding:10px 12px;border-bottom:2px solid rgba(255,255,255,.35);letter-spacing:.3px;text-shadow:1px 1px 0 rgba(0,0,0,.35);}
.radio-panel-body,.smr-card-body{padding:15px;background:linear-gradient(180deg,#21a9f3,#0981cf);}
.radio-panel-body a,.smr-card-body a{color:#fff;font-weight:700}.radio-panel-img{width:100%;border-radius:10px;box-shadow:0 4px 12px rgba(0,0,0,.25)}
.smr-content-card{margin-bottom:1rem}.smr-content-card h1,.smr-content-card h2,.smr-content-card h3{font-weight:900;text-shadow:1px 1px 0 rgba(0,0,0,.25)}
.smr-module-list .item{background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.25);border-radius:10px;padding:12px;margin-bottom:10px}.smr-module-list img{max-width:160px;border-radius:10px;margin-bottom:10px}
.smr-top40-number{display:inline-flex;width:34px;height:34px;align-items:center;justify-content:center;border-radius:50%;background:#ffcc00;color:#111;font-weight:900;margin-right:8px}.poll-option{background:rgba(255,255,255,.16);border-radius:8px;padding:8px 10px;margin-bottom:8px}.ad-box{min-height:90px;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.16);border:2px dashed rgba(255,255,255,.55);border-radius:12px;text-align:center}
@media(max-width:991px){.radio-home-wrap aside,.radio-home-wrap section{order:initial!important}.radio-panel-title{text-align:left}}

/* v18 On Air blok */
.onair-panel .radio-panel-body { text-align:center; }
.onair-title { color:#fff; text-transform:uppercase; font-weight:900; text-shadow:1px 1px 0 #000; font-size:1.35rem; margin:8px 0 4px; }
.onair-avatar { width:130px; height:130px; object-fit:cover; border-radius:14px; border:3px solid #58c7ff; box-shadow:0 4px 12px rgba(0,0,0,.35); background:#111; }
.onair-avatar-empty { display:flex; align-items:center; justify-content:center; font-weight:900; color:#fff; background:#0b85ce; }
.onair-next { color:#fff; line-height:1.35; }
.onair-next small { color:#e6f7ff; }

/* v21 profiel pagina */
.profile-avatar{
  width:170px;
  height:170px;
  object-fit:cover;
  border-radius:14px;
  border:4px solid #53c8ff;
  background:#0b87c9;
}
.profile-avatar-empty{
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:42px;
  font-weight:900;
  color:#fff;
}
.smr-panel .form-control,
.smr-panel .form-select{
  background:#ffffff;
  color:#111;
}
.smr-panel .form-text,
.smr-panel label,
.smr-panel p{
  color:#fff;
}

/* v23 chat: echte 3 kolommen, links regels, midden chat, rechts online */
.chat-layout-v23{
  display:grid;
  grid-template-columns:20% 55% 25%;
  gap:16px;
  align-items:start;
}
.chat-layout-v23 .radio-panel{margin-bottom:16px;}
.chat-center-v23 .chat-messages{height:520px;}
.online-user-line{padding:6px 0;border-bottom:1px solid rgba(255,255,255,.18);}
.online-user-line:last-child{border-bottom:0;}
@media(max-width:991px){
  .chat-layout-v23{display:block;}
  .chat-left-v23,.chat-center-v23,.chat-right-v23{width:100%;}
  .chat-center-v23 .chat-messages{height:420px;}
}

/* v24 chat fix: niet meer te breed, gebruikt gewone 3 kolommen van de site */
.chat-page-3col .container-fluid{max-width:1400px;margin:0 auto;}
.chat-page-3col .chat-messages{height:520px;overflow-y:auto;}
.chat-page-3col .radio-panel{max-width:100%;}
.online-user-line{padding:6px 0;border-bottom:1px solid rgba(255,255,255,.18);}
.online-user-line:last-child{border-bottom:0;}
@media(max-width:991px){
  .chat-page-3col .chat-messages{height:420px;}
  .chat-page-3col .d-flex.gap-2{flex-direction:column;}
}

/* v25: chat.php exact dezelfde breedte als index.php */
.chat-page-3col .container-fluid{
  max-width: none !important;
  width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}
.chat-page-3col .row{
  width: auto !important;
  max-width: none !important;
}
.chat-page-3col .chat-main,
.chat-page-3col .chat-messages{
  max-width: 100% !important;
  box-sizing: border-box;
}

/* v26 gastenboek: zelfde 3 kolommen stijl als home/chat */
.guestbook-page-3col .container-fluid{
  max-width:1320px!important;
  margin:0 auto!important;
}
.guestbook-entry:last-child{border-bottom:0!important;margin-bottom:0!important;padding-bottom:0!important;}
.guestbook-message{white-space:normal;word-break:break-word;}
.guestbook-form textarea{resize:vertical;}

/* V27 DJ paneel: grotere verzoekbox + open/dicht bediening */
.dj-panel-card {
    border-radius: 18px;
    overflow: hidden;
}
.request-panel-large {
    width: 100%;
}
.request-table-wrap {
    max-height: 520px;
    overflow: auto;
}
.request-table {
    min-width: 1050px;
}
.request-table th {
    white-space: nowrap;
}
.request-message-cell {
    min-width: 220px;
    max-width: 420px;
    white-space: normal;
}
@media (min-width: 1200px) {
    .request-table-wrap {
        max-height: 620px;
    }
}


/* v28 gastenboek: zelfde breedte als index.php */
.guestbook-page-3col .container-fluid{
  max-width:none!important;
  width:100%!important;
  margin-left:0!important;
  margin-right:0!important;
}
.guestbook-page-3col .row{
  width:auto!important;
  max-width:none!important;
}


/* v29: achtergrond welkom-blok verwijderd + admin gebruiksvriendelijker */
.home-old-3col .old-home-welcome .radio-panel-body{
  background: transparent !important;
}
.admin-shell{max-width:1320px;margin:0 auto;}
.admin-hero{background:#fff;border-radius:18px;padding:20px 22px;box-shadow:0 8px 22px rgba(0,0,0,.12);margin-bottom:18px;color:#182029;}
.admin-hero h1{margin:0;font-weight:900;}
.admin-quick-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px;}
.admin-quick-card{background:#fff;border-radius:16px;padding:16px;border:1px solid rgba(0,0,0,.08);box-shadow:0 5px 16px rgba(0,0,0,.10);color:#20252a;text-decoration:none;display:block;min-height:94px;}
.admin-quick-card:hover{transform:translateY(-2px);box-shadow:0 9px 24px rgba(0,0,0,.16);color:#20252a;}
.admin-quick-card strong{display:block;font-size:1.05rem;margin-bottom:4px;}
.admin-quick-card span{font-size:.9rem;color:#5b6572;}
.admin-nav-groups{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin-bottom:18px;}
.admin-nav-group{background:#fff;border-radius:16px;padding:14px;border:1px solid rgba(0,0,0,.08);box-shadow:0 5px 16px rgba(0,0,0,.10);}
.admin-nav-group h3{font-size:1rem;font-weight:900;margin:0 0 10px;color:#0579c9;text-transform:uppercase;}
.admin-nav-group a{display:block;padding:8px 10px;margin-bottom:6px;border-radius:10px;text-decoration:none;color:#1f2937;background:#f3f6fb;font-weight:700;}
.admin-nav-group a:hover,.admin-nav-group a.active{background:#0579c9;color:#fff;}
.admin-content-card{background:#fff;border-radius:18px;padding:18px;box-shadow:0 8px 22px rgba(0,0,0,.12);color:#20252a;}
.admin-content-card .card{border-radius:16px;}
@media(max-width:1200px){.admin-nav-groups{grid-template-columns:repeat(3,1fr)}.admin-quick-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:768px){.admin-nav-groups,.admin-quick-grid{grid-template-columns:1fr}.admin-hero{padding:15px}.admin-content-card{padding:12px}}

/* v30: admin gastenboek gebruiksvriendelijk */
.admin-section-title{background:#fff;border-radius:14px;padding:18px 20px;box-shadow:0 3px 14px rgba(0,0,0,.08);}
.admin-friendly-form .form-check-input{transform:scale(1.15);}
.admin-friendly-form .form-check-label{margin-left:4px;}

/* V31 online player uit admin instellingen */
.online-player-panel audio {
  width: 100%;
  max-width: 100%;
}
.online-player-frame {
  width: 100%;
  min-height: 110px;
  border: 0;
  border-radius: 10px;
  background: #fff;
}
.player-embed iframe,
.player-embed audio {
  width: 100% !important;
  max-width: 100% !important;
}

/* v32 Luister Players: klassieke player-iconen */
.listen-players-panel .listen-player-icons{
  display:flex;
  justify-content:center;
  align-items:center;
  flex-wrap:wrap;
  gap:8px;
  padding:8px 0;
}
.listen-player-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:54px;
  height:54px;
  border-radius:10px;
  text-decoration:none;
  background:rgba(0,0,0,.18);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.25), 0 2px 5px rgba(0,0,0,.25);
  transition:transform .12s ease, filter .12s ease;
}
.listen-player-link:hover{transform:translateY(-2px);filter:brightness(1.15);}
.listen-player-link img{max-width:48px;max-height:48px;display:block;}
.listen-player-link span{font-size:12px;color:#fff;font-weight:700;padding:4px;}
.listen-players-panel hr{border-color:rgba(255,255,255,.5);margin:14px 0;}

/* v34: Recente tracks fix - geen zwarte tabelachtergrond en altijd nette Studio Mooi stijl */
.recent-tracks-page .smr-card-body{
  background: linear-gradient(180deg,#21a9f3,#0981cf) !important;
}
.recent-tracks-page .recent-help{
  color:#fff;
  margin-bottom:12px;
}
.recent-tracks-table{
  width:100%;
  color:#fff !important;
  background:transparent !important;
  border-collapse:separate;
  border-spacing:0;
  overflow:hidden;
  border-radius:10px;
}
.recent-tracks-table thead th{
  background:#0579c9 !important;
  color:#fff !important;
  border-color:rgba(255,255,255,.35) !important;
  font-weight:900;
}
.recent-tracks-table tbody td{
  background:rgba(255,255,255,.14) !important;
  color:#fff !important;
  border-color:rgba(255,255,255,.25) !important;
}
.recent-tracks-table tbody tr:nth-child(even) td{
  background:rgba(255,255,255,.22) !important;
}
.recent-tracks-table tbody tr:hover td{
  background:rgba(255,255,255,.30) !important;
}
.recent-tracks-table a{color:#fff!important;}

/* V36 listener count */
.listener-count{
  display:inline-block;
  background:rgba(255,255,255,.18);
  border:1px solid rgba(255,255,255,.35);
  border-radius:999px;
  padding:6px 12px;
  color:#fff;
  font-weight:600;
  margin-bottom:8px;
}
.listener-count strong{color:#fff;}

/* V41 Programmering radiogids */
.schedule-page-panel .radio-panel-body {
  background: transparent !important;
}
.schedule-hero {
  background: linear-gradient(135deg, rgba(255,255,255,.14), rgba(255,255,255,.04));
  border: 2px solid rgba(255,255,255,.25);
  border-radius: 14px;
  padding: 18px;
  margin-bottom: 18px;
  color: #fff;
  text-align: center;
}
.schedule-hero h1 {
  font-size: 32px;
  font-weight: 900;
  margin: 0 0 8px;
  text-shadow: 0 2px 3px rgba(0,0,0,.25);
}
.schedule-hero p {
  margin: 0 0 14px;
  font-size: 16px;
}
.schedule-live-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}
.schedule-live-box {
  background: rgba(0,0,0,.18);
  border: 1px solid rgba(255,255,255,.25);
  border-radius: 12px;
  padding: 12px;
}
.schedule-live-box span {
  display: block;
  color: #ffe600;
  font-size: 13px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .5px;
}
.schedule-live-box strong {
  display: block;
  color: #fff;
  font-size: 17px;
}
.schedule-days {
  display: grid;
  gap: 16px;
}
.schedule-day-card {
  background: #1598dc;
  border: 3px solid #58c8ff;
  border-radius: 14px;
  overflow: hidden;
  box-shadow: 0 6px 16px rgba(0,0,0,.25);
}
.schedule-day-card h2 {
  background: #087abc;
  color: #fff;
  margin: 0;
  padding: 12px 16px;
  text-align: center;
  font-weight: 900;
  font-size: 22px;
  letter-spacing: .5px;
  text-transform: uppercase;
}
.schedule-row {
  position: relative;
  display: grid;
  grid-template-columns: 135px 1fr auto;
  gap: 14px;
  align-items: center;
  padding: 13px 16px;
  border-top: 1px solid rgba(255,255,255,.26);
  color: #fff;
}
.schedule-row:nth-child(even) {
  background: rgba(255,255,255,.06);
}
.schedule-row.is-live {
  background: rgba(255, 230, 0, .20);
  box-shadow: inset 5px 0 0 #ffe600;
}
.schedule-time {
  color: #ffe600;
  font-weight: 900;
  font-size: 15px;
  white-space: nowrap;
}
.schedule-info strong {
  display: block;
  font-size: 16px;
}
.schedule-info small {
  display: block;
  opacity: .92;
  margin-top: 2px;
  font-weight: 700;
}
.schedule-info p {
  margin: 6px 0 0;
  opacity: .95;
}
.schedule-badge {
  background: #19a34a;
  color: #fff;
  border-radius: 999px;
  padding: 5px 10px;
  font-weight: 900;
  font-size: 12px;
  white-space: nowrap;
}
.admin-clean .card-header {
  background: #0f8ed4;
  color: #fff;
}
@media (max-width: 768px) {
  .schedule-live-row,
  .schedule-row {
    grid-template-columns: 1fr;
  }
  .schedule-hero h1 { font-size: 24px; }
  .schedule-badge { width: max-content; }
}

/* V99 RadioTweety 1-op-1 donkere stijl + berichtenbalk */
html,body{margin:0!important;padding:0!important;background:#000!important;color:#fff!important;font-family:Arial,Helvetica,sans-serif!important;font-size:12px!important;}
a{color:#ff9d00;text-decoration:none}a:hover{color:#fff;text-decoration:underline}
.rt-header{background:#000!important;margin:0!important;padding:0!important;border-bottom:1px solid #dac300!important;}
.rt-top-banner{height:260px!important;width:100%!important;background:#000 url('header_radiotweety.png') center top/100% 100% no-repeat!important;position:relative!important;}
.rt-home-link{display:block;width:100%;height:100%;}
.rt-menu-bar{min-height:42px!important;background:linear-gradient(#220000,#610000 45%,#120000)!important;border-top:1px solid #111!important;border-bottom:1px solid #b0a100!important;padding:0!important;}
.rt-menu-container{max-width:1060px!important;min-height:42px!important;}
.rt-language{font-size:12px!important;font-weight:700!important;font-style:italic!important;color:#d8dbff!important;margin-right:40px!important;}
.rt-flag{display:inline-block;width:22px;height:14px;vertical-align:-2px;margin-right:4px;background:linear-gradient(#ae1c28 0 33%,#fff 33% 66%,#21468b 66%);border:1px solid #aaa;}
.rt-menu-bar .navbar-toggler{border:1px solid #ffbe00!important;background:#440000!important;}
.rt-menu-bar .navbar-toggler-icon{filter:invert(1)}
.rt-main-menu .nav-link{color:#ff9600!important;text-transform:uppercase!important;font-size:12px!important;font-weight:700!important;padding:15px 8px!important;line-height:12px!important;}
.rt-main-menu .nav-link:hover{color:#fff200!important;background:#1b0000!important;}
.rt-ticker-wrap{max-width:1200px;margin:14px auto 14px;display:flex;align-items:center;height:32px;border:2px solid #402bff;border-radius:6px;background:linear-gradient(90deg,#13007a,#0b0641,#120050);box-shadow:0 0 8px #351fff;overflow:hidden;}
.rt-ticker-label{height:32px;line-height:32px;background:#ff2525;color:#fff;font-weight:900;padding:0 18px;border-radius:4px 0 0 4px;position:relative;white-space:nowrap;}
.rt-ticker-label:after{content:"";position:absolute;right:-15px;top:0;border-top:16px solid transparent;border-bottom:16px solid transparent;border-left:15px solid #ff2525;}
.rt-ticker{color:#ff9aff;font-weight:900;text-shadow:1px 1px #000;padding-left:18px;text-transform:uppercase;}
.radio-home-wrap{background:#000!important;min-height:1200px!important;color:#fff!important;}
.radio-home-wrap .container-fluid{max-width:1487px!important;margin:0 auto!important;padding-left:10px!important;padding-right:10px!important;}
.radio-home-wrap .row{--bs-gutter-x:20px!important;--bs-gutter-y:14px!important;}
.radio-home-wrap aside.col-xl-3{width:24.7%!important;}
.radio-home-wrap section.col-xl-6{width:50.6%!important;}
.radio-panel,.smr-content-card,.card{background:#061738!important;border:2px solid #ff1e00!important;border-radius:3px!important;box-shadow:none!important;color:#fff!important;overflow:hidden!important;margin-bottom:14px!important;}
.radio-panel-title,.smr-card-title,.card-header{background:linear-gradient(#3a0000,#7b0000 48%,#180000)!important;border-bottom:2px solid #ffd000!important;color:#fff!important;text-align:center!important;font-weight:900!important;text-transform:uppercase!important;padding:8px 10px!important;font-size:12px!important;letter-spacing:0!important;text-shadow:1px 1px #000!important;}
.radio-panel-body,.smr-card-body,.card-body{background:#061738!important;color:#fff!important;padding:17px!important;}
.radio-panel-content{font-size:12px!important;line-height:1.55!important;color:#fff!important;text-align:center;}
.home-old-3col .old-home-welcome .radio-panel-body{background:#061738!important;padding:18px 22px!important;}
.home-old-3col .old-home-welcome h1,.radio-main-content h1{font-size:18px!important;color:#ffcc00!important;text-shadow:1px 1px #e30000!important;font-weight:900!important;margin:0 0 10px!important;}
.home-old-3col .old-home-welcome .radio-main-content div,.radio-main-content div{font-size:12px!important;line-height:1.55!important;color:#fff!important;}
.radio-news-banner{border:2px solid #ff1e00!important;background:#061738!important;box-shadow:none!important;border-radius:3px!important;overflow:hidden!important;}
.radio-panel-img{display:block;margin:0 auto 10px!important;max-width:100%!important;border:1px solid #ff1e00!important;border-radius:0!important;background:#000!important;box-shadow:none!important;}
.recent-side-list li{display:flex;align-items:center;min-height:34px;color:#fff!important;border-bottom:0!important;font-size:12px!important;padding:8px 0!important;}
.recent-side-list li:before{content:"";width:38px;height:38px;margin-right:10px;background:#fff2;border:1px solid #333;display:inline-block;flex:0 0 auto;}
.onair-panel .radio-panel-body,.radio-panel-body.text-center{text-align:center!important;}
.onair-title{color:#fff!important;font-size:16px!important;text-shadow:none!important;margin:12px 0 6px!important;}
.onair-avatar{border:2px solid #ff1e00!important;border-radius:0!important;background:#061738!important;}
.home-old-3col .ratio iframe,iframe{border:0!important;border-radius:0!important;background:#061738!important;}
.btn,.btn-primary,.btn-warning{border-radius:4px!important;background:linear-gradient(#ffcc00,#a15a00)!important;border:1px solid #ffdf00!important;color:#111!important;font-weight:800!important;}
.form-control,.form-select,textarea,input{background:#fff!important;color:#111!important;border-radius:3px!important;}
.chat-messages{background:#061738!important;color:#fff!important;border-color:#ff1e00!important;}
.chat-line{background:#0a214b!important;color:#fff!important;border-bottom:1px solid #1f4b87!important;}
.site-footer{background:linear-gradient(#790000,#2d0000)!important;border-top:2px solid #00e1d0!important;margin-top:60px!important;color:#ff9d00!important;}
.site-footer .container{max-width:1000px!important;text-align:left!important;}
.site-footer a{color:#ff9d00!important}.site-footer small{display:block;text-align:center;color:#18a2ff!important;border-top:1px solid #4a0000;padding-top:12px;margin-top:12px;}
@media(max-width:991px){
  .rt-top-banner{height:150px!important;background-size:cover!important;}
  .rt-ticker-wrap{margin:10px 8px!important;}
  .rt-menu-container{max-width:100%!important;}
  .radio-home-wrap aside.col-xl-3,.radio-home-wrap section.col-xl-6{width:100%!important;}
  .rt-main-menu .nav-link{padding:9px!important;}
}


.rt-ticker-wrap{display:flex!important;align-items:center!important;gap:0!important;max-width:1120px!important;margin:10px auto!important;}
.rt-ticker{flex:1!important;}
.rt-ticker-link{display:inline-block;background:linear-gradient(#2b0000,#7b0000,#2b0000);border:1px solid #ffcc00;color:#ffcc00!important;font-weight:bold;text-decoration:none;padding:5px 10px;border-radius:0 6px 6px 0;font-size:12px;white-space:nowrap;}
.rt-ticker-link:hover{color:#fff!important;text-shadow:0 0 5px #fff;}
.rt-status-pending{color:#ffc107;font-weight:bold}.rt-status-approved{color:#21d07a;font-weight:bold}.rt-status-rejected{color:#ff5555;font-weight:bold}

/* Team rollen badge */
.team-role-badge {
  display: inline-block;
  padding: 6px 14px;
  border-radius: 999px;
  color: #fff;
  font-weight: 700;
  font-size: 13px;
  box-shadow: 0 0 12px rgba(255, 79, 216, 0.35);
}

/* =========================================================
   FM VERONICA 1-OP-1 KOPER THEMA - aangeleverd ontwerp
   ========================================================= */
:root{--fmv-copper:#b96e47;--fmv-light:#df9c70;--fmv-dark:#2a130d;--fmv-panel:#17191b;--fmv-text:#d7c3b4}
html{background:#151719}
body.fmv-body{margin:0;background:#151719;color:var(--fmv-text);font-family:"Arial Narrow",Arial,sans-serif;background-image:radial-gradient(circle at 50% 25%,rgba(255,255,255,.025),transparent 35%),linear-gradient(90deg,rgba(255,255,255,.012) 1px,transparent 1px);background-size:auto,4px 4px}
.fmv-site-width{width:min(100%,1024px);margin:0 auto}
.fmv-header{background:#111;box-shadow:0 3px 16px #000}
.fmv-header-art{display:block;width:min(100%,1024px);height:142px;margin:auto;background:url('fmveronica/header.jpg') center top/cover no-repeat}
.fmv-menu{min-height:29px;padding:0;background:linear-gradient(#3c251d,#130d0b 55%,#080707);border-top:1px solid #8e563d;border-bottom:1px solid #5e3829}
.fmv-menu .navbar-toggler{filter:invert(1);padding:3px 7px;margin:3px}
.fmv-language,.fmv-menu .nav-link{color:#dbc0ae!important;text-transform:uppercase;font-size:10px;padding:7px 7px!important;white-space:nowrap;text-shadow:0 1px #000}
.fmv-menu .nav-link:hover{color:#fff!important;background:rgba(188,106,67,.22)}
.fmv-ticker{height:25px;background:#08090a;border-top:1px solid #3d2a23;border-bottom:1px solid #5d392c;font-size:10px;color:#cab4a6}
.fmv-ticker .fmv-site-width{height:100%;gap:12px}.fmv-ticker-tag{background:#241713;padding:3px 14px;border:1px solid #593626;border-radius:2px}.fmv-ticker marquee{flex:1}.fmv-ticker a{color:#c7a894;text-decoration:none;padding-right:8px;white-space:nowrap}
.fmv-page{min-height:690px;padding:10px 0 55px;background:radial-gradient(circle at 50% 0,rgba(90,63,50,.13),transparent 45%)}
.fmv-grid{display:grid;grid-template-columns:194px minmax(0,1fr) 194px;gap:12px;align-items:start;padding:0 13px}
.fmv-left,.fmv-right,.fmv-center{min-width:0}.radio-panel{position:relative;margin:0 0 12px!important;background:#191b1d!important;color:#cdb9ab!important;border:2px solid #76432f!important;border-radius:4px!important;box-shadow:0 0 0 2px #2c1710,0 0 0 4px #b06b49,0 4px 10px #000!important;overflow:visible!important}
.radio-panel:before,.radio-panel:after{content:"";position:absolute;left:-5px;right:-5px;height:7px;border-radius:5px;background:linear-gradient(#e09a6b,#7e412d 45%,#2c150f 52%,#b26746);border:1px solid #3d1e15;z-index:3}.radio-panel:before{top:-5px}.radio-panel:after{bottom:-5px}
.radio-panel-title{position:relative;z-index:4;background:linear-gradient(#d88c61,#7d432f 48%,#ad6243 52%,#5a2d20)!important;color:#1a0d09!important;text-shadow:0 1px rgba(255,220,190,.45)!important;text-align:center!important;text-transform:uppercase!important;font-size:11px!important;font-weight:900!important;letter-spacing:.2px!important;padding:4px 8px!important;border:0!important;line-height:1.15}
.radio-panel-body{background:linear-gradient(145deg,#1e2022,#111315)!important;color:#cdb9ab!important;padding:12px!important;font-size:11px;line-height:1.55;min-height:50px}
.radio-panel-body h1,.radio-panel-body h2,.radio-panel-body h3,.radio-panel-body h4{color:#c99778!important;text-shadow:none!important;font-family:"Arial Narrow",Arial,sans-serif}.radio-panel-body h1{font-size:19px!important}.radio-panel-body h3{font-size:15px!important}.radio-panel-body h4{font-size:14px!important;text-transform:uppercase}
.fmv-welcome .radio-panel-body{min-height:135px;display:flex;flex-direction:column;justify-content:center}.fmv-news .radio-panel-body{min-height:430px;padding:22px 28px!important;font-size:10px;line-height:1.8}.fmv-news p{margin-bottom:12px}
.fmv-dj-card{text-align:center}.fmv-dj-row{display:flex;gap:10px;align-items:center;text-align:left}.fmv-dj-row strong{font-size:24px;color:#a86548}.fmv-dj-row img{width:104px;height:104px;border-radius:50%;object-fit:cover;border:4px solid #8e5138;box-shadow:0 0 0 2px #2b160f}.fmv-dj-card h3{text-transform:uppercase;margin:8px 0 0}.fmv-dj-card p{margin:0;font-size:9px}
.fmv-player-icons{display:flex;justify-content:center;gap:7px;margin:6px 0 14px}.fmv-player-icons span{display:grid;place-items:center;width:31px;height:31px;border-radius:7px;color:#17100d;background:linear-gradient(#d59066,#875039);border:2px solid #3c2018;box-shadow:inset 0 1px #f6bd95,0 2px 3px #000;font-size:17px}.fmv-player-icons+small{display:block;text-align:center;font-size:8px}
.online-player-panel audio{width:100%;height:28px;filter:sepia(.8) brightness(.7)}.fmv-wave{height:64px;display:flex;align-items:center;justify-content:center;gap:2px;background:#211b19;margin:9px 0;border:1px solid #543425}.fmv-wave i{display:block;width:5px;background:#9b6d57;height:20px}.fmv-wave i:nth-child(2n){height:31px}.fmv-wave i:nth-child(3n){height:45px}.fmv-wave i:nth-child(5n){height:54px}
.recent-side-list{padding:0!important;margin:0!important;list-style:none!important;transform:rotate(-1deg)}.recent-side-list li{position:relative;margin:0 0 5px;padding:8px 8px 8px 21px!important;min-height:31px;border:0!important;background:linear-gradient(100deg,#dfc68b,#f4dfa5 55%,#c9ad6d)!important;color:#17110c!important;font-weight:700;font-size:9px!important;box-shadow:1px 2px 3px #000;transform:rotate(.7deg)}.recent-side-list li:before{content:"";position:absolute;left:3px;top:5px;width:13px;height:20px;background:linear-gradient(#7d251c,#b53f25);border:1px solid #4d160e}.recent-side-list li:nth-child(even){transform:rotate(-.8deg)}
.fmv-feature-img{display:block;width:100%;height:auto;border:1px solid #60402f;filter:saturate(.9) contrast(1.05)}
.fmv-footer{border-top:2px solid #533323;background:#141516;color:#bca595;padding:12px 0 7px;font-size:9px}.fmv-footer-grid{display:grid;grid-template-columns:1fr 80px 1fr;gap:15px;align-items:center;padding:0 22px}.fmv-footer a{color:#c99575}.fmv-footer-logo{text-align:center;font-size:46px;color:#2a211e;opacity:.75}.fmv-copy{margin-top:8px;font-size:8px}
/* overige pagina's in dezelfde koperstijl */
body.fmv-body .smr-content-card,body.fmv-body .card{background:#191b1d;color:#d0bbae;border:2px solid #865039;border-radius:4px;box-shadow:0 0 0 2px #2e1811,0 0 0 4px #a76042}body.fmv-body .card-header,body.fmv-body .smr-card-title{background:linear-gradient(#d88c61,#733b2a);color:#1a0d09}body.fmv-body main:not(.fmv-page){max-width:1024px;margin:auto;padding:18px 14px}body.fmv-body .form-control,body.fmv-body .form-select{background:#eee2d8;border-color:#70422f;color:#21120d}
@media(max-width:900px){.fmv-grid{grid-template-columns:1fr}.fmv-center{order:1}.fmv-left{order:2}.fmv-right{order:3}.fmv-header-art{height:110px;background-size:auto 110px}.fmv-site-width{width:100%}.fmv-menu .navbar-collapse{padding:6px 12px}.fmv-menu .nav-link{font-size:12px}.fmv-footer-grid{grid-template-columns:1fr;text-align:center}.fmv-footer-grid .text-end{text-align:center!important}.fmv-footer-logo{display:none}}
@media(max-width:520px){.fmv-header-art{height:78px;background-size:auto 78px}.fmv-grid{padding:0 8px}.fmv-page{padding-top:8px}.fmv-ticker-tag,.fmv-ticker a{display:none}.fmv-news .radio-panel-body{min-height:auto;padding:18px!important}}

/* ===== FM Veronica header + menu exact volgens aangeleverde afbeelding ===== */
.fmv-header-1op1{
  width:100%;
  margin:0;
  padding:0;
  background:#0a0a0b;
  border:0;
  box-shadow:0 4px 14px rgba(0,0,0,.9);
}
.fmv-header-stage{
  position:relative;
  width:1024px;
  max-width:100%;
  height:191px;
  margin:0 auto;
  background:#111 url('fmveronica/header-menu-1op1.jpg') center top/1024px 191px no-repeat;
  overflow:hidden;
}
.fmv-home-hotspot{
  position:absolute;
  left:255px;
  top:6px;
  width:515px;
  height:133px;
  z-index:4;
}
.fmv-desktop-hotspots{position:absolute;inset:0;z-index:5;pointer-events:none}
.fmv-desktop-hotspots a{display:block;pointer-events:auto;background:transparent;text-decoration:none}
.fmv-language-hotspot{position:absolute;left:226px;top:142px;width:70px;height:24px}
.fmv-menu-hotspots{
  position:absolute;
  left:298px;
  right:198px;
  top:142px;
  height:25px;
  display:flex;
  align-items:stretch;
}
.fmv-menu-hotspots>a{flex:1 1 0;min-width:35px;height:25px}
.fmv-message-hotspot{position:absolute;right:204px;top:169px;width:74px;height:20px}
.fmv-live-ticker{
  position:absolute;
  z-index:3;
  left:305px;
  right:280px;
  top:171px;
  height:16px;
  overflow:hidden;
  color:#cbb3a5;
  font:700 8px/16px Arial,sans-serif;
  text-transform:uppercase;
  white-space:nowrap;
  text-align:center;
  text-shadow:0 1px 1px #000;
  opacity:.92;
}
.fmv-live-ticker span{display:inline-block;min-width:100%;animation:fmvTickerMove 20s linear infinite}
@keyframes fmvTickerMove{from{transform:translateX(100%)}to{transform:translateX(-100%)}}
.fmv-mobile-menu{display:none!important}

@media (max-width:760px){
  .fmv-header-stage{
    width:100%;
    height:auto;
    aspect-ratio:1024/191;
    background-size:100% 100%;
  }
  .fmv-desktop-hotspots,.fmv-live-ticker{display:none}
  .fmv-home-hotspot{inset:0;width:100%;height:72%;}
  .fmv-mobile-menu{
    display:flex!important;
    margin:0;
    padding:2px 4px;
    background:linear-gradient(#3b241c,#160e0b 55%,#080707);
    border-top:1px solid #8e563d;
    border-bottom:1px solid #5e3829;
  }
  .fmv-mobile-menu .navbar-brand,.fmv-mobile-menu .nav-link{color:#dbc0ae!important;text-transform:uppercase;font-size:12px}
  .fmv-mobile-menu .navbar-toggler{border-color:#8e563d;filter:invert(1)}
  .fmv-mobile-menu .navbar-collapse{background:#100c0a;padding:8px 12px;border-top:1px solid #5e3829}
}

/* =========================================================
   FM VERONICA V302 - nauwkeurige desktopopbouw naar ontwerp
   ========================================================= */
@font-face{font-family:FMVCondensed;src:local('Arial Narrow');font-display:swap}
html,body{min-height:100%;background:#0d0f10!important}
body.fmv-body{font-family:FMVCondensed,'Arial Narrow',Arial,sans-serif!important;background:
 radial-gradient(ellipse at 50% 20%,rgba(106,74,57,.10),transparent 42%),
 repeating-linear-gradient(90deg,rgba(255,255,255,.012) 0,rgba(255,255,255,.012) 1px,transparent 1px,transparent 4px),#111315!important}
.fmv-header-stage{width:1024px!important;height:191px!important;max-width:100%!important;background-size:1024px 191px!important}
.fmv-page{position:relative;padding:11px 0 72px!important;min-height:680px!important;background:
 linear-gradient(90deg,transparent 0,rgba(255,255,255,.012) 50%,transparent 100%),
 radial-gradient(circle at 50% 0,rgba(108,70,51,.13),transparent 43%)!important}
.fmv-page:before{content:"";position:absolute;left:calc(50% - 512px);top:20px;width:115px;height:390px;opacity:.34;background:url('fmveronica/antenna-decoration.png') center top/contain no-repeat;pointer-events:none}
.fmv-page:after{content:"";position:absolute;right:calc(50% - 512px);top:15px;width:115px;height:300px;opacity:.25;background:url('fmveronica/cable-decoration.png') center top/contain no-repeat;pointer-events:none}
.fmv-grid{position:relative;z-index:2;width:808px!important;max-width:calc(100% - 24px)!important;margin:0 auto!important;padding:0!important;grid-template-columns:192px 402px 192px!important;gap:11px!important}
.radio-panel{border:1px solid #31170f!important;border-radius:2px!important;box-shadow:0 0 0 2px #8b4a32,0 0 0 3px #28130d,0 4px 10px rgba(0,0,0,.9)!important;margin-bottom:14px!important;background:#17191a!important}
.radio-panel:before,.radio-panel:after{left:-4px!important;right:-4px!important;height:8px!important;border-radius:5px!important;background:linear-gradient(180deg,#f0aa79 0,#a15b3d 28%,#4d2418 52%,#bd704d 75%,#5a2b1d 100%)!important;box-shadow:inset 0 1px rgba(255,230,208,.55),0 1px 2px #000!important}
.radio-panel:before{top:-5px!important}.radio-panel:after{bottom:-5px!important}
.radio-panel-title{min-height:23px!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:4px 7px 3px!important;font-size:10px!important;letter-spacing:.15px!important;color:#1a0d08!important;background:linear-gradient(180deg,#d89063 0,#9e573b 42%,#5a2b1d 49%,#bd6d49 55%,#70402d 100%)!important;border-left:1px solid #4b2419!important;border-right:1px solid #4b2419!important}
.radio-panel-body{padding:12px!important;font-size:10px!important;line-height:1.48!important;background:linear-gradient(135deg,#1d1f20 0,#121415 68%,#191b1c 100%)!important}
.fmv-welcome .radio-panel-body{min-height:131px!important;padding:15px 23px!important}
.fmv-welcome h1{font-size:17px!important;margin:0 0 5px!important;font-weight:500!important;color:#c58b6c!important}
.fmv-news .radio-panel-body{min-height:432px!important;padding:18px 21px!important;font-size:9px!important;line-height:1.58!important}
.fmv-news p{margin:0 0 10px!important}
.fmv-dj-card{min-height:139px!important;padding:10px 12px!important}
.fmv-dj-row{justify-content:center!important;gap:9px!important}.fmv-dj-row strong{font-size:23px!important}
.fmv-dj-row img{width:82px!important;height:82px!important;border:3px solid #93563e!important;box-shadow:0 0 0 2px #24120d,0 2px 6px #000!important}
.fmv-dj-card h3{font-size:14px!important;margin-top:6px!important}.fmv-dj-card p{font-size:8px!important}
.fmv-player-icons{gap:6px!important;margin:5px 0 11px!important;flex-wrap:wrap}.fmv-player-icons span{width:29px!important;height:29px!important;font-size:15px!important}
.online-player-panel .radio-panel-body{padding:10px 12px 12px!important}.online-player-panel h4{font-size:12px!important;margin:2px 0!important}.online-player-panel p{font-size:8px!important;margin:0 0 5px!important}.fmv-wave{height:55px!important;margin:7px 0!important}
.recent-side-list{padding:4px 1px 1px!important}.recent-side-list li{min-height:30px!important;margin-bottom:4px!important;padding:7px 5px 7px 20px!important;font-size:8px!important;line-height:1.25!important}
.fmv-feature-img{max-height:176px;object-fit:cover}
.fmv-right .radio-panel:nth-child(3) .fmv-feature-img{height:151px;object-fit:cover}
.fmv-footer{position:relative;padding:13px 0 7px!important;border-top:2px solid #503022!important;background:#121415!important}.fmv-footer-grid{width:808px!important;max-width:calc(100% - 30px)!important;padding:0!important;font-size:8px!important}.fmv-footer-logo{font-size:36px!important}
@media(max-width:860px){.fmv-grid{width:calc(100% - 20px)!important;max-width:none!important;grid-template-columns:1fr!important}.fmv-center{order:1}.fmv-left{order:2}.fmv-right{order:3}.fmv-page:before,.fmv-page:after{display:none}.fmv-footer-grid{width:calc(100% - 24px)!important}}
@media(max-width:760px){.fmv-header-stage{height:auto!important;background-size:100% 100%!important}.fmv-page{padding-top:9px!important}.radio-panel-body{font-size:12px!important}.fmv-news .radio-panel-body{font-size:11px!important;min-height:auto!important}}

/* =========================================================
   FM VERONICA V303 - losse banner zonder ingebakken menu
   Banner bevat alleen logo, radio's en microfoon.
   Menu en berichtenbalk worden volledig door PHP opgebouwd.
   ========================================================= */
.fmv-header-v303{width:100%;margin:0;padding:0;background:#090a0a;box-shadow:0 4px 16px rgba(0,0,0,.95);position:relative;z-index:20}
.fmv-header-v303 .fmv-banner-link{display:block;width:1024px;max-width:100%;margin:0 auto;line-height:0;background:#17120f}
.fmv-header-v303 .fmv-banner-image{display:block;width:100%;height:auto;aspect-ratio:1024/140;object-fit:cover;object-position:center top}
.fmv-php-menu{width:100%;min-height:31px;padding:0!important;margin:0;background:linear-gradient(180deg,#4b2b20 0,#21130f 28%,#120d0b 62%,#070707 100%);border-top:1px solid #9e6248;border-bottom:1px solid #4f2b20;box-shadow:inset 0 1px rgba(255,221,197,.18),0 2px 4px #000}
.fmv-php-menu .fmv-menu-inner{width:1024px;max-width:100%;min-height:31px;margin:0 auto;padding:0 14px!important}
.fmv-php-menu .navbar-nav{align-items:stretch;justify-content:center;flex-wrap:nowrap}
.fmv-php-menu .nav-item{display:flex;align-items:stretch}
.fmv-php-menu .nav-link{display:flex;align-items:center;justify-content:center;min-height:30px;padding:0 9px!important;color:#d7b8a4!important;font:700 10px/1 'Arial Narrow',Arial,sans-serif;text-transform:uppercase;white-space:nowrap;text-shadow:0 1px 1px #000;border-left:1px solid rgba(255,255,255,.035);border-right:1px solid rgba(0,0,0,.45)}
.fmv-php-menu .nav-link:hover,.fmv-php-menu .nav-link:focus{color:#fff1df!important;background:linear-gradient(180deg,rgba(199,111,72,.45),rgba(48,23,15,.75));box-shadow:inset 0 -2px #b66a47}
.fmv-mobile-brand{display:none!important;color:#d6b29d!important;font-size:13px!important;letter-spacing:.7px}
.fmv-php-menu .navbar-toggler{padding:3px 7px;margin:3px 0;border:1px solid #8f583f;border-radius:3px;box-shadow:inset 0 0 0 1px #1a0d09}
.fmv-php-menu .navbar-toggler-icon{filter:sepia(1) saturate(.6) brightness(1.8)}
.fmv-php-ticker{width:100%;height:27px;background:linear-gradient(180deg,#151515,#080909);border-bottom:1px solid #553126;box-shadow:inset 0 1px #2e201b}
.fmv-ticker-inner{width:1024px;max-width:100%;height:27px;margin:0 auto;display:grid;grid-template-columns:116px minmax(0,1fr) 116px;align-items:center;gap:7px;padding:0 12px}
.fmv-ticker-station,.fmv-ticker-button{height:19px;display:flex;align-items:center;justify-content:center;color:#c9ad9a!important;text-decoration:none;font:700 9px/1 Arial,sans-serif;white-space:nowrap;background:linear-gradient(180deg,#2b211d,#100c0a);border:1px solid #4e3328;border-radius:2px;text-shadow:0 1px #000}
.fmv-ticker-station:hover,.fmv-ticker-button:hover{color:#fff0e4!important;border-color:#86503a}
.fmv-ticker-track{height:18px;overflow:hidden;position:relative;color:#d4b7a4;font:700 9px/18px Arial,sans-serif;text-transform:uppercase;white-space:nowrap;text-shadow:0 1px #000}
.fmv-ticker-track span{display:inline-block;min-width:100%;padding-left:100%;animation:fmvTickerV303 24s linear infinite}
@keyframes fmvTickerV303{from{transform:translateX(0)}to{transform:translateX(-100%)}}
@media(max-width:991.98px){
  .fmv-header-v303 .fmv-banner-link{width:100%}
  .fmv-header-v303 .fmv-banner-image{aspect-ratio:1024/140;min-height:74px;object-fit:cover}
  .fmv-php-menu .fmv-menu-inner{padding:0 9px!important}
  .fmv-mobile-brand{display:block!important}
  .fmv-php-menu .navbar-collapse{width:100%;margin:0 -9px;padding:5px 9px 8px;background:#100c0a;border-top:1px solid #5b3427;box-shadow:0 7px 12px rgba(0,0,0,.8)}
  .fmv-php-menu .navbar-nav{align-items:stretch;flex-wrap:wrap}
  .fmv-php-menu .nav-link{justify-content:flex-start;min-height:32px;padding:0 10px!important;font-size:12px;border-bottom:1px solid rgba(140,84,59,.22)}
  .fmv-ticker-inner{grid-template-columns:92px minmax(0,1fr);padding:0 6px;gap:5px}
  .fmv-ticker-button{display:none}
}
@media(max-width:520px){
  .fmv-header-v303 .fmv-banner-image{height:82px;min-height:82px;aspect-ratio:auto;object-fit:cover;object-position:center top}
  .fmv-php-menu{min-height:35px}
  .fmv-ticker-inner{grid-template-columns:78px minmax(0,1fr)}
  .fmv-ticker-station{font-size:8px}
  .fmv-ticker-track{font-size:8px}
}

/* =========================================================
   V304 - Donkere koperstijl aangepast op de bestaande PHP-site
   Gebaseerd op de aangeleverde CSS, zonder bestaande PHP te breken
   ========================================================= */
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body.fmv-body{
  background-color:#12100e!important;
  background-image:
    radial-gradient(#251c16 15%,transparent 15%),
    radial-gradient(#1c140f 15%,transparent 15%)!important;
  background-size:30px 30px!important;
  background-position:0 0,15px 15px!important;
  font-family:'Segoe UI',Arial,sans-serif!important;
  color:#e6dfd5!important;
  min-height:100vh;
}

/* Header en banner */
.fmv-header-v303{
  width:1024px!important;
  max-width:100%!important;
  margin:0 auto!important;
  background:#1a1510!important;
  border-left:2px solid #6b4c35;
  border-right:2px solid #6b4c35;
  box-shadow:0 0 30px rgba(0,0,0,.85)!important;
  overflow:visible!important;
}
.fmv-header-v303 .fmv-banner-link{width:100%!important;max-width:none!important;background:#1a1510!important}
.fmv-header-v303 .fmv-banner-image{
  width:100%!important;
  height:auto!important;
  aspect-ratio:auto!important;
  object-fit:contain!important;
  object-position:center!important;
}

/* PHP menu */
.fmv-php-menu{
  min-height:38px!important;
  background:#231811!important;
  border-top:1px solid #845c3e!important;
  border-bottom:2px solid #523725!important;
  box-shadow:inset 0 1px rgba(255,255,255,.05),0 2px 5px rgba(0,0,0,.8)!important;
}
.fmv-php-menu .fmv-menu-inner{width:100%!important;max-width:none!important;min-height:38px!important;padding:0 8px!important}
.fmv-php-menu .navbar-nav{justify-content:center!important;align-items:stretch!important;flex-wrap:wrap!important}
.fmv-php-menu .nav-link{
  min-height:38px!important;
  padding:0 12px!important;
  color:#c9b9ad!important;
  font:600 11px/1 'Segoe UI',Arial,sans-serif!important;
  letter-spacing:.1px;
  text-transform:uppercase!important;
  border:0!important;
  box-shadow:none!important;
}
.fmv-php-menu .nav-link:hover,.fmv-php-menu .nav-link:focus,.fmv-php-menu .nav-link.active{
  color:#fff!important;
  background:#3b281b!important;
  box-shadow:inset 0 -3px 0 #df9b6d!important;
}

/* Berichtenbalk */
.fmv-php-ticker{
  height:34px!important;
  background:#0f0a07!important;
  border-bottom:2px solid #3d2517!important;
}
.fmv-ticker-inner{
  width:100%!important;
  max-width:none!important;
  height:34px!important;
  grid-template-columns:120px minmax(0,1fr) 120px!important;
  gap:0!important;
  padding:0!important;
}
.fmv-ticker-station,.fmv-ticker-button{
  height:34px!important;
  border:0!important;
  border-radius:0!important;
  background:#845c3e!important;
  color:#fff!important;
  font:700 10px/1 'Segoe UI',Arial,sans-serif!important;
  text-transform:uppercase;
}
.fmv-ticker-track{
  height:34px!important;
  padding:0 12px!important;
  color:#df9b6d!important;
  font:600 10px/34px 'Segoe UI',Arial,sans-serif!important;
  background:#0f0a07;
}

/* Hoofdsite */
.fmv-page{
  width:1024px!important;
  max-width:100%!important;
  margin:0 auto!important;
  padding:15px!important;
  min-height:650px!important;
  background:#16110d!important;
  border-left:2px solid #6b4c35;
  border-right:2px solid #6b4c35;
}
.fmv-page:before,.fmv-page:after{display:none!important}
.fmv-grid{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  display:grid!important;
  grid-template-columns:250px minmax(0,1fr) 270px!important;
  gap:15px!important;
  align-items:start;
}

/* Panelen */
body.fmv-body .radio-panel,
body.fmv-body .smr-content-card,
body.fmv-body .card{
  background:#211914!important;
  border:2px solid #4a3323!important;
  border-radius:6px!important;
  margin-bottom:15px!important;
  overflow:hidden!important;
  color:#e6dfd5!important;
  box-shadow:0 5px 14px rgba(0,0,0,.42)!important;
}
body.fmv-body .radio-panel-title,
body.fmv-body .smr-card-title,
body.fmv-body .card-header{
  background:linear-gradient(to bottom,#422f22,#2d1f16)!important;
  padding:10px 15px!important;
  min-height:auto!important;
  color:#df9b6d!important;
  border:0!important;
  border-bottom:2px solid #5a3c27!important;
  text-align:center!important;
  text-transform:uppercase!important;
  font-size:13px!important;
  font-weight:700!important;
  line-height:1.2!important;
  text-shadow:none!important;
}
body.fmv-body .radio-panel-body,
body.fmv-body .smr-card-body,
body.fmv-body .card-body{
  padding:15px!important;
  background:#211914!important;
  color:#e6dfd5!important;
  font-size:13px!important;
  line-height:1.6!important;
}

/* Middenblokken */
.fmv-welcome .radio-panel-body{min-height:150px!important;padding:22px!important}
.fmv-welcome h1{font-size:22px!important;color:#df9b6d!important;margin:0 0 8px!important}
.fmv-news .radio-panel-body{min-height:420px!important;padding:22px!important;font-size:13px!important;line-height:1.65!important}
.fmv-news p{margin-bottom:12px!important}

/* DJ */
.fmv-dj-card{padding:15px!important;min-height:0!important;text-align:center!important}
.fmv-dj-row{justify-content:center!important;gap:12px!important}
.fmv-dj-row img,.onair-avatar{
  width:100px!important;height:100px!important;border-radius:50%!important;
  border:3px solid #845c3e!important;background:#33261f!important;
  box-shadow:0 0 0 2px #21130d,0 4px 12px rgba(0,0,0,.55)!important;
}
.fmv-dj-row strong,.onair-title{color:#df9b6d!important}

/* Luisterknoppen en speler */
.fmv-player-icons{display:flex!important;justify-content:center!important;gap:8px!important;flex-wrap:wrap!important;margin:8px 0 14px!important}
.fmv-player-icons span{
  width:36px!important;height:36px!important;border-radius:6px!important;
  background:linear-gradient(#4a3121,#25170d)!important;
  border:2px solid #845c3e!important;color:#df9b6d!important;
  box-shadow:inset 0 0 8px #000,0 2px 5px rgba(0,0,0,.6)!important;
}
.online-player-panel audio{width:100%!important;filter:sepia(.7) brightness(.72)!important}
.fmv-wave{background:#120d0a!important;border:1px solid #3a2518!important}

/* Recente tracks */
.recent-side-list{list-style:none!important;padding:0!important;margin:0!important}
.recent-side-list li{
  position:relative;
  margin:0 0 7px!important;
  padding:9px 10px 9px 16px!important;
  border:1px solid #4a3323!important;
  background:#dfc785!important;
  color:#1c120c!important;
  font-size:11px!important;
  font-weight:700!important;
  line-height:1.3!important;
  box-shadow:0 2px 4px rgba(0,0,0,.35)!important;
}
.recent-side-list li:before{content:"";position:absolute;left:4px;top:8px;width:6px;height:16px;background:#8c2e1d;border:1px solid #5c1a10}
.recent-side-list li:nth-child(even){transform:rotate(-.4deg)}
.recent-side-list li:nth-child(odd){transform:rotate(.35deg)}

/* Afbeeldingen */
.fmv-feature-img,.radio-panel-img{width:100%!important;height:auto!important;max-height:none!important;object-fit:contain!important;border:1px solid #4a3323!important;border-radius:4px!important;background:#120d0a!important}

/* Algemene formulieren/knoppen */
body.fmv-body .form-control,body.fmv-body .form-select,body.fmv-body textarea{
  background:#eee2d8!important;color:#21120d!important;border:1px solid #70422f!important
}
body.fmv-body .btn-primary,body.fmv-body .btn-warning,.play-btn{
  background:#845c3e!important;border-color:#845c3e!important;color:#fff!important
}
body.fmv-body a{color:#df9b6d}

/* Footer */
.fmv-footer,.site-footer{
  width:1024px!important;max-width:100%!important;margin:0 auto!important;
  background:#0f0a07!important;border:2px solid #4a3323!important;border-top-width:2px!important;
  padding:15px!important;color:#6e5749!important;font-size:10px!important
}
.fmv-footer-grid{width:100%!important;max-width:none!important;padding:0!important}

@media(max-width:992px){
  body.fmv-body{padding:0!important}
  .fmv-header-v303,.fmv-page,.fmv-footer{width:100%!important;border-left:0!important;border-right:0!important}
  .fmv-grid{grid-template-columns:1fr!important}
  .fmv-center{order:1!important}.fmv-left{order:2!important}.fmv-right{order:3!important}
  .fmv-mobile-brand{display:block!important;color:#df9b6d!important;font-size:14px!important}
  .fmv-php-menu .navbar-collapse{background:#100c0a!important;margin:0 -8px!important;padding:6px 8px 10px!important;border-top:1px solid #5e3829!important}
  .fmv-php-menu .nav-link{justify-content:flex-start!important;font-size:12px!important;min-height:34px!important;padding:0 10px!important}
  .fmv-ticker-inner{grid-template-columns:95px minmax(0,1fr)!important}
  .fmv-ticker-button{display:none!important}
}
@media(max-width:560px){
  .fmv-page{padding:8px!important}
  .fmv-header-v303 .fmv-banner-image{height:auto!important;min-height:0!important;object-fit:contain!important}
  .fmv-ticker-station{font-size:8px!important}
  .fmv-ticker-track{font-size:8px!important;padding:0 6px!important}
  body.fmv-body .radio-panel-body,body.fmv-body .smr-card-body,body.fmv-body .card-body{font-size:12px!important;padding:12px!important}
  .fmv-news .radio-panel-body{font-size:12px!important;min-height:0!important;padding:15px!important}
}

/* =========================================================
   FM VERONICA V305 - nieuwe banner boven de complete site
   ========================================================= */
.fmv-header-v303 {
    width: 100% !important;
    background: #0b0a09 !important;
}

.fmv-header-v303 .fmv-banner-link {
    display: block !important;
    width: 100% !important;
    max-width: 1200px !important;
    margin: 0 auto !important;
    padding: 0 !important;
    line-height: 0 !important;
    background: #080706 !important;
    overflow: hidden !important;
    border-left: 1px solid #5b3824 !important;
    border-right: 1px solid #5b3824 !important;
    box-shadow: 0 8px 22px rgba(0,0,0,.65) !important;
}

.fmv-header-v303 .fmv-banner-image {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    aspect-ratio: auto !important;
    object-fit: contain !important;
    object-position: center center !important;
}

/* Het PHP-menu blijft los onder de banner staan. */
.fmv-header-v303 .fmv-php-menu {
    width: 100% !important;
    max-width: 1200px !important;
    margin: 0 auto !important;
    position: relative !important;
    z-index: 5 !important;
}

.fmv-header-v303 .fmv-php-ticker {
    width: 100% !important;
    max-width: 1200px !important;
    margin: 0 auto !important;
}

@media (max-width: 767.98px) {
    .fmv-header-v303 .fmv-banner-link {
        width: 100% !important;
        max-width: none !important;
        border-left: 0 !important;
        border-right: 0 !important;
        box-shadow: 0 5px 14px rgba(0,0,0,.6) !important;
    }

    .fmv-header-v303 .fmv-banner-image {
        width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        object-fit: contain !important;
    }
}

/* FM VERONICA V306 - smalle banner over de volledige sitebreedte */
.fmv-header-v303 .fmv-banner-link,
.fmv-header-v303 .fmv-php-menu,
.fmv-header-v303 .fmv-php-ticker {
    width: 100% !important;
    max-width: 1200px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}
.fmv-header-v303 .fmv-banner-image {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 1024 / 140 !important;
    object-fit: fill !important;
}
@media (max-width: 767.98px) {
    .fmv-header-v303 .fmv-banner-image {
        width: 100% !important;
        height: auto !important;
        aspect-ratio: 1024 / 140 !important;
        object-fit: fill !important;
    }
}

/* =========================================================
   FM VERONICA V307 - nieuwe banner en volledige schermbreedte
   ========================================================= */
html,body{width:100%;overflow-x:hidden}
body.fmv-body{padding:0!important;margin:0!important}
.fmv-header-v303,
.fmv-header-v303 .fmv-banner-link,
.fmv-header-v303 .fmv-php-menu,
.fmv-header-v303 .fmv-php-ticker,
.fmv-page,
.fmv-footer,
.site-footer{
  width:100%!important;
  max-width:none!important;
  margin-left:0!important;
  margin-right:0!important;
  border-left:0!important;
  border-right:0!important;
}
.fmv-header-v303 .fmv-banner-link{background:#080706!important;box-shadow:0 7px 20px rgba(0,0,0,.75)!important}
.fmv-header-v303 .fmv-banner-image{
  display:block!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  aspect-ratio:1024/318!important;
  object-fit:fill!important;
  object-position:center!important;
}
.fmv-php-menu .fmv-menu-inner,
.fmv-ticker-inner,
.fmv-footer-grid{width:100%!important;max-width:none!important}
.fmv-page{padding:18px clamp(12px,2vw,34px)!important;min-height:650px!important}
.fmv-grid{
  width:100%!important;
  max-width:none!important;
  grid-template-columns:minmax(230px,18vw) minmax(0,1fr) minmax(250px,20vw)!important;
  gap:clamp(12px,1.4vw,24px)!important;
}
@media(max-width:992px){
  .fmv-header-v303 .fmv-banner-image{aspect-ratio:1024/318!important;object-fit:cover!important}
  .fmv-grid{grid-template-columns:1fr!important}
  .fmv-page{padding:10px!important}
}
@media(max-width:560px){
  .fmv-header-v303 .fmv-banner-image{aspect-ratio:1024/318!important;object-fit:cover!important}
}


/* =========================================================
   FM VERONICA V308 - gelijke breedte op ALLE openbare pagina's
   ========================================================= */
:root{
  --fmv-page-pad:clamp(12px,2vw,36px);
  --fmv-left-width:clamp(235px,18vw,300px);
  --fmv-right-width:clamp(255px,20vw,330px);
  --fmv-gap:clamp(12px,1.35vw,24px);
}

/* De banner, navigatie, ticker, inhoud en footer gebruiken dezelfde breedte. */
body.fmv-body .fmv-header-v303,
body.fmv-body .fmv-header-v303 .fmv-banner-link,
body.fmv-body .fmv-header-v303 .fmv-php-menu,
body.fmv-body .fmv-header-v303 .fmv-php-ticker,
body.fmv-body .fmv-page,
body.fmv-body .radio-home-wrap,
body.fmv-body .fmv-footer,
body.fmv-body .site-footer{
  width:100%!important;
  max-width:none!important;
  margin-left:0!important;
  margin-right:0!important;
}

/* Eén uniforme 3-koloms-layout voor home, tracks, programmering, chat enz. */
body.fmv-body .fmv-page,
body.fmv-body .fmv-three-column-page{
  padding:18px var(--fmv-page-pad)!important;
}
body.fmv-body .fmv-grid,
body.fmv-body .fmv-three-column-page > .fmv-grid{
  display:grid!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  grid-template-columns:var(--fmv-left-width) minmax(0,1fr) var(--fmv-right-width)!important;
  gap:var(--fmv-gap)!important;
  align-items:start!important;
}
body.fmv-body .fmv-left,
body.fmv-body .fmv-center,
body.fmv-body .fmv-right{
  min-width:0!important;
  width:auto!important;
  max-width:none!important;
}

/* Oude Bootstrap-containerbeperkingen op overige pagina's uitschakelen. */
body.fmv-body main.container,
body.fmv-body main.container-fluid,
body.fmv-body .radio-home-wrap > .container-fluid,
body.fmv-body .chat-page-3col .container-fluid,
body.fmv-body .guestbook-page-3col .container-fluid{
  width:100%!important;
  max-width:none!important;
  margin-left:0!important;
  margin-right:0!important;
  padding-left:var(--fmv-page-pad)!important;
  padding-right:var(--fmv-page-pad)!important;
}

/* Tabellen en pagina-inhoud mogen de middenkolom volledig benutten. */
body.fmv-body .recent-tracks-page,
body.fmv-body .schedule-page-panel,
body.fmv-body .smr-content-card,
body.fmv-body .content-panel,
body.fmv-body .table-responsive,
body.fmv-body table{
  width:100%!important;
  max-width:none!important;
}
body.fmv-body .recent-tracks-table{
  table-layout:auto!important;
}
body.fmv-body .recent-tracks-table th,
body.fmv-body .recent-tracks-table td{
  white-space:normal!important;
  overflow-wrap:anywhere!important;
}

/* Op middelgrote schermen iets smallere zijpanelen. */
@media (max-width:1200px){
  :root{--fmv-left-width:220px;--fmv-right-width:235px;--fmv-page-pad:14px;--fmv-gap:12px}
}

/* Tablet en mobiel: midden eerst, daarna links en rechts. */
@media (max-width:992px){
  body.fmv-body .fmv-grid,
  body.fmv-body .fmv-three-column-page > .fmv-grid{
    grid-template-columns:minmax(0,1fr)!important;
  }
  body.fmv-body .fmv-center{order:1!important}
  body.fmv-body .fmv-left{order:2!important}
  body.fmv-body .fmv-right{order:3!important}
  body.fmv-body .fmv-page,
  body.fmv-body .fmv-three-column-page,
  body.fmv-body main.container,
  body.fmv-body main.container-fluid{
    padding-left:10px!important;
    padding-right:10px!important;
  }
}
