.cookie-preferences { padding: 0; border: 0; background: transparent; color: inherit; font: inherit; cursor: pointer; text-decoration: underline; text-underline-offset: 3px; }
.cookie-notice { position: fixed; z-index: 100; inset: auto 20px 20px; max-width: 1060px; margin: 0 auto; padding: 22px 26px; background: #fff; color: #172437; border: 1px solid #dce3e2; border-radius: 12px; box-shadow: 0 12px 50px #0c1d3826; font: 15px/1.5 var(--sans, system-ui, sans-serif); }
.cookie-notice[hidden] { display: none; }
.cookie-notice h2 { margin: 0 0 8px; font: 700 18px/1.35 var(--sans, system-ui, sans-serif); letter-spacing: 0; }
.cookie-notice p { margin: 0 0 14px; }
.cookie-notice a { color: #176b53; text-decoration: underline; }
.cookie-notice .cookie-details { margin: 0 0 14px; padding: 0; border: 0; }
.cookie-details summary { width: fit-content; color: #176b53; font: 650 14px/1.5 var(--sans, system-ui, sans-serif); cursor: pointer; }
.cookie-details p { margin: 10px 0 0; font-size: 14px; }
.cookie-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; }
.cookie-actions button { flex: 1; min-width: 190px; min-height: 44px; padding: 11px 18px; border: 1px solid #176b53; border-radius: 5px; background: #fff; color: #176b53; font: 700 14px/1.35 var(--sans, system-ui, sans-serif); cursor: pointer; }
.cookie-actions button:hover { background: #edf5f1; }
.cookie-actions button:focus-visible, .cookie-preferences:focus-visible { outline: 3px solid #d7ad55; outline-offset: 3px; }
.cookie-actions .cookie-close { flex: 0 1 auto; min-width: 110px; }
@media (max-width: 600px) { .cookie-notice { inset: auto 10px 10px; padding: 16px 18px; max-height: calc(100dvh - 20px); overflow: auto; font-size: 14px; } .cookie-actions { gap: 8px; } .cookie-actions button { min-width: 0; padding: 11px 12px; } .cookie-actions .cookie-close { flex: 0 0 100%; } }
