:root{font:17px/1.5 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#111b25;background:var(--marine);color-scheme:light;--marine:#092c50}*{box-sizing:border-box}body{margin:0;background:#fff}header{background:var(--marine);color:#fff;padding:16px max(16px,env(safe-area-inset-right)) 16px max(16px,env(safe-area-inset-left));display:flex;align-items:center;gap:12px;flex-wrap:wrap}.marque{font-weight:800;font-size:1.5rem}.marque span{font-weight:400}#identite{flex:1;min-width:140px}#compteur{position:sticky;top:0;z-index:2;background:#fff2be;border-bottom:2px solid #856100;padding:12px 16px;font-weight:750}#message:empty{display:none}#message{padding:12px 16px;background:#e8f1ff;border-bottom:2px solid var(--marine);white-space:pre-line}main,nav,footer{max-width:860px;margin:auto;padding:16px}nav{display:flex;gap:8px;flex-wrap:wrap}nav:empty{display:none}button,input,select,textarea{font:inherit;min-height:48px;border-radius:6px}button{padding:10px 16px;border:2px solid var(--marine);color:var(--marine);background:#fff;font-weight:700;cursor:pointer;touch-action:manipulation}button.principal,button[aria-current="page"]{background:var(--marine);color:#fff}button:disabled{opacity:.6;cursor:wait}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #b35b00;outline-offset:3px}header button{border-color:#fff;color:#fff;background:transparent}label{display:block;font-weight:650;margin:14px 0 6px}input,select,textarea{width:100%;padding:10px;border:2px solid #607080;background:#fff;color:#111b25}textarea{min-height:100px}h1{font-size:1.6rem;line-height:1.2;margin:12px 0 20px}h2{font-size:1.22rem}p{margin:10px 0 16px}.aide{font-size:.94rem;color:#344454}.grille{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:0 20px}.actions{display:flex;flex-wrap:wrap;gap:12px;margin:18px 0}.equipes{display:grid;gap:12px}.carte{border:2px solid #c5ced7;border-radius:8px;padding:16px;margin:16px 0;overflow-wrap:anywhere}.vert{border-left:8px solid #177039;color:#11572c;background:#effbf2}.orange{border-left:8px solid #a65300;color:#814000;background:#fff3db}.rouge{border-left:8px solid #b21925;color:#95111c;background:#fff0f0}#gps-etat{padding:12px}#erreurs{color:#95111c;font-weight:700;white-space:pre-line}input[type=checkbox]{width:26px;height:26px;min-height:26px;vertical-align:middle;margin-right:10px}.grand-code{font:800 2.8rem monospace;letter-spacing:.15em}dialog{max-width:min(94vw,500px);border:3px solid var(--marine);border-radius:12px;padding:24px}dialog::backdrop{background:#071e34aa}dialog button{margin:6px}footer{max-width:none;margin-top:24px;background:var(--marine);color:#fff;padding:16px max(16px,calc((100vw - 828px)/2)) calc(24px + env(safe-area-inset-bottom,0px))}footer button{display:block;margin-top:10px;border-color:#fff;color:#fff;background:transparent}small{font-size:.9rem}#avertissement-nif{color:#814000}summary{padding:12px;min-height:48px;cursor:pointer;font-weight:700}fieldset{border:0;padding:0;margin:0}body.factice header{background:#47356b}body.factice .marque:after{content:" · ESSAI FICTIF";font-size:.8rem;display:block}@media(min-width:680px){header{padding-left:max(24px,calc((100vw - 828px)/2));padding-right:max(24px,calc((100vw - 828px)/2))}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
dialog:not([open]){display:none}dialog[open]{position:fixed;top:20vh;z-index:10}

.resultat{display:block;width:100%;text-align:left}.pris-autre{color:#55616d}a.bouton{display:inline-block;min-height:48px;padding:10px 16px;border:2px solid var(--marine);border-radius:6px;color:var(--marine);font-weight:700;overflow-wrap:anywhere}dd{margin:0 0 12px;overflow-wrap:anywhere}dt{font-weight:700}button{max-width:100%;overflow-wrap:anywhere}.grille>*{min-width:0}
h1,h2,p{overflow-wrap:anywhere}
body:has(#extraction) main{max-width:1120px}#extraction dl{display:grid;grid-template-columns:minmax(0,2fr) minmax(70px,1fr);gap:6px 20px;max-width:800px}#extraction dd{margin:0}#extraction dt{font-weight:500}#extraction [hidden]{display:none}

/* Design D : registre en tuiles. La hauteur de navigation inclut la zone sûre. */
:root{background:#eef2f6;--bas:calc(76px + env(safe-area-inset-bottom,0px))}body{background:#eef2f6;padding-bottom:var(--bas)}
header{padding:12px 16px;gap:6px 12px;display:grid;grid-template-columns:auto minmax(0,1fr)}.marque{font-size:20px;grid-row:1 / 3}#identite{min-width:0;text-align:right;font-size:13px;line-height:1.35;overflow-wrap:anywhere}header #changer{justify-self:end;min-height:30px;padding:0;border:0;text-decoration:underline;font-size:12px}
#compteur{display:flex;align-items:center;justify-content:space-between;gap:10px;color:#4d3800;font-size:15px;padding:10px 16px;z-index:5}#compteur-texte{max-width:240px}#envoyer{flex:none;border-color:#654900;color:#4d3800;background:transparent;padding:6px 10px;min-height:48px;font-size:15px}
#onglets{position:fixed;bottom:0;left:0;right:0;max-width:none;z-index:10;background:var(--marine);display:flex;flex-wrap:nowrap;gap:0;justify-content:center;padding:4px max(6px,calc((100% - 860px)/2)) calc(6px + env(safe-area-inset-bottom,0px));height:var(--bas)}#onglets:empty{display:none}#onglets button{flex:1;min-width:0;max-width:286px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:2px;border:0;border-bottom:4px solid transparent;border-radius:0;background:transparent;color:#c9d6e3;font-size:13px;line-height:1.15;white-space:nowrap;overflow-wrap:normal}#onglets button[aria-current]{color:#fff;font-weight:800;border-bottom-color:#fff}#onglets span{white-space:normal;text-align:center}svg{flex:none}
main{padding:12px 16px 20px}h1{font-size:24px;margin:0 0 14px}h2{font-size:19px;margin:10px 0}label{font-weight:700}.carte{background:#fff;border:1px solid #c5ced7;border-radius:10px;padding:12px 14px;margin:0 0 10px}.carte.active,.carte:has(input[name=selection-lot]:checked){border:2px solid var(--marine);padding:11px 13px}.carte>div:first-child>label:first-child,.carte>label:first-child{margin-top:0}.grille{grid-template-columns:repeat(auto-fit,minmax(min(230px,100%),1fr))}.carte.grille{gap:0 20px}
footer{max-width:1120px;margin:0 auto;background:transparent;color:#55616d;font-size:13px;padding:8px 16px 20px}body:has(.enregistrement) footer{padding-bottom:100px}body:has(.enregistrement) main{padding-bottom:100px}
.enregistrement{position:fixed;bottom:var(--bas);left:0;right:0;z-index:6;background:#fff;border-top:2px solid var(--marine);padding:10px max(16px,calc((100% - 828px)/2));margin:0;display:flex;gap:6px}.enregistrement button{width:100%;min-height:52px}.enregistrement:has(#annuler-edition){flex-wrap:nowrap}.enregistrement #annuler-edition{width:auto;font-size:13px}
.equipes button{width:100%;text-align:left;background:#fff;border:1px solid #c5ced7;border-radius:10px;min-height:64px}.equipes button:focus-visible{border-color:var(--marine)}
.chiffres-lot{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.chiffres-lot .carte{padding:8px 10px}.chiffres-lot strong{display:block;color:var(--marine);font-size:25px}.chiffres-lot span{font-size:14px;color:#344454}.ligne-nom{display:flex;justify-content:space-between;align-items:start;gap:8px}.ligne-nom label{margin:0;line-height:1.3}.lot-tuile p{margin:6px 0}.sous{display:block;font-size:15px;color:#344454;font-weight:400}.lot-bas{display:flex;justify-content:space-between;align-items:end;gap:8px;margin-top:8px}.rar{font-size:23px;font-weight:800;color:var(--marine);line-height:1.25}.rar small{font-size:13px;white-space:nowrap}.lot-bas button{flex:none;padding:8px 12px}.a-moi{background:var(--marine);color:#fff;padding:3px 7px;border-radius:4px;font-size:12px;white-space:nowrap;font-weight:800}.autre{background:#f1f3f5}.pris-autre{color:#4a5866;font-size:15px}.distance{color:var(--marine);font-weight:800;white-space:nowrap}.source{display:inline-block;border:1px solid var(--marine);color:var(--marine);border-radius:4px;padding:2px 8px;margin-top:8px;font-size:13px}.resultat{font-weight:400}.resultat strong{font-size:17px}.detail-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.detail-actions>*{text-align:center}.retour-lot{padding:0;border:0;background:transparent;text-decoration:underline;margin-bottom:8px}
#boutons-resultats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:10px 0}#boutons-resultats button{display:flex;align-items:center;gap:8px;text-align:left;min-height:64px;padding:10px 8px;font-size:15px;line-height:1.25}#champs-visite:empty{display:none}.gps-tuile #gps-etat{display:flex;align-items:center;gap:12px;border-radius:10px;margin:0 0 10px}.gps-metres{width:66px;height:66px;border:4px solid currentColor;border-radius:50%;display:flex;flex:none;flex-direction:column;align-items:center;justify-content:center;background:#fff;line-height:1.1}.gps-metres strong{font-size:23px}.gps-metres small{font-size:11px;font-weight:800}.gps-tuile button{margin:3px 0}#rue-proposee button{border-style:dashed;width:100%;text-align:left}#rue-proposee p{margin:10px 0 4px}#agents button,#gestion-equipes button{margin:5px 5px 0 0}#mes-fiches{margin-top:14px}#connexion{max-width:520px}
@media(min-width:680px){header{padding-left:max(24px,calc((100vw - 828px)/2));padding-right:max(24px,calc((100vw - 828px)/2))}#onglets button{font-size:15px}}
[hidden]{display:none!important}
html{scroll-padding-top:90px;scroll-padding-bottom:calc(var(--bas) + 100px)}
.gps-tuile:has(.vert){background:#effbf2;border-color:#177039}.gps-tuile:has(.orange){background:#fff3db;border-color:#a65300}.gps-tuile:has(.rouge){background:#fff0f0;border-color:#b21925}

/* Lot 5B : mêmes tuiles et actions que le lot. */
.resultat-ajout{margin-bottom:12px}.resultat-ajout .resultat{margin-bottom:0}.ajouter-tournee{width:100%;margin-top:6px}.lot-tuile.terminee{background:#eef0f2;color:#687380}.chiffres-lot.deux{grid-template-columns:repeat(2,1fr)}
