/* Local styles; no external fonts or resources. */
[hidden] { display: none !important; }
button[data-privacy-settings] { background: none; border: 0; padding: 0; color: inherit; font: inherit; cursor: pointer; text-decoration: underline; text-underline-offset: .2em; }
.mb-consent, .mb-privacy-dialog { box-sizing: border-box; color: #152433; background: #fff; font: 15px/1.55 Arial, Helvetica, sans-serif; text-align: left; }
.mb-consent *, .mb-privacy-dialog * { box-sizing: border-box; }
.mb-consent { position: fixed; inset: auto 20px 20px; z-index: 1000; display: flex; align-items: center; gap: 28px; padding: 22px 26px; border: 1px solid #d8e0e6; border-radius: 8px; box-shadow: 0 5px 30px #15243320; max-height: 75vh; overflow: auto; }
.mb-consent-copy { flex: 1 1 540px; }
.mb-consent h2, .mb-privacy-dialog h2 { margin: 0 0 8px; color: #152433; font: 600 18px/1.3 Arial, Helvetica, sans-serif; letter-spacing: normal; }
.mb-consent p, .mb-privacy-dialog p { margin: 0 0 16px; }
.mb-consent-copy p { margin: 0; }
.mb-consent a, .mb-privacy-dialog a { color: #245f8b; text-decoration: underline; text-underline-offset: .2em; }
.mb-consent-actions { display: flex; flex-wrap: wrap; justify-content: flex-start; gap: 10px; align-items: stretch; }
.mb-consent > .mb-consent-actions { flex: 0 1 340px; }
.mb-consent-actions button { flex: 1 1 130px; border: 1px solid #245f8b; border-radius: 3px; background: #fff; color: #245f8b; min-height: 44px; padding: 10px 14px; font: 600 14px/1.35 Arial, Helvetica, sans-serif; cursor: pointer; }
.mb-consent-actions button:hover { background: #eef4f7; }
.mb-consent-actions .mb-consent-link { flex-basis: 100%; background: transparent; border-color: transparent; min-height: 32px; padding: 3px 8px; font-weight: 400; text-decoration: underline; }
.mb-consent-actions button:focus-visible, button[data-privacy-settings]:focus-visible, .mb-privacy-dialog input:focus-visible { outline: 2px solid #245f8b; outline-offset: 3px; }
.mb-privacy-dialog { width: min(620px, calc(100% - 32px)); max-height: 85vh; padding: 28px; margin: auto; border: 1px solid #d8e0e6; border-radius: 8px; overflow: auto; }
.mb-privacy-dialog::backdrop { background: #15243388; }
.mb-consent-essential { color: #5e6d79; font-size: 14px; }
.mb-consent-option { display: flex; align-items: flex-start; gap: 12px; margin: 20px 0; padding: 16px; background: #f3f6f8; font-weight: 600; cursor: pointer; }
.mb-consent-option input { flex: 0 0 20px; width: 20px; height: 20px; margin: 2px 0 0; accent-color: #245f8b; }
@media (max-width: 760px) {
  .mb-consent { inset: auto 10px 10px; display: block; padding: 18px; font-size: 14px; }
  .mb-consent-actions { margin-top: 16px; }
  .mb-privacy-dialog { padding: 22px; }
}
