:root{--fond:#f4f6f9;--carte:#fff;--texte:#16202c;--discret:#566373;--bordure:#d5dbe3;--principal:#1b56c9;--erreur:#b3261e;--succes:#17663a;color:var(--texte);background:var(--fond);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}*{box-sizing:border-box}body{margin:0}h1{margin:0;font-size:1.4rem}p{margin:0}.page-centree{place-items:center;min-height:100dvh;padding:1rem;display:grid}.page{max-width:60rem;margin:0 auto;padding:1rem}.carte{background:var(--carte);border:1px solid var(--bordure);border-radius:.75rem;gap:.75rem;width:100%;max-width:26rem;padding:1.25rem;display:grid}label{gap:.25rem;font-weight:600;display:grid}input{border:1px solid var(--bordure);border-radius:.5rem;width:100%;min-height:2.75rem;padding:.5rem .75rem;font-size:1rem}button{min-height:2.75rem;font:inherit;color:#fff;background:var(--principal);border:1px solid var(--principal);cursor:pointer;border-radius:.5rem;padding:.5rem 1rem;font-weight:600}button:disabled{opacity:.6;cursor:wait}select:disabled{color:var(--discret);background:var(--fond)}button.secondaire{color:var(--principal);background:0 0}:focus-visible{outline:2px solid var(--principal);outline-offset:2px}.erreur{color:var(--erreur)}.information{color:var(--succes)}.entete{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:1rem;display:flex}.entete p{color:var(--discret)}.rubriques{grid-template-columns:repeat(auto-fill,minmax(14rem,1fr));gap:.75rem;margin:0;padding:0;list-style:none;display:grid}.rubriques .carte{max-width:none;height:100%;color:var(--texte);gap:.25rem;text-decoration:none}.rubriques .carte:hover{border-color:var(--principal)}.rubriques span{color:var(--discret)}h2{margin:0;font-size:1.15rem}select{border:1px solid var(--bordure);background:#fff;border-radius:.5rem;width:100%;min-height:2.75rem;padding:.5rem .75rem;font-size:1rem}.actions{flex-wrap:wrap;gap:.5rem;display:flex}.bloc{margin-bottom:.75rem}.formulaire,.encadre{max-width:32rem;margin-bottom:1rem}.encadre{border-color:var(--principal)}.encadre code{word-break:break-all;background:var(--fond);border-radius:.5rem;padding:.5rem .75rem;font-size:1rem}.liste{gap:.75rem;margin:0;padding:0;list-style:none;display:grid}.ligne{grid-template-columns:1fr;max-width:none}.ligne p{color:var(--discret);overflow-wrap:anywhere}.inactif{background:var(--fond)}button.danger{color:var(--erreur);border-color:var(--erreur)}.cadre-entete{background:var(--carte);border-bottom:1px solid var(--bordure);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;padding:.75rem 1rem;display:flex}.cadre-entete strong{display:block}.cadre-entete span{color:var(--discret)}.menu ul{background:var(--carte);border-bottom:1px solid var(--bordure);gap:.25rem;margin:0;padding:.5rem 1rem;list-style:none;display:flex;overflow-x:auto}.menu a{min-height:2.75rem;color:var(--texte);white-space:nowrap;border-radius:.5rem;align-items:center;padding:.25rem .75rem;text-decoration:none;display:flex}.menu a:hover{background:var(--fond)}.menu a.active{color:#fff;background:var(--principal)}.menu li{align-items:center;display:flex}.menu .menu-sous-pages{background:0 0;border:0;padding:0}.menu-groupe{color:var(--discret);white-space:nowrap;padding:.25rem .75rem}.entete-liens{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.entete-liens a{color:var(--texte);border-radius:.5rem;padding:.25rem .5rem}.entete-liens a.active{color:#fff;background:var(--principal);text-decoration:none}@media (width>=48rem){.ligne{grid-template-columns:1fr auto;align-items:center}.cadre-corps{grid-template-columns:14rem minmax(0,1fr);align-items:start;display:grid}.cadre-corps>main{min-width:0}.menu{max-height:100dvh;position:sticky;top:0;overflow-y:auto}.menu ul{border-right:1px solid var(--bordure);border-bottom:0;flex-direction:column;min-height:calc(100dvh - 4.5rem);overflow-x:visible}.menu li{flex-direction:column;align-items:stretch}.menu .menu-sous-pages{min-height:0;padding-left:1rem}.menu-groupe{margin-top:.5rem;font-size:.875rem}.menu .menu-aide{border-top:1px solid var(--bordure);margin-top:auto;padding-top:.5rem}}.sous-menu{flex-wrap:wrap;gap:.5rem;margin-bottom:1rem;display:flex}.fiche{max-width:40rem}.fiche p{color:var(--discret)}fieldset{border:1px solid var(--bordure);border-radius:.5rem;gap:.75rem;margin:0;padding:.75rem 1rem 1rem;display:grid}legend{padding:0 .25rem;font-weight:600}label.case{align-items:center;gap:.5rem;font-weight:400;display:flex}label.case input{width:auto;min-height:0}.filtres{grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));gap:.75rem;max-width:40rem;display:grid}button.bouton-ligne{width:100%;color:var(--texte);text-align:left;background:var(--carte);border-color:var(--bordure);gap:.25rem;font-weight:400;display:grid}button.bouton-ligne:hover{border-color:var(--principal)}button.bouton-ligne.inactif{background:var(--fond)}button.bouton-ligne span{color:var(--discret)}.contact{grid-template-columns:1fr 1fr auto;align-items:end;gap:.5rem;display:grid}.tableau{border-collapse:collapse;width:100%;max-width:40rem;margin:.75rem 0}.tableau th,.tableau td{text-align:left;border-bottom:1px solid var(--bordure);padding:.4rem .5rem}.tableau th{font-weight:600}.carte.large,.encadre.large{max-width:none}.defilement{overflow-x:auto}.tableau code{white-space:nowrap;word-break:normal}.discret{color:var(--discret)}.onglets{border-bottom:1px solid var(--bordure);flex-wrap:wrap;gap:.25rem;margin:1rem 0;display:flex}.onglets button{border-radius:.5rem .5rem 0 0}.tableau.tableau-large{max-width:none}.ligne-cliquable{cursor:pointer}.ligne-cliquable:hover,.ligne-cliquable:focus,.ligne-cliquable[aria-selected=true]{background:var(--fond);outline:none}.barre-semaine{gap:.5rem;display:grid}.barre-semaine .mois{text-align:center;text-transform:capitalize;min-width:9rem}.entete-tournee{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;display:flex}.entete-tournee p{margin:0}.grille{border-collapse:collapse;background:var(--carte);width:100%}.grille th,.grille td{border:1px solid var(--bordure);vertical-align:top;padding:.35em .5em}.grille thead th{text-align:center;white-space:nowrap}.grille td{text-align:center;font-variant-numeric:tabular-nums;min-width:4.5em}.grille thead th.aujourdhui{color:var(--principal)}.grille tr.tete th,.grille tr.tete td{background:var(--fond);font-weight:600}.grille tr.tete th{text-align:left}.grille th.passager{text-align:left;min-width:16em;font-weight:400}.grille th.passager .detail{color:var(--discret);font-size:.9em;display:block}.grille td.vide{background:var(--fond)}.grille td.ferme{color:var(--erreur);font-weight:600}.etiquette{border:1px solid var(--principal);color:var(--principal);border-radius:.4em;margin-left:.4em;padding:0 .4em;font-size:.85em;display:inline-block}.bouton-case{width:100%;min-height:1.8em;font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;border-radius:.3em;padding:.1em .2em}.bouton-case:hover,.bouton-case:focus-visible{background:var(--fond);outline:2px solid var(--principal);outline-offset:-2px}.grille td.ponctuel{outline:2px dashed var(--principal);outline-offset:-3px}.grille .instruction{white-space:normal;font-size:.75em;font-style:italic;line-height:1.2;display:block}.grille .sans-tournee{background:repeating-linear-gradient(135deg, var(--fond), var(--fond) 6px, transparent 6px, transparent 12px);color:var(--discret)}.grille th .raison{white-space:normal;font-size:.75em;font-weight:400;display:block}.grille th .remplacant{white-space:normal;color:var(--principal);font-size:.75em;font-weight:600;display:block}.remplacements ul{margin:0 0 .5rem;padding-left:1.2rem}.grille td.retire{color:var(--discret);text-decoration:line-through}.nom-passager{color:inherit;font-weight:700}.voile{z-index:20;background:#00000059;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.fenetre{width:100%;max-width:30rem;max-height:calc(100vh - 2rem);overflow-y:auto}.fenetre fieldset{border:1px solid var(--bordure);border-radius:.5rem;gap:.35rem;margin:0;padding:.5rem .75rem;display:grid}.outils-rangee{float:left;flex-direction:column;gap:.2em;margin-right:.5em;display:inline-flex}.outils-rangee button{min-width:1.7em;min-height:0;padding:0 .3em;font-size:.8em;line-height:1.4}.choix-passager{gap:.3rem;margin:0;padding:0;list-style:none;display:grid}.choix-passager button{text-align:left;width:100%}@media print{.cadre-entete,.menu,button,input{display:none!important}}a.bouton{color:#fff;background:var(--principal);border:1px solid var(--principal);border-radius:.5rem;align-items:center;min-height:2.75rem;padding:.5rem 1rem;font-weight:600;text-decoration:none;display:inline-flex}a.bouton.secondaire{color:var(--principal);background:0 0}.journee{gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.journee .repere{color:var(--discret);padding:.25rem .5rem}.journee .etape{padding:0}.journee .etape.deplie{border-color:var(--principal)}.journee .etape.absent .ligne-etape{color:var(--discret);text-decoration:line-through}button.ligne-etape{text-align:left;width:100%;min-height:3rem;color:var(--texte);background:0 0;border:0;font-weight:400;display:block}.detail-etape{gap:.5rem;padding:0 1rem 1rem;display:grid}.detail-etape p,.lieu p{margin:0}.instruction-jour{background:var(--fond);border-radius:.5rem;padding:.5rem}.etiquette.etat-pris{color:#fff;background:var(--principal)}.etiquette.etat-depose{color:#fff;background:var(--succes)}.etiquette.etat-absent{color:#fff;background:var(--erreur)}.validation button{flex:1;min-height:3rem}.appuis{margin:0;padding-left:1rem}.appuis .annule{color:var(--discret);text-decoration:line-through}.rappel{white-space:pre-line}
