/* D1 consent controls: equal choice prominence, no remote assets. */
.privacy-link { border: 0; background: none; padding: 0; color: inherit; font: inherit;
  text-decoration: underline; text-underline-offset: .22em; cursor: pointer; }
.analytics-choice { position: fixed; z-index: 20; inset: auto 1rem 1rem; margin: 0 auto;
  max-width: 66rem; padding: 1.15rem 1.35rem; background: #fcfaf6; color: #24160d;
  border: 1px solid #9c8a7d; border-left: 4px solid #fd750a;
  box-shadow: 0 .5rem 2rem #24160d26; font-family: inherit; }
.analytics-choice[hidden] { display: none; }
.analytics-choice h2 { font-size: 1.05rem; margin: 0 0 .45rem; }
.analytics-choice p { font-size: .9rem; line-height: 1.5; margin: 0 0 .75rem; max-width: 64ch; }
.analytics-actions { display: flex; flex-wrap: wrap; gap: .65rem; align-items: center; }
.analytics-button { border: 1px solid #24160d; border-radius: 0; background: #fcfaf6;
  color: #24160d; font: inherit; font-size: .9rem; font-weight: 600; line-height: 1.35;
  padding: .7rem .95rem; min-height: 44px; cursor: pointer; }
.analytics-button:hover { background: #f0e8df; }
.analytics-button:focus-visible, .privacy-link:focus-visible {
  outline: 3px solid #24160d; outline-offset: 4px; }
.analytics-preferences { color: #24160d; background: #fcfaf6; padding: 1.6rem;
  border: 1px solid #9c8a7d; border-top: 4px solid #fd750a; max-width: 37rem;
  width: calc(100% - 2rem); max-height: calc(100dvh - 2rem); overflow-y: auto;
  font-family: inherit; }
.analytics-preferences::backdrop { background: #24160d80; }
.analytics-preferences h2 { margin: 0 0 1rem; font-size: 1.5rem; }
.analytics-preferences p { line-height: 1.6; font-size: .95rem; }
.analytics-preferences .privacy-close { margin-top: 1.1rem; }
.analytics-status { font-weight: 600; }
@media (max-width: 540px) {
  .analytics-choice { inset-inline: .5rem; bottom: .5rem; padding: .9rem; }
  .analytics-actions > .analytics-button { flex: 1 1 8.5rem; }
  .analytics-preferences { padding: 1.15rem; }
}
