/* SpaMaster360 v47.41 — POS Expense Modal Safe Visibility Guard
   Corrige v47.40: el modal de Nuevo gasto NO debe mostrarse al entrar a Caja
   si #posExpenseModal no tiene la clase .open. */

/* Estado cerrado: invisible aunque tenga clases legacy o inline display heredado */
body.sc-view-pos #posExpenseModal.pos-modal:not(.open),
body.sc-view-pos #view-pos #posExpenseModal.pos-modal:not(.open),
body.sc-view-pos > #posExpenseModal.pos-modal:not(.open){
  display:none!important;
  visibility:hidden!important;
  opacity:0!important;
  pointer-events:none!important;
  z-index:-1!important;
  background:transparent!important;
  backdrop-filter:none!important;
}

/* Estado abierto: solo aquí se activa el overlay */
body.sc-view-pos #posExpenseModal.pos-modal.open,
body.sc-view-pos #view-pos #posExpenseModal.pos-modal.open,
body.sc-view-pos > #posExpenseModal.pos-modal.open,
body.sc-view-pos #posExpenseModal.pos-modal.open.sm360-layer-modal-v4725,
body.sc-view-pos #posExpenseModal.pos-modal.open.sm360-expense-modal-v4730,
body.sc-view-pos #posExpenseModal.pos-modal.open.sm360-frontend-clean-v4734{
  display:flex!important;
  position:fixed!important;
  inset:0!important;
  padding:18px!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:auto!important;
  z-index:40010!important;
  visibility:visible!important;
  opacity:1!important;
  pointer-events:auto!important;
  background:rgba(15,23,42,.30)!important;
  backdrop-filter:blur(12px) saturate(1.02)!important;
}

body.sc-view-pos #posExpenseModal.open .pos-modal-card.pos-expense-compact-card,
body.sc-view-pos #posExpenseModal.open .pos-modal-card.pos-expense-compact-card.sm360-form-card,
body.sc-view-pos #posExpenseModal.open .pos-modal-card.pos-expense-compact-card.sm360-modal-card,
body.sc-view-pos #posExpenseModal.open .pos-modal-card.pos-expense-compact-card.sm360-layer-card-v4725,
body.sc-view-pos #posExpenseModal.open .pos-modal-card.pos-expense-compact-card.sm360-expense-card-v4730{
  width:min(920px,calc(100vw - 36px))!important;
  max-width:min(920px,calc(100vw - 36px))!important;
  max-height:calc(100vh - 36px)!important;
  display:flex!important;
  flex-direction:column!important;
  padding:0!important;
  overflow:hidden!important;
  border-radius:28px!important;
}

body.sc-view-pos #posExpenseModal.open .expense-compact-form,
body.sc-view-pos #posExpenseModal.open .expense-compact-form.sm360-form,
body.sc-view-pos #posExpenseModal.open .expense-compact-form.sm360-lg2-form,
body.sc-view-pos #posExpenseModal.open .expense-compact-form.sm360-expense-body-v4730{
  display:grid!important;
  gap:16px!important;
  padding:22px 24px 26px!important;
  overflow:auto!important;
  background:transparent!important;
}

body.sc-view-pos #posExpenseModal.open .expense-pay-btn,
body.sc-view-pos #posExpenseModal.open .expense-pay-btn.sm360-payment-card,
body.sc-view-pos #posExpenseModal.open .sm360-form button.expense-pay-btn{
  min-height:92px!important;
  height:92px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  padding:14px 12px!important;
  border-radius:20px!important;
  text-align:center!important;
}

body.sc-view-pos #posExpenseModal.open input,
body.sc-view-pos #posExpenseModal.open textarea,
body.sc-view-pos #posExpenseModal.open select,
body.sc-view-pos #posExpenseModal.open input.sm360-input,
body.sc-view-pos #posExpenseModal.open textarea.sm360-textarea,
body.sc-view-pos #posExpenseModal.open select.sm360-select,
body.sc-view-pos #posExpenseModal.open input.sm360-lg2-input{
  font-family:inherit!important;
}
