.cookie-consent[hidden], .cookie-consent [hidden] { display: none !important; }
.cookie-consent { position: relative; z-index: 2147483000; font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; color: #172033; }
.cookie-consent__banner { position: fixed; right: 1rem; bottom: 1rem; left: 1rem; display: flex; max-width: 72rem; margin: 0 auto; padding: 1.25rem; gap: 1.25rem; align-items: center; justify-content: space-between; border: 1px solid #dbe3ee; border-radius: 1rem; background: #fff; box-shadow: 0 18px 50px rgba(15, 23, 42, .2); }
.cookie-consent__copy { max-width: 48rem; }
.cookie-consent__copy h2, .cookie-consent__panel h2, .cookie-consent__option h3 { margin: 0; color: #172033; font-weight: 800; }
.cookie-consent__copy h2, .cookie-consent__panel h2 { font-size: 1.1rem; }
.cookie-consent__copy p, .cookie-consent__panel-header p, .cookie-consent__option p { margin: .4rem 0 0; color: #526174; font-size: .9rem; line-height: 1.55; }
.cookie-consent a { color: #18794e; font-weight: 700; text-decoration: underline; }
.cookie-consent__actions, .cookie-consent__panel-actions { display: flex; flex-wrap: wrap; gap: .65rem; justify-content: flex-end; }
.cookie-consent__button, .cookie-consent__manage, .cookie-consent__close { border: 0; font: inherit; cursor: pointer; }
.cookie-consent__button { min-height: 2.75rem; padding: .65rem 1rem; border-radius: .7rem; font-size: .86rem; font-weight: 800; }
.cookie-consent__button:focus-visible, .cookie-consent__manage:focus-visible, .cookie-consent__close:focus-visible, .cookie-consent__option--clickable:focus-within { outline: 3px solid rgba(24, 121, 78, .3); outline-offset: 2px; }
.cookie-consent__button--primary { background: #18794e; color: #fff; }
.cookie-consent__button--primary:hover { background: #11633f; }
.cookie-consent__button--secondary { border: 1px solid #cbd5e1; background: #fff; color: #263548; }
.cookie-consent__button--secondary:hover { background: #f3f6f9; }
.cookie-consent__preferences { position: fixed; inset: 0; display: grid; padding: 1rem; place-items: center; background: rgba(15, 23, 42, .58); }
.cookie-consent__panel { width: min(100%, 38rem); max-height: calc(100vh - 2rem); overflow-y: auto; padding: 1.35rem; border-radius: 1rem; background: #fff; box-shadow: 0 24px 70px rgba(15, 23, 42, .3); }
.cookie-consent__panel-header { display: flex; gap: 1rem; align-items: flex-start; justify-content: space-between; }
.cookie-consent__close { display: grid; width: 2.4rem; height: 2.4rem; flex: 0 0 auto; place-items: center; border-radius: 999px; background: #eef2f6; color: #263548; font-size: 1.5rem; line-height: 1; }
.cookie-consent__option { display: flex; margin-top: 1rem; padding: 1rem; gap: 1rem; align-items: center; justify-content: space-between; border: 1px solid #dbe3ee; border-radius: .8rem; }
.cookie-consent__option h3 { font-size: .95rem; }
.cookie-consent__option--clickable { cursor: pointer; }
.cookie-consent__option input { width: 1.35rem; height: 1.35rem; flex: 0 0 auto; accent-color: #18794e; }
.cookie-consent__required { flex: 0 0 auto; color: #18794e; font-size: .78rem; font-weight: 800; }
.cookie-consent__panel-actions { margin-top: 1.25rem; }
.cookie-consent__manage { position: fixed; bottom: .75rem; left: .75rem; padding: .5rem .75rem; border: 1px solid #cbd5e1; border-radius: 999px; background: rgba(255, 255, 255, .96); box-shadow: 0 5px 18px rgba(15, 23, 42, .14); color: #334155; font-size: .75rem; font-weight: 700; }
body.cookie-consent-modal-open { overflow: hidden; }
@media (max-width: 800px) {
    .cookie-consent__banner { align-items: stretch; flex-direction: column; }
    .cookie-consent__actions, .cookie-consent__panel-actions { flex-direction: column-reverse; }
    .cookie-consent__button { width: 100%; }
    .cookie-consent__required { white-space: nowrap; }
}
@media (prefers-color-scheme: dark) {
    .cookie-consent__banner, .cookie-consent__panel, .cookie-consent__button--secondary, .cookie-consent__manage { border-color: #374151; background: #111827; color: #e5e7eb; }
    .cookie-consent__copy h2, .cookie-consent__panel h2, .cookie-consent__option h3 { color: #f8fafc; }
    .cookie-consent__copy p, .cookie-consent__panel-header p, .cookie-consent__option p { color: #cbd5e1; }
    .cookie-consent__option { border-color: #374151; }
    .cookie-consent__button--secondary:hover, .cookie-consent__close { background: #1f2937; color: #f8fafc; }
}
