html,body{margin:0;padding:0;background:#f7f7f7}body{font-family:Gilroy,-apple-system,BlinkMacSystemFont,sans-serif;color:#333;-webkit-font-smoothing:antialiased}
.ir-onboarding{--ir-cta:#3234d0;--ir-red:#ff4c58;max-width:560px;width:100%;padding:0 20px 40px;margin:auto;min-height:100vh;min-height:100svh;display:flex;flex-direction:column}
.ir-onboarding,.ir-onboarding *{box-sizing:border-box}.ir-onboarding p,.ir-onboarding h1,.ir-onboarding h2{margin:0}.ir-onboarding button,.ir-onboarding a{font-family:inherit;-webkit-tap-highlight-color:transparent}.ir-onboarding button{cursor:pointer}.ir-onboarding a{color:var(--ir-cta);text-decoration:none}.ir-onboarding a:hover{text-decoration:underline;color:#2a2bb0}.ir-onboarding button:focus-visible,.ir-onboarding a:focus-visible{outline:3px solid var(--ir-cta);outline-offset:4px}.ir-onboarding main:focus{outline:none}
.ir-onboarding-header{display:flex;align-items:center;justify-content:space-between;padding:18px 2px 14px;border-bottom:1px solid #e2e2e2;gap:12px}.ir-wordmark{font-size:20px;font-weight:800;letter-spacing:-.02em;color:#272727;background:none;border:0;padding:0}.ir-onboarding-header>span{font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#878787}
#ir-onboarding-screen{display:flex;flex-direction:column;flex:1;min-width:0}.ir-screen-enter{animation:ir-onboarding-fade .3s ease}.ir-intro{padding:28px 2px 20px}.ir-back+.ir-intro{padding-top:14px}.ir-onboarding .ir-eyebrow{font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#e63946}.ir-onboarding h1{margin-top:8px;font-size:32px;line-height:1.1;font-weight:800;color:#272727;letter-spacing:-.02em;text-wrap:pretty}.ir-onboarding .ir-lead{margin-top:10px;font-size:16px;line-height:1.5;color:#3d4246;text-wrap:pretty}
.ir-device-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.ir-card{background:#fff;border:1px solid #e2e2e2;border-radius:16px;box-shadow:0 1px 2px rgba(0,0,0,.06)}button.ir-card:hover{border-color:var(--ir-cta);box-shadow:0 4px 16px rgba(0,0,0,.08)}button.ir-card:active{transform:scale(.98)}.ir-device-card{display:flex;flex-direction:column;align-items:center;gap:10px;padding:16px 12px 14px;text-align:center;min-width:0}.ir-device-card strong{display:block;font-size:16px;font-weight:700;color:#272727}.ir-device-card small{display:block;font-size:12px;font-weight:500;color:#878787;margin-top:3px}.ir-image{display:block;object-fit:contain;width:100%;height:110px;border-radius:10px;background:#f7f7f7}.ir-onboarding .ir-picker-note{margin-top:22px;font-size:13px;color:#878787;text-align:center;line-height:1.5}
.ir-back{align-self:flex-start;background:none;border:0;padding:14px 0 0;font-size:13px;font-weight:600;color:#878787}.ir-back:hover{color:var(--ir-cta)}.ir-stack{display:flex;flex-direction:column;gap:12px}.ir-setup-card{display:flex;align-items:center;gap:14px;padding:14px 16px;text-align:left}.ir-setup-copy{flex:1;min-width:0}.ir-setup-copy strong{display:block;font-size:18px;font-weight:700;color:#272727}.ir-setup-copy small{display:block;font-size:13px;font-weight:500;color:#878787;line-height:1.4;margin-top:4px}.ir-setup-copy span{display:block;font-size:12px;font-weight:700;color:var(--ir-cta);margin-top:8px}.ir-setup-card img{width:96px;height:96px;flex-shrink:0}
.ir-parts{padding:16px 18px}.ir-parts h2{font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#878787;margin-bottom:10px}.ir-parts ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.ir-parts li{display:flex;align-items:baseline;gap:10px;font-size:15px;line-height:1.45;font-weight:500}.ir-parts li::before{content:'✓';color:#e63946;font-weight:800}
.ir-actions{position:sticky;bottom:0;margin-top:auto;padding:16px 0 max(12px,env(safe-area-inset-bottom));background:linear-gradient(to top,#f7f7f7 70%,rgba(247,247,247,0));z-index:2}.ir-primary{width:100%;background:var(--ir-cta);color:#fff;border:0;border-radius:10px;padding:17px;font-size:16px;font-weight:700}.ir-primary:hover{background:#2a2bb0}.ir-primary:active{transform:scale(.99)}.ir-onboarding .ir-helper{margin-top:10px;font-size:12px;color:#878787;text-align:center;line-height:1.5}
.ir-step-top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:14px}.ir-step-top .ir-back{padding:0;white-space:nowrap}.ir-step-top span{font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#878787;text-align:right}.ir-progress{height:6px;background:#f0f0f0;border-radius:999px;margin-top:14px;overflow:hidden;flex-shrink:0}.ir-progress div{height:100%;background:var(--ir-red);border-radius:999px;transition:width .35s ease}.ir-step{padding-top:22px;display:flex;flex-direction:column;gap:16px}.ir-illustration{padding:18px}.ir-illustration-inner{position:relative;width:300px;max-width:100%;aspect-ratio:1;margin:auto}.ir-illustration img{display:block;object-fit:contain;width:100%;height:100%}.ir-step-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.ir-step-meta h1{margin:0;font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#e63946}.ir-phase{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#3d4246;background:#f0f0f0;border-radius:999px;padding:4px 10px}.ir-onboarding .ir-step-text{margin-top:10px;font-size:17px;line-height:1.55;color:#272727;font-weight:500;text-wrap:pretty}.ir-onboarding .ir-note{margin-top:12px;background:#ffeef0;border-radius:10px;padding:12px 16px;font-size:14px;line-height:1.5;color:#e63946;font-weight:600}
.ir-fx{position:absolute;pointer-events:none;color:var(--ir-red)}.ir-pulse{width:52px;height:52px;margin:-26px 0 0 -26px;border-radius:999px;border:3px solid var(--ir-red);animation:ir-onboarding-pulse 1.8s ease-out infinite}.ir-dot{width:10px;height:10px;margin:-5px 0 0 -5px;border-radius:999px;background:var(--ir-red)}.ir-arrow{margin:-16px 0 0 -10px;font-size:30px;font-weight:800;line-height:1;text-shadow:0 1px 4px rgba(255,255,255,.9);animation:ir-onboarding-nudge-y 1.5s ease-in-out infinite}.ir-arrow-x{animation-name:ir-onboarding-nudge-x}
.ir-done-intro{padding:32px 2px 22px;text-align:center}.ir-tick{width:64px;height:64px;border-radius:999px;background:var(--ir-red);color:#fff;font-size:30px;font-weight:800;display:flex;align-items:center;justify-content:center;margin:auto}.ir-done-intro h1{margin-top:16px}.ir-guidelines{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.ir-guideline{padding:16px 12px;text-align:center}.ir-guideline strong{font-size:19px;font-weight:800;color:#e63946;letter-spacing:-.01em}.ir-guideline span{display:block;font-size:12px;font-weight:500;color:#878787;line-height:1.4;margin-top:5px}.ir-onboarding .ir-controls-title{margin:28px 0 12px;font-size:20px;font-weight:800;color:#272727;letter-spacing:-.01em}.ir-control{display:flex;gap:14px;align-items:center;padding:14px 16px}.ir-control img{width:76px;height:76px;flex-shrink:0;padding:6px}.ir-control h3{margin:0;font-size:15px;font-weight:700;color:#272727}.ir-control p{font-size:13px;line-height:1.5;color:#3d4246;font-weight:500;margin-top:3px}.ir-done-actions{display:flex;flex-direction:column;gap:10px;margin-top:24px}.ir-onboarding .ir-outline{display:block;text-align:center;background:#fff;color:var(--ir-cta);border:1.5px solid var(--ir-cta);border-radius:10px;padding:15px;font-size:15px;font-weight:700;text-decoration:none}.ir-onboarding .ir-outline:hover{background:var(--ir-cta);color:#fff}.ir-text-button{background:none;border:0;padding:10px;font-size:13px;font-weight:600;color:#878787}
@keyframes ir-onboarding-fade{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes ir-onboarding-pulse{0%{transform:scale(.35);opacity:.9}75%,100%{transform:scale(1.4);opacity:0}}@keyframes ir-onboarding-nudge-y{0%,100%{transform:translateY(-5px);opacity:.35}50%{transform:translateY(9px);opacity:1}}@keyframes ir-onboarding-nudge-x{0%,100%{transform:translateX(-5px);opacity:.35}50%{transform:translateX(9px);opacity:1}}
@media(prefers-reduced-motion:reduce){.ir-onboarding *{animation:none!important;transition:none!important}.ir-pulse{opacity:.5}}
@media(max-width:360px){.ir-onboarding-header>span{font-size:10px;letter-spacing:.1em}.ir-guideline{padding:14px 8px}.ir-guideline strong{font-size:17px}}
