/* Modern, compact consent banner (low intrusion). */
.ga-consent{
  position:fixed;
  left:16px;
  bottom:16px;
  z-index:2147483000;
  width:min(520px, calc(100vw - 32px));
  color:#0f172a;
  font-family:Inter, system-ui, -apple-system, Segoe UI, sans-serif;
}
.ga-consent__card{
  display:flex;
  gap:14px;
  align-items:flex-start;
  justify-content:space-between;
  background:rgba(255,255,255,0.96);
  border:1px solid rgba(15,23,42,0.12);
  border-radius:14px;
  box-shadow:0 14px 48px rgba(0,0,0,0.22);
  padding:14px 14px;
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}
.ga-consent__text{min-width:0;flex:1}
.ga-consent__title{
  font-weight:800;
  font-size:0.95rem;
  letter-spacing:-0.01em;
  margin:0 0 4px;
}
.ga-consent__desc{
  font-size:0.86rem;
  line-height:1.35;
  color:rgba(15,23,42,0.85);
}
.ga-consent__link{
  color:#2563eb;
  font-weight:700;
  text-decoration:none;
  white-space:nowrap;
}
.ga-consent__link:hover{ text-decoration:underline; }
.ga-consent__actions{
  display:flex;
  gap:8px;
  align-items:center;
  flex-wrap:wrap;
  flex-shrink:0;
}
.ga-btn{
  appearance:none;
  border:1px solid transparent;
  border-radius:12px;
  padding:10px 12px;
  font-size:0.86rem;
  font-weight:800;
  cursor:pointer;
  line-height:1;
  transition:transform .12s ease, box-shadow .2s ease, background .2s ease, border-color .2s ease, opacity .2s ease;
  user-select:none;
}
.ga-btn:active{ transform:translateY(1px); }
.ga-btn--primary{
  background:linear-gradient(135deg,#2563eb 0%, #4f46e5 60%, #7c3aed 100%);
  color:#fff;
  box-shadow:0 10px 24px rgba(37,99,235,0.30);
}
.ga-btn--primary:hover{ box-shadow:0 12px 30px rgba(37,99,235,0.38); }
.ga-btn--secondary{
  background:rgba(15,23,42,0.04);
  border-color:rgba(15,23,42,0.14);
  color:#0f172a;
}
.ga-btn--secondary:hover{ background:rgba(15,23,42,0.07); }
.ga-consent--hidden{ opacity:0; transform:translateY(8px); transition:opacity .22s ease, transform .22s ease; pointer-events:none; }
@media (max-width:560px){
  .ga-consent{ left:12px; bottom:12px; width:calc(100vw - 24px); }
  .ga-consent__card{ flex-direction:column; align-items:stretch; }
  .ga-consent__actions{ justify-content:flex-end; }
}

