.analytics-consent[hidden], .analytics-actions [hidden], .analytics-preferences { display: none; }
.analytics-ui-ready .analytics-preferences { display: block; }
.analytics-preferences { padding: 12px 24px; background: #1c1e20; color: #bcc5ce; font: 12px/1.5 'Golos Text', Arial, sans-serif; }
.analytics-preferences button { border: 0; padding: 5px 0; background: transparent; color: inherit; text-decoration: underline; text-underline-offset: 3px; cursor: pointer; font: inherit; }
.analytics-consent { position: fixed; bottom: 24px; right: 24px; z-index: 10000; width: min(620px, calc(100% - 48px)); box-sizing: border-box; display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 24px; padding: 22px 24px; border: 1px solid #41474d; background: #222629; color: #edf1f5; box-shadow: 0 12px 36px #0004; font: 13px/1.55 'Golos Text', Arial, sans-serif; max-height: calc(100dvh - 48px); overflow-y: auto; }
.analytics-consent::before { content: ''; position: absolute; top: 0; left: 24px; width: 36px; height: 2px; background: #bd905e; }
.analytics-consent h2 { margin: 0 0 8px; color: #aeb9c4; font: 500 10px/1.3 'Golos Text', Arial, sans-serif; letter-spacing: .14em; text-transform: uppercase; }
.analytics-consent p { margin: 0; }
.analytics-consent a { color: #c9d7e7; text-decoration: underline; text-underline-offset: 3px; }
.analytics-actions { display: flex; flex-direction: column; gap: 8px; }
.analytics-actions button { cursor: pointer; display: inline-flex; justify-content: space-between; align-items: center; gap: 18px; min-height: 44px; padding: 12px 16px; border: 1px solid #d9e4f0; border-radius: 0; background: #d9e4f0; color: #202528; font: 500 13px/1.3 'Golos Text', Arial, sans-serif; transition: background .16s, border-color .16s; }
.analytics-actions button:hover { background: #fff; border-color: #fff; }
.analytics-actions [data-analytics-reject] { background: transparent; color: #edf1f5; border-color: #73808d; }
.analytics-actions [data-analytics-reject]:hover { background: #353c42; }
.analytics-consent :focus-visible, .analytics-preferences :focus-visible { outline: 2px solid #d2ac80; outline-offset: 4px; }
.analytics-notice { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
@media (max-width: 600px) {
  .analytics-consent { right: 12px; bottom: 12px; width: calc(100% - 24px); padding: 18px; gap: 16px; grid-template-columns: 1fr; max-height: calc(100dvh - 24px); }
  .analytics-consent::before { left: 18px; }
  .analytics-actions { align-items: flex-end; }
  .analytics-actions button { min-width: 126px; }
}
@media (prefers-reduced-motion: reduce) { .analytics-actions button { transition: none; } }
