.analytics-panel { position: fixed; z-index: 5; bottom: 1rem; right: 1rem; width: min(560px, calc(100% - 2rem)); max-height: calc(100dvh - 2rem); overflow: auto; padding: 1.4rem; border: 1px solid var(--forest); background: var(--warm-white); color: var(--charcoal); box-shadow: 0 8px 32px #0f3d2e33; }
.analytics-panel[hidden] { display: none; }
.analytics-panel h2 { margin: 0 0 .55rem; font-size: 1.25rem; letter-spacing: normal; line-height: 1.3; }
.analytics-panel p { margin: 0 0 .8rem; font-size: .9rem; }
.analytics-actions { display: flex; flex-wrap: wrap; gap: .6rem; }
.analytics-actions button { flex: 1; min-width: 140px; min-height: 44px; padding: .6rem .75rem; font: inherit; font-size: .88rem; cursor: pointer; color: var(--forest); background: var(--warm-white); border: 1px solid var(--forest); border-radius: 2px; }
.analytics-actions button:hover { background: var(--soft-sage); }
.analytics-settings-button { padding: 0; border: 0; background: transparent; color: inherit; text-decoration: underline; font: inherit; cursor: pointer; min-height: 44px; }
.footer-privacy { display:flex; align-items:center; flex-wrap:wrap; gap:1rem; font-size:.875rem; padding-bottom:1rem; }
.privacy-copy { max-width: 800px; padding-block: 4rem; }
.privacy-copy h1 { font-size: clamp(2.5rem, 6vw, 4rem); }
.privacy-copy h2 { font-size:1.45rem; color:var(--forest); margin-top:2rem; }
@media(max-width:480px) { .analytics-panel { padding:1rem; } .analytics-actions button { min-width:110px; } }
