.cookie-notice[hidden], .cookie-preferences[hidden] { display: none; }
.cookie-notice { position: fixed; z-index: 100; bottom: 18px; left: 18px; width: min(520px, calc(100% - 36px)); max-height: calc(100dvh - 36px); overflow: auto; padding: 20px; background: #faf7ef; color: #42392d; border: 1px solid #b9aa8f; box-shadow: 0 6px 26px #33291c26; font-size: 14px; line-height: 1.5; }
.cookie-notice p { margin: 0 0 12px; }
.cookie-notice strong { font-size: 16px; font-weight: 600; }
.cookie-notice a { text-decoration: underline; }
.cookie-actions { display: flex; flex-wrap: wrap; gap: 8px; }
.cookie-actions button { flex: 1 1 180px; min-height: 44px; padding: 10px; border: 1px solid #6d5940; background: transparent; color: inherit; font: inherit; cursor: pointer; }
.cookie-actions button:hover { background: #ebe2d1; }
.cookie-actions button:focus-visible, .cookie-preferences:focus-visible { outline: 2px solid #42392d; outline-offset: 3px; }
.cookie-preferences { display: block; margin: 16px auto 0; padding: 10px; background: none; border: 0; color: inherit; font: inherit; text-decoration: underline; cursor: pointer; }
.cookie-notice .cookie-status { margin: 10px 0 0; font-size: 13px; }
.cookie-status:empty { display: none; }
@media (max-width: 480px) { .cookie-notice { bottom: 10px; left: 10px; width: calc(100% - 20px); padding: 16px; } .cookie-actions button { flex-basis: 140px; } }
