/* Optional analytics consent — isolated from the core game and account UI. */
.analytics-consent {
    position: fixed;
    z-index: 80;
    right: 22px;
    bottom: 22px;
    display: grid;
    grid-template-columns: 46px minmax(0, 1fr);
    gap: 13px 15px;
    width: min(520px, calc(100vw - 32px));
    padding: 19px;
    border: 1px solid rgba(132, 255, 229, .58);
    border-radius: 22px;
    background: radial-gradient(circle at 92% 8%, rgba(241, 73, 173, .24), transparent 12rem), linear-gradient(145deg, rgba(57, 27, 126, .97), rgba(8, 6, 40, .98));
    box-shadow: inset 0 1px rgba(255, 255, 255, .25), 0 8px 0 rgba(18, 5, 47, .9), 0 28px 70px rgba(0, 0, 0, .58), 0 0 35px rgba(44, 232, 207, .14);
    color: #eee9ff;
    backdrop-filter: blur(18px) saturate(145%);
}

.analytics-consent[hidden] { display: none; }

.analytics-consent-mark {
    display: grid;
    place-items: center;
    width: 43px;
    height: 43px;
    border-radius: 14px;
    background: linear-gradient(145deg, #fff3a7, #ffc554 45%, #ed58a7 74%, #5f2b91);
    box-shadow: inset 0 2px rgba(255, 255, 255, .72), 0 5px 0 #5b1c61, 0 0 22px rgba(255, 86, 178, .38);
    color: #2e0b48;
    font: 950 italic 21px/1 Inter, Arial, sans-serif;
}

.analytics-consent-copy strong {
    color: #fff1b7;
    font-size: 18px;
    letter-spacing: -.02em;
}

.analytics-consent-copy p {
    margin: 5px 0 7px;
    color: #d7d0e8;
    font-size: 12px;
    line-height: 1.48;
}

.analytics-consent-copy a {
    color: #91ffe4;
    font-size: 11px;
    font-weight: 850;
}

.analytics-consent-actions,
.preference-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 9px;
}

.analytics-consent-actions { grid-column: 1 / -1; }

.consent-button {
    min-height: 43px;
    padding: 0 15px;
    border: 1px solid rgba(166, 255, 234, .55);
    border-radius: 13px;
    color: #fff;
    font: 900 10px/1 Inter, Arial, sans-serif;
    letter-spacing: .08em;
    cursor: pointer;
    transition: transform .18s ease, filter .18s ease, box-shadow .18s ease;
}

.consent-button:hover,
.consent-button:focus-visible { transform: translateY(-2px); filter: brightness(1.1); }
.consent-button-quiet { background: linear-gradient(145deg, #4e2b91, #1a0c4b); box-shadow: 0 4px 0 #100426; }
.consent-button-bright { border-color: #fff0a2; background: linear-gradient(145deg, #ffe98c, #ffb94c 48%, #e84f9e); box-shadow: 0 4px 0 #7d2059; color: #35103f; }
.consent-button[aria-pressed="true"] { outline: 2px solid #7affe2; outline-offset: 3px; }

.analytics-preference-row { align-items: center; }
.preference-actions { min-width: 285px; }
.analytics-preference-status { margin-top: 12px !important; color: #9affe7 !important; font-weight: 800; }

@media (max-width: 680px) {
    .analytics-consent { right: 16px; bottom: 16px; padding: 16px; }
    .analytics-consent-actions,
    .preference-actions { grid-template-columns: 1fr; min-width: 0; width: 100%; }
    .analytics-preference-row { align-items: flex-start; }
}

@media (prefers-reduced-motion: reduce) {
    .consent-button { transition: none; }
}
