/* Analytics is optional. A quiet, neutral panel that follows the site theme. */
.soi-consent{
  --co-bg:#fff;--co-ink:#24212a;--co-muted:#58545d;--co-line:#dfdce2;--co-button:#f5f4f6;
  position:fixed;left:16px;bottom:20px;z-index:10002;
  box-sizing:border-box;width:min(420px,calc(100vw - 32px));max-height:min(75dvh,520px);overflow:auto;
  padding:22px 23px;border:1px solid var(--co-line);border-radius:12px;
  background:var(--co-bg);color:var(--co-ink);
  box-shadow:0 12px 38px rgba(0,0,0,.16);
  font-family:var(--font-primary,'Segoe UI',Arial,sans-serif);
  text-align:left;
}
.soi-consent[hidden]{display:none!important}
.soi-consent *{box-sizing:border-box}
.soi-consent h2{font:700 19px/1.3 var(--font-primary,'Segoe UI',Arial,sans-serif);color:var(--co-ink);margin:0 0 9px}
.soi-consent p{font:400 13px/1.65 var(--font-primary,'Segoe UI',Arial,sans-serif);color:var(--co-muted);margin:0 0 12px}
.soi-consent a{font-size:12px;color:var(--co-ink);text-decoration:underline;text-underline-offset:3px}
.soi-consent-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:17px}
.soi-consent button{border:1px solid var(--co-line);border-radius:7px;padding:10px 13px;background:var(--co-button);color:var(--co-ink);cursor:pointer;font:600 12px/1.3 var(--font-primary,'Segoe UI',Arial,sans-serif)}
.soi-consent button[data-choice="granted"]{background:var(--co-ink);color:var(--co-bg);border-color:var(--co-ink)}
.soi-consent button[data-close]{background:transparent;border-color:transparent}
.soi-consent button:hover{filter:brightness(.96)}
.soi-consent button:focus-visible,.soi-manage-privacy:focus-visible{outline:2px solid currentColor;outline-offset:3px}
[data-theme="dark"] .soi-consent{--co-bg:#19171b;--co-ink:#f5f2f5;--co-muted:#cac5ce;--co-line:#39353c;--co-button:#28252b;box-shadow:0 12px 40px rgba(0,0,0,.36)}
.soi-manage-privacy{border:1px solid var(--border-light,#dcd8e0);color:var(--text-dark,#29252b);background:var(--bg-white,#fff);border-radius:8px;padding:11px 15px;cursor:pointer;font:600 13px var(--font-primary,'Segoe UI',sans-serif)}
@media(max-width:480px){.soi-consent{bottom:12px;left:12px;width:calc(100vw - 24px);padding:18px}.soi-consent-actions button{flex:1 1 auto}}
