.consent-banner{position:fixed;bottom:16px;left:50%;transform:translateX(-50%);width:min(900px,calc(100% - 32px));max-height:70vh;overflow:auto;z-index:10;background:var(--paper);color:var(--ink);border:1px solid var(--ink);border-radius:var(--radius);padding:20px 24px}
.consent-banner[hidden],.consent-feedback[hidden]{display:none}
.consent-banner h2,.consent-dialog h2{font:400 28px/1.2 'Instrument Serif',Georgia,serif;margin:0 0 10px}
.consent-banner p,.consent-dialog p{font-size:13px;line-height:1.6;max-width:75ch;margin:8px 0}
.consent-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.consent-actions button{background:var(--paper);color:var(--ink);border:1px solid var(--ink);font-size:13px;min-height:44px;padding:10px 16px}
.consent-actions button:hover{background:var(--soft)}
.consent-preview{color:var(--rust)}
.consent-dialog{color:var(--ink);background:var(--paper);border:1px solid var(--ink);border-radius:var(--radius);padding:24px;max-width:560px;width:calc(100% - 32px);max-height:85vh;overflow:auto}
.consent-dialog::backdrop{background:rgb(21 63 53 / 45%)}
.consent-option{display:flex;gap:12px;align-items:start;padding:16px 0;border-bottom:1px solid var(--line);font-size:14px}
.consent-option input{width:20px;height:20px;margin:2px 0;flex-shrink:0;accent-color:var(--ink)}
.consent-option small{display:block;font-size:12px;line-height:1.6;margin-top:4px;color:var(--muted)}
.site-footer button[data-privacy-settings]{display:block;background:transparent;border:0;color:var(--ink);font-size:13px;text-align:left;text-decoration:underline;min-height:44px;padding:8px 0}
.consent-feedback{position:fixed;bottom:0;left:0;right:0;padding:8px 20px;margin:0;background:var(--soft);color:var(--ink);font-size:12px;z-index:9;pointer-events:none}
@media(max-width:600px){.consent-banner{bottom:8px;padding:16px}.consent-actions button{flex:1 1 140px}.consent-dialog{padding:20px}}
