:root {
  -webkit-tap-highlight-color: transparent;
}

/* Hide visual scrollbars globally while preserving scroll behavior on every page/container. */
html,
body,
* {
  -ms-overflow-style: none;
  scrollbar-width: none;
}

*::-webkit-scrollbar {
  width: 0 !important;
  height: 0 !important;
  display: none;
}

/* Global interaction reset.
   Goal: keep controls visually stable on tap/focus and remove bright outline/ring effects
   from rounded interactive surfaces without touching text inputs. */

:where(
  a,
  button,
  [role="button"],
  input[type="button"],
  input[type="submit"],
  input[type="reset"],
  label[for],
  summary,
  [data-action],
  [data-open],
  [data-sheet-open],
  [data-modal-open],
  [data-navtab],
  .is-clickable
) {
  -webkit-tap-highlight-color: transparent;
  -webkit-touch-callout: none;
}

:where(
  a,
  button,
  [role="button"],
  input[type="button"],
  input[type="submit"],
  input[type="reset"],
  label[for],
  summary,
  [data-action],
  [data-open],
  [data-sheet-open],
  [data-modal-open],
  [data-navtab],
  .is-clickable
):focus,
:where(
  a,
  button,
  [role="button"],
  input[type="button"],
  input[type="submit"],
  input[type="reset"],
  label[for],
  summary,
  [data-action],
  [data-open],
  [data-sheet-open],
  [data-modal-open],
  [data-navtab],
  .is-clickable
):focus-visible {
  outline: none !important;
}

:where(
  a,
  button,
  [role="button"],
  input[type="button"],
  input[type="submit"],
  input[type="reset"],
  label[for],
  summary,
  [data-action],
  [data-open],
  [data-sheet-open],
  [data-modal-open],
  [data-navtab],
  .is-clickable
)::-moz-focus-inner {
  border: 0;
}

/* Rounded controls that should never show a white stroke/ring/shine on press or focus. */
:where(
  .tabChip,
  .ppPill,
  .app-pill,
  .fnMonthChip,
  .choice-pill,
  .app-nav__item,
  .app-bottom-nav__item,
  .app-icon-btn,
  .app-icon-action,
  .btn,
  .modal-primary-action,
  .modal-secondary-action,
  .app-popover-menu__btn,
  .gTypeCard,
  .modal-option-card,
  .fnFlowKindCard,
  .fnBalanceRow,
  .gGoalPromptChip,
  .gStep2Tab,
  .task-flow__back,
  .tfBack,
  .tfBackBtn,
  .ppIconBtn
) {
  outline: none !important;
}

:where(
  .tabChip,
  .ppPill,
  .app-pill,
  .fnMonthChip,
  .choice-pill,
  .app-nav__item,
  .app-bottom-nav__item
)::before {
  content: none !important;
}

:where(
  .tabChip,
  .ppPill,
  .app-pill,
  .fnMonthChip,
  .choice-pill,
  .app-nav__item,
  .app-bottom-nav__item,
  .app-icon-btn,
  .app-icon-action,
  .btn,
  .modal-primary-action,
  .modal-secondary-action,
  .app-popover-menu__btn,
  .gTypeCard,
  .modal-option-card,
  .fnFlowKindCard,
  .fnBalanceRow,
  .gGoalPromptChip,
  .gStep2Tab,
  .task-flow__back,
  .tfBack,
  .tfBackBtn,
  .ppIconBtn
):is(:hover, :active, :focus, :focus-visible, .is-active, .on, .is-selected, [aria-selected="true"], [aria-pressed="true"]) {
  transform: none !important;
  filter: none !important;
  outline: none !important;
  border-color: transparent !important;
}

:where(
  a,
  button,
  [role="button"],
  input[type="button"],
  input[type="submit"],
  input[type="reset"],
  label[for],
  summary,
  [data-action],
  [data-open],
  [data-sheet-open],
  [data-modal-open],
  [data-navtab],
  .is-clickable
):focus-visible {
  outline: 2px solid var(--focus-ring, rgba(132, 170, 255, 0.55)) !important;
  outline-offset: 2px;
}

/* Remove ring-like shadows while keeping depth. */
:where(
  .tabChip,
  .ppPill,
  .app-pill,
  .fnMonthChip,
  .choice-pill,
  .app-nav__item,
  .app-bottom-nav__item,
  .app-icon-btn,
  .app-icon-action,
  .btn,
  .modal-primary-action,
  .modal-secondary-action,
  .app-popover-menu__btn,
  .gTypeCard,
  .modal-option-card,
  .fnFlowKindCard,
  .fnBalanceRow,
  .gGoalPromptChip,
  .gStep2Tab,
  .task-flow__back,
  .tfBack,
  .tfBackBtn,
  .ppIconBtn
):is(:focus, :focus-visible, :active) {
  box-shadow: none !important;
}
