@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Open+Sans:wght@400;500;600;700&family=Poppins:wght@600;700&display=swap");

@font-face {
  font-family: "Font Awesome 7 Pro Light";
  src: url("../../prohima/vendor/fontawesome.7/webfonts/fa-light-300.woff2") format("woff2");
}

@font-face {
  font-family: "Font Awesome 7 Pro";
  src: url("../../prohima/vendor/fontawesome.7/webfonts/fa-regular-400.woff2") format("woff2");
}

:root {
  --bs-primary: #2980b9;
  --bs-primary-rgb: 41, 128, 185;
  --bs-link-color: #2980b9;
  --bs-link-hover-color: #216893;
  --bs-body-bg: #ffffff;
  --bs-body-color: #212121;
  --bs-secondary-bg: #f4f4f4;
  --bs-tertiary-bg: #f4f4f4;
  --bs-border-color: #d8dee4;
  --bs-card-bg: #ffffff;
  --bs-card-border-color: #d8dee4;
  --bs-card-cap-bg: #f4f4f4;
  --bs-header-bg: #ffffff;
  --bs-header-item-color: #212121;
}

body[data-sidebar=dark] {
  --bs-sidebar-dark-bg: #161616;
  --bs-sidebar-dark-menu-item-color: rgba(255, 255, 255, 0.78);
  --bs-sidebar-dark-menu-item-icon-color: rgba(255, 255, 255, 0.55);
  --bs-sidebar-dark-menu-item-hover-color: #ffffff;
  --bs-sidebar-dark-menu-sub-item-color: rgba(255, 255, 255, 0.68);
  --bs-sidebar-dark-menu-item-active-color: #ffffff;
}

body {
  background-color: #ffffff !important;
  font-family: "Open Sans", Arial, sans-serif !important;
  font-size: 13px !important;
  color: #212121 !important;
}

body h1,
body h2,
body h3,
body h4,
body h5,
body h6 {
  font-family: "Poppins", "Open Sans", Arial, sans-serif !important;
  color: #212121;
  letter-spacing: 0;
}

a {
  color: #2980b9;
}

a:hover {
  color: #216893;
}

#page-topbar {
  box-shadow: 0 1px 0 rgba(22, 22, 22, 0.08);
}

.vertical-menu {
  box-shadow: 2px 0 18px rgba(22, 22, 22, 0.08);
}

.menu-title {
  color: #e1a87a !important;
  letter-spacing: 0.08em;
}

#sidebar-menu ul li a {
  font-weight: 600;
}

#sidebar-menu ul.metismenu > li.mm-active > a,
body[data-sidebar=dark][data-sidebar-size=sm] .vertical-menu #sidebar-menu > ul > li:hover > a {
  background-color: #2980b9 !important;
  color: #ffffff !important;
}

#sidebar-menu ul.metismenu > li.mm-active > a > i,
body[data-sidebar=dark][data-sidebar-size=sm] .vertical-menu #sidebar-menu > ul > li:hover > a i {
  color: #ffffff !important;
}

.page-title-box {
  background-color: #ffffff;
  border-bottom: 1px solid #d8dee4 !important;
}

.page-title-box .breadcrumb h4 {
  font-family: "Poppins", "Open Sans", Arial, sans-serif !important;
  font-size: 0.9rem !important;
  text-transform: uppercase;
}

.page-title-box .breadcrumb a,
.page-title-box .breadcrumb-item {
  color: #6b7280;
}

.page-title-box .breadcrumb-item.active {
  color: #e1a87a;
}

.footer {
  background-color: #f4f4f4;
  color: #6b7280;
}

#page-topbar .btn-outline-secondary {
  color: #212121;
  border-color: rgba(33, 33, 33, 0.16);
}

#page-topbar .btn-outline-secondary:hover,
#page-topbar .btn-outline-secondary:focus,
#page-topbar .btn-outline-secondary:active {
  background-color: #2980b9;
  border-color: #2980b9;
  color: #ffffff;
}

#page-topbar .dropdown-menu {
  border-color: #d8dee4;
  box-shadow: 0 16px 36px rgba(22, 22, 22, 0.12);
}

.card {
  border: 1px solid #d8dee4;
  box-shadow: 0 12px 28px rgba(22, 22, 22, 0.06);
}

.card .card-header {
  background-color: #f4f4f4;
  border-bottom: 1px solid #d8dee4;
}

.card .crud-table .card-header .badge {
  background-color: #2980b9 !important;
  color: #ffffff !important;
}

.card .crud-table .card-actions {
  font-size: 12px !important;
  padding-left: 10px;
  padding-right: 10px;
}

.card .crud-table table.card-table.table {
  margin-top: 10px;
}

.card .crud-table .active > .page-link {
  background-color: #2980b9 !important;
  color: #ffffff !important;
  border-color: #2980b9 !important;
}

.card ul.pagination {
  padding-left: 10px;
}

.table > thead,
.table > tbody,
.form-control,
.form-select {
  font-size: 12px !important;
}

.form-control,
.form-select {
  border-color: #d8dee4;
}

.form-control:focus,
.form-select:focus {
  border-color: rgba(41, 128, 185, 0.45);
  box-shadow: 0 0 0 0.2rem rgba(41, 128, 185, 0.15);
}

.contenidor {
  display: flex;
  gap: 1rem;
  overflow-x: auto;
  padding: 1rem;
}

.panel {
  min-height: 90vh;
  width: 25vw;
}

.panel-minimized {
  flex: 0 0 64px !important;
  transition: flex 0.3s ease;
}

.panel-minimized .card-body {
  display: none;
}

.btn-minimize-crud,
.btn-closepanel {
  position: absolute;
  right: 32px;
  top: 1px;
  width: 30px;
  height: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 16px;
}

.btn-closepanel {
  right: 1px;
}

.xmi-crud-panel-actions .btn-minimize-crud,
.xmi-crud-panel-actions .btn-closepanel {
  position: static;
}

button.btn.csxBtnNou,
button.btn.csxBtnDelete,
button.btn.csxBtnSave,
button.btn.btn-minimize-crud,
button.btn.btn-closepanel,
button.btn.csxBtnRelated {
  display: inline-block;
  font-weight: 600;
  font-family: "Open Sans", Arial, sans-serif !important;
  text-transform: uppercase;
  text-decoration: none;
  font-size: 12px !important;
  text-align: center;
  vertical-align: middle;
  border-style: none !important;
}

button.btn.csxBtnNou i,
button.btn.csxBtnDelete i,
button.btn.csxBtnSave i,
button.btn.btn-minimize-crud i,
button.btn.btn-closepanel i,
button.btn.csxBtnRelated i {
  display: none;
}

button.btn.csxBtnNou:disabled,
button.btn.csxBtnNou[disabled],
button.btn.csxBtnDelete:disabled,
button.btn.csxBtnDelete[disabled],
button.btn.csxBtnSave:disabled,
button.btn.csxBtnSave[disabled],
button.btn.btn-minimize-crud:disabled,
button.btn.btn-minimize-crud[disabled],
button.btn.btn-closepanel:disabled,
button.btn.btn-closepanel[disabled],
button.btn.csxBtnRelated:disabled,
button.btn.csxBtnRelated[disabled] {
  background-color: #dadada !important;
  color: #8b8b8b !important;
  pointer-events: none;
}

button.btn.csxBtnNou.active,
button.btn.csxBtnDelete.active,
button.btn.csxBtnSave.active,
button.btn.btn-minimize-crud.active,
button.btn.btn-closepanel.active,
button.btn.csxBtnRelated.active {
  box-shadow: none;
}

button.btn.csxBtnNou:before,
button.btn.csxBtnDelete:before,
button.btn.csxBtnSave:before,
button.btn.btn-minimize-crud:before,
button.btn.btn-closepanel:before,
button.btn.csxBtnRelated:before {
  font-family: "Font Awesome 7 Pro Light" !important;
  font-size: 14px;
  vertical-align: middle;
  font-weight: 300;
  padding-right: 6px;
}

button.btn.csxBtnNou {
  background-color: #216893 !important;
  color: #ffffff !important;
}

button.btn.csxBtnNou:before {
  content: "\f0fe";
}

button.btn.csxBtnDelete {
  background-color: #920909 !important;
  color: #ffffff !important;
}

button.btn.csxBtnDelete:before {
  content: "\f2ed";
}

button.btn.csxBtnSave {
  background-color: #2980b9 !important;
  color: #ffffff !important;
}

button.btn.csxBtnSave:before {
  content: "\f0c7";
}

button.btn.btn-minimize-crud {
  background-color: transparent !important;
  color: #212121 !important;
}

button.btn.btn-minimize-crud span,
button.btn.btn-closepanel span {
  display: none;
}

button.btn.btn-minimize-crud:before {
  content: "\f2d1";
}

button.btn.btn-closepanel {
  background-color: transparent !important;
  color: #212121 !important;
}

button.btn.btn-closepanel:before {
  content: "\f00d";
}

button.btn.csxBtnRelated {
  background-color: #e8f1f7 !important;
  color: #17496a !important;
  margin-bottom: 4px;
  border: 1px solid #a7c5dd !important;
}

button.btn.csxBtnRelated:disabled,
button.btn.csxBtnRelated[disabled] {
  background-color: #dadada !important;
  color: #8b8b8b !important;
}

.csxCardBodyOptions {
  padding: 0.75rem !important;
}

.csxCardFooterForm {
  padding: 0.75rem 1rem !important;
}

.csxCardFooterForm .csxBtnSave {
  min-width: 8.5rem;
}

.csxCrudRelatedGrid,
.csxCrudWorkflowActions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.5rem;
}

.csxCrudRelatedGrid .csxBtnRelated,
.csxCrudWorkflowActions .btn {
  width: 100%;
  margin-bottom: 0;
}

.csxCrudWorkflowActions .btn {
  text-transform: none;
}

@media (max-width: 576px) {
  .csxCrudRelatedGrid,
  .csxCrudWorkflowActions {
    grid-template-columns: minmax(0, 1fr);
  }
}

.form-select-lg {
  padding-top: 0.2rem;
  padding-bottom: 0.2rem;
  border-radius: 4px;
}

.xmi-number-input,
.xmi-number-cell {
  text-align: right;
  white-space: nowrap;
}

.xmi-number-input {
  padding-right: 0.6rem;
}

.form-control-plaintext.xmi-number-plaintext {
  text-align: right;
  padding-right: 0;
  margin-bottom: 0;
}

.phm-dashboard {
  --phm-dashboard-border: #d8e2ea;
  --phm-dashboard-muted: #64748b;
  --phm-dashboard-surface: #ffffff;
}
.phm-dashboard-eyebrow { color: #17496a; font-size: 0.75rem; font-weight: 700; letter-spacing: 0.04em; text-transform: uppercase; }
.phm-dashboard-calendar-link { align-self: flex-start; font-size: 0.875rem; white-space: nowrap; }
.phm-dashboard-metric, .phm-dashboard-section { background: var(--phm-dashboard-surface); border: 1px solid var(--phm-dashboard-border); border-radius: 6px; }
.phm-dashboard-metric { align-items: center; display: flex; gap: 0.75rem; min-height: 86px; padding: 1rem; }
.phm-dashboard-metric-icon { align-items: center; background: #edf5f9; border-radius: 50%; display: inline-flex; flex: 0 0 2.25rem; height: 2.25rem; justify-content: center; width: 2.25rem; }
.phm-dashboard-metric-value { color: #1e293b; font-size: 1.3rem; font-weight: 700; line-height: 1.1; }
.phm-dashboard-metric-value small { color: var(--phm-dashboard-muted); font-size: 0.75rem; font-weight: 600; }
.phm-dashboard-metric-label { color: var(--phm-dashboard-muted); font-size: 0.78rem; margin-top: 0.2rem; }
.phm-dashboard-section { padding: 1rem; }
.phm-dashboard-section-header { align-items: flex-start; display: flex; justify-content: space-between; margin-bottom: 0.8rem; }
.phm-dashboard-empty { color: var(--phm-dashboard-muted); font-size: 0.875rem; padding: 1.2rem 0; text-align: center; }
.phm-dashboard-resource-list, .phm-dashboard-project-list, .phm-dashboard-operation-list, .phm-dashboard-outbound-list { display: grid; }
.phm-dashboard-resource-row { align-items: center; display: grid; gap: 0.75rem; grid-template-columns: minmax(11rem, 1.1fr) minmax(8rem, 2fr) minmax(5.25rem, auto); min-height: 2.9rem; }
.phm-dashboard-resource-row + .phm-dashboard-resource-row, .phm-dashboard-project-row + .phm-dashboard-project-row, .phm-dashboard-operation-row + .phm-dashboard-operation-row, .phm-dashboard-outbound-row + .phm-dashboard-outbound-row { border-top: 1px solid #edf1f4; }
.phm-dashboard-resource-name { align-items: center; display: flex; font-size: 0.875rem; gap: 0.5rem; min-width: 0; }
.phm-dashboard-resource-name span:last-child { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.phm-dashboard-resource-icon { color: #17496a; font-size: 0.75rem; }
.phm-dashboard-resource-load .progress { background-color: #eaf0f4; height: 0.45rem; }
.phm-dashboard-resource-load .progress-bar { background-color: #2980b9; }
.phm-dashboard-resource-summary { display: grid; font-size: 0.75rem; line-height: 1.2; }
.phm-dashboard-resource-summary strong { color: #1e293b; font-size: 0.82rem; }
.phm-dashboard-resource-summary span { color: var(--phm-dashboard-muted); }
.phm-dashboard-project-row { align-items: center; color: inherit; display: flex; gap: 0.75rem; justify-content: space-between; padding: 0.63rem 0; text-decoration: none; }
.phm-dashboard-project-row:hover { color: inherit; }
.phm-dashboard-project-main { display: grid; min-width: 0; }
.phm-dashboard-project-main strong, .phm-dashboard-project-main span, .phm-dashboard-project-main small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.phm-dashboard-project-main strong { color: #17496a; font-size: 0.82rem; }
.phm-dashboard-project-main span, .phm-dashboard-project-main small { color: var(--phm-dashboard-muted); font-size: 0.75rem; }
.phm-dashboard-project-row .badge { flex: 0 0 auto; font-size: 0.68rem; }
.phm-dashboard-operation-row { align-items: center; display: grid; gap: 0.75rem; grid-template-columns: 1.9rem 4.5rem minmax(0, 1fr) auto; min-height: 3.45rem; }
.phm-dashboard-operation-icon { align-items: center; background: var(--phm-operation-color); border-radius: 50%; color: #fff; display: inline-flex; font-size: 0.72rem; height: 1.8rem; justify-content: center; width: 1.8rem; }
.phm-dashboard-operation-time, .phm-dashboard-operation-main { display: grid; line-height: 1.2; }
.phm-dashboard-operation-time strong, .phm-dashboard-operation-main strong { color: #1e293b; font-size: 0.8rem; }
.phm-dashboard-operation-time span, .phm-dashboard-operation-main span { color: var(--phm-dashboard-muted); font-size: 0.72rem; }
.phm-dashboard-operation-main { min-width: 0; }
.phm-dashboard-operation-main strong, .phm-dashboard-operation-main span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.phm-dashboard-operation-link { color: #17496a; font-size: 0.75rem; font-weight: 700; text-decoration: none; white-space: nowrap; }
.phm-dashboard-outbound-row { display: grid; gap: 0.1rem; padding: 0.58rem 0; }
.phm-dashboard-outbound-row span, .phm-dashboard-outbound-row small { color: var(--phm-dashboard-muted); font-size: 0.74rem; }
.phm-dashboard-outbound-row strong { color: #1e293b; font-size: 0.82rem; }
.phm-dashboard-orders-summary { align-items: center; background: #f5f8fa; border-top: 1px solid #e6edf1; display: flex; gap: 0.65rem; margin-left: -1rem; margin-right: -1rem; padding: 0.8rem 1rem 0; }
.phm-dashboard-orders-icon { align-items: center; background: #e8f1f7; border-radius: 50%; color: #17496a; display: inline-flex; flex: 0 0 2rem; height: 2rem; justify-content: center; width: 2rem; }
.phm-dashboard-orders-summary div { display: grid; line-height: 1.2; }
.phm-dashboard-orders-summary strong { color: #1e293b; font-size: 0.78rem; }
.phm-dashboard-orders-summary span { color: var(--phm-dashboard-muted); font-size: 0.72rem; }
@media (max-width: 576px) {
  .phm-dashboard-resource-row { grid-template-columns: minmax(0, 1fr) auto; }
  .phm-dashboard-resource-load { grid-column: 1 / -1; grid-row: 2; }
  .phm-dashboard-operation-row { grid-template-columns: 1.9rem 1fr auto; }
  .phm-dashboard-operation-time { display: none; }
}
