.wel-consent{--wel-bg:#fff;--wel-fg:#0A141F;--wel-muted:#54595F;--wel-line:#D1D1D1;--wel-accent:#274C77;--wel-accent-fg:#fff;position:fixed;z-index:99999;left:50%;bottom:24px;transform:translateX(-50%);box-sizing:border-box;display:none;flex-direction:column;width:min(620px,calc(100vw - 32px));max-height:calc(100vh - 48px);overflow:hidden;padding:26px;background:var(--wel-bg);color:var(--wel-fg);border-radius:14px;box-shadow:0 18px 50px rgba(10,20,31,.3);font-family:"Manrope",system-ui,-apple-system,"Segoe UI",sans-serif;font-size:15px;line-height:1.6}
.wel-consent.is-open{display:flex}
.wel-consent *{box-sizing:border-box}
.wel-consent h2{margin:0 0 10px;font-size:20px;font-weight:800;line-height:1.3;color:var(--wel-fg)}
.wel-consent p{margin:0 0 14px;color:var(--wel-muted);font-size:14px}
.wel-consent a{color:var(--wel-accent);text-decoration:underline}
.wel-consent__body{flex:1 1 auto;overflow-y:auto;overscroll-behavior:contain}
.wel-consent__cats{display:none;flex-direction:column;margin:0 0 18px;border-top:1px solid var(--wel-line)}
.wel-consent.is-detailed .wel-consent__cats{display:flex}
.wel-consent__cat{padding:12px 0;border-bottom:1px solid var(--wel-line)}
.wel-consent__cat-head{display:flex;align-items:center;gap:12px}
.wel-consent__cat-title{flex:1 1 auto;font-weight:700;font-size:15px}
.wel-consent__cat p{margin:6px 0 0;font-size:13px}
.wel-consent__always{font-size:12px;color:var(--wel-muted);white-space:nowrap}
.wel-switch{position:relative;display:inline-flex;flex:0 0 auto;width:42px;height:24px}
.wel-switch input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer;z-index:2}
.wel-switch span{position:absolute;inset:0;background:#c9c9c9;border-radius:999px;transition:background .2s ease}
.wel-switch span:after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;background:#fff;border-radius:50%;transition:transform .2s ease}
.wel-switch input:checked+span{background:var(--wel-accent)}
.wel-switch input:checked+span:after{transform:translateX(18px)}
.wel-switch input:disabled+span{opacity:.5}
.wel-switch input:focus-visible+span{outline:2px solid var(--wel-accent);outline-offset:2px}
.wel-consent__actions{display:flex;flex-wrap:wrap;gap:10px}
.wel-btn{flex:1 1 auto;min-width:150px;padding:12px 20px;border:1px solid var(--wel-accent);border-radius:6px;background:var(--wel-accent);color:var(--wel-accent-fg);font-family:inherit;font-size:14px;font-weight:700;text-align:center;cursor:pointer;transition:filter .15s ease}
.wel-btn:hover{filter:brightness(1.12)}
.wel-btn--ghost{background:transparent;color:var(--wel-fg);border-color:var(--wel-line)}
.wel-btn--ghost:hover{border-color:var(--wel-fg);filter:none}
.wel-consent__links{margin-top:14px;font-size:13px;color:var(--wel-muted)}
.wel-consent__links a{margin-right:16px}
.wel-consent-backdrop{position:fixed;inset:0;z-index:99998;display:none;background:rgba(10,20,31,.45)}
.wel-consent-backdrop.is-open{display:block}
@media (max-width:640px){.wel-consent{width:calc(100vw - 20px);bottom:10px;padding:20px}.wel-btn{min-width:100%}}

.wel-consent [hidden]{display:none!important}
.wel-consent .wel-btn,.wel-consent button.wel-btn{background:var(--wel-accent)!important;color:var(--wel-accent-fg)!important;border:1px solid var(--wel-accent)!important;border-radius:6px!important;box-shadow:none!important;text-transform:none!important;letter-spacing:normal!important}
.wel-consent .wel-btn--ghost,.wel-consent button.wel-btn--ghost{background:transparent!important;color:var(--wel-fg)!important;border-color:var(--wel-line)!important}
.wel-consent .wel-btn--ghost:hover{border-color:var(--wel-fg)!important}
