/* Einwilligungs-Banner (§ 25 TDDDG) */
#rfr-consent{position:fixed;inset:0;z-index:9000;display:none;align-items:flex-end;justify-content:center;
  padding:20px;background:rgba(2,4,12,.7);backdrop-filter:blur(4px)}
#rfr-consent.on{display:flex}
#rfr-consent .box{width:100%;max-width:620px;border:1px solid rgba(0,163,255,.34);
  background:linear-gradient(175deg,#0E142E,#070B1C);box-shadow:0 30px 80px -30px #000;
  animation:cin .28s cubic-bezier(.2,.7,.3,1);max-height:calc(100vh - 40px);overflow-y:auto}
@keyframes cin{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
#rfr-consent .hd{padding:20px 22px 0}
#rfr-consent h2{font-family:'Orbitron',sans-serif;font-size:.86rem;font-weight:900;letter-spacing:.06em;
  text-transform:uppercase;color:#fff;margin:0 0 8px}
#rfr-consent p{font-family:'Exo 2',sans-serif;font-size:.82rem;color:#ADB7D4;line-height:1.55;margin:0 0 4px}
#rfr-consent .cats{padding:14px 22px 0;display:flex;flex-direction:column;gap:1px}
#rfr-consent .cat{display:flex;gap:12px;padding:11px 0;border-top:1px solid rgba(0,163,255,.1);align-items:flex-start}
#rfr-consent .cat:first-child{border-top:none}
#rfr-consent .sw{position:relative;flex:0 0 auto;width:38px;height:21px;border:1px solid rgba(0,163,255,.34);
  background:rgba(4,6,15,.8);cursor:pointer;transition:.18s;margin-top:2px}
#rfr-consent .sw::after{content:'';position:absolute;top:2px;left:2px;width:15px;height:15px;background:#8B95B7;
  transition:.18s}
#rfr-consent .sw[aria-checked=true]{background:rgba(0,163,255,.3);border-color:#00A3FF}
#rfr-consent .sw[aria-checked=true]::after{left:19px;background:#5DE2FF;box-shadow:0 0 9px rgba(93,226,255,.6)}
#rfr-consent .sw[data-locked]{opacity:.55;cursor:not-allowed}
#rfr-consent .sw[data-locked]::after{background:#3DDC97}
#rfr-consent .cn{font-family:'Rajdhani',sans-serif;font-size:.78rem;font-weight:700;letter-spacing:.06em;
  text-transform:uppercase;color:#fff;display:block}
#rfr-consent .cd{font-family:'Exo 2',sans-serif;font-size:.74rem;color:#8B95B7;line-height:1.45;display:block;margin-top:2px}
#rfr-consent .ft{padding:18px 22px 20px;display:flex;gap:9px;flex-wrap:wrap;align-items:center}
#rfr-consent button{font-family:'Rajdhani',sans-serif;font-size:.72rem;font-weight:700;letter-spacing:.1em;
  text-transform:uppercase;padding:10px 15px;border:1px solid rgba(0,163,255,.3);background:rgba(13,18,41,.7);
  color:#DCE4ED;cursor:pointer;transition:.16s}
#rfr-consent button:hover{border-color:rgba(0,163,255,.6);color:#fff;background:rgba(0,163,255,.12)}
#rfr-consent button.prim{border-color:transparent;color:#fff;
  background:linear-gradient(135deg,#FF2A85,#C51B66);box-shadow:0 6px 20px -8px rgba(255,42,133,.8)}
#rfr-consent button.prim:hover{background:linear-gradient(135deg,#FF4A97,#DB2178)}
#rfr-consent .lnk{margin-left:auto;font-family:'Exo 2',sans-serif;font-size:.74rem;color:#5DE2FF;
  text-decoration:none;border-bottom:1px solid rgba(93,226,255,.3);letter-spacing:0;text-transform:none}
#rfr-consent .x{position:absolute;top:14px;right:16px;background:none;border:none;color:#8B95B7;font-size:1rem;
  padding:4px;line-height:1}
#rfr-consent .x:hover{color:#fff}
@media(max-width:560px){#rfr-consent .ft{flex-direction:column;align-items:stretch}
  #rfr-consent .ft button{width:100%}#rfr-consent .lnk{margin:6px 0 0;text-align:center}}
