/* Rockblog On Air – Hörerwünsche V3.1
   Kompaktere öffentliche Wunschseite, passend zum aktuellen Website-Look. */
.rb-wishes{--wish-border:rgba(255,255,255,.11);--wish-panel:#0b1017;--wish-panel-2:#101720;--wish-muted:#c8d0d9}
.rb-wishes .page-shell{overflow:visible}

.rb-wishes-hero{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(220px,.46fr);gap:clamp(1.25rem,3vw,2.8rem);align-items:center;padding:clamp(1.15rem,2.6vw,2.15rem) 0 clamp(1.55rem,3.5vw,2.65rem)}
.rb-wishes-hero .breadcrumbs{grid-column:1/-1;margin:0 0 .2rem}
.rb-wishes-hero-copy{min-width:0}
.rb-wishes-hero .kicker{padding:0;border:0;background:none;color:#ffd06d}
.rb-wishes-hero h1{max-width:14ch;margin:.35rem 0 .7rem;font-size:clamp(2.5rem,5.1vw,4.5rem);line-height:.96;letter-spacing:-.052em}
.rb-wishes-hero .lead{max-width:62ch;margin:0;color:#d8dee6;font-size:clamp(.98rem,1.35vw,1.1rem);line-height:1.58}
.rb-wishes-hero-meta{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem}
.rb-wishes-hero-meta span{display:flex;align-items:center;gap:.32rem;padding:.48rem .66rem;border:1px solid var(--wish-border);border-radius:999px;background:rgba(255,255,255,.035);color:#aeb8c2;font-size:.75rem;line-height:1.25;white-space:nowrap}
.rb-wishes-hero-meta strong{color:#fff;font-size:.77rem}
.rb-wishes-hero-visual{position:relative;width:min(100%,330px);justify-self:end;margin:0;overflow:hidden;border:1px solid var(--wish-border);border-radius:24px;background:#080c12;box-shadow:0 22px 54px rgba(0,0,0,.3)}
.rb-wishes-hero-visual::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,transparent 68%,rgba(3,5,8,.86))}
.rb-wishes-hero-visual img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:cover}
.rb-wishes-hero-visual figcaption{position:absolute;z-index:2;left:.7rem;right:.7rem;bottom:.65rem;padding:.42rem .58rem;border:1px solid rgba(255,255,255,.14);border-radius:999px;background:rgba(7,9,13,.78);backdrop-filter:blur(10px);color:#fff;font-size:.7rem;font-weight:850;text-align:center}

.rb-wishes-main{padding-top:0}
.rb-wishes-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(230px,.45fr);gap:1rem;align-items:start}
.rb-wishes-form-card{position:relative;overflow:hidden;padding:clamp(1.1rem,2.2vw,1.75rem);border-radius:24px;background:linear-gradient(145deg,#101720,#0a0f15 72%);box-shadow:0 22px 54px rgba(0,0,0,.22)}
.rb-wishes-form-card::before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:linear-gradient(#ff7b2c,#ffd06d,#54c5ff)}
.rb-wishes-form-head{display:grid;gap:.7rem;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid var(--wish-border)}
.rb-wishes-form-head h2{margin:.18rem 0 .42rem;font-size:clamp(1.7rem,2.65vw,2.35rem);letter-spacing:-.035em}
.rb-wishes-form-head>div:first-child>p:not(.eyebrow){max-width:72ch;margin-bottom:0;color:var(--wish-muted);line-height:1.55}

.rb-wishes .request-form{gap:1rem}
.rb-wishes .form-grid{gap:.8rem}
.rb-wishes .form-field{gap:.36rem}
.rb-wishes .form-field label{font-size:.83rem;letter-spacing:.01em}
.rb-wishes .form-field input,.rb-wishes .form-field textarea{border-color:rgba(255,255,255,.13);border-radius:12px;background:#080d13;box-shadow:inset 0 1px 0 rgba(255,255,255,.02);transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}
.rb-wishes .form-field input:focus,.rb-wishes .form-field textarea:focus{outline:none;border-color:rgba(255,208,109,.7);background:#0a1017;box-shadow:0 0 0 3px rgba(255,208,109,.09)}
.rb-wishes .form-field textarea{min-height:125px}
.rb-wishes .wish-song-match{margin:.02rem 0 .1rem}
.rb-wishes .wish-song-intro,.rb-wishes .wish-song-loading,.rb-wishes .wish-song-empty{border-color:rgba(84,197,255,.22);background:rgba(84,197,255,.055)}
.rb-wishes .wish-song-result{border-radius:11px;background:#080d13}
.rb-wishes .wish-song-selected{border-color:rgba(69,207,131,.42);background:rgba(69,207,131,.075)}
.rb-wishes .form-consent{border-color:rgba(84,197,255,.20);border-radius:14px;background:rgba(22,141,226,.055)}
.rb-wishes .form-actions{justify-content:space-between;padding-top:.1rem}
.rb-wishes .form-actions .button{min-width:220px}
.rb-wishes .form-status{border-radius:14px}

.rb-wishes-side{display:grid;gap:1rem;position:sticky;top:1rem}
.rb-wishes-side>.card{padding:1rem;border-radius:20px;background:linear-gradient(145deg,#101720,#0a0f15);box-shadow:0 16px 38px rgba(0,0,0,.18)}
.rb-wishes-teddy{display:grid!important;grid-template-columns:68px minmax(0,1fr);gap:.8rem;align-items:start;border-color:rgba(255,139,45,.25)!important;background:linear-gradient(145deg,rgba(255,126,36,.09),#0b1017 58%)!important}
.rb-wishes-teddy img{width:68px;height:68px;object-fit:cover;border-radius:17px}
.rb-wishes-teddy p{margin:0;color:#d8d1c9;font-size:.86rem;line-height:1.48}
.rb-wishes-teddy .eyebrow{margin-bottom:.3rem;color:#ffd06d}
.rb-wishes-side-links{display:flex;flex-wrap:wrap;gap:.45rem .8rem;margin-top:.75rem;padding-top:.7rem;border-top:1px solid var(--wish-border)}
.rb-wishes-side-links a{font-size:.82rem;font-weight:800}

@media(max-width:1020px){
  .rb-wishes-hero{grid-template-columns:minmax(0,1fr) 260px}
  .rb-wishes-layout{grid-template-columns:minmax(0,1fr) 250px}
}
@media(max-width:820px){
  .rb-wishes-hero{grid-template-columns:minmax(0,1fr) 190px;gap:1rem;padding-bottom:1.75rem}
  .rb-wishes-hero h1{max-width:13ch}
  .rb-wishes-hero-visual{width:190px;border-radius:20px}
  .rb-wishes-hero-visual figcaption{display:none}
  .rb-wishes-layout{grid-template-columns:1fr}
  .rb-wishes-side{position:static}
  .rb-wishes-teddy{grid-template-columns:58px minmax(0,1fr)}
  .rb-wishes-teddy img{width:58px;height:58px}
}
@media(max-width:640px){
  .rb-wishes-hero{grid-template-columns:1fr;padding-top:1rem}
  .rb-wishes-hero h1{font-size:clamp(2.45rem,12vw,3.5rem)}
  .rb-wishes-hero .lead{line-height:1.5}
  .rb-wishes-hero-meta{gap:.4rem}
  .rb-wishes-hero-meta span{font-size:.7rem}
  .rb-wishes-hero-visual{display:none}
  .rb-wishes-form-card{padding:1rem;border-radius:20px}
  .rb-wishes .form-actions{align-items:stretch;flex-direction:column}
  .rb-wishes .form-actions .button{width:100%;min-width:0}
}
@media(prefers-reduced-motion:reduce){.rb-wishes .form-field input,.rb-wishes .form-field textarea{transition:none}}
