/*
 * FOX / iFox — norme obligatoire des contrôles.
 *
 * Toutes les interfaces (login, back-office, facturation, iFox, pages futures)
 * importent ce fichier et n’utilisent que ces variables pour les champs
 * et boutons d’action. Interdit : 35 px, autre rayon d’input, autre taille
 * de texte de champ. Les textareas gardent une hauteur libre.
 *
 * Hauteur : 36px
 * Rayon des champs et boutons d’action : 6px
 * Texte des inputs : 15px
 * Bordure : 1px #e3e6eb — focus : 1px #172c43
 */
:root{
  --fox-font:"Bricolage Grotesque",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --fox-navy:#172c43;
  --fox-orange:#f18b43;
  --fox-logo-pro:#f18b43;
  --fox-control-height:36px;
  --fox-control-radius:4px;
  --fox-control-font:15px;
  --fox-control-pad:0 10px;
  --fox-control-border:#e3e6eb;
  --fox-control-focus:#172c43;
  --fox-card-radius:4px;
}

/*
 * Reflet des boutons primaires : un éclat blanc traverse le bouton en diagonale de temps en temps.
 * Ajouter la classe .fox-btn-primary à tout nouveau bouton d'action principal.
 * Léger : un pseudo-élément, seule transform est animée. Coupé si l'utilisateur préfère moins d'animations.
 */
.fox-btn-primary,.login-submit,.ob-next,.demo-cta,.billing-app .billing-form button:not(.billing-secondary),
.fox-form-actions a,.fox-form-actions button[type=submit],#fcp_data_container .btn-theme,#fcp_data_container .btn-primary{position:relative;overflow:hidden;isolation:isolate}
.fox-btn-primary:after,.login-submit:after,.ob-next:after,.demo-cta:after,.billing-app .billing-form button:not(.billing-secondary):after,
.fox-form-actions a:after,.fox-form-actions button[type=submit]:after,#fcp_data_container .btn-theme:after,#fcp_data_container .btn-primary:after{content:"";position:absolute;inset:-1px;z-index:-1;pointer-events:none;
  background:linear-gradient(115deg,transparent 38%,rgba(255,255,255,.22) 46%,rgba(255,255,255,.5) 50%,rgba(255,255,255,.22) 54%,transparent 62%);transform:translateX(-110%)}
@media(prefers-reduced-motion:no-preference){
.fox-btn-primary:after,.login-submit:after,.ob-next:after,.demo-cta:after,.billing-app .billing-form button:not(.billing-secondary):after,
.fox-form-actions a:after,.fox-form-actions button[type=submit]:after,#fcp_data_container .btn-theme:after,#fcp_data_container .btn-primary:after{animation:fox-btn-shine 7s cubic-bezier(.4,0,.2,1) calc(1.6s + var(--shine-seed,0)*1s) infinite}
@keyframes fox-btn-shine{0%{transform:translateX(-110%)}13%{transform:translateX(110%)}100%{transform:translateX(110%)}}
}

/* Bouton retour à gauche des titres : carré 36 px, même bordure et rayon que les contrôles. */
.fox-title-row{display:flex;align-items:center;gap:12px;min-width:0}
.fox-title-row>h1{margin-top:0;margin-bottom:0;min-width:0}
.fox-back{flex:none;display:inline-grid;place-items:center;width:var(--fox-control-height);height:var(--fox-control-height);border:1px solid var(--fox-control-border);border-radius:var(--fox-control-radius);background:#fff;color:var(--fox-navy);text-decoration:none;transition:border-color .15s,background .15s}
.fox-back:hover{border-color:var(--fox-navy)}
.fox-back:focus-visible{outline:2px solid var(--fox-navy);outline-offset:2px}
.fox-back svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
