/* =========================================================
   EFABBMS FINAL CENTRALIZED UI OVERRIDE
   AutoBizWatch / TABCO - Glossy button standard
   This file must load last on every page.
   ========================================================= */
:root{
  --efab-blue-top:#63b8ff;
  --efab-blue-1:#2f8df4;
  --efab-blue-2:#1769c2;
  --efab-blue-bottom:#0b4f9c;
  --efab-blue-border:#073f82;
  --efab-red-top:#ff7b7b;
  --efab-red-1:#e3342f;
  --efab-red-2:#b91c1c;
  --efab-red-bottom:#7f1d1d;
  --efab-orange-top:#ffc56d;
  --efab-orange-1:#f59e0b;
  --efab-orange-2:#d97706;
  --efab-orange-bottom:#92400e;
  --efab-gray-top:#b8c3cf;
  --efab-gray-1:#6b7b8c;
  --efab-gray-2:#475569;
  --efab-gray-bottom:#334155;
}

/* Standard glossy button base */
.btn,
a.btn,
button.btn,
input.btn,
.efab-btn,
button,
input[type="submit"],
input[type="button"],
.action-btn,
.toolbar-btn,
.nav-btn,
.save-btn,
.update-btn,
.search-btn,
.print-btn,
.view-btn,
.edit-btn,
.add-btn,
.new-btn,
.import-btn,
.export-btn,
.upload-btn,
.download-btn,
.login-btn,
.btn-dashboard,
.btn-report,
.btn-search,
.btn-save,
.btn-update,
.btn-submit,
.btn-primary,
.btn-blue,
.btn-green,
.btn-dark,
.btn-info,
.btn-lang,
.language-btn,
.lang-btn,
.blue,
.green,
.dark,
.sky,
.gray,
.btn-gray{
  background:linear-gradient(180deg,var(--efab-blue-top) 0%,var(--efab-blue-1) 28%,var(--efab-blue-2) 58%,var(--efab-blue-bottom) 100%) !important;
  border:1px solid var(--efab-blue-border) !important;
  color:#ffffff !important;
  border-radius:10px !important;
  box-shadow:inset 0 2px 0 rgba(255,255,255,.50), inset 0 -2px 0 rgba(0,0,0,.18), 0 3px 8px rgba(0,0,0,.22) !important;
  text-shadow:0 1px 1px rgba(0,0,0,.30) !important;
  font-weight:800 !important;
  text-decoration:none !important;
}
.btn:hover,
a.btn:hover,
button.btn:hover,
input.btn:hover,
.efab-btn:hover,
button:hover,
input[type="submit"]:hover,
input[type="button"]:hover,
.action-btn:hover,
.toolbar-btn:hover,
.nav-btn:hover{
  filter:brightness(1.06) !important;
  transform:translateY(-1px);
}
.btn:active,
a.btn:active,
button.btn:active,
input.btn:active,
.efab-btn:active,
button:active,
input[type="submit"]:active,
input[type="button"]:active{
  transform:translateY(1px) !important;
  box-shadow:inset 0 2px 5px rgba(0,0,0,.30),0 1px 3px rgba(0,0,0,.20) !important;
}

/* Delete only = glossy red */
.btn-delete,
.delete-btn,
.btn-danger,
.danger,
.red,
.btn-red,
a[href*="delete"].btn,
button[name*="delete"],
button[id*="delete"],
input[name*="delete"],
input[id*="delete"]{
  background:linear-gradient(180deg,var(--efab-red-top) 0%,var(--efab-red-1) 30%,var(--efab-red-2) 62%,var(--efab-red-bottom) 100%) !important;
  border-color:#7f1d1d !important;
}

/* Cancel / Clear / Reset / Deactivate = glossy orange */
.btn-cancel,
.cancel-btn,
.btn-clear,
.clear-btn,
.btn-reset,
.reset-btn,
.btn-warning,
.warning,
.orange,
.btn-orange,
.btn-deactivate,
.deactivate-btn,
a[href*="deactivate"].btn,
button[name*="cancel"],
button[id*="cancel"],
button[name*="clear"],
button[id*="clear"],
button[name*="reset"],
button[id*="reset"],
button[name*="deactivate"],
button[id*="deactivate"],
input[name*="cancel"],
input[id*="cancel"],
input[name*="clear"],
input[id*="clear"],
input[name*="reset"],
input[id*="reset"]{
  background:linear-gradient(180deg,var(--efab-orange-top) 0%,var(--efab-orange-1) 30%,var(--efab-orange-2) 62%,var(--efab-orange-bottom) 100%) !important;
  border-color:#92400e !important;
}

/* Exit / Close / Back = glossy grey */
.btn-exit,
.exit-btn,
.btn-close,
.close-btn,
.btn-back,
.back-btn,
.btn-secondary,
.secondary,
a[href*="dashboard"].btn.btn-exit,
a[href*="home"].btn.btn-exit,
button[name*="exit"],
button[id*="exit"],
button[name*="close"],
button[id*="close"],
button[name*="back"],
button[id*="back"]{
  background:linear-gradient(180deg,var(--efab-gray-top) 0%,var(--efab-gray-1) 30%,var(--efab-gray-2) 62%,var(--efab-gray-bottom) 100%) !important;
  border-color:#334155 !important;
}

/* Active language/current buttons */
.btn.active,
.btn-lang.active,
.language-btn.active,
.lang-btn.active,
.active-lang{
  outline:3px solid #ffd54f !important;
  box-shadow:0 0 0 3px rgba(255,213,79,.55), inset 0 2px 0 rgba(255,255,255,.50), 0 3px 8px rgba(0,0,0,.22) !important;
}

/* Cards are navigation buttons; hide separate Open buttons */
.open-btn,.open-button,.card-open,.btn-open,.module-open{display:none !important;visibility:hidden !important;height:0 !important;min-height:0 !important;margin:0 !important;padding:0 !important;overflow:hidden !important;}
.module-card,.efab-nav-card{cursor:pointer !important;}

/* Central footer */
.footer,.efab-footer,footer.efab-footer{
  background:linear-gradient(180deg,#4da3ff 0%,#2f7fe6 25%,#1d5fbf 60%,#124a99 100%) !important;
  border:1px solid #0b3f82 !important;
  color:#fff !important;
  text-align:center !important;
  padding:10px 12px !important;
  font-size:12px !important;
  font-weight:600 !important;
  margin:0 20px 8px !important;
  border-radius:8px !important;
  line-height:1.45 !important;
  box-shadow:inset 0 2px 0 rgba(255,255,255,.45),0 3px 8px rgba(0,0,0,.20) !important;
}
.footer span,.efab-footer span,.footer .developer{color:#ffd54f !important;font-weight:800 !important;}
@media print{.footer,.efab-footer,.no-print{display:none !important;}}

/* =========================================================
   EFABBMS STRICT COLOR SCHEME - GLOBAL FINAL OVERRIDE
   Applies after all page-level styles. Normal actions are glossy blue.
   Delete only red. Cancel/Clear/Reset/Deactivate orange. Back/Exit/Close grey.
   ========================================================= */
html body .btn,
html body a.btn,
html body button,
html body input[type="submit"],
html body input[type="button"],
html body input[type="reset"],
html body .efab-btn,
html body .action-btn,
html body .toolbar-btn,
html body .nav-btn,
html body .btn-primary,
html body .btn-success,
html body .btn-info,
html body .btn-dark,
html body .btn-default,
html body .btn-light,
html body .btn-outline-primary,
html body .btn-outline-success,
html body .btn-outline-info,
html body .btn-outline-dark,
html body .save,
html body .save-btn,
html body .submit,
html body .submit-btn,
html body .update,
html body .update-btn,
html body .search,
html body .search-btn,
html body .select-all,
html body .select-all-btn,
html body .view,
html body .view-btn,
html body .edit,
html body .edit-btn,
html body .new,
html body .new-btn,
html body .add,
html body .add-btn,
html body .print,
html body .print-btn,
html body .export,
html body .export-btn,
html body .import,
html body .import-btn,
html body .upload,
html body .upload-btn,
html body .download,
html body .download-btn,
html body .login,
html body .login-btn,
html body [class*="btn-save"],
html body [class*="btn-update"],
html body [class*="btn-submit"],
html body [class*="btn-search"],
html body [class*="btn-print"],
html body [class*="btn-view"],
html body [class*="btn-edit"],
html body [class*="btn-add"],
html body [class*="btn-new"],
html body [class*="btn-export"],
html body [class*="btn-import"],
html body [class*="btn-upload"],
html body [class*="btn-download"]{
  background:linear-gradient(180deg,#69bdff 0%,#3494f6 26%,#176ecb 58%,#0b4f9c 100%) !important;
  background-color:#176ecb !important;
  border:1px solid #073f82 !important;
  color:#fff !important;
  border-radius:10px !important;
  box-shadow:inset 0 2px 0 rgba(255,255,255,.55), inset 0 -2px 0 rgba(0,0,0,.18), 0 3px 8px rgba(0,0,0,.22) !important;
  text-shadow:0 1px 1px rgba(0,0,0,.32) !important;
  font-weight:800 !important;
  text-decoration:none !important;
}

/* Red is strictly for delete/remove buttons/links */
html body .btn-danger,
html body .danger,
html body .red,
html body .delete,
html body .delete-btn,
html body .btn-delete,
html body .remove,
html body .remove-btn,
html body .btn-remove,
html body a[href*="delete"],
html body a[href*="remove"],
html body button[name*="delete"],
html body button[id*="delete"],
html body input[name*="delete"],
html body input[id*="delete"],
html body button[name*="remove"],
html body button[id*="remove"]{
  background:linear-gradient(180deg,#ff8585 0%,#ef4444 30%,#c81e1e 62%,#7f1d1d 100%) !important;
  background-color:#c81e1e !important;
  border-color:#7f1d1d !important;
  color:#fff !important;
}

/* Orange is for cancel/clear/reset/deactivate/reject */
html body .btn-warning,
html body .warning,
html body .orange,
html body .cancel,
html body .cancel-btn,
html body .btn-cancel,
html body .clear,
html body .clear-btn,
html body .btn-clear,
html body .reset,
html body .reset-btn,
html body .btn-reset,
html body .deactivate,
html body .deactivate-btn,
html body .btn-deactivate,
html body .reject,
html body .reject-btn,
html body .btn-reject,
html body a[href*="deactivate"],
html body a[href*="cancel"],
html body button[name*="cancel"],
html body button[id*="cancel"],
html body input[name*="cancel"],
html body input[id*="cancel"],
html body button[name*="clear"],
html body button[id*="clear"],
html body input[name*="clear"],
html body input[id*="clear"],
html body button[name*="reset"],
html body button[id*="reset"],
html body input[name*="reset"],
html body input[id*="reset"],
html body button[name*="deactivate"],
html body button[id*="deactivate"],
html body input[name*="deactivate"],
html body input[id*="deactivate"],
html body button[name*="reject"],
html body button[id*="reject"]{
  background:linear-gradient(180deg,#ffd074 0%,#f5a623 30%,#d97706 62%,#92400e 100%) !important;
  background-color:#d97706 !important;
  border-color:#92400e !important;
  color:#fff !important;
}

/* Grey for non-action navigation */
html body .btn-secondary,
html body .secondary,
html body .grey,
html body .gray,
html body .exit,
html body .exit-btn,
html body .btn-exit,
html body .back,
html body .back-btn,
html body .btn-back,
html body .close,
html body .close-btn,
html body .btn-close,
html body button[name*="exit"],
html body button[id*="exit"],
html body input[name*="exit"],
html body input[id*="exit"],
html body button[name*="back"],
html body button[id*="back"],
html body button[name*="close"],
html body button[id*="close"]{
  background:linear-gradient(180deg,#c6d0db 0%,#7b8ca1 30%,#526174 62%,#334155 100%) !important;
  background-color:#526174 !important;
  border-color:#334155 !important;
  color:#fff !important;
}

/* Make page chrome consistent */
html body .header,html body .main-header,html body .page-header,html body .efab-header{
  background:linear-gradient(180deg,#1d5b95 0%,#153b66 58%,#0f2f57 100%) !important;
  color:#fff !important;
}
html body .footer,html body .efab-footer,html body footer{
  background:linear-gradient(180deg,#4da3ff 0%,#2f7fe6 25%,#1d5fbf 60%,#124a99 100%) !important;
  border:1px solid #0b3f82 !important;
  color:#fff !important;
  text-align:center !important;
  padding:10px 12px !important;
  font-size:12px !important;
  font-weight:600 !important;
  margin:0 20px 8px !important;
  border-radius:8px !important;
  line-height:1.45 !important;
  box-shadow:inset 0 2px 0 rgba(255,255,255,.45),0 3px 8px rgba(0,0,0,.20) !important;
}
html body .footer span,html body .efab-footer span,html body footer span{color:#ffd54f !important;font-weight:800 !important;}
@media print{html body .footer,html body .efab-footer,html body footer,html body .no-print{display:none !important;}}
