/*
 * Modern UI layer (safe overrides).
 * Scope: applied via nav- classes so we don't break legacy screens.
 */

:root {
  --wow-radius: 14px;
  --wow-border: rgba(34, 41, 47, 0.10);
  --wow-shadow: 0 10px 30px rgba(0, 0, 0, 0.06);
  --wow-shadow-sm: 0 6px 16px rgba(0, 0, 0, 0.06);
  --wow-muted: rgba(34, 41, 47, 0.65);
  --wow-bg-soft: rgba(0, 0, 0, 0.02);
}

/* Generic improvements */
.nav-immobilier .card,
.nav-immobilier .panel,
.nav-hrm .card,
.nav-hrm .panel,
.nav-suivifinancier .card,
.nav-suivifinancier .panel,
.nav-tva .card,
.nav-tva .panel {
  border-radius: var(--wow-radius);
  border: 1px solid var(--wow-border);
  box-shadow: var(--wow-shadow-sm);
}

.nav-immobilier .card-header,
.nav-hrm .card-header,
.nav-immobilier .panel-hdr,
.nav-hrm .panel-hdr,
.nav-suivifinancier .card-header,
.nav-suivifinancier .panel-hdr,
.nav-tva .card-header,
.nav-tva .panel-hdr {
  border-top-left-radius: var(--wow-radius);
  border-top-right-radius: var(--wow-radius);
}

.nav-immobilier .panel-hdr,
.nav-hrm .panel-hdr,
.nav-suivifinancier .panel-hdr,
.nav-tva .panel-hdr {
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.01), rgba(0, 0, 0, 0));
}

.nav-immobilier .subheader-title,
.nav-hrm .subheader-title,
.nav-suivifinancier .subheader-title,
.nav-tva .subheader-title {
  letter-spacing: -0.02em;
}

.nav-immobilier .subheader,
.nav-hrm .subheader,
.nav-suivifinancier .subheader,
.nav-tva .subheader {
  padding-bottom: 0.25rem;
}

.nav-immobilier .subheader .dropdown-menu,
.nav-hrm .subheader .dropdown-menu,
.nav-suivifinancier .subheader .dropdown-menu,
.nav-tva .subheader .dropdown-menu {
  border-radius: 14px;
  border: 1px solid var(--wow-border);
  box-shadow: var(--wow-shadow);
}

.nav-immobilier .subheader .dropdown-item i,
.nav-hrm .subheader .dropdown-item i,
.nav-suivifinancier .subheader .dropdown-item i,
.nav-tva .subheader .dropdown-item i {
  width: 18px;
  text-align: center;
}

.nav-immobilier .text-muted,
.nav-hrm .text-muted,
.nav-suivifinancier .text-muted,
.nav-tva .text-muted {
  color: var(--wow-muted) !important;
}

.nav-immobilier .table,
.nav-hrm .table,
.nav-suivifinancier .table,
.nav-tva .table {
  border-color: var(--wow-border);
}

.nav-immobilier .table thead th,
.nav-hrm .table thead th,
.nav-suivifinancier .table thead th,
.nav-tva .table thead th {
  background: var(--wow-bg-soft);
  border-bottom: 1px solid var(--wow-border);
  font-weight: 700;
}

.nav-immobilier .table-hover tbody tr:hover,
.nav-hrm .table-hover tbody tr:hover,
.nav-suivifinancier .table-hover tbody tr:hover,
.nav-tva .table-hover tbody tr:hover {
  background: rgba(54, 153, 255, 0.04);
}

/* Tabs */
.nav-immobilier .nav-tabs,
.nav-hrm .nav-tabs,
.nav-suivifinancier .nav-tabs,
.nav-tva .nav-tabs {
  border-bottom: 1px solid var(--wow-border);
}

.nav-immobilier .nav-tabs .nav-link,
.nav-hrm .nav-tabs .nav-link,
.nav-suivifinancier .nav-tabs .nav-link,
.nav-tva .nav-tabs .nav-link {
  border: 1px solid transparent;
  border-radius: 999px;
  padding: 0.55rem 0.9rem;
  color: var(--wow-muted);
}

.nav-immobilier .nav-tabs .nav-link:hover,
.nav-hrm .nav-tabs .nav-link:hover,
.nav-suivifinancier .nav-tabs .nav-link:hover,
.nav-tva .nav-tabs .nav-link:hover {
  background: rgba(0, 0, 0, 0.02);
}

.nav-immobilier .nav-tabs .nav-link.active,
.nav-hrm .nav-tabs .nav-link.active,
.nav-suivifinancier .nav-tabs .nav-link.active,
.nav-tva .nav-tabs .nav-link.active {
  background: rgba(54, 153, 255, 0.12);
  border-color: rgba(54, 153, 255, 0.12);
  color: #1f6feb;
  font-weight: 700;
}

/* Buttons */
.nav-immobilier .btn,
.nav-hrm .btn,
.nav-suivifinancier .btn,
.nav-tva .btn {
  border-radius: 10px;
}

.nav-immobilier .btn-primary,
.nav-hrm .btn-primary,
.nav-suivifinancier .btn-primary,
.nav-tva .btn-primary {
  box-shadow: 0 10px 20px rgba(54, 153, 255, 0.18);
}

/* Forms */
.nav-immobilier .form-control,
.nav-immobilier .form-select,
.nav-hrm .form-control,
.nav-hrm .form-select {
  border-radius: 12px;
  border-color: var(--wow-border);
}

.nav-immobilier .form-control:focus,
.nav-immobilier .form-select:focus,
.nav-hrm .form-control:focus,
.nav-hrm .form-select:focus {
  box-shadow: 0 0 0 0.2rem rgba(54, 153, 255, 0.12);
  border-color: rgba(54, 153, 255, 0.35);
}

/* HRM employee document table: make actions compact */
.nav-hrm .btn.btn-sm {
  padding: 0.35rem 0.55rem;
}

/* Dark theme tweaks */
html body.nav-immobilier .panel,
html body.nav-hrm .panel {
  /* In dark theme, existing admin.tpl overrides are strong; keep minimal here. */
}

/* Stock (Produits & services): DataTables toolbar alignment */
.nav-ps .dataTables_wrapper .dataTables_length label,
.nav-ps .dataTables_wrapper .dataTables_filter label {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin: 0;
}

.nav-ps .dataTables_wrapper .dataTables_length select {
  width: auto;
}

.nav-ps .dataTables_wrapper .dataTables_filter input {
  margin-left: 0 !important;
}
