@font-face{font-family:Departure Mono;src:url(/fonts/DepartureMono-Regular.woff2) format("woff2");font-weight:400;font-display:swap}:root{--lime: #C8D93A;--lime-deep: #A0B020;--lime-light: #EDF2C0;--cream: #F0EDE6;--cream-dark: #E8E4DB;--blanc: #FFFFFF;--ink: #1A1A16;--charcoal: #3B3B36;--stone: #74746E;--silver: #A6A69E;--ash: #D4CFC4;--destructive: #EF4444;--ok: #4d7c0f;--titres: "Cabinet Grotesk", ui-sans-serif, system-ui, sans-serif;--corps: "Satoshi", ui-sans-serif, system-ui, sans-serif;--mono: "Departure Mono", ui-monospace, "SF Mono", Menlo, monospace}*{box-sizing:border-box}body{margin:0;font-family:var(--corps);background:var(--cream);color:var(--ink)}h1,h2,h3{font-family:var(--titres)}.chargement,.vide{padding:4rem;text-align:center;color:var(--stone)}.vide .petit{font-size:.85rem}.erreur{color:var(--destructive);padding:.5rem 1.5rem}button{font-family:var(--corps)}.wordmark{font-family:var(--titres);font-weight:900;text-transform:uppercase;letter-spacing:.05em}.wordmark .boost{color:var(--lime-deep)}.sur-sombre.wordmark{color:var(--cream)}.sur-sombre.wordmark .boost{color:var(--lime)}.produit{font-family:var(--titres);font-weight:700;color:var(--stone);letter-spacing:.02em}.principal,.login-carte button[type=submit]{border:0;border-radius:999px;background:var(--lime);color:var(--ink);font-family:var(--titres);font-weight:800;text-transform:uppercase;letter-spacing:.03em;cursor:pointer;padding:.8rem 1.5rem;font-size:.95rem;transition:background .15s}.principal:hover,.login-carte button[type=submit]:hover{background:var(--lime-deep)}.principal:disabled{opacity:.45;cursor:default}.login{min-height:100vh;display:grid;place-items:center;background:var(--ink)}.login-carte{background:var(--blanc);border-radius:16px;padding:2.5rem;width:min(440px,92vw);box-shadow:0 24px 70px #00000073}.login-carte h1{margin:0 0 .25rem;font-size:1.6rem}.sous-titre{color:var(--stone);margin:0 0 1.5rem;font-size:.9rem}.login-carte input{width:100%;padding:.75rem .95rem;border:1px solid var(--ash);border-radius:10px;font-size:1rem;margin-bottom:.8rem;background:var(--blanc);font-family:var(--corps)}.login-carte input::placeholder{color:var(--silver)}.login-carte button[type=submit]{width:100%}.app{max-width:1200px;margin:0 auto;padding:0 1.25rem 3rem}header{display:flex;align-items:center;gap:1rem;padding:1.1rem 0;flex-wrap:wrap}header h1{font-size:1.25rem;margin:0}.compset-nom{color:var(--stone);font-size:.9rem;border-left:1px solid var(--ash);padding-left:1rem}nav{display:flex;gap:.3rem;margin-left:auto}nav button{border:0;background:transparent;padding:.55rem 1rem;border-radius:999px;cursor:pointer;font-size:.9rem;color:var(--charcoal);font-weight:500}nav button.actif{background:var(--ink);color:var(--cream)}.sortir{border:0;background:transparent;color:var(--stone);cursor:pointer;font-size:.85rem}footer{margin-top:3rem;color:var(--stone);font-size:.78rem;text-align:center}footer a{color:var(--stone)}.meta{color:var(--stone);font-size:.88rem}select{padding:.4rem .6rem;border:1px solid var(--ash);border-radius:8px;background:var(--blanc);font-family:var(--corps)}.grille-wrap{overflow-x:auto;background:var(--blanc);border:1px solid var(--ash);border-radius:14px;padding:1rem 1.25rem}table.grille{border-collapse:collapse;width:100%;font-size:.88rem}.grille th{text-align:left;padding:.5rem .6rem;color:var(--stone);font-weight:700;border-bottom:2px solid var(--ash);white-space:nowrap;font-family:var(--titres)}.grille td{padding:.5rem .6rem;border-bottom:1px solid var(--cream-dark);vertical-align:top}.entete-concurrent td{background:var(--cream-dark);font-weight:800;color:var(--ink);font-family:var(--titres)}.entete-concurrent.moi td{background:var(--lime-light)}.label-unite{max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cellule{white-space:nowrap}.cellule strong{display:block;font-family:var(--mono);font-weight:400;font-size:.95rem}.cellule .total{display:block;color:var(--stone);font-size:.72rem;font-family:var(--mono)}.cellule.moi{background:#f7f9e8}.ecart{display:block;font-size:.72rem;font-weight:700;font-family:var(--mono)}.ecart.sous{color:var(--ok)}.ecart.sur{color:var(--destructive)}.complet{color:var(--silver);font-style:italic}.hors-saison{color:var(--silver);background:repeating-linear-gradient(45deg,transparent,transparent 6px,var(--cream) 6px,var(--cream) 12px)}.echec{color:var(--destructive)}.vide-cellule{color:var(--ash)}.evolution{background:var(--blanc);border:1px solid var(--ash);border-radius:14px;padding:1rem 1.25rem}.graphe{width:100%;height:auto}.grille-h{stroke:var(--cream-dark)}.axe{font-size:11px;fill:var(--stone);font-family:var(--mono)}.legende{display:flex;flex-wrap:wrap;gap:.75rem 1.25rem;font-size:.82rem;margin-top:.5rem}.legende i{display:inline-block;width:12px;height:12px;border-radius:3px;margin-right:.35rem;vertical-align:-1px}.legende .moi{font-weight:700}.mouvements h3{margin:1.5rem 0 .5rem;font-size:1rem}.mouvements table{border-collapse:collapse;font-size:.85rem;width:100%}.mouvements td{padding:.35rem .6rem;border-bottom:1px solid var(--cream-dark)}.mapping{background:var(--blanc);border:1px solid var(--ash);border-radius:14px;padding:1rem 1.25rem}.nouveau-groupe{display:flex;gap:.5rem;margin:.75rem 0 1.25rem}.nouveau-groupe input{flex:1;max-width:340px;padding:.55rem .8rem;border:1px solid var(--ash);border-radius:10px}.nouveau-groupe button{padding:.55rem 1.1rem;border:0;border-radius:999px;background:var(--ink);color:var(--cream);cursor:pointer;font-weight:700}.table-mapping{border-collapse:collapse;width:100%;font-size:.88rem}.table-mapping th{text-align:left;color:var(--stone);padding:.4rem .6rem;border-bottom:2px solid var(--ash);font-family:var(--titres)}.table-mapping td{padding:.4rem .6rem;border-bottom:1px solid var(--cream-dark)}.table-mapping tr.moi{background:var(--lime-light)}.onboarding{max-width:660px;margin:1rem auto}.etapes{display:flex;gap:1rem;font-size:.82rem;color:var(--stone);margin-bottom:1rem;flex-wrap:wrap;font-family:var(--titres);font-weight:700;text-transform:uppercase;letter-spacing:.03em}.etapes .actif{color:var(--ink);border-bottom:3px solid var(--lime)}.etapes .fait{color:var(--lime-deep)}.carte-etape{background:var(--blanc);border:1px solid var(--ash);border-radius:16px;padding:1.75rem}.carte-etape h2{margin-top:0}.carte-etape label{display:block;margin:.75rem 0;font-size:.9rem;color:var(--charcoal);font-weight:500}.carte-etape label.ligne{display:flex;align-items:center;gap:.5rem}.carte-etape input:not([type=checkbox]),.carte-etape select{width:100%;padding:.65rem .85rem;border:1px solid var(--ash);border-radius:10px;font-size:.95rem;margin-top:.3rem;background:var(--blanc);font-family:var(--corps)}.carte-etape input::placeholder{color:var(--silver)}.deux-colonnes{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.principal{margin-top:1.25rem;width:100%}.liste-candidats{max-height:300px;overflow-y:auto;border:1px solid var(--ash);border-radius:10px;margin:.5rem 0}.candidat{display:flex;align-items:center;gap:.6rem;padding:.55rem .8rem;border-bottom:1px solid var(--cream-dark);cursor:pointer;margin:0!important}.candidat.choisi{background:var(--lime-light)}.candidat .nom{flex:1;color:var(--ink)}.candidat .dist{color:var(--stone);font-size:.8rem;font-family:var(--mono)}.ajout-manuel{display:flex;gap:.5rem;margin:.5rem 0 0}.ajout-manuel button{padding:.5rem 1rem;border:0;border-radius:999px;background:var(--ink);color:var(--cream);cursor:pointer;font-weight:700}.chargement-inline{color:var(--lime-deep);font-weight:700}.succes{text-align:center}.petit{color:var(--stone);font-size:.82rem}.consentement span{font-weight:400}.consentement a{color:var(--lime-deep)}.feedback{position:fixed;right:1.25rem;bottom:1.25rem;z-index:50;text-align:right}.feedback-bouton{border:0;border-radius:999px;padding:.65rem 1.1rem;background:var(--ink);color:var(--cream);cursor:pointer;box-shadow:0 6px 20px #1a1a164d;font-size:.9rem;font-weight:700}.feedback-panneau{background:var(--blanc);border:1px solid var(--ash);border-radius:14px;padding:1rem;width:300px;margin-bottom:.6rem;text-align:left;box-shadow:0 10px 30px #1a1a1633}.feedback-panneau textarea{width:100%;border:1px solid var(--ash);border-radius:10px;padding:.5rem;font:inherit}.feedback-panneau button{margin-top:.5rem;padding:.5rem 1.2rem;border:0;border-radius:999px;background:var(--lime);color:var(--ink);cursor:pointer;font-weight:800;text-transform:uppercase;letter-spacing:.03em}.modale-fond{position:fixed;top:0;right:0;bottom:0;left:0;background:#1a1a1699;z-index:100;display:grid;place-items:center;padding:1rem}.modale{background:var(--blanc);border-radius:16px;max-width:620px;width:100%;max-height:88vh;overflow-y:auto;padding:1.75rem;position:relative}.modale h2{margin-top:0}.modale h3{font-size:.95rem;margin:1.1rem 0 .3rem}.modale p{font-size:.88rem;line-height:1.5;color:var(--charcoal)}.modale a{color:var(--lime-deep)}.fermer{position:absolute;top:.9rem;right:.9rem;border:0;background:transparent;font-size:1.1rem;cursor:pointer;color:var(--stone)}.actions-rgpd button{padding:.55rem 1.2rem;border:1px solid var(--ash);border-radius:999px;background:var(--cream);cursor:pointer;font-size:.88rem;font-weight:700}.zone-danger{margin-top:1rem;border:1px solid #f3c1c1;border-radius:10px;padding:.75rem}.zone-danger summary{cursor:pointer;color:var(--destructive);font-size:.88rem}.zone-danger input{display:block;margin:.5rem 0;padding:.5rem;border:1px solid var(--ash);border-radius:8px}.danger{background:var(--destructive);color:#fff;border:0;border-radius:999px;padding:.55rem 1.2rem;cursor:pointer;font-weight:700}.danger:disabled{opacity:.4;cursor:default}@media (max-width: 720px){header{gap:.5rem}nav{margin-left:0;width:100%;overflow-x:auto}.deux-colonnes{grid-template-columns:1fr}.app{padding:0 .75rem 3rem}}.liste-verifs{border:1px solid var(--ash);border-radius:10px;margin:.75rem 0}.verif{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.65rem .85rem;border-bottom:1px solid var(--cream-dark)}.verif:last-child{border-bottom:0}.verif-actions{display:flex;gap:.8rem;align-items:center;white-space:nowrap}.verif-actions a{color:var(--lime-deep);font-size:.85rem}.retirer{border:0;background:transparent;color:var(--stone);cursor:pointer;font-size:.8rem;text-decoration:underline}.secondaire{border:1px solid var(--ash);border-radius:999px;background:var(--blanc);color:var(--charcoal);cursor:pointer;padding:.8rem 1.2rem;font-weight:700;margin-top:1.25rem}.bientot{border:1px dashed var(--ash);border-radius:999px;background:var(--cream);color:var(--silver);padding:.5rem 1rem;font-size:.82rem;cursor:not-allowed;margin-top:.75rem}.succes .bientot{display:inline-block;margin-left:.5rem}.champ-invalide{color:var(--destructive);display:block}.barre-confiance{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap}.barre-confiance .bientot{margin-top:0}.lien-fiche{float:right;font-size:.78rem;font-weight:400;color:var(--stone)}.mention-rgpd{color:var(--silver);font-size:.72rem;line-height:1.45;margin:.8rem 0 0}.mention-rgpd a{color:var(--stone)}.badge-source{display:inline-block;font-size:.68rem;font-weight:700;padding:.1rem .4rem;border-radius:4px;margin-right:.4rem;vertical-align:1px;background:var(--cream-dark);color:var(--charcoal)}.badge-source.booking{background:#003b95;color:#fff}.badge-source.campings_com{background:var(--lime-light);color:var(--ink)}.cap-estimee{color:var(--silver);font-size:.75rem}.fiches-sources{float:right;display:flex;gap:.8rem}.parite{background:var(--cream);border:1px solid var(--ash);border-radius:12px;padding:.8rem 1rem;margin-bottom:1rem}.parite h3{margin:0 0 .5rem;font-size:.95rem}.parite table{border-collapse:collapse;width:100%;font-size:.86rem}.parite td{padding:.3rem .5rem;border-bottom:1px solid var(--cream-dark)}.parite tr.moi{font-weight:700}.parite .chiffre{font-family:var(--mono);text-align:right;white-space:nowrap}.parite .chiffre.sur{color:var(--destructive);font-weight:700}.alertes{background:var(--blanc);border:1px solid var(--ash);border-radius:14px;padding:1rem 1.25rem}.pastille{display:inline-block;min-width:18px;height:18px;line-height:18px;padding:0 5px;margin-left:.4rem;border-radius:999px;background:var(--lime);color:var(--ink);font-size:.7rem;font-weight:800;text-align:center;vertical-align:1px}.filtres-alertes{display:flex;flex-wrap:wrap;gap:.4rem;margin:.75rem 0 1rem}.filtres-alertes button{border:1px solid var(--ash);background:var(--blanc);border-radius:999px;padding:.35rem .8rem;font-size:.82rem;cursor:pointer;color:var(--charcoal)}.filtres-alertes button.actif{background:var(--ink);color:var(--cream);border-color:var(--ink)}.flux{display:flex;flex-direction:column;gap:.5rem}.alerte-carte{display:flex;gap:.8rem;align-items:flex-start;padding:.8rem 1rem;border:1px solid var(--ash);border-radius:12px;background:var(--blanc);border-left-width:4px}.alerte-carte.attention{border-left-color:var(--lime-deep)}.alerte-carte.critique{border-left-color:var(--destructive)}.alerte-carte.info{border-left-color:var(--ash)}.alerte-carte.vue{opacity:.55;background:var(--cream)}.alerte-carte .icone{font-size:1.2rem;line-height:1.4}.alerte-carte .corps{flex:1}.alerte-carte .phrase{margin:0 0 .2rem;font-size:.92rem}.alerte-carte .petit{margin:0}.marquer{border:1px solid var(--ash);background:var(--blanc);border-radius:999px;width:28px;height:28px;cursor:pointer;color:var(--lime-deep);font-weight:700}.secondaire.compact{margin-top:0;padding:.4rem .9rem;font-size:.82rem}.note-alertes{margin-top:1rem;font-style:italic}.modale.enquete label{display:block;margin:1rem 0 .2rem;font-size:.9rem;font-weight:500;color:var(--charcoal)}.modale.enquete textarea{width:100%;border:1px solid var(--ash);border-radius:10px;padding:.55rem .7rem;font:inherit;margin-top:.25rem}.echelle{display:flex;gap:.25rem;flex-wrap:wrap;margin-top:.3rem}.echelle button{flex:1;min-width:32px;border:1px solid var(--ash);background:var(--blanc);border-radius:8px;padding:.45rem 0;cursor:pointer;font-family:var(--mono);font-size:.85rem}.echelle button.actif{background:var(--lime);border-color:var(--lime-deep);font-weight:800}.echelle-legende{display:flex;justify-content:space-between;margin:.2rem 0 0}.lien-discret{display:block;width:100%;margin-top:.6rem;border:0;background:transparent;color:var(--stone);font-size:.85rem;cursor:pointer;text-decoration:underline}.succes-enquete{text-align:center;padding:2rem 1rem;font-size:1rem}.source-ok{color:var(--lime-deep);display:block;margin-top:.2rem;font-weight:600}.bloc-commune{background:var(--cream);border:1px solid var(--ash);border-radius:10px;padding:.8rem 1rem;margin:1rem 0}.bloc-commune .ajout-manuel{margin-top:.5rem}.candidat .badge-source{margin-right:.5rem}.verif .badge-source{margin-left:.5rem}
