/* FAST1 cookie bottom — never full-screen freeze */
#jke-cookie-banner {
  position: fixed !important;
  inset: auto 0 0 0 !important;
  top: auto !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  z-index: 2147483000 !important;
  display: flex !important;
  align-items: flex-end !important;
  justify-content: center !important;
  padding: 0.75rem !important;
  background: transparent !important;
  pointer-events: none !important;
}
#jke-cookie-banner[hidden] {
  display: none !important;
}
#jke-cookie-banner .jke-cookie-banner__card,
.jke-cookie-banner__card {
  pointer-events: auto !important;
  max-width: 560px !important;
  width: 100% !important;
  margin: 0 auto !important;
  background: #fff !important;
  border-radius: 16px 16px 12px 12px !important;
  box-shadow: 0 -8px 40px rgba(15, 23, 42, 0.25) !important;
  padding: 1rem 1.1rem 1.15rem !important;
}
html.jke-cookie-pending body,
html.jke-cookie-pending {
  overflow: auto !important;
}
html.jke-cookie-pending body.pub > * {
  pointer-events: auto !important;
  user-select: auto !important;
  filter: none !important;
  opacity: 1 !important;
}

/* Hard cookie wall — must choose before using the site */
html.jke-cookie-pending,
html.jke-cookie-pending body,
body.jke-cookie-open {
  overflow: hidden !important;
  overscroll-behavior: none;
  touch-action: none;
}

/* Block ALL page interaction while consent is pending */
/* ADDR4: removed full-page pointer-events:none — blocked address typing */

/* Full-screen dim + centre card — not a thin bottom bar you can ignore */
#jke-cookie-banner {
  position: fixed !important;
  inset: 0 !important;
  left: 0 !important;
  right: 0 !important;
  top: 0 !important;
  bottom: 0 !important;
  z-index: 2147483000 !important;
  display: flex !important;
  align-items: center;
  justify-content: center;
  padding: 1rem !important;
  padding-bottom: calc(1rem + env(safe-area-inset-bottom, 0px)) !important;
  background: rgba(11, 31, 58, 0.72) !important;
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
  pointer-events: auto !important;
  box-sizing: border-box;
}

#jke-cookie-banner[hidden] {
  display: none !important;
}

#jke-cookie-banner .jke-cookie-banner__card {
  pointer-events: auto !important;
  width: 100%;
  max-width: 420px;
  margin: 0 auto;
  background: #0b1f3a;
  color: #f8fafc;
  border-radius: 16px;
  box-shadow: 0 20px 50px rgba(0, 0, 0, 0.45);
  padding: 1.25rem 1.2rem 1.2rem;
  border: 1px solid rgba(255, 255, 255, 0.1);
}

/* Kill book “compact bar” that let people book under the banner */
body.pub--book.jke-cookie-open #jke-cookie-banner,
body.pub--book.jke-cookie-book-compact #jke-cookie-banner,
body.pub--book.jke-cookie-book-compact.pub-step-1 #jke-cookie-banner,
body.pub--book.jke-cookie-book-compact.pub-step-2 #jke-cookie-banner,
body.pub--book.jke-cookie-book-compact.pub-step-3 #jke-cookie-banner {
  bottom: 0 !important;
  top: 0 !important;
  z-index: 2147483000 !important;
  padding: 1rem !important;
}

body.pub--book.jke-cookie-book-compact .jke-cookie-banner__text,
body.pub--book.jke-cookie-book-compact .jke-cookie-banner__fine {
  display: block !important;
}

body.pub--book.jke-cookie-book-compact .jke-cookie-banner__title {
  font-size: 1.05rem !important;
  margin: 0 0 0.4rem !important;
}

body.pub--book.jke-cookie-book-compact .jke-cookie-banner__card {
  padding: 1.25rem 1.2rem 1.2rem !important;
  max-width: 420px !important;
}

body.pub--book.jke-cookie-book-compact .jke-cookie-banner__actions {
  flex-direction: column !important;
  align-items: stretch !important;
}

body.pub--book.jke-cookie-book-compact .jke-cookie-banner__btn {
  width: 100% !important;
  min-height: 48px !important;
  font-size: 0.95rem !important;
}

/* Focus ring for a11y */
.jke-cookie-banner__btn:focus-visible {
  outline: 2px solid #f59e0b;
  outline-offset: 2px;
}
