/* Carte de voyage du lutin farceur : styles du generateur.
   Autonome, couleurs en dur (pas de variable du theme). La feuille est en
   millimetres : ce qui est a l'ecran sort a l'identique sur le papier. */
@import url("https://fonts.googleapis.com/css2?family=Caveat:wght@600;700&family=Courier+Prime:wght@400;700&family=Poppins:wght@600;800&display=swap");

.lcv-app,.lcv-app *,.lcv-feuille,.lcv-feuille *{box-sizing:border-box}
.lcv-app{display:grid;grid-template-columns:minmax(0,340px) minmax(0,1fr);gap:24px;align-items:start;margin:24px 0 40px;font-family:Inter,system-ui,sans-serif;color:#2B2118}
.lcv-app>*{min-width:0}
.lcv-app [hidden]{display:none!important}
.lcv-apercu{position:sticky;top:16px}
@media (max-width:900px){.lcv-app{grid-template-columns:minmax(0,1fr)}.lcv-apercu{position:relative;top:0;order:-1}}

/* ---- panneau de reglages ---- */
.lcv-panneau{background:#FBF7EF;border:1px solid #e3d4b8;border-radius:14px;padding:18px 18px 20px;box-shadow:0 5px 0 rgba(203,21,31,.7)}
.lcv-bloc{padding:0 0 14px;margin:0 0 14px;border-bottom:1px dashed #d8c4a0}
.lcv-etiquette{display:flex;justify-content:space-between;align-items:baseline;margin:0 0 10px;font-family:"Courier Prime",monospace;font-weight:700;font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:#CB151F}
.lcv-compte{font-weight:400;color:#7d6a52;letter-spacing:.02em}
.lcv-champ{display:block;margin:0 0 9px;font-size:14px;font-weight:600}
.lcv-champ input,.lcv-champ select,.lcv-cherche{display:block;width:100%;margin-top:4px;padding:8px 10px;font:inherit;font-weight:400;font-size:15px;color:#2B2118;background:#fff;border:1px solid #d8c4a0;border-radius:8px}
.lcv-champ input:focus,.lcv-champ select:focus,.lcv-cherche:focus{outline:2px solid #2A672F;outline-offset:1px}
.lcv-aide{margin:4px 0 0;font-size:12.5px;line-height:1.45;color:#6f604c}
.lcv-modeles{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 10px}
.lcv-puce{padding:5px 9px;font:inherit;font-size:12.5px;font-weight:600;color:#2A672F;background:#fff;border:1px solid #b9cfb9;border-radius:6px;cursor:pointer}
.lcv-puce:hover{background:#eef5ec}
.lcv-recherche{position:relative}
.lcv-sugg{position:absolute;z-index:5;left:0;right:0;top:100%;margin-top:4px;background:#fff;border:1px solid #d8c4a0;border-radius:8px;box-shadow:0 4px 0 rgba(43,33,24,.15);overflow:hidden}
.lcv-sugg-item{display:flex;align-items:center;gap:8px;width:100%;padding:7px 10px;font:inherit;font-size:14px;text-align:left;color:#2B2118;background:#fff;border:0;border-bottom:1px solid #f0e6d4;cursor:pointer}
.lcv-sugg-item:hover,.lcv-sugg-item:focus{background:#FBF7EF}
.lcv-sugg-item img{width:22px;height:16.5px;object-fit:cover;border:1px solid #ddd}
.lcv-sugg-vide{margin:0;padding:8px 10px;font-size:13px;color:#7d6a52}
.lcv-alerte{margin:8px 0 0;padding:6px 9px;font-size:13px;color:#8f0f16;background:#fdecec;border-radius:6px}
.lcv-liste{list-style:none;margin:10px 0 0;padding:0;max-height:360px;overflow:auto}
.lcv-liste li{display:grid;grid-template-columns:22px minmax(0,1fr) 112px 22px 22px 22px;gap:4px;align-items:center;padding:4px 2px;border-bottom:1px solid #efe3cd;font-size:14px;cursor:grab;background:#FBF7EF}
.lcv-liste li.lcv-glisse{opacity:.45}
.lcv-liste-num{font-family:"Courier Prime",monospace;font-weight:700;color:#CB151F;text-align:center}
.lcv-liste-nom{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}
.lcv-liste input[type=date]{width:100%;padding:2px 3px;font:inherit;font-size:12px;color:#6f604c;background:transparent;border:1px solid transparent;border-radius:4px}
.lcv-liste input[type=date]:hover,.lcv-liste input[type=date]:focus{border-color:#d8c4a0;background:#fff}
.lcv-liste input.lcv-manu{color:#2A672F;font-weight:700}
.lcv-mini{width:22px;height:22px;padding:0;font-size:10px;line-height:1;color:#6f604c;background:#fff;border:1px solid #e3d4b8;border-radius:4px;cursor:pointer}
.lcv-mini--x{font-size:15px;color:#CB151F}
.lcv-outils{display:flex;flex-wrap:wrap;gap:4px 14px;margin-top:10px}
.lcv-lien{padding:0;font:inherit;font-size:13px;font-weight:600;color:#2A672F;background:none;border:0;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.lcv-modes{display:flex;gap:8px;margin:0 0 6px}
.lcv-mode{flex:1;cursor:pointer}
.lcv-mode input{position:absolute;opacity:0;pointer-events:none}
.lcv-mode span{display:block;padding:8px 6px;text-align:center;font-weight:700;font-size:14px;color:#2B2118;background:#fff;border:1px solid #d8c4a0;border-radius:8px}
.lcv-mode input:checked+span{color:#fff;background:#2A672F;border-color:#2A672F;box-shadow:0 3px 0 #1b4a1f}
.lcv-mode input:focus-visible+span{outline:2px solid #CB151F;outline-offset:2px}
.lcv-bloc--rendu .lcv-champ,.lcv-bloc--options .lcv-champ{margin-top:12px}
.lcv-case{display:flex;gap:8px;align-items:flex-start;margin:8px 0 0;font-size:14px;line-height:1.35;cursor:pointer}
.lcv-case input{margin-top:3px;accent-color:#2A672F}
.lcv-imprimer{position:relative;display:block;width:100%;margin-top:4px;padding:13px 16px 13px 30px;font-family:"Courier Prime",monospace;font-weight:700;font-size:16px;letter-spacing:.1em;text-transform:uppercase;color:#fff;background:#CB151F;border:0;border-radius:8px;box-shadow:0 4px 0 #8f0f16;cursor:pointer}
.lcv-imprimer::before{content:"";position:absolute;left:18px;top:7px;bottom:7px;border-left:2px dashed rgba(255,255,255,.55)}
.lcv-imprimer:hover{transform:translateY(2px);box-shadow:0 2px 0 #8f0f16}
.lcv-aide--impr{margin-top:10px}

/* ---- apercu reduit de la feuille ---- */
.lcv-apercu{overflow:hidden;border-radius:6px;box-shadow:0 5px 0 rgba(42,103,47,.7);border:1px solid #e3d4b8}
.lcv-apercu .lcv-feuille{position:absolute;left:0;top:0;transform-origin:0 0}

/* ---- la feuille A4 paysage ---- */
.lcv-feuille{width:297mm;height:210mm;padding:7mm 8mm 5mm;display:flex;flex-direction:column;background:#fff;color:#2B2118;font-family:Poppins,Arial,sans-serif;overflow:hidden}
.lcv-entete{position:relative;flex:none;height:22mm;display:flex;align-items:center;gap:5mm;padding:0 6mm 0 3mm;background:#CB151F;color:#fff;border-radius:3mm;outline:.5mm dashed rgba(255,255,255,.45);outline-offset:-1.6mm}
.lcv-cachet{flex:none;width:18mm;height:18mm;color:#fff;transform:rotate(-8deg)}
.lcv-cachet-tour{font-family:"Courier Prime",monospace;font-weight:700;font-size:9.6px;letter-spacing:.6px;fill:currentColor}
.lcv-cachet-date{font-family:"Courier Prime",monospace;font-weight:700;font-size:9.5px;fill:currentColor}
.lcv-titres{flex:1;min-width:0}
.lcv-titre{font-weight:800;font-size:9.4mm;line-height:1;letter-spacing:.02em;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lcv-sous-titre{margin-top:.6mm;font-family:Caveat,cursive;font-weight:700;font-size:7mm;line-height:1}
.lcv-stats{flex:none;white-space:pre;padding:1.6mm 2.6mm;font-family:"Courier Prime",monospace;font-weight:700;font-size:3.5mm;line-height:1.35;letter-spacing:.04em;text-transform:uppercase;text-align:center;color:#2B2118;background:#EFE2C9;border-radius:1.4mm;transform:rotate(1.5deg)}
.lcv-carte-zone{position:relative;flex:1;min-height:0;margin:2mm 0 1mm}
.lcv-carte{display:block;width:100%;height:100%}
.lcv-carte .lcv-nom{font-family:Poppins,Arial,sans-serif;font-weight:800;font-size:8.8px;letter-spacing:.2px;text-anchor:middle;fill:#2B2118;stroke:#fff;stroke-width:2.6px;paint-order:stroke;stroke-linejoin:round}
.lcv-carte .lcv-nom--maison{fill:#2A672F;font-size:9px}
.lcv-carte .lcv-num{font-family:"Courier Prime",monospace;font-weight:700;font-size:8.4px;text-anchor:middle}
.lcv-carte .lcv-date-carte{font-family:"Courier Prime",monospace;font-weight:700;font-size:7.4px;text-anchor:middle;fill:#CB151F;stroke:#fff;stroke-width:2.4px;paint-order:stroke;stroke-linejoin:round}
.lcv-feuille--colorier .lcv-carte .lcv-date-carte{fill:#2B2118}
.lcv-carte .lcv-ocean{font-family:Caveat,cursive;font-weight:700;font-size:14px;letter-spacing:.6px;text-anchor:middle;fill:#9a8566}
.lcv-carte .lcv-parallele{stroke:#b9a582;stroke-width:.6;stroke-dasharray:1.2 3.2;stroke-linecap:round}
.lcv-carte .lcv-parallele-nom{font-family:"Courier Prime",monospace;font-weight:700;font-size:6.4px;letter-spacing:.8px;fill:#9a8566;stroke:#fff;stroke-width:2px;paint-order:stroke}
.lcv-carte .lcv-rose-l{font-family:"Courier Prime",monospace;font-weight:700;font-size:8px;text-anchor:middle;fill:#2B2118}
.lcv-etiq{cursor:move}
.lcv-ajuster .lcv-carte{touch-action:none;outline:2px dashed #2A672F;outline-offset:-2px}
.lcv-ajuster-bouton{display:none;margin-top:10px;padding:7px 10px;font:inherit;font-size:13px;font-weight:700;color:#2A672F;background:#fff;border:1px solid #b9cfb9;border-radius:6px;cursor:pointer}
.lcv-ajuster .lcv-ajuster-bouton{color:#fff;background:#2A672F}
@media (pointer:coarse){.lcv-ajuster-bouton{display:block}}
.lcv-poignee{pointer-events:all}
.lcv-suspendu{position:absolute;right:2mm;top:-5mm;height:44mm;width:auto;pointer-events:none}
.lcv-photo{position:absolute;left:-2mm;bottom:-3mm;height:50mm;width:auto;pointer-events:none}
.lcv-message{flex:none;margin:0 0 1.2mm;font-family:Caveat,cursive;font-weight:700;font-size:6mm;line-height:1;text-align:center;color:#2A672F;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lcv-feuille--colorier .lcv-message{color:#2B2118}
.lcv-consigne{flex:none;margin:0 0 1.4mm;font-family:Caveat,cursive;font-weight:700;font-size:5mm;line-height:1;text-align:center;color:#CB151F}

/* ---- carnet de bord ---- */
.lcv-carnet{flex:none;display:grid;grid-template-columns:repeat(var(--lcv-col,8),minmax(0,1fr));gap:1.6mm;padding-top:2mm;border-top:.35mm dashed #c9b38c}
.lcv-etape{display:flex;align-items:center;gap:1.8mm;min-width:0;padding:1.3mm 1.6mm;background:#FBF7EF;border:.25mm solid #e3d4b8;border-radius:1.6mm}
.lcv-tampon{flex:none;display:flex;align-items:center;justify-content:center;width:9mm;height:9mm;border:.5mm solid #CB151F;outline:.2mm solid #CB151F;outline-offset:.5mm;border-radius:50%;font-family:"Courier Prime",monospace;font-weight:700;font-size:4mm;color:#CB151F;overflow:hidden;background:#fff}
.lcv-tampon img{width:100%;height:100%;object-fit:cover}
.lcv-etape-txt{display:flex;flex-direction:column;min-width:0;line-height:1.15}
.lcv-etape-nom{font-weight:800;font-size:2.9mm;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lcv-etape-plus{font-size:2.3mm;font-weight:600;line-height:1.1;color:#6f604c;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.lcv-carnet--2 .lcv-etape-plus{font-size:2.05mm}
.lcv-etape-quand{font-family:"Courier Prime",monospace;font-weight:700;font-size:2.1mm;letter-spacing:.08em;text-transform:uppercase;color:#2A672F}
.lcv-etape-date{white-space:nowrap;font-family:"Courier Prime",monospace;font-weight:700;font-size:2.6mm;color:#6f604c}
.lcv-etape-bonjour{font-family:Caveat,cursive;font-weight:700;font-size:3.5mm;line-height:.95;color:#2A672F;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.lcv-etape--depart .lcv-tampon,.lcv-etape--arrivee .lcv-tampon{border-color:#2A672F;outline-color:#2A672F;color:#2A672F}
/* 7 a 9 cases sur une ligne : noms sur deux lignes plutot que coupes */
.lcv-carnet--serre{gap:1.2mm}
.lcv-carnet--serre .lcv-etape{gap:1.2mm;padding:1mm 1.2mm}
.lcv-carnet--serre .lcv-tampon{width:7.6mm;height:7.6mm;font-size:3.4mm;outline-offset:.4mm}
.lcv-carnet--serre .lcv-etape-nom{font-size:2.7mm;white-space:normal;line-height:1.16;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.lcv-carnet--serre .lcv-etape-plus{font-size:2.1mm}
.lcv-feuille--colorier .lcv-carnet--serre .lcv-tampon{width:9.5mm;height:9.5mm}
.lcv-carnet--2{gap:1.2mm}
.lcv-carnet--2 .lcv-etape{gap:1.1mm;padding:.8mm 1mm}
.lcv-carnet--2 .lcv-tampon{width:6.6mm;height:6.6mm;font-size:3mm;outline-offset:.35mm}
.lcv-carnet--2 .lcv-etape-nom{font-size:2.6mm;white-space:normal;line-height:1.16;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.lcv-carnet--2 .lcv-etape-date{font-size:2.3mm}
.lcv-carnet--2 .lcv-etape-bonjour{font-size:3.1mm}
.lcv-pied{flex:none;margin-top:1.6mm;font-family:"Courier Prime",monospace;font-weight:700;font-size:2.9mm;letter-spacing:.06em;text-transform:uppercase;text-align:right;color:#6f604c}
.lcv-pied b{color:#CB151F}

/* ---- version a colorier : economise l'encre ---- */
.lcv-feuille--colorier .lcv-entete{background:#fff;color:#CB151F;border:.6mm solid #CB151F;outline:.3mm dashed rgba(203,21,31,.45)}
.lcv-feuille--colorier .lcv-cachet{color:#CB151F}
.lcv-feuille--colorier .lcv-stats{background:#fff;border:.3mm solid #2B2118}
.lcv-feuille--colorier .lcv-etape{background:#fff}
.lcv-feuille--colorier .lcv-tampon{width:11mm;height:11mm;border-style:dashed;outline:0;align-items:flex-start;padding-top:.6mm}
.lcv-feuille--colorier .lcv-carnet--2 .lcv-tampon{width:9mm;height:9mm}
.lcv-tampon-num{font-size:2.6mm}

@media print{
  *{-webkit-print-color-adjust:exact;print-color-adjust:exact}
}
