/* fonctions/export-tableur/impression-tableau.css — « Imprimer le tableau » (impression-tableau.js)
   La fenêtre (#impressionTableauOverlay) avec son aperçu, et les pages (.itp-page) : Colonnes et Plan en paysage,
   Compact en portrait, A4 ou A3. Pas de <style> en ligne (CSP) : l'orientation passe par des pages nommées. */

/* ---- Fenêtre : style commun des fenêtres (interface/fenetres-communes.css) ----
   Tête, corps, pied, libellés (.field-label), liste déroulante (.field select) et boutons du pied viennent du style
   commun ; ici seulement la largeur, la disposition en deux colonnes et le contenu propre. */
.it-modal{--u:calc(1px * var(--ui-scale-factor));max-width:none;width:min(calc(900 * var(--u)),calc(100vw - calc(18 * var(--u))));max-height:calc(100vh - 32px);display:flex;flex-direction:column;}
.it-corps{display:grid;grid-template-columns:calc(232 * var(--u)) minmax(0,1fr);max-height:none;overflow:auto;}
.it-reglages{display:flex;flex-direction:column;gap:calc(8 * var(--u));min-width:0;}
.it-rangee{display:flex;gap:calc(4 * var(--u));}
.it-rangee + .it-rangee{margin-top:calc(4 * var(--u));}
.it-rangee select{flex:1;min-width:0;}
.it-choix{flex:1;background:var(--surface-2);color:var(--text-dim);border:calc(1 * var(--u)) solid var(--border-soft);border-radius:calc(5 * var(--u));font:inherit;font-size:calc(9 * var(--u));font-weight:600;padding:calc(4 * var(--u)) calc(8 * var(--u));cursor:pointer;}
.it-choix[aria-pressed="true"],.it-style[aria-pressed="true"]{color:var(--text);border-color:var(--accent);box-shadow:0 0 0 calc(1 * var(--u)) var(--accent);}
.it-styles{display:grid;grid-template-columns:1fr 1fr 1fr;gap:calc(5 * var(--u));}
.it-style{display:flex;flex-direction:column;align-items:flex-start;gap:calc(2 * var(--u));text-align:left;background:var(--surface-2);color:var(--text);border:calc(1 * var(--u)) solid var(--border-soft);border-radius:calc(5 * var(--u));padding:calc(5 * var(--u));font:inherit;cursor:pointer;}
.it-style b{font-size:calc(9 * var(--u));font-weight:600;}
.it-style small{font-size:calc(8 * var(--u));color:var(--text-faint);line-height:1.3;}
.it-vignette{display:flex;gap:calc(2 * var(--u));width:100%;height:calc(34 * var(--u));padding:calc(3 * var(--u));background:#fff;border-radius:calc(3 * var(--u));margin-bottom:calc(2 * var(--u));position:relative;}
.it-vignette i{display:block;border-radius:1px;}
.it-vignette.colonnes i{flex:1;background:linear-gradient(#5b8dd9 0 18%,#e8edf7 18%);}
.it-vignette.colonnes i:nth-child(2){background:linear-gradient(#9d7bd8 0 18%,#efe9fa 18%);}
.it-vignette.colonnes i:nth-child(3){background:linear-gradient(#4bb679 0 18%,#e6f5ec 18%);}
.it-vignette.colonnes i:nth-child(4){background:linear-gradient(#d98a3d 0 18%,#f8ecdf 18%);}
.it-vignette.plan i{position:absolute;width:24%;}
.it-vignette.plan i:nth-child(1){left:6%;top:12%;height:52%;background:linear-gradient(#4fb3c9 0 22%,#e3f3f6 22%);}
.it-vignette.plan i:nth-child(2){left:38%;top:30%;height:60%;background:linear-gradient(#d9b64e 0 22%,#f8f1dc 22%);}
.it-vignette.plan i:nth-child(3){left:70%;top:10%;height:40%;background:linear-gradient(#d9584f 0 22%,#f8e2e0 22%);}
.it-vignette.plan u{position:absolute;left:30%;top:30%;width:8%;border-top:1px solid #8a90a0;}
.it-vignette.compact span{flex:1;display:flex;flex-direction:column;gap:1.5px;}
.it-vignette.compact i{flex:1;background:#e8edf7;}
.it-vignette.compact i:first-child{flex:0 0 3px;background:#5b8dd9;}
.it-vignette.compact span:nth-child(2) i:nth-child(2){flex:0 0 3px;background:#d9584f;}
.it-vignette.compact span:nth-child(3) i:first-child{background:#4bb679;}
.it-listes{border:calc(1 * var(--u)) solid var(--border-soft);border-radius:calc(5 * var(--u));background:var(--surface-2);max-height:calc(118 * var(--u));overflow:auto;padding:calc(3 * var(--u)) 0;}
.it-listes label{display:flex;align-items:center;gap:calc(5 * var(--u));padding:calc(2 * var(--u)) calc(7 * var(--u));font-size:calc(9 * var(--u));color:var(--text);cursor:pointer;}
.it-listes label i{width:calc(7 * var(--u));height:calc(7 * var(--u));border-radius:50%;flex:none;}
.it-listes label span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.it-listes small{color:var(--text-faint);font-size:calc(8.5 * var(--u));}
.it-listes input,.it-case input{margin:0;width:calc(11 * var(--u));height:calc(11 * var(--u));accent-color:var(--accent);}
.it-tout{display:flex;gap:calc(8 * var(--u));margin-top:calc(3 * var(--u));}
.it-tout button{background:none;border:0;padding:0;font:inherit;font-size:calc(8.5 * var(--u));color:var(--accent);cursor:pointer;}
.it-case{display:flex;align-items:center;gap:calc(6 * var(--u));font-size:calc(9 * var(--u));color:var(--text);cursor:pointer;}
.it-scene{display:flex;flex-direction:column;gap:calc(6 * var(--u));min-width:0;}
.it-apercu{display:flex;justify-content:center;align-items:flex-start;padding:calc(8 * var(--u));background:#5d6270;border-radius:calc(4 * var(--u));}
.it-feuille{position:relative;overflow:hidden;background:#fff;box-shadow:0 calc(2 * var(--u)) calc(10 * var(--u)) rgba(0,0,0,.45);}
.it-feuille .itp-page,.it-mini .itp-page{transform:scale(var(--k));transform-origin:0 0;}
.it-rien{margin:0;padding:calc(24 * var(--u));text-align:center;color:#6b7280;background:#fff;border-radius:calc(3 * var(--u));}
.it-nav{display:flex;align-items:center;justify-content:center;gap:calc(8 * var(--u));font-size:calc(9 * var(--u));color:var(--text-dim);}
.it-nav button{width:calc(22 * var(--u));height:calc(20 * var(--u));background:var(--surface-2);color:var(--text);border:calc(1 * var(--u)) solid var(--border-soft);border-radius:calc(5 * var(--u));font:inherit;cursor:pointer;}
.it-nav button:disabled{opacity:.35;cursor:default;}
.it-pellicule{display:flex;gap:calc(5 * var(--u));overflow-x:auto;padding:calc(2 * var(--u)) calc(1 * var(--u)) calc(4 * var(--u));}
.it-pellicule.it-grille-feuilles{display:grid;justify-content:center;gap:calc(2 * var(--u));overflow:visible;}
.it-mini{flex:none;position:relative;overflow:hidden;padding:0;border:0;background:#fff;border-radius:2px;outline:calc(1 * var(--u)) solid var(--border-soft);cursor:pointer;text-align:left;}
.it-mini[aria-current="true"]{outline:calc(2 * var(--u)) solid var(--accent);}
.it-mini em{position:absolute;right:2px;bottom:1px;padding:0 2px;border-radius:2px;background:rgba(255,255,255,.85);color:#1d2230;font-style:normal;font-size:calc(8 * var(--u));font-weight:700;}
.it-mini.it-sautee{background:transparent;outline-style:dashed;cursor:default;}
.it-mini.it-sautee em{background:none;color:var(--text-faint);}
.it-modal .modal-foot .it-resume{margin-right:auto;font-size:calc(8.5 * var(--u));line-height:1.35;color:var(--text-faint);}
.it-actions{display:flex;gap:calc(6 * var(--u));}
.it-imprimer{background:var(--accent);color:#0e1512;border-color:var(--accent);}
.it-imprimer:disabled{opacity:.45;cursor:default;}
@media (max-width:760px){ .it-corps{grid-template-columns:1fr;} }

/* ---- Impression : seules les pages ---- */
#impressionTableauFeuilles{display:none;}
#impressionTableauMesure{position:absolute;left:-10000px;top:0;visibility:hidden;pointer-events:none;}
@media print{
 body.impression-tableau > *:not(#impressionTableauFeuilles){display:none !important;}
 body.impression-tableau #impressionTableauFeuilles{display:block !important;}
 html:has(body.impression-tableau),body.impression-tableau{background:#fff !important;}
}
@page tableauA4L{size:A4 landscape;margin:0;}
@page tableauA3L{size:A3 landscape;margin:0;}
@page tableauA4P{size:A4 portrait;margin:0;}
@page tableauA3P{size:A3 portrait;margin:0;}

/* ---- Pages (aperçu réduit et impression) ---- */
.itp-page,.itp-page *{box-sizing:border-box;-webkit-print-color-adjust:exact;print-color-adjust:exact;}
.itp-page{position:relative;overflow:hidden;padding:9mm 9mm 0;background:#fff;color:#1d2230;font-family:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;font-size:8.5pt;line-height:1.3;text-align:left;break-after:page;page-break-after:always;}
.itp-page.A4L{page:tableauA4L;width:297mm;height:210mm;}
.itp-page.A3L{page:tableauA3L;width:420mm;height:297mm;}
.itp-page.A4P{page:tableauA4P;width:210mm;height:297mm;}
.itp-page.A3P{page:tableauA3P;width:297mm;height:420mm;}
.itp-page.itp-mesure{width:auto;height:auto;padding:0;overflow:visible;}
.itp-entete{display:flex;align-items:flex-end;gap:4mm;height:13mm;margin-bottom:3.5mm;padding-bottom:1.5mm;border-bottom:0.4mm solid #1d2230;}
.itp-entete-texte{flex:1;min-width:0;}
.itp-entete h1{margin:0;font-size:15pt;line-height:1.1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.itp-sous{margin-top:0.6mm;color:#6b7280;font-size:8pt;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.itp-miniplan{flex:none;}
.itp-grille{display:inline-grid;gap:0.6mm;align-self:center;}
.itp-grille i{display:block;width:3.4mm;height:2.4mm;border-radius:0.4mm;background:#e4e6ec;}
.itp-grille i.itp-ici{background:#5b8dd9;}
.itp-repere{font-size:20pt;line-height:1;color:#5b8dd9;}
.itp-pied{position:absolute;left:9mm;right:9mm;bottom:4mm;display:flex;justify-content:space-between;gap:4mm;color:#8a90a0;font-size:7pt;}
.itp-colonnes{display:grid;align-items:start;}
.itp-colonne{display:flex;flex-direction:column;gap:3mm;}
.itp-liste{padding:0 1.6mm 1.6mm;border-radius:2mm;background:color-mix(in srgb,var(--lc) 9%,#fff);}
.itp-tete{display:flex;align-items:baseline;gap:2mm;margin:0 -1.6mm 1.6mm;padding:1.6mm 2.4mm;border-radius:2mm 2mm 0 0;background:var(--lc);color:var(--lt);}
.itp-tete b{flex:1;min-width:0;font-size:10pt;line-height:1.2;}
.itp-tete span{font-size:7.5pt;font-weight:600;white-space:nowrap;opacity:.9;}
.itp-souscol{margin:0.6mm 0.4mm 1.2mm;font-size:7.5pt;font-weight:700;color:#4b5563;}
.itp-carte{position:relative;margin-bottom:1.4mm;padding:1.5mm 2mm;border:0.25mm solid #d9dce3;border-radius:1.4mm;background:#fff;break-inside:avoid;page-break-inside:avoid;}
.itp-carte.itp-couleur{border-left:1.3mm solid var(--cc);padding-left:1.8mm;}
.itp-carte:last-child{margin-bottom:0;}
.itp-etiquettes{display:flex;flex-wrap:wrap;gap:0.8mm;margin-bottom:0.9mm;}
.itp-etiquettes i{padding:0.25mm 1.3mm;border-radius:0.9mm;background:var(--e);color:var(--et);font-style:normal;font-weight:700;font-size:6.5pt;line-height:1.25;}
.itp-titre{font-weight:600;font-size:9pt;line-height:1.25;overflow-wrap:anywhere;}
.itp-infos{display:flex;flex-wrap:wrap;gap:0.8mm 1.2mm;margin-top:0.9mm;font-size:7pt;color:#374151;}
.itp-infos span{display:inline-flex;align-items:center;gap:0.7mm;padding:0.15mm 1.1mm;border-radius:0.9mm;background:#f1f3f6;}
.itp-infos svg{width:2.4mm;height:2.4mm;}
.itp-infos .itp-retard{background:#d9584f;color:#fff;font-weight:700;}
.itp-infos .itp-relance{background:#fbf1d3;color:#6b4e00;}
.itp-infos .itp-montant{margin-left:auto;padding:0;background:none;color:#1d2230;font-weight:700;}
.itp-desc{margin-top:1mm;font-size:7.3pt;color:#4b5563;white-space:pre-wrap;overflow-wrap:anywhere;}
.itp-checklist{margin:1mm 0 0;padding:0;list-style:none;font-size:7.3pt;color:#374151;}
.itp-checklist li::before{content:"☐ ";}
.itp-checklist li.itp-fait{color:#8a90a0;text-decoration:line-through;}
.itp-checklist li.itp-fait::before{content:"☑ ";}
.itp-contact{margin-top:0.9mm;font-size:7pt;color:#4b5563;}
.itp-finie{opacity:.55;}
.itp-finie .itp-titre::before{content:"✓ ";}
.itp-suite{margin-top:1.2mm;text-align:right;font-size:7pt;font-style:italic;color:#6b7280;}
.itp-vide{padding:1mm 0.5mm;font-size:7.5pt;font-style:italic;color:#8a90a0;}
/* Économie d'encre : plus d'aplat, la couleur en filets */
.itp-econome .itp-liste{padding-top:0;border:0.25mm solid #d9dce3;border-top:1.4mm solid var(--lc);background:none;}
.itp-econome .itp-tete{background:none;color:#1d2230;border-bottom:0.25mm solid #e3e5ea;}
.itp-econome .itp-tete b{color:color-mix(in srgb,var(--lc) 70%,#1d2230);}
.itp-econome .itp-etiquettes i{border:0.3mm solid var(--e);background:#fff;color:#1d2230;}
.itp-econome .itp-infos span{padding:0;background:none;}
.itp-econome .itp-infos .itp-retard{color:#b42318;}
/* Compact : polices et marges plus petites */
.itp-compact{font-size:7.5pt;}
.itp-compact .itp-tete b{font-size:8.5pt;}
.itp-compact .itp-titre{font-size:7.8pt;}
.itp-compact .itp-carte{margin-bottom:1mm;padding:1mm 1.5mm;}
.itp-compact .itp-carte.itp-couleur{padding-left:1.3mm;}
.itp-compact .itp-etiquettes{margin-bottom:0.6mm;}
.itp-compact .itp-etiquettes i{font-size:5.8pt;}
.itp-compact .itp-infos{margin-top:0.6mm;font-size:6.3pt;}
.itp-compact .itp-colonne{gap:2.5mm;}
/* Plan : le tableau en px de tableau (zoom 100 %), réduit par transform */
.itp-tuile{position:absolute;overflow:hidden;}
.itp-canevas{position:relative;transform-origin:0 0;font-size:13px;line-height:1.3;}
.itp-canevas .itp-liste{position:absolute;padding:0 7px 7px;border-radius:9px;}
.itp-canevas .itp-tete{gap:8px;margin:0 -7px 7px;padding:8px 11px;border-radius:9px 9px 0 0;}
.itp-canevas .itp-tete b{font-size:17px;}
.itp-canevas .itp-tete span{font-size:12px;}
.itp-canevas .itp-souscol{margin:2px 2px 5px;font-size:12px;}
.itp-canevas .itp-carte{margin-bottom:7px;padding:7px 9px;border-width:1px;border-radius:6px;}
.itp-canevas .itp-carte.itp-couleur{border-left-width:5px;padding-left:8px;}
.itp-canevas .itp-etiquettes{gap:4px;margin-bottom:4px;}
.itp-canevas .itp-etiquettes i{padding:1px 6px;border-radius:4px;font-size:11px;}
.itp-canevas .itp-titre{font-size:14px;}
.itp-canevas .itp-infos{gap:4px 6px;margin-top:4px;font-size:11.5px;}
.itp-canevas .itp-infos span{gap:3px;padding:0 5px;border-radius:4px;}
.itp-canevas .itp-infos svg{width:11px;height:11px;}
.itp-canevas .itp-desc,.itp-canevas .itp-checklist,.itp-canevas .itp-contact{margin-top:4px;font-size:11.5px;}
.itp-canevas .itp-vide{font-size:12px;}
.itp-fleches{position:absolute;left:0;top:0;overflow:visible;}
.itp-fleches path{fill:none;stroke:#8a90a0;stroke-width:2.5;}
.itp-fleches marker path{fill:#8a90a0;stroke:none;}
.itp-recouvre{position:absolute;pointer-events:none;background:repeating-linear-gradient(45deg,rgba(91,141,217,.12) 0 2mm,rgba(91,141,217,.03) 2mm 4mm);}
.itp-coupe{position:absolute;}
.itp-coupe-v{border-left:0.3mm dashed #5b8dd9;}
.itp-coupe-h{border-top:0.3mm dashed #5b8dd9;}
