/* au-cabinet.fr — « Le monde du travail » : arbre de décision, frise de la reprise, calculateurs, courriers,
   sur le gabarit commun « façon MDPH ». Tailles en rem (suivent les réglages de texte) ; couleurs de la charte. */

/* ---------- cases à cocher en boutons (contexte, actions faites) ---------- */
.tr-coches{display:flex;flex-wrap:wrap;gap:.5rem .625rem}
.tr-coche{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem .875rem;border:2px solid var(--gm-encre);border-radius:3px;
  background:var(--gm-carte);cursor:pointer;font-weight:700;line-height:1.3}
.tr-coche small{font-weight:400;color:var(--gm-encre-3)}
.tr-coche input{width:1.125rem;height:1.125rem;accent-color:var(--ac-rubrique);flex:none}
.tr-coche:has(input:checked){background:var(--ac-rubrique-doux);box-shadow:3px 3px 0 var(--gm-encre)}
.gm-champ[hidden]{display:none!important}
.tr-date{display:inline-flex;flex-wrap:wrap;align-items:center;gap:.5rem;font-weight:700}
.tr-date input,.tr-champ input:not([type=radio]):not([type=checkbox]),.tr-champ select,.tr-lettre-form input,.tr-lettre-form textarea,.tr-lettre-form select{
  padding:.5rem .625rem;border:2px solid var(--gm-encre);border-radius:3px;font:inherit;font-size:1rem;background:var(--gm-carte);color:var(--gm-encre);max-width:100%}

/* ---------- progression de l'arbre ---------- */
.tr-etapes{display:flex;flex-wrap:wrap;gap:.375rem;margin:0 0 1rem;padding:0;list-style:none}
.tr-etapes li{padding:.25rem .625rem;border:2px solid var(--gm-encre);border-radius:999px;font:600 .8125rem/1.3 var(--ac-mono);letter-spacing:.04em;
  background:var(--gm-carte);color:var(--gm-encre-3)}
.tr-etapes li.ok{background:var(--gm-encre);color:#FFD84F}
.tr-etapes li::before{display:none}

/* ---------- liste d'actions (panneau de droite) ---------- */
.tr-actions{list-style:none;margin:.5rem 0 0;padding:0;display:grid;gap:.5rem}
.tr-action{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr);gap:.125rem .625rem;padding:.625rem .75rem;background:var(--gm-carte);
  border:2px solid var(--gm-encre);border-left:7px solid var(--tr-c,var(--ac-rubrique));border-radius:3px}
.tr-action input{grid-row:1/3;width:1.25rem;height:1.25rem;margin-top:.125rem;accent-color:#2F6B4F}
.tr-action .tr-quand{font:600 .75rem/1.3 var(--ac-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--gm-encre-3)}
.tr-action .tr-quoi{font-weight:700;line-height:1.35;color:var(--gm-encre)}
.tr-action .tr-comment{grid-column:2;font-size:var(--fs-petit);line-height:1.45;color:var(--gm-encre-2)}
.tr-action .tr-comment a{font-weight:700}
.tr-action.fait{opacity:.6}
.tr-action.fait .tr-quoi{text-decoration:line-through;text-decoration-color:#2F6B4F;text-decoration-thickness:2px}
.tr-action.urgent{--tr-c:#B5462C}
.tr-action.bientot{--tr-c:#D08A35}
.tr-action.info{--tr-c:#3A8288}
.tr-legende{display:flex;flex-wrap:wrap;gap:.25rem .875rem;margin:.5rem 0 0;font:600 .75rem/1.3 var(--ac-mono);color:var(--gm-encre-3)}
.tr-legende i{display:inline-block;width:.75rem;height:.75rem;margin-right:.3rem;border:1.5px solid var(--gm-encre);vertical-align:-.1rem}

/* ---------- frise de la reprise ---------- */
.tr-frise{position:relative;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.75rem;margin:1.25rem 0 .5rem;padding:0;list-style:none}
.tr-frise::before{content:"";position:absolute;left:0;right:0;top:1.25rem;height:6px;border-radius:3px;
  background:linear-gradient(90deg,#4F6FAE,#3A8288 30%,#D08A35 60%,#2F6B4F 85%,#9468B0)}
.tr-frise>li{position:relative;padding:0!important}
.tr-frise>li::before{display:none!important}
.tr-jalon{all:unset;box-sizing:border-box;display:block;width:100%;cursor:pointer;text-align:left;-webkit-tap-highlight-color:transparent}
.tr-jalon .tr-pt{display:grid;place-items:center;width:2.75rem;height:2.75rem;margin:0 0 .5rem;border:3px solid var(--gm-encre);border-radius:50%;
  background:var(--gm-carte);font:800 1.125rem/1 var(--ac-mono);color:var(--gm-encre);box-shadow:3px 3px 0 var(--gm-encre);transition:transform .15s ease}
.tr-jalon .tr-jt{display:block;font:800 1.0625rem/1.15 var(--ac-display);text-transform:uppercase;color:var(--gm-encre)}
.tr-jalon .tr-js{display:block;margin-top:.25rem;font:600 .78rem/1.35 var(--ac-mono);color:var(--gm-encre-3)}
.tr-jalon:hover .tr-pt,.tr-jalon:focus-visible .tr-pt{transform:translateY(-3px)}
.tr-jalon[aria-expanded="true"] .tr-pt{background:var(--gm-encre);color:#FFD84F;box-shadow:3px 3px 0 var(--ac-flamme,#F47A30)}
.tr-jalon:focus-visible{outline:3px solid var(--gm-flamme);outline-offset:3px}
.tr-fiche{margin:.75rem 0 0;padding:1rem 1.125rem;border:2.5px solid var(--gm-encre);border-left:8px solid var(--ac-rubrique);border-radius:3px;background:var(--gm-carte)}
.tr-fiche h3{margin-top:0!important;padding-top:0!important;border-top:0!important}
.tr-fiche dl{display:grid;grid-template-columns:minmax(8rem,auto) minmax(0,1fr);gap:.375rem 1rem;margin:.5rem 0 0}
.tr-fiche dt{font:600 .8125rem/1.5 var(--ac-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--gm-rub-txt)}
.tr-fiche dd{margin:0;line-height:1.55;color:var(--gm-encre-2)}
@media (max-width:760px){
  .tr-frise{grid-template-columns:minmax(0,1fr);gap:.5rem}
  .tr-frise::before{left:1.25rem;right:auto;top:0;bottom:0;width:6px;height:auto;background:linear-gradient(180deg,#4F6FAE,#3A8288 30%,#D08A35 60%,#2F6B4F 85%,#9468B0)}
  .tr-jalon{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:0 .75rem}
  .tr-jalon .tr-pt{grid-row:1/3;margin:0}
  .tr-fiche dl{grid-template-columns:minmax(0,1fr)}
}

/* ---------- calculateurs ---------- */
.tr-calc{display:grid;gap:.75rem 1rem;grid-template-columns:repeat(auto-fill,minmax(min(100%,15rem),1fr));align-items:start;margin:.75rem 0}
/* intitulé / case / aide sur 3 rangées partagées (subgrid) : les cases de saisie et le bouton s'alignent
   même quand un intitulé passe sur 2 ou 3 lignes ou qu'une aide est écrite dessous */
@supports (grid-template-rows:subgrid){
  .tr-calc .tr-champ{display:grid;grid-row:span 3;grid-template-rows:subgrid;row-gap:.3rem;align-content:start}
  .tr-calc .tr-champ>label,.tr-calc .tr-champ>span{align-self:end}
  .tr-calc .tr-champ>button{grid-row:2;align-self:end}
}
.tr-champ{display:flex;flex-direction:column;gap:.3rem}
.tr-champ label,.tr-champ>span{font:600 .8125rem/1.35 var(--ac-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--gm-encre-2)}
.tr-champ input:not([type=radio]):not([type=checkbox]),.tr-champ select{width:100%}
.tr-champ:has(.gm-chipset){grid-column:1/-1}
.tr-champ .gm-chipset{margin:0}
.tr-champ small{font-size:.8125rem;color:var(--gm-encre-3)}
.tr-formule{margin:.75rem 0 0;padding:.75rem .875rem;border:2px dashed var(--gm-filet);border-radius:3px;background:var(--gm-papier);
  font:500 .875rem/1.6 var(--ac-mono);color:var(--gm-encre-2);overflow-wrap:anywhere}
.tr-formule b{color:var(--gm-encre)}
.tr-ref{font-size:var(--fs-petit);color:var(--gm-encre-3)}
.tr-ref a{font-weight:700}
.tr-sortie{margin-top:.75rem}
.tr-sortie:empty{display:none}
.tr-res{padding:.75rem .875rem;border:2.5px solid var(--gm-encre);border-left:8px solid #2F6B4F;border-radius:3px;background:#EEF6F1}
.tr-res .tr-gros{display:block;font:800 1.75rem/1.1 var(--ac-mono);color:var(--gm-encre)}
.tr-res p{margin:.25rem 0 0}
.tr-res.alerte{border-left-color:#D08A35;background:#FFF6D8}
.tr-lignes{width:100%;border-collapse:collapse;margin:.5rem 0 0;font-size:.9375rem}
.tr-lignes td{padding:.25rem 0;border-bottom:1px dotted var(--gm-filet);vertical-align:top;color:var(--gm-encre-2)}
.tr-lignes td:last-child{text-align:right;font:600 .9375rem/1.4 var(--ac-mono);color:var(--gm-encre);white-space:nowrap;padding-left:.75rem}
.tr-verif{display:inline-block;padding:0 .375rem;border:1.5px solid #9A3A24;border-radius:999px;font:600 .72em/1.5 var(--ac-mono);text-transform:uppercase;
  letter-spacing:.04em;color:#9A3A24;white-space:nowrap;vertical-align:.08em}

/* ---------- tableaux ---------- */
.tr-comparatif td:first-child,.tr-comparatif th:first-child{font-weight:700;color:var(--gm-encre)}
.tr-oui{color:#2F6B4F;font-weight:700}
.tr-non{color:#9A3A24;font-weight:700}

/* ---------- questions de patients ---------- */
.tr-faq{display:grid;gap:.5rem;margin:.75rem 0 0}
.tr-faq details{border:2px solid var(--gm-encre);border-radius:3px;background:var(--gm-carte)}
.tr-faq summary{cursor:pointer;padding:.625rem .875rem;font-weight:700;line-height:1.4;color:var(--gm-encre);list-style-position:inside}
.tr-faq summary:hover{background:var(--ac-rubrique-doux)}
.tr-faq details[open] summary{border-bottom:1.5px solid var(--gm-filet);background:var(--ac-rubrique-doux)}
.tr-faq details>p{margin:.625rem .875rem}
.tr-faq .tr-src{display:block;margin:0 .875rem .625rem;font-size:var(--fs-petit);color:var(--gm-encre-3)}
.tr-score-faq{font:700 .875rem/1.3 var(--ac-mono);color:var(--gm-rub-txt)}

/* ---------- courriers ---------- */
.tr-lettre-choix{margin-bottom:.75rem}
.tr-lettre-form{display:grid;gap:.625rem 1rem;grid-template-columns:repeat(auto-fill,minmax(min(100%,16rem),1fr));margin:.75rem 0}
.tr-lettre-form label{display:flex;flex-direction:column;gap:.25rem;font:600 .8125rem/1.35 var(--ac-mono);letter-spacing:.04em;color:var(--gm-encre-2)}
.tr-lettre-form .tr-large{grid-column:1/-1}
.tr-lettre-form textarea{min-height:5rem;resize:vertical;font-family:var(--ac-body)}
.tr-lettre{margin:1rem 0 0;padding:2rem 2.25rem;max-width:46rem;background:#fff;border:1.5px solid var(--gm-filet);box-shadow:4px 4px 0 var(--gm-encre);
  font-family:Georgia,"Times New Roman",serif;font-size:1rem;line-height:1.55;color:#111}
.tr-lettre p{font-size:1rem;color:#111;max-width:none;margin:0 0 .75rem}
.tr-lettre .tr-l-ent{display:flex;justify-content:space-between;flex-wrap:wrap;gap:1rem;margin-bottom:1.25rem}
.tr-lettre .tr-l-obj{font-weight:700}
.tr-lettre .tr-l-sign{margin-top:1.5rem;text-align:right}
.tr-lettre .tr-vide{color:#8A6D1F;background:#FFF6D8;padding:0 .2rem}
.tr-lettre ul{margin:.25rem 0 .75rem 1.25rem!important;padding:0!important;list-style:disc!important}
.tr-lettre ul>li{padding:0!important;color:#111!important}
.tr-lettre ul>li::before{display:none!important}
@media (max-width:600px){.tr-lettre{padding:1rem .875rem}}

/* ---------- impression : seule la lettre ---------- */
@media print{
  body.tr-imprime>*:not(main),body.tr-imprime .gm-hero,body.tr-imprime .gm-rail,body.tr-imprime .gm-droite,body.tr-imprime .gm-navs,
  body.tr-imprime .gm-sec:not(.tr-a-imprimer),body.tr-imprime .tr-a-imprimer>*:not(#tr-courriers),
  body.tr-imprime #tr-courriers>*:not(.tr-lettre){display:none!important}
  body.tr-imprime .tr-a-imprimer{border:0!important;box-shadow:none!important;padding:0!important;margin:0!important;display:block!important;background:none!important}
  body.tr-imprime .gm-cols{display:block!important}
  body.tr-imprime .tr-lettre{display:block!important;border:0;box-shadow:none;max-width:none;padding:0;margin:0}
  body.tr-imprime .tr-lettre .tr-vide{background:none}
}
@media (prefers-reduced-motion:reduce){.tr-jalon .tr-pt{transition:none}}
