.mi-consent[hidden] { display: none; }
.mi-consent { position: fixed; z-index: 10000; bottom: 16px; left: 16px; right: 16px; width: auto; max-width: 640px; max-height: calc(100dvh - 32px); overflow-y: auto; padding: 24px; border: 1px solid var(--border-subtle); border-radius: 10px; background: var(--paper-0); color: var(--ink-900); box-shadow: 0 8px 32px rgba(14,26,36,.18); font: 14px/1.6 var(--font-sans); }
.mi-consent h2 { margin: 0 0 12px; font: 600 22px/1.25 var(--font-display); }
.mi-consent p { margin: 0 0 12px; }
.mi-consent a { color: var(--rust-700); text-decoration: underline; }
.mi-consent-actions { display: flex; flex-wrap: wrap; gap: 12px; }
.mi-consent-button { flex: 1; min-height: 48px; padding: 12px 16px; border: 1px solid var(--rust-500); border-radius: 6px; background: var(--rust-500); color: white; font: 500 14px/1.4 var(--font-sans); cursor: pointer; }
.mi-consent-button:hover { background: var(--rust-600); }
.mi-consent-button--secondary { border-color: var(--border-subtle); background: var(--paper-0); color: var(--ink-700); }
.mi-consent-button--secondary:hover { background: var(--paper-100); color: var(--ink-900); }
.mi-consent-footer { padding: 0; min-height: 44px; width: fit-content; border: 0; background: transparent; color: var(--ink-200); font: inherit; text-align: left; cursor: pointer; }
.mi-consent-footer--light { color: var(--ink-700); }
.mi-consent-footer:hover { color: white; text-decoration: underline; }
.mi-consent-footer--light:hover { color: var(--ink-900); }
.mi-consent-button:focus-visible, .mi-consent-footer:focus-visible, .mi-consent a:focus-visible { outline: 2px solid var(--rust-500); outline-offset: 4px; }
@media (max-width: 480px) { .mi-consent { padding: 20px; } .mi-consent-actions { flex-direction: column; } .mi-consent-button { width: 100%; } }
