.privacy-settings { border: 0; padding: .6rem; background: transparent; color: var(--forest); text-decoration: underline; cursor: pointer; min-height: 44px; }
.analytics-choice { position: fixed; inset: auto 1rem 1rem auto; z-index: 40; width: min(35rem, calc(100% - 2rem)); max-height: 70dvh; overflow: auto; padding: 1.25rem; background: var(--paper); color: var(--ink); border: 1px solid var(--forest); box-shadow: 0 8px 32px #15211824; font-size: 1rem; }
.analytics-choice[hidden] { display: none; }
.analytics-choice h2 { font-family: var(--sans); font-size: 1.15rem; font-weight: 600; line-height: 1.4; letter-spacing: normal; }
.analytics-choice p { margin: .65rem 0; }
.analytics-actions { display: flex; gap: .65rem; flex-wrap: wrap; margin-top: .9rem; }
.analytics-actions button { flex: 1; border: 1px solid var(--forest); background: var(--paper); color: var(--forest); padding: .6rem .8rem; cursor: pointer; min-height: 44px; font-weight: 600; }
.analytics-actions button:hover { background: var(--cream); }
.analytics-actions button:disabled { opacity: .55; cursor: default; }
.analytics-choice a { text-underline-offset: .2em; }
.analytics-choice :focus-visible, .privacy-settings:focus-visible { outline: 3px solid var(--gold); outline-offset: 3px; }
.analytics-status { font-size: .875rem; }
.privacy-header { padding: 1rem clamp(1rem, 5vw, 4rem); display: flex; align-items: center; justify-content: space-between; gap: 1rem; border-bottom: 1px solid var(--line); }
.privacy-header img { width: 100px; height: auto; }
.privacy-page { max-width: 52rem; margin: 0 auto; padding: 2.5rem 1.25rem 4rem; }
.privacy-page h1 { font-family: var(--serif); font-size: clamp(2.5rem, 6vw, 4rem); line-height: 1.1; color: var(--forest); font-weight: 500; }
.privacy-page h2 { font-family: var(--sans); font-size: 1.25rem; line-height: 1.4; font-weight: 600; letter-spacing: normal; margin-top: 2rem; }
.privacy-page a { overflow-wrap: anywhere; }
@media (max-width: 420px) { .analytics-choice { inset: auto .5rem .5rem; width: calc(100% - 1rem); padding: 1rem; } }
