/* Self-serve onboarding (public/onboarding.js): the create-business screen and the Overview checklist. */
.onboarding-create { width: min(100%, 560px); }
.onboarding-create h1 { margin-top: 6px; }
.onboarding-create form { margin-top: 18px; }
.onboarding-eyebrow { margin: 22px 0 0; font-size: 11px; font-weight: 600; letter-spacing: 0.08em; color: #5542ce; }
.onboarding-row { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.onboarding-promise { list-style: none; margin: 4px 0 16px; padding: 14px 16px; border-radius: 12px; background: #eeebff; display: grid; gap: 10px; }
.onboarding-promise li { display: flex; gap: 10px; align-items: flex-start; font-size: 13px; line-height: 1.45; color: #2c2f4a; }
.onboarding-promise .icon { width: 18px; height: 18px; flex: none; color: #5542ce; margin-top: 1px; }
.onboarding-create .auth-message:empty { display: none; }
.onboarding-create .auth-link { display: block; margin-top: 10px; }

.onboarding-checklist { margin-bottom: 18px; padding: 18px 20px 8px; background: linear-gradient(180deg, #f6f4ff, #fcfcff 60%); }
.onboarding-head { display: flex; justify-content: space-between; align-items: flex-start; gap: 12px; }
.onboarding-head h2 { margin: 0; font-size: 17px; }
.onboarding-head p { margin: 4px 0 0; color: #777b96; font-size: 12px; }
.onboarding-dismiss { display: grid; place-items: center; width: 32px; height: 32px; border-radius: 8px; background: transparent; color: #777b96; }
.onboarding-dismiss:hover { background: #eeebff; color: #101326; }
.onboarding-dismiss .icon { width: 16px; height: 16px; }
.onboarding-progress { appearance: none; width: 100%; height: 6px; margin: 12px 0 6px; border: 0; border-radius: 99px; background: #e5e3f6; overflow: hidden; }
.onboarding-progress::-webkit-progress-bar { background: #e5e3f6; border-radius: 99px; }
.onboarding-progress::-webkit-progress-value { background: #5542ce; border-radius: 99px; transition: width 0.4s ease; }
.onboarding-progress::-moz-progress-bar { background: #5542ce; border-radius: 99px; }
.onboarding-steps { list-style: none; margin: 0; padding: 0; }
.onboarding-step { display: grid; grid-template-columns: 34px 1fr auto; gap: 12px; align-items: center; padding: 12px 0; border-top: 1px solid #e8e7f4; }
.onboarding-step:first-child { border-top: 0; }
.onboarding-mark { display: grid; place-items: center; width: 34px; height: 34px; border-radius: 50%; background: #eeebff; color: #5542ce; }
.onboarding-mark .icon { width: 17px; height: 17px; }
.onboarding-step.is-done .onboarding-mark { background: #e3f4ea; color: #24814b; }
.onboarding-step.is-next .onboarding-mark { background: #5542ce; color: #fff; box-shadow: 0 0 0 4px #5542ce22; }
.onboarding-copy strong { display: block; font-size: 13px; }
.onboarding-copy p { margin: 3px 0 0; font-size: 12px; line-height: 1.5; color: #62667f; }
.onboarding-step.is-done .onboarding-copy strong { color: #62667f; }
.onboarding-step.is-done .onboarding-copy p { display: none; }
.onboarding-actions { display: flex; gap: 6px; flex-wrap: wrap; justify-content: flex-end; }
.onboarding-actions .button { margin: 0; white-space: nowrap; }
.onboarding-done, .onboarding-soon { font-size: 11px; font-weight: 600; padding: 4px 9px; border-radius: 99px; }
.onboarding-done { color: #24814b; background: #e3f4ea; }
.onboarding-soon { color: #6b5a12; background: #f8f0cf; }
.onboarding-loading { padding: 8px 0 14px; color: #777b96; }

.onboarding-dialog { width: min(92vw, 520px); border: 0; border-radius: 16px; padding: 22px 24px; box-shadow: 0 20px 70px #0003; color: #101326; }
.onboarding-dialog::backdrop { background: #101c3699; }
.onboarding-dialog h2 { margin: 0 0 14px; font-size: 18px; padding-right: 36px; }
.onboarding-dialog-close { position: absolute; top: 14px; right: 14px; }
.onboarding-dialog-close button { display: grid; place-items: center; width: 32px; height: 32px; border-radius: 8px; background: transparent; color: #777b96; }
.onboarding-dialog-close .icon { width: 16px; height: 16px; }
.onboarding-dialog-actions { display: flex; gap: 8px; flex-wrap: wrap; margin-top: 12px; }
.onboarding-search { display: grid; grid-template-columns: 110px 1fr auto; gap: 10px; align-items: end; }
.onboarding-search label.field { margin-bottom: 0; }
.onboarding-search .button { display: inline-flex; gap: 6px; align-items: center; }
.onboarding-search .button .icon { width: 14px; height: 14px; }
.onboarding-numbers { list-style: none; padding: 0; margin: 14px 0 6px; max-height: 300px; overflow: auto; }
.onboarding-numbers li { display: flex; justify-content: space-between; align-items: center; padding: 9px 4px; border-top: 1px solid #ecebf6; font-variant-numeric: tabular-nums; }
.onboarding-confirm { margin-top: 14px; padding: 14px; border-radius: 12px; background: #f6f4ff; }
.onboarding-confirm p { margin: 0 0 8px; line-height: 1.5; }
.onboarding-check { display: flex; gap: 8px; align-items: center; margin: 8px 0 0; font-size: 13px; }
.onboarding-check input { width: auto; min-height: 0; }
.onboarding-dialog .auth-link { margin-top: 12px; background: none; color: #5542ce; padding: 0; }

@media (max-width: 640px) {
  .onboarding-row { grid-template-columns: 1fr; gap: 0; }
  .onboarding-step { grid-template-columns: 30px 1fr; }
  .onboarding-actions { grid-column: 2; justify-content: flex-start; }
  .onboarding-search { grid-template-columns: 1fr; }
}
@media (prefers-reduced-motion: reduce) {
  .onboarding-progress::-webkit-progress-value { transition: none; }
}
