/* Copie légère de /assets/phare-scene.css (commentaires retirés) — tools/prod-css-purge.mjs — source-sha1:5a28e1281452999569fdd09e9bf1d7b0d0b27846 — ne pas éditer, relancer l'outil. */
body.labo{--sc-ease: cubic-bezier(0.22, 0.68, 0.24, 1);
    --sc-monte: 14px;
    
    --sc-sel: 1.18s;}
@keyframes scArrive{
    from { opacity: 0; transform: translateY(var(--sc-monte)); }
    to { opacity: 1; transform: translateY(0); }
}
@keyframes scPose{
    from { opacity: 0; transform: translateY(22px) scale(0.985); }
    to { opacity: 1; transform: translateY(0) scale(1); }
}
body.labo .phare-annonce{animation: scArrive 0.55s 0.02s var(--sc-ease) both;}
@keyframes scEcrit{
    from {
        opacity: 0;
        translate: -10px 14px;
        filter: blur(6px);
    }
    to {
        opacity: 1;
        translate: 0 0;
        filter: blur(0);
    }
}
body.labo .ph-mot{display: inline-block;}
body.labo .ph-mot{animation: scEcrit 0.62s var(--sc-ease) both;}
body.labo .phare-titre > span:nth-child(1) .ph-mot:nth-child(1){animation-delay: 0.10s;}
body.labo .phare-titre > span:nth-child(1) .ph-mot:nth-child(2){animation-delay: 0.17s;}
body.labo .phare-titre > span:nth-child(1) .ph-mot:nth-child(3){animation-delay: 0.24s;}
body.labo .phare-titre > span:nth-child(2){animation: scArrive 0.62s 0.31s var(--sc-ease) both;}
body.labo .phare-texte{animation: scArrive 0.62s 0.42s var(--sc-ease) both;}
body.labo .preuve-zone{animation: scPose 0.7s 0.5s var(--sc-ease) both;}
body.labo .phare-halo{animation: scPose 0.75s 0.56s var(--sc-ease) both;}
body.labo .form-card{animation: none; opacity: 1;}
@media (max-width: 1040px){
body.labo .preuve-zone{animation-delay: 0.58s;}
}
body.labo .phare-fond{z-index: -1;}
body.labo .preuve{z-index: 1;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.9),
        0 1px 2px rgba(15, 23, 41, 0.04),
        0 10px 22px -14px rgba(15, 23, 41, 0.22),
        0 30px 56px -40px rgba(15, 23, 41, 0.35);}
body.labo .phare-vue{position: relative; z-index: 2;}
body.labo .phare-halo,body.labo .form-card{transition:
        box-shadow 0.4s var(--sc-ease),
        translate 0.4s var(--sc-ease);}
body.labo .phare-halo:focus-within{translate: 0 -2px;}
body.labo .form-card:focus-within{box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.9),
        0 1px 2px rgba(15, 23, 41, 0.05),
        0 8px 18px -8px rgba(15, 23, 41, 0.12),
        0 32px 56px -24px rgba(15, 23, 41, 0.30),
        0 70px 120px -60px rgba(15, 23, 41, 0.46);}
@media (prefers-reduced-motion: reduce){
body.labo .phare-annonce,body.labo .phare-titre > span,body.labo .ph-mot,body.labo .phare-texte,body.labo .preuve-zone,body.labo .form-card{animation: none;
        opacity: 1;
        transform: none;
        translate: none;
        filter: none;}
body.labo .form-card{transition: none;}
body.labo .form-card:focus-within{translate: 0 0;}
}
body.labo .phare-halo{position: relative;
    max-width: calc(var(--w-carte-max, 560px) + 3px);
    margin-inline: auto;
    
    padding: 2px;
    border-radius: calc(var(--w-r-carte, 16px) + 2px);
    background: none;
    animation: scPose 0.75s 0.46s var(--sc-ease) both;}
body.labo :is(.phare-tour, .phare-lueur){position: absolute;
    overflow: clip;
    container-type: size;
    pointer-events: none;}
body.labo :is(.phare-tour, .phare-lueur) > span{position: absolute;
    left: 50%;
    top: 50%;
    width: calc(max(100cqw, 100cqh) * 1.415);
    aspect-ratio: 1;
    translate: -50% -50%;
    animation: scTour 7s 1.1s linear infinite;}
@keyframes scTour{
    to { rotate: 1turn; }
}
body.labo .phare-tour{inset: 0;
    border-radius: inherit;}
body.labo .phare-tour > span{background: conic-gradient(
        #E7ECF2 0deg,
        #E7ECF2 246deg,
        rgba(123, 45, 59, 0.14) 254deg,
        rgba(123, 45, 59, 0.72) 265deg,
        var(--burgundy, #7B2D3B) 272deg,
        rgba(123, 45, 59, 0.72) 279deg,
        rgba(123, 45, 59, 0.14) 290deg,
        #E7ECF2 298deg,
        #E7ECF2 360deg);}
body.labo .phare-lueur{inset: -16px;
    z-index: -1;
    border-radius: calc(var(--w-r-carte, 16px) + 18px);
    filter: blur(24px);
    opacity: 0.72;}
body.labo .phare-lueur > span{background: conic-gradient(
        transparent 0deg,
        transparent 240deg,
        rgba(123, 45, 59, 0.16) 250deg,
        rgba(123, 45, 59, 0.78) 264deg,
        var(--burgundy, #7B2D3B) 272deg,
        rgba(123, 45, 59, 0.78) 280deg,
        rgba(123, 45, 59, 0.16) 294deg,
        transparent 304deg,
        transparent 360deg);}
body.labo .form-card{border-color: transparent;}
@media (prefers-reduced-motion: reduce){
body.labo .phare-halo{animation: none;}
body.labo :is(.phare-tour, .phare-lueur) > span{animation: none; rotate: 300deg;}
body.labo .phare-halo:focus-within{translate: 0 0;}
}
