/* ── Cookie Banner ── */
#cookie-banner{
  position:fixed;bottom:0;left:0;right:0;z-index:99000;
  background:#fff;
  border-top:1px solid rgba(0,0,0,.1);
  box-shadow:0 -4px 32px rgba(0,0,0,.10);
  padding:20px 24px;
  font-family:'Syne',sans-serif;
  display:none;
  animation:bannerUp .3s ease;
}
[data-theme="dark"] #cookie-banner{
  background:#1a2535;
  border-top:1px solid rgba(255,255,255,.08);
  box-shadow:0 -4px 32px rgba(0,0,0,.4);
}
@keyframes bannerUp{from{transform:translateY(100%)}to{transform:translateY(0)}}
#cookie-banner.show{display:block;}

#cookie-inner{max-width:900px;margin:0 auto;}

#cookie-title{
  font-size:15px;font-weight:700;
  color:#1a2535;margin-bottom:8px;
}
[data-theme="dark"] #cookie-title{color:#e8f0f8;}

#cookie-text{
  font-size:13px;line-height:1.65;
  color:#4a6580;margin-bottom:16px;
}
[data-theme="dark"] #cookie-text{color:#7a9ab5;}
#cookie-text a{color:#1565c0;text-decoration:underline;}
[data-theme="dark"] #cookie-text a{color:#4da6ff;}

/* Detail-Kategorien (ausklappbar) */
#cookie-details{
  display:none;
  margin-bottom:16px;
  border:1px solid rgba(0,0,0,.08);
  border-radius:12px;
  overflow:hidden;
}
[data-theme="dark"] #cookie-details{border-color:rgba(255,255,255,.08);}
#cookie-details.open{display:block;}

.cookie-cat{
  padding:14px 16px;
  border-bottom:1px solid rgba(0,0,0,.06);
  display:flex;align-items:flex-start;gap:14px;
}
[data-theme="dark"] .cookie-cat{border-bottom-color:rgba(255,255,255,.06);}
.cookie-cat:last-child{border-bottom:none;}
.cookie-cat-info{flex:1;}
.cookie-cat-name{font-size:13px;font-weight:700;color:#1a2535;margin-bottom:3px;}
[data-theme="dark"] .cookie-cat-name{color:#e8f0f8;}
.cookie-cat-desc{font-size:12px;color:#4a6580;line-height:1.5;}
[data-theme="dark"] .cookie-cat-desc{color:#7a9ab5;}

/* Toggle-Switch für Kategorien */
.cat-toggle{position:relative;width:40px;height:22px;flex-shrink:0;margin-top:2px;}
.cat-toggle input{opacity:0;width:0;height:0;position:absolute;}
.cat-toggle-track{
  position:absolute;inset:0;border-radius:11px;
  background:rgba(0,0,0,.15);cursor:pointer;transition:background .2s;
}
[data-theme="dark"] .cat-toggle-track{background:rgba(255,255,255,.15);}
.cat-toggle input:checked + .cat-toggle-track{background:#1565c0;}
[data-theme="dark"] .cat-toggle input:checked + .cat-toggle-track{background:#4da6ff;}
.cat-toggle-track::after{
  content:'';position:absolute;top:3px;left:3px;
  width:16px;height:16px;border-radius:50%;
  background:#fff;transition:transform .2s;
  box-shadow:0 1px 4px rgba(0,0,0,.2);
}
.cat-toggle input:checked + .cat-toggle-track::after{transform:translateX(18px);}
.cat-toggle.required .cat-toggle-track{background:#1565c0;cursor:not-allowed;opacity:.6;}
[data-theme="dark"] .cat-toggle.required .cat-toggle-track{background:#4da6ff;}
.cat-toggle.required .cat-toggle-track::after{transform:translateX(18px);}

/* Buttons */
#cookie-btns{display:flex;gap:10px;flex-wrap:wrap;align-items:center;}
#btn-cookie-all{
  padding:10px 24px;border-radius:8px;border:none;
  background:#1565c0;color:#fff;
  font-family:'Syne',sans-serif;font-size:13px;font-weight:700;
  cursor:pointer;transition:opacity .2s;white-space:nowrap;
}
#btn-cookie-all:hover{opacity:.88;}
#btn-cookie-select{
  padding:10px 24px;border-radius:8px;
  border:1.5px solid rgba(21,101,192,.4);
  background:transparent;color:#1565c0;
  font-family:'Syne',sans-serif;font-size:13px;font-weight:700;
  cursor:pointer;transition:all .2s;white-space:nowrap;
}
[data-theme="dark"] #btn-cookie-select{color:#4da6ff;border-color:rgba(77,166,255,.4);}
#btn-cookie-select:hover{background:rgba(21,101,192,.07);}
#btn-cookie-reject{
  padding:10px 24px;border-radius:8px;
  border:1.5px solid rgba(0,0,0,.12);
  background:transparent;color:#4a6580;
  font-family:'Syne',sans-serif;font-size:13px;font-weight:700;
  cursor:pointer;transition:all .2s;white-space:nowrap;
}
[data-theme="dark"] #btn-cookie-reject{border-color:rgba(255,255,255,.12);color:#7a9ab5;}
#btn-cookie-reject:hover{border-color:#4a6580;}
#btn-cookie-details-toggle{
  font-size:12px;color:#4a6580;background:none;border:none;
  cursor:pointer;text-decoration:underline;padding:0;
  font-family:'Syne',sans-serif;margin-left:auto;
}
[data-theme="dark"] #btn-cookie-details-toggle{color:#7a9ab5;}

/* Cookie-Einstellungen öffnen (kleines Icon nach Einwilligung) */
#cookie-settings-btn{
  position:fixed;bottom:16px;left:16px;z-index:98000;
  background:#fff;border:1px solid rgba(0,0,0,.1);
  border-radius:8px;padding:8px 12px;
  font-size:12px;font-weight:600;color:#4a6580;
  cursor:pointer;box-shadow:0 2px 8px rgba(0,0,0,.1);
  font-family:'Syne',sans-serif;transition:all .2s;
  display:none;
}
[data-theme="dark"] #cookie-settings-btn{
  background:#1a2535;border-color:rgba(255,255,255,.1);color:#7a9ab5;
}
#cookie-settings-btn:hover{color:#1565c0;}
[data-theme="dark"] #cookie-settings-btn:hover{color:#4da6ff;}

@media(max-width:600px){
  #cookie-banner{padding:16px;}
  #cookie-btns{gap:8px;}
  #btn-cookie-all,#btn-cookie-select,#btn-cookie-reject{
    padding:10px 16px;font-size:12px;flex:1;text-align:center;
  }
  #btn-cookie-details-toggle{margin-left:0;width:100%;text-align:center;}
}
