/* PrimerGenius cookie consent banner
   Theme-aware: dark by default, light when <html> carries .light (analyzer page). */

#pg-consent{
  position:fixed;
  left:50%;
  bottom:0;
  transform:translateX(-50%) translateY(120%);
  z-index:9999;
  width:min(940px,calc(100vw - 1.5rem));
  margin-bottom:0.75rem;
  background:#0d1830;
  border:2px solid rgba(125,196,255,0.52);
  border-radius:16px;
  box-shadow:0 18px 50px rgba(0,0,0,0.55);
  padding:1.25rem 1.4rem;
  display:flex;
  align-items:center;
  gap:1.5rem;
  flex-wrap:wrap;
  font-family:'Inter',system-ui,-apple-system,sans-serif;
  color:#f0f6ff;
  transition:transform .32s cubic-bezier(.4,0,.2,1),opacity .32s;
  opacity:0;
  visibility:hidden;
}
#pg-consent.pg-show{transform:translateX(-50%) translateY(0);opacity:1;visibility:visible}

#pg-consent .pg-text{flex:1 1 380px;min-width:0}
#pg-consent h2{
  font-size:1.02rem;
  font-weight:700;
  margin:0 0 .35rem;
  letter-spacing:-0.01em;
  color:#ffffff;
}
#pg-consent p{
  font-size:0.9rem;
  line-height:1.6;
  margin:0;
  color:#c3d3e8;
}
#pg-consent p a{color:#93c5fd;text-decoration:underline}
#pg-consent p a:hover{color:#bfdbfe}

#pg-consent .pg-actions{
  display:flex;
  gap:.7rem;
  flex:0 0 auto;
  flex-wrap:wrap;
}
#pg-consent button{
  font-family:inherit;
  font-size:0.94rem;
  font-weight:700;
  padding:0.7rem 1.4rem;
  border-radius:10px;
  cursor:pointer;
  border:2px solid transparent;
  transition:filter .18s,border-color .18s,color .18s,background .18s;
  white-space:nowrap;
}
/* Reject must be as easy to use as accept: same size, same weight, equal prominence. */
#pg-consent .pg-reject{
  background:transparent;
  color:#e8f0fb;
  border-color:rgba(125,196,255,0.52);
}
#pg-consent .pg-reject:hover{border-color:#93c5fd;color:#ffffff;background:rgba(125,196,255,0.08)}
#pg-consent .pg-accept{
  background:linear-gradient(135deg,#3b82f6,#8b5cf6);
  color:#ffffff;
  border-color:rgba(147,197,253,0.45);
}
#pg-consent .pg-accept:hover{filter:brightness(1.12)}
#pg-consent button:focus-visible{outline:2px solid #93c5fd;outline-offset:3px}

/* Light theme (analyzer page toggle) */
.light #pg-consent{
  background:#ffffff;
  border-color:#6b7c92;
  color:#0f172a;
  box-shadow:0 18px 50px rgba(15,23,42,0.18);
}
.light #pg-consent h2{color:#0f172a}
.light #pg-consent p{color:#3d4d63}
.light #pg-consent p a{color:#4f46e5}
.light #pg-consent .pg-reject{color:#0f172a;border-color:#6b7c92}
.light #pg-consent .pg-reject:hover{background:#f0f4f8;border-color:#4f46e5;color:#4f46e5}

/* Footer "Cookie settings" trigger, styled to sit with sibling footer links */
.pg-cookie-link{
  background:none;
  border:none;
  padding:0;
  font:inherit;
  color:inherit;
  cursor:pointer;
  text-decoration:none;
}
.pg-cookie-link:hover{text-decoration:underline}
.pg-cookie-link:focus-visible{outline:2px solid currentColor;outline-offset:3px;border-radius:3px}

@media(max-width:720px){
  #pg-consent{padding:1.1rem;gap:1rem}
  #pg-consent .pg-actions{width:100%}
  #pg-consent .pg-actions button{flex:1 1 0;padding:0.72rem 0.9rem}
}
@media(prefers-reduced-motion:reduce){
  #pg-consent{transition:none}
}
