/* au-cabinet.fr — TND de l'enfant : composants propres à la page, sur le gabarit commun « façon MDPH »
   (/_commun/gabarit-mdph.css : bandeau, onglets, carte d'ouverture, trois colonnes, encadrés gm-callout, tableaux).
   Les classes ci-dessous sont celles de la fiche d'origine (grille de repérage, ordonnance, idées reçues…), habillées
   avec les couleurs et les polices du site. Fichier FABRIQUÉ par l'atelier TND (build-au-cabinet.py) : ne pas
   l'éditer dans le dépôt, éditer l'atelier. Tailles de texte en rem. */
.gm-page{
  --ink:var(--gm-encre); --ink-soft:var(--gm-encre-2); --ink-faint:var(--gm-encre-3);
  --line:var(--gm-filet); --line-strong:var(--gm-encre); --card:var(--gm-carte); --paper:var(--gm-papier);
  --amber:var(--gm-ambre-txt); --amber-soft:var(--gm-ambre-doux); --rust:var(--gm-rouge-txt); --rust-soft:var(--gm-rose);
  --green:var(--gm-vert-txt); --green-soft:var(--gm-vert-doux); --cyan:var(--gm-rub-txt); --cyan-soft:var(--gm-rub-doux);
  --slate:var(--gm-encre-2);
}
.gm .mono{font-family:var(--ac-mono);font-variant-numeric:tabular-nums}
sup.ref{font-family:var(--ac-mono);font-size:.62em;font-weight:600;line-height:0;vertical-align:super;margin-left:1px}
sup.ref a{color:var(--gm-rub-txt);text-decoration:none;padding:0}
sup.ref a:hover{text-decoration:underline}
sup.ref a+a::before{content:",";color:var(--gm-encre-3);padding:0 1px 0 0}

/* ---- listes à filets, ordonnances, légendes ---- */
ul.clean{list-style:none;margin:.625rem 0;padding:0}
.gm-sec ul.clean>li{position:relative;padding:.5rem 0 .5rem 1.375rem;border-bottom:1px solid var(--gm-filet);
  font-size:var(--fs-corps);line-height:1.6;color:var(--gm-encre-2)}
.gm-sec ul.clean>li:last-child{border-bottom:0}
.gm-sec ul.clean>li::before{content:"";position:absolute;left:2px;top:calc(.5rem + .8em - 3px);width:7px;height:7px;
  border-radius:1px;background:var(--gm-rub)}
.gm-sec ul.clean.dont>li::before{content:"✕";background:none;width:auto;height:auto;top:.5rem;color:var(--gm-rouge-txt);font-weight:700}
.gm-sec ul.clean.go>li::before{content:"✓";background:none;width:auto;height:auto;top:.5rem;color:var(--gm-vert-txt);font-weight:700}
ul.clean li b{color:var(--gm-encre)}
.gm-callout ul.clean{margin:.375rem 0 0}
.rx{max-width:82ch;margin:.5625rem 0;padding:.6875rem .875rem;background:var(--gm-papier);border:2px solid var(--gm-encre);
  border-left:6px solid var(--gm-encre-2);border-radius:3px;font-family:var(--ac-mono);font-size:.9rem;line-height:1.6;color:var(--gm-encre)}
.rx b{color:var(--gm-encre)}
.cap{display:block;margin-top:.5rem;font-size:var(--fs-petit);line-height:1.5;color:var(--gm-encre-3)}
.gm-tableau td.sit{font-weight:700;color:var(--gm-encre)}
.gm-tableau td b{color:var(--gm-encre)}
.gm-tableau tr.hide{display:none}

/* ---- fiches d'identité des troubles, cartes, âges ---- */
.fiche-tr{display:grid;grid-template-columns:9rem 1fr;gap:.375rem .875rem;max-width:82ch;margin:.625rem 0}
.fiche-tr dt{padding-top:.25rem;font-family:var(--ac-mono);font-weight:600;font-size:.78rem;letter-spacing:.06em;text-transform:uppercase;color:var(--gm-rub-txt)}
.fiche-tr dd{margin:0;padding-bottom:.5rem;border-bottom:1px solid var(--gm-filet);font-size:var(--fs-corps);line-height:1.55;color:var(--gm-encre-2)}
.fiche-tr dd b{color:var(--gm-encre)}
@media (max-width:600px){.fiche-tr{grid-template-columns:1fr}.fiche-tr dt{padding-top:.5rem}.fiche-tr dd{padding-bottom:.375rem}}
.trouble-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));gap:.75rem;margin:.875rem 0}
.tcard{display:flex;flex-direction:column;gap:.375rem;padding:.875rem 1rem;background:var(--gm-carte);border:2px solid var(--gm-encre);border-radius:3px}
.tcard .tt{font-family:var(--ac-display);font-weight:800;font-size:1.25rem;line-height:1.1;text-transform:uppercase;color:var(--gm-encre)}
.tcard .tp{font-family:var(--ac-mono);font-weight:600;font-size:.8rem;color:var(--gm-rub-txt)}
.tcard p{margin:0;font-size:.95rem;line-height:1.5;color:var(--gm-encre-2)}
.tcard a{font-weight:700;font-size:.95rem}
.age-tag{display:inline-block;margin-right:.25rem;padding:.0625rem .375rem;border-radius:3px;background:var(--gm-rub-doux);color:var(--gm-rub-txt);
  font-family:var(--ac-mono);font-weight:600;font-size:.78rem;vertical-align:middle}
.age-tag.r{background:var(--gm-rose);color:var(--gm-rouge-txt)}
.age-tag.a{background:var(--gm-ambre-doux);color:var(--gm-ambre-txt)}
.outils-filtre{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin:.5rem 0 .625rem;font-size:.95rem}
.outils-filtre select{padding:.4375rem .625rem;background:var(--gm-carte);color:var(--gm-encre);border:2px solid var(--gm-encre);border-radius:3px;font:inherit;font-size:1rem}

/* ---- idées reçues, histoire ---- */
.myth{max-width:82ch;margin:0 0 .625rem;padding:.875rem 1rem;background:var(--gm-carte);border:2px solid var(--gm-encre);
  border-left:8px solid var(--gm-rouge);border-radius:3px;font-size:var(--fs-corps);line-height:1.5}
.myth>b{color:var(--gm-rouge-txt)}
.myth .vrai{display:block;margin-top:.25rem;font-size:1rem;line-height:1.55;color:var(--gm-encre-2)}
.myth .vrai b{color:var(--gm-vert-txt)}
.timeline{list-style:none;max-width:82ch;margin:.75rem 0;padding:0;border-left:2px solid var(--gm-encre)}
.timeline li{position:relative;padding:.25rem 0 .75rem 1.125rem;font-size:var(--fs-corps);line-height:1.55;color:var(--gm-encre-2)}
.timeline li::before{content:"";position:absolute;left:-6px;top:.625rem;width:10px;height:10px;border-radius:50%;background:var(--gm-rub)}
.timeline li b{color:var(--gm-encre)}
.timeline li .y{display:block;font-family:var(--ac-mono);font-weight:600;font-size:.8rem;color:var(--gm-rub-txt)}

/* ---- les trois outils : grille de repérage, filtre, ordonnance (classes et code de la fiche) ---- */
.tool h4{margin:0 0 .25rem;font-family:var(--ac-display);font-weight:800;font-size:1.35rem;line-height:1.1;text-transform:uppercase;color:var(--gm-encre)}
.tool .th{margin-bottom:.75rem;font-size:.95rem;line-height:1.5;color:var(--gm-encre-3)}
.tool .inputs{display:flex;flex-wrap:wrap;gap:.75rem}
.tool .field{flex:1 1 9.5rem;display:flex;flex-direction:column;gap:.3125rem}
.tool .field.wide{flex:2 1 17.5rem}
.tool label{font-family:var(--ac-mono);font-weight:600;font-size:.78rem;letter-spacing:.05em;text-transform:uppercase;color:var(--gm-encre-2)}
.tool select,.tool input[type=number],.tool input[type=text]{width:100%;padding:.5625rem .6875rem;background:var(--gm-carte);color:var(--gm-encre);
  border:2px solid var(--gm-encre);border-radius:3px;font-family:var(--ac-body);font-size:1rem}
.tool select:focus,.tool input:focus{outline:none;box-shadow:3px 3px 0 var(--gm-flamme)}
.tool .out{margin-top:.875rem}
.tool .verdict{padding:.875rem 1rem;background:var(--gm-carte);border:2.5px solid var(--gm-encre);border-top:10px solid var(--gm-encre-2);border-radius:3px;
  font-size:1rem;line-height:1.55;color:var(--gm-encre-2)}
.tool .verdict.go{border-top-color:var(--gm-vert)}
.tool .verdict.warn{border-top-color:var(--gm-ambre)}
.tool .verdict.stop{border-top-color:var(--gm-rouge);background:color-mix(in srgb,var(--gm-rose) 45%,var(--gm-carte))}
.tool .verdict .vt{display:block;margin-bottom:.25rem;font-family:var(--ac-display);font-weight:900;font-size:1.35rem;line-height:1.1;text-transform:uppercase;color:var(--gm-encre)}
.tool .verdict b{color:var(--gm-encre)}
.tool .verdict .dem{margin-top:.5625rem;font-size:.95rem;color:var(--gm-encre-2)}
.tool label.habit,.tool label.chk{font-family:var(--ac-body);text-transform:none;letter-spacing:0;font-weight:400;font-size:1rem;color:var(--gm-encre)}
.tool label.habit b,.tool label.chk b{font-weight:700}
.tool .habit{display:flex;gap:.625rem;align-items:flex-start;padding:.5rem 0;border-bottom:1px solid var(--gm-filet);cursor:pointer}
.tool .habit:last-child{border-bottom:0}
.tool .habit input{flex:0 0 auto;width:1.125rem;height:1.125rem;margin-top:.1875rem;accent-color:var(--gm-encre)}
.tool .plan,.gm-panneau .plan{margin-top:.625rem;padding:.75rem;background:var(--gm-papier);border:2px solid var(--gm-encre);border-radius:3px;
  font-family:var(--ac-mono);font-size:.85rem;line-height:1.55;white-space:pre-wrap;color:var(--gm-encre)}
.tool .btns,.btns{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.625rem}
.grille .modes{display:flex;flex-wrap:wrap;gap:.5rem;margin:.375rem 0 .75rem}
.grille .modes button{padding:.5rem .875rem;background:var(--gm-carte);color:var(--gm-encre-2);border:2px solid var(--gm-encre);border-radius:3px;
  font-family:var(--ac-body);font-weight:700;font-size:.95rem;cursor:pointer}
.grille .modes button[aria-pressed="true"]{background:var(--gm-encre);color:#FFFDF7;box-shadow:3px 3px 0 var(--gm-flamme)}
.grille .dom{margin:1rem 0 .25rem;padding-bottom:.25rem;border-bottom:2px solid var(--gm-encre);font-family:var(--ac-mono);font-weight:600;
  font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;color:var(--gm-rub-txt)}
.grille .q{display:grid;grid-template-columns:1fr auto;gap:.5rem .75rem;align-items:center;padding:.5rem 0;border-bottom:1px solid var(--gm-filet);
  font-size:1rem;line-height:1.45;color:var(--gm-encre)}
.grille .q:last-child{border-bottom:0}
.grille .q .att{display:block;font-size:.85rem;color:var(--gm-encre-3)}
@media (max-width:480px){.grille .q{grid-template-columns:1fr}}
.grille .seg{display:inline-flex;overflow:hidden;background:var(--gm-carte);border:2px solid var(--gm-encre);border-radius:3px}
.grille .seg label{position:relative;cursor:pointer}
.grille .seg input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}
.grille .seg span{display:block;min-width:2.75rem;padding:.4375rem .6875rem;border-left:1.5px solid var(--gm-encre);font-family:var(--ac-mono);
  font-weight:600;font-size:.8rem;line-height:1.1;text-align:center;text-transform:none;letter-spacing:0;color:var(--gm-encre-2)}
.grille .seg label:first-child span{border-left:0}
.grille .seg input:checked+span{background:var(--gm-encre-2);color:#fff}
.grille .seg input[value="non"]:checked+span{background:var(--gm-rouge);color:#fff}
.grille .seg input[value="oui"]:checked+span{background:var(--gm-vert);color:#fff}
.grille .seg input:focus-visible+span{outline:3px solid var(--gm-flamme);outline-offset:-3px}
.grille .chk{display:flex;gap:.625rem;align-items:flex-start;padding:.4375rem 0;border-bottom:1px solid var(--gm-filet);cursor:pointer}
.grille .chk:last-child{border-bottom:0}
.grille .chk input{flex:0 0 auto;width:1.0625rem;height:1.0625rem;margin-top:.25rem;accent-color:var(--gm-rouge)}
.grille .counts{display:flex;flex-wrap:wrap;gap:.5rem;margin:.75rem 0 .25rem}
.grille .counts span{padding:.25rem .625rem;background:var(--gm-papier);border:1.5px solid var(--gm-encre);border-radius:999px;font-family:var(--ac-mono);font-size:.8rem;color:var(--gm-encre-2)}
.grille .counts b{color:var(--gm-encre)}
.grille details{margin-top:.625rem;padding:.5rem .75rem;background:var(--gm-carte);border:1.5px solid var(--gm-filet);border-radius:3px}
.grille summary{font-weight:700;font-size:.95rem;color:var(--gm-encre-2);cursor:pointer}
@media (pointer:coarse){.grille .seg span{min-height:44px;display:flex;align-items:center;justify-content:center}}

/* ---- panneau de droite : synthèse de la grille ---- */
.gm-panneau .tnd-verdict{padding:.75rem .875rem;background:var(--gm-carte);border:2px solid var(--gm-encre);border-top:8px solid var(--gm-encre-2);border-radius:3px;
  font-size:.95rem;line-height:1.5;color:var(--gm-encre-2)}
.gm-panneau .tnd-verdict.go{border-top-color:var(--gm-vert)}
.gm-panneau .tnd-verdict.warn{border-top-color:var(--gm-ambre)}
.gm-panneau .tnd-verdict.stop{border-top-color:var(--gm-rouge)}
.gm-panneau .tnd-verdict .vt{display:block;margin-bottom:.25rem;font-family:var(--ac-display);font-weight:900;font-size:1.15rem;line-height:1.1;text-transform:uppercase;color:var(--gm-encre)}
.gm-panneau .tnd-verdict .counts,.gm-panneau .tnd-verdict .dem{display:none}

/* ---- sources ---- */
.method-note{max-width:82ch;margin:.5rem 0 1.25rem;padding:1rem 1.125rem;background:var(--gm-carte);border:2px solid var(--gm-encre);
  border-radius:3px;font-size:1.02rem;line-height:1.55;color:var(--gm-encre-2)}
.method-note b{color:var(--gm-encre)}
.method-note .gm-btn{margin:.5rem 0 .75rem}
.refs{font-size:1rem;color:var(--gm-encre-2)}
.refs ol{list-style:none;counter-reset:r;margin:0;padding:0}
.refs li{counter-increment:r;position:relative;max-width:none;padding:.6875rem 0 .6875rem 2.25rem;border-bottom:1px solid var(--gm-filet);line-height:1.5;overflow-wrap:anywhere}
.refs li::before{content:counter(r);position:absolute;left:0;top:.75rem;font-family:var(--ac-mono);font-weight:600;font-size:.85rem;color:var(--gm-rub-txt)}
.refs li:target{background:#FFF3DF;border-radius:3px}
.refs .au{color:var(--gm-encre)}
.refs .id{font-family:var(--ac-mono);font-size:.85rem;color:var(--gm-encre-3);overflow-wrap:anywhere}
.refs .ctx{display:block;margin-top:2px;font-size:.92rem;color:var(--gm-encre-3)}

/* ---- impression : la synthèse de la grille ou le mémo parents (boutons de la page), seuls sur la feuille ---- */
.printzone{display:none}
@media print{
  .no-print{display:none!important}
  body.printing>*:not(.printzone){display:none!important}
  body.printing .printzone{display:block!important;padding:0;font-family:var(--ac-body);font-size:12pt;line-height:1.45;color:#000}
  body.printing .printzone h2{margin-bottom:6pt;font-family:var(--ac-display);font-size:18pt}
  body.printing .printzone pre{white-space:pre-wrap;font-family:var(--ac-body);font-size:11.5pt}
}

/* ---- générateur du dossier de la plateforme ---- */
#pcoTool details{margin:.625rem 0;padding:.5rem .75rem;background:var(--gm-carte);border:1.5px solid var(--gm-filet);border-radius:3px}
#pcoTool summary{font-weight:700;font-size:1rem;color:var(--gm-encre);cursor:pointer}
#pcoTool details[open] summary{margin-bottom:.5rem}
#pcoTool textarea,#pcoTool input[type=email],#pcoTool input[type=tel]{width:100%;padding:.5625rem .6875rem;background:var(--gm-carte);color:var(--gm-encre);
  border:2px solid var(--gm-encre);border-radius:3px;font-family:var(--ac-body);font-size:1rem;line-height:1.4}
#pcoTool textarea{resize:vertical}
#pcoTool .pco-tab table{min-width:32rem}
#pcoTool .pco-tab td{padding:.25rem .375rem;vertical-align:middle}
#pcoTool .pco-tab input{width:100%;min-width:5.5rem;padding:.3125rem .4375rem;font-size:.95rem}
#pcoTool .pco-coches{display:grid;grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));column-gap:.875rem}
#pcoTool .pco-q{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.25rem .75rem;padding:.4375rem 0;border-bottom:1px solid var(--gm-filet);font-size:1rem}
#pcoTool .pco-r{display:inline-flex;gap:.875rem;white-space:nowrap}
#pcoTool .pco-r label{display:inline-flex;gap:.3125rem;align-items:center;font-family:var(--ac-body);text-transform:none;letter-spacing:0;font-size:1rem;font-weight:400;color:var(--gm-encre);cursor:pointer}
#pcoTool .pco-pf{display:flex;gap:.625rem;align-items:flex-start;margin:.375rem 0;padding:.5625rem .625rem;background:var(--gm-carte);border:2px solid var(--gm-encre);border-radius:3px;
  font-family:var(--ac-body);text-transform:none;letter-spacing:0;font-weight:400;font-size:1rem;line-height:1.45;color:var(--gm-encre);cursor:pointer}
#pcoTool .pco-pf.autre{cursor:default;background:var(--gm-papier);border-width:1.5px}
#pcoTool .pco-pf input{flex:0 0 auto;margin-top:.25rem}
#pcoTool .pco-pf a{overflow-wrap:anywhere}
#pcoTool .pco-doute{color:var(--gm-rouge-txt);font-size:.9rem}
