:root{--encre:#0f3d2e;--encre-douce:#4a6b5d;--fond:#eef3f0;--surface:#fff;--vert:#018659;--vert-clair:#00c35a;--vert-fonce:#015f3f;--signal:#00c35a;--signal-fonce:#018659;--cable:#018659;--trait:#cfdbd5;--ok:#018659;--erreur:#b3261e;--erreur-fond:#fbe9e7;--police-titre:"DIN Alternate", "Bahnschrift", "Barlow Semi Condensed", system-ui, sans-serif;--police-texte:system-ui, -apple-system, "Segoe UI", Roboto, sans-serif}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--fond);color:var(--encre);font-family:var(--police-texte);margin:0;font-size:1.0625rem;line-height:1.5}h1,h2,p,ul{margin:0}ul{padding:0;list-style:none}:focus-visible{outline:3px solid var(--cable);outline-offset:2px}.cadre{flex-direction:column;min-height:100dvh;display:flex}.bandeau{color:var(--encre);border-bottom:4px solid var(--vert);padding-top:env(safe-area-inset-top,0px);background:#fff}.bandeau-contenu{justify-content:space-between;align-items:center;gap:1rem;max-width:56rem;margin:0 auto;padding:.875rem 1.25rem;display:flex}.marque{align-items:center;gap:.75rem;display:flex}.marque-logo{width:auto;height:40px;display:block}.marque-appli{color:var(--encre-douce);border-left:2px solid var(--trait);padding-left:.75rem;font-size:.9375rem;font-weight:600}.lien-bandeau{white-space:nowrap;min-height:44px;color:var(--encre);font:inherit;text-underline-offset:3px;cursor:pointer;background:0 0;border:0;flex-shrink:0;padding:0 .25rem;text-decoration:underline}.onglets{gap:.25rem;max-width:56rem;margin:0 auto;padding:0 1.25rem;display:flex}.onglet{min-height:48px;color:var(--encre-douce);font:inherit;cursor:pointer;background:0 0;border:0;border-bottom:4px solid #0000;padding:0 1rem;font-weight:600}.onglet[aria-current=page]{color:var(--vert);border-bottom-color:var(--vert)}.principal{width:100%;max-width:56rem;padding:1.5rem 1.25rem calc(2rem + env(safe-area-inset-bottom,0px));flex:1;margin:0 auto}.chargement{text-align:center;color:var(--encre-douce);padding:3rem 1.25rem}.pile{flex-direction:column;gap:1.5rem;display:flex}.feuille{background:var(--surface);border:1px solid var(--trait);border-radius:6px;padding:1.5rem 1.25rem}.feuille-etroite{max-width:28rem;margin:0 auto}.titre{font-family:var(--police-titre);margin-bottom:1rem;font-size:2rem;font-weight:700;line-height:1.1}.sous-titre{font-family:var(--police-titre);margin-bottom:1rem;font-size:1.375rem;font-weight:700}.texte{max-width:60ch;margin-bottom:1.25rem}.aide{color:var(--encre-douce);max-width:60ch;margin-top:1rem;font-size:.9375rem}.vide{border-left:4px solid var(--signal);background:var(--fond);max-width:60ch;padding:1rem}.champ{margin-bottom:1rem}.champ label{margin-bottom:.375rem;font-weight:600;display:block}.champ input,.champ select{border:2px solid var(--encre-douce);width:100%;min-height:52px;color:var(--encre);font:inherit;background:#fff;border-radius:4px;padding:0 .875rem}.champ input:focus-visible,.champ select:focus-visible{outline:3px solid var(--cable);outline-offset:0;border-color:var(--cable)}.duo{grid-template-columns:1fr;gap:0 1rem;display:grid}.erreur{min-height:1.5rem;color:var(--erreur);margin-bottom:.75rem;font-weight:600}.erreur:empty{min-height:0;margin-bottom:0}.bouton{border:2px solid var(--encre);min-height:52px;color:var(--encre);font:inherit;cursor:pointer;background:#fff;border-radius:4px;justify-content:center;align-items:center;padding:0 1.25rem;font-weight:700;display:inline-flex}.bouton:disabled{opacity:.45;cursor:not-allowed}.bouton-principal{background:var(--vert);border-color:var(--vert-fonce);color:#fff;width:100%;font-size:1.125rem}.bouton-principal:not(:disabled):active{background:var(--vert-fonce)}.bouton-discret{border-color:var(--trait);font-weight:600}.bouton-petit{min-height:48px;padding:0 .875rem;font-size:.9375rem}.actions{flex-wrap:wrap;gap:.5rem;display:flex}.liste{border-top:1px solid var(--trait)}.ligne{border-bottom:1px solid var(--trait);flex-direction:column;gap:.75rem;padding:1rem 0;display:flex}.ligne-inactive .ligne-texte{opacity:.6}.ligne-nom{font-weight:700}.ligne-detail{color:var(--encre-douce);font-size:.9375rem}.avis{border:2px solid var(--ok);background:#eef8f2;border-radius:4px;margin-bottom:1.25rem;padding:1rem}.avis-titre{margin-bottom:.5rem;font-weight:700}.code{border:1px solid var(--trait);letter-spacing:.04em;word-break:break-all;-webkit-user-select:all;user-select:all;background:#fff;border-radius:4px;margin-bottom:.5rem;padding:.625rem .75rem;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:1.25rem}.avis .aide{margin:0 0 .75rem}@media (width>=40rem){.duo{grid-template-columns:1fr 1fr}.ligne{flex-direction:row;justify-content:space-between;align-items:center}.bouton-principal{width:auto;min-width:14rem}.feuille{padding:2rem}}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.nav-semaine{align-items:center;gap:.75rem;display:flex}.nav-titre{text-align:center;flex:1}.nav-libelle{font-weight:700}.nav-total{color:var(--encre-douce);font-size:.9375rem}.badge-info{background:var(--fond);border-left:4px solid var(--cable);border-radius:4px;margin-top:.75rem;padding:.75rem}.succes{min-height:1.5rem;color:var(--ok);font-weight:600}.jour{padding:1rem 1.25rem}.jour-actuel{border-left:4px solid var(--signal)}.jour-entete{justify-content:space-between;align-items:baseline;margin-bottom:.75rem;display:flex}.jour-titre{align-items:baseline;gap:.5rem;display:flex}.jour-nom{font-family:var(--police-titre);text-transform:capitalize;font-size:1.25rem;font-weight:700}.jour-date{color:var(--encre-douce);font-size:.9375rem}.jour-total{font-weight:700}.jour-vide{color:var(--encre-douce);padding:.25rem 0 .75rem;font-size:.9375rem}.ligne-heures{border-top:1px solid var(--trait);justify-content:space-between;align-items:center;gap:.75rem;padding:.75rem 0;display:flex}.ligne-heures-chantier{font-weight:600}.ligne-heures-detail{color:var(--encre-douce);font-size:.9375rem}.ligne-heures-refus{color:var(--erreur);margin-top:.25rem;font-size:.9375rem}.bouton-ajout{background:#fff;border-style:dashed;width:100%;margin-top:.75rem;font-weight:600}.bouton-soumettre{bottom:calc(1rem + env(safe-area-inset-bottom,0px));position:sticky}.bouton-danger{border-color:var(--erreur);color:var(--erreur)}.form-ligne{background:var(--fond);border-radius:6px;margin-top:.75rem;padding:1rem}.form-actions{flex-wrap:wrap;gap:.5rem;margin-top:.5rem;display:flex}.form-actions .bouton-principal{flex:1;width:auto;min-width:10rem}.pas{align-items:stretch;gap:.5rem;max-width:16rem;display:flex}.bouton-pas{min-width:52px;padding:0;font-size:1.5rem}.pas-valeur{text-align:center;border:2px solid var(--encre-douce);border-radius:4px;flex:1;min-height:52px;font-size:1.25rem;font-weight:700}.case{cursor:pointer;align-items:center;gap:.625rem;min-height:52px;font-weight:600;display:flex}.case input{width:24px;height:24px}.ligne-salarie{border-top:1px solid var(--trait);padding:.75rem 0}.ligne-salarie-resume{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.bloc-compte{border-top:1px dashed var(--trait);margin-top:1rem;padding-top:1rem}.sous-titre-petit{margin-bottom:.5rem;font-weight:700}.duo-compte{gap:.5rem;display:flex}.duo-compte input{border:2px solid var(--encre-douce);min-height:52px;font:inherit;border-radius:4px;flex:1;padding:0 .875rem}.lien-retour{color:var(--cable);font:inherit;cursor:pointer;text-underline-offset:3px;background:0 0;border:0;padding:0 0 .75rem;font-weight:600;text-decoration:underline}.encart-hs{background:var(--fond);border-left:4px solid var(--signal);border-radius:4px;margin-top:1rem;padding:.875rem 1rem}.encart-hs-titre{margin-bottom:.25rem;font-weight:700}.encart-hs-corps{font-size:1.0625rem}.encart-hs .aide{margin-top:.375rem}.fil-bouton{width:100%;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex-direction:column;align-items:flex-start;gap:.25rem;padding:0;display:flex}.fil-messages{flex-direction:column;gap:.75rem;margin:1rem 0;display:flex}.bulle{border-radius:10px;max-width:85%;padding:.625rem .875rem}.bulle-salarie{background:var(--fond);border:1px solid var(--trait);align-self:flex-start}.bulle-direction{background:#e6eeff;border:1px solid #b9ccf6;align-self:flex-end}.bulle-corps{white-space:pre-wrap}.bulle-meta{color:var(--encre-douce);margin-top:.25rem;font-size:.8125rem}.fichier-label{cursor:pointer}.doc-lien{color:var(--cable);text-underline-offset:3px;font-weight:600;text-decoration:underline}textarea{border:2px solid var(--encre-douce);width:100%;font:inherit;resize:vertical;border-radius:4px;padding:.625rem .875rem}.logo-connexion{width:70%;max-width:220px;height:auto;margin:0 auto 1.25rem;display:block}
