/* Scoped help surface; load after the existing modus styles */
body[data-modus] dialog.modus-dialog.modus-guide-dialog {
  --modus-guide-ivory: #f7f5ee;
  --modus-guide-ink: #171914;
  --modus-guide-green: #407b47;
  box-sizing: border-box;
  width: min(620px, calc(100vw - 32px));
  min-width: 0;
  max-width: calc(100vw - 32px);
  max-height: calc(100vh - 32px);
  max-height: calc(100dvh - 32px);
  margin: auto;
  padding: clamp(16px, 3vw, 24px);
  overflow: auto;
  overscroll-behavior: contain;
  border: 1px solid var(--modus-guide-ink);
  border-radius: 2px;
  background: var(--modus-guide-ivory);
  color: var(--modus-guide-ink);
  box-shadow: none;
  font: 16px/1.5 "Helvetica Neue", Helvetica, Arial, sans-serif;
  overflow-wrap: anywhere;
  color-scheme: light;
  scrollbar-color: var(--modus-guide-ink) var(--modus-guide-ivory);
}

body[data-modus] dialog.modus-dialog.modus-guide-dialog::backdrop {
  background: rgb(23 25 20 / .3);
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

body[data-modus] .modus-guide-dialog .modus-guide-header {
  display: flex;
  align-items: flex-start;
  flex-wrap: wrap;
  gap: 12px;
  margin: 0 0 24px;
}

body[data-modus] .modus-guide-dialog .modus-guide-header h2 {
  flex: 1 1 220px;
  min-width: 0;
  margin: 0;
  color: var(--modus-guide-ink);
  font: 650 1.5em/1.2 "Helvetica Neue", Helvetica, Arial, sans-serif;
  letter-spacing: -.02em;
  text-wrap: balance;
}

body[data-modus] .modus-guide-dialog form {
  display: block;
  min-width: 0;
  margin: 0;
  padding: 0;
}

body[data-modus] .modus-guide-dialog .modus-guide-steps {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 18px;
  margin: 0;
  padding: 0 0 0 24px;
  list-style: decimal;
}

body[data-modus] .modus-guide-dialog .modus-guide-steps li {
  min-width: 0;
  margin: 0;
  padding: 0 0 0 4px;
}

body[data-modus] .modus-guide-dialog .modus-guide-steps li::marker {
  color: var(--modus-guide-green);
  font-weight: 650;
}

body[data-modus] .modus-guide-dialog .modus-guide-steps h3 {
  margin: 0 0 5px;
  color: var(--modus-guide-ink);
  font: 650 1.0625em/1.3 "Helvetica Neue", Helvetica, Arial, sans-serif;
  letter-spacing: 0;
}

body[data-modus] .modus-guide-dialog .modus-guide-steps p {
  margin: 0;
  color: var(--modus-guide-ink);
  font: 1em/1.5 Georgia, "Times New Roman", serif;
}

body[data-modus] .modus-guide-dialog button.modus-guide-close {
  flex: 0 0 auto;
  min-height: 44px;
  margin: 0;
  padding: 8px 12px;
  border: 1px solid var(--modus-guide-ink);
  border-radius: 7px;
  background: var(--modus-guide-ivory);
  color: var(--modus-guide-ink);
  box-shadow: none;
  font: 600 .9375em/1.4 "Helvetica Neue", Helvetica, Arial, sans-serif;
  white-space: normal;
  cursor: pointer;
  transition: none;
}

body[data-modus] .modus-guide-dialog button.modus-guide-close:hover {
  text-decoration: underline;
  text-underline-offset: .2em;
}

body[data-modus] .modus-guide-dialog :is(h2, button):focus-visible {
  outline: 2px solid var(--modus-guide-ink);
  outline-offset: 3px;
}

body[data-modus] .modus-guide-dialog ::selection {
  background: var(--modus-guide-green);
  color: var(--modus-guide-ivory);
}

body[data-modus][data-modus-reading="large"] dialog.modus-dialog.modus-guide-dialog {
  font-size: 18px;
}
