


#msg-rendu-reel{background:var(--papier-2); border-radius:var(--rayon-ctrl); padding:10px 12px; margin-top:0}


.rendu-reel-spinner{
  display:flex; flex-direction:column; align-items:center; gap:10px;
  color:var(--encre-doux); font-size:.85rem;
}
.rendu-reel-spinner .roue{
  width:26px; height:26px; border-radius:50%;
  border:3px solid var(--ligne); border-top-color:var(--accent);
  animation:tourne .8s linear infinite;
}
@keyframes tourne{to{transform:rotate(360deg)}}
.rendu-reel-erreur{color:var(--cire); font-size:.85rem}


.editeur-texte{position:relative}
.editeur-texte .saisie-claire,
.editeur-texte .surlignage{
  
  font-family:'Inter',sans-serif; font-size:.92rem; line-height:1.55;
  letter-spacing:normal; padding:11px 13px;
  border:1px solid transparent; border-radius:var(--rayon-ctrl);
  box-sizing:border-box; width:100%;
  white-space:pre-wrap; word-break:break-word; overflow-wrap:break-word;
  min-height:170px; max-height:340px;
  
  scrollbar-gutter:stable;
}

.editeur-texte .saisie-claire{
  position:relative; z-index:2; display:block; margin:0; resize:none;
  background:transparent; color:transparent; caret-color:var(--encre);
  border-color:var(--ligne); overflow:auto; -webkit-text-fill-color:transparent;
}
.editeur-texte .saisie-claire:focus{outline:none; border-color:var(--accent); box-shadow:0 0 0 3px var(--accent-voile)}

.editeur-texte .surlignage{
  position:absolute; inset:0; z-index:1; margin:0;
  color:var(--encre); background:var(--blanc-carte);
  overflow:hidden; pointer-events:none; user-select:none;
}

.editeur-texte .surlignage .jeton{
  color:var(--accent-fonce); background:var(--accent-voile);
  border-radius:5px; padding:0 2px; margin:0 -2px;
  box-decoration-break:clone; -webkit-box-decoration-break:clone;
}

.editeur-texte .surlignage .jeton.invalide{
  color:var(--cire); background:color-mix(in srgb, var(--cire) 14%, transparent);
}
#note-variables code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.86em;background:var(--papier-2);padding:1px 4px;border-radius:4px}


.opt-texte{display:flex;flex-direction:column;gap:12px}
.opt-alignement{display:flex;gap:6px;flex-wrap:wrap}
.opt-alignement button{
  flex:1;min-width:64px;padding:7px 8px;font-size:.8rem;
  border:1px solid var(--ligne);border-radius:var(--rayon-ctrl);
  background:var(--blanc-carte);color:var(--encre-doux);cursor:pointer;
}
.opt-alignement button:hover{border-color:var(--accent);color:var(--accent-fonce)}
.opt-alignement button.actif{border-color:var(--accent);background:var(--accent-voile);color:var(--accent-fonce);font-weight:600}
.opt-taille{display:flex;flex-direction:column;gap:4px}
.opt-taille .lib-sec{font-size:.8rem;color:var(--encre-doux)}
.opt-taille input[type=range]{width:100%;accent-color:var(--accent)}
#opt-taille-val{color:var(--accent-fonce);font-weight:600}




.ruban{
  
  display:flex;align-items:stretch;gap:0;flex-wrap:wrap;margin:0 0 2px;
  background:var(--blanc-carte);border:1px solid var(--ligne);border-radius:var(--rayon);
  padding:6px 4px 3px;box-shadow:var(--ombre);
}
.ruban .grp{display:flex;flex-direction:column;gap:3px;padding:0 10px;border-right:1px solid var(--ligne)}
.ruban .grp:last-child{border-right:0}
.ruban .grp-corps{display:flex;align-items:center;gap:3px;flex-wrap:wrap;min-height:30px}
.ruban .grp-nom{font-size:.63rem;letter-spacing:.05em;text-transform:uppercase;color:var(--encre-doux);text-align:center}
.ruban .rb-col{display:flex;flex-direction:column;gap:4px}
.ruban .rb-ligne{display:flex;align-items:center;gap:4px}
.ruban button{
  font:inherit;font-size:.85rem;line-height:1;cursor:pointer;min-width:28px;height:28px;
  padding:0 7px;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--encre);
  display:inline-flex;align-items:center;justify-content:center;
}

.ruban .ic-al{width:16px;height:16px;fill:currentColor;display:block}

.ruban .ins-btn{
  flex-direction:column;gap:3px;height:auto;min-width:60px;padding:5px 8px 4px;
  font-size:.7rem;color:var(--encre);white-space:nowrap;
}
.ruban .ins-btn .ic-ins{width:26px;height:26px;display:block;color:var(--accent-fonce)}
.ruban .ins-btn:hover .ic-ins{color:var(--accent)}
.ruban .ins-btn span{line-height:1.1}
.ruban .tb-sep{width:1px;height:18px;background:var(--ligne);margin:0 3px;display:inline-block}
.ruban button:hover:not(:disabled){background:var(--papier-2);border-color:var(--ligne)}
.ruban button.actif{background:var(--accent-voile);border-color:var(--accent);color:var(--accent-fonce)}
.ruban button:disabled{opacity:.32;cursor:default}
.ruban button sup,.ruban button sub{font-size:.6em}
.ruban select,.ruban input[type=number]{
  font:inherit;font-size:.82rem;height:28px;padding:0 6px;border:1px solid var(--ligne);
  border-radius:6px;background:var(--blanc-carte);color:var(--encre);width:auto;
}
.ruban select{max-width:150px}
.ruban select:disabled,.ruban input:disabled{opacity:.4}
.ruban input[type=number]{width:52px}
.ruban input[type=color]{width:28px;height:28px;padding:0;border:1px solid var(--ligne);border-radius:6px;background:none;cursor:pointer}

#rb-aligns button[data-al="gauche"]{text-align:left}
#rb-aligns button[data-al="centre"]{text-align:center}
#rb-aligns button[data-al="droite"]{text-align:right}
#rb-aligns button[data-al="justifie"]{letter-spacing:-1px}




#page-editeur.page.actif{
  
  display:flex;flex-direction:column;height:var(--h-editeur, calc(100vh - 132px));min-height:460px;
  max-width:none;width:100%;padding:6px 10px 12px;
}


main:has(#page-editeur.page.actif) .entete{padding-top:9px;padding-bottom:9px}
main:has(#page-editeur.page.actif) .entete h1{font-size:1.16rem;line-height:1.3}
main:has(#page-editeur.page.actif) .entete .badge-compte{padding-top:4px;padding-bottom:4px}

#page-editeur.page.actif > .btn.discret{padding:2px 8px;font-size:.82rem}
.editeur.editeur-ppt{
  display:grid;   
  grid-template-columns:248px minmax(0,1fr) 250px;gap:16px;align-items:stretch;
  flex:1;min-height:0;
}
@media (max-width:1450px){.editeur.editeur-ppt{grid-template-columns:226px minmax(0,1fr) 228px;gap:12px}}
@media (max-width:1180px){
  #page-editeur.page.actif{height:auto;display:block}
  .editeur.editeur-ppt{grid-template-columns:1fr;gap:16px}
}

.ruban{justify-content:flex-start;flex-wrap:nowrap;overflow-x:auto;position:sticky;top:0;z-index:16}
.ruban > :first-child{margin-left:auto}
.ruban > :last-child{margin-right:auto}

.ruban .grp-fin{border-right:0}

@media (max-width:1620px){
  .ruban{gap:0}
  .ruban .grp{padding:0 3px}
  
  .ruban .ins-btn{padding:5px 3px 4px;min-width:54px}
  
  .ruban #rb-ecriture{max-width:128px}
}
.ins-btn-primaire{color:var(--accent-fonce)}
.ins-btn-primaire .ic-ins{color:var(--accent)}

.editeur-ppt .panneau{min-height:0;overflow:auto;padding-right:4px}

.editeur-ppt .scene-apercu{position:relative;top:0;display:flex;flex-direction:column;min-height:0}
.editeur-ppt .colonne-prix{
  
  position:static;width:auto;height:auto;min-height:0;max-height:100%;
  overflow:auto;border-right:0;flex-shrink:1;top:auto;
}
.editeur-ppt .panneau{gap:13px}
.editeur-ppt .panneau .champ label.lib{margin-bottom:5px}


.editeur-ppt .planche{
  padding:22px;min-height:0;flex:1;max-height:none;overflow:auto;
  
  align-items:safe center;justify-content:safe center;
}

@media (max-width:1180px){.editeur-ppt .planche{max-height:70vh}}

@media (max-height:860px){.editeur-ppt .planche{padding:10px}}

@media (max-height:780px){
  .ruban .grp-nom{display:none}
  .ruban .grp{gap:0}
  .ruban .ins-btn .ic-ins{width:20px;height:20px}
  .ruban .grp-corps{min-height:26px}
}


.ruban .grp-corps{flex-wrap:nowrap}

@media (max-width:1279px){.ruban .grp-corps{flex-wrap:wrap}}

@media (min-width:1181px) and (max-width:1299px) and (max-height:820px){
  .ruban .grp-corps{flex-wrap:nowrap}
  .ruban .grp{padding:0 4px}
  .ruban .ins-btn{padding:2px 5px}
  .ruban .ins-btn .ic-ins{width:18px;height:18px}
  .ruban .ins-btn span{font-size:.64rem}
  .ruban button{font-size:.68rem}
}

@media (max-width:1180px){.ruban{position:static}}

.editeur-ppt .barre-vue{flex-wrap:nowrap;overflow-x:auto;gap:8px;margin-bottom:2px;align-items:center}
.editeur-ppt .barre-vue::-webkit-scrollbar{height:0}

.editeur-ppt .barre-vue > *{flex:none}

.editeur-ppt .apercu-libelle{
  flex:1 1 auto;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
@media (max-width:1340px){.editeur-ppt .apercu-libelle{display:none}}
.editeur-ppt #alerte-deborde,
.editeur-ppt .note-rendu,
.editeur-ppt .scene-apercu > .alerte-min{margin-top:6px;font-size:.72rem;line-height:1.2}

.note-rendu .btn.discret{display:inline;padding:0 2px;font-size:inherit;line-height:inherit;
  vertical-align:baseline;text-decoration:underline;text-underline-offset:2px;cursor:pointer}
.note-rendu .btn.discret:hover{text-decoration-thickness:2px}
.note-rendu .btn.discret:disabled{opacity:.55;cursor:not-allowed;text-decoration:none}

.editeur-ppt .carte-physique{flex:none;max-width:none}

.zoom-barre{display:inline-flex;align-items:center;gap:6px;margin-left:auto}
.zoom-barre button{
  font:inherit;font-size:.9rem;line-height:1;cursor:pointer;width:24px;height:24px;
  border:1px solid var(--ligne);border-radius:6px;background:var(--blanc-carte);color:var(--encre);
  display:inline-flex;align-items:center;justify-content:center;
}
.zoom-barre button:hover{border-color:var(--accent);color:var(--accent-fonce)}
.zoom-barre input[type=range]{width:96px;accent-color:var(--accent)}
.zoom-barre #zoom-val{font-size:.76rem;color:var(--encre-doux);min-width:42px;text-align:right;font-variant-numeric:tabular-nums}


.colonne-prix{position:sticky;top:92px;display:flex;flex-direction:column;gap:12px}
.prix-carte{background:var(--encre);color:#fff;border-radius:var(--rayon);padding:16px 18px}
.prix-titre{font-size:.68rem;letter-spacing:.09em;text-transform:uppercase;color:rgba(255,255,255,.55);margin-bottom:11px}
.prix-lignes{display:flex;flex-direction:column;gap:6px;font-size:.82rem}
.prix-lignes .pl{display:flex;justify-content:space-between;gap:10px;color:rgba(255,255,255,.78)}
.prix-lignes .pl b{color:#fff;font-weight:500;font-variant-numeric:tabular-nums;white-space:nowrap}
.prix-lignes .pl.base{color:rgba(255,255,255,.92)}
.prix-lignes .pl.remise,.prix-lignes .pl.remise b{color:#7fd6a9}
.prix-lignes .pl.vide{color:rgba(255,255,255,.4);font-style:italic}
.prix-tot{border-top:1px solid rgba(255,255,255,.18);margin-top:12px;padding-top:11px;display:flex;flex-direction:column;gap:8px}
.prix-tot .prix-l{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:.84rem;color:rgba(255,255,255,.7)}
.prix-tot .prix-l b{color:#fff;font-size:1.1rem;font-variant-numeric:tabular-nums}
.prix-tot .prix-l.qte label{color:rgba(255,255,255,.7);margin:0}
.prix-tot .prix-l.qte input{
  width:78px;padding:5px 8px;font-size:.86rem;text-align:right;background:rgba(255,255,255,.1);
  border:1px solid rgba(255,255,255,.22);color:#fff;border-radius:8px;
}
.prix-tot .prix-l.grand{border-top:1px solid rgba(255,255,255,.14);padding-top:9px}
.prix-tot .prix-l.grand b{font-family:'Fraunces',serif;font-size:1.5rem;font-weight:600}
.colonne-prix .alerte-min{color:#ffb4a2;margin:8px 0 0;font-size:.78rem}


.colonne-prix .btn-enregistrer{
  justify-content:center;width:100%;gap:9px;padding:10px 14px;
  background:var(--blanc-carte);color:var(--accent-fonce);
  border:1px solid var(--ligne);border-radius:12px;box-shadow:var(--ombre);
  font-size:.86rem;font-weight:600;
}
.colonne-prix .btn-enregistrer .ic-ins{width:19px;height:19px;flex:none;display:block;color:var(--accent)}
.colonne-prix .btn-enregistrer:hover{filter:none;border-color:var(--accent);background:var(--accent-voile)}
.colonne-prix .btn-enregistrer:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.colonne-prix .btn-enregistrer:disabled{opacity:.6;cursor:progress}

.colonne-prix .option-prix{
  padding:9px 12px;border-radius:12px;
  font-size:.82rem;line-height:1.3;color:var(--encre-doux);
  border:1px solid var(--ligne);background:var(--blanc-carte);
  transition:background .12s ease,border-color .12s ease;
}
.colonne-prix .option-prix-ligne{
  display:flex;align-items:flex-start;gap:10px;cursor:pointer;margin:0;
  -webkit-tap-highlight-color:transparent;user-select:none;
}

.colonne-prix .option-prix:has(.option-prix-ligne:hover){border-color:var(--accent);background:var(--papier)}

.colonne-prix .option-prix:has(input:checked){border-color:var(--accent);background:var(--accent-voile)}
.colonne-prix .option-prix input[type=checkbox]{
  flex:none;margin:1px 0 0;width:15px;height:15px;cursor:pointer;accent-color:var(--accent);
}
.colonne-prix .option-prix-txt{flex:1 1 0;min-width:0}
.colonne-prix .option-prix-txt b{display:block;color:var(--encre);font-weight:600}

.colonne-prix .option-prix-sous{display:block;margin-top:3px;font-size:.76rem}


.saisie-carte{
  position:absolute;inset:0;width:100%;height:100%;margin:0;padding:0;border:0;outline:none;
  background:transparent;color:transparent;caret-color:var(--accent);resize:none;overflow:hidden;
  font-family:'Inter',sans-serif;font-size:12px;line-height:1.5;z-index:5;
  min-height:0;border-radius:0;
  
  pointer-events:none;
}

.saisie-carte.edite{pointer-events:auto;z-index:30;background:rgba(255,255,255,.28);box-shadow:inset 0 0 0 2px var(--accent)}

.el-composable.el-manuscrit.en-saisie{pointer-events:none}
.el-composable.el-manuscrit.en-saisie .el-poignee{pointer-events:auto}

.el-composable.el-virtuel{outline-color:transparent;background:transparent}
.el-composable.el-virtuel:hover{outline-color:var(--accent-voile);outline-style:dashed}
.el-composable.el-virtuel .el-badge{opacity:0;transition:opacity .12s}
.el-composable.el-virtuel:hover .el-badge{opacity:1}
.saisie-carte::placeholder{color:var(--encre-doux);opacity:.55}

.saisie-carte.edite{caret-color:transparent}

.reperes-var{position:absolute;inset:0;pointer-events:none;z-index:6}
.marque-var{
  position:absolute;color:var(--accent);opacity:.75;font-family:'Inter',sans-serif;
  font-weight:600;line-height:1;white-space:pre;
}
.caret-vivant{
  position:absolute;width:2px;background:var(--accent);z-index:31;display:none;
  pointer-events:none;border-radius:1px;animation:caret-clignote 1.05s step-end infinite;
}


.saisie-carte::selection{background:transparent;color:transparent}
.saisie-carte::-moz-selection{background:transparent;color:transparent}
.selection-vivante{position:absolute;inset:0;pointer-events:none;z-index:0}
.selection-vivante .sel-bande{
  position:absolute;background:var(--accent);opacity:.24;border-radius:2px;
}
@media (prefers-contrast:more){.selection-vivante .sel-bande{opacity:.38}}
@keyframes caret-clignote{0%,100%{opacity:1}50%{opacity:0}}
@media (prefers-reduced-motion:reduce){.caret-vivant{animation:none}}
.saisie-carte:focus{box-shadow:none;border:0}

.barre-insert{
  display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin:0 0 10px;padding:7px 9px;
  background:var(--blanc-carte);border:1px solid var(--ligne);border-radius:var(--rayon-ctrl);
}
.barre-insert .ins-lib{font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:var(--encre-doux);margin-right:2px}
.ins-btn{
  display:inline-flex;align-items:center;gap:6px;font:inherit;font-size:.84rem;cursor:pointer;
  padding:6px 11px;border:1px solid var(--ligne);border-radius:999px;
  background:var(--papier-2);color:var(--encre);
}
.ins-btn:hover{border-color:var(--accent);color:var(--accent-fonce);background:var(--accent-voile)}
.ins-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.ins-btn .ins-ic{font-size:.95rem;line-height:1}
.barre-insert .ins-sep{flex:1}
.barre-insert .ins-astuce{font-size:.74rem;color:var(--encre-doux)}
.planche{position:relative}


.el-toolbar{
  position:absolute;z-index:20;display:flex;align-items:center;gap:4px;flex-wrap:nowrap;
  white-space:nowrap;max-width:none;
  padding:4px 6px;background:var(--blanc-carte);border:1px solid var(--ligne);
  border-radius:10px;box-shadow:0 6px 22px rgba(38,48,63,.18);
}
.el-toolbar[hidden]{display:none}

.editeur-ppt .el-toolbar{position:absolute;z-index:22}

.avis-visionneuse{
  position:absolute;left:50%;top:46px;transform:translateX(-50%);
  z-index:30;max-width:min(88%,520px);width:max-content;
  padding:6px 14px;border-radius:8px;background:var(--encre,#26303F);color:#fff;
  font-size:.78rem;line-height:1.25;text-align:center;
  white-space:normal;overflow-wrap:anywhere;
  box-shadow:0 6px 16px -8px rgba(0,0,0,.45);
  opacity:0;visibility:hidden;transition:opacity .16s;pointer-events:none;
}
.avis-visionneuse.visible{opacity:1;visibility:visible}
.el-toolbar .tb-titre{font-size:.72rem;color:var(--encre-doux);padding:0 4px;white-space:nowrap}
.el-toolbar .tb-sep{width:1px;height:18px;background:var(--ligne);margin:0 2px}
.el-toolbar button{
  font:inherit;font-size:.8rem;cursor:pointer;padding:4px 8px;border-radius:7px;
  border:1px solid transparent;background:transparent;color:var(--encre);line-height:1.2;
}
.el-toolbar button:hover{background:var(--papier-2);border-color:var(--ligne)}
.el-toolbar button.actif{background:var(--accent-voile);border-color:var(--accent);color:var(--accent-fonce);font-weight:600}
.el-toolbar button.danger{color:var(--cire)}
.el-toolbar select,.el-toolbar input[type=number]{
  font:inherit;font-size:.8rem;padding:3px 5px;border:1px solid var(--ligne);
  border-radius:7px;background:var(--blanc-carte);color:var(--encre);
}
.el-toolbar select{max-width:150px}
.el-toolbar input[type=number]{width:52px}
.el-toolbar input[type=color]{width:26px;height:24px;padding:0;border:1px solid var(--ligne);border-radius:6px;background:none;cursor:pointer}


.guides{position:absolute;inset:0;pointer-events:none;z-index:12}
.guides .guide{position:absolute;background:var(--accent);opacity:.9}
.guides .guide.v{width:1px;top:0;bottom:0}
.guides .guide.h{height:1px;left:0;right:0}

.couche-elements{position:absolute;inset:0;pointer-events:none;z-index:3}


.el-composable{
  position:absolute;pointer-events:auto;cursor:move;box-sizing:border-box;
  outline:1px dashed transparent;outline-offset:-1px;overflow:visible;
}
.el-contenu{position:absolute;inset:0;overflow:hidden}
.el-composable:hover{outline-color:var(--accent-voile)}
.el-composable.actif{outline-color:var(--accent);outline-style:solid}

.el-composable.el-manuscrit{background:transparent}
.el-composable.el-manuscrit.actif{outline-style:dashed;outline-color:var(--accent)}

.el-composable.el-manuscrit.deborde{outline-color:var(--cire);outline-style:solid;background:rgba(190,60,50,.06)}
.el-composable.el-manuscrit.deborde .el-badge{background:var(--cire)}

.el-pdf-page{width:100%;height:100%;border:0;display:block;pointer-events:none}

.el-composable.en-crop{outline:2px dashed var(--accent);outline-offset:2px}

.el-composable.el-manuscrit .el-badge{
  position:absolute;left:0;top:-17px;font-size:.65rem;line-height:1;padding:2px 6px;
  background:var(--accent);color:#fff;border-radius:5px 5px 0 0;white-space:nowrap;
  opacity:0;transition:opacity .12s;pointer-events:none;
}

.el-composable.el-manuscrit:hover .el-badge{opacity:1}
.el-composable.el-manuscrit.en-saisie .el-badge,
.el-composable.el-manuscrit.en-saisie:hover .el-badge{opacity:0}

.el-composable.el-manuscrit.actif .el-badge,
.el-composable.el-manuscrit.actif:hover .el-badge{opacity:0}

.el-texte-contenu[contenteditable="true"]{outline:2px solid var(--accent);cursor:text;pointer-events:auto;background:rgba(255,255,255,.6)}
.el-composable img{width:100%;height:100%;object-fit:contain;display:block;pointer-events:none;user-select:none}

.el-composable embed{width:100%;height:100%;border:0;display:block;pointer-events:none}

.el-texte-contenu{width:100%;height:100%;overflow:hidden;line-height:1.25;pointer-events:none;word-break:break-word;white-space:pre-wrap}

.el-texte-contenu.ProseMirror{outline:none}
.el-texte-contenu p{margin:0;padding:0;font:inherit;color:inherit;text-align:inherit}
.el-texte-contenu .ProseMirror-separator{display:none !important}

.el-texte-imprime{margin:0;padding:0}
.el-texte-imprime .el-par{margin:0;padding:0}



.carte-physique.blocs-debordent{overflow:visible}


.el-poignee{
  position:absolute;width:22px;height:22px;border:0;background:transparent;
  pointer-events:auto;display:none;z-index:32;touch-action:none;
}

.el-poignee::after{
  content:"";position:absolute;left:50%;top:50%;
  width:var(--pg-taille,11px);height:var(--pg-taille,11px);
  transform:translate(-50%,-50%);border-radius:50%;
  background:#fff;border:1.5px solid var(--accent);box-shadow:0 1px 3px rgba(20,30,60,.28);
}
.el-poignee:hover::after{background:var(--accent-voile);transform:translate(-50%,-50%) scale(1.15)}
.el-composable.actif .el-poignee{display:block}


.el-composable.en-edition .el-poignee{display:none}

.el-composable:has(.el-texte-contenu[contenteditable="true"]) .el-poignee{display:none}
.el-poignee.p-nw{left:-11px;top:-11px;cursor:nwse-resize}
.el-poignee.p-n {left:calc(50% - 11px);top:-11px;cursor:ns-resize}
.el-poignee.p-ne{right:-11px;top:-11px;cursor:nesw-resize}
.el-poignee.p-e {right:-11px;top:calc(50% - 11px);cursor:ew-resize}
.el-poignee.p-se{right:-11px;bottom:-11px;cursor:nwse-resize}
.el-poignee.p-s {left:calc(50% - 11px);bottom:-11px;cursor:ns-resize}
.el-poignee.p-sw{left:-11px;bottom:-11px;cursor:nesw-resize}
.el-poignee.p-w {left:-11px;top:calc(50% - 11px);cursor:ew-resize}

.el-deplacer{
  position:absolute;width:24px;height:24px;border:0;background:transparent;
  pointer-events:auto;display:none;z-index:24;touch-action:none;
  left:calc(50% - 12px);top:-38px;cursor:move;
  font:600 13px/24px 'Inter',system-ui,sans-serif;text-align:center;color:#fff;
}
.el-deplacer::before{
  content:"";position:absolute;inset:0;border-radius:50%;
  background:var(--accent);border:1.5px solid #fff;box-shadow:0 1px 3px rgba(20,30,60,.28);
}
.el-deplacer::after{ content:"✥";position:relative }   
.el-deplacer:hover::before{transform:scale(1.12)}

.el-deplacer.dedans{top:5px;left:5px}
.el-composable.el-manuscrit.en-saisie .el-deplacer{display:block;pointer-events:auto}


.el-composable.actif:not(.el-manuscrit){z-index:10}
.el-composable:not(.el-manuscrit){z-index:2}


.el-composable.en-crop .el-poignee::after{
  background:#1b1b1b;border:0;border-radius:0;box-shadow:0 0 0 1px rgba(255,255,255,.85);
}
.el-composable.en-crop .el-poignee.p-nw::after,
.el-composable.en-crop .el-poignee.p-ne::after,
.el-composable.en-crop .el-poignee.p-sw::after,
.el-composable.en-crop .el-poignee.p-se::after{width:15px;height:15px}
.el-composable.en-crop .el-poignee.p-n::after,
.el-composable.en-crop .el-poignee.p-s::after{width:22px;height:5px}
.el-composable.en-crop .el-poignee.p-e::after,
.el-composable.en-crop .el-poignee.p-w::after{width:5px;height:22px}

.el-crop-ghost{position:absolute;pointer-events:none;opacity:.28;z-index:1}
.el-crop-ghost img{width:100%;height:100%;object-fit:contain;display:block}

.el-composable.el-virtuel .el-poignee{display:none}


.el-actions{display:flex;gap:8px;flex-wrap:wrap}
.el-editeur{margin-top:10px;padding:10px;border:1px solid var(--ligne);border-radius:var(--rayon-ctrl);background:var(--papier-2)}
.el-ed-titre{font-size:.82rem;font-weight:600;color:var(--encre);margin-bottom:2px}
.el-ed-ligne{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:8px}
.el-ed-texte{width:100%;font-size:.85rem;padding:6px 8px;border:1px solid var(--ligne);border-radius:var(--rayon-ctrl);resize:vertical;box-sizing:border-box;font-family:'Inter',sans-serif}
.el-ed-num{font-size:.8rem;color:var(--encre-doux);display:flex;align-items:center;gap:4px}
.el-ed-num input{width:56px}
.el-editeur select{width:auto;flex:1;min-width:120px}
.el-ed-suppr{color:var(--cire);border-color:var(--cire)}


.import-recto{position:absolute;inset:0;z-index:4;background:var(--blanc-carte);display:flex;flex-direction:column}
.import-recto-corps{flex:1;display:flex;flex-direction:column;min-height:0}
.import-recto-apercu{flex:1;width:100%;border:0;min-height:0}
.import-recto-barre{padding:6px;text-align:center;border-top:1px solid var(--ligne)}
.import-recto-vide{
  flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;
  color:var(--encre-doux);border:2px dashed var(--ligne);border-radius:8px;margin:10px;text-align:center;padding:16px;
}
.import-recto-txt{font-size:.9rem}



.zone-ecriture{position:absolute;overflow:visible;pointer-events:none;z-index:4}


.rendu-vivant{position:absolute;inset:0}


.zone-adresse{
  position:absolute;z-index:6;
  font-family:ui-monospace,'SFMono-Regular',Menlo,Consolas,monospace;
  font-size:12px;line-height:1.5;color:var(--encre);
  background:rgba(255,255,255,.92);
  border:1px dashed var(--accent);border-radius:6px;
  padding:6px 8px;resize:none;overflow:hidden;
  
  min-height:0;box-sizing:border-box;
}
.zone-adresse:focus{outline:2px solid var(--accent);outline-offset:1px;background:#fff}

#rendu-adresse-vivant{cursor:text}


.rendu-vivant svg{display:block;width:100%;height:auto;overflow:visible;clip-path:inset(0 -50% 0 -50%)}


.zone-ecriture .texte-manuscrit{max-height:100%;height:100%;overflow:hidden}


.apercu-libelle{font-size:.78rem;color:var(--encre-doux)}


#boutons-vars{margin-top:12px}

.vars button.utilisee{border-color:var(--accent)}

.vars button.custom{background:color-mix(in srgb, var(--dore) 16%, transparent);color:var(--dore)}
.vars button.custom:hover{border-color:var(--dore)}

.vars button.ajout-var{background:transparent;color:var(--encre-doux);border:1px dashed var(--ligne)}
.vars button.ajout-var:hover{border-color:var(--accent);color:var(--accent-fonce)}

.ajout-var-form{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.ajout-var-form input{width:auto;flex:1;min-width:150px;font-size:.82rem;padding:6px 10px}
.ajout-var-form .btn.discret{padding:5px 10px}
.ajout-var-err{font-size:.76rem;color:var(--cire)}
.indication.centre{text-align:center}

#alerte-deborde{color:var(--cire);text-align:center}




.ruban .rbp-ic{width:14px;height:14px;fill:var(--encre-doux);flex:0 0 auto;opacity:.75}

.ruban input.rbp-actif{border-color:var(--accent);color:var(--accent-fonce);font-weight:600}


.rbp-panneau{
  
  position:fixed; z-index:40; width:340px; padding:12px 14px 10px;
  background:var(--blanc-carte); border:1px solid var(--ligne); border-radius:10px;
  box-shadow:0 10px 30px rgba(38,48,63,.20);
}
.rbp-panneau[hidden]{display:none}

.rbp-panneau-etroit{width:320px}

#itl-nombre{flex:0 0 62px; min-width:0}

#itl-panneau .rbp-axe input[type=range]{min-width:70px}
.rbp-titre{
  font-size:.66rem; letter-spacing:.06em; text-transform:uppercase;
  color:var(--encre-doux); margin-bottom:9px;
}

.rbp-chips{gap:5px; margin-bottom:11px}
.rbp-chips .chip{padding:4px 10px; font-size:.76rem}

.rbp-axes{display:flex; flex-direction:column; gap:7px}
.rbp-axe{display:flex; align-items:center; gap:8px; cursor:pointer}
.rbp-axe-lib{font-size:.76rem; color:var(--encre-doux); flex:0 0 92px}
.rbp-axe input[type=range]{flex:1; min-width:0; margin:0; accent-color:var(--accent); cursor:pointer}

.rbp-axe-val{
  font-size:.74rem; color:var(--encre); flex:0 0 34px; text-align:right;
  font-variant-numeric:tabular-nums;
}
.rbp-aide{
  margin:10px 0 0; font-size:.7rem; line-height:1.35; color:var(--encre-doux);
  border-top:1px solid var(--ligne); padding-top:8px;
}


@media (min-width:1181px) and (max-width:1400px) and (max-height:820px){
  .ruban .grp{padding:0 4px}
  .ruban .ins-btn{padding:2px 5px}
  .ruban .ins-btn .ic-ins{width:18px;height:18px}
  .ruban .ins-btn span{font-size:.64rem}
  .ruban button{font-size:.68rem}
}


#recap-total, #recap-unitaire { white-space: nowrap; }


body.bdb-frappe-texte #rb-police,
body.bdb-frappe-texte #rb-taille,
body.bdb-frappe-texte #rb-plus,
body.bdb-frappe-texte #rb-moins,
body.bdb-frappe-texte #rb-couleur{pointer-events:none;opacity:.4}

#rb-police{width:150px}


