.heat-consent[hidden] { display: none; }
.heat-consent { position: fixed; z-index: 180; left: 20px; right: 20px; bottom: 20px; max-width: 1120px; margin: auto; padding: 18px 22px; background: #fff; color: #1e1f22; border: 1px solid #ded8d2; border-top: 4px solid #f05a24; border-radius: 10px; box-shadow: 0 5px 32px #0002; display: flex; align-items: center; gap: 24px; }
.heat-consent strong { font-size: 1rem; }
.heat-consent p { margin: 5px 0 0; font-size: .85rem; line-height: 1.6; color: #4e5257; }
.heat-consent a { text-decoration: underline; margin-left: .35em; color: #91320d; }
.heat-consent-actions { display: flex; gap: 10px; flex-shrink: 0; }
.heat-consent button { padding: 10px 16px; border-radius: 6px; border: 1px solid #8b3e22; color: #7b2b10; background: #fff; cursor: pointer; font-size: .9rem; font-weight: 700; min-height: 44px; }
.heat-consent button:hover { background: #fff2eb; }
.heat-consent button:disabled { opacity: .5; cursor: not-allowed; }
.heat-consent button:focus-visible, .heat-privacy-settings:focus-visible { outline: 3px solid #096fc4; outline-offset: 3px; }
.heat-privacy-settings { border: 0; color: inherit; background: none; text-decoration: underline; cursor: pointer; font-size: .8rem; padding: 10px; }
.heat-preview-events { padding: 14px 24px; background: #f0f6ff; border: 1px solid #b4c6dc; color: #19385a; font-size: 13px; overflow-wrap: anywhere; }
.heat-preview-events summary { cursor: pointer; font-weight: 700; }
.heat-preview-events li { margin-block: 8px; font-family: ui-monospace, monospace; }
.heat-privacy-article { max-width: 820px; margin: auto; }
.heat-privacy-article h2 { font-size: 1.4rem; margin-top: 32px; }
.heat-privacy-article a { text-decoration: underline; }
@media (max-width: 680px) { .heat-consent { left: 10px; right: 10px; bottom: 10px; padding: 14px; flex-direction: column; align-items: stretch; gap: 12px; max-height: 65vh; overflow: auto; } .heat-consent-actions { justify-content: stretch; } .heat-consent-actions button { flex: 1; } }
