/* MH Great theme over AdminLTE 3.2 (Dashboard v3 layout) */
:root {
  --mhg-primary: #0e7c66;
  --mhg-primary-dark: #0a5e4d;
  --mhg-accent: #f59e0b;
  --mhg-sidebar: #10233a;
  --mhg-sidebar-hover: #17324f;
}
.btn-primary, .bg-primary, .badge-primary, .page-item.active .page-link,
.custom-control-input:checked ~ .custom-control-label::before { background-color: var(--mhg-primary) !important; border-color: var(--mhg-primary) !important; }
.btn-primary:hover, .btn-primary:focus { background-color: var(--mhg-primary-dark) !important; border-color: var(--mhg-primary-dark) !important; }
.text-primary, a.text-primary { color: var(--mhg-primary) !important; }
a { color: var(--mhg-primary); }
a:hover { color: var(--mhg-primary-dark); }
.page-link { color: var(--mhg-primary); }
.card-primary:not(.card-outline) > .card-header { background-color: var(--mhg-primary); }
.card-primary.card-outline { border-top-color: var(--mhg-primary); }
.form-control:focus { border-color: #5cc4ae; box-shadow: 0 0 0 .15rem rgba(14,124,102,.15); }

.main-sidebar.sidebar-dark-primary { background-color: var(--mhg-sidebar); }
.sidebar-dark-primary .nav-sidebar > .nav-item > .nav-link.active,
.sidebar-dark-primary .nav-sidebar .nav-treeview > .nav-item > .nav-link.active { background-color: var(--mhg-primary) !important; color: #fff !important; }
.sidebar-dark-primary .nav-sidebar .nav-treeview > .nav-item > .nav-link:hover,
.sidebar-dark-primary .nav-sidebar > .nav-item > .nav-link:hover { background-color: var(--mhg-sidebar-hover); }
.nav-sidebar .nav-header { font-size: .72rem; letter-spacing: .08em; color: #8aa1b8 !important; padding-top: 1rem; }
.brand-link { border-bottom-color: rgba(255,255,255,.08) !important; }
.brand-mark { display: inline-flex; align-items: center; justify-content: center; width: 33px; height: 33px; border-radius: 50%;
  background: linear-gradient(135deg, var(--mhg-primary), #22c39f); color: #fff; font-weight: 700; font-size: .8rem; float: left; margin-left: .8rem; margin-right: .5rem; margin-top: -3px; }
.avatar-initials { display: inline-flex; align-items: center; justify-content: center; width: 32px; height: 32px; border-radius: 50%;
  background: var(--mhg-accent); color: #10233a; font-weight: 700; font-size: .8rem; margin-right: .35rem; }
.avatar-initials.avatar-lg { width: 80px; height: 80px; font-size: 1.6rem; border: 3px solid rgba(255,255,255,.4); }
.user-panel .avatar-initials { width: 34px; height: 34px; }
.badge-portal { background: rgba(14,124,102,.1); color: var(--mhg-primary); font-weight: 600; padding: .35em .7em; }
.module-chip { font-size: .7rem; vertical-align: middle; background: #eef4f2; color: var(--mhg-primary); border-radius: 4px; padding: 2px 6px; margin-left: 6px; font-weight: 600; }

/* Dashboard v3 card idiom */
.card { box-shadow: 0 0 1px rgba(0,0,0,.125), 0 1px 3px rgba(0,0,0,.2); }
.kpi .text-lg { font-size: 1.6rem !important; }
.kpi-tile { border-left: 4px solid var(--mhg-primary); }
.kpi-tile .inner { padding-right: 72px; }
.kpi-tile .icon > i { opacity: .28; font-size: 56px !important; top: 18px !important; }
.kpi-tile:hover .icon > i { font-size: 60px !important; }
.direct-chat-primary .right > .direct-chat-text { background: var(--mhg-primary); border-color: var(--mhg-primary); }
.direct-chat-primary .right > .direct-chat-text::after, .direct-chat-primary .right > .direct-chat-text::before { border-left-color: var(--mhg-primary); }
.direct-chat-text[style*="fff3cd"] { color: #6b4e00 !important; }
.card.form-inline { flex-direction: row; flex-wrap: wrap; align-items: center; }
.kpi-tile.warn { border-left-color: var(--mhg-accent); }
.kpi-tile.bad { border-left-color: #dc3545; }
.table-valign-middle td { vertical-align: middle; }
.table td, .table th { white-space: nowrap; }
.table td.wrap, .table th.wrap { white-space: normal; }
.filter-bar .form-control, .filter-bar .custom-select { min-width: 140px; }
.evidence-img { width: 100%; height: 160px; object-fit: cover; border-radius: 6px; }
.timeline-mini { border-left: 2px solid #dee2e6; padding-left: 1rem; }
.timeline-mini .item { position: relative; margin-bottom: .8rem; }
.timeline-mini .item:before { content: ''; position: absolute; left: -1.38rem; top: .35rem; width: 10px; height: 10px; border-radius: 50%; background: var(--mhg-primary); }
.demo-banner { background: #fff8e6; border: 1px dashed var(--mhg-accent); }

/* Worker / Supervisor mobile */
.bottom-nav { position: fixed; bottom: 0; left: 0; right: 0; height: 60px; background: #fff; border-top: 1px solid #dee2e6; display: flex; z-index: 1040; }
.bottom-nav a { flex: 1; display: flex; flex-direction: column; align-items: center; justify-content: center; color: #6c757d; font-size: .7rem; }
.bottom-nav a i { font-size: 1.15rem; margin-bottom: 2px; }
.bottom-nav a.active { color: var(--mhg-primary); font-weight: 700; }
@media (max-width: 767.98px) {
  body.has-bottom-nav .content-wrapper { padding-bottom: 70px; }
  body.has-bottom-nav .main-footer { display: none; }
  .content-header h1 { font-size: 1.35rem; }
}
.clock-btn { width: 180px; height: 180px; border-radius: 50%; font-size: 1.4rem; font-weight: 700; box-shadow: 0 8px 24px rgba(0,0,0,.15); }
.quick-action { display: block; text-align: center; padding: .9rem .3rem; border-radius: 10px; background: #fff; box-shadow: 0 1px 3px rgba(0,0,0,.12); color: #343a40; margin-bottom: 1rem; }
.quick-action i { font-size: 1.5rem; color: var(--mhg-primary); display: block; margin-bottom: .35rem; }
.quick-action small { font-weight: 600; }

/* Login */
.login-page { background: linear-gradient(135deg, #10233a 0%, #0e7c66 100%); }
.login-box .card { border-radius: 10px; }
.login-logo a { color: #fff; }
.demo-account { cursor: pointer; }
.demo-account:hover { background: #f4f9f7; }

@media print {
  .main-sidebar, .main-header, .main-footer, .bottom-nav, .no-print, .content-header .breadcrumb { display: none !important; }
  .content-wrapper { margin-left: 0 !important; }
}
