[hidden] { display: none !important; }
.cookie-banner { max-height: calc(100dvh - 32px); overflow: auto; position: fixed; inset: auto 16px 16px; z-index: 1000; max-width: 1040px; margin: auto; background: #fefaf1; border: 1px solid #d2c3aa; box-shadow: 0 8px 32px #12131620; padding: 24px; color: #121316; }
.cookie-banner h2 { font-family: var(--font-body, sans-serif); font-size: 1.15rem; margin: 0 0 8px; }
.cookie-banner p { font-size: .9rem; line-height: 1.6; margin: 0 0 16px; }
.cookie-actions { display: flex; gap: 10px; flex-wrap: wrap; }
.cookie-button { flex: 1 1 150px; border: 1px solid #8e6822; border-radius: 3px; background: transparent; color: #121316; padding: 12px 16px; font: inherit; font-size: .85rem; cursor: pointer; }
.cookie-button:hover, .cookie-button:focus-visible { background: #fbf5e7; outline: 2px solid #8e6822; outline-offset: 2px; }
.cookie-dialog { width: min(640px, calc(100vw - 32px)); max-height: calc(100dvh - 32px); overflow: auto; margin: auto; padding: 28px; border: 1px solid #d2c3aa; border-radius: 3px; background: #fefaf1; color: #121316; }
.cookie-dialog::backdrop { background: #12131680; }
.cookie-dialog h2 { font-family: var(--font-body, sans-serif); font-size: 1.3rem; margin-top: 0; }
.cookie-dialog p { font-size: .9rem; line-height: 1.7; }
.cookie-category { border-top: 1px solid #e8ded0; padding: 18px 0; }
.cookie-category label { display: flex; gap: 12px; align-items: center; font-weight: 600; cursor: pointer; }
.cookie-category input { width: 20px; height: 20px; accent-color: #8e6822; }
.cookie-category .help-text, .cookie-category .form-text { font-size: .85rem; color: #6b6355; margin: 8px 0 0 32px; }
.cookie-links { display: flex; gap: 16px; flex-wrap: wrap; margin: 16px 0; font-size: .85rem; }
.cookie-close { float: right; border: 0; background: transparent; color: #121316; font-size: 1.2rem; cursor: pointer; padding: 0 8px; }
.cookie-error { color: #8b2525; font-size: .9rem; }
.privacy-content { max-width: 880px; margin: auto; padding: 64px 24px; }
.privacy-content h1, .privacy-content h2 { font-family: var(--font-body, sans-serif); }
.privacy-content h1 { font-size: clamp(1.8rem, 4vw, 2.5rem); }
.privacy-content h2 { font-size: 1.3rem; margin-top: 32px; }
.privacy-content p { line-height: 1.8; }
.privacy-table { width: 100%; border-collapse: collapse; font-size: .85rem; }
.privacy-table th, .privacy-table td { text-align: left; border-bottom: 1px solid #e8ded0; padding: 12px; vertical-align: top; }
.privacy-table-wrap { overflow-x: auto; }
.privacy-review { border-left: 3px solid #b88d3e; padding: 16px; background: #fbf5e7; }
@media (max-width: 480px) { .cookie-banner { padding: 18px; inset: auto 8px 8px; } .cookie-actions { display: grid; grid-template-columns: 1fr; width: 100%; } .cookie-dialog { padding: 20px; } }
