/* ====== JBCookies 6.x Original-Basis ====== */
.jb-privacy .modal-footer{display:block;text-align:center;}
.jb-privacy-reopen{cursor:pointer;position:fixed;bottom:15px;z-index:1000;}
.jb-privacy-reopen.right{right:30px;left:auto;}
.jb-privacy-reopen.left{left:30px;right:auto;}
.jb-privacy-reopen .btn{font-size:10px;padding:6px;border-radius:50px;border:none;}
.jb-privacy-reopen img{display:inline;height:26px;width:26px;}

/* ================================================================
   HMW: Helles Bootstrap-artiges Styling, NUR auf die Cookie-Modals
   begrenzt (Template laedt kein Bootstrap-CSS). Markenakzent: #45a545
   ================================================================ */
.modal-backdrop{position:fixed;inset:0;z-index:1050;background:rgba(0,0,0,.5);}

.jb-privacy.modal,#jb-privacy-preferences.modal,#jb-privacy-policy.modal{
  position:fixed;inset:0;z-index:1055;overflow-y:auto;padding:1rem;
}
#jb-privacy-preferences.modal,#jb-privacy-policy.modal{display:none;}
#jb-privacy-preferences.modal.show,#jb-privacy-policy.modal.show{display:block;}

.jb-privacy .modal-dialog,#jb-privacy-preferences .modal-dialog,#jb-privacy-policy .modal-dialog{
  max-width:540px;width:100%;margin:1.75rem auto;
}
#jb-privacy-preferences .modal-dialog{max-width:640px;}

.jb-privacy .modal-content,#jb-privacy-preferences .modal-content,#jb-privacy-policy .modal-content{
  background:#fff;color:#2b2b2b;border:1px solid rgba(0,0,0,.08);border-radius:12px;
  box-shadow:0 12px 48px rgba(0,0,0,.3);overflow:hidden;font-size:15px;line-height:1.55;
}
.jb-privacy .modal-header,#jb-privacy-preferences .modal-header,#jb-privacy-policy .modal-header{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  padding:16px 24px;border-bottom:1px solid #ececec;font-size:18px;font-weight:700;color:#1a1a1a;
}
.jb-privacy .modal-body,#jb-privacy-preferences .modal-body,#jb-privacy-policy .modal-body{
  padding:22px 24px;max-height:65vh;overflow-y:auto;
}
.jb-privacy .modal-footer,#jb-privacy-preferences .modal-footer,#jb-privacy-policy .modal-footer{
  display:flex;flex-wrap:wrap;gap:10px;justify-content:center;
  padding:16px 24px;border-top:1px solid #ececec;background:#fafafa;
}
#jb-privacy-preferences .modal-footer{justify-content:flex-end;}

/* Texte Hauptbanner */
.jb-privacy .jb-privacy-title{font-size:18px;font-weight:700;margin:0 0 10px;color:#1a1a1a;}
.jb-privacy .jb-privacy-text{font-size:15px;margin:0 0 20px;color:#444;}

/* Button-Zeile (ersetzt Bootstrap-Utilities) */
.jb-privacy .d-flex{display:flex;gap:10px;flex-wrap:wrap;}
.jb-privacy .flex-fill{flex:1 1 0;}

/* Buttons */
.jb-privacy .btn,#jb-privacy-preferences .btn,#jb-privacy-policy .btn{
  display:inline-block;padding:10px 20px;border-radius:7px;font-size:15px;font-weight:600;
  line-height:1.4;text-align:center;cursor:pointer;border:1px solid transparent;
  transition:background .15s,border-color .15s,color .15s;text-decoration:none;white-space:nowrap;
}
.jb-privacy .btn-primary,#jb-privacy-preferences .btn-primary,#jb-privacy-policy .btn-primary,
.jb-privacy .btn-success,#jb-privacy-preferences .btn-success{
  background:#45a545;border-color:#45a545;color:#fff;
}
.jb-privacy .btn-primary:hover,#jb-privacy-preferences .btn-primary:hover,
.jb-privacy .btn-success:hover,#jb-privacy-preferences .btn-success:hover{
  background:#368038;border-color:#368038;
}
.jb-privacy .btn-outline-secondary,#jb-privacy-preferences .btn-outline-secondary,
.jb-privacy .btn-secondary,#jb-privacy-preferences .btn-secondary,
#jb-privacy-preferences .btn-light{
  background:#fff;border-color:#cdcdcd;color:#333;
}
.jb-privacy .btn-outline-secondary:hover,#jb-privacy-preferences .btn-outline-secondary:hover,
#jb-privacy-preferences .btn-secondary:hover,#jb-privacy-preferences .btn-light:hover{
  background:#f1f1f1;
}

/* Datenschutz-Link */
.jb-privacy .jb-policy{display:inline-block;padding:8px 10px;color:#368038;font-weight:600;}
.jb-privacy .jb-policy:hover{text-decoration:underline;}

/* Schliessen-Button (x) */
.btn-close{appearance:none;border:0;background:transparent;font-size:0;width:26px;height:26px;
  cursor:pointer;position:relative;opacity:.6;}
.btn-close:hover{opacity:1;}
.btn-close::before{content:"\00d7";font-size:26px;line-height:26px;color:#333;
  position:absolute;inset:0;text-align:center;}

/* ---- Einstellungs-Dialog: Kategorien + Toggle-Switches ---- */
#jb-privacy-preferences h5,#jb-privacy-preferences h6,#jb-privacy-preferences strong{color:#1a1a1a;}
#jb-privacy-preferences .jb-category,#jb-privacy-preferences .form-check{
  padding:14px 0;border-bottom:1px solid #f0f0f0;
}
#jb-privacy-preferences .form-check{display:flex;align-items:center;gap:12px;}
#jb-privacy-preferences .form-check-label,#jb-privacy-preferences label{cursor:pointer;}
/* Checkbox -> Toggle-Switch */
#jb-privacy-preferences input[type=checkbox]{
  appearance:none;-webkit-appearance:none;flex:0 0 auto;
  width:42px;height:23px;border-radius:23px;background:#cfcfcf;position:relative;
  cursor:pointer;transition:background .2s;margin:0;
}
#jb-privacy-preferences input[type=checkbox]:checked{background:#45a545;}
#jb-privacy-preferences input[type=checkbox]::before{
  content:"";position:absolute;top:2px;left:2px;width:19px;height:19px;border-radius:50%;
  background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.3);transition:left .2s;
}
#jb-privacy-preferences input[type=checkbox]:checked::before{left:21px;}
#jb-privacy-preferences input[type=checkbox]:disabled{opacity:.55;cursor:not-allowed;}
