.privacy-banner[hidden],.privacy-dialog [hidden]{display:none!important}
.privacy-banner,.privacy-dialog{font-family:Raleway,sans-serif;color:#1b2c5e;background:#f2f2ea;box-sizing:border-box;font-size:15px;line-height:1.6}
.privacy-banner{position:fixed;z-index:10020;bottom:max(16px,env(safe-area-inset-bottom));left:max(16px,env(safe-area-inset-left));width:min(380px,calc(100% - 32px));max-height:calc(100dvh - 32px);overflow:auto;overscroll-behavior:contain;border:1px solid #1b2c5e40;padding:16px;box-shadow:0 6px 28px #1b2c5e24}
.privacy-banner h2,.privacy-dialog h2{font-family:Raleway,sans-serif;font-size:22px;line-height:1.3;margin:0 0 12px}
.privacy-banner p,.privacy-dialog p{font-size:15px;line-height:1.6;margin:0 0 14px;max-width:75ch}
.privacy-banner h2{font-size:20px;margin-bottom:8px}
.privacy-banner p{font-size:14px;line-height:1.55;margin-bottom:0}
.privacy-banner a,.privacy-dialog a{color:#1b2c5e;text-decoration:underline;text-underline-offset:3px}
.privacy-actions{display:flex;flex-wrap:wrap;gap:10px;flex-shrink:0;max-width:420px}
.privacy-actions button{font:600 14px/1.3 Raleway,sans-serif;color:#1b2c5e;background:#f2f2ea;border:1px solid #1b2c5e;min-height:44px;padding:12px 16px;cursor:pointer;flex:1 1 auto}
.privacy-actions button:hover{background:#d1e4f8}
.privacy-actions button:disabled{opacity:.55;cursor:default}
.privacy-banner .privacy-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 8px;margin-top:12px;max-width:none}
.privacy-banner .privacy-actions button{padding:10px 8px;min-width:0}
.privacy-banner [data-choice="customize"]{grid-column:1/-1;border-color:transparent;background:transparent;text-decoration:underline;text-underline-offset:3px}
.privacy-banner [data-choice="customize"]:hover{background:#d1e4f8}
.privacy-dialog{position:fixed;inset:0;margin:auto;width:min(640px,calc(100% - 32px));max-height:calc(100dvh - 32px);overflow:auto;padding:28px;border:1px solid #1b2c5e}
.privacy-dialog::backdrop{background:#1b2c5e99}
.privacy-option{display:flex;align-items:flex-start;gap:14px;padding:16px 0;border-block-start:1px solid #1b2c5e30;cursor:pointer}
.privacy-option input{appearance:auto;width:22px;height:22px;flex:0 0 22px;margin:3px 0;accent-color:#1b2c5e}
.privacy-banner :focus-visible,.privacy-dialog :focus-visible{outline:3px solid #2081b8;outline-offset:4px}
@media(max-width:480px){.privacy-banner{bottom:max(8px,env(safe-area-inset-bottom));left:max(8px,env(safe-area-inset-left));width:calc(100% - 16px);padding:14px}.privacy-dialog{padding:20px}.privacy-dialog .privacy-actions button{flex-basis:100%}}
