/* Espace client — se greffe sur site.css, dont il reprend les variables. */
.espace{max-width:1040px;margin:0 auto;padding:56px 24px 96px}
.espace__entete{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;
  flex-wrap:wrap;margin-bottom:32px;padding-bottom:20px;border-bottom:1px solid var(--trait)}
.espace__entete h1{font-size:clamp(28px,4vw,40px);margin:10px 0 0;line-height:1.1}
.espace__onglets{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:28px}
.espace__onglets a{padding:9px 16px;border-radius:999px;border:1px solid var(--trait-fort);
  font-size:14px;font-weight:600;color:rgba(244,241,234,.75)}
.espace__onglets a[aria-current=page]{background:var(--or);border-color:var(--or);color:var(--noir)}
.espace__onglets a:hover{color:var(--ivoire)}

.carte{background:var(--surface);border:1px solid rgba(244,241,234,.1);border-radius:18px;padding:24px}
.carte+.carte{margin-top:16px}
.carte h2{font-size:20px;margin:0 0 16px}

.formulaire{display:grid;gap:16px;max-width:460px}
.formulaire--large{max-width:none}
.formulaire label{display:flex;flex-direction:column;gap:7px;font-size:11px;letter-spacing:.14em;
  text-transform:uppercase;font-weight:600;color:var(--or)}
.formulaire input,.formulaire select,.formulaire textarea{
  background:var(--noir);border:1px solid var(--trait-fort);border-radius:10px;padding:13px 14px;
  font-size:15px;color:var(--ivoire);letter-spacing:normal;text-transform:none;font-weight:400;
  color-scheme:dark;width:100%}
.formulaire input:focus,.formulaire select:focus{border-color:var(--or);outline:none}
.formulaire .duo{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.formulaire button[type=submit]{justify-self:start}
.aide{font-size:13px;color:var(--texte-3);margin:0}
.aide a{text-decoration:underline}

.alerte{border-radius:10px;padding:13px 16px;font-size:14px;margin:0 0 20px;line-height:1.5}
.alerte--ok{background:rgba(201,169,110,.12);border:1px solid var(--or);color:var(--or-clair)}
.alerte--ko{background:rgba(226,160,160,.1);border:1px solid #E2A0A0;color:#F0C2C2}

.resa{border:1px solid rgba(244,241,234,.1);border-radius:16px;background:var(--surface);
  padding:20px 22px;display:grid;gap:14px}
.resa+.resa{margin-top:14px}
.resa__haut{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap}
.resa__ref{font-family:var(--serif);font-size:20px;letter-spacing:.06em}
.resa__modele{font-size:14px;color:var(--texte-2);margin-top:2px}
.resa__grille{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px;
  border-top:1px solid var(--trait);padding-top:14px}
.resa__lib{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--texte-3)}
.resa__val{font-size:15px;font-weight:600;margin-top:3px}
.resa__total{font-family:var(--serif);font-size:22px;font-weight:400}

.badge{display:inline-block;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;
  padding:6px 12px;border-radius:999px;white-space:nowrap;border:1px solid}
.badge--en_attente{background:rgba(201,169,110,.14);color:var(--or);border-color:rgba(201,169,110,.5)}
.badge--confirmee{background:rgba(122,199,140,.12);color:#8FD3A2;border-color:rgba(143,211,162,.45)}
.badge--en_cours{background:rgba(120,170,230,.12);color:#8FBBE8;border-color:rgba(143,187,232,.45)}
.badge--terminee{background:rgba(244,241,234,.07);color:var(--texte-3);border-color:var(--trait-fort)}
.badge--annulee{background:rgba(226,160,160,.1);color:#E2A0A0;border-color:rgba(226,160,160,.4)}

.vide{text-align:center;padding:48px 20px;color:var(--texte-3)}
.vide p{margin:0 0 20px}

@media (max-width:640px){
  .formulaire .duo{grid-template-columns:1fr}
  .espace{padding:40px 18px 72px}
}
