.cookie-settings { color: inherit; background: none; border: 0; padding: 0; font: inherit; text-decoration: underline; cursor: pointer; }
.cookie-consent[hidden], .cookie-consent [hidden] { display: none !important; }
.cookie-consent { position: fixed; inset: auto 20px 20px; z-index: 10000; margin: 0 auto; max-width: 1060px; display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 24px; align-items: center; padding: 24px; background: #fff; color: #2d3135; border: 1px solid #c4dce1; border-radius: 12px; box-shadow: 0 10px 45px #1e344040; max-height: calc(100dvh - 40px); overflow: auto; }
.cookie-consent h2 { font-family: var(--font-heading); font-size: 23px; line-height: 1.2; margin: 0 0 10px; color: #1e3440; }
.cookie-consent p { font-size: 14px; line-height: 1.65; margin: 0 0 8px; }
.cookie-consent a { color: #006782; font-size: 13px; text-decoration: underline; }
.cookie-consent-actions { display: grid; gap: 10px; }
.cookie-consent-actions button { min-height: 44px; padding: 11px 18px; border: 1px solid #006782; border-radius: 5px; background: #fff; color: #006782; font: 600 13px var(--font-body); cursor: pointer; }
.cookie-consent-actions button:hover { background: #e6f3f6; }
.cookie-consent-actions .cookie-consent-close { border-color: transparent; min-height: 36px; padding: 6px 12px; color: #2d3135; }
.cookie-consent :focus-visible, .cookie-settings:focus-visible { outline: 3px solid #006782; outline-offset: 4px; }
body.cookie-consent-open .floating-widgets { visibility: hidden; }
@media (max-width: 680px) {
    .cookie-consent { inset: auto 12px 12px; grid-template-columns: 1fr; gap: 16px; padding: 20px; max-height: calc(100dvh - 24px); }
    .cookie-consent-actions { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .cookie-consent-actions button { padding: 10px 8px; overflow-wrap: anywhere; }
    .cookie-consent-actions .cookie-consent-close { grid-column: 1 / -1; }
}
