/* =========================
   TRÉSORERIE - CRÉANCE CLIENT GÉNÉRALE
   Base des créances client + mouvements logiciel
   ========================= */
#credit_client.credit-client-page{
  padding: 12px;
  box-sizing: border-box;
}
.credit-client-title{
  text-align:center;
  font-weight:900;
  margin-bottom:12px;
  letter-spacing:.2px;
}
.credit-client-filter-card,
.credit-client-result-card,
.credit-client-info-card{
  width:100%;
  background:#fff;
  border:1px solid #d7dde6;
  border-radius:14px;
  box-shadow:0 2px 10px rgba(0,0,0,.06);
  box-sizing:border-box;
}
.credit-client-filter-card{padding:14px 16px;margin-bottom:12px;overflow:visible;}
.credit-client-info-card{
  padding:10px 14px;
  margin:0 0 12px;
  background:#fffdf2;
  border-color:#f1d37a;
  color:#374151;
  font-size:13px;
  font-weight:700;
  line-height:1.35;
}
.credit-client-info-card strong{color:#7a4b00;}
.credit-client-filter-row{display:flex;align-items:center;gap:12px 18px;flex-wrap:wrap;width:100%;overflow:visible;}

.credit-client-filter-row-client{
  margin-top:10px;
  padding-top:10px;
  border-top:1px solid #e5e7eb;
}
.credit-client-field-client{
  width:100%;
  align-items:center;
}
.credit-client-field-client select{
  min-width:280px;
  max-width:520px;
  flex:0 1 420px;
}
.credit-client-filter-info{
  color:#4b5563;
  font-size:12px;
  font-weight:800;
  white-space:normal;
}
.credit-client-field{display:inline-flex;align-items:center;gap:8px;flex:0 1 auto;min-width:0;}
.credit-client-field label{font-size:14px;font-weight:800;color:#111827;white-space:nowrap;}
.credit-client-field select,
.credit-client-field input[type="date"]{height:34px;min-width:150px;max-width:178px;padding:3px 10px;border:1px solid #b8c3d1;border-radius:10px;background:#f8fafc;color:#111827;font-size:14px;font-weight:700;box-sizing:border-box;}
.credit-client-field-small select{min-width:136px;max-width:156px;}
.credit-client-field input[readonly]{background:#eef2f7;cursor:default;}
.credit-client-field select:focus,
.credit-client-field input[type="date"]:focus{outline:none;border-color:#d6a000;box-shadow:0 0 0 2px rgba(214,160,0,.18);}
.credit-client-actions-inline{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap;min-width:0;}
.credit-client-btn{height:34px;padding:0 14px;border:1px solid #9aa3af;border-radius:8px;background:#f0f1f5;color:#000;font-size:14px;font-weight:800;cursor:pointer;}
.credit-client-btn:hover{background:#e5e7eb;}
.credit-client-btn:disabled{opacity:.55;cursor:not-allowed;}
.credit-client-btn-primary{background:#2f6f83;border-color:#24586a;color:#fff;}
.credit-client-btn-primary:hover{background:#24586a;}
.credit-client-message{min-height:20px;margin:4px 0 10px;font-size:14px;font-weight:800;}
.credit-client-kpi-grid{display:grid;grid-template-columns:repeat(5,minmax(160px,1fr));gap:10px;margin-bottom:12px;}
.credit-client-kpi-card{background:#fff;border:1px solid #d7dde6;border-radius:14px;box-shadow:0 2px 10px rgba(0,0,0,.05);padding:12px 14px;box-sizing:border-box;}
.credit-client-kpi-label{font-size:12px;font-weight:900;color:#4b5563;text-transform:uppercase;margin-bottom:6px;line-height:1.15;}
.credit-client-kpi-value{font-size:17px;font-weight:900;color:#0f172a;white-space:nowrap;}
.credit-client-kpi-history{border-left:4px solid #2563eb;}
.credit-client-kpi-history .credit-client-kpi-value{color:#1d4ed8;}
.credit-client-kpi-final{border-left:4px solid #b91c1c;}
.credit-client-kpi-final .credit-client-kpi-value{color:#b91c1c;}
.credit-client-result-card{padding:10px;}
.credit-client-result-head{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-bottom:8px;}
.credit-client-result-title{font-size:15px;font-weight:900;color:#111827;}
.credit-client-result-subtitle{font-size:13px;font-weight:700;color:#4b5563;}
.credit-client-table-wrap{width:100%;overflow:auto;max-height:calc(100vh - 330px);border:1px solid #222;border-radius:6px;background:#fff;}
.credit-client-table{width:100%;min-width:1180px;border-collapse:collapse;table-layout:fixed;background:#fff;}
.credit-client-table th,
.credit-client-table td{border:1px solid #222;padding:7px 6px;text-align:center;vertical-align:middle;color:#000;font-size:12px;line-height:1.15;box-sizing:border-box;}
.credit-client-table thead th{position:sticky;top:0;z-index:3;background:#DCE6F1;font-size:11px;font-weight:900;white-space:normal;text-transform:uppercase;}
.credit-client-table tbody td:nth-child(2),
.credit-client-table tbody td:nth-child(3){text-align:left;font-weight:800;white-space:normal;overflow-wrap:anywhere;}
.credit-client-table tfoot td{position:sticky;bottom:0;z-index:2;background:#d9d9d9;font-weight:900;}
.credit-client-total-label{text-align:right!important;background:#d9e3ac!important;}
.credit-client-empty{height:48px;font-weight:800;color:#6b7280!important;background:#f9fafb;}
.credit-client-money{text-align:center!important;font-weight:800;white-space:nowrap;}
.credit-client-historique{color:#1d4ed8!important;font-weight:900!important;background:#eff6ff!important;}
.credit-client-final{color:#b91c1c!important;font-weight:900!important;background:#fff5f5!important;}
@media (max-width:1280px){.credit-client-kpi-grid{grid-template-columns:repeat(3,minmax(160px,1fr));}}
@media (max-width:900px){.credit-client-kpi-grid{grid-template-columns:repeat(2,minmax(160px,1fr));}.credit-client-table{min-width:1120px;}}
@media (max-width:760px){.credit-client-field,.credit-client-actions-inline{width:100%;}.credit-client-field select,.credit-client-field input[type="date"]{flex:1 1 auto;max-width:none;}.credit-client-kpi-grid{grid-template-columns:1fr;}.credit-client-info-card{font-size:12px;}}

/* Correction affichage créances : unités FCFA dans les titres, valeurs centrées */
#tableCreditClient tfoot td[id^="ccTot"]{text-align:center!important;}
.credit-client-kpi-value{text-align:center;}

#credit_client .credit-client-field-client select{
  min-width:280px;
  max-width:520px;
  flex:0 1 420px;
}
@media (max-width: 900px){
  #credit_client .credit-client-field-client{
    align-items:flex-start;
    flex-direction:column;
  }
  #credit_client .credit-client-field-client select{
    width:100%;
    min-width:0;
    max-width:none;
  }
}

/* Correction 23/06/2026 : formulaire client créance + tableau simplifié */
.credit-client-create-card{
  width:100%;
  background:#fff;
  border:1px solid #d7dde6;
  border-radius:14px;
  box-shadow:0 2px 10px rgba(0,0,0,.05);
  box-sizing:border-box;
  padding:12px 14px;
  margin:0 0 12px;
}
.credit-client-create-title{
  font-size:14px;
  font-weight:900;
  color:#111827;
  margin-bottom:8px;
  text-transform:uppercase;
}
.credit-client-create-row{
  display:flex;
  align-items:flex-end;
  flex-wrap:wrap;
  gap:10px 12px;
}
.credit-client-create-row label{
  display:flex;
  flex-direction:column;
  gap:4px;
  font-size:12px;
  font-weight:900;
  color:#111827;
}
.credit-client-create-row input{
  height:34px;
  min-width:145px;
  padding:4px 9px;
  border:1px solid #b8c3d1;
  border-radius:9px;
  background:#f8fafc;
  font-size:13px;
  font-weight:700;
  box-sizing:border-box;
}
#ccNewNomClient{min-width:230px;}
#ccNewMontantCreance{min-width:155px;}
.credit-client-table{min-width:1180px;}
.credit-client-table tbody td:nth-child(2){text-align:left;font-weight:800;white-space:normal;overflow-wrap:anywhere;}
.credit-client-table tbody td:nth-child(3){text-align:center;font-weight:800;white-space:normal;overflow-wrap:anywhere;}
@media (max-width:900px){
  .credit-client-create-row label,
  .credit-client-create-row input,
  #btnSaveClientCreance{width:100%;min-width:0;}
}

/* Correction 23/06/2026 : détail visible du client sélectionné */
.credit-client-detail-card{
  width:100%;
  background:#fff;
  border:1px solid #cbd5e1;
  border-radius:14px;
  box-shadow:0 2px 10px rgba(0,0,0,.06);
  box-sizing:border-box;
  padding:12px 14px;
  margin:0 0 12px;
}
.credit-client-detail-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:10px;
  flex-wrap:wrap;
  margin-bottom:10px;
}
.credit-client-detail-title{
  font-size:14px;
  font-weight:900;
  color:#111827;
  text-transform:uppercase;
}
.credit-client-detail-subtitle{
  font-size:12px;
  font-weight:800;
  color:#4b5563;
}
.credit-client-detail-kpis{
  display:grid;
  grid-template-columns:repeat(4,minmax(150px,1fr));
  gap:8px;
  margin-bottom:10px;
}
.credit-client-detail-kpis>div{
  border:1px solid #d7dde6;
  border-radius:10px;
  background:#f8fafc;
  padding:8px 10px;
  box-sizing:border-box;
}
.credit-client-detail-kpis span{
  display:block;
  font-size:11px;
  font-weight:900;
  color:#4b5563;
  text-transform:uppercase;
  margin-bottom:3px;
}
.credit-client-detail-kpis strong{
  display:block;
  font-size:13px;
  font-weight:900;
  color:#111827;
  white-space:normal;
  overflow-wrap:anywhere;
}
.credit-client-detail-final{color:#b91c1c!important;}
.credit-client-detail-section-title{
  font-size:12px;
  font-weight:900;
  color:#111827;
  text-transform:uppercase;
  margin:10px 0 5px;
}
.credit-client-detail-table-wrap{
  width:100%;
  overflow:auto;
  border:1px solid #222;
  border-radius:6px;
  background:#fff;
  margin-bottom:8px;
}
.credit-client-detail-table{
  width:100%;
  min-width:820px;
  border-collapse:collapse;
  table-layout:fixed;
  background:#fff;
}
.credit-client-detail-table-small{min-width:520px;}
.credit-client-detail-table th,
.credit-client-detail-table td{
  border:1px solid #222;
  padding:6px 5px;
  text-align:center;
  vertical-align:middle;
  color:#000;
  font-size:11px;
  line-height:1.15;
  box-sizing:border-box;
}
.credit-client-detail-table th{
  background:#DCE6F1;
  font-weight:900;
  text-transform:uppercase;
}
.credit-client-detail-table td:nth-child(2),
.credit-client-detail-table td:nth-child(3){
  text-align:left;
  font-weight:800;
  white-space:normal;
  overflow-wrap:anywhere;
}
.credit-client-detail-empty{
  border:1px dashed #cbd5e1;
  border-radius:8px;
  background:#f8fafc;
  color:#4b5563;
  font-size:12px;
  font-weight:800;
  padding:8px 10px;
  margin:6px 0;
}
@media (max-width:1100px){
  .credit-client-detail-kpis{grid-template-columns:repeat(2,minmax(150px,1fr));}
}
@media (max-width:700px){
  .credit-client-detail-kpis{grid-template-columns:1fr;}
}

/* Correction 24/06/2026 : origine détaillée des créances client */
.credit-client-calcul-box{
  border:1px solid #d7dde6;
  border-radius:10px;
  background:#f8fafc;
  padding:9px 10px;
  margin:6px 0 10px;
  font-size:12px;
  font-weight:800;
  color:#374151;
  line-height:1.35;
}
.credit-client-calcul-formula{
  margin-top:4px;
  color:#111827;
}
.credit-client-detail-table-large{
  min-width:1250px;
}
.credit-client-detail-table-large th,
.credit-client-detail-table-large td{
  font-size:10.5px;
}
.credit-client-detail-table-large td:nth-child(3),
.credit-client-detail-table-large td:nth-child(5),
.credit-client-detail-table-large td:nth-child(6){
  text-align:center;
  font-weight:800;
}


/* Correction 27/06/2026 : Créance client - affichage validé PDF du 24/06/2026 */
#credit_client .credit-client-kpi-label{
  letter-spacing:.02em;
  line-height:1.18;
}
#credit_client .credit-client-table-wrap{
  overflow:auto;
  max-height:calc(100vh - 330px);
}
#credit_client #tableCreditClient{
  min-width:1180px !important;
  table-layout:fixed !important;
}
#credit_client #tableCreditClient th,
#credit_client #tableCreditClient td{
  padding:7px 6px;
  font-size:12px;
  line-height:1.15;
}
#credit_client #tableCreditClient thead th{
  background:#DCE6F1 !important;
  text-transform:none !important;
  font-weight:900 !important;
}
#credit_client #tableCreditClient tbody td:nth-child(2){
  text-align:left !important;
  font-weight:900 !important;
  overflow-wrap:anywhere;
}
#credit_client #tableCreditClient tbody td:nth-child(3),
#credit_client #tableCreditClient tbody td:nth-child(4){
  text-align:center !important;
  font-weight:700 !important;
}
#credit_client #tableCreditClient tfoot td{
  text-align:center !important;
}
#credit_client #tableCreditClient .credit-client-total-label{
  text-align:right !important;
  background:#d9e3ac !important;
}
@media(max-width:900px){
  #credit_client #tableCreditClient{min-width:1080px !important;}
}


/* Correction 27/06/2026 : centrage propre du contenu des cartes KPI créance client */
#credit_client .credit-client-kpi-grid{
  align-items:stretch;
}
#credit_client .credit-client-kpi-card{
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
  min-height:94px;
  padding:14px 12px !important;
}
#credit_client .credit-client-kpi-label{
  width:100%;
  text-align:center !important;
  margin:0 0 8px !important;
  line-height:1.18 !important;
}
#credit_client .credit-client-kpi-value{
  width:100%;
  display:block;
  text-align:center !important;
  line-height:1.15 !important;
}
