:root{--fond: #f3f4f6;--surface: #ffffff;--encre: #1f2933;--doux: #6b7280;--bord: #e5e7eb;--primaire: #e8590c;--primaire-fonce: #c2410c;--sombre: #1f2933;--ok: #2f9e44;--attente: #f08c00;--danger: #e03131;--rayon: 12px}*{box-sizing:border-box}html,body{margin:0}body{font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:var(--fond);color:var(--encre);font-size:15px;-webkit-tap-highlight-color:transparent}h1{font-size:1.35rem;margin:0}h2{font-size:1.15rem;margin:0 0 12px}button,input,select,textarea{font:inherit}input,select,textarea{width:100%;padding:11px 12px;border:1px solid var(--bord);border-radius:10px;background:#fff;color:var(--encre);margin-top:5px}input:focus,select:focus,textarea:focus{outline:2px solid var(--primaire);border-color:transparent}label{display:block;font-size:.85rem;color:var(--doux);margin-bottom:12px}code{background:var(--fond);padding:2px 6px;border-radius:6px;font-size:.85em}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:10px 16px;border-radius:10px;border:1px solid var(--bord);background:#fff;color:var(--encre);cursor:pointer;text-decoration:none;font-weight:600}.btn.primaire{background:var(--primaire);color:#fff;border-color:var(--primaire)}.btn.primaire:hover{background:var(--primaire-fonce)}.btn.whatsapp{background:#25d366;color:#fff;border-color:#25d366}.btn.plein{width:100%;margin-top:8px}.btn.petit{padding:6px 10px;font-size:.85rem}.btn:disabled{opacity:.6;cursor:wait}.lien{background:none;border:0;color:var(--primaire);cursor:pointer;padding:6px;font-weight:600}.erreur{color:var(--danger);font-size:.9rem}.succes{color:var(--ok);font-size:.9rem}.note{color:var(--doux);font-size:.9rem}.vide{color:var(--doux);text-align:center;padding:16px 0}.carte{background:var(--surface);border-radius:var(--rayon);padding:18px;border:1px solid var(--bord)}.ecran-auth{min-height:100vh;display:grid;place-items:center;padding:16px;background:var(--sombre)}.carte.auth{width:100%;max-width:420px}.carte.auth.centre{text-align:center}.auth-tete{text-align:center;margin-bottom:16px;position:relative}.auth-tete img{width:64px;height:64px;border-radius:14px}.auth-tete p{color:var(--doux);margin:4px 0 0}.auth-tete .langue{position:absolute;top:0;right:0;font-size:.8rem}.bascule{text-align:center;font-size:.9rem;color:var(--doux)}.grosse-icone{font-size:3rem;margin-bottom:8px}.ligne2{display:grid;grid-template-columns:1fr 1fr;gap:10px}.mdp{position:relative}.mdp input{padding-right:44px}.mdp-oeil{position:absolute;right:6px;top:50%;transform:translateY(calc(-50% + 2px));background:none;border:0;color:var(--doux);cursor:pointer;padding:6px;display:flex}.app{min-height:100vh;padding-bottom:72px}.entete{position:sticky;top:0;z-index:10;background:var(--sombre);color:#fff;display:flex;align-items:center;justify-content:space-between;padding:10px 14px;gap:8px}.marque{display:flex;align-items:center;gap:10px;min-width:0}.marque img{width:34px;height:34px;border-radius:8px}.marque div{display:flex;flex-direction:column;min-width:0}.marque small{color:#cbd5e1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.entete-actions{display:flex;align-items:center;gap:4px}.entete .lien{color:#fff;font-size:1rem}.reseau{display:inline-flex;align-items:center;gap:6px;font-size:.75rem;padding:4px 9px;border-radius:99px;background:#ffffff1a;white-space:nowrap}.reseau i{width:8px;height:8px;border-radius:50%;background:currentColor}.reseau.ok{color:#69db7c}.reseau.off{color:#ffa94d}.reseau.sync{color:#74c0fc}.nav{position:fixed;bottom:0;left:0;right:0;z-index:10;display:flex;background:var(--surface);border-top:1px solid var(--bord);padding-bottom:env(safe-area-inset-bottom)}.nav button{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 4px;background:none;border:0;color:var(--doux);cursor:pointer;font-size:.75rem}.nav button.actif{color:var(--primaire)}.contenu{padding:16px;max-width:1000px;margin:0 auto}@media (min-width: 900px){.app{padding-bottom:0;padding-left:210px}.nav{top:54px;right:auto;width:210px;flex-direction:column;border-top:0;border-right:1px solid var(--bord);padding:12px 8px}.nav button{flex:none;flex-direction:row;gap:10px;padding:11px 12px;border-radius:10px;font-size:.95rem}.nav button.actif{background:#fff4e6}.contenu{padding:24px}}.titre-page{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-bottom:14px}.pastille{background:#fff4e6;color:var(--primaire-fonce);padding:4px 10px;border-radius:99px;font-size:.8rem;font-weight:600;white-space:nowrap}.grille-modules{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;margin-top:14px}.module{display:flex;flex-direction:column;gap:6px}.module.desactive{opacity:.7}.module-ic{font-size:1.7rem}.module small{color:var(--doux)}.onglets{display:flex;gap:6px;overflow-x:auto;margin-bottom:14px;padding-bottom:2px}.onglets button{flex:none;padding:8px 14px;border-radius:99px;border:1px solid var(--bord);background:#fff;cursor:pointer;color:var(--encre);font-weight:600}.onglets button.actif{background:var(--sombre);color:#fff;border-color:var(--sombre)}.formulaire{max-width:640px}.barre{display:flex;justify-content:flex-end;margin-bottom:10px}.sous-form{background:var(--fond);border-radius:10px;padding:14px;margin-bottom:12px}.actions{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.actions select{width:auto;margin:0;padding:6px 8px}.liste{list-style:none;margin:0;padding:0}.liste li{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;padding:12px 0;border-bottom:1px solid var(--bord)}.liste li:last-child{border-bottom:0}.liste li div:first-child{display:flex;flex-direction:column;min-width:0}.liste small{color:var(--doux)}.liste li.inactif{opacity:.5}.toast{position:fixed;left:50%;bottom:84px;transform:translate(-50%);z-index:50;background:var(--sombre);color:#fff;padding:11px 18px;border-radius:10px;box-shadow:0 6px 20px #00000040;max-width:calc(100% - 32px);cursor:pointer}.chargement{min-height:100vh;display:grid;place-items:center;background:var(--sombre)}.roue{width:42px;height:42px;border:4px solid rgba(255,255,255,.2);border-top-color:var(--primaire);border-radius:50%;animation:tourne .8s linear infinite}@keyframes tourne{to{transform:rotate(360deg)}}@media (max-width: 480px){.ligne2{grid-template-columns:1fr;gap:0}}h3{font-size:1rem;margin:18px 0 10px}.carte h3:first-child{margin-top:0}.pile{display:flex;flex-direction:column;gap:14px}.btn.grand{padding:14px;font-size:1.05rem}.alerte{background:#fff4e6;color:#c2410c;padding:10px 12px;border-radius:10px;font-size:.9rem}.etiquette{font-size:.85rem;color:var(--doux);margin:4px 0 8px}.ligne3{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.ligne-recherche{display:flex;gap:8px;align-items:stretch}.ligne-recherche .btn{margin-top:5px}.plaque-input{font-size:1.25rem;font-weight:700;letter-spacing:2px;text-transform:uppercase;text-align:center}.recherche{margin:0 0 12px}.client-choisi{display:flex;justify-content:space-between;align-items:center;background:#ebfbee;border-radius:10px;padding:12px}.client-choisi div{display:flex;flex-direction:column}.client-choisi small{color:var(--doux)}.suggestions{list-style:none;margin:6px 0 0;padding:0;border:1px solid var(--bord);border-radius:10px;overflow:hidden}.suggestions li{padding:10px 12px;cursor:pointer;border-bottom:1px solid var(--bord)}.suggestions li:last-child{border-bottom:0}.suggestions li:hover{background:#fff4e6}.suggestions small{color:var(--doux);margin-left:6px}.puces{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}.puce{padding:7px 12px;border-radius:99px;border:1px solid var(--bord);background:#fff;cursor:pointer;font-weight:600;color:var(--encre)}.puce.actif{background:var(--primaire);color:#fff;border-color:var(--primaire)}.photos{display:flex;gap:8px;flex-wrap:wrap}.photo{position:relative;width:92px;height:92px;border-radius:10px;overflow:hidden;background:var(--fond);cursor:pointer}.photo img{width:100%;height:100%;object-fit:cover}.photo button{position:absolute;top:4px;right:4px;background:#0009;color:#fff;border:0;border-radius:50%;width:24px;height:24px;cursor:pointer}.photo.ajout{display:flex;flex-direction:column;align-items:center;justify-content:center;border:2px dashed var(--bord);font-size:1.5rem;color:var(--doux);margin:0}.photo.ajout span{font-size:.75rem}.centre-bloc{max-width:420px;margin:20px auto;text-align:center}.numero-or{font-size:1.6rem;font-weight:800;color:var(--primaire);margin:6px 0;letter-spacing:1px}.compte{background:#00000014;border-radius:99px;padding:0 7px;font-size:.75rem;margin-left:4px}.onglets button.actif .compte{background:#ffffff40}.badge{display:inline-block;padding:3px 10px;border-radius:99px;font-size:.75rem;font-weight:700;white-space:nowrap}.st-recu{background:#e7f5ff;color:#1864ab}.st-diagnostic{background:#fff3bf;color:#946200}.st-reparation{background:#ffe8cc;color:#c2410c}.st-termine{background:#d3f9d8;color:#2b8a3e}.st-sorti{background:#f1f3f5;color:#495057}.grille-ordres{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;margin-bottom:14px}.carte-ordre{position:relative;text-align:left;background:var(--surface);border:1px solid var(--bord);border-radius:var(--rayon);padding:14px;cursor:pointer;display:flex;flex-direction:column;gap:8px;color:var(--encre);font:inherit}.carte-ordre:hover{border-color:var(--primaire)}.co-haut,.co-bas{display:flex;justify-content:space-between;align-items:center;gap:8px}.co-bas{font-size:.78rem;color:var(--doux)}.co-milieu{display:flex;flex-direction:column}.co-milieu span{color:var(--doux);font-size:.9rem}.co-panne{margin:0;font-size:.88rem;color:var(--encre);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.co-plaque{display:inline-block;font-weight:800;letter-spacing:1.5px;background:#fff;border:2px solid var(--sombre);border-radius:6px;padding:2px 8px;font-size:.9rem;color:var(--sombre)}.co-plaque.grand{font-size:1.3rem;padding:4px 12px;margin-bottom:6px}.co-pret{display:none}.entete-ordre{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:12px}.entete-ordre h2{margin:4px 0}.client-bloc{display:flex;flex-direction:column;gap:4px}.client-bloc span{color:var(--doux)}.etapes{display:flex;justify-content:space-between;margin-bottom:14px;gap:4px}.etape{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;font-size:.75rem;color:var(--doux);text-align:center;position:relative}.etape i{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:var(--fond);font-style:normal;font-weight:700;border:2px solid var(--bord)}.etape.faite i{background:var(--ok);color:#fff;border-color:var(--ok)}.etape.courante i{background:var(--primaire);border-color:var(--primaire)}.etape.courante span{color:var(--encre);font-weight:700}.actions.centre{justify-content:center}.note.centre{text-align:center}.grille2{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:12px 0}.texte-bloc{white-space:pre-wrap;background:var(--fond);padding:10px 12px;border-radius:10px;margin-top:0}.historique{list-style:none;margin:0;padding:0}.historique li{display:flex;gap:10px;align-items:center;padding:6px 0;flex-wrap:wrap;font-size:.9rem}.historique small{color:var(--doux)}.zoom{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000d9;z-index:60;display:grid;place-items:center;padding:16px;cursor:zoom-out}.zoom img{max-width:100%;max-height:100%;border-radius:8px}.stats{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:10px;margin:14px 0}.stat{display:flex;flex-direction:column;gap:2px;text-align:left;cursor:pointer;font:inherit;color:var(--encre)}.stat strong{font-size:1.6rem}.stat span{color:var(--doux);font-size:.85rem}.st-bord-recu{border-left:4px solid #4dabf7}.st-bord-diagnostic{border-left:4px solid #fab005}.st-bord-reparation{border-left:4px solid #fd7e14}.st-bord-termine{border-left:4px solid #40c057}.liste li.cliquable{cursor:pointer}.liste li.cliquable:hover{background:var(--fond)}.liste li.cliquable div:first-child{gap:4px}.roue.petite{width:30px;height:30px;border-color:#0000001a;border-top-color:var(--primaire);margin:30px auto}@media (max-width: 700px){.grille2{grid-template-columns:1fr}.ligne3{grid-template-columns:1fr 1fr}.ligne3 label:last-child{grid-column:span 2}}.btn.danger{color:var(--danger);border-color:#ffc9c9}.case{display:flex;align-items:center;gap:6px;font-size:.85rem;color:var(--encre);margin:6px 0}.case input{width:auto;margin:0}.facturation{margin:12px 0}.bloc-client{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;background:var(--fond);border-radius:10px;padding:12px;margin-bottom:12px}.bloc-client div{display:flex;flex-direction:column;gap:4px;align-items:flex-start}.bloc-client small{color:var(--doux)}.lignes-facture{display:flex;flex-direction:column;gap:6px;margin-bottom:8px}.lf-entete,.lf-ligne{display:grid;grid-template-columns:1fr 64px 80px 100px 100px 30px;gap:6px;align-items:center}.lf-entete{font-size:.75rem;color:var(--doux);font-weight:700;text-transform:uppercase;padding:0 2px}.lf-ligne input{margin:0;padding:8px}.lf-ligne>span{padding:0 4px}.num{text-align:right}.fort{font-weight:700}.lf-suppr{background:none;border:0;color:var(--danger);cursor:pointer;font-size:1rem}.totaux{margin:12px 0 0 auto;max-width:340px;display:flex;flex-direction:column;gap:6px}.totaux>div{display:flex;justify-content:space-between;align-items:center;gap:10px}.totaux .mo{width:140px;margin:0;text-align:right;padding:7px 10px}.grand-total{background:#fff4e6;border-radius:10px;padding:10px 12px;font-size:1.05rem}.grand-total strong{color:var(--primaire-fonce)}.barre-sauver{position:sticky;bottom:76px;display:flex;justify-content:space-between;align-items:center;gap:10px;background:var(--sombre);color:#fff;padding:10px 14px;border-radius:10px;margin-top:10px;z-index:5}.documents{border-top:1px solid var(--bord);margin-top:16px;padding-top:8px}.doc-ligne{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;padding:10px 0;border-bottom:1px solid var(--bord)}.doc-ligne>div{display:flex;flex-direction:column}.doc-ligne small{color:var(--doux)}.resume-paiement{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:12px}.resume-paiement div{background:var(--fond);border-radius:10px;padding:10px;display:flex;flex-direction:column}.resume-paiement span{font-size:.78rem;color:var(--doux)}.resume-paiement strong{font-size:1.15rem}.vert{color:var(--ok)}.rouge{color:var(--danger)}.form-paiement{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:10px}.form-paiement input,.form-paiement select{margin:0}.form-paiement .actions{grid-column:1 / -1;justify-content:flex-end}.co-reste{font-size:.78rem;font-weight:700;color:var(--danger)}.co-solde{font-size:.78rem;font-weight:700;color:var(--ok)}.apercu-logo{width:56px;height:56px;object-fit:contain;border:1px solid var(--bord);border-radius:8px}label.btn{margin:0;color:var(--encre);font-size:.85rem}@media (max-width: 700px){.lf-entete{display:none}.lf-ligne{grid-template-columns:1fr 1fr 1fr 30px;background:var(--fond);padding:8px;border-radius:10px}.lf-ligne .lf-des{grid-column:1 / -1}.lf-ligne .num.fort{grid-column:1 / 4;text-align:right}.totaux{max-width:none}.barre-sauver{bottom:70px}}.paiements{margin-top:18px}.encart{background:var(--fond);border-radius:10px;padding:12px;margin-top:8px}
