html {
  box-sizing: border-box;
}

*,
*:before,
*:after {
  box-sizing: inherit;
}

body.gi-cli,
body.gi-cli-nav {
  margin: 0;
  padding: 0;
  background: #f4f7fb;
  color: #1f2933;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 12px;
  line-height: 1.35;
}

body.gi-cli form,
body.gi-cli-nav form {
  margin: 0;
}

body.gi-cli table,
body.gi-cli-nav table {
  max-width: 100%;
}

body.gi-cli td,
body.gi-cli-nav td {
  vertical-align: top;
}

body.gi-cli input,
body.gi-cli select,
body.gi-cli textarea,
body.gi-cli-nav input,
body.gi-cli-nav select,
body.gi-cli-nav textarea {
  box-sizing: border-box;
  border: 1px solid #b8c5d4;
  border-radius: 5px;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 12px;
}

body.gi-cli input[type="text"],
body.gi-cli select,
body.gi-cli textarea {
  min-height: 28px;
  padding: 5px 7px;
  background: #ffffff;
  color: #1f2933;
}

body.gi-cli input[type="text"]:focus,
body.gi-cli select:focus,
body.gi-cli textarea:focus {
  outline: 2px solid rgba(255, 151, 0, 0.22);
  border-color: #ff9700;
}

body.gi-cli input[type="button"],
body.gi-cli-nav input[type="button"] {
  min-height: 28px;
  margin: 2px 3px 2px 0;
  padding: 5px 11px;
  border: 1px solid #b8c5d4;
  border-radius: 6px;
  background: #ffffff;
  color: #1f2933;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 12px;
  font-weight: 700;
  cursor: pointer;
}

body.gi-cli input[type="button"]:hover,
body.gi-cli-nav input[type="button"]:hover {
  border-color: #ff9700;
  background: #fff6ea;
}

body.gi-cli input[type="button"][disabled],
body.gi-cli-nav input[type="button"][disabled] {
  border-color: #c9d2dd !important;
  background: #eef2f6 !important;
  color: #7b8794 !important;
  cursor: not-allowed;
  opacity: 0.75;
}

body.gi-cli input[type="button"][value="Grabar"],
body.gi-cli input[type="button"][value="Buscar"],
body.gi-cli input[type="button"][value="Nueva Encuesta"] {
  border-color: #ff9700;
  background: #ff9700;
  color: #ffffff;
}

body.gi-cli input[type="button"][value="Grabar"]:hover,
body.gi-cli input[type="button"][value="Buscar"]:hover,
body.gi-cli input[type="button"][value="Nueva Encuesta"]:hover {
  border-color: #ff9700;
  background: #fff6ea;
  color: #1f2933;
}

body.gi-cli input[type="button"][value="Limpiar"] {
  border-color: #b8c5d4;
  background: #ffffff;
  color: #1f2933;
}

body.gi-cli-toolbar-page input.gi-cli-top-active,
body.gi-cli-toolbar-page input.gi-cli-top-active:hover {
  border-color: #326BF5 !important;
  background: #326BF5 !important;
  color: #ffffff !important;
}

body.gi-cli-toolbar-page input[value="Cerrar"],
body.gi-cli-toolbar-page input.gi-cli-return-action,
body.gi-cli input[value="Volver"],
body.gi-cli input[value="Cerrar"] {
  border-color: #19984f !important;
  background: #effaf3 !important;
  color: #126b38 !important;
}

.gi-cli-topbar {
  min-height: 78px;
  margin: 8px 10px 6px;
  border: 1px solid #d5dee9;
  border-radius: 8px;
  background: #ffffff;
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.08);
  overflow: hidden;
}

.gi-cli-topbar__title {
  display: flex;
  align-items: center;
  min-height: 32px;
  margin: 0;
  padding: 7px 12px;
  border-bottom: 1px solid #d5dee9;
  background: #326BF5;
  color: #ffffff;
  font-size: 15px;
  font-weight: 700;
  letter-spacing: 0;
}

.gi-cli-topbar__title::before {
  content: "";
  align-self: stretch;
  width: 20px;
  margin: -7px 12px -7px -12px;
  background: #2957C7;
}

.gi-cli-topbar__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  align-items: center;
  padding: 7px 10px;
  background: #f8fbfe;
}

.gi-cli-shell {
  min-height: 100vh;
  padding: 8px 10px;
  box-sizing: border-box;
}

.gi-cli-card {
  width: 100%;
  border: 1px solid #d5dee9;
  border-radius: 8px;
  background: #ffffff;
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.08);
  overflow: hidden;
}

.gi-cli-title {
  display: flex;
  align-items: center;
  min-height: 32px;
  padding: 7px 12px;
  border-bottom: 1px solid #d5dee9;
  background: #326BF5;
  color: #ffffff;
  font-size: 15px;
  font-weight: 700;
  letter-spacing: 0;
}

.gi-cli-title::before {
  content: "";
  align-self: stretch;
  width: 20px;
  margin: -7px 12px -7px -12px;
  background: #2957C7;
}

.gi-cli-section {
  padding: 10px;
  border-bottom: 1px solid #d5dee9;
  background: #ffffff;
}

.gi-cli-section--soft {
  background: #f8fbfe;
}

.gi-cli-section-label {
  margin-bottom: 7px;
  color: #1f2933;
  font-weight: 700;
}

.gi-cli-filter-grid {
  display: grid;
  grid-template-columns: minmax(140px, 1fr) minmax(150px, 1fr) 150px auto;
  gap: 8px 14px;
  align-items: end;
}

.gi-cli-filter-grid--reportes {
  grid-template-columns: minmax(180px, 1.2fr) 110px 110px minmax(150px, 1fr) auto;
}

.gi-cli-field label {
  display: block;
  margin-bottom: 4px;
  color: #1f2933;
  font-weight: 700;
}

.gi-cli-field input[type="text"],
.gi-cli-field select {
  width: 100% !important;
}

.gi-cli-date-field img {
  margin-left: 4px;
  vertical-align: middle;
}

.gi-cli-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  align-items: center;
}

.gi-cli-form-grid {
  display: grid;
  grid-template-columns: 160px minmax(180px, 380px);
  gap: 9px 10px;
  align-items: center;
}

.gi-cli-form-grid--compact {
  grid-template-columns: 130px minmax(260px, 1fr);
}

.gi-cli-form-grid label {
  color: #1f2933;
  font-weight: 700;
}

.gi-cli-form-grid input[type="text"],
.gi-cli-form-grid select {
  width: 100% !important;
}

.gi-cli-field-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}

.gi-cli-message {
  color: #126b38;
  font-weight: 700;
}

.gi-cli-list-heading {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 9px 10px;
  border-bottom: 1px solid #d5dee9;
  background: #f8fbfe;
  color: #1f2933;
  font-weight: 700;
}

.gi-cli-legend {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  color: #5a6b7d;
  font-weight: 600;
}

.gi-cli-legend img,
body.gi-cli table img {
  vertical-align: middle;
}

body.gi-cli table {
  border-color: #d5dee9 !important;
}

body.gi-cli .tittable td,
body.gi-cli tr.tittable td {
  padding: 7px 6px;
  border-color: #d5dee9 !important;
  background: #e8eef6 !important;
  color: #1f2933 !important;
  font-weight: 700;
}

body.gi-cli table[border="1"] {
  border-color: #d5dee9 !important;
}

body.gi-cli table[border="1"] td {
  border-color: #d5dee9 !important;
}

body.gi-cli table[border="1"] tr:not(.tittable) td {
  min-height: 28px;
  padding: 5px 6px;
}

body.gi-cli table[border="1"] tr:not(.tittable):hover td {
  background: #fbfcfe;
}

body.gi-cli .gi-cli-scroll,
body.gi-cli div[style*="overflow-y:scroll"],
body.gi-cli div[style*="overflow-y: scroll"] {
  border-top: 0;
  background: #ffffff;
}

.gi-cli-card--form {
  max-width: 650px;
}

.gi-cli-shell--dialog {
  min-height: 0;
}

body.gi-cli-encuesta {
  background: #f4f7fb;
}

body.gi-cli-encuesta .gi-cli-shell {
  padding: 8px;
}

body.gi-cli-encuesta .gi-cli-title {
  font-size: 15px;
}

@media (max-width: 820px) {
  .gi-cli-filter-grid,
  .gi-cli-filter-grid--reportes,
  .gi-cli-form-grid,
  .gi-cli-form-grid--compact {
    grid-template-columns: 1fr;
  }
}
body.gi-cli-listado .gi-cli-card {
  height: calc(100vh - 18px);
  overflow: hidden;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
}
body.gi-cli-listado .gi-cli-client-list-section {
  flex: 1 1 auto;
  min-height: 0;
  display: flex;
  flex-direction: column;
}
body.gi-cli-listado .gi-cli-list-scroll {
  flex: 1 1 auto;
  min-height: 0;
  width: 100%;
  overflow-y: scroll !important;
  overflow-x: auto;
}
body.gi-cli-registro .gi-cli-card--form {
  max-width: none;
  min-height: calc(100vh - 18px);
  box-sizing: border-box;
}

body.gi-cli-registro .gi-cli-section {
  padding: 16px 18px;
}

body.gi-cli-registro .gi-cli-form-grid {
  grid-template-columns: 155px minmax(220px, 1fr) 155px minmax(220px, 1fr);
  gap: 12px 16px;
  align-items: center;
}

body.gi-cli-registro .gi-cli-form-grid > div input[type="text"],
body.gi-cli-registro .gi-cli-form-grid > div select {
  width: 100% !important;
}

body.gi-cli-registro .gi-cli-actions {
  grid-column: 2 / 5;
}
body.gi-cli-reporte .gi-cli-card {
  height: calc(100vh - 18px);
  overflow: hidden;
  box-sizing: border-box;
}

body.gi-cli-reporte .gi-cli-report-filter-grid {
  display: grid;
  grid-template-columns: minmax(220px, 1.3fr) 132px 132px minmax(190px, 1fr) auto;
  gap: 8px 14px;
  align-items: end;
}

body.gi-cli-reporte .gi-cli-report-filter-grid input[type="text"],
body.gi-cli-reporte .gi-cli-report-filter-grid select {
  width: 100% !important;
}

body.gi-cli-reporte .gi-cli-date-inline {
  display: flex;
  align-items: center;
  gap: 5px;
}

body.gi-cli-reporte .gi-cli-date-inline input[type="text"] {
  width: 94px !important;
}

body.gi-cli-reporte img.gi-date-icon {
  width: 22px;
  height: 22px;
  padding: 3px;
  border: 1px solid #b8c5d4;
  border-radius: 6px;
  background: #ffffff;
  cursor: pointer;
  box-sizing: border-box;
}

body.gi-cli-reporte img.gi-date-icon:hover {
  border-color: #ff9700;
  background: #fff6ea;
}

body.gi-cli-reporte .gi-cli-report-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 0 0 8px;
  color: #1f2933;
  font-weight: 700;
}

body.gi-cli-reporte .gi-cli-report-scroll {
  height: 315px;
  max-height: 315px;
  overflow-y: scroll;
  overflow-x: auto;
  border: 1px solid #d5dee9;
  background: #ffffff;
}

body.gi-cli-reporte .gi-cli-report-table {
  table-layout: fixed;
  border: 0 !important;
}

body.gi-cli-reporte .gi-cli-report-table thead td {
  position: sticky;
  top: 0;
  z-index: 2;
}

body.gi-cli-reporte .gi-cli-report-col-num { width: 42px; }
body.gi-cli-reporte .gi-cli-report-col-id { width: 110px; }
body.gi-cli-reporte .gi-cli-report-col-name { width: 28%; }
body.gi-cli-reporte .gi-cli-report-col-type { width: 170px; }
body.gi-cli-reporte .gi-cli-report-col-date { width: 105px; }
body.gi-cli-reporte .gi-cli-report-col-service { width: 28%; }
body.gi-cli-reporte .gi-cli-report-col-result { width: 105px; }

body.gi-cli-reporte .gi-date-picker {
  position: absolute;
  z-index: 9999;
  width: 222px;
  padding: 8px;
  border: 1px solid #b8c5d4;
  border-radius: 8px;
  background: #ffffff;
  box-shadow: 0 14px 28px rgba(15, 23, 42, 0.18);
  color: #1f2933;
  font-family: Arial, Helvetica, sans-serif;
  overflow: hidden;
}

body.gi-cli-reporte .gi-date-head { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin-bottom: 6px; }
body.gi-cli-reporte .gi-date-title { flex: 1; color: #17212f; font-size: 12px; font-weight: 700; text-align: center; }
body.gi-cli-reporte .gi-date-picker button { box-sizing: border-box; min-width: 0; min-height: 0; margin: 0; padding: 0; border-radius: 6px; font-size: 11px; line-height: 1; }
body.gi-cli-reporte .gi-date-nav { width: 28px; height: 26px; padding: 0; }
body.gi-cli-reporte .gi-date-grid { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 3px; }
body.gi-cli-reporte .gi-date-week { margin-bottom: 5px; color: #5a6b7d; font-size: 11px; font-weight: 700; text-align: center; }
body.gi-cli-reporte .gi-date-empty { height: 25px; }
body.gi-cli-reporte .gi-date-day { display: flex; align-items: center; justify-content: center; width: 100%; height: 25px; padding: 0; border: 1px solid transparent; background: #f7fafc; color: #1f2933; }
body.gi-cli-reporte .gi-date-day:hover { border-color: #ff9700; background: #fff6ea; }
body.gi-cli-reporte .gi-date-day.is-today { border-color: #19984f; }
body.gi-cli-reporte .gi-date-day.is-selected { border-color: #ff9700; background: #ff9700; color: #ffffff; }
body.gi-cli-reporte .gi-date-actions { display: flex; justify-content: flex-end; gap: 6px; margin-top: 8px; }
body.gi-cli-reporte .gi-date-actions button { padding: 5px 7px; }
body.gi-cli-reporte .gi-date-picker.gi-date-picker-compact { width: 164px; padding: 4px; border-radius: 6px; }
body.gi-cli-reporte .gi-date-picker-compact .gi-date-head { gap: 3px; margin-bottom: 3px; }
body.gi-cli-reporte .gi-date-picker-compact .gi-date-title { font-size: 10px; }
body.gi-cli-reporte .gi-date-picker-compact .gi-date-nav { width: 20px; height: 18px; }
body.gi-cli-reporte .gi-date-picker-compact .gi-date-grid { gap: 1px; }
body.gi-cli-reporte .gi-date-picker-compact .gi-date-week { margin-bottom: 2px; font-size: 10px; }
body.gi-cli-reporte .gi-date-picker-compact .gi-date-empty,
body.gi-cli-reporte .gi-date-picker-compact .gi-date-day { height: 16px; }
body.gi-cli-reporte .gi-date-picker-compact .gi-date-day { font-size: 10px; }
body.gi-cli-param-nav .gi-cli-param-shell {
  min-height: calc(100vh - 18px);
  padding: 8px 10px;
  box-sizing: border-box;
}

body.gi-cli-param-nav .gi-cli-param-card {
  height: calc(100vh - 18px);
  overflow: hidden;
  box-sizing: border-box;
}

body.gi-cli-param-nav .gi-cli-param-menu {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
  padding: 10px 12px;
  border-bottom: 1px solid #d5dee9;
  background: #f8fbfe;
}

body.gi-cli-param-nav input.gi-cli-param-active,
body.gi-cli-param-nav input.gi-cli-param-active:hover {
  border-color: #326BF5 !important;
  background: #326BF5 !important;
  color: #ffffff !important;
}

body.gi-cli-param-nav .gi-cli-param-frame-wrap {
  height: calc(100vh - 125px);
  min-height: 390px;
  background: #ffffff;
}

body.gi-cli-param-nav .gi-cli-param-frame {
  display: block;
  width: 100%;
  height: 100%;
}

body.gi-cli-param-page {
  background: #ffffff;
}

body.gi-cli-param-page form {
  padding: 0;
}

body.gi-cli-param-page > form > table {
  width: 100% !important;
  border: 0 !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  background: #ffffff;
}

body.gi-cli-param-page > form > table > tbody > tr:first-child,
body.gi-cli-param-page > form > table > tr:first-child {
  display: none;
}

body.gi-cli-param-page > form > table > tbody > tr > td,
body.gi-cli-param-page > form > table > tr > td {
  border-color: #d5dee9 !important;
}

body.gi-cli-param-page > form > table > tbody > tr:nth-child(2) > td,
body.gi-cli-param-page > form > table > tr:nth-child(2) > td {
  padding: 12px !important;
  background: #f8fbfe;
  border-bottom: 1px solid #d5dee9 !important;
}

body.gi-cli-param-page > form > table > tbody > tr:nth-child(3) > td,
body.gi-cli-param-page > form > table > tr:nth-child(3) > td {
  padding: 10px 12px !important;
  background: #ffffff;
}

body.gi-cli-param-page > form > table > tbody > tr:nth-child(2) table,
body.gi-cli-param-page > form > table > tr:nth-child(2) table,
body.gi-cli-param-page > form > table > tbody > tr:nth-child(3) table,
body.gi-cli-param-page > form > table > tr:nth-child(3) table {
  width: 100%;
}

body.gi-cli-param-page input[type="text"],
body.gi-cli-param-page select {
  min-height: 30px;
}

body.gi-cli-param-page table[border="1"] {
  width: 100% !important;
  border-color: #d5dee9 !important;
}

body.gi-cli-param-page .tittable td,
body.gi-cli-param-page tr.tittable td {
  background: #e8eef6 !important;
  color: #1f2933 !important;
}
body.gi-cli-param-tipos .gi-cli-param-type-form {
  width: 100% !important;
  max-width: none;
  table-layout: auto;
}

body.gi-cli-param-tipos .gi-cli-param-type-form tbody,
body.gi-cli-param-tipos .gi-cli-param-type-form tr,
body.gi-cli-param-tipos .gi-cli-param-type-form td {
  display: block;
  border: 0 !important;
}

body.gi-cli-param-tipos .gi-cli-param-type-form tbody {
  display: grid;
  grid-template-columns: max-content minmax(300px, 450px) max-content 74px max-content 74px minmax(230px, 1fr);
  gap: 8px 14px;
  align-items: center;
}

body.gi-cli-param-tipos .gi-cli-param-type-form tr {
  display: contents;
}

body.gi-cli-param-tipos .gi-cli-param-type-form td {
  min-height: 38px;
  padding: 0 !important;
  white-space: nowrap;
  display: flex;
  align-items: center;
}

body.gi-cli-param-tipos .gi-cli-param-type-form tr:nth-child(1) td:nth-child(1) { grid-column: 1; grid-row: 1; }
body.gi-cli-param-tipos .gi-cli-param-type-form tr:nth-child(1) td:nth-child(2) { grid-column: 2; grid-row: 1; }
body.gi-cli-param-tipos .gi-cli-param-type-form tr:nth-child(2) td:nth-child(1) { grid-column: 3; grid-row: 1; }
body.gi-cli-param-tipos .gi-cli-param-type-form tr:nth-child(2) td:nth-child(2) { grid-column: 4; grid-row: 1; }
body.gi-cli-param-tipos .gi-cli-param-type-form tr:nth-child(3) td:nth-child(1) { grid-column: 5; grid-row: 1; }
body.gi-cli-param-tipos .gi-cli-param-type-form tr:nth-child(3) td:nth-child(2) { grid-column: 6; grid-row: 1; }
body.gi-cli-param-tipos .gi-cli-param-type-form tr:nth-child(4) td {
  grid-column: 7;
  grid-row: 1;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
}

body.gi-cli-param-tipos .gi-cli-param-type-form input#tbxTipoCliente { width: 100% !important; }
body.gi-cli-param-tipos .gi-cli-param-type-form input#tbxDesde,
body.gi-cli-param-tipos .gi-cli-param-type-form input#tbxHasta { width: 66px !important; }

body.gi-cli-param-tipos .gi-cli-param-list-legend {
  width: 100% !important;
  border: 0 !important;
}

body.gi-cli-param-tipos .gi-cli-param-list-legend td {
  border: 0 !important;
  padding: 4px 8px !important;
}
body.gi-cli-param-tipos > form > table,
body.gi-cli-param-tipos > form > table > tbody > tr > td,
body.gi-cli-param-tipos > form > table > tr > td {
  border: 0 !important;
}

body.gi-cli-param-tipos > form > table > tbody > tr:nth-child(2) > td,
body.gi-cli-param-tipos > form > table > tr:nth-child(2) > td {
  border-bottom: 1px solid #cfd8e3 !important;
}

body.gi-cli-param-tipos .gi-cli-param-type-form input[type="text"] {
  box-sizing: border-box;
}
body.gi-cli-param-tipos .gi-cli-param-table-wrap {
  width: 100%;
  height: 160px;
  overflow-y: auto;
  border: 1px solid #cfd8e3;
  border-radius: 6px;
  box-sizing: border-box;
}

body.gi-cli-param-tipos .gi-cli-param-data-table {
  width: 100% !important;
  border: 0 !important;
  border-collapse: collapse !important;
}

body.gi-cli-param-tipos .gi-cli-param-data-table td {
  border-color: #d5dee9 !important;
}

body.gi-cli-param-tipos .gi-cli-param-data-table tr.tittable td {
  border-top: 0 !important;
}

body.gi-cli-param-tipos .gi-cli-param-data-table tr td:first-child {
  border-left: 0 !important;
}

body.gi-cli-param-tipos .gi-cli-param-data-table tr td:last-child {
  border-right: 0 !important;
}
body.gi-cli-param-tipos .gi-cli-param-data-table tr td:nth-child(1),
body.gi-cli-param-tipos .gi-cli-param-data-table tr td:nth-child(2),
body.gi-cli-param-tipos .gi-cli-param-data-table tr td:nth-child(6) {
  text-align: center !important;
  vertical-align: middle !important;
}
body.gi-cli-param-criterios > form > table,
body.gi-cli-param-criterios > form > table > tbody > tr > td,
body.gi-cli-param-criterios > form > table > tr > td {
  border: 0 !important;
}

body.gi-cli-param-criterios > form > table > tbody > tr:nth-child(2) > td,
body.gi-cli-param-criterios > form > table > tr:nth-child(2) > td {
  border-bottom: 1px solid #cfd8e3 !important;
}

body.gi-cli-param-criterios .gi-cli-param-criteria-form {
  width: 100% !important;
  border: 0 !important;
  table-layout: fixed;
}

body.gi-cli-param-criterios .gi-cli-param-criteria-form td {
  border: 0 !important;
  padding: 4px 8px !important;
  vertical-align: middle !important;
}

body.gi-cli-param-criterios .gi-cli-param-label {
  width: 135px;
  white-space: nowrap;
}

body.gi-cli-param-criterios .gi-cli-param-field input#tbxCriterioEncuesta {
  width: 100% !important;
  box-sizing: border-box;
}

body.gi-cli-param-criterios .gi-cli-param-type-select {
  width: 470px;
  white-space: nowrap;
}

body.gi-cli-param-criterios .gi-cli-param-type-select select {
  width: 245px;
  margin-right: 8px;
}

body.gi-cli-param-criterios .gi-cli-param-ranges {
  color: #334155;
  white-space: nowrap;
}

body.gi-cli-param-criterios .gi-cli-param-weight {
  width: 390px;
  white-space: nowrap;
}

body.gi-cli-param-criterios .gi-cli-param-weight input#tbxPonderacion {
  width: 64px !important;
  margin: 0 4px 0 10px;
  box-sizing: border-box;
}

body.gi-cli-param-criterios .gi-cli-param-total {
  display: inline-block;
  margin-left: 14px;
  color: #334155;
  font-weight: 700;
}

body.gi-cli-param-criterios .gi-cli-param-actions {
  text-align: right;
  white-space: nowrap;
}

body.gi-cli-param-criterios .gi-cli-param-actions input[type="button"] {
  margin-left: 8px;
}
body.gi-cli-param-criterios .gi-cli-param-list-legend {
  width: 100% !important;
  border: 0 !important;
}

body.gi-cli-param-criterios .gi-cli-param-list-legend td {
  border: 0 !important;
  padding: 4px 8px !important;
}

body.gi-cli-param-criterios .gi-cli-param-criteria-table-wrap {
  height: 160px;
}

body.gi-cli-param-criterios .gi-cli-param-criteria-table tr td:nth-child(1),
body.gi-cli-param-criterios .gi-cli-param-criteria-table tr td:nth-child(2),
body.gi-cli-param-criterios .gi-cli-param-criteria-table tr td:nth-child(5) {
  text-align: center !important;
  vertical-align: middle !important;
}

body.gi-cli-param-criterios .gi-cli-param-criteria-table tr td:nth-child(4) {
  text-align: center;
}

body.gi-cli-param-criterios .gi-cli-param-criteria-table .gi-cli-param-total-row td {
  background: #f8fbfe;
  font-weight: 700;
}
body.gi-cli-param-criterios .gi-cli-param-criteria-table-wrap {
  border-radius: 6px;
  overflow: auto;
}

body.gi-cli-param-criterios .gi-cli-param-criteria-table tr:first-child td:first-child {
  border-top-left-radius: 5px;
}

body.gi-cli-param-criterios .gi-cli-param-criteria-table tr:first-child td:last-child {
  border-top-right-radius: 5px;
}

body.gi-cli-param-criterios .gi-cli-param-criteria-table .gi-cli-param-total-row td:nth-child(3) {
  text-align: right !important;
}

body.gi-cli-param-criterios .gi-cli-param-criteria-table .gi-cli-param-total-row td:nth-child(4) {
  text-align: center !important;
}
body.gi-cli-param-criterios .gi-cli-param-criteria-table .gi-cli-param-total-row td:nth-child(2) {
  text-align: right !important;
}

body.gi-cli-param-criterios .gi-cli-param-criteria-table .gi-cli-param-total-row td:nth-child(3) {
  text-align: center !important;
}
body.gi-cli-listado .gi-cli-list-scroll {
  border: 1px solid #cfd8e3;
  border-radius: 6px;
  box-sizing: border-box;
}

body.gi-cli-listado .gi-cli-client-table {
  border: 0 !important;
  table-layout: fixed;
}

body.gi-cli-listado .gi-cli-client-table tr:first-child td:first-child {
  border-top-left-radius: 5px;
}

body.gi-cli-listado .gi-cli-client-table tr:first-child td:last-child {
  border-top-right-radius: 5px;
}

body.gi-cli-listado .gi-cli-client-table tr td:nth-child(1),
body.gi-cli-listado .gi-cli-client-table tr td:nth-child(2),
body.gi-cli-listado .gi-cli-client-table tr td:nth-child(8),
body.gi-cli-listado .gi-cli-client-table tr td:nth-child(9),
body.gi-cli-listado .gi-cli-client-table tr td:nth-child(10) {
  text-align: center !important;
  vertical-align: middle !important;
}
body.gi-cli-listado .gi-cli-client-table tr td:nth-child(11) {
  border-right: 0 !important;
  padding: 0 !important;
}

body.gi-cli-listado .gi-cli-client-table tr td:nth-child(6) {
  overflow: hidden;
  text-overflow: clip;
}
body.gi-cli-param-tipos .gi-cli-param-table-wrap,
body.gi-cli-param-criterios .gi-cli-param-table-wrap {
  max-height: calc(100vh - 112px);
}
body.gi-cli-param-page.gi-cli-param-tipos .gi-cli-param-table-wrap {
  height: calc(100vh - 142px) !important;
  min-height: 250px;
  max-height: calc(100vh - 112px);
}

body.gi-cli-param-page.gi-cli-param-criterios .gi-cli-param-table-wrap {
  height: calc(100vh - 145px) !important;
  min-height: 249px;
  max-height: calc(100vh - 112px);
}
body.gi-cli-listado .gi-cli-client-table tr td:nth-child(8) input[type="button"] {
  min-height: 22px !important;
  height: 22px !important;
  line-height: 18px !important;
  padding: 0 10px !important;
  margin: 0 !important;
  border-radius: 6px;
  box-sizing: border-box;
}

body.gi-cli-listado .gi-cli-client-table tr:not(.tittable) td {
  padding-top: 4px !important;
  padding-bottom: 4px !important;
  vertical-align: middle;
}
body.gi-cli-listado .gi-cli-eval-modal {
  position: fixed;
  inset: 0;
  z-index: 2000;
  align-items: center;
  justify-content: center;
  padding: 18px;
  background: rgba(15, 23, 42, 0.28);
  box-sizing: border-box;
}

body.gi-cli-listado .gi-cli-eval-dialog {
  width: min(1100px, 92vw);
  height: min(720px, 86vh);
  border: 1px solid #cfd8e3;
  border-radius: 8px;
  background: #ffffff;
  overflow: hidden;
  box-shadow: 0 18px 44px rgba(15, 23, 42, 0.24);
  display: flex;
  flex-direction: column;
}

body.gi-cli-listado .gi-cli-eval-titlebar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 42px;
  padding: 0 12px 0 40px;
  background: #326BF5;
  color: #ffffff;
  font-size: 18px;
  font-weight: 700;
  position: relative;
  box-sizing: border-box;
  flex: 0 0 auto;
}

body.gi-cli-listado .gi-cli-eval-titlebar:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 28px;
  background: #2957C7;
}

body.gi-cli-listado .gi-cli-eval-titlebar input[type="button"] {
  min-height: 30px;
  margin: 0;
  border-color: #0f9f57;
  background: #f7fff9;
  color: #057a3d;
}

body.gi-cli-listado .gi-cli-eval-frame-wrap {
  flex: 1 1 auto;
  min-height: 0;
  background: #ffffff;
}

body.gi-cli-listado .gi-cli-eval-frame {
  display: block;
  width: 100%;
  height: 100%;
}
body.gi-cli-encuesta input[type="button"][value="..."] {
  min-height: 22px !important;
  height: 22px !important;
  line-height: 18px !important;
  padding: 0 10px !important;
  margin: 0 !important;
  border-radius: 6px;
  box-sizing: border-box;
}

body.gi-cli-encuesta .dhxwins_vp_dhx_skyblue,
body.gi-cli-encuesta .dhtmlx_window_active,
body.gi-cli-encuesta .dhtmlx_window_inactive {
  max-width: calc(100% - 24px);
}
body.gi-cli-encuesta .gi-cli-encuesta-viewport {
  height: calc(100vh - 2px);
  min-height: 520px;
  overflow: hidden;
}
body.gi-cli-encuesta-detalle {
  background: #f4f7fb;
  padding: 10px;
  box-sizing: border-box;
  overflow: auto;
}

body.gi-cli-encuesta-detalle .gi-cli-encuesta-detail-table {
  width: 100%;
  border: 1px solid #cfd8e3 !important;
  border-radius: 8px;
  border-collapse: separate !important;
  border-spacing: 0;
  background: #ffffff;
  overflow: hidden;
  box-sizing: border-box;
}

body.gi-cli-encuesta-detalle .gi-cli-encuesta-detail-table > tbody > tr:first-child > td:first-child {
  width: 28px !important;
  height: 42px !important;
  background: #2957C7 !important;
  border: 0 !important;
}

body.gi-cli-encuesta-detalle .gi-cli-encuesta-detail-table > tbody > tr:first-child > td:nth-child(2) {
  height: 42px !important;
  background: #326BF5 !important;
  color: #ffffff !important;
  font-size: 18px;
  font-weight: 700;
  border: 0 !important;
  padding-left: 14px;
}

body.gi-cli-encuesta-detalle .gi-cli-encuesta-detail-table > tbody > tr > td {
  border-color: #d5dee9 !important;
}

body.gi-cli-encuesta-detalle .gi-cli-detail-actions {
  display: flex;
  gap: 8px;
  justify-content: flex-end;
  padding: 8px 0 0;
}
body.gi-cli-encuesta-detalle .gi-cli-encuesta-form {
  display: grid;
  grid-template-columns: 128px minmax(260px, 1fr) 118px minmax(220px, 0.8fr);
  gap: 10px 12px;
  align-items: center;
  padding: 12px;
  background: #f8fafc;
  border-bottom: 1px solid #d5dee9;
}

body.gi-cli-encuesta-detalle .gi-cli-encuesta-form label {
  font-weight: 700;
  color: #17212f;
}

body.gi-cli-encuesta-detalle .gi-cli-encuesta-form input[type="text"] {
  width: 100% !important;
  box-sizing: border-box;
}

body.gi-cli-encuesta-detalle #tbxFechaEncuesta {
  width: 96px !important;
}

body.gi-cli-encuesta-detalle .gi-date-inline {
  display: inline-flex;
  align-items: center;
  gap: 4px;
}

body.gi-cli-encuesta-detalle .gi-date-icon {
  width: 18px;
  height: 18px;
  cursor: pointer;
}

body.gi-cli-encuesta-detalle .gi-cli-file-control {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}

body.gi-cli-encuesta-detalle .gi-cli-rango-evaluacion {
  padding: 10px 12px 6px;
  font-size: 16px;
  font-weight: 700;
  color: #17212f;
}

body.gi-cli-encuesta-detalle .gi-cli-criterios-table {
  border: 1px solid #cfd8e3 !important;
  border-collapse: separate !important;
  border-spacing: 0;
  table-layout: fixed;
  margin: 0 12px 10px;
  width: calc(100% - 24px) !important;
  background: #ffffff;
}

body.gi-cli-encuesta-detalle .gi-cli-criterios-table td {
  border: 0 !important;
  border-right: 1px solid #d5dee9 !important;
  border-bottom: 1px solid #d5dee9 !important;
  padding: 6px 8px;
  vertical-align: middle;
}

body.gi-cli-encuesta-detalle .gi-cli-criterios-table tr td:last-child {
  border-right: 0 !important;
}

body.gi-cli-encuesta-detalle .gi-cli-criterios-table tr:last-child td {
  border-bottom: 0 !important;
}

body.gi-cli-encuesta-detalle .gi-cli-criterios-table .tittable td {
  background: #e7edf5 !important;
  color: #17212f;
  font-weight: 700;
}

body.gi-cli-encuesta-detalle .gi-cli-nota-input {
  width: 48px !important;
  text-align: center;
  box-sizing: border-box;
}

body.gi-cli-encuesta-detalle .gi-cli-total-row td {
  background: #f7fafc;
}

.gi-date-picker {
  position: absolute;
  z-index: 9999;
  width: 222px;
  padding: 8px;
  border: 1px solid #b8c5d4;
  border-radius: 8px;
  background: #ffffff;
  box-shadow: 0 14px 28px rgba(15, 23, 42, 0.18);
  box-sizing: border-box;
}
.gi-date-head { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin-bottom: 6px; }
.gi-date-title { flex: 1; color: #17212f; font-size: 12px; font-weight: 700; text-align: center; }
.gi-date-picker button { box-sizing: border-box; min-width: 0; min-height: 0; margin: 0; padding: 0; border-radius: 6px; font-size: 11px; line-height: 1; }
.gi-date-nav { width: 28px; height: 26px; padding: 0; }
.gi-date-grid { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 3px; }
.gi-date-week { margin-bottom: 5px; color: #5a6b7d; font-size: 11px; font-weight: 700; text-align: center; }
.gi-date-empty { height: 25px; }
.gi-date-day { display: flex; align-items: center; justify-content: center; width: 100%; height: 25px; padding: 0; border: 1px solid transparent; background: #f7fafc; }
.gi-date-day:hover { border-color: #ff9700; background: #fff6ea; }
.gi-date-day.is-today { border-color: #19984f; }
.gi-date-day.is-selected { border-color: #ff9700; background: #ff9700; color: #ffffff; }
.gi-date-actions { display: flex; justify-content: flex-end; gap: 6px; margin-top: 8px; }
.gi-date-actions button { padding: 5px 7px; }
.gi-date-picker.gi-date-picker-compact { width: 164px; padding: 4px; border-radius: 6px; }
.gi-date-picker-compact .gi-date-head { gap: 3px; margin-bottom: 3px; }
.gi-date-picker-compact .gi-date-title { font-size: 10px; }
.gi-date-picker-compact .gi-date-nav { width: 20px; height: 18px; }
.gi-date-picker-compact .gi-date-grid { gap: 1px; }
.gi-date-picker-compact .gi-date-week { margin-bottom: 2px; font-size: 10px; }
.gi-date-picker-compact .gi-date-empty,
.gi-date-picker-compact .gi-date-day { height: 16px; }
.gi-date-picker-compact .gi-date-day { font-size: 10px; }
/* Proveedores: homologacion visual basada en Clientes */
body.gi-prv-listado .gi-prv-filter-grid {
  display: grid;
  grid-template-columns: 110px minmax(220px, 1.3fr) minmax(180px, 220px) minmax(180px, 220px) 150px auto;
  gap: 8px 14px;
  align-items: end;
}

body.gi-prv-listado .gi-prv-filter-grid input[type="text"],
body.gi-prv-listado .gi-prv-filter-grid select {
  width: 100% !important;
}

body.gi-prv-listado .gi-prv-list-section {
  padding: 10px 12px;
  flex: 1 1 auto;
  min-height: 0;
  display: flex;
  flex-direction: column;
}

body.gi-prv-listado .gi-prv-list-scroll {
  flex: 1 1 auto;
  min-height: 0;
  width: 100%;
  overflow-y: scroll !important;
  overflow-x: auto;
  border: 1px solid #d5dee9;
  border-radius: 6px;
}

body.gi-prv-listado .gi-prv-provider-table {
  table-layout: fixed;
  border: 0 !important;
}

body.gi-prv-listado .gi-prv-provider-table tr.tittable td {
  position: sticky;
  top: 0;
  z-index: 2;
}

body.gi-prv-listado .gi-prv-provider-table td:nth-child(1),
body.gi-prv-listado .gi-prv-provider-table td:nth-child(2),
body.gi-prv-listado .gi-prv-provider-table td:nth-child(9),
body.gi-prv-listado .gi-prv-provider-table td:nth-child(10),
body.gi-prv-listado .gi-prv-provider-table td:nth-child(11),
body.gi-prv-listado .gi-prv-provider-table td:nth-child(12),
body.gi-prv-listado .gi-prv-provider-table td:nth-child(13) {
  text-align: center;
}

body.gi-prv-listado .gi-prv-provider-table input[type="button"][value="..."] {
  min-width: 40px;
  min-height: 22px;
  height: 22px;
  line-height: 18px;
  padding: 0 10px;
  margin: 0;
  border-radius: 6px;
  box-sizing: border-box;
}

body.gi-prv-listado .gi-prv-provider-table tr:not(.tittable) td {
  padding-top: 4px !important;
  padding-bottom: 4px !important;
  vertical-align: middle;
}

body.gi-prv-listado .gi-prv-provider-table img {
  max-width: 20px;
  height: auto;
}

@media (max-width: 1100px) {
  body.gi-prv-listado .gi-prv-filter-grid {
    grid-template-columns: 1fr 1fr;
  }
}
/* Encuestas de cliente: una sola grilla evita el descuadre entre cabecera y detalle. */
body.gi-cli-encuesta .gi-cli-section {
  padding: 10px 12px 12px;
}

body.gi-cli-encuesta .gi-cli-encuesta-grid-scroll {
  max-height: 340px;
  overflow: auto;
  border: 1px solid #cfd8e3;
  border-radius: 7px;
  background: #ffffff;
}

body.gi-cli-encuesta .gi-cli-encuesta-grid {
  width: 100%;
  border: 0 !important;
  border-collapse: separate !important;
  border-spacing: 0;
  table-layout: fixed;
  background: #ffffff;
}

body.gi-cli-encuesta .gi-cli-encuesta-grid td {
  border: 0 !important;
  border-right: 1px solid #d5dee9 !important;
  border-bottom: 1px solid #d5dee9 !important;
  padding: 6px 8px;
  vertical-align: middle;
}

body.gi-cli-encuesta .gi-cli-encuesta-grid tr td:last-child {
  border-right: 0 !important;
}

body.gi-cli-encuesta .gi-cli-encuesta-grid tbody tr:last-child td {
  border-bottom: 0 !important;
}

body.gi-cli-encuesta .gi-cli-encuesta-grid .tittable td {
  background: #e7edf5 !important;
  color: #17212f;
  font-weight: 700;
}

body.gi-cli-encuesta .gi-cli-encuesta-grid tr td:nth-child(1),
body.gi-cli-encuesta .gi-cli-encuesta-grid tr td:nth-child(2),
body.gi-cli-encuesta .gi-cli-encuesta-grid tr td:nth-child(5),
body.gi-cli-encuesta .gi-cli-encuesta-grid tr td:nth-child(6),
body.gi-cli-encuesta .gi-cli-encuesta-grid tr td:nth-child(7) {
  text-align: center;
}
/* Evaluaciones de Proveedores: composicion homologada con Clientes. */
body.gi-prv-evaluacion,
body.gi-prv-evaluacion-detalle {
  background: #f4f7fb;
}

body.gi-prv-evaluacion .gi-cli-shell,
body.gi-prv-evaluacion-detalle .gi-cli-shell {
  padding: 10px;
  box-sizing: border-box;
}

body.gi-prv-evaluacion .gi-prv-evaluacion-card,
body.gi-prv-evaluacion-detalle .gi-prv-evaluacion-detail-card {
  min-height: calc(100vh - 20px);
  box-sizing: border-box;
}

body.gi-prv-evaluacion .gi-prv-evaluacion-form {
  display: grid;
  grid-template-columns: 150px minmax(250px, 1fr) 130px minmax(180px, 0.7fr) auto;
  gap: 10px 12px;
  align-items: center;
}

body.gi-prv-evaluacion .gi-prv-evaluacion-form label,
body.gi-prv-evaluacion-detalle .gi-prv-evaluacion-detail-form label {
  font-weight: 700;
  color: #17212f;
}

body.gi-prv-evaluacion .gi-prv-evaluacion-form input[type="text"],
body.gi-prv-evaluacion .gi-prv-evaluacion-form select {
  width: 100% !important;
  box-sizing: border-box;
}

body.gi-prv-evaluacion .gi-prv-evaluacion-actions {
  justify-content: flex-end;
}

body.gi-prv-evaluacion .gi-prv-evaluacion-list-section {
  padding: 10px 12px 12px;
}

body.gi-prv-evaluacion .gi-prv-eval-grid-scroll {
  max-height: calc(100vh - 180px);
  min-height: 0;
  overflow: auto;
  border: 1px solid #cfd8e3;
  border-radius: 7px;
  background: #ffffff;
}

body.gi-prv-evaluacion .gi-prv-eval-grid,
body.gi-prv-evaluacion-detalle .gi-prv-eval-detail-grid {
  width: 100%;
  border: 0 !important;
  border-collapse: separate !important;
  border-spacing: 0;
  table-layout: fixed;
  background: #ffffff;
}

body.gi-prv-evaluacion .gi-prv-eval-grid td,
body.gi-prv-evaluacion-detalle .gi-prv-eval-detail-grid td {
  border: 0 !important;
  border-right: 1px solid #d5dee9 !important;
  border-bottom: 1px solid #d5dee9 !important;
  padding: 6px 8px;
  vertical-align: middle;
}

body.gi-prv-evaluacion .gi-prv-eval-grid tr td:last-child,
body.gi-prv-evaluacion-detalle .gi-prv-eval-detail-grid tr td:last-child {
  border-right: 0 !important;
}

body.gi-prv-evaluacion .gi-prv-eval-grid tbody tr:last-child td,
body.gi-prv-evaluacion-detalle .gi-prv-eval-detail-grid tbody tr:last-child td {
  border-bottom: 0 !important;
}

body.gi-prv-evaluacion .gi-prv-eval-grid .tittable td,
body.gi-prv-evaluacion-detalle .gi-prv-eval-detail-grid .tittable td {
  background: #e7edf5 !important;
  color: #17212f;
  font-weight: 700;
}

body.gi-prv-evaluacion .gi-prv-eval-grid tr td:nth-child(1),
body.gi-prv-evaluacion .gi-prv-eval-grid tr td:nth-child(7),
body.gi-prv-evaluacion .gi-prv-eval-grid tr td:nth-child(8) {
  text-align: center;
}

body.gi-prv-evaluacion .gi-prv-eval-grid input[type="button"][value="..."] {
  min-height: 22px;
  height: 22px;
  line-height: 18px;
  padding: 0 10px;
  margin: 0;
  border-radius: 6px;
  box-sizing: border-box;
}

body.gi-prv-evaluacion-detalle .gi-prv-evaluacion-detail-form {
  display: grid;
  grid-template-columns: 150px minmax(240px, 1fr) 145px minmax(220px, 1fr);
  gap: 10px 12px;
  align-items: center;
  padding: 2px;
}

body.gi-prv-evaluacion-detalle .gi-prv-evaluacion-detail-form input[type="text"] {
  width: 100% !important;
  box-sizing: border-box;
}

body.gi-prv-evaluacion-detalle #tbxFechaEvaluacion {
  width: 96px !important;
}

body.gi-prv-evaluacion-detalle .gi-prv-evaluacion-rango {
  padding: 12px;
}

body.gi-prv-evaluacion-detalle .gi-prv-eval-rango-titulo {
  padding: 0 0 7px;
  color: #17212f;
  font-size: 16px;
  font-weight: 700;
}

body.gi-prv-evaluacion-detalle .gi-prv-eval-detail-grid-wrap {
  border: 1px solid #cfd8e3;
  border-radius: 7px;
  overflow: hidden;
  background: #ffffff;
}

body.gi-prv-evaluacion-detalle .gi-prv-eval-nota-input {
  width: 48px !important;
  text-align: center;
  box-sizing: border-box;
}

body.gi-prv-evaluacion-detalle .gi-prv-eval-total-row td {
  background: #f7fafc;
}

body.gi-prv-evaluacion-detalle .gi-cli-detail-actions {
  padding: 0 12px 12px;
}

@media (max-width: 900px) {
  body.gi-prv-evaluacion .gi-prv-evaluacion-form,
  body.gi-prv-evaluacion-detalle .gi-prv-evaluacion-detail-form {
    grid-template-columns: 1fr;
  }

  body.gi-prv-evaluacion .gi-prv-evaluacion-actions {
    justify-content: flex-start;
  }
}

/* Tipo de cliente fijo: alineado y legible dentro de la evaluacion. */
body.gi-cli-encuesta .gi-cli-form-grid--compact {
  grid-template-columns: 140px minmax(260px, 1fr);
}

body.gi-cli-encuesta .gi-cli-form-grid--compact > label {
  align-self: center;
}

body.gi-cli-encuesta .gi-cli-form-spacer {
  display: block;
}

/* Clientes/Proveedores: retorno mantiene fondo verde suave; solo cambia borde. */
body.gi-cli-toolbar-page input[value="Cerrar"]:hover,
body.gi-cli-toolbar-page input.gi-cli-return-action:hover,
body.gi-cli input[value="Cerrar"]:hover,
body.gi-cli input[value="Volver"]:hover {
  border-color: #ff9700 !important;
  background: #effaf3 !important;
  color: #126b38 !important;
}

body.gi-cli input[value="Limpiar"]:hover {
  border-color: #ff9700 !important;
  background: #fff6ea !important;
  color: #1f2933 !important;
}
/* Proveedores: acciones y listado de evaluaci�n dentro del di�logo. */
body.gi-prv-listado .gi-cli-eval-titlebar input.gi-prv-eval-close:hover {
  border-color: #ff9700 !important;
  background: #effaf3 !important;
  color: #057a3d !important;
}

body.gi-prv-evaluacion input.gi-prv-eval-new {
  border-color: #ff9700 !important;
  background: #ff9700 !important;
  color: #ffffff !important;
}

body.gi-prv-evaluacion input.gi-prv-eval-new:hover {
  border-color: #ff9700 !important;
  background: #fff6ea !important;
  color: #1f2933 !important;
}
/* La secci�n de evaluaciones termina en la tarjeta, sin divisor bajo la tabla. */
body.gi-prv-evaluacion .gi-prv-evaluacion-list-section {
  border-bottom: 0;
}
/* Encuesta de cliente: tarjeta blanca a la altura �til del di�logo. */
body.gi-cli-encuesta .gi-cli-card {
  min-height: calc(100vh - 16px);
  box-sizing: border-box;
}
/* El listado de encuestas termina visualmente en la tarjeta, sin divisor de fondo. */
body.gi-cli-encuesta .gi-cli-section:last-child {
  border-bottom: 0;
}
/* Acci�n destructiva, homologada con Eliminar Actividad de Planificaci�n. */
body.gi-cli input.gi-cli-btn-destructive {
  border-color: #d94a3a !important;
  background: #fff4f2 !important;
  color: #9b1c12 !important;
}

body.gi-cli input.gi-cli-btn-destructive:hover {
  border-color: #c9362b !important;
  background: #ffe5e0 !important;
  color: #7f1d1d !important;
}
/* Tipo de proveedor: dato definido en la ficha, s�lo informativo en evaluaci�n. */
body.gi-prv-evaluacion-detalle .gi-prv-readonly-value {
  min-height: 28px;
  padding: 5px 9px;
  border: 1px solid #c9d2dd;
  border-radius: 5px;
  background: #eef2f6;
  color: #4b5b6d;
  font-weight: 700;
  box-sizing: border-box;
}

body.gi-prv-evaluacion-detalle .gi-date-icon {
  width: 18px;
  height: 18px;
  cursor: pointer;
}
/* Cabeceras internas de evaluaci�n de clientes: misma altura que el modal. */
body.gi-cli-encuesta .gi-cli-title {
  min-height: 42px;
  height: 42px;
  padding: 0 12px;
  box-sizing: border-box;
}

body.gi-cli-encuesta-detalle .gi-cli-encuesta-detail-table > tbody > tr:first-child {
  height: 42px;
}

body.gi-cli-encuesta-detalle .gi-cli-encuesta-detail-table > tbody > tr:first-child > td:first-child {
  height: 42px !important;
  padding: 0 !important;
  box-sizing: border-box;
}

body.gi-cli-encuesta-detalle .gi-cli-encuesta-detail-table > tbody > tr:first-child > td:nth-child(2) {
  height: 42px !important;
  padding: 0 14px !important;
  box-sizing: border-box;
}
/* Vista inicial de evaluaci�n: formulario compacto y cabecera secundaria. */
body.gi-cli-encuesta:not(.gi-cli-encuesta-detalle) .gi-cli-form-grid--compact {
  grid-template-columns: 140px minmax(260px, 1fr) 110px minmax(180px, 0.65fr) auto;
  gap: 10px 12px;
}

body.gi-cli-encuesta:not(.gi-cli-encuesta-detalle) .gi-cli-field-row {
  justify-self: end;
}

body.gi-cli-encuesta:not(.gi-cli-encuesta-detalle) .gi-cli-title {
  min-height: 34px;
  height: 34px;
  padding: 0 12px;
  font-size: 14px;
}

body.gi-cli-encuesta:not(.gi-cli-encuesta-detalle) .gi-cli-title::before {
  margin: 0 12px 0 -12px;
}

@media (max-width: 900px) {
  body.gi-cli-encuesta:not(.gi-cli-encuesta-detalle) .gi-cli-form-grid--compact {
    grid-template-columns: 1fr;
  }

  body.gi-cli-encuesta:not(.gi-cli-encuesta-detalle) .gi-cli-field-row {
    justify-self: start;
  }
}
/* Nueva/Detalle de encuesta: cabecera secundaria y rango dentro de la fila total. */
body.gi-cli-encuesta-detalle .gi-cli-encuesta-detail-table > tbody > tr:first-child,
body.gi-cli-encuesta-detalle .gi-cli-encuesta-detail-table > tbody > tr:first-child > td:first-child,
body.gi-cli-encuesta-detalle .gi-cli-encuesta-detail-table > tbody > tr:first-child > td:nth-child(2) {
  height: 34px !important;
  min-height: 34px !important;
}

body.gi-cli-encuesta-detalle .gi-cli-encuesta-detail-table > tbody > tr:first-child > td:nth-child(2) {
  font-size: 14px !important;
  line-height: 34px;
}

body.gi-cli-encuesta-detalle .gi-cli-rango-inline {
  padding-left: 12px !important;
  color: #17212f;
  font-size: 13px;
}
/* Nueva y Detalle: misma proporci�n de barra secundaria que el listado. */
body.gi-cli-encuesta-detalle .gi-cli-encuesta-detail-table > tbody > tr:first-child > td:first-child {
  width: 20px !important;
  min-width: 20px !important;
  max-width: 20px !important;
}

body.gi-cli-encuesta-detalle .gi-cli-criterios-table {
  margin: 12px 12px 10px;
}
/* Proveedores: barras secundarias homologadas con evaluaci�n de Clientes. */
body.gi-prv-evaluacion .gi-cli-title,
body.gi-prv-evaluacion-detalle .gi-cli-title {
  min-height: 34px;
  height: 34px;
  padding: 0 12px;
  font-size: 14px;
  box-sizing: border-box;
}

body.gi-prv-evaluacion .gi-cli-title::before,
body.gi-prv-evaluacion-detalle .gi-cli-title::before {
  margin: 0 12px 0 -12px;
}
/* Proveedores: las vistas derivadas comparten el origen de la vista principal. */
body.gi-prv-evaluacion-detalle {
  padding: 0;
}

body.gi-prv-evaluacion .gi-prv-eval-grid-scroll {
  max-height: calc(100vh - 145px);
}
/* Productos de proveedores: cierre de popup interno con patr�n de retorno. */
body.gi-prv-listado .gi-cli-eval-titlebar input[value="Cerrar Productos"]:hover {
  border-color: #ff9700 !important;
  background: #effaf3 !important;
  color: #057a3d !important;
}
/* Productos de proveedores: pantalla secundaria homologada. */
body.gi-prv-productos {
  background: #f4f7fb;
}

body.gi-prv-productos .gi-cli-shell {
  padding: 10px;
  box-sizing: border-box;
}

body.gi-prv-productos .gi-prv-productos-card {
  min-height: calc(100vh - 20px);
  box-sizing: border-box;
}

body.gi-prv-productos .gi-cli-title {
  min-height: 34px;
  height: 34px;
  padding: 0 12px;
  font-size: 14px;
  box-sizing: border-box;
}

body.gi-prv-productos .gi-cli-title::before {
  margin: 0 12px 0 -12px;
}

body.gi-prv-productos .gi-prv-products-form {
  display: grid;
  grid-template-columns: 120px minmax(260px, 1fr) auto minmax(120px, 0.5fr);
  gap: 10px 12px;
  align-items: center;
}

body.gi-prv-productos .gi-prv-products-form input[type="text"] {
  width: 100% !important;
  box-sizing: border-box;
}

body.gi-prv-productos .gi-prv-products-actions {
  justify-content: flex-end;
}

body.gi-prv-productos .gi-prv-products-message {
  color: #126b38;
  font-weight: 700;
}

body.gi-prv-productos .gi-prv-products-list-section {
  padding: 12px;
  border-bottom: 0;
}

body.gi-prv-productos .gi-prv-products-grid-scroll {
  max-height: calc(100vh - 165px);
  overflow: auto;
  border: 1px solid #cfd8e3;
  border-radius: 7px;
  background: #ffffff;
}

body.gi-prv-productos .gi-prv-products-grid {
  width: 100%;
  border: 0 !important;
  border-collapse: separate !important;
  border-spacing: 0;
  table-layout: fixed;
  background: #ffffff;
}

body.gi-prv-productos .gi-prv-products-grid td {
  border: 0 !important;
  border-right: 1px solid #d5dee9 !important;
  border-bottom: 1px solid #d5dee9 !important;
  padding: 6px 8px;
  vertical-align: middle;
}

body.gi-prv-productos .gi-prv-products-grid tr td:last-child {
  border-right: 0 !important;
}

body.gi-prv-productos .gi-prv-products-grid tbody tr:last-child td {
  border-bottom: 0 !important;
}

body.gi-prv-productos .gi-prv-products-grid .tittable td {
  background: #e7edf5 !important;
  color: #17212f;
  font-weight: 700;
}

body.gi-prv-productos .gi-prv-products-grid td:nth-child(1),
body.gi-prv-productos .gi-prv-products-grid td:nth-child(2),
body.gi-prv-productos .gi-prv-products-grid td:nth-child(4),
body.gi-prv-productos .gi-prv-products-grid td:nth-child(5) {
  text-align: center;
}

body.gi-prv-productos .gi-prv-products-grid input[type="button"][value="..."] {
  min-width: 40px;
  min-height: 22px;
  height: 22px;
  line-height: 18px;
  padding: 0 10px;
  margin: 0;
  border-radius: 6px;
  box-sizing: border-box;
}

body.gi-prv-productos .gi-prv-products-grid img {
  max-width: 20px;
  height: auto;
}

@media (max-width: 760px) {
  body.gi-prv-productos .gi-prv-products-form {
    grid-template-columns: 1fr;
  }

  body.gi-prv-productos .gi-prv-products-actions {
    justify-content: flex-start;
  }
}

/* Productos: documentos asociados como vista secundaria interna. */
body.gi-prv-productos .gi-prv-product-files-modal {
  position: fixed;
  z-index: 1000;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 18px;
  background: rgba(25, 37, 53, 0.34);
  box-sizing: border-box;
}

body.gi-prv-productos .gi-prv-product-files-dialog {
  display: flex;
  flex-direction: column;
  width: min(780px, 94vw);
  height: min(580px, 86vh);
  overflow: hidden;
  border: 1px solid #b9c9dd;
  border-radius: 8px;
  background: #ffffff;
  box-shadow: 0 16px 34px rgba(24, 41, 64, 0.24);
}

body.gi-prv-productos .gi-prv-product-files-titlebar {
  display: flex;
  min-height: 42px;
  align-items: center;
  justify-content: space-between;
  padding: 0 12px;
  border-bottom: 1px solid #2957c7;
  background: #326bf5;
  color: #ffffff;
  font-size: 16px;
  font-weight: 700;
  box-sizing: border-box;
}

body.gi-prv-productos .gi-prv-product-files-titlebar::before {
  width: 20px;
  align-self: stretch;
  margin: 0 12px 0 -12px;
  background: #2957c7;
  content: "";
}

body.gi-prv-productos .gi-prv-product-files-titlebar span {
  margin-right: auto;
}

body.gi-prv-productos .gi-prv-product-files-titlebar input[type="button"] {
  border-color: #16a052;
  background: #effaf3;
  color: #057a3d;
}

body.gi-prv-productos .gi-prv-product-files-titlebar input[type="button"]:hover {
  border-color: #ff9700;
  background: #effaf3;
  color: #057a3d;
}

body.gi-prv-productos #ifrmArchivosProducto {
  width: 100%;
  min-height: 0;
  flex: 1 1 auto;
  background: #f4f7fb;
}
/* Documentos de producto: contenido de la vista secundaria. */
body.gi-prv-product-files {
  background: #f4f7fb;
}

body.gi-prv-product-files .gi-cli-shell {
  padding: 10px;
  box-sizing: border-box;
}

body.gi-prv-product-files .gi-prv-product-files-card {
  min-height: calc(100vh - 20px);
  box-sizing: border-box;
}

body.gi-prv-product-files .gi-cli-title {
  min-height: 34px;
  height: 34px;
  padding: 0 12px;
  font-size: 14px;
  box-sizing: border-box;
}

body.gi-prv-product-files .gi-cli-title::before {
  margin: 0 12px 0 -12px;
}

body.gi-prv-product-files .gi-prv-product-files-form {
  display: grid;
  grid-template-columns: 100px minmax(180px, 1fr) 70px minmax(220px, 1.2fr) auto minmax(100px, 0.45fr);
  gap: 10px 12px;
  align-items: center;
}

body.gi-prv-product-files .gi-prv-product-files-form input[type="text"],
body.gi-prv-product-files .gi-prv-product-files-form input[type="file"] {
  width: 100% !important;
  box-sizing: border-box;
}

body.gi-prv-product-files .gi-prv-product-files-actions {
  justify-content: flex-end;
}

body.gi-prv-product-files .gi-prv-product-files-message {
  color: #126b38;
}

body.gi-prv-product-files .gi-prv-product-files-list-section {
  padding: 12px;
  border-bottom: 0;
}

body.gi-prv-product-files .gi-prv-product-files-grid-scroll {
  max-height: calc(100vh - 155px);
  overflow: auto;
  border: 1px solid #cfd8e3;
  border-radius: 7px;
  background: #ffffff;
}

body.gi-prv-product-files .gi-prv-product-files-grid {
  width: 100%;
  border: 0 !important;
  border-collapse: separate !important;
  border-spacing: 0;
  table-layout: fixed;
  background: #ffffff;
}

body.gi-prv-product-files .gi-prv-product-files-grid td {
  border: 0 !important;
  border-right: 1px solid #d5dee9 !important;
  border-bottom: 1px solid #d5dee9 !important;
  padding: 6px 8px;
  vertical-align: middle;
}

body.gi-prv-product-files .gi-prv-product-files-grid tr td:last-child {
  border-right: 0 !important;
}

body.gi-prv-product-files .gi-prv-product-files-grid tbody tr:last-child td {
  border-bottom: 0 !important;
}

body.gi-prv-product-files .gi-prv-product-files-grid .tittable td {
  background: #e7edf5 !important;
  color: #17212f;
  font-weight: 700;
}

body.gi-prv-product-files .gi-prv-product-files-grid td:nth-child(1),
body.gi-prv-product-files .gi-prv-product-files-grid td:nth-child(3),
body.gi-prv-product-files .gi-prv-product-files-grid td:nth-child(4) {
  width: 50px;
  text-align: center;
}

body.gi-prv-product-files .gi-prv-product-files-grid img {
  max-width: 20px;
  height: auto;
}

@media (max-width: 760px) {
  body.gi-prv-product-files .gi-prv-product-files-form {
    grid-template-columns: 1fr;
  }

  body.gi-prv-product-files .gi-prv-product-files-actions {
    justify-content: flex-start;
  }
}
/* Adjuntos de proveedor: contenido del panel secundario. */
body.gi-prv-adjuntos {
  background: #f4f7fb;
}

body.gi-prv-adjuntos .gi-cli-shell {
  padding: 10px;
  box-sizing: border-box;
}

body.gi-prv-adjuntos .gi-prv-adjuntos-card {
  min-height: calc(100vh - 20px);
  box-sizing: border-box;
}

body.gi-prv-adjuntos .gi-cli-title {
  min-height: 34px;
  height: 34px;
  padding: 0 12px;
  font-size: 14px;
  box-sizing: border-box;
}

body.gi-prv-adjuntos .gi-cli-title::before {
  margin: 0 12px 0 -12px;
}

body.gi-prv-adjuntos .gi-prv-adjuntos-form {
  display: grid;
  grid-template-columns: 150px minmax(190px, 1fr) 60px minmax(220px, 1.2fr) auto minmax(100px, 0.45fr);
  gap: 10px 12px;
  align-items: center;
}

body.gi-prv-adjuntos .gi-prv-adjuntos-form input[type="text"],
body.gi-prv-adjuntos .gi-prv-adjuntos-form input[type="file"] {
  width: 100% !important;
  box-sizing: border-box;
}

body.gi-prv-adjuntos .gi-prv-adjuntos-actions {
  justify-content: flex-end;
}

body.gi-prv-adjuntos .gi-prv-adjuntos-message {
  color: #126b38;
}

body.gi-prv-adjuntos .gi-prv-adjuntos-list-section {
  padding: 12px;
  border-bottom: 0;
}

body.gi-prv-adjuntos .gi-prv-adjuntos-grid-scroll {
  max-height: calc(100vh - 155px);
  overflow: auto;
  border: 1px solid #cfd8e3;
  border-radius: 7px;
  background: #ffffff;
}

body.gi-prv-adjuntos .gi-prv-adjuntos-grid {
  width: 100%;
  border: 0 !important;
  border-collapse: separate !important;
  border-spacing: 0;
  table-layout: fixed;
  background: #ffffff;
}

body.gi-prv-adjuntos .gi-prv-adjuntos-grid td {
  border: 0 !important;
  border-right: 1px solid #d5dee9 !important;
  border-bottom: 1px solid #d5dee9 !important;
  padding: 6px 8px;
  vertical-align: middle;
}

body.gi-prv-adjuntos .gi-prv-adjuntos-grid tr td:last-child {
  border-right: 0 !important;
}

body.gi-prv-adjuntos .gi-prv-adjuntos-grid tbody tr:last-child td {
  border-bottom: 0 !important;
}

body.gi-prv-adjuntos .gi-prv-adjuntos-grid .tittable td {
  background: #e7edf5 !important;
  color: #17212f;
  font-weight: 700;
}

body.gi-prv-adjuntos .gi-prv-adjuntos-grid td:nth-child(1),
body.gi-prv-adjuntos .gi-prv-adjuntos-grid td:nth-child(3),
body.gi-prv-adjuntos .gi-prv-adjuntos-grid td:nth-child(4) {
  width: 50px;
  text-align: center;
}

body.gi-prv-adjuntos .gi-prv-adjuntos-grid img {
  max-width: 20px;
  height: auto;
}

@media (max-width: 760px) {
  body.gi-prv-adjuntos .gi-prv-adjuntos-form {
    grid-template-columns: 1fr;
  }

  body.gi-prv-adjuntos .gi-prv-adjuntos-actions {
    justify-content: flex-start;
  }
}
/* Reporte de proveedores: formulario y tabla homologados con clientes. */
body.gi-prv-reporte .gi-prv-report-filter-grid { display:grid; grid-template-columns:minmax(220px,1.3fr) 132px 132px minmax(180px,1fr) minmax(180px,1fr) auto; gap:8px 14px; align-items:end; }
body.gi-prv-reporte .gi-prv-report-filter-grid input[type="text"], body.gi-prv-reporte .gi-prv-report-filter-grid select { width:100% !important; box-sizing:border-box; }
body.gi-prv-reporte .gi-prv-report-list-section { flex:1 1 auto; min-height:0; display:flex; flex-direction:column; }
body.gi-prv-reporte .gi-prv-report-scroll { flex:1 1 auto; min-height:0; max-height:calc(100vh - 190px); overflow:auto; border:1px solid #d5dee9; border-radius:7px; background:#fff; }
body.gi-prv-reporte .gi-prv-report-table { width:100%; border:0 !important; border-collapse:separate !important; border-spacing:0; table-layout:fixed; }
body.gi-prv-reporte .gi-prv-report-table td { border:0 !important; border-right:1px solid #d5dee9 !important; border-bottom:1px solid #d5dee9 !important; padding:6px 8px; vertical-align:middle; }
body.gi-prv-reporte .gi-prv-report-table tr td:last-child { border-right:0 !important; }
body.gi-prv-reporte .gi-prv-report-table thead td { position:sticky; top:0; z-index:2; background:#e7edf5 !important; font-weight:700; }
body.gi-prv-reporte .gi-prv-report-table td:nth-child(1){width:42px;text-align:center;} body.gi-prv-reporte .gi-prv-report-table td:nth-child(2){width:96px;} body.gi-prv-reporte .gi-prv-report-table td:nth-child(3){width:20%;} body.gi-prv-reporte .gi-prv-report-table td:nth-child(4){width:130px;} body.gi-prv-reporte .gi-prv-report-table td:nth-child(5){width:145px;} body.gi-prv-reporte .gi-prv-report-table td:nth-child(6){width:20%;} body.gi-prv-reporte .gi-prv-report-table td:nth-child(7){width:105px;text-align:center;} body.gi-prv-reporte .gi-prv-report-table td:nth-child(8){width:100px;text-align:center;} body.gi-prv-reporte .gi-prv-report-table td:nth-child(9){width:165px;} 
@media (max-width:1100px){body.gi-prv-reporte .gi-prv-report-filter-grid{grid-template-columns:repeat(3,minmax(180px,1fr));}} @media (max-width:760px){body.gi-prv-reporte .gi-prv-report-filter-grid{grid-template-columns:1fr;}}
/* Par�metros de proveedores: homologaci�n de pantallas individuales. */
body.gi-prv-param-tipos, body.gi-prv-param-criterios, body.gi-prv-param-procedencia, body.gi-prv-param-escala, body.gi-prv-param-clasificacion { background:#f4f7fb; }
body.gi-prv-param-tipos > form, body.gi-prv-param-criterios > form, body.gi-prv-param-procedencia > form, body.gi-prv-param-escala > form, body.gi-prv-param-clasificacion > form { display:block; min-height:100vh; padding:10px; box-sizing:border-box; }
body.gi-prv-param-tipos > form > table, body.gi-prv-param-criterios > form > table, body.gi-prv-param-procedencia > form > table, body.gi-prv-param-escala > form > table, body.gi-prv-param-clasificacion > form > table { width:100% !important; border:1px solid #cfd8e3 !important; border-radius:8px; border-collapse:separate !important; border-spacing:0; overflow:hidden; background:#fff; }
body.gi-prv-param-tipos > form > table > tbody > tr:first-child > td, body.gi-prv-param-criterios > form > table > tbody > tr:first-child > td, body.gi-prv-param-procedencia > form > table > tbody > tr:first-child > td, body.gi-prv-param-escala > form > table > tbody > tr:first-child > td { background:#326bf5 !important; color:#fff; border:0 !important; }
body.gi-prv-param-tipos > form > table > tbody > tr:first-child > td:first-child, body.gi-prv-param-criterios > form > table > tbody > tr:first-child > td:first-child, body.gi-prv-param-procedencia > form > table > tbody > tr:first-child > td:first-child, body.gi-prv-param-escala > form > table > tbody > tr:first-child > td:first-child { width:20px !important; background:#2957c7 !important; }
body.gi-prv-param-tipos > form > table > tbody > tr:first-child .tit, body.gi-prv-param-criterios > form > table > tbody > tr:first-child .tit, body.gi-prv-param-procedencia > form > table > tbody > tr:first-child .tit, body.gi-prv-param-escala > form > table > tbody > tr:first-child .tit { min-height:34px; padding:0 12px; background:#326bf5 !important; color:#fff; font-size:14px; line-height:34px; }
body.gi-prv-param-tipos > form > table > tbody > tr:not(:first-child) > td, body.gi-prv-param-criterios > form > table > tbody > tr:not(:first-child) > td, body.gi-prv-param-procedencia > form > table > tbody > tr:not(:first-child) > td, body.gi-prv-param-escala > form > table > tbody > tr:not(:first-child) > td, body.gi-prv-param-clasificacion > form > table > tbody > tr:not(:first-child) > td { border-color:#d5dee9; }
body.gi-prv-param-tipos input[type="text"], body.gi-prv-param-criterios input[type="text"], body.gi-prv-param-procedencia input[type="text"], body.gi-prv-param-escala input[type="text"], body.gi-prv-param-clasificacion input[type="text"] { box-sizing:border-box; }
body.gi-prv-param-tipos input[type="button"], body.gi-prv-param-criterios input[type="button"], body.gi-prv-param-procedencia input[type="button"], body.gi-prv-param-escala input[type="button"], body.gi-prv-param-clasificacion input[type="button"] { margin-right:8px; }
body.gi-prv-param-tipos img, body.gi-prv-param-criterios img, body.gi-prv-param-procedencia img, body.gi-prv-param-clasificacion img { max-width:20px; height:auto; }
/* Par�metros de proveedores: una sola envolvente; sin marcos internos r�gidos. */
body.gi-prv-param-tipos > form > table > tbody > tr > td,
body.gi-prv-param-criterios > form > table > tbody > tr > td,
body.gi-prv-param-procedencia > form > table > tbody > tr > td,
body.gi-prv-param-escala > form > table > tbody > tr > td,
body.gi-prv-param-clasificacion > form > table > tbody > tr > td {
  border: 0 !important;
}

body.gi-prv-param-tipos > form > table > tbody > tr + tr > td,
body.gi-prv-param-criterios > form > table > tbody > tr + tr > td,
body.gi-prv-param-procedencia > form > table > tbody > tr + tr > td,
body.gi-prv-param-escala > form > table > tbody > tr + tr > td,
body.gi-prv-param-clasificacion > form > table > tbody > tr + tr > td {
  border-top: 1px solid #d5dee9 !important;
}

/* Tablas usadas exclusivamente para componer formularios. */
body.gi-prv-param-tipos > form > table > tbody > tr:nth-child(2) > td > table,
body.gi-prv-param-criterios > form > table > tbody > tr:nth-child(2) > td > table,
body.gi-prv-param-procedencia > form > table > tbody > tr:nth-child(2) > td > table,
body.gi-prv-param-escala > form > table > tbody > tr:nth-child(2) > td > table,
body.gi-prv-param-clasificacion > form > table > tbody > tr:first-child > td > table {
  border: 0 !important;
  border-collapse: separate !important;
  border-spacing: 0;
  background: transparent;
}

/* La tabla de datos mantiene l�neas �tiles, con un �nico borde suave. */
body.gi-prv-param-tipos > form > table > tbody > tr:nth-child(3) > td > table,
body.gi-prv-param-criterios > form > table > tbody > tr:nth-child(3) > td > table,
body.gi-prv-param-procedencia > form > table > tbody > tr:nth-child(3) > td > table,
body.gi-prv-param-clasificacion > form > table > tbody > tr:nth-child(2) > td > table {
  border: 1px solid #cfd8e3 !important;
  border-radius: 7px;
  border-collapse: separate !important;
  border-spacing: 0;
  overflow: hidden;
}
/* Par�metros proveedores: formularios compactos y acciones de patr�n. */
body.gi-cli input.gi-cli-btn-primary { border-color:#ff9700 !important; background:#ff9700 !important; color:#fff !important; }
body.gi-cli input.gi-cli-btn-primary:hover { border-color:#ff9700 !important; background:#fff6ea !important; color:#1f2933 !important; }
body.gi-prv-param-tipos > form > table > tbody > tr:nth-child(2) > td > table,
body.gi-prv-param-procedencia > form > table > tbody > tr:nth-child(2) > td > table,
body.gi-prv-param-criterios > form > table > tbody > tr:nth-child(2) > td > table,
body.gi-prv-param-clasificacion > form > table > tbody > tr:first-child > td > table { width:100% !important; margin:0 !important; }
body.gi-prv-param-tipos > form > table > tbody > tr:nth-child(2) > td > table td:first-child,
body.gi-prv-param-procedencia > form > table > tbody > tr:nth-child(2) > td > table td:first-child { width:180px; vertical-align:middle; }
body.gi-prv-param-tipos > form > table > tbody > tr:nth-child(2) > td > table input[type="text"],
body.gi-prv-param-procedencia > form > table > tbody > tr:nth-child(2) > td > table input[type="text"] { width:min(460px,100%) !important; }
body.gi-prv-param-tipos > form > table > tbody > tr:nth-child(2) > td > table tr:last-child td,
body.gi-prv-param-procedencia > form > table > tbody > tr:nth-child(2) > td > table tr:last-child td,
body.gi-prv-param-criterios > form > table > tbody > tr:nth-child(2) > td > table tr:last-child td,
body.gi-prv-param-clasificacion > form > table > tbody > tr:first-child > td > table tr:last-child td { padding-top:10px; }
body.gi-prv-param-escala > form > table > tbody > tr:nth-child(2) > td > table td { vertical-align:middle; }
body.gi-prv-param-escala > form > table > tbody > tr:nth-child(2) > td > table td:last-child { text-align:right; }
body.gi-prv-param-table-head { border:0; }

/* Escala: el l�mite inferior ya lo aporta el panel padre. */
body.gi-prv-param-escala > form > table {
  border-bottom: 0 !important;
}body.gi-prv-param-escala > form > table {
  border-top: 0 !important;
}
/* Procedencia: formulario en una l�nea, sin contenedores heredados. */
body.gi-prv-param-procedencia > form { min-height:0; padding:0; }
body.gi-prv-param-procedencia .gi-prv-param-inline-form { display:grid; grid-template-columns:180px minmax(260px,1fr) auto minmax(140px,0.7fr); gap:12px; align-items:center; padding:14px 16px; border-bottom:1px solid #d5dee9; background:#f8fbfe; box-sizing:border-box; }
body.gi-prv-param-procedencia .gi-prv-param-inline-form label { font-weight:700; }
body.gi-prv-param-procedencia .gi-prv-param-inline-form input[type="text"] { width:100% !important; }
body.gi-prv-param-procedencia .gi-prv-param-inline-form .gi-cli-actions { justify-content:flex-end; white-space:nowrap; }
body.gi-prv-param-procedencia .gi-prv-param-data-section { padding:12px 16px; }
body.gi-prv-param-procedencia .gi-prv-param-data-section > table { border:0 !important; }
@media (max-width:760px){body.gi-prv-param-procedencia .gi-prv-param-inline-form{grid-template-columns:1fr;} body.gi-prv-param-procedencia .gi-prv-param-inline-form .gi-cli-actions{justify-content:flex-start;}}
/* Procedencia: caja blanca y tabla �nica como Tipos de Proveedores. */
body.gi-prv-param-procedencia .gi-prv-procedencia-shell { margin:10px; border:1px solid #cfd8e3; border-radius:8px; background:#fff; overflow:hidden; }
body.gi-prv-param-procedencia .gi-prv-param-inline-form { border-bottom:1px solid #d5dee9; }
body.gi-prv-param-procedencia .gi-prv-param-data-section { padding:12px; background:#fff; }
body.gi-prv-param-procedencia .gi-prv-procedencia-table-wrap { max-height:calc(100vh - 150px); overflow:auto; border:1px solid #cfd8e3; border-radius:7px; background:#fff; }
body.gi-prv-param-procedencia .gi-prv-procedencia-table { width:100%; border:0 !important; border-collapse:separate !important; border-spacing:0; table-layout:fixed; }
body.gi-prv-param-procedencia .gi-prv-procedencia-table td { border:0 !important; border-right:1px solid #d5dee9 !important; border-bottom:1px solid #d5dee9 !important; padding:6px 8px; vertical-align:middle; }
body.gi-prv-param-procedencia .gi-prv-procedencia-table tr td:last-child { border-right:0 !important; }
body.gi-prv-param-procedencia .gi-prv-procedencia-table tbody tr:last-child td { border-bottom:0 !important; }
body.gi-prv-param-procedencia .gi-prv-procedencia-table .tittable td { background:#e7edf5 !important; color:#17212f; font-weight:700; }
body.gi-prv-param-procedencia .gi-prv-procedencia-table td:nth-child(1), body.gi-prv-param-procedencia .gi-prv-procedencia-table td:nth-child(2), body.gi-prv-param-procedencia .gi-prv-procedencia-table td:nth-child(4) { width:50px; text-align:center; }
/* Procedencia: misma jerarqu�a visual que Tipos de Proveedores. */
body.gi-prv-param-procedencia > form { min-height:100vh; padding:10px; }
body.gi-prv-param-procedencia > form > table { width:100% !important; border:1px solid #cfd8e3 !important; border-radius:8px; border-collapse:separate !important; border-spacing:0; overflow:hidden; background:#fff; }
body.gi-prv-param-procedencia > form > table > tbody > tr > td { border:0 !important; }
body.gi-prv-param-procedencia > form > table > tbody > tr + tr > td { border-top:1px solid #d5dee9 !important; }
body.gi-prv-param-procedencia .gi-prv-param-inline-form { padding:12px 16px; }
body.gi-prv-param-procedencia .gi-prv-param-data-section { padding:10px 12px; background:#fff; }
body.gi-prv-param-procedencia .gi-prv-procedencia-table-wrap { height:calc(100vh - 178px); min-height:250px; max-height:calc(100vh - 148px); overflow:auto; border:1px solid #cfd8e3; border-radius:7px; box-sizing:border-box; }
body.gi-prv-param-procedencia .gi-prv-procedencia-table { width:100%; border:0 !important; border-collapse:collapse !important; }
body.gi-prv-param-procedencia .gi-prv-procedencia-table td { border-color:#d5dee9 !important; }
body.gi-prv-param-procedencia .gi-prv-procedencia-table tr td:first-child { border-left:0 !important; }
body.gi-prv-param-procedencia .gi-prv-procedencia-table tr td:last-child { border-right:0 !important; }
body.gi-prv-param-procedencia .gi-prv-procedencia-table tbody tr:last-child td { border-bottom:0 !important; }
/* Procedencia: un solo separador entre formulario y listado; alto natural de datos. */
body.gi-prv-param-procedencia > form > table > tbody > tr + tr > td { border-top:0 !important; }
body.gi-prv-param-procedencia .gi-prv-param-inline-form { border-bottom:1px solid #d5dee9; }
body.gi-prv-param-procedencia .gi-prv-param-data-section { border:0 !important; }
body.gi-prv-param-procedencia .gi-prv-procedencia-table-wrap { height:auto !important; min-height:0; max-height:calc(100vh - 178px); }
/* Par�metros de proveedores: caja de trabajo com�n y sin divisor redundante. */
body.gi-prv-param-tipos > form > table,
body.gi-prv-param-criterios > form > table,
body.gi-prv-param-procedencia > form > table,
body.gi-prv-param-escala > form > table,
body.gi-prv-param-clasificacion > form > table {
  height:calc(100vh - 20px);
}
body.gi-prv-param-procedencia .gi-prv-param-inline-form { border-bottom:0 !important; }
/* Procedencia: la altura com�n se reserva bajo el listado, no en el formulario. */
body.gi-prv-param-procedencia > form > table > tbody > tr:nth-child(2) { height:88px !important; }
body.gi-prv-param-procedencia > form > table > tbody > tr:nth-child(2) > td { height:88px !important; vertical-align:top; }
body.gi-prv-param-procedencia > form > table > tbody > tr:nth-child(3) { height:100% !important; }
body.gi-prv-param-procedencia > form > table > tbody > tr:nth-child(3) > td { height:100% !important; vertical-align:top; }
/* Escala de evaluaci�n: controles reunidos en una sola tarjeta de trabajo. */
body.gi-prv-param-escala > form > table { height:auto !important; border:0 !important; border-radius:0; background:transparent; overflow:visible; }
body.gi-prv-param-escala > form > table > tbody > tr:nth-child(2) > td { padding:0 !important; border:0 !important; }
body.gi-prv-param-escala .gi-prv-scale-form { width:min(780px, calc(100% - 32px)) !important; margin:20px auto; border:1px solid #cfd8e3 !important; border-radius:8px; border-collapse:separate !important; border-spacing:0; background:#fff; box-shadow:0 1px 2px rgba(23,33,47,.04); }
body.gi-prv-param-escala .gi-prv-scale-form > tbody > tr { display:flex; align-items:center; gap:18px; padding:18px 20px; }
body.gi-prv-param-escala .gi-prv-scale-form td { width:auto !important; padding:0 !important; border:0 !important; vertical-align:middle; white-space:nowrap; }
body.gi-prv-param-escala .gi-prv-scale-form td:nth-child(1),
body.gi-prv-param-escala .gi-prv-scale-form td:nth-child(3) { color:#1f2933; font-weight:700; }
body.gi-prv-param-escala .gi-prv-scale-form input[type="text"] { width:62px !important; height:34px; padding:5px 8px; text-align:center; }
body.gi-prv-param-escala .gi-prv-scale-form td:last-child { margin-left:auto; }
body.gi-prv-param-escala .gi-prv-scale-form input[type="button"] { margin:0 !important; }
@media (max-width:760px){body.gi-prv-param-escala .gi-prv-scale-form > tbody > tr{flex-wrap:wrap;} body.gi-prv-param-escala .gi-prv-scale-form td:last-child{margin-left:0;width:100% !important;}}
/* Escala: caja blanca sobria, homologada con el resto de formularios. */
body.gi-prv-param-escala .gi-prv-scale-form { border:1px solid #d5dee9 !important; background:#fff; box-shadow:none; }
/* El borde visible de Escala pertenece a un contenedor real, compatible con el navegador legacy. */
body.gi-prv-param-escala .gi-prv-scale-card { width:min(780px, calc(100% - 32px)); margin:20px auto; padding:0; border:1px solid #d5dee9; border-radius:8px; background:#fff; overflow:hidden; }
body.gi-prv-param-escala .gi-prv-scale-form { width:100% !important; margin:0; border:0 !important; border-radius:0; background:transparent; box-shadow:none; }
/* Par�metros de proveedores: el �rea interna ocupa todo el alto disponible. */
body.gi-cli-param-nav .gi-cli-param-card { display:flex; flex-direction:column; }
body.gi-cli-param-nav .gi-cli-param-frame-wrap { flex:1 1 auto; height:auto; min-height:0; }
/* Tipos de Proveedores: formulario compacto y cabecera de datos sin leyendas redundantes. */
body.gi-prv-param-tipos > form > table > tbody > tr:nth-child(2) { height:88px !important; }
body.gi-prv-param-tipos > form > table > tbody > tr:nth-child(2) > td { height:88px !important; padding:0 !important; vertical-align:top; }
body.gi-prv-param-tipos > form > table > tbody > tr:nth-child(3) { height:100% !important; }
body.gi-prv-param-tipos > form > table > tbody > tr:nth-child(3) > td { height:100% !important; vertical-align:top; }
body.gi-prv-param-tipos .gi-prv-tipos-inline-form { display:grid; grid-template-columns:180px minmax(260px,1fr) auto minmax(140px,.7fr); gap:12px; align-items:center; padding:14px 16px; box-sizing:border-box; }
body.gi-prv-param-tipos .gi-prv-tipos-inline-form label { font-weight:700; }
body.gi-prv-param-tipos .gi-prv-tipos-inline-form input[type="text"] { width:100% !important; }
body.gi-prv-param-tipos .gi-prv-tipos-inline-form .gi-cli-actions { justify-content:flex-end; white-space:nowrap; }
body.gi-prv-param-tipos .gi-prv-param-table-head > table > tbody > tr:first-child { display:none; }
@media (max-width:760px){body.gi-prv-param-tipos .gi-prv-tipos-inline-form{grid-template-columns:1fr;} body.gi-prv-param-tipos .gi-prv-tipos-inline-form .gi-cli-actions{justify-content:flex-start;}}
/* Tipos de Proveedores: listado de alto natural, con scroll solo al exceder el �rea �til. */
body.gi-prv-param-tipos .gi-prv-tipos-table-wrap { width:100%; height:auto; max-height:calc(100vh - 178px); overflow:auto; }
/* Criterios de evaluaci�n: selecci�n y edici�n compactas; listado con espacio �til. */
body.gi-prv-param-criterios > form > table > tbody > tr:nth-child(2) { height:128px !important; }
body.gi-prv-param-criterios > form > table > tbody > tr:nth-child(2) > td { height:128px !important; padding:0 !important; vertical-align:top; }
body.gi-prv-param-criterios > form > table > tbody > tr:nth-child(3) { height:100% !important; }
body.gi-prv-param-criterios > form > table > tbody > tr:nth-child(3) > td { height:100% !important; vertical-align:top; }
body.gi-prv-param-criterios .gi-prv-criterios-form { display:grid; grid-template-columns:180px minmax(260px,1fr) 210px auto; gap:12px 16px; align-items:end; padding:14px 16px; box-sizing:border-box; }
body.gi-prv-param-criterios .gi-prv-criterios-field { display:flex; flex-direction:column; gap:5px; }
body.gi-prv-param-criterios .gi-prv-criterios-field label { font-weight:700; }
body.gi-prv-param-criterios .gi-prv-criterios-tipo { grid-column:1 / span 2; }
body.gi-prv-param-criterios .gi-prv-criterios-tipo select { width:100% !important; }
body.gi-prv-param-criterios .gi-prv-criterios-view { align-self:end; }
body.gi-prv-param-criterios .gi-prv-criterios-nombre { grid-column:1 / span 2; }
body.gi-prv-param-criterios .gi-prv-criterios-nombre input { width:100% !important; }
body.gi-prv-param-criterios .gi-prv-criterios-ponderacion { grid-column:3; }
body.gi-prv-param-criterios .gi-prv-criterios-ponderacion input { width:58px !important; text-align:center; }
body.gi-prv-param-criterios .gi-prv-criterios-actions { grid-column:4; justify-content:flex-end; white-space:nowrap; }
body.gi-prv-param-criterios .gi-prv-criterios-message { grid-column:1 / -1; color:#b42318; font-weight:700; }
body.gi-prv-param-criterios .gi-prv-criterios-table-wrap { width:100%; height:calc(100vh - 230px); min-height:250px; max-height:calc(100vh - 200px); overflow:auto; }
@media (max-width:760px){body.gi-prv-param-criterios .gi-prv-criterios-form{grid-template-columns:1fr;} body.gi-prv-param-criterios .gi-prv-criterios-tipo,body.gi-prv-param-criterios .gi-prv-criterios-nombre,body.gi-prv-param-criterios .gi-prv-criterios-ponderacion,body.gi-prv-param-criterios .gi-prv-criterios-actions{grid-column:1;} body.gi-prv-param-criterios .gi-prv-criterios-actions{justify-content:flex-start;}}
/* Tipos y Criterios: encabezado y contenido dentro de una �nica grilla alineada. */
body.gi-prv-param-tipos .gi-prv-tipos-table-wrap,
body.gi-prv-param-criterios .gi-prv-criterios-table-wrap { width:100%; overflow:auto; border:1px solid #cfd8e3; border-radius:7px; background:#fff; box-sizing:border-box; }
body.gi-prv-param-tipos .gi-prv-tipos-table-wrap { height:auto; max-height:calc(100vh - 178px); }
body.gi-prv-param-criterios .gi-prv-criterios-table-wrap { height:calc(100vh - 230px); min-height:250px; max-height:calc(100vh - 200px); }
body.gi-prv-param-tipos .gi-prv-param-unified-table,
body.gi-prv-param-criterios .gi-prv-param-unified-table { width:100% !important; border:0 !important; border-collapse:collapse !important; table-layout:fixed; }
body.gi-prv-param-tipos .gi-prv-param-unified-table td,
body.gi-prv-param-criterios .gi-prv-param-unified-table td { border:0 !important; border-right:1px solid #d5dee9 !important; border-bottom:1px solid #d5dee9 !important; padding:6px 8px; vertical-align:middle; }
body.gi-prv-param-tipos .gi-prv-param-unified-table tr td:last-child,
body.gi-prv-param-criterios .gi-prv-param-unified-table tr td:last-child { border-right:0 !important; }
body.gi-prv-param-tipos .gi-prv-param-unified-table tr:last-child td,
body.gi-prv-param-criterios .gi-prv-param-unified-table tr:last-child td { border-bottom:0 !important; }
body.gi-prv-param-tipos .gi-prv-param-unified-table .tittable td,
body.gi-prv-param-criterios .gi-prv-param-unified-table .tittable td { background:#e7edf5 !important; color:#17212f; font-weight:700; }
body.gi-prv-param-tipos .gi-prv-param-unified-table td:nth-child(1),
body.gi-prv-param-tipos .gi-prv-param-unified-table td:nth-child(2),
body.gi-prv-param-tipos .gi-prv-param-unified-table td:nth-child(4),
body.gi-prv-param-criterios .gi-prv-param-unified-table td:nth-child(1),
body.gi-prv-param-criterios .gi-prv-param-unified-table td:nth-child(2),
body.gi-prv-param-criterios .gi-prv-param-unified-table td:nth-child(5) { width:62px; text-align:center; }
body.gi-prv-param-criterios .gi-prv-param-unified-table td:nth-child(4) { width:150px; text-align:center; }
body.gi-prv-param-criterios .gi-prv-param-total td { background:#f8fbfe; }
/* Clasificaci�n de resultados: su primera fila contiene el formulario, no una cabecera legacy. */
body.gi-prv-param-clasificacion > form > table > tbody > tr:first-child,
body.gi-prv-param-clasificacion > form > table > tr:first-child { display:table-row !important; }
/* Clasificaci�n Resultados: composici�n equivalente a Clasificaci�n de Riesgos. */
body.gi-prv-param-clasificacion > form > table > tbody > tr:first-child { height:190px !important; }
body.gi-prv-param-clasificacion > form > table > tbody > tr:first-child > td { height:190px !important; padding:0 !important; vertical-align:top; }
body.gi-prv-param-clasificacion > form > table > tbody > tr:nth-child(2) { height:100% !important; }
body.gi-prv-param-clasificacion > form > table > tbody > tr:nth-child(2) > td { height:100% !important; padding:10px 12px !important; vertical-align:top; }
body.gi-prv-param-clasificacion .gi-prv-classification-form { display:grid; grid-template-columns:minmax(280px,1.2fr) 165px minmax(165px,.65fr) auto; gap:10px 16px; align-items:end; padding:14px 16px; box-sizing:border-box; }
body.gi-prv-param-clasificacion .gi-prv-classification-field { display:flex; flex-direction:column; gap:5px; }
body.gi-prv-param-clasificacion .gi-prv-classification-field label { color:#17212f; font-weight:700; }
body.gi-prv-param-clasificacion .gi-prv-classification-field input[type="text"] { width:100% !important; }
body.gi-prv-param-clasificacion .gi-prv-classification-range input[type="text"] { width:58px !important; text-align:center; }
body.gi-prv-param-clasificacion .gi-prv-classification-range div { display:flex; gap:7px; align-items:center; }
body.gi-prv-param-clasificacion .gi-prv-classification-color input[type="text"] { width:78px !important; }
body.gi-prv-param-clasificacion .gi-prv-classification-actions { justify-content:flex-end; white-space:nowrap; }
body.gi-prv-param-clasificacion .gi-prv-classification-scale { grid-column:1; color:#38516b; align-self:center; }
body.gi-prv-param-clasificacion .gi-prv-classification-palette { grid-column:2 / 4; align-self:center; min-height:58px; overflow:auto; }
body.gi-prv-param-clasificacion .gi-prv-classification-message { grid-column:4; align-self:center; color:#b42318; font-weight:700; }
@media (max-width:900px){body.gi-prv-param-clasificacion .gi-prv-classification-form{grid-template-columns:minmax(220px,1fr) auto;} body.gi-prv-param-clasificacion .gi-prv-classification-form > *{grid-column:auto !important;} body.gi-prv-param-clasificacion .gi-prv-classification-actions{justify-content:flex-start;}}
/* Clasificaci�n Resultados: formulario al alto real y listado en una �nica grilla. */
body.gi-prv-param-clasificacion > form > table > tbody > tr:first-child,
body.gi-prv-param-clasificacion > form > table > tbody > tr:first-child > td { height:142px !important; }
body.gi-prv-param-clasificacion .gi-prv-clasificacion-table-wrap { width:100%; height:auto; max-height:calc(100vh - 210px); overflow:auto; border:1px solid #cfd8e3; border-radius:7px; background:#fff; box-sizing:border-box; }
body.gi-prv-param-clasificacion .gi-prv-param-unified-table { width:100% !important; border:0 !important; border-collapse:collapse !important; table-layout:fixed; }
body.gi-prv-param-clasificacion .gi-prv-param-unified-table td { border:0 !important; border-right:1px solid #d5dee9 !important; border-bottom:1px solid #d5dee9 !important; padding:6px 8px; vertical-align:middle; }
body.gi-prv-param-clasificacion .gi-prv-param-unified-table tr td:last-child { border-right:0 !important; }
body.gi-prv-param-clasificacion .gi-prv-param-unified-table tr:last-child td { border-bottom:0 !important; }
body.gi-prv-param-clasificacion .gi-prv-param-unified-table .tittable td { background:#e7edf5 !important; color:#17212f; font-weight:700; }
body.gi-prv-param-clasificacion .gi-prv-param-unified-table td:nth-child(1),
body.gi-prv-param-clasificacion .gi-prv-param-unified-table td:nth-child(2),
body.gi-prv-param-clasificacion .gi-prv-param-unified-table td:nth-child(4),
body.gi-prv-param-clasificacion .gi-prv-param-unified-table td:nth-child(6) { width:62px; text-align:center; }
body.gi-prv-param-clasificacion .gi-prv-param-unified-table td:nth-child(5) { width:150px; text-align:center; }
body.gi-prv-param-clasificacion .gi-prv-clasificacion-color { padding:0 !important; }
/* Clientes y Proveedores: retorno en el extremo derecho de la botonera principal. */
body.gi-cli-toolbar-page .gi-cli-topbar__actions .gi-cli-return-action {
  margin-left: auto !important;
}