html {
  box-sizing: border-box;
}

*,
*:before,
*:after {
  box-sizing: inherit;
}

body.gi-doc-primary-page,
body.gi-doc-secondary-page,
body.gi-doc-list-page {
  margin: 0;
  background: #f4f7fb;
  color: #1f2933;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 12px;
  line-height: 1.35;
}

body.gi-doc-primary-page form,
body.gi-doc-secondary-page form,
body.gi-doc-list-page form {
  margin: 0;
}

body.gi-doc-primary-page {
  padding: 8px 8px 0;
}

.gi-doc-primary-shell {
  width: 100%;
}

.gi-doc-module-heading {
  overflow: hidden;
  border-collapse: separate !important;
  border-spacing: 0;
  border-radius: 8px 8px 0 0;
  background: #19984f;
}

.gi-doc-primary-stripe {
  width: 26px !important;
  height: 36px;
  background-image: none !important;
  background-color: #157f44 !important;
}

.gi-doc-primary-title {
  height: 36px;
  padding: 6px 12px !important;
  background: #19984f !important;
  color: #ffffff !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: 14px !important;
  font-weight: 700 !important;
}

#giDocPrimaryTabs,
#giDocSecondaryTabs {
  width: 100%;
  border-collapse: separate !important;
  border-spacing: 0;
  table-layout: fixed;
  background: #ffffff;
}

#giDocPrimaryTabs {
  border: 1px solid #d5dee9;
  border-top: 0;
  border-radius: 0 0 8px 8px;
  overflow: hidden;
}

#giDocPrimaryTabs td,
#giDocSecondaryTabs td {
  height: 32px !important;
  padding: 6px 10px !important;
  border: 0 !important;
  border-right: 1px solid #e0e7ef !important;
  border-bottom: 3px solid transparent !important;
  background: #ffffff !important;
  color: #58677a !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  text-align: center;
  white-space: nowrap;
  cursor: pointer;
}
#giDocPrimaryTabs td {
  height: 40px !important;
  padding: 9px 14px !important;
  font-size: 13px !important;
}

#giDocPrimaryTabs .gi-doc-menu-icon {
  width: 15px;
  margin-right: 8px;
  font-size: 14px;
}

#giDocPrimaryTabs td:last-child,
#giDocSecondaryTabs td:last-child {
  border-right: 0 !important;
}

#giDocPrimaryTabs td:hover,
#giDocSecondaryTabs td:hover {
  border-bottom-color: #ff9700 !important;
  background: #ffffff !important;
  color: #1f2933 !important;
}

.gi-doc-menu-icon {
  display: inline-block;
  width: 14px;
  margin-right: 7px;
  color: inherit;
  font-size: 13px;
  line-height: 1;
  text-align: center;
  vertical-align: -1px;
}
#giDocPrimaryTabs td.is-active,
#giDocSecondaryTabs td.is-active {
  border-bottom-color: #19984f !important;
  background: #fff4f4 !important;
  color: #126b38 !important;
}

body.gi-doc-secondary-page {
  padding: 4px 8px 0;
}

.gi-doc-secondary-shell {
  display: inline-block;
  max-width: 100%;
  overflow: hidden;
  border: 1px solid #d5dee9;
  border-radius: 8px;
  background: #ffffff;
}

#giDocSecondaryTabs {
  width: auto;
  table-layout: auto;
}

#giDocSecondaryTabs tr:first-child {
  display: none;
}

#giDocSecondaryTabs td {
  width: 190px !important;
  min-width: 190px;
  height: 34px !important;
  padding: 7px 14px !important;
  text-align: left;
}

body.gi-doc-list-page #dvContenido {
  padding: 6px 8px;
}

body.gi-doc-list-page .gi-doc-list-accent {
  display: none;
}

body.gi-doc-list-page .gi-doc-list-workspace {
  width: 100% !important;
  min-height: calc(100vh - 24px) !important;
  border: 1px solid #d5dee9 !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  border-radius: 8px;
  background: #ffffff;
  box-shadow: 0 8px 20px rgba(15, 23, 42, 0.06);
  overflow: hidden;
}

body.gi-doc-list-page .gi-doc-list-workspace > tbody > tr > td {
  padding: 10px !important;
  vertical-align: top;
}

.gi-doc-list-layout,
.gi-doc-list-results {
  width: 100% !important;
}

.gi-doc-list-filters {
  width: 100% !important;
  margin: 0 0 8px;
  border-bottom: 1px solid #d5dee9;
}

.gi-doc-list-filters > tbody > tr > td {
  padding: 0 0 5px;
  vertical-align: bottom;
  color: #334155;
}

.gi-doc-filter-row {
  display: flex;
  flex-wrap: nowrap;
  align-items: flex-end;
  gap: 5px;
}

.gi-doc-filter-control {
  flex: 0 0 auto;
}

.gi-doc-filter-control label {
  display: block;
  margin: 0 0 2px;
  font-size: 11px;
  font-weight: 700;
}

.gi-doc-filter-name input {
  width: 310px !important;
}

.gi-doc-filter-date .gi-doc-date-field {
  width: 78px !important;
}
.gi-doc-filter-date--first {
  margin-left: 38px;
}

.gi-doc-filter-date + .gi-doc-filter-date {
  margin-left: 5px;
}

.gi-doc-list-filter-actions {
  display: flex;
  align-items: center;
  gap: 4px;
  margin-left: 38px;
  padding-left: 1px;
  white-space: nowrap;
}

.gi-doc-return-action-wrap {
  margin-left: auto;
  white-space: nowrap;
}

body.gi-doc-list-page .gi-doc-clear-action,
body.gi-doc-list-page .gi-doc-return-action {
  margin-left: 0;
}

body.gi-doc-list-page select,
body.gi-doc-list-page input[type="text"] {
  min-height: 26px;
  padding: 3px 6px;
  border: 1px solid #b8c5d4;
  border-radius: 5px;
  background: #ffffff;
  color: #1f2933;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 11px;
}

body.gi-doc-list-page select {
  min-width: 128px;
}

body.gi-doc-list-page select:focus,
body.gi-doc-list-page input[type="text"]:focus {
  outline: 2px solid rgba(255, 151, 0, 0.22);
  border-color: #ff9700;
}

body.gi-doc-list-page input[type="button"] {
  min-height: 26px;
  padding: 3px 10px;
  border: 1px solid #b8c5d4;
  border-radius: 6px;
  background: #ffffff;
  color: #1f2933;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 11px;
  font-weight: 700;
  cursor: pointer;
}

body.gi-doc-list-page input[type="button"]:hover {
  border-color: #ff9700;
  background: #ffffff;
}

body.gi-doc-list-page input[type="button"].gi-doc-clear-action:hover {
  border-color: #ff9700 !important;
  background: #fff6ea !important;
  color: #1f2933 !important;
}

body.gi-doc-list-page input[value="Buscar"] {
  border-color: #ff9700;
  background: #ff9700;
  color: #ffffff;
}

body.gi-doc-list-page input[type="button"][value="Buscar"]:hover {
  border-color: #ff9700 !important;
  background: #fff6ea !important;
  color: #1f2933 !important;
}

body.gi-doc-list-page .gi-doc-return-action {
  margin-left: 6px;
  border-color: #19984f !important;
  background: #effaf3 !important;
  color: #126b38 !important;
}

body.gi-doc-list-page .gi-doc-return-action:hover {
  border-color: #ff9700 !important;
  background: #effaf3 !important;
  color: #126b38 !important;
}

.gi-doc-list-results {
  margin-top: 2px;
}

.gi-doc-list-table {
  width: 100% !important;
  border: 1px solid #d5dee9 !important;
  border-collapse: collapse !important;
}

.gi-doc-list-table td {
  padding: 7px 8px !important;
  border-color: #dfe6ee !important;
  color: #27364a;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 12px;
}

.gi-doc-list-table--head td,
.gi-doc-list-table tr.tittable td {
  background: #eef4fb !important;
  color: #334155;
  font-weight: 700;
}

.gi-doc-list-table--unified thead td {
  white-space: nowrap;
}

.gi-doc-list-table--unified tbody tr:nth-child(even) td {
  background: #f8fbfe;
}

.gi-doc-list-scroll {
  height: calc(100vh - 96px) !important;
  min-height: 260px;
  max-height: none !important;
  overflow: auto !important;
  border: 1px solid #d5dee9;
  border-radius: 8px;
  padding-right: 12px;
  scrollbar-gutter: stable;
}

.gi-doc-list-table--unified thead td {
  position: sticky;
  top: 0;
  z-index: 2;
}

@media (max-width: 760px) {
  body.gi-doc-primary-page,
  body.gi-doc-secondary-page,
  body.gi-doc-list-page #dvContenido {
    padding-left: 6px;
    padding-right: 6px;
  }

  #giDocPrimaryTabs,
  #giDocSecondaryTabs {
    display: block;
    overflow-x: auto;
    white-space: nowrap;
  }

  #giDocPrimaryTabs tbody,
  #giDocPrimaryTabs tr,
  #giDocSecondaryTabs tbody,
  #giDocSecondaryTabs tr {
    display: table;
    width: max-content;
  }

  #giDocPrimaryTabs td,
  #giDocSecondaryTabs td {
    min-width: 190px;
  }
}
#giDocPrimaryTabs td {
  height: 40px !important;
  padding: 9px 14px !important;
  font-size: 13px !important;
}

#giDocPrimaryTabs .gi-doc-menu-icon {
  width: 15px;
  margin-right: 8px;
  font-size: 14px;
}
body.gi-doc-list-page img.gi-date-icon {
  width: 18px;
  height: 18px;
  margin: 0 0 0 3px;
  vertical-align: middle;
  cursor: pointer;
}

.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;
}

.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 {
  min-height: 0;
  margin: 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, 1fr);
  gap: 3px;
}

.gi-date-grid > * {
  min-width: 0;
}

.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;
  color: #1f2933;
}

.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;
}
body.gi-doc-list-page .gi-doc-viewer-modal,
body.gi-doc-confection-page .gi-doc-viewer-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-doc-list-page .gi-doc-viewer-dialog,
body.gi-doc-confection-page .gi-doc-viewer-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-doc-list-page .gi-doc-viewer-titlebar,
body.gi-doc-confection-page .gi-doc-viewer-titlebar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 42px;
  padding: 0 12px 0 40px;
  background: #19984f;
  color: #ffffff;
  font-size: 16px;
  font-weight: 700;
  position: relative;
  box-sizing: border-box;
  flex: 0 0 auto;
}

body.gi-doc-list-page .gi-doc-viewer-titlebar:before,
body.gi-doc-confection-page .gi-doc-viewer-titlebar:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 28px;
  background: #147a3f;
}

body.gi-doc-list-page .gi-doc-viewer-titlebar input[type="button"],
body.gi-doc-confection-page .gi-doc-viewer-titlebar input[type="button"] {
  min-height: 30px;
  margin: 0;
  border-color: #19984f;
  background: #effaf3;
  color: #126b38;
}

body.gi-doc-list-page .gi-doc-viewer-titlebar input[type="button"]:hover,
body.gi-doc-confection-page .gi-doc-viewer-titlebar input[type="button"]:hover {
  border-color: #ff9700;
  background: #effaf3;
  color: #126b38;
}

body.gi-doc-list-page .gi-doc-viewer-frame-wrap,
body.gi-doc-confection-page .gi-doc-viewer-frame-wrap {
  flex: 1 1 auto;
  min-height: 0;
  background: #ffffff;
}

body.gi-doc-list-page .gi-doc-viewer-frame,
body.gi-doc-confection-page .gi-doc-viewer-frame {
  display: block;
  width: 100%;
  height: 100%;
}
body.gi-doc-versions-page {
  margin: 0;
  background: #f4f7fb;
  color: #1f2933;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 12px;
  line-height: 1.35;
}

body.gi-doc-versions-page form {
  margin: 0;
}

.gi-doc-versions-shell {
  min-height: 100vh;
  padding: 8px;
  box-sizing: border-box;
}

.gi-doc-versions-card {
  min-height: calc(100vh - 16px);
  border: 1px solid #d5dee9;
  border-radius: 8px;
  background: #ffffff;
  overflow: hidden;
  box-sizing: border-box;
}

.gi-doc-versions-title {
  display: flex;
  align-items: center;
  min-height: 32px;
  padding: 0 10px;
  background: #19984f;
  color: #ffffff;
  font-size: 14px;
  font-weight: 700;
}

.gi-doc-versions-title:before {
  content: "";
  align-self: stretch;
  width: 20px;
  margin: 0 10px 0 -10px;
  background: #147a3f;
}

.gi-doc-versions-section {
  padding: 10px 12px 12px;
  background: #ffffff;
}

.gi-doc-versions-table {
  width: 100% !important;
  border: 1px solid #d5dee9 !important;
  border-collapse: collapse !important;
  color: #27364a;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 12px;
}

.gi-doc-versions-table td {
  padding: 8px 9px !important;
  border-color: #dfe6ee !important;
  vertical-align: top;
}

.gi-doc-versions-table tr.tittable td {
  background: #eef4fb !important;
  color: #334155;
  font-weight: 700;
  vertical-align: middle;
}

.gi-doc-versions-table tr:nth-child(odd):not(.tittable) td {
  background: #f8fbfe;
}
body.gi-doc-admin-page {
  margin: 0;
  background: #f4f7fb;
  color: #1f2933;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 12px;
  line-height: 1.35;
}

body.gi-doc-admin-page form {
  margin: 0;
}

.gi-doc-admin-shell {
  min-height: 100vh;
  padding: 8px;
  box-sizing: border-box;
}

.gi-doc-admin-card {
  min-height: calc(100vh - 16px);
  border: 1px solid #d5dee9;
  border-radius: 8px;
  background: #ffffff;
  overflow: hidden;
  box-sizing: border-box;
}

.gi-doc-admin-title {
  display: flex;
  align-items: center;
  min-height: 32px;
  padding: 0 10px;
  background: #19984f;
  color: #ffffff;
  font-size: 14px;
  font-weight: 700;
}

.gi-doc-admin-title:before {
  content: "";
  align-self: stretch;
  width: 20px;
  margin: 0 10px 0 -10px;
  background: #147a3f;
}

.gi-doc-admin-section {
  padding: 10px 12px 12px;
  border-bottom: 1px solid #d5dee9;
  background: #ffffff;
}

.gi-doc-admin-section--soft {
  background: #f8fbfe;
}

.gi-doc-admin-section-label {
  margin-bottom: 8px;
  color: #334155;
  font-weight: 700;
}

.gi-doc-admin-grid {
  display: grid;
  grid-template-columns: minmax(150px, 20fr) minmax(150px, 20fr) minmax(280px, 60fr);
  gap: 9px 16px;
}

.gi-doc-admin-field {
  min-width: 0;
}

.gi-doc-admin-field--wide {
  grid-column: span 1;
}

.gi-doc-admin-field--full {
  grid-column: 1 / -1;
}

.gi-doc-admin-meta-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 9px 12px;
}

.gi-doc-admin-field label {
  display: block;
  margin-bottom: 3px;
  color: #334155;
  font-weight: 700;
}

.gi-doc-admin-field input[type="text"],
.gi-doc-admin-field select,
.gi-doc-admin-file-grid input[type="file"] {
  width: 100% !important;
  min-height: 28px;
  padding: 4px 7px;
  border: 1px solid #b8c5d4;
  border-radius: 5px;
  background: #ffffff;
  color: #1f2933;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 12px;
  box-sizing: border-box;
}

.gi-doc-admin-field input[type="text"]:focus,
.gi-doc-admin-field select:focus {
  outline: 2px solid rgba(255, 151, 0, 0.22);
  border-color: #ff9700;
}

.gi-doc-admin-file-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(220px, 1.2fr);
  gap: 8px 16px;
  align-items: center;
}

.gi-doc-admin-file-link {
  color: #126b38;
  font-weight: 700;
  text-decoration: none;
}

.gi-doc-admin-file-link:hover {
  color: #126b38;
  text-decoration: underline;
}

.gi-doc-admin-upload-actions {
  grid-column: 1 / -1;
  display: flex;
  align-items: center;
  gap: 10px;
  color: #58677a;
}

.gi-doc-admin-actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 10px 12px;
  background: #ffffff;
}

.gi-doc-admin-actions-main {
  display: flex;
  align-items: center;
  gap: 6px;
}

.gi-doc-admin-page input[type="button"] {
  min-height: 28px;
  padding: 4px 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;
}

.gi-doc-admin-page input[type="button"]:hover {
  border-color: #ff9700;
  background: #fff6ea;
  color: #1f2933;
}

.gi-doc-admin-page input[value="Guardar"],
.gi-doc-admin-page input[value="Subir Archivo"] {
  border-color: #ff9700;
  background: #ff9700;
  color: #ffffff;
}

.gi-doc-admin-page input[value="Guardar"]:hover,
.gi-doc-admin-page input[value="Subir Archivo"]:hover {
  border-color: #ff9700;
  background: #fff6ea;
  color: #1f2933;
}

.gi-doc-admin-page input[value="Cancelar"] {
  border-color: #19984f;
  background: #effaf3;
  color: #126b38;
}

.gi-doc-admin-page input[value="Cancelar"]:hover {
  border-color: #ff9700;
  background: #effaf3;
  color: #126b38;
}

.gi-doc-admin-page .gi-doc-admin-destructive {
  border-color: #ef4444;
  background: #ffffff;
  color: #b42318;
}

.gi-doc-admin-page .gi-doc-admin-destructive:hover {
  border-color: #ef4444;
  background: #fff4f4;
  color: #b42318;
}

.gi-doc-admin-message {
  padding: 8px 12px;
  border-top: 1px solid #f4c7c7;
  background: #fff4f4;
  color: #b42318;
  font-weight: 700;
}

@media (max-width: 620px) {
  .gi-doc-admin-grid,
  .gi-doc-admin-meta-grid,
  .gi-doc-admin-file-grid {
    grid-template-columns: 1fr;
  }

  .gi-doc-admin-upload-actions {
    grid-column: auto;
    align-items: flex-start;
    flex-direction: column;
    gap: 6px;
  }

  .gi-doc-admin-actions {
    align-items: flex-start;
    flex-direction: column;
  }
}
body.gi-doc-create-page {
  margin: 0;
  padding: 4px 8px 0;
  background: #f4f7fb;
  color: #1f2933;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 12px;
  line-height: 1.35;
}

body.gi-doc-create-page form {
  margin: 0;
}

.gi-doc-create-tabs {
  display: inline-flex;
  width: auto;
  max-width: 100%;
  margin: 0 0 6px;
  overflow: hidden;
  border: 1px solid #d5dee9;
  border-radius: 8px;
  background: #ffffff;
}

.gi-doc-create-tab {
  flex: 0 0 190px;
  width: 190px;
  min-width: 190px;
  min-height: 34px;
  padding: 7px 14px;
  border: 0;
  border-right: 1px solid #e0e7ef;
  border-bottom: 3px solid transparent;
  background: #ffffff;
  color: #58677a;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 12px;
  font-weight: 700;
  text-align: left;
  cursor: pointer;
}

.gi-doc-create-tab:last-child {
  border-right: 0;
}

.gi-doc-create-tab:hover {
  border-bottom-color: #ff9700;
  background: #ffffff;
  color: #1f2933;
}

.gi-doc-create-tab.is-active {
  border-bottom-color: #19984f;
  background: #fff4f4;
  color: #126b38;
}

.gi-doc-create-tab .gi-doc-menu-icon {
  width: 14px;
  margin-right: 7px;
  font-size: 13px;
}

@media (max-width: 620px) {
  body.gi-doc-create-page {
    padding: 6px;
  }

  .gi-doc-create-tabs {
    overflow-x: auto;
  }

  .gi-doc-create-tab {
    min-width: 180px;
  }
}
.gi-doc-create-workspace {
  display: grid;
  grid-template-columns: minmax(390px, 0.88fr) minmax(560px, 1.42fr);
  gap: 10px;
  width: 100%;
  height: calc(100vh - 58px);
  max-height: calc(100vh - 58px);
}

.gi-doc-create-card {
  min-width: 0;
  overflow: hidden;
  border: 1px solid #d5dee9;
  border-radius: 8px;
  background: #ffffff;
}

.gi-doc-create-card-title {
  min-height: 34px;
  padding: 8px 11px;
  border-left: 26px solid #157f44;
  background: #19984f;
  color: #ffffff;
  font-size: 13px;
  font-weight: 700;
}

.gi-doc-create-card-title .gi-doc-menu-icon {
  width: 14px;
  margin-right: 7px;
}

.gi-doc-create-data-card {
  display: flex;
  flex-direction: column;
}

.gi-doc-create-data-grid {
  display: grid;
  grid-template-columns: minmax(130px, 0.85fr) minmax(170px, 1.15fr);
  gap: 9px 12px;
  padding: 10px;
}

.gi-doc-create-field {
  min-width: 0;
}

.gi-doc-create-field label,
.gi-doc-create-requirement-label {
  display: block;
  margin-bottom: 3px;
  color: #334155;
  font-size: 11px;
  font-weight: 700;
}

.gi-doc-create-field select,
.gi-doc-create-field input[type="text"] {
  width: 100% !important;
  min-height: 28px;
  padding: 4px 7px;
  border: 1px solid #b8c5d4;
  border-radius: 5px;
  background: #ffffff;
  color: #1f2933;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 12px;
}

.gi-doc-create-field select:focus,
.gi-doc-create-field input[type="text"]:focus {
  outline: 2px solid rgba(255, 151, 0, 0.22);
  border-color: #ff9700;
}

.gi-doc-create-field--cargo {
  align-self: end;
  min-height: 28px;
}

.gi-doc-create-field--cargo select {
  width: 100% !important;
}

.gi-doc-create-field--wide {
  min-width: 0;
}

.gi-doc-create-field--name {
  min-width: 0;
}

.gi-doc-create-field--version input[type="text"] {
  max-width: 74px;
}

.gi-doc-create-meta-grid {
  display: grid;
  grid-column: 1 / -1;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 9px 12px;
}

.gi-doc-create-actions {
  margin-top: auto;
  padding: 9px 10px;
  border-top: 1px solid #e0e7ef;
  text-align: right;
}

.gi-doc-create-primary-action {
  min-height: 29px;
  padding: 5px 12px;
  border: 1px solid #ff9700;
  border-radius: 6px;
  background: #ff9700;
  color: #ffffff;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 12px;
  font-weight: 700;
  cursor: pointer;
}

.gi-doc-create-primary-action:hover {
  border-color: #ff9700;
  background: #fff6ea;
  color: #1f2933;
}

.gi-doc-create-requirements-card {
  display: flex;
  min-width: 0;
  flex-direction: column;
}

.gi-doc-create-requirement-grid {
  display: grid;
  flex: 1 1 auto;
  min-height: 0;
  overflow: hidden;
  grid-template-columns: minmax(250px, 1.4fr) minmax(155px, 0.8fr) minmax(155px, 0.8fr);
  gap: 8px;
  padding: 10px;
}

.gi-doc-create-requirement-panel {
  display: flex;
  min-width: 0;
  min-height: 0;
  flex-direction: column;
}

.gi-doc-create-requirement-scroll {
  min-height: 0;
  flex: 1 1 auto;
  overflow: auto;
  border: 1px solid #b8c5d4;
  background: #ffffff;
}

.gi-doc-create-requirement-scroll table {
  border-color: #d5dee9 !important;
  border-collapse: collapse !important;
}

.gi-doc-create-requirement-scroll td {
  padding: 4px 5px;
  border-color: #dfe6ee !important;
  color: #27364a;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 11px;
}

.gi-doc-create-requirement-scroll tr:first-child td {
  background: #eef4fb !important;
  color: #334155;
}

@media (max-width: 980px) {
  .gi-doc-create-workspace {
    grid-template-columns: 1fr;
    height: auto;
    max-height: none;
  }
}

@media (max-width: 620px) {
  .gi-doc-create-data-grid,
  .gi-doc-create-meta-grid,
  .gi-doc-create-requirement-grid {
    grid-template-columns: 1fr;
  }

  .gi-doc-create-meta-grid {
    grid-column: auto;
  }

  .gi-doc-create-requirement-scroll {
    height: 220px;
  }
}
.gi-doc-create-field--file {
  grid-column: 1 / -1;
}

.gi-doc-create-field input[type="file"] {
  width: 100%;
  min-height: 28px;
  padding: 3px 5px;
  border: 1px solid #b8c5d4;
  border-radius: 5px;
  background: #ffffff;
  color: #1f2933;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 12px;
}

.gi-doc-create-file-help {
  margin-top: 3px;
  color: #66758a;
  font-size: 11px;
}
body.gi-doc-create-notice-page {
  display: grid;
  min-height: 100vh;
  margin: 0;
  padding: 24px;
  place-items: center;
  background: #f4f7fb;
  color: #1f2933;
  font-family: Arial, Helvetica, sans-serif;
}

.gi-doc-create-notice {
  width: min(650px, 100%);
  overflow: hidden;
  border: 1px solid #d5dee9;
  border-radius: 8px;
  background: #ffffff;
  box-shadow: 0 12px 28px rgba(15, 23, 42, 0.1);
}

.gi-doc-create-notice-title {
  min-height: 42px;
  padding: 11px 14px;
  border-left: 30px solid #157f44;
  background: #19984f;
  color: #ffffff;
  font-size: 14px;
  font-weight: 700;
}

.gi-doc-create-notice-title .fa {
  margin-right: 8px;
  font-size: 15px;
}

.gi-doc-create-notice-content {
  padding: 22px 26px 24px;
  color: #334155;
  font-size: 13px;
  line-height: 1.6;
}

.gi-doc-create-notice--error {
  border-color: #f1b8b8;
}

.gi-doc-create-notice--error .gi-doc-create-notice-title {
  border-left-color: #c93434;
  background: #ef4444;
}

@media (max-width: 620px) {
  body.gi-doc-create-notice-page {
    padding: 14px;
  }

  .gi-doc-create-notice-content {
    padding: 18px;
  }
}
body.gi-doc-confection-page {
  margin: 0;
  padding: 4px 8px 0;
  background: #f4f7fb;
  color: #1f2933;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 12px;
  line-height: 1.35;
}

body.gi-doc-confection-page form {
  margin: 0;
}

.gi-doc-confection-tabs {
  display: inline-flex;
  max-width: 100%;
  margin: 0 0 6px;
  overflow: hidden;
  border: 1px solid #d5dee9;
  border-radius: 8px;
  background: #ffffff;
}

.gi-doc-confection-tab {
  width: 190px;
  min-width: 190px;
  min-height: 34px;
  padding: 7px 14px;
  border: 0;
  border-right: 1px solid #e0e7ef;
  border-bottom: 3px solid transparent;
  background: #ffffff;
  color: #58677a;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 12px;
  font-weight: 700;
  text-align: left;
  cursor: pointer;
}

.gi-doc-confection-tab:last-child {
  border-right: 0;
}

.gi-doc-confection-tab:hover {
  border-bottom-color: #ff9700;
  background: #ffffff;
  color: #1f2933;
}

.gi-doc-confection-tab.is-active {
  border-bottom-color: #19984f;
  background: #fff4f4;
  color: #126b38;
}

.gi-doc-confection-tab .gi-doc-menu-icon,
.gi-doc-confection-card-title .gi-doc-menu-icon {
  width: 14px;
  margin-right: 7px;
  font-size: 13px;
}

.gi-doc-confection-workspace,
.gi-doc-confection-view {
  height: calc(100vh - 58px);
  min-height: 360px;
}

.gi-doc-confection-card {
  min-width: 0;
  overflow: hidden;
  border: 1px solid #d5dee9;
  border-radius: 8px;
  background: #ffffff;
}

.gi-doc-confection-list-card {
  display: flex;
  height: 100%;
  flex-direction: column;
}

.gi-doc-confection-card-title {
  min-height: 34px;
  padding: 8px 11px;
  border-left: 26px solid #157f44;
  background: #19984f;
  color: #ffffff;
  font-size: 13px;
  font-weight: 700;
}

.gi-doc-confection-filters {
  display: flex;
  align-items: flex-end;
  gap: 8px;
  padding: 9px 10px;
  border-bottom: 1px solid #d5dee9;
}

.gi-doc-confection-field {
  min-width: 0;
}

.gi-doc-confection-field label {
  display: block;
  margin-bottom: 3px;
  color: #334155;
  font-size: 11px;
  font-weight: 700;
}

.gi-doc-confection-field select,
.gi-doc-confection-field input[type="text"] {
  width: 100% !important;
  min-height: 28px;
  padding: 4px 7px;
  border: 1px solid #b8c5d4;
  border-radius: 5px;
  background: #ffffff;
  color: #1f2933;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 12px;
}

.gi-doc-confection-filters .gi-doc-confection-field {
  width: 220px;
}

.gi-doc-confection-field select:focus,
.gi-doc-confection-field input[type="text"]:focus {
  outline: 2px solid rgba(255, 151, 0, 0.22);
  border-color: #ff9700;
}

.gi-doc-confection-primary-action {
  min-height: 29px;
  padding: 5px 12px;
  border: 1px solid #ff9700;
  border-radius: 6px;
  background: #ff9700;
  color: #ffffff;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 12px;
  font-weight: 700;
  cursor: pointer;
}

.gi-doc-confection-primary-action:hover {
  border-color: #ff9700;
  background: #fff6ea;
  color: #1f2933;
}

.gi-doc-confection-table-head-wrap {
  overflow: hidden;
  border-bottom: 1px solid #d5dee9;
}

.gi-doc-confection-table-head,
.gi-doc-confection-list-scroll table,
.gi-doc-confection-selection-list table {
  width: 100% !important;
  border-color: #d5dee9 !important;
  border-collapse: collapse !important;
}

.gi-doc-confection-table-head td,
.gi-doc-confection-list-scroll td,
.gi-doc-confection-selection-list td {
  padding: 6px 7px !important;
  border-color: #dfe6ee !important;
  color: #27364a;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 11px;
}

.gi-doc-confection-table-head td,
.gi-doc-confection-selection-list tr:first-child td {
  background: #eef4fb !important;
  color: #334155;
  font-weight: 700;
}

.gi-doc-confection-list-scroll {
  flex: 1 1 auto;
  min-height: 0;
  overflow: auto;
}

.gi-doc-confection-list-scroll tbody tr:nth-child(even) td,
.gi-doc-confection-selection-list tbody tr:nth-child(even) td {
  background: #f8fbfe;
}

.gi-doc-confection-send-layout {
  display: grid;
  height: 100%;
  grid-template-columns: minmax(0, 3fr) minmax(0, 1fr);
  gap: 10px;
}

.gi-doc-confection-selection-card,
.gi-doc-confection-review-card {
  display: flex;
  min-height: 0;
  flex-direction: column;
}

.gi-doc-confection-selection-list {
  flex: 1 1 auto;
  min-height: 0;
  padding: 10px;
  overflow: auto;
}

.gi-doc-confection-review-body {
  display: flex;
  height: 100%;
  flex-direction: column;
  gap: 10px;
  padding: 10px;
}

.gi-doc-confection-notify-title {
  margin-top: 6px;
  padding-top: 9px;
  border-top: 1px solid #e0e7ef;
  color: #334155;
  font-size: 11px;
  font-weight: 700;
}

.gi-doc-confection-notify-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 8px;
}

.gi-doc-confection-notify-grid input[type="text"] {
  background: #f8fafc;
}

@media (max-width: 980px) {
  .gi-doc-confection-workspace,
  .gi-doc-confection-view {
    height: auto;
  }

  .gi-doc-confection-send-layout {
    grid-template-columns: 1fr;
  }

  .gi-doc-confection-selection-card {
    min-height: 360px;
  }
}

@media (max-width: 620px) {
  body.gi-doc-confection-page {
    padding: 4px 6px 0;
  }

  .gi-doc-confection-tabs {
    overflow-x: auto;
  }

  .gi-doc-confection-filters {
    flex-wrap: wrap;
  }

  .gi-doc-confection-filters .gi-doc-confection-field {
    width: 100%;
  }
}
.gi-doc-confection-data-table,
.gi-doc-confection-review-table {
  width: 100% !important;
  table-layout: fixed;
  border-color: #d5dee9 !important;
  border-collapse: collapse !important;
}

.gi-doc-confection-data-table th,
.gi-doc-confection-review-table th {
  position: sticky;
  top: 0;
  z-index: 1;
  padding: 7px !important;
  border: 1px solid #d5dee9 !important;
  background: #eef4fb !important;
  color: #334155;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 11px;
  font-weight: 700;
  text-align: left;
}

.gi-doc-confection-data-table th:first-child,
.gi-doc-confection-data-table th:nth-child(3),
.gi-doc-confection-data-table th:nth-child(7),
.gi-doc-confection-data-table th:nth-child(8),
.gi-doc-confection-data-table th:nth-child(9),
.gi-doc-confection-data-table th:last-child,
.gi-doc-confection-review-table th:first-child,
.gi-doc-confection-review-table th:last-child {
  text-align: center;
}

.gi-doc-confection-data-table td,
.gi-doc-confection-review-table td {
  padding: 6px 7px !important;
  border-color: #dfe6ee !important;
  color: #27364a;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 11px;
  overflow-wrap: break-word;
}

.gi-doc-confection-list-scroll .gi-doc-confection-data-table tbody tr:nth-child(even) td,
.gi-doc-confection-review-table tbody tr:nth-child(even) td {
  background: #f8fbfe;
}

.gi-doc-confection-ajax-scroll {
  height: 100%;
  overflow: auto;
}
/* Tablas de Confeccionar: mismo tratamiento que Documentos Vigentes. */
.gi-doc-confection-list-scroll,
.gi-doc-confection-ajax-scroll {
  overflow: auto;
  border: 1px solid #d5dee9;
  border-radius: 0 0 8px 8px;
  padding-right: 12px;
  scrollbar-gutter: stable;
  background: #ffffff;
}

.gi-doc-confection-data-table,
.gi-doc-confection-review-table {
  width: 100% !important;
  border: 1px solid #d5dee9 !important;
  border-collapse: collapse !important;
  color: #27364a;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 12px;
}

.gi-doc-confection-data-table th,
.gi-doc-confection-review-table th {
  position: sticky;
  top: 0;
  z-index: 2;
  padding: 7px 8px !important;
  border: 1px solid #d5dee9 !important;
  background: #eef4fb !important;
  color: #334155;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 12px;
  font-weight: 700;
  white-space: nowrap;
}

.gi-doc-confection-data-table td,
.gi-doc-confection-review-table td {
  padding: 7px 8px !important;
  border: 1px solid #dfe6ee !important;
  color: #27364a;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 12px;
  line-height: 1.35;
}

.gi-doc-confection-data-table tbody tr:nth-child(even) td,
.gi-doc-confection-review-table tbody tr:nth-child(even) td {
  background: #f8fbfe;
}

.gi-doc-confection-data-table tbody tr:hover td,
.gi-doc-confection-review-table tbody tr:hover td {
  background: #fffaf2;
}

.gi-doc-confection-selection-list {
  padding: 0;
  overflow: hidden;
}

.gi-doc-confection-selection-list .gi-doc-confection-ajax-scroll {
  height: 100%;
  border: 0;
  border-radius: 0;
}
.gi-doc-confection-review-action-row {
  display: flex;
  align-items: flex-end;
  gap: 8px;
}

.gi-doc-confection-review-action-row .gi-doc-confection-field {
  flex: 1 1 auto;
}

.gi-doc-confection-review-action-row .gi-doc-confection-primary-action {
  flex: 0 0 auto;
}

@media (max-width: 620px) {
  .gi-doc-confection-review-action-row {
    flex-direction: column;
    align-items: stretch;
  }
}
body.gi-doc-review-page { margin:0; padding:4px 8px 0; background:#f4f7fb; color:#1f2933; font-family:Arial, Helvetica, sans-serif; font-size:12px; line-height:1.35; }
body.gi-doc-review-page form { margin:0; }
.gi-doc-review-tabs { display:inline-flex; max-width:100%; margin:0 0 6px; overflow:hidden; border:1px solid #d5dee9; border-radius:8px; background:#fff; }
.gi-doc-review-tab { width:190px; min-width:190px; min-height:34px; padding:7px 14px; border:0; border-right:1px solid #e0e7ef; border-bottom:3px solid transparent; background:#fff; color:#58677a; font:700 12px Arial, Helvetica, sans-serif; text-align:left; cursor:pointer; }
.gi-doc-review-tab:last-child { border-right:0; }
.gi-doc-review-tab:hover { border-bottom-color:#ff9700; background:#fff; color:#1f2933; }
.gi-doc-review-tab.is-active { border-bottom-color:#19984f; background:#fff4f4; color:#126b38; }
.gi-doc-review-tab .gi-doc-menu-icon,.gi-doc-review-card-title .gi-doc-menu-icon { width:14px; margin-right:7px; font-size:13px; }
.gi-doc-review-workspace,.gi-doc-review-view { height:calc(100vh - 58px); min-height:360px; }
.gi-doc-review-card { min-width:0; overflow:hidden; border:1px solid #d5dee9; border-radius:8px; background:#fff; }
.gi-doc-review-list-card,.gi-doc-review-selection-card,.gi-doc-review-action-card { display:flex; min-height:0; flex-direction:column; }
.gi-doc-review-list-card { height:100%; }
.gi-doc-review-card-title { min-height:34px; padding:8px 11px; border-left:26px solid #157f44; background:#19984f; color:#fff; font-size:13px; font-weight:700; }
.gi-doc-review-filters { display:flex; align-items:flex-end; gap:8px; padding:9px 10px; border-bottom:1px solid #d5dee9; }
.gi-doc-review-field { min-width:0; }
.gi-doc-review-field label { display:block; margin-bottom:3px; color:#334155; font-size:11px; font-weight:700; }
.gi-doc-review-field select,.gi-doc-review-field input[type="text"],.gi-doc-review-field textarea { width:100% !important; min-height:28px; padding:4px 7px; border:1px solid #b8c5d4; border-radius:5px; background:#fff; color:#1f2933; font:12px Arial, Helvetica, sans-serif; }
.gi-doc-review-field textarea { min-height:72px; resize:vertical; }
.gi-doc-review-field select:focus,.gi-doc-review-field input[type="text"]:focus,.gi-doc-review-field textarea:focus { outline:2px solid rgba(255,151,0,.22); border-color:#ff9700; }
.gi-doc-review-filters .gi-doc-review-field { width:220px; }
.gi-doc-review-primary-action { min-height:29px; padding:5px 12px; border:1px solid #ff9700; border-radius:6px; background:#ff9700; color:#fff; font:700 12px Arial, Helvetica, sans-serif; cursor:pointer; }
.gi-doc-review-primary-action:hover { border-color:#ff9700; background:#fff6ea; color:#1f2933; }
.gi-doc-review-list-scroll { flex:1 1 auto; min-height:0; overflow:auto; border-top:0; padding-right:12px; scrollbar-gutter:stable; }
.gi-doc-review-send-layout { display:grid; height:100%; grid-template-columns:minmax(0,3fr) minmax(0,1fr); gap:10px; }
.gi-doc-review-selection-list { flex:1 1 auto; min-height:0; padding:0; overflow:hidden; }
.gi-doc-review-action-body { display:flex; height:100%; flex-direction:column; gap:10px; padding:10px; overflow:auto; }
.gi-doc-review-section-label { margin-top:2px; padding-top:8px; border-top:1px solid #e0e7ef; color:#334155; font-size:11px; font-weight:700; }
.gi-doc-review-action-row { display:flex; align-items:flex-end; gap:8px; margin-top:4px; }
.gi-doc-review-action-row .gi-doc-review-field { flex:1 1 auto; }
.gi-doc-review-return-action { margin-top:8px; text-align:right; }
.gi-doc-review-return-button { min-height:29px; padding:5px 12px; border:1px solid #c93434; border-radius:6px; background:#fff; color:#c93434; font:700 12px Arial, Helvetica, sans-serif; cursor:pointer; }
.gi-doc-review-return-button:hover { border-color:#c93434; background:#fff4f4; color:#a11d1d; }
.gi-doc-review-notify-grid { display:grid; grid-template-columns:1fr; gap:8px; margin-top:8px; }
.gi-doc-review-notify-grid input[type="text"] { background:#f8fafc; }
@media (max-width:980px){ .gi-doc-review-workspace,.gi-doc-review-view{height:auto;} .gi-doc-review-send-layout{grid-template-columns:1fr;} .gi-doc-review-selection-card{min-height:360px;} }
@media (max-width:620px){ body.gi-doc-review-page{padding:4px 6px 0;} .gi-doc-review-tabs{overflow-x:auto;} .gi-doc-review-filters{flex-wrap:wrap;} .gi-doc-review-filters .gi-doc-review-field{width:100%;} .gi-doc-review-action-row{flex-direction:column;align-items:stretch;} }
.gi-doc-review-data-table,
.gi-doc-review-decision-table { width:100% !important; table-layout:fixed; border:1px solid #d5dee9 !important; border-collapse:collapse !important; color:#27364a; font-family:Arial, Helvetica, sans-serif; font-size:12px; }
.gi-doc-review-data-table th,.gi-doc-review-decision-table th { position:sticky; top:0; z-index:2; padding:7px 8px !important; border:1px solid #d5dee9 !important; background:#eef4fb !important; color:#334155; font:700 12px Arial, Helvetica, sans-serif; text-align:left; white-space:nowrap; }
.gi-doc-review-data-table td,.gi-doc-review-decision-table td { padding:7px 8px !important; border:1px solid #dfe6ee !important; color:#27364a; font:12px/1.35 Arial, Helvetica, sans-serif; overflow-wrap:break-word; }
.gi-doc-review-data-table th:first-child,.gi-doc-review-data-table th:nth-child(3),.gi-doc-review-data-table th:nth-child(7),.gi-doc-review-data-table th:nth-child(8),.gi-doc-review-data-table th:nth-child(9),.gi-doc-review-decision-table th:first-child,.gi-doc-review-decision-table th:last-child { text-align:center; }
.gi-doc-review-data-table tbody tr:nth-child(even) td,.gi-doc-review-decision-table tbody tr:nth-child(even) td { background:#f8fbfe; }
.gi-doc-review-data-table tbody tr:hover td,.gi-doc-review-decision-table tbody tr:hover td { background:#fffaf2; }
.gi-doc-review-ajax-scroll { height:100%; overflow:auto; padding-right:12px; scrollbar-gutter:stable; }
/* Formularios internos de confecci&oacute;n de documentos. */
body.gi-doc-editor-page {
  margin: 0;
  background: #f4f7fb;
  color: #1f2933;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 12px;
  line-height: 1.35;
}

body.gi-doc-editor-page form {
  margin: 0;
}

body.gi-doc-editor-page .gi-doc-editor-shell {
  min-height: 100vh;
  padding: 10px;
  box-sizing: border-box;
}

body.gi-doc-editor-page .gi-doc-editor-shell > table {
  width: 100% !important;
  border-spacing: 0;
}

body.gi-doc-editor-page .gi-doc-editor-shell > table > tbody > tr:first-child > td > table {
  width: 100% !important;
  border: 1px solid #d5dee9;
  border-radius: 8px;
  background: #ffffff;
  overflow: hidden;
}

body.gi-doc-editor-page .gi-doc-editor-shell input[type="text"],
body.gi-doc-editor-page .gi-doc-editor-shell select,
body.gi-doc-editor-page .gi-doc-editor-shell textarea,
body.gi-doc-editor-page .gi-doc-editor-shell input[type="file"] {
  box-sizing: border-box;
  border: 1px solid #b8c5d5;
  border-radius: 5px;
  background: #ffffff;
  color: #17212f;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 12px;
  padding: 5px 7px;
}

body.gi-doc-editor-page .gi-doc-editor-shell input[type="text"],
body.gi-doc-editor-page .gi-doc-editor-shell select {
  min-height: 30px;
}

body.gi-doc-editor-page .gi-doc-editor-shell input[type="button"] {
  min-height: 31px;
  margin: 0;
  border: 1px solid #b8c5d5;
  border-radius: 5px;
  background: #ffffff;
  color: #17212f;
  cursor: pointer;
  font-weight: 700;
  padding: 5px 10px;
}

body.gi-doc-editor-page .gi-doc-editor-shell input[type="button"]:hover {
  border-color: #ff9700;
  background: #fff4f4;
  color: #17212f;
}

body.gi-doc-editor-page .gi-doc-editor-shell .gi-doc-editor-primary-action,
body.gi-doc-role-page .gi-doc-editor-primary-action {
  border-color: #ff9700;
  background: #ff9700;
  color: #ffffff;
}

body.gi-doc-editor-page .gi-doc-editor-shell .gi-doc-editor-primary-action:hover,
body.gi-doc-role-page .gi-doc-editor-primary-action:hover {
  border-color: #ff9700;
  background: #fff6ea;
  color: #17212f;
}

body.gi-doc-editor-page .gi-doc-editor-tabs {
  width: auto !important;
  margin: 10px 0 0;
  border-collapse: separate !important;
  border-spacing: 0 !important;
}

body.gi-doc-editor-page .gi-doc-editor-tabs tr {
  display: flex;
}

body.gi-doc-editor-page .gi-doc-editor-tabs .gi-doc-editor-tab {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 142px;
  min-height: 34px !important;
  height: auto !important;
  box-sizing: border-box;
  border: 1px solid #d5dee9;
  border-bottom: 2px solid #d5dee9;
  background: #ffffff !important;
  background-image: none !important;
  color: #465a75;
  cursor: pointer;
  font-weight: 700;
  padding: 6px 12px;
  text-align: center;
}

body.gi-doc-editor-page .gi-doc-editor-tabs .gi-doc-editor-tab + .gi-doc-editor-tab {
  border-left: 0;
}

body.gi-doc-editor-page .gi-doc-editor-tabs .gi-doc-editor-tab:hover {
  border-bottom-color: #ff9700;
  background: #fff6ea !important;
  color: #17212f;
}

body.gi-doc-editor-page .gi-doc-editor-tabs .gi-doc-editor-tab.is-active {
  border-bottom-color: #19984f;
  background: #fff4f4 !important;
  color: #126b38;
}

body.gi-doc-editor-page .gi-doc-editor-tabs + table {
  display: none;
}

body.gi-doc-editor-page #dvContenido,
body.gi-doc-editor-page #dvCambio,
body.gi-doc-editor-page #dvListado,
body.gi-doc-editor-page #contenidos {
  margin-top: 8px;
  border: 1px solid #d5dee9;
  border-radius: 8px;
  background: #ffffff;
  box-sizing: border-box;
}

body.gi-doc-editor-page #dvContenido,
body.gi-doc-editor-page #dvCambio,
body.gi-doc-editor-page #dvListado {
  padding: 10px;
}

body.gi-doc-editor-page #dvCapitulos,
body.gi-doc-editor-page #dvCapitulosBase,
body.gi-doc-editor-page #contenidos iframe {
  border: 1px solid #d5dee9 !important;
  border-radius: 6px;
  background: #ffffff;
  box-sizing: border-box;
}

body.gi-doc-editor-page #dvCapitulos,
body.gi-doc-editor-page #dvCapitulosBase {
  scrollbar-gutter: stable;
}

body.gi-doc-editor-page #dvCambio table[border="1"],
body.gi-doc-editor-page #dvListado table[border="1"],
body.gi-doc-editor-page #dvContenido table[border="1"] {
  border-color: #d5dee9 !important;
  border-collapse: collapse;
}

body.gi-doc-editor-page #dvCambio table[border="1"] tr:first-child td,
body.gi-doc-editor-page #dvListado .tittable td,
body.gi-doc-editor-page #dvContenido .tittable td {
  background: #eef4fb !important;
  color: #30415a;
  font-weight: 700;
}

body.gi-doc-editor-page #dvContenido h3 {
  margin: 6px 0;
  color: #126b38;
  font-size: 13px;
}

body.gi-doc-editor-page #contenidos {
  overflow: hidden;
}

body.gi-doc-editor-page #contenidos iframe {
  display: block;
  width: 100% !important;
  min-height: 500px;
}
/* Segunda pasada: ficha superior alineada al popup de ajustes. */
body.gi-doc-editor-page .gi-doc-editor-shell > table > tbody > tr:first-child > td > table {
  border: 0;
  border-radius: 0;
  background: transparent;
  overflow: visible;
}

body.gi-doc-editor-page .gi-doc-editor-info-table {
  width: 100% !important;
  border: 1px solid #d5dee9 !important;
  border-radius: 8px;
  border-collapse: separate !important;
  border-spacing: 0;
  background: #ffffff;
  overflow: hidden;
}

body.gi-doc-editor-page .gi-doc-editor-info-table > tbody > tr > td {
  border-color: #dfe6ef !important;
  padding: 7px 8px;
  vertical-align: middle;
}

body.gi-doc-editor-page .gi-doc-editor-info-table > tbody > tr:first-child > td {
  background: #f8fbfe;
}

body.gi-doc-editor-page .gi-doc-editor-info-table > tbody > tr:first-child > td:first-child {
  background: #effaf3;
  color: #126b38;
}

body.gi-doc-editor-page .gi-doc-editor-info-table h3 {
  margin: 0;
  color: #52637b;
  font-size: 10px;
  font-weight: 700;
  line-height: 1.2;
}

body.gi-doc-editor-page .gi-doc-editor-info-table > tbody > tr:first-child > td:first-child h3 {
  color: #126b38;
  font-size: 12px;
}

body.gi-doc-editor-page .gi-doc-editor-info-table b {
  color: #17212f;
  font-size: 12px;
}

body.gi-doc-editor-page .gi-doc-editor-info-table table {
  width: auto;
  margin: 0;
  border-collapse: separate;
  border-spacing: 0;
}

body.gi-doc-editor-page .gi-doc-editor-info-table table td {
  border: 0 !important;
  background: transparent !important;
  padding: 0 3px;
}

body.gi-doc-editor-page .gi-doc-editor-info-table input[type="text"] {
  min-height: 28px;
}

body.gi-doc-editor-page .gi-doc-editor-secondary-action {
  border-color: #b8c5d4 !important;
  background: #ffffff !important;
  color: #17212f !important;
}

body.gi-doc-editor-page .gi-doc-editor-secondary-action:hover {
  border-color: #ff9700 !important;
  background: #fff6ea !important;
}

body.gi-doc-editor-page .gi-doc-editor-return-action {
  border-color: #19984f !important;
  background: #effaf3 !important;
  color: #126b38 !important;
}

body.gi-doc-editor-page .gi-doc-editor-return-action:hover {
  border-color: #ff9700 !important;
  background: #effaf3 !important;
  color: #126b38 !important;
}

body.gi-doc-editor-page #btnGrabarDocumento {
  margin-top: 8px;
}

body.gi-doc-standard-page #dvContenido > table:first-child,
body.gi-doc-role-page #dvContenido > table:first-child {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
}

body.gi-doc-standard-page #dvContenido > table:first-child td,
body.gi-doc-role-page #dvContenido > table:first-child td {
  padding: 5px 7px;
}

body.gi-doc-role-page #dvCapitulosBase {
  padding: 8px;
  background: #f8fbfe;
}
/* Tercera pasada: ficha sin cuadr&iacute;cula y navegaci&oacute;n interna homog&eacute;nea. */
body.gi-doc-editor-page .gi-doc-editor-info-table {
  border: 0 !important;
  border-radius: 8px;
  box-shadow: inset 0 0 0 1px #d5dee9;
}

body.gi-doc-editor-page .gi-doc-editor-info-table > tbody > tr > td {
  border: 0 !important;
  padding: 8px 9px;
}

body.gi-doc-editor-page .gi-doc-editor-info-table > tbody > tr + tr > td {
  background: #ffffff;
}

body.gi-doc-editor-page .gi-doc-editor-info-table > tbody > tr:first-child > td {
  background: #f8fbfe;
}

body.gi-doc-editor-page .gi-doc-editor-info-table > tbody > tr:first-child > td:first-child {
  background: #effaf3;
}

body.gi-doc-editor-page .gi-doc-editor-info-table table td {
  border: 0 !important;
}

body.gi-doc-editor-page .gi-doc-editor-tabs {
  width: 100% !important;
  margin: 10px 0 0;
  border: 1px solid #d5dee9;
  border-radius: 8px;
  background: #ffffff;
  overflow: hidden;
}

body.gi-doc-editor-page .gi-doc-editor-tabs tr {
  display: flex;
  width: 100%;
}

body.gi-doc-editor-page .gi-doc-editor-tabs .gi-doc-editor-tab {
  flex: 1 1 0;
  min-width: 0;
  min-height: 38px !important;
  border: 0;
  border-bottom: 2px solid transparent;
  border-radius: 0;
  padding: 7px 12px;
}

body.gi-doc-editor-page .gi-doc-editor-tabs .gi-doc-editor-tab + .gi-doc-editor-tab {
  border-left: 1px solid #dfe6ef;
}

body.gi-doc-editor-page .gi-doc-editor-tabs .gi-doc-editor-tab:hover {
  border-bottom-color: #ff9700;
}

body.gi-doc-editor-page .gi-doc-editor-tabs .gi-doc-editor-tab.is-active {
  border-bottom-color: #19984f;
  background: #fff4f4 !important;
}

body.gi-doc-editor-page .gi-doc-editor-return-action {
  min-height: 28px !important;
  padding: 4px 11px !important;
  border-radius: 6px !important;
  border-color: #19984f !important;
  background: #effaf3 !important;
  color: #126b38 !important;
}

body.gi-doc-editor-page .gi-doc-editor-return-action:hover {
  border-color: #ff9700 !important;
  background: #effaf3 !important;
  color: #126b38 !important;
}
/* Separadores sutiles de la ficha superior y retorno del modal. */
body.gi-doc-editor-page .gi-doc-editor-info-table > tbody > tr:first-child > td:not(:last-child) {
  box-shadow: inset -1px 0 0 #dfe6ef;
}

body.gi-doc-editor-page .gi-doc-editor-info-table > tbody > tr + tr > td {
  box-shadow: inset 0 1px 0 #dfe6ef;
}

body.gi-doc-editor-page .gi-doc-editor-info-table > tbody > tr + tr > td:not(:last-child) {
  box-shadow: inset 0 1px 0 #dfe6ef, inset -1px 0 0 #dfe6ef;
}

body.gi-doc-list-page .gi-doc-viewer-titlebar input.gi-doc-viewer-return-action,
body.gi-doc-confection-page .gi-doc-viewer-titlebar input.gi-doc-viewer-return-action {
  min-height: 30px;
  padding: 4px 11px;
  border: 1px solid #19984f !important;
  border-radius: 6px;
  background: #effaf3 !important;
  color: #126b38 !important;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 12px;
  font-weight: 700;
}

body.gi-doc-list-page .gi-doc-viewer-titlebar input.gi-doc-viewer-return-action:hover,
body.gi-doc-confection-page .gi-doc-viewer-titlebar input.gi-doc-viewer-return-action:hover {
  border-color: #ff9700 !important;
  background: #effaf3 !important;
  color: #126b38 !important;
}
/* Ajuste espec&iacute;fico: documento adjunto. */
body.gi-doc-attached-page .gi-doc-editor-info-table {
  border: 1px solid #cfd8e3 !important;
  box-shadow: none;
}

body.gi-doc-attached-page .gi-doc-editor-tabs .gi-doc-editor-tab:hover {
  border-bottom-color: #ff9700;
  background: #ffffff !important;
  color: #17212f;
}
/* Ajuste espec&iacute;fico: confecci&oacute;n por sistema. */
body.gi-doc-system-page .gi-doc-editor-info-table {
  border: 1px solid #cfd8e3 !important;
  box-shadow: none;
}

body.gi-doc-system-page .gi-doc-editor-tabs .gi-doc-editor-tab:hover {
  border-bottom-color: #ff9700;
  background: #ffffff !important;
  color: #17212f;
}
body.gi-doc-attached-page .gi-doc-editor-info-table > tbody > tr:first-child > td:nth-child(3) {
  width: 150px;
  white-space: nowrap;
}

body.gi-doc-attached-page .gi-doc-editor-info-table > tbody > tr:first-child > td:nth-child(5) {
  width: auto;
}

body.gi-doc-attached-page .gi-doc-editor-info-table > tbody > tr:first-child > td:nth-child(9) {
  width: 145px;
}
/* Tipograf&iacute;a homog&eacute;nea: documento adjunto. */
body.gi-doc-attached-page .gi-doc-editor-info-table h3 {
  color: #17212f;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 12px;
  font-weight: 700;
}
/* Altura de contenido: documento adjunto. */
body.gi-doc-attached-page #dvContenido {
  min-height: 285px;
}
/* Altura de historial: documento adjunto. */
body.gi-doc-attached-page #dvListado {
  min-height: 285px;
}
/* Tabla legacy de historial: documento adjunto. */
body.gi-doc-attached-page #dvListado > table {
  height: auto !important;
}
/* Datepicker interno: ficha de documento. */
body.gi-doc-standard-page .gi-doc-editor-date-row {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  white-space: nowrap;
}

body.gi-doc-standard-page .gi-doc-editor-date-label {
  color: #17212f;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 12px;
  font-weight: 700;
}

body.gi-doc-standard-page .gi-doc-editor-date-input {
  width: 92px !important;
  min-height: 30px;
  margin: 0;
  text-align: center;
}

body.gi-doc-standard-page .gi-doc-editor-date-icon {
  display: block;
  width: 18px;
  height: 18px;
  cursor: pointer;
}
/* Modal interno: requisitos normativos. */
body.gi-doc-editor-page .gi-doc-requirements-modal { position: fixed; inset: 0; z-index: 3000; display: flex; align-items: center; justify-content: center; padding: 14px; background: rgba(15, 23, 42, 0.28); box-sizing: border-box; }
body.gi-doc-editor-page .gi-doc-requirements-dialog { width: min(1060px, 94vw); height: min(620px, 88vh); display: flex; flex-direction: column; overflow: hidden; border: 1px solid #cfd8e3; border-radius: 8px; background: #ffffff; box-shadow: 0 18px 44px rgba(15, 23, 42, 0.24); }
body.gi-doc-editor-page .gi-doc-requirements-titlebar { position: relative; display: flex; align-items: center; justify-content: space-between; min-height: 42px; padding: 0 12px 0 40px; background: #19984f; color: #ffffff; font-size: 14px; font-weight: 700; flex: 0 0 auto; }
body.gi-doc-editor-page .gi-doc-requirements-titlebar:before { content: ""; position: absolute; inset: 0 auto 0 0; width: 28px; background: #147a3f; }
body.gi-doc-editor-page .gi-doc-requirements-frame-wrap { min-height: 0; flex: 1 1 auto; background: #ffffff; }
body.gi-doc-editor-page .gi-doc-requirements-frame { display: block; width: 100%; height: 100%; }
body.gi-doc-requirements-page { margin: 0; background: #f4f7fb; color: #1f2933; font-family: Arial, Helvetica, sans-serif; font-size: 12px; }
body.gi-doc-requirements-page form { margin: 0; }
.gi-doc-requirements-shell { min-height: 100vh; padding: 8px; box-sizing: border-box; }
.gi-doc-requirements-card { min-height: calc(100vh - 16px); overflow: hidden; border: 1px solid #d5dee9; border-radius: 8px; background: #ffffff; box-sizing: border-box; }
.gi-doc-requirements-title { display: flex; align-items: center; min-height: 32px; padding: 0 10px 0 40px; background: #19984f; color: #ffffff; font-size: 14px; font-weight: 700; position: relative; }
.gi-doc-requirements-title:before { content: ""; position: absolute; inset: 0 auto 0 0; width: 20px; background: #147a3f; }
.gi-doc-requirements-section { padding: 10px 12px; border-bottom: 1px solid #d5dee9; }
.gi-doc-requirements-section--soft { background: #f8fbfe; }
.gi-doc-requirements-topline { display: flex; align-items: end; justify-content: space-between; gap: 12px; }
.gi-doc-requirements-field { min-width: 220px; }
.gi-doc-requirements-field label, .gi-doc-requirements-panel-title { display: block; margin-bottom: 4px; color: #334155; font-weight: 700; }
.gi-doc-requirements-field select { width: 100%; min-height: 30px; padding: 4px 7px; border: 1px solid #b8c5d4; border-radius: 5px; background: #ffffff; color: #1f2933; box-sizing: border-box; }
.gi-doc-requirements-primary-action { min-height: 30px; padding: 4px 11px; border: 1px solid #ff9700; border-radius: 6px; background: #ff9700; color: #ffffff; font-weight: 700; cursor: pointer; }
.gi-doc-requirements-primary-action:hover { background: #fff6ea; color: #17212f; }
.gi-doc-requirements-grid { display: grid; grid-template-columns: minmax(0, 1.35fr) repeat(2, minmax(190px, 1fr)); gap: 10px; }
.gi-doc-requirements-panel { min-width: 0; }
.gi-doc-requirements-list { height: 270px; overflow-y: auto; border: 1px solid #d5dee9; border-radius: 6px; background: #ffffff; padding: 6px; box-sizing: border-box; scrollbar-gutter: stable; }
.gi-doc-requirements-list table { width: 100%; border-collapse: collapse; }
.gi-doc-requirements-list table td { padding: 4px 5px; border: 1px solid #dfe6ef !important; }
.gi-doc-requirements-list table tr:first-child td { background: #eef4fb !important; color: #30415a; font-weight: 700; }
.gi-doc-requirements-message { padding: 8px 12px; background: #fff4f4; color: #b42318; font-weight: 700; }
@media (max-width: 760px) { .gi-doc-requirements-grid { grid-template-columns: 1fr; } }
/* Retorno del modal de requisitos. */
body.gi-doc-editor-page .gi-doc-requirements-titlebar input.gi-doc-viewer-return-action {
  min-height: 30px;
  padding: 4px 11px;
  border: 1px solid #19984f !important;
  border-radius: 6px;
  background: #effaf3 !important;
  color: #126b38 !important;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 12px;
  font-weight: 700;
}

body.gi-doc-editor-page .gi-doc-requirements-titlebar input.gi-doc-viewer-return-action:hover {
  border-color: #ff9700 !important;
  background: #effaf3 !important;
  color: #126b38 !important;
}
/* Acci&oacute;n principal: actualizar documento adjunto. */
body.gi-doc-attached-page #giDocEditorActions #btnGrabarDocumento {
  border-color: #ff9700 !important;
  background: #ff9700 !important;
  color: #ffffff !important;
}

body.gi-doc-attached-page #giDocEditorActions #btnGrabarDocumento:hover {
  border-color: #ff9700 !important;
  background: #fff6ea !important;
  color: #17212f !important;
}
/* Alinea la acción principal con Editar Requisitos dentro del encabezado. */
body.gi-doc-editor-page #giDocEditorActions #btnGrabarDocumento {
  margin-top: 0 !important;
  vertical-align: middle;
}
/* Base visual compartida: documento confeccionado por sistema. */
body.gi-doc-system-page .gi-doc-editor-info-table h3 {
  color: #17212f;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 12px;
  font-weight: 700;
}

body.gi-doc-system-page #giDocEditorActions #btnGrabarDocumento {
  border-color: #ff9700 !important;
  background: #ff9700 !important;
  color: #ffffff !important;
}

body.gi-doc-system-page #giDocEditorActions #btnGrabarDocumento:hover {
  border-color: #ff9700 !important;
  background: #fff6ea !important;
  color: #17212f !important;
}
/* Modal interno y edición de capítulos de documentos por sistema. */
body.gi-doc-editor-page .gi-doc-chapter-dialog {
  width: min(1360px, 98vw);
  height: min(860px, 96vh);
}

body.gi-doc-editor-page .gi-doc-chapter-modal {
  padding: 8px;
}

body.gi-doc-chapter-page {
  margin: 0;
  background: #f4f7fb;
  color: #17212f;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 12px;
}

body.gi-doc-chapter-page form,
body.gi-doc-chapter-page .gi-doc-chapter-shell {
  min-height: 100vh;
  margin: 0;
}

body.gi-doc-chapter-page .gi-doc-chapter-shell {
  box-sizing: border-box;
  padding: 6px;
}

body.gi-doc-chapter-page .gi-doc-chapter-toolbar {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto auto;
  align-items: center;
  gap: 8px;
  padding: 6px 8px;
  border: 1px solid #d5dee9;
  border-radius: 8px 8px 0 0;
  background: #ffffff;
}

body.gi-doc-chapter-page .gi-doc-chapter-toolbar label {
  font-weight: 700;
}

body.gi-doc-chapter-page .gi-doc-chapter-toolbar input[type="text"] {
  min-width: 0;
  min-height: 31px;
  box-sizing: border-box;
  border: 1px solid #b8c5d5;
  border-radius: 5px;
  padding: 5px 7px;
  font: inherit;
  text-transform: uppercase;
}

body.gi-doc-chapter-page .gi-doc-chapter-toolbar input[type="button"] {
  min-height: 31px;
  border: 1px solid #ff9700;
  border-radius: 5px;
  background: #ff9700;
  color: #ffffff;
  cursor: pointer;
  font-weight: 700;
  padding: 5px 10px;
}

body.gi-doc-chapter-page .gi-doc-chapter-toolbar input[type="button"]:hover {
  background: #fff6ea;
  color: #17212f;
}

body.gi-doc-chapter-page .gi-doc-chapter-editor {
  overflow: hidden;
  padding: 6px;
  border: 1px solid #d5dee9;
  border-top: 0;
  border-radius: 0 0 8px 8px;
  background: #ffffff;
}

body.gi-doc-chapter-page .gi-doc-chapter-editor textarea#FCKeditor1 {
  display: block;
  width: 100%;
  min-height: 450px;
  box-sizing: border-box;
}
/* Control de cambios: contenido fluido dentro del popup del documento. */
body.gi-doc-editor-page #dvCambio {
  min-width: 0;
  overflow: hidden;
}

body.gi-doc-editor-page #dvCambio .gi-doc-change-shell,
body.gi-doc-editor-page #dvCambio .gi-doc-change-form,
body.gi-doc-editor-page #dvCambio table[border="1"] {
  width: 100% !important;
  max-width: 100% !important;
  table-layout: fixed;
}

body.gi-doc-editor-page #dvCambio .gi-doc-change-shell > tbody > tr > td,
body.gi-doc-editor-page #dvCambio .gi-doc-change-form td {
  min-width: 0;
  box-sizing: border-box;
}

body.gi-doc-editor-page #dvCambio .gi-doc-change-form > tbody > tr > td:first-child {
  width: 100px;
}

body.gi-doc-editor-page #dvCambio .gi-doc-change-form > tbody > tr > td:last-child {
  width: 190px;
}

body.gi-doc-editor-page #dvCambio .gi-doc-change-date-field {
  display: flex;
  align-items: center;
  gap: 6px;
}

body.gi-doc-editor-page #dvCambio .gi-doc-change-date-field input {
  width: 88px !important;
  min-width: 0;
}

body.gi-doc-editor-page #dvCambio .gi-doc-change-date-field .gi-date-icon {
  width: 18px;
  height: 18px;
  cursor: pointer;
}

body.gi-doc-editor-page #dvCambio .gi-doc-change-textarea {
  display: block;
  width: 100% !important;
  min-width: 0;
  max-width: 100%;
  min-height: 118px;
  box-sizing: border-box;
  resize: vertical;
}

body.gi-doc-editor-page #dvCambio .gi-doc-change-submit {
  margin: 0 !important;
  white-space: nowrap;
}

body.gi-doc-editor-page #dvCambio table[border="1"] td {
  overflow-wrap: anywhere;
}
/* Ajuste fino del formulario de Control de Cambios. */
body.gi-doc-editor-page #dvCambio .gi-doc-change-form > tbody > tr > td:first-child {
  width: 132px;
}

body.gi-doc-editor-page #dvCambio .gi-doc-change-date-field input {
  width: 94px !important;
}

body.gi-doc-editor-page #dvCambio .gi-doc-change-textarea {
  min-height: 86px;
  height: 86px;
}
/* Acción principal: grabar control de cambios. */
body.gi-doc-editor-page #dvCambio .gi-doc-change-submit {
  border-color: #ff9700 !important;
  background: #ff9700 !important;
  color: #ffffff !important;
}

body.gi-doc-editor-page #dvCambio .gi-doc-change-submit:hover {
  border-color: #ff9700 !important;
  background: #fff6ea !important;
  color: #17212f !important;
}
/* Base compartida: descriptor de cargo. */
body.gi-doc-role-page .gi-doc-editor-info-table {
  border: 1px solid #cfd8e3 !important;
  box-shadow: none;
}

body.gi-doc-role-page .gi-doc-editor-info-table h3 {
  color: #17212f;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 12px;
  font-weight: 700;
}

body.gi-doc-role-page .gi-doc-editor-tabs .gi-doc-editor-tab:hover {
  border-bottom-color: #ff9700;
  background: #ffffff !important;
  color: #17212f;
}

body.gi-doc-role-page .gi-doc-editor-info-table input[value="Editar Requisitos"] {
  border-color: #b8c5d4 !important;
  background: #ffffff !important;
  color: #17212f !important;
}

body.gi-doc-role-page .gi-doc-editor-info-table input[value="Editar Requisitos"]:hover {
  border-color: #ff9700 !important;
  background: #fff6ea !important;
}

body.gi-doc-role-page #giRoleEditorActions #btnGrabarDocumento {
  margin-top: 0 !important;
  border-color: #ff9700 !important;
  background: #ff9700 !important;
  color: #ffffff !important;
}

body.gi-doc-role-page #giRoleEditorActions #btnGrabarDocumento:hover {
  border-color: #ff9700 !important;
  background: #fff6ea !important;
  color: #17212f !important;
}

body.gi-doc-role-page .gi-doc-role-date-icon {
  width: 18px;
  height: 18px;
  cursor: pointer;
}
/* Primera pasada visual: contenido del descriptor de cargo. */
body.gi-doc-role-page #dvContenido {
  padding: 12px;
}

body.gi-doc-role-page #dvContenido > table.gi-doc-role-summary {
  width: 100% !important;
  border: 0 !important;
  border-collapse: separate;
  border-spacing: 0;
  background: #f8fbfe;
  border-radius: 6px;
}

body.gi-doc-role-page .gi-doc-role-summary > tbody > tr > td,
body.gi-doc-role-page .gi-doc-role-summary table,
body.gi-doc-role-page .gi-doc-role-summary table td {
  border: 0 !important;
  background: transparent;
}

body.gi-doc-role-page .gi-doc-role-summary table td {
  padding: 4px 7px;
  vertical-align: middle;
}

body.gi-doc-role-page .gi-doc-role-summary input[type="text"] {
  max-width: 100%;
}

body.gi-doc-role-page #dvCapitulosBase {
  height: 430px !important;
  margin-top: 10px;
  padding: 8px 10px;
  border-color: #d5dee9 !important;
  border-radius: 6px;
  background: #ffffff;
  overflow-x: hidden !important;
  overflow-y: auto !important;
}

body.gi-doc-role-page #dvCapitulosBase > table {
  border-collapse: separate;
  border-spacing: 0;
}

body.gi-doc-role-page #dvCapitulosBase > table > tbody > tr > td {
  padding: 0 0 7px;
}

body.gi-doc-role-page #dvCapitulosBase h3 {
  margin: 8px 0 6px;
  padding: 7px 10px;
  border-left: 4px solid #19984f;
  border-radius: 4px;
  background: #f8fbfe;
  color: #126b38;
  font-size: 12px;
  line-height: 1.2;
}

body.gi-doc-role-page #dvCompetenciasCargo {
  height: 220px !important;
  box-sizing: border-box;
  border-color: #d5dee9 !important;
  border-radius: 6px;
  background: #ffffff;
  scrollbar-gutter: stable;
}
/* Contornos suaves del bloque superior y secciones del descriptor. */
body.gi-doc-role-page #dvContenido > table.gi-doc-role-summary {
  border: 1px solid #d5dee9 !important;
}

body.gi-doc-role-page #dvCapitulosBase h3 {
  border: 1px solid #dfe6ef;
  border-left: 4px solid #19984f;
  border-radius: 6px;
}
/* Base compartida: ficha de proceso. */
body.gi-doc-process-page .gi-doc-editor-info-table {
  border: 1px solid #cfd8e3 !important;
  box-shadow: none;
}

body.gi-doc-process-page .gi-doc-editor-info-table h3 {
  color: #17212f;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 12px;
  font-weight: 700;
}

body.gi-doc-process-page .gi-doc-editor-tabs .gi-doc-editor-tab:hover {
  border-bottom-color: #ff9700;
  background: #ffffff !important;
  color: #17212f;
}

body.gi-doc-process-page #giProcessEditorActions #btnGrabarDocumento {
  margin-top: 0 !important;
  border-color: #ff9700 !important;
  background: #ff9700 !important;
  color: #ffffff !important;
}

body.gi-doc-process-page #giProcessEditorActions #btnGrabarDocumento:hover {
  border-color: #ff9700 !important;
  background: #fff6ea !important;
  color: #17212f !important;
}

body.gi-doc-process-page .gi-doc-process-date-icon {
  width: 18px;
  height: 18px;
  cursor: pointer;
}

body.gi-doc-process-page #contenidos {
  min-height: 480px;
  overflow: hidden;
}

body.gi-doc-process-page #contenidos iframe {
  min-height: 480px;
  height: 480px !important;
  border-color: #d5dee9 !important;
  border-radius: 6px;
}
/* Process description editor. */
body.gi-doc-process-description-page {
  margin: 0;
  background: #ffffff;
  color: #17212f;
  font-family: Arial, Helvetica, sans-serif;
}

body.gi-doc-process-description-page .gi-process-description-shell {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
}

body.gi-doc-process-description-page .gi-process-description-actions {
  margin: 8px 0 8px auto;
  border-collapse: separate;
  border-spacing: 6px 0;
}

body.gi-doc-process-description-page .gi-process-description-actions input[type="button"] {
  min-height: 31px;
  padding: 5px 12px;
  border: 1px solid #b8c5d5;
  border-radius: 5px;
  background: #ffffff;
  color: #17212f;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 12px;
  font-weight: 700;
  cursor: pointer;
}

body.gi-doc-process-description-page .gi-process-description-actions .gi-process-description-primary {
  border-color: #ff9700;
  background: #ff9700;
  color: #ffffff;
}

body.gi-doc-process-description-page .gi-process-description-actions .gi-process-description-primary:hover {
  border-color: #ff9700;
  background: #fff6ea;
  color: #17212f;
}

body.gi-doc-process-description-page .gi-process-description-actions .gi-process-description-neutral:hover {
  border-color: #ff9700;
  background: #fff6ea;
  color: #17212f;
}

body.gi-doc-process-description-page .gi-process-description-grid {
  width: 100% !important;
  table-layout: fixed;
  border: 1px solid #d5dee9 !important;
  border-collapse: separate !important;
  border-spacing: 0;
  border-radius: 6px;
  overflow: hidden;
  background: #ffffff;
}

body.gi-doc-process-description-page .gi-process-description-grid > tbody > tr > td {
  border: 0 !important;
  padding: 6px;
  vertical-align: top;
}

body.gi-doc-process-description-page .gi-process-description-grid > tbody > tr > td.tittable {
  padding: 8px 10px;
  border-top: 1px solid #dfe6ef !important;
  background: #f8fbfe !important;
  color: #126b38;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 12px;
  font-weight: 700;
  text-align: center;
}

body.gi-doc-process-description-page .gi-process-description-grid > tbody > tr:first-child > td.tittable {
  border-top: 0 !important;
}

body.gi-doc-process-description-page .gi-process-description-grid > tbody > tr > td:not(.tittable):not(:last-child) {
  box-shadow: inset -1px 0 0 #eef2f7;
}

body.gi-doc-process-description-page .gi-process-description-grid .tox .tox-toolbar__group {
  flex-wrap: nowrap;
  padding: 0 2px;
}

body.gi-doc-process-description-page .gi-process-description-grid .tox .tox-tbtn {
  width: 32px;
  height: 32px;
  margin: 2px 1px;
}

body.gi-doc-process-description-page .gi-process-description-grid .tox .tox-tbtn svg {
  transform: scale(.88);
}

body.gi-doc-process-description-page .gi-process-description-grid .tox .tox-toolbar__primary {
  flex-wrap: nowrap;
}

/* Process description button patterns. */
body.gi-doc-process-description-page input[type="button"].gi-process-description-primary {
  border: 1px solid #ff9700 !important;
  background: #ff9700 !important;
  background-image: none !important;
  color: #ffffff !important;
}

body.gi-doc-process-description-page input[type="button"].gi-process-description-primary:hover {
  border-color: #ff9700 !important;
  background: #fff6ea !important;
  background-image: none !important;
  color: #17212f !important;
}

body.gi-doc-process-description-page input[type="button"].gi-process-description-neutral {
  border: 1px solid #b8c5d5 !important;
  background: #ffffff !important;
  background-image: none !important;
  color: #17212f !important;
}

body.gi-doc-process-description-page input[type="button"].gi-process-description-neutral:hover {
  border-color: #ff9700 !important;
  background: #fff6ea !important;
  background-image: none !important;
  color: #17212f !important;
}
/* Review document attachment viewer. */
body.gi-doc-review-page .gi-doc-viewer-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-doc-review-page .gi-doc-viewer-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-doc-review-page .gi-doc-viewer-titlebar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 42px;
  padding: 0 12px 0 40px;
  background: #19984f;
  color: #ffffff;
  font-size: 16px;
  font-weight: 700;
  position: relative;
  box-sizing: border-box;
  flex: 0 0 auto;
}

body.gi-doc-review-page .gi-doc-viewer-titlebar:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 28px;
  background: #147a3f;
}

body.gi-doc-review-page .gi-doc-viewer-titlebar input[type="button"] {
  min-height: 30px;
  margin: 0;
  border-color: #19984f;
  background: #effaf3;
  color: #126b38;
}

body.gi-doc-review-page .gi-doc-viewer-titlebar input[type="button"]:hover {
  border-color: #ff9700;
  background: #effaf3;
  color: #126b38;
}

body.gi-doc-review-page .gi-doc-viewer-frame-wrap {
  flex: 1 1 auto;
  min-height: 0;
  background: #ffffff;
}

body.gi-doc-review-page .gi-doc-viewer-frame {
  display: block;
  width: 100%;
  height: 100%;
}
/* Review attachment viewer refinements. */
body.gi-doc-review-page .gi-doc-viewer-titlebar input.gi-doc-viewer-return-action {
  min-height: 30px;
  padding: 4px 11px;
  border: 1px solid #19984f !important;
  border-radius: 6px;
  background: #effaf3 !important;
  color: #126b38 !important;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 12px;
  font-weight: 700;
}

body.gi-doc-review-page .gi-doc-viewer-titlebar input.gi-doc-viewer-return-action:hover {
  border-color: #ff9700 !important;
  background: #effaf3 !important;
  color: #126b38 !important;
}

body.gi-doc-attached-page .gi-doc-editor-date-icon {
  display: inline-block !important;
  width: 18px;
  height: 18px;
  margin: 0;
  vertical-align: middle;
}

body.gi-doc-attached-page .gi-doc-editor-info-table table td {
  vertical-align: middle;
}
/* Generic document date icon alignment. */
body.gi-doc-standard-page .gi-doc-editor-date-icon {
  display: inline-block !important;
  width: 18px;
  height: 18px;
  margin: 0;
  position: relative;
  top: -2px;
  vertical-align: middle;
}

body.gi-doc-standard-page .gi-doc-editor-info-table table td {
  vertical-align: middle;
}
/* Review document date fields. */
body.gi-doc-review-context #tbxFechaConfeccion,
body.gi-doc-review-context #tbxFechaRevision {
  width: 96px !important;
  min-width: 96px;
  box-sizing: border-box;
  text-align: center;
}
/* Vista de requisitos en modo consulta. */
body.gi-doc-requirements-view-page .gi-doc-requirements-grid--view { grid-template-columns: repeat(2, minmax(0, 1fr)); }
body.gi-doc-requirements-view-page .gi-doc-requirements-section:last-of-type { border-bottom: 0; }

/* Acción de guardado propia del Descriptor de Cargo. */
body.gi-doc-role-page input[type="button"]#btnGuardarDatos {
  border-color: #ff9700 !important;
  background: #ff9700 !important;
  color: #ffffff !important;
}

body.gi-doc-role-page input[type="button"]#btnGuardarDatos:hover {
  border-color: #ff9700 !important;
  background: #fff6ea !important;
  color: #17212f !important;
}

/* Proporciones estables de la cabecera del Descriptor de Cargo. */
body.gi-doc-role-page .gi-doc-editor-info-table {
  table-layout: fixed;
}

body.gi-doc-role-page .gi-doc-editor-info-table tr > td:nth-child(1) { width: 23% !important; }
body.gi-doc-role-page .gi-doc-editor-info-table tr > td:nth-child(2) { width: 14% !important; }
body.gi-doc-role-page .gi-doc-editor-info-table tr > td:nth-child(3) { width: 30% !important; }
body.gi-doc-role-page .gi-doc-editor-info-table tr > td:nth-child(4) { width: 13% !important; }
body.gi-doc-role-page .gi-doc-editor-info-table tr > td:nth-child(5) { width: 20% !important; }

/* Descriptor adjunto en Confección: grilla propia, sin afectar otros tipos ni etapas. */
body.gi-doc-attached-page.gi-doc-type-13.gi-doc-state-1 .gi-doc-editor-info-table {
  table-layout: fixed;
}

body.gi-doc-attached-page.gi-doc-type-13.gi-doc-state-1 .gi-doc-editor-info-table tr > td:nth-child(1) { width: 23% !important; }
body.gi-doc-attached-page.gi-doc-type-13.gi-doc-state-1 .gi-doc-editor-info-table tr > td:nth-child(2) { width: 14% !important; }
body.gi-doc-attached-page.gi-doc-type-13.gi-doc-state-1 .gi-doc-editor-info-table tr > td:nth-child(3) { width: 30% !important; }
body.gi-doc-attached-page.gi-doc-type-13.gi-doc-state-1 .gi-doc-editor-info-table tr > td:nth-child(4) { width: 13% !important; }
body.gi-doc-attached-page.gi-doc-type-13.gi-doc-state-1 .gi-doc-editor-info-table tr > td:nth-child(5) { width: 20% !important; }

/* Ficha de Proceso adjunta en Confección: proporción propia de cabecera. */
body.gi-doc-attached-page.gi-doc-type-12.gi-doc-state-1 .gi-doc-editor-info-table {
  table-layout: fixed;
}

body.gi-doc-attached-page.gi-doc-type-12.gi-doc-state-1 .gi-doc-editor-info-table tr > td:nth-child(1) { width: 23% !important; }
body.gi-doc-attached-page.gi-doc-type-12.gi-doc-state-1 .gi-doc-editor-info-table tr > td:nth-child(2) { width: 14% !important; }
body.gi-doc-attached-page.gi-doc-type-12.gi-doc-state-1 .gi-doc-editor-info-table tr > td:nth-child(3) { width: 30% !important; }
body.gi-doc-attached-page.gi-doc-type-12.gi-doc-state-1 .gi-doc-editor-info-table tr > td:nth-child(4) { width: 13% !important; }
body.gi-doc-attached-page.gi-doc-type-12.gi-doc-state-1 .gi-doc-editor-info-table tr > td:nth-child(5) { width: 20% !important; }

/* Ficha de Proceso por sistema: cabecera de cinco bloques. */
body.gi-doc-process-page .gi-doc-editor-info-table {
  table-layout: fixed;
}

body.gi-doc-process-page .gi-doc-editor-info-table tr > td:nth-child(1) { width: 23% !important; }
body.gi-doc-process-page .gi-doc-editor-info-table tr > td:nth-child(2) { width: 14% !important; }
body.gi-doc-process-page .gi-doc-editor-info-table tr > td:nth-child(3) { width: 30% !important; }
body.gi-doc-process-page .gi-doc-editor-info-table tr > td:nth-child(4) { width: 13% !important; }
body.gi-doc-process-page .gi-doc-editor-info-table tr > td:nth-child(5) { width: 20% !important; }

/* Gestor interno de archivos de la Ficha de Proceso. */
body.gi-doc-process-page .gi-doc-process-files-modal { position:fixed; inset:0; z-index:3100; display:flex; align-items:center; justify-content:center; padding:14px; box-sizing:border-box; background:rgba(15,23,42,.28); }
body.gi-doc-process-page .gi-doc-process-files-dialog { width:min(940px,94vw); height:min(590px,88vh); display:flex; flex-direction:column; overflow:hidden; border:1px solid #cfd8e3; border-radius:8px; background:#ffffff; box-shadow:0 18px 44px rgba(15,23,42,.24); }
body.gi-doc-process-page .gi-doc-process-files-titlebar { position:relative; display:flex; align-items:center; justify-content:space-between; min-height:42px; padding:0 12px 0 40px; background:#19984f; color:#ffffff; font-size:14px; font-weight:700; flex:0 0 auto; }
body.gi-doc-process-page .gi-doc-process-files-titlebar:before { content:""; position:absolute; inset:0 auto 0 0; width:28px; background:#147a3f; }
body.gi-doc-process-page .gi-doc-process-files-frame-wrap { min-height:0; flex:1 1 auto; background:#ffffff; }
body.gi-doc-process-page .gi-doc-process-files-frame { width:100%; height:100%; border:0; display:block; }

/* Mantención de archivos de descripción dentro de la Ficha de Proceso. */
body.gi-process-files-page { margin:0; padding:12px; background:#f4f7fb; color:#17212f; font:12px Arial,Helvetica,sans-serif; box-sizing:border-box; }
body.gi-process-files-page .gi-process-files-card { min-height:calc(100vh - 24px); box-sizing:border-box; overflow:hidden; border:1px solid #d5dee9; border-radius:8px; background:#ffffff; }
body.gi-process-files-page .gi-process-files-card-title { min-height:38px; display:flex; align-items:center; padding:0 12px 0 38px; position:relative; background:#19984f; color:#ffffff; font-size:14px; font-weight:700; }
body.gi-process-files-page .gi-process-files-card-title:before { content:""; position:absolute; left:0; top:0; bottom:0; width:25px; background:#147a3f; }
body.gi-process-files-page .gi-process-files-upload-row { display:grid; grid-template-columns:minmax(180px,1fr) minmax(220px,1.2fr) auto; gap:10px; align-items:end; padding:12px; border-bottom:1px solid #e0e7ef; background:#f8fbfe; }
body.gi-process-files-page .gi-process-files-field { display:grid; gap:4px; color:#334155; font-weight:700; }
body.gi-process-files-page .gi-process-files-field input[type="text"],body.gi-process-files-page .gi-process-files-field input[type="file"] { min-height:30px; box-sizing:border-box; padding:4px 7px; border:1px solid #b8c5d4; border-radius:5px; background:#ffffff; color:#17212f; font:12px Arial,Helvetica,sans-serif; }
body.gi-process-files-page .gi-process-files-primary { min-height:30px; padding:5px 13px; border:1px solid #ff9700; border-radius:6px; background:#ff9700; color:#ffffff; font:700 12px Arial,Helvetica,sans-serif; cursor:pointer; }
body.gi-process-files-page .gi-process-files-primary:hover { border-color:#ff9700; background:#fff6ea; color:#17212f; }
body.gi-process-files-page .gi-process-files-message { padding:7px 12px; color:#126b38; font-weight:700; }
body.gi-process-files-page .gi-process-files-list { margin:12px; max-height:calc(100vh - 150px); overflow:auto; border:1px solid #d5dee9; border-radius:6px; scrollbar-gutter:stable; }
body.gi-process-files-page .gi-process-files-table { width:100%; border-collapse:collapse; table-layout:fixed; }
body.gi-process-files-page .gi-process-files-table th { position:sticky; top:0; z-index:1; padding:7px 8px; border-bottom:1px solid #d5dee9; background:#eef4fb; color:#334155; text-align:left; font-weight:700; }
body.gi-process-files-page .gi-process-files-table td { padding:7px 8px; border-top:1px solid #e0e7ef; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
body.gi-process-files-page .gi-process-files-table tbody tr:nth-child(even) td { background:#f8fbfe; }
body.gi-process-files-page .gi-process-files-table tbody tr:hover td { background:#fffaf2; }
body.gi-process-files-page .gi-process-files-num { width:36px; text-align:center; }
body.gi-process-files-page .gi-process-files-action { width:46px; text-align:center; }
body.gi-process-files-page .gi-process-files-empty { color:#58677a; font-weight:700; text-align:center; }
body.gi-doc-process-page .gi-doc-process-file-viewer-modal { z-index:3200; }

/* Ajustes de mantención de archivos: la cabecera vive en el modal padre. */
body.gi-process-files-page .gi-process-files-card { min-height:calc(100vh - 24px); }
body.gi-process-files-page .gi-process-files-table th,body.gi-process-files-page .gi-process-files-table td { border-right:1px solid #d5dee9; }
body.gi-process-files-page .gi-process-files-table th:last-child,body.gi-process-files-page .gi-process-files-table td:last-child { border-right:0; }

/* Retorno del modal de Archivos de Descripción. */
body.gi-doc-process-page .gi-doc-process-files-titlebar input.gi-doc-viewer-return-action { min-height:30px; padding:4px 11px; border:1px solid #19984f !important; border-radius:6px; background:#effaf3 !important; color:#126b38 !important; font:700 12px Arial,Helvetica,sans-serif; cursor:pointer; }
body.gi-doc-process-page .gi-doc-process-files-titlebar input.gi-doc-viewer-return-action:hover { border-color:#ff9700 !important; background:#effaf3 !important; color:#126b38 !important; }

/* Ficha de proceso: medicion y seguimiento */
body.gi-process-measurement-page {
  margin: 0;
  padding: 12px;
  background: #f4f7fb;
  color: #17212f;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 13px;
}
body.gi-process-measurement-page .gi-process-measurement-shell { width: 100%; }
body.gi-process-measurement-page .gi-process-measurement-card {
  overflow: hidden;
  border: 1px solid #d1ddeb;
  border-radius: 8px;
  background: #ffffff;
}
body.gi-process-measurement-page .gi-process-measurement-title {
  margin: 0;
  padding: 11px 16px;
  border-bottom: 1px solid #d1ddeb;
  background: #f8fbff;
  color: #126b38;
  font-size: 16px;
  line-height: 1.2;
}
body.gi-process-measurement-page .gi-process-measurement-form {
  display: grid;
  grid-template-columns: 2fr .7fr 1.35fr 1.2fr 1.55fr .75fr;
  gap: 10px;
  padding: 14px 16px 10px;
}
body.gi-process-measurement-page .gi-process-measurement-field {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 5px;
  color: #34445d;
  font-weight: bold;
}
body.gi-process-measurement-page .gi-process-measurement-field input,
body.gi-process-measurement-page .gi-process-measurement-field select {
  box-sizing: border-box;
  width: 100%;
  min-width: 0;
  height: 34px;
  padding: 6px 8px;
  border: 1px solid #b8c5d8;
  border-radius: 6px;
  background: #ffffff;
  color: #17212f;
  font-size: 13px;
}
body.gi-process-measurement-page .gi-process-measurement-actions {
  display: flex;
  justify-content: flex-end;
  gap: 8px;
  padding: 0 16px 14px;
  border-bottom: 1px solid #dce5f0;
}
body.gi-process-measurement-page .gi-process-measurement-primary,
body.gi-process-measurement-page .gi-process-measurement-neutral,
body.gi-process-measurement-page .gi-process-measurement-files-action {
  min-height: 34px;
  padding: 6px 13px;
  border-radius: 6px;
  cursor: pointer;
  font-weight: bold;
  font-size: 13px;
}
body.gi-process-measurement-page .gi-process-measurement-primary {
  border: 1px solid #ff9700;
  background: #ff9700;
  color: #ffffff;
}
body.gi-process-measurement-page .gi-process-measurement-primary:hover {
  border-color: #ff9700;
  background: #fff6ea;
  color: #17212f;
}
body.gi-process-measurement-page .gi-process-measurement-neutral,
body.gi-process-measurement-page .gi-process-measurement-files-action {
  border: 1px solid #b8c5d8;
  background: #ffffff;
  color: #17212f;
}
body.gi-process-measurement-page .gi-process-measurement-neutral:hover,
body.gi-process-measurement-page .gi-process-measurement-files-action:hover {
  border-color: #ff9700;
  background: #fff6ea;
  color: #17212f;
}
body.gi-process-measurement-page .gi-process-measurement-table-wrap {
  max-height: 320px;
  overflow: auto;
  margin: 14px 16px 16px;
  border: 1px solid #cddaea;
  border-radius: 7px;
}
body.gi-process-measurement-page .gi-process-measurement-table {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
  font-size: 13px;
}
body.gi-process-measurement-page .gi-process-measurement-table th,
body.gi-process-measurement-page .gi-process-measurement-table td {
  padding: 8px 9px;
  border-right: 1px solid #d6e0ed;
  border-bottom: 1px solid #d6e0ed;
  vertical-align: middle;
  text-align: left;
  overflow-wrap: break-word;
}
body.gi-process-measurement-page .gi-process-measurement-table th {
  position: sticky;
  top: 0;
  z-index: 1;
  background: #eaf1f9;
  color: #263952;
  font-weight: bold;
}
body.gi-process-measurement-page .gi-process-measurement-table tbody tr:nth-child(even) { background: #f8fbfe; }
body.gi-process-measurement-page .gi-process-measurement-table tbody tr:hover { background: #fff6ea; }
body.gi-process-measurement-page .gi-process-measurement-table th:last-child,
body.gi-process-measurement-page .gi-process-measurement-table td:last-child { border-right: 0; }
body.gi-process-measurement-page .gi-process-measurement-col-number { width: 32px; text-align: center !important; }
body.gi-process-measurement-page .gi-process-measurement-col-action { width: 32px; text-align: center !important; }
body.gi-process-measurement-page .gi-process-measurement-col-meta { width: 80px; }
body.gi-process-measurement-page .gi-process-measurement-col-frequency { width: 100px; }
body.gi-process-measurement-page .gi-process-measurement-col-occurrences { width: 90px; text-align: right !important; }
body.gi-process-measurement-page .gi-process-measurement-col-files { width: 92px; text-align: center !important; }
body.gi-process-measurement-page .gi-process-measurement-table th:nth-child(5),
body.gi-process-measurement-page .gi-process-measurement-table td:nth-child(5),
body.gi-process-measurement-page .gi-process-measurement-table th:nth-child(7),
body.gi-process-measurement-page .gi-process-measurement-table td:nth-child(7) { width: 160px; }
body.gi-process-measurement-page .gi-process-measurement-files-action { min-height: 29px; padding: 4px 9px; }
body.gi-process-measurement-page .gi-process-measurement-empty { padding: 16px; color: #526176; text-align: center; }
@media (max-width: 900px) {
  body.gi-process-measurement-page .gi-process-measurement-form { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
/* Archivos de respaldo de indicadores */
body.gi-process-measurement-page .gi-process-measurement-files-modal { position:fixed; inset:0; z-index:3500; display:flex; align-items:center; justify-content:center; padding:14px; box-sizing:border-box; background:rgba(15,23,42,.28); }
body.gi-process-measurement-page .gi-process-measurement-files-dialog { width:min(820px,94vw); height:min(420px,86vh); display:flex; flex-direction:column; overflow:hidden; border:1px solid #cfd8e3; border-radius:8px; background:#ffffff; box-shadow:0 18px 44px rgba(15,23,42,.24); }
body.gi-process-measurement-page .gi-process-measurement-files-titlebar { position:relative; display:flex; align-items:center; justify-content:space-between; min-height:42px; padding:0 12px 0 40px; background:#19984f; color:#ffffff; font-size:14px; font-weight:bold; flex:0 0 auto; }
body.gi-process-measurement-page .gi-process-measurement-files-titlebar:before { content:""; position:absolute; inset:0 auto 0 0; width:28px; background:#147a3f; }
body.gi-process-measurement-page .gi-process-measurement-return { min-height:34px; padding:6px 13px; border:1px solid #19984f; border-radius:6px; background:#effaf3; color:#126b38; cursor:pointer; font-size:13px; font-weight:bold; }
body.gi-process-measurement-page .gi-process-measurement-return:hover { border-color:#ff9700; background:#effaf3; color:#126b38; }
body.gi-process-measurement-page .gi-process-measurement-files-frame-wrap { min-height:0; flex:1 1 auto; background:#ffffff; }
body.gi-process-measurement-page .gi-process-measurement-files-frame { display:block; width:100%; height:100%; border:0; }
body.gi-process-indicator-files-page { margin:0; padding:12px; background:#f4f7fb; color:#17212f; font-family:Arial,Helvetica,sans-serif; font-size:13px; }
body.gi-process-indicator-files-page .gi-process-indicator-files-card { overflow:hidden; border:1px solid #d1ddeb; border-radius:8px; background:#ffffff; }
body.gi-process-indicator-files-page .gi-process-indicator-files-upload { display:grid; grid-template-columns:minmax(200px,1fr) minmax(260px,1.5fr) auto; gap:10px; align-items:end; padding:14px; border-bottom:1px solid #dce5f0; }
body.gi-process-indicator-files-page .gi-process-indicator-files-upload label { display:flex; min-width:0; flex-direction:column; gap:5px; color:#34445d; font-weight:bold; }
body.gi-process-indicator-files-page .gi-process-indicator-files-upload input[type="text"], body.gi-process-indicator-files-page .gi-process-indicator-files-upload input[type="file"] { box-sizing:border-box; width:100%; min-width:0; height:34px; padding:5px 8px; border:1px solid #b8c5d8; border-radius:6px; background:#ffffff; font-size:13px; }
body.gi-process-indicator-files-page .gi-process-indicator-files-actions { display:flex; align-items:flex-end; }
body.gi-process-indicator-files-page .gi-process-indicator-files-primary { min-height:34px; padding:6px 13px; border:1px solid #ff9700; border-radius:6px; background:#ff9700; color:#ffffff; cursor:pointer; font-size:13px; font-weight:bold; }
body.gi-process-indicator-files-page .gi-process-indicator-files-primary:hover { background:#fff6ea; color:#17212f; }
body.gi-process-indicator-files-page .gi-process-indicator-files-table-wrap { max-height:270px; overflow:auto; margin:14px; border:1px solid #cddaea; border-radius:7px; }
body.gi-process-indicator-files-page .gi-process-indicator-files-table { width:100%; border-collapse:collapse; table-layout:fixed; font-size:13px; }
body.gi-process-indicator-files-page .gi-process-indicator-files-table th, body.gi-process-indicator-files-page .gi-process-indicator-files-table td { padding:8px 9px; border-right:1px solid #d6e0ed; border-bottom:1px solid #d6e0ed; vertical-align:middle; overflow-wrap:break-word; }
body.gi-process-indicator-files-page .gi-process-indicator-files-table th { position:sticky; top:0; z-index:1; background:#eaf1f9; color:#263952; font-weight:bold; text-align:left; }
body.gi-process-indicator-files-page .gi-process-indicator-files-table th:last-child, body.gi-process-indicator-files-page .gi-process-indicator-files-table td:last-child { border-right:0; }
body.gi-process-indicator-files-page .gi-process-indicator-files-table tbody tr:nth-child(even) { background:#f8fbfe; }
body.gi-process-indicator-files-page .gi-process-indicator-files-table tbody tr:hover { background:#fff6ea; }
body.gi-process-indicator-files-page .gi-process-indicator-files-col-number, body.gi-process-indicator-files-page .gi-process-indicator-files-col-action { width:34px; text-align:center !important; }
body.gi-process-indicator-files-page .gi-process-indicator-files-empty { padding:16px; color:#526176; text-align:center; }
@media (max-width:650px) { body.gi-process-indicator-files-page .gi-process-indicator-files-upload { grid-template-columns:1fr; } }
/* Ficha de proceso: anexos */
body.gi-process-annex-page { margin:0; padding:12px; background:#f4f7fb; color:#17212f; font-family:Arial,Helvetica,sans-serif; font-size:13px; }
body.gi-process-annex-page .gi-process-annex-shell { width:100%; }
body.gi-process-annex-page .gi-process-annex-toolbar { display:flex; gap:8px; justify-content:flex-end; margin-bottom:10px; }
body.gi-process-annex-page .gi-process-annex-primary, body.gi-process-annex-page .gi-process-annex-neutral, body.gi-process-annex-page .gi-process-annex-files-action { min-height:34px; padding:6px 13px; border-radius:6px; cursor:pointer; font-size:13px; font-weight:bold; }
body.gi-process-annex-page .gi-process-annex-primary { border:1px solid #ff9700; background:#ff9700; color:#ffffff; }
body.gi-process-annex-page .gi-process-annex-primary:hover { background:#fff6ea; color:#17212f; }
body.gi-process-annex-page .gi-process-annex-neutral, body.gi-process-annex-page .gi-process-annex-files-action { border:1px solid #b8c5d8; background:#ffffff; color:#17212f; }
body.gi-process-annex-page .gi-process-annex-neutral:hover, body.gi-process-annex-page .gi-process-annex-files-action:hover { border-color:#ff9700; background:#fff6ea; color:#17212f; }
body.gi-process-annex-page .gi-process-annex-tab-active { border-color:#19984f; background:#19984f; color:#ffffff; }
body.gi-process-annex-page .gi-process-annex-tab-active:hover { border-color:#19984f; background:#19984f; color:#ffffff; }
body.gi-process-annex-page .gi-process-annex-list-card, body.gi-process-annex-page .gi-process-annex-editor-card { overflow:hidden; border:1px solid #d1ddeb; border-radius:8px; background:#ffffff; }
body.gi-process-annex-page .gi-process-annex-editor-card { margin-top:10px; }
body.gi-process-annex-page .gi-process-annex-editor-header { display:grid; grid-template-columns:minmax(280px,1fr) auto; gap:14px; align-items:end; padding:14px; border-bottom:1px solid #dce5f0; background:#f8fbff; }
body.gi-process-annex-page .gi-process-annex-editor-header label { display:flex; min-width:0; flex-direction:column; gap:5px; color:#34445d; font-weight:bold; }
body.gi-process-annex-page .gi-process-annex-editor-header input[type="text"] { box-sizing:border-box; width:100%; height:34px; padding:6px 8px; border:1px solid #b8c5d8; border-radius:6px; background:#ffffff; color:#17212f; font-size:13px; }
body.gi-process-annex-page .gi-process-annex-editor-actions { display:flex; align-items:center; gap:10px; }
body.gi-process-annex-page .gi-process-annex-message { color:#526176; font-weight:bold; }
body.gi-process-annex-page .gi-process-annex-editor-content { padding:14px; }
body.gi-process-annex-page .gi-process-annex-editor-content h3 { margin:0 0 9px; color:#126b38; font-size:14px; }
body.gi-process-annex-page .gi-process-annex-editor-frame { overflow:hidden; border:1px solid #cddaea; border-radius:7px; }
body.gi-process-annex-page .gi-process-annex-table-wrap { max-height:330px; overflow:auto; margin:14px; border:1px solid #cddaea; border-radius:7px; }
body.gi-process-annex-page .gi-process-annex-table { width:100%; border-collapse:collapse; table-layout:fixed; font-size:13px; }
body.gi-process-annex-page .gi-process-annex-table th, body.gi-process-annex-page .gi-process-annex-table td { padding:8px 9px; border-right:1px solid #d6e0ed; border-bottom:1px solid #d6e0ed; vertical-align:middle; overflow-wrap:break-word; }
body.gi-process-annex-page .gi-process-annex-table th { position:sticky; top:0; z-index:1; background:#eaf1f9; color:#263952; font-weight:bold; text-align:left; }
body.gi-process-annex-page .gi-process-annex-table th:last-child, body.gi-process-annex-page .gi-process-annex-table td:last-child { border-right:0; }
body.gi-process-annex-page .gi-process-annex-table tbody tr:nth-child(even) { background:#f8fbfe; }
body.gi-process-annex-page .gi-process-annex-table tbody tr:hover { background:#fff6ea; }
body.gi-process-annex-page .gi-process-annex-col-number, body.gi-process-annex-page .gi-process-annex-col-action { width:34px; text-align:center !important; }
body.gi-process-annex-page .gi-process-annex-col-files { width:92px; text-align:center !important; }
body.gi-process-annex-page .gi-process-annex-files-action { min-height:29px; padding:4px 9px; }
body.gi-process-annex-page .gi-process-annex-empty { padding:16px; color:#526176; text-align:center; }
@media (max-width:700px) { body.gi-process-annex-page .gi-process-annex-editor-header { grid-template-columns:1fr; } body.gi-process-annex-page .gi-process-annex-editor-actions { justify-content:flex-end; } }
/* Ficha de proceso por sistema: historial de rechazos */
body.gi-doc-rejection-history-page { margin:0; padding:12px; background:#f4f7fb; color:#17212f; font-family:Arial,Helvetica,sans-serif; font-size:13px; }
body.gi-doc-rejection-history-page .gi-doc-rejection-history-card { overflow:hidden; border:1px solid #d1ddeb; border-radius:8px; background:#ffffff; }
body.gi-doc-rejection-history-page .gi-doc-rejection-history-card > h3 { margin:0; padding:11px 16px; border-bottom:1px solid #d1ddeb; background:#f8fbff; color:#126b38; font-size:16px; line-height:1.2; }
body.gi-doc-rejection-history-page .gi-doc-rejection-history-table-wrap { max-height:350px; overflow:auto; margin:14px; border:1px solid #cddaea; border-radius:7px; }
body.gi-doc-rejection-history-page .gi-doc-rejection-history-table { width:100%; border-collapse:collapse; table-layout:fixed; font-size:13px; }
body.gi-doc-rejection-history-page .gi-doc-rejection-history-table th, body.gi-doc-rejection-history-page .gi-doc-rejection-history-table td { padding:8px 9px; border-right:1px solid #d6e0ed; border-bottom:1px solid #d6e0ed; vertical-align:middle; overflow-wrap:break-word; }
body.gi-doc-rejection-history-page .gi-doc-rejection-history-table th { position:sticky; top:0; z-index:1; background:#eaf1f9; color:#263952; font-weight:bold; text-align:left; }
body.gi-doc-rejection-history-page .gi-doc-rejection-history-table th:last-child, body.gi-doc-rejection-history-page .gi-doc-rejection-history-table td:last-child { border-right:0; }
body.gi-doc-rejection-history-page .gi-doc-rejection-history-table tbody tr:nth-child(even) { background:#f8fbfe; }
body.gi-doc-rejection-history-page .gi-doc-rejection-history-table tbody tr:hover { background:#fff6ea; }
body.gi-doc-rejection-history-page .gi-doc-rejection-history-col-number { width:38px; text-align:center !important; }
body.gi-doc-rejection-history-page .gi-doc-rejection-history-col-date { width:94px; }
body.gi-doc-rejection-history-page .gi-doc-rejection-history-col-user { width:260px; }
body.gi-doc-rejection-history-page .gi-doc-rejection-history-empty { padding:16px; color:#526176; text-align:center; }
/* Ficha de Proceso por sistema en Revision: misma cabecera que el documento adjunto. */
body.gi-doc-process-page.gi-doc-review-context .gi-doc-editor-info-table {
  table-layout: auto;
}

body.gi-doc-process-page.gi-doc-review-context .gi-doc-editor-info-table tr > td:nth-child(1),
body.gi-doc-process-page.gi-doc-review-context .gi-doc-editor-info-table tr > td:nth-child(2),
body.gi-doc-process-page.gi-doc-review-context .gi-doc-editor-info-table tr > td:nth-child(3),
body.gi-doc-process-page.gi-doc-review-context .gi-doc-editor-info-table tr > td:nth-child(4),
body.gi-doc-process-page.gi-doc-review-context .gi-doc-editor-info-table tr > td:nth-child(5) {
  width: auto !important;
}

body.gi-doc-process-page.gi-doc-review-context .gi-doc-editor-info-table h3,
body.gi-doc-process-page.gi-doc-review-context .gi-doc-editor-date-label {
  color: #17212f;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 12px;
  font-weight: 700;
}

body.gi-doc-process-page.gi-doc-review-context .gi-doc-editor-date-icon {
  display: inline-block !important;
  width: 18px;
  height: 18px;
  margin: 0;
  position: relative;
  top: -2px;
  vertical-align: middle;
}
/* Descriptor de Cargo por sistema en Revision: cabecera homologada al adjunto. */
body.gi-doc-role-page.gi-doc-review-context .gi-doc-editor-info-table {
  table-layout: auto;
}
body.gi-doc-role-page.gi-doc-review-context .gi-doc-editor-info-table tr > td:nth-child(1),
body.gi-doc-role-page.gi-doc-review-context .gi-doc-editor-info-table tr > td:nth-child(2),
body.gi-doc-role-page.gi-doc-review-context .gi-doc-editor-info-table tr > td:nth-child(3),
body.gi-doc-role-page.gi-doc-review-context .gi-doc-editor-info-table tr > td:nth-child(4),
body.gi-doc-role-page.gi-doc-review-context .gi-doc-editor-info-table tr > td:nth-child(5) {
  width: auto !important;
}
body.gi-doc-role-page.gi-doc-review-context .gi-doc-editor-info-table h3 {
  color: #17212f;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 12px;
  font-weight: 700;
}
body.gi-doc-role-page.gi-doc-review-context .gi-doc-editor-date-icon {
  display: inline-block !important;
  width: 18px;
  height: 18px;
  margin: 0;
  position: relative;
  top: -2px;
  vertical-align: middle;
}
/* Aprobacion: fechas con etiqueta superior y lectura completa. */
body.gi-doc-approval-context .gi-doc-approval-dates {
  display: grid;
  grid-template-columns: repeat(3, minmax(100px, 1fr)) 18px;
  align-items: end;
  gap: 6px;
  width: 100%;
}
body.gi-doc-approval-context .gi-doc-approval-date-field {
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-width: 0;
}
body.gi-doc-approval-context .gi-doc-approval-date-field span {
  color: #17212f;
  font: 700 11px Arial, Helvetica, sans-serif;
  text-align: center;
}
body.gi-doc-approval-context .gi-doc-approval-date-field input[type="text"] {
  width: 100% !important;
  min-width: 0;
  min-height: 30px;
  box-sizing: border-box;
  text-align: center;
}
body.gi-doc-approval-context .gi-doc-approval-date-icon {
  display: block !important;
  width: 18px;
  height: 18px;
  margin: 0 0 6px;
}
/* Descriptor de Cargo por sistema en Aprobacion: misma distribucion de cabecera que el adjunto. */
body.gi-doc-role-page.gi-doc-approval-context .gi-doc-editor-info-table {
  table-layout: auto;
}
body.gi-doc-role-page.gi-doc-approval-context .gi-doc-editor-info-table tr > td:nth-child(1),
body.gi-doc-role-page.gi-doc-approval-context .gi-doc-editor-info-table tr > td:nth-child(2),
body.gi-doc-role-page.gi-doc-approval-context .gi-doc-editor-info-table tr > td:nth-child(3),
body.gi-doc-role-page.gi-doc-approval-context .gi-doc-editor-info-table tr > td:nth-child(4),
body.gi-doc-role-page.gi-doc-approval-context .gi-doc-editor-info-table tr > td:nth-child(5) {
  width: auto !important;
}
/* Descriptor por sistema: fechas de Aprobacion con el tamano compacto del adjunto. */
body.gi-doc-role-page.gi-doc-approval-context .gi-doc-approval-dates {
  grid-template-columns: repeat(3, 126px) 18px;
  width: auto;
}
/* Ficha de Proceso por sistema en Aprobacion: cabecera y fechas sin solapes. */
body.gi-doc-process-page.gi-doc-approval-context .gi-doc-editor-info-table {
  table-layout: auto;
}
body.gi-doc-process-page.gi-doc-approval-context .gi-doc-editor-info-table tr > td:nth-child(1),
body.gi-doc-process-page.gi-doc-approval-context .gi-doc-editor-info-table tr > td:nth-child(2),
body.gi-doc-process-page.gi-doc-approval-context .gi-doc-editor-info-table tr > td:nth-child(3),
body.gi-doc-process-page.gi-doc-approval-context .gi-doc-editor-info-table tr > td:nth-child(4),
body.gi-doc-process-page.gi-doc-approval-context .gi-doc-editor-info-table tr > td:nth-child(5) {
  width: auto !important;
}
body.gi-doc-process-page.gi-doc-approval-context .gi-doc-approval-dates {
  grid-template-columns: repeat(3, 126px) 18px;
  width: auto;
}
/* Documento adjunto en Revision: nombre largo no expande la cabecera ni el modal. */
body.gi-doc-attached-page.gi-doc-review-context .gi-doc-editor-info-table {
  table-layout: fixed;
}
body.gi-doc-attached-page.gi-doc-review-context .gi-doc-editor-info-table > tbody > tr > td:nth-child(1) { width: 34% !important; }
body.gi-doc-attached-page.gi-doc-review-context .gi-doc-editor-info-table > tbody > tr > td:nth-child(2) { width: 7% !important; }
body.gi-doc-attached-page.gi-doc-review-context .gi-doc-editor-info-table > tbody > tr > td:nth-child(3) { width: 38% !important; }
body.gi-doc-attached-page.gi-doc-review-context .gi-doc-editor-info-table > tbody > tr > td:nth-child(4) { width: 11% !important; }
body.gi-doc-attached-page.gi-doc-review-context .gi-doc-editor-info-table > tbody > tr > td:nth-child(5) { width: 10% !important; }
body.gi-doc-attached-page.gi-doc-review-context .gi-doc-editor-info-table > tbody > tr:first-child > td:nth-child(3) {
  white-space: normal;
  overflow-wrap: anywhere;
  word-break: normal;
}
/* Cabecera comun en Revision: grilla de dos filas, estable ante nombres extensos. */
body.gi-doc-standard-page:not(.gi-doc-process-page):not(.gi-doc-role-page) .gi-doc-editor-info-table {
  display: grid !important;
  grid-template-columns: minmax(420px, 1.25fr) minmax(80px, .25fr) minmax(260px, 1fr) max-content max-content;
  width: 100% !important;
  table-layout: auto !important;
}
body.gi-doc-standard-page:not(.gi-doc-process-page):not(.gi-doc-role-page) .gi-doc-editor-info-table > tbody,
body.gi-doc-standard-page:not(.gi-doc-process-page):not(.gi-doc-role-page) .gi-doc-editor-info-table > tbody > tr {
  display: contents;
}
body.gi-doc-standard-page:not(.gi-doc-process-page):not(.gi-doc-role-page) .gi-doc-editor-info-table > tbody > tr > td {
  width: auto !important;
  min-width: 0;
  box-sizing: border-box;
}
body.gi-doc-standard-page:not(.gi-doc-process-page):not(.gi-doc-role-page) .gi-doc-editor-info-table > tbody > tr:first-child > td:nth-child(3) {
  white-space: normal;
  overflow-wrap: anywhere;
}
body.gi-doc-standard-page:not(.gi-doc-process-page):not(.gi-doc-role-page) .gi-doc-editor-info-table > tbody > tr:nth-child(2) > td:first-child {
  min-width: 420px;
}
/* Cabeceras especiales por sistema en Revision: misma grilla estable de dos filas. */
body.gi-doc-process-page.gi-doc-review-context .gi-doc-editor-info-table,
body.gi-doc-role-page.gi-doc-review-context .gi-doc-editor-info-table {
  display: grid !important;
  grid-template-columns: minmax(420px, 1.25fr) minmax(80px, .25fr) minmax(260px, 1fr) max-content max-content;
  width: 100% !important;
  table-layout: auto !important;
}
body.gi-doc-process-page.gi-doc-review-context .gi-doc-editor-info-table > tbody,
body.gi-doc-process-page.gi-doc-review-context .gi-doc-editor-info-table > tbody > tr,
body.gi-doc-role-page.gi-doc-review-context .gi-doc-editor-info-table > tbody,
body.gi-doc-role-page.gi-doc-review-context .gi-doc-editor-info-table > tbody > tr {
  display: contents;
}
body.gi-doc-process-page.gi-doc-review-context .gi-doc-editor-info-table > tbody > tr > td,
body.gi-doc-role-page.gi-doc-review-context .gi-doc-editor-info-table > tbody > tr > td {
  width: auto !important;
  min-width: 0;
  box-sizing: border-box;
}
body.gi-doc-process-page.gi-doc-review-context .gi-doc-editor-info-table > tbody > tr:first-child > td:nth-child(3),
body.gi-doc-role-page.gi-doc-review-context .gi-doc-editor-info-table > tbody > tr:first-child > td:nth-child(3) {
  white-space: normal;
  overflow-wrap: anywhere;
}
body.gi-doc-process-page.gi-doc-review-context .gi-doc-editor-info-table > tbody > tr:nth-child(2) > td:first-child,
body.gi-doc-role-page.gi-doc-review-context .gi-doc-editor-info-table > tbody > tr:nth-child(2) > td:first-child {
  min-width: 420px;
}
/* Revision: codigo con holgura adicional; el nombre conserva quiebre controlado. */
body.gi-doc-standard-page:not(.gi-doc-process-page):not(.gi-doc-role-page) .gi-doc-editor-info-table,
body.gi-doc-process-page.gi-doc-review-context .gi-doc-editor-info-table,
body.gi-doc-role-page.gi-doc-review-context .gi-doc-editor-info-table {
  grid-template-columns: minmax(420px, 1.25fr) minmax(140px, .40fr) minmax(190px, .85fr) minmax(126px, .32fr) minmax(110px, .28fr);
}
/* Cabecera comun real: reemplaza la tabla legacy por una grilla de cinco columnas. */
body.gi-doc-standard-page:not(.gi-doc-process-page):not(.gi-doc-role-page) .gi-doc-editor-info-grid {
  display: grid;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
  grid-template-columns: 40% 14% 22% 12% 12%;
  overflow: hidden;
  border: 1px solid #cfd8e3;
  border-radius: 8px;
  background: #ffffff;
}
body.gi-doc-standard-page:not(.gi-doc-process-page):not(.gi-doc-role-page) .gi-doc-editor-info-grid .gi-doc-editor-info-cell {
  min-width: 0;
  padding: 8px 9px;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  border-right: 1px solid #dfe6ef;
  border-bottom: 1px solid #dfe6ef;
}
body.gi-doc-standard-page:not(.gi-doc-process-page):not(.gi-doc-role-page) .gi-doc-editor-info-grid .gi-doc-editor-info-cell:nth-child(5),
body.gi-doc-standard-page:not(.gi-doc-process-page):not(.gi-doc-role-page) .gi-doc-editor-info-grid .gi-doc-editor-info-cell:nth-child(10) {
  border-right: 0;
}
body.gi-doc-standard-page:not(.gi-doc-process-page):not(.gi-doc-role-page) .gi-doc-editor-info-grid .gi-doc-editor-info-cell:nth-child(n+6) {
  border-bottom: 0;
}
body.gi-doc-standard-page:not(.gi-doc-process-page):not(.gi-doc-role-page) .gi-doc-editor-info-type {
  justify-content: center;
  background: #effaf3;
}
body.gi-doc-standard-page:not(.gi-doc-process-page):not(.gi-doc-role-page) .gi-doc-editor-info-cell h3,
body.gi-doc-standard-page:not(.gi-doc-process-page):not(.gi-doc-role-page) .gi-doc-editor-info-cell b {
  margin: 0;
  color: #17212f;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 12px;
  font-weight: 700;
}
body.gi-doc-standard-page:not(.gi-doc-process-page):not(.gi-doc-role-page) .gi-doc-editor-info-type h3 {
  color: #126b38;
}
body.gi-doc-standard-page:not(.gi-doc-process-page):not(.gi-doc-role-page) .gi-doc-editor-info-name {
  align-items: flex-start;
  white-space: normal;
  overflow-wrap: anywhere;
}
body.gi-doc-standard-page:not(.gi-doc-process-page):not(.gi-doc-role-page) .gi-doc-editor-info-version,
body.gi-doc-standard-page:not(.gi-doc-process-page):not(.gi-doc-role-page) .gi-doc-editor-info-state,
body.gi-doc-standard-page:not(.gi-doc-process-page):not(.gi-doc-role-page) .gi-doc-editor-info-requirements,
body.gi-doc-standard-page:not(.gi-doc-process-page):not(.gi-doc-role-page) .gi-doc-editor-info-actions {
  justify-content: center;
}
body.gi-doc-standard-page:not(.gi-doc-process-page):not(.gi-doc-role-page) .gi-doc-editor-info-dates {
  min-width: 420px;
}
/* Cabeceras de ficha de proceso y descriptor: grilla real de cinco columnas. */
body.gi-doc-process-page .gi-doc-special-info-grid,
body.gi-doc-role-page .gi-doc-special-info-grid { display:grid; width:100%; max-width:100%; box-sizing:border-box; grid-template-columns:40% 14% 22% 12% 12%; overflow:hidden; border:1px solid #cfd8e3; border-radius:8px; background:#ffffff; }
body.gi-doc-process-page .gi-doc-special-info-cell,
body.gi-doc-role-page .gi-doc-special-info-cell { min-width:0; padding:8px 9px; box-sizing:border-box; display:flex; align-items:center; border-right:1px solid #dfe6ef; border-bottom:1px solid #dfe6ef; }
body.gi-doc-process-page .gi-doc-special-info-cell:nth-child(5), body.gi-doc-process-page .gi-doc-special-info-cell:nth-child(10), body.gi-doc-role-page .gi-doc-special-info-cell:nth-child(5), body.gi-doc-role-page .gi-doc-special-info-cell:nth-child(10) { border-right:0; }
body.gi-doc-process-page .gi-doc-special-info-cell:nth-child(n+6), body.gi-doc-role-page .gi-doc-special-info-cell:nth-child(n+6) { border-bottom:0; }
body.gi-doc-process-page .gi-doc-special-info-type, body.gi-doc-role-page .gi-doc-special-info-type { justify-content:center; background:#effaf3; }
body.gi-doc-process-page .gi-doc-special-info-cell h3, body.gi-doc-process-page .gi-doc-special-info-cell b, body.gi-doc-role-page .gi-doc-special-info-cell h3, body.gi-doc-role-page .gi-doc-special-info-cell b { margin:0; color:#17212f; font-family:Arial, Helvetica, sans-serif; font-size:12px; font-weight:700; }
body.gi-doc-process-page .gi-doc-special-info-type h3, body.gi-doc-role-page .gi-doc-special-info-type h3 { color:#126b38; }
body.gi-doc-process-page .gi-doc-special-info-name, body.gi-doc-role-page .gi-doc-special-info-name { align-items:flex-start; white-space:normal; overflow-wrap:anywhere; }
body.gi-doc-process-page .gi-doc-special-info-version, body.gi-doc-process-page .gi-doc-special-info-state, body.gi-doc-process-page .gi-doc-special-info-requirements, body.gi-doc-process-page .gi-doc-special-info-actions, body.gi-doc-role-page .gi-doc-special-info-version, body.gi-doc-role-page .gi-doc-special-info-state, body.gi-doc-role-page .gi-doc-special-info-requirements, body.gi-doc-role-page .gi-doc-special-info-actions { justify-content:center; }
body.gi-doc-process-page .gi-doc-special-info-dates, body.gi-doc-role-page .gi-doc-special-info-dates { min-width:420px; }
/* Enlace de retorno nativo para Obsoletos, con el mismo patron visual. */
body.gi-doc-list-page a.gi-doc-return-action { display:inline-flex; align-items:center; justify-content:center; min-height:34px; box-sizing:border-box; text-decoration:none; }
body.gi-doc-list-page a.gi-doc-return-action:hover { text-decoration:none; }

/* Modificar documentos: retorno nativo con patron Retorno. */
body.gi-doc-list-page a.gi-doc-return-action { display:inline-flex; align-items:center; justify-content:center; min-height:34px; box-sizing:border-box; text-decoration:none; }
body.gi-doc-list-page a.gi-doc-return-action:hover { text-decoration:none; }

/* Modificar documentos: cola de trabajo con la misma jerarquia visual de Confeccionar. */
body.gi-doc-list-page .gi-doc-modify-workspace {
  height: calc(100vh - 12px);
  min-height: 360px;
  padding: 6px 8px;
  box-sizing: border-box;
}

body.gi-doc-list-page .gi-doc-modify-card {
  display: flex;
  height: 100%;
  min-width: 0;
  flex-direction: column;
  overflow: hidden;
  border: 1px solid #d5dee9;
  border-radius: 8px;
  background: #ffffff;
}

body.gi-doc-list-page .gi-doc-modify-card-title {
  display: flex;
  align-items: center;
  min-height: 34px;
  padding: 8px 11px;
  border-left: 26px solid #157f44;
  background: #19984f;
  color: #ffffff;
  font-size: 13px;
  font-weight: 700;
  box-sizing: border-box;
}

body.gi-doc-list-page .gi-doc-modify-card-title img {
  width: 15px;
  height: 15px;
  margin-right: 8px;
  object-fit: contain;
}

body.gi-doc-list-page .gi-doc-modify-filters {
  display: flex;
  align-items: flex-end;
  gap: 8px;
  padding: 9px 10px;
  border-bottom: 1px solid #d5dee9;
  background: #ffffff;
  box-sizing: border-box;
}

body.gi-doc-list-page .gi-doc-modify-field {
  min-width: 0;
}

body.gi-doc-list-page .gi-doc-modify-field label {
  display: block;
  margin-bottom: 3px;
  color: #334155;
  font-size: 11px;
  font-weight: 700;
}

body.gi-doc-list-page .gi-doc-modify-field--select {
  width: 220px;
}

body.gi-doc-list-page .gi-doc-modify-field--select select {
  width: 100% !important;
}

body.gi-doc-list-page .gi-doc-modify-date-group {
  display: flex;
  align-items: flex-end;
  gap: 7px;
  margin-left: 10px;
}

body.gi-doc-list-page .gi-doc-modify-field--date > span {
  display: flex;
  align-items: center;
  gap: 4px;
}

body.gi-doc-list-page .gi-doc-modify-field--date .gi-doc-date-field {
  width: 78px !important;
}

body.gi-doc-list-page .gi-doc-modify-field--date .gi-date-icon {
  width: 17px;
  height: 17px;
  cursor: pointer;
}

body.gi-doc-list-page .gi-doc-modify-actions {
  display: flex;
  align-items: center;
  gap: 4px;
  margin-left: 10px;
  white-space: nowrap;
}

body.gi-doc-list-page .gi-doc-modify-actions input[type="button"] {
  min-height: 29px;
  padding: 5px 12px;
  font-size: 12px;
}

body.gi-doc-list-page .gi-doc-modify-actions input[value="Filtrar documentos"] {
  border-color: #ff9700;
  background: #ff9700;
  color: #ffffff;
}

body.gi-doc-list-page .gi-doc-modify-actions input[value="Filtrar documentos"]:hover {
  border-color: #ff9700 !important;
  background: #fff6ea !important;
  color: #1f2933 !important;
}

body.gi-doc-list-page .gi-doc-modify-filters > .gi-doc-return-action {
  min-height: 29px;
  margin-left: auto;
  padding: 5px 12px;
  font-size: 12px;
  white-space: nowrap;
}

body.gi-doc-list-page .gi-doc-modify-list-scroll {
  flex: 1 1 auto;
  min-height: 0;
  overflow: auto;
  border: 1px solid #d5dee9;
  border-width: 1px 0 0;
  background: #ffffff;
  scrollbar-gutter: stable;
}

body.gi-doc-list-page .gi-doc-modify-list-scroll .gi-doc-list-scroll {
  height: auto !important;
  min-height: 0;
  overflow: visible !important;
  border: 0;
  border-radius: 0;
  padding-right: 0;
}

body.gi-doc-list-page .gi-doc-modify-list-scroll .gi-doc-list-table {
  border-width: 0 0 1px !important;
}

@media (max-width: 1120px) {
  body.gi-doc-list-page .gi-doc-modify-filters {
    flex-wrap: wrap;
  }

  body.gi-doc-list-page .gi-doc-modify-filters > .gi-doc-return-action {
    margin-left: 0;
  }
}

@media (max-width: 720px) {
  body.gi-doc-list-page .gi-doc-modify-workspace {
    height: auto;
    min-height: 0;
    padding: 6px;
  }

  body.gi-doc-list-page .gi-doc-modify-field--select {
    width: 100%;
  }

  body.gi-doc-list-page .gi-doc-modify-date-group {
    width: 100%;
    margin-left: 0;
  }

  body.gi-doc-list-page .gi-doc-modify-list-scroll {
    height: 420px;
    flex: 0 0 auto;
  }
}
/* Patron Retorno para enlaces nativos de las listas de documentos. */
body.gi-doc-list-page a.gi-doc-return-action {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 29px;
  padding: 5px 12px;
  border: 1px solid #19984f !important;
  border-radius: 6px;
  background: #effaf3 !important;
  color: #126b38 !important;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
  box-sizing: border-box;
  text-decoration: none;
}

body.gi-doc-list-page a.gi-doc-return-action:hover {
  border-color: #ff9700 !important;
  background: #effaf3 !important;
  color: #126b38 !important;
  text-decoration: none;
}
/* Contexto de modificacion integrado al menu de forma del documento. */
body.gi-doc-create-page .gi-doc-create-menu-row {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
  width: 100%;
  margin: 0 0 6px;
}

body.gi-doc-create-page .gi-doc-create-menu-row .gi-doc-create-tabs {
  flex: 0 0 auto;
  margin-bottom: 0;
}

body.gi-doc-create-page .gi-doc-modify-context {
  display: flex;
  align-items: center;
  min-width: 0;
  max-width: min(560px, 44vw);
  min-height: 34px;
  padding: 7px 12px;
  border: 1px solid #d5dee9;
  border-bottom: 3px solid #19984f;
  border-radius: 8px;
  background: #ffffff;
  color: #334155;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 12px;
  box-sizing: border-box;
  white-space: nowrap;
}

body.gi-doc-create-page .gi-doc-modify-context .gi-doc-menu-icon {
  flex: 0 0 auto;
  width: 14px;
  margin-right: 7px;
  color: #126b38;
  font-size: 13px;
}

body.gi-doc-create-page .gi-doc-modify-context-label {
  flex: 0 0 auto;
  margin-right: 5px;
  color: #58677a;
  font-weight: 700;
}

body.gi-doc-create-page .gi-doc-modify-context strong {
  min-width: 0;
  overflow: hidden;
  color: #126b38;
  font-weight: 700;
  text-overflow: ellipsis;
  white-space: nowrap;
}

@media (max-width: 760px) {
  body.gi-doc-create-page .gi-doc-create-menu-row {
    align-items: stretch;
    flex-direction: column;
  }

  body.gi-doc-create-page .gi-doc-modify-context {
    max-width: 100%;
  }
}
