/* Blacksmith Finance · Consent-Banner „Kekse gefällig?" – kanonische Styles.
   Selbsttragend (eigener .bsf-cc-Namespace, nutzt brand.css-Tokens mit Fallback). */
.bsf-cc{
  position:fixed; left:50%; bottom:16px; transform:translate(-50%,140%);
  width:min(680px,calc(100vw - 24px)); z-index:9999;
  background:#0e1720; color:#eaf2f7;
  border:1px solid rgba(55,196,241,.35); border-radius:16px;
  box-shadow:0 18px 50px rgba(0,0,0,.5);
  opacity:0; visibility:hidden; transition:transform .35s ease, opacity .35s ease;
}
.bsf-cc.is-open{ transform:translate(-50%,0); opacity:1; visibility:visible; }
.bsf-cc:focus{ outline:none; }
.bsf-cc__inner{ display:grid; grid-template-columns:auto 1fr auto; gap:14px 18px; align-items:center; padding:clamp(16px,2.4vw,22px); }
.bsf-cc__logo{ width:54px; height:54px; flex:none; }
.bsf-cc__title{ font-size:1.06rem; font-weight:800; color:#fff; margin:0 0 4px; }
.bsf-cc__text{ color:var(--on-dark-soft,#b9c6d1); font-size:.9rem; line-height:1.55; margin:0; }
.bsf-cc__text a{ color:var(--accent,#37c4f1); text-decoration:underline; }
/* Ebene 2: standardmäßig AUS, per Klasse eingeblendet (robust – kein hidden-Attribut) */
.bsf-cc__options{ display:none; flex-wrap:wrap; gap:10px 18px; margin-top:12px; }
.bsf-cc.is-expanded .bsf-cc__options{ display:flex; }
.bsf-cc__opt{ display:inline-flex; align-items:center; gap:8px; font-size:.88rem; color:#eaf2f7; font-weight:600; }
.bsf-cc__opt-note{ color:var(--on-dark-mute,#8aa0ae); font-weight:500; }
.bsf-cc__opt input{ width:17px; height:17px; accent-color:var(--accent,#37c4f1); }
.bsf-cc__actions{ display:flex; flex-direction:column; gap:8px; align-items:stretch; }
.bsf-cc__btn{ font:inherit; font-weight:700; font-size:.9rem; border-radius:10px; padding:10px 16px; cursor:pointer; border:1px solid transparent; white-space:nowrap; }
.bsf-cc__btn--primary{ background:var(--accent,#37c4f1); color:#04222e; }
.bsf-cc__btn--primary:hover{ filter:brightness(1.06); }
.bsf-cc__btn--ghost{ background:transparent; color:#eaf2f7; border-color:rgba(255,255,255,.25); }
.bsf-cc__btn--ghost:hover{ border-color:var(--accent,#37c4f1); color:var(--accent,#37c4f1); }
.bsf-cc__link{ background:none; border:0; color:var(--on-dark-soft,#b9c6d1); font:inherit; font-size:.84rem; font-weight:600; text-decoration:underline; text-underline-offset:3px; cursor:pointer; padding:4px; }
.bsf-cc__link:hover{ color:var(--accent,#37c4f1); }
.bsf-cc__btn:focus-visible, .bsf-cc__link:focus-visible, .bsf-cc__opt input:focus-visible{ outline:2px solid var(--accent,#37c4f1); outline-offset:2px; }
@media (max-width:640px){
  .bsf-cc__inner{ grid-template-columns:auto 1fr; }
  .bsf-cc__actions{ grid-column:1 / -1; flex-direction:row; flex-wrap:wrap; }
  .bsf-cc__btn{ flex:1 1 auto; }
}
@media (prefers-reduced-motion:reduce){ .bsf-cc{ transition:none; } }
