#privacy-footer { position: fixed; z-index: 3; left: 0; right: 0; bottom: 0; height: calc(28px + env(safe-area-inset-bottom)); padding-bottom: env(safe-area-inset-bottom); background: #09251c; display: grid; place-items: center; }
#privacy-footer[hidden] { display: none; }
#privacy-open { min-height: 28px; height: 28px; padding: 3px 18px; border: 0; border-radius: 0; background: transparent; color: #c9d5c8; font: 12px -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; width: 100%; cursor: pointer; }
#privacy-open:focus-visible { outline: 2px solid #ddc584; outline-offset: -3px; }
#analytics-choice { width: min(430px, calc(100vw - 32px)); max-height: calc(100dvh - 32px); overflow: auto; border: 1px solid #b4c49166; border-radius: 16px; padding: 24px; color: #f5f3e9; background: #123a2b; font: 15px/1.5 -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
#analytics-choice::backdrop { background: #03150dcc; }
#analytics-choice h2 { margin: 0 0 12px; font-size: 23px; line-height: 1.2; }
#analytics-choice p { margin: 12px 0; }
#analytics-choice a { display: inline-block; margin-top: 14px; color: #ddc584; font-size: 13px; }
.analytics-actions { display: flex; gap: 10px; margin-top: 20px; }
.analytics-actions button { flex: 1; min-height: 48px; padding: 10px 8px; border: 1px solid #ddc584; border-radius: 8px; background: #ddc584; color: #102e22; font: inherit; font-weight: 650; cursor: pointer; }
@media (max-width: 350px) { .analytics-actions { flex-direction: column; } }
#analytics-choice .short { display: none; }
/* First visit: a slim bar along the bottom instead of a pop-up over the menu. */
#analytics-choice.banner { position: fixed; z-index: 10; inset: auto 0 0 0; margin: 0; width: auto; max-width: none; max-height: none; overflow: visible; border-width: 1px 0 0; border-radius: 14px 14px 0 0; padding: 12px 16px calc(12px + env(safe-area-inset-bottom)); font-size: 14px; line-height: 1.4; box-shadow: 0 -6px 24px #0008; display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 6px 16px; }
#analytics-choice.banner h2, #analytics-choice.banner .full { display: none; }
#analytics-choice.banner .short { display: inline; }
#analytics-choice.banner p { margin: 0; grid-column: 1; }
#analytics-choice.banner .analytics-actions { grid-column: 2; grid-row: 1 / span 2; margin: 0; flex-direction: column; gap: 8px; min-width: 116px; }
#analytics-choice.banner .analytics-actions button { min-height: 40px; padding: 6px 12px; }
#analytics-choice.banner > a { grid-column: 1; margin: 0; }
@media (max-width: 420px) { #analytics-choice.banner { grid-template-columns: 1fr; } #analytics-choice.banner .analytics-actions { grid-column: 1; grid-row: auto; flex-direction: row; } #analytics-choice.banner .analytics-actions button { flex: 1; } }

body.analytics-available #game-viewport { bottom: calc(28px + env(safe-area-inset-bottom)); padding-bottom: 0; }
body.analytics-available.privacy-in-game #game-viewport { bottom: 0; padding-bottom: env(safe-area-inset-bottom); }
body.analytics-available.analytics-banner-open #game-viewport, body.analytics-available.analytics-banner-open.privacy-in-game #game-viewport { bottom: var(--analytics-banner-h, 0px); padding-bottom: 0; }
