.analytics-consent[hidden] { display:none; }

.analytics-consent {
  position:fixed;
  z-index:10000;
  left:50%;
  bottom:24px;
  box-sizing:border-box;
  width:min(860px, calc(100vw - 40px));
  display:grid;
  grid-template-columns:52px minmax(0, 1fr) auto;
  align-items:center;
  gap:18px;
  padding:18px;
  border:1px solid rgba(21,25,34,.12);
  border-radius:22px;
  background:rgba(255,255,255,.97);
  color:#151922;
  box-shadow:0 24px 70px rgba(15,19,27,.18), 0 3px 12px rgba(15,19,27,.08);
  transform:translateX(-50%);
  animation:analytics-consent-in .32s cubic-bezier(.2,.8,.2,1) both;
  -webkit-backdrop-filter:blur(16px);
  backdrop-filter:blur(16px);
}

.analytics-consent::before {
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:5px;
  border-radius:22px 0 0 22px;
  background:#90d418;
}

.analytics-consent__icon {
  width:52px;
  height:52px;
  display:grid;
  place-items:center;
  border-radius:16px;
  background:#edf8d9;
  color:#3d7112;
}

.analytics-consent__icon svg { display:block; }
.analytics-consent__copy { min-width:0; display:grid; gap:3px; }
.analytics-consent__eyebrow {
  color:#5d7d28;
  font-size:11px;
  line-height:16px;
  font-weight:750;
  letter-spacing:.09em;
  text-transform:uppercase;
}
.analytics-consent__copy strong { font-size:19px; line-height:25px; letter-spacing:-.015em; }
.analytics-consent__copy p { max-width:520px; margin:0; color:#666b73; font-size:13px; line-height:19px; }
.analytics-consent__copy a { color:#323943; font-weight:600; text-decoration-thickness:1px; text-underline-offset:3px; }
.analytics-consent__copy a:hover { color:#151922; }

.analytics-consent__actions {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
}
.analytics-consent__actions button {
  min-width:158px;
  min-height:46px;
  box-sizing:border-box;
  padding:10px 15px;
  border-radius:12px;
  font:650 13px/18px Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
  white-space:nowrap;
  cursor:pointer;
  transition:background-color .18s ease, border-color .18s ease, transform .18s ease, box-shadow .18s ease;
}
.analytics-consent__secondary { border:1px solid #d9dce1; background:#f4f5f6; color:#292d34; }
.analytics-consent__secondary:hover { border-color:#c8ccd2; background:#e9ebed; }
.analytics-consent__primary { border:1px solid #90d418; background:#90d418; color:#14200b; }
.analytics-consent__primary:hover { border-color:#83c410; background:#83c410; box-shadow:0 6px 16px rgba(102,154,21,.2); }
.analytics-consent__actions button:active { transform:translateY(1px); }
.analytics-consent__actions button:focus-visible { outline:3px solid rgba(132,190,50,.42); outline-offset:3px; }

@keyframes analytics-consent-in {
  from { opacity:0; transform:translate(-50%, 16px); }
  to { opacity:1; transform:translate(-50%, 0); }
}

@media (max-width:820px) {
  .analytics-consent { grid-template-columns:48px minmax(0, 1fr); }
  .analytics-consent__icon { width:48px; height:48px; border-radius:14px; }
  .analytics-consent__actions { grid-column:1 / -1; }
  .analytics-consent__actions button { width:100%; min-width:0; }
}

@media (max-width:560px) {
  .analytics-consent {
    bottom:0;
    width:100%;
    display:flex;
    flex-direction:column;
    align-items:stretch;
    gap:12px;
    padding:17px 16px calc(16px + env(safe-area-inset-bottom));
    border-width:1px 0 0;
    border-radius:22px 22px 0 0;
    background:#fff;
    box-shadow:0 -16px 46px rgba(15,19,27,.15);
  }
  .analytics-consent::before { inset:0 18px auto; width:auto; height:4px; border-radius:0 0 5px 5px; }
  .analytics-consent__icon { display:none; }
  .analytics-consent__copy { display:block; width:100%; }
  .analytics-consent__eyebrow,
  .analytics-consent__copy strong { display:block; }
  .analytics-consent__copy strong { margin-top:2px; font-size:18px; line-height:23px; }
  .analytics-consent__copy p {
    width:100%;
    max-width:none;
    margin-top:7px;
    font-size:13px;
    line-height:19px;
    overflow-wrap:anywhere;
  }
  .analytics-consent__actions { width:100%; grid-template-columns:1fr; gap:8px; }
  .analytics-consent__actions button { min-height:45px; white-space:normal; }
}

@media (prefers-reduced-motion:reduce) {
  .analytics-consent { animation:none; }
  .analytics-consent__actions button { transition:none; }
}
