.analytics-consent {
  position: fixed; inset: auto 1rem 1rem auto; z-index: 1000;
  width: min(30rem, calc(100% - 2rem)); max-height: calc(100dvh - 2rem); overflow: auto;
  padding: 1.4rem; border: 1px solid #d9d9d9; border-top: 3px solid var(--red, #c82924);
  background: #fff; color: #171717; box-shadow: 0 6px 30px #0002;
  font-family: Inter, Arial, sans-serif; box-sizing: border-box;
}
.analytics-consent[hidden] { display: none; }
.analytics-consent h2 { margin: 0 0 .6rem; font-size: 1.125rem; line-height: 1.4; letter-spacing: normal; }
.analytics-consent p { margin: 0 0 1.1rem; font-size: 1rem; line-height: 1.55; color: #444; }
.analytics-consent a { color: #171717; text-decoration: underline; text-underline-offset: 3px; }
.analytics-actions { display: flex; flex-wrap: wrap; gap: .65rem; }
.analytics-actions button {
  flex: 1 1 7rem; padding: .75rem 1rem; border: 1px solid #222;
  background: #fff; color: #171717; cursor: pointer; font: 600 1rem/1.4 Inter, Arial, sans-serif;
}
.analytics-actions button:hover { background: #f0f0f0; }
.analytics-settings {
  appearance: none; border: 0; padding: .5rem 0; background: transparent; color: inherit;
  font: inherit; font-size: .875rem; text-decoration: underline; text-underline-offset: 3px; cursor: pointer;
}
.analytics-consent :focus-visible, .analytics-settings:focus-visible { outline: 2px solid #b5231f; outline-offset: 3px; }
