/* Çerez Onay Bildirimi & Tercih Merkezi */
#cerez-banner{
  position:fixed;
  left:20px;
  bottom:20px;
  z-index:99999;
  width:380px;
  max-width:calc(100vw - 40px);
  background:#fff;
  border:1px solid var(--soft-line,#e8e8ec);
  border-radius:14px;
  padding:18px 20px;
  box-shadow:0 10px 34px rgba(0,0,0,.16);
  display:none;
}
#cerez-banner.is-visible{ display:block; }
.cerez-banner__brand{
  margin-bottom:10px;
}
.cerez-banner__brand img{
  max-height:32px;
  max-width:160px;
  object-fit:contain;
}
.cerez-banner__text p{
  margin:0 0 14px;
  font-size:13px;
  line-height:1.65;
  color:#4a4a4f;
}
.cerez-banner__text a{
  color:var(--brand-orange,#eb5e28);
  text-decoration:underline;
  font-weight:600;
}
.cerez-banner__actions{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
}
.cerez-btn{
  border:none;
  cursor:pointer;
  border-radius:8px;
  padding:10px 14px;
  font-size:12.5px;
  font-weight:700;
  letter-spacing:.2px;
  white-space:nowrap;
  transition:opacity .15s ease, transform .1s ease;
}
.cerez-btn:active{ transform:scale(.98); }
.cerez-btn--primary{
  background:var(--brand-orange,#eb5e28);
  color:#fff;
}
.cerez-btn--primary:hover{ opacity:.88; }
.cerez-banner__actions .cerez-btn{ flex:1 1 auto; }
.cerez-btn--ghost{
  background:transparent;
  color:#fff;
  border:1px solid rgba(255,255,255,.35);
}
.cerez-btn--ghost:hover{ background:rgba(255,255,255,.08); }

/* Modal (Ayarlar) */
#cerez-modal-overlay{
  position:fixed;
  inset:0;
  z-index:100000;
  background:rgba(15,15,17,.55);
  display:none;
  align-items:center;
  justify-content:center;
  padding:20px;
}
#cerez-modal-overlay.is-visible{ display:flex; }
.cerez-modal{
  background:#fff;
  width:100%;
  max-width:640px;
  max-height:88vh;
  border-radius:16px;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  box-shadow:0 24px 70px rgba(0,0,0,.3);
}
.cerez-modal__header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:20px 24px;
  border-bottom:1px solid var(--soft-line,#e8e8ec);
}
.cerez-modal__header h5{
  margin:0;
  font-size:17px;
  font-weight:700;
  color:#1a1a1a;
}
.cerez-modal__close{
  border:none;
  background:transparent;
  font-size:20px;
  line-height:1;
  cursor:pointer;
  color:#666;
  padding:4px 8px;
}
.cerez-modal__close:hover{ color:#111; }
.cerez-modal__body{
  padding:8px 24px 16px;
  overflow-y:auto;
}
.cerez-cat{
  border-bottom:1px solid var(--soft-line,#e8e8ec);
  padding:16px 0;
}
.cerez-cat:last-child{ border-bottom:none; }
.cerez-cat__head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  cursor:pointer;
}
.cerez-cat__title{
  display:flex;
  align-items:center;
  gap:8px;
  font-size:14.5px;
  font-weight:700;
  color:#1a1a1a;
}
.cerez-cat__title .fa-chevron-down{
  font-size:11px;
  color:#888;
  transition:transform .15s ease;
}
.cerez-cat.is-open .cerez-cat__title .fa-chevron-down{ transform:rotate(180deg); }
.cerez-cat__desc{
  display:none;
  margin:10px 0 0;
  font-size:13px;
  line-height:1.65;
  color:#555;
}
.cerez-cat.is-open .cerez-cat__desc{ display:block; }

/* Toggle switch */
.cerez-switch{
  position:relative;
  display:inline-block;
  width:42px;
  height:24px;
  flex:0 0 auto;
}
.cerez-switch input{ opacity:0; width:0; height:0; }
.cerez-switch__slider{
  position:absolute;
  cursor:pointer;
  inset:0;
  background:#d8d8dc;
  border-radius:24px;
  transition:.2s;
}
.cerez-switch__slider::before{
  content:"";
  position:absolute;
  height:18px; width:18px;
  left:3px; top:3px;
  background:#fff;
  border-radius:50%;
  transition:.2s;
  box-shadow:0 1px 3px rgba(0,0,0,.25);
}
.cerez-switch input:checked + .cerez-switch__slider{
  background:var(--brand-orange,#eb5e28);
}
.cerez-switch input:checked + .cerez-switch__slider::before{
  transform:translateX(18px);
}
.cerez-switch input:disabled + .cerez-switch__slider{
  background:#c9c9cc;
  cursor:not-allowed;
  opacity:.7;
}

.cerez-modal__footer{
  padding:16px 24px 22px;
  border-top:1px solid var(--soft-line,#e8e8ec);
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  justify-content:flex-end;
}
.cerez-modal__footer .cerez-btn--ghost{
  color:#333;
  border-color:#d8d8dc;
}
.cerez-modal__footer .cerez-btn--ghost:hover{ background:#f5f5f6; }

@media (max-width:480px){
  #cerez-banner{
    left:10px;
    right:10px;
    bottom:10px;
    width:auto;
  }
  .cerez-banner__actions{ flex-direction:column; }
}
