.onboarding-overlay[hidden]{display:none!important}
.onboarding-overlay{position:fixed;inset:0;z-index:1400;display:grid;place-items:center;padding:20px}
.onboarding-backdrop{position:absolute;inset:0;background:rgba(0,6,12,.82);backdrop-filter:blur(8px)}
.onboarding-dialog{position:relative;width:min(920px,100%);max-height:calc(100vh - 40px);overflow:auto;border:1px solid #2d607d;border-radius:22px;background:radial-gradient(circle at 50% -20%,rgba(32,199,240,.14),transparent 42%),linear-gradient(145deg,#08243a,#03121f 72%);box-shadow:0 30px 90px rgba(0,0,0,.62),0 0 0 1px rgba(32,199,240,.05);padding:28px 30px 24px;color:#fff}
.onboarding-close{position:absolute;right:15px;top:15px;width:38px;height:38px;border:1px solid #315b74;border-radius:50%;background:#061722;color:#dcebf3;font:400 25px/1 Montserrat,Arial,sans-serif;cursor:pointer;transition:.18s ease}
.onboarding-close:hover,.onboarding-close:focus-visible{border-color:#20c7f0;color:#fff;transform:scale(1.05);outline:none}
.onboarding-logo{display:block;width:148px;height:auto;margin:0 auto 8px}
.onboarding-kicker{margin:0;text-align:center;color:#20c7f0;font:800 10px/1.2 Montserrat,Arial,sans-serif;letter-spacing:.14em}
.onboarding-dialog h2{margin:6px 0 0;text-align:center;font:48px/.95 'Bebas Neue',Impact,sans-serif;letter-spacing:.025em}
.onboarding-intro{max-width:760px;margin:10px auto 18px;text-align:center;color:#b9ccd7;font:500 13px/1.6 Montserrat,Arial,sans-serif}
.onboarding-intro b{color:#fff}
.onboarding-hero{display:grid;grid-template-columns:220px 1fr;gap:18px;align-items:center;max-width:820px;margin:0 auto 18px;padding:14px 16px;border:1px solid #214b62;border-radius:18px;background:linear-gradient(145deg,rgba(7,29,45,.94),rgba(4,19,31,.98))}
.onboarding-coach{display:block;width:100%;max-width:190px;height:auto;margin:0 auto;filter:drop-shadow(0 12px 28px rgba(0,0,0,.35))}
.onboarding-speech{position:relative;padding:18px 18px 16px;border:1px solid rgba(32,199,240,.22);border-radius:16px;background:rgba(7,24,39,.72)}
.onboarding-speech:before{content:"";position:absolute;left:-10px;top:50%;transform:translateY(-50%) rotate(45deg);width:18px;height:18px;background:rgba(7,24,39,.72);border-left:1px solid rgba(32,199,240,.22);border-bottom:1px solid rgba(32,199,240,.22)}
.onboarding-speech strong{display:block;margin:0 0 6px;color:#20c7f0;font:26px/1 'Bebas Neue',Impact,sans-serif;letter-spacing:.03em}
.onboarding-speech p{margin:0;color:#d9e6ed;font:500 12px/1.65 Montserrat,Arial,sans-serif}
.onboarding-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.onboarding-step{position:relative;display:grid;grid-template-columns:44px 1fr;gap:12px;align-items:start;min-height:156px;padding:17px;border:1px solid #214b62;border-radius:15px;background:linear-gradient(145deg,rgba(7,29,45,.95),rgba(4,19,31,.95))}
.onboarding-step-number{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:#0b344a;border:1px solid #20c7f0;color:#20c7f0;font:28px/1 'Bebas Neue',Impact,sans-serif;box-shadow:0 0 20px rgba(32,199,240,.08)}
.onboarding-step strong{display:block;margin-top:3px;color:#fff;font:24px/1 'Bebas Neue',Impact,sans-serif;letter-spacing:.02em}
.onboarding-step p{margin:8px 0 0;color:#a9bfcc;font:500 11px/1.55 Montserrat,Arial,sans-serif}
.onboarding-step b{color:#fff}
.onboarding-primary{display:block;width:min(420px,100%);min-height:50px;margin:20px auto 0;border:1px solid #ff5368;border-radius:11px;background:linear-gradient(180deg,#ff3650,#d90f2b);box-shadow:0 10px 30px rgba(245,32,56,.25);color:#fff;font:800 12px/1.2 Montserrat,Arial,sans-serif;letter-spacing:.025em;cursor:pointer;transition:transform .16s ease,box-shadow .16s ease,filter .16s ease}
.onboarding-primary:hover,.onboarding-primary:focus-visible{transform:translateY(-2px);filter:brightness(1.09);box-shadow:0 14px 34px rgba(245,32,56,.4);outline:none}
.onboarding-once{margin:10px 0 0;text-align:center;color:#6f8d9f;font:500 9px/1.4 Montserrat,Arial,sans-serif}
.onboarding-open{overflow:hidden}
.onboarding-open .mobile-sticky-predictions,.onboarding-open .mobile-nav,.onboarding-open .pwa-install-card{visibility:hidden!important;pointer-events:none!important}
@media(max-width:760px){
.onboarding-overlay{padding:12px;align-items:end}
.onboarding-dialog{width:100%;max-height:calc(100vh - 24px);border-radius:20px 20px 12px 12px;padding:22px 16px calc(18px + env(safe-area-inset-bottom))}
.onboarding-logo{width:120px}
.onboarding-dialog h2{font-size:40px}
.onboarding-intro{font-size:12px;margin-bottom:14px}
.onboarding-hero{grid-template-columns:1fr;gap:10px;padding:12px 12px 14px;margin-bottom:14px}
.onboarding-coach{max-width:150px}
.onboarding-speech{padding:14px 14px 12px}
.onboarding-speech:before{display:none}
.onboarding-speech strong{font-size:22px}
.onboarding-speech p{font-size:11px;line-height:1.55}
.onboarding-steps{grid-template-columns:1fr;gap:8px}
.onboarding-step{min-height:0;grid-template-columns:40px 1fr;padding:13px}
.onboarding-step-number{width:40px;height:40px;font-size:25px}
.onboarding-step strong{font-size:22px}
.onboarding-step p{font-size:10px;margin-top:5px}
.onboarding-primary{margin-top:15px;min-height:48px;font-size:11px}
.onboarding-once{font-size:8px}
}
@media(max-width:390px){
.onboarding-dialog h2{font-size:36px}
.onboarding-logo{width:108px}
.onboarding-intro{font-size:11px}
.onboarding-hero{padding:10px}
.onboarding-coach{max-width:132px}
.onboarding-step{padding:11px}
.onboarding-step p{line-height:1.45}
}

/* V1.13.2 — accroche et lisibilite onboarding */
.onboarding-kicker{display:table;margin:0 auto;padding:7px 13px;border:1px solid rgba(32,199,240,.42);border-radius:999px;background:rgba(32,199,240,.10);box-shadow:0 0 22px rgba(32,199,240,.08);color:#69e2ff;font-size:16px;line-height:1.15;letter-spacing:.12em}.onboarding-dialog h2{margin-top:10px}.onboarding-intro{font-size:14px;line-height:1.68;color:#c5d6df}.onboarding-speech p{font-size:13px;line-height:1.68}.onboarding-step p{font-size:12px;line-height:1.62;color:#b8ccd7}.onboarding-once{font-size:10px;color:#829ead}
@media(max-width:760px){.onboarding-kicker{font-size:14px;padding:6px 11px}.onboarding-intro{font-size:13px;line-height:1.62}.onboarding-speech p{font-size:12px;line-height:1.62}.onboarding-step p{font-size:11px;line-height:1.58}.onboarding-once{font-size:9px}}
@media(max-width:390px){.onboarding-kicker{font-size:13px}.onboarding-intro{font-size:12px}.onboarding-step p{font-size:11px}}
