:root, [data-bs-theme=light] {
  --bs-primary: #4e65df;
  --bs-primary-rgb: 78,101,223;
  --bs-primary-text-emphasis: #1F2859;
  --bs-primary-bg-subtle: #DCE0F9;
  --bs-primary-border-subtle: #B8C1F2;
}

.btn-primary {
  --bs-btn-color: #fff;
  --bs-btn-bg: #4e65df;
  --bs-btn-border-color: #4e65df;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: #4256BE;
  --bs-btn-hover-border-color: #3E51B2;
  --bs-btn-focus-shadow-rgb: 228,232,250;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: #3E51B2;
  --bs-btn-active-border-color: #3B4CA7;
  --bs-btn-disabled-color: #fff;
  --bs-btn-disabled-bg: #4e65df;
  --bs-btn-disabled-border-color: #4e65df;
}

.btn-outline-primary {
  --bs-btn-color: #4e65df;
  --bs-btn-border-color: #4e65df;
  --bs-btn-focus-shadow-rgb: 78,101,223;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: #4e65df;
  --bs-btn-hover-border-color: #4e65df;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: #4e65df;
  --bs-btn-active-border-color: #4e65df;
  --bs-btn-disabled-color: #4e65df;
  --bs-btn-disabled-bg: transparent;
  --bs-btn-disabled-border-color: #4e65df;
}

/* =========================================================
   LMS TABLET VIEW ENHANCEMENT
   Purpose: make Laundry Management System easier to read/use
   on tablets without changing PHP logic.
   ========================================================= */

/* Tablet / small laptop */
@media (min-width: 768px) and (max-width: 1280px) {
  html,
  body {
    font-size: 18px;
  }

  .container-fluid {
    padding-left: 1.5rem !important;
    padding-right: 1.5rem !important;
  }

  h1, .h1 { font-size: 2.2rem; }
  h2, .h2 { font-size: 2rem; }
  h3, .h3 { font-size: 1.85rem; }
  h4, .h4 { font-size: 1.6rem; }

  .sidebar {
    width: 7.5rem !important;
    min-height: 100vh;
  }

  .sidebar .nav-item .nav-link {
    width: 7.5rem !important;
    padding: 1rem .65rem !important;
    font-size: 1rem !important;
  }

  .sidebar .nav-item .nav-link i {
    font-size: 1.2rem !important;
    margin-bottom: .25rem;
  }

  .sidebar .nav-item .nav-link span {
    font-size: .95rem !important;
    line-height: 1.15rem;
  }

  .sidebar-brand {
    height: 5.8rem !important;
  }

  .sidebar-brand-icon img,
  .sidebar img.rounded-circle {
    width: 64px !important;
    height: 64px !important;
  }

  .topbar {
    height: 5rem !important;
    font-size: 1.05rem;
  }

  .topbar .nav-link,
  .navbar .nav-link {
    font-size: 1.05rem !important;
  }

  .card {
    border-radius: .75rem;
  }

  .card-body {
    padding: 1.25rem !important;
  }

  .card .text-xs,
  .card .small,
  .card small {
    font-size: 1rem !important;
  }

  .card h4,
  .card .h5,
  .card .fw-bold,
  .card strong {
    font-size: 1.25rem !important;
  }

  .table {
    font-size: 1.05rem !important;
  }

  .table th,
  .table td {
    padding: .95rem .8rem !important;
    vertical-align: middle !important;
  }

  .table-responsive {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }

  .dataTables_wrapper .dataTables_length,
  .dataTables_wrapper .dataTables_filter,
  .dataTables_wrapper .dataTables_info,
  .dataTables_wrapper .dataTables_paginate {
    font-size: 1.05rem !important;
  }

  .dataTables_wrapper .dataTables_filter input,
  .dataTables_wrapper .dataTables_length select {
    font-size: 1.05rem !important;
    padding: .55rem .75rem !important;
    height: auto !important;
  }

  .dt-buttons .btn,
  .dataTables_wrapper .btn {
    font-size: 1.05rem !important;
    padding: .6rem .9rem !important;
  }

  .btn {
    font-size: 1.05rem !important;
    padding: .65rem 1rem !important;
    border-radius: .45rem !important;
  }

  .btn-sm {
    font-size: 1rem !important;
    padding: .55rem .85rem !important;
  }

  .form-control,
  .form-select,
  select,
  input,
  textarea {
    font-size: 1.05rem !important;
    padding: .65rem .8rem !important;
    min-height: 44px;
  }

  label,
  .form-label {
    font-size: 1.05rem !important;
  }

  .modal-dialog {
    max-width: 720px;
  }

  .modal-title {
    font-size: 1.5rem !important;
  }

  .modal-body,
  .modal-footer {
    font-size: 1.05rem !important;
  }
}

/* Smaller tablets / large phones */
@media (max-width: 767.98px) {
  html,
  body {
    font-size: 16px;
  }

  .container-fluid {
    padding-left: 1rem !important;
    padding-right: 1rem !important;
  }

  .card-body {
    padding: 1rem !important;
  }

  .table {
    font-size: .98rem !important;
  }

  .table th,
  .table td {
    padding: .75rem .65rem !important;
    vertical-align: middle !important;
  }

  .btn {
    font-size: 1rem !important;
    padding: .6rem .9rem !important;
  }

  .form-control,
  .form-select,
  select,
  input,
  textarea {
    font-size: 1rem !important;
    min-height: 42px;
  }
}

