.onboarding-dialog{width:min(640px,calc(100% - 28px));max-width:640px;padding:0;max-height:calc(var(--onboarding-viewport,100dvh) - 28px);border:1px solid var(--line);border-radius:22px;overflow:hidden}
.onboarding-dialog[open]{display:flex;flex-direction:column}
.onboarding-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:25px 27px 19px;border-top:3px solid var(--orange);flex-shrink:0;background:#fcfcf8}
.onboarding-heading .eyebrow{display:block;font-size:9px;color:var(--green);margin-bottom:8px}
.onboarding-heading h2{font-size:27px;line-height:1.2;letter-spacing:-.9px;outline:none}
.onboarding-heading>.icon-button{position:static;display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;padding:0;border:1px solid var(--line);border-radius:11px;background:var(--paper)}
.onboarding-progress{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;list-style:none;margin:0;padding:0 27px 17px;border-bottom:1px solid var(--line);background:#fcfcf8;flex-shrink:0}
.onboarding-progress li{display:flex;align-items:center;gap:7px;font-size:10px;color:var(--muted);min-width:0;white-space:nowrap}
.onboarding-progress li>span{display:grid;place-items:center;flex:0 0 22px;height:22px;border:1px solid var(--line);border-radius:50%;font-size:9px;font-weight:650}
.onboarding-progress li[aria-current=step]{color:var(--forest);font-weight:700}.onboarding-progress li[aria-current=step]>span{background:var(--forest);color:#fff;border-color:var(--forest)}
.onboarding-progress li.is-done>span{background:#e7eedf;border-color:#e7eedf;color:var(--green)}
.onboarding-body{padding:23px 27px 17px;overflow:auto;overscroll-behavior:contain;min-height:0;flex:1}
.onboarding-loading{color:var(--muted);font-size:13px;padding:20px 0}
.onboarding-lead{font-size:14px;line-height:1.75;color:var(--ink)}
.onboarding-copy{font-size:13px;line-height:1.75;color:var(--muted)}
.onboarding-route{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:18px 14px;background:var(--forest);border-radius:13px;color:#f6f6f0;margin:20px 0}
.onboarding-route>span{flex:1;text-align:center}.onboarding-route b{display:block;font-size:13px;font-weight:650;letter-spacing:-.1px}.onboarding-route small{display:block;color:#c6d3bd;font-size:10px;margin-top:6px}.onboarding-route>i{font-style:normal;color:#b9caa9}
.onboarding-roadmap{list-style:none;padding:0;margin:19px 0 0;display:grid;gap:16px}.onboarding-roadmap li{display:flex;align-items:flex-start;gap:12px}
.onboarding-roadmap li>[data-icon]{display:grid;place-items:center;width:34px;height:34px;flex:0 0 34px;border-radius:9px;background:#eaf0e3;color:var(--green)}
.onboarding-roadmap strong{display:block;font-size:12px;font-weight:650;margin-top:1px}.onboarding-roadmap p{font-size:12px;line-height:1.6;color:var(--muted);margin-top:4px}
.onboarding-soft-note{font-size:11px;line-height:1.75;color:var(--muted);margin-top:17px}
.onboarding-instructions{padding:0 0 0 19px;margin:18px 0;display:grid;gap:12px;font-size:13px;line-height:1.7;color:var(--ink)}.onboarding-instructions li{padding-left:3px}.onboarding-instructions li::marker{color:var(--green);font-weight:650}
.onboarding-links{display:grid;gap:10px;margin-top:22px}.onboarding-card .button{min-height:46px;text-decoration:none;font-size:12px;justify-content:center}.onboarding-settings{width:100%;margin-top:2px}
.onboarding-help{border:1px solid var(--line);border-radius:10px;margin-top:17px;background:#f5f6ee}.onboarding-help summary{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px;font-size:11px;min-height:44px;color:var(--green);font-weight:600}.onboarding-help summary svg{width:15px;height:15px}.onboarding-help>div{padding:0 13px 13px}.onboarding-help p{font-size:11px;line-height:1.7;color:var(--muted);margin:8px 0 12px}.onboarding-help img{display:block;width:100%;height:auto;border:1px solid var(--line);border-radius:7px}.onboarding-help .onboarding-garmin-help img{width:auto;max-width:100%;max-height:440px;margin:0 auto}
.onboarding-key-form{margin-top:17px}#onboarding-key-form label{font-size:12px;margin-top:20px}#onboarding-key{min-height:48px;font-size:16px}#onboarding-key-help{font-size:10px;margin-top:9px}
.onboarding-connected{display:flex;align-items:center;gap:10px;background:#eaf2e4;color:var(--green);border-radius:10px;padding:14px;margin-top:17px}.onboarding-connected strong{font-size:12px}.onboarding-connected p{font-size:11px;margin-top:5px;overflow-wrap:anywhere}
.onboarding-verification{background:#f4eee0;padding:15px;border-radius:11px;margin-top:17px}.onboarding-verification p{font-size:12px;line-height:1.7}.onboarding-verification .button{margin-top:12px}
.onboarding-connection-label{font-size:11px;line-height:1.65;color:var(--green);background:#eaf2e4;padding:9px 12px;border-radius:8px;margin-bottom:16px;overflow-wrap:anywhere}
.onboarding-return-note{font-size:12px;line-height:1.7;background:#edf1e7;border-left:3px solid var(--green);padding:12px 14px;border-radius:0 8px 8px 0;margin-top:18px}
.onboarding-message{font-size:12px;line-height:1.7;margin-top:14px;color:var(--muted)}.onboarding-message:empty{display:none}.onboarding-message.is-error{color:#a54032}
.onboarding-footer{padding:15px 27px 8px;border-top:1px solid var(--line);background:#fcfcf8;flex-shrink:0}.onboarding-footer>div{display:flex;gap:10px}.onboarding-footer .button{min-height:46px;font-size:12px}#onboarding-next{flex:1}.onboarding-later{display:block;min-height:39px;margin:2px auto 0;padding:8px 14px;font-size:11px;color:var(--muted);text-decoration:underline;text-underline-offset:3px}
.onboarding-done{padding:3px 0 8px}.onboarding-done-mark{display:grid;place-items:center;width:54px;height:54px;border-radius:50%;background:#e5eeda;color:var(--green);margin:0 0 20px}.onboarding-done-mark svg{width:28px;height:28px}.onboarding-done ul{list-style:none;padding:0;margin:19px 0;display:grid;gap:13px}.onboarding-done li{display:flex;align-items:center;gap:9px;font-size:12px;line-height:1.7}.onboarding-done li svg{width:16px;height:16px;color:var(--green)}.onboarding-done .text-button{margin-top:16px;min-height:44px}
@media(max-width:540px){.onboarding-dialog{width:calc(100% - 20px);max-height:calc(var(--onboarding-viewport,100dvh) - 20px);border-radius:17px}.onboarding-heading{padding:18px 18px 15px;gap:9px}.onboarding-heading h2{font-size:23px;letter-spacing:-.65px}.onboarding-heading .eyebrow{font-size:8px;letter-spacing:1.2px}.onboarding-heading>.icon-button{flex-basis:44px;width:44px;height:44px}.onboarding-progress{padding:0 18px 13px;gap:6px}.onboarding-progress li{gap:4px;font-size:9px}.onboarding-progress li>span{flex-basis:19px;height:19px;font-size:8px}.onboarding-body{padding:19px 18px 15px}.onboarding-lead{font-size:13px;line-height:1.7}.onboarding-copy,.onboarding-instructions{font-size:12px}.onboarding-instructions{gap:10px;margin-top:16px}.onboarding-route{padding:15px 8px;margin:16px 0;gap:5px}.onboarding-route b{font-size:12px}.onboarding-route small{font-size:9px}.onboarding-roadmap{gap:13px}.onboarding-roadmap strong{font-size:12px}.onboarding-roadmap p{font-size:11px}.onboarding-footer{padding:12px 18px 6px}.onboarding-footer .button{font-size:11px;padding:10px 13px}.onboarding-soft-note{font-size:10px;margin-top:14px}}
@media(max-width:350px){.onboarding-progress{padding-left:14px;padding-right:14px;gap:4px}.onboarding-progress li{font-size:8px}.onboarding-heading,.onboarding-body{padding-left:15px;padding-right:15px}.onboarding-heading h2{font-size:21px}.onboarding-route b{font-size:11px}}
@media(prefers-reduced-motion:reduce){.onboarding-dialog *{scroll-behavior:auto!important}}

.onboarding-email-note{font-size:11px;line-height:1.7;background:#f4eee0;padding:12px 14px;border-radius:9px;margin-top:17px}
