:root{--fond:#f6f6f3;--surface:#fff;--bord:#e7e6e0;--bord-fort:#d8d7cf;--texte:#16161a;--texte-2:#5f5e66;--texte-3:#8d8c94;--jaune:#ffd814;--jaune-doux:#fff6c7;--encre:#121317;--vert:#127a50;--vert-doux:#e3f5ec;--rouge:#b42318;--rouge-doux:#fdecea;--bleu:#1d5fd1;--bleu-doux:#e6efff;--violet:#6b3fd1;--violet-doux:#efe8ff;--ombre:0 1px 2px #1010140a, 0 6px 20px #1010140d;color:var(--texte);background:var(--fond);-webkit-font-smoothing:antialiased;font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:var(--fond);margin:0}button,input{font:inherit;color:inherit}button{cursor:pointer}h1,h2,.marque{letter-spacing:-.02em;font-family:Manrope,Inter,system-ui,sans-serif}.marque{color:var(--encre);font-size:26px;font-weight:800}.marque span{color:var(--jaune)}.marque small{color:var(--texte-3);letter-spacing:0;margin-left:4px;font-family:Inter,sans-serif;font-size:12px;font-weight:600}.muet{color:var(--texte-2)}.petit{font-size:13px}.connexion{background:radial-gradient(1200px 600px at 100% 0%, #fff7cc 0%, transparent 60%), var(--fond);grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);align-items:center;gap:48px;min-height:100vh;padding:48px max(24px,6vw);display:grid}.connexion h1{max-width:14ch;margin:28px 0 14px;font-size:clamp(30px,4vw,46px);line-height:1.08}.accroche{color:var(--texte-2);max-width:44ch;margin:0 0 30px;font-size:17px;line-height:1.5}.etapes{gap:14px;max-width:46ch;margin:0 0 28px;padding:0;list-style:none;display:grid}.etapes li{align-items:flex-start;gap:14px;font-size:15px;line-height:1.45;display:flex}.etapes b{background:var(--encre);width:28px;height:28px;color:var(--jaune);border-radius:50%;flex:none;place-items:center;font-size:13px;display:grid}.securite{color:var(--texte-3);align-items:flex-start;gap:8px;max-width:50ch;font-size:13px;line-height:1.45;display:flex}.securite svg{color:var(--vert);flex:none;margin-top:1px}.connexion-carte{background:var(--surface);border:1px solid var(--bord);box-shadow:var(--ombre);text-align:center;border-radius:24px;justify-self:center;width:min(380px,100%);padding:32px}.qr{aspect-ratio:1;border-radius:14px;position:relative;overflow:hidden}.qr-image svg,.qr-vide{width:100%;height:100%;display:block}.qr-vide{background:repeating-linear-gradient(45deg,#f1f0ea 0 8px,#f7f6f1 8px 16px)}.qr.flou .qr-image{filter:blur(6px);opacity:.35}.qr-voile{background:#ffffffb3;border:0;place-content:center;justify-items:center;gap:10px;font-size:15px;font-weight:600;display:grid;position:absolute;inset:0}.bouton-voile:hover{background:#ffffffd9}.rond-ok{background:var(--vert);color:#fff;border-radius:50%;place-items:center;width:54px;height:54px;font-size:26px;display:grid}.qr-legende{color:var(--texte-2);font-variant-numeric:tabular-nums;justify-content:center;align-items:center;gap:6px;min-height:20px;margin:18px 0 0;font-size:14px;display:flex}.tourne{border:3px solid var(--bord);border-top-color:var(--encre);border-radius:50%;width:26px;height:26px;animation:.8s linear infinite tourne;display:inline-block}@keyframes tourne{to{transform:rotate(360deg)}}@media (width<=860px){.connexion{grid-template-columns:1fr;gap:28px;padding:28px 16px}.connexion h1{margin-top:18px}}.coquille{grid-template-columns:250px minmax(0,1fr);min-height:100vh;display:grid}.barre{background:var(--encre);color:#fff;flex-direction:column;gap:18px;height:100vh;padding:22px 14px;display:flex;position:sticky;top:0}.barre .marque{color:#fff;padding:0 10px}.boutique{background:#ffffff0f;border-radius:14px;align-items:center;gap:10px;padding:10px;display:flex}.boutique img,.initiale{object-fit:cover;border-radius:12px;flex:none;width:40px;height:40px}.initiale{background:var(--jaune);color:var(--encre);place-items:center;font-family:Manrope,sans-serif;font-weight:800;display:grid}.boutique strong{font-size:14px;display:block}.boutique small{color:#a9a9b3;font-size:12px}.barre nav{gap:2px;display:grid}.barre nav button,.sortir{color:#c9c9d1;text-align:left;background:0 0;border:0;border-radius:10px;align-items:center;gap:10px;padding:10px 12px;font-size:14px;font-weight:500;display:flex}.barre nav button:hover,.sortir:hover{color:#fff;background:#ffffff12}.barre nav button.actif{background:var(--jaune);color:var(--encre);font-weight:600}.sortir{margin-top:auto;font-size:13px}main{min-width:0}.page{max-width:1240px;padding:28px clamp(16px,3vw,36px) 48px}.entete{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:20px;display:flex}.entete small{color:var(--texte-3);letter-spacing:.08em;font-size:11px;font-weight:700}.entete h1{margin:4px 0 0;font-size:28px}.entete p{margin:0;font-size:13px}@media (width<=860px){.coquille{grid-template-columns:1fr}.barre{z-index:5;flex-flow:wrap;align-items:center;gap:10px;height:auto;padding:12px 16px;position:sticky}.barre .boutique{display:none}.barre nav{order:3;gap:4px;width:100%;display:flex;overflow-x:auto}.barre nav button{white-space:nowrap}.sortir{margin:0 0 0 auto}}.chiffres{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px;display:grid}.chiffres article{background:var(--surface);border:1px solid var(--bord);box-shadow:var(--ombre);border-radius:16px;padding:18px 20px}.chiffres article[role=button]{cursor:pointer;transition:transform .15s}.chiffres article[role=button]:hover{transform:translateY(-1px)}.chiffres article.accent{background:var(--jaune-doux);border-color:#f0d65a}.chiffres small{color:var(--texte-2);font-size:12px;font-weight:600}.chiffres strong{letter-spacing:-.02em;font-variant-numeric:tabular-nums;margin:6px 0 2px;font-family:Manrope,sans-serif;font-size:28px;display:block}.chiffres p{color:var(--texte-3);margin:0;font-size:12px}@media (width<=1000px){.chiffres{grid-template-columns:1fr 1fr}}.deux{grid-template-columns:1.3fr 1fr;gap:14px;display:grid}@media (width<=1000px){.deux{grid-template-columns:1fr}}.carte{background:var(--surface);border:1px solid var(--bord);box-shadow:var(--ombre);border-radius:16px;padding:18px 20px}.carte-tete{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.carte h2{margin:0;font-size:16px}.lien{color:#7a6400;background:0 0;border:0;padding:0;font-size:13px;font-weight:600}.ligne{border-top:1px solid var(--bord);justify-content:space-between;align-items:center;gap:12px;padding:11px 0;display:flex}.ligne:first-of-type{border-top:0}.ligne strong{font-size:14px}.ligne small{color:var(--texte-3);margin-top:2px;font-size:12px;display:block}.droite{align-items:center;gap:10px;display:flex}.mini-chiffres{grid-template-columns:repeat(3,1fr);gap:8px;margin:6px 0 10px;display:grid}.mini-chiffres div{background:var(--fond);border-radius:12px;padding:10px 12px}.mini-chiffres strong{font-family:Manrope,sans-serif;font-size:20px;display:block}.mini-chiffres small{color:var(--texte-3);font-size:11px}.mini-chiffres .alerte{background:var(--jaune-doux)}.pastille{white-space:nowrap;border-radius:999px;padding:3px 10px;font-size:12px;font-weight:600;display:inline-block}.pastille.gris{color:var(--texte-2);background:#efeee9}.pastille.jaune{background:var(--jaune-doux);color:#7a6400}.pastille.bleu{background:var(--bleu-doux);color:var(--bleu)}.pastille.vert{background:var(--vert-doux);color:var(--vert)}.pastille.vert-plein{background:var(--vert);color:#fff}.pastille.violet{background:var(--violet-doux);color:var(--violet)}.pastille.rouge{background:var(--rouge-doux);color:var(--rouge)}.filtres{flex-wrap:wrap;gap:8px;margin-bottom:14px;display:flex}.filtres button{background:var(--surface);border:1px solid var(--bord-fort);color:var(--texte-2);border-radius:999px;padding:7px 14px;font-size:13px;font-weight:600}.filtres button em{color:var(--texte-3);margin-left:4px;font-style:normal}.filtres button.actif{background:var(--encre);border-color:var(--encre);color:#fff}.filtres button.actif em{color:var(--jaune)}.tableau{padding:0;overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:14px}th{text-align:left;letter-spacing:.06em;text-transform:uppercase;color:var(--texte-3);border-bottom:1px solid var(--bord);white-space:nowrap;padding:12px 16px;font-size:11px;font-weight:700}td{border-bottom:1px solid var(--bord);vertical-align:top;padding:12px 16px}tbody tr{cursor:pointer}tbody tr:hover{background:#fbfbf8}td small{color:var(--texte-3);margin-top:2px;font-size:12px;display:block}td.fleche{color:var(--texte-3);font-size:20px}.recherche{background:var(--surface);border:1px solid var(--bord-fort);min-width:min(320px,100%);color:var(--texte-3);border-radius:12px;align-items:center;gap:8px;padding:8px 12px;display:flex}.recherche input{min-width:0;color:var(--texte);background:0 0;border:0;outline:0;flex:1}.grille{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:14px;display:grid}.produit{background:var(--surface);border:1px solid var(--bord);cursor:pointer;box-shadow:var(--ombre);border-radius:16px;transition:transform .15s;overflow:hidden}.produit:hover{transform:translateY(-2px)}.photo{aspect-ratio:1;color:var(--texte-3);background:#f1f0ea;place-items:center;display:grid;position:relative}.photo img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.photo .pastille{position:absolute;top:10px;left:10px}.infos{padding:12px 14px 14px}.infos strong{-webkit-line-clamp:2;-webkit-box-orient:vertical;min-height:2.6em;font-size:14px;line-height:1.3;display:-webkit-box;overflow:hidden}.prix{justify-content:space-between;align-items:baseline;margin-top:6px;display:flex}.prix small{color:var(--texte-3);font-size:12px}.prix small.bas{color:var(--rouge);font-weight:600}.vide{color:var(--texte-3);text-align:center;justify-items:center;gap:6px;padding:40px 16px;display:grid}.vide.grand{padding:90px 16px}.vide h2{color:var(--texte);margin:6px 0 0}.erreur{background:var(--rouge-doux);color:var(--rouge);border-radius:12px;margin:10px 0;padding:12px 14px;font-size:14px}.info{background:var(--bleu-doux);color:#1b3f86;border-radius:12px;gap:8px;padding:12px 14px;font-size:14px;line-height:1.45;display:flex}.info svg{flex:none;margin-top:2px}.chargement{color:var(--texte-2);align-items:center;gap:12px;padding:40px 0;display:flex}.voile{z-index:20;background:#12131759;justify-content:flex-end;display:flex;position:fixed;inset:0}.tiroir{background:var(--surface);width:min(480px,100%);height:100%;padding:28px;position:relative;overflow-y:auto;box-shadow:-10px 0 40px #0000001f}.tiroir>small{color:var(--texte-3);letter-spacing:.08em;font-size:11px;font-weight:700}.tiroir h2{margin:4px 0 6px;font-size:24px}.fermer{border:1px solid var(--bord);background:var(--surface);border-radius:50%;place-items:center;width:34px;height:34px;display:grid;position:absolute;top:18px;right:18px}.articles{gap:10px;margin:18px 0;display:grid}.article{grid-template-columns:48px 1fr auto;align-items:center;gap:12px;display:grid}.article img,.img-vide{object-fit:cover;background:#f1f0ea;border-radius:10px;width:48px;height:48px}.article small{color:var(--texte-3);font-size:12px;display:block}.totaux{border-top:1px solid var(--bord);margin:0 0 18px;padding-top:12px}.totaux div{justify-content:space-between;padding:5px 0;font-size:14px;display:flex}.totaux dt{color:var(--texte-2)}.totaux dd{font-variant-numeric:tabular-nums;margin:0}.totaux .fort{border-top:1px solid var(--bord);margin-top:6px;padding-top:10px;font-size:16px;font-weight:700}.totaux .fort dt{color:var(--texte)}button.principal{background:var(--encre);color:#fff;border:0;border-radius:12px;padding:12px 18px;font-weight:600}button.principal:disabled,.actions button:disabled{opacity:.45;cursor:default}.tiroir>button.principal{width:100%}.grande-photo{aspect-ratio:4/3;object-fit:cover;border-radius:14px;width:100%;margin:14px 0}.champs{grid-template-columns:1fr 1fr;gap:12px;margin:14px 0;display:grid}.champs label{color:var(--texte-2);gap:6px;font-size:13px;font-weight:600;display:grid}.champs input{border:1px solid var(--bord-fort);font-variant-numeric:tabular-nums;border-radius:12px;padding:11px 12px;font-size:16px}.champs input:focus{border-color:#c3a900;outline:0;box-shadow:0 0 0 3px #fff5b5}.actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;margin-top:8px;display:flex}.actions button{border:1px solid var(--bord-fort);background:var(--surface);border-radius:12px;padding:11px 16px;font-weight:600}.actions button.principal{background:var(--encre);border-color:var(--encre);color:#fff}
