/* UC workflow polish: capa ligera para movil, formularios y vistas operativas. */
:root{
  --uc-touch:44px;
  --uc-radius-sm:10px;
  --uc-radius-md:14px;
  --uc-focus-ring:0 0 0 .18rem rgba(54,90,63,.18);
}

#main-content .uc-page,
#main-content .uc-home,
#main-content .mo{
  scroll-margin-top:72px;
}

#main-content .form-control,
#main-content .form-select,
#main-content .btn{
  min-height:var(--uc-touch);
}

#main-content .btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.38rem;
  font-weight:800;
}

#main-content .btn:focus-visible,
#main-content .form-control:focus,
#main-content .form-select:focus{
  border-color:var(--uc-primary,#365A3F);
  box-shadow:var(--uc-focus-ring);
}

#main-content .uc-action-strip{
  display:flex;
  flex-wrap:wrap;
  gap:.5rem;
  align-items:center;
}

#main-content .uc-action-strip .btn{
  flex:0 1 auto;
}

#main-content .uc-search-soft,
#main-content .search-wrap,
#main-content .client-filter-bar,
#main-content .loan-server-filters,
#main-content .mo-filter{
  -webkit-tap-highlight-color:transparent;
}

#main-content .uc-empty-state{
  border:1px dashed var(--uc-border,#d8e4d8);
  background:var(--uc-bg-alt,#f7faf6);
  border-radius:var(--uc-radius-md);
  padding:1rem;
  text-align:center;
  color:var(--uc-muted,#617063);
}

#main-content [data-uc-filter-hidden="1"]{
  display:none!important;
}

#main-content .uc-client-name,
#main-content .client-name,
#main-content .loan-client-name{
  overflow-wrap:anywhere;
}

#main-content .table-responsive{
  max-width:100%;
  overflow-x:auto;
  border-radius:var(--uc-radius-md);
  -webkit-overflow-scrolling:touch;
}

#main-content table td,
#main-content table th{
  vertical-align:middle;
}

#main-content,
#main-content .uc-page,
#main-content .ucds-page,
#main-content .container,
#main-content .container-fluid,
#main-content .row,
#main-content .row > *,
#main-content .d-flex,
#main-content .d-flex > *,
#main-content .card,
#main-content .modal-content,
#main-content .dropdown-menu,
#main-content .input-group,
#main-content .btn-toolbar,
#main-content .btn-group,
#main-content .uc-card,
#main-content .uc-table-card,
#main-content .uc-actions,
#main-content .uc-toolbar,
#main-content .uc-filter,
#main-content .uc-filter-grid,
#main-content .uc-kpi-grid,
#main-content .uc-mobile-kpi-row{
  min-width:0;
}

#main-content .card,
#main-content .uc-card,
#main-content .uc-table-card,
#main-content .modal-content,
#main-content .alert,
#main-content .btn,
#main-content .badge,
#main-content .chip,
#main-content .uc-chip,
#main-content .uc-status{
  max-width:100%;
  overflow-wrap:anywhere;
}

#main-content .input-group > .form-control,
#main-content .input-group > .form-select,
#main-content .input-group > .btn{
  min-width:0;
}

#main-content button[aria-busy="true"],
#main-content .btn[aria-busy="true"]{
  position:relative;
  pointer-events:none;
  opacity:.86;
}

#main-content button[aria-busy="true"]::after,
#main-content .btn[aria-busy="true"]::after{
  content:"";
  width:1rem;
  height:1rem;
  border:2px solid currentColor;
  border-right-color:transparent;
  border-radius:999px;
  animation:uc-workflow-spin .7s linear infinite;
}

@keyframes uc-workflow-spin{to{transform:rotate(360deg)}}

.uc-mini-toast-host{
  position:fixed;
  right:1rem;
  bottom:1rem;
  z-index:5000;
  display:grid;
  gap:.55rem;
  width:min(360px, calc(100vw - 2rem));
  pointer-events:none;
}

.uc-mini-toast{
  display:grid;
  gap:.1rem;
  padding:.78rem .9rem;
  border-radius:14px;
  color:var(--uc-text,var(--uc-ink,#102016));
  background:var(--uc-surface,#fff);
  border:1px solid var(--uc-border,#d8e4d8);
  box-shadow:0 18px 44px rgba(15,25,18,.16);
  transform:translateY(10px);
  opacity:0;
  transition:opacity .18s ease, transform .18s ease;
}

.uc-mini-toast.is-visible{
  opacity:1;
  transform:translateY(0);
}

.uc-mini-toast strong{
  font-size:.86rem;
  line-height:1.2;
}

.uc-mini-toast span{
  font-size:.82rem;
  color:var(--uc-muted,#536153);
}

.uc-mini-toast-success{border-color:rgba(54,90,63,.30);background:var(--uc-primary-soft,#f1fff4)}
.uc-mini-toast-warning{border-color:rgba(154,103,0,.28);background:var(--uc-warning-soft,#fff9ea)}
.uc-mini-toast-danger,
.uc-mini-toast-error{border-color:rgba(198,40,40,.30);background:var(--uc-danger-soft,#fff3f4)}

#main-content .uc-search-feedback{
  display:none;
  width:100%;
  margin:.32rem 0 0;
  color:var(--uc-muted,#4e624f);
  font-size:.78rem;
  font-weight:800;
}

#main-content .uc-search-feedback.is-visible{
  display:block;
}

#main-content .uc-search-feedback.is-empty{
  color:var(--uc-warning,#b45309);
}

#main-content .uc-touching{
  transform:translateY(1px) scale(.992);
  filter:brightness(.98);
}

#main-content .card-soft.uc-touching,
#main-content .loan-card.uc-touching,
#main-content .client-card.uc-touching{
  box-shadow:0 8px 22px rgba(17,24,17,.08);
}

#main-content form[data-uc-form-busy="1"]{
  cursor:progress;
}

#main-content form[data-uc-form-busy="1"] .form-control,
#main-content form[data-uc-form-busy="1"] .form-select{
  border-color:rgba(54,90,63,.32);
}

#main-content .loan-hero,
#main-content .loan-hero h1,
#main-content .loan-hero h2,
#main-content .loan-hero h3,
#main-content .loan-hero h4,
#main-content .loan-hero h5,
#main-content .loan-hero h6,
#main-content .loan-hero i,
#main-content .cron-toolbar-summary .cron-toolbar-title,
#main-content .cron-toolbar-summary .cron-toolbar-title h1,
#main-content .cron-toolbar-summary .cron-toolbar-title h2,
#main-content .cron-toolbar-summary .cron-toolbar-title h3,
#main-content .cron-toolbar-summary .cron-toolbar-title h4,
#main-content .cron-toolbar-summary .cron-toolbar-title h5,
#main-content .cron-toolbar-summary .cron-toolbar-title h6,
#main-content .cron-toolbar-summary .cron-toolbar-title i{
  color:#fff!important;
}

#main-content .loan-hero p,
#main-content .cron-toolbar-summary .cron-toolbar-title .small{
  color:rgba(255,255,255,.88)!important;
}

#main-content .loan-hero .btn-light{
  background:#fff!important;
  border-color:#fff!important;
  color:#0d1b12!important;
}

#main-content .loan-hero .btn-outline-light{
  background:transparent!important;
  border-color:rgba(255,255,255,.82)!important;
  color:#fff!important;
}

#main-content .loan-hero .btn-outline-light:hover{
  background:#fff!important;
  border-color:#fff!important;
  color:#0d1b12!important;
}

@media (max-width:767.98px){
  .uc-mini-toast-host{
    left:.75rem;
    right:.75rem;
    bottom:calc(.75rem + env(safe-area-inset-bottom, 0px));
    width:auto;
  }

  #main-content{
    padding-left:.55rem!important;
    padding-right:.55rem!important;
  }

  #main-content .uc-page,
  #main-content .uc-home,
  #main-content .mo{
    margin-top:.55rem!important;
  }

  #main-content .toolbar,
  #main-content .loan-tools,
  #main-content .tpl-card,
  #main-content .focus-card,
  #main-content .card-soft,
  #main-content .mo-card,
  #main-content .mo-hero{
    border-radius:16px!important;
  }

  #main-content .btn,
  #main-content button,
  #main-content a.btn{
    min-height:46px;
  }

  #main-content .d-flex > [style*="min-width"],
  #main-content .row > [style*="min-width"],
  #main-content form [style*="min-width"],
  #main-content .input-group [style*="min-width"]{
    min-width:0 !important;
  }

  #main-content input[style*="min-width"],
  #main-content select[style*="min-width"],
  #main-content textarea[style*="min-width"],
  #main-content .form-control[style*="min-width"],
  #main-content .form-select[style*="min-width"]{
    width:100% !important;
    max-width:100% !important;
  }

  #main-content .btn-sm{
    min-height:42px;
  }

  #main-content .uc-action-strip,
  #main-content .tpl-print-actions,
  #main-content .hero-actions,
  #main-content .filter-actions,
  #main-content .client-filter-actions{
    display:grid!important;
    grid-template-columns:1fr;
    width:100%;
  }

  #main-content .uc-action-strip .btn,
  #main-content .tpl-print-actions .btn,
  #main-content .hero-actions .btn,
  #main-content .filter-actions .btn,
  #main-content .client-filter-actions .btn{
    width:100%;
  }

  #main-content .table-responsive > table:not(.uc-auto-label-table):not([data-uc-auto-label="true"]){
    width:max-content !important;
    min-width:100% !important;
    max-width:none !important;
    table-layout:auto;
  }

  #main-content table.uc-auto-label-table,
  #main-content table[data-uc-auto-label="true"]{
    min-width:0;
  }

  #main-content table.uc-auto-label-table thead,
  #main-content table[data-uc-auto-label="true"] thead{
    display:none;
  }

  #main-content table.uc-auto-label-table tbody,
  #main-content table.uc-auto-label-table tr,
  #main-content table.uc-auto-label-table td,
  #main-content table[data-uc-auto-label="true"] tbody,
  #main-content table[data-uc-auto-label="true"] tr,
  #main-content table[data-uc-auto-label="true"] td{
    display:block;
    width:100%;
  }

  #main-content table.uc-auto-label-table tr,
  #main-content table[data-uc-auto-label="true"] tr{
    border:1px solid var(--uc-border,#d8e4d8);
    border-radius:14px;
    padding:.45rem .6rem;
    margin-bottom:.65rem;
    background:var(--uc-surface,#fff);
  }

  #main-content table.uc-auto-label-table td,
  #main-content table[data-uc-auto-label="true"] td{
    border:0!important;
    padding:.42rem 0!important;
    display:flex;
    justify-content:space-between;
    gap:1rem;
    min-width:0;
    text-align:right;
    overflow-wrap:anywhere;
  }

  #main-content table.uc-auto-label-table td::before,
  #main-content table[data-uc-auto-label="true"] td::before{
    content:attr(data-label);
    color:var(--uc-muted,#617063);
    font-weight:800;
    text-align:left;
    flex:0 0 min(42%, 12rem);
  }

  #main-content .uc-mobile-kpi-row{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:.55rem;
  }

  #main-content .uc-mobile-kpi-row > *{
    min-width:0;
  }
}

@media (max-width:420px){
  #main-content .uc-mobile-kpi-row{
    grid-template-columns:1fr;
  }

  #main-content .kpi .value,
  #main-content .loan-kpi strong,
  #main-content .mo-kpi strong{
    font-size:1.25rem!important;
  }
}
