@font-face{font-family:Anton;src:url(/fonts/anton-400.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Archivo;src:url(/fonts/archivo-400.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Archivo;src:url(/fonts/archivo-600.woff2)format("woff2");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Archivo;src:url(/fonts/archivo-700.woff2)format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Archivo;src:url(/fonts/archivo-900.woff2)format("woff2");font-weight:900;font-style:normal;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(/fonts/jetbrains-mono-400.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(/fonts/jetbrains-mono-700.woff2)format("woff2");font-weight:700;font-style:normal;font-display:swap}:root{--acide:#c6ff00;--acide-noir:#000;--acide-encre:#fff;--acide-dim:#787f8a;--acide-ligne:#1a1a1a;--charbon:#16181d;--panneau:#1d2026;--bordure:#2c3038;--bordure-forte:#3a3f4a;--orange:#d85a30;--orange-vif:#e8703f;--orange-accent:#f0997b;--texte:#ece9e4;--texte-doux:#a9adb6;--texte-faible:#8b909a;--succes:#6fcf97;--rayon:2px;--serif:"Iowan Old Style", "Palatino Linotype", "Georgia", serif;--sans:system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif}*{box-sizing:border-box}html,body{background:var(--charbon);min-height:100vh;color:var(--texte);font-family:var(--sans);-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.55}#app{max-width:1400px;margin:0 auto;padding:0 24px 64px}.bandeau{border-bottom:1px solid var(--bordure);justify-content:space-between;align-items:center;margin-bottom:48px;padding:24px 0;display:flex}.marque{letter-spacing:.12em;font-size:15px;font-weight:700}.micro-label{text-transform:uppercase;letter-spacing:.16em;font-size:11px;font-weight:600}.scene{position:relative}.etat{animation:.25s both apparition}.etat[hidden]{display:none}.etat:focus{outline:none}@keyframes apparition{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.etat{animation:none}.barre-remplissage{transition:none}}.signature{color:var(--orange-accent);letter-spacing:.02em;margin:0 0 12px;font-size:13px}.titre{font-family:var(--serif);margin:0 0 16px;font-size:clamp(2.2rem,6vw,3.4rem);font-weight:600;line-height:1.05}.sous-titre{color:var(--texte-doux);max-width:52ch;margin:0 0 36px;font-size:16px}.champ{flex-direction:column;gap:8px;display:flex}.champ .micro-label{color:var(--texte-doux)}select:not(.lot-select-acide){appearance:none;background-color:var(--panneau);color:var(--texte);border:1px solid var(--bordure-forte);border-radius:var(--rayon);cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%23a9adb6' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat;padding:12px 38px 12px 14px;font-family:inherit;font-size:15px}select:not(.lot-select-acide):focus-visible,.btn:focus-visible{outline:2px solid var(--orange-accent);outline-offset:2px}.erreur-client{color:var(--orange-accent);margin:0;font-size:14px}.confidentialite{color:var(--texte-faible);max-width:60ch;margin:28px 0 0;font-size:13px}.btn{border-radius:var(--rayon);cursor:pointer;border:1px solid #0000;padding:12px 22px;font-family:inherit;font-size:15px;font-weight:600;transition:background .15s,border-color .15s,color .15s}.btn-principal{background:var(--orange);color:#1a1206;border-color:var(--orange)}.btn-principal:hover:not(:disabled){background:var(--orange-vif)}.btn-principal:disabled{color:#8a7a70;cursor:not-allowed;background:#44342c;border-color:#44342c}.btn-large{align-self:flex-start;padding:14px 32px;font-size:16px}.btn-secondaire{color:var(--texte);border-color:var(--bordure-forte);background:0 0}.btn-secondaire:hover{border-color:var(--orange);color:var(--orange-accent)}#etat-attente{text-align:center;padding-top:24px}.slot-animation{min-height:150px;margin:12px auto 32px}.titre-attente{font-family:var(--serif);margin:0 0 8px;font-size:1.9rem;font-weight:600}.attente-message{color:var(--texte-doux);margin:0 0 32px}.etapes{flex-wrap:wrap;justify-content:center;gap:12px;margin:0 0 24px;padding:0;list-style:none;display:flex}.etape{color:var(--texte-faible);border:1px solid var(--bordure);border-radius:var(--rayon);padding:8px 16px;font-size:13px;transition:color .2s,border-color .2s,background .2s}.etape--active{color:#1a1206;background:var(--orange);border-color:var(--orange);font-weight:600}.barre{background:var(--panneau);border:1px solid var(--bordure);border-radius:var(--rayon);max-width:520px;height:8px;margin:0 auto;overflow:hidden}.barre-remplissage{background:linear-gradient(90deg, var(--orange), var(--orange-accent));width:0;height:100%;transition:width .6s}.compte-rebours{color:var(--texte-faible);min-height:1.2em;margin:14px 0 0;font-size:13px}.resultat-barre{justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;display:flex}.resultat-barre .signature{margin:0}.cadre-resultat{border:1px solid var(--bordure-forte);border-radius:var(--rayon);background:#fff;width:100%;height:72vh}.bloc-erreur{background:var(--panneau);border:1px solid var(--bordure-forte);border-left:3px solid var(--orange);border-radius:var(--rayon);max-width:560px;padding:28px}.erreur-titre{margin:0 0 10px;font-size:18px;font-weight:700}.erreur-message{color:var(--texte-doux);margin:0 0 22px}.etat-acide{box-sizing:border-box;background:var(--acide-noir);color:var(--acide-encre);margin-top:-48px;margin-left:-24px;margin-right:-24px;padding:32px 40px 56px;font-family:Archivo,system-ui,sans-serif;position:relative}.hero-acide{padding:20px 0 0}.h1-acide{letter-spacing:-.01em;text-transform:uppercase;color:var(--acide-encre);margin:0;font-family:Anton,sans-serif;font-size:clamp(56px,18vw,300px);font-weight:400;line-height:.8}.h1-acide .big-acide{white-space:nowrap;display:block}.h1-acide .stroke-acide{color:#0000;-webkit-text-stroke:2px var(--acide)}.hero-row-acide{border-top:1px solid var(--acide-ligne);border-bottom:1px solid var(--acide-ligne);margin-top:24px;padding:22px 0}.sub-acide{color:#c2c7cf;max-width:520px;margin:0;font-size:clamp(15px,2vw,18px);line-height:1.45}.sub-acide b{color:var(--acide)}.form-acide{margin:0}.grid2-acide{border-bottom:1px solid var(--acide-ligne);grid-template-columns:1fr 1fr;align-items:stretch;gap:0;display:grid}.drop-left-acide{border-right:1px solid var(--acide-ligne);flex-direction:column;justify-content:center;padding:60px 50px 60px 0;display:flex}.drop-title-acide{text-transform:uppercase;font-family:Anton,sans-serif;font-size:clamp(48px,8vw,110px);font-weight:400;line-height:.85}.drop-title-acide em{color:var(--acide);font-style:normal}.dropzone-acide{flex-direction:column;padding:50px 0 50px 56px;display:flex}.lot-label-acide{color:var(--acide-dim);text-transform:uppercase;letter-spacing:.12em;margin-bottom:10px;font-family:JetBrains Mono,monospace;font-size:12px;display:block}.lot-wrap-acide{margin-bottom:16px;position:relative}.lot-select-acide{appearance:none;background:var(--acide-noir);width:100%;color:var(--acide);border:2px solid var(--acide);text-transform:uppercase;letter-spacing:.02em;cursor:pointer;padding:18px 52px 18px 22px;font-family:Anton,sans-serif;font-size:22px;transition:background .18s,color .18s}.lot-select-acide:hover,.lot-select-acide:focus{background:var(--acide);color:var(--acide-noir);outline:none}.lot-select-acide option{color:var(--acide-encre);text-transform:none;background:#0a0a0a;font-family:Archivo,sans-serif;font-size:15px}.lot-wrap-acide:after{content:"▾";color:var(--acide);pointer-events:none;font-size:20px;position:absolute;top:50%;right:22px;transform:translateY(-50%)}.btn-choisir-acide{background:var(--acide-noir);color:#3a3f47;text-transform:uppercase;letter-spacing:.03em;white-space:nowrap;cursor:not-allowed;border:2px solid #2a2a2a;width:100%;margin-bottom:16px;padding:18px 24px;font-family:Anton,sans-serif;font-size:22px;transition:all .18s}.btn-choisir-acide--actif{color:var(--acide);border-color:var(--acide);cursor:pointer}.btn-choisir-acide--actif:hover{background:var(--acide);color:var(--acide-noir)}.dz-box-acide{cursor:not-allowed;text-align:center;border:3px dashed #2a2a2a;flex-direction:column;justify-content:center;align-items:center;gap:18px;width:100%;min-height:300px;padding:24px;transition:border-color .2s,background .2s;display:flex}.dz-box-acide--actif{cursor:pointer}.dz-box-acide--actif:hover{border-color:var(--acide);background:#0a0a0a}.dz-box-acide--survol{border-color:var(--acide);background:#10130a}.dz-arrow-acide{color:var(--acide);font-family:Anton,sans-serif;font-size:88px;line-height:.8}.dz-text-acide{color:var(--acide-dim);letter-spacing:.06em;text-transform:uppercase;font-family:JetBrains Mono,monospace;font-size:14px}.dz-box-acide--actif:hover .dz-text-acide{color:var(--acide-encre)}.fichier-choisi-acide{color:var(--acide);word-break:break-all;margin:8px 0 0;font-family:JetBrains Mono,monospace;font-size:13px}.erreur-acide{color:#ff5a5a;margin:16px 0 0;font-family:JetBrains Mono,monospace;font-size:14px}.ticker-acide{border-bottom:1px solid var(--acide-ligne);white-space:nowrap;padding:16px 0;overflow:hidden}.ticker-acide div{letter-spacing:.04em;color:var(--acide-dim);text-transform:uppercase;font-family:Anton,sans-serif;font-size:30px;animation:22s linear infinite scroll-acide;display:inline-block}.ticker-acide b{color:var(--acide);margin:0 6px}@keyframes scroll-acide{0%{transform:translate(0)}to{transform:translate(-50%)}}@media (prefers-reduced-motion:reduce){.ticker-acide div{animation:none}}.steps-acide{border-bottom:1px solid var(--acide-ligne);grid-template-columns:repeat(3,1fr);display:grid}.step-acide{border-right:1px solid var(--acide-ligne);padding:56px 32px 64px;transition:background .2s}.step-acide:last-child{border-right:none}.step-acide:hover{background:#0a0a0a}.step-n-acide{color:#0000;-webkit-text-stroke:1.5px var(--acide);margin-bottom:14px;font-family:Anton,sans-serif;font-size:80px;line-height:.9}.step-acide h3{text-transform:uppercase;margin:0 0 10px;font-family:Anton,sans-serif;font-size:26px;font-weight:400}.step-acide p{color:var(--acide-dim);margin:0;font-size:15px;line-height:1.55}.footer-acide{color:var(--acide-dim);padding:40px 0 8px;font-family:JetBrains Mono,monospace;font-size:13px;line-height:1.7}.foot-brand-acide{color:var(--acide-encre);letter-spacing:.02em;margin-bottom:8px;font-family:Anton,sans-serif;font-size:24px}.foot-brand-acide span{color:var(--acide)}.foot-legal-acide{color:#8a909a;margin-top:12px}@media (width<=820px){.h1-acide .big-acide{white-space:normal}.grid2-acide{grid-template-columns:1fr}.drop-left-acide{border-right:none;border-bottom:1px solid var(--acide-ligne);justify-content:flex-start;padding:40px 0}.dropzone-acide{padding:40px 0}.steps-acide{grid-template-columns:1fr}.step-acide{border-right:none;border-bottom:1px solid var(--acide-ligne)}}.marque{letter-spacing:.02em;text-transform:uppercase;color:var(--acide-encre);font-family:Anton,sans-serif;font-size:26px;font-weight:400}.marque-fort{color:var(--acide)}#btn-deconnexion{text-transform:uppercase;letter-spacing:.06em;background:var(--acide-noir);color:var(--acide);border:2px solid var(--acide);cursor:pointer;border-radius:0;padding:12px 28px;font-family:Anton,sans-serif;font-size:16px;font-weight:400;transition:background .15s,color .15s,transform .1s}#btn-deconnexion:hover{background:var(--acide);color:var(--acide-noir);border-color:var(--acide)}#btn-deconnexion:active{transform:scale(.96)}.anim-scanner{width:120px;height:150px;margin:0 auto;position:relative}.anim-page{background:#1d2026;border:1px solid #2c3038;border-radius:2px;flex-direction:column;gap:14px;padding:22px 18px;display:flex;position:absolute;inset:0;box-shadow:0 8px 24px #00000059}.anim-ligne{background:#2c3038;border-radius:2px;height:6px}.anim-ligne.courte{width:55%}.anim-faisceau{background:linear-gradient(90deg,#0000,#d85a30,#0000);height:3px;animation:2.2s ease-in-out infinite anim-balayage;position:absolute;left:-2px;right:-2px;box-shadow:0 0 12px 2px #d85a3099}@keyframes anim-balayage{0%{opacity:0;top:6%}15%{opacity:1}85%{opacity:1}to{opacity:0;top:94%}}@media (prefers-reduced-motion:reduce){.anim-faisceau{animation:none;top:50%}}
