/* ===== Restore side drawer forms: Paiements + Dépenses ===== */
#gpFinanceOverlay{
  position:fixed!important;
  inset:0!important;
  background:rgba(15,23,42,.46)!important;
  backdrop-filter:blur(1px)!important;
  z-index:9998!important;
  opacity:0;
  transition:opacity .18s ease!important;
}
#gpFinanceDrawer.gp-drawer.gp-compact-finance{
  position:fixed!important;
  top:0!important;
  right:0!important;
  bottom:0!important;
  height:100vh!important;
  width:min(560px,92vw)!important;
  max-width:92vw!important;
  background:#fff!important;
  z-index:9999!important;
  display:none;
  flex-direction:column!important;
  transform:translateX(100%);
  transition:transform .22s ease!important;
  box-shadow:-20px 0 45px rgba(15,23,42,.22)!important;
  border-left:1px solid #e5e7eb!important;
}
#gpFinanceDrawer .gp-drawer-head{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  padding:16px 20px 10px!important;
  border-bottom:1px solid #eef2f7!important;
}
#gpFinanceDrawer .gp-drawer-title{
  font-size:11px!important;
  line-height:1.1!important;
  font-weight:900!important;
  color:#111827!important;
}
#gpFinanceDrawer .gp-drawer-sub{
  margin-top:5px!important;
  font-size:13px!important;
  line-height:1.25!important;
  color:#6b7280!important;
}
#gpFinanceDrawer .gp-drawer-close{
  width:34px!important;
  height:34px!important;
  border-radius:10px!important;
  border:1px solid #fecaca!important;
  background:#fff7f7!important;
  color:#dc2626!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  cursor:pointer!important;
  box-shadow:0 12px 30px rgba(220,38,38,.12)!important;
}
#gpFinanceDrawer .gp-drawer-close .material-symbols-rounded{
  font-size:21px!important;
  font-weight:800!important;
}
#gpFinanceDrawer .gp-drawer-body{
  flex:1!important;
  overflow:auto!important;
  padding:0 20px 14px!important;
}
#gpFinanceDrawer .gp-drawer-section h3{
  font-size:11px!important;
  font-weight:900!important;
  color:#111827!important;
  margin:12px 0 8px!important;
  padding-bottom:6px!important;
  border-bottom:1px solid #eef2f7!important;
}
#gpFinanceDrawer .gp-form-row{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:8px 12px!important;
  margin:0!important;
}
#gpFinanceDrawer .gp-form-row.full{
  grid-template-columns:1fr!important;
}
#gpFinanceDrawer .gp-field{
  margin:0 0 0!important;
}
#gpFinanceDrawer .gp-field label{
  display:block!important;
  margin:0 0 7px!important;
  font-size:12px!important;
  line-height:1.1!important;
  font-weight:800!important;
  color:#374151!important;
}
#gpFinanceDrawer .gp-field label b,
#gpFinanceDrawer .gp-field label span{
  color:#ef4444!important;
}
#gpFinanceDrawer input,
#gpFinanceDrawer select{
  width:100%!important;
  height:38px!important;
  min-height:38px!important;
  border:1px solid #e5e7eb!important;
  border-radius:12px!important;
  background:#fff!important;
  padding:0 10px!important;
  font-size:11px!important;
  line-height:1!important;
  color:#111827!important;
  outline:none!important;
  box-shadow:0 1px 2px rgba(15,23,42,.04)!important;
}
#gpFinanceDrawer input:focus,
#gpFinanceDrawer select:focus{
  border-color:#bfdbfe!important;
  box-shadow:0 0 0 3px rgba(59,130,246,.12)!important;
}
#gpFinanceDrawer .gp-mini-help{
  grid-column:1/-1!important;
  margin:-4px 0 8px!important;
  font-size:11px!important;
  color:#9ca3af!important;
}
#gpFinanceDrawer .gp-drawer-foot{
  display:flex!important;
  justify-content:space-between!important;
  align-items:center!important;
  gap:16px!important;
  padding:10px 20px 14px!important;
  border-top:1px solid #eef2f7!important;
  background:#fff!important;
}
#gpFinanceDrawer .gp-cancel,
#gpFinanceDrawer .gp-save{
  height:34px!important;
  min-width:95px!important;
  border-radius:10px!important;
  padding:0 16px!important;
  font-size:13px!important;
  font-weight:800!important;
  cursor:pointer!important;
}
#gpFinanceDrawer .gp-cancel{
  background:#fff!important;
  color:#374151!important;
  border:1px solid #e5e7eb!important;
}
#gpFinanceDrawer .gp-save{
  background:#2563eb!important;
  color:#fff!important;
  border:1px solid #2563eb!important;
}
@media (max-width:900px){
  #gpFinanceDrawer.gp-drawer.gp-compact-finance{width:96vw!important}
  #gpFinanceDrawer .gp-form-row{grid-template-columns:1fr!important}
  #gpFinanceDrawer .gp-drawer-title{font-size:24px!important}
  #gpFinanceDrawer .gp-drawer-sub{font-size:15px!important}
}

/* ===== CLEAN V16 - formulaires finance restaurés, compacts, sans conflits ===== */
#gpFinanceOverlay,
#gpadOverlay {
  transition-duration: 0ms !important;
}

#gpFinanceDrawer.gp-drawer.gp-compact-finance,
#gpFinanceDrawer.gp-compact-finance {
  width: 500px !important;
  max-width: 88vw !important;
  transition-duration: 0ms !important;
}

#gpFinanceDrawer.gp-compact-finance .gp-drawer-head {
  padding: 12px 16px 8px !important;
}

#gpFinanceDrawer.gp-compact-finance .gp-drawer-title {
  font-size: 18px !important;
  line-height: 1.05 !important;
}

#gpFinanceDrawer.gp-compact-finance .gp-drawer-sub {
  font-size: 12px !important;
}

#gpFinanceDrawer.gp-compact-finance .gp-drawer-close {
  width: 32px !important;
  height: 32px !important;
  min-width: 32px !important;
  min-height: 32px !important;
  border-radius: 9px !important;
}

#gpFinanceDrawer.gp-compact-finance .gp-drawer-close .material-symbols-rounded {
  font-size: 20px !important;
}

#gpFinanceDrawer.gp-compact-finance .gp-drawer-body {
  padding: 0 16px 10px !important;
}

#gpFinanceDrawer.gp-compact-finance .gp-drawer-section h3 {
  font-size: 13px !important;
  margin: 10px 0 7px !important;
  padding-bottom: 5px !important;
}

#gpFinanceDrawer.gp-compact-finance .gp-form-row {
  gap: 6px 10px !important;
}

#gpFinanceDrawer.gp-compact-finance .gp-field label {
  font-size: 11px !important;
  margin: 0 0 4px !important;
}

#gpFinanceDrawer.gp-compact-finance input,
#gpFinanceDrawer.gp-compact-finance select,
#gpFinanceDrawer.gp-compact-finance textarea {
  min-height: 34px !important;
  font-size: 12px !important;
  padding: 0 8px !important;
  border-radius: 8px !important;
}

#gpFinanceDrawer.gp-compact-finance input,
#gpFinanceDrawer.gp-compact-finance select {
  height: 34px !important;
}

#gpFinanceDrawer.gp-compact-finance textarea {
  padding-top: 8px !important;
}

#gpFinanceDrawer.gp-compact-finance .gp-drawer-foot {
  padding: 8px 16px 12px !important;
  gap: 8px !important;
}

#gpFinanceDrawer.gp-compact-finance .gp-save,
#gpFinanceDrawer.gp-compact-finance .gp-cancel {
  height: 34px !important;
  min-width: 82px !important;
  font-size: 12px !important;
  padding: 0 12px !important;
  border-radius: 8px !important;
}

/* Page paiements : actions propres et compactes */
.payments-table .actions-cell {
  gap: 4px !important;
}

.payments-table .action-btn {
  width: 24px !important;
  height: 24px !important;
  min-width: 24px !important;
  min-height: 24px !important;
  padding: 0 !important;
  border-radius: 6px !important;
}

.payments-table .action-btn svg,
.payments-table .action-btn i,
.payments-table .action-btn .material-symbols-rounded {
  width: 10px !important;
  height: 10px !important;
  font-size: 10px !important;
}

.payments-table .paid-amount,
.payments-table .payment-date {
  font-size: 12px !important;
  line-height: 1.05 !important;
  font-weight: 500 !important;
}

@media (max-width: 700px) {
  #gpFinanceDrawer.gp-drawer.gp-compact-finance,
  #gpFinanceDrawer.gp-compact-finance {
    width: 96vw !important;
    max-width: 96vw !important;
  }
}
