/* Analytics preference card and the "Analytics preferences" link (October 1). Self-contained
   .sn-consent classes in the site's type, ink and logo gradient; nothing here touches the
   page's own elements or its protected footers. Layering: above page content and the
   scroll-to-top arrow, under Nova's panel (150), the project view and the blueprint pop-up,
   so it never covers them. */
.sn-consent{--snc-ink:#17131d;--snc-muted:#5d5768;--snc-soft:#80778b;--snc-line:rgba(23,19,29,.09);
  position:fixed;z-index:140;left:24px;bottom:24px;width:min(760px,calc(100vw - 48px));box-sizing:border-box;
  display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:20px 36px;padding:26px 28px 24px;
  border:1px solid var(--snc-line);border-radius:20px;overflow:hidden;
  background:rgba(255,255,255,.88);-webkit-backdrop-filter:blur(18px) saturate(1.25);backdrop-filter:blur(18px) saturate(1.25);
  box-shadow:0 30px 70px -32px rgba(23,19,29,.34),0 2px 10px rgba(23,19,29,.05);
  font-family:Manrope,StudioFallback,system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--snc-ink);
  opacity:0;transform:translateY(12px);transition:opacity .5s cubic-bezier(.22,1,.36,1),transform .5s cubic-bezier(.22,1,.36,1)}
.sn-consent.is-in{opacity:1;transform:none}
.sn-consent.is-leaving{opacity:0;transform:translateY(8px);transition-duration:.26s;pointer-events:none}
/* the one Sanematics detail: a hairline in the logo's gradient draws across the top as the card arrives */
.sn-consent-line{position:absolute;left:0;right:0;top:0;height:2px;background:linear-gradient(90deg,#ea00d7,#c800e2 38%,#9000f5 78%,#8600f9);transform:scaleX(0);transform-origin:left;transition:transform 1.1s cubic-bezier(.22,1,.36,1) .18s}
.sn-consent.is-in .sn-consent-line{transform:scaleX(1)}
.sn-consent-copy{min-width:0}
.sn-consent-eyebrow{margin:0 0 10px;font-size:11px;font-weight:600;line-height:1.2;letter-spacing:.14em;text-transform:uppercase;color:var(--snc-soft)}
.sn-consent-title{margin:0 0 8px;font-size:20px;font-weight:600;line-height:1.25;letter-spacing:-.02em;color:var(--snc-ink)}
.sn-consent-text{margin:0;max-width:440px;font-size:14px;line-height:1.6;color:var(--snc-muted)}
.sn-consent-note{margin:10px 0 0;font-size:13px;line-height:1.5;color:#6c3d98}
.sn-consent-note:empty{display:none}
.sn-consent-actions{display:grid;gap:10px;justify-items:stretch;min-width:236px}
.sn-consent-actions button{min-height:46px;padding:12px 20px;border-radius:12px;font:inherit;font-size:14px;font-weight:600;line-height:1.2;letter-spacing:-.005em;cursor:pointer;transition:background .25s,color .25s,border-color .25s,box-shadow .25s,transform .25s}
.sn-consent-allow{border:1px solid var(--snc-ink);background:var(--snc-ink);color:#fff;box-shadow:0 12px 26px -16px rgba(23,19,29,.7)}
.sn-consent-allow:hover{border-color:transparent;background:linear-gradient(105deg,#ea00d7,#8600f9);transform:translateY(-1px)}
.sn-consent-basic{border:1px solid rgba(23,19,29,.16);background:rgba(255,255,255,.7);color:var(--snc-ink)}
.sn-consent-basic:hover{border-color:rgba(23,19,29,.4);background:#fff}
.sn-consent-actions button[aria-pressed="true"]{box-shadow:0 0 0 3px rgba(138,53,232,.22)}
.sn-consent-policy{justify-self:center;padding:4px 2px;font-size:12px;line-height:1.4;color:var(--snc-soft);text-decoration:underline;text-underline-offset:3px}
.sn-consent-policy:hover{color:var(--snc-ink)}
.sn-consent :focus-visible{outline:2px solid #8a35e8;outline-offset:3px}
.sn-consent-sr{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}

.sn-consent-prefs{display:flex;justify-content:center;padding:14px 16px 18px;font-family:Manrope,StudioFallback,system-ui,-apple-system,"Segoe UI",sans-serif}
.sn-consent-prefs button{padding:6px 4px;border:0;background:none;color:#80778b;font:inherit;font-size:12px;line-height:1.4;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.sn-consent-prefs button:hover{color:#17131d}
.sn-consent-prefs button:focus-visible{outline:2px solid #8a35e8;outline-offset:3px;border-radius:4px}

@media (max-width:700px){
  .sn-consent{left:12px;right:12px;bottom:12px;width:auto;grid-template-columns:1fr;gap:16px;padding:20px 18px 16px;border-radius:18px}
  .sn-consent-eyebrow{margin-bottom:8px}
  .sn-consent-title{font-size:17px}
  .sn-consent-text{font-size:13px;line-height:1.55}
  .sn-consent-actions{min-width:0;grid-template-columns:1fr 1fr;gap:8px}
  .sn-consent-actions button{min-height:48px;padding:10px 12px;font-size:13px}
  .sn-consent-policy{grid-column:1/-1}
}
@media (max-width:360px){.sn-consent-actions{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){
  .sn-consent,.sn-consent.is-leaving,.sn-consent-line,.sn-consent-actions button{transition:none}
  .sn-consent{opacity:1;transform:none}
  .sn-consent-line{transform:none}
  .sn-consent-allow:hover{transform:none}
}
@media (forced-colors:active){.sn-consent{border:1px solid CanvasText}.sn-consent-line{background:CanvasText}}
