
#bm24-cookie-consent-root{position:relative;z-index:var(--bm24cc-z);}
.bm24cc-banner{
  position:fixed;left:16px;right:16px;bottom:16px;z-index:var(--bm24cc-z);
  background:var(--bm24cc-bg);color:var(--bm24cc-text);
  border:1px solid var(--bm24cc-border);border-radius:var(--bm24cc-radius);
  box-shadow:0 18px 50px rgba(16,42,67,.16);
}
.bm24cc-inner{display:flex;gap:18px;align-items:flex-start;padding:18px 18px 18px 18px;position:relative;}
.bm24cc-copy{flex:1 1 auto;min-width:0;}
.bm24cc-title{font-size:18px;font-weight:700;line-height:1.2;margin-bottom:8px;color:var(--bm24cc-text);}
.bm24cc-text{font-size:14px;line-height:1.6;color:var(--bm24cc-text);}
.bm24cc-privacy-link{margin-top:8px;}
.bm24cc-privacy-link a,.bm24-cookie-settings-link{color:var(--bm24cc-primary);font-weight:600;text-decoration:none;}
.bm24cc-privacy-link a:hover,.bm24-cookie-settings-link:hover{text-decoration:underline;}
.bm24cc-actions{display:flex;flex-wrap:wrap;gap:10px;flex:0 0 auto;align-self:center;}
.bm24cc-btn{
  border:1px solid transparent;border-radius:999px;padding:11px 16px;font-size:14px;font-weight:700;
  cursor:pointer;line-height:1;transition:.18s ease;background:#fff;
}
.bm24cc-btn-primary{background:var(--bm24cc-primary);color:var(--bm24cc-primary-text);}
.bm24cc-btn-primary:hover{filter:brightness(.96);}
.bm24cc-btn-secondary{background:var(--bm24cc-secondary);color:var(--bm24cc-secondary-text);border-color:var(--bm24cc-border);}
.bm24cc-btn-secondary:hover{filter:brightness(.98);}
.bm24cc-close{
  position:absolute;top:10px;right:10px;width:32px;height:32px;border-radius:999px;border:1px solid var(--bm24cc-border);
  background:#fff;color:var(--bm24cc-text);font-size:20px;line-height:1;cursor:pointer;
}
.bm24cc-modal[hidden]{display:none!important;}
.bm24cc-modal{
  position:fixed;inset:0;z-index:calc(var(--bm24cc-z) + 1);
}
.bm24cc-backdrop{
  position:absolute;inset:0;background:rgba(8,18,36,.48);backdrop-filter:blur(2px);
}
.bm24cc-panel{
  position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
  width:min(720px,calc(100vw - 32px));max-height:min(82vh,920px);overflow:auto;
  background:#fff;border:1px solid var(--bm24cc-border);border-radius:calc(var(--bm24cc-radius) + 2px);
  box-shadow:0 26px 70px rgba(16,42,67,.22);
}
.bm24cc-panel-head,.bm24cc-panel-actions{padding:18px 20px;position:sticky;background:#fff;z-index:2;}
.bm24cc-panel-head{top:0;border-bottom:1px solid var(--bm24cc-border);}
.bm24cc-panel-actions{bottom:0;border-top:1px solid var(--bm24cc-border);display:flex;gap:10px;justify-content:flex-end;}
.bm24cc-panel-body{padding:6px 20px 8px;}
.bm24cc-cat-row{
  display:grid;grid-template-columns:1fr auto;gap:14px;padding:18px 0;
  border-bottom:1px solid var(--bm24cc-border);align-items:center;
}
.bm24cc-cat-copy{display:block;}
.bm24cc-cat-title{display:block;font-size:16px;font-weight:700;color:#17304f;margin-bottom:6px;}
.bm24cc-cat-text{display:block;font-size:14px;line-height:1.6;color:#50657e;}
.bm24cc-switch-wrap{display:inline-flex;align-items:center;}
.bm24cc-toggle{position:absolute;opacity:0;pointer-events:none;}
.bm24cc-switch{
  width:52px;height:30px;border-radius:999px;background:#d8e0eb;display:inline-block;position:relative;transition:.18s ease;
}
.bm24cc-switch:before{
  content:"";position:absolute;left:4px;top:4px;width:22px;height:22px;border-radius:999px;background:#fff;box-shadow:0 2px 8px rgba(0,0,0,.12);transition:.18s ease;
}
.bm24cc-toggle:checked + .bm24cc-switch{background:var(--bm24cc-primary);}
.bm24cc-toggle:checked + .bm24cc-switch:before{left:26px;}
.bm24cc-toggle:disabled + .bm24cc-switch{background:#9ab5df;}
.bm24cc-toggle:disabled + .bm24cc-switch:before{left:26px;}
body.bm24cc-modal-open{overflow:hidden!important;}

@media (max-width: 767px){
  .bm24cc-banner{left:10px;right:10px;bottom:10px;}
  .bm24cc-inner{display:block;padding:16px;}
  .bm24cc-actions{margin-top:14px;display:grid;grid-template-columns:1fr;gap:8px;}
  .bm24cc-btn{width:100%;justify-content:center;}
  .bm24cc-panel{
    width:calc(100vw - 16px);
    max-height:min(88vh,1200px);
    top:auto;left:8px;right:8px;bottom:8px;transform:none;
  }
  .bm24cc-panel-actions{display:grid;grid-template-columns:1fr 1fr;}
  .bm24cc-cat-row{grid-template-columns:1fr;gap:10px;}
}
