#cookie-consent .cookie-summary,
#cookie-consent .cookie-details-btn { display: none; }
#cookie-consent .cookie-actions { display: flex; align-items: center; }
#cookie-consent button:focus-visible,
#scrollToTopBtn:focus-visible { outline: 3px solid #00577b; outline-offset: 3px; }
#scrollToTopBtn {
  display: none; position: fixed; bottom: 20px; right: 20px;
  z-index: 10000000000; width: 48px; height: 52px; padding: 0;
  border: 1px solid white; background: #009fda; color: white;
  cursor: pointer; font-size: 24px; box-shadow: 0 2px 10px rgba(0,0,0,.3);
}
#scrollToTopBtn:hover { background: #15a8de; }
@media (max-width: 767px) {
  #cookie-consent {
    left: 10px; right: 64px; bottom: calc(10px + env(safe-area-inset-bottom, 0px));
    width: auto; padding: 12px; flex-direction: column; align-items: stretch;
    text-align: left; background: rgba(255,255,255,.97); border-radius: 4px;
    max-height: calc(100vh - 100px); max-height: calc(100dvh - 100px); overflow-y: auto;
  }
  #cookie-consent .cookie-summary { display: block; font-size: 16px; line-height: 1.4; }
  #cookie-consent #cookie-details { display: none; margin: 10px 0 0; font-size: 14px; line-height: 1.45; }
  #cookie-consent.is-expanded #cookie-details { display: block; }
  #cookie-consent .cookie-actions { justify-content: space-between; gap: 8px; margin-top: 8px; }
  #cookie-consent button { margin: 0; padding: 8px 10px; min-height: 44px; transform: none; font-size: 14px; }
  #cookie-consent button span { transform: none; }
  #cookie-consent .cookie-details-btn { display: block; background: transparent; color: #006c94; padding-left: 0; text-decoration: underline; }
  #scrollToTopBtn { right: 10px; width: 44px; height: 44px; bottom: calc(10px + env(safe-area-inset-bottom, 0px)); }
}
