.mb-consent[hidden],.mb-consent [hidden]{display:none;}
.mb-consent{position:fixed;inset-inline:16px;inset-block-end:8px;inset-block-start:auto;margin-block:0;inline-size:calc(100% - 32px);z-index:1000;max-inline-size:960px;margin-inline:auto;padding:8px 12px;background:#181818;color:#fff;border:1px solid #777;box-shadow:0 4px 16px #0003;font-family:inherit;text-align:start;max-block-size:calc(100dvh - 32px);overflow:auto;}
.mb-consent::backdrop{background:#0004;}
.mb-consent h2{font:inherit;font-size:14px;line-height:1.2;font-weight:700;color:#fff;margin:0;}
.mb-consent p{font:inherit;font-size:13px;line-height:1.3;color:#e0e0e0;margin:0;}
.mb-consent a{color:#c5e4f2;text-decoration:underline;}
.mb-consent__actions{display:flex;flex-wrap:wrap;gap:6px;margin-block-start:6px;}
.mb-consent button{font:inherit;font-size:14px;line-height:1.2;min-block-size:44px;padding:8px 12px;background:#303030;border:1px solid #aaa;color:#fff;cursor:pointer;}
/* Enlarged text: a long Russian word wraps inside the panel instead of clipping. */
.mb-consent :is(h2,p,button){overflow-wrap:break-word;}
.mb-consent button{max-inline-size:100%;}
.mb-consent button:hover{background:#484848;}
.mb-consent :focus-visible,.mb-consent-settings:focus-visible{outline:2px solid #ff7a18;outline-offset:3px;}
.mb-consent-settings{font:inherit;color:inherit;background:none;border:0;text-decoration:underline;cursor:pointer;min-block-size:44px;padding:8px;}
/* Approve and decline carry the same treatment and share the row equally. */
.mb-consent button[data-choice]{flex:1 1 0;}
.mb-consent button[data-close]{flex:none;background:none;border-color:transparent;text-decoration:underline;}
@media(max-width:480px){.mb-consent{inset-inline:8px;inset-block-end:8px;inline-size:calc(100% - 16px);}}
/* Printing: the notice and its reopen link are screen controls, never printed (release audit IR2-04, 10.10.2026). */
@media print{.mb-consent,.mb-consent-settings{display:none !important}}

@media(min-width:48rem){
  .mb-consent{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;padding:10px 16px;}
  .mb-consent[hidden],.mb-consent:not([open]){display:none;}
  .mb-consent__actions{margin-block-start:0;align-items:center;}
  .mb-consent button[data-choice]{flex:0 0 7rem;}
}

body:has(.mb-consent[open]:not(:modal)){padding-block-end:var(--mb-consent-space, 12rem);}
