.mdt-consent-root { font-family: inherit; color: #eaf3ff; }
#mdt-consent-root .mdt-consent-banner h2,
#mdt-consent-root .mdt-consent-dialog h2,
#mdt-consent-root .mdt-consent-category-label { color: #f7f9fc !important; }
.mdt-consent-root [hidden] { display: none !important; }
.mdt-consent-root button { cursor: pointer; font: inherit; }
.mdt-consent-banner { position: fixed; z-index: 999999; bottom: 20px; left: 20px; right: 20px; max-width: 860px; margin: auto; padding: 22px 26px; border: 1px solid #315a76; border-radius: 18px; background: #0d2437; box-shadow: 0 16px 60px #05101db3; }
.mdt-consent-banner h2, .mdt-consent-dialog h2 { margin: 0 0 10px; color: #fff; font-size: 1.3rem; }
.mdt-consent-banner p, .mdt-consent-dialog p { margin: 0 0 12px; line-height: 1.55; color: #d5e5f0; }
.mdt-consent-policy { color: #79d5e8; text-decoration: underline; }
.mdt-consent-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 10px; margin-top: 18px; }
.mdt-consent-actions button { border-radius: 9px; padding: 10px 15px; font-weight: 600; }
.mdt-consent-primary { border: 1px solid #59d3e4; background: #59d3e4; color: #092838; }
.mdt-consent-secondary { border: 1px solid #77a1b7; background: transparent; color: #f1faff; }
.mdt-consent-launcher { position: fixed; z-index: 999998; bottom: 15px; left: 15px; padding: 7px 11px; border: 1px solid #69bfd2; border-radius: 999px; background: #0d2437; color: #fff; font-size: .82rem; }
.mdt-consent-backdrop { position: fixed; z-index: 1000000; inset: 0; display: grid; place-items: center; padding: 16px; background: #061420b8; }
.mdt-consent-dialog { width: min(100%, 620px); max-height: min(90vh, 800px); overflow: auto; padding: 24px; border: 1px solid #315a76; border-radius: 18px; background: #0d2437; box-shadow: 0 18px 70px #05101dd9; }
.mdt-consent-dialog-head { display: flex; align-items: start; justify-content: space-between; gap: 16px; }
.mdt-consent-close { border: 0; background: transparent; color: #fff; font-size: 1.6rem; line-height: 1; }
.mdt-consent-category { padding: 14px 0; border-top: 1px solid #315a76; }
.mdt-consent-category-label { display: flex; gap: 10px; align-items: center; font-weight: 700; }
.mdt-consent-category-label input { width: 18px; height: 18px; accent-color: #59d3e4; }
.mdt-consent-category p { margin: 5px 0 0 28px; font-size: .92rem; }
.mdt-consent-root :focus-visible { outline: 3px solid #fff; outline-offset: 3px; }
@media (max-width: 600px) { .mdt-consent-banner { bottom: 8px; left: 8px; right: 8px; padding: 18px; } .mdt-consent-actions { justify-content: stretch; } .mdt-consent-actions button { flex: 1 1 100%; } }
