.approved-member-native-dialog {
  box-sizing: border-box;
  min-height: 0;
  padding: 0;
  border: 0;
  color: #10231b;
  font: inherit;
}

.approved-member-native-dialog::backdrop {
  background: rgb(0 0 0 / 24%);
}

.approved-member-native-dialog .putts-choice-dialog{position:relative}
.approved-member-native-dialog .putts-choice-title{padding-right:4.5rem}
.member-choice-cancel{position:absolute;top:.65rem;right:.65rem;min-width:44px;min-height:44px;padding:.5rem;border:0;border-radius:.5rem;background:transparent;color:#226f54;font:inherit;font-size:.85rem;cursor:pointer}
.member-choice-cancel:focus-visible{outline:2px solid #226f54;outline-offset:2px}

/* The accepted putts overlay is absolutely positioned. Give it a real
   viewport-sized containing block while preserving the approved inner card. */
.approved-member-dialog-putts,
.approved-member-dialog-image-batch {
  position: fixed;
  inset: var(--member-visible-top,0px) 0 auto;
  width: 100vw;
  max-width: none;
  height: var(--member-visible-height,100dvh);
  max-height: none;
  margin: 0;
  overflow: hidden;
  background: transparent;
}

.approved-member-dialog-putts::backdrop,
.approved-member-dialog-image-batch::backdrop {
  background: transparent;
}

.approved-member-dialog-putts > .putts-choice-overlay,
.approved-member-dialog-image-batch > .putts-choice-overlay {
  position: absolute;
  inset: 0;
}

/* Profile and install retain the approved sheet markup and sit in one bounded
   native bottom-sheet surface rather than inheriting the UA dialog rectangle. */
.approved-member-dialog-profile,
.approved-member-dialog-install,
.approved-member-dialog-picker,
.approved-badge-dialog:has(> .course-picker) {
  position: fixed;
  inset: auto 0 0;
  width: min(100%, 30rem);
  max-width: 30rem;
  max-height: min(90dvh, 48rem);
  margin: auto;
  overflow: auto;
  border-radius: 1.35rem 1.35rem 0 0;
  background: #fff;
  box-shadow: 0 -.4rem 1.8rem rgb(16 35 27 / 14%);
}

.approved-member-dialog-picker,
.approved-badge-dialog:has(> .course-picker) {
  inset: calc(var(--member-visible-top,0px) + .5rem) 0 auto;
  width: min(calc(100% - 1rem),30rem);
  height: min(calc(var(--member-visible-height,100dvh) - 1rem),44rem);
  max-height: calc(var(--member-visible-height,100dvh) - 1rem);
  margin: 0 auto;
  padding:0;
  overflow: hidden;
  border-radius: 1.35rem;
}
.approved-badge-dialog:has(> .course-picker)::before { display:none; }

.approved-member-dialog-picker > .course-picker {
  height: 100%;
}

@media (min-width: 40rem) {
  .approved-member-dialog-profile,
  .approved-member-dialog-install,
  .approved-member-dialog-picker {
    bottom: 1rem;
    border-radius: 1.35rem;
  }
  .approved-member-dialog-picker { bottom:auto; }
}

@media (prefers-reduced-motion: reduce) {
  .approved-member-native-dialog,
  .approved-member-native-dialog * {
    transition: none !important;
  }
}

/* Keep profile labels and actions legible in the existing golf sheet. */
.approved-member-dialog-profile .sheet-header { padding:1.25rem 1rem .35rem; }
.approved-member-dialog-profile .sheet-header p { font-size:.875rem; line-height:1.4; }
.approved-member-dialog-profile .account-action-bar { position:sticky; top:0; z-index:2; gap:1rem; padding:.35rem 0 .65rem; background:#fff; }
.approved-member-dialog-profile .account-action-bar .account-save-action { min-width:4.5rem; padding:.55rem .9rem; border-radius:.65rem; background:#226f54; color:#fff; }
.approved-member-dialog-profile .account-field-group label { margin-bottom:.85rem; }
.approved-member-dialog-profile .account-field-group label > span,
.approved-member-dialog-profile .account-labelled-field > span { color:#465e53; font-size:.875rem; font-weight:600; }
.approved-member-dialog-profile .account-field-group label input,
.approved-member-dialog-profile .account-labelled-field input { border:1px solid #b9c8bf; border-radius:.7rem; background:#fbfcfa; font:inherit; font-size:1rem; }
.approved-member-dialog-profile { scroll-padding-block:4.5rem 1.5rem; }
.approved-member-dialog-profile input { scroll-margin-block:1.5rem; }

/* Override the legacy action color and joined name-field borders in this dialog only. */
.approved-member-dialog-profile .account-action-bar .account-save-action { color:#fff!important; }
.approved-member-dialog-profile .account-field-group label:first-of-type input,
.approved-member-dialog-profile .account-field-group label:last-of-type input { border:1px solid #b9c8bf; border-radius:.7rem; }
.approved-member-dialog-profile .account-action-bar .account-save-action:disabled { opacity:.65; }

/* Pointer-opened dialog buttons retain focus without the initial keyboard ring.
   The first keydown restores ordinary :focus-visible styling before navigation. */
.approved-member-native-dialog[data-member-pointer-focus="true"] button:focus,
.member-settings-native-dialog[data-member-pointer-focus="true"] button:focus { outline:none; }

.approved-member-dialog-choices { width:min(calc(100% - 2rem),28rem); max-height:80dvh; overflow:auto; padding:1rem; border-radius:1rem; background:#fff; }
.member-simple-choice header { display:flex; align-items:center; justify-content:space-between; gap:1rem; }
.member-simple-choice h2 { margin:0; font-size:1rem; }
.member-simple-choice button { min-height:2.75rem; border:0; background:#fff; color:#226f54; font:inherit; }
.member-simple-choice [role="group"] { display:grid; margin-top:.5rem; }
.member-simple-choice [data-member-choice-id] { padding:.75rem; border-top:1px solid #dce5e6; text-align:left; border-radius:.4rem; }
.member-simple-choice [aria-pressed="true"] { background:#e8f5dd; font-weight:700; }

.approved-member-dialog-discard-entry { width:min(calc(100% - 2rem),26rem); max-height:80dvh; overflow:auto; padding:1.25rem; border-radius:1rem; background:#fff; }
.approved-member-dialog-discard-entry [data-action="approved-member-discard-entry"] { font-weight:700; }

/* Capture sheets share the visible viewport; only their content scrolls. */
.approved-member-dialog-choices,
.approved-member-dialog-discard-entry {
  position:fixed;
  inset:calc(var(--member-visible-top,0px) + 1rem) 0 auto;
  margin:0 auto;
  max-height:calc(var(--member-visible-height,100dvh) - 2rem);
  overflow:hidden;
}
.approved-member-dialog-choices .member-simple-choice,
.approved-member-dialog-discard-entry .member-simple-choice {
  display:flex;
  flex-direction:column;
  min-height:0;
  max-height:calc(var(--member-visible-height,100dvh) - 4.5rem);
}
.member-simple-choice > :is(header,h2,p) { flex:0 0 auto; }
.member-simple-choice > [role="group"] { min-height:0; overflow:auto; overscroll-behavior:contain; }
.approved-member-dialog-putts .putts-choice-dialog,
.approved-member-dialog-image-batch .putts-choice-dialog { max-height:calc(100% - 2rem); overflow:auto; overscroll-behavior:contain; }
