.privacy-banner, .privacy-dialog { box-sizing:border-box; color:#26313e; background:#fff; font:14px/1.6 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; border:1px solid #d6dee7; border-radius:10px; box-shadow:0 8px 34px #17283f26; }
.privacy-banner { position:fixed; z-index:9999; left:24px; bottom:24px; width:min(440px,calc(100vw - 48px)); max-height:calc(100dvh - 48px); overflow:auto; padding:22px; }
.privacy-banner[hidden] { display:none; }
.privacy-banner h2, .privacy-dialog h2 { color:#182634; font:700 19px/1.35 system-ui,sans-serif; margin:0 0 12px; }
.privacy-banner p, .privacy-dialog p { margin:0 0 14px; color:#44515f; }
.privacy-banner .privacy-note { font-size:12px; }
.privacy-banner a, .privacy-dialog a { color:#006a9d; text-decoration:underline; }
.privacy-actions { display:flex; gap:8px; flex-wrap:wrap; }
.privacy-actions button { flex:1 1 100px; min-height:42px; padding:9px 10px; border:1px solid #0074ad; border-radius:4px; background:#fff; color:#006a9d; font:600 13px/1.4 system-ui,sans-serif; cursor:pointer; }
.privacy-actions .privacy-primary { background:#0074ad; color:#fff; }
.privacy-actions button:hover { background:#e9f5fb; }
.privacy-actions .privacy-primary:hover { background:#005d8c; }
.privacy-banner button:focus-visible, .privacy-dialog button:focus-visible, .privacy-dialog input:focus-visible, .privacy-settings:focus-visible { outline:3px solid #172d4a; outline-offset:3px; }
.privacy-dialog { margin:auto; width:min(560px,calc(100vw - 32px)); max-height:calc(100dvh - 32px); padding:24px; overflow:auto; }
.privacy-dialog::backdrop { background:#13263e73; }
.privacy-dialog-top { display:flex; align-items:flex-start; justify-content:space-between; gap:20px; }
.privacy-close { border:0; background:transparent; color:#26313e; font:28px/1 system-ui,sans-serif; min-width:36px; min-height:36px; cursor:pointer; }
.privacy-category { padding:14px 0; border-top:1px solid #d6dee7; }
.privacy-category h3 { color:#26313e; font:600 15px/1.4 system-ui,sans-serif; margin:0 0 8px; }
.privacy-category h3 span { display:inline-block; margin-left:10px; color:#3c6a43; font-size:12px; }
.privacy-category label { display:flex; align-items:center; gap:8px; color:#26313e; margin-bottom:8px; cursor:pointer; }
.privacy-category input { width:18px; height:18px; accent-color:#0074ad; }
.privacy-settings { border:0; background:transparent; color:inherit; padding:8px 0; font:inherit; font-size:13px; text-decoration:underline; cursor:pointer; }
.privacy-settings-fallback { display:block; margin:20px auto; color:#006a9d; }
@media(max-width:480px) { .privacy-banner { left:16px; bottom:16px; width:calc(100vw - 32px); max-height:calc(100dvh - 32px); padding:18px; } .privacy-actions { gap:7px; } .privacy-actions button { flex-basis:85px; } .privacy-dialog { padding:20px; } }
