.consent{position:fixed;left:16px;right:16px;bottom:16px;z-index:1000;display:flex;justify-content:center;pointer-events:none}
.consent[hidden]{display:none}
.consent-inner{pointer-events:auto;width:100%;max-width:1080px;max-height:calc(100vh - 32px);overflow-y:auto;background:#fff;color:var(--ink);border:1px solid var(--line);border-top:4px solid var(--blue);border-radius:var(--radius);box-shadow:0 18px 50px #11244533;padding:24px 28px;display:grid;grid-template-columns:1fr auto;gap:12px 32px;align-items:center}
.consent-title{font-size:1.25rem;line-height:1.25;margin:0 0 8px;color:var(--ink)}
.consent-title:focus{outline:none}
.consent-title:focus-visible{outline:3px solid #e62445;outline-offset:5px}
.consent-main p{margin:0;font-size:.9rem;line-height:1.55;color:var(--ink)}
.consent-main a{color:var(--blue);text-underline-offset:3px}
.consent-actions{display:flex;flex-direction:column;gap:10px;min-width:200px}
.consent-btn{display:inline-flex;justify-content:center;align-items:center;min-height:46px;padding:12px 22px;border-radius:100px;font:inherit;font-size:.92rem;font-weight:700;line-height:1.2;background:var(--blue);color:#fff;border:2px solid var(--blue)}
.consent-btn:hover{background:var(--deep);border-color:var(--deep)}
.consent-btn-alt{background:#fff;color:var(--blue)}
.consent-btn-alt:hover{background:var(--pale);border-color:var(--blue)}
.consent-btn[hidden]{display:none}
.consent-settings{grid-column:1/-1;display:grid;gap:10px;margin:4px 0}
.consent-settings[hidden]{display:none}
.consent-option{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:14px 16px;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);cursor:pointer}
.consent-option strong{font-size:.95rem}
.consent-option p{margin:2px 0 0;font-size:.85rem;line-height:1.5;color:var(--ink)}
.consent-always{font-size:.8rem;font-weight:700;color:var(--blue);white-space:nowrap}
.consent .consent-switch{appearance:none;-webkit-appearance:none;flex:0 0 48px;position:relative;width:48px;height:28px;min-height:0;padding:0;border:0;margin:0;border-radius:100px;background:#8a97ab;cursor:pointer;transition:background .2s}
.consent-switch:after{content:'';position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:#fff;transition:transform .2s}
.consent .consent-switch:checked{background:var(--blue)}
.consent-switch:checked:after{transform:translateX(20px)}
.consent-switch:focus-visible{outline:3px solid #e62445;outline-offset:3px}
.consent-open .consent-actions{grid-column:1/-1;flex-direction:row;flex-wrap:wrap}
.consent-open .consent-actions .consent-btn{flex:1 1 160px}
@media(max-width:900px){.consent-inner{grid-template-columns:1fr}.consent-actions{flex-direction:row;flex-wrap:wrap}.consent-actions .consent-btn{flex:1 1 140px}}
@media(max-width:640px){.consent{left:8px;right:8px;bottom:8px}.consent-inner{padding:18px 16px;max-height:calc(100vh - 16px)}.consent-title{font-size:1.1rem}.consent-main p{font-size:.86rem}.consent-actions .consent-btn{flex:1 1 100%}}
@media(prefers-reduced-motion:reduce){.consent-switch,.consent-switch:after{transition:none}}
