.privacy-banner, .privacy-dialog { box-sizing: border-box; font: 14px/1.6 system-ui, sans-serif; color: #293f32; background: #fffdf6; border: 1px solid #b8c9ba; box-shadow: 0 12px 50px #182a3430; }
.privacy-banner { position: fixed; z-index: 30; bottom: 12px; left: 12px; right: 12px; max-width: 900px; margin: auto; padding: 10px 14px; border-radius: 10px; display: flex; align-items: center; gap: 18px; font-size: 13px; line-height: 1.45; }
.privacy-banner[hidden] { display: none; }
.privacy-banner p { margin: 0; }
.privacy-banner .privacy-actions { gap: 6px; }
.privacy-banner .privacy-actions button { padding: 8px 12px; }
.privacy-banner a, .privacy-dialog a { color: #294e37; text-decoration: underline; text-underline-offset: 3px; }
.privacy-actions { display: flex; flex-wrap: wrap; gap: 8px; flex-shrink: 0; }
.privacy-actions button, .privacy-close { font: 600 13px/1.4 system-ui,sans-serif; cursor: pointer; padding: 12px 15px; min-height: 44px; border: 1px solid #677e69; border-radius: 8px; color: #294532; background: #edf2e9; }
.privacy-actions button:hover, .privacy-close:hover { background: #dce7d9; }
.privacy-banner button:focus-visible, .privacy-dialog button:focus-visible, .privacy-banner a:focus-visible, .privacy-dialog a:focus-visible { outline: 3px solid #3c6750; outline-offset: 3px; }
.privacy-dialog { width: min(520px, calc(100vw - 32px)); max-height: calc(100dvh - 32px); border-radius: 18px; padding: 28px; overflow: auto; }
.privacy-dialog::backdrop { background: #10291dcc; }
.privacy-dialog h2 { font: 34px/1.2 Georgia,serif; margin: 12px 0 20px; }
.privacy-dialog p { margin: 14px 0; }
.privacy-dialog form { float: right; }
.privacy-dialog .privacy-eyebrow { font-size: 10px; letter-spacing: 1.8px; margin-top: 54px; }
.privacy-dialog .privacy-status { font-weight: 600; }
@media(max-width: 640px) { .privacy-banner { display: block; padding: 10px 12px; left: 8px; right: 8px; bottom: 8px; max-height: 60dvh; overflow: auto; } .privacy-banner .privacy-actions { margin-top: 8px; } .privacy-banner .privacy-actions button { flex: 1; } }
