:root {
  --primary: #0d6efd;
  --sidebar-width: 0px;
}
body { background: #f4f6f9; font-family: 'Segoe UI', sans-serif; }
.navbar-brand { font-size: 1.1rem; letter-spacing: .5px; }

/* Cartes dashboard */
.stat-card { border-left: 4px solid var(--bs-primary); transition: transform .15s; }
.stat-card:hover { transform: translateY(-2px); box-shadow: 0 4px 15px rgba(0,0,0,.1); }
.stat-card.wiclo   { border-color: #0d6efd; }
.stat-card.ine     { border-color: #198754; }
.stat-card.wiclar  { border-color: #fd7e14; }
.stat-card.lvd     { border-color: #6f42c1; }

/* Badges statut */
.badge-todo       { background: #6c757d; }
.badge-en_cours   { background: #0dcaf0; color:#000; }
.badge-suspendu   { background: #ffc107; color:#000; }
.badge-gagne      { background: #198754; }
.badge-perdu      { background: #dc3545; }
.badge-abandonne  { background: #adb5bd; color:#000; }

/* Table affaires */
.table-affaires thead th { background: #e9ecef; font-size:.85rem; text-transform:uppercase; letter-spacing:.5px; }
.table-affaires tbody tr:hover { background: #f0f4ff; cursor: pointer; }

/* Fiche affaire */
.affaire-header { background: linear-gradient(135deg, #0d6efd 0%, #0056b3 100%); color:#fff; border-radius: 8px; }
.section-card { border: none; box-shadow: 0 1px 4px rgba(0,0,0,.08); border-radius: 8px; }
.section-card .card-header { background: #f8f9fa; font-weight: 600; font-size: .9rem; border-bottom: 2px solid #e9ecef; }

/* Finances */
.finance-row { border-left: 3px solid #dee2e6; padding-left: 10px; margin-bottom: 8px; }
.finance-row.positif { border-color: #198754; }
.finance-row.negatif { border-color: #dc3545; }
.montant-total { font-size: 1.4rem; font-weight: 700; }

/* Todos */
.todo-item { transition: opacity .2s; }
.todo-item.fait { opacity: .5; text-decoration: line-through; }
.priorite-urgente { border-left: 3px solid #dc3545 !important; }
.priorite-haute   { border-left: 3px solid #fd7e14 !important; }
.priorite-normale { border-left: 3px solid #0d6efd !important; }
.priorite-basse   { border-left: 3px solid #6c757d !important; }

/* Calendrier */
.echeance-item { border-radius: 6px; padding: 8px 12px; margin-bottom: 6px; border-left: 4px solid #0d6efd; }
.echeance-item.urgente { border-color: #dc3545; background: #fff5f5; }
.echeance-item.proche  { border-color: #fd7e14; background: #fff9f0; }

/* Login */
.login-wrapper { min-height: 100vh; display:flex; align-items:center; justify-content:center; background: linear-gradient(135deg,#0d6efd,#0056b3); }
.login-card { width: 400px; border-radius: 12px; box-shadow: 0 10px 40px rgba(0,0,0,.2); }

/* Hover background */
.hover-bg:hover { background: #f0f4ff; }

/* Purple badge (LVD) */
.bg-purple { background-color: #6f42c1 !important; }
.text-purple { color: #6f42c1 !important; }

/* Responsive */
@media (max-width: 768px) {
  .montant-total { font-size: 1.1rem; }
  .table-affaires { font-size: .8rem; }
}
