/* Ludiscapade : le kit papier (public/js/ludiscapade-papier.js). Des pages A4, lisibles en noir et
   blanc : les formes (✓ ✗ ☐ ✂, pointillés) disent tout. À l'écran : un aperçu, page par page. */
#esc-impr-z{position:fixed;inset:0;z-index:1100;background:#d9dde3;overflow:auto;padding:0 0 40px}
#esc-impr-z[hidden]{display:none}
.kp-barre{position:sticky;top:0;z-index:2;display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:10px 16px;background:#fff;border-bottom:1px solid #bbb;font:14px -apple-system,'Segoe UI',sans-serif}
.kp-barre b{margin-right:auto}
.kp-pages{color:#111;font:11pt/1.45 'Segoe UI',Arial,sans-serif}
.kp-page{position:relative;background:#fff;width:210mm;min-height:297mm;margin:12px auto;padding:14mm 15mm 18mm;box-shadow:0 2px 12px rgba(0,0,0,.18);box-sizing:border-box}
.kp-page footer{position:absolute;left:15mm;right:15mm;bottom:7mm;font-size:8.5pt;color:#555;border-top:1px solid #bbb;padding-top:2mm}
.kp-page h1{font-size:22pt;margin:2mm 0 4mm}.kp-page h2{font-size:15pt;margin:0 0 4mm}.kp-page h3{font-size:12pt;margin:5mm 0 2mm}
.kp-sur-t{font-size:9.5pt;text-transform:uppercase;letter-spacing:.06em;color:#444;margin:0}
.kp-grand{font-size:13pt;font-weight:600}
.kp-sous{color:#555;font-weight:400}
.kp-aide{font-size:9.5pt;color:#333;font-style:italic}
.kp-recit{font-size:12pt}
.kp-t{font-weight:700;margin:3mm 0 1mm}
.kp-cadre{border:1.5pt solid #111;border-radius:2mm;padding:2mm 3mm}
.kp-coche{list-style:none;padding-left:0}.kp-coche li{margin-bottom:1.5mm}
.kp-env{border:1pt dashed #555;border-radius:2mm;padding:1.5mm 3mm;margin-bottom:2mm;break-inside:avoid}.kp-env p{margin:0}.kp-env ul{margin:1mm 0 0;padding-left:6mm;font-size:10pt}
blockquote{margin:2mm 0 4mm;padding:2mm 4mm;border-left:3pt solid #111;font-style:italic}
.kp-vagues li{margin-bottom:2mm}
.kp-solution{break-inside:avoid;border-bottom:1px solid #ccc;padding-bottom:2mm;margin-bottom:2mm}.kp-solution h3{margin:2mm 0 1mm}.kp-solution p{margin:0 0 1mm}
.kp-table{width:100%;border-collapse:collapse;font-size:10pt}.kp-table th,.kp-table td{border:1pt solid #333;padding:1.5mm 2mm;text-align:left;vertical-align:top}.kp-table th{background:#eee}
.kp-suivi-t td{height:9mm}
.kp-carnet-t td{height:11mm}.kp-carnet-t td.kp-blanc{width:45%}
.kp-lignes-v p{border-bottom:1pt dotted #555;height:8mm;margin:0}
.kp-tete{display:flex;justify-content:space-between;font-size:9pt;color:#444;border-bottom:1px solid #999;margin-bottom:3mm;padding-bottom:1mm}
.kp-code{font-size:12pt;font-weight:700;margin-top:5mm;display:flex;align-items:center;gap:2mm;flex-wrap:wrap}
.kp-code span{display:inline-block;width:11mm;height:12mm;border:1.5pt solid #111;border-radius:1.5mm}.kp-code span.kp-long{width:70mm}
.kp-prov{display:flex;align-items:center;justify-content:center;border:1.5pt dashed #777;color:#555;background:repeating-linear-gradient(45deg,#f3f3f3 0 3mm,#fff 3mm 6mm);min-height:30mm;font-size:9pt;text-align:center;padding:2mm}
.kp-lieu-img,.kp-lieu .kp-prov{display:block;width:100%;max-height:120mm;object-fit:contain;margin:3mm 0}
.kp-doc{border:1pt solid #555;border-radius:2mm;padding:2mm 3mm;margin:3mm 0;break-inside:avoid}
.kp-doc-img{position:relative}.kp-doc-img img,.kp-doc-img .kp-prov{display:block;width:100%;max-height:130mm;object-fit:contain}
.kp-sur{position:absolute;transform:translate(-50%,-50%);background:#fff;border:1pt solid #111;border-radius:1mm;padding:0 2mm;font-weight:800}
.kp-texte{white-space:normal;font-size:11.5pt;line-height:1.6}
.kp-msg{display:flex;flex-wrap:wrap;gap:4mm 7mm;margin:3mm 0}
.kp-mot{display:flex;gap:2mm}.kp-case{display:flex;flex-direction:column;align-items:center;gap:1mm}.kp-case b{font-size:18pt;min-width:9mm;text-align:center}
.kp-case i{display:block;width:9mm;height:10mm;border:1pt solid #111;border-radius:1mm}
.kp-sig-img{width:10mm;height:10mm;object-fit:contain}
.kp-cle{display:flex;flex-wrap:wrap;gap:2mm 5mm}.kp-cle span{border:1pt solid #555;border-radius:1.5mm;padding:0 2mm;display:inline-flex;align-items:center;gap:1mm}
.kp-grille,.kp-cache{border-collapse:collapse;margin:2mm 0}.kp-grille th,.kp-grille td,.kp-cache td{border:1pt solid #333;width:9mm;height:9mm;text-align:center;font-weight:700}
.kp-masque td{background:repeating-linear-gradient(45deg,#bbb 0 1.5mm,#ddd 1.5mm 3mm)}.kp-masque td.trou{background:#fff;border:1.5pt dashed #111;font-size:8pt}.kp-masque td.kp-haut{background:#fff;border:none;height:5mm}
.kp-indices li{margin-bottom:1.5mm}
.kp-lignes{list-style:none;padding:0}.kp-lignes li{margin-bottom:4mm}
.kp-cartes{display:grid;grid-template-columns:repeat(2,1fr)}
/* Le chemin : des dessins, de grandes images, rien qui ne repose sur la couleur */
.kp-pic{display:inline-block;width:9mm;height:9mm;vertical-align:middle;color:#111}.kp-pic svg,.kp-forme svg{display:block;width:100%;height:100%}
.kp-forme{display:block;width:20mm;height:20mm;color:#111}
.kp-imgs{display:flex;flex-wrap:wrap;gap:4mm;justify-content:center;margin:4mm 0}
.kp-img{display:flex;flex-direction:column;align-items:center;gap:2mm;width:50mm;padding:3mm;border:1pt solid #333;break-inside:avoid;font-size:14pt}
.kp-img-img{width:40mm;height:36mm;object-fit:contain}
.kp-quantite{display:flex;flex-wrap:wrap;gap:1mm;justify-content:center}.kp-modele{margin:3mm 0}
.kp-q-img{width:11mm;height:11mm;object-fit:contain}
.kp-pos{position:absolute;transform:translate(-50%,0);background:#fff;border-radius:50%;line-height:0}
.kp-suite{display:flex;gap:2mm;justify-content:center;margin:5mm 0;flex-wrap:wrap}.kp-suite>span{width:22mm;height:22mm;border:1pt solid #111;display:flex;align-items:center;justify-content:center}.kp-suite>span.trou{border:2pt dashed #111}
.kp-suite-p{display:flex;flex-wrap:wrap;gap:3mm;justify-content:center}.kp-suite-p .kp-img{width:34mm;border-style:dashed}
.kp-plan.kp-plan-f td{width:26mm;height:26mm;font-size:24pt;text-align:center}.kp-plan-f{display:flex;justify-content:center;margin:4mm 0}
.kp-plan.kp-plan-f td i{position:static;font-size:26pt;font-style:normal}.kp-plan-f .kp-pic{width:15mm;height:15mm}
.kp-indications{list-style:none;padding:0;font-size:14pt}.kp-indications li{padding:1mm 0}
.kp-ordre.kp-ordre-i{flex-wrap:wrap;justify-content:center}.kp-ordre.kp-ordre-i span{width:23mm;height:26mm;align-items:center;justify-content:center;flex-direction:column;font-size:14pt}.kp-ordre-i .kp-carte-img{width:20mm;height:17mm}.kp-ordre-i small{font-size:8pt;line-height:1}.kp-ordre-i .fixe{border-width:2pt}
.kp-cartes-i .kp-carte{flex-direction:column}.kp-cartes-i .kp-carte-img{width:40mm;height:30mm}
.kp-fiche-p .kp-recit{font-size:15pt}.kp-env-n{font-size:30pt;border:2pt solid #111;border-radius:3mm;padding:0 4mm}
.kp-train{display:flex;flex-wrap:wrap;gap:2mm;justify-content:center;margin-top:8mm}.kp-train span{display:flex;align-items:center;justify-content:center;width:27mm;height:40mm;border:1.5pt dashed #111;font-size:28pt}.kp-train .fixe{border-style:solid}.kp-train .kp-portrait{max-width:24mm;max-height:36mm}
.kp-etiq-n b{font-size:44pt}
.kp-carte{border:1pt dashed #333;padding:3mm;display:flex;align-items:center;gap:3mm;min-height:20mm;break-inside:avoid}.kp-carte span{flex:1}.kp-carte b{border:1.5pt solid #111;border-radius:1.5mm;padding:0 2mm;font-size:14pt}
.kp-carte-img{width:16mm;height:16mm;object-fit:contain}
.kp-ordre{display:flex;gap:2mm}.kp-ordre span{width:14mm;height:12mm;border:1pt solid #111;display:flex;align-items:flex-start;justify-content:flex-start;font-size:8pt;padding:.5mm}
.kp-balances{display:grid;grid-template-columns:1fr 1fr;gap:3mm}
.kp-balance{margin:0;border:1pt solid #555;border-radius:2mm;padding:2mm}.kp-balance figcaption{font-size:9pt;text-align:center;margin-top:1mm}
.kp-fleau{display:flex;align-items:flex-end;justify-content:center;gap:3mm;border-bottom:2pt solid #111;padding-bottom:1mm}
.kp-plateau{display:flex;flex-wrap:wrap;gap:1mm;justify-content:center;min-width:20mm;min-height:12mm;border-bottom:1.5pt solid #555;border-radius:0 0 8mm 8mm;padding:1mm}
.kp-pese{width:10mm;height:10mm;object-fit:contain}.kp-plateau .kp-prov{min-height:10mm;width:10mm;padding:0;font-size:6pt}
.kp-poids{border:1.5pt solid #111;border-radius:1mm;padding:1mm 2mm;font-weight:800}
.kp-options li{margin-bottom:2mm}
.kp-scene{position:relative}.kp-scene-img,.kp-scene .kp-prov{display:block;width:100%;height:auto;min-height:60mm}
.kp-num{position:absolute;transform:translate(-50%,-50%);width:7mm;height:7mm;border-radius:50%;background:#fff;border:1.5pt solid #111;font-weight:800;display:flex;align-items:center;justify-content:center;font-size:10pt}
.kp-deducs{display:flex;flex-wrap:wrap;gap:4mm}.kp-deduc{border-collapse:collapse}.kp-deduc th,.kp-deduc td{border:1pt solid #333;padding:1mm 2mm;font-size:10pt}.kp-deduc td{width:12mm;height:10mm}
.kp-plan table{border-collapse:collapse}.kp-plan th{width:6mm;font-size:9pt}.kp-plan td{position:relative;width:13mm;height:13mm;border:1pt solid #333;text-align:center;font-size:13pt}
.kp-rose{font-weight:800;margin:0 0 1mm}.kp-ic{position:absolute;left:.5mm;top:0;font-size:7pt;font-style:normal}.kp-dep{position:absolute;right:.5mm;top:0;font-size:7pt;font-style:normal}
.kp-dechire{position:relative;border:1pt solid #111}.kp-dechire img{display:block;width:100%}
.kp-coupe-v{position:absolute;top:0;bottom:0;border-left:1.5pt dashed #111}.kp-coupe-h{position:absolute;left:0;right:0;border-top:1.5pt dashed #111}
.kp-grille-cartes{display:grid;grid-template-columns:repeat(2,1fr)}
.kp-carte-o{border:1pt dashed #333;padding:3mm;display:flex;flex-direction:column;align-items:center;gap:1mm;text-align:center;min-height:48mm;position:relative;break-inside:avoid}
.kp-obj-img{width:26mm;height:26mm;object-fit:contain}.kp-carte-o .kp-prov{width:26mm;min-height:26mm}
.kp-carte-o em{position:absolute;right:3mm;top:3mm;font-style:normal;font-weight:800;font-size:14pt;border:1.5pt solid #111;border-radius:50%;width:11mm;height:11mm;display:flex;align-items:center;justify-content:center}
.kp-pli{border:1pt dashed #333;min-height:48mm;display:flex;flex-direction:column;break-inside:avoid}
.kp-pli-h{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;font-weight:700;border-bottom:1pt dashed #777;padding:2mm}
.kp-pli-h span{font-weight:400;font-size:9pt}.kp-pli-h small{font-weight:400;font-size:7.5pt;color:#666;margin-top:1mm}
.kp-pli-b{flex:1;transform:rotate(180deg);display:flex;flex-direction:column;justify-content:center;padding:2mm 3mm;font-size:10pt}.kp-pli-b p{margin:0 0 1mm}
.kp-etiq{display:grid;grid-template-columns:repeat(2,1fr)}
.kp-etiq div{border:1pt dashed #333;padding:4mm;display:flex;flex-direction:column;align-items:center;gap:1mm;text-align:center;min-height:38mm;justify-content:center}
.kp-etiq b{font-size:28pt;border:2pt solid #111;border-radius:50%;width:16mm;height:16mm;display:flex;align-items:center;justify-content:center}.kp-etiq span{font-size:14pt;font-weight:700}.kp-etiq small{font-size:8.5pt}
@page{size:A4;margin:0}
@media print{
  body.esc-imprime>*:not(#esc-impr-z){display:none!important}
  body.esc-imprime{background:#fff}
  #esc-impr-z{position:static;overflow:visible;background:#fff;padding:0}
  #esc-impr-z .kp-barre{display:none}
  .kp-page{margin:0;box-shadow:none;break-after:page;page-break-after:always}
}
/* Les portraits, le diplôme du groupe (27/10/2026) */
.kp-portrait{width:14mm;height:14mm;object-fit:cover;border-radius:50%;border:.4mm solid #999;vertical-align:middle;margin-right:2mm;float:left}
.kp-dip{margin:20mm auto 0;width:170mm;text-align:center;padding:12mm;border:2mm double #5B47B8;border-radius:4mm}
.kp-dip-t{font-size:22pt;font-weight:800;margin:0 0 4mm} .kp-dip-noms{height:22mm;border-bottom:.3mm dotted #666;margin:2mm 10mm 6mm} .kp-dip-x{font-style:italic;font-size:13pt}
.kp-dip-date{margin-top:8mm} .kp-dip-s{display:flex;gap:3mm;align-items:center;justify-content:flex-end;margin-top:6mm;font-weight:700} .kp-dip-s .kp-portrait{float:none}
/* Le diplôme du kit (30/10/2026) : une page A4 en paysage (les styles .dip4 : ludiscapade.css) ; l'affiche dessinée */
.kp-page.kp-diplome{width:297mm;min-height:210mm;height:210mm;padding:0;page:diplome}.kp-page.kp-diplome footer{display:none}
.kp-affiche svg{display:block;width:100%;height:auto}
.kp-tete-i img{transform:scaleX(-1)}
