/* Cookie consent banner */
.cookie-banner{position:fixed;left:24px;bottom:24px;z-index:10050;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:14px;width:min(620px,calc(100vw - 32px));padding:18px;background:#fff;border:1px solid rgba(15,23,42,.08);border-radius:16px;box-shadow:0 12px 40px rgba(0,0,0,.15);color:#172033;opacity:0;transform:translateY(18px);visibility:hidden;transition:opacity .3s ease,transform .3s ease,visibility .3s ease}
.cookie-banner[hidden],.cookie-banner__settings[hidden]{display:none}
.cookie-banner.is-visible{opacity:1;transform:translateY(0);visibility:visible}
.cookie-banner__icon{display:flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:12px;background:#f3f7ff;font-size:25px;line-height:1}
.cookie-banner__content p{margin:0;font-size:14px;line-height:1.5;color:#46536a}
.cookie-banner__content a{color:#1769e0;text-decoration:underline;text-underline-offset:2px}
.cookie-banner__actions{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:9px}
.cookie-banner button{min-height:42px;padding:0 16px;border-radius:10px;font:600 14px/1 inherit;cursor:pointer;transition:background-color .2s ease,transform .2s ease}
.cookie-banner button:hover{transform:translateY(-1px)}
.cookie-banner button:focus-visible{outline:3px solid rgba(23,105,224,.25);outline-offset:2px}
.cookie-banner__accept{border:0;background:#1769e0;color:#fff}.cookie-banner__accept:hover{background:#0e57c7}
.cookie-banner__reject,.cookie-banner__configure,.cookie-banner__save{border:1px solid #cdd7e3;background:#fff;color:#172033}
.cookie-banner__reject:hover,.cookie-banner__configure:hover,.cookie-banner__save:hover{background:#eef3f9}
.cookie-banner__settings{display:grid;gap:9px;margin-top:13px;padding-top:13px;border-top:1px solid #e4eaf1;color:#46536a;font-size:13px}
.cookie-banner__settings label{display:flex;align-items:center;gap:8px}.cookie-banner__settings input{width:18px;height:18px;accent-color:#1769e0}.cookie-banner__save{justify-self:start;margin-top:2px}
@media(max-width:680px){.cookie-banner{left:50%;bottom:calc(78px + env(safe-area-inset-bottom));grid-template-columns:auto 1fr;transform:translate(-50%,18px);gap:10px 12px;padding:16px;max-height:calc(100vh - 96px);overflow:auto}.cookie-banner.is-visible{transform:translate(-50%,0)}.cookie-banner__actions{display:grid;grid-template-columns:1fr 1fr}.cookie-banner__accept{grid-column:1/-1}.cookie-banner button{width:100%}}
@media(prefers-reduced-motion:reduce){.cookie-banner,.cookie-banner button{transition:none}}
