/*
 * Apariencia compartida para módulos administrativos heredados.
 * Complementa las vistas especializadas sin cambiar su lógica.
 */
.app-main__inner{color:#273142}
.app-main__inner>.content{
  border:1px solid #e3e9f1!important;
  border-radius:14px!important;
  background:#fff!important;
  box-shadow:0 7px 22px rgba(31,45,61,.05)!important
}
.app-main__inner>.content:first-child:has(.btnmenu){
  min-height:64px;
  padding:10px 14px!important
}
.app-main__inner>.content:first-child:has(.btnmenu) .row{
  width:auto;
  max-width:100%;
  margin:0;
  gap:9px
}
.app-main__inner .btnmenu{
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  width:auto!important;
  min-width:46px;
  max-width:none;
  min-height:42px;
  margin:0!important;
  padding:10px 16px!important;
  border:1px solid #d8e0ea!important;
  border-radius:10px!important;
  color:#526072!important;
  background:#fff!important;
  box-shadow:none!important;
  transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease!important
}
.app-main__inner .btnmenu:first-child{
  border-color:#4169d8!important;
  color:#fff!important;
  background:linear-gradient(135deg,#5277dc,#365dca)!important;
  box-shadow:0 7px 16px rgba(65,105,216,.18)!important
}
.app-main__inner .btnmenu:hover{
  transform:translateY(-1px);
  border-color:#9fb3e8!important;
  color:#3157bb!important;
  box-shadow:0 7px 16px rgba(31,45,61,.09)!important
}
.app-main__inner .btnmenu:first-child:hover{color:#fff!important}
.app-main__inner .btnmenu i{font-size:14px}

/* Tablas y controles DataTables */
.app-main__inner .dataTables_wrapper{
  width:100%;
  padding:16px 16px 12px;
  color:#657184
}
.app-main__inner .dataTables_wrapper .dataTables_length,
.app-main__inner .dataTables_wrapper .dataTables_filter{margin-bottom:14px}
.app-main__inner .dataTables_wrapper .dataTables_filter input,
.app-main__inner .dataTables_wrapper .dataTables_length select{
  min-height:38px;
  padding:6px 10px;
  border:1px solid #d7dfea;
  border-radius:9px;
  outline:0;
  color:#344054;
  background:#fbfcfe
}
.app-main__inner .dataTables_wrapper .dataTables_filter input:focus,
.app-main__inner .dataTables_wrapper .dataTables_length select:focus{
  border-color:#7191e5;
  box-shadow:0 0 0 3px rgba(65,105,216,.12)
}
.app-main__inner table.dataTable,
.app-main__inner table.table{
  overflow:hidden;
  border:0!important;
  border-radius:10px
}
.app-main__inner table.dataTable thead th,
.app-main__inner table.dataTable thead td,
.app-main__inner .table thead th,
.app-main__inner .table thead td{
  padding:12px!important;
  border:0!important;
  border-bottom:1px solid #e2e8f0!important;
  color:#667085!important;
  background:#f6f8fb!important;
  font-size:11px;
  font-weight:750;
  letter-spacing:.035em;
  text-transform:uppercase
}
.app-main__inner table.dataTable tbody td,
.app-main__inner .table tbody td{
  padding:12px!important;
  vertical-align:middle;
  border-color:#edf0f4!important;
  background:#fff
}
.app-main__inner table.dataTable tbody tr:hover td,
.app-main__inner .table tbody tr:hover td{background:#f8faff}
.app-main__inner .dataTables_wrapper .dataTables_paginate .paginate_button{
  min-width:34px;
  margin:0 2px;
  padding:7px 10px!important;
  border:1px solid transparent!important;
  border-radius:8px!important
}
.app-main__inner .dataTables_wrapper .dataTables_paginate .paginate_button.current{
  border-color:#4169d8!important;
  color:#fff!important;
  background:#4169d8!important
}

/* Alertas dentro de formularios */
.modal form .alert,.app-main__inner form .alert{
  border:0;
  border-radius:10px;
  font-size:12px
}
.modal form .alert-warning{color:#875d00;background:#fff4d6}
.modal form .alert-success{color:#176f49;background:#e5f8ee}
.modal form .alert-danger{color:#a72943;background:#feecef}
.user-avatar-thumb{
  display:block;
  width:48px;
  height:48px;
  border:2px solid #fff;
  border-radius:12px;
  background:#edf2ff;
  box-shadow:0 0 0 1px #dce3ed,0 4px 10px rgba(31,45,61,.09);
  object-fit:cover
}

/* Armonización de módulos temáticos */
body.theme-black .app-main__inner>.content,
body.theme-black .app-main__inner table.dataTable tbody td,
body.theme-black .app-main__inner .table tbody td{
  border-color:#273544!important;
  color:#d6dfe8!important;
  background:#111923!important
}
body.theme-matrix .app-main__inner>.content,
body.theme-matrix .app-main__inner table.dataTable tbody td,
body.theme-matrix .app-main__inner .table tbody td{
  border-color:#175f35!important;
  color:#a9eec2!important;
  background:#06130c!important
}
body.theme-matrix .app-main__inner .btnmenu:first-child{
  border-color:#31e978!important;
  color:#001b0c!important;
  background:#31e978!important
}

@media(max-width:767px){
  .app-main__inner>.content:first-child:has(.btnmenu) .row{flex-wrap:wrap}
  .app-main__inner .btnmenu{flex:1 1 44px}
  .app-main__inner .dataTables_wrapper{padding:12px}
  .app-main__inner .dataTables_wrapper .dataTables_filter,
  .app-main__inner .dataTables_wrapper .dataTables_length{float:none;text-align:left}
  .app-main__inner .dataTables_wrapper .dataTables_filter input{width:calc(100% - 70px)}
}
@media(prefers-reduced-motion:reduce){
  .app-main__inner .btnmenu{transition:none!important}
}
