.privacy-footer { display:flex; flex-wrap:wrap; gap:12px 24px; padding-top:22px; margin-top:22px; border-top:1px solid #3a4354; }
.privacy-footer a { font-size:12px; color:#cad0da; text-decoration:underline; text-underline-offset:4px; }
.cookie-banner { position:fixed; right:20px; bottom:20px; z-index:1200; width:min(500px,calc(100% - 40px)); padding:15px; border:1px solid #536078; border-radius:12px; background:#1b2230; color:#f4f5f7; box-shadow:0 12px 35px #0003; max-height:calc(100dvh - 40px); overflow:auto; font:12px/1.5 var(--font-body,Arial,sans-serif); }
.cookie-banner[hidden],.cookie-options[hidden],.preview-consent[hidden] { display:none!important; }
.cookie-banner h2 { font-size:17px; margin:0 34px 8px 0; line-height:1.3; letter-spacing:-.025em; }
.cookie-banner p { font-size:12px; color:#c7cfdd; margin:0 0 11px; }
.cookie-banner button,.privacy-dialog button,.preview-consent button { font:inherit; cursor:pointer; }
.cookie-close { position:absolute; right:10px; top:10px; width:30px; height:30px; border:1px solid #667185; border-radius:6px; background:transparent; color:#f4f5f7; font-size:18px!important; }
.cookie-actions { display:flex; flex-wrap:wrap; gap:6px; }
.cookie-choice { flex:0 1 auto; padding:6px 10px; min-height:32px; border:1px solid #ed9c5c; border-radius:6px; background:#ed9c5c; color:#151b26; font-weight:600!important; }
.cookie-choice:hover { background:#ffb273; border-color:#ffb273; }
.cookie-manage { padding:6px 10px; min-height:32px; border:1px solid #79859b; border-radius:6px; background:transparent; color:#f4f5f7; }
.cookie-policy-links { display:flex; flex-wrap:wrap; gap:8px 14px; margin-top:10px; }
.cookie-policy-links a { color:#e8bb98; font-size:11px; text-decoration:underline; text-underline-offset:3px; }
.cookie-options { border-top:1px solid #536078; margin-top:13px; padding-top:12px; }
.cookie-options h3 { margin:0 0 10px; font-size:17px; }
.cookie-category { padding:10px; border:1px solid #536078; border-radius:7px; margin:12px 0; }
.cookie-category strong { display:block; font-size:13px; }
.cookie-category p { margin:6px 0 0; font-size:12px; }
.cookie-category small { display:block; color:#b0d2bc; }
.cookie-category label { display:flex; align-items:center; gap:13px; cursor:pointer; }
.cookie-category input { width:22px; height:22px; flex:0 0 22px; accent-color:#ed9c5c; }
.cookie-options .cookie-choice { width:100%; }
.privacy-dialog { width:min(860px,calc(100% - 32px)); max-height:calc(100dvh - 48px); padding:0; border:1px solid #cad2df; border-radius:12px; color:#192130; background:#f8f9fb; box-shadow:0 18px 60px #0004; }
.privacy-dialog::backdrop { background:#0c121dcc; }
.privacy-dialog:not([open]) { display:none; }
.privacy-dialog[open] { display:flex; flex-direction:column; position:fixed; inset:0; margin:auto; z-index:1500; }
.privacy-modal-open { overflow:hidden; }
.privacy-dialog-header { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:20px 25px; border-bottom:1px solid #d4dbe5; flex-shrink:0; }
.privacy-dialog-header h2 { font-size:23px; line-height:1.25; margin:0; }
.privacy-dialog-header button { min-width:44px; min-height:44px; padding:8px 14px; border:1px solid #6d788c; border-radius:6px; background:#fff; color:#192130; }
.privacy-policy-body { overflow:auto; min-height:0; padding:25px; font:14px/1.75 var(--font-body,Arial,sans-serif); overscroll-behavior:contain; }
.privacy-policy-body h3 { font-size:18px; line-height:1.4; margin:25px 0 12px; }
.privacy-policy-body h4 { font-size:15px; margin:18px 0 10px; }
.privacy-policy-body p { margin:0 0 14px; color:#3f4d62; }
.privacy-policy-body ul { padding-left:22px; margin:10px 0 18px; }
.privacy-policy-body li { margin:6px 0; }
.privacy-policy-body a { color:#89451b; text-decoration:underline; overflow-wrap:anywhere; }
.privacy-review-note { border:1px solid #c58c55; background:#fff1df; padding:13px; border-radius:6px; }
.privacy-status { pointer-events:none; position:fixed; bottom:16px; left:50%; transform:translateX(-50%); max-width:calc(100% - 32px); z-index:1201; background:#1b2230; color:#f4f5f7; padding:0; border-radius:7px; font-size:13px; }
.privacy-status:not(:empty) { padding:12px 18px; border:1px solid #667185; }
.preview-consent { position:absolute; inset:0; z-index:3; display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; gap:10px; padding:18px; background:#e9edf3; color:#263247; }
.preview-consent p { margin:0; max-width:420px; font-size:12px; }
.preview-consent button { min-height:40px; padding:8px 13px; border:1px solid #aa672f; border-radius:6px; color:#6f3818; background:#fff; font-size:12px; }
.preview-banner.is-consent-blocked > .preview-banner-link { display:none; }
.cookie-banner :focus-visible,.privacy-dialog :focus-visible,.privacy-footer :focus-visible,.preview-consent :focus-visible { outline:3px solid #ed9c5c; outline-offset:3px; }
@media(max-width:600px) {
 .cookie-banner { bottom:10px; right:10px; width:min(500px,calc(100% - 20px)); padding:14px; max-height:calc(100dvh - 20px); }
 .cookie-banner h2 { font-size:17px; }
 .cookie-actions { display:flex; }

 .privacy-dialog { width:calc(100% - 20px); max-height:calc(100dvh - 20px); }
 .privacy-dialog-header,.privacy-policy-body { padding:18px; }
 .privacy-dialog-header h2 { font-size:20px; }
 .privacy-footer { gap:12px 18px; }
 .preview-consent { gap:6px; padding:10px; }
 .preview-consent p { font-size:10px; }
 .preview-consent button { min-height:34px; padding:5px 9px; font-size:10px; }
}

