/* ============================================================
   PureAnalyt · Cookie consent banner styles (v2 — granular)
   Bottom-right floating card, expands inline when user clicks
   "Configurar" to reveal per-category toggles.
   ============================================================ */

.pa-consent{
  position:fixed;
  left:24px;right:24px;bottom:24px;
  z-index:9999;
  max-width:560px;margin-left:auto;
  background:linear-gradient(180deg, #161c19, #111613);
  border:1px solid #2a3631;border-radius:10px;
  box-shadow:0 24px 60px -20px rgba(0,0,0,.7), 0 0 0 1px rgba(168,255,96,.05) inset;
  font-family:'JetBrains Mono', ui-monospace, monospace;
  color:#e6eee9;
  opacity:0;transform:translateY(20px);
  transition:opacity .3s ease, transform .3s cubic-bezier(.2,.8,.2,1), max-width .3s ease;
  pointer-events:none;
}
.pa-consent.open{opacity:1;transform:translateY(0);pointer-events:auto}
.pa-consent.expanded{max-width:640px}

.pa-consent-inner{
  padding:18px 20px;
  display:flex;flex-direction:column;gap:14px;
}

/* ── Header text ────────────────────────────────────────── */
.pa-consent-text strong{
  display:block;
  font-family:'Fraunces',serif;font-weight:600;
  font-size:14px;letter-spacing:-.2px;
  margin-bottom:6px;color:#e6eee9;
}
.pa-consent-text p{
  margin:0;
  font-size:12px;color:#c2cdc6;line-height:1.55;
}
.pa-consent-text a{
  color:#a8ff60;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:2px;
}
.pa-consent-text a:hover{color:#bfff7a}

/* ── Granular preferences (hidden until expanded) ──────── */
.pa-consent-prefs{
  display:none;
  flex-direction:column;gap:10px;
  margin-top:4px;padding-top:14px;
  border-top:1px solid rgba(255,255,255,.05);
}
.pa-consent.expanded .pa-consent-prefs{display:flex}

.pa-pref-row{
  display:flex;align-items:flex-start;gap:14px;
  padding:10px 12px;border-radius:6px;
  background:rgba(255,255,255,.018);
}
.pa-pref-info{flex:1;min-width:0}
.pa-pref-title{
  font-family:'Fraunces',serif;font-weight:600;
  font-size:13px;letter-spacing:-.1px;color:#e6eee9;
  margin-bottom:4px;
  display:flex;align-items:center;gap:8px;flex-wrap:wrap;
}
.pa-pref-tag{
  font-family:'JetBrains Mono',monospace;font-weight:500;
  font-size:9px;text-transform:uppercase;letter-spacing:1.2px;
  padding:2px 7px;border-radius:99px;
  background:rgba(168,255,96,.08);
  border:1px solid rgba(168,255,96,.22);
  color:#a8ff60;
}
.pa-pref-desc{
  font-size:11px;color:#7d8a83;line-height:1.55;
}
.pa-pref-toggle{flex:none;padding-top:2px}

/* Toggle switch */
.pa-toggle{
  position:relative;width:36px;height:20px;border-radius:99px;
  background:#2a3631;border:1px solid #1f2a25;cursor:pointer;
  transition:background .2s;padding:0;
}
.pa-toggle > span{
  position:absolute;top:1px;left:1px;
  width:16px;height:16px;border-radius:50%;
  background:#7d8a83;
  transition:transform .2s, background .2s;
}
.pa-toggle.pa-toggle-on{background:rgba(168,255,96,.25);border-color:rgba(168,255,96,.4)}
.pa-toggle.pa-toggle-on > span{background:#a8ff60;transform:translateX(16px)}
.pa-pref-locked .pa-toggle{cursor:default;opacity:.7}

/* ── Action buttons row ────────────────────────────────── */
.pa-consent-actions{
  display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap;
}
.pa-consent-btn{
  padding:9px 16px;border-radius:6px;
  font-family:'JetBrains Mono',monospace;font-weight:600;
  font-size:10.5px;letter-spacing:1.2px;text-transform:uppercase;
  cursor:pointer;border:none;transition:all .15s;
}
.pa-consent-accept,.pa-consent-save{
  background:linear-gradient(135deg, #a8ff60, #7fcc48);
  color:#0a0e0c;
  box-shadow:0 2px 8px -2px rgba(168,255,96,.4);
}
.pa-consent-accept:hover,.pa-consent-save:hover{
  transform:translateY(-1px);
  box-shadow:0 4px 12px -2px rgba(168,255,96,.5);
}
.pa-consent-reject,.pa-consent-config{
  background:rgba(255,255,255,.04);
  color:#c2cdc6;
  border:1px solid #2a3631;
}
.pa-consent-reject:hover,.pa-consent-config:hover{
  background:rgba(255,255,255,.07);
  color:#e6eee9;
}

/* ── Responsive ────────────────────────────────────────── */
@media (max-width:560px){
  .pa-consent{left:12px;right:12px;bottom:12px}
  .pa-consent-inner{padding:16px 16px}
  .pa-consent-text strong{font-size:13px}
  .pa-consent-text p{font-size:11.5px}
  .pa-consent-actions{justify-content:stretch}
  .pa-consent-btn{flex:1;padding:10px 8px;font-size:10px}
  .pa-pref-row{padding:8px 10px;gap:10px}
  .pa-pref-title{font-size:12px}
  .pa-pref-desc{font-size:10.5px}
}
