.privacy-panel { box-sizing:border-box; color:#17243c;background:#fffdf9;border:1px solid #c7ccd4;border-radius:20px;padding:24px;box-shadow:0 12px 48px #101e3433;font-family:Manrope,Arial,sans-serif;line-height:1.6; }
#privacy-banner { position:fixed;bottom:20px;left:20px;right:20px;max-width:1080px;margin:auto;z-index:10000;display:flex;gap:24px;align-items:center; }
#privacy-banner[hidden],.privacy-storage-error[hidden] { display:none; }
.privacy-panel h2 { font-family:'Clash Grotesk',Manrope,Arial,sans-serif;font-size:24px;line-height:1.25;margin:0 0 12px; }
.privacy-panel h3,.privacy-panel label { font-size:16px;font-weight:700; }
.privacy-panel p { font-size:14px;margin:8px 0 12px; }
.privacy-panel a { color:#17243c;text-decoration:underline; }
.privacy-actions { display:flex;flex-wrap:wrap;gap:10px;flex-shrink:0; }
#privacy-banner .privacy-actions { max-width:300px; }
.privacy-actions button { color:#17243c;background:#fff;border:1px solid #748096;border-radius:10px;padding:12px 16px;min-height:46px;font:inherit;font-size:14px;font-weight:600;cursor:pointer; }
.privacy-actions button:hover { background:#e8edf4; }
.privacy-panel :focus-visible,.privacy-footer-link:focus-visible { outline:3px solid #3764c5;outline-offset:3px; }
.privacy-dialog { position:fixed;margin:auto;max-width:600px;width:calc(100% - 32px);max-height:calc(100dvh - 32px);overflow:auto; }
.privacy-dialog::backdrop { background:#101e3477; }
.privacy-category { padding:16px 0;border-top:1px solid #d9dde3; }
.privacy-category span { font-size:12px;display:inline-block;margin-left:8px; }
.privacy-category input { width:20px;height:20px;vertical-align:middle;margin-right:8px;accent-color:#17243c; }
.privacy-footer-link { background:transparent;border:0;color:inherit;text-decoration:underline;cursor:pointer;min-height:44px; }
.privacy-storage-error { position:fixed;bottom:0;left:0;right:0;padding:16px;background:#fff;color:#17243c;z-index:10001; }
@media(max-width:720px) { #privacy-banner { bottom:10px;left:10px;right:10px;display:block;padding:20px;max-height:80dvh;overflow:auto; } #privacy-banner .privacy-actions { max-width:none;margin-top:14px; } .privacy-actions button { flex:1; } }
@media(prefers-reduced-motion:reduce) { .privacy-panel,.privacy-panel * { scroll-behavior:auto;transition:none;animation:none; } }
