/* Website adapter for the shared BAMScreen app picker. Tokens are generated. */
html.bam-has-picker { scrollbar-gutter: stable; }
.bam-has-picker { --canvas: var(--bam-canvas); --ink: var(--bam-ink); --quiet: var(--bam-quiet); --surface: var(--bam-surface); }
.bam-has-picker .shell { padding-top: calc(var(--bam-metric-headerHeight) + var(--bam-spacing-screen)); }
.bam-picker-header {
  position: fixed;
  inset: 0 0 auto;
  height: var(--bam-metric-headerHeight);
  padding: var(--bam-metric-headerTopInset) var(--bam-spacing-screen) 0;
  display: flex;
  align-items: center;
  background: var(--canvas);
  z-index: 20;
}
.bam-picker-toggle, .bam-picker-link {
  color: var(--ink);
  font: inherit;
  font-size: var(--bam-type-title-fontSize);
  font-weight: var(--bam-type-title-fontWeight);
  letter-spacing: var(--bam-type-title-letterSpacing);
  line-height: 1;
  text-decoration: none;
  border: 0;
  background: none;
  padding: 0;
  cursor: pointer;
  transition: opacity var(--bam-motion-pressDuration), transform var(--bam-motion-pressDuration);
  -webkit-tap-highlight-color: transparent;
}
.bam-picker-toggle {
  display: inline-flex;
  align-items: center;
  gap: var(--bam-spacing-small);
  min-height: var(--bam-metric-minimumTapTarget);
}
.bam-picker-chevron {
  width: var(--bam-metric-compactGlyphSize);
  height: var(--bam-metric-compactGlyphSize);
  transition: transform var(--bam-motion-stateDuration);
}
.bam-picker-toggle[aria-expanded="true"] .bam-picker-chevron { transform: rotate(90deg); }
.bam-picker-toggle:active, .bam-picker-link:active { transform: scale(var(--bam-motion-pressScale)); opacity: var(--bam-motion-pressedOpacity); }
.bam-picker-toggle:focus-visible, .bam-picker-link:focus-visible { outline: var(--bam-spacing-hairline) solid var(--ink); outline-offset: var(--bam-spacing-xSmall); }
.bam-picker-overlay {
  position: fixed;
  inset: var(--bam-metric-headerHeight) 0 0;
  z-index: 19;
  padding: 0 var(--bam-spacing-screen);
  overflow: auto;
  overscroll-behavior: contain;
}
.bam-picker-overlay[hidden] { display: none; }
.bam-picker-list { display: flex; flex-direction: column; align-items: flex-start; }
.bam-picker-link {
  display: flex;
  align-items: center;
  min-height: var(--bam-metric-fieldHeight);
  min-width: var(--bam-metric-minimumTapTarget);
  opacity: 0;
  visibility: hidden;
  transform: translateY(calc(-1 * var(--bam-spacing-medium)));
  pointer-events: none;
  transition: opacity var(--bam-motion-stateDuration) ease-out, transform var(--bam-motion-stateDuration) ease-out;
}
.bam-picker-link.is-visible { opacity: 1; visibility: visible; transform: none; pointer-events: auto; }
[data-bam-content] { transition: filter var(--bam-motion-stateDuration), opacity var(--bam-motion-stateDuration); }
.bam-picker-open [data-bam-content] { filter: blur(var(--bam-metric-appPickerBlurRadius)); opacity: var(--bam-opacity-subtle); pointer-events: none; }
@media (prefers-reduced-motion: reduce) {
  .bam-picker-toggle, .bam-picker-chevron, .bam-picker-link, [data-bam-content] { transition-duration: var(--bam-motion-pressDuration); }
  .bam-picker-link { transform: none; }
}
@media (prefers-reduced-transparency: reduce) {
  .bam-picker-open [data-bam-content] { filter: none; opacity: 0; }
  .bam-picker-overlay { background: var(--canvas); }
}

/* The picker title is the product heading; keep legal-page headings visible. */
.bam-has-picker .hub-content > h1 { display: none; }
.bam-has-picker .hub-content > .lede { margin-top: 0; }
.bam-picker-toggle h1 { margin: 0; max-width: none; font: inherit; line-height: inherit; letter-spacing: inherit; }
.bam-picker-home {
  margin-top: var(--bam-spacing-section);
  color: var(--quiet);
  font-size: var(--bam-type-bodyStrong-fontSize);
  font-weight: var(--bam-type-bodyStrong-fontWeight);
  letter-spacing: var(--bam-type-bodyStrong-letterSpacing);
  min-height: var(--bam-metric-minimumTapTarget);
}

/* A product benefit anchors the content without repeating the picker title. */
.bam-has-picker .hub-intro-title {
  margin: 0 0 var(--bam-spacing-large);
  max-width: 22ch;
  color: var(--ink);
  font-size: var(--bam-type-hero-fontSize);
  font-weight: var(--bam-type-hero-fontWeight);
  letter-spacing: var(--bam-type-hero-letterSpacing);
  line-height: 1.1;
}
.bam-has-picker .hub-intro-title + .lede { margin-bottom: 0; }
.bam-has-picker .hub-content > .links { margin-top: var(--bam-spacing-section); }

/* Explicit parent navigation also works when a legal page is opened directly. */
.bam-app-back {
  display: inline-flex;
  align-items: center;
  gap: var(--bam-spacing-small);
  min-height: var(--bam-metric-minimumTapTarget);
  margin-bottom: var(--bam-spacing-section);
  color: var(--quiet);
  font-size: var(--bam-type-bodyStrong-fontSize);
  font-weight: var(--bam-type-bodyStrong-fontWeight);
  letter-spacing: var(--bam-type-bodyStrong-letterSpacing);
  text-decoration: none;
}
.bam-app-back:hover { color: var(--ink); }
.bam-app-back:focus-visible { outline: var(--bam-spacing-hairline) solid var(--ink); outline-offset: var(--bam-spacing-xSmall); }
