/* MNAILS consent banner — 2026 */
:root{--consent-bg:#f4f0e9;--consent-ink:#2f211b;--consent-muted:#776b63;--consent-line:#d9d0c8;--consent-dark:#3a2820;--consent-white:#fff}
.consent-banner{position:fixed;left:18px;right:18px;bottom:18px;z-index:99999;display:none;max-width:1180px;margin:0 auto;background:rgba(244,240,233,.985);color:var(--consent-ink);border:1px solid rgba(58,40,32,.14);box-shadow:0 20px 55px rgba(35,24,18,.18);border-radius:18px;padding:22px 24px;font-family:inherit}
.consent-banner.is-visible{display:block}
.consent-banner__grid{display:grid;grid-template-columns:1fr auto;gap:26px;align-items:end}
.consent-banner__title{font-size:1.05rem;font-weight:650;margin:0 0 7px}
.consent-banner__text{font-size:.92rem;line-height:1.55;color:var(--consent-muted);margin:0;max-width:780px}
.consent-banner__text a{color:var(--consent-ink);text-decoration:underline;text-underline-offset:2px}
.consent-actions{display:flex;gap:9px;flex-wrap:wrap;justify-content:flex-end}
.consent-btn{appearance:none;border:1px solid var(--consent-dark);background:transparent;color:var(--consent-dark);border-radius:999px;padding:11px 16px;font:inherit;font-size:.9rem;cursor:pointer;white-space:nowrap}
.consent-btn:hover{background:rgba(58,40,32,.06)}
.consent-btn--primary{background:var(--consent-dark);color:var(--consent-white)}
.consent-btn--primary:hover{background:#2e201a}
.consent-modal[hidden]{display:none!important}
.consent-modal{position:fixed;inset:0;z-index:100000;display:grid;place-items:center;padding:20px;background:rgba(20,14,11,.44)}
.consent-dialog{width:min(600px,100%);max-height:min(760px,90vh);overflow:auto;background:var(--consent-bg);color:var(--consent-ink);border-radius:20px;box-shadow:0 28px 80px rgba(0,0,0,.28);padding:26px}
.consent-dialog__head{display:flex;justify-content:space-between;gap:20px;align-items:start;margin-bottom:18px}
.consent-dialog h2{font-size:1.45rem;margin:0 0 6px}
.consent-dialog p{color:var(--consent-muted);line-height:1.55;margin:0}
.consent-close{appearance:none;border:0;background:transparent;font-size:1.7rem;line-height:1;cursor:pointer;color:var(--consent-ink);padding:0 3px}
.consent-option{display:grid;grid-template-columns:1fr auto;gap:20px;padding:18px 0;border-top:1px solid var(--consent-line)}
.consent-option strong{display:block;margin-bottom:4px}
.consent-option small{display:block;color:var(--consent-muted);line-height:1.45;max-width:440px}
.consent-switch{position:relative;width:48px;height:28px;align-self:center}
.consent-switch input{position:absolute;opacity:0;pointer-events:none}
.consent-switch span{position:absolute;inset:0;border-radius:999px;background:#c9c0ba;transition:.2s}
.consent-switch span:after{content:"";position:absolute;width:22px;height:22px;left:3px;top:3px;border-radius:50%;background:white;box-shadow:0 1px 4px rgba(0,0,0,.24);transition:.2s}
.consent-switch input:checked+span{background:var(--consent-dark)}
.consent-switch input:checked+span:after{transform:translateX(20px)}
.consent-switch input:disabled+span{opacity:.6}
.consent-dialog__actions{display:flex;justify-content:flex-end;gap:9px;flex-wrap:wrap;padding-top:18px;border-top:1px solid var(--consent-line)}
.consent-settings-link{appearance:none;border:0;background:transparent;color:inherit;font:inherit;padding:0;cursor:pointer;text-decoration:none;opacity:.86}
.consent-settings-link:hover{text-decoration:underline;text-underline-offset:3px}
@media(max-width:760px){.consent-banner{left:10px;right:10px;bottom:10px;padding:18px}.consent-banner__grid{grid-template-columns:1fr;gap:16px}.consent-actions{justify-content:flex-start}.consent-btn{flex:1 1 auto}.consent-dialog{padding:20px}.consent-dialog__actions .consent-btn{flex:1 1 auto}}
