:root{--bleu:#2151a8;--or:#ef2e31;--fond:#f3f5f8;--carte:#fff;--texte:#1c2430;--discret:#6b7480;--bord:#dde2e8;--ok:#1f8a4c;--ok-fond:#e5f4ea;--bientot:#b26a00;--bientot-fond:#fff1d6;--depasse:#c0392b;--depasse-fond:#fde4e1;--inconnu:#6b7480;--inconnu-fond:#eceff2;color:var(--texte);background:var(--fond);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:16px}*{box-sizing:border-box}body{background:var(--fond);margin:0}h1{margin:.5rem 0 1rem;font-size:1.4rem}h2{margin:0 0 .75rem;font-size:1.1rem}a{color:inherit;text-decoration:none}.coque{min-height:100vh}.entete{z-index:10;border-bottom:1px solid var(--bord);background:#fff;align-items:center;gap:.75rem;padding:.5rem 1rem;display:none;position:sticky;top:0}.entete .logo{height:30px}.burger{color:var(--bleu);cursor:pointer;background:0 0;border:none;padding:0 .25rem;font-size:1.5rem;line-height:1}.logo-connexion{width:100%;max-width:280px;margin:0 auto .5rem;display:block}.menu{z-index:30;color:#fff;background:linear-gradient(#1d4796 0%,#16366f 100%);flex-direction:column;width:230px;padding:1rem .75rem;display:flex;position:fixed;top:0;bottom:0;left:0}.menu-logo{background:#fff;border-radius:10px;margin-bottom:1.25rem;padding:.6rem .75rem}.menu-logo img{width:100%;display:block}.menu nav{flex-direction:column;flex:1;gap:.2rem;display:flex;overflow-y:auto}.menu nav.menu-bas{border-top:1px solid #ffffff26;flex:none;margin-top:.5rem;padding-top:.5rem;overflow:visible}.menu nav a{color:#fff;opacity:.85;border-radius:8px;align-items:center;gap:.6rem;padding:.65rem .75rem;display:flex}.menu nav a:hover{opacity:1;background:#ffffff1a}.menu nav a.active{opacity:1;box-shadow:inset 3px 0 0 var(--or);background:#ffffff2e;font-weight:600}.icone{text-align:center;width:1.4rem}.menu nav .parent{opacity:.85;color:inherit;font:inherit;cursor:pointer;text-align:left;background:0 0;border:none;border-radius:8px;align-items:center;gap:.6rem;width:100%;padding:.65rem .75rem;display:flex}.menu nav .parent:hover{opacity:1;background:#ffffff1a}.menu nav .parent.active{opacity:1;font-weight:600}.chevron{margin-left:auto;font-size:.8rem}.menu nav a.sous{padding:.45rem .75rem .45rem 2.75rem;font-size:.95rem}.menu-pied{color:#fff;opacity:.6;text-overflow:ellipsis;white-space:nowrap;padding:.5rem;overflow:hidden}.pastille{background:var(--depasse);color:#fff;border-radius:10px;margin-left:auto;padding:0 .45rem;font-size:.8rem}.voile{z-index:20;background:#0006;position:fixed;inset:0}.tuiles{grid-template-columns:repeat(3,1fr);gap:.75rem;display:grid}@media (width<=800px){.tuiles{grid-template-columns:repeat(2,1fr)}}.tuile{flex-direction:column;justify-content:space-between;min-height:110px;margin:0;display:flex}.tuile:hover{border-color:var(--bleu)}.tuile-alerte{border-color:var(--depasse)}.contenu{max-width:1100px;margin:0 auto 0 230px;padding:1rem 1.5rem}@media (width>=1400px){.contenu{margin-left:max(230px,50vw - 550px)}}.centre{text-align:center;place-items:center;min-height:100vh;padding:1rem;display:grid}.carte{background:var(--carte);border:1px solid var(--bord);border-radius:10px;margin-bottom:1rem;padding:1rem;display:block}.connexion{text-align:left;flex-direction:column;gap:.75rem;width:100%;max-width:360px;display:flex}.connexion .marque,.connexion .discret{text-align:center;margin:0}.barre-titre{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.filtres{flex-wrap:wrap;gap:.5rem;margin-bottom:1rem;display:flex}.filtres input{flex:1;min-width:200px}.grille{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:.75rem;display:grid}.grille .carte{margin:0}.vehicule:hover{border-color:var(--bleu)}.ligne{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.immat{background:var(--fond);border:1px solid var(--bord);white-space:nowrap;border-radius:4px;padding:.05rem .4rem;font-family:ui-monospace,Menlo,monospace;font-weight:700}.nom{margin:.4rem 0 .2rem;font-weight:600}.puces{flex-wrap:wrap;gap:.3rem;margin-top:.6rem;display:flex}.puce{border-radius:10px;padding:.1rem .5rem;font-size:.75rem}.legende{flex-wrap:wrap;gap:.4rem;margin-top:1rem;display:flex}.n-ok{background:var(--ok-fond);color:var(--ok)}.n-bientot{background:var(--bientot-fond);color:var(--bientot)}.n-depasse{background:var(--depasse-fond);color:var(--depasse)}.n-inconnu{background:var(--inconnu-fond);color:var(--inconnu)}.texte-niveau{font-weight:600;background:0 0!important}.bandeau{border-radius:6px;flex-wrap:wrap;padding:.5rem .75rem}.alerte{border-left:4px solid}.alerte .petit{color:var(--texte)}.statut{white-space:nowrap;border-radius:10px;padding:.15rem .5rem;font-size:.75rem}.s-disponible{background:var(--ok-fond);color:var(--ok)}.s-en_location{color:#1f4fa0;background:#e3ecfb}.s-en_entretien{background:var(--bientot-fond);color:var(--bientot)}.s-vendue{background:var(--inconnu-fond);color:var(--inconnu)}.infos{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.75rem;margin-bottom:.75rem;display:grid}.statut-choix{flex-direction:row;align-items:center;gap:.5rem}.gros{margin:0;font-size:1.6rem;font-weight:700}.liste{flex-direction:column;gap:.5rem;margin-bottom:.75rem;display:flex}.liste .carte{margin:0}.entretien{border-top:1px solid var(--bord);padding-top:.5rem}.tableau{border-collapse:collapse;width:100%;margin-top:.5rem;font-size:.9rem}.tableau td{border-top:1px solid var(--bord);padding:.35rem .25rem}.formulaire{flex-direction:column;gap:.75rem;display:flex}.deux{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.75rem;display:grid}label{color:var(--discret);flex-direction:column;gap:.25rem;font-size:.9rem;display:flex}input,select,textarea{font:inherit;color:var(--texte);border:1px solid var(--bord);background:#fff;border-radius:6px;min-height:42px;padding:.55rem .65rem}input:focus,select:focus,textarea:focus{outline:2px solid var(--or);border-color:#0000}.en-ligne{flex-wrap:wrap;gap:.5rem;margin-top:.5rem;display:flex}.en-ligne input,.en-ligne select{flex:1;min-width:140px}.btn{font:inherit;border:1px solid var(--bord);color:var(--texte);cursor:pointer;background:#fff;border-radius:6px;min-height:42px;padding:.55rem 1rem;display:inline-block}.btn.principal{background:var(--bleu);color:#fff;border-color:var(--bleu)}.btn.danger{color:var(--depasse);border-color:var(--depasse)}.btn:disabled{opacity:.6}.lien{font:inherit;cursor:pointer;color:var(--bleu);background:0 0;border:none;padding:0;text-decoration:underline}.danger-texte{color:var(--depasse)}.retour{color:var(--discret);margin-bottom:.25rem;display:inline-block}.zone-danger{margin-top:2rem}.discret{color:var(--discret)}.petit{font-size:.85rem}.erreur{color:var(--depasse)}@media (width<=800px){.entete{display:flex}.menu{transition:transform .2s;transform:translate(-100%)}.menu.ouvert{transform:none}.contenu{margin-left:0;padding:.75rem}.barre-titre h1{font-size:1.2rem}}.gros-moyen{font-size:1.25rem;font-weight:700}.texte-ok{color:var(--ok)}.onglets{flex-wrap:wrap;gap:.5rem;display:flex}.bloc-articles{border:1px dashed var(--bord);border-radius:8px;flex-direction:column;gap:.25rem;padding:.75rem;display:flex}.ligne-article{margin-top:.25rem}.ligne-article select{flex:2}.ligne-article input{flex:1;min-width:90px}.bloc-articles .lien{align-self:flex-start;margin-top:.25rem}.s-confrere{color:#7b2cbf;background:#f3e8ff}.en-ligne-serre{flex-wrap:wrap;justify-content:flex-end;gap:.3rem;display:inline-flex}.tuiles .carte{margin:0}.contact-ligne{border-top:1px solid var(--bord);margin-top:.25rem;padding-top:.5rem}.contact-carte{border-top:1px solid var(--bord);margin-top:.4rem;padding-top:.4rem}@keyframes apparition{0%{opacity:0;transform:translateY(12px)scale(.98)}to{opacity:1;transform:none}}.dash-tuiles{grid-template-columns:repeat(4,1fr);gap:.9rem;display:grid}@media (width<=1000px){.dash-tuiles{grid-template-columns:repeat(2,1fr)}}.dash-tuile{color:#fff;background:linear-gradient(135deg, var(--c1), var(--c2));border-radius:14px;flex-direction:column;justify-content:flex-end;min-height:120px;padding:1rem 1.1rem;transition:transform .18s,box-shadow .18s;animation:.45s ease-out both apparition;display:flex;position:relative;overflow:hidden;box-shadow:0 4px 14px #14285a1f}.dash-tuile:hover{transform:translateY(-4px);box-shadow:0 10px 24px #14285a38}.dash-tuile:active{transform:translateY(-1px)scale(.99)}.dash-tuile:after{content:"";background:#ffffff1f;border-radius:50%;width:110px;height:110px;transition:transform .3s;position:absolute;top:-30px;right:-30px}.dash-tuile:hover:after{transform:scale(1.25)}.dash-icone{z-index:1;font-size:1.6rem;transition:transform .25s;position:absolute;top:.8rem;right:.9rem}.dash-tuile:hover .dash-icone{transform:scale(1.15)rotate(-6deg)}.dash-valeur{font-size:2.1rem;font-weight:800;line-height:1}.dash-titre{margin-top:.3rem;font-weight:600}.dash-detail{opacity:.85;font-size:.8rem}.c-bleu{--c1:#2151a8;--c2:#3b74d6}.c-vert{--c1:#15803d;--c2:#22a35a}.c-indigo{--c1:#4338ca;--c2:#6366f1}.c-orange{--c1:#c2410c;--c2:#f59e0b}.c-violet{--c1:#7e22ce;--c2:#a855f7}.c-rouge{--c1:#b91c1c;--c2:#ef4444}.c-cyan{--c1:#0e7490;--c2:#06b6d4}.c-gris{--c1:#475569;--c2:#7c8aa0}.dash-blocs{grid-template-columns:1fr 1fr;align-items:start;gap:.9rem;margin-top:1rem;display:grid}@media (width<=1000px){.dash-blocs{grid-template-columns:1fr}}.dash-bloc{margin:0;animation:.45s ease-out both apparition}.barre-rep{background:var(--inconnu-fond);border-radius:9px;height:18px;margin:.5rem 0 .75rem;display:flex;overflow:hidden}.barre-seg{transform-origin:0;height:100%;transition:filter .2s;animation:.8s ease-out both croissance}.barre-seg:hover{filter:brightness(1.15)}@keyframes croissance{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.legende-rep{flex-wrap:wrap;gap:.5rem 1rem;display:flex}.pastille-c{border-radius:50%;width:10px;height:10px;margin-right:.35rem;display:inline-block}.dash-alerte{border-left:4px solid;border-radius:8px;flex-direction:column;padding:.55rem .75rem;transition:transform .15s;display:flex}.dash-alerte:hover{transform:translate(3px)}.dash-alerte .petit{color:var(--texte)}@media (prefers-reduced-motion:reduce){.dash-tuile,.dash-bloc,.barre-seg,.journee{animation:none}}.journees{grid-template-columns:1fr 1fr;gap:.9rem;margin-top:1rem;display:grid}@media (width<=800px){.journees{grid-template-columns:1fr}}.journee{background:#fff;border:2px solid #0000;border-radius:14px;flex-direction:column;min-height:260px;transition:border-color .15s,box-shadow .15s,transform .15s;animation:.5s .38s both apparition;display:flex;overflow:hidden;box-shadow:0 4px 14px #14285a1a}.journee.survol{border-color:var(--or);transform:scale(1.01);box-shadow:0 0 0 4px #ef2e3126}.journee-tete{color:#fff;justify-content:space-between;align-items:center;padding:.9rem 1rem;display:flex}.journee-tete h2{color:#fff;margin:0;font-size:1.3rem}.journee-tete .petit{text-transform:capitalize;opacity:.9}.j-auj .journee-tete{background:linear-gradient(135deg,#2151a8,#3b74d6)}.j-dem .journee-tete{background:linear-gradient(135deg,#475569,#7c8aa0)}.journee-nb{background:#ffffff38;border-radius:999px;place-items:center;min-width:2.2rem;height:2.2rem;font-size:1.1rem;font-weight:700;display:grid}.journee-liste{flex-direction:column;flex:1;gap:.5rem;padding:.75rem;display:flex}.journee-vide{text-align:center;margin:1.5rem 0}.evt{background:var(--fond);border-left:5px solid var(--bleu);cursor:grab;color:inherit;border-radius:8px;align-items:center;gap:.5rem;padding:.45rem .5rem;text-decoration:none;display:flex}.evt:active{cursor:grabbing}.evt.fait{opacity:.55}.evt.fait .evt-titre{text-decoration:line-through}.evt.auto{border-left-color:var(--bientot);cursor:pointer;border-left-style:dashed}.evt-case{width:20px;height:20px;min-height:0;accent-color:var(--ok);flex:none}.evt-corps{text-align:left;font:inherit;color:inherit;cursor:pointer;background:0 0;border:none;flex-direction:column;flex:1;gap:.1rem;min-width:0;padding:0;display:flex}.evt-titre{font-weight:600}.evt-deplacer{font:inherit;border:1px solid var(--bord);color:var(--bleu);cursor:pointer;white-space:nowrap;background:#fff;border-radius:999px;flex:none;padding:.25rem .6rem;font-size:.78rem}.evt-deplacer:hover{background:var(--bleu);color:#fff}.flotte-outils{flex-wrap:wrap;gap:.5rem;margin-bottom:.75rem;display:flex}.flotte-outils input{flex:1;min-width:200px}.choix-vue{background:#e6ebf5;border-radius:10px;gap:2px;padding:3px;display:inline-flex}.choix-vue button{font:inherit;cursor:pointer;color:var(--discret);white-space:nowrap;background:0 0;border:none;border-radius:8px;padding:.45rem .8rem}.choix-vue button.actif{color:var(--bleu);background:#fff;font-weight:600;box-shadow:0 1px 4px #14285a26}@media (width<=800px){.choix-vue{width:100%}.choix-vue button{flex:1}}.filtre-statuts{flex-wrap:wrap;gap:.4rem;margin-bottom:1rem;display:flex}.chip{font:inherit;border:1px solid var(--bord);cursor:pointer;color:var(--texte);background:#fff;border-radius:999px;padding:.35rem .8rem;font-size:.88rem}.chip b{margin-left:.25rem}.chip.actif{background:var(--bleu);border-color:var(--bleu);color:#fff}.chip-disponible.actif{background:#15803d;border-color:#15803d}.chip-en_location.actif{background:#4338ca;border-color:#4338ca}.chip-en_entretien.actif{background:#c2410c;border-color:#c2410c}.chip-vendue.actif{background:#475569;border-color:#475569}.plaque{letter-spacing:.04em;white-space:nowrap;color:#111;background:#fff;border:2px solid #111;border-radius:5px;padding:.1rem .5rem;font-family:ui-monospace,Menlo,monospace;font-size:1.05rem;font-weight:700}.plaque.petite{border-width:1.5px;padding:0 .35rem;font-size:.85rem;text-decoration:none;display:inline-block}.grille-v{grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:.9rem;display:grid}.carte-v{--c1:#475569;--c2:#7c8aa0;color:inherit;background:#fff;border-radius:14px;flex-direction:column;text-decoration:none;transition:transform .18s,box-shadow .18s;animation:.4s both apparition;display:flex;overflow:hidden;box-shadow:0 3px 12px #14285a1a}.carte-v:hover{transform:translateY(-3px);box-shadow:0 10px 22px #14285a2e}.st-disponible{--c1:#15803d;--c2:#22a35a}.st-en_location{--c1:#4338ca;--c2:#6366f1}.st-en_entretien{--c1:#c2410c;--c2:#f59e0b}.carte-v-bande{background:linear-gradient(135deg, var(--c1), var(--c2));align-items:center;gap:.6rem;padding:.8rem .9rem;display:flex;position:relative}.carte-v-icone{filter:drop-shadow(0 1px 2px #00000040);font-size:1.6rem}.carte-v-alerte{color:var(--depasse);background:#fff;border-radius:50%;place-items:center;width:1.6rem;height:1.6rem;margin-left:auto;font-weight:800;animation:1.6s infinite pulse;display:grid}@keyframes pulse{0%,to{box-shadow:0 0 #ffffffb3}50%{box-shadow:0 0 0 6px #fff0}}.carte-v-corps{flex-direction:column;flex:1;gap:.2rem;padding:.75rem .9rem .9rem;display:flex}.carte-v-corps .nom{margin:0;font-size:1.05rem}.carte-v-km{margin-top:.3rem}.tableau-v-cadre{background:#fff;border-radius:12px;overflow-x:auto;box-shadow:0 3px 12px #14285a14}.tableau-v{border-collapse:collapse;width:100%;min-width:760px;font-size:.9rem}.tableau-v th{text-align:left;background:#eef2fa;position:sticky;top:0}.tableau-v th button{font:inherit;cursor:pointer;color:var(--texte);white-space:nowrap;text-align:left;background:0 0;border:none;width:100%;padding:.65rem .6rem;font-weight:600}.tableau-v .fleche{color:var(--bleu);font-size:.7rem}.tableau-v td{border-top:1px solid var(--bord);vertical-align:middle;padding:.5rem .6rem}.tableau-v tbody tr:hover{background:#f5f8ff}.tableau-v td a{color:inherit;text-decoration:none}.tableau-v td .nombre,.tableau-v td.nombre{white-space:nowrap}.colonnes-statut{grid-template-columns:repeat(3,1fr);align-items:start;gap:.9rem;display:grid}@media (width<=800px){.colonnes-statut{scroll-snap-type:x mandatory;grid-template-columns:repeat(3,82%);padding-bottom:.5rem;overflow-x:auto}.col-statut{scroll-snap-align:start}}.col-statut{background:#eaeef6;border-radius:14px;overflow:hidden}.col-statut header{color:#fff;justify-content:space-between;align-items:center;padding:.7rem .9rem;font-weight:700;display:flex}.col-statut header b{background:#ffffff40;border-radius:999px;padding:.05rem .6rem}.col-disponible header{background:linear-gradient(135deg,#15803d,#22a35a)}.col-en_location header{background:linear-gradient(135deg,#4338ca,#6366f1)}.col-en_entretien header{background:linear-gradient(135deg,#c2410c,#f59e0b)}.col-liste{flex-direction:column;gap:.55rem;min-height:80px;padding:.6rem;display:flex}.mini-v{color:inherit;border-left:4px solid var(--ok);background:#fff;border-radius:10px;padding:.6rem .7rem;text-decoration:none;transition:transform .15s;box-shadow:0 1px 4px #14285a14}.mini-v:hover{transform:translate(3px)}.mini-v .nom{margin:.3rem 0 0}.mini-v .puces{margin-top:.35rem}.n-bord-depasse{border-left-color:var(--depasse)}.n-bord-bientot{border-left-color:var(--bientot)}.n-bord-inconnu{border-left-color:var(--inconnu)}@media (prefers-reduced-motion:reduce){.carte-v,.carte-v-alerte{animation:none}}.tableau-v .puce{white-space:nowrap;display:inline-block}
