:root {
  --erp-shell-bg: #d8d8d8;
  --erp-panel-bg: #ece9d8;
  --erp-border: #8f8f8f;
  --erp-border-light: #ffffff;
  --erp-border-dark: #707070;
  --erp-brand-red: #cc1414;
  --erp-workspace: #7169d5;
  --erp-workspace-dot: rgba(255, 255, 255, 0.35);
  --erp-text: #111111;
  --erp-body-start: #f4f4f4;
  --erp-body-end: #d9d9d9;
  --erp-brandbar-start: #f8f8f8;
  --erp-brandbar-end: #dddddd;
  --erp-menubar-bg: #efefef;
  --erp-toolbar-button-start: #f7f7f7;
  --erp-toolbar-button-end: #d7d7d7;
  --erp-workspace-overlay-top: rgba(29, 22, 108, 0.12);
  --erp-workspace-overlay-bottom: rgba(29, 22, 108, 0.02);
  --erp-summary-card-bg: rgba(255, 255, 255, 0.9);
  --erp-summary-box-start: #ffffff;
  --erp-summary-box-end: #f2f1ea;
  --erp-theme-button-start: #f8f7ef;
  --erp-theme-button-end: #d8d0b2;
  --erp-page-header-start: #f9f5df;
  --erp-page-header-end: #e5dcc0;
  --erp-page-header-border: #9e9579;
  --erp-page-kicker: #6b5d2e;
  --erp-card-bg: #f4f1e5;
  --erp-card-header-start: #fdf8e8;
  --erp-card-header-end: #ddd3b4;
  --erp-card-header-border: #b9ae8f;
  --erp-table-header-bg: #ece5cf;
  --erp-table-border: #b6b0a0;
  --erp-grid-header-start: #f1efd9;
  --erp-grid-header-end: #dddab8;
  --erp-grid-header-border: #b4b08c;
  --erp-grid-column-header-bg: #ebe7c9;
  --erp-grid-footer-start: #f2efd9;
  --erp-grid-footer-end: #e0dbb9;
  --erp-grid-footer-border: #b8b28f;
  --erp-field-bg: #fcfbf5;
  --erp-field-border: #cbc4b0;
  --erp-tab-start: #f6f6f6;
  --erp-tab-end: #d8d8d8;
  --erp-tab-active-start: #fff0c8;
  --erp-tab-active-end: #e5cd87;
  --erp-button-primary-start: #d8f0d3;
  --erp-button-primary-end: #9cc18d;
  --erp-button-accent-start: #ffd9c5;
  --erp-button-accent-end: #f0a271;
  --erp-button-muted-start: #f6f6f6;
  --erp-button-muted-end: #cfcfcf;
  --erp-alert-success-bg: #dff3df;
  --erp-alert-success-border: #8dbe8f;
  --erp-alert-success-text: #214e22;
  --erp-alert-error-bg: #f7dede;
  --erp-alert-error-border: #d29393;
  --erp-alert-error-text: #6a1f1f;
  --erp-sidebar-text: var(--erp-text);
  --erp-sidebar-link: var(--erp-text);
  --erp-sidebar-icon: #3498db;
}

html[data-erp-theme="caramel"] {
  --erp-shell-bg: #ead6b8;
  --erp-panel-bg: #f7ead3;
  --erp-border: #ab8c65;
  --erp-border-dark: #8a6d49;
  --erp-workspace: #c88742;
  --erp-workspace-dot: rgba(255, 243, 228, 0.45);
  --erp-body-start: #fff3e3;
  --erp-body-end: #d9b88c;
  --erp-brandbar-start: #fff5e8;
  --erp-brandbar-end: #e7c8a0;
  --erp-menubar-bg: #f7e4cb;
  --erp-toolbar-button-start: #fffaf2;
  --erp-toolbar-button-end: #dfc19a;
  --erp-workspace-overlay-top: rgba(131, 74, 18, 0.18);
  --erp-workspace-overlay-bottom: rgba(131, 74, 18, 0.05);
  --erp-summary-card-bg: rgba(255, 247, 236, 0.92);
  --erp-summary-box-start: #fff9f1;
  --erp-summary-box-end: #eed7b6;
  --erp-theme-button-start: #fff3dd;
  --erp-theme-button-end: #d6a568;
  --erp-page-header-start: #fff1d9;
  --erp-page-header-end: #e8caa0;
  --erp-page-header-border: #b48d58;
  --erp-page-kicker: #8b5d21;
  --erp-card-bg: #fbf0df;
  --erp-card-header-start: #fff7ea;
  --erp-card-header-end: #e8ca9f;
  --erp-card-header-border: #c59c65;
  --erp-table-header-bg: #f2dec0;
  --erp-table-border: #ceb287;
  --erp-field-bg: #fffaf2;
  --erp-field-border: #d0b081;
  --erp-tab-start: #fbf3e6;
  --erp-tab-end: #dfc19a;
  --erp-tab-active-start: #ffe2b6;
  --erp-tab-active-end: #d89f53;
}

html[data-erp-theme="lilian"] {
  --erp-shell-bg: #d9d0ea;
  --erp-panel-bg: #efeaf8;
  --erp-border: #8f7aa8;
  --erp-border-dark: #6c5d88;
  --erp-workspace: #8f77c7;
  --erp-workspace-dot: rgba(255, 255, 255, 0.4);
  --erp-body-start: #f4effd;
  --erp-body-end: #cabee1;
  --erp-brandbar-start: #fbf8ff;
  --erp-brandbar-end: #d8cceb;
  --erp-menubar-bg: #ede4fa;
  --erp-toolbar-button-start: #fbf8ff;
  --erp-toolbar-button-end: #d7caee;
  --erp-workspace-overlay-top: rgba(79, 41, 136, 0.16);
  --erp-workspace-overlay-bottom: rgba(79, 41, 136, 0.05);
  --erp-summary-card-bg: rgba(250, 247, 255, 0.92);
  --erp-summary-box-start: #ffffff;
  --erp-summary-box-end: #e7def7;
  --erp-theme-button-start: #faf3ff;
  --erp-theme-button-end: #bea7e5;
  --erp-page-header-start: #f9f0ff;
  --erp-page-header-end: #dccff1;
  --erp-page-header-border: #9c84c6;
  --erp-page-kicker: #6f4e9f;
  --erp-card-bg: #f5f0fc;
  --erp-card-header-start: #fefaff;
  --erp-card-header-end: #ddd1f2;
  --erp-card-header-border: #baa8db;
  --erp-table-header-bg: #ebe2f8;
  --erp-table-border: #c8b8e1;
  --erp-field-bg: #fefcff;
  --erp-field-border: #c8b8e1;
  --erp-tab-start: #f7f3fd;
  --erp-tab-end: #dbd0f2;
  --erp-tab-active-start: #eedfff;
  --erp-tab-active-end: #be9de6;
}

html[data-erp-theme="money-twins"] {
  --erp-shell-bg: #9bbce8;
  --erp-panel-bg: #c7ddf7;
  --erp-border: #6f94c6;
  --erp-border-dark: #4e76aa;
  --erp-workspace: #9bbce8;
  --erp-workspace-dot: rgba(255, 255, 255, 0.45);
  --erp-body-start: #edf5ff;
  --erp-body-end: #9bbce8;
  --erp-brandbar-start: #f3f8ff;
  --erp-brandbar-end: #c7ddf7;
  --erp-menubar-bg: #d7e8fb;
  --erp-toolbar-button-start: #f7fdff;
  --erp-toolbar-button-end: #b4cfee;
  --erp-workspace-overlay-top: rgba(58, 121, 199, 0.18);
  --erp-workspace-overlay-bottom: rgba(58, 121, 199, 0.04);
  --erp-summary-card-bg: rgba(245, 250, 255, 0.92);
  --erp-summary-box-start: #ffffff;
  --erp-summary-box-end: #dfedfb;
  --erp-theme-button-start: #edf5ff;
  --erp-theme-button-end: #9bbce8;
  --erp-page-header-start: #f1f7ff;
  --erp-page-header-end: #c7ddf7;
  --erp-page-header-border: #789dcb;
  --erp-page-kicker: #285d99;
  --erp-card-bg: #edf5ff;
  --erp-card-header-start: #f8fdff;
  --erp-card-header-end: #d4e6fb;
  --erp-card-header-border: #93b4dc;
  --erp-table-header-bg: #dceafb;
  --erp-table-border: #abc4e2;
  --erp-grid-header-start: #f1f7ff;
  --erp-grid-header-end: #cde1f8;
  --erp-grid-header-border: #8fb0d8;
  --erp-grid-column-header-bg: #deecfb;
  --erp-grid-footer-start: #f1f7ff;
  --erp-grid-footer-end: #d1e3f8;
  --erp-grid-footer-border: #91b2d9;
  --erp-field-bg: #fcffff;
  --erp-field-border: #a7c0de;
  --erp-tab-start: #f2f8ff;
  --erp-tab-end: #c8ddf5;
  --erp-tab-active-start: #e4f0ff;
  --erp-tab-active-end: #9bbce8;
}

html[data-erp-theme="imaginary"] {
  --erp-shell-bg: #d3e6ea;
  --erp-panel-bg: #eaf6f8;
  --erp-border: #6f98a3;
  --erp-border-dark: #4f7580;
  --erp-workspace: #4ea3b8;
  --erp-workspace-dot: rgba(255, 255, 255, 0.4);
  --erp-body-start: #f0fbff;
  --erp-body-end: #bedee7;
  --erp-brandbar-start: #f7feff;
  --erp-brandbar-end: #cae6ee;
  --erp-menubar-bg: #e5f4f7;
  --erp-toolbar-button-start: #fbfeff;
  --erp-toolbar-button-end: #c5e1e8;
  --erp-workspace-overlay-top: rgba(14, 86, 104, 0.13);
  --erp-workspace-overlay-bottom: rgba(14, 86, 104, 0.04);
  --erp-summary-card-bg: rgba(248, 254, 255, 0.92);
  --erp-summary-box-start: #ffffff;
  --erp-summary-box-end: #ddf0f4;
  --erp-theme-button-start: #ecfbff;
  --erp-theme-button-end: #96cad8;
  --erp-page-header-start: #f0fcff;
  --erp-page-header-end: #cae7ee;
  --erp-page-header-border: #7fa6af;
  --erp-page-kicker: #2d6977;
  --erp-card-bg: #edf8fa;
  --erp-card-header-start: #fbfeff;
  --erp-card-header-end: #cfe8ee;
  --erp-card-header-border: #9dc0c9;
  --erp-table-header-bg: #dcedf1;
  --erp-table-border: #b1ccd3;
  --erp-field-bg: #fcffff;
  --erp-field-border: #b7d0d6;
  --erp-tab-start: #f5fdff;
  --erp-tab-end: #c8e2e8;
  --erp-tab-active-start: #dff7ff;
  --erp-tab-active-end: #8cc8d8;
}

html[data-erp-theme="blue"] {
  --erp-shell-bg: #88a8d8;
  --erp-panel-bg: #6f92d2;
  --erp-border: #4167aa;
  --erp-border-dark: #244987;
  --erp-workspace: #4b76c8;
  --erp-workspace-dot: rgba(255, 255, 255, 0.22);
  --erp-body-start: #e8f1ff;
  --erp-body-end: #7fa2da;
  --erp-brandbar-start: #eef5ff;
  --erp-brandbar-end: #b8cdec;
  --erp-menubar-bg: #d9e7fb;
  --erp-toolbar-button-start: #f7fbff;
  --erp-toolbar-button-end: #9db9e4;
  --erp-workspace-overlay-top: rgba(22, 64, 145, 0.24);
  --erp-workspace-overlay-bottom: rgba(22, 64, 145, 0.08);
  --erp-summary-card-bg: rgba(232, 241, 255, 0.94);
  --erp-summary-box-start: #ffffff;
  --erp-summary-box-end: #d6e4fa;
  --erp-theme-button-start: #d9e9ff;
  --erp-theme-button-end: #5f87d0;
  --erp-sidebar-text: #061a3a;
  --erp-sidebar-link: #061a3a;
  --erp-sidebar-icon: #063f9e;
  --erp-page-header-start: #dbeafe;
  --erp-page-header-end: #7fa2da;
  --erp-page-header-border: #4167aa;
  --erp-page-kicker: #173b77;
  --erp-card-bg: #e8f1ff;
  --erp-card-header-start: #f7fbff;
  --erp-card-header-end: #a9c3ea;
  --erp-card-header-border: #6688c3;
  --erp-table-header-bg: #d8e5f8;
  --erp-table-border: #7e9ccc;
  --erp-field-bg: #fcfdff;
  --erp-field-border: #7e9ccc;
  --erp-tab-start: #dce9fb;
  --erp-tab-end: #8fadde;
  --erp-tab-active-start: #c9dcf8;
  --erp-tab-active-end: #4f79c8;
}

html[data-erp-theme="black"] {
  --erp-shell-bg: #454545;
  --erp-panel-bg: #5a5a5a;
  --erp-border: #8d8d8d;
  --erp-border-light: #bcbcbc;
  --erp-border-dark: #202020;
  --erp-text: #f3f3f3;
  --erp-workspace: #303030;
  --erp-workspace-dot: rgba(255, 255, 255, 0.14);
  --erp-body-start: #1b1b1b;
  --erp-body-end: #4b4b4b;
  --erp-brandbar-start: #666666;
  --erp-brandbar-end: #3f3f3f;
  --erp-menubar-bg: #505050;
  --erp-toolbar-button-start: #707070;
  --erp-toolbar-button-end: #454545;
  --erp-workspace-overlay-top: rgba(0, 0, 0, 0.22);
  --erp-workspace-overlay-bottom: rgba(0, 0, 0, 0.08);
  --erp-summary-card-bg: rgba(67, 67, 67, 0.94);
  --erp-summary-box-start: #6f6f6f;
  --erp-summary-box-end: #464646;
  --erp-theme-button-start: #707070;
  --erp-theme-button-end: #373737;
  --erp-page-header-start: #6a6a6a;
  --erp-page-header-end: #464646;
  --erp-page-header-border: #9b9b9b;
  --erp-page-kicker: #efefef;
  --erp-card-bg: #555555;
  --erp-card-header-start: #727272;
  --erp-card-header-end: #4d4d4d;
  --erp-card-header-border: #8a8a8a;
  --erp-table-header-bg: #626262;
  --erp-table-border: #8c8c8c;
  --erp-field-bg: #707070;
  --erp-field-border: #999999;
  --erp-tab-start: #737373;
  --erp-tab-end: #505050;
  --erp-tab-active-start: #8b8b8b;
  --erp-tab-active-end: #5d5d5d;
  --erp-button-primary-start: #7cb784;
  --erp-button-primary-end: #47784e;
  --erp-button-accent-start: #d0a08d;
  --erp-button-accent-end: #925c4a;
  --erp-button-muted-start: #8c8c8c;
  --erp-button-muted-end: #5a5a5a;
  --erp-alert-success-bg: #35553a;
  --erp-alert-success-border: #6ea075;
  --erp-alert-success-text: #e5f7e8;
  --erp-alert-error-bg: #633d3d;
  --erp-alert-error-border: #a97777;
  --erp-alert-error-text: #ffe4e4;
  --erp-sidebar-text: #ffffff;
  --erp-sidebar-link: #ffffff;
  --erp-sidebar-icon: #b9dcff;
}

html[data-erp-theme="asphalt-world"] {
  --erp-shell-bg: #8a8f6c;
  --erp-panel-bg: #d8debe;
  --erp-border: #70765c;
  --erp-border-dark: #52573f;
  --erp-workspace: #656a4e;
  --erp-workspace-dot: rgba(255, 255, 255, 0.24);
  --erp-body-start: #edf0de;
  --erp-body-end: #aeb58c;
  --erp-brandbar-start: #f5f7eb;
  --erp-brandbar-end: #c8cfaa;
  --erp-menubar-bg: #dce2c1;
  --erp-toolbar-button-start: #f7f8f0;
  --erp-toolbar-button-end: #bcc595;
  --erp-workspace-overlay-top: rgba(54, 59, 37, 0.18);
  --erp-workspace-overlay-bottom: rgba(54, 59, 37, 0.05);
  --erp-summary-card-bg: rgba(242, 245, 228, 0.92);
  --erp-summary-box-start: #fafcf2;
  --erp-summary-box-end: #d8dfbc;
  --erp-theme-button-start: #eef3d8;
  --erp-theme-button-end: #a4af71;
  --erp-page-header-start: #f1f4e1;
  --erp-page-header-end: #cad1ac;
  --erp-page-header-border: #858d60;
  --erp-page-kicker: #57603d;
  --erp-card-bg: #edf0de;
  --erp-card-header-start: #fafcf2;
  --erp-card-header-end: #d4dbb5;
  --erp-card-header-border: #a1aa7b;
  --erp-table-header-bg: #e4e9cc;
  --erp-table-border: #b6be95;
  --erp-field-bg: #fafcf3;
  --erp-field-border: #c1c89f;
  --erp-tab-start: #f3f6e8;
  --erp-tab-end: #c7cea2;
  --erp-tab-active-start: #e7edcb;
  --erp-tab-active-end: #a6b173;
}

html {
  font-size: 14px;
  height: 100%;
  min-height: 100%;
  overflow: hidden;
}

body {
  height: 100%;
  min-height: 100vh;
  margin: 0;
  font-family: Tahoma, "MS Sans Serif", sans-serif;
  font-size: 12px;
  color: var(--erp-text);
  background:
    linear-gradient(180deg, var(--erp-body-start) 0%, var(--erp-body-end) 100%);
  overflow: hidden;
}

.erp-btn,
.sup-btn,
.customer-action-button {
  min-width: 84px;
  min-height: 24px;
  padding: 3px 14px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  border-top: 1px solid var(--erp-border-light);
  border-left: 1px solid var(--erp-border-light);
  border-right: 1px solid var(--erp-border-dark);
  border-bottom: 1px solid var(--erp-border-dark);
  border-radius: 0;
  background: linear-gradient(180deg, #eef6df 0%, #d8e9bd 100%);
  color: var(--erp-text);
  text-decoration: none;
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
  white-space: nowrap;
  cursor: pointer;
  width: auto;
  box-shadow: none;
  transition: filter 0.12s ease, background 0.12s ease;
}

.erp-btn:hover,
.sup-btn:hover,
.customer-action-button:hover {
  color: var(--erp-text);
  text-decoration: none;
  filter: brightness(1.01);
}

.erp-btn:active,
.sup-btn:active,
.customer-action-button:active {
  filter: brightness(0.98);
}

.erp-btn::before,
.sup-btn::before,
.customer-action-button::before {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 14px;
  min-width: 14px;
  height: 14px;
  font-size: 11px;
  font-weight: 700;
  line-height: 1;
  content: "";
}

.erp-btn-primary,
.erp-btn-success,
.sup-btn-primary,
.customer-action-button-primary,
.customer-action-button-success {
  background: linear-gradient(180deg, #eef7de 0%, #d6e8b5 100%);
}

.erp-btn-accent,
.erp-btn-info,
.sup-btn-accent,
.customer-action-button-accent,
.customer-action-button-info {
  background: linear-gradient(180deg, #eef7de 0%, #d6e8b5 100%);
}

.erp-btn-muted,
.sup-btn-muted,
.customer-action-button-muted {
  background: linear-gradient(180deg, #eef7de 0%, #d6e8b5 100%);
}

.erp-btn-danger,
.sup-btn-danger,
.customer-action-button-danger {
  background: linear-gradient(180deg, #eef7de 0%, #d6e8b5 100%);
}

.erp-btn[data-shortcut="new"]::before,
.sup-btn[data-shortcut="new"]::before,
.customer-action-button[data-shortcut="new"]::before {
  content: "+";
  font-size: 20px;
}

.erp-btn[data-shortcut="refresh"]::before,
.sup-btn[data-shortcut="refresh"]::before,
.customer-action-button[data-shortcut="refresh"]::before {
  content: "\21BB";
}

.erp-btn[data-shortcut="save"]::before,
.sup-btn[data-shortcut="save"]::before,
.customer-action-button[data-shortcut="save"]::before {
  content: "\2713";
}

.erp-btn[data-shortcut="close"]::before,
.sup-btn[data-shortcut="close"]::before,
.customer-action-button[data-shortcut="close"]::before {
  content: "\2715";
}

.erp-btn[data-shortcut="delete"]::before,
.sup-btn[data-shortcut="delete"]::before,
.customer-action-button[data-shortcut="delete"]::before {
  content: "\1F5D1";
}

.erp-btn[data-shortcut="edit"]::before,
.sup-btn[data-shortcut="edit"]::before,
.customer-action-button[data-shortcut="edit"]::before {
  content: "\270E";
}

.erp-btn[data-shortcut="recover"]::before,
.sup-btn[data-shortcut="recover"]::before,
.customer-action-button[data-shortcut="recover"]::before {
  content: "\21A9";
}

.erp-btn-success[data-shortcut="save"]::before,
.customer-action-button-success[data-shortcut="save"]::before {
  content: "\2713";
}

.erp-btn-info[data-shortcut="refresh"]::before,
.customer-action-button-info[data-shortcut="refresh"]::before {
  content: "\21BB";
}

.erp-btn:not([data-shortcut])::before,
.sup-btn:not([data-shortcut])::before,
.customer-action-button:not([data-shortcut])::before {
  content: "\25A3";
  font-size: 11px;
}

.ui-edit-link,
.erp-click-row td:last-child a,
.setup-list-table-wrap td:last-child a,
.system-grid-table td:last-child a {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: #1768d8;
  font-weight: 700;
  text-decoration: none;
  padding: 4px 10px;
  border-radius: 16px;
  background: rgba(34, 116, 255, 0.08);
  border: 0;
  cursor: pointer;
  font-family: inherit;
  font-size: 13px;
}

.ui-edit-link::before,
.erp-click-row td:last-child a::before,
.setup-list-table-wrap td:last-child a::before,
.system-grid-table td:last-child a::before {
  content: "\270E";
  font-size: 14px;
  line-height: 1;
}

.ui-edit-link:hover,
.erp-click-row td:last-child a:hover,
.setup-list-table-wrap td:last-child a:hover,
.system-grid-table td:last-child a:hover {
  color: #0e53af;
  text-decoration: none;
  background: rgba(34, 116, 255, 0.16);
}

.ui-delete-link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 4px 10px;
  border: 0;
  border-radius: 16px;
  background: rgba(214, 69, 65, 0.1);
  color: #c0392b;
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
  cursor: pointer;
  font-family: inherit;
  text-decoration: none;
}

.ui-delete-link::before {
  content: "\1F5D1";
  font-size: 13px;
  line-height: 1;
}

.ui-delete-link:hover {
  background: rgba(214, 69, 65, 0.18);
  color: #a72d22;
  text-decoration: none;
}

.erp-approved-inline-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px 14px;
}

.erp-approved-inline-grid.one-column {
  grid-template-columns: 1fr;
}

.erp-approved-inline-grid .span-2 {
  grid-column: 1 / -1;
}

.erp-approved-inline-field {
  display: grid;
  grid-template-columns: 132px minmax(0, 1fr);
  align-items: center;
  gap: 8px 12px;
}

.erp-approved-inline-field > span,
.erp-approved-inline-field > label {
  font-size: 12px;
  font-weight: 700;
  line-height: 1.15;
}

.erp-approved-inline-field input,
.erp-approved-inline-field select,
.erp-approved-inline-field textarea {
  width: 100%;
  min-height: 30px;
  padding: 5px 8px;
  border: 1px solid var(--erp-field-border);
  background: var(--erp-field-bg);
  color: var(--erp-text);
  font-size: 12px;
}

:where(.erp-approved-inline-grid, .system-form-grid, .system-inline-grid) > label:has(> input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]), > select, > textarea),
:where(.erp-approved-inline-grid, .system-form-grid, .system-inline-grid) .erp-form-field:has(> label + input, > label + select, > label + textarea) {
  display: grid;
  grid-template-columns: 132px minmax(0, 1fr);
  align-items: center;
  gap: 8px 12px;
}

:where(.erp-approved-inline-grid, .system-form-grid, .system-inline-grid) > label:has(> input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]), > select, > textarea) > :is(input, select, textarea),
:where(.erp-approved-inline-grid, .system-form-grid, .system-inline-grid) .erp-form-field > :is(input, select, textarea) {
  min-width: 0;
}

.erp-approved-inline-error {
  grid-column: 2 / 3;
  margin-top: -3px;
  font-size: 11px;
}

.erp-approved-inline-action {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
}

.erp-approved-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
}

.erp-click-row {
  cursor: pointer;
}

.erp-click-row td {
  transition: background-color 0.15s ease, color 0.15s ease;
}

.erp-click-row:hover td,
.erp-click-row:focus td,
.erp-click-row:focus-visible td {
  background: color-mix(in srgb, var(--erp-table-header-bg) 78%, white);
}

.erp-click-row:focus,
.erp-click-row:focus-visible {
  outline: none;
}

.erp-body {
  padding: 0;
}

.pb-busy-overlay {
  position: fixed;
  inset: 0;
  display: none;
  align-items: center;
  justify-content: center;
  background: rgba(236, 228, 214, 0.42);
  backdrop-filter: blur(1px);
  z-index: 100000;
  cursor: wait;
}

.pb-busy-overlay.pb-busy-visible {
  display: flex;
}

.pb-busy-panel {
  min-width: 180px;
  padding: 14px 18px;
  border: 1px solid #b89b6d;
  background: linear-gradient(180deg, #fffdf8 0%, #f3e6d1 100%);
  box-shadow: 0 10px 28px rgba(47, 41, 34, 0.18);
  text-align: center;
  color: #3e5878;
  font-size: 13px;
  font-weight: 600;
}

.pb-busy-spinner {
  width: 28px;
  height: 28px;
  margin: 0 auto 10px;
  border-radius: 50%;
  border: 3px solid #d8c7a5;
  border-top-color: #517ab4;
  animation: pb-busy-spin 0.85s linear infinite;
}

.pb-busy-message {
  white-space: nowrap;
}

.pb-toast {
  position: fixed;
  top: 12px;
  right: 12px;
  min-width: 260px;
  max-width: 420px;
  padding: 10px 14px;
  opacity: 0;
  transform: translateY(-10px);
  transition: opacity 0.18s ease, transform 0.18s ease;
  z-index: 100001;
  border-top: 1px solid #fff;
  border-left: 1px solid #fff;
  border-right: 1px solid #707070;
  border-bottom: 1px solid #707070;
  box-shadow: 0 10px 22px rgba(0, 0, 0, 0.16);
}

.pb-toast-visible {
  opacity: 1;
  transform: translateY(0);
}

.pb-toast-success {
  background: linear-gradient(180deg, #dff3df 0%, #c2dfc2 100%);
  color: #214e22;
}

.pb-toast-error {
  background: linear-gradient(180deg, #f7dede 0%, #e5bcbc 100%);
  color: #6a1f1f;
}

.pb-toast-warning {
  background: linear-gradient(180deg, #fff1d8 0%, #f5d1a1 100%);
  color: #7a4a08;
}

.erp-shell {
  height: 100vh;
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}

.erp-header {
  flex: 0 0 auto;
  position: relative;
  background: var(--erp-shell-bg);
  border-bottom: 1px solid var(--erp-border);
  box-shadow: inset 0 1px var(--erp-border-light);
}

.erp-brandbar {
  display: flex;
  align-items: center;
  padding: 4px 8px 3px;
  background: linear-gradient(180deg, var(--erp-brandbar-start) 0%, var(--erp-brandbar-end) 100%);
  border-top: 1px solid var(--erp-border-light);
  border-bottom: 1px solid #bcbcbc;
}

.erp-brandmark {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.erp-brandmark-image {
  width: 24px;
  height: 24px;
  object-fit: contain;
  border-radius: 3px;
  background: #fff;
}

.erp-brandmark-text {
  display: flex;
  flex-direction: column;
  line-height: 1.05;
}

.erp-brandmark-text strong {
  font-size: 13px;
  color: var(--erp-text);
}

.erp-brandmark-text span {
  font-size: 10px;
  color: color-mix(in srgb, var(--erp-text) 58%, transparent);
}

.erp-menubar {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 2px 8px;
  background: var(--erp-menubar-bg);
  border-top: 1px solid var(--erp-border-light);
  border-bottom: 1px solid #c0c0c0;
}

.erp-menubar-start,
.erp-menubar-actions {
  display: flex;
  align-items: center;
  gap: 6px;
  flex: 0 0 auto;
}

.erp-menubar-links {
  flex: 1 1 auto;
  min-width: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 2px;
}

.erp-menu-toggle {
  min-height: 20px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  padding: 4px 10px;
  color: var(--erp-text);
  background: linear-gradient(180deg, var(--erp-toolbar-button-start) 0%, var(--erp-toolbar-button-end) 100%);
  border-top: 1px solid var(--erp-border-light);
  border-left: 1px solid var(--erp-border-light);
  border-right: 1px solid var(--erp-border-dark);
  border-bottom: 1px solid var(--erp-border-dark);
  font-size: 11px;
  font-weight: 700;
}

.erp-menubar-start :is(.erp-menu-toolbar-toggle, .erp-menu-sidebar-toggle) {
  width: 28px;
  min-width: 28px;
  max-width: 28px;
  height: 24px;
  min-height: 24px;
  padding: 2px;
  gap: 0;
  align-items: center;
  justify-content: center;
  flex: 0 0 28px;
  line-height: 1;
}

.erp-menu-toggle-icon {
  width: 12px;
  height: 10px;
  position: relative;
}

.erp-menu-toggle-icon::before,
.erp-menu-toggle-icon::after,
.erp-menu-toggle-icon {
  background:
    linear-gradient(180deg, transparent 0 1px, var(--erp-text) 1px 2px, transparent 2px 4px, var(--erp-text) 4px 5px, transparent 5px 7px, var(--erp-text) 7px 8px, transparent 8px 100%);
}

.erp-menu-toggle-icon-grid {
  width: 12px;
  height: 12px;
  background:
    linear-gradient(90deg, var(--erp-text) 0 2px, transparent 2px 5px, var(--erp-text) 5px 7px, transparent 7px 10px, var(--erp-text) 10px 12px),
    linear-gradient(180deg, var(--erp-text) 0 2px, transparent 2px 5px, var(--erp-text) 5px 7px, transparent 7px 10px, var(--erp-text) 10px 12px);
}

.erp-menu-sidebar-toggle {
  display: inline-flex;
}

.erp-mobile-menu-toggle {
  display: none;
}

.erp-mobile-menu-tree {
  display: none;
}

.erp-menu-item {
  border: 0;
  background: transparent;
  padding: 4px 7px;
  font-size: 11px;
  color: var(--erp-text);
  text-transform: uppercase;
}

.erp-menu-item > .pb-button-icon {
  display: none !important;
}

.js-zoom-in > .pb-button-icon,
.js-zoom-out > .pb-button-icon {
  display: none !important;
}

.erp-menubar-start :is(.js-zoom-in, .js-zoom-out) {
  width: 24px;
  min-width: 24px;
  max-width: 24px;
  height: 24px;
  min-height: 24px;
  margin-right: 0;
  padding: 2px 6px;
  border: 1px solid #aaa;
  border-radius: 4px;
  background: linear-gradient(180deg, #f0f0f0, #d4d4d4);
  color: var(--erp-text);
  cursor: pointer;
  font-size: 11px;
  font-weight: 700;
  line-height: 1;
}

.erp-menu-item:hover {
  background: #dcdcdc;
}

.erp-menu-item.is-open {
  background: linear-gradient(180deg, #fffef6 0%, #d6ceb2 100%);
  border-top: 1px solid var(--erp-border-light);
  border-left: 1px solid var(--erp-border-light);
  border-right: 1px solid var(--erp-border-dark);
  border-bottom: 1px solid var(--erp-border-dark);
}

.erp-menu-dropdowns {
  position: absolute;
  top: 68px; /* Adjusted from 57px to account for the new v24.7.36 version text below the logo */
  left: 8px;
  z-index: 70;
  padding: 0;
  background: transparent;
}

.erp-menu-dropdowns-inner {
  position: relative;
}

.erp-menu-dropdown {
  min-width: 260px;
  max-width: 420px;
  background: linear-gradient(180deg, var(--erp-toolbar-button-start) 0%, var(--erp-toolbar-button-end) 100%);
  border-top: 1px solid var(--erp-border-light);
  border-left: 1px solid var(--erp-border-light);
  border-right: 1px solid var(--erp-border-dark);
  border-bottom: 1px solid var(--erp-border-dark);
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.14);
  overflow: visible;
}

.erp-menu-dropdown-title {
  padding: 7px 10px;
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  border-bottom: 1px solid rgba(112, 112, 112, 0.35);
}

.erp-menu-dropdown-list {
  display: flex;
  flex-direction: column;
  max-height: none;
  overflow: visible;
}

.erp-menu-dropdown-link {
  display: block;
  padding: 7px 10px;
  font-size: 12px;
  color: var(--erp-text);
  text-decoration: none;
  border-bottom: 1px dotted rgba(112, 112, 112, 0.35);
}

.erp-menu-dropdown-link-button {
  width: 100%;
  border: 0;
  text-align: left;
  background: transparent;
}

.erp-menu-dropdown-link:hover {
  color: var(--erp-text);
  background: rgba(255, 255, 255, 0.4);
}

.erp-menu-dropdown-item {
  position: relative;
}

.erp-menu-dropdown-link-static {
  display: block;
  cursor: default;
}

.erp-menu-dropdown-item-has-children > .erp-menu-dropdown-link-static::after {
  content: ">";
  float: right;
  font-weight: 700;
}

.erp-menu-dropdown-submenu {
  position: absolute;
  top: 0;
  left: calc(100% - 1px);
  min-width: 210px;
  background: linear-gradient(180deg, var(--erp-toolbar-button-start) 0%, var(--erp-toolbar-button-end) 100%);
  border-top: 1px solid var(--erp-border-light);
  border-left: 1px solid var(--erp-border-light);
  border-right: 1px solid var(--erp-border-dark);
  border-bottom: 1px solid var(--erp-border-dark);
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.14);
  display: none;
  z-index: 75;
}

.erp-menu-dropdown-item-has-children:hover > .erp-menu-dropdown-submenu {
  display: block;
}

.erp-toolbar-wrap {
  padding: 2px 6px 0;
  background: var(--erp-shell-bg);
  transition: opacity 0.16s ease, transform 0.16s ease, box-shadow 0.16s ease;
}

.erp-toolbar-collapsed .erp-toolbar-wrap {
  display: none;
}

@media (min-width: 992px) {
  .erp-toolbar-autohide .erp-toolbar-wrap {
    position: absolute;
    left: 0;
    right: 0;
    top: 100%;
    z-index: 65;
    opacity: 0;
    transform: translateY(-8px);
    pointer-events: none;
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.16);
  }

  .erp-toolbar-autohide.erp-toolbar-hover .erp-toolbar-wrap,
  .erp-toolbar-autohide .erp-toolbar-wrap:focus-within {
    opacity: 1;
    transform: translateY(0);
    pointer-events: auto;
  }

  .erp-toolbar-pinned .erp-toolbar-wrap {
    position: relative;
    opacity: 1;
    transform: none;
    pointer-events: auto;
    box-shadow: none;
  }

  .erp-toolbar-pinned .erp-menu-toolbar-toggle {
    background: linear-gradient(180deg, #e9f7ff, #bdddf1);
    border-color: #5598c1;
  }
}

.erp-toolbar-row {
  display: flex;
  align-items: flex-start;
  gap: 10px;
}

.erp-toolbar {
  display: flex;
  flex-wrap: wrap;
  gap: 2px;
  padding-bottom: 2px;
}

.erp-tool-button {
  width: auto;
  min-width: 44px;
  min-height: 42px;
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 3px;
  padding: 4px 6px;
  color: var(--erp-text);
  text-decoration: none;
  background: linear-gradient(180deg, var(--erp-toolbar-button-start) 0%, var(--erp-toolbar-button-end) 100%);
  border-top: 1px solid var(--erp-border-light);
  border-left: 1px solid var(--erp-border-light);
  border-right: 1px solid var(--erp-border-dark);
  border-bottom: 1px solid var(--erp-border-dark);
}

.erp-tool-button:hover {
  color: var(--erp-text);
  background: linear-gradient(180deg, #ffffff 0%, #dbdbdb 100%);
}

.erp-tool-label {
  display: block;
  font-size: 9px;
  font-weight: 600;
  text-align: center;
  white-space: nowrap;
  color: var(--erp-text);
  line-height: 1.1;
  margin-top: 1px;
}

.erp-tool-icon {
  width: 20px;
  height: 20px;
  position: relative;
  border-radius: 3px;
  background: linear-gradient(180deg, #fff2a4 0%, #e4aa20 100%);
  border: 1px solid rgba(0, 0, 0, 0.25);
}

.erp-tool-icon::after {
  content: "";
  position: absolute;
  inset: 4px;
  background: rgba(255, 255, 255, 0.7);
  clip-path: polygon(50% 0, 100% 50%, 50% 100%, 0 50%);
}

.erp-tool-icon.gear {
  background: linear-gradient(180deg, #f0ddff 0%, #8d72cf 100%);
}

.erp-tool-icon.doc {
  background: linear-gradient(180deg, #ffffff 0%, #b4b4b4 100%);
}

.erp-tool-icon.box {
  background: linear-gradient(180deg, #9ae2ff 0%, #2592c9 100%);
}

.erp-tool-icon.cart {
  background: linear-gradient(180deg, #ffd49b 0%, #cc7f1b 100%);
}

.erp-tool-icon.undo,
.erp-tool-icon.reply {
  background: linear-gradient(180deg, #ffe09b 0%, #d1a01e 100%);
}

.erp-tool-icon.cash,
.erp-tool-icon.voucher {
  background: linear-gradient(180deg, #aef8ae 0%, #2c9c2c 100%);
}

.erp-tool-icon.grid,
.erp-tool-icon.factory {
  background: linear-gradient(180deg, #ffcc8a 0%, #da7827 100%);
}

.erp-tool-icon.truck {
  background: linear-gradient(180deg, #c8d6ff 0%, #627fda 100%);
}

.erp-tool-icon.user-badge,
.erp-tool-icon.user,
.erp-tool-icon.person {
  background: linear-gradient(180deg, #f8f8f8 0%, #9b9b9b 100%);
}

.erp-tool-icon.warning,
.erp-tool-icon.alarm {
  background: linear-gradient(180deg, #ffe1a8 0%, #d48d21 100%);
}

.erp-tool-icon.book {
  background: linear-gradient(180deg, #d5d5ff 0%, #5151c6 100%);
}

.erp-tool-icon.refresh,
.erp-tool-icon.clock {
  background: linear-gradient(180deg, #c6f0ff 0%, #3294bf 100%);
}

.erp-tool-icon.barcode::after {
  inset: 3px;
  background:
    linear-gradient(90deg, transparent 0 8%, rgba(0, 0, 0, 0.8) 8% 14%, transparent 14% 24%, rgba(0, 0, 0, 0.8) 24% 31%, transparent 31% 39%, rgba(0, 0, 0, 0.8) 39% 46%, transparent 46% 56%, rgba(0, 0, 0, 0.8) 56% 62%, transparent 62% 72%, rgba(0, 0, 0, 0.8) 72% 79%, transparent 79% 100%);
  clip-path: none;
}

.erp-tool-button-compact {
  width: auto;
  min-width: 46px;
  min-height: 32px;
  gap: 2px;
  padding: 2px 5px 3px;
}

.erp-theme-picker {
  position: relative;
  flex: 0 0 auto;
}

.erp-theme-button {
  min-width: 122px;
  min-height: 20px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 4px 12px;
  color: var(--erp-text);
  background: linear-gradient(180deg, var(--erp-theme-button-start) 0%, var(--erp-theme-button-end) 100%);
  border-top: 1px solid var(--erp-border-light);
  border-left: 1px solid var(--erp-border-light);
  border-right: 1px solid var(--erp-border-dark);
  border-bottom: 1px solid var(--erp-border-dark);
  font-size: 11px;
  font-weight: 700;
}

.erp-theme-button-icon {
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background:
    linear-gradient(90deg, #efb26c 0 50%, #6f88d9 50% 100%);
  border: 1px solid rgba(0, 0, 0, 0.18);
}

.erp-theme-panel {
  position: absolute;
  top: calc(100% + 4px);
  right: 0;
  width: 270px;
  padding: 8px;
  background: linear-gradient(180deg, color-mix(in srgb, var(--erp-panel-bg) 94%, white) 0%, var(--erp-panel-bg) 100%);
  border-top: 1px solid var(--erp-border-light);
  border-left: 1px solid var(--erp-border-light);
  border-right: 1px solid var(--erp-border-dark);
  border-bottom: 1px solid var(--erp-border-dark);
  box-shadow: 0 10px 20px rgba(0, 0, 0, 0.16);
  z-index: 2000;
}

.erp-theme-panel-title {
  margin-bottom: 8px;
  padding: 4px 6px 6px;
  font-size: 11px;
  font-weight: 700;
  text-align: center;
  color: var(--erp-text);
  border-bottom: 1px solid color-mix(in srgb, var(--erp-border) 60%, transparent);
}

.erp-theme-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 6px;
}

.erp-theme-option {
  display: grid;
  grid-template-columns: 18px minmax(0, 1fr);
  gap: 8px;
  align-items: center;
  width: 100%;
  padding: 7px 8px;
  color: var(--erp-text);
  text-align: left;
  background: linear-gradient(180deg, #fcfcfc 0%, #dbdbdb 100%);
  border-top: 1px solid var(--erp-border-light);
  border-left: 1px solid var(--erp-border-light);
  border-right: 1px solid var(--erp-border-dark);
  border-bottom: 1px solid var(--erp-border-dark);
  font-size: 11px;
}

.erp-theme-option.is-active {
  outline: 1px solid color-mix(in srgb, var(--erp-workspace) 70%, white);
  background: linear-gradient(180deg, color-mix(in srgb, var(--erp-theme-button-start) 72%, white) 0%, color-mix(in srgb, var(--erp-theme-button-end) 88%, white) 100%);
}

.erp-theme-option-preview {
  width: 16px;
  height: 16px;
  border-radius: 50%;
  border: 1px solid rgba(0, 0, 0, 0.18);
}

.erp-theme-option-preview.caramel { background: linear-gradient(135deg, #f1c277 0%, #a46229 100%); }
.erp-theme-option-preview.lilian { background: linear-gradient(135deg, #d3b4f8 0%, #7b5db1 100%); }
.erp-theme-option-preview.money-twins { background: linear-gradient(135deg, #c7ddf7 0%, #9bbce8 100%); }
.erp-theme-option-preview.imaginary { background: linear-gradient(135deg, #91dcef 0%, #3e7f8f 100%); }
.erp-theme-option-preview.blue { background: linear-gradient(135deg, #8fb0e5 0%, #244987 100%); }
.erp-theme-option-preview.black { background: linear-gradient(135deg, #8a8a8a 0%, #232323 100%); }
.erp-theme-option-preview.asphalt-world { background: linear-gradient(135deg, #d5dba4 0%, #5e6544 100%); }

.erp-theme-option-label {
  line-height: 1.15;
}

.erp-main-shell {
  flex: 1;
  min-height: 0;
  display: flex;
  overflow: hidden;
  position: relative;
}

.erp-sidebar {
  flex: 0 0 284px;
  width: 284px;
  background: linear-gradient(180deg, var(--erp-body-start) 0%, var(--erp-body-end) 100%);
  border-right: 1px solid var(--erp-border);
  padding: 8px 10px;
  overflow-x: hidden;
  overflow-y: auto;
  transition: transform 0.16s ease, box-shadow 0.16s ease;
}

@media (min-width: 992px) {
  .erp-sidebar-autohide .erp-sidebar {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    z-index: 35;
    flex: 0 0 284px;
    width: 284px;
    transform: translateX(calc(-100% - 10px));
    pointer-events: none;
    box-shadow: 12px 0 22px rgba(0, 0, 0, 0.18);
  }

  .erp-sidebar-autohide.erp-sidebar-hover .erp-sidebar,
  .erp-sidebar-autohide .erp-sidebar:focus-within {
    transform: translateX(0);
    pointer-events: auto;
  }

  .erp-sidebar-autohide .erp-workspace {
    flex: 1 1 100%;
  }

  .erp-sidebar-autohide .erp-main-shell::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    width: 8px;
    z-index: 34;
    pointer-events: none;
  }

  .erp-sidebar-pinned .erp-sidebar {
    position: relative;
    transform: none;
    pointer-events: auto;
    box-shadow: none;
  }

  .erp-sidebar-pinned .erp-menu-sidebar-toggle {
    background: linear-gradient(180deg, #e9f7ff, #bdddf1);
    border-color: #5598c1;
  }
}

.erp-sidebar-collapsed .erp-sidebar {
  flex-basis: 0;
  width: 0;
  padding-left: 0;
  padding-right: 0;
  border-right: 0;
  overflow: hidden;
}

.erp-panel {
  margin-bottom: 6px;
  background: var(--erp-panel-bg);
  border-top: 1px solid var(--erp-border-light);
  border-left: 1px solid var(--erp-border-light);
  border-right: 1px solid var(--erp-border-dark);
  border-bottom: 1px solid var(--erp-border-dark);
}

.erp-panel-title {
  padding: 7px 9px;
  font-size: 11px;
  font-weight: 700;
  background: linear-gradient(180deg, var(--erp-card-header-start) 0%, var(--erp-card-header-end) 100%);
  border-bottom: 1px solid var(--erp-card-header-border);
}

.erp-panel-title-toggle {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-top: 0;
  border-left: 0;
  border-right: 0;
  color: var(--erp-sidebar-text, var(--erp-text));
  text-align: left;
}

.erp-panel-title,
.erp-panel-title-toggle,
.erp-panel-toggle-icon {
  color: var(--erp-sidebar-text, var(--erp-text));
}

.erp-panel-toggle-icon {
  flex: 0 0 auto;
  font-size: 14px;
  line-height: 1;
}

.erp-panel.is-collapsed .erp-panel-list {
  display: none;
}

.erp-panel-list {
  list-style: none;
  margin: 0;
  padding: 6px 0;
}

.erp-panel-list li {
  padding: 5px 10px;
  border-bottom: 1px dotted var(--erp-card-header-border);
  font-size: 11px;
  color: var(--erp-sidebar-text, var(--erp-text));
}

.erp-panel-list a {
  color: var(--erp-sidebar-link, var(--erp-text));
  text-decoration: none;
}

.erp-sidebar .erp-panel-list a,
.erp-sidebar .erp-panel-list a:visited,
.erp-sidebar .erp-panel-sublist a,
.erp-sidebar .erp-panel-sublist a:visited,
.erp-sidebar .erp-panel-list-parent-toggle,
.erp-sidebar .erp-logout-button {
  color: var(--erp-sidebar-link, var(--erp-text)) !important;
}

.erp-panel-list a:hover {
  color: var(--erp-sidebar-link, var(--erp-text)) !important;
  text-decoration: underline;
}

.erp-panel-list-parent {
  padding-bottom: 0;
}

.erp-panel-list-parent-toggle {
  width: 100%;
  padding: 6px 0 6px 0;
  border: 0;
  background: transparent;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  cursor: pointer;
  text-align: left;
  color: var(--erp-sidebar-text, var(--erp-text));
}

.erp-panel-list-parent-label {
  display: block;
  font-weight: 700;
  color: var(--erp-sidebar-text, var(--erp-text));
}

.erp-panel-subtoggle-icon {
  flex: 0 0 auto;
  width: 16px;
  text-align: center;
  font-weight: 700;
  color: var(--erp-sidebar-text, var(--erp-text));
}

.erp-panel-sublist {
  list-style: none;
  margin: 6px 0 0;
  padding: 0 0 0 10px;
  border-left: 1px dotted #b8b29a;
}

.erp-panel-sublist li {
  padding: 4px 0 4px 8px;
  border-bottom: 1px dotted #c8c1a8;
}

.erp-panel-sublist li:last-child {
  border-bottom: 0;
}

.erp-panel-sublist[hidden] {
  display: none;
}

.erp-logout-form {
  margin: 0;
}

.erp-logout-button {
  width: 100%;
  padding: 0;
  border: 0;
  background: transparent;
  text-align: left;
  font-size: 11px;
  color: var(--erp-sidebar-text, var(--erp-text));
}

.erp-panel-list a span[style*="color"],
.erp-panel-list-parent-label span[style*="color"],
.erp-panel-title-toggle span[style*="color"] {
  color: var(--erp-sidebar-icon, currentColor) !important;
}

.erp-sidebar .erp-panel-list a span[style*="color"],
.erp-sidebar .erp-panel-list-parent-label span[style*="color"],
.erp-sidebar .erp-panel-title-toggle span[style*="color"] {
  color: var(--erp-sidebar-icon, currentColor) !important;
}

.erp-logout-button:hover {
  text-decoration: underline;
}

.erp-panel-list li:last-child {
  border-bottom: 0;
}

.erp-workspace {
  position: relative;
  flex: 1;
  min-width: 0;
  min-height: 0;
  display: flex;
  flex-direction: column;
  background: #bcbcbc;
  overflow: hidden;
}

.erp-workspace-body {
  flex: 1;
  min-height: 0;
  display: flex;
  flex-direction: column;
  padding: 0;
  background:
    var(--erp-workspace-bg-image, none) center center / cover no-repeat,
    radial-gradient(circle, var(--erp-workspace-dot) 0 1px, transparent 1px) 0 0/4px 4px,
    linear-gradient(180deg, #7b74df 0%, var(--erp-workspace) 100%);
  overflow: hidden;
}

.erp-workspace-content {
    flex: 1;
    min-height: 0;
    min-width: 0;
    background: rgba(255, 255, 255, 0.94);
    border-top: 1px solid rgba(255, 255, 255, 0.9);
  border-left: 1px solid rgba(255, 255, 255, 0.9);
  border-right: 1px solid rgba(0, 0, 0, 0.3);
  border-bottom: 1px solid rgba(0, 0, 0, 0.3);
  box-shadow: none;
    overflow: hidden;
}

.erp-workspace-content > *:first-child {
    flex: 1;
    min-height: 0;
    min-width: 0;
}

.erp-workspace-body :is(.go-page, .ui-page, .erp-home-shell) {
  min-width: 0;
}

.erp-workspace-body :is(.erp-layout-embedded, .erp-embedded-layout, .erp-embedded-page, .erp-embedded-page-body) {
  background: transparent;
}

.erp-mobile-sidebar-open .erp-sidebar {
  display: block;
}

.erp-mobile-drawer-backdrop {
  display: none;
}

.erp-statusbar {
  flex: 0 0 auto;
  display: flex;
  justify-content: space-between;
  gap: 12px;
  padding: 2px 10px;
  font-size: 11px;
  background: linear-gradient(180deg, #efefef 0%, #d2d2d2 100%);
  border-top: 1px solid var(--erp-border-light);
}

.erp-home {
  min-height: 100%;
  padding: 18px 20px;
  background:
    radial-gradient(circle at top right, rgba(255, 255, 255, 0.18), transparent 26%),
    linear-gradient(180deg, var(--erp-workspace-overlay-top), var(--erp-workspace-overlay-bottom));
}

.workspace-page-body-tabs {
  padding: 0;
  overflow: hidden;
}

.erp-mdi-tabshell {
  display: flex;
  flex-direction: column;
  min-height: 100%;
  height: 100%;
  background: rgba(255, 255, 255, 0.08);
}

.erp-mdi-tabbar {
  display: flex;
  align-items: flex-end;
  gap: 1px;
  padding: 1px 2px 0;
  background: linear-gradient(180deg, #d6e2f3 0%, #b5cae8 100%);
  border-bottom: 1px solid #87a1c7;
  overflow-x: auto;
  overflow-y: hidden;
  white-space: nowrap;
}

.erp-mdi-tab {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  min-width: 80px;
  max-width: 200px;
  padding: 3px 8px 2px;
  font-size: 11px;
  
  /* Inactive tab style: distinctly darker and muted globally */
  background: linear-gradient(180deg, color-mix(in srgb, var(--erp-panel-bg, #d6e2f3) 90%, black) 0%, color-mix(in srgb, var(--erp-panel-bg, #b5cae8) 75%, black) 100%);
  color: var(--erp-text, #444);
  
  border-top: 1px solid color-mix(in srgb, var(--erp-panel-bg, #ffffff) 90%, black);
  border-left: 1px solid color-mix(in srgb, var(--erp-panel-bg, #ffffff) 90%, black);
  border-right: 1px solid var(--erp-border-dark, #6f88ad);
  border-bottom: 1px solid var(--erp-border-dark, #6f88ad);
  cursor: pointer;
  border-radius: 4px 4px 0 0;
  transition: all 0.2s;
  opacity: 0.85;
}

.erp-mdi-tab:hover {
  background: linear-gradient(180deg, color-mix(in srgb, var(--erp-panel-bg, #d6e2f3) 95%, black) 0%, color-mix(in srgb, var(--erp-panel-bg, #b5cae8) 85%, black) 100%);
  opacity: 1;
}

.erp-mdi-tab.is-active {
  /* Active tab style: bright, perfectly matching the workspace, bold font, and colorful accent border */
  background: var(--erp-shell-bg, #ffffff);
  color: #000;
  margin-bottom: -1px;
  border-bottom-color: var(--erp-shell-bg, #ffffff);
  border-top: 2px solid var(--erp-btn-primary, #007bff);
  padding-top: 2px;
  font-weight: 700;
  opacity: 1;
  z-index: 2;
}

.erp-mdi-tab-title {
  overflow: hidden;
  text-overflow: ellipsis;
}

.erp-mdi-tab-close {
  position: relative;
  width: 28px;
  min-width: 28px;
  height: 18px;
  border: 1px solid #2f6ca5;
  border-radius: 9px;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.68) 0%, rgba(255,255,255,0.12) 42%),
    linear-gradient(180deg, #4fb6ff 0%, #1f74cf 100%);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.82),
    0 1px 2px rgba(8, 38, 74, 0.28);
  color: transparent;
  font-size: 0;
  line-height: 0;
  padding: 0;
  cursor: pointer;
}

.erp-mdi-tab-close::before,
.erp-mdi-tab-close::after {
  content: "";
  position: absolute;
  left: 8px;
  right: 8px;
  top: 8px;
  height: 2px;
  border-radius: 2px;
  background: #ffffff;
  box-shadow: 0 1px 0 rgba(4, 31, 62, 0.45);
}

.erp-mdi-tab-close::before {
  transform: rotate(45deg);
}

.erp-mdi-tab-close::after {
  transform: rotate(-45deg);
}

.erp-mdi-tab-close:hover {
  filter: brightness(1.06);
}

.erp-mdi-stage {
  position: relative;
  flex: 1;
  min-height: 0;
  background: #d9e4f4;
}

.erp-mdi-frame {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
  background: #ffffff;
  display: none;
}

.erp-mdi-frame.is-active {
  display: block;
}

.erp-home-summary {
  display: grid;
  grid-template-columns: 96px minmax(0, 1fr);
  gap: 16px;
  align-items: start;
  padding: 16px 18px;
  background: var(--erp-summary-card-bg);
  border-top: 1px solid rgba(255, 255, 255, 0.95);
  border-left: 1px solid rgba(255, 255, 255, 0.95);
  border-right: 1px solid rgba(76, 69, 147, 0.45);
  border-bottom: 1px solid rgba(76, 69, 147, 0.45);
}

.erp-home-summary-logo-wrap {
  display: flex;
  align-items: flex-start;
  justify-content: center;
}

.erp-home-summary-logo {
  width: 78px;
  height: 78px;
  object-fit: contain;
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.98);
  padding: 6px;
}

.erp-home-summary-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(140px, 1fr));
  gap: 14px;
}

.erp-home-summary-item {
  min-height: 74px;
  padding: 14px 16px;
  background: linear-gradient(180deg, var(--erp-summary-box-start) 0%, var(--erp-summary-box-end) 100%);
  border-top: 1px solid rgba(255, 255, 255, 0.95);
  border-left: 1px solid rgba(255, 255, 255, 0.95);
  border-right: 1px solid rgba(132, 125, 190, 0.45);
  border-bottom: 1px solid rgba(132, 125, 190, 0.45);
}

.erp-home-label {
  display: block;
  margin-bottom: 6px;
  font-size: 11px;
  text-transform: uppercase;
  color: color-mix(in srgb, var(--erp-text) 55%, transparent);
}

.erp-home-summary-item strong,
.erp-home-summary-item a {
  font-size: 16px;
  color: color-mix(in srgb, var(--erp-text) 82%, #243e8f);
  text-decoration: none;
}

.erp-home-tagline {
  margin-top: 10px;
  padding: 8px 12px;
  font-size: 12px;
  color: color-mix(in srgb, var(--erp-text) 68%, #3d377f);
  background: color-mix(in srgb, var(--erp-summary-card-bg) 88%, white);
  border-top: 1px solid rgba(255, 255, 255, 0.92);
  border-left: 1px solid rgba(255, 255, 255, 0.92);
  border-right: 1px solid rgba(132, 125, 190, 0.35);
  border-bottom: 1px solid rgba(132, 125, 190, 0.35);
}

.erp-card-shell {
  background: var(--erp-card-bg, #f5efe0);
  border-top: 1px solid rgba(255, 255, 255, 0.95);
  border-left: 1px solid rgba(255, 255, 255, 0.95);
  border-right: 1px solid rgba(132, 125, 190, 0.35);
  border-bottom: 1px solid rgba(132, 125, 190, 0.35);
}

.erp-card-shell-header {
  padding: 10px 14px;
  font-size: 13px;
  background: linear-gradient(180deg, var(--erp-card-header-start, #fffef8) 0%, var(--erp-card-header-end, #ece1be) 100%);
  border-bottom: 1px solid var(--erp-card-header-border, #c0b086);
}

.erp-card-shell-body {
  padding: 14px;
}

.erp-menu-placeholder-text {
  margin: 0 0 8px;
  font-size: 13px;
}

.system-grid-footer {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: center;
  padding: 6px 12px;
  background: linear-gradient(180deg, var(--erp-grid-footer-start) 0%, var(--erp-grid-footer-end) 100%);
  border-top: 1px solid var(--erp-grid-footer-border);
}

.system-grid-summary {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  font-size: 11px;
  line-height: 1.2;
}

.system-pager {
  display: flex;
  align-items: center;
  gap: 6px;
}

.system-pager-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 48px;
  min-height: 28px;
  padding: 4px 9px;
  color: #111;
  text-decoration: none;
  background: linear-gradient(180deg, #fbfbfb 0%, #d7d7d7 100%);
  border-top: 1px solid #fff;
  border-left: 1px solid #fff;
  border-right: 1px solid #707070;
  border-bottom: 1px solid #707070;
}

.system-pager-btn.disabled {
  opacity: 0.45;
}

.system-pager-meta {
  font-size: 11px;
  font-weight: 700;
  line-height: 1.1;
}

@keyframes pb-busy-spin {
  from { transform: rotate(0deg); }
  to { transform: rotate(360deg); }
}

@media (max-width: 991.98px) {
  .erp-main-shell {
    position: relative;
    flex-direction: row;
  }

  .erp-sidebar {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    z-index: 40;
    display: block;
    width: min(300px, calc(100vw - 24px));
    max-width: calc(100vw - 24px);
    flex: 0 0 auto;
    border-right: 1px solid var(--erp-border);
    border-bottom: 0;
    box-shadow: 12px 0 24px rgba(0, 0, 0, 0.18);
    transform: translateX(calc(-100% - 16px));
    transition: transform 0.22s ease;
    pointer-events: none;
  }

  .erp-menu-sidebar-toggle {
    display: inline-flex;
  }

  .erp-workspace {
    width: 100%;
    flex: 1 1 auto;
  }

  .erp-mobile-sidebar-open .erp-workspace::before {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(14, 15, 32, 0.12);
    z-index: 10;
    pointer-events: none;
  }

  .erp-mobile-sidebar-open .erp-sidebar {
    transform: translateX(0);
    pointer-events: auto;
  }

  .erp-mobile-drawer-backdrop {
    position: absolute;
    inset: 0;
    z-index: 25;
    display: none;
    background: rgba(12, 14, 30, 0.18);
  }

  .erp-mobile-sidebar-open .erp-mobile-drawer-backdrop {
    display: block;
  }
}

@media (max-width: 767.98px) {
  .erp-brandbar {
    padding: 4px 6px 3px;
  }

  .erp-brandmark {
    gap: 6px;
  }

  .erp-brandmark-image {
    width: 20px;
    height: 20px;
  }

  .erp-brandmark-text strong {
    font-size: 12px;
  }

  .erp-brandmark-text span {
    font-size: 9px;
  }

  .erp-tool-button {
    width: 40px;
    min-height: 36px;
    gap: 3px;
    padding: 3px 2px;
  }

  .erp-menu-item {
    text-align: left;
    padding: 3px 5px;
  }

  .erp-menubar {
    flex-wrap: nowrap;
    align-items: center;
    gap: 6px;
    padding: 2px 6px;
    overflow-x: auto;
    overflow-y: hidden;
  }

  .erp-menubar-links {
    flex: 1 0 auto;
    min-width: max-content;
    flex-wrap: nowrap;
    gap: 1px;
    overflow: visible;
    white-space: nowrap;
  }

  .erp-menubar-actions {
    flex: 0 0 auto;
    justify-content: flex-end;
    gap: 4px;
  }

  .erp-menu-dropdowns {
    padding: 0 6px 4px;
  }

  .erp-menu-dropdown {
    min-width: 220px;
    max-width: calc(100vw - 20px);
  }

  .erp-menu-toolbar-toggle,
  .erp-theme-button {
    min-width: 0;
    padding: 3px 7px;
    font-size: 10px;
  }

  .erp-toolbar-row {
    gap: 6px;
  }

  .erp-toolbar-wrap {
    padding: 2px 4px 0;
  }

  .erp-theme-panel {
    width: min(250px, calc(100vw - 20px));
    right: 0;
    padding: 6px;
  }

  .erp-theme-list {
    grid-template-columns: 1fr;
    gap: 4px;
  }

  .erp-theme-option {
    padding: 6px 7px;
  }

  .erp-statusbar {
    flex-direction: row;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 3px;
    padding: 4px 6px;
    font-size: 10px;
  }
  
  .erp-statusbar span:first-child {
    display: none;
  }

  .erp-approved-inline-field {
    grid-template-columns: 1fr;
    gap: 4px;
  }

  .system-grid-footer {
    flex-direction: column;
    align-items: flex-start;
    gap: 6px;
    padding: 5px 8px;
  }

  .erp-home-summary {
    grid-template-columns: 1fr;
    gap: 10px;
    padding: 10px;
  }

  .erp-home-summary-logo-wrap {
    justify-content: flex-start;
  }

  .erp-home-summary-grid {
    grid-template-columns: 1fr;
    gap: 8px;
  }

  .erp-home-summary-item {
    min-height: 0;
    padding: 10px 12px;
  }

  .system-grid-summary {
    gap: 8px;
    font-size: 10px;
  }

  .system-pager {
    width: 100%;
    flex-wrap: wrap;
    gap: 5px;
  }

  .system-pager-btn {
    min-width: 44px;
    min-height: 26px;
    padding: 3px 8px;
    font-size: 10px;
  }

  .system-pager-meta {
    font-size: 10px;
  }

  .erp-panel {
    margin-bottom: 4px;
  }

  .erp-panel-title {
    padding: 6px 8px;
  }

  .erp-panel-list li {
    padding: 4px 8px;
  }

  .erp-sidebar {
    width: min(260px, calc(100vw - 20px));
    max-width: calc(100vw - 20px);
    padding: 8px 7px;
  }

  .erp-home {
    padding: 8px;
  }
}

/* pageDesignForMobileResolution: mobile-only shared scrolling baseline */
@media (max-width: 767.98px) {
  html,
  body {
    overflow: hidden;
  }

  .erp-shell {
    height: 100dvh;
    min-height: 100dvh;
    overflow: hidden;
  }

  .erp-main-shell,
  .erp-workspace,
  .erp-workspace-body {
    min-height: 0;
    overflow: hidden;
  }

  .erp-workspace-content {
    display: flex;
    flex-direction: column;
    min-height: 0;
    overflow-x: hidden;
    overflow-y: auto;
  }

  .erp-workspace-content > *:first-child {
    flex: 0 0 auto;
    min-height: auto;
  }

  .workspace-page-header {
    flex: 0 0 auto;
  }

  .workspace-page-body,
  .workspace-page-body-tabs,
  .erp-workspace-page,
  .erp-workspace-page-body,
  .erp-home-shell,
  .erp-home,
  .go-page,
  .ui-page,
  .customer-page,
  .setup-page {
    min-height: auto;
    height: auto;
    overflow: visible;
  }

  .erp-mdi-tabshell {
    min-height: auto;
    height: auto;
  }

  .erp-statusbar {
    flex-wrap: wrap;
  }
}

.erp-workspace-iframes { flex: 1; height: 100%; position: relative; }
.erp-workspace-iframe { width: 100%; height: 100%; border: none; position: absolute; top: 0; left: 0; }

/* -- Searchable combo dropdown ----------------------------------- */
.ui-combo-wrapper > select,
select.ui-combo-source-select {
  display: none !important;
  visibility: hidden !important;
  position: absolute !important;
  pointer-events: none !important;
  opacity: 0 !important;
  width: 0 !important;
  height: 0 !important;
  min-width: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  outline: 0 !important;
  overflow: hidden !important;
}

.ui-combo-source-holder {
  position: fixed !important;
  left: -10000px !important;
  top: -10000px !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
  pointer-events: none !important;
  opacity: 0 !important;
}

.ui-combo-wrapper {
  position: relative;
  width: 100%;
}

.ui-combo-input {
  width: 100%;
  min-height: 26px;
  padding: 4px 30px 4px 8px !important;
  margin: 0 !important;
  box-sizing: border-box;
  border: 1px solid #d6dde6 !important;
  border-radius: 6px !important;
  background: #ffffff !important;
  box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075) !important;
  outline: none;
  color: inherit;
  font-family: inherit;
  font-size: 12px;
  line-height: 1.2;
}

.ui-combo-input::placeholder {
  color: #7b8794;
  opacity: 1;
}

.ui-combo-input:focus {
  border-color: #512bd4 !important;
  box-shadow: 0 0 0 0.15rem rgba(81, 43, 212, 0.14) !important;
  outline: none !important;
}

.ui-combo-input.is-new {
  border-color: #e67e22 !important;
  background-color: #fff9f3 !important;
}

.ui-combo-dropdown {
  display: none;
  position: absolute;
  top: calc(100% + 1px);
  left: 0;
  right: 0;
  z-index: 9999;
  background: #ffffff;
  border: 1px solid #512bd4;
  border-top: none;
  border-radius: 0 0 8px 8px;
  max-height: 220px;
  overflow-y: auto;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

.ui-combo-dropdown.open {
  display: block;
}

.ui-combo-item {
  padding: 8px 12px;
  cursor: pointer;
  font-size: 12px;
  border-bottom: 1px solid #f0f0f0;
  background: #ffffff;
  color: #202020;
  transition: background 0.12s;
}

.ui-combo-item:hover,
.ui-combo-item.active {
  background-color: #512bd4;
  color: #ffffff;
}

.ui-combo-item.new-entry {
  color: #e67e22;
  font-style: italic;
  font-weight: 600;
  border-top: 2px dashed #e67e22;
}

.ui-combo-item.new-entry:hover,
.ui-combo-item.new-entry.active {
  background-color: #e67e22;
  color: #ffffff;
}

.ui-combo-empty {
  padding: 8px 12px;
  color: #7a7a7a;
  font-size: 12px;
  font-style: italic;
}

.ui-combo-icon {
  position: absolute;
  top: 1px;
  right: 1px;
  bottom: 1px;
  width: 28px;
  padding: 0;
  color: #606060;
  cursor: pointer;
  font-size: 10px;
  background: transparent;
  border-left: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  pointer-events: none;
}

/* Custom Alert Adjustments - Modern & Stylish */
/* Base Adjustments */
.alert {
    border: none !important;
    color: #ffffff !important;
    font-weight: 600 !important;
    font-size: 13.5px !important;
    letter-spacing: 0.3px !important;
    border-radius: 6px !important;
    border-left: 6px solid rgba(0,0,0,0.2) !important;
}

.alert .btn-close {
    filter: invert(1) grayscale(100%) brightness(200%) !important;
    opacity: 0.7 !important;
    transition: opacity 0.2s ease, transform 0.2s ease !important;
}

.alert .btn-close:hover {
    opacity: 1 !important;
    transform: scale(1.1);
}

/* Danger Alert */
.alert-danger {
    background: linear-gradient(135deg, #e74c3c 0%, #c0392b 100%) !important;
    box-shadow: 0 4px 12px rgba(192, 57, 43, 0.35) !important;
    border-left-color: #922b21 !important;
}

/* Success Alert */
.alert-success {
    background: linear-gradient(135deg, #1d8246 0%, #11572c 100%) !important;
    box-shadow: 0 4px 12px rgba(17, 87, 44, 0.35) !important;
    border-left-color: #0b3b1c !important;
}

/* Warning Alert */
.alert-warning {
    background: linear-gradient(135deg, #f39c12 0%, #d68910 100%) !important;
    box-shadow: 0 4px 12px rgba(214, 137, 16, 0.35) !important;
    border-left-color: #a04000 !important;
}

/* Info Alert */
.alert-info {
    background: linear-gradient(135deg, #3498db 0%, #2980b9 100%) !important;
    box-shadow: 0 4px 12px rgba(41, 128, 185, 0.35) !important;
    border-left-color: #1f618d !important;
}

/* Custom Close Button for SweetAlert Toasts */
.custom-toast-close-btn {
    background: linear-gradient(135deg, #e74c3c 0%, #c0392b 100%) !important;
    box-shadow: 0 4px 12px rgba(192, 57, 43, 0.35) !important;
    color: #ffffff !important;
    border-radius: 4px !important;
    width: 28px !important;
    height: 28px !important;
    font-size: 18px !important;
    font-weight: bold !important;
    opacity: 1 !important;
    margin: 5px !important;
    border: 1px solid #c0392b !important;
    outline: none !important;
    transition: background 0.2s, transform 0.2s !important;
}

.custom-toast-close-btn:hover {
    background: linear-gradient(135deg, #c0392b 0%, #922b21 100%) !important;
    transform: scale(1.05) !important;
}
.custom-toast-title-bold {
    font-weight: 700 !important;
    font-size: 15px !important;
}
.swal2-icon.swal2-success [class^='swal2-success-'],
.swal2-icon.swal2-warning,
.swal2-icon.swal2-error [class^='swal2-x-mark-'] {
    border-color: #ffffff !important;
}
.swal2-icon.swal2-success .swal2-success-ring {
    border-color: rgba(255,255,255,0.3) !important;
}
.swal2-icon.swal2-success .swal2-success-line-tip,
.swal2-icon.swal2-success .swal2-success-line-long {
    background-color: #ffffff !important;
}
.swal2-icon.swal2-error .swal2-x-mark-line-left,
.swal2-icon.swal2-error .swal2-x-mark-line-right {
    background-color: #ffffff !important;
}
.swal2-icon.swal2-warning {
    color: #ffffff !important;
}

.ribbon-voice-assistant {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin-left: 8px;
}

.ribbon-voice-assistant-btn {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 0 10px;
    height: 20px;
    border-radius: 2px;
    border: 1px solid rgba(0, 0, 0, 0.6) !important;
    background: linear-gradient(180deg, #f8f8f8 0%, #e4e4e4 100%) !important;
    color: #c2185b;
    font-family: Tahoma, sans-serif;
    font-size: 12px;
    font-weight: 700;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.55);
    white-space: nowrap;
}

.ribbon-voice-assistant-icon {
    color: #e91e63;
    font-size: 12px;
    line-height: 1;
}

.ribbon-voice-assistant-btn.listening {
    background: linear-gradient(180deg, #fce4ec 0%, #f8bbd0 100%) !important;
    color: #ad1457;
}

.ribbon-voice-assistant-btn.error {
    background: linear-gradient(180deg, #fff2f2 0%, #ffd8d8 100%) !important;
    color: #b71c1c;
    border-color: #d32f2f !important;
}

.ribbon-voice-assistant-live {
    max-width: 240px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-family: Tahoma, sans-serif;
    font-size: 11px;
    padding: 1px 8px;
    border-radius: 2px;
    border: 1px solid rgba(87, 72, 48, 0.35);
    background: rgba(255, 245, 223, 0.94);
    color: #5e4b32;
}

.erp-voice-assistant-login {
    margin-left: 0;
}

.erp-voice-assistant-login .ribbon-voice-assistant-live {
    max-width: 180px;
}

@media (max-width: 1280px) {
    .ribbon-voice-assistant-live {
        display: none;
    }
}

/* =========================================================================
   pbERP Action Button Global Styles (Extracted from customer-info.css)
   ========================================================================= */

.pb-erp-action-buttons {
    display: flex; flex-wrap: wrap; gap: 3px; justify-content: flex-end;
}

.pberp-action-btn {
    min-width: 76px; width: auto; padding: 4px 10px;
    display: inline-flex; align-items: center; justify-content: center;
    border-radius: var(--erp-radius-btn, 6px); border: none;
    text-decoration: none; font-size: 12px; font-weight: 600; cursor: pointer;
    transition: all 0.2s ease; gap: 6px; white-space: nowrap;
}

.pberp-btn-save {
    background: var(--erp-grad-primary);
    color: #fff; box-shadow: 0 2px 4px rgba(79, 70, 229, 0.2);
}
.pberp-btn-save:hover {
    transform: translateY(-1px); box-shadow: 0 4px 10px rgba(79, 70, 229, 0.35); color: #fff;
}

.pberp-btn-new {
    background: var(--erp-grad-accent);
    color: #fff; box-shadow: 0 2px 4px rgba(16, 185, 129, 0.2);
}
.pberp-btn-new:hover {
    transform: translateY(-1px); box-shadow: 0 4px 10px rgba(16, 185, 129, 0.35); color: #fff;
}

.pberp-btn-delete {
    background: linear-gradient(135deg, #ef4444 0%, #dc2626 100%);
    color: #fff; box-shadow: 0 2px 4px rgba(239, 68, 68, 0.2);
}
.pberp-btn-delete:hover {
    transform: translateY(-1px); box-shadow: 0 4px 8px rgba(239, 68, 68, 0.3); color: #fff;
}

.pberp-btn-refresh {
    background: linear-gradient(135deg, #a855f7 0%, #7e22ce 100%);
    color: #fff; box-shadow: 0 2px 4px rgba(168, 85, 247, 0.2);
}
.pberp-btn-refresh:hover {
    transform: translateY(-1px); box-shadow: 0 4px 10px rgba(168, 85, 247, 0.35); color: #fff;
}

.pberp-btn-close {
    background: linear-gradient(135deg, #fde047 0%, #eab308 100%);
    color: #1e293b; box-shadow: 0 2px 4px rgba(234, 179, 8, 0.2);
}
.pberp-btn-close:hover {
    transform: translateY(-1px); box-shadow: 0 4px 10px rgba(234, 179, 8, 0.35); color: #1e293b;
}

/* Legacy Listview Fixed Colors Override */
.erp-list-searchbar { background-color: #fdf5e6 !important; }
.global-listview-pattern thead th, .go-table thead th, .customer-grid thead th { background-color: #fdf5e6 !important; color: #212529 !important; border-bottom: 2px solid #deb887 !important; }
.system-grid-footer, .customer-grid-footer { background-color: #f0e6d2 !important; border-top: 1px solid #deb887 !important; }

@media (max-width: 767.98px) {
    .pb-erp-action-buttons { flex-wrap: nowrap; overflow-x: auto; -webkit-overflow-scrolling: touch; scrollbar-width: none; }
    .pb-erp-action-buttons::-webkit-scrollbar { display: none; }
    .pberp-action-btn { min-width: auto; padding: 4px 6px; font-size: 11px; }
}

/* Global Inline Grid Actions */
.erp-inline-actions { display: flex; flex-wrap: nowrap; gap: 8px; align-items: center; justify-content: center; white-space: nowrap; }
.erp-inline-delete-form { margin: 0; padding: 0; display: flex; align-items: center; }

.erp-list-action-cell {
    width: 1%;
    text-align: center !important;
    white-space: nowrap;
}

.erp-list-action-wrap {
    align-items: center;
    display: inline-flex;
    gap: 8px;
    justify-content: center;
}

.erp-list-action-btn {
    align-items: center;
    border: 0;
    border-radius: 999px;
    cursor: pointer;
    display: inline-flex;
    font-size: 12px;
    font-weight: 700;
    gap: 8px;
    height: 28px;
    justify-content: center;
    line-height: 1;
    min-width: 74px;
    padding: 0 13px;
    text-decoration: none;
}

.erp-list-action-btn:hover {
    filter: brightness(0.98);
    text-decoration: none;
}

.erp-list-action-edit {
    background: #eef5ff;
    color: #1d63d4;
}

.erp-list-action-delete {
    background: #fff0ee;
    color: #cf3127;
}

.erp-list-action-go-sale {
    background: #ecfbff;
    color: #0877bf;
}

.erp-list-action-return {
    background: #f1f0ff;
    color: #4b39e4;
}

.erp-action-btn-compact {
    min-width: 32px;
    padding: 0 8px;
}

.erp-list-action-btn i {
    font-size: 11px;
}

/* Global listview/dropdown content auto-fit */
.pb-auto-fit-listview {
    border-collapse: collapse;
    table-layout: auto !important;
    width: max-content !important;
    min-width: 100% !important;
}

.pb-auto-fit-listview th,
.pb-auto-fit-listview td {
    overflow: visible !important;
    text-overflow: clip !important;
    white-space: nowrap !important;
}

.pb-auto-fit-listview input,
.pb-auto-fit-listview select,
.pb-auto-fit-listview textarea,
.pb-auto-fit-listview .ui-combo-wrapper {
    max-width: 100%;
}

/* Global Responsive Form Layout Pattern */
.erp-responsive-page { display: flex; flex-direction: column; flex: 1; min-height: 0; }
.erp-responsive-form { display: flex; flex-direction: column; flex: 1; min-height: 0; overflow-y: auto; overflow-x: hidden; }
.erp-responsive-row { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin-bottom: 8px; }
.erp-responsive-field { display: flex; align-items: center; flex: 1 1 auto; min-width: 150px; }
.erp-responsive-grid { flex-grow: 1; min-height: 200px; overflow-x: auto; overflow-y: auto; border: 1px solid var(--erp-border); position: relative; }

/* Workspace page title bars are hidden globally to recover vertical form space.
   Modal/card/report headers are intentionally left alone. */
:where(
    .purchase-header,
    .sale-header,
    .setup-header,
    .workspace-page-header,
    .product-entry-header,
    .customer-page-header,
    .supplier-page-header,
    .stock-menu-header,
    .bank-header,
    .temp-ledger-header,
    .voucher-entry-header,
    .ledger-balance-report-header,
    .asset-management-header,
    .back-office-header,
    .advance-accounting-header,
    .accounting-prerequisits-header,
    .accounting-reports-others-header,
    .general-accounting-reports-header,
    .reports-header,
    .go-header,
    .ui-header,
    .ugl-titlebar
) {
    display: none !important;
}

:where(
    .purchase-page,
    .sale-page,
    .erp-responsive-page,
    .setup-page,
    .product-entry-page,
    .customer-page,
    .supplier-page
) {
    gap: 0 !important;
}

/* Enable scrolling for all embedded views inside iframe/workspace */
.erp-embedded-layout {
    overflow: auto !important;
}
body.erp-layout-embedded, html {
    overflow: auto !important;
}

/* Optimization for 1366x768 (mid-size screens) */
@media (min-width: 992px) and (max-width: 1399.98px) {
    .erp-sidebar {
        flex: 0 0 210px !important;
        width: 210px !important;
        padding: 4px 6px !important;
    }
    .erp-sidebar-autohide .erp-sidebar {
        flex: 0 0 210px !important;
        width: 210px !important;
    }
    .erp-sidebar-pinned .erp-sidebar {
        flex: 0 0 210px !important;
        width: 210px !important;
    }
    .erp-panel-title {
        padding: 4px 6px !important;
        font-size: 10px !important;
    }
    .erp-panel-list li {
        padding: 3px 6px !important;
        font-size: 10px !important;
    }
    .erp-panel-list-parent-toggle {
        padding: 4px 0 !important;
    }
    .erp-panel-list-parent-label {
        font-size: 10.5px !important;
    }
    
    .erp-tool-button {
        width: 32px !important;
        min-height: 28px !important;
        gap: 2px !important;
        padding: 2px 2px !important;
    }
    .erp-tool-icon {
        width: 16px !important;
        height: 16px !important;
    }
    .erp-tool-button-compact {
        width: 38px !important;
        min-height: 22px !important;
    }
    .erp-theme-button {
        min-width: 100px !important;
        min-height: 18px !important;
        padding: 2px 8px !important;
        font-size: 10px !important;
    }
    .erp-menubar-start button,
    .erp-menubar-start a {
        padding: 2px 8px !important;
        font-size: 10px !important;
    }
}

/* Hide left sidebar navigation menu on desktop screens wider than tablet but below 1366px */
@media (min-width: 992px) and (max-width: 1365.98px) {
    .erp-sidebar {
        display: none !important;
    }
}
