/* ==========================================================
   Sistalex — Capa final Sistema de Gestión Judicial
   Objetivo: dejar una vista compacta, consistente, sobria y comercial
   sin tocar la lógica ni las rutas existentes.
   ========================================================== */
:root{
  --sj-bg:#F5F6F8;
  --sj-bg-2:#EEF2F7;
  --sj-sidebar-1:#07152D;
  --sj-sidebar-2:#0D1B3D;
  --sj-sidebar-3:#12376F;
  --sj-ink:#0D1B3D;
  --sj-ink-2:#1F2937;
  --sj-muted:#64748B;
  --sj-muted-2:#94A3B8;
  --sj-line:#E5E7EB;
  --sj-line-2:#CBD5E1;
  --sj-card:#ffffff;
  --sj-primary:#0D1B3D;
  --sj-primary-2:#E0282B;
  --sj-primary-dark:#081228;
  --sj-gold:#F59E0B;
  --sj-danger:#E0282B;
  --sj-warning:#b7791f;
  --sj-success:#15803d;
  --sj-shadow-xs:0 1px 2px rgba(15,23,42,.04);
  --sj-shadow-sm:0 8px 22px rgba(15,23,42,.055);
  --sj-shadow-md:0 18px 40px rgba(15,23,42,.08);
  --sj-radius:16px;
  --sj-radius-lg:20px;
  --sw:252px;
  --sc:66px;
  --primary:var(--sj-sidebar-2);
  --primary-light:var(--sj-sidebar-3);
  --accent:var(--sj-primary-2);
  --surface:var(--sj-bg);
}

html,body{min-height:100%;}
body.sj-body{
  background:
    radial-gradient(circle at 6% -8%,rgba(224,40,43,.06),transparent 34%),
    radial-gradient(circle at 100% 0%,rgba(13,27,61,.08),transparent 32%),
    linear-gradient(180deg,#FFFFFF 0%,var(--sj-bg) 100%)!important;
  color:var(--sj-ink)!important;
  font-family:"Segoe UI",Inter,system-ui,-apple-system,BlinkMacSystemFont,sans-serif!important;
  -webkit-font-smoothing:antialiased;
  text-rendering:geometricPrecision;
}

/* ───────────────── Sidebar ───────────────── */
.sidebar{
  width:var(--sw)!important;
  background:
    radial-gradient(circle at 20% 0%,rgba(224,40,43,.12),transparent 28%),
    linear-gradient(180deg,var(--sj-sidebar-1) 0%,var(--sj-sidebar-2) 42%,var(--sj-sidebar-1) 100%)!important;
  box-shadow:inset -1px 0 0 rgba(255,255,255,.055), 12px 0 28px rgba(15,23,42,.13)!important;
}
.sidebar.collapsed{width:var(--sc)!important;}
.sidebar-brand{
  min-height:90px!important;
  padding:14px 14px 12px!important;
  gap:10px!important;
  justify-content:center!important;
  border-bottom:1px solid rgba(255,255,255,.09)!important;
}

.brand-logo-full{
  width:172px!important;
  max-width:100%!important;
  height:auto!important;
  display:block!important;
  filter:drop-shadow(0 8px 18px rgba(0,0,0,.18));
}
.brand-logo-mark{
  width:40px!important;
  height:40px!important;
  display:none!important;
  border-radius:14px!important;
  background:#fff!important;
  padding:5px!important;
  box-shadow:0 10px 22px rgba(0,0,0,.18), inset 0 0 0 1px rgba(255,255,255,.12)!important;
}
.sidebar.collapsed .brand-logo-full{display:none!important;}
.sidebar.collapsed .brand-logo-mark{display:block!important;}
.auth-panel-logo{
  width:min(330px,100%);
  height:auto;
  display:block;
  margin:0 auto 6px;
}

.brand-icon{
  width:40px!important;
  height:40px!important;
  border-radius:14px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:linear-gradient(135deg,var(--sj-primary),var(--sj-primary-dark))!important;
  color:#fff!important;
  font-size:1.12rem!important;
  box-shadow:0 10px 22px rgba(13,27,61,.22), inset 0 1px 0 rgba(255,255,255,.16)!important;
}
.brand-text .brand-title{
  color:#fff!important;
  font-size:.94rem!important;
  font-weight:830!important;
  letter-spacing:-.018em!important;
  line-height:1.1!important;
}
.brand-text .brand-sub{
  color:#D9E4FF!important;
  font-size:.56rem!important;
  line-height:1.2!important;
  letter-spacing:.035em!important;
  text-transform:none!important;
  font-weight:650!important;
}
.sidebar-toggle{
  top:18px!important;
  right:-13px!important;
  width:26px!important;
  height:26px!important;
  background:linear-gradient(135deg,var(--sj-primary-2),var(--sj-primary))!important;
  border:2px solid var(--sj-sidebar-1)!important;
  box-shadow:0 10px 18px rgba(0,0,0,.22)!important;
}
.sidebar-toggle i{color:#fff!important;font-size:.72rem!important;}
.sidebar-nav{
  padding:9px 8px 10px!important;
  scrollbar-width:thin;
  scrollbar-color:rgba(255,255,255,.25) transparent;
}
.sidebar-nav::-webkit-scrollbar{width:7px;}
.sidebar-nav::-webkit-scrollbar-thumb{background:rgba(255,255,255,.20)!important;border-radius:999px;}
.sidebar-nav::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,.32)!important;}

.nav-section-label{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:8px!important;
  margin:12px 10px 6px!important;
  padding:0 2px!important;
  color:rgba(217,236,232,.63)!important;
  font-size:.59rem!important;
  font-weight:840!important;
  letter-spacing:.095em!important;
  text-transform:uppercase!important;
  cursor:pointer!important;
  user-select:none!important;
}
.nav-section-label:first-child{margin-top:5px!important;}
.nav-section-label::after{
  content:'▾'!important;
  font-size:.64rem!important;
  color:rgba(217,236,232,.72)!important;
  transition:transform .18s ease!important;
}
.nav-section-label.collapsed::after{transform:rotate(-90deg)!important;}
.nav-spacer{display:none!important;}
.nav-group{
  margin:0!important;
  padding:1px 0 6px!important;
  border-bottom:1px solid rgba(255,255,255,.043)!important;
}
.nav-group-header{
  min-height:36px!important;
  margin:0 4px 2px!important;
  padding:7px 10px!important;
  gap:10px!important;
  border-radius:10px!important;
  border:1px solid transparent!important;
  background:transparent!important;
  box-shadow:none!important;
}
.nav-group-header::before{display:none!important;}
.nav-group-header .gh-icon{
  width:18px!important;
  min-width:18px!important;
  height:18px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  color:#F8FAFC!important;
  font-size:.94rem!important;
  filter:none!important;
  opacity:.92!important;
}
.nav-group-header .gh-label{
  color:#FFFFFF!important;
  background:transparent!important;
  padding:0!important;
  font-size:.81rem!important;
  line-height:1.08!important;
  font-weight:770!important;
  letter-spacing:-.003em!important;
  text-transform:none!important;
}
.nav-group-header .gh-arrow{
  margin-left:auto!important;
  font-size:.69rem!important;
  color:rgba(236,248,245,.62)!important;
}
.nav-group.open .gh-arrow{transform:rotate(180deg)!important;}
.nav-group-header:hover{background:rgba(255,255,255,.045)!important;border-color:rgba(255,255,255,.10)!important;}
.nav-group:has(.nav-link.active)>.nav-group-header,
.nav-group-header.is-active{
  background:rgba(255,255,255,.045)!important;
  box-shadow:inset 3px 0 0 rgba(20,184,166,.82)!important;
}
.nav-group-links{margin:0 6px 2px 30px!important;}
.sidebar .nav-link,
.nav-direct-link{
  min-height:29px!important;
  margin:0 0 2px!important;
  padding:5px 7px!important;
  border:0!important;
  border-radius:8px!important;
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  background:transparent!important;
  box-shadow:none!important;
  color:rgba(233,248,245,.76)!important;
  font-size:.72rem!important;
  font-weight:640!important;
  text-decoration:none!important;
  white-space:nowrap!important;
  overflow:hidden!important;
}
.nav-direct-link{margin:0 4px 4px!important;padding:8px 10px!important;font-size:.80rem!important;font-weight:760!important;}
.sidebar .nav-link i,
.nav-direct-link i{
  width:14px!important;
  min-width:14px!important;
  font-size:.78rem!important;
  color:rgba(255,255,255,.82)!important;
  text-align:center!important;
}
.nav-direct-link i{width:17px!important;min-width:17px!important;font-size:.95rem!important;color:#FFFFFF!important;}
.sidebar .nav-link:hover,
.sidebar .nav-link.active,
.nav-direct-link:hover,
.nav-direct-link.active{
  background:rgba(255,255,255,.064)!important;
  color:#fff!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.10)!important;
}
.sidebar .nav-link.active,
.nav-direct-link.active{
  background:linear-gradient(90deg,rgba(224,40,43,.24),rgba(255,255,255,.06))!important;
  box-shadow:inset 4px 0 0 var(--sj-primary-2)!important;
}
.sidebar .nav-link:hover i,
.sidebar .nav-link.active i,
.nav-direct-link:hover i,
.nav-direct-link.active i{color:#FFFFFF!important;}

.sidebar-footer{
  padding:10px 12px 12px!important;
  border-top:1px solid rgba(255,255,255,.09)!important;
  background:linear-gradient(180deg,rgba(255,255,255,.018),rgba(0,0,0,.08))!important;
}
.footer-info{gap:10px!important;margin-bottom:7px!important;}
.sj-footer-avatar{
  width:36px!important;
  height:36px!important;
  flex:0 0 36px!important;
  border-radius:50%!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:linear-gradient(135deg,var(--sj-primary),var(--sj-primary-dark))!important;
  color:#fff!important;
  font-size:.98rem!important;
  font-weight:850!important;
  box-shadow:0 8px 18px rgba(0,0,0,.18), inset 0 0 0 1px rgba(141,227,216,.16)!important;
}
.sj-footer-avatar::after{display:none!important;}
.footer-info .fi-text .text-white-50:first-child,
.footer-info .fi-text div:first-child{
  color:#eef8f5!important;
  font-size:.80rem!important;
  font-weight:750!important;
}
.footer-info .fi-text .text-white-50.text-capitalize,
.footer-info .fi-text div:nth-child(2){color:#AFC0DE!important;font-size:.68rem!important;font-weight:650!important;}
.sj-footer-caret{margin-left:auto!important;color:rgba(238,247,245,.65)!important;font-size:.76rem!important;}
.footer-logout .nav-link,
.sidebar-footer .nav-link{
  min-height:30px!important;
  padding:6px 8px!important;
  font-size:.74rem!important;
  font-weight:720!important;
  color:rgba(238,247,245,.86)!important;
}
.footer-logout .nav-link i,.sidebar-footer .nav-link i{font-size:.86rem!important;color:rgba(238,247,245,.86)!important;}

.sidebar.collapsed .sidebar-brand{min-height:70px!important;padding:12px 8px!important;justify-content:center!important;}
.sidebar.collapsed .brand-icon{width:38px!important;height:38px!important;font-size:1.05rem!important;}
.sidebar.collapsed .sidebar-nav{padding:8px 7px!important;}
.sidebar.collapsed .nav-section-label{height:8px!important;margin:10px 0 7px!important;padding:0!important;justify-content:center!important;color:transparent!important;font-size:0!important;}
.sidebar.collapsed .nav-section-label::after{display:none!important;}
.sidebar.collapsed .nav-section-label::before{content:'';width:22px;height:1px;background:rgba(217,236,232,.18);display:block;border-radius:999px;}
.sidebar.collapsed .nav-group-header{min-height:34px!important;margin:0 0 4px!important;padding:7px!important;justify-content:center!important;}
.sidebar.collapsed .nav-group-header .gh-icon{width:20px!important;min-width:20px!important;font-size:.98rem!important;}
.sidebar.collapsed .nav-group-header .gh-label,
.sidebar.collapsed .nav-group-header .gh-arrow{display:none!important;}
.sidebar.collapsed .nav-group-links{margin:0 0 5px!important;}
.sidebar.collapsed .sidebar .nav-link,
.sidebar.collapsed .nav-link,
.sidebar.collapsed .nav-direct-link{
  min-height:34px!important;
  margin:0 0 4px!important;
  padding:8px!important;
  justify-content:center!important;
}
.sidebar.collapsed .nav-direct-link i,
.sidebar.collapsed .nav-link i{width:18px!important;min-width:18px!important;font-size:.98rem!important;}
.sidebar.collapsed .nav-direct-link:hover::after{
  content:attr(data-label);
  position:fixed;
  left:calc(var(--sc) + 10px);
  transform:translateY(-2px);
  z-index:2200;
  background:#0D1B3D;
  color:#fff;
  border:1px solid rgba(141,227,216,.22);
  box-shadow:0 8px 18px rgba(0,0,0,.22);
  border-radius:8px;
  padding:5px 10px;
  font-size:.78rem;
  white-space:nowrap;
}
.sidebar.collapsed .sj-footer-avatar{width:36px!important;height:36px!important;flex-basis:36px!important;font-size:.96rem!important;}
.sidebar.collapsed .sj-footer-caret{display:none!important;}

/* ───────────────── Layout / Topbar ───────────────── */
.main-content{margin-left:var(--sw)!important;min-height:100vh!important;background:transparent!important;}
.main-content.collapsed{margin-left:var(--sc)!important;}
.topbar{
  min-height:62px!important;
  padding:10px 22px!important;
  background:rgba(255,255,255,.90)!important;
  backdrop-filter:saturate(150%) blur(14px)!important;
  border-bottom:1px solid var(--sj-line)!important;
  box-shadow:0 1px 0 rgba(15,23,42,.035)!important;
}
.sj-topbar-menu{font-size:1.18rem!important;color:var(--sj-muted)!important;text-decoration:none!important;}
.sj-topbar-menu:hover{color:var(--sj-primary)!important;}
.sj-topbar-kicker{
  color:var(--sj-muted)!important;
  font-size:.62rem!important;
  letter-spacing:.12em!important;
  text-transform:uppercase!important;
  font-weight:820!important;
  line-height:1!important;
  margin-bottom:4px!important;
}
.topbar-title{
  color:var(--sj-ink)!important;
  font-size:1.02rem!important;
  font-weight:820!important;
  letter-spacing:-.012em!important;
}
.sj-topbar-actions{min-width:0;}
.sj-system-status{
  align-items:center;
  gap:7px;
  padding:5px 10px;
  border-radius:999px;
  background:#F3F6FF;
  color:var(--sj-primary-dark);
  border:1px solid #D8E0F2;
  font-size:.76rem;
  font-weight:780;
}
.sj-system-status span{width:7px;height:7px;border-radius:50%;background:var(--sj-primary-2);box-shadow:0 0 0 4px rgba(224,40,43,.13);}
.sj-role-badge{
  background:#F3F6FF!important;
  color:var(--sj-primary-dark)!important;
  border:1px solid #D8E0F2!important;
  font-size:.70rem!important;
  font-weight:820!important;
  padding:.36rem .56rem!important;
}
.page-body{padding:20px 24px 24px!important;background:transparent!important;}
.sj-app-footer{
  padding:14px 24px 20px!important;
  color:var(--sj-muted)!important;
  font-size:.78rem!important;
  border-top:1px solid rgba(220,232,229,.55);
}
.sj-app-footer a{color:var(--sj-muted)!important;text-decoration:none!important;}
.sj-app-footer a:hover{color:var(--sj-primary)!important;}

/* ───────────────── Components ───────────────── */
.card,.section-card,.semaforo-card,.filters-card,.metric-box,.nx-card,.nx-stat,.process-card,.form-panel,.detail-card,.modal-content,.portal-client-card,.cliente-card,.ops-card{
  background:rgba(255,255,255,.98)!important;
  border:1px solid var(--sj-line)!important;
  border-radius:var(--sj-radius-lg)!important;
  box-shadow:var(--sj-shadow-sm)!important;
}
.card:hover,.section-card:hover,.semaforo-card:hover,.filters-card:hover,.nx-card:hover,.nx-stat:hover,.ops-card:hover{box-shadow:var(--sj-shadow-md)!important;}
.card-header,.section-head,.semaforo-head,.form-panel-header,.detail-head,.modal-header{
  background:linear-gradient(180deg,#fff 0%,#f8fbfa 100%)!important;
  border-bottom:1px solid var(--sj-line)!important;
  color:var(--sj-ink)!important;
  font-weight:820!important;
}
.card-header:first-child{border-radius:var(--sj-radius-lg) var(--sj-radius-lg) 0 0!important;}
.card-footer,.modal-footer{
  background:#fbfdfc!important;
  border-top:1px solid var(--sj-line)!important;
}

h1,h2,h3,h4,h5,h6,.page-title,.section-title,.semaforo-title,.nx-card h3,.ops-title{color:var(--sj-ink)!important;letter-spacing:-.012em;}
.text-muted,.small.text-muted{color:var(--sj-muted)!important;}
a{color:var(--sj-primary)!important;}
a:hover{color:var(--sj-primary-dark)!important;}

.form-control,.form-select,.input-group-text,.nx-input,.ops-input{
  border:1px solid var(--sj-line-2)!important;
  border-radius:12px!important;
  min-height:42px!important;
  background:#fff!important;
  color:var(--sj-ink)!important;
  box-shadow:none!important;
}
.form-control:focus,.form-select:focus,.nx-input:focus,.ops-input:focus{
  border-color:rgba(224,40,43,.45)!important;
  box-shadow:0 0 0 .20rem rgba(224,40,43,.10)!important;
}
.input-group-text{background:#f7fbfa!important;color:var(--sj-muted)!important;}
.form-label,.ops-label,.filter-block label{
  color:var(--sj-ink-2)!important;
  font-size:.74rem!important;
  font-weight:820!important;
  letter-spacing:.045em!important;
  text-transform:uppercase!important;
}
.form-check-input{border-color:var(--sj-line-2)!important;box-shadow:none!important;}
.form-check-input:checked{background-color:var(--sj-primary)!important;border-color:var(--sj-primary)!important;}

.btn,.nx-btn,.ops-btn{
  border-radius:12px!important;
  font-weight:760!important;
  letter-spacing:-.005em;
}
.btn-sm{border-radius:10px!important;font-weight:760!important;}
.btn-primary,.btn-success,.nx-btn-primary,.ops-btn-primary{
  background:linear-gradient(135deg,var(--sj-primary),var(--sj-primary-dark))!important;
  border-color:var(--sj-primary-dark)!important;
  color:#fff!important;
  box-shadow:0 10px 20px rgba(13,27,61,.15)!important;
}
.btn-primary:hover,.btn-success:hover,.nx-btn-primary:hover,.ops-btn-primary:hover{
  background:linear-gradient(135deg,var(--sj-primary-dark),#07152D)!important;
  border-color:#07152D!important;
  color:#fff!important;
}
.btn-outline-primary,.nx-btn-secondary,.ops-btn-secondary{
  color:var(--sj-primary-dark)!important;
  border-color:rgba(13,27,61,.24)!important;
  background:#fff!important;
}
.btn-outline-primary:hover,.nx-btn-secondary:hover,.ops-btn-secondary:hover{
  color:var(--sj-primary-dark)!important;
  background:#F3F6FF!important;
  border-color:rgba(13,27,61,.38)!important;
}
.btn-outline-secondary{color:var(--sj-muted)!important;border-color:var(--sj-line-2)!important;background:#fff!important;}
.btn-outline-secondary:hover{color:var(--sj-ink)!important;background:#f7fbfa!important;border-color:#AAB7CC!important;}
.btn-warning,.nx-btn-gold,.ops-btn-warning{background:var(--sj-gold)!important;border-color:var(--sj-gold)!important;color:#fff!important;}
.btn-danger,.ops-btn-danger{background:var(--sj-danger)!important;border-color:var(--sj-danger)!important;color:#fff!important;}

.badge{font-weight:790!important;letter-spacing:.005em!important;}
.badge.bg-primary,.badge.text-bg-primary,.text-bg-primary{background:var(--sj-primary)!important;color:#fff!important;}
.badge.bg-success,.badge.text-bg-success,.text-bg-success{background:var(--sj-success)!important;color:#fff!important;}
.badge.bg-danger,.badge.text-bg-danger,.text-bg-danger{background:var(--sj-danger)!important;color:#fff!important;}
.badge.bg-warning,.badge.text-bg-warning,.text-bg-warning{background:#fff2ce!important;color:#80530e!important;border:1px solid #edd596!important;}
.badge.text-bg-dark{background:var(--sj-sidebar-2)!important;color:#fff!important;}
.alert{border-radius:14px!important;border-width:1px!important;box-shadow:var(--sj-shadow-xs)!important;}
.alert-info{background:#F3F6FF!important;border-color:#C7D2FE!important;color:var(--sj-primary-dark)!important;}
.alert-success{background:#ecfdf5!important;border-color:#bbf7d0!important;color:#166534!important;}
.alert-warning{background:#fff8e6!important;border-color:#f1d79a!important;color:#80530e!important;}
.alert-danger{background:#fef2f2!important;border-color:#fecaca!important;color:#991b1b!important;}
.progress{background:#e5eeec!important;border-radius:999px!important;}
.progress-bar{background:linear-gradient(90deg,var(--sj-primary),var(--sj-primary-2))!important;}

/* ───────────────── Tables ───────────────── */
.table,.nx-table,.ops-table{
  --bs-table-bg:transparent!important;
  --bs-table-striped-bg:rgba(13,27,61,.035)!important;
  --bs-table-hover-bg:rgba(13,27,61,.08)!important;
  margin-bottom:0!important;
}
.table-responsive{border-radius:0 0 var(--sj-radius-lg) var(--sj-radius-lg);}
.table thead th,
.table-clean thead th,
.table-semaforo thead th,
.nx-table th,
.ops-table th,
#tablaCausas thead th,
body .table-responsive table thead th{
  background:linear-gradient(90deg,#0c1f46 0%,#163a77 100%)!important;
  color:#ffffff!important;
  border-color:rgba(255,255,255,.10)!important;
  font-size:.74rem!important;
  font-weight:820!important;
  letter-spacing:.035em!important;
  text-transform:none!important;
  padding:.72rem .76rem!important;
  white-space:nowrap!important;
}
.table thead th a,
.table thead th .sort-link,
.table thead th span,
.table thead th i,
.table thead th .text-muted,
.table-clean thead th a,
.table-clean thead th span,
.table-semaforo thead th a,
.table-semaforo thead th span,
.nx-table th *,
.ops-table th *{color:#fff!important;}
.table td,.nx-table td,.ops-table td{
  color:var(--sj-ink)!important;
  border-color:#e8efed!important;
  font-size:.82rem!important;
  padding:.70rem .76rem!important;
  vertical-align:middle!important;
}
.table tbody tr:hover td,.nx-table tr:hover td,.ops-table tr:hover td{background:#f1faf7!important;}
.sort-link:hover,.table thead th a:hover{color:#fff!important;opacity:.92!important;}
.pagination .page-link{border-color:var(--sj-line)!important;color:var(--sj-primary)!important;border-radius:9px!important;margin:0 2px!important;}
.pagination .page-item.active .page-link{background:var(--sj-primary)!important;border-color:var(--sj-primary)!important;color:#fff!important;}

/* ───────────────── Dashboard / principal ───────────────── */
.sj-page-hero{
  position:relative;
  overflow:hidden;
  border:1px solid var(--sj-line);
  border-radius:22px;
  background:
    radial-gradient(circle at 88% 10%,rgba(224,40,43,.10),transparent 30%),
    radial-gradient(circle at 8% 0%,rgba(13,27,61,.06),transparent 28%),
    linear-gradient(135deg,#ffffff 0%,#f8fafc 62%,#f5f6f8 100%);
  box-shadow:var(--sj-shadow-sm);
  padding:18px 20px;
}
.sj-page-hero::after{
  content:'';
  position:absolute;
  right:-60px;
  top:-70px;
  width:180px;
  height:180px;
  border-radius:50%;
  border:1px solid rgba(13,27,61,.16);
  pointer-events:none;
}
.sj-hero-kicker{font-size:.68rem;font-weight:850;letter-spacing:.13em;text-transform:uppercase;color:var(--sj-primary-dark);margin-bottom:6px;}
.sj-hero-title{font-size:1.28rem;font-weight:880;color:var(--sj-ink);margin:0;letter-spacing:-.025em;}
.sj-hero-sub{font-size:.86rem;color:var(--sj-muted);margin:.28rem 0 0;max-width:720px;}
.sj-hero-chip{display:inline-flex;align-items:center;gap:6px;border:1px solid #D8E0F2;background:#F3F6FF;color:var(--sj-primary-dark);border-radius:999px;padding:5px 9px;font-size:.72rem;font-weight:820;}
.dashboard-compact .section-card,
.dashboard-compact .semaforo-card{border-radius:20px!important;}
.dashboard-compact .section-head,
.dashboard-compact .semaforo-head{padding:.72rem .88rem!important;}
.dashboard-compact .section-title,
.dashboard-compact .semaforo-title{font-size:.92rem!important;font-weight:850!important;}
.focus-card,.dash-metric{
  border:1px solid var(--sj-line)!important;
  border-radius:16px!important;
  background:linear-gradient(180deg,#fff 0%,#fbfdfc 100%)!important;
  box-shadow:0 7px 18px rgba(15,23,42,.045)!important;
}
.focus-card{padding:.78rem .88rem!important;min-height:116px!important;}
.focus-kicker,.dash-metric .metric-label{color:var(--sj-muted)!important;font-weight:850!important;}
.focus-title{color:var(--sj-ink)!important;font-size:.82rem!important;}
.focus-total,.dash-metric .metric-value,.range-value,.range-value a,.cell-count{color:var(--sj-primary-dark)!important;}
.focus-total{font-size:1.48rem!important;}
.semaforo-wrap{padding:.58rem .68rem .72rem!important;}
.sem-row-wrap{border-color:var(--sj-line)!important;border-radius:14px!important;box-shadow:0 5px 12px rgba(15,23,42,.035)!important;}
.sem-cell{border-color:#e8efed!important;background:#fbfdfc!important;}
.sem-header .col-head.range-head{background:initial!important;color:inherit!important;}

/* ───────────────── Causas / filtros / export modal ───────────────── */
.filters-card .card-body{padding:1rem 1.1rem!important;}
.filters-grid{gap:12px!important;}
.filters-extra,.export-top-actions,.export-fields-scroll,.export-field-box,.export-mode-card{
  border-color:var(--sj-line)!important;
  background:#fbfdfc!important;
  border-radius:14px!important;
}
.export-section-title,.export-mode-title{color:var(--sj-primary-dark)!important;font-weight:850!important;}
.export-radio-tab{border-color:#CBD5E1!important;color:var(--sj-primary-dark)!important;border-radius:10px!important;}
.export-radio-tab:has(input:checked){background:var(--sj-primary)!important;border-color:var(--sj-primary)!important;color:#fff!important;}
.sticky-bar{background:linear-gradient(90deg,#0D1B3D,#12376F 65%,#E0282B)!important;border-top:1px solid rgba(255,255,255,.12)!important;}
.tr-selected td{background:#f7fbf0!important;}
.modal-header[style]{background:linear-gradient(90deg,#0D1B3D,#12376F 65%,#E0282B)!important;color:#fff!important;}

/* ───────────────── Automatización / ejecución masiva ───────────────── */
.nx-stats{gap:12px!important;margin-bottom:16px!important;}
.nx-stat{padding:16px 18px!important;border-radius:18px!important;}
.nx-stat .label{font-size:.70rem!important;color:var(--sj-muted)!important;font-weight:850!important;}
.nx-stat .value{font-size:1.75rem!important;color:var(--sj-primary-dark)!important;font-weight:900!important;}
.nx-stat .sub{color:var(--sj-gold)!important;font-weight:760!important;}
.nx-card{padding:16px 18px!important;}
.nx-links{gap:8px!important;}
.ops-card{padding:16px 18px!important;margin-bottom:16px!important;}
.ops-head{margin-bottom:12px!important;}
.ops-title{font-size:.96rem!important;font-weight:870!important;}
.ops-subtitle{font-size:.80rem!important;color:var(--sj-muted)!important;}
.ops-form-grid{gap:12px!important;}
.ops-file{border-color:var(--sj-line-2)!important;background:#fbfdfc!important;border-radius:15px!important;}
.ops-file-count,.ops-stage-badge,.ops-pill{
  background:#F3F6FF!important;
  color:var(--sj-primary-dark)!important;
  border:1px solid #D8E0F2!important;
}
.ops-kpis{gap:9px!important;margin-bottom:12px!important;}
.ops-kpi{border-color:var(--sj-line)!important;background:#fbfdfc!important;border-radius:15px!important;padding:9px 11px!important;min-height:66px!important;}
.ops-kpi-label{font-size:.65rem!important;color:var(--sj-muted)!important;font-weight:850!important;}
.ops-kpi-value{font-size:1.12rem!important;color:var(--sj-ink)!important;}
.ops-kpi-value.ok{color:var(--sj-primary-dark)!important;}
.ops-kpi-value.err{color:var(--sj-danger)!important;}
.ops-status{border-color:var(--sj-line)!important;background:linear-gradient(180deg,#f7fbfa,#eef8f5)!important;border-radius:16px!important;}
.ops-dot.running,.ops-dot.done{background:var(--sj-primary)!important;box-shadow:0 0 0 4px rgba(224,40,43,.13)!important;}
.ops-progress-fill{background:linear-gradient(90deg,var(--sj-primary),var(--sj-primary-2))!important;}
.ops-details{border-color:var(--sj-line)!important;border-radius:15px!important;}
.ops-details summary{color:var(--sj-ink)!important;}
.ops-log{background:#0A1020!important;border-color:rgba(255,255,255,.08)!important;border-radius:12px!important;}
.ops-table th{background:linear-gradient(90deg,#0D1B3D,#12376F 65%,#E0282B)!important;color:#fff!important;}
.ops-pill.ok,.badge-dist,.badge-ing{background:#e8f8ef!important;color:#166534!important;border-color:#bbf7d0!important;}
.ops-pill.error,.badge-err{background:#fef2f2!important;color:#991b1b!important;border-color:#fecaca!important;}
.ops-pill.pending,.badge-pend{background:#fff8e6!important;color:#80530e!important;border-color:#f1d79a!important;}

/* ───────────────── Login ───────────────── */
.auth-shell{
  background:
    radial-gradient(circle at 18% 4%,rgba(224,40,43,.12),transparent 30%),
    linear-gradient(180deg,#f8fbfa 0%,#edf5f3 100%)!important;
}
.auth-shell::before{
  height:172px!important;
  background:linear-gradient(125deg,#07152D 0%,#0D1B3D 58%,#E0282B 100%)!important;
  box-shadow:0 14px 30px rgba(15,23,42,.10)!important;
}
.auth-panel{
  border:1px solid rgba(220,232,229,.9)!important;
  border-radius:24px!important;
  box-shadow:0 28px 60px rgba(15,23,42,.16)!important;
  padding:36px 34px!important;
}
.auth-panel-brand-title,.auth-panel h1{color:var(--sj-ink)!important;}
.auth-panel-brand-sub{color:var(--sj-primary-dark)!important;}
.auth-panel-brand .auth-brand-icon,.auth-brand-icon{background:linear-gradient(135deg,var(--sj-primary),var(--sj-primary-dark))!important;color:#fff!important;border-color:rgba(224,40,43,.14)!important;}
.auth-footer{border-top-color:var(--sj-line)!important;}
.sj-auth-chips{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin:-10px 0 22px;}
.sj-auth-chip{border:1px solid #D8E0F2;background:#F3F6FF;color:var(--sj-primary-dark);border-radius:999px;padding:4px 8px;font-size:.70rem;font-weight:800;}

/* ───────────────── Responsive ───────────────── */
@media (max-width:991.98px){
  :root{--sw:232px;--sc:62px;}
  .page-body{padding:16px!important;}
  .topbar{padding:10px 16px!important;}
  .sj-topbar-kicker{display:none!important;}
  .topbar-title{font-size:.96rem!important;}
  .card,.section-card,.semaforo-card,.filters-card,.nx-card,.ops-card{border-radius:16px!important;}
  .ops-form-grid,.filters-grid{grid-template-columns:1fr!important;}
  .ops-kpis{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .sj-page-hero{padding:16px!important;}
}
@media (max-width:575.98px){
  .main-content,.main-content.collapsed{margin-left:0!important;}
  .sidebar{transform:translateX(-100%);}
  .sidebar:not(.collapsed){transform:translateX(0);}
  .sj-app-footer{display:block!important;}
}


/* ==========================================================
   Ajuste visual 2026-05-08 — Adaptación a propuesta 2 elegida
   Objetivo: llevar todo el proyecto a una línea más limpia,
   azul ejecutivo, menos oscura y más cercana al mockup validado.
   ========================================================== */
:root{
  --sj-bg:#F4F7FC;
  --sj-bg-2:#EEF3FB;
  --sj-sidebar-1:#0E4ED8;
  --sj-sidebar-2:#0B46C9;
  --sj-sidebar-3:#083B9F;
  --sj-ink:#112C69;
  --sj-ink-2:#1E3568;
  --sj-muted:#6C7FA5;
  --sj-muted-2:#8B9ABA;
  --sj-line:#DFE8F4;
  --sj-line-2:#CAD8EC;
  --sj-card:#FFFFFF;
  --sj-primary:#0B46C9;
  --sj-primary-2:#EA3B35;
  --sj-primary-dark:#0A2E83;
  --sj-gold:#D99A24;
  --sj-danger:#E14A42;
  --sj-warning:#A56B00;
  --sj-success:#0F8A5C;
  --surface:var(--sj-bg);
}

body.sj-body{
  background:linear-gradient(180deg,#FAFCFF 0%, var(--sj-bg) 100%)!important;
}

.sidebar{
  background:linear-gradient(180deg,#0E4ED8 0%, #0C46CA 40%, #083B9F 100%)!important;
  box-shadow:inset -1px 0 0 rgba(255,255,255,.10), 12px 0 28px rgba(11,70,201,.14)!important;
}
.sidebar-brand{
  min-height:88px!important;
  padding:16px 16px 14px!important;
  border-bottom:1px solid rgba(255,255,255,.13)!important;
}
.brand-logo-full{filter:none!important;}
.brand-logo-mark{
  background:rgba(255,255,255,.98)!important;
  box-shadow:0 10px 18px rgba(6,30,90,.18)!important;
}
.sidebar-toggle{
  background:linear-gradient(135deg,#6EA2FF,#245CFF)!important;
  border:2px solid rgba(255,255,255,.36)!important;
  right:-14px!important;
}
.nav-section-label{
  color:rgba(255,255,255,.78)!important;
  margin:14px 12px 8px!important;
  font-size:.60rem!important;
  letter-spacing:.11em!important;
}
.nav-section-label::after{color:rgba(255,255,255,.78)!important;}
.nav-group{border-bottom:0!important; padding-bottom:2px!important;}
.nav-group-header{
  margin:0 6px 3px!important;
  padding:8px 12px!important;
  border-radius:12px!important;
}
.nav-group-header .gh-label,
.nav-group-header .gh-icon,
.nav-group-header .gh-arrow{
  color:#FFFFFF!important;
}
.nav-group-header:hover,
.nav-group:has(.nav-link.active)>.nav-group-header,
.nav-group-header.is-active{
  background:rgba(255,255,255,.10)!important;
  box-shadow:none!important;
  border-color:rgba(255,255,255,.12)!important;
}
.nav-group-links{margin:0 8px 6px 8px!important;}
.sidebar .nav-link,
.nav-direct-link{
  min-height:48px!important;
  padding:12px 14px!important;
  margin:0 0 6px!important;
  border-radius:14px!important;
  color:rgba(255,255,255,.94)!important;
  font-size:.92rem!important;
  font-weight:700!important;
}
.nav-direct-link{margin:0 8px 8px!important;}
.sidebar .nav-link i,
.nav-direct-link i{
  width:19px!important;
  min-width:19px!important;
  font-size:1.02rem!important;
  color:#FFFFFF!important;
}
.sidebar .nav-link:hover,
.nav-direct-link:hover{
  background:rgba(255,255,255,.10)!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.08)!important;
}
.sidebar .nav-link.active,
.nav-direct-link.active{
  background:linear-gradient(90deg,rgba(78,143,255,.95),rgba(69,126,255,.82))!important;
  box-shadow:inset 4px 0 0 rgba(255,255,255,.95), 0 8px 18px rgba(8,40,122,.20)!important;
  color:#fff!important;
}
.nav-label{opacity:1!important;}
.sidebar-footer{
  background:linear-gradient(180deg,rgba(255,255,255,.03),rgba(0,20,77,.12))!important;
  border-top:1px solid rgba(255,255,255,.12)!important;
}
.sj-footer-avatar{
  background:linear-gradient(135deg,rgba(255,255,255,.16),rgba(255,255,255,.10))!important;
  border:1px solid rgba(255,255,255,.22)!important;
  box-shadow:none!important;
}
.footer-info .fi-text .text-white-50:first-child,
.footer-info .fi-text div:first-child,
.footer-info .fi-text .text-white-50.text-capitalize,
.footer-info .fi-text div:nth-child(2),
.sj-footer-caret,
.footer-logout .nav-link,
.sidebar-footer .nav-link,
.footer-logout .nav-link i,
.sidebar-footer .nav-link i{
  color:rgba(255,255,255,.96)!important;
}

.topbar{
  min-height:78px!important;
  padding:16px 28px 14px!important;
  background:rgba(255,255,255,.96)!important;
  border-bottom:1px solid var(--sj-line)!important;
  box-shadow:none!important;
}
.sj-topbar-kicker{
  color:#5B73A5!important;
  font-size:.84rem!important;
  letter-spacing:.12em!important;
  font-weight:900!important;
}
.topbar-title{
  color:#112C69!important;
  font-size:1.12rem!important;
  font-weight:900!important;
}
.sj-system-status,
.sj-role-badge{
  background:#F8FAFF!important;
  border:1px solid #D8E4F7!important;
  color:#173A84!important;
}
.sj-system-status span{background:#EA3B35!important; box-shadow:0 0 0 4px rgba(234,59,53,.12)!important;}
.page-body{padding:24px 28px 28px!important;}
.sj-app-footer{
  border-top:1px solid #E5EDF8!important;
  color:#6C7FA5!important;
}

.card,.section-card,.semaforo-card,.filters-card,.metric-box,.nx-card,.nx-stat,.process-card,.form-panel,.detail-card,.modal-content,.portal-client-card,.cliente-card,.ops-card{
  background:#FFFFFF!important;
  border:1px solid #E3EBF6!important;
  border-radius:22px!important;
  box-shadow:0 10px 26px rgba(17,44,105,.05)!important;
}
.card:hover,.section-card:hover,.semaforo-card:hover,.filters-card:hover,.nx-card:hover,.nx-stat:hover,.ops-card:hover{
  box-shadow:0 14px 30px rgba(17,44,105,.07)!important;
}
.card-header,.section-head,.semaforo-head,.form-panel-header,.detail-head,.modal-header{
  background:linear-gradient(180deg,#FFFFFF 0%,#F9FBFF 100%)!important;
  border-bottom:1px solid #E5EDF8!important;
}

.sj-page-hero{
  border:1px solid #E1EAF6!important;
  border-radius:26px!important;
  background:
    radial-gradient(circle at 95% 0%, rgba(236,166,122,.18), transparent 32%),
    radial-gradient(circle at 4% 0%, rgba(79,130,255,.05), transparent 24%),
    linear-gradient(135deg,#FFFFFF 0%,#FEFEFF 58%,#FFF7F2 100%)!important;
  box-shadow:0 10px 24px rgba(17,44,105,.04)!important;
  padding:22px 24px!important;
}
.sj-page-hero::after{
  width:210px!important;
  height:210px!important;
  right:-72px!important;
  top:-76px!important;
  border:1px solid rgba(215,177,150,.40)!important;
}
.sj-hero-kicker{color:#1243B6!important;font-size:.92rem!important;letter-spacing:.10em!important;}
.sj-hero-title{color:#112C69!important;font-size:1.55rem!important;font-weight:900!important;}
.sj-hero-sub{color:#6178A5!important;font-size:.95rem!important;max-width:840px!important;}
.sj-hero-chip{
  background:#FFFFFF!important;
  border:1px solid #D9E5F7!important;
  color:#173A84!important;
  padding:9px 14px!important;
  font-size:.84rem!important;
  font-weight:820!important;
}

.dashboard-compact .section-head,
.dashboard-compact .semaforo-head{
  padding:14px 18px!important;
  background:#FFFFFF!important;
}
.dashboard-compact .section-title,
.dashboard-compact .semaforo-title{
  color:#112C69!important;
  font-size:1.05rem!important;
  font-weight:900!important;
}
.focus-card,.dash-metric{
  border:1px solid #E4ECF7!important;
  border-radius:18px!important;
  background:#FFFFFF!important;
  box-shadow:none!important;
}
.focus-card{min-height:192px!important;padding:16px 16px 14px!important;}
.focus-kicker,.dash-metric .metric-label{color:#7184A9!important;font-size:.82rem!important;font-weight:800!important;}
.focus-title{color:#102B67!important;font-size:1rem!important;font-weight:860!important;line-height:1.3!important;}
.focus-total,.dash-metric .metric-value,.range-value,.range-value a,.cell-count{
  color:#102B67!important;
  font-weight:900!important;
}
.focus-total{font-size:1.85rem!important;}
.focus-card .small.text-decoration-none{color:#2957D8!important;font-size:.88rem!important;font-weight:780!important;}
.focus-chip{padding:.42rem .82rem!important;font-size:.86rem!important; font-weight:850!important;}
.semaforo-wrap{padding:.85rem .95rem 1rem!important;}
.sem-row-wrap{
  border:1px solid #E6EDF8!important;
  border-radius:16px!important;
  box-shadow:none!important;
  margin-bottom:.6rem!important;
}
.sem-cell{
  background:#FFFFFF!important;
  border:1px solid #EAF0F8!important;
  min-height:38px!important;
}
.sem-header{border-bottom:1px solid #E5EDF8!important; padding:0 .65rem .55rem!important;}
.col-head,.range-pct,.cell-pct{color:#7184A9!important;}
.col-head.left,
.semaforo-title,
.section-title,
h1,h2,h3,h4,h5,h6,.page-title{color:#112C69!important;}
.sem-expand-btn{color:#5470A6!important;}
.sem-expand-btn:hover{background:#F5F8FE!important;}

.table thead th,
.table-clean thead th,
.table-semaforo thead th,
.nx-table th,
.ops-table th,
#tablaCausas thead th,
body .table-responsive table thead th{
  background:linear-gradient(90deg,#10358D 0%,#1650C0 100%)!important;
  color:#FFFFFF!important;
  border-color:#2D61C2!important;
}
.table tbody tr:hover td,.nx-table tr:hover td,.ops-table tr:hover td{background:#F7FAFF!important;}

.btn-primary,.btn-success,.nx-btn-primary,.ops-btn-primary{
  background:linear-gradient(135deg,#0F49CC,#0A2F84)!important;
  border-color:#0A2F84!important;
  box-shadow:none!important;
}
.btn-primary:hover,.btn-success:hover,.nx-btn-primary:hover,.ops-btn-primary:hover{
  background:linear-gradient(135deg,#0A2F84,#08276D)!important;
  border-color:#08276D!important;
}
.btn-outline-primary,.nx-btn-secondary,.ops-btn-secondary{
  color:#163C89!important;
  border-color:#D1DDF1!important;
  background:#FFFFFF!important;
}
.btn-outline-primary:hover,.nx-btn-secondary:hover,.ops-btn-secondary:hover{
  background:#F5F8FF!important;
  border-color:#BFD0EC!important;
}
.badge.text-bg-dark{background:#10358D!important;color:#fff!important;}
.alert-info{background:#F4F7FF!important;border-color:#DCE6FB!important;color:#173A84!important;}

.auth-shell{
  background:linear-gradient(180deg,#F4F8FF 0%,#EEF3FB 100%)!important;
}
.auth-shell::before{
  background:linear-gradient(125deg,#0E4ED8 0%,#0C46CA 58%,#083B9F 100%)!important;
}
.auth-panel{
  border:1px solid #E2EAF6!important;
  box-shadow:0 28px 60px rgba(17,44,105,.12)!important;
}
.sj-auth-chip{background:#FFFFFF!important;border:1px solid #D9E4F7!important;color:#173A84!important;}

@media (max-width:991.98px){
  .topbar{padding:14px 18px 12px!important; min-height:70px!important;}
  .page-body{padding:18px!important;}
  .sj-page-hero{padding:18px!important;}
}


/* ==========================================================
   Ajuste final referencia segunda imagen validada
   Busca acercar el proyecto al mockup final aprobado por el usuario.
   ========================================================== */
:root{
  --sw:220px;
  --sc:62px;
  --sj-bg:#F4F6FA;
  --sj-sidebar-1:#244F84;
  --sj-sidebar-2:#1F4A7A;
  --sj-sidebar-3:#183E69;
  --sj-ink:#16366E;
  --sj-muted:#7384A3;
  --sj-line:#E4E9F1;
  --sj-line-2:#D3DCE8;
  --sj-primary:#1B4DA1;
  --sj-primary-dark:#163E81;
  --sj-primary-2:#E23A34;
}

body.sj-body{
  background:linear-gradient(180deg,#F7F9FC 0%, #F2F5F9 100%)!important;
}
.sidebar{
  background:linear-gradient(180deg,#2D5C91 0%, #234D7F 45%, #1A416D 100%)!important;
  box-shadow:inset -1px 0 0 rgba(255,255,255,.08), 10px 0 24px rgba(17,44,105,.09)!important;
}
.sidebar-brand{
  min-height:78px!important;
  padding:14px 14px 12px!important;
}
.brand-logo-full{width:130px!important;}
.sidebar-toggle{
  top:46px!important;
  right:-13px!important;
  width:28px!important;
  height:28px!important;
  background:linear-gradient(135deg,#7DAAEE,#4C7FDE)!important;
  border:2px solid rgba(255,255,255,.55)!important;
}
.sidebar-nav{padding:8px 8px 10px!important;}
.nav-section-label{
  margin:14px 10px 8px!important;
  font-size:.60rem!important;
  color:rgba(255,255,255,.76)!important;
}
.nav-group-header{
  min-height:34px!important;
  margin:0 4px 2px!important;
  padding:7px 10px!important;
  border-radius:10px!important;
}
.nav-group-header .gh-label{font-size:.76rem!important;font-weight:760!important;}
.nav-group-header .gh-icon{font-size:.90rem!important;opacity:.95!important;}
.nav-group-links{margin:0 6px 6px 26px!important;}
.sidebar .nav-link,
.nav-direct-link{
  min-height:42px!important;
  padding:9px 12px!important;
  border-radius:10px!important;
  font-size:.75rem!important;
  font-weight:760!important;
}
.nav-direct-link{margin:0 4px 6px!important;}
.sidebar .nav-link i,
.nav-direct-link i{
  width:17px!important;
  min-width:17px!important;
  font-size:.92rem!important;
}
.sidebar .nav-link:hover,
.nav-direct-link:hover{
  background:rgba(255,255,255,.07)!important;
}
.sidebar .nav-link.active,
.nav-direct-link.active{
  background:linear-gradient(90deg,#5E93ED 0%, #4A83E2 100%)!important;
  box-shadow:inset 4px 0 0 rgba(255,255,255,.95)!important;
}
.sidebar-footer{
  padding:9px 12px 12px!important;
}
.sj-footer-avatar{width:30px!important;height:30px!important;flex-basis:30px!important;font-size:.88rem!important;}
.footer-info .fi-text .text-white-50:first-child,
.footer-info .fi-text div:first-child{font-size:.74rem!important;}
.footer-info .fi-text .text-white-50.text-capitalize,
.footer-info .fi-text div:nth-child(2){font-size:.64rem!important;}
.footer-logout .nav-link,
.sidebar-footer .nav-link{min-height:28px!important;font-size:.74rem!important;}

.topbar{
  min-height:74px!important;
  padding:14px 22px 12px!important;
  background:#FFFFFF!important;
}
.sj-topbar-kicker{font-size:.74rem!important;color:#6E7F9F!important;}
.topbar-title{font-size:.98rem!important;color:#16366E!important;}
.sj-system-status,.sj-role-badge{
  font-size:.70rem!important;
  padding:.34rem .58rem!important;
}
.page-body{padding:20px 20px 24px!important;}

.sj-page-hero{
  border-radius:24px!important;
  padding:16px 18px!important;
  background:
    linear-gradient(135deg,#FFFFFF 0%, #FCFDFE 68%, #FAF3F0 100%)!important;
  box-shadow:0 6px 18px rgba(17,44,105,.04)!important;
}
.sj-page-hero::after{
  width:170px!important;
  height:170px!important;
  right:-56px!important;
  top:-60px!important;
  border-color:rgba(213,190,181,.45)!important;
}
.sj-hero-kicker{font-size:.80rem!important;}
.sj-hero-title{font-size:1.22rem!important;}
.sj-hero-sub{font-size:.82rem!important;max-width:760px!important;}
.sj-hero-chip{
  font-size:.72rem!important;
  padding:7px 11px!important;
  border-radius:999px!important;
}

.dashboard-compact .section-head,
.dashboard-compact .semaforo-head{
  padding:12px 14px!important;
}
.dashboard-compact .section-title,
.dashboard-compact .semaforo-title{
  font-size:.92rem!important;
  font-weight:850!important;
}
.focus-card{
  min-height:145px!important;
  padding:12px 12px 10px!important;
  border-radius:18px!important;
}
.focus-chip{font-size:.72rem!important;padding:.32rem .72rem!important;}
.focus-kicker{font-size:.70rem!important;}
.focus-title{font-size:.82rem!important;line-height:1.25!important;}
.focus-total{font-size:1.18rem!important;}
.focus-card .small.text-decoration-none{font-size:.78rem!important;}
.card,.section-card,.semaforo-card,.filters-card,.metric-box,.nx-card,.nx-stat,.process-card,.form-panel,.detail-card,.modal-content,.portal-client-card,.cliente-card,.ops-card{
  border-radius:20px!important;
  box-shadow:0 8px 18px rgba(17,44,105,.04)!important;
}
.semaforo-wrap{padding:.65rem .75rem .80rem!important;}
.sem-row-wrap{margin-bottom:.45rem!important;border-radius:14px!important;}
.sem-row{padding:.28rem .34rem!important;}
.sem-cell{min-height:28px!important;border-radius:9px!important;}
.col-head{font-size:.65rem!important;}
.range-value,.range-value a,.cell-count{font-size:.76rem!important;}
.range-pct,.cell-pct{font-size:.68rem!important;}
.table thead th,
.table-clean thead th,
.table-semaforo thead th,
.nx-table th,
.ops-table th,
#tablaCausas thead th,
body .table-responsive table thead th{
  background:linear-gradient(90deg,#1D4E9E 0%, #3565B0 100%)!important;
  font-size:.70rem!important;
  padding:.62rem .66rem!important;
}
.table td,.nx-table td,.ops-table td{font-size:.78rem!important;padding:.60rem .66rem!important;}
.btn,.nx-btn,.ops-btn{border-radius:10px!important;}
.btn-sm{border-radius:9px!important;}
.btn-outline-primary,.nx-btn-secondary,.ops-btn-secondary{border-color:#D5DEEB!important;}
.badge.text-bg-dark{background:#1B4DA1!important;}
.alert{border-radius:12px!important;}

.sidebar.collapsed .brand-logo-full{display:none!important;}
.sidebar.collapsed .brand-logo-mark{display:block!important;}
.sidebar.collapsed .nav-direct-link,
.sidebar.collapsed .nav-link{min-height:36px!important;padding:8px!important;}
.sidebar.collapsed .nav-group-header{min-height:34px!important;padding:7px!important;}

@media (max-width:991.98px){
  :root{--sw:214px;--sc:58px;}
}


/* ==========================================================
   Ajuste final 2026-05-08 — Logo + mensajes transitorios + login
   ========================================================== */
.brand-logo-full{width:142px!important;}
.sidebar-brand{min-height:84px!important;}
.brand-logo-mark{width:42px!important;height:42px!important;}

/* Login con la misma línea de color aprobada */
.auth-shell{
  background:
    radial-gradient(circle at 12% 0%, rgba(86,132,224,.18), transparent 28%),
    linear-gradient(180deg,#F6F9FD 0%, #EEF3F9 100%)!important;
}
.auth-shell::before{
  background:linear-gradient(125deg,#2D5C91 0%, #234D7F 58%, #1A416D 100%)!important;
}
.auth-panel{
  border:1px solid #DEE6F1!important;
  box-shadow:0 24px 50px rgba(17,44,105,.10)!important;
}
.auth-panel-logo{
  width:min(360px,100%)!important;
  margin:0 auto 10px!important;
}
.auth-panel h1{font-size:1.55rem!important;font-weight:900!important;color:#16366E!important;}
.auth-panel p{color:#6F83A6!important;}
.auth-footer{color:#6F83A6!important;}
.sj-auth-chip{
  background:#F8FBFF!important;
  border:1px solid #D8E2EF!important;
  color:#1C4C9A!important;
}

/* ==========================================================
   Ajuste 2026-05-08 — Proceso activo sin segunda barra superior
   ========================================================== */
.sj-active-process-bar{
  display:inline-flex!important;
  align-items:center!important;
  gap:7px!important;
  max-width:min(430px,36vw)!important;
  min-height:32px!important;
  padding:6px 11px!important;
  border-radius:999px!important;
  background:#F8FBFF!important;
  border:1px solid #D8E4F7!important;
  color:#173A84!important;
  box-shadow:none!important;
  white-space:nowrap!important;
  line-height:1!important;
  overflow:hidden!important;
}
.sj-active-process-bar.d-none{display:none!important;}
.sj-active-process-dot{
  width:8px!important;
  height:8px!important;
  min-width:8px!important;
  border-radius:999px!important;
  background:#EA3B35!important;
  box-shadow:0 0 0 4px rgba(234,59,53,.12)!important;
}
.sj-active-process-items{
  display:inline-flex!important;
  align-items:center!important;
  gap:6px!important;
  min-width:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.sj-active-process-link{
  color:#173A84!important;
  text-decoration:none!important;
  font-size:.72rem!important;
  font-weight:850!important;
  max-width:210px!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.sj-active-process-link:hover{color:#0A2E83!important;text-decoration:none!important;}
.sj-active-process-item-separator{
  color:#8B9ABA!important;
  font-size:.70rem!important;
  font-weight:800!important;
}
@media (max-width:1199.98px){
  .sj-active-process-bar{max-width:260px!important;}
  .sj-active-process-link{max-width:170px!important;}
}
@media (max-width:767.98px){
  .sj-active-process-bar{display:none!important;}
}


/* Ajuste aprobado: Principal sobrio, compacto y con semáforo de días */
.dashboard-compact .focus-card{min-height:96px!important;padding:.68rem .78rem!important;border-radius:14px!important;}
.dashboard-compact .focus-title{display:none!important;}
.dashboard-compact .focus-chip{font-size:.70rem!important;border-radius:10px!important;padding:.26rem .70rem!important;filter:saturate(.65)!important;}
.dashboard-compact .focus-total{font-size:1.40rem!important;}
.dashboard-compact .section-head,.dashboard-compact .semaforo-head{background:#fff!important;padding:.66rem .88rem!important;}
.dashboard-compact .card-body{padding:.72rem!important;}
.dashboard-compact .semaforo-wrap{padding:.45rem .58rem .58rem!important;}
.dashboard-compact .sem-row-wrap{margin-bottom:.24rem!important;border-radius:11px!important;}
.dashboard-compact .sem-row{padding:.26rem .34rem!important;}
.dashboard-compact .sem-cell{min-height:28px!important;border-radius:0!important;background:#fff!important;border-left:1px solid #e8eef5!important;border-top:0!important;border-bottom:0!important;border-right:0!important;}
.dashboard-compact .col-head.range-head{border-radius:8px!important;padding:.34rem .42rem!important;font-size:.76rem!important;filter:saturate(.72)!important;}
.dashboard-compact .sem-range-1{background:#e8f1ec!important;color:#0f5f54!important;}
.dashboard-compact .sem-range-2{background:#edf2e4!important;color:#365f18!important;}
.dashboard-compact .sem-range-3{background:#f7efdc!important;color:#6f4a0a!important;}
.dashboard-compact .sem-range-4{background:#f3e2de!important;color:#7d201c!important;}
.dashboard-compact .sem-header .col-head:nth-last-child(2){background:#f1f4f8!important;border-radius:8px!important;padding:.34rem .42rem!important;color:#273a59!important;}
.dashboard-compact .section-card,.dashboard-compact .semaforo-card{margin-bottom:.85rem!important;}

/* ==========================================================
   Ajuste global final — tablas sobrias, barras compactas y
   pie visible en todas las pantallas.
   ========================================================== */

:root{
  --sj-darkbar-1:#11151d;
  --sj-darkbar-2:#17263f;
  --sj-darkbar-3:#0f1d34;
}

/* Más aire para que barras sticky no tapen el pie */
.page-body{
  padding-bottom:40px!important;
}
.sj-app-footer{
  position:relative!important;
  z-index:1!important;
  margin-top:8px!important;
  padding:18px 24px 26px!important;
  background:transparent!important;
}

/* Encabezados de tablas: grafito/azul oscuro, más delgados */
.table thead th,
.table-clean thead th,
.table-semaforo thead th,
.nx-table th,
.ops-table th,
#tablaCausas thead th,
body .table-responsive table thead th{
  background:linear-gradient(90deg,var(--sj-darkbar-1) 0%,var(--sj-darkbar-2) 100%)!important;
  color:#fff!important;
  border-color:rgba(255,255,255,.06)!important;
  font-size:.73rem!important;
  font-weight:820!important;
  letter-spacing:.01em!important;
  padding:.56rem .72rem!important;
  line-height:1.15!important;
}

.table-responsive table thead th:first-child{
  border-top-left-radius:12px!important;
}
.table-responsive table thead th:last-child{
  border-top-right-radius:12px!important;
}

.table td,.nx-table td,.ops-table td{
  padding:.68rem .74rem!important;
}
.table tbody tr:hover td,.nx-table tr:hover td,.ops-table tr:hover td{
  background:#f7fafc!important;
}

/* Cabecera de tarjetas/listados más compacta */
.card-header{
  padding:.95rem 1.1rem!important;
}

/* Barras inferiores de selección/acciones */
.sticky-bar,
.selection-bar,
.bulk-actions-bar{
  position:sticky!important;
  bottom:12px!important;
  left:0!important;
  right:0!important;
  z-index:50!important;
  margin:14px 0 6px!important;
  padding:11px 14px!important;
  min-height:54px!important;
  border-radius:16px!important;
  border:1px solid rgba(255,255,255,.08)!important;
  background:linear-gradient(90deg,var(--sj-darkbar-1) 0%,var(--sj-darkbar-2) 56%,#1c2941 100%)!important;
  box-shadow:0 14px 28px rgba(15,23,42,.14)!important;
}
.sticky-bar .sel-count,
.selection-bar .sel-count,
.bulk-actions-bar .sel-count{
  font-size:.88rem!important;
  font-weight:800!important;
}
.sticky-bar .btn,
.selection-bar .btn,
.bulk-actions-bar .btn{
  min-height:38px!important;
  padding:.45rem .9rem!important;
  border-radius:12px!important;
}
.sticky-bar .btn-outline-light,
.selection-bar .btn-outline-light,
.bulk-actions-bar .btn-outline-light{
  border-color:rgba(255,255,255,.26)!important;
  color:#fff!important;
  background:rgba(255,255,255,.03)!important;
}
.sticky-bar .btn-outline-light:hover,
.selection-bar .btn-outline-light:hover,
.bulk-actions-bar .btn-outline-light:hover{
  background:rgba(255,255,255,.08)!important;
}

/* Página de causas: barra y tabla como la referencia aprobada */
body.endpoint-causas-lista .filters-card,
body.endpoint-causas-nueva .filters-card,
body.endpoint-causas-detalle .detail-card{
  border-radius:22px!important;
}
body.endpoint-causas-lista .card-header .btn,
body.endpoint-causas-lista .filters-buttons .btn{
  min-height:42px!important;
  border-radius:14px!important;
}
body.endpoint-causas-lista .sticky-bar{
  margin-top:16px!important;
  margin-bottom:6px!important;
}
body.endpoint-causas-lista .sj-app-footer{
  padding-top:18px!important;
}

/* Automatización: tarjetas superiores algo más compactas */
.ops-card,
.nx-card{
  padding:14px 16px!important;
}
.ops-form-grid,
.nx-form-grid{
  gap:10px!important;
}
.ops-kpi,
.nx-stat,
.nx-stat-card{
  min-height:60px!important;
}
.ops-title,
.nx-title{
  font-size:.94rem!important;
}

/* Responsive */
@media (max-width: 992px){
  .page-body{padding-bottom:64px!important;}
  .sticky-bar,
  .selection-bar,
  .bulk-actions-bar{
    bottom:8px!important;
    padding:10px 12px!important;
  }
}

/* ==========================================================
   Ajustes finos solicitados — Principal
   ========================================================== */

/* Sidebar un poco más liviano y con mejor respiración del logo */
.sidebar-brand{
  min-height:98px!important;
  padding:18px 16px 16px!important;
}
.brand-logo-full{
  width:178px!important;
}
.nav-section-label{
  font-size:.56rem!important;
  letter-spacing:.11em!important;
  color:rgba(217,236,232,.52)!important;
  margin:14px 10px 5px!important;
}
.nav-section-label::after{
  color:rgba(217,236,232,.48)!important;
}

/* Dashboard principal: focos más compactos y semáforo con color suave */
body.endpoint-dashboard-index .section-head,
body.endpoint-dashboard-index .semaforo-head{
  padding:.78rem 1rem!important;
}
body.endpoint-dashboard-index .section-title,
body.endpoint-dashboard-index .semaforo-title{
  font-size:.94rem!important;
  font-weight:850!important;
}
body.endpoint-dashboard-index .section-head .small.text-muted,
body.endpoint-dashboard-index .semaforo-head .small.text-muted{
  font-size:.80rem!important;
}
body.endpoint-dashboard-index .focus-card{
  min-height:88px!important;
  padding:.62rem .78rem!important;
  border-radius:15px!important;
}
body.endpoint-dashboard-index .focus-chip{
  font-size:.69rem!important;
  padding:.24rem .68rem!important;
  border-radius:11px!important;
}
body.endpoint-dashboard-index .focus-total{
  font-size:1.28rem!important;
  line-height:1!important;
}
body.endpoint-dashboard-index .focus-card .small.text-decoration-none{
  font-size:.77rem!important;
  font-weight:760!important;
}
body.endpoint-dashboard-index .semaforo-wrap{
  padding:.56rem .72rem .72rem!important;
}
body.endpoint-dashboard-index .sem-header{
  padding:0 .42rem .42rem!important;
  margin-bottom:.26rem!important;
}
body.endpoint-dashboard-index .col-head{
  font-size:.68rem!important;
}
body.endpoint-dashboard-index .col-head.range-head{
  border-radius:10px!important;
  padding:.38rem .46rem!important;
  border:1px solid rgba(13,27,61,.05)!important;
  box-shadow:none!important;
}
body.endpoint-dashboard-index .sem-header .col-head.range-head.sem-range-1{
  background:#e8f3ec!important;
  color:#275b43!important;
}
body.endpoint-dashboard-index .sem-header .col-head.range-head.sem-range-2{
  background:#edf2e3!important;
  color:#47631d!important;
}
body.endpoint-dashboard-index .sem-header .col-head.range-head.sem-range-3{
  background:#f8efdc!important;
  color:#7a5711!important;
}
body.endpoint-dashboard-index .sem-header .col-head.range-head.sem-range-4{
  background:#f5e3df!important;
  color:#8a2a22!important;
}
body.endpoint-dashboard-index .sem-header .col-head:nth-last-child(2){
  background:#eef2f6!important;
  color:#30435f!important;
  border-radius:10px!important;
  padding:.38rem .46rem!important;
}
body.endpoint-dashboard-index .sem-row-wrap{
  margin-bottom:.34rem!important;
}
body.endpoint-dashboard-index .sem-row{
  padding:.30rem .38rem!important;
}
body.endpoint-dashboard-index .sem-cell{
  min-height:30px!important;
}
body.endpoint-dashboard-index .dash-metric{
  min-height:92px!important;
  padding:.80rem .88rem!important;
}
body.endpoint-dashboard-index .dash-metric .metric-label{
  font-size:.66rem!important;
}
body.endpoint-dashboard-index .dash-metric .metric-value{
  font-size:1.34rem!important;
}
body.endpoint-dashboard-index .dashboard-compact .section-card,
body.endpoint-dashboard-index .dashboard-compact .semaforo-card{
  margin-bottom:.95rem!important;
}

/* ==========================================================
   Ajuste logo sidebar — más presencia institucional
   ========================================================== */
.sidebar-brand{
  min-height:116px!important;
  padding:22px 16px 18px!important;
  justify-content:center!important;
}
.brand-logo-full{
  width:210px!important;
  max-width:calc(100% - 14px)!important;
  height:auto!important;
  display:block!important;
}
.brand-logo-mark{
  width:44px!important;
  height:44px!important;
}
.sidebar.collapsed .sidebar-brand{
  min-height:82px!important;
  padding:16px 8px!important;
}
.sidebar.collapsed .brand-logo-mark{
  width:42px!important;
  height:42px!important;
}


/* === SISTALEX_UI_TODAS_LAS_PESTANAS_REAL_START === */

/*
  SistaLex UI global.
  Este bloque no depende de Nexus: afecta Principal, Gestión de Causas,
  Estudio, Receptores, Control Operativo, Reportes, Configuración,
  Tareas, PJUD, Carga Masiva y pantallas administrativas.
*/
:root{
  --sx-bg:#f4f7fb;
  --sx-card:#ffffff;
  --sx-card-2:#f8fbff;
  --sx-text:#0d1b3d;
  --sx-muted:#64748b;
  --sx-border:#d9e3ef;
  --sx-border-soft:#e7edf5;
  --sx-navy:#082957;
  --sx-navy-2:#0b376f;
  --sx-navy-3:#061f43;
  --sx-blue:#1257c8;
  --sx-blue-2:#0d42a3;
  --sx-red:#dc2626;
  --sx-green:#15803d;
  --sx-amber:#d89216;
  --sx-purple:#6f42c1;
}

*{box-sizing:border-box!important;}
html,body{min-height:100%!important;}
body{
  background:var(--sx-bg)!important;
  color:var(--sx-text)!important;
  font-family:"Segoe UI",Inter,Arial,sans-serif!important;
  font-size:14px!important;
  letter-spacing:.01em!important;
}

/* Login */
.auth-shell{
  min-height:100vh!important;
  background:radial-gradient(circle at 10% 10%,rgba(18,87,200,.14),transparent 28%),linear-gradient(135deg,#f6f9fd 0%,#eaf0f8 100%)!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:24px!important;
}
.auth-panel{
  width:min(430px,100%)!important;
  background:#fff!important;
  border:1px solid var(--sx-border)!important;
  border-radius:22px!important;
  box-shadow:0 24px 54px rgba(8,41,87,.15)!important;
  padding:30px!important;
}
.auth-panel-logo{max-width:210px!important;height:auto!important;}
.auth-panel h1{font-size:1.32rem!important;font-weight:900!important;color:var(--sx-text)!important;margin:18px 0!important;}
.auth-footer{font-size:.76rem!important;color:var(--sx-muted)!important;text-align:center!important;margin-top:18px!important;}

/* Sidebar global */
.sidebar,
.sj-sidebar,
.app-sidebar{
  background:linear-gradient(180deg,var(--sx-navy-2) 0%,var(--sx-navy) 52%,var(--sx-navy-3) 100%)!important;
  border-right:1px solid rgba(255,255,255,.08)!important;
  box-shadow:8px 0 26px rgba(8,41,87,.10)!important;
}
.sidebar-brand,
.sj-sidebar-brand{
  min-height:88px!important;
  padding:16px 18px 14px!important;
  border-bottom:1px solid rgba(255,255,255,.10)!important;
}
.brand-logo-full,
.sidebar-logo img{
  display:block!important;
  width:190px!important;
  max-width:190px!important;
  height:auto!important;
}
.brand-logo-mark{display:none!important;}
.sidebar.collapsed .brand-logo-full{display:none!important;}
.sidebar.collapsed .brand-logo-mark{display:block!important;width:34px!important;max-width:34px!important;height:auto!important;}
.sidebar-toggle{display:none!important;}
.sidebar-nav{padding:8px 8px 12px!important;}
.nav-section-label,
.sidebar-section-title{
  margin:12px 10px 6px!important;
  padding:0!important;
  color:rgba(255,255,255,.70)!important;
  background:transparent!important;
  font-size:.65rem!important;
  letter-spacing:.075em!important;
  text-transform:uppercase!important;
  font-weight:850!important;
  cursor:default!important;
}
.nav-section-label::before,
.nav-group-header::before{display:none!important;}
.nav-group-header{
  display:none!important; /* elimina bloques internos: queda solo Principal / Gestión / Operativo / Información / Administración */
}
.nav-group-links{
  max-height:none!important;
  overflow:visible!important;
}
.sidebar .nav-link,
.sidebar .nav-direct-link,
.sj-sidebar .nav-link,
.sidebar-link,
.sj-nav-link{
  color:rgba(255,255,255,.84)!important;
  background:transparent!important;
  border-left:0!important;
  border-radius:12px!important;
  min-height:38px!important;
  padding:8px 11px!important;
  margin:2px 0!important;
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  text-decoration:none!important;
  font-size:.86rem!important;
  line-height:1.1!important;
  font-weight:710!important;
  transition:background .16s ease,color .16s ease,transform .16s ease!important;
}
.sidebar .nav-link i,
.sidebar .nav-direct-link i,
.sj-sidebar .nav-link i{
  width:21px!important;
  text-align:center!important;
  font-size:1rem!important;
  color:rgba(255,255,255,.92)!important;
}
.sidebar .nav-link:hover,
.sidebar .nav-direct-link:hover,
.sidebar .nav-link.active,
.sidebar .nav-direct-link.active,
.sj-nav-link.active,
.sidebar-link.active{
  background:linear-gradient(90deg,#135bc9 0%,#1d67d6 100%)!important;
  color:#fff!important;
  transform:translateX(1px)!important;
}
.nav-spacer{height:4px!important;}
.sidebar-footer{border-top:1px solid rgba(255,255,255,.10)!important;padding:10px 14px!important;}
.sj-footer-avatar,
.footer-info .rounded-circle{
  width:32px!important;height:32px!important;border-radius:999px!important;
  background:#0d47a1!important;color:#fff!important;display:flex!important;align-items:center!important;justify-content:center!important;font-weight:850!important;
}

/* Main / Topbar */
.main-content,
.content-wrapper,
.app-content,
main{background:var(--sx-bg)!important;}
.topbar,
.sj-topbar,
.app-topbar{
  min-height:64px!important;
  background:rgba(255,255,255,.96)!important;
  backdrop-filter:saturate(120%) blur(8px)!important;
  border-bottom:1px solid var(--sx-border)!important;
  padding:10px 22px!important;
}
.sj-topbar-menu i{font-size:1.35rem!important;color:#10233f!important;}
.sj-topbar-kicker{
  font-size:.84rem!important;
  letter-spacing:.075em!important;
  text-transform:uppercase!important;
  color:#0b2f63!important;
  font-weight:880!important;
}
.topbar-title,
.page-title,
.sj-page-title{
  color:#0d1b3d!important;
  font-size:1.04rem!important;
  font-weight:900!important;
  margin:0!important;
}
.sj-system-status,
.sj-role-badge,
.sj-active-process-bar,
.topbar .badge{
  min-height:30px!important;
  border-radius:10px!important;
  padding:5px 12px!important;
  font-size:.78rem!important;
  font-weight:820!important;
  border:1px solid #d6e3f4!important;
  background:#f1f6ff!important;
  color:#0b48a5!important;
}
.page-body,
.sj-page-body,
.content-wrapper{
  padding:16px 18px 24px!important;
  background:var(--sx-bg)!important;
}
.sj-app-footer{display:none!important;}

/* Títulos y bloques de página */
h1,h2,h3,h4,h5{color:var(--sx-text)!important;}
h1,.h1{font-size:1.32rem!important;font-weight:900!important;}
h2,.h2{font-size:1.16rem!important;font-weight:900!important;}
h3,.h3{font-size:1.04rem!important;font-weight:880!important;}
h4,.h4{font-size:.98rem!important;font-weight:850!important;}
.text-muted,.form-text,.small.text-muted{color:var(--sx-muted)!important;}

/* Tarjetas, paneles y contenedores en TODAS las pestañas */
.card,
.section-card,
.semaforo-card,
.filters-card,
.detail-card,
.ops-card,
.nx-card,
.analytics-card,
.stat-card,
.filter-block,
.pjud-link-block,
.export-radio-tab,
.list-group-item,
.modal-content,
.alert,
.auth-panel,
.result-card,
.kpi-card,
.metric-card,
.info-item,
.edit-item{
  background:#fff!important;
  border:1px solid var(--sx-border)!important;
  border-radius:16px!important;
  box-shadow:0 8px 22px rgba(15,23,42,.045)!important;
}
.card,
.section-card,
.semaforo-card,
.filters-card,
.detail-card,
.ops-card,
.nx-card,
.stat-card,
.filter-block{
  margin-bottom:12px!important;
}
.card-header,
.section-head,
.semaforo-head,
.ops-head,
.modal-header{
  background:transparent!important;
  border-bottom:1px solid var(--sx-border-soft)!important;
  padding:12px 16px!important;
  font-size:.95rem!important;
  font-weight:900!important;
  color:var(--sx-text)!important;
}
.card-body{padding:14px 16px!important;}
.card-title,
.section-title,
.semaforo-title,
.ops-title,
.nx-title{
  font-size:1rem!important;
  line-height:1.2!important;
  font-weight:900!important;
  color:var(--sx-text)!important;
  margin:0!important;
}
.ops-subtitle,.nx-subtitle,.lead{font-size:.86rem!important;color:var(--sx-muted)!important;}

/* Formularios */
.form-control,
.form-select,
.form-control-sm,
.form-select-sm,
.ops-input,
.nx-input,
.input-group-text,
input[type="text"],input[type="search"],input[type="file"],input[type="password"],input[type="email"],input[type="number"],select,textarea{
  border:1px solid #cbd8e8!important;
  border-radius:12px!important;
  min-height:40px!important;
  font-size:.86rem!important;
  color:var(--sx-text)!important;
  background:#fff!important;
  box-shadow:none!important;
}
.input-group .form-control{border-radius:0 12px 12px 0!important;}
.input-group-text{background:#f6f9fd!important;color:#0b2f63!important;}
.form-label,
.ops-label,
.nx-label,
label,.field-label,.cfg-label,.edit-label,.info-label{
  font-size:.76rem!important;
  font-weight:850!important;
  color:#1f2d45!important;
}
.form-check-input{border-color:#b8c7dc!important;}
.form-check-input:checked{background-color:var(--sx-blue)!important;border-color:var(--sx-blue)!important;}

/* Botones */
.btn,
.ops-btn,
.nx-btn,
button{
  border-radius:11px!important;
  min-height:38px!important;
  padding:7px 12px!important;
  font-size:.83rem!important;
  font-weight:820!important;
  box-shadow:none!important;
}
.btn-sm{min-height:32px!important;padding:5px 10px!important;font-size:.78rem!important;}
.btn-primary,.ops-btn-primary,.nx-btn-primary{
  background:linear-gradient(180deg,#115bd0 0%,#0d42a3 100%)!important;
  border-color:#0d42a3!important;
  color:#fff!important;
}
.btn-primary:hover,.ops-btn-primary:hover{background:linear-gradient(180deg,#0f4faf 0%,#0a367f 100%)!important;}
.btn-outline-primary,.ops-btn-secondary,.nx-btn-secondary,.btn-outline-secondary{
  background:#fff!important;
  color:#0d2b5f!important;
  border:1px solid #c9d8ec!important;
}
.btn-outline-primary:hover,.btn-outline-secondary:hover,.ops-btn-secondary:hover{
  background:#eef5ff!important;color:#0d2b5f!important;border-color:#9ebae2!important;
}
.btn-success,.ops-btn-success{background:#148444!important;border-color:#148444!important;color:#fff!important;}
.btn-warning,.ops-btn-warning{background:#dc981f!important;border-color:#dc981f!important;color:#fff!important;}
.btn-danger,.ops-btn-danger,.btn-outline-danger:hover{background:#dc2626!important;border-color:#dc2626!important;color:#fff!important;}
.btn-link{text-decoration:none!important;}

/* KPIs y estadísticas de todas las vistas */
.stat-card,
.kpi-card,
.metric-card,
.ops-kpi{
  min-height:72px!important;
  padding:12px 14px!important;
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
}
.stat-num,
.stat-value,
.metric-value,
.focus-total,
.ops-kpi-value{
  font-size:1.28rem!important;
  line-height:1.05!important;
  font-weight:920!important;
  color:#0d2b5f!important;
  font-variant-numeric:tabular-nums!important;
}
.stat-label,
.metric-label,
.focus-label,
.ops-kpi-label{
  font-size:.72rem!important;
  color:#475569!important;
  font-weight:820!important;
}
.ops-kpis{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(170px,1fr))!important;
  gap:10px!important;
  margin:8px 0 10px!important;
}
.ops-kpi-body{flex:1!important;min-width:0!important;}
.ops-kpi-icon,.stat-icon,.metric-icon{
  width:42px!important;height:42px!important;border-radius:13px!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  flex:0 0 42px!important;background:#eaf2ff!important;color:#1254c8!important;font-size:1.12rem!important;
}
.ops-kpi-value.ok,.text-success,.stat-ok{color:var(--sx-green)!important;}
.ops-kpi-value.err,.text-danger,.stat-error{color:var(--sx-red)!important;}
.ops-kpi-value.time{color:var(--sx-purple)!important;}

/* Paneles operativos Nexus y cualquier ejecución */
.ops-config-card{padding:13px 16px!important;}
.ops-form-grid{gap:10px!important;}
.ops-file{min-height:48px!important;border-radius:13px!important;padding:8px 10px!important;}
.ops-status,
.execution-status,
.process-status{
  min-height:48px!important;
  border:1px solid var(--sx-border)!important;
  background:#f7fbfa!important;
  border-radius:13px!important;
  padding:8px 12px!important;
  margin:8px 0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
}
.ops-status-left{display:flex!important;align-items:center!important;gap:9px!important;}
.ops-dot{width:9px!important;height:9px!important;border-radius:999px!important;box-shadow:0 0 0 5px rgba(148,163,184,.16)!important;}
.process-label{font-size:.88rem!important;font-weight:850!important;color:#132f38!important;}
.process-note{font-size:.74rem!important;color:#6b7d84!important;margin:0!important;}
.ops-status-pill,.ops-stage-badge{
  border-radius:999px!important;min-height:26px!important;padding:4px 10px!important;font-size:.72rem!important;font-weight:850!important;
  border:1px solid #d5e2f0!important;background:#f4f7fc!important;color:#0d2b5f!important;
}
.ops-actions{display:flex!important;flex-wrap:wrap!important;align-items:center!important;gap:8px!important;margin:10px 0 8px!important;}
.progress,.ops-progress-wrap{height:7px!important;margin:7px 0 6px!important;border-radius:999px!important;background:#e6edf3!important;overflow:hidden!important;}
.progress-bar,.ops-progress-fill{height:7px!important;border-radius:999px!important;background:linear-gradient(90deg,#0f56c7 0%,#7a4fb0 50%,#e33434 100%)!important;}
.ops-help,.ops-last-update{font-size:.74rem!important;}
.ops-details,details.card,details.ops-details{margin-top:8px!important;border:1px solid var(--sx-border)!important;border-radius:13px!important;background:#fff!important;overflow:hidden!important;}
.ops-details summary,details.card summary{min-height:42px!important;padding:9px 12px!important;font-size:.92rem!important;font-weight:850!important;color:#0d2b5f!important;}

/* Tablas globales */
.table-responsive{border-radius:14px!important;border:1px solid var(--sx-border)!important;background:#fff!important;overflow:auto!important;}
.table{margin-bottom:0!important;}
.table thead th,
.table-clean thead th,
.table-semaforo thead th,
.nx-table th,
.ops-table th,
body .table-responsive table thead th{
  background:linear-gradient(90deg,#0b2f63 0%,#10233f 100%)!important;
  color:#fff!important;
  border-color:rgba(255,255,255,.10)!important;
  font-size:.72rem!important;
  font-weight:850!important;
  padding:.62rem .72rem!important;
  line-height:1.15!important;
  text-transform:uppercase!important;
  letter-spacing:.025em!important;
}
.table tbody td,
.nx-table td,
.ops-table td,
body .table-responsive table tbody td{
  font-size:.82rem!important;
  padding:.62rem .72rem!important;
  vertical-align:middle!important;
  border-color:#e8eef6!important;
}
.table tbody tr:hover td,
.nx-table tr:hover td,
.ops-table tr:hover td{background:#f7fafc!important;}
.table-light th{background:#edf3fa!important;color:#10233f!important;}

/* Badges/chips */
.badge,
.ops-pill,
.focus-chip,
.sem-chip,
.badge-vigente,
.badge-novigente,
.rounded-pill{
  border-radius:999px!important;
  font-size:.72rem!important;
  font-weight:820!important;
  padding:.28rem .62rem!important;
}
.bg-primary,.text-bg-primary{background:#eaf2ff!important;color:#0b48a5!important;}
.bg-success,.text-bg-success{background:#e7f7ef!important;color:#137a3d!important;}
.bg-warning,.text-bg-warning{background:#fff5db!important;color:#9a6200!important;}
.bg-danger,.text-bg-danger{background:#fdecec!important;color:#b91c1c!important;}
.bg-secondary,.text-bg-secondary{background:#eef2f7!important;color:#475569!important;}
.bg-light,.text-bg-light{background:#f8fbff!important;color:#0f172a!important;}
.badge-vigente{background:#dcf5e5!important;color:#137a3d!important;}
.badge-novigente{background:#fdecec!important;color:#b91c1c!important;}

/* Principal / Dashboard */
body.endpoint-dashboard-index .card,
body.endpoint-dashboard-index .section-card,
body.endpoint-dashboard-index .semaforo-card{padding:12px 14px!important;}
body.endpoint-dashboard-index .focus-card{min-height:92px!important;padding:12px 14px!important;border-radius:14px!important;}
body.endpoint-dashboard-index .focus-total,
body.endpoint-dashboard-index .metric-value{font-size:1.36rem!important;}
body.endpoint-dashboard-index .semaforo-wrap{padding:8px 10px!important;}
body.endpoint-dashboard-index .sem-row{min-height:34px!important;padding:5px 8px!important;}

/* Gestión de causas */
body.endpoint-causas-lista .filters-card,
body.endpoint-causas-lista .card:first-of-type{padding:14px 16px!important;}
body.endpoint-causas-lista .sticky-bar,
.sticky-bar,
.selection-bar,
.bulk-actions-bar{
  min-height:52px!important;
  padding:10px 14px!important;
  border-radius:14px!important;
  background:linear-gradient(90deg,#0b2f63 0%,#14213a 60%,#c9242b 100%)!important;
  box-shadow:0 10px 22px rgba(15,23,42,.14)!important;
  color:#fff!important;
}
body.endpoint-causas-lista .sticky-bar a,
.selection-bar a,
.bulk-actions-bar a{color:#e8f1ff!important;}

/* Pestañas administrativas / configuración */
.edit-item,.info-item{padding:10px 12px!important;}
.edit-control,.info-value{font-size:.86rem!important;color:#0f172a!important;}
.list-group-item{box-shadow:none!important;border-radius:12px!important;margin-bottom:8px!important;}
.nav-tabs{border-bottom:1px solid var(--sx-border)!important;}
.nav-tabs .nav-link{color:#334155!important;border:0!important;border-radius:12px 12px 0 0!important;font-weight:800!important;}
.nav-tabs .nav-link.active{background:#fff!important;color:#0b48a5!important;border:1px solid var(--sx-border)!important;border-bottom-color:#fff!important;}

/* Modales */
.modal-content{border-radius:18px!important;}
.modal-title{font-size:1rem!important;font-weight:900!important;}
.btn-close{min-height:auto!important;}

@media (max-width:1200px){
  .ops-kpis{grid-template-columns:repeat(2,minmax(180px,1fr))!important;}
}
@media (max-width:768px){
  .page-body,.sj-page-body,.content-wrapper{padding:12px!important;}
  .ops-kpis{grid-template-columns:1fr!important;}
  .ops-status{align-items:flex-start!important;flex-direction:column!important;}
  .ops-actions{gap:6px!important;}
  .brand-logo-full{width:160px!important;max-width:160px!important;}
}

/* === SISTALEX_UI_TODAS_LAS_PESTANAS_REAL_END === */


/* === SISTALEX_UI_MOCKUP_IGUAL_TODAS_PESTANAS_START === */

/* BASE APROBADA: sidebar azul, topbar blanco, tarjetas compactas y tablas sobrias */
:root{
  --sw:260px!important;
  --sc:72px!important;
  --sx-bg:#f4f7fb;
  --sx-panel:#ffffff;
  --sx-line:#d8e1ee;
  --sx-line-soft:#e8eef6;
  --sx-text:#0b1838;
  --sx-muted:#657389;
  --sx-blue:#0f5ed7;
  --sx-blue-dark:#062756;
  --sx-sidebar-1:#062a58;
  --sx-sidebar-2:#031a3a;
  --sx-green:#16834a;
  --sx-yellow:#e3a600;
  --sx-orange:#f07819;
  --sx-red:#d92832;
  --sx-purple:#7438d5;
}

html,body{
  background:var(--sx-bg)!important;
  color:var(--sx-text)!important;
  font-size:14px!important;
  letter-spacing:0!important;
}

/* Sidebar igual al mockup */
.sidebar{
  width:var(--sw)!important;
  background:linear-gradient(180deg,var(--sx-sidebar-1) 0%,var(--sx-sidebar-2) 100%)!important;
  box-shadow:8px 0 24px rgba(4,18,38,.14)!important;
}
.sidebar.collapsed{width:var(--sc)!important;}
.main-content{margin-left:var(--sw)!important;background:var(--sx-bg)!important;}
.main-content.collapsed{margin-left:var(--sc)!important;}

.sidebar-toggle{
  right:14px!important;bottom:14px!important;top:auto!important;
  width:34px!important;height:34px!important;border:0!important;
  background:rgba(255,255,255,.12)!important;color:#fff!important;
  box-shadow:none!important;
}
.sidebar-toggle i{color:#fff!important;}
.sidebar-brand{
  min-height:78px!important;
  padding:16px 20px 14px!important;
  border-bottom:1px solid rgba(255,255,255,.08)!important;
}
.brand-logo-full{width:178px!important;max-width:178px!important;height:auto!important;display:block!important;}
.brand-logo-mark{display:none!important;}
.sidebar.collapsed .brand-logo-full{display:none!important;}
.sidebar.collapsed .brand-logo-mark{display:block!important;width:34px!important;}

.nav-section-label{
  color:rgba(255,255,255,.72)!important;
  background:transparent!important;
  font-size:.72rem!important;
  font-weight:850!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
  padding:14px 18px 6px!important;
  margin:0!important;
}
.nav-section-label::after,
.nav-section-label::before{display:none!important;}

.nav-direct-link,
.sidebar .nav-link{
  margin:3px 14px!important;
  padding:10px 14px!important;
  min-height:42px!important;
  border-radius:10px!important;
  border-left:0!important;
  color:rgba(255,255,255,.88)!important;
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
  text-decoration:none!important;
  font-size:.92rem!important;
  font-weight:720!important;
  line-height:1!important;
  background:transparent!important;
}
.nav-direct-link i,
.sidebar .nav-link i{
  width:20px!important;
  text-align:center!important;
  font-size:1.08rem!important;
  color:rgba(255,255,255,.92)!important;
}
.nav-direct-link:hover,
.sidebar .nav-link:hover{
  background:rgba(255,255,255,.10)!important;
  color:#fff!important;
}
.nav-direct-link.active,
.sidebar .nav-link.active{
  background:linear-gradient(90deg,#1562d6 0%,#2878ee 100%)!important;
  color:#fff!important;
  box-shadow:inset 3px 0 0 rgba(255,255,255,.24)!important;
}
.nav-group-header{
  margin:3px 14px!important;
  padding:9px 14px!important;
  border-radius:10px!important;
  color:rgba(255,255,255,.72)!important;
  background:transparent!important;
}
.nav-group-header .gh-label{
  background:transparent!important;
  color:rgba(255,255,255,.70)!important;
  padding:0!important;
  font-size:.72rem!important;
  letter-spacing:.08em!important;
}
.nav-group-header .gh-icon,
.nav-group-header .gh-arrow{color:rgba(255,255,255,.66)!important;}
.nav-group.open .nav-group-header,
.nav-group-header:hover{background:rgba(255,255,255,.06)!important;}
.sidebar-footer{
  background:rgba(0,0,0,.08)!important;
  border-top:1px solid rgba(255,255,255,.08)!important;
}

/* Topbar igual al mockup */
.topbar{
  height:68px!important;
  padding:0 24px!important;
  border-bottom:1px solid var(--sx-line)!important;
  background:#fff!important;
  box-shadow:0 4px 18px rgba(15,23,42,.04)!important;
}
.sj-topbar-menu i{font-size:1.35rem!important;color:#13213d!important;}
.sj-topbar-kicker{
  font-size:.88rem!important;
  font-weight:850!important;
  letter-spacing:.08em!important;
  color:#12224a!important;
  text-transform:uppercase!important;
}
.topbar-title{
  font-size:1.06rem!important;
  font-weight:850!important;
  color:#0f3f95!important;
}
.sj-system-status,
.sj-role-badge{
  min-height:32px!important;
  border-radius:9px!important;
  padding:6px 12px!important;
  font-size:.82rem!important;
  font-weight:800!important;
  border:1px solid #d2dff2!important;
  background:#eef5ff!important;
  color:#0f4aa0!important;
}
.sj-role-badge{
  background:#f3edff!important;
  color:#6331b4!important;
}
.sj-system-status span{
  width:8px!important;height:8px!important;background:#ef4444!important;border-radius:50%!important;display:inline-block!important;margin-right:6px!important;
}

/* Body */
.page-body{
  padding:16px 20px 24px!important;
  background:var(--sx-bg)!important;
}
.sj-app-footer{display:none!important;}

/* Tarjetas y contenedores */
.card,
.section-card,
.semaforo-card,
.analytics-card,
.filters-card,
.ops-card,
.nx-card,
.detail-card{
  background:#fff!important;
  border:1px solid var(--sx-line)!important;
  border-radius:13px!important;
  box-shadow:0 8px 20px rgba(15,23,42,.045)!important;
}
.card-header,
.section-head,
.semaforo-head,
.analytics-head,
.ops-head{
  background:#fff!important;
  border-bottom:1px solid var(--sx-line-soft)!important;
}
.section-title,
.semaforo-title,
.analytics-title,
.ops-title,
.card-title{
  color:#0b1838!important;
  font-size:.98rem!important;
  font-weight:850!important;
}
.text-muted,.small.text-muted{color:var(--sx-muted)!important;}

/* Formularios y botones */
.form-control,.form-select,.input-group-text,.ops-input,.nx-input,
input[type="text"],input[type="file"],select{
  border:1px solid #ccd8e7!important;
  border-radius:9px!important;
  min-height:40px!important;
  font-size:.86rem!important;
}
.btn,.ops-btn,.nx-btn{
  min-height:38px!important;
  border-radius:9px!important;
  padding:7px 13px!important;
  font-size:.84rem!important;
  font-weight:800!important;
}
.btn-primary,.ops-btn-primary,.nx-btn-primary{
  background:#0f56c7!important;
  border-color:#0f56c7!important;
  color:#fff!important;
}
.btn-outline-primary,.ops-btn-secondary,.nx-btn-secondary{
  background:#fff!important;
  border-color:#b9ccef!important;
  color:#0f4aa0!important;
}

/* Tablas iguales al mockup de gestión */
.table thead th,
.table-clean thead th,
.table-semaforo thead th,
.ops-table th,
.nx-table th{
  background:linear-gradient(90deg,#0b1d36 0%,#112c50 100%)!important;
  color:#fff!important;
  border:0!important;
  font-size:.72rem!important;
  font-weight:850!important;
  letter-spacing:.025em!important;
  padding:.62rem .75rem!important;
  white-space:nowrap!important;
}
.table td,.table th,
.table-clean td,.ops-table td,.nx-table td{
  font-size:.82rem!important;
  padding:.62rem .75rem!important;
  vertical-align:middle!important;
  border-color:#e9eef5!important;
}
.table tbody tr:hover td{background:#f7faff!important;}

.badge,.ops-pill,.focus-chip{
  border-radius:999px!important;
  font-size:.72rem!important;
  font-weight:850!important;
  padding:.28rem .66rem!important;
}

/* Paneles operativos: Confección / Distribución / Escritos */
.ops-card{padding:16px!important;margin-bottom:14px!important;}
.ops-config-card{padding:16px!important;}
.ops-kpis{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(180px,1fr))!important;
  gap:14px!important;
  margin:10px 0 14px!important;
}
.ops-kpi{
  min-height:78px!important;
  border:1px solid #d8e2ef!important;
  border-radius:12px!important;
  background:#fff!important;
  padding:14px 16px!important;
  display:flex!important;
  align-items:center!important;
  gap:16px!important;
}
.ops-kpi-icon{
  order:-1!important;
  width:52px!important;
  height:52px!important;
  border-radius:13px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:#e9f1ff!important;
  color:#0f56c7!important;
  font-size:1.35rem!important;
  flex:0 0 52px!important;
}
.ops-kpi-icon.ok{background:#e8f7ee!important;color:#16834a!important;}
.ops-kpi-icon.err{background:#fdebed!important;color:#d92832!important;}
.ops-kpi-icon.time{background:#f1ebff!important;color:#7438d5!important;}
.ops-kpi-label{
  font-size:.88rem!important;
  color:#0b1838!important;
  font-weight:800!important;
  text-transform:none!important;
  letter-spacing:0!important;
}
.ops-kpi-value{
  font-size:1.36rem!important;
  color:#0f56c7!important;
  font-weight:900!important;
  margin-top:4px!important;
}
.ops-kpi-value.ok{color:#16834a!important;}
.ops-kpi-value.err{color:#d92832!important;}
.ops-kpi-value.time{color:#7438d5!important;}
.ops-status{
  min-height:48px!important;
  border:1px solid #d8e2ef!important;
  border-radius:10px!important;
  background:#f8fbff!important;
  padding:9px 14px!important;
}
.ops-actions{gap:10px!important;margin:12px 0!important;}
.ops-progress-wrap{height:8px!important;background:#e4eaf2!important;border-radius:999px!important;}
.ops-progress-fill{height:8px!important;background:linear-gradient(90deg,#0f56c7,#7438d5,#d92832)!important;}
.ops-details{border-radius:10px!important;margin-top:10px!important;}
.ops-details summary{min-height:42px!important;font-size:.94rem!important;}

/* Responsive */
@media (max-width:1200px){
  :root{--sw:235px!important;}
  .ops-kpis{grid-template-columns:repeat(2,minmax(180px,1fr))!important;}
}
@media (max-width:768px){
  .sidebar{transform:translateX(-100%);}
  .main-content,.main-content.collapsed{margin-left:0!important;}
  .ops-kpis{grid-template-columns:1fr!important;}
}

/* === SISTALEX_UI_MOCKUP_IGUAL_TODAS_PESTANAS_END === */


/* === SISTALEX_COMPACTAR_ESPACIOS_REALDATA_START === */

/* Compactación final para reducir blancos en todas las pantallas */
.page-body{
  padding:12px 16px 18px!important;
}

.card,
.section-card,
.semaforo-card,
.analytics-card,
.filters-card,
.ops-card,
.nx-card,
.detail-card{
  margin-bottom:10px!important;
}

.card-body{
  padding:.72rem!important;
}

.card-header,
.section-head,
.semaforo-head,
.analytics-head,
.ops-head{
  padding:8px 10px!important;
  min-height:auto!important;
}

/* Pantallas operativas */
.ops-card{
  padding:12px 14px!important;
  border-radius:12px!important;
}
.ops-config-card{
  padding:12px 14px!important;
}
.ops-form-grid{
  gap:8px!important;
}
.ops-file{
  min-height:42px!important;
  padding:7px 9px!important;
}
.ops-kpis{
  gap:10px!important;
  margin:8px 0 9px!important;
}
.ops-kpi{
  min-height:60px!important;
  padding:9px 12px!important;
  gap:10px!important;
}
.ops-kpi-icon{
  width:40px!important;
  height:40px!important;
  flex-basis:40px!important;
  border-radius:11px!important;
  font-size:1.05rem!important;
}
.ops-kpi-label{
  font-size:.80rem!important;
}
.ops-kpi-value{
  font-size:1.18rem!important;
}
.ops-status{
  min-height:42px!important;
  padding:7px 10px!important;
  margin:7px 0!important;
}
.ops-actions{
  gap:7px!important;
  margin:8px 0!important;
}
.ops-btn{
  min-height:36px!important;
  padding:6px 11px!important;
}
.ops-progress-wrap,
.ops-progress-fill{
  height:7px!important;
}
.ops-details{
  margin-top:8px!important;
}
.ops-details summary{
  min-height:38px!important;
  padding:8px 10px!important;
}

/* Formularios generales */
.form-control,
.form-select,
.input-group-text,
.ops-input,
.nx-input{
  min-height:38px!important;
}

/* Tablas más compactas */
.table thead th,
.table-clean thead th,
.table-semaforo thead th,
.ops-table th,
.nx-table th{
  padding:.50rem .62rem!important;
}
.table td,
.table th,
.table-clean td,
.ops-table td,
.nx-table td{
  padding:.50rem .62rem!important;
}

/* Dashboard principal sin grandes blancos */
.dashboard-mock .mock-section{
  margin-bottom:0!important;
}
.dashboard-mock .mock-section-head{
  min-height:38px!important;
}
.dashboard-mock .focus-grid,
.dashboard-mock .summary-grid{
  padding:8px 10px!important;
}
.dashboard-mock .analytics-body{
  padding:10px 12px!important;
}

/* === SISTALEX_COMPACTAR_ESPACIOS_REALDATA_END === */


/* === SISTALEX_FILTRO_ENCARGADO_FONTS_START === */

/* Letras levemente más grandes y parejas */
body{font-size:14.7px!important;}
.page-body{padding:10px 14px 18px!important;}
.topbar-title{font-size:1.12rem!important;}
.sj-topbar-kicker{font-size:.92rem!important;}
.nav-direct-link,.sidebar .nav-link{font-size:.95rem!important;}
.nav-section-label{font-size:.74rem!important;}

.table td,
.table th,
.table-clean td,
.ops-table td,
.nx-table td{
  font-size:.88rem!important;
}

.table thead th,
.table-clean thead th,
.table-semaforo thead th,
.ops-table th,
.nx-table th{
  font-size:.80rem!important;
}

.card-title,
.section-title,
.semaforo-title,
.analytics-title,
.ops-title{
  font-size:1.02rem!important;
}

.form-control,
.form-select,
.input-group-text,
.ops-input,
.nx-input{
  font-size:.90rem!important;
}

.btn,.ops-btn,.nx-btn{
  font-size:.88rem!important;
}

/* === SISTALEX_FILTRO_ENCARGADO_FONTS_END === */


/* === SISTALEX_DASHBOARD_COMPACTO_FINAL_START === */
body{font-size:15.2px!important;}
.page-body{padding:8px 12px 16px!important;}
.card,.section-card,.semaforo-card,.analytics-card,.filters-card,.ops-card,.nx-card,.detail-card{margin-bottom:8px!important;}
.card-body{padding:.65rem!important;}
.card-header,.section-head,.semaforo-head,.analytics-head,.ops-head{padding:7px 9px!important;min-height:auto!important;}
.table td,.table th,.table-clean td,.ops-table td,.nx-table td{font-size:.92rem!important;padding:.52rem .62rem!important;}
.table thead th,.table-clean thead th,.table-semaforo thead th,.ops-table th,.nx-table th{font-size:.84rem!important;padding:.52rem .62rem!important;}
.btn,.ops-btn,.nx-btn{font-size:.90rem!important;}
.form-control,.form-select,.input-group-text,.ops-input,.nx-input{font-size:.92rem!important;min-height:37px!important;}
.topbar-title{font-size:1.15rem!important;}
.sj-topbar-kicker{font-size:.95rem!important;}
.nav-direct-link,.sidebar .nav-link{font-size:.96rem!important;}
/* === SISTALEX_DASHBOARD_COMPACTO_FINAL_END === */


/* === SISTALEX_NUMEROS_CLICK_FONTS_START === */
body{font-size:15.6px!important;}
.page-body{padding:7px 11px 15px!important;}
.table td,.table th,.table-clean td,.ops-table td,.nx-table td{font-size:.96rem!important;}
.table thead th,.table-clean thead th,.table-semaforo thead th,.ops-table th,.nx-table th{font-size:.88rem!important;}
.card-title,.section-title,.semaforo-title,.analytics-title,.ops-title{font-size:1.08rem!important;}
/* === SISTALEX_NUMEROS_CLICK_FONTS_END === */


/* === SISTALEX_LETRAS_GRANDES_GLOBAL_FINAL_START === */
body{
  font-size:16.4px!important;
}
.page-body{
  padding:8px 12px 16px!important;
}
.sj-topbar-kicker{
  font-size:1rem!important;
}
.topbar-title{
  font-size:1.24rem!important;
}
.nav-direct-link,
.sidebar .nav-link{
  font-size:1.02rem!important;
}
.nav-section-label{
  font-size:.82rem!important;
}
.card-title,
.section-title,
.semaforo-title,
.analytics-title,
.ops-title,
.nx-title{
  font-size:1.15rem!important;
}
.table thead th,
.table-clean thead th,
.table-semaforo thead th,
.ops-table th,
.nx-table th{
  font-size:.96rem!important;
}
.table td,
.table th,
.table-clean td,
.ops-table td,
.nx-table td{
  font-size:1rem!important;
}
.btn,
.ops-btn,
.nx-btn{
  font-size:.96rem!important;
}
.form-control,
.form-select,
.input-group-text,
.ops-input,
.nx-input{
  font-size:1rem!important;
}
.ops-kpi-label{
  font-size:.95rem!important;
}
.ops-kpi-value{
  font-size:1.55rem!important;
}
.process-label{
  font-size:1rem!important;
}
.process-note,
.ops-help,
.ops-last-update{
  font-size:.88rem!important;
}
/* === SISTALEX_LETRAS_GRANDES_GLOBAL_FINAL_END === */


/* === SISTALEX_FOCOS_MAS_PEQ_GLOBAL_START === */
.dashboard-mock .mock-section:first-child{
  margin-bottom:8px!important;
}
.dashboard-mock .mock-section:first-child .mock-section-body{
  padding-top:0!important;
}
/* === SISTALEX_FOCOS_MAS_PEQ_GLOBAL_END === */


/* === SISTALEX_FOCOS_DENTRO_MARGEN_GLOBAL_START === */
.dashboard-mock,
.dashboard-mock *{
  box-sizing:border-box!important;
}
.dashboard-mock .mock-section{
  max-width:100%!important;
  overflow:hidden!important;
}
/* === SISTALEX_FOCOS_DENTRO_MARGEN_GLOBAL_END === */


/* === SISTALEX_SIDEBAR_LOGO_TEXT_FIX_START === */
:root{
  --sw:292px!important;
  --sc:68px!important;
}
@media (max-width:1200px){
  :root{--sw:278px!important;}
}

.sidebar{
  width:var(--sw)!important;
}
.main-content{
  margin-left:var(--sw)!important;
}
.main-content.collapsed{
  margin-left:var(--sc)!important;
}

.sidebar-brand{
  min-height:106px!important;
  padding:16px 16px 14px!important;
  gap:12px!important;
}
.brand-logo-full{
  width:198px!important;
  max-width:100%!important;
  height:auto!important;
}

.nav-section-label{
  font-size:.70rem!important;
  margin:14px 12px 8px!important;
}

.nav-group-links{
  margin:0 6px 4px 28px!important;
}

.sidebar .nav-link,
.nav-direct-link{
  min-height:40px!important;
  padding:8px 10px!important;
  gap:10px!important;
  font-size:.98rem!important;
  line-height:1.18!important;
  align-items:flex-start!important;
  white-space:normal!important;
  overflow:visible!important;
  display:grid!important;
  grid-template-columns:18px minmax(0,1fr)!important;
}

.sidebar .nav-link i,
.nav-direct-link i{
  width:18px!important;
  min-width:18px!important;
  margin-top:2px!important;
  font-size:1.03rem!important;
  line-height:1!important;
  justify-self:start!important;
}

.nav-label,
.sidebar .nav-link span,
.nav-direct-link span{
  display:block!important;
  min-width:0!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
  word-break:break-word!important;
  overflow-wrap:anywhere!important;
  line-height:1.18!important;
}

.nav-group-header{
  min-height:34px!important;
  padding:7px 9px!important;
  font-size:.96rem!important;
  line-height:1.16!important;
}
.nav-group-header .gh-label{
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
  overflow-wrap:anywhere!important;
}
.nav-group-header .gh-arrow{
  align-self:flex-start!important;
  margin-top:2px!important;
}

.sidebar-footer{
  padding:11px 12px 12px!important;
}
.footer-info .fi-text .text-white-50:first-child,
.footer-info .fi-text div:first-child{
  font-size:.84rem!important;
}
.footer-info .fi-text .text-white-50.text-capitalize,
.footer-info .fi-text div:nth-child(2){
  font-size:.73rem!important;
}

/* Cuando el sidebar está colapsado no mostrar textos */
.sidebar.collapsed .nav-label,
.sidebar.collapsed .gh-label{
  opacity:0!important;
  max-width:0!important;
  overflow:hidden!important;
  white-space:nowrap!important;
}
.sidebar.collapsed .sidebar-brand{
  min-height:84px!important;
}
.sidebar.collapsed .brand-logo-full{
  display:none!important;
}
.sidebar.collapsed .brand-logo-mark{
  display:block!important;
}
/* === SISTALEX_SIDEBAR_LOGO_TEXT_FIX_END === */


/* === SISTALEX_SIDEBAR_ANCHO_NORMAL_NOMBRES_VISIBLES_START === */

/* Mantiene el ancho operativo: NO agranda la ventana lateral */
:root{
  --sw:260px!important;
  --sc:68px!important;
}

.sidebar{
  width:var(--sw)!important;
}
.main-content{
  margin-left:var(--sw)!important;
}
.main-content.collapsed{
  margin-left:var(--sc)!important;
}

/* Logo más grande, pero dentro del ancho normal */
.sidebar-brand{
  min-height:96px!important;
  padding:14px 12px 12px!important;
  justify-content:center!important;
}
.brand-logo-full{
  width:184px!important;
  max-width:100%!important;
  height:auto!important;
}

/* Menú: nombres visibles sin agrandar sidebar */
.sidebar-nav{
  padding-left:7px!important;
  padding-right:7px!important;
}

/* Menos sangría en submenús para ganar espacio útil */
.nav-group-links{
  margin:0 4px 4px 18px!important;
}

.sidebar .nav-link,
.nav-direct-link{
  min-height:38px!important;
  padding:7px 8px!important;
  gap:8px!important;
  display:grid!important;
  grid-template-columns:18px minmax(0,1fr)!important;
  align-items:start!important;
  white-space:normal!important;
  overflow:visible!important;
  font-size:.90rem!important;
  line-height:1.15!important;
}

.nav-direct-link{
  margin:0 3px 4px!important;
  font-size:.92rem!important;
}

.sidebar .nav-link i,
.nav-direct-link i{
  width:18px!important;
  min-width:18px!important;
  font-size:1rem!important;
  line-height:1!important;
  margin-top:2px!important;
}

/* Texto de cada ventana: no se corta; baja a segunda línea si hace falta */
.nav-label,
.sidebar .nav-link span,
.nav-direct-link span{
  display:block!important;
  min-width:0!important;
  max-width:100%!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
  overflow-wrap:break-word!important;
  word-break:normal!important;
  line-height:1.15!important;
}

/* Títulos de grupo compactos */
.nav-section-label{
  font-size:.68rem!important;
  margin:12px 10px 6px!important;
}
.nav-group-header{
  min-height:34px!important;
  padding:7px 8px!important;
  gap:8px!important;
}
.nav-group-header .gh-label{
  font-size:.82rem!important;
  white-space:normal!important;
  overflow:visible!important;
  line-height:1.12!important;
}

/* Colapsado: solo iconos */
.sidebar.collapsed .nav-label,
.sidebar.collapsed .gh-label{
  opacity:0!important;
  max-width:0!important;
  overflow:hidden!important;
  white-space:nowrap!important;
}
.sidebar.collapsed .brand-logo-full{
  display:none!important;
}
.sidebar.collapsed .brand-logo-mark{
  display:block!important;
}

/* === SISTALEX_SIDEBAR_ANCHO_NORMAL_NOMBRES_VISIBLES_END === */


/* === SISTALEX_MENU_ORDEN_MODULOS_START === */

/* Orden final del menú: secciones directas sin sub-bloques duplicados */
:root{
  --sw:260px!important;
  --sc:68px!important;
}

.sidebar{
  width:var(--sw)!important;
}
.main-content{
  margin-left:var(--sw)!important;
}
.main-content.collapsed{
  margin-left:var(--sc)!important;
}

.sidebar-nav{
  padding:8px 8px 12px!important;
  overflow-y:auto!important;
}

/* Cabeceras: PRINCIPAL / GESTIÓN / AUTOMATIZACIÓN / etc. */
.nav-section-label{
  min-height:24px!important;
  margin:11px 10px 5px!important;
  padding:0 2px!important;
  color:rgba(214,228,247,.72)!important;
  font-size:.68rem!important;
  font-weight:900!important;
  letter-spacing:.09em!important;
  text-transform:uppercase!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
}

.nav-section-label:first-child{
  margin-top:4px!important;
}

.nav-section-label::after{
  content:'▾'!important;
  font-size:.68rem!important;
  color:rgba(214,228,247,.62)!important;
  transition:transform .16s ease!important;
}

.nav-section-label.collapsed::after{
  transform:rotate(-90deg)!important;
}

/* Items debajo de cada cabecera */
.sidebar .nav-link,
.nav-direct-link{
  min-height:34px!important;
  margin:0 3px 3px!important;
  padding:7px 9px!important;
  border-radius:9px!important;
  display:grid!important;
  grid-template-columns:18px minmax(0,1fr)!important;
  align-items:start!important;
  gap:8px!important;
  color:rgba(239,246,255,.88)!important;
  font-size:.88rem!important;
  font-weight:760!important;
  line-height:1.14!important;
  white-space:normal!important;
  overflow:visible!important;
  text-decoration:none!important;
}

.sidebar .nav-link i,
.nav-direct-link i{
  width:18px!important;
  min-width:18px!important;
  font-size:.98rem!important;
  line-height:1!important;
  margin-top:2px!important;
  color:rgba(255,255,255,.90)!important;
  text-align:center!important;
}

/* Nombre completo: no se corta; baja de línea si hace falta */
.nav-label,
.sidebar .nav-link span,
.nav-direct-link span{
  display:block!important;
  min-width:0!important;
  max-width:100%!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
  overflow-wrap:break-word!important;
  word-break:normal!important;
  line-height:1.14!important;
}

.sidebar .nav-link:hover,
.nav-direct-link:hover{
  background:rgba(255,255,255,.07)!important;
  color:#fff!important;
}

.sidebar .nav-link.active,
.nav-direct-link.active{
  background:linear-gradient(90deg,#1d67d6 0%,#3277ee 100%)!important;
  color:#fff!important;
  box-shadow:inset 3px 0 0 rgba(255,255,255,.25)!important;
}

/* Mantiene compatibilidad si alguna vista aún usa nav-group */
.nav-group{
  margin:0!important;
  padding:0!important;
  border-bottom:0!important;
}
.nav-group-links{
  margin:0!important;
}
.nav-group-header{
  display:none!important;
}

/* Logo y sidebar sin quitar espacio operativo */
.sidebar-brand{
  min-height:94px!important;
  padding:14px 12px 12px!important;
  justify-content:center!important;
}

.brand-logo-full{
  width:184px!important;
  max-width:100%!important;
}

/* Colapsado: sólo iconos */
.sidebar.collapsed .nav-label,
.sidebar.collapsed .gh-label,
.sidebar.collapsed .nav-section-label{
  opacity:0!important;
  max-width:0!important;
  overflow:hidden!important;
  white-space:nowrap!important;
}

.sidebar.collapsed .brand-logo-full{
  display:none!important;
}
.sidebar.collapsed .brand-logo-mark{
  display:block!important;
}

/* === SISTALEX_MENU_ORDEN_MODULOS_END === */


/* === SISTALEX_MENU_GRUPOS_FINAL_START === */
.sidebar-nav{padding:8px 8px 12px!important;overflow-y:auto!important;}
.nav-main-link{min-height:40px!important;margin:0 3px 6px!important;padding:9px 10px!important;font-size:.94rem!important;font-weight:840!important;}
.nav-group{margin:8px 0 0!important;padding:0!important;border-bottom:0!important;}
.nav-group-header{display:grid!important;grid-template-columns:18px minmax(0,1fr) 16px!important;align-items:center!important;gap:8px!important;min-height:34px!important;margin:0 4px 3px!important;padding:7px 8px!important;border-radius:9px!important;cursor:pointer!important;color:rgba(214,228,247,.78)!important;background:transparent!important;}
.nav-group-header:hover{background:rgba(255,255,255,.07)!important;color:#fff!important;}
.nav-group-header .gh-icon{width:18px!important;min-width:18px!important;color:rgba(255,255,255,.78)!important;font-size:.98rem!important;}
.nav-group-header .gh-label{color:inherit!important;font-size:.74rem!important;font-weight:900!important;text-transform:uppercase!important;letter-spacing:.08em!important;line-height:1.15!important;white-space:normal!important;overflow:visible!important;}
.nav-group-header .gh-arrow{color:rgba(214,228,247,.62)!important;font-size:.75rem!important;transition:transform .18s ease!important;}
.nav-group.open .gh-arrow{transform:rotate(180deg)!important;}
.nav-group-links{display:none!important;margin:0 0 4px 18px!important;}
.nav-group.open .nav-group-links{display:block!important;}
.sidebar .nav-link,.nav-direct-link{min-height:34px!important;margin:0 3px 3px!important;padding:7px 9px!important;border-radius:9px!important;display:grid!important;grid-template-columns:18px minmax(0,1fr)!important;align-items:start!important;gap:8px!important;color:rgba(239,246,255,.88)!important;font-size:.88rem!important;font-weight:760!important;line-height:1.14!important;white-space:normal!important;overflow:visible!important;text-decoration:none!important;}
.sidebar .nav-link i,.nav-direct-link i{width:18px!important;min-width:18px!important;font-size:.98rem!important;line-height:1!important;margin-top:2px!important;color:rgba(255,255,255,.90)!important;text-align:center!important;}
.nav-label,.sidebar .nav-link span,.nav-direct-link span{display:block!important;min-width:0!important;max-width:100%!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important;overflow-wrap:break-word!important;word-break:normal!important;line-height:1.14!important;}
.sidebar .nav-link:hover,.nav-direct-link:hover{background:rgba(255,255,255,.07)!important;color:#fff!important;}
.sidebar .nav-link.active,.nav-direct-link.active{background:linear-gradient(90deg,#1d67d6 0%,#3277ee 100%)!important;color:#fff!important;box-shadow:inset 3px 0 0 rgba(255,255,255,.25)!important;}
.nav-section-label{display:none!important;}
:root{--sw:260px!important;--sc:68px!important;}
.sidebar{width:var(--sw)!important;}.main-content{margin-left:var(--sw)!important;}.main-content.collapsed{margin-left:var(--sc)!important;}
.sidebar.collapsed .nav-label,.sidebar.collapsed .gh-label{opacity:0!important;max-width:0!important;overflow:hidden!important;white-space:nowrap!important;}
.sidebar.collapsed .nav-group-header{grid-template-columns:18px!important;justify-content:center!important;}
.sidebar.collapsed .gh-arrow{display:none!important;}
/* === SISTALEX_MENU_GRUPOS_FINAL_END === */

/* === SISTALEX_PRINCIPAL_TIPOGRAFIA_IGUAL_START === */
body.endpoint-dashboard-index .topbar-title{
  font-size:1.08rem!important;
  font-weight:800!important;
}
body.endpoint-dashboard-index .topbar-title i{
  font-size:1rem!important;
}
body.endpoint-dashboard-index .dashboard-mock{
  font-size:1.08rem!important;
}
body.endpoint-dashboard-index .mock-title{
  font-size:1.28rem!important;
  font-weight:900!important;
}
body.endpoint-dashboard-index .mock-focus-card{
  min-height:78px!important;
}
body.endpoint-dashboard-index .focus-name{
  font-size:1.14rem!important;
  font-weight:850!important;
}
body.endpoint-dashboard-index .focus-number{
  font-size:1.94rem!important;
  font-weight:950!important;
}
body.endpoint-dashboard-index .semaforo-table{
  font-size:1.13rem!important;
}
body.endpoint-dashboard-index .semaforo-table th{
  font-size:1.05rem!important;
}
body.endpoint-dashboard-index .semaforo-table td,
body.endpoint-dashboard-index .semaforo-table td strong,
body.endpoint-dashboard-index .number-link{
  font-size:1.07rem!important;
}
body.endpoint-dashboard-index .encargado-table{
  font-size:1.07rem!important;
}
body.endpoint-dashboard-index .encargado-table th{
  font-size:1.01rem!important;
}
body.endpoint-dashboard-index .encargado-name{
  font-size:1.03rem!important;
}
body.endpoint-dashboard-index .analytics-title{
  font-size:1.10rem!important;
}
body.endpoint-dashboard-index .bar-label,
body.endpoint-dashboard-index .bar-value,
body.endpoint-dashboard-index .risk-name,
body.endpoint-dashboard-index .risk-bucket,
body.endpoint-dashboard-index .risk-sub,
body.endpoint-dashboard-index .summary-label{
  font-size:1.04rem!important;
}
body.endpoint-dashboard-index .risk-count-link{
  font-size:1.92rem!important;
}
body.endpoint-dashboard-index .summary-value{
  font-size:1.76rem!important;
}
/* === SISTALEX_PRINCIPAL_TIPOGRAFIA_IGUAL_END === */


/* === SISTALEX_TABLAS_OSCURAS_IGUALES_START === */
.table thead th,
.table-clean thead th,
.table-semaforo thead th,
.nx-table th,
.ops-table th,
#tablaCausas thead th,
body .table-responsive table thead th{
  background:linear-gradient(90deg,#0c1f46 0%,#163a77 100%)!important;
  color:#ffffff!important;
  border-color:rgba(255,255,255,.08)!important;
}
.table-responsive table thead th:first-child{border-top-left-radius:14px!important;}
.table-responsive table thead th:last-child{border-top-right-radius:14px!important;}
/* === SISTALEX_TABLAS_OSCURAS_IGUALES_END === */


/* === SISTALEX_PRINCIPAL_VISTA_LIMPIA_LOGO_FINAL_START ===
   Ajuste visual pantalla Principal: tipografía más liviana, menos mayúsculas/negrita
   y logo lateral en tamaño equilibrado como la vista aprobada.
   No modifica lógica, rutas, datos ni cálculos.
*/

/* Logo sidebar: mantener presencia institucional sin agrandar el menú */
body.sj-body .sidebar-brand{
  min-height:92px!important;
  padding:14px 14px 12px!important;
  justify-content:center!important;
  align-items:center!important;
}
body.sj-body .brand-logo-full{
  width:178px!important;
  max-width:178px!important;
  height:auto!important;
  display:block!important;
  filter:drop-shadow(0 8px 18px rgba(0,0,0,.16))!important;
}
body.sj-body .brand-logo-mark{
  width:36px!important;
  max-width:36px!important;
  height:auto!important;
}
body.sj-body .sidebar.collapsed .brand-logo-full{display:none!important;}
body.sj-body .sidebar.collapsed .brand-logo-mark{display:block!important;}

/* Menú lateral menos pesado */
body.sj-body .nav-main-link,
body.sj-body .sidebar .nav-link,
body.sj-body .nav-direct-link{
  font-weight:560!important;
  letter-spacing:.005em!important;
}
body.sj-body .nav-group-header .gh-label{
  font-weight:680!important;
  letter-spacing:.055em!important;
}
body.sj-body .sidebar .nav-link.active,
body.sj-body .nav-direct-link.active{
  font-weight:680!important;
}

/* Topbar Principal */
body.endpoint-dashboard-index .topbar-title{
  font-size:1.02rem!important;
  font-weight:650!important;
  letter-spacing:.01em!important;
}
body.endpoint-dashboard-index .topbar-title i{font-size:.96rem!important;}

/* Pantalla Principal: estilo operativo limpio */
body.endpoint-dashboard-index .dashboard-mock{
  gap:12px!important;
  font-size:1rem!important;
}
body.endpoint-dashboard-index .mock-section,
body.endpoint-dashboard-index .analytics-card{
  border:1px solid #dbe5f1!important;
  border-radius:14px!important;
  box-shadow:0 8px 22px rgba(15,23,42,.045)!important;
  background:#fff!important;
}
body.endpoint-dashboard-index .mock-section-head,
body.endpoint-dashboard-index .analytics-head{
  padding:12px 14px!important;
  border-bottom:1px solid #e9eef5!important;
}
body.endpoint-dashboard-index .mock-title,
body.endpoint-dashboard-index .analytics-title{
  text-transform:none!important;
  letter-spacing:.01em!important;
  color:#0d1b3d!important;
  font-weight:650!important;
  line-height:1.18!important;
}
body.endpoint-dashboard-index .mock-title{font-size:1.18rem!important;}
body.endpoint-dashboard-index .analytics-title{font-size:1.06rem!important;}

/* Focos superiores */
body.endpoint-dashboard-index .focus-grid{
  gap:12px!important;
  padding:13px 14px!important;
  grid-template-columns:repeat(auto-fit,minmax(260px,1fr))!important;
}
body.endpoint-dashboard-index .mock-focus-card{
  min-height:92px!important;
  padding:14px 14px!important;
  border-radius:14px!important;
  grid-template-columns:54px minmax(0,1fr) 16px!important;
  box-shadow:0 4px 14px rgba(15,23,42,.035)!important;
}
body.endpoint-dashboard-index .focus-icon{
  width:54px!important;
  height:54px!important;
  font-size:1.22rem!important;
}
body.endpoint-dashboard-index .focus-name{
  font-size:.98rem!important;
  font-weight:620!important;
  color:#17223b!important;
  letter-spacing:.005em!important;
  line-height:1.18!important;
  text-transform:none!important;
}
body.endpoint-dashboard-index .focus-number{
  font-size:1.72rem!important;
  font-weight:720!important;
  letter-spacing:0!important;
  color:#111827!important;
}
body.endpoint-dashboard-index .mock-chevron{color:#73849a!important;}
body.endpoint-dashboard-index .spark-bars span{opacity:.82!important;}

/* Semáforo: lectura más profesional, números fuertes sin gritar */
body.endpoint-dashboard-index .semaforo-table{
  font-size:.98rem!important;
}
body.endpoint-dashboard-index .semaforo-table th{
  font-size:.94rem!important;
  font-weight:650!important;
  text-transform:none!important;
  letter-spacing:.01em!important;
  padding:10px 12px!important;
}
body.endpoint-dashboard-index .semaforo-table td{
  font-size:.98rem!important;
  font-weight:400!important;
  padding:10px 12px!important;
}
body.endpoint-dashboard-index .semaforo-table tbody tr{height:48px!important;}
body.endpoint-dashboard-index .semaforo-table td strong{
  font-size:.98rem!important;
  font-weight:600!important;
  color:#17315f!important;
}
body.endpoint-dashboard-index .semaforo-table tbody tr:last-child td{
  font-weight:620!important;
}
body.endpoint-dashboard-index .number-link{
  font-size:.99rem!important;
  font-weight:690!important;
}
body.endpoint-dashboard-index .sem-green a,
body.endpoint-dashboard-index .sem-yellow a,
body.endpoint-dashboard-index .sem-orange a,
body.endpoint-dashboard-index .sem-red a,
body.endpoint-dashboard-index .sem-total a{
  font-weight:690!important;
}

/* Tablas de encargados dentro del semáforo */
body.endpoint-dashboard-index .encargado-table{font-size:.95rem!important;}
body.endpoint-dashboard-index .encargado-table th{
  font-size:.90rem!important;
  font-weight:620!important;
  text-transform:none!important;
}
body.endpoint-dashboard-index .encargado-table td{font-size:.93rem!important;}
body.endpoint-dashboard-index .encargado-name{
  font-size:.93rem!important;
  font-weight:560!important;
}

/* Gráficos inferiores */
body.endpoint-dashboard-index .analysis-row{gap:12px!important;}
body.endpoint-dashboard-index .analytics-body{padding:12px 14px!important;}
body.endpoint-dashboard-index .bar-row{
  grid-template-columns:190px 1fr 42px!important;
  margin:10px 0!important;
}
body.endpoint-dashboard-index .bar-label{
  font-size:.96rem!important;
  font-weight:400!important;
  color:#334155!important;
}
body.endpoint-dashboard-index .bar-value{
  font-size:.98rem!important;
  font-weight:690!important;
}
body.endpoint-dashboard-index .bar-track{height:13px!important;}

/* Riesgo actual */
body.endpoint-dashboard-index .risk-box{
  min-height:118px!important;
  border-radius:14px!important;
  padding:16px!important;
  grid-template-columns:76px 1fr 170px!important;
}
body.endpoint-dashboard-index .risk-name{
  font-size:1.02rem!important;
  font-weight:680!important;
}
body.endpoint-dashboard-index .risk-bucket{
  font-size:.98rem!important;
  font-weight:620!important;
}
body.endpoint-dashboard-index .risk-count-link{
  font-size:1.82rem!important;
  font-weight:760!important;
}
body.endpoint-dashboard-index .risk-sub{
  font-size:.94rem!important;
  font-weight:400!important;
}

/* Resumen general */
body.endpoint-dashboard-index .summary-grid{
  gap:12px!important;
  padding:13px 14px!important;
}
body.endpoint-dashboard-index .summary-card{
  min-height:84px!important;
  border-radius:14px!important;
}
body.endpoint-dashboard-index .summary-label{
  font-size:.94rem!important;
  font-weight:420!important;
}
body.endpoint-dashboard-index .summary-value{
  font-size:1.52rem!important;
  font-weight:720!important;
}

@media(max-width:1200px){
  body.endpoint-dashboard-index .risk-box{grid-template-columns:70px 1fr!important;}
  body.endpoint-dashboard-index .risk-bars{display:none!important;}
}
@media(max-width:768px){
  body.endpoint-dashboard-index .focus-grid,
  body.endpoint-dashboard-index .summary-grid{grid-template-columns:1fr!important;}
}
/* === SISTALEX_PRINCIPAL_VISTA_LIMPIA_LOGO_FINAL_END === */

/* === SISTALEX_CAUSAS_VISTA_COMPACTA_FINAL_START ===
   Gestión de Causas: filtros compactos, tabla protagonista,
   encabezado azul institucional y barra de selección pequeña.
*/

body.endpoint-causas-lista{
  --causas-blue:#0d2f63;
  --causas-blue-2:#113f82;
  --causas-border:#dbe5f1;
  --causas-muted:#64748b;
}

/* Bloque superior de filtros: más bajo para dar prioridad a la tabla */
body.endpoint-causas-lista .filters-card{
  margin-bottom:10px!important;
  border-radius:16px!important;
  border:1px solid var(--causas-border)!important;
  box-shadow:0 8px 22px rgba(15,23,42,.045)!important;
  background:#fff!important;
}
body.endpoint-causas-lista .filters-card .card-body{
  padding:10px 14px!important;
}
body.endpoint-causas-lista .filters-grid{
  grid-template-columns:minmax(260px,1.65fr) minmax(170px,.78fr) minmax(150px,.62fr) auto auto!important;
  gap:7px 12px!important;
  align-items:end!important;
}
body.endpoint-causas-lista .filter-block label,
body.endpoint-causas-lista .filter-block .form-label{
  margin-bottom:4px!important;
  font-size:.68rem!important;
  font-weight:720!important;
  letter-spacing:.035em!important;
  text-transform:none!important;
  color:#17233d!important;
}
body.endpoint-causas-lista .filter-block .form-control,
body.endpoint-causas-lista .filter-block .form-select,
body.endpoint-causas-lista .filter-block .input-group-text{
  min-height:34px!important;
  height:34px!important;
  padding:.36rem .62rem!important;
  font-size:.82rem!important;
  border-radius:9px!important;
  border-color:#cfd9e6!important;
  box-shadow:none!important;
}
body.endpoint-causas-lista .filter-block .input-group .input-group-text{
  border-top-right-radius:0!important;
  border-bottom-right-radius:0!important;
  width:38px!important;
  justify-content:center!important;
  background:#fff!important;
}
body.endpoint-causas-lista .filter-block .input-group .form-control{
  border-top-left-radius:0!important;
  border-bottom-left-radius:0!important;
}
body.endpoint-causas-lista .filters-buttons{
  gap:8px!important;
  padding-bottom:0!important;
}
body.endpoint-causas-lista .filters-buttons .btn,
body.endpoint-causas-lista .card-header .btn{
  min-height:34px!important;
  height:34px!important;
  padding:.34rem .85rem!important;
  border-radius:9px!important;
  font-size:.82rem!important;
  font-weight:680!important;
  white-space:nowrap!important;
}
body.endpoint-causas-lista .filters-buttons .btn-primary{
  background:#0f56c6!important;
  border-color:#0f56c6!important;
}
body.endpoint-causas-lista .filters-extra{
  padding:9px!important;
  border-radius:12px!important;
}

/* Card de causas: más importante visualmente y más cerca de filtros */
body.endpoint-causas-lista form#masivForm > .card{
  margin-top:8px!important;
  border-radius:16px!important;
  border:1px solid var(--causas-border)!important;
  box-shadow:0 9px 24px rgba(15,23,42,.05)!important;
  overflow:hidden!important;
}
body.endpoint-causas-lista form#masivForm > .card > .card-header{
  padding:10px 14px!important;
  min-height:50px!important;
  background:#fff!important;
  border-bottom:1px solid #e7edf5!important;
}
body.endpoint-causas-lista form#masivForm > .card > .card-header span,
body.endpoint-causas-lista form#masivForm > .card > .card-header .badge{
  font-weight:680!important;
}
body.endpoint-causas-lista form#masivForm > .card > .card-header .badge.bg-primary{
  background:#0f56c6!important;
  border-radius:999px!important;
  padding:.28rem .54rem!important;
}

/* Encabezado de tabla: mismo azul institucional, sin amarillo ni degradado rojo */
body.endpoint-causas-lista #tablaCausas thead th,
body.endpoint-causas-lista .table-responsive table#tablaCausas thead th{
  background:linear-gradient(90deg,var(--causas-blue) 0%,var(--causas-blue-2) 100%)!important;
  color:#fff!important;
  border-color:rgba(255,255,255,.10)!important;
  padding:.48rem .58rem!important;
  font-size:.78rem!important;
  font-weight:680!important;
  letter-spacing:.01em!important;
  text-transform:none!important;
}
body.endpoint-causas-lista #tablaCausas thead th:first-child{
  border-top-left-radius:12px!important;
}
body.endpoint-causas-lista #tablaCausas thead th:last-child{
  border-top-right-radius:12px!important;
}
body.endpoint-causas-lista #tablaCausas thead th a,
body.endpoint-causas-lista #tablaCausas thead th span,
body.endpoint-causas-lista #tablaCausas thead th i{
  color:#fff!important;
}
body.endpoint-causas-lista #tablaCausas tbody td{
  padding:.54rem .58rem!important;
  font-size:.82rem!important;
  color:#172033!important;
  vertical-align:middle!important;
  border-color:#edf2f7!important;
}
body.endpoint-causas-lista #tablaCausas tbody tr:hover td{
  background:#f6f9ff!important;
}
body.endpoint-causas-lista .table-responsive{
  border-radius:12px!important;
  border:1px solid #dce6f2!important;
  background:#fff!important;
}
body.endpoint-causas-lista #tablaCausas .btn-sm{
  min-height:28px!important;
  height:28px!important;
  padding:.18rem .42rem!important;
  border-radius:8px!important;
}
body.endpoint-causas-lista #tablaCausas .text-muted.small,
body.endpoint-causas-lista #tablaCausas .small{
  font-size:.78rem!important;
}
body.endpoint-causas-lista #tablaCausas .text-center.py-5{
  padding-top:34px!important;
  padding-bottom:34px!important;
}
body.endpoint-causas-lista #tablaCausas .bi-inbox{
  font-size:1.9rem!important;
}

/* Footer/paginación más compacto */
body.endpoint-causas-lista .card-footer{
  padding:8px 12px!important;
  background:#fff!important;
  border-top:1px solid #e7edf5!important;
}
body.endpoint-causas-lista .pagination .page-link{
  border-radius:8px!important;
  min-width:30px!important;
  min-height:30px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  font-size:.80rem!important;
}

/* Barra inferior: no existe visualmente hasta seleccionar causas */
body.endpoint-causas-lista .sticky-bar{
  display:none!important;
  position:fixed!important;
  left:50%!important;
  right:auto!important;
  bottom:22px!important;
  transform:translateX(-50%) translateY(16px)!important;
  width:min(760px,calc(100vw - 40px))!important;
  min-height:46px!important;
  margin:0!important;
  padding:8px 10px!important;
  border-radius:14px!important;
  background:linear-gradient(90deg,#0b2d5d 0%,#12213b 100%)!important;
  border:1px solid rgba(255,255,255,.10)!important;
  box-shadow:0 18px 38px rgba(15,23,42,.24)!important;
  color:#fff!important;
  align-items:center!important;
  gap:10px!important;
}
body.endpoint-causas-lista .sticky-bar.visible{
  display:flex!important;
  transform:translateX(-50%) translateY(0)!important;
}
body.endpoint-causas-lista .sticky-bar .sel-count{
  font-size:.86rem!important;
  font-weight:740!important;
}
body.endpoint-causas-lista .sticky-bar .btn{
  min-height:32px!important;
  height:32px!important;
  padding:.28rem .76rem!important;
  border-radius:10px!important;
  font-size:.80rem!important;
  font-weight:680!important;
}
body.endpoint-causas-lista .sticky-bar .btn-outline-light{
  color:#fff!important;
  border-color:rgba(255,255,255,.25)!important;
  background:rgba(255,255,255,.04)!important;
}
body.endpoint-causas-lista .sticky-bar .btn-danger{
  background:#df2028!important;
  border-color:#df2028!important;
  color:#fff!important;
}
body.endpoint-causas-lista .tr-selected td{
  background:#eef5ff!important;
}

@media(max-width:1100px){
  body.endpoint-causas-lista .filters-grid{
    grid-template-columns:1fr 1fr!important;
  }
  body.endpoint-causas-lista .filters-buttons{
    justify-content:stretch!important;
  }
  body.endpoint-causas-lista .filters-buttons .btn{
    width:100%!important;
  }
}
@media(max-width:768px){
  body.endpoint-causas-lista .filters-card .card-body{padding:10px!important;}
  body.endpoint-causas-lista .filters-grid{grid-template-columns:1fr!important;}
  body.endpoint-causas-lista .sticky-bar{
    width:calc(100vw - 24px)!important;
    flex-wrap:wrap!important;
    justify-content:space-between!important;
  }
  body.endpoint-causas-lista .sticky-bar .ms-auto{
    margin-left:0!important;
    width:100%!important;
    justify-content:flex-end!important;
  }
}
/* === SISTALEX_CAUSAS_VISTA_COMPACTA_FINAL_END === */

/* === SISTALEX_VISTAS_SECUNDARIAS_LIMPIAS_BEGIN ===
   Alcance: Actualización PJUD, Administración, Receptores,
   Estudio Jurídico y Control Operativo.
   No aplica a Principal, Gestión de Causas, Distribución PJUD,
   Confección Demanda ni Escritos PJUD.
*/
body[class*="endpoint-pjud-updates-"] .page-body,
body[class*="endpoint-admin-"] .page-body,
body[class*="endpoint-admin-pjud-"] .page-body,
body[class*="endpoint-receptores-"] .page-body,
body[class*="endpoint-estudio-"] .page-body,
body[class*="endpoint-control-operativo-"] .page-body{
  padding:16px 18px!important;
}
body[class*="endpoint-pjud-updates-"] h1,body[class*="endpoint-pjud-updates-"] h2,body[class*="endpoint-pjud-updates-"] h3,body[class*="endpoint-pjud-updates-"] h4,body[class*="endpoint-pjud-updates-"] h5,
body[class*="endpoint-admin-"] h1,body[class*="endpoint-admin-"] h2,body[class*="endpoint-admin-"] h3,body[class*="endpoint-admin-"] h4,body[class*="endpoint-admin-"] h5,
body[class*="endpoint-admin-pjud-"] h1,body[class*="endpoint-admin-pjud-"] h2,body[class*="endpoint-admin-pjud-"] h3,body[class*="endpoint-admin-pjud-"] h4,body[class*="endpoint-admin-pjud-"] h5,
body[class*="endpoint-receptores-"] h1,body[class*="endpoint-receptores-"] h2,body[class*="endpoint-receptores-"] h3,body[class*="endpoint-receptores-"] h4,body[class*="endpoint-receptores-"] h5,
body[class*="endpoint-estudio-"] h1,body[class*="endpoint-estudio-"] h2,body[class*="endpoint-estudio-"] h3,body[class*="endpoint-estudio-"] h4,body[class*="endpoint-estudio-"] h5,
body[class*="endpoint-control-operativo-"] h1,body[class*="endpoint-control-operativo-"] h2,body[class*="endpoint-control-operativo-"] h3,body[class*="endpoint-control-operativo-"] h4,body[class*="endpoint-control-operativo-"] h5{
  font-weight:680!important;
  letter-spacing:-.018em!important;
  text-transform:none!important;
  color:#0D1B3D!important;
}
.sj-clean-page{--clean-blue:#0D1B3D;--clean-blue-2:#12376F;--clean-line:#E2E8F0;--clean-muted:#64748B;}
.sj-clean-head{
  padding:0!important;
  margin-bottom:12px!important;
}
.sj-clean-head h4{font-size:1.12rem!important;font-weight:720!important;line-height:1.15!important;}
.sj-head-note{display:block;color:#64748B;font-size:.78rem;margin-top:2px;}
.sj-soft-badge{border:1px solid #dbe4ef!important;color:#334155!important;font-weight:680!important;}
.sj-main-card,.sj-compact-card,.sj-table-card,
body[class*="endpoint-admin-"] .card,
body[class*="endpoint-admin-pjud-"] .card,
body[class*="endpoint-receptores-"] .card,
body[class*="endpoint-estudio-"] .card,
body[class*="endpoint-control-operativo-"] .card{
  border:1px solid var(--clean-line,#E2E8F0)!important;
  border-radius:15px!important;
  box-shadow:0 8px 22px rgba(15,23,42,.045)!important;
  overflow:hidden!important;
}
.sj-main-card>.card-header,.sj-compact-card>.card-header,.sj-table-card>.card-header,
body[class*="endpoint-admin-"] .card>.card-header,
body[class*="endpoint-admin-pjud-"] .card>.card-header,
body[class*="endpoint-receptores-"] .card>.card-header,
body[class*="endpoint-estudio-"] .card>.card-header,
body[class*="endpoint-control-operativo-"] .card>.card-header{
  min-height:42px!important;
  padding:9px 13px!important;
  background:#fff!important;
  border-bottom:1px solid #E6EDF5!important;
  color:#0D1B3D!important;
  font-size:.88rem!important;
  font-weight:700!important;
  letter-spacing:-.01em!important;
}
.sj-main-card>.card-body,.sj-compact-card>.card-body,
body[class*="endpoint-admin-"] .card>.card-body,
body[class*="endpoint-admin-pjud-"] .card>.card-body,
body[class*="endpoint-receptores-"] .card>.card-body,
body[class*="endpoint-estudio-"] .card>.card-body,
body[class*="endpoint-control-operativo-"] .card>.card-body{
  padding:12px 13px!important;
}
.sj-clean-page .form-label,
body[class*="endpoint-admin-"] .form-label,
body[class*="endpoint-admin-pjud-"] .form-label,
body[class*="endpoint-receptores-"] .form-label,
body[class*="endpoint-estudio-"] .form-label,
body[class*="endpoint-control-operativo-"] .form-label{
  margin-bottom:4px!important;
  font-size:.77rem!important;
  font-weight:680!important;
  color:#334155!important;
}
.sj-clean-page .form-control,.sj-clean-page .form-select,
body[class*="endpoint-admin-"] .form-control,body[class*="endpoint-admin-"] .form-select,
body[class*="endpoint-admin-pjud-"] .form-control,body[class*="endpoint-admin-pjud-"] .form-select,
body[class*="endpoint-receptores-"] .form-control,body[class*="endpoint-receptores-"] .form-select,
body[class*="endpoint-estudio-"] .form-control,body[class*="endpoint-estudio-"] .form-select,
body[class*="endpoint-control-operativo-"] .form-control,body[class*="endpoint-control-operativo-"] .form-select{
  min-height:34px!important;
  height:34px!important;
  padding:.34rem .58rem!important;
  border-radius:9px!important;
  font-size:.81rem!important;
  border-color:#CBD5E1!important;
  box-shadow:none!important;
}
.sj-clean-page .btn,
body[class*="endpoint-admin-"] .btn,
body[class*="endpoint-admin-pjud-"] .btn,
body[class*="endpoint-receptores-"] .btn,
body[class*="endpoint-estudio-"] .btn,
body[class*="endpoint-control-operativo-"] .btn{
  min-height:32px!important;
  padding:.32rem .76rem!important;
  border-radius:9px!important;
  font-size:.80rem!important;
  font-weight:680!important;
  box-shadow:none!important;
}
.sj-clean-page .btn-sm,
body[class*="endpoint-admin-"] .btn-sm,
body[class*="endpoint-admin-pjud-"] .btn-sm,
body[class*="endpoint-receptores-"] .btn-sm,
body[class*="endpoint-estudio-"] .btn-sm,
body[class*="endpoint-control-operativo-"] .btn-sm{
  min-height:29px!important;
  padding:.24rem .62rem!important;
  font-size:.77rem!important;
}
.sj-mini-note{
  font-size:.75rem;
  color:#64748B;
  background:#F8FAFC;
  border:1px solid #E2E8F0;
  border-radius:10px;
  padding:7px 9px;
}
.sj-check-list{
  max-height:118px;
  overflow:auto;
  border:1px solid #DCE6F2;
  border-radius:10px;
  padding:6px 8px;
  background:#fff;
}
.sj-check-list .form-check{margin-bottom:2px;min-height:22px;}
.sj-check-list .form-check-label{font-size:.75rem;color:#334155;}
.sj-mini-row{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #EEF2F7;padding:6px 0;font-size:.82rem;}
.sj-mini-row:last-child{border-bottom:0;}
.sj-sync-row{display:grid;gap:1px;border-bottom:1px solid #EEF2F7;padding:6px 0;}
.sj-sync-row:last-child{border-bottom:0;}
.sj-sync-row strong{font-size:.78rem;color:#0D1B3D;}
.sj-sync-row span,.sj-sync-row small{color:#64748B;}
.sj-kpi-row .stat-card,
body[class*="endpoint-receptores-"] .stat-card{
  min-height:82px!important;
  padding:12px 13px!important;
  border:1px solid #E2E8F0!important;
  border-radius:14px!important;
  box-shadow:0 6px 16px rgba(15,23,42,.04)!important;
}
.sj-kpi-row .stat-card .stat-num,
body[class*="endpoint-receptores-"] .stat-card .stat-num{
  font-size:1.35rem!important;
  line-height:1.1!important;
  font-weight:760!important;
}
.sj-kpi-row .stat-card .stat-num.money,
body[class*="endpoint-receptores-"] .stat-card .stat-num.money{font-size:1rem!important;}
.sj-kpi-row .stat-card .stat-label,
body[class*="endpoint-receptores-"] .stat-card .stat-label{
  font-size:.72rem!important;
  color:#64748B!important;
  line-height:1.15!important;
}
.sj-kpi-row .card .card-body{padding:11px 12px!important;}
.sj-kpi-row .fs-3{font-size:1.45rem!important;font-weight:760!important;}
.sj-kpi-row .fs-4{font-size:1.15rem!important;font-weight:760!important;}
.sj-kpi-row .text-muted.small{font-size:.72rem!important;}
.sj-table-card .table-responsive,
body[class*="endpoint-admin-"] .table-responsive,
body[class*="endpoint-admin-pjud-"] .table-responsive,
body[class*="endpoint-receptores-"] .table-responsive,
body[class*="endpoint-estudio-"] .table-responsive,
body[class*="endpoint-control-operativo-"] .table-responsive{
  border-radius:0!important;
  border:0!important;
}
.sj-table-card table thead th,
body[class*="endpoint-admin-"] table thead th,
body[class*="endpoint-admin-pjud-"] table thead th,
body[class*="endpoint-receptores-"] table thead th,
body[class*="endpoint-estudio-"] table thead th,
body[class*="endpoint-control-operativo-"] table thead th{
  background:#0D1B3D!important;
  color:#fff!important;
  padding:.48rem .62rem!important;
  font-size:.76rem!important;
  font-weight:660!important;
  letter-spacing:.005em!important;
  text-transform:none!important;
  border-color:rgba(255,255,255,.08)!important;
}
.sj-table-card table tbody td,
body[class*="endpoint-admin-"] table tbody td,
body[class*="endpoint-admin-pjud-"] table tbody td,
body[class*="endpoint-receptores-"] table tbody td,
body[class*="endpoint-estudio-"] table tbody td,
body[class*="endpoint-control-operativo-"] table tbody td{
  padding:.50rem .62rem!important;
  font-size:.80rem!important;
  color:#1F2937!important;
  vertical-align:middle!important;
  border-color:#EDF2F7!important;
}
.sj-table-card .text-muted.small,
body[class*="endpoint-admin-"] .text-muted.small,
body[class*="endpoint-admin-pjud-"] .text-muted.small,
body[class*="endpoint-receptores-"] .text-muted.small,
body[class*="endpoint-estudio-"] .text-muted.small,
body[class*="endpoint-control-operativo-"] .text-muted.small{
  font-size:.72rem!important;
  line-height:1.25!important;
}
body[class*="endpoint-receptores-"] .alert-info,
body[class*="endpoint-pjud-updates-"] .alert-info{
  display:none!important;
}
body[class*="endpoint-admin-"] .fw-bold,
body[class*="endpoint-admin-pjud-"] .fw-bold,
body[class*="endpoint-receptores-"] .fw-bold,
body[class*="endpoint-estudio-"] .fw-bold,
body[class*="endpoint-control-operativo-"] .fw-bold{
  font-weight:700!important;
}
body[class*="endpoint-admin-"] .bg-warning-subtle,
body[class*="endpoint-admin-pjud-"] .bg-warning-subtle,
body[class*="endpoint-receptores-"] .bg-warning-subtle,
body[class*="endpoint-estudio-"] .bg-warning-subtle,
body[class*="endpoint-control-operativo-"] .bg-warning-subtle{
  background:#F8FAFC!important;
  color:#475569!important;
  border:1px solid #E2E8F0!important;
}
body[class*="endpoint-admin-"] .badge,
body[class*="endpoint-admin-pjud-"] .badge,
body[class*="endpoint-receptores-"] .badge,
body[class*="endpoint-estudio-"] .badge,
body[class*="endpoint-control-operativo-"] .badge,
.sj-clean-page .badge{
  font-weight:650!important;
  border-radius:999px!important;
  padding:.28rem .50rem!important;
}
body[class*="endpoint-admin-"] .container-fluid,
body[class*="endpoint-admin-pjud-"] .container-fluid,
body[class*="endpoint-pjud-updates-"] .container-fluid{
  padding-top:4px!important;
}
body[class*="endpoint-admin-"] .d-flex.justify-content-between.align-items-center.mb-3,
body[class*="endpoint-admin-pjud-"] .d-flex.justify-content-between.align-items-center.mb-3,
body[class*="endpoint-admin-pjud-"] .d-flex.justify-content-between.align-items-center.mb-4{
  margin-bottom:12px!important;
}
body[class*="endpoint-admin-"] .d-flex.justify-content-between.align-items-center.mb-3 h2,
body[class*="endpoint-admin-pjud-"] .d-flex.justify-content-between.align-items-center.mb-3 h2,
body[class*="endpoint-admin-pjud-"] .d-flex.justify-content-between.align-items-center.mb-4 h4{
  font-size:1.08rem!important;
}
body[class*="endpoint-admin-"] .d-flex.justify-content-between.align-items-center.mb-3 .text-muted.small,
body[class*="endpoint-admin-pjud-"] .d-flex.justify-content-between.align-items-center.mb-3 .text-muted.small,
body[class*="endpoint-admin-pjud-"] .d-flex.justify-content-between.align-items-center.mb-4 .text-muted.small{
  display:none!important;
}
@media(max-width:991px){
  body[class*="endpoint-pjud-updates-"] .page-body,
  body[class*="endpoint-admin-"] .page-body,
  body[class*="endpoint-admin-pjud-"] .page-body,
  body[class*="endpoint-receptores-"] .page-body,
  body[class*="endpoint-estudio-"] .page-body,
  body[class*="endpoint-control-operativo-"] .page-body{padding:12px!important;}
  .sj-clean-head h4{font-size:1.02rem!important;}
}
/* === SISTALEX_VISTAS_SECUNDARIAS_LIMPIAS_END === */

/* === SISTALEX_LOGO_SIDEBAR_LOGIN_FINAL_START ===
   Ajuste solicitado: logo lateral con más presencia y login más grande.
   Solo modifica vista; no toca rutas, lógica, formularios ni permisos.
*/

/* Logo lateral: más grande, acercado a márgenes sin aumentar demasiado el menú */
body.sj-body .sidebar-brand{
  min-height:112px!important;
  padding:18px 10px 16px!important;
  justify-content:center!important;
  align-items:center!important;
}
body.sj-body .brand-logo-full{
  width:218px!important;
  max-width:calc(var(--sw,260px) - 22px)!important;
  height:auto!important;
  display:block!important;
  filter:drop-shadow(0 10px 22px rgba(0,0,0,.18))!important;
}
body.sj-body .brand-logo-mark{
  width:42px!important;
  max-width:42px!important;
  height:auto!important;
}
body.sj-body .sidebar.collapsed .sidebar-brand{
  min-height:78px!important;
  padding:12px 8px!important;
}
body.sj-body .sidebar.collapsed .brand-logo-full{display:none!important;}
body.sj-body .sidebar.collapsed .brand-logo-mark{
  display:block!important;
  width:42px!important;
  max-width:42px!important;
}

/* Login: tarjeta, logo e inputs más grandes y proporcionados */
body.endpoint-auth-login .auth-shell,
body.endpoint-login .auth-shell{
  min-height:100vh!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:34px 22px!important;
  background:
    radial-gradient(circle at 12% 6%,rgba(15,94,215,.13),transparent 30%),
    linear-gradient(180deg,#f5f8fc 0%,#edf2f8 100%)!important;
}
body.endpoint-auth-login .auth-shell::before,
body.endpoint-login .auth-shell::before{
  height:205px!important;
  background:
    linear-gradient(135deg,#2d5d92 0%,#204a78 58%,#173a64 100%)!important;
  box-shadow:0 12px 28px rgba(15,23,42,.08)!important;
}
body.endpoint-auth-login .auth-panel-wrap,
body.endpoint-auth-login .auth-panel-wrap-centered,
body.endpoint-login .auth-panel-wrap,
body.endpoint-login .auth-panel-wrap-centered{
  width:min(560px,calc(100vw - 46px))!important;
}
body.endpoint-auth-login .auth-panel,
body.endpoint-login .auth-panel{
  width:100%!important;
  max-width:560px!important;
  border-radius:22px!important;
  padding:42px 40px 34px!important;
  background:#fff!important;
  border:1px solid #dce6f1!important;
  box-shadow:0 28px 62px rgba(15,43,80,.15)!important;
}
body.endpoint-auth-login .auth-panel-brand,
body.endpoint-login .auth-panel-brand{
  margin-bottom:18px!important;
  text-align:center!important;
}
body.endpoint-auth-login .auth-panel-logo,
body.endpoint-login .auth-panel-logo{
  width:min(282px,92%)!important;
  max-width:282px!important;
  height:auto!important;
  margin:0 auto 18px!important;
  display:block!important;
}
body.endpoint-auth-login .auth-panel h1,
body.endpoint-login .auth-panel h1{
  font-size:1.58rem!important;
  line-height:1.15!important;
  font-weight:850!important;
  color:#0d1b3d!important;
  text-align:center!important;
  margin:0 0 26px!important;
  letter-spacing:-.02em!important;
}
body.endpoint-auth-login .auth-panel .mb-3,
body.endpoint-login .auth-panel .mb-3{
  margin-bottom:18px!important;
}
body.endpoint-auth-login .auth-panel .form-label,
body.endpoint-login .auth-panel .form-label{
  font-size:.80rem!important;
  font-weight:760!important;
  letter-spacing:.065em!important;
  text-transform:uppercase!important;
  color:#0d1b3d!important;
  margin-bottom:8px!important;
}
body.endpoint-auth-login .auth-panel .input-group-text,
body.endpoint-auth-login .auth-panel .form-control,
body.endpoint-auth-login .auth-panel .btn-outline-secondary,
body.endpoint-login .auth-panel .input-group-text,
body.endpoint-login .auth-panel .form-control,
body.endpoint-login .auth-panel .btn-outline-secondary{
  min-height:50px!important;
  height:50px!important;
  border-color:#cfdae8!important;
  font-size:.94rem!important;
  box-shadow:none!important;
}
body.endpoint-auth-login .auth-panel .input-group-text,
body.endpoint-login .auth-panel .input-group-text{
  width:50px!important;
  justify-content:center!important;
  color:#163a67!important;
  background:#f8fbff!important;
  border-radius:10px 0 0 10px!important;
}
body.endpoint-auth-login .auth-panel .form-control,
body.endpoint-login .auth-panel .form-control{
  color:#0f172a!important;
  background:#fff!important;
}
body.endpoint-auth-login .auth-panel .form-control::placeholder,
body.endpoint-login .auth-panel .form-control::placeholder{
  color:#718096!important;
}
body.endpoint-auth-login .auth-panel .btn-outline-secondary,
body.endpoint-login .auth-panel .btn-outline-secondary{
  width:50px!important;
  border-radius:0 10px 10px 0!important;
  color:#163a67!important;
}
body.endpoint-auth-login .auth-panel .form-check,
body.endpoint-login .auth-panel .form-check{
  margin:2px 0 24px!important;
}
body.endpoint-auth-login .auth-panel .form-check-label,
body.endpoint-login .auth-panel .form-check-label{
  font-size:.82rem!important;
  font-weight:650!important;
  color:#1e293b!important;
}
body.endpoint-auth-login .auth-panel .form-check-input,
body.endpoint-login .auth-panel .form-check-input{
  width:18px!important;
  height:18px!important;
  border-radius:5px!important;
  border-color:#cbd5e1!important;
}
body.endpoint-auth-login .auth-panel .btn-primary,
body.endpoint-login .auth-panel .btn-primary{
  min-height:52px!important;
  border-radius:10px!important;
  font-size:.94rem!important;
  font-weight:780!important;
  background:#1457c8!important;
  border-color:#1457c8!important;
  box-shadow:0 10px 22px rgba(20,87,200,.18)!important;
}
body.endpoint-auth-login .auth-panel .btn-primary:hover,
body.endpoint-login .auth-panel .btn-primary:hover{
  background:#0f48aa!important;
  border-color:#0f48aa!important;
}
body.endpoint-auth-login .auth-footer,
body.endpoint-login .auth-footer{
  margin-top:24px!important;
  padding-top:20px!important;
  border-top:1px solid #e2e8f0!important;
  color:#718096!important;
  font-size:.80rem!important;
  text-align:center!important;
}

@media (max-width:575.98px){
  body.endpoint-auth-login .auth-panel,
  body.endpoint-login .auth-panel{
    padding:32px 24px 28px!important;
  }
  body.endpoint-auth-login .auth-panel-logo,
  body.endpoint-login .auth-panel-logo{
    width:min(235px,90%)!important;
  }
  body.endpoint-auth-login .auth-panel h1,
  body.endpoint-login .auth-panel h1{
    font-size:1.38rem!important;
  }
}
/* === SISTALEX_LOGO_SIDEBAR_LOGIN_FINAL_END === */

/* === SISTALEX_PRINCIPAL_V19_SEMAFORO_COMPACTO_START ===
   Principal: semáforo por días más compacto.
   Se ajustan espacios, padding y alturas. No se modifica tamaño de letra.
*/
body.endpoint-dashboard-index .dashboard-mock{
  gap:10px!important;
}
body.endpoint-dashboard-index .mock-section:has(.semaforo-table),
body.endpoint-dashboard-index .semaforo-card,
body.endpoint-dashboard-index .mock-section.semaforo-card{
  margin-bottom:10px!important;
}
body.endpoint-dashboard-index .mock-section:has(.semaforo-table) .mock-section-head,
body.endpoint-dashboard-index .semaforo-head{
  padding:8px 14px!important;
  min-height:42px!important;
}
body.endpoint-dashboard-index .mock-section:has(.semaforo-table) .mock-title,
body.endpoint-dashboard-index .semaforo-title{
  line-height:1.08!important;
  margin:0!important;
}
body.endpoint-dashboard-index .semaforo-wrap,
body.endpoint-dashboard-index .mock-section:has(.semaforo-table) .mock-section-body,
body.endpoint-dashboard-index .mock-section:has(.semaforo-table) .table-responsive{
  padding:0!important;
  margin:0!important;
}
body.endpoint-dashboard-index table.semaforo-table,
body.endpoint-dashboard-index .semaforo-table{
  margin:0!important;
  border-collapse:collapse!important;
}
body.endpoint-dashboard-index .semaforo-table thead th,
body.endpoint-dashboard-index .semaforo-table th,
body.endpoint-dashboard-index .table-semaforo thead th{
  padding:7px 10px!important;
  line-height:1.08!important;
  height:34px!important;
}
body.endpoint-dashboard-index .semaforo-table tbody tr,
body.endpoint-dashboard-index .table-semaforo tbody tr{
  height:36px!important;
  min-height:36px!important;
}
body.endpoint-dashboard-index .semaforo-table tbody td,
body.endpoint-dashboard-index .table-semaforo tbody td{
  padding:6px 10px!important;
  line-height:1.08!important;
  height:36px!important;
  min-height:36px!important;
  vertical-align:middle!important;
}
body.endpoint-dashboard-index .semaforo-table tbody td:first-child,
body.endpoint-dashboard-index .table-semaforo tbody td:first-child{
  padding-left:14px!important;
}
body.endpoint-dashboard-index .semaforo-table tbody tr:last-child td,
body.endpoint-dashboard-index .table-semaforo tbody tr:last-child td{
  padding-top:7px!important;
  padding-bottom:7px!important;
  height:38px!important;
}
body.endpoint-dashboard-index .sem-row-wrap{
  margin-bottom:4px!important;
}
body.endpoint-dashboard-index .sem-row{
  min-height:32px!important;
  padding:4px 8px!important;
}
body.endpoint-dashboard-index .sem-cell{
  min-height:26px!important;
  padding-top:3px!important;
  padding-bottom:3px!important;
}
body.endpoint-dashboard-index .analysis-row,
body.endpoint-dashboard-index .dashboard-lower-grid{
  margin-top:10px!important;
  gap:10px!important;
}
/* === SISTALEX_PRINCIPAL_V19_SEMAFORO_COMPACTO_END === */

/* === SISTALEX_LOGO_APROBADO_FINAL_START ===
   Logo aprobado: usa la imagen exacta del diseño validado por Franco.
   No cambia el color general de la barra lateral ni la lógica del sistema.
*/

body.sj-body .sidebar-brand{
  min-height:104px!important;
  padding:16px 12px 14px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
  background:transparent!important;
  border-bottom:1px solid rgba(255,255,255,.08)!important;
}

body.sj-body .brand-logo-full{
  width:min(232px, calc(var(--sw,260px) - 26px))!important;
  max-width:calc(var(--sw,260px) - 26px)!important;
  height:auto!important;
  max-height:76px!important;
  display:block!important;
  object-fit:contain!important;
  object-position:center!important;
  border-radius:0!important;
  image-rendering:auto!important;
  filter:none!important;
  transform:none!important;
}

body.sj-body .brand-logo-mark{
  display:none!important;
  width:46px!important;
  max-width:46px!important;
  height:46px!important;
  object-fit:contain!important;
  object-position:center!important;
  border-radius:12px!important;
  image-rendering:auto!important;
  filter:none!important;
  transform:none!important;
}

body.sj-body .sidebar.collapsed .sidebar-brand{
  min-height:78px!important;
  padding:12px 8px!important;
  justify-content:center!important;
}

body.sj-body .sidebar.collapsed .brand-logo-full{
  display:none!important;
}

body.sj-body .sidebar.collapsed .brand-logo-mark{
  display:block!important;
  width:46px!important;
  height:46px!important;
}

/* Login: muestra el logo aprobado como banner nítido, sin estirarlo */
body.endpoint-auth-login .auth-panel-brand,
body.endpoint-login .auth-panel-brand{
  width:100%!important;
  display:flex!important;
  justify-content:center!important;
  align-items:center!important;
  margin:0 auto 24px!important;
  text-align:center!important;
}

body.endpoint-auth-login .auth-panel-logo,
body.endpoint-login .auth-panel-logo{
  width:min(430px, 94%)!important;
  max-width:430px!important;
  height:auto!important;
  display:block!important;
  margin:0 auto!important;
  object-fit:contain!important;
  object-position:center!important;
  border-radius:18px!important;
  image-rendering:auto!important;
  filter:none!important;
  transform:none!important;
  box-shadow:0 16px 36px rgba(6,24,50,.16)!important;
}

@media (max-width: 768px){
  body.endpoint-auth-login .auth-panel-logo,
  body.endpoint-login .auth-panel-logo{
    width:min(360px, 92%)!important;
    max-width:360px!important;
  }
}

/* === SISTALEX_LOGO_APROBADO_FINAL_END === */



/* === SISTALEX_LOGIN_AZUL_UNIFICADO_START ===
   Unifica el azul del logo, login y sidebar.
   El logo queda con fondo transparente y se apoya sobre el mismo navy del sistema.
*/
:root{
  --sx-logo-navy:#07152D;
  --sx-logo-navy-2:#0D1B3D;
  --sx-logo-navy-3:#12376F;
}

/* Sidebar: el logo ya no trae rectángulo azul propio; se integra al fondo real del menú */
body.sj-body .sidebar-brand{
  min-height:104px!important;
  padding:18px 14px 14px!important;
  background:transparent!important;
  border-bottom:1px solid rgba(255,255,255,.08)!important;
}
body.sj-body .brand-logo-full{
  width:min(224px, calc(var(--sw,252px) - 28px))!important;
  max-width:calc(var(--sw,252px) - 28px)!important;
  max-height:76px!important;
  height:auto!important;
  object-fit:contain!important;
  object-position:center!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  filter:none!important;
}
body.sj-body .brand-logo-mark{
  width:46px!important;
  height:46px!important;
  padding:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  object-fit:contain!important;
  filter:none!important;
}
body.sj-body .sidebar.collapsed .brand-logo-mark{
  width:46px!important;
  height:46px!important;
  background:transparent!important;
}

/* Login: mismo azul institucional, sin choque de tonos */
body.endpoint-auth-login .auth-shell,
body.endpoint-login .auth-shell{
  min-height:100vh!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:34px 22px!important;
  background:
    radial-gradient(circle at 10% 0%, rgba(18,55,111,.22), transparent 30%),
    linear-gradient(180deg,#F5F8FC 0%,#EEF3F9 100%)!important;
}
body.endpoint-auth-login .auth-shell::before,
body.endpoint-login .auth-shell::before{
  height:205px!important;
  background:
    radial-gradient(circle at 18% 0%, rgba(255,255,255,.05), transparent 28%),
    linear-gradient(135deg,var(--sx-logo-navy) 0%,var(--sx-logo-navy-2) 58%,var(--sx-logo-navy) 100%)!important;
  box-shadow:0 14px 34px rgba(7,21,45,.16)!important;
}
body.endpoint-auth-login .auth-panel,
body.endpoint-login .auth-panel{
  max-width:560px!important;
  border-radius:22px!important;
  padding:42px 40px 34px!important;
  background:#fff!important;
  border:1px solid #DCE6F1!important;
  box-shadow:0 28px 62px rgba(7,21,45,.16)!important;
}

/* Contenedor azul del logo del login usa el mismo navy del encabezado */
body.endpoint-auth-login .auth-panel-brand,
body.endpoint-login .auth-panel-brand{
  width:min(430px,94%)!important;
  margin:0 auto 24px!important;
  padding:14px 22px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:18px!important;
  background:
    radial-gradient(circle at 16% 0%, rgba(255,255,255,.05), transparent 30%),
    linear-gradient(135deg,var(--sx-logo-navy) 0%,var(--sx-logo-navy-2) 58%,var(--sx-logo-navy) 100%)!important;
  border:1px solid rgba(255,255,255,.08)!important;
  box-shadow:0 16px 36px rgba(7,21,45,.18)!important;
}
body.endpoint-auth-login .auth-panel-logo,
body.endpoint-login .auth-panel-logo{
  width:100%!important;
  max-width:386px!important;
  height:auto!important;
  display:block!important;
  margin:0!important;
  object-fit:contain!important;
  object-position:center!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  filter:none!important;
}

/* Botón principal alineado al azul institucional */
body.endpoint-auth-login .auth-panel .btn-primary,
body.endpoint-login .auth-panel .btn-primary{
  min-height:52px!important;
  border-radius:10px!important;
  background:linear-gradient(135deg,var(--sx-logo-navy-2) 0%,var(--sx-logo-navy-3) 100%)!important;
  border-color:var(--sx-logo-navy-2)!important;
  box-shadow:0 10px 22px rgba(7,21,45,.18)!important;
}
body.endpoint-auth-login .auth-panel .btn-primary:hover,
body.endpoint-login .auth-panel .btn-primary:hover{
  background:linear-gradient(135deg,var(--sx-logo-navy) 0%,var(--sx-logo-navy-2) 100%)!important;
  border-color:var(--sx-logo-navy)!important;
}

@media (max-width:575.98px){
  body.endpoint-auth-login .auth-panel,
  body.endpoint-login .auth-panel{
    padding:32px 24px 28px!important;
  }
  body.endpoint-auth-login .auth-panel-brand,
  body.endpoint-login .auth-panel-brand{
    width:min(360px,92%)!important;
    padding:12px 16px!important;
  }
  body.endpoint-auth-login .auth-panel-logo,
  body.endpoint-login .auth-panel-logo{
    max-width:320px!important;
  }
}
/* === SISTALEX_LOGIN_AZUL_UNIFICADO_END === */
