.analytics-consent {
  position: fixed;
  z-index: 1000;
  inset: auto clamp(.75rem, 2vw, 2rem) max(.75rem, env(safe-area-inset-bottom));
  display: grid;
  grid-template-columns: 3rem minmax(0, 1fr) auto;
  align-items: center;
  gap: clamp(1rem, 2vw, 2rem);
  padding: clamp(1.25rem, 2.4vw, 2.25rem);
  padding-right: 4rem;
  max-height: calc(100dvh - 1.5rem);
  overflow-y: auto;
  overscroll-behavior: contain;
  color: var(--white, #f6f4ef);
  background: rgba(7, 20, 46, .98);
  border: 2px solid var(--yellow, #ffdb00);
  border-radius: 16px;
  box-shadow: 0 1rem 4rem rgba(0, 0, 0, .45);
  font-family: var(--sans, "Segoe UI", Arial, sans-serif);
}
.analytics-consent[hidden], [data-analytics-settings][hidden] { display: none !important; }
.analytics-consent-icon { width: 3rem; height: 3rem; color: var(--yellow, #ffdb00); }
.analytics-consent-icon svg { width: 100%; height: 100%; }
.analytics-consent h2 { margin: 0 0 .65rem; font-family: var(--serif, Georgia, serif); font-size: clamp(1.5rem, 2.1vw, 2rem); line-height: 1.1; font-weight: 400; letter-spacing: -.025em; }
.analytics-consent p { margin: 0; max-width: 53rem; color: var(--muted, #b8c0d2); font-size: .875rem; line-height: 1.6; font-weight: 400; }
.analytics-consent a { color: var(--white, #f6f4ef); text-decoration: underline; text-underline-offset: .2em; }
.analytics-consent-actions { display: flex; gap: .75rem; }
.analytics-consent-actions button { min-height: 3rem; padding: .8rem 1.1rem; border: 1px solid var(--yellow, #ffdb00); border-radius: .2rem; background: transparent; color: var(--yellow, #ffdb00); font: 600 .8rem/1.3 var(--sans, "Segoe UI", Arial, sans-serif); cursor: pointer; white-space: nowrap; }
.analytics-consent-actions [data-analytics-accept] { color: var(--ink, #02091d); background: var(--yellow, #ffdb00); }
.analytics-consent-actions button:hover { box-shadow: inset 0 0 0 1px var(--yellow, #ffdb00); }
.analytics-consent-close { position: absolute; right: .6rem; top: .6rem; display: grid; place-items: center; width: 2.75rem; height: 2.75rem; padding: .65rem; border: 0; background: transparent; color: var(--muted, #b8c0d2); cursor: pointer; }
.analytics-consent-close svg { width: 100%; height: 100%; }
.analytics-consent-close:hover { color: var(--yellow, #ffdb00); }
[data-analytics-settings] { padding: 0; border: 0; background: none; color: inherit; font: inherit; letter-spacing: inherit; text-transform: inherit; cursor: pointer; }
[data-analytics-settings]:hover { text-decoration: underline; text-underline-offset: .25em; }
.analytics-consent :is(button, a):focus-visible, [data-analytics-settings]:focus-visible { outline: 2px solid var(--yellow, #ffdb00); outline-offset: 4px; }
@media (max-width: 1100px) {
  .analytics-consent { grid-template-columns: 2.5rem minmax(0, 1fr); gap: 1rem; }
  .analytics-consent-icon { width: 2.5rem; height: 2.5rem; align-self: start; }
  .analytics-consent-actions { grid-column: 2; }
}
@media (max-width: 600px) {
  .analytics-consent { display: block; padding: 1.35rem; }
  .analytics-consent-icon { display: none; }
  .analytics-consent h2 { max-width: 90%; font-size: 1.65rem; }
  .analytics-consent-actions { margin-top: 1.15rem; display: grid; grid-template-columns: 1fr 1fr; gap: .65rem; }
  .analytics-consent-actions button { white-space: normal; padding-inline: .6rem; }
}
@media print { .analytics-consent, [data-analytics-settings] { display: none !important; } }
