/* Styles spécifiques FAUST EXPRESS */
.card{ background-color: var(--faust-card-bg); }

/* Touche responsive: arrondis et ombres douces */
.rounded-4{ border-radius: 1rem !important; }
.shadow-sm{ box-shadow: 0 .125rem .25rem rgba(0,0,0,.075) !important; }

/* Form spacing */
.form-label{ font-weight: 600; }

/* Helpers */
.text-secondary{ color: var(--faust-muted) !important; }

/* Sidebar */
.sidebar{
  width: 250px; flex: 0 0 250px; color: var(--sidebar-text);
  background: linear-gradient(160deg, var(--sidebar-start), var(--sidebar-end));
}
.sidebar-nav{ overflow-y: auto; }
.sidebar-link{ display: flex; align-items: center; color: var(--sidebar-text); text-decoration: none; padding: .625rem .75rem; border-radius: .5rem; }
.sidebar-link:hover{ background: var(--sidebar-active-bg); }
.sidebar-link.active{ background: var(--sidebar-active-bg); font-weight: 600; }
.sidebar .bi{ font-size: 1.1rem; }

/* Topbar */
.topbar input[type="search"]{ background: #f8fafc; }

/* KPI */
.kpi-icon{ width: 44px; height: 44px; display: inline-flex; align-items: center; justify-content: center; font-size: 1.4rem; background: #f1f5f9; border-radius: .75rem; }

/* Resources page styling */
.res-card{ border-radius: .75rem; }
/* Equal-width custom tabs */
.res-tabs{ display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem; width: 100%; }
.res-tabs .nav-item{ width: 100%; }
.res-card .res-tabs .res-tab,
.res-card .res-tabs .nav-link{ /* support both custom buttons and bootstrap nav buttons */
  display: flex; align-items: center; justify-content: center;
  width: 100%; height: 44px;
  border: 0; border-radius: .75rem;
  padding: 0 1rem;
  background: #6b7280 !important; color: #fff !important;
  font-weight: 700; letter-spacing: .2px;
  box-shadow: inset 0 -1px 0 rgba(255,255,255,.08);
  cursor: pointer;
}
.res-tabs.res-tabs-center{ display: flex; justify-content: center; gap: 1rem; width: 100%; }
.res-tabs.res-tabs-center .nav-item{ width: auto; }
.res-card .res-tabs.res-tabs-center .nav-link{ width: auto; padding: 0 1.25rem; }
.res-tabs.res-tabs-2{ display: grid; grid-template-columns: repeat(2, 1fr); gap: 1rem; width: 100%; }
.res-tabs.res-tabs-2 .nav-item{ width: 100%; }
.res-card .res-tabs .res-tab:hover,
.res-card .res-tabs .nav-link:hover{ filter: brightness(0.96); }
.res-card .res-tabs .res-tab.active,
.res-card .res-tabs .nav-link.active{ background: var(--faust-primary) !important; color: #fff !important; }
.res-card .table thead th{ font-weight: 600; color: var(--faust-text); }
.res-card .table tbody td{ vertical-align: middle; }

/* Status pills */
.status-pill{ display: inline-block; padding: .2rem .6rem; border-radius: .5rem; font-weight: 600; font-size: .875rem; border: 1px solid transparent; }
.status-active{ background: #dcfce7; color: #166534; border-color: #86efac; }
.status-disabled{ background: #fee2e2; color: #991b1b; border-color: #fecaca; }

/* Mobile behavior */
@media (max-width: 991.98px){
  .sidebar{ position: fixed; inset: 0 auto 0 0; transform: translateX(-100%); transition: transform .2s ease; z-index: 1040; }
  .sidebar.open{ transform: translateX(0); }
}
