/* Consent banner. Theme it by setting these custom properties on :root (defaults below). */
:root{
  --evic-bg:#fff; --evic-fg:#1d2330; --evic-muted:#4a5568; --evic-line:#c9d0db;
  --evic-accent:#1b6f9a; --evic-accent-fg:#fff; --evic-focus:#1b6f9a;
  --evic-radius:14px; --evic-font:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--evic-bg:#0b1424; --evic-fg:#e8f1f8; --evic-muted:#a9bace; --evic-line:#33465f; --evic-accent:#6ec0e8; --evic-accent-fg:#03101c; --evic-focus:#bfe6f7}}
:root[data-theme="dark"]{--evic-bg:#0b1424; --evic-fg:#e8f1f8; --evic-muted:#a9bace; --evic-line:#33465f; --evic-accent:#6ec0e8; --evic-accent-fg:#03101c; --evic-focus:#bfe6f7}
.evic{position:fixed;z-index:2147483000;right:16px;bottom:16px;width:min(392px,calc(100vw - 32px));max-height:calc(100vh - 32px);overflow:auto;box-sizing:border-box;padding:16px 18px;background:var(--evic-bg);color:var(--evic-fg);border:1px solid var(--evic-line);border-radius:var(--evic-radius);box-shadow:0 12px 40px -8px rgba(0,0,0,.35);font:400 .9375rem/1.45 var(--evic-font);animation:evic-in .28s cubic-bezier(.2,.8,.1,1)}
.evic[hidden],.evic [hidden]{display:none!important}
.evic:focus{outline:none}
.evic:focus-visible{outline:2px solid var(--evic-focus);outline-offset:2px}
.evic h2{margin:0 0 4px;font:700 1rem/1.3 var(--evic-font);letter-spacing:0}
.evic p{margin:0 0 12px;color:var(--evic-muted)}
.evic a{color:var(--evic-fg);text-underline-offset:3px}
.evic .evic-gpc{color:var(--evic-fg);font-size:.875rem;border-left:3px solid var(--evic-accent);padding-left:10px}
.evic-btns{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.evic-btn{font:600 .875rem/1.2 var(--evic-font);min-height:44px;padding:8px 6px;border:2px solid var(--evic-accent);border-radius:999px;background:var(--evic-accent);color:var(--evic-accent-fg);cursor:pointer}
.evic-btn:hover{filter:brightness(1.08)}
.evic :focus-visible{outline:2px solid var(--evic-focus);outline-offset:2px}
.evic-panel{margin:0 0 12px;display:flex;flex-direction:column;gap:10px}
.evic-panel .evic-btn{align-self:stretch}
.evic-row{display:grid;grid-template-columns:22px 1fr;gap:10px;align-items:start}
.evic-row input{width:20px;height:20px;margin:1px 0 0;accent-color:var(--evic-accent)}
.evic-row label{display:flex;flex-direction:column;gap:1px;color:var(--evic-muted);font-size:.875rem}
.evic-row label b{color:var(--evic-fg);font-size:.9375rem}
@keyframes evic-in{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
@media (max-width:560px){.evic{right:0;left:0;bottom:0;width:auto;border-radius:var(--evic-radius) var(--evic-radius) 0 0;border-width:1px 0 0;padding:14px 16px calc(14px + env(safe-area-inset-bottom));max-height:80vh}}
@media (prefers-reduced-motion:reduce){.evic{animation:none}.evic-btn:hover{filter:none}}
