@charset "UTF-8";
/* ============================================
   Fichier SCSS personnalisé pour PCR42
   Taille de texte par défaut: 12px
   ============================================ */
/* Taille de texte de base pour tout le document */
html {
  font-size: 12px !important;
}

body {
  font-size: 12px !important;
}

/* Headers - Titres hiérarchiques */
h1, .h1 {
  font-size: 24px !important;
  font-weight: 700 !important;
}

h2, .h2 {
  font-size: 20px !important;
  font-weight: 600 !important;
}

h3, .h3 {
  font-size: 18px !important;
  font-weight: 600 !important;
}

h4, .h4 {
  font-size: 16px !important;
  font-weight: 500 !important;
}

h5, .h5 {
  font-size: 14px !important;
  font-weight: 500 !important;
}

h6, .h6 {
  font-size: 14px !important;
  font-weight: 500 !important;
}

/* Assure que tous les éléments de texte sans taille définie utilisent 12px */
p, span, div:not(.icon):not([class*=ri-]):not([class*=bi-]),
a, li, td, th, label, input, textarea, select, button {
  font-size: 12px !important;
}

/* Pour tous les inputs */
input::placeholder,
textarea::placeholder,
select::placeholder {
    font-size: 12px;
}

/* Tables - tous les éléments de tableau */
.table,
.table td,
.table th,
.table-responsive,
.dataTable {
  font-size: 12px !important;
}

/* Formulaires - tous les éléments de formulaire */
.form-control,
.form-select,
.form-label,
.form-check-label,
.input-group-text,
.form-text {
  font-size: 12px !important;
}

/* Boutons - tous les types de boutons */
.btn,
.btn-primary,
.btn-secondary,
.btn-success,
.btn-danger,
.btn-warning,
.btn-info,
.btn-light,
.btn-dark {
  font-size: 12px !important;
}

/* Cards - tous les éléments de carte */
.card-body,
.card-title,
.card-text,
.card-header,
.card-footer {
  font-size: 12px !important;
}

/* Listes */
.list-group-item,
.list-unstyled li,
.list-inline-item {
  font-size: 12px !important;
}

/* Navigation */
.nav-link,
.navbar-nav .nav-link,
.dropdown-item {
  font-size: 12px !important;
}

/* Sidebar menu */
.app-menu .menu-link,
.app-menu .menu-title {
  font-size: 12px !important;
}

/* Modals - boîtes de dialogue */
.modal-body,
.modal-title,
.modal-header,
.modal-footer {
  font-size: 12px !important;
}

/* Alerts - messages d'alerte */
.alert,
.alert-heading {
  font-size: 12px !important;
}

/* Badges - étiquettes */
.badge {
  font-size: 12px !important;
}

/* Tooltips et Popovers */
.tooltip-inner,
.popover-body {
  font-size: 12px !important;
}

/* Breadcrumbs - fil d'Ariane */
.breadcrumb-item {
  font-size: 12px !important;
}

/* Pagination */
.page-link {
  font-size: 12px !important;
}

/* Accordéon */
.accordion-button,
.accordion-body {
  font-size: 12px !important;
}

/* Tabs - onglets */
.nav-tabs .nav-link,
.nav-pills .nav-link,
.tab-content {
  font-size: 12px !important;
}

/* Toast notifications */
.toast-body,
.toast-header {
  font-size: 12px !important;
}

/* Progress bars */
.progress-bar {
  font-size: 12px !important;
}

/* Spinners et chargement */
.spinner-border,
.spinner-grow {
  font-size: 12px !important;
}

/* Datepicker - sélecteur de date */
.datepicker-inline {
  /* height: 40vh; */
  font-size: 12px !important;
}

.datepicker td,
.datepicker th {
  font-size: 12px !important;
}

/* Full Calendar - calendrier */
.fc-event,
.fc-daygrid-day-number,
.fc-col-header-cell-cushion,
.fc-event-title {
  font-size: 12px !important;
}

/* Select2 - sélecteur amélioré */
.select2-container--default .select2-selection--single,
.select2-container--default .select2-results__option {
  font-size: 12px !important;
}

/* SweetAlert2 - alertes personnalisées */
.swal2-popup,
.swal2-title,
.swal2-content {
  font-size: 12px !important;
}

/* Choices.js - sélecteur personnalisé */
.choices__inner,
.choices__list--dropdown .choices__item {
  font-size: 12px !important;
}

/* Offcanvas - panneau latéral */
.offcanvas-body,
.offcanvas-title {
  font-size: 12px !important;
}

/* Footer */
footer,
.footer {
  font-size: 12px !important;
}

/* Headers */
.page-title-box h4,
.page-title {
  font-size: 12px !important;
}

/* Stats et KPI cards */
.stats-card .value,
.kpi-value {
  font-size: 12px !important;
}

/* Notes et commentaires */
.note-item,
.comment-text {
  font-size: 12px !important;
}

.nav-pills .nav-link {
  background-color: #f8f9fa;
  color: #6c757d;
  border-radius: 0;
  padding: 1rem;
  position: relative;
  font-size: 12px !important;
}

.nav-pills .nav-link.active {
  /* background-color: #0d6efd; */
  color: white;
}

.nav-pills .nav-link.completed {
  background-color: #ff980d;
  color: white;
}

.step-number {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background-color: rgba(255, 255, 255, 0.2);
  margin-right: 0.5rem;
  font-size: 12px !important;
}

.nav-pills .nav-link.active .step-number,
.nav-pills .nav-link.completed .step-number {
  background-color: rgba(255, 255, 255, 0.3);
}

.wizard-step {
  display: none;
}

.wizard-step.active {
  display: block;
  animation: fadeIn 0.3s;
}

@keyframes fadeIn {
  from {
    opacity: 0;
    transform: translateY(10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.btn-check:checked + .btn-outline-primary {
  background-color: #ff980d;
  border-color: #ff980d;
}

/* Scrollbar toujours visible pour la section des heures hebdomadaires */
.weekly-hours-scroll .simplebar-scrollbar:before {
  opacity: 0.6 !important;
  background: #6c757d !important;
  transition: opacity 0.2s linear !important;
}

.weekly-hours-scroll .simplebar-scrollbar.simplebar-visible:before {
  opacity: 0.8 !important;
}

.weekly-hours-scroll .simplebar-scrollbar:hover:before {
  opacity: 1 !important;
  background: #495057 !important;
}

/* ============================================
   Media Query pour écrans 4K (2560px et plus)
   Taille de texte: 14px au lieu de 12px
   ============================================ */
@media (min-width: 2560px) {
  /* Taille de texte de base pour tout le document */
  html {
    font-size: 15px !important;
  }

  body {
    font-size: 15px !important;
  }

  /* Headers - Titres hiérarchiques */
  h1, .h1 {
    font-size: 28px !important;
  }

  h2, .h2 {
    font-size: 24px !important;
  }

  h3, .h3 {
    font-size: 20px !important;
  }

  h4, .h4 {
    font-size: 18px !important;
  }

  h5, .h5 {
    font-size: 16px !important;
  }

  h6, .h6 {
    font-size: 16px !important;
  }

  /* Tous les éléments de texte */
  p, span, div:not(.icon):not([class*=ri-]):not([class*=bi-]),
  a, li, td, th, label, input, textarea, select, button {
    font-size: 15px !important;
  }

  /* Placeholders */
  input::placeholder,
  textarea::placeholder,
  select::placeholder {
    font-size: 15px;
  }

  /* Tables */
  .table,
  .table td,
  .table th,
  .table-responsive,
  .dataTable {
    font-size: 15px !important;
  }

  /* Formulaires */
  .form-control,
  .form-select,
  .form-label,
  .form-check-label,
  .input-group-text,
  .form-text {
    font-size: 15px !important;
  }

  /* Boutons */
  .btn,
  .btn-primary,
  .btn-secondary,
  .btn-success,
  .btn-danger,
  .btn-warning,
  .btn-info,
  .btn-light,
  .btn-dark {
    font-size: 15px !important;
  }

  /* Cards */
  .card-body,
  .card-title,
  .card-text,
  .card-header,
  .card-footer {
    font-size: 15px !important;
  }

  /* Listes */
  .list-group-item,
  .list-unstyled li,
  .list-inline-item {
    font-size: 15px !important;
  }

  /* Navigation */
  .nav-link,
  .navbar-nav .nav-link,
  .dropdown-item {
    font-size: 15px !important;
  }

  /* Sidebar menu */
  .app-menu .menu-link,
  .app-menu .menu-title {
    font-size: 15px !important;
  }

  /* Modals */
  .modal-body,
  .modal-title,
  .modal-header,
  .modal-footer {
    font-size: 15px !important;
  }

  /* Alerts */
  .alert,
  .alert-heading {
    font-size: 15px !important;
  }

  /* Badges */
  .badge {
    font-size: 15px !important;
  }

  /* Tooltips et Popovers */
  .tooltip-inner,
  .popover-body {
    font-size: 15px !important;
  }

  /* Breadcrumbs */
  .breadcrumb-item {
    font-size: 15px !important;
  }

  /* Pagination */
  .page-link {
    font-size: 15px !important;
  }

  /* Accordéon */
  .accordion-button,
  .accordion-body {
    font-size: 15px !important;
  }

  /* Tabs */
  .nav-tabs .nav-link,
  .nav-pills .nav-link,
  .tab-content {
    font-size: 15px !important;
  }

  /* Toast notifications */
  .toast-body,
  .toast-header {
    font-size: 15px !important;
  }

  /* Progress bars */
  .progress-bar {
    font-size: 15px !important;
  }

  /* Spinners */
  .spinner-border,
  .spinner-grow {
    font-size: 15px !important;
  }

  /* Datepicker */
  .datepicker-inline {
    font-size: 15px !important;
  }

  .datepicker td,
  .datepicker th {
    font-size: 15px !important;
  }

  /* Full Calendar */
  .fc-event,
  .fc-daygrid-day-number,
  .fc-col-header-cell-cushion,
  .fc-event-title {
    font-size: 15px !important;
  }

  /* Select2 */
  .select2-container--default .select2-selection--single,
  .select2-container--default .select2-results__option {
    font-size: 15px !important;
  }

  /* SweetAlert2 */
  .swal2-popup,
  .swal2-title,
  .swal2-content {
    font-size: 15px !important;
  }

  /* Choices.js */
  .choices__inner,
  .choices__list--dropdown .choices__item {
    font-size: 15px !important;
  }

  /* Offcanvas */
  .offcanvas-body,
  .offcanvas-title {
    font-size: 15px !important;
  }

  /* Footer */
  footer,
  .footer {
    font-size: 15px !important;
  }

  /* Headers */
  .page-title-box h4,
  .page-title {
    font-size: 15px !important;
  }

  /* Stats et KPI cards */
  .stats-card .value,
  .kpi-value {
    font-size: 15px !important;
  }

  /* Notes et commentaires */
  .note-item,
  .comment-text {
    font-size: 15px !important;
  }

  /* Step number */
  .step-number {
    font-size: 15px !important;
  }
}