.cookie-banner{left:var(--sp-4);right:var(--sp-4);bottom:var(--sp-4);z-index:200;background:var(--white);border:1px solid var(--border-soft);border-radius:var(--radius-md);padding:var(--sp-5);max-width:720px;max-height:calc(100vh - 2 * var(--sp-4));overscroll-behavior:contain;color:var(--ink-100);font-size:var(--fs-sm);margin-inline:auto;line-height:1.55;display:none;position:fixed;overflow-y:auto;box-shadow:0 24px 60px #0a0a0a2e}
.cookie-banner__head{justify-content:space-between;align-items:start;gap:var(--sp-3);display:flex}
.cookie-banner__head h4{font-family:var(--font-display);font-size:var(--fs-lg);letter-spacing:-.01em;color:var(--ink-100);align-items:center;gap:.6rem;font-weight:600;display:flex}
.cookie-banner__close{border:1px solid var(--border-soft);width:32px;height:32px;color:var(--text-muted);cursor:pointer;transition:all .3s var(--ease-out);border-radius:50%;flex-shrink:0;place-items:center;display:grid}
.cookie-banner p{color:var(--text-muted)}
.cookie-banner p a{color:var(--accent);text-decoration:underline}
.cookie-banner__cats{gap:var(--sp-2);margin-top:var(--sp-2);display:grid}
.cookie-cat{border:1px solid var(--border-soft);border-radius:var(--radius-sm);background:var(--paper-2);justify-content:space-between;align-items:center;gap:var(--sp-3);padding:.6rem .8rem;display:flex}
.cookie-cat__info{flex:1;gap:.15rem;display:grid}
.cookie-cat__info strong{font-size:var(--fs-sm);color:var(--ink-100)}
.cookie-cat__info small{font-size:var(--fs-xxs);color:var(--text-soft);letter-spacing:.02em}
.cookie-toggle{cursor:pointer;width:40px;height:22px;transition:background .3s var(--ease-out);background:#0a0a0a2e;border-radius:999px;flex-shrink:0;position:relative}
.cookie-toggle[data-checked=true]{background:var(--accent)}
.cookie-toggle[data-disabled=true]{opacity:.5;cursor:not-allowed}
.cookie-toggle input{opacity:0;position:absolute}
.cookie-banner__actions{gap:var(--sp-2);margin-top:var(--sp-2);flex-wrap:wrap;display:flex}
.cookie-banner__actions .btn{flex:1;justify-content:center;min-width:140px}
.cookie-banner__actions .btn--ghost{color:var(--ink-100);border-color:var(--border-strong);background:0 0}
.cookie-fab{bottom:var(--sp-4);left:var(--sp-4);background:var(--white);border:1px solid var(--border-soft);cursor:pointer;z-index:90;width:44px;height:44px;color:var(--text-muted);transition:all .3s var(--ease-out);box-shadow:var(--shadow-md);border-radius:50%;place-items:center;display:grid;position:fixed}
.cookie-fab svg{width:22px;height:22px}
.cookie-fab[hidden]{display:none}
@media (width<=700px){.cookie-banner{left:var(--sp-3);right:var(--sp-3);bottom:var(--sp-3);padding:var(--sp-4);max-height:calc(100vh - 2 * var(--sp-3))}.cookie-banner__actions{flex-direction:column}.cookie-banner__actions .btn{width:100%}}
.cookie-banner__powered{text-align:center;color:var(--text-faint,#94a3b8);margin-top:6px;padding:10px 0 4px;font-size:.75rem}
.cookie-banner__powered strong{color:var(--accent,#1986c6);font-weight:700}
.cookie-toggle:after{content:"";background:var(--white);width:16px;height:16px;transition:transform .3s var(--ease-out);border-radius:50%;position:absolute;top:3px;left:3px;box-shadow:0 1px 2px #0a0a0a33}
.cookie-toggle[data-checked=true]:after{transform:translate(18px)}
.cookie-banner.is-visible{gap:var(--sp-4);animation:cookie-in .5s var(--ease-out);display:grid}
.cookie-banner__head h4:before{content:"";background-color:var(--accent,#1986c6);background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M12 2a10 10 0 1 0 10 10 4 4 0 0 1-5-5 4 4 0 0 1-5-5'/><circle cx='8.5' cy='8.5' r='1' fill='white' stroke='none'/><circle cx='15.5' cy='15.5' r='1' fill='white' stroke='none'/><circle cx='15' cy='9' r='1' fill='white' stroke='none'/></svg>");background-position:50%;background-repeat:no-repeat;background-size:16px 16px;border-radius:50%;flex-shrink:0;width:26px;height:26px}
.cookie-banner__close:hover{background:var(--paper-2);color:var(--ink-100)}
.cookie-toggle:after{content:"";background:var(--white);width:16px;height:16px;transition:transform .3s var(--ease-out);border-radius:50%;position:absolute;top:3px;left:3px;box-shadow:0 1px 2px #0a0a0a33}
.cookie-toggle[data-checked=true]:after{transform:translate(18px)}
.cookie-banner__actions .btn--ghost:hover{background:var(--paper-2)}
.cookie-fab:hover{background:var(--paper-2);color:var(--ink-100);transform:scale(1.05)}
@media print{@page{size:a4;margin:0}body:has(.cert-modal){color:#000!important;background:#fff!important}body:has(.cert-modal)>:not(.cert-modal){display:none!important}.cert-modal{backdrop-filter:none!important;background:#fff!important;padding:0!important;display:block!important;position:static!important;overflow:visible!important}.cert-modal__chrome,.cert-modal__chrome-close,.cert-actions,.cert-notice,.certificate__corner{display:none!important}.cert-stage{padding:16mm 14mm!important}.certificate{box-shadow:none!important;border-radius:0!important;width:100%!important;max-width:none!important;margin:0!important;padding:0!important}.is-printing-cert .header,.is-printing-cert .footer,.is-printing-cert .cookie-banner,.is-printing-cert .cookie-fab{display:none!important}.is-printing-cert main{padding:0!important}.is-printing-cert .section{padding-block:0!important}}
.cookie-toggle:after{content:"";background:var(--white);width:16px;height:16px;transition:transform .3s var(--ease-out);border-radius:50%;position:absolute;top:3px;left:3px;box-shadow:0 1px 2px #0a0a0a33}
.cookie-toggle[data-checked=true]:after{transform:translate(18px)}
