.foutfm-request-shell{
  --fout-orange:#ff7a00;--fout-pink:#ff2d95;--fout-yellow:#ffd447;--fout-dark:#17111f;--fout-card-bg:#fff;--fout-title:#17111f;--fout-text:#4a3d4f;--fout-widget-bg:#fff;--fout-button-text:#fff;--fout-max-width:1100px;--fout-shell-padding:18px;--fout-card-padding:14px;--fout-radius:28px;
  max-width:var(--fout-max-width);margin:24px auto;padding:var(--fout-shell-padding);border-radius:var(--fout-radius);
  background:radial-gradient(circle at 10% 10%, color-mix(in srgb,var(--fout-yellow) 55%, transparent), transparent 28%),linear-gradient(135deg,#fff7e8 0%,var(--fout-card-bg) 42%,#ffe8f5 100%);
  box-shadow:0 18px 45px rgba(23,17,31,.12);border:1px solid color-mix(in srgb,var(--fout-orange) 25%, transparent);font-family:inherit;position:relative;overflow:hidden
}

/* v2.12.2: laptop/middenscherm-fix.
   De officiële popup had op smallere laptops soms een vaste desktopbreedte.
   Maak de popup en de meldingsblokken dan vloeibaar binnen de beschikbare
   contentkolom, zodat tekst niet in een smalle strook wordt afgebroken en de
   pagina geen horizontale overflow krijgt. */
@media (min-width:641px) and (max-width:1100px){
  .foutfm-request-shell{
    width:100%!important;
    max-width:100%!important;
    box-sizing:border-box!important;
  }
  .foutfm-request-shell .sc-track-request-widget,
  .foutfm-request-shell .sc-track-request-widget > div[is="track-request-widget"]{
    min-width:0!important;
    max-width:100%!important;
    width:100%!important;
    box-sizing:border-box!important;
  }
  .foutfm-request-shell .sc-track-request-widget .modal-container,
  .foutfm-request-shell .sc-track-request-widget .modal-wrapper,
  .foutfm-request-shell .sc-track-request-widget .modal,
  .foutfm-request-shell .sc-track-request-widget [role="dialog"]{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin-left:auto!important;
    margin-right:auto!important;
    box-sizing:border-box!important;
  }
  .foutfm-request-shell .sc-track-request-widget .modal-container > *,
  .foutfm-request-shell .sc-track-request-widget .modal-wrapper > *,
  .foutfm-request-shell .sc-track-request-widget .modal > *,
  .foutfm-request-shell .sc-track-request-widget [role="dialog"] > *,
  .foutfm-request-shell .sc-track-request-widget .modal-message{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    box-sizing:border-box!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
    word-break:normal!important;
  }
}
.foutfm-request-shell:before{content:"";position:absolute;inset:auto -60px -90px auto;width:220px;height:220px;border-radius:50%;background:color-mix(in srgb,var(--fout-pink) 14%, transparent);pointer-events:none}
.foutfm-request-hero{text-align:center;padding:14px 12px 18px;position:relative;z-index:1}.foutfm-badge{display:inline-flex;align-items:center;gap:8px;background:var(--fout-dark);color:#fff;border-radius:999px;padding:7px 13px;font-size:13px;font-weight:800;letter-spacing:.02em;box-shadow:0 8px 18px rgba(0,0,0,.16)}
.foutfm-badge:before{content:"🪩"}.foutfm-badge:after{content:"🎧"}.foutfm-request-hero h2{margin:12px 0 6px;font-size:clamp(26px,4vw,44px);line-height:1.05;font-weight:900;color:var(--fout-title)}
.foutfm-request-hero p{margin:0 auto;max-width:720px;color:var(--fout-text);font-size:16px}.foutfm-request-card{position:relative;z-index:1;background:color-mix(in srgb,var(--fout-widget-bg) 92%, transparent);border-radius:calc(var(--fout-radius) - 4px);padding:var(--fout-card-padding);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--fout-orange) 14%, transparent)}
.foutfm-request-shell .sc-track-request-widget{width:100%}.foutfm-request-shell.is-compact .sc-track-request-widget{max-height:none;overflow:visible}
.foutfm-request-shell button,.foutfm-request-shell input[type="button"],.foutfm-request-shell input[type="submit"],.foutfm-request-shell .btn,.foutfm-request-shell [role="button"]{border-radius:999px!important;background:linear-gradient(135deg,var(--fout-orange),var(--fout-pink))!important;color:var(--fout-button-text)!important;border:0!important;font-weight:900!important;letter-spacing:.01em!important;box-shadow:0 8px 18px color-mix(in srgb,var(--fout-pink) 25%, transparent)!important;transition:transform .15s ease, box-shadow .15s ease!important;text-decoration:none!important;cursor:pointer!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:6px!important;line-height:1.15!important}
.foutfm-request-shell button:hover,.foutfm-request-shell input[type="button"]:hover,.foutfm-request-shell input[type="submit"]:hover,.foutfm-request-shell .btn:hover,.foutfm-request-shell [role="button"]:hover{transform:translateY(-1px)!important;box-shadow:0 12px 24px color-mix(in srgb,var(--fout-orange) 28%, transparent)!important}
.foutfm-request-shell .foutfm-request-button,
.foutfm-request-shell .foutfm-new-tracks-toggle{
  background:linear-gradient(135deg,var(--fout-dark),var(--fout-pink))!important;
  border-radius:999px!important;
  color:var(--fout-button-text)!important;
  height:44px!important;
  min-height:44px!important;
  box-sizing:border-box!important;
  padding:11px 18px!important;
  line-height:1.15!important;
  box-shadow:0 0 0 3px color-mix(in srgb,var(--fout-pink) 13%, transparent),0 10px 24px color-mix(in srgb,var(--fout-pink) 32%, transparent)!important;
}
.foutfm-request-shell .foutfm-request-button:hover,
.foutfm-request-shell .foutfm-new-tracks-toggle:hover{
  box-shadow:0 0 0 4px color-mix(in srgb,var(--fout-pink) 18%, transparent),0 14px 30px color-mix(in srgb,var(--fout-orange) 34%, transparent)!important;
}
.foutfm-request-shell .foutfm-pagination-button{
  min-width:40px!important;
  min-height:38px!important;
  padding:8px 12px!important;
  border-radius:13px!important;
  box-shadow:0 5px 14px color-mix(in srgb,var(--fout-pink) 20%, transparent)!important;
}
.foutfm-request-shell img{border-radius:16px!important}.foutfm-request-shell input,.foutfm-request-shell textarea{border-radius:14px!important;border:1px solid rgba(23,17,31,.18)!important;padding:10px 12px!important}
@media(max-width:640px){.foutfm-request-shell{padding:12px;border-radius:22px}.foutfm-request-card{padding:8px}.foutfm-request-hero{padding:10px 6px 14px}}

/* v1.9.3 veilige fix: alleen knoppen afronden, geen grid/flex van de officiële widget overschrijven. */
.foutfm-request-shell .foutfm-request-button,
.foutfm-request-shell button.foutfm-request-button,
.foutfm-request-shell input.foutfm-request-button,
.foutfm-request-shell a.foutfm-request-button,
.foutfm-request-shell .sc-track-request-widget button,
.foutfm-request-shell .sc-track-request-widget input[type="button"],
.foutfm-request-shell .sc-track-request-widget input[type="submit"]{
  border-radius:999px!important;
  overflow:hidden!important;
}



/* v2.8.0: vaste maat voor de echte track-cover in de verzoekkaart. */
.foutfm-request-shell .foutfm-track-card-enhanced img.foutfm-track-cover-img{
  width:150px!important;
  max-width:100%!important;
  aspect-ratio:1/1!important;
  height:auto!important;
  object-fit:cover!important;
  object-position:center center!important;
  display:block!important;
  margin-left:auto!important;
  margin-right:auto!important;
  margin-bottom:10px!important;
  border-radius:16px!important;
}
@media(max-width:640px){
  .foutfm-request-shell .foutfm-track-card-enhanced img.foutfm-track-cover-img{
    width:130px!important;
  }
}


/* v1.9.8: breedte optie voor verzoekpagina */
.foutfm-request-shell.is-full-width{
  width:100%!important;
  max-width:none!important;
  margin-left:0!important;
  margin-right:0!important;
}
.foutfm-request-shell.is-fixed-width{
  max-width:var(--fout-max-width)!important;
  margin-left:auto!important;
  margin-right:auto!important;
}

/* v2.8.1: alleen de verzoekwidget; Now Playing/status-widget is volledig verwijderd. */
.foutfm-request-card{
  overflow:visible!important;
}
.foutfm-official-widget,
.foutfm-official-widget > div[is="track-request-widget"]{
  width:100%!important;
  max-width:100%!important;
  box-sizing:border-box!important;
}
@media(max-width:768px){
  .foutfm-request-shell .foutfm-track-card-enhanced,
  .foutfm-request-shell .foutfm-track-card,
  .foutfm-request-shell .track-card{
    margin-left:auto!important;
    margin-right:auto!important;
  }
}

/* v2.9.2: actuele plaat centraal boven de Jukebox + wekelijkse Foute Top 10 */
.foutfm-vote-zone{
  margin:0 0 18px;padding:20px 18px 18px;border-radius:22px;text-align:center;
  background:linear-gradient(135deg,rgba(255,212,71,.18),rgba(255,45,149,.08));
  box-shadow:inset 0 0 0 1px rgba(23,17,31,.07)
}
.foutfm-vote-zone-head{max-width:720px;margin:0 auto 16px}
.foutfm-vote-zone-kicker{display:block;margin-bottom:4px;color:var(--fout-pink);font-size:12px;font-weight:950;letter-spacing:.08em;text-transform:uppercase}
.foutfm-vote-zone h3{margin:0;color:var(--fout-dark);font-size:clamp(23px,3vw,32px);line-height:1.08;font-weight:950}
.foutfm-vote-zone-head p{margin:7px auto 0;color:var(--fout-text);font-size:14px;line-height:1.45}
.foutfm-vote-current{max-width:620px;margin:0 auto}
.foutfm-vote-loading{width:100%;padding:18px;color:var(--fout-text);font-weight:750;text-align:center}
.foutfm-vote-loading.is-error{background:rgba(255,255,255,.68);border-radius:16px}
.foutfm-now-vote-card{
  display:grid;grid-template-columns:150px minmax(0,1fr);align-items:center;gap:22px;
  max-width:590px;margin:0 auto;padding:16px;border-radius:22px;background:#fff;text-align:left;
  box-shadow:0 10px 28px rgba(23,17,31,.10)
}
.foutfm-now-vote-cover-wrap{display:flex;justify-content:center}
.foutfm-now-vote-cover{width:150px!important;height:150px!important;max-width:none!important;object-fit:cover!important;border-radius:18px!important;display:block!important;margin:0!important;box-shadow:0 8px 22px rgba(23,17,31,.14)}
.foutfm-now-vote-content{min-width:0;display:flex;flex-direction:column;align-items:flex-start}
.foutfm-now-vote-label{font-size:11px;font-weight:950;letter-spacing:.10em;color:var(--fout-pink);margin-bottom:5px}
.foutfm-now-vote-title{display:block;width:100%;margin-top:4px;font-size:15px;line-height:1.2;color:var(--fout-text);font-weight:750;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.foutfm-now-vote-artist{display:block;width:100%;font-size:22px;line-height:1.12;color:var(--fout-dark);font-weight:950;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.foutfm-now-vote-count{display:block;margin-top:8px;font-size:12px;color:var(--fout-text);font-weight:750}
.foutfm-jukebox-divider{display:flex;align-items:center;justify-content:center;gap:12px;margin:4px 0 14px;color:var(--fout-dark);font-size:13px;font-weight:900;text-align:center}
.foutfm-jukebox-divider:before,.foutfm-jukebox-divider:after{content:"";height:1px;flex:1;background:rgba(23,17,31,.10)}
.foutfm-jukebox-divider span{flex:0 0 auto}
.foutfm-request-shell .foutfm-vote-button{
  appearance:none!important;border:0!important;border-radius:999px!important;cursor:pointer!important;
  color:#fff!important;font-weight:900!important;line-height:1.2!important;
  transition:transform .15s ease,opacity .15s ease,box-shadow .15s ease!important
}
.foutfm-request-shell .foutfm-vote-button-large{
  width:auto!important;min-width:210px!important;min-height:46px!important;margin-top:12px!important;padding:11px 18px!important;font-size:14px!important;
  background:linear-gradient(135deg,var(--fout-orange),var(--fout-pink))!important;box-shadow:0 9px 20px rgba(255,45,149,.20)!important
}
.foutfm-request-shell .foutfm-vote-button:hover:not(:disabled){transform:translateY(-1px) scale(1.02)!important}
.foutfm-request-shell .foutfm-vote-button.is-voted,
.foutfm-request-shell .foutfm-vote-button:disabled{opacity:.72!important;cursor:not-allowed!important;transform:none!important;box-shadow:none!important}
.foutfm-request-shell .foutfm-vote-button.just-voted{animation:foutfmVotePop .35s ease}
@keyframes foutfmVotePop{0%{transform:scale(.92)}65%{transform:scale(1.06)}100%{transform:scale(1)}}

.foutfm-top10{
  --top-dark:var(--fout-dark,#17111f);--top-text:var(--fout-text,#4a3d4f);--top-pink:var(--fout-pink,#ff2d95);
  --top-orange:var(--fout-orange,#ff7a00);--top-card:var(--fout-widget-bg,#fff);
  margin:22px 0 0;padding:20px;border-radius:22px;background:var(--top-card);
  box-shadow:inset 0 0 0 1px rgba(23,17,31,.08);font-family:inherit
}
.foutfm-top10-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-end;margin-bottom:14px}
.foutfm-top10-kicker{display:block;font-size:12px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:var(--top-pink);margin-bottom:3px}
.foutfm-top10 h3{margin:0;color:var(--top-dark);font-size:clamp(24px,3vw,34px);line-height:1.05;font-weight:950}
.foutfm-top10-head p{margin:6px 0 0;color:var(--top-text);font-size:13px}
.foutfm-top10-list{list-style:none!important;margin:0!important;padding:0!important;display:grid;gap:8px}
.foutfm-top10-item{
  display:grid;grid-template-columns:42px 52px minmax(0,1fr) auto;align-items:center;gap:11px;
  margin:0!important;padding:8px 10px!important;border-radius:15px;background:rgba(23,17,31,.035)
}
.foutfm-top10-rank{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;font-weight:950;font-size:16px;color:#fff;background:linear-gradient(135deg,var(--top-orange),var(--top-pink))}
.foutfm-top10-cover{width:52px!important;height:52px!important;object-fit:cover!important;border-radius:11px!important;display:block!important}
.foutfm-top10-meta{min-width:0;display:flex;flex-direction:column;line-height:1.2}
.foutfm-top10-meta strong{color:var(--top-dark);font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.foutfm-top10-meta span{color:var(--top-text);font-size:12px;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.foutfm-top10-votes{font-weight:900;font-size:13px;color:var(--top-dark);white-space:nowrap;padding:7px 10px;border-radius:999px;background:#fff}
.foutfm-top10-empty{padding:18px;border-radius:15px;background:rgba(23,17,31,.04);color:var(--top-text);text-align:center;font-weight:700}

@media(max-width:640px){
  .foutfm-vote-zone{padding:16px 10px 14px;margin-bottom:14px;border-radius:18px}
  .foutfm-vote-zone-head{margin-bottom:12px}
  .foutfm-vote-zone-head p{font-size:13px}
  .foutfm-now-vote-card{grid-template-columns:1fr;gap:11px;padding:13px;text-align:center}
  .foutfm-now-vote-cover{width:132px!important;height:132px!important;border-radius:16px!important}
  .foutfm-now-vote-content{align-items:center;width:100%}
  .foutfm-now-vote-title{font-size:14px;text-align:center}
  .foutfm-now-vote-artist{text-align:center;font-size:19px}
  .foutfm-request-shell .foutfm-vote-button-large{width:100%!important;min-width:0!important;font-size:13px!important;padding:10px 12px!important;min-height:42px!important}
  .foutfm-jukebox-divider{font-size:12px;margin-bottom:10px}
}

@media(max-width:640px){
  .foutfm-top10{padding:14px;border-radius:18px}
  .foutfm-top10-item{grid-template-columns:34px 44px minmax(0,1fr) auto;gap:8px;padding:7px!important}
  .foutfm-top10-rank{width:30px;height:30px;font-size:14px}
  .foutfm-top10-cover{width:44px!important;height:44px!important;border-radius:9px!important}
  .foutfm-top10-votes{font-size:12px;padding:5px 7px}
  .foutfm-top10-head p{font-size:12px}
}

/* v2.9.4: duimpje omhoog + omlaag */
.foutfm-vote-actions{
  display:flex;
  align-items:center;
  justify-content:center;
  flex-wrap:wrap;
  gap:10px;
  width:100%;
  margin-top:12px;
}
.foutfm-request-shell .foutfm-vote-actions .foutfm-vote-button-large{
  margin-top:0!important;
  min-width:170px!important;
}
.foutfm-request-shell .foutfm-vote-button-up{
  background:linear-gradient(135deg,var(--fout-orange),var(--fout-pink))!important;
}
.foutfm-request-shell .foutfm-vote-button-down{
  background:linear-gradient(135deg,var(--fout-dark),var(--fout-pink))!important;
}
@media(max-width:640px){
  .foutfm-vote-actions{width:100%;justify-content:center;gap:8px}
  .foutfm-request-shell .foutfm-vote-actions .foutfm-vote-button-large{
    width:calc(50% - 4px)!important;
    min-width:0!important;
  }
}


/* v2.9.5: stemrij visueel gelijk aan de Foute Top 10 */
.foutfm-vote-zone{
  padding:20px;
  background:var(--fout-widget-bg,#fff);
  box-shadow:inset 0 0 0 1px rgba(23,17,31,.08);
}
.foutfm-vote-zone-head{max-width:none;text-align:left;margin:0 0 14px}
.foutfm-vote-zone-head p{margin:6px 0 0}
.foutfm-vote-current{max-width:none;margin:0}
.foutfm-now-vote-card.foutfm-top10-item{
  grid-template-columns:42px 52px minmax(0,1fr) auto;
  max-width:none;
  width:100%;
  gap:11px;
  padding:8px 10px!important;
  margin:0!important;
  border-radius:15px;
  background:rgba(23,17,31,.035);
  box-shadow:none;
  text-align:left;
}
.foutfm-now-vote-badge{
  display:grid;place-items:center;width:34px;height:34px;border-radius:50%;
  font-weight:950;font-size:11px;letter-spacing:.02em;color:#fff;
  background:linear-gradient(135deg,var(--fout-orange),var(--fout-pink));
}
.foutfm-now-vote-cover.foutfm-top10-cover{
  width:52px!important;height:52px!important;border-radius:11px!important;
  box-shadow:none!important;
}
.foutfm-now-vote-content.foutfm-top10-meta{
  min-width:0;display:flex;flex-direction:column;align-items:flex-start;line-height:1.2;
}
.foutfm-now-vote-label{
  margin:0 0 2px;color:var(--fout-pink);font-size:10px;font-weight:900;
  letter-spacing:.04em;text-transform:none;
}
.foutfm-now-vote-artist{
  width:100%;color:var(--fout-dark);font-size:14px;line-height:1.2;font-weight:950;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.foutfm-now-vote-title{
  width:100%;margin-top:3px;color:var(--fout-text);font-size:12px;line-height:1.2;font-weight:500;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.foutfm-vote-actions{
  flex-wrap:nowrap;width:auto;margin:0;gap:6px;justify-content:flex-end;
}
.foutfm-request-shell .foutfm-vote-button-compact{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:4px!important;
  min-width:58px!important;height:34px!important;padding:6px 10px!important;margin:0!important;
  border-radius:999px!important;background:#fff!important;color:var(--fout-dark)!important;
  box-shadow:none!important;font-size:13px!important;font-weight:900!important;
  border:1px solid rgba(23,17,31,.06)!important;
}
.foutfm-request-shell .foutfm-vote-button-compact:hover:not(:disabled){
  transform:translateY(-1px)!important;background:#fff!important;box-shadow:0 4px 12px rgba(23,17,31,.08)!important;
}
.foutfm-request-shell .foutfm-vote-button-compact.is-voted,
.foutfm-request-shell .foutfm-vote-button-compact:disabled{
  background:rgba(255,255,255,.72)!important;color:var(--fout-dark)!important;
}
.foutfm-vote-icon{font-size:13px;line-height:1}
.foutfm-vote-number{font-size:13px;line-height:1}

@media(max-width:640px){
  .foutfm-vote-zone{padding:14px;border-radius:18px}
  .foutfm-vote-zone-head{text-align:left;margin-bottom:12px}
  .foutfm-now-vote-card.foutfm-top10-item{
    grid-template-columns:34px 44px minmax(0,1fr) auto;
    gap:8px;padding:7px!important;text-align:left;
  }
  .foutfm-now-vote-badge{width:30px;height:30px;font-size:10px}
  .foutfm-now-vote-cover.foutfm-top10-cover{width:44px!important;height:44px!important;border-radius:9px!important}
  .foutfm-now-vote-content.foutfm-top10-meta{align-items:flex-start;width:auto}
  .foutfm-now-vote-artist{font-size:13px;text-align:left}
  .foutfm-now-vote-title{font-size:11px;text-align:left}
  .foutfm-now-vote-label{font-size:9px;text-align:left}
  .foutfm-vote-actions{width:auto;gap:4px;justify-content:flex-end}
  .foutfm-request-shell .foutfm-vote-actions .foutfm-vote-button-compact{
    width:auto!important;min-width:44px!important;height:30px!important;padding:4px 7px!important;font-size:12px!important;
  }
}

@media(max-width:430px){
  .foutfm-now-vote-card.foutfm-top10-item{
    grid-template-columns:30px 40px minmax(0,1fr);
  }
  .foutfm-now-vote-badge{width:28px;height:28px;font-size:9px}
  .foutfm-now-vote-cover.foutfm-top10-cover{width:40px!important;height:40px!important}
  .foutfm-vote-actions{grid-column:1 / -1;width:100%;justify-content:flex-end;padding-top:2px}
  .foutfm-request-shell .foutfm-vote-actions .foutfm-vote-button-compact{min-width:64px!important}
}

.foutfm-request-shell .foutfm-vote-button-compact.is-selected{
  opacity:1!important;
  border-color:rgba(167,43,139,.32)!important;
  box-shadow:0 0 0 2px rgba(167,43,139,.10)!important;
}
.foutfm-request-shell .foutfm-vote-button-compact.is-loading{opacity:.58!important}


/* v2.9.6: stemmen gecentreerd + FoutFM-kleuren + decoratieve roze cirkel */
.foutfm-vote-zone{
  position:relative;
  overflow:hidden;
  padding:20px;
  background:linear-gradient(135deg,#fff 0%,color-mix(in srgb,var(--fout-pink) 5%,#fff) 100%);
  box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--fout-pink) 22%,transparent);
}
.foutfm-vote-zone::after{
  content:"";
  position:absolute;
  right:-72px;
  bottom:-92px;
  width:205px;
  height:205px;
  border-radius:50%;
  background:color-mix(in srgb,var(--fout-pink) 13%,transparent);
  pointer-events:none;
}
.foutfm-vote-zone-head,
.foutfm-vote-current{
  position:relative;
  z-index:1;
}
.foutfm-vote-zone-head{
  max-width:760px;
  margin:0 auto 14px;
  text-align:center;
}
.foutfm-vote-zone-head p{
  margin:6px auto 0;
}
.foutfm-vote-current{
  max-width:820px;
  margin:0 auto;
}
.foutfm-now-vote-card.foutfm-top10-item{
  grid-template-columns:42px 52px minmax(0,1fr);
  max-width:820px;
  margin:0 auto!important;
}
.foutfm-vote-actions{
  grid-column:1 / -1;
  width:100%;
  justify-content:center;
  gap:10px;
  padding:5px 0 2px;
}
.foutfm-request-shell .foutfm-vote-actions .foutfm-vote-button-compact{
  min-width:82px!important;
  height:36px!important;
  padding:7px 13px!important;
  box-shadow:none!important;
}
.foutfm-request-shell .foutfm-vote-actions .foutfm-vote-button-up{
  background:var(--fout-pink)!important;
  color:#fff!important;
  border:1px solid var(--fout-pink)!important;
}
.foutfm-request-shell .foutfm-vote-actions .foutfm-vote-button-down{
  background:color-mix(in srgb,var(--fout-pink) 10%,#fff)!important;
  color:var(--fout-dark)!important;
  border:1px solid color-mix(in srgb,var(--fout-pink) 28%,transparent)!important;
}
.foutfm-request-shell .foutfm-vote-actions .foutfm-vote-button-up:hover:not(:disabled){
  background:color-mix(in srgb,var(--fout-pink) 88%,var(--fout-dark))!important;
  box-shadow:0 5px 14px color-mix(in srgb,var(--fout-pink) 20%,transparent)!important;
}
.foutfm-request-shell .foutfm-vote-actions .foutfm-vote-button-down:hover:not(:disabled){
  background:color-mix(in srgb,var(--fout-pink) 16%,#fff)!important;
  box-shadow:0 5px 14px rgba(23,17,31,.07)!important;
}
.foutfm-request-shell .foutfm-vote-actions .foutfm-vote-button-up.is-selected{
  background:var(--fout-dark)!important;
  border-color:var(--fout-dark)!important;
  color:#fff!important;
}
.foutfm-request-shell .foutfm-vote-actions .foutfm-vote-button-down.is-selected{
  background:color-mix(in srgb,var(--fout-pink) 22%,#fff)!important;
  border-color:var(--fout-pink)!important;
  color:var(--fout-dark)!important;
}
.foutfm-request-shell .foutfm-vote-actions .foutfm-vote-button-compact:disabled{
  opacity:.72!important;
}

@media(max-width:640px){
  .foutfm-vote-zone{padding:14px}
  .foutfm-vote-zone-head{text-align:center;margin-bottom:12px}
  .foutfm-now-vote-card.foutfm-top10-item{
    grid-template-columns:34px 44px minmax(0,1fr);
  }
  .foutfm-vote-actions{
    grid-column:1 / -1;
    width:100%;
    justify-content:center;
    gap:8px;
    padding-top:4px;
  }
  .foutfm-request-shell .foutfm-vote-actions .foutfm-vote-button-compact{
    min-width:76px!important;
    height:34px!important;
    padding:6px 11px!important;
  }
  .foutfm-vote-zone::after{
    width:160px;
    height:160px;
    right:-64px;
    bottom:-80px;
  }
}

@media(max-width:430px){
  .foutfm-vote-actions{
    grid-column:1 / -1;
    justify-content:center;
  }
}

/* v2.9.7: desktop-stemkaart als geheel gecentreerd en ruimer */
@media(min-width:641px){
  .foutfm-now-vote-card.foutfm-top10-item{
    grid-template-columns:42px 60px minmax(180px,300px);
    justify-content:center;
    align-items:center;
    column-gap:12px;
    row-gap:10px;
    padding:16px 24px 12px!important;
  }
  .foutfm-now-vote-cover.foutfm-top10-cover{
    width:60px!important;
    height:60px!important;
    border-radius:12px!important;
  }
  .foutfm-now-vote-content.foutfm-top10-meta{
    width:100%;
    max-width:300px;
  }
  .foutfm-now-vote-label{
    font-size:11px;
    margin-bottom:3px;
  }
  .foutfm-now-vote-artist{
    font-size:16px;
  }
  .foutfm-now-vote-title{
    font-size:13px;
    margin-top:3px;
  }
  .foutfm-vote-actions{
    grid-column:1 / -1;
    justify-content:center;
    padding:8px 0 4px;
  }
}


/* v2.9.8: grotere gecentreerde Now Playing-stemkaart */
@media(min-width:641px){
  .foutfm-vote-current{
    max-width:900px;
  }
  .foutfm-now-vote-card.foutfm-top10-item{
    grid-template-columns:110px minmax(320px,460px);
    justify-content:center;
    align-items:center;
    column-gap:24px;
    row-gap:18px;
    padding:24px 34px 20px!important;
    min-height:190px;
  }
  .foutfm-now-vote-cover.foutfm-top10-cover{
    width:110px!important;
    height:110px!important;
    border-radius:18px!important;
    box-shadow:0 10px 24px rgba(23,17,31,.13);
  }
  .foutfm-now-vote-content.foutfm-top10-meta{
    width:100%;
    max-width:460px;
    align-items:flex-start;
    text-align:left;
  }
  .foutfm-now-vote-label{
    display:block;
    font-size:14px;
    line-height:1.25;
    font-weight:900;
    letter-spacing:.01em;
    color:var(--fout-text);
    margin:0 0 8px;
  }
  .foutfm-now-vote-trackline{
    display:block;
    width:100%;
    font-size:24px;
    line-height:1.2;
    color:var(--fout-dark);
    white-space:normal;
  }
  .foutfm-now-vote-artist,
  .foutfm-now-vote-title{
    display:inline;
    width:auto;
    font-size:inherit;
    line-height:inherit;
    white-space:normal;
    overflow:visible;
    text-overflow:clip;
    margin:0;
  }
  .foutfm-now-vote-artist{font-weight:950;color:var(--fout-dark)}
  .foutfm-now-vote-title{font-weight:750;color:var(--fout-dark)}
  .foutfm-now-vote-separator{font-weight:750;color:var(--fout-dark)}
  .foutfm-vote-actions{
    grid-column:1 / -1;
    width:100%;
    justify-content:center;
    gap:16px;
    padding:2px 0 0;
  }
  .foutfm-request-shell .foutfm-vote-actions .foutfm-vote-button-compact{
    min-width:112px!important;
    height:48px!important;
    padding:10px 20px!important;
    border-radius:999px!important;
    font-size:18px!important;
  }
  .foutfm-vote-icon{font-size:19px;line-height:1}
  .foutfm-vote-number{font-size:17px;line-height:1;font-weight:950}
}

@media(max-width:640px){
  .foutfm-now-vote-card.foutfm-top10-item{
    grid-template-columns:76px minmax(0,1fr);
    align-items:center;
    column-gap:14px;
    row-gap:12px;
    padding:16px!important;
  }
  .foutfm-now-vote-cover.foutfm-top10-cover{
    width:76px!important;
    height:76px!important;
    border-radius:14px!important;
  }
  .foutfm-now-vote-content.foutfm-top10-meta{
    align-items:flex-start;
    text-align:left;
  }
  .foutfm-now-vote-label{
    font-size:11px;
    line-height:1.25;
    margin:0 0 5px;
  }
  .foutfm-now-vote-trackline{
    display:block;
    width:100%;
    font-size:16px;
    line-height:1.25;
    color:var(--fout-dark);
    white-space:normal;
  }
  .foutfm-now-vote-artist,
  .foutfm-now-vote-title{
    display:inline;
    width:auto;
    font-size:inherit;
    line-height:inherit;
    white-space:normal;
    overflow:visible;
    text-overflow:clip;
    margin:0;
  }
  .foutfm-now-vote-artist{font-weight:950}
  .foutfm-now-vote-title,.foutfm-now-vote-separator{font-weight:750}
  .foutfm-vote-actions{
    grid-column:1 / -1;
    gap:12px;
    padding-top:2px;
  }
  .foutfm-request-shell .foutfm-vote-actions .foutfm-vote-button-compact{
    min-width:96px!important;
    height:42px!important;
    padding:9px 16px!important;
    font-size:16px!important;
  }
  .foutfm-vote-icon{font-size:17px}
  .foutfm-vote-number{font-size:15px;font-weight:950}
}


/* v2.9.9: exact dezelfde typografie als de Jukebox / het actieve WordPress-thema */
.foutfm-vote-zone,
.foutfm-vote-zone-head,
.foutfm-vote-zone-head *,
.foutfm-vote-current,
.foutfm-now-vote-card,
.foutfm-now-vote-content,
.foutfm-now-vote-content *,
.foutfm-vote-actions,
.foutfm-request-shell .foutfm-vote-actions button,
.foutfm-request-shell .foutfm-vote-button,
.foutfm-vote-number{
  font-family:inherit!important;
  font-style:normal!important;
}

/* Gebruik alleen reguliere, breed ondersteunde gewichten zodat het themafont niet synthetisch wordt verdikt. */
.foutfm-vote-zone-kicker{font-weight:800!important}
.foutfm-vote-zone h3{font-weight:900!important}
.foutfm-vote-zone-head p{font-weight:400!important}
.foutfm-now-vote-label{font-weight:700!important}
.foutfm-now-vote-trackline{font-weight:800!important}
.foutfm-now-vote-artist{font-weight:800!important}
.foutfm-now-vote-title,
.foutfm-now-vote-separator{font-weight:700!important}
.foutfm-request-shell .foutfm-vote-button,
.foutfm-request-shell .foutfm-vote-button-compact,
.foutfm-vote-number{font-weight:800!important}

/* v2.10.0: stemmen + Foute Top 10 als één visueel blok */
.foutfm-vote-top10-combined{
  position:relative;
  overflow:hidden;
  margin:0 0 14px!important;
  padding:20px!important;
  background:var(--fout-widget-bg,#fff);
  box-shadow:inset 0 0 0 1px rgba(23,17,31,.08);
  isolation:isolate;
}
.foutfm-vote-top10-combined::after{
  content:"";
  position:absolute;
  width:220px;
  height:220px;
  border-radius:50%;
  right:-92px;
  bottom:-118px;
  background:color-mix(in srgb,var(--fout-pink,#ff2d95) 14%, transparent);
  pointer-events:none;
  z-index:0;
}
.foutfm-vote-top10-combined > *{position:relative;z-index:1}
.foutfm-vote-top10-combined .foutfm-top10-head{
  margin-bottom:14px;
}
.foutfm-vote-top10-combined .foutfm-vote-current{
  width:100%;
  max-width:none;
  margin:0 0 16px;
}
.foutfm-vote-top10-combined .foutfm-now-vote-card.foutfm-top10-item{
  display:grid;
  grid-template-columns:42px 64px minmax(0,1fr) auto;
  align-items:center;
  justify-content:stretch;
  column-gap:12px;
  row-gap:0;
  width:100%;
  min-height:0;
  padding:10px!important;
  margin:0!important;
  border-radius:15px!important;
  background:rgba(23,17,31,.035)!important;
}
.foutfm-vote-top10-combined .foutfm-now-vote-badge.foutfm-top10-rank{
  width:36px;
  height:36px;
  font-size:11px;
  font-weight:900!important;
}
.foutfm-vote-top10-combined .foutfm-now-vote-cover.foutfm-top10-cover{
  width:64px!important;
  height:64px!important;
  border-radius:12px!important;
  box-shadow:none!important;
}
.foutfm-vote-top10-combined .foutfm-now-vote-content.foutfm-top10-meta{
  width:auto;
  max-width:none;
  min-width:0;
  align-items:flex-start;
  text-align:left;
}
.foutfm-vote-top10-combined .foutfm-now-vote-label{
  display:block;
  margin:0 0 4px;
  font-family:inherit!important;
  font-size:12px;
  line-height:1.2;
  font-weight:700!important;
  color:var(--top-text,var(--fout-text,#4a3d4f));
}
.foutfm-vote-top10-combined .foutfm-now-vote-trackline{
  display:block;
  width:100%;
  font-family:inherit!important;
  font-size:17px;
  line-height:1.2;
  font-weight:800!important;
  color:var(--top-dark,var(--fout-dark,#17111f));
  white-space:normal;
}
.foutfm-vote-top10-combined .foutfm-now-vote-artist,
.foutfm-vote-top10-combined .foutfm-now-vote-title,
.foutfm-vote-top10-combined .foutfm-now-vote-separator{
  display:inline;
  width:auto;
  margin:0;
  font:inherit!important;
  color:inherit;
  white-space:normal;
  overflow:visible;
  text-overflow:clip;
}
.foutfm-vote-top10-combined .foutfm-vote-actions{
  grid-column:auto;
  width:auto;
  margin:0;
  padding:0;
  display:flex;
  flex-wrap:nowrap;
  justify-content:flex-end;
  gap:8px;
}
.foutfm-request-shell .foutfm-vote-top10-combined .foutfm-vote-actions .foutfm-vote-button-compact{
  min-width:72px!important;
  width:auto!important;
  height:40px!important;
  margin:0!important;
  padding:7px 12px!important;
  border-radius:999px!important;
  font-family:inherit!important;
  font-size:14px!important;
  font-weight:800!important;
  box-shadow:none!important;
}
.foutfm-vote-top10-combined .foutfm-vote-icon{font-size:15px;line-height:1}
.foutfm-vote-top10-combined .foutfm-vote-number{font-size:14px;line-height:1;font-weight:800!important}
.foutfm-combined-stand-head{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:14px;
  margin:2px 2px 9px;
  padding-top:3px;
}
.foutfm-combined-stand-head strong{
  color:var(--top-dark,var(--fout-dark,#17111f));
  font-size:16px;
  font-weight:900;
}
.foutfm-combined-stand-head span{
  color:var(--top-text,var(--fout-text,#4a3d4f));
  font-size:12px;
  text-align:right;
}
.foutfm-top10-standings{margin:0;padding:0}
.foutfm-vote-top10-combined .foutfm-top10-list{position:relative;z-index:1}

@media(max-width:640px){
  .foutfm-vote-top10-combined{padding:14px!important;border-radius:18px!important}
  .foutfm-vote-top10-combined::after{width:160px;height:160px;right:-70px;bottom:-82px}
  .foutfm-vote-top10-combined .foutfm-now-vote-card.foutfm-top10-item{
    grid-template-columns:34px 54px minmax(0,1fr);
    column-gap:9px;
    row-gap:10px;
    padding:8px!important;
  }
  .foutfm-vote-top10-combined .foutfm-now-vote-badge.foutfm-top10-rank{width:30px;height:30px;font-size:9px}
  .foutfm-vote-top10-combined .foutfm-now-vote-cover.foutfm-top10-cover{width:54px!important;height:54px!important;border-radius:10px!important}
  .foutfm-vote-top10-combined .foutfm-now-vote-label{font-size:10px;margin-bottom:3px}
  .foutfm-vote-top10-combined .foutfm-now-vote-trackline{font-size:14px}
  .foutfm-vote-top10-combined .foutfm-vote-actions{
    grid-column:1 / -1;
    width:100%;
    justify-content:center;
    gap:10px;
  }
  .foutfm-request-shell .foutfm-vote-top10-combined .foutfm-vote-actions .foutfm-vote-button-compact{
    min-width:84px!important;
    height:40px!important;
    padding:7px 14px!important;
    font-size:14px!important;
  }
  .foutfm-combined-stand-head{display:block;margin-bottom:8px}
  .foutfm-combined-stand-head strong{display:block;font-size:15px;margin-bottom:2px}
  .foutfm-combined-stand-head span{display:block;text-align:left;font-size:11px}
}

/* v2.10.0: stemknoppen als dezelfde witte uitslag-pill van de Top 10 */
.foutfm-vote-top10-combined .foutfm-vote-actions{
  background:#fff;
  border-radius:999px;
  padding:3px;
  box-shadow:none;
  gap:0;
}
.foutfm-request-shell .foutfm-vote-top10-combined .foutfm-vote-actions .foutfm-vote-button-compact{
  min-width:62px!important;
  height:34px!important;
  padding:5px 10px!important;
  background:transparent!important;
  color:var(--top-dark,var(--fout-dark,#17111f))!important;
  border:0!important;
  box-shadow:none!important;
  transform:none!important;
}
.foutfm-request-shell .foutfm-vote-top10-combined .foutfm-vote-actions .foutfm-vote-button-compact:hover:not(:disabled){
  background:color-mix(in srgb,var(--fout-pink,#ff2d95) 10%, #fff)!important;
  color:var(--top-dark,var(--fout-dark,#17111f))!important;
}
.foutfm-request-shell .foutfm-vote-top10-combined .foutfm-vote-actions .foutfm-vote-button-up.is-selected,
.foutfm-request-shell .foutfm-vote-top10-combined .foutfm-vote-actions .foutfm-vote-button-up.just-voted{
  background:var(--fout-pink,#ff2d95)!important;
  color:#fff!important;
}
.foutfm-request-shell .foutfm-vote-top10-combined .foutfm-vote-actions .foutfm-vote-button-down.is-selected,
.foutfm-request-shell .foutfm-vote-top10-combined .foutfm-vote-actions .foutfm-vote-button-down.just-voted{
  background:var(--fout-dark,#17111f)!important;
  color:#fff!important;
}
.foutfm-request-shell .foutfm-vote-top10-combined .foutfm-vote-actions .foutfm-vote-button-compact:disabled:not(.is-selected){
  opacity:.58!important;
}

@media(max-width:640px){
  .foutfm-vote-top10-combined .foutfm-vote-actions{justify-self:center;width:auto;padding:3px}
  .foutfm-request-shell .foutfm-vote-top10-combined .foutfm-vote-actions .foutfm-vote-button-compact{
    min-width:68px!important;
    height:34px!important;
    padding:5px 10px!important;
  }
}

/* v2.10.1: actuele stemrij over de volle breedte van het gecombineerde blok */
.foutfm-vote-top10-combined .foutfm-vote-current{
  display:block!important;
  width:100%!important;
  max-width:none!important;
  box-sizing:border-box!important;
}
.foutfm-vote-top10-combined .foutfm-now-vote-card.foutfm-top10-item{
  width:100%!important;
  max-width:none!important;
  box-sizing:border-box!important;
  justify-self:stretch!important;
}
@media(min-width:641px){
  .foutfm-vote-top10-combined .foutfm-now-vote-card.foutfm-top10-item{
    grid-template-columns:42px 64px minmax(0,1fr) auto;
    justify-content:stretch!important;
  }
}


/* v2.10.2: typografie van Foute Top 10 gelijkgetrokken met de Jukebox-kop */
.foutfm-vote-top10-combined .foutfm-top10-head .foutfm-top10-kicker{
  font-family:inherit!important;
  font-size:13px;
  line-height:1.2;
  font-weight:800!important;
}
.foutfm-vote-top10-combined .foutfm-top10-head h3{
  margin:6px 0 6px;
  font-family:inherit!important;
  font-size:clamp(26px,4vw,44px);
  line-height:1.05;
  font-weight:900!important;
  letter-spacing:normal;
}
.foutfm-vote-top10-combined .foutfm-top10-head p{
  margin:0;
  max-width:760px;
  font-family:inherit!important;
  font-size:16px;
  line-height:1.45;
  font-weight:400!important;
}

/* De actuele stemrij krijgt dezelfde duidelijke typografische schaal. */
.foutfm-vote-top10-combined .foutfm-now-vote-label{
  font-size:13px;
  line-height:1.2;
  font-weight:700!important;
}
.foutfm-vote-top10-combined .foutfm-now-vote-trackline{
  font-size:19px;
  line-height:1.2;
  font-weight:800!important;
}

/* De stand mag niet kleiner/ieler ogen dan de stemrij. */
.foutfm-vote-top10-combined .foutfm-combined-stand-head strong{
  font-family:inherit!important;
  font-size:18px;
  line-height:1.2;
  font-weight:900!important;
}
.foutfm-vote-top10-combined .foutfm-combined-stand-head span{
  font-family:inherit!important;
  font-size:13px;
  line-height:1.35;
}
.foutfm-vote-top10-combined .foutfm-top10-meta strong{
  font-family:inherit!important;
  font-size:16px;
  line-height:1.2;
  font-weight:800!important;
}
.foutfm-vote-top10-combined .foutfm-top10-meta span{
  font-family:inherit!important;
  font-size:14px;
  line-height:1.25;
  margin-top:3px;
}
.foutfm-vote-top10-combined .foutfm-top10-votes{
  font-family:inherit!important;
  font-size:14px;
  line-height:1.2;
  font-weight:800!important;
}

/* Iets meer ademruimte bij de grotere tekst op desktop. */
@media(min-width:641px){
  .foutfm-vote-top10-combined .foutfm-top10-item{
    padding:10px 12px!important;
  }
  .foutfm-vote-top10-combined .foutfm-top10-cover{
    width:58px!important;
    height:58px!important;
  }
  .foutfm-vote-top10-combined .foutfm-top10-item{
    grid-template-columns:42px 58px minmax(0,1fr) auto;
  }
  .foutfm-vote-top10-combined .foutfm-now-vote-card.foutfm-top10-item{
    grid-template-columns:42px 64px minmax(0,1fr) auto;
  }
  .foutfm-vote-top10-combined .foutfm-now-vote-cover.foutfm-top10-cover{
    width:64px!important;
    height:64px!important;
  }
}

/* Mobiel was al goed: alleen een kleine typografische harmonisatie. */
@media(max-width:640px){
  .foutfm-vote-top10-combined .foutfm-top10-head h3{
    font-size:26px;
  }
  .foutfm-vote-top10-combined .foutfm-top10-head p{
    font-size:14px;
  }
  .foutfm-vote-top10-combined .foutfm-now-vote-trackline{
    font-size:15px;
  }
  .foutfm-vote-top10-combined .foutfm-top10-meta strong{
    font-size:14px;
  }
  .foutfm-vote-top10-combined .foutfm-top10-meta span{
    font-size:12px;
  }
  .foutfm-vote-top10-combined .foutfm-top10-votes{
    font-size:12px;
  }
}


/* v2.10.3: Jukebox-kop onder de gecombineerde Foute Top 10 */
.foutfm-request-hero.is-after-top10{
  margin:24px calc(var(--fout-card-padding) * -1) 14px;
  padding:26px 18px 24px;
  background:linear-gradient(90deg,color-mix(in srgb,var(--fout-pink) 20%, #fff),#fff 48%,color-mix(in srgb,var(--fout-pink) 5%, #fff));
  border-top:1px solid color-mix(in srgb,var(--fout-pink) 18%, transparent);
  border-bottom:1px solid color-mix(in srgb,var(--fout-pink) 12%, transparent);
}
.foutfm-request-hero.is-after-top10 h2{margin-top:12px}
@media(max-width:640px){
  .foutfm-request-hero.is-after-top10{
    margin:18px calc(var(--fout-card-padding) * -1) 10px;
    padding:20px 12px 18px;
  }
}

/* v2.11.9: eigen FoutFM-aanvraagbeveiliging */
.foutfm-request-guard-message{
  margin:0 0 12px 0;
  padding:11px 14px;
  border-radius:14px;
  background:#f6f2f6;
  color:var(--fout-text,#4a3d4f);
  font-size:14px;
  line-height:1.4;
  font-weight:600;
  box-sizing:border-box;
}
.foutfm-request-guard-message[hidden]{display:none!important}
.foutfm-request-guard-message.is-error{
  background:#fff2f5;
  color:#8d184f;
  border:1px solid rgba(167,43,139,.20);
}

/* v2.11.13: gebruik het bestaande Vue-foutveld voor de countdown */
.sc-track-request-widget .modal-message.error.foutfm-guard-message{
  display:block!important;
  white-space:normal!important;
  line-height:1.45!important;
  font-weight:600;
}
.foutfm-send-disabled,
.foutfm-send-disabled:hover,
.foutfm-send-disabled:focus{
  opacity:.42!important;
  cursor:not-allowed!important;
  filter:grayscale(.45);
}


/* v2.11.30 – FoutFM-stijl voor het officiële aanvraagformulier
   Alleen visueel: geen wijziging aan request/cooldown/guard-logica. */
.foutfm-request-shell .sc-track-request-widget .modal-container,
.foutfm-request-shell .sc-track-request-widget .modal-wrapper,
.foutfm-request-shell .sc-track-request-widget .modal,
.foutfm-request-shell .sc-track-request-widget [role="dialog"]{
  border-radius:26px!important;
  border:1px solid rgba(167,43,139,.16)!important;
  background:
    radial-gradient(circle at 100% 0%,rgba(255,45,149,.12),transparent 34%),
    linear-gradient(145deg,#ffffff 0%,#fff8fc 100%)!important;
  box-shadow:0 24px 65px rgba(54,18,49,.22)!important;
  overflow:hidden!important;
  color:var(--fout-text,#4a3d4f)!important;
}

/* v2.12.3: altijd een duidelijke sluitknop in het aanvraagvenster. */
.foutfm-request-shell .sc-track-request-widget .modal-container,
.foutfm-request-shell .sc-track-request-widget .modal-wrapper,
.foutfm-request-shell .sc-track-request-widget .modal,
.foutfm-request-shell .sc-track-request-widget [role="dialog"]{
  position:relative!important;
}
.foutfm-request-shell .sc-track-request-widget .foutfm-modal-close{
  position:absolute!important;
  top:8px!important;
  right:8px!important;
  z-index:9999!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:38px!important;
  min-width:38px!important;
  max-width:38px!important;
  height:38px!important;
  min-height:38px!important;
  padding:0!important;
  border:1px solid rgba(87,21,72,.18)!important;
  border-radius:50%!important;
  background:#fff!important;
  color:var(--fout-dark,#571548)!important;
  box-shadow:0 5px 14px rgba(54,18,49,.14)!important;
  font-size:0!important;
  font-weight:700!important;
  line-height:1!important;
  text-indent:0!important;
  overflow:visible!important;
  pointer-events:auto!important;
  cursor:pointer!important;
}
.foutfm-request-shell .sc-track-request-widget .foutfm-modal-close:before{
  content:"×";
  display:block!important;
  color:var(--fout-dark,#571548)!important;
  font-family:Arial,sans-serif!important;
  font-size:27px!important;
  font-weight:400!important;
  line-height:1!important;
}
.foutfm-request-shell .sc-track-request-widget .foutfm-modal-close:hover,
.foutfm-request-shell .sc-track-request-widget .foutfm-modal-close:focus{
  background:#fff0f7!important;
  color:var(--fout-pink,#a72b8b)!important;
  outline:2px solid rgba(167,43,139,.25)!important;
  outline-offset:2px!important;
}

.foutfm-request-shell .sc-track-request-widget .modal-container form,
.foutfm-request-shell .sc-track-request-widget .modal-wrapper form,
.foutfm-request-shell .sc-track-request-widget .modal form,
.foutfm-request-shell .sc-track-request-widget [role="dialog"] form{
  padding:18px!important;
  box-sizing:border-box!important;
}

.foutfm-request-shell .sc-track-request-widget .modal-container h1,
.foutfm-request-shell .sc-track-request-widget .modal-container h2,
.foutfm-request-shell .sc-track-request-widget .modal-container h3,
.foutfm-request-shell .sc-track-request-widget .modal-container h4,
.foutfm-request-shell .sc-track-request-widget .modal-wrapper h1,
.foutfm-request-shell .sc-track-request-widget .modal-wrapper h2,
.foutfm-request-shell .sc-track-request-widget .modal-wrapper h3,
.foutfm-request-shell .sc-track-request-widget .modal-wrapper h4,
.foutfm-request-shell .sc-track-request-widget [role="dialog"] h1,
.foutfm-request-shell .sc-track-request-widget [role="dialog"] h2,
.foutfm-request-shell .sc-track-request-widget [role="dialog"] h3,
.foutfm-request-shell .sc-track-request-widget [role="dialog"] h4{
  margin-top:0!important;
  color:var(--fout-dark,#17111f)!important;
  font-weight:950!important;
  letter-spacing:-.025em!important;
  line-height:1.1!important;
}

.foutfm-request-shell .sc-track-request-widget .modal-container label,
.foutfm-request-shell .sc-track-request-widget .modal-wrapper label,
.foutfm-request-shell .sc-track-request-widget .modal label,
.foutfm-request-shell .sc-track-request-widget [role="dialog"] label{
  display:block!important;
  margin:0 0 6px!important;
  color:var(--fout-dark,#17111f)!important;
  font-weight:850!important;
  font-size:13px!important;
}

.foutfm-request-shell .sc-track-request-widget .modal-container input:not([type="button"]):not([type="submit"]):not([type="checkbox"]):not([type="radio"]),
.foutfm-request-shell .sc-track-request-widget .modal-container textarea,
.foutfm-request-shell .sc-track-request-widget .modal-container select,
.foutfm-request-shell .sc-track-request-widget .modal-wrapper input:not([type="button"]):not([type="submit"]):not([type="checkbox"]):not([type="radio"]),
.foutfm-request-shell .sc-track-request-widget .modal-wrapper textarea,
.foutfm-request-shell .sc-track-request-widget .modal-wrapper select,
.foutfm-request-shell .sc-track-request-widget [role="dialog"] input:not([type="button"]):not([type="submit"]):not([type="checkbox"]):not([type="radio"]),
.foutfm-request-shell .sc-track-request-widget [role="dialog"] textarea,
.foutfm-request-shell .sc-track-request-widget [role="dialog"] select{
  width:100%!important;
  min-height:48px!important;
  padding:12px 14px!important;
  border:1px solid rgba(87,21,72,.16)!important;
  border-radius:15px!important;
  background:#fff!important;
  color:var(--fout-dark,#17111f)!important;
  font:inherit!important;
  box-shadow:0 4px 14px rgba(23,17,31,.045)!important;
  box-sizing:border-box!important;
  transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease!important;
}

.foutfm-request-shell .sc-track-request-widget .modal-container textarea,
.foutfm-request-shell .sc-track-request-widget .modal-wrapper textarea,
.foutfm-request-shell .sc-track-request-widget [role="dialog"] textarea{
  min-height:112px!important;
  resize:vertical!important;
}

.foutfm-request-shell .sc-track-request-widget .modal-container input:focus,
.foutfm-request-shell .sc-track-request-widget .modal-container textarea:focus,
.foutfm-request-shell .sc-track-request-widget .modal-container select:focus,
.foutfm-request-shell .sc-track-request-widget .modal-wrapper input:focus,
.foutfm-request-shell .sc-track-request-widget .modal-wrapper textarea:focus,
.foutfm-request-shell .sc-track-request-widget .modal-wrapper select:focus,
.foutfm-request-shell .sc-track-request-widget [role="dialog"] input:focus,
.foutfm-request-shell .sc-track-request-widget [role="dialog"] textarea:focus,
.foutfm-request-shell .sc-track-request-widget [role="dialog"] select:focus{
  outline:none!important;
  border-color:rgba(167,43,139,.55)!important;
  box-shadow:0 0 0 4px rgba(167,43,139,.10),0 8px 20px rgba(167,43,139,.08)!important;
}

.foutfm-request-shell .sc-track-request-widget .modal-container input::placeholder,
.foutfm-request-shell .sc-track-request-widget .modal-container textarea::placeholder,
.foutfm-request-shell .sc-track-request-widget .modal-wrapper input::placeholder,
.foutfm-request-shell .sc-track-request-widget .modal-wrapper textarea::placeholder,
.foutfm-request-shell .sc-track-request-widget [role="dialog"] input::placeholder,
.foutfm-request-shell .sc-track-request-widget [role="dialog"] textarea::placeholder{
  color:#8b7b8e!important;
  opacity:1!important;
}

/* Hoofdactie duidelijk FoutFM; overige knop blijft rustiger maar passend. */
.foutfm-request-shell .sc-track-request-widget .modal-container button,
.foutfm-request-shell .sc-track-request-widget .modal-container input[type="button"],
.foutfm-request-shell .sc-track-request-widget .modal-container input[type="submit"],
.foutfm-request-shell .sc-track-request-widget .modal-wrapper button,
.foutfm-request-shell .sc-track-request-widget .modal-wrapper input[type="button"],
.foutfm-request-shell .sc-track-request-widget .modal-wrapper input[type="submit"],
.foutfm-request-shell .sc-track-request-widget [role="dialog"] button,
.foutfm-request-shell .sc-track-request-widget [role="dialog"] input[type="button"],
.foutfm-request-shell .sc-track-request-widget [role="dialog"] input[type="submit"]{
  min-height:44px!important;
  padding:11px 18px!important;
  border-radius:999px!important;
  font-weight:900!important;
}

.foutfm-request-shell .sc-track-request-widget .modal-message{
  border-radius:14px!important;
  padding:11px 13px!important;
  line-height:1.45!important;
}
.foutfm-request-shell .sc-track-request-widget .modal-message.error{
  color:#8d184f!important;
  background:#fff0f6!important;
  border:1px solid rgba(167,43,139,.18)!important;
}
.foutfm-request-shell .sc-track-request-widget .modal-message:not(.error){
  background:#fff8e8!important;
  border:1px solid rgba(255,122,0,.15)!important;
}

/* Track waarop je klikt krijgt dezelfde zachte kaartuitstraling als de rest van FoutFM. */
.foutfm-request-shell .sc-track-request-widget .foutfm-track-card-enhanced{
  border-radius:20px!important;
  border:1px solid rgba(87,21,72,.08)!important;
  background:linear-gradient(145deg,#fff 0%,#fdf8fc 100%)!important;
  box-shadow:0 10px 24px rgba(23,17,31,.055)!important;
  transition:transform .15s ease,box-shadow .15s ease!important;
}
.foutfm-request-shell .sc-track-request-widget .foutfm-track-card-enhanced:hover{
  transform:translateY(-2px)!important;
  box-shadow:0 14px 30px rgba(23,17,31,.085)!important;
}

@media(max-width:640px){
  .foutfm-request-shell .sc-track-request-widget .modal-container,
  .foutfm-request-shell .sc-track-request-widget .modal-wrapper,
  .foutfm-request-shell .sc-track-request-widget .modal,
  .foutfm-request-shell .sc-track-request-widget [role="dialog"]{
    width:calc(100% - 12px)!important;
    max-width:calc(100vw - 24px)!important;
    min-width:0!important;
    margin-left:auto!important;
    margin-right:auto!important;
    border-radius:21px!important;
    box-sizing:border-box!important;
  }
  .foutfm-request-shell .sc-track-request-widget .modal-container form,
  .foutfm-request-shell .sc-track-request-widget .modal-wrapper form,
  .foutfm-request-shell .sc-track-request-widget [role="dialog"] form{
    padding:14px!important;
  }
  .foutfm-request-shell .sc-track-request-widget .modal-container input:not([type="button"]):not([type="submit"]),
  .foutfm-request-shell .sc-track-request-widget .modal-container textarea,
  .foutfm-request-shell .sc-track-request-widget .modal-wrapper input:not([type="button"]):not([type="submit"]),
  .foutfm-request-shell .sc-track-request-widget .modal-wrapper textarea,
  .foutfm-request-shell .sc-track-request-widget [role="dialog"] input:not([type="button"]):not([type="submit"]),
  .foutfm-request-shell .sc-track-request-widget [role="dialog"] textarea{
    font-size:16px!important; /* voorkomt iOS zoom */
  }
}


/* v2.11.31 – mobiele modal-fit fix
   De officiële popup staat binnen de Jukebox-container; daarom nooit 100vw
   vanaf zijn lokale positie gebruiken. Alle succes/foutteksten mogen wrappen. */
.foutfm-request-shell .sc-track-request-widget .modal-container *,
.foutfm-request-shell .sc-track-request-widget .modal-wrapper *,
.foutfm-request-shell .sc-track-request-widget .modal *,
.foutfm-request-shell .sc-track-request-widget [role="dialog"] *{
  box-sizing:border-box!important;
  min-width:0;
}
.foutfm-request-shell .sc-track-request-widget .modal-message,
.foutfm-request-shell .sc-track-request-widget .modal-message.error,
.foutfm-request-shell .sc-track-request-widget .modal-message:not(.error){
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  white-space:normal!important;
  overflow:visible!important;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
  text-overflow:clip!important;
}
.foutfm-request-shell .sc-track-request-widget .modal-container > *,
.foutfm-request-shell .sc-track-request-widget .modal-wrapper > *,
.foutfm-request-shell .sc-track-request-widget .modal > *,
.foutfm-request-shell .sc-track-request-widget [role="dialog"] > *{
  max-width:100%!important;
}
@media(max-width:640px){
  .foutfm-request-shell .sc-track-request-widget{
    min-width:0!important;
    max-width:100%!important;
    overflow:visible!important;
  }
  .foutfm-request-shell .sc-track-request-widget .modal-container,
  .foutfm-request-shell .sc-track-request-widget .modal-wrapper,
  .foutfm-request-shell .sc-track-request-widget .modal,
  .foutfm-request-shell .sc-track-request-widget [role="dialog"]{
    left:auto!important;
    right:auto!important;
    transform:none!important;
  }
  .foutfm-request-shell .sc-track-request-widget .modal-message{
    margin-left:0!important;
    margin-right:0!important;
    padding:11px 12px!important;
    font-size:15px!important;
    line-height:1.4!important;
  }
  .foutfm-request-shell .sc-track-request-widget .modal-container h1,
  .foutfm-request-shell .sc-track-request-widget .modal-container h2,
  .foutfm-request-shell .sc-track-request-widget .modal-wrapper h1,
  .foutfm-request-shell .sc-track-request-widget .modal-wrapper h2,
  .foutfm-request-shell .sc-track-request-widget [role="dialog"] h1,
  .foutfm-request-shell .sc-track-request-widget [role="dialog"] h2{
    font-size:clamp(25px,8vw,34px)!important;
    overflow-wrap:anywhere!important;
  }
}

/* v2.15.0: de gewone Jukebox volgt de rijopmaak van “Nieuw in de playlist”.
   De selectors richten zich uitsluitend op de Streaming.Center-widget;
   de recente playlist en de aparte Top 10 blijven ongewijzigd. */
.foutfm-request-shell .sc-track-request-widget [is="track-request-widget"] .container,
.foutfm-request-shell .sc-track-request-widget [is="track-request-widget"] .container[data-v-b271aa7a],
.foutfm-request-shell .foutfm-official-widget .container,
.foutfm-request-shell .foutfm-official-widget .container[data-v-b271aa7a]{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  padding:4px 0 10px!important;
  box-sizing:border-box!important;
  text-align:left!important;
}
.foutfm-request-shell .sc-track-request-widget .track,
.foutfm-request-shell .sc-track-request-widget .track[data-v-b271aa7a],
.foutfm-request-shell .foutfm-official-widget .track,
.foutfm-request-shell .foutfm-official-widget .track[data-v-b271aa7a],
.foutfm-request-shell [is="track-request-widget"] .track{
  display:grid!important;
  grid-template-columns:var(--fout-jukebox-cover-size,56px) minmax(0,1fr) max-content!important;
  align-items:center!important;
  gap:14px!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  min-height:calc(var(--fout-jukebox-cover-size,56px) + 18px)!important;
  margin:6px 0!important;
  padding:8px 14px!important;
  box-sizing:border-box!important;
  border:1px solid rgba(167,43,139,.15)!important;
  border-radius:18px!important;
  background:linear-gradient(105deg,rgba(255,237,247,.92),rgba(255,255,255,.94))!important;
  box-shadow:0 3px 10px rgba(87,21,72,.055)!important;
  vertical-align:top!important;
  overflow:hidden!important;
  transition:transform .18s ease,box-shadow .18s ease,background .18s ease,border-color .18s ease!important;
}
.foutfm-request-shell .sc-track-request-widget .track:hover,
.foutfm-request-shell .foutfm-official-widget .track:hover,
.foutfm-request-shell [is="track-request-widget"] .track:hover{
  transform:translateY(-1px)!important;
  border-color:rgba(167,43,139,.28)!important;
  background:linear-gradient(105deg,rgba(255,228,243,.98),rgba(255,255,255,.98))!important;
  box-shadow:0 7px 16px rgba(87,21,72,.11)!important;
}

/* v2.15.2: zet de zoekbalk van Streaming.Center netjes als eigen toolbar
   direct boven de trackrijen. De externe widget gebruikt standaard een
   inline-blok van 60%, waardoor de balk op sommige thema's optisch
   halverwege komt te staan. */
.foutfm-request-shell .sc-track-request-widget .actions_row,
.foutfm-request-shell .foutfm-official-widget .actions_row,
.foutfm-request-shell [is="track-request-widget"] .actions_row{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  margin:0 0 14px!important;
  padding:0!important;
  box-sizing:border-box!important;
}
.foutfm-request-shell .sc-track-request-widget .act_search,
.foutfm-request-shell .foutfm-official-widget .act_search,
.foutfm-request-shell [is="track-request-widget"] .act_search{
  display:block!important;
  width:min(100%,420px)!important;
  max-width:420px!important;
  margin:0 auto!important;
  text-align:stretch!important;
  box-sizing:border-box!important;
}
.foutfm-request-shell .sc-track-request-widget .act_search input,
.foutfm-request-shell .foutfm-official-widget .act_search input,
.foutfm-request-shell [is="track-request-widget"] .act_search input{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  height:42px!important;
  min-height:42px!important;
  margin:0!important;
  padding:9px 15px!important;
  box-sizing:border-box!important;
  border:1px solid rgba(167,43,139,.22)!important;
  border-radius:999px!important;
  background:#fff!important;
  color:var(--fout-dark,#17111f)!important;
  font:inherit!important;
  font-size:15px!important;
  line-height:1.2!important;
  text-align:left!important;
  box-shadow:0 5px 16px rgba(87,21,72,.08)!important;
  outline:none!important;
  transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease!important;
}
.foutfm-request-shell .sc-track-request-widget .act_search input:focus,
.foutfm-request-shell .foutfm-official-widget .act_search input:focus,
.foutfm-request-shell [is="track-request-widget"] .act_search input:focus{
  border-color:rgba(167,43,139,.58)!important;
  box-shadow:0 0 0 4px rgba(167,43,139,.10),0 8px 20px rgba(167,43,139,.12)!important;
}
@media(max-width:640px){
  .foutfm-request-shell .sc-track-request-widget .actions_row,
  .foutfm-request-shell .foutfm-official-widget .actions_row,
  .foutfm-request-shell [is="track-request-widget"] .actions_row{
    margin-bottom:11px!important;
  }
  .foutfm-request-shell .sc-track-request-widget .act_search,
  .foutfm-request-shell .foutfm-official-widget .act_search,
  .foutfm-request-shell [is="track-request-widget"] .act_search{
    width:100%!important;
    max-width:none!important;
  }
  .foutfm-request-shell .sc-track-request-widget .act_search input,
  .foutfm-request-shell .foutfm-official-widget .act_search input,
  .foutfm-request-shell [is="track-request-widget"] .act_search input{
    height:44px!important;
    min-height:44px!important;
  }
}
.foutfm-request-shell .sc-track-request-widget .track > img,
.foutfm-request-shell .sc-track-request-widget .track img.foutfm-track-cover-img,
.foutfm-request-shell .foutfm-official-widget .track > img,
.foutfm-request-shell .foutfm-official-widget .track img.foutfm-track-cover-img,
.foutfm-request-shell [is="track-request-widget"] .track > img,
.foutfm-request-shell [is="track-request-widget"] .track img.foutfm-track-cover-img{
  grid-column:1!important;
  grid-row:1!important;
  width:var(--fout-jukebox-cover-size,56px)!important;
  height:var(--fout-jukebox-cover-size,56px)!important;
  min-width:var(--fout-jukebox-cover-size,56px)!important;
  min-height:var(--fout-jukebox-cover-size,56px)!important;
  max-width:var(--fout-jukebox-cover-size,56px)!important;
  max-height:var(--fout-jukebox-cover-size,56px)!important;
  margin:0!important;
  object-fit:cover!important;
  object-position:center center!important;
  display:block!important;
  border-radius:13px!important;
  box-shadow:0 2px 6px rgba(87,21,72,.12)!important;
}
.foutfm-request-shell .sc-track-request-widget .track > .meta,
.foutfm-request-shell .foutfm-official-widget .track > .meta,
.foutfm-request-shell [is="track-request-widget"] .track > .meta{
  grid-column:2!important;
  grid-row:1!important;
  align-self:center!important;
  width:auto!important;
  min-width:0!important;
  height:auto!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  text-align:left!important;
  color:var(--fout-dark)!important;
  font-family:inherit!important;
  font-size:14px!important;
  font-weight:650!important;
  line-height:1.3!important;
  white-space:nowrap!important;
  text-overflow:ellipsis!important;
}
.foutfm-request-shell .sc-track-request-widget .track > .meta *,
.foutfm-request-shell .foutfm-official-widget .track > .meta *,
.foutfm-request-shell [is="track-request-widget"] .track > .meta *{
  font-family:inherit!important;
  color:inherit!important;
  font-size:inherit!important;
  line-height:inherit!important;
}
.foutfm-request-shell .sc-track-request-widget .track > .button,
.foutfm-request-shell .sc-track-request-widget .track[data-v-b271aa7a] > .button,
.foutfm-request-shell .sc-track-request-widget .track > .foutfm-request-button,
.foutfm-request-shell .foutfm-official-widget .track > .button,
.foutfm-request-shell .foutfm-official-widget .track[data-v-b271aa7a] > .button,
.foutfm-request-shell .foutfm-official-widget .track > .foutfm-request-button,
.foutfm-request-shell [is="track-request-widget"] .track > .button,
.foutfm-request-shell [is="track-request-widget"] .track > .foutfm-request-button{
  grid-column:3!important;
  grid-row:1!important;
  justify-self:end!important;
  width:auto!important;
  max-width:max-content!important;
  flex:0 0 auto!important;
  min-width:0!important;
  height:32px!important;
  min-height:32px!important;
  margin:0!important;
  padding:6px 12px!important;
  font-family:inherit!important;
  font-size:12px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  border-radius:999px!important;
  white-space:nowrap!important;
  box-sizing:border-box!important;
  background:rgba(255,255,255,.72)!important;
  color:var(--fout-dark)!important;
  border:1px solid rgba(167,43,139,.32)!important;
  font-weight:800!important;
  line-height:1!important;
  box-shadow:0 2px 6px rgba(87,21,72,.08)!important;
  text-decoration:none!important;
  cursor:pointer!important;
}
.foutfm-request-shell .sc-track-request-widget .track > .button:hover,
.foutfm-request-shell .sc-track-request-widget .track[data-v-b271aa7a] > .button:hover,
.foutfm-request-shell .sc-track-request-widget .track > .foutfm-request-button:hover,
.foutfm-request-shell .foutfm-official-widget .track > .button:hover,
.foutfm-request-shell .foutfm-official-widget .track[data-v-b271aa7a] > .button:hover,
.foutfm-request-shell .foutfm-official-widget .track > .foutfm-request-button:hover,
.foutfm-request-shell [is="track-request-widget"] .track > .button:hover,
.foutfm-request-shell [is="track-request-widget"] .track > .foutfm-request-button:hover{
  transform:translateY(-1px)!important;
  background:var(--fout-pink)!important;
  color:var(--fout-button-text)!important;
  border-color:var(--fout-pink)!important;
  box-shadow:0 5px 12px color-mix(in srgb,var(--fout-pink) 24%, transparent)!important;
}
@media(max-width:640px){
  .foutfm-request-shell .sc-track-request-widget .track,
  .foutfm-request-shell .foutfm-official-widget .track,
  .foutfm-request-shell [is="track-request-widget"] .track{
    grid-template-columns:min(48px,var(--fout-jukebox-cover-size,56px)) minmax(0,1fr) max-content!important;
    gap:10px!important;
    min-height:62px!important;
    max-width:100%!important;
    margin:6px 0!important;
    padding:7px 9px!important;
  }
  .foutfm-request-shell .sc-track-request-widget .track > img,
  .foutfm-request-shell .sc-track-request-widget .track img.foutfm-track-cover-img,
  .foutfm-request-shell .foutfm-official-widget .track > img,
  .foutfm-request-shell .foutfm-official-widget .track img.foutfm-track-cover-img,
  .foutfm-request-shell [is="track-request-widget"] .track > img,
  .foutfm-request-shell [is="track-request-widget"] .track img.foutfm-track-cover-img{
    width:min(48px,var(--fout-jukebox-cover-size,56px))!important;
    height:min(48px,var(--fout-jukebox-cover-size,56px))!important;
    min-width:min(48px,var(--fout-jukebox-cover-size,56px))!important;
    min-height:min(48px,var(--fout-jukebox-cover-size,56px))!important;
    max-width:min(48px,var(--fout-jukebox-cover-size,56px))!important;
    max-height:min(48px,var(--fout-jukebox-cover-size,56px))!important;
  }
  .foutfm-request-shell .sc-track-request-widget .track > .meta,
  .foutfm-request-shell .sc-track-request-widget .track[data-v-b271aa7a] > .meta,
  .foutfm-request-shell .foutfm-official-widget .track > .meta,
  .foutfm-request-shell .foutfm-official-widget .track[data-v-b271aa7a] > .meta,
  .foutfm-request-shell [is="track-request-widget"] .track > .meta{
    font-size:13px!important;
    line-height:1.3!important;
    white-space:normal!important;
    display:-webkit-box!important;
    -webkit-box-orient:vertical!important;
    -webkit-line-clamp:2!important;
    max-height:2.6em!important;
    text-overflow:clip!important;
  }
  .foutfm-request-shell .sc-track-request-widget .track > .button,
  .foutfm-request-shell .sc-track-request-widget .track[data-v-b271aa7a] > .button,
  .foutfm-request-shell .sc-track-request-widget .track > .foutfm-request-button,
  .foutfm-request-shell .foutfm-official-widget .track > .button,
  .foutfm-request-shell .foutfm-official-widget .track[data-v-b271aa7a] > .button,
  .foutfm-request-shell .foutfm-official-widget .track > .foutfm-request-button,
  .foutfm-request-shell [is="track-request-widget"] .track > .button,
  .foutfm-request-shell [is="track-request-widget"] .track > .foutfm-request-button{
    min-height:30px!important;
    height:30px!important;
    padding:5px 9px!important;
    font-size:11px!important;
  }
}

@media(max-width:420px){
  /* Op een smalle telefoon blijft de aanvraagactie beschikbaar als compact
     icoon; de volledige artiest–titelregel krijgt zo de meeste ruimte. */
  .foutfm-request-shell .sc-track-request-widget .track > .button,
  .foutfm-request-shell .sc-track-request-widget .track[data-v-b271aa7a] > .button,
  .foutfm-request-shell .sc-track-request-widget .track > .foutfm-request-button,
  .foutfm-request-shell .foutfm-official-widget .track > .button,
  .foutfm-request-shell .foutfm-official-widget .track[data-v-b271aa7a] > .button,
  .foutfm-request-shell .foutfm-official-widget .track > .foutfm-request-button,
  .foutfm-request-shell [is="track-request-widget"] .track > .button,
  .foutfm-request-shell [is="track-request-widget"] .track > .foutfm-request-button{
    width:32px!important;
    min-width:32px!important;
    max-width:32px!important;
    height:30px!important;
    min-height:30px!important;
    padding:0!important;
    font-size:0!important;
  }
  .foutfm-request-shell .sc-track-request-widget .track > .button:after,
  .foutfm-request-shell .sc-track-request-widget .track[data-v-b271aa7a] > .button:after,
  .foutfm-request-shell .sc-track-request-widget .track > .foutfm-request-button:after,
  .foutfm-request-shell .foutfm-official-widget .track > .button:after,
  .foutfm-request-shell .foutfm-official-widget .track[data-v-b271aa7a] > .button:after,
  .foutfm-request-shell .foutfm-official-widget .track > .foutfm-request-button:after,
  .foutfm-request-shell [is="track-request-widget"] .track > .button:after,
  .foutfm-request-shell [is="track-request-widget"] .track > .foutfm-request-button:after{
    content:"🎵";
    font-size:15px;
    line-height:1;
  }
}

/* v2.13.0: recent toegevoegde tracks onder de verzoek-Jukebox. */
.foutfm-new-tracks{
  margin-top:18px;
  text-align:center;
  width:100%;
  max-width:100%;
  min-width:0;
}
.foutfm-new-tracks-toggle{
  appearance:none!important;
  min-height:44px!important;
  padding:11px 18px!important;
  font-size:14px!important;
}
.foutfm-new-tracks-toggle[aria-expanded="true"]{
  background:linear-gradient(135deg,var(--fout-dark),var(--fout-pink))!important;
}
.foutfm-new-tracks-panel{
  margin-top:14px;
  text-align:left;
  width:100%;
  max-width:100%;
  min-width:0;
  overflow:hidden;
}
.foutfm-new-tracks-head{
  margin:0 0 12px;
  padding:16px 18px;
  border-radius:18px;
  background:rgba(255,255,255,.78);
  box-shadow:inset 0 0 0 1px rgba(23,17,31,.08);
}
.foutfm-new-tracks-kicker{
  display:block;
  color:var(--fout-pink);
  font-size:11px;
  font-weight:950;
  letter-spacing:.09em;
}
.foutfm-new-tracks-head h3{
  margin:4px 0 4px;
  color:var(--fout-dark);
  font-size:clamp(20px,3vw,28px);
  line-height:1.1;
  font-weight:950;
}
.foutfm-new-tracks-head p{
  margin:0;
  color:var(--fout-text);
  font-size:13px;
}
.foutfm-new-tracks-grid{
  display:grid;
  gap:8px;
  width:100%;
  max-width:100%;
  min-width:0;
}
.foutfm-new-track-card{
  display:grid;
  grid-template-columns:56px minmax(0,1fr);
  align-items:center;
  gap:11px;
  min-height:72px;
  padding:8px 12px;
  border:1px solid rgba(167,43,139,.12);
  border-radius:16px;
  background:linear-gradient(105deg,rgba(167,43,139,.16),rgba(255,255,255,.62));
  width:100%;
  max-width:100%;
  min-width:0;
  box-sizing:border-box;
  overflow:hidden;
  box-shadow:0 4px 12px rgba(87,21,72,.06);
  transition:transform .18s ease,box-shadow .18s ease,background .18s ease;
}
.foutfm-new-track-card:hover{
  transform:translateY(-2px);
  background:linear-gradient(105deg,rgba(167,43,139,.22),rgba(255,255,255,.78));
  box-shadow:0 8px 18px rgba(87,21,72,.12);
}
.foutfm-new-track-card img{
  width:56px!important;
  height:56px!important;
  object-fit:cover!important;
  border-radius:50%!important;
  display:block;
}
.foutfm-new-track-meta{
  min-width:0;
  display:flex;
  flex-direction:column;
  line-height:1.2;
}
.foutfm-new-track-meta strong,
.foutfm-new-track-name{
  color:var(--fout-dark);
  font-size:14px;
  font-weight:500;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.foutfm-new-track-meta span:not(.foutfm-new-track-name){
  color:var(--fout-text);
  font-size:12px;
  margin-top:3px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.foutfm-new-track-meta small{
  color:var(--fout-pink);
  font-size:11px;
  margin-top:4px;
}
.foutfm-new-track-listen{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:34px;
  padding:7px 11px;
  border-radius:999px;
  background:linear-gradient(135deg,var(--fout-orange),var(--fout-pink));
  color:var(--fout-button-text)!important;
  font-size:12px;
  font-weight:900;
  text-decoration:none!important;
  white-space:nowrap;
}
.foutfm-new-track-listen:hover{transform:translateY(-1px);color:var(--fout-button-text)!important}
.foutfm-new-track-listen.is-loading{opacity:.62;pointer-events:none;cursor:wait}
.foutfm-new-tracks-pagination{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  margin:14px 0 2px;
  color:var(--fout-text);
  font-size:12px;
  font-weight:800;
}
.foutfm-new-tracks-page{
  appearance:none!important;
  border:0!important;
  border-radius:999px!important;
  min-height:34px!important;
  padding:7px 14px!important;
  background:linear-gradient(135deg,var(--fout-dark),var(--fout-pink))!important;
  color:var(--fout-button-text)!important;
  font-size:12px!important;
  font-weight:900!important;
  cursor:pointer;
  box-shadow:0 4px 12px rgba(87,21,72,.14);
}
.foutfm-new-tracks-page:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 7px 16px rgba(87,21,72,.2)}
.foutfm-new-tracks-page:disabled{opacity:.42;cursor:default;box-shadow:none}
.foutfm-new-tracks-panel.is-loading{opacity:.58;pointer-events:none}
.foutfm-new-tracks-loading,.foutfm-new-tracks-empty{
  padding:16px;
  border-radius:15px;
  background:rgba(255,255,255,.78);
  color:var(--fout-text);
  text-align:center;
  font-weight:700;
}
@media(max-width:640px){
  .foutfm-new-tracks-toggle{width:100%!important}
  .foutfm-new-track-card{grid-template-columns:46px minmax(0,1fr);gap:9px;padding:7px}
  .foutfm-new-track-card img{width:46px!important;height:46px!important;border-radius:50%!important}
  .foutfm-new-track-listen{grid-column:2;justify-self:start;min-height:30px;padding:6px 10px;font-size:11px}
}

/* v2.15.4: mobiele aanvraagpopup.
   Streaming.Center centreert standaard de buitenste wrapper. Een hoog formulier
   schuift daardoor op een telefoon buiten beeld. Alleen het masker scrolt nu;
   de wrapper is transparant en uitsluitend de container is de kaart. */
@media(max-width:640px){
  .foutfm-request-shell{
    overflow:visible!important;
  }
  .foutfm-request-shell .sc-track-request-widget .modal-mask,
  .foutfm-request-shell .foutfm-official-widget .modal-mask,
  .foutfm-request-shell [is="track-request-widget"] .modal-mask{
    position:fixed!important;
    inset:0!important;
    top:0!important;
    right:0!important;
    bottom:0!important;
    left:0!important;
    width:auto!important;
    max-width:none!important;
    height:auto!important;
    min-height:100vh!important;
    min-height:100dvh!important;
    margin:0!important;
    /* De vaste mobiele header van de website ligt boven de popup. Begin
       daarom onder die header, zodat de sluitknop nooit wordt afgedekt. */
    padding:max(76px,calc(14px + env(safe-area-inset-top))) 12px max(14px,env(safe-area-inset-bottom))!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    overscroll-behavior:contain;
    -webkit-overflow-scrolling:touch;
    scroll-padding-top:76px!important;
    box-sizing:border-box!important;
    z-index:2147482000!important;
  }
  .foutfm-request-shell .sc-track-request-widget .modal-wrapper,
  .foutfm-request-shell .foutfm-official-widget .modal-wrapper,
  .foutfm-request-shell [is="track-request-widget"] .modal-wrapper{
    position:relative!important;
    top:auto!important;
    right:auto!important;
    bottom:auto!important;
    left:auto!important;
    display:block!important;
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    min-height:0!important;
    height:auto!important;
    margin:0!important;
    padding:0!important;
    transform:none!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
    overflow:visible!important;
    box-sizing:border-box!important;
  }
  .foutfm-request-shell .sc-track-request-widget .modal-container,
  .foutfm-request-shell .foutfm-official-widget .modal-container,
  .foutfm-request-shell [is="track-request-widget"] .modal-container{
    position:relative!important;
    top:auto!important;
    right:auto!important;
    bottom:auto!important;
    left:auto!important;
    width:100%!important;
    max-width:480px!important;
    min-width:0!important;
    height:auto!important;
    max-height:none!important;
    margin:0 auto!important;
    padding:14px 12px!important;
    transform:none!important;
    border-radius:21px!important;
    overflow:visible!important;
    box-sizing:border-box!important;
  }
  .foutfm-request-shell .sc-track-request-widget .modal-container *,
  .foutfm-request-shell .foutfm-official-widget .modal-container *,
  .foutfm-request-shell [is="track-request-widget"] .modal-container *{
    min-width:0!important;
    max-width:100%;
    box-sizing:border-box!important;
  }
  .foutfm-request-shell .sc-track-request-widget .modal-container form,
  .foutfm-request-shell .foutfm-official-widget .modal-container form,
  .foutfm-request-shell [is="track-request-widget"] .modal-container form{
    width:100%!important;
    margin:0!important;
    padding:42px 14px 14px!important;
  }
  .foutfm-request-shell .sc-track-request-widget .modal-container textarea,
  .foutfm-request-shell .foutfm-official-widget .modal-container textarea,
  .foutfm-request-shell [is="track-request-widget"] .modal-container textarea{
    min-height:108px!important;
    max-height:180px!important;
  }
  .foutfm-request-shell .sc-track-request-widget .modal-container .foutfm-modal-close,
  .foutfm-request-shell .foutfm-official-widget .modal-container .foutfm-modal-close,
  .foutfm-request-shell [is="track-request-widget"] .modal-container .foutfm-modal-close{
    position:absolute!important;
    top:10px!important;
    right:8px!important;
    z-index:2147483647!important;
  }
}

/* v2.15.6: alleen de sluitknop corrigeren.
   De algemene aanvraagknopregels overschrijven anders de hoogte en padding
   van deze knop, waardoor de cirkel ovaal kan worden. */
.foutfm-request-shell .sc-track-request-widget .foutfm-modal-close,
.foutfm-request-shell .foutfm-official-widget .foutfm-modal-close,
.foutfm-request-shell [is="track-request-widget"] .foutfm-modal-close{
  appearance:none!important;
  box-sizing:border-box!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:40px!important;
  min-width:40px!important;
  max-width:40px!important;
  height:40px!important;
  min-height:40px!important;
  max-height:40px!important;
  flex:0 0 40px!important;
  padding:0!important;
  border-radius:50%!important;
  line-height:40px!important;
  overflow:hidden!important;
}
.foutfm-request-shell .sc-track-request-widget .foutfm-modal-close:before,
.foutfm-request-shell .foutfm-official-widget .foutfm-modal-close:before,
.foutfm-request-shell [is="track-request-widget"] .foutfm-modal-close:before{
  font-size:24px!important;
  font-weight:500!important;
}

/* v2.15.7: alleen de formulierkaart op desktop verbreden.
   De modal-mask en wrapper blijven bewust ongemoeid. */
@media (min-width:641px){
  .foutfm-request-shell .sc-track-request-widget .modal-container,
  .foutfm-request-shell .foutfm-official-widget .modal-container,
  .foutfm-request-shell [is="track-request-widget"] .modal-container{
    width:min(560px,calc(100vw - 48px))!important;
    max-width:560px!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
}

/* v2.15.10: kruisje zonder witte cirkel, klikgebied blijft behouden. */
.foutfm-request-shell .sc-track-request-widget .foutfm-modal-close,
.foutfm-request-shell .foutfm-official-widget .foutfm-modal-close,
.foutfm-request-shell [is="track-request-widget"] .foutfm-modal-close{
  background:transparent!important;
  background-color:transparent!important;
  border:0!important;
  box-shadow:none!important;
}

/* v2.15.11: desktopkaart subtiel hoger uitlijnen. */
@media (min-width:641px){
  .foutfm-request-shell .sc-track-request-widget .modal-container,
  .foutfm-request-shell .foutfm-official-widget .modal-container,
  .foutfm-request-shell [is="track-request-widget"] .modal-container{
    position:relative!important;
    top:-10px!important;
  }
}

/* v2.15.17: definitieve viewport-/scrollfix voor Trackverzoek.
   - De popup is op desktop én mobiel een echte viewport-overlay.
   - De overlay zelf scrolt; de hoogte van de zoekresultaten bepaalt de popup niet meer.
   - Tijdens een open popup mag de Jukebox-shell niet clippen en krijgt hij de hoogste stackinglaag.
   - De website erachter wordt vastgezet zodat iOS/Android niet door de pagina heen scrollt. */
html.foutfm-request-modal-open,
body.foutfm-request-modal-open{
  overflow:hidden!important;
  overscroll-behavior:none!important;
}
.foutfm-request-shell.is-modal-open{
  overflow:visible!important;
  z-index:2147483647!important;
}
.foutfm-request-shell.is-modal-open .foutfm-request-card{
  overflow:visible!important;
  z-index:2147483647!important;
}

.foutfm-request-shell .sc-track-request-widget .modal-mask,
.foutfm-request-shell .foutfm-official-widget .modal-mask,
.foutfm-request-shell [is="track-request-widget"] .modal-mask{
  position:fixed!important;
  inset:0!important;
  top:0!important;
  right:0!important;
  bottom:0!important;
  left:0!important;
  width:100vw!important;
  max-width:none!important;
  height:100vh!important;
  height:100dvh!important;
  min-height:100vh!important;
  min-height:100dvh!important;
  margin:0!important;
  padding:max(24px,env(safe-area-inset-top)) 18px max(24px,env(safe-area-inset-bottom))!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
  overscroll-behavior:contain!important;
  -webkit-overflow-scrolling:touch!important;
  scroll-padding-top:max(24px,env(safe-area-inset-top))!important;
  scroll-padding-bottom:max(24px,env(safe-area-inset-bottom))!important;
  box-sizing:border-box!important;
  background:rgba(31,10,28,.52)!important;
  z-index:2147483647!important;
}

/* De wrapper is alleen positionering; uitsluitend modal-container is de witte kaart. */
.foutfm-request-shell .sc-track-request-widget .modal-wrapper,
.foutfm-request-shell .foutfm-official-widget .modal-wrapper,
.foutfm-request-shell [is="track-request-widget"] .modal-wrapper{
  position:relative!important;
  top:auto!important;
  right:auto!important;
  bottom:auto!important;
  left:auto!important;
  display:block!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  height:auto!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  transform:none!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:visible!important;
  box-sizing:border-box!important;
}

.foutfm-request-shell .sc-track-request-widget .modal-container,
.foutfm-request-shell .foutfm-official-widget .modal-container,
.foutfm-request-shell [is="track-request-widget"] .modal-container{
  position:relative!important;
  top:auto!important;
  right:auto!important;
  bottom:auto!important;
  left:auto!important;
  width:min(560px,100%)!important;
  max-width:560px!important;
  min-width:0!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  margin:0 auto!important;
  padding:14px!important;
  transform:none!important;
  overflow:visible!important;
  box-sizing:border-box!important;
  border-radius:24px!important;
  border:1px solid rgba(167,43,139,.16)!important;
  background:radial-gradient(circle at 100% 0%,rgba(255,45,149,.10),transparent 34%),linear-gradient(145deg,#fff 0%,#fff8fc 100%)!important;
  box-shadow:0 24px 65px rgba(25,7,22,.30)!important;
  color:var(--fout-text,#4a3d4f)!important;
  z-index:2!important;
}

/* Formulier compact houden; vooral op een telefoon scheelt dit veel verticale ruimte. */
.foutfm-request-shell .sc-track-request-widget .modal-container form,
.foutfm-request-shell .foutfm-official-widget .modal-container form,
.foutfm-request-shell [is="track-request-widget"] .modal-container form{
  width:100%!important;
  margin:0!important;
  padding:14px!important;
  box-sizing:border-box!important;
}
.foutfm-request-shell .sc-track-request-widget .modal-container h1,
.foutfm-request-shell .sc-track-request-widget .modal-container h2,
.foutfm-request-shell .sc-track-request-widget .modal-container h3,
.foutfm-request-shell .foutfm-official-widget .modal-container h1,
.foutfm-request-shell .foutfm-official-widget .modal-container h2,
.foutfm-request-shell .foutfm-official-widget .modal-container h3,
.foutfm-request-shell [is="track-request-widget"] .modal-container h1,
.foutfm-request-shell [is="track-request-widget"] .modal-container h2,
.foutfm-request-shell [is="track-request-widget"] .modal-container h3{
  padding-right:48px!important;
  overflow-wrap:anywhere!important;
}

/* Het eigen kruisje blijft bij scrollen bovenin de kaart bereikbaar. */
.foutfm-request-shell .sc-track-request-widget .foutfm-modal-close,
.foutfm-request-shell .foutfm-official-widget .foutfm-modal-close,
.foutfm-request-shell [is="track-request-widget"] .foutfm-modal-close{
  position:sticky!important;
  top:6px!important;
  right:auto!important;
  float:none!important;
  margin:0 0 -40px auto!important;
  z-index:30!important;
}

@media(max-width:640px){
  .foutfm-request-shell .sc-track-request-widget .modal-mask,
  .foutfm-request-shell .foutfm-official-widget .modal-mask,
  .foutfm-request-shell [is="track-request-widget"] .modal-mask{
    padding:max(10px,env(safe-area-inset-top)) 8px max(14px,env(safe-area-inset-bottom))!important;
    scroll-padding-top:max(10px,env(safe-area-inset-top))!important;
    scroll-padding-bottom:max(14px,env(safe-area-inset-bottom))!important;
  }
  .foutfm-request-shell .sc-track-request-widget .modal-container,
  .foutfm-request-shell .foutfm-official-widget .modal-container,
  .foutfm-request-shell [is="track-request-widget"] .modal-container{
    width:100%!important;
    max-width:480px!important;
    margin:0 auto!important;
    padding:10px!important;
    border-radius:20px!important;
  }
  .foutfm-request-shell .sc-track-request-widget .modal-container form,
  .foutfm-request-shell .foutfm-official-widget .modal-container form,
  .foutfm-request-shell [is="track-request-widget"] .modal-container form{
    padding:12px!important;
  }
  .foutfm-request-shell .sc-track-request-widget .modal-container textarea,
  .foutfm-request-shell .foutfm-official-widget .modal-container textarea,
  .foutfm-request-shell [is="track-request-widget"] .modal-container textarea{
    min-height:96px!important;
    max-height:150px!important;
  }
  .foutfm-request-shell .sc-track-request-widget .modal-container h1,
  .foutfm-request-shell .sc-track-request-widget .modal-container h2,
  .foutfm-request-shell .foutfm-official-widget .modal-container h1,
  .foutfm-request-shell .foutfm-official-widget .modal-container h2,
  .foutfm-request-shell [is="track-request-widget"] .modal-container h1,
  .foutfm-request-shell [is="track-request-widget"] .modal-container h2{
    font-size:clamp(26px,8vw,36px)!important;
    line-height:1.08!important;
  }
}

