@font-face{font-family:Archivo;font-weight:200;font-style:normal;font-display:swap;src:url(fonts/Archivo-200.woff2) format("woff2")}
@font-face{font-family:Archivo;font-weight:300;font-style:normal;font-display:swap;src:url(fonts/Archivo-300.woff2) format("woff2")}
@font-face{font-family:Archivo;font-weight:400;font-style:normal;font-display:swap;src:url(fonts/Archivo-400.woff2) format("woff2")}
@font-face{font-family:Archivo;font-weight:500;font-style:normal;font-display:swap;src:url(fonts/Archivo-500.woff2) format("woff2")}
:root{--beige:#d0cdc5;--taupe:#9a8c7e;--noir:#000;--blanc:#fff}
*{box-sizing:border-box}
html,body{margin:0;height:100%;background:var(--noir);color:#111;font-family:Archivo,"Helvetica Neue",Helvetica,Arial,sans-serif;font-weight:300}
#app{min-height:100%;padding:env(safe-area-inset-top) 0 env(safe-area-inset-bottom)}
.demarrage{background:var(--noir);min-height:100vh;display:flex;align-items:center;justify-content:center}
.demarrage img{width:62vw;max-width:300px}
.connexion{background:var(--blanc);min-height:100vh;padding:34px 26px}
.connexion .logo{width:150px;display:block}
.connexion form{margin-top:90px}
.champ{display:block;width:100%;border:0;border-bottom:1.5px solid #111;border-radius:0;background:transparent;padding:14px 0;font-size:17px;margin-bottom:22px}
.bouton{display:block;width:100%;background:transparent;border:0;font-size:22px;padding:18px 0;margin-top:30px;cursor:pointer;color:#111}
.menu{background:var(--taupe);min-height:100vh;padding:34px 26px;position:relative}
.menu .nom{font-size:18px;border-bottom:1.5px solid #111;padding-bottom:16px;margin-bottom:20px}
.menu a{display:block;padding:11px 0;font-size:18px;color:#111;text-decoration:none}
.menu .sortie{margin-top:40px;border-top:1.5px solid #111;padding-top:18px;font-size:22px}
.menu .symbole{position:absolute;right:26px;bottom:110px;width:46px}
.page{background:var(--beige);min-height:100vh;padding:28px 26px}
.retour{font-size:14px;color:#111;text-decoration:underline;text-underline-offset:4px}
h1{font-weight:300;font-size:30px;line-height:1.05;margin:20px 0;text-transform:uppercase}
.bandeau{background:#111;color:#fff;font-size:12px;padding:8px 10px}
.champ:focus{outline:none}

.rang{display:block;border-top:1.5px solid #8f8c85;padding:13px 0;font-size:16px;color:#111;text-decoration:none}
.rang small{display:block;color:#444;font-size:12px;margin-top:4px}
.pl{display:inline-block;width:16px;height:16px;border:1.3px solid #111;border-radius:50%;text-align:center;line-height:14px;font-size:12px;margin-right:8px}
.neuf{background:#111;color:#fff;font-size:10px;padding:1px 6px;margin-left:8px}
.date{font-size:12px;color:#444}.corps{font-size:16px;line-height:1.45;margin:18px 0 26px}
textarea.zone{height:130px;border:1.5px solid #111;padding:8px;margin-top:6px;resize:none;font-family:inherit}
.etiq{font-size:12px;color:#444;margin:6px 0 10px}.coche{display:block;font-size:15px;margin:10px 0}

.doc{display:flex;justify-content:space-between;align-items:baseline;gap:10px;padding:14px 0;border-top:1.5px solid #8f8c85;font-size:16px;color:#111;text-decoration:none}
.doc em{font-style:normal;font-size:11px;white-space:nowrap}.doc em.ok{background:#3ee96a;padding:2px 8px}.doc em.maj,.doc em.non{background:#111;color:#fff;padding:2px 8px}
.aide{font-size:13px;color:#333;margin-top:18px}.bandeau{margin-bottom:10px}

.gros{font-size:40px;margin:2px 0 12px}.jauge{height:8px;background:#b3afa5;margin:6px 0 6px}.jauge i{display:block;height:8px;background:#111}
.ligne{display:flex;justify-content:space-between;font-size:15px;padding:9px 0;border-top:1.5px solid #8f8c85}

.mois{display:flex;gap:6px;margin:12px 0}.mois b{font-weight:300;border:1.5px solid #111;padding:8px 12px}.mois b.m{flex:1;text-align:center;background:#ece8e0}
.carte{background:#ece8e0;padding:12px 14px;margin-bottom:10px}.tete{display:flex;justify-content:space-between;font-size:11px;letter-spacing:.6px}
.etat{font-size:10px;padding:1px 7px}.etat.oui{background:#3ee96a}.etat.non{border:1px solid #111}
.carte .gros{font-size:40px;margin:6px 0 4px}.carte .gros small{font-size:16px}
.carte .jauge{position:relative;background:#fff;height:7px}.carte .jauge i{display:block;height:7px;background:#111}.carte .jauge u{position:absolute;top:-3px;width:2px;height:13px;background:#3ee96a}
.cumul{display:flex;justify-content:space-between;font-size:12px;margin-top:8px;color:#444}
.graph{display:flex;gap:7px;align-items:flex-end;overflow-x:auto;padding:8px 0}.jour{display:flex;flex-direction:column;align-items:center;font-size:9px;min-width:26px}
.jour .b{width:22px;background:#e6e3dd;display:flex;align-items:flex-end}.jour .ef{width:100%;background:#b3ab9b}.jour .d{text-align:center;color:#444;margin-top:3px}.jour .v{margin-bottom:2px}

h1.vert{color:#3ee96a}
.legende{display:flex;flex-wrap:wrap;gap:12px;font-size:11px;margin:14px 0 4px}.legende i{display:inline-block;width:10px;height:10px;margin-right:5px}
.graph{position:relative}.cibleligne{position:absolute;left:0;right:0;height:2px;background:#3ee96a;z-index:2;pointer-events:none}
.jour .b{position:relative;background:#ece8e0;display:block}.jour .ef,.jour .nt{position:absolute;left:0;width:100%}.jour .ef{bottom:0;background:#b3ab9b}.jour .nt{background:#111}
.jour .b{background:#efece6}.graph{align-items:flex-end;min-height:190px}

/* Monolithe : fond noir, texte taupe, logo blanc (choix 2026-11-06) */
:root{--noir:#050505;--tx:#CFC6B6;--tx2:#F2EEE6;--fil:#2a2925}
html,body{background:var(--noir)}
.connexion,.menu,.page{background:var(--noir);color:var(--tx)}
.champ{border-bottom-color:var(--tx);color:var(--tx2)}
.bouton{background:var(--tx);color:var(--noir);text-transform:uppercase;letter-spacing:.12em;font-size:14px;padding:16px 0}
.menu .nom{border-bottom-color:var(--fil);color:var(--tx)}
.menu a{color:var(--tx);text-transform:uppercase;letter-spacing:.1em;font-size:15px;border-top:1px solid var(--fil);padding:15px 0}
.menu .sortie{border-top-color:var(--fil);font-size:14px}
.retour{color:var(--tx)}
h1{color:var(--tx2)}
.rang,.doc,.ligne{color:var(--tx);border-top-color:var(--fil)}
.rang small,.date,.etiq,.aide,.cumul{color:#8D806A}
.doc em.maj,.doc em.non{background:var(--tx);color:var(--noir)}
.pl{border-color:var(--tx)}
textarea.zone{background:transparent;border-color:var(--tx);color:var(--tx2)}
.bandeau{background:var(--tx);color:var(--noir)}
.carte{color:#1D1D1B}
.menu .logo{width:120px;display:block;margin-bottom:22px}
a{color:var(--tx)}
.menu .nom{border-bottom:0;padding-bottom:6px;margin-bottom:6px}
.neuf{background:#8EFF60;color:#1D1D1B}
.menu a.sortie{color:var(--tx)}

/* iPhone plein écran : garder le contenu sous l'heure et l'encoche */
#app{padding-top:0}
.demarrage{min-height:100vh}
.connexion,.menu,.page{padding-top:calc(max(env(safe-area-inset-top,0px),47px) + 4px)}

/* Lettrage un peu plus épais (demande 2026-11-06) */
html,body{font-weight:400}
h1{font-weight:400}
.menu a{font-weight:500;letter-spacing:.08em}
.menu .nom{font-weight:500}
.rang,.doc,.ligne,.champ,.bouton{font-weight:500}
.rang small,.date,.etiq,.aide{font-weight:400}

/* Logo : hauteur réservée dès le départ, même taille et même place sur la connexion et le menu (aucun saut à l'arrivée) */
.connexion .logo,.menu .logo{width:120px;height:100px;aspect-ratio:679/564;object-fit:contain;object-position:left top;display:block;flex:none}
.demarrage img{aspect-ratio:679/564;height:auto}

/* Autoévaluation */
.aeq{margin:0 0 22px}.aet{font-size:15px;margin:0 0 10px;font-weight:500}.aen{display:flex;flex-wrap:wrap;gap:6px}
.aeb{background:transparent;color:var(--tx);border:1px solid var(--tx);border-radius:0;min-width:40px;min-height:40px;font:inherit;font-size:14px;font-weight:500;cursor:pointer}
.aeb.on{background:var(--tx);color:var(--noir)}.aeb.na{margin-top:8px;padding:0 12px;font-size:12px;text-transform:uppercase;letter-spacing:.08em}
.aeb:disabled{opacity:.6}.aeact{display:flex;flex-wrap:wrap;gap:10px;margin:22px 0 10px}.aeact .bouton{flex:1 1 40%;padding:14px 8px}.aeact #aebrouillon{flex-basis:100%;order:-1;background:transparent;color:var(--tx);border:1px solid var(--tx)}
.rl{border-top:1px solid var(--fil);padding:14px 0}.rn{font-size:15px;font-weight:500;margin-bottom:8px}.rv{display:flex;gap:28px;font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:#8D806A}.rv b{text-transform:none;display:block;font-size:20px;letter-spacing:0;color:var(--tx2);font-weight:500;margin-top:2px}
.rb{height:8px;background:#3d3b36;position:relative;margin:12px 0 6px}.rb i{display:block;height:100%;background:var(--tx)}.rb u{position:absolute;top:-4px;bottom:-4px;width:2px;background:#8EFF60}
.rt{display:inline-block;border:1px solid var(--tx);padding:1px 8px;font-size:12px}.rt.ok{background:#8EFF60;border-color:#8EFF60;color:#1D1D1B}
/* Tableau de bord : 12 mois */
.tbm{border-top:1px solid var(--fil);padding:14px 0}.tbm.gris{opacity:.55}.tbh{font-size:13px;letter-spacing:.14em;color:#8D806A;margin-bottom:8px;font-weight:500}
.tbl{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:5px 0;font-size:15px}.tbl small{color:#8D806A;font-size:12px}.tbl b{font-size:20px;font-weight:500}
.tok{color:#8EFF60}.tno{color:var(--tx2)}

.tnav{display:flex;gap:8px;align-items:stretch;margin:14px 0}.tnav button{width:44px;border:1px solid var(--fil);background:none;color:var(--tx);font-size:20px}.tnav button:disabled{opacity:.3}
.tmois{flex:1;display:flex;align-items:center;justify-content:center;background:#2A2926;letter-spacing:.14em;font-size:14px}
.tcarte{border:1px solid var(--fil);padding:14px;margin:12px 0}.tct{display:flex;justify-content:space-between;align-items:center;font-size:11px;letter-spacing:.14em;color:#8D806A}
.pas{padding:2px 6px;font-size:11px;letter-spacing:0;text-transform:none}.pas.dans{background:#8EFF60;color:#1D1D1B}.pas.sous{border:1px solid var(--tx);color:var(--tx)}
.tgros{font-size:52px;font-weight:300;line-height:1.1;margin-top:6px}.tgros small{font-size:16px;margin-left:4px;color:var(--tx2)}.tcib{font-size:13px;color:var(--tx2)}
.tbarre{position:relative;height:8px;background:#3a3834;margin:10px 0}.tbarre i{display:block;height:100%;background:var(--tx)}.tbarre u{position:absolute;top:-3px;bottom:-3px;width:2px;background:#8EFF60}
.tcum{display:flex;justify-content:space-between;font-size:13px;color:var(--tx2)}.tcum b{color:var(--tx);font-weight:500}

.gj{margin:14px 0;overflow-x:auto}.gjl{font-size:11px;color:var(--tx2);margin-bottom:8px;white-space:nowrap}.gc,.gj .ge,.gj .gn,.gj .gd{margin-left:6px}.gc{color:#8EFF60}.ge{color:#B4AB9B}.gn{color:#fff}.gd{color:#3a3834}
.gjb{position:relative;display:flex;gap:4px;height:200px;min-width:max-content}.gjj{width:26px;display:flex;flex-direction:column;justify-content:flex-end;align-items:center}
.gjc{width:100%;display:flex;flex-direction:column;justify-content:flex-end;min-height:0}.gjc i{display:block;width:100%}.gjc .d{background:#2f2d29;order:0}.gjc .n{background:#fff;order:1}.gjc .e{background:#B4AB9B;order:2}
.gjv{font-size:10px;color:var(--tx2)}.gjd{font-size:9px;color:#8D806A;height:16px;margin-top:2px}.gjb u{position:absolute;left:0;right:0;height:2px;background:#8EFF60}
/* Une page = un écran: tout le mois visible sans défilement */
#tb .tnav{margin:6px 0}#tb .tnav button{height:36px}#tb .tmois{font-size:13px}
#tb .etiq{margin:4px 0}
#tb .tcarte{margin:6px 0;padding:8px 12px;display:grid;grid-template-columns:auto 1fr;column-gap:12px;align-items:center}
#tb .tct{grid-column:1/3}#tb .tgros{font-size:34px;margin:0;grid-row:2/4}#tb .tgros small{font-size:13px}
#tb .tcib{font-size:12px;text-align:right}#tb .tbarre{margin:4px 0;grid-column:2}#tb .tcum{grid-column:1/3;font-size:12px;margin-top:2px}
#tb .tcarte .tbarre{grid-row:3}
#tb .gj{overflow:visible;margin:6px 0}#tb .gjb{min-width:0;height:150px;gap:2px}#tb .gjj{width:auto;flex:1;min-width:0}
#tb .gjv{font-size:8px}#tb .gjd{font-size:8px;overflow:hidden;white-space:nowrap}
#tb .aide{margin:4px 0;font-size:12px}

/* Salaire */
.cases{display:flex;gap:8px;margin:16px 0}.cases input{flex:1;min-width:0;height:54px;text-align:center;font-size:24px;background:transparent;border:1px solid var(--tx);border-radius:0;color:var(--tx2);font-family:inherit;padding:0}.cases input:focus{outline:none;border-color:var(--tx2)}
#sa .saeti{font-size:11px;letter-spacing:.18em;color:#8D806A;display:flex;justify-content:space-between;align-items:center;margin-top:-8px}
.saan a{margin-left:10px;text-decoration:none;padding:2px 6px;border:1px solid var(--fil);letter-spacing:.06em}.saan a.on{background:var(--tx);color:var(--noir);border-color:var(--tx)}
.said{display:flex;justify-content:space-between;align-items:center;background:#2A2926;padding:10px 14px;margin:8px 0}.said strong{display:block;font-size:15px;font-weight:600}.said small{font-size:12px;color:#8D806A}.saht{font-size:20px;color:var(--tx2)}
.saech{display:flex;gap:3px;margin-bottom:8px}.saech span{flex:1;border:1px solid var(--fil);text-align:center;font-size:9px;padding:3px 0;line-height:1.35;color:var(--tx2)}.saech span.on{background:var(--tx);color:var(--noir);border-color:var(--tx)}
.sh{display:flex;align-items:baseline;gap:8px;border-bottom:3px solid var(--tx);padding-bottom:4px;margin-top:10px}.sh b{font-size:19px;font-weight:400;color:#8D806A}.sh span{font-size:11px;letter-spacing:.16em}
.sl{display:flex;justify-content:space-between;gap:10px;font-size:13.5px;padding:3px 0}.sl.fort{font-weight:700}
.satot{display:flex;justify-content:space-between;align-items:center;background:#2A2926;padding:10px 14px;margin-top:10px}.satot span{font-size:10.5px;letter-spacing:.14em;max-width:50%}.satot b{font-size:26px;font-weight:400;color:var(--tx2)}
.sabar{display:flex;height:7px;background:#3a3834;margin-top:6px}.sabar i{display:block;height:100%;background:var(--tx)}.sabar i.b{background:#fff}.sabar i.c{background:#5b574f}
.sale{font-size:10px;color:#8D806A;margin:5px 0 0;line-height:1.5}
.sarec{display:flex;justify-content:space-between;margin-top:6px}.sarec b{display:block;font-size:22px;font-weight:400;color:var(--tx2)}.sarec small{font-size:10px;color:#8D806A}.sarec div:last-child{text-align:right}
.nb{border-top:1px solid var(--fil);padding:12px 0}.nb p{margin:4px 0 0;font-size:14px;line-height:1.5}
#sa .saeti{margin-top:-6px}.page h1{margin:14px 0}
h1.sa1{font-size:26px;margin:10px 0;white-space:nowrap}.satot span{max-width:55%}
/* Salaire épuré (S1) */
.sanom{font-size:14px;color:#8D806A;margin-top:6px}.sabig{font-size:56px;font-weight:300;color:var(--tx2);line-height:1.1;margin:10px 0 4px}.sub{font-size:13px;color:#8D806A}
.sx{display:flex;justify-content:space-between;align-items:baseline;gap:10px;border-top:1px solid var(--fil);padding:13px 0;font-size:17px}.sx small{display:block;font-size:12px;color:#8D806A;margin-top:3px}.sx b{font-weight:400;color:var(--tx2);font-size:19px;white-space:nowrap}
.sabar{margin-top:20px}
.sabar{margin-bottom:8px}
.doc em,.doc em.ok,.doc em.maj,.doc em.non{background:none!important;color:inherit!important;padding:0!important}

/* Style épuré (publication 14) : plus d'air, moins de lignes */
.menu a{border-top:0;font-size:21px;font-weight:300;letter-spacing:.05em;padding:15px 0}.menu .nom{font-size:15px}
.menu a.sortie{border-top:0;font-size:14px;margin-top:30px}
h1{font-size:25px;font-weight:300;margin:16px 0}.rang,.doc,.ligne,.sx{border-top:0;border-bottom:1px solid #2a2926}
.bandeau{background:transparent;color:#8D806A;padding-left:0}.tcarte,.carte{border:0;background:#242321}.tbm{border-top:0}
.sh{border-bottom:1px solid #3d3b36}.said,.satot{background:#242321}
h1.sa1{font-size:26px;margin:10px 0}

/* Visionneuse : consultation seulement */
.vue #pages canvas{display:block;margin:0 0 10px;background:#fff;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}
.vue h1{font-size:20px}

.etq{display:block;font-size:11px;letter-spacing:1.5px;color:var(--tx2);opacity:.8;margin-bottom:2px}.champ.ligne3{background:transparent!important;color:var(--tx2);padding:10px 0 12px}.champ.ligne3::placeholder{color:var(--tx);opacity:.5}
/* Remplissage automatique du navigateur : jamais de fond jaune, le champ garde le fond noir et le texte clair */
input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus,input:-webkit-autofill:active,textarea:-webkit-autofill{-webkit-box-shadow:0 0 0 1000px #050505 inset!important;box-shadow:0 0 0 1000px #050505 inset!important;-webkit-text-fill-color:#ECE8DF!important;caret-color:#ECE8DF;transition:background-color 9999s ease-out 0s}
/* Plus d'air entre l'heure du téléphone et le logo (écrans de connexion et de menu) */
.connexion,.menu,.page{padding-top:calc(max(env(safe-area-inset-top,0px),47px) + 34px)}
/* Retour toujours visible sur les PDF */
.vue .retour{position:fixed;z-index:20;left:max(14px,env(safe-area-inset-left,0px));top:calc(max(env(safe-area-inset-top,0px),47px) + 4px);background:#8EFF60;color:#1D1D1B;text-decoration:none;font-size:12px;letter-spacing:1px;font-weight:600;text-transform:uppercase;padding:9px 12px}
.vue h1{padding-top:34px}
.menu a[data-i]{display:flex;align-items:center;gap:10px}
/* Cases à cocher aux couleurs LDLD : carrés, vert au lieu du bleu du système */
input[type=checkbox]{-webkit-appearance:none;appearance:none;width:22px;height:22px;margin:0;border:1px solid #B4AB9B;background:transparent;border-radius:0;position:relative;flex:0 0 auto;vertical-align:middle}
input[type=checkbox]:checked{background:#8EFF60;border-color:#8EFF60}
input[type=checkbox]:checked::after{content:"";position:absolute;left:6px;top:2px;width:6px;height:11px;border:solid #1D1D1B;border-width:0 2px 2px 0;transform:rotate(45deg)}
.nombre,.pastille{background:#8EFF60;color:#1D1D1B;font-size:8px;letter-spacing:.8px;font-weight:700;line-height:1;padding:3px 5px;display:inline-block}
/* Texte non sélectionnable (pas de bulle Copier/Chercher), sauf dans les champs */
body{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}
input,textarea{-webkit-user-select:text;user-select:text}
/* Bouton RETOUR vert, fixe en haut à gauche sur toutes les pages */
.page .retour{position:fixed;z-index:20;left:max(14px,env(safe-area-inset-left,0px));top:calc(max(env(safe-area-inset-top,0px),47px) + 4px);background:#8EFF60;color:#1D1D1B;text-decoration:none;font-size:12px;letter-spacing:1px;font-weight:600;text-transform:uppercase;padding:9px 12px}
.page h1{padding-top:14px}
.connexion{position:relative}
.pied-connexion{position:absolute;left:26px;bottom:calc(env(safe-area-inset-bottom,0px) + 34px);font-size:15px;letter-spacing:.5px;line-height:1.15;color:#B4AB9B;font-weight:400}
.pied-connexion span{display:block}.pied-connexion span+span{margin-left:58px;margin-top:2px}
.connexion .formc{margin-top:110px}
.pied-connexion{display:block}
/* Grand écran (ordinateur, tablette en largeur) : lettrage à gauche, formulaire à droite */
@media (min-width:900px){
  .connexion{display:grid;grid-template-columns:1fr minmax(380px,520px);grid-template-rows:auto 1fr;column-gap:8vw;padding-left:7vw;padding-right:7vw;padding-top:56px;padding-bottom:56px;min-height:100vh}
  .connexion .logo{grid-column:1;grid-row:1}
  .connexion .formc{grid-column:2;grid-row:1 / span 2;align-self:center;margin-top:0}
  .connexion .aide{grid-column:2;grid-row:2;align-self:start;margin-top:0}
  .connexion .pied-connexion{position:static;grid-column:1;grid-row:2;align-self:end;font-size:clamp(44px,6.2vw,96px);line-height:1.02;letter-spacing:.5px;font-weight:300}
  .connexion .pied-connexion span+span{margin-left:.9em;margin-top:.06em}
  .menu,.page{max-width:760px;margin:0 auto}
}
/* Concept 2026-11-07 : lettrage L D L D / EMPLOYÉS sur toute la largeur, pastille à droite, point d'autoévaluation */
.pied-connexion{left:26px;right:26px;color:var(--tx2)}
.pied-connexion span,.pied-connexion span+span{display:flex;justify-content:space-between;margin:0}
.pied-connexion b{font-weight:200}
.pied-connexion .ldld{font-size:min(23vw,92px);line-height:1}
.pied-connexion .emp{font-size:15px;color:var(--tx);margin-top:8px}
.menu a[data-i]{justify-content:space-between;gap:10px}
.menu a[data-i] .pastille{width:8px;height:8px;padding:0;background:var(--tx2);font-size:0}
@media (min-width:900px){
  .connexion .pied-connexion{position:static;left:auto;right:auto}
  .pied-connexion .ldld{font-size:clamp(70px,10vw,170px)}
  .pied-connexion .emp{font-size:clamp(16px,1.6vw,26px)}
}
/* Couleurs du site Trak (2026-11-07) : fond grège clair, texte presque noir */
:root{--noir:#CECCC5;--tx:#0D1319;--tx2:#0D1319;--fil:#b4b1a9}
.connexion .logo,.menu .logo,.menu .symbole{filter:invert(1)}
input:-webkit-autofill{-webkit-box-shadow:0 0 0 1000px #CECCC5 inset!important;-webkit-text-fill-color:#0D1319!important}
.champ::placeholder{color:#6b6a66}

button,input,textarea,select{font-family:inherit}
/* Plan d'incendie en texte */
.txh{font-weight:300;font-size:18px;letter-spacing:.08em;text-transform:uppercase;margin:34px 0 8px;border-top:1px solid var(--fil);padding-top:14px}
.txs{font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:600;margin:22px 0 6px}
.txp{margin:8px 0;line-height:1.6}.txu{border:1.5px solid var(--tx);padding:14px 16px;margin:18px 0;line-height:1.6}.txu b{display:block;font-size:12px;letter-spacing:.14em;margin-bottom:4px;text-transform:uppercase}
.txl{padding-left:20px;margin:6px 0;line-height:1.6}.txk dt{font-size:11px;letter-spacing:.14em;text-transform:uppercase;opacity:.7;margin-top:10px}.txk dd{margin:0}
.txi{max-width:100%;display:block;margin:10px 0;background:#fff}

.rech{width:100%;box-sizing:border-box;background:transparent;color:var(--tx);border:1.5px solid var(--tx);border-radius:0;padding:12px 14px;font:16px/1.4 inherit;margin:6px 0 14px;-webkit-appearance:none}
.rech:focus{outline:2px solid #8EFF60;outline-offset:0}
.toc{list-style:none;padding:0;margin:6px 0}.toc li{border-top:1px solid var(--fil)}.toc a{display:block;padding:12px 0;color:var(--tx);text-decoration:none}
.rs{display:block;color:var(--tx);text-decoration:none;border-top:1px solid var(--fil);padding:12px 0;font-size:14px;line-height:1.5}.rs b{display:block;font-size:11px;letter-spacing:.14em;text-transform:uppercase;opacity:.7;margin-bottom:2px;font-weight:600}
mark{background:#8EFF60;color:#0D1319;padding:0 1px}
.txtab{overflow-x:auto;margin:10px 0}.txtab table{border-collapse:collapse;font-size:13px;min-width:100%}.txtab th,.txtab td{border:1px solid var(--fil);padding:6px 8px;text-align:left;vertical-align:top}.txtab th{font-size:11px;letter-spacing:.1em;text-transform:uppercase}

/* Le champ courriel ne devient jamais noir (remplissage automatique, survol, focus) */
input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus,input:-webkit-autofill:active,textarea:-webkit-autofill{-webkit-box-shadow:0 0 0 1000px #CECCC5 inset!important;box-shadow:0 0 0 1000px #CECCC5 inset!important;-webkit-text-fill-color:#0D1319!important;caret-color:#0D1319;transition:background-color 99999s ease-out 0s}
/* Visionneuse : bouton Retour en bas de l'écran, toujours visible au-dessus du PDF */
.vue .retour{top:auto;bottom:calc(max(env(safe-area-inset-bottom,0px),12px) + 10px);left:max(14px,env(safe-area-inset-left,0px));font-size:13px;padding:13px 18px}
.vue h1{padding-top:0}
.vue{padding-bottom:90px}
input,textarea{color-scheme:light}

/* Numéro de section à part : le texte long reste aligné à droite du numéro, jamais en dessous */
.toc a,.txh{display:flex;gap:14px;align-items:baseline}.nm{flex:0 0 28px}.tt{flex:1;min-width:0}

/* Rencontre : choix en pastilles carrées */
.chx{display:flex;flex-wrap:wrap;gap:8px;margin:4px 0 6px}.chx button{font:inherit;font-size:15px;background:transparent;border:1.5px solid var(--tx);color:var(--tx);padding:11px 14px;cursor:pointer;border-radius:0}.chx button[aria-pressed=true]{background:var(--tx);color:var(--noir)}
.dh{display:flex;gap:14px}.dh .champ{flex:1;min-width:0;color-scheme:light}

/* Calendrier */
.moisbar{display:flex;align-items:center;justify-content:space-between;margin:6px 0 10px}.moisbar b{font-weight:400;font-size:17px;letter-spacing:.14em}
.moisbar button{background:none;border:1.5px solid var(--tx);color:var(--tx);width:40px;height:40px;font:inherit;font-size:18px;border-radius:0;cursor:pointer}
.cg{display:grid;grid-template-columns:repeat(7,1fr)}.cj{font-size:11px;letter-spacing:.14em;text-align:center;padding:6px 0;opacity:.7}
.cd{aspect-ratio:1;display:flex;align-items:center;justify-content:center;font-size:15px}
.cd.cf{background:var(--tx);color:var(--noir);font-weight:500}.cd.cc{background:#8EFF60;color:#0D1319;font-weight:500}
.cd.cr{outline:1.5px solid var(--tx);outline-offset:-4px;font-weight:500}.cd.cf.cr{outline-color:var(--noir)}
.leg{display:flex;gap:18px;flex-wrap:wrap;font-size:12px;letter-spacing:.1em;text-transform:uppercase;margin-top:12px}.leg span{display:inline-flex;align-items:center;gap:7px}.leg .sq{width:9px;height:9px;display:inline-block}
.cli{display:flex;gap:14px;align-items:baseline;padding:11px 0;border-top:1px solid var(--fil)}.cdt{flex:0 0 74px;font-weight:500;letter-spacing:.06em}.chh{margin-left:auto;font-weight:500}
.txi.vide{min-height:120px;background:transparent;border:1px dashed var(--fil)}
