/* Reserve the same 100px creative area for every consent/fill result and size.
   Keep the label and whitespace even when no creative is inserted. */
.study-ad-slot {
  box-sizing: border-box;
  inline-size: min(728px, calc(100% - 2.5rem));
  min-block-size: calc(100px + 4rem + 2px);
  margin: 3rem auto;
  padding-block: 1rem;
  border-block: 1px solid var(--ja-line, #304653);
  color: var(--ja-muted, #b0c1cb);
}
.study-ad-slot .ad-label {
  margin: 0 0 .75rem;
  font-size: .75rem;
  line-height: 1.5;
  text-align: center;
}
.study-ad-surface {
  display: flex;
  align-items: center;
  justify-content: center;
  inline-size: 100%;
  block-size: 100px;
  /* A narrower viewport never crops a visible, clickable creative. Its resize
     observer retires the original slot, without requesting a replacement. */
  overflow: hidden;
}
.study-ad-surface > .adsbygoogle { flex: 0 0 auto; }
#privacy-choices:disabled {
  color: var(--ja-muted, #b0c1cb);
  cursor: default;
  text-decoration: none;
}
#privacy-choices-status {
  flex-basis: 100%;
  margin: 0;
  font-size: .875rem;
  color: var(--ja-muted, #b0c1cb);
}
#privacy-choices-status:empty { display: none; }
.privacy-panel { flex-basis: 100%; padding: 1.25rem; border: 1px solid var(--ja-line, #304653); border-radius: 1rem; }
.privacy-panel summary { cursor: pointer; font-weight: 700; min-height: 44px; }
.privacy-panel p { max-width: 70ch; line-height: 1.6; }
.privacy-actions { display: flex; flex-wrap: wrap; gap: .75rem; }
.privacy-panel button { font: inherit; min-height: 44px; padding: .6rem 1rem; border: 1px solid #8195a1; border-radius: .65rem; background: #172735; color: #f1f5f9; cursor: pointer; }
.privacy-panel button:disabled { cursor: default; opacity: .65; }
.privacy-panel :is(button, summary, a):focus-visible { outline: 3px solid #91d9c1; outline-offset: 4px; }
.banner-privacy-section { inline-size: min(820px, calc(100% - 2.5rem)); margin: 2rem auto; }
.banner-privacy-section .privacy-panel { background: var(--ja-surface, #172735); }
.banner-privacy-section .privacy-actions button { flex: 1 1 180px; }
.banner-privacy-section .privacy-panel summary span { color: var(--ja-muted, #b0c1cb); font-weight: 400; }
.study-ad-surface[hidden] { display: none; }

.banner-privacy-section > h2 { margin-block-end: .5rem; }
