/* Utilitaire : bouton non pleine largeur (réutilisable partout) */
.btn-auto { width: auto; padding: 10px 18px; }

/* En-tête / méta / états (si pas déjà ajoutés à l'étape 2) */
.btn-back { display: inline-flex; align-items: center; gap: 7px; color: var(--ink-soft); font-size: 13px; font-weight: 550; text-decoration: none; }
.btn-back:hover { color: var(--ink); }

.btn-center{display:block; margin: auto}
.btn-primary{background:var(--brand);color:#fff;padding:13px;border-radius:var(--r-sm);
    font-weight:600;font-size:14.5px;transition:background .15s,transform .05s;box-shadow:var(--shadow-sm)}
.btn-primary:hover{background:var(--brand-deep)}
.btn-primary:active{transform:translateY(1px)}
.btn-primary:focus-visible{outline:2.5px solid var(--brand);outline-offset:2px}
.btn-ghost{padding:11px;border:1.5px solid var(--line-strong);border-radius:var(--r-sm);
    font-weight:550;font-size:14px;display:flex;align-items:center;justify-content:center;gap:9px;
    background:var(--surface);transition:background .15s,border-color .15s}
.btn-ghost:hover{background:var(--surface-2);border-color:var(--ink-faint)}

.btn-cta{display:inline-flex;align-items:center;gap:8px;background:var(--brand);color:#fff;
    padding:9px 15px;border-radius:var(--r-sm);font-weight:600;font-size:13.5px;box-shadow:var(--shadow-sm);transition:background .15s}
.btn-cta:hover{background:var(--brand-deep)}

@media(max-width:680px){
    .btn-cta{padding:9px}
    .btn-cta .cta-label{display:none}
}
