:root{--zg-orange:#ff9900;--zg-dark:#161616;--zg-muted:#6b6b6b;--zg-border:#e9e4df;--zg-bg:#fff;--zg-soft:#fff7ea}
.zg-consent-hidden{display:none!important}
.zg-consent-banner{position:fixed;left:18px;right:18px;bottom:18px;z-index:9998;max-width:1100px;margin:0 auto;background:rgba(255,255,255,.98);border:1px solid var(--zg-border);border-radius:20px;box-shadow:0 20px 60px rgba(0,0,0,.18);padding:20px 22px;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;color:var(--zg-dark)}
.zg-consent-banner__inner{display:flex;gap:22px;align-items:center;justify-content:space-between}
.zg-consent-banner__copy{max-width:680px}.zg-consent-banner__copy strong{display:block;font-size:17px;margin-bottom:5px}.zg-consent-banner__copy p{margin:0;color:var(--zg-muted);font-size:13.5px;line-height:1.5}.zg-consent-banner__copy a{color:#d97f00;text-decoration:underline;text-underline-offset:2px}
.zg-consent-actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.zg-consent-btn{appearance:none;border:1px solid var(--zg-border);background:#fff;color:var(--zg-dark);border-radius:999px;padding:10px 15px;font-size:13px;font-weight:700;cursor:pointer;white-space:nowrap;transition:.2s ease}.zg-consent-btn:hover{transform:translateY(-1px);border-color:#d8cfc7}.zg-consent-btn--primary{background:var(--zg-orange);border-color:var(--zg-orange);color:#fff}.zg-consent-btn--ghost{background:#f8f6f3}
.zg-consent-overlay{position:fixed;inset:0;background:rgba(0,0,0,.44);z-index:9999;display:flex;align-items:center;justify-content:center;padding:20px}.zg-consent-modal{width:min(620px,100%);max-height:min(720px,90vh);overflow:auto;background:#fff;border-radius:22px;box-shadow:0 30px 80px rgba(0,0,0,.28);padding:26px;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;color:var(--zg-dark)}
.zg-consent-modal h2{font:700 24px/1.2 "Avenir Next",Avenir,"Helvetica Neue",Arial,sans-serif;margin:0 0 8px}.zg-consent-modal>p{margin:0 0 22px;color:var(--zg-muted);font-size:14px;line-height:1.55}.zg-consent-row{display:flex;gap:18px;justify-content:space-between;align-items:flex-start;border:1px solid var(--zg-border);border-radius:16px;padding:17px 18px;margin:10px 0}.zg-consent-row__text strong{display:block;font-size:14px;margin-bottom:4px}.zg-consent-row__text span{display:block;color:var(--zg-muted);font-size:12.5px;line-height:1.45}.zg-consent-status{flex:none;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:#a15f00;background:var(--zg-soft);border-radius:999px;padding:7px 9px}
.zg-switch{position:relative;display:inline-block;width:48px;height:28px;flex:none}.zg-switch input{opacity:0;width:0;height:0}.zg-switch span{position:absolute;inset:0;background:#d8d3ce;border-radius:999px;cursor:pointer;transition:.2s}.zg-switch span:before{content:"";position:absolute;width:22px;height:22px;left:3px;top:3px;background:#fff;border-radius:50%;box-shadow:0 2px 7px rgba(0,0,0,.2);transition:.2s}.zg-switch input:checked+span{background:var(--zg-orange)}.zg-switch input:checked+span:before{transform:translateX(20px)}
.zg-consent-modal__actions{display:flex;justify-content:flex-end;gap:9px;flex-wrap:wrap;margin-top:22px}.zg-consent-close{appearance:none;border:0;background:transparent;color:var(--zg-muted);font-size:22px;line-height:1;cursor:pointer;position:absolute;right:20px;top:18px}.zg-consent-modal-wrap{position:relative}
.zg-media-note{position:absolute;left:16px;right:16px;bottom:14px;z-index:3;background:rgba(0,0,0,.72);backdrop-filter:blur(7px);color:#fff;border:1px solid rgba(255,255,255,.16);border-radius:12px;padding:9px 12px;font-size:11.5px;line-height:1.4;text-align:left;pointer-events:none}.zg-media-note strong{color:#ffb43b}
@media(max-width:760px){.zg-consent-banner{left:10px;right:10px;bottom:10px;padding:17px}.zg-consent-banner__inner{align-items:stretch;flex-direction:column;gap:14px}.zg-consent-actions{justify-content:stretch}.zg-consent-btn{flex:1 1 auto}.zg-consent-modal{padding:22px 18px}.zg-consent-row{gap:12px}.zg-media-note{font-size:10.5px;left:10px;right:10px;bottom:10px}}
