.site-consent[hidden],.site-consent-open[hidden] { display:none!important; }
.site-consent { position:fixed;z-index:80;right:20px;bottom:20px;width:min(420px,calc(100vw - 32px));max-height:calc(100dvh - 40px);overflow-y:auto;padding:20px 20px 16px;border:1px solid var(--line-bright,rgba(232,177,255,.38));border-radius:16px;background:radial-gradient(ellipse at 100% 0,rgba(240,75,204,.16),transparent 55%),linear-gradient(150deg,rgba(37,19,49,.98),rgba(21,12,30,.98));box-shadow:0 18px 50px rgba(8,3,12,.55);color:var(--ink,#fbf5ff);font-family:var(--font-body,'DM Sans',sans-serif);animation:siteConsentIn .32s ease both; }
.site-consent { max-height:calc(100dvh - 32px);overflow-y:auto; }
.site-consent:focus { outline:none; }
.site-consent:focus-visible { outline:2px solid #ff9bea;outline-offset:3px; }
.site-consent__head { display:flex;align-items:center;gap:10px;margin-bottom:8px; }
.site-consent__mark { width:8px;height:8px;flex:0 0 auto;border-radius:50%;background:linear-gradient(100deg,#b245fa,#ed48cb); }
.site-consent__title { margin:0;font:700 16px/1.2 var(--font-display,'Space Grotesk',sans-serif);letter-spacing:-.02em; }
.site-consent__body { margin:0 0 14px;color:var(--muted,#c5b5d0);font-size:12.5px;line-height:1.5; }
.site-consent__actions { display:grid;grid-template-columns:1fr 1fr;gap:8px; }
.site-consent__btn { min-height:42px;padding:9px 14px;border:1px solid #b36ce2;border-radius:99px;background:rgba(34,16,45,.6);color:#fff;font:700 12px/1.2 var(--font-body,'DM Sans',sans-serif);cursor:pointer;transition:border-color .2s ease,background-color .2s ease; }
.site-consent__btn:hover { border-color:#f49bef;background:rgba(115,45,134,.32); }
.site-consent__close { grid-column:1/-1;justify-self:center;min-height:32px;padding:6px 12px;border:0;border-radius:8px;background:none;color:var(--subtle,#9885a7);font:600 11.5px var(--font-body,'DM Sans',sans-serif);text-decoration:underline;text-underline-offset:3px;cursor:pointer; }
.site-consent__close:hover { color:var(--ink,#fbf5ff); }
.site-consent__btn:focus-visible,.site-consent__close:focus-visible,.site-consent-open:focus-visible { outline:2px solid #ff9bea;outline-offset:3px; }
.site-consent__status { margin:8px 0 0;color:#e8a0f6;font-size:11.5px; }
.site-consent__status:empty { display:none; }
.site-consent-open { position:fixed;z-index:70;left:14px;bottom:14px;display:inline-flex;align-items:center;gap:7px;min-height:34px;padding:6px 12px;border:1px solid var(--line,rgba(222,164,255,.19));border-radius:99px;background:rgba(23,12,32,.82);color:var(--muted,#c5b5d0);font:600 11px var(--font-body,'DM Sans',sans-serif);cursor:pointer;opacity:.78;transition:opacity .2s ease,border-color .2s ease; }
.site-consent-open:hover,.site-consent-open:focus-visible { opacity:1;border-color:var(--line-bright,rgba(232,177,255,.38));color:var(--ink,#fbf5ff); }
@keyframes siteConsentIn { from { opacity:0;transform:translateY(10px); } to { opacity:1;transform:none; } }
@media (max-width:600px) {
  .site-consent { right:12px;left:12px;bottom:12px;width:auto;padding:16px 15px 12px; }
  .site-consent-open span { position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap; }
  .site-consent-open { left:10px;bottom:10px;padding:6px 10px; }
}
@media (max-width:360px) { .site-consent__actions { grid-template-columns:1fr; } }
@media (prefers-reduced-motion:reduce) { .site-consent { animation:none; } .site-consent__btn,.site-consent-open { transition:none; } }
