/* =============================================
   HANDOO HRMS - Custom Stylesheet
   ============================================= */

:root {
  --hands-primary: #2c3e50;
  --hands-accent:  #e74c3c;
  --hands-success: #27ae60;
  --hands-info:    #2980b9;
}

/* Sidebar Brand */
.brand-link .brand-text {
  font-weight: 800;
  letter-spacing: 2px;
  color: #fff !important;
}
.brand-link .brand-image {
  max-height: 33px;
  opacity: .8;
}

/* Sidebar Active */
.nav-sidebar .nav-item .nav-link.active,
.nav-sidebar .nav-item .nav-link:hover {
  background: rgba(255,255,255,0.12);
  border-left: 3px solid var(--hands-accent);
}

/* Card header colors */
.card .card-header {
  border-bottom: 2px solid rgba(0,0,0,.1);
}

/* Stat Cards */
.small-box .icon { font-size: 70px; }

/* Button xs */
.btn-xs {
  padding: .15rem .4rem;
  font-size: .75rem;
  line-height: 1.5;
  border-radius: .2rem;
}

/* Status badges */
.badge-active    { background: #27ae60; color: #fff; }
.badge-inactive  { background: #95a5a6; color: #fff; }
.badge-pending   { background: #f39c12; color: #fff; }
.badge-approved  { background: #27ae60; color: #fff; }
.badge-rejected  { background: #e74c3c; color: #fff; }
.badge-present   { background: #27ae60; color: #fff; }
.badge-late      { background: #f39c12; color: #fff; }
.badge-absent    { background: #e74c3c; color: #fff; }
.badge-leave     { background: #2980b9; color: #fff; }
.badge-sick      { background: #8e44ad; color: #fff; }
.badge-paid      { background: #27ae60; color: #fff; }
.badge-overdue   { background: #e74c3c; color: #fff; }
.badge-draft     { background: #95a5a6; color: #fff; }
.badge-processed { background: #f39c12; color: #fff; }

/* Avatar */
.img-circle-sm {
  width: 36px; height: 36px;
  border-radius: 50%;
  object-fit: cover;
  border: 2px solid #dee2e6;
}

/* Tables */
.table th {
  background: #f8f9fa;
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: .5px;
  white-space: nowrap;
}
.table-sm td, .table-sm th { padding: 0.4rem 0.75rem; }

/* Form controls */
.form-control:focus {
  border-color: var(--hands-info);
  box-shadow: 0 0 0 .2rem rgba(41,128,185,.2);
}

/* Preloader */
#page-loader {
  position: fixed; top: 0; left: 0;
  width: 100%; height: 100%;
  background: rgba(255,255,255,.85);
  display: flex; align-items: center; justify-content: center;
  z-index: 9999;
}
#page-loader.hidden { display: none; }

/* Notification badge */
.navbar-badge {
  font-size: .6rem;
  padding: 2px 4px;
  position: absolute;
  right: 2px;
  top: 2px;
}

/* Login page */
.login-page { background: linear-gradient(135deg, #2c3e50 0%, #e74c3c 100%); }
.login-box { margin: auto; }
.login-card-body { border-top: 3px solid var(--hands-accent); }

/* Checkin GPS button */
.btn-checkin {
  min-width: 180px;
  border-radius: 50px;
  font-weight: bold;
  letter-spacing: 1px;
  transition: transform .1s;
}
.btn-checkin:active { transform: scale(0.96); }

/* Dashboard quick action */
.quick-action-card {
  text-decoration: none;
  display: block;
  background: #fff;
  border: 1px solid #e3e3e3;
  border-radius: 8px;
  padding: 20px;
  text-align: center;
  transition: all .2s;
}
.quick-action-card:hover {
  border-color: var(--hands-accent);
  box-shadow: 0 4px 12px rgba(0,0,0,.1);
  transform: translateY(-2px);
  text-decoration: none;
}
.quick-action-card i { font-size: 28px; margin-bottom: 8px; display: block; }

/* Payroll slip print */
@media print {
  .main-sidebar, .main-header, .main-footer,
  .content-header, .no-print { display: none !important; }
  .content-wrapper { margin: 0 !important; padding: 0 !important; }
}

/* Responsive tweaks */
@media (max-width: 768px) {
  .small-box .icon { font-size: 50px; }
  .table-responsive { font-size: 12px; }
}

/* Scrollbar */
::-webkit-scrollbar { width: 6px; height: 6px; }
::-webkit-scrollbar-track { background: #f1f1f1; }
::-webkit-scrollbar-thumb { background: #ccc; border-radius: 3px; }
::-webkit-scrollbar-thumb:hover { background: #aaa; }
