/* Shared WCAG 2.2 AA corrections, after each page's original styles. */
[hidden] { display: none !important; }
:where(a,button,input,select,textarea,summary,[tabindex]):focus-visible { outline: 3px solid #91beff !important; outline-offset: 4px !important; }
:where(a,button,input,select,textarea,summary,[tabindex]) { scroll-margin-block: 100px 24px; }
:where(button,summary) { touch-action: manipulation; }
:where(input,select,textarea) { border-color: #858585 !important; }
::placeholder { color: #aaa7a1; opacity: 1; }
.mb-a11y-skip, .mb-v3-skip, .skip-link { position: fixed !important; top: 8px !important; left: 8px !important; z-index: 10000 !important; padding: 12px 18px !important; background: #fff !important; color: #111 !important; transform: translateY(-200%); }
.mb-a11y-skip:focus, .mb-v3-skip:focus, .skip-link:focus { transform: none !important; }
.mb-cookie-banner { position: fixed; inset-inline: 16px; bottom: max(12px, env(safe-area-inset-bottom)); max-height: 40vh; max-height: 40dvh; overflow-y: auto; overscroll-behavior: contain; z-index: 300; max-width: 1200px; margin-inline: auto; box-sizing: border-box; padding: 18px 22px; background: #1b1c1f; color: #f4f2ee; border: 1px solid #55575d; border-radius: 18px; box-shadow: 0 12px 40px #0008, inset 0 1px 0 #ffffff0a; font: 14px/1.5 system-ui,sans-serif; text-align: left; overflow-wrap: anywhere; }
.mb-cookie-top { display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.mb-cookie-summary { flex: 1 1 32rem; min-width: 0; }
.mb-cookie-banner h2 { margin: 0 0 4px; font: 650 15px/1.4 system-ui,sans-serif; letter-spacing: -.01em; color: #fff; }
.mb-cookie-banner h3 { margin: 0 0 4px; font-size: 14px; }
.mb-cookie-banner p { margin: 0; color: #c6c7cd; }
.mb-cookie-summary p { font-size: 13px; }
.mb-cookie-banner a, .mb-privacy-links a, .mb-media-alternative a, .mb-form-privacy a { color: #a7caff; text-decoration: underline; text-underline-offset: 3px; }
.mb-cookie-actions, .mb-privacy-links { display: flex; flex-wrap: wrap; gap: 8px; }
.mb-cookie-top > .mb-cookie-actions { flex: 0 0 auto; display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); max-width: 100%; }
.mb-cookie-banner button, .mb-privacy-links button, .mb-media-placeholder button { min-height: 44px; padding: 9px 14px; border: 1px solid #a4a4a4; border-radius: 6px; background: #282828; color: #fff; font: 600 14px/1.5 system-ui,sans-serif; cursor: pointer; white-space: normal; text-align: center; }
.mb-cookie-banner button:hover, .mb-privacy-links button:hover, .mb-media-placeholder button:hover { background: #3b3b3b; }
.mb-cookie-banner button { border-radius: 10px; border-color: #858890; padding: 9px 16px; background: #292b30; font-size: 13px; }
/* Accept and reject have equal size, contrast and visual weight. */
.mb-cookie-top [data-mb-cookie-accept], .mb-cookie-top [data-mb-cookie-reject] { flex: 1 0 auto; }
.mb-cookie-banner [data-mb-cookie-settings] { background: transparent; }
.mb-cookie-banner button:disabled { cursor: default; color: #b9b6b0; }
.mb-cookie-banner label { display: flex; align-items: center; gap: 10px; min-height: 44px; font-weight: 700; }
.mb-cookie-banner input { width: 22px; height: 22px; flex-shrink: 0; accent-color: #1473e6; }
#mb-cookie-details { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; margin-top: 18px; padding-top: 16px; border-top: 1px solid #484b52; }
.mb-cookie-necessary, .mb-cookie-save-actions { grid-column: 1 / -1; }
.mb-cookie-option { padding: 12px 16px 16px; border: 1px solid #484b52; border-radius: 12px; background: #222429; }
.mb-cookie-option p, .mb-cookie-necessary p { font-size: 13px; }
.mb-cookie-save-actions { justify-content: flex-end; padding-top: 4px; }
.mb-cookie-banner [data-mb-gpc] { margin-top: 12px; border-left: 2px solid #a7caff; padding-left: 12px; font-size: 13px; }
.mb-privacy-links { max-width: 1160px; margin: 22px auto 0; }
.mb-media-placeholder, .mb-media-alternative, .mb-form-privacy { padding: 16px; color: #cfccc6; background: #181818; font-size: 14px; line-height: 1.6; }
.mb-a11y-status { position: fixed; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
.mb-feature-info { min-width: 24px; min-height: 24px; }
.mb-feature-tooltip { top: 100% !important; }
.mb-feature-help[data-tooltip-dismissed] .mb-feature-tooltip { display: none !important; }
/* The measured spacer reserves room for the bottom notice; focus is scrolled clear. */
@media (max-width: 1000px) { .mb-cookie-top { flex-wrap: wrap; gap: 12px; } .mb-cookie-top > .mb-cookie-actions { flex: 1 1 100%; } .mb-cookie-top > .mb-cookie-actions > button { flex: 1 1 0; } }
@media (max-width: 600px) { .mb-cookie-banner { inset-inline: 8px; bottom: max(8px, env(safe-area-inset-bottom)); padding: 14px; border-radius: 14px; } .mb-cookie-banner button { padding: 9px 8px; } #mb-cookie-details { grid-template-columns: minmax(0,1fr); } }
@media (max-width: 360px) { .mb-cookie-banner button { padding-inline: 6px; font-size: 12px; } }
.mb-cookie-banner:has(#mb-cookie-details:not([hidden])) { max-height: 65vh; max-height: 65dvh; }
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; } }
@media (forced-colors: active) { :focus-visible { outline-color: Highlight !important; } .mb-cookie-banner, .mb-cookie-banner button { border-color: CanvasText; } }
@media print { .mb-cookie-banner, .mb-privacy-links { display: none !important; } }
/* Keep text legible without changing the marker palette or product data. */
[style*="color: #6e6b66"], [style*="color: #55534f"], [style*="color: #7c7c7c"], [data-mb-legal-notice], .library-heading > span, .breadcrumbs > span, .compatibility { color: #aaa7a1 !important; }
[data-mb-quick-default] { color: #101010 !important; }
:where(main,article,.guide-context,.guide-author) :is(p,li) a { text-decoration: underline !important; text-underline-offset: 3px; }
html, body { scroll-padding-bottom: calc(var(--mb-cookie-height, 0px) + 20px); }
.mb-cookie-spacer { height: var(--mb-cookie-height, 0px); }
[data-feature="batch-edit"] [style*="color: #8f8f8f"] { color: #aaa7a1 !important; }
.mb-mobile-menu { box-sizing: border-box; max-height: calc(100vh - var(--mb-cookie-height, 0px) - 64px); max-height: calc(100dvh - var(--mb-cookie-height, 0px) - 64px); overflow-y: auto; overscroll-behavior: contain; }
/* English needs the same reflow allowances as the translated demo content. */
[data-mb-feature-row] > *, [data-mb-feature-copy], [data-mb-feature-visual] { min-width: 0; overflow-wrap: anywhere; }
footer a[aria-label] { white-space: normal !important; min-width: 0; }
[data-transcript-feature-visual] > div { flex-wrap: wrap; }
[data-feature="batch-edit"] [data-mb-feature-visual] > div:first-child, .mb-v3-import-actions { flex-wrap: wrap; }
[data-feature="batch-edit"] [data-mb-feature-visual] > div:nth-child(2) { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
[data-feature="batch-edit"] [data-mb-feature-visual] > div:nth-child(2) > span { height: auto !important; min-height: 30px; }
