/* MonPlanPro — charte 07/08/2026 : vert « l'angle », Space Grotesk + Space Mono */
@font-face{font-family:"Space Grotesk";font-weight:400;font-display:swap;src:url(fonts/space-grotesk-400.woff2) format("woff2")}
@font-face{font-family:"Space Grotesk";font-weight:500;font-display:swap;src:url(fonts/space-grotesk-500.woff2) format("woff2")}
@font-face{font-family:"Space Grotesk";font-weight:600;font-display:swap;src:url(fonts/space-grotesk-600.woff2) format("woff2")}
@font-face{font-family:"Space Grotesk";font-weight:700;font-display:swap;src:url(fonts/space-grotesk-700.woff2) format("woff2")}
@font-face{font-family:"Space Mono";font-weight:400;font-display:swap;src:url(fonts/space-mono-400.woff2) format("woff2")}
@font-face{font-family:"Space Mono";font-weight:700;font-display:swap;src:url(fonts/space-mono-700.woff2) format("woff2")}

*{box-sizing:border-box;margin:0;padding:0}
:root{
  --vert:#0fa04a; --vert-fonce:#0a6b32; --vert-clair:#74e8a4;
  --encre:#16131f; --ciel:#f4fbf6; --blanc:#ffffff;
  --gris:#5d6461; --bord:#dcebe0;
  --ok:#0a6b32; --ko:#b91c1c;
  --r-carte:22px; --r-bouton:12px;
}
body{font-family:"Space Grotesk",system-ui,sans-serif;background:var(--ciel);color:var(--encre);line-height:1.5}
.mono{font-family:"Space Mono",monospace;text-transform:uppercase;letter-spacing:.18em;font-size:12px}
.accueil{max-width:640px;margin:0 auto;padding:24px 16px 48px;display:flex;flex-direction:column;gap:20px}
.marque{display:flex;align-items:center;gap:14px}
.logo-mpp{width:52px;height:52px;flex:none;border-radius:12px}
h1{font-size:26px;font-weight:700;letter-spacing:-.02em}
h1 .accent{color:var(--vert)}
.sous-titre{color:var(--gris);font-size:14px}
.carte{background:var(--blanc);border:1px solid var(--bord);border-radius:var(--r-carte);padding:20px}
.carte h2{font-family:"Space Mono",monospace;text-transform:uppercase;letter-spacing:.15em;font-size:12px;
  color:var(--vert-fonce);margin-bottom:12px}
.etat{font-weight:700;padding:10px 12px;font-size:15px;border-radius:var(--r-bouton)}
.etat.verif{background:#eef4ef}
.etat.ok{background:#e7f8ed;color:var(--ok)}
.etat.ko{background:#fef2f2;color:var(--ko)}
.note{color:var(--gris);font-size:13px;margin-top:10px}
.note a{color:var(--vert-fonce)}
.actions{display:flex;flex-direction:column;gap:10px}
.btn{display:block;text-align:center;padding:15px 18px;font-size:16px;font-weight:700;text-decoration:none;
  color:var(--encre);background:var(--blanc);border:1px solid var(--bord);border-radius:var(--r-bouton);
  cursor:pointer;font-family:inherit}
.btn-principal{background:var(--vert);border-color:var(--vert);color:#fff;box-shadow:3px 4px 0 var(--vert-fonce)}
.btn-principal:active{transform:translate(2px,3px);box-shadow:1px 1px 0 var(--vert-fonce)}
.btn-discret{font-weight:500;font-size:14px;color:var(--gris)}
.btn-desactive{opacity:.45;pointer-events:none}
.pas-a-pas{padding-left:20px;display:flex;flex-direction:column;gap:8px;font-size:14px}

/* ---- Éditeur ---- */
.editeur{max-width:900px;margin:0 auto;padding:20px 16px 60px;display:flex;flex-direction:column;gap:16px}
.barre{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.barre .btn{padding:10px 14px;font-size:14px}
.piece{background:var(--blanc);border:1px solid var(--bord);border-radius:var(--r-carte);padding:18px;
  display:flex;flex-direction:column;gap:10px}
.piece-entete{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.piece-entete input{font-size:16px;font-weight:700;border:none;border-bottom:2px solid transparent;background:transparent;
  font-family:inherit;color:var(--encre);max-width:60%}
.piece-entete input:focus{outline:none;border-bottom-color:var(--vert)}
.piece-chiffres{display:flex;gap:18px;font-size:13px;color:var(--gris);flex-wrap:wrap;font-family:"Space Mono",monospace}
.piece-chiffres strong{color:var(--encre);font-size:15px}
.piece canvas{width:100%;height:auto;border:1px solid var(--bord);border-radius:12px;background:#fdfffd;touch-action:manipulation}
.piece-outils{display:flex;gap:8px;flex-wrap:wrap}
.piece-outils button{padding:8px 12px;font-size:13px;font-weight:600;border:1px solid var(--bord);border-radius:10px;
  background:var(--blanc);cursor:pointer;font-family:inherit}
.piece-outils button.danger{color:var(--ko);border-color:#fecaca}
.vide{text-align:center;color:var(--gris);padding:60px 20px}
.total{font-size:15px;font-weight:700;text-align:right;font-family:"Space Mono",monospace}

/* ---- Éditeur v2 ---- */
.fiche-bien-champs{display:flex;gap:14px;flex-wrap:wrap}
.fiche-bien-champs label{display:flex;flex-direction:column;gap:4px;font-size:13px;color:var(--gris);flex:1;min-width:220px}
.fiche-bien-champs input{padding:9px 10px;border:1px solid var(--bord);border-radius:10px;font-family:inherit;font-size:15px;color:var(--encre);background:var(--blanc)}
.fiche-bien-champs input:focus{outline:2px solid var(--vert);outline-offset:-1px}
.bascule{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:600;padding:8px 10px;
  border:1px solid var(--bord);border-radius:10px;background:var(--blanc);cursor:pointer}
.bascule input[type=checkbox]{width:16px;height:16px;accent-color:var(--vert)}
.champ-hauteur{width:64px;padding:4px 6px;border:1px solid var(--bord);border-radius:8px;font-family:"Space Mono",monospace;font-size:13px}
#canvas-plan{width:100%;height:auto;border:1px solid var(--bord);border-radius:12px;background:#fff;touch-action:none;cursor:grab}

.entete-impression{display:none}
@media print{
  .entete-impression{display:block;font-size:15px;padding-bottom:10px;border-bottom:2px solid #16131f;margin-bottom:12px}
  body{background:#fff}
  .ecran-seul, .piece-outils, .note, .btn{display:none !important}
  .carte,.piece{border:none;padding:8px 0;break-inside:avoid}
  .piece canvas,#canvas-plan{border:1px solid #999;max-height:88vh}
  .editeur{max-width:none;padding:0}
  .fiche-bien-champs input{border:none;font-weight:700;padding:0}
  .fiche-bien-champs label{color:#444}
}

/* ---- Overlay AR ---- */
#overlay[hidden]{display:none}
#overlay{position:fixed;inset:0;pointer-events:none;display:flex;flex-direction:column;
  justify-content:space-between;font-family:"Space Grotesk",system-ui,sans-serif;z-index:10}
#ar-info{margin:calc(env(safe-area-inset-top, 0px) + 12px) 12px 0;background:rgba(22,19,31,.85);color:#fff;
  padding:10px 14px;font-size:14px;text-align:center;border-radius:12px;font-family:"Space Mono",monospace}
#ar-boutons{display:flex;gap:8px;padding:0 12px calc(env(safe-area-inset-bottom, 0px) + 16px);pointer-events:none}
#ar-boutons button{pointer-events:auto;flex:1;padding:16px 8px;font-size:15px;font-weight:700;border:none;
  font-family:inherit;background:#fff;color:var(--encre);border-radius:var(--r-bouton)}
#ar-boutons button:disabled{opacity:.4}
#btn-poser{background:var(--vert);color:#fff;box-shadow:3px 4px 0 var(--vert-fonce)}
#btn-fermer{background:var(--vert-fonce);color:#fff}
