@charset "UTF-8";
/*
__   __   _        _                        
\ \ / /__| |_ _ __| |_  __ _ _ _ _ __  __ _ 
 \ V / -_)  _| '_ \ ' \/ _` | '_| '  \/ _` |
  \_/\___|\__| .__/_||_\__,_|_| |_|_|_\__,_|
             |_|                            
*/
/*
Theme Name: Vetpharma.app
Author: Emmanuel Mutel
Author URI: https://www.sanpan.com
 */
/*
Vetpharma 23.04.2024 - .vtp- or --vtp-
*/
/* Local fonts
-------------------------------------------------- */
@font-face {
  font-family: "opensans";
  src: url("../webfonts/open-sans/OpenSans-Regular-webfont.woff") format("woff");
  font-weight: 400;
  font-style: normal;
}
@font-face {
  font-family: "opensans";
  src: url("../webfonts/open-sans/OpenSans-Semibold-webfont.woff") format("woff");
  font-weight: 600;
  font-style: normal;
}
@font-face {
  font-family: "roboto";
  src: url("../webfonts/roboto/Roboto-Medium-webfont.woff") format("woff");
  font-weight: 500;
  font-style: normal;
}
/* Bootstrap overrides css variables
-------------------------------------------------- */
:root {
  --bs-black: #000;
  --bs-white: #fff;
  --bs-gray: #6c757d;
  --bs-gray-dark: #343a40;
  --bs-gray-900: #161615;
  --bs-gray-800: #2d2d2b;
  --bs-gray-700: #555555;
  --bs-gray-600: #757575;
  --bs-gray-500: #A4A4A1;
  --bs-gray-400: #CCCCCA;
  --bs-gray-300: #E9E9E4;
  --bs-gray-200: #F3F3F2;
  --bs-gray-100: #f8f9fa;
  --bs-primary: var(--vtp-primary-color);
  --bs-secondary: var(--vtp-secondary-color);
  --bs-success: var(--vtp-presetcolor-success-darker);
  --bs-info: var(--vtp-presetcolor-info);
  --bs-warning: var(--vtp-presetcolor-warning);
  --bs-danger: var(--vtp-presetcolor-danger);
  --bs-light: var(--vtp-grey-100);
  --bs-dark: var(--vtp-grey-800);
  --bs-primary-rgb: 15, 103, 124;
  --bs-secondary-rgb: 16, 164, 181;
  --bs-success-rgb: 132, 184, 60;
  --bs-info-rgb: 109, 158, 223;
  --bs-warning-rgb: 255, 192, 48;
  --bs-danger-rgb: 211, 49, 63;
  --bs-light-rgb: 248, 249, 250;
  --bs-dark-rgb: 45, 45, 43;
  --bs-link-color: var(--vtp-primary-color);
  --bs-link-color-rgb: 24, 63, 120;
  --bs-link-decoration: underline;
  --bs-link-hover-color: var(--vtp-primary-color-extended-800);
  --bs-link-hover-color-rgb: 10, 88, 202;
  --bs-bg-opacity: 1;
  --bs-font-sans-serif: "Roboto", Arial, sans-serif;
  --bs-border-radius: 0.25rem;
  --bs-border-radius-sm: 0.15rem;
  --bs-border-radius-lg: 0.45rem;
  --bs-border-radius-xl: 1rem;
  --bs-border-radius-2xl: var(--bs-border-radius-xxl);
  --bs-border-radius-pill: 50rem;
}
:root .btn-primary {
  --bs-btn-color: #fff;
  --bs-btn-bg: var(--vtp-primary-color);
  --bs-btn-border-color: var(--vtp-primary-color);
  --bs-btn-hover-color: var(--vtp-primary-color-extended-700);
  --bs-btn-hover-bg: white;
  --bs-btn-hover-border-color: var(--vtp-primary-color-extended-700);
  --bs-btn-focus-shadow-rgb: 49, 132, 253;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: var(--vtp-primary-color-extended-700);
  --bs-btn-active-border-color: var(--vtp-primary-color-extended-700);
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #fff;
  --bs-btn-disabled-bg: var(--vtp-primary-color-extended-500);
  --bs-btn-disabled-border-color: var(--vtp-primary-color-extended-500);
  --bs-btn-disabled-opacity: 0.8 ;
}
:root .btn-secondary {
  --bs-btn-color: #fff;
  --bs-btn-bg: var(--vtp-secondary-color);
  --bs-btn-border-color: var(--vtp-secondary-color);
  --bs-btn-hover-color: var(--vtp-secondary-color);
  --bs-btn-hover-bg: white;
  --bs-btn-hover-border-color: var(--vtp-secondary-color);
  --bs-btn-focus-shadow-rgb: 130, 138, 145;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: var(--vtp-primary-color-extended-600);
  --bs-btn-active-border-color: var(--vtp-primary-color-extended-600);
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #fff;
  --bs-btn-disabled-bg: var(--vtp-primary-color-extended-400);
  --bs-btn-disabled-border-color: var(--vtp-primary-color-extended-400);
  --bs-btn-disabled-opacity: 0.8 ;
}
:root .btn-light {
  --bs-btn-color: var(--vtp-grey-700);
  --bs-btn-bg: #f8f9fa;
  --bs-btn-border-color: var(--vtp-grey-500);
  --bs-btn-hover-color: var(--vtp-grey-900);
  --bs-btn-hover-bg: var(--vtp-grey-300);
  --bs-btn-hover-border-color: #c6c7c8;
  --bs-btn-focus-shadow-rgb: 211, 212, 213;
  --bs-btn-active-color: var(--vtp-grey-900);
  --bs-btn-active-bg: #c6c7c8;
  --bs-btn-active-border-color: #babbbc;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #212529;
  --bs-btn-disabled-bg: var(--vtp-grey-400);
  --bs-btn-disabled-border-color: var(--vtp-grey-400);
  --bs-btn-disabled-opacity: 0.8 ;
}
:root .btn-dark {
  --bs-btn-color: #fff;
  --bs-btn-bg: var(--vtp-grey-800);
  --bs-btn-border-color: var(--vtp-grey-800);
  --bs-btn-hover-color: var(--vtp-grey-800);
  --bs-btn-hover-bg: var(--vtp-grey-200);
  --bs-btn-hover-border-color: var(--vtp-grey-800);
  --bs-btn-focus-shadow-rgb: 66, 70, 73;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: var(--vtp-grey-200);
  --bs-btn-active-border-color: var(--vtp-grey-800);
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: var(--vtp-grey-900);
  --bs-btn-disabled-bg: var(--vtp-grey-500);
  --bs-btn-disabled-border-color: var(--vtp-grey-500);
  --bs-btn-disabled-opacity: 0.8 ;
}
:root .btn-outline-dark {
  --bs-btn-color: var(--vtp-grey-700);
  --bs-btn-border-color: var(--vtp-grey-700);
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: var(--vtp-grey-700);
  --bs-btn-hover-border-color: var(--vtp-grey-700);
  --bs-btn-focus-shadow-rgb: 33, 37, 41;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: var(--vtp-grey-800);
  --bs-btn-active-border-color: var(--vtp-grey-800);
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #212529;
  --bs-btn-disabled-bg: var(--vtp-grey-400);
  --bs-btn-disabled-border-color: var(--vtp-grey-400);
  --bs-gradient: none;
}

/* Vetpharma css variables : prefix --vpt
-------------------------------------------------- */
:root {
  --vtp-primary-color: #183f78;
  --vtp-secondary-color: #4583da;
  --vtp-primary-color-extended-900: #081528;
  --vtp-primary-color-extended-800: #102a50;
  --vtp-primary-color-extended-700: #183f78;
  --vtp-primary-color-extended-600: #2054a0;
  --vtp-primary-color-extended-500: #2869c8;
  --vtp-primary-color-extended-400: #4583da;
  --vtp-primary-color-extended-300: #6d9de2;
  --vtp-primary-color-extended-200: #95b8ea;
  --vtp-primary-color-extended-100: #bdd3f2;
  --vtp-primary-color: #0d677d;
  --vtp-secondary-color: #0AA4B6;
  --vtp-primary-color-extended-900: #06272f;
  --vtp-primary-color-extended-800: #08303a;
  --vtp-primary-color-extended-700: #094858;
  --vtp-primary-color-extended-600: #0d677d;
  --vtp-primary-color-extended-500: #09859a;
  --vtp-primary-color-extended-400: #0AA4B6;
  --vtp-primary-color-extended-300: #5cc5d2;
  --vtp-primary-color-extended-200: #97DAE2;
  --vtp-primary-color-extended-100: #ace1e8;
  --vtp-additional-color: #d32407;
  --vtp-additional-color-darker: #9b1d07;
  --vtp-additional-color-lighter: #FA8572;
  --vtp-additional-color: #870058;
  --vtp-additional-color-darker: #29001a;
  --vtp-additional-color-lighter: #d20089;
  --vtp-preset-table-border: #80c0e3;
  --vtp-preset-table-background-even: #d7eef2;
  --vtp-preset-background-odd: #ecf8ff;
  --vtp-preset-table-th-background: #c5e2e6;
  --vtp-presetcolor-info-lighter: #8db8f3;
  --vtp-presetcolor-info: #6d9de2;
  --vtp-presetcolor-info-darker: #5189d8;
  --vtp-presetcolor-danger-lighter: #df626e;
  --vtp-presetcolor-danger: #d42b3c;
  --vtp-presetcolor-danger-darker: #af1524;
  --vtp-presetcolor-warning: #ffc107;
  --vtp-presetcolor-warning-lighter: #F8C482;
  --vtp-presetcolor-warning-darker: #D17106;
  --vtp-presetcolor-success: #84BA2E;
  --vtp-presetcolor-success-lighter: #B6D666;
  --vtp-presetcolor-success-darker: #3b5c07;
  --vtp-grey-900: #161615;
  --vtp-grey-800: #2d2d2b;
  --vtp-grey-700: #545454;
  --vtp-grey-600: #757575;
  --vtp-grey-500: #A4A4A1;
  --vtp-grey-400: #CCCCCA;
  --vtp-grey-300: #E9E9E4;
  --vtp-grey-200: #F3F3F2;
  --vtp-grey-100: #f8f9fa;
  --vtp-bg-light-300: #F6F3ED;
  --vtp-bg-light-200: #F3F3F2;
  --vtp-bg-light-100: #f8f9fa;
  --vtp-btn-disabled-color: #b3b3b3;
  --vtp-font-family-base: "opensans",
      arial,
      sans-serif;
  --vtp-font-family-secondary: "roboto",
      arial,
      sans-serif;
  --bs-body-font-family: var(--vpt-font-family-base);
  --vtp-style-block-gap: 2rem;
}

/* Generic styles
-------------------------------------------------- */
/*Body*/
html {
  scroll-behavior: smooth;
}

body {
  font-family: var(--vtp-font-family-base);
  font-weight: 400;
  color: var(--bs-gray-800);
  font-size: 1rem;
  line-height: 1.1875rem;
  background-color: var(--vtp-bg-light-200);
}

/* Typo */
h6,
.h6,
h5,
.h5,
h4,
.h4,
h3,
.h3,
h2,
.h2,
h1,
.h1 {
  margin-top: 0;
  margin-bottom: 0.5rem;
  font-weight: 500;
  line-height: 1.2;
  color: var(--bs-heading-color);
  font-family: var(--vtp-font-family-secondary);
}

h1,
.h1 {
  font-size: calc(1.375rem + 1.5vw);
}

@media (min-width: 1200px) {
  h1,
  .h1 {
    font-size: 2.35rem;
  }
}
h2,
.h2 {
  font-size: calc(1.325rem + 0.9vw);
  color: var(--vtp-additional-color);
}

@media (min-width: 1200px) {
  h2,
  .h2 {
    font-size: 1.9rem;
  }
}
h3,
.h3 {
  font-size: calc(1.3rem + 0.6vw);
}

@media (min-width: 1200px) {
  h3,
  .h3 {
    font-size: 1.65rem;
  }
}
h4,
.h4 {
  font-size: calc(1.275rem + 0.3vw);
}

@media (min-width: 1200px) {
  h4,
  .h4 {
    font-size: 1.35rem;
  }
}
h5,
.h5 {
  font-size: 1.15rem;
}

h6,
.h6 {
  font-size: 1rem;
}

h3 span,
.h3 span,
h2 span,
.h2 span,
h1 span,
.h1 span {
  color: var(--vtp-grey-700);
}

@media (min-width: 1200px) {
  .fs-1 {
    font-size: 2.35rem !important;
  }
  .fs-2 {
    font-size: 1.9rem !important;
  }
  .fs-3 {
    font-size: 1.65rem !important;
  }
  .fs-4 {
    font-size: 1.35rem !important;
  }
}
.fs-5 {
  font-size: 1.15rem !important;
}

.fs-6 {
  font-size: 1rem !important;
}

.fs-7 {
  font-size: 0.875rem !important;
}

/* links */
a {
  color: var(--bs-link-color);
}
a:hover, a:focus {
  text-decoration: none;
  color: var(--bs-link-hover-color);
}

/* Texts */
.text-primary {
  color: var(--bs-primary) !important;
}

.text-secondary {
  color: var(--bs-secondary) !important;
}

.text-success {
  color: var(--bs-success) !important;
}

.text-info {
  color: var(--bs-info) !important;
}

.text-warning {
  color: var(--bs-warning) !important;
}

.text-danger {
  color: var(--bs-danger) !important;
}

.text-light {
  color: var(--bs-light) !important;
}

.text-dark {
  color: var(--bs-dark) !important;
}

.text-bg-primary {
  color: #fff !important;
  background-color: RGBA(var(--bs-primary-rgb), var(--bs-bg-opacity, 1)) !important;
}

.text-bg-secondary {
  color: #fff !important;
  background-color: RGBA(var(--bs-secondary-rgb), var(--bs-bg-opacity, 1)) !important;
}

.text-bg-success {
  color: var(--bs-dark) !important;
  --bs-bg-opacity: 0.55;
  background-color: RGBA(var(--bs-success-rgb), var(--bs-bg-opacity, 1)) !important;
}

.text-bg-info {
  color: var(--bs-dark) !important;
  --bs-bg-opacity: 0.55;
  background-color: RGBA(var(--bs-info-rgb), var(--bs-bg-opacity, 1)) !important;
}

.text-bg-warning {
  color: var(--bs-dark) !important;
  background-color: RGBA(var(--bs-warning-rgb), var(--bs-bg-opacity, 1)) !important;
}

.text-bg-danger {
  color: #fff !important;
  background-color: RGBA(var(--bs-danger-rgb), var(--bs-bg-opacity, 1)) !important;
}

.text-bg-light {
  color: var(--bs-dark) !important;
  background-color: RGBA(var(--bs-light-rgb), var(--bs-bg-opacity, 1)) !important;
}

.text-bg-dark {
  color: #fff !important;
  background-color: RGBA(var(--bs-dark-rgb), var(--bs-bg-opacity, 1)) !important;
}

/* Backgrounds */
.bg-primary {
  color: #fff !important;
  --bs-bg-opacity: 1;
  background-color: rgba(var(--bs-primary-rgb), var(--bs-bg-opacity)) !important;
}

.bg-secondary {
  color: #fff !important;
  --bs-bg-opacity: 1;
  background-color: rgba(var(--bs-secondary-rgb), var(--bs-bg-opacity)) !important;
}

.bg-success {
  color: var(--bs-dark) !important;
  --bs-bg-opacity: 0.55;
  background-color: rgba(var(--bs-success-rgb), var(--bs-bg-opacity)) !important;
}

.bg-info {
  color: var(--bs-dark) !important;
  --bs-bg-opacity: 0.55;
  background-color: rgba(var(--bs-info-rgb), var(--bs-bg-opacity)) !important;
}

.bg-warning {
  color: var(--bs-dark) !important;
  --bs-bg-opacity: 1;
  background-color: rgba(var(--bs-warning-rgb), var(--bs-bg-opacity)) !important;
}

.bg-danger {
  color: #fff !important;
  --bs-bg-opacity: 1;
  background-color: rgba(var(--bs-danger-rgb), var(--bs-bg-opacity)) !important;
}

.bg-light {
  color: var(--bs-dark) !important;
  --bs-bg-opacity: 1;
  background-color: rgba(var(--bs-light-rgb), var(--bs-bg-opacity)) !important;
}

.bg-dark {
  color: #fff !important;
  --bs-bg-opacity: 1;
  background-color: rgba(var(--bs-dark-rgb), var(--bs-bg-opacity)) !important;
}

.bg-grey-200 {
  color: var(--bs-dark) !important;
  background-color: var(--vtp-grey-200) !important;
}

.bg-grey-300 {
  color: var(--bs-dark) !important;
  background-color: var(--vtp-grey-300) !important;
}

.bg-grey-400 {
  color: var(--bs-dark) !important;
  background-color: var(--vtp-grey-400) !important;
}

.bg-grey-500 {
  color: var(--bs-dark) !important;
  background-color: var(--vtp-grey-500) !important;
}

.bg-grey-600 {
  color: var(--vtp-grey-200) !important;
  background-color: var(--vtp-grey-600) !important;
}

.bg-grey-700 {
  color: var(--vtp-grey-200) !important;
  background-color: var(--vtp-grey-700) !important;
}

.bg-grey-800 {
  color: var(--vtp-grey-200) !important;
  background-color: var(--vtp-grey-800) !important;
}

.bg-grey-900 {
  color: var(--vtp-grey-200) !important;
  background-color: var(--vtp-grey-900) !important;
}

.bg-table-th {
  color: var(--vtp-primary-color) !important;
  background-color: var(--vtp-preset-table-th-background) !important;
}

/* Borders | maj */
@media (min-width: 576px) {
  .border-sm {
    border: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;
  }
}

@media (min-width: 768px) {
  .border-md {
    border: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;
  }
}

@media (min-width: 992px) {
  .border-lg {
    border: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;
  }
}

/* Buttons */
.btn {
  border-radius: var(--bs-border-radius-pill);
  margin-bottom: calc(var(--vtp-style-block-gap) * 0.25);
}
.btn [class*=fa-] {
  margin-right: 0.5rem;
}
@media (max-width: 767px) {
  .btn {
    font-size: calc(var(--bs-btn-font-size) * 1.15);
  }
}

.btn-xs,
.btn-group-xs > .btn {
  --bs-btn-padding-y: 0.25rem;
  --bs-btn-padding-x: 0.45rem;
  --bs-btn-font-size: 0.8rem;
  font-weight: 400 !important;
  --bs-btn-border-radius: var(--bs-border-radius-sm);
}

/*Tables*/
table tr th:not(:last-child) {
  border-right: 1px solid var(--vtp-bg-light-200);
}
table tr td:not(:last-child) {
  border-right: 1px solid var(--vtp-grey-300);
}
table tr:hover td:not(:last-child), table tr:focus td:not(:last-child) {
  border-right: 1px solid var(--vtp-grey-400);
}
table thead th {
  padding-top: calc(var(--vtp-style-block-gap) * 0.35) !important;
  padding-bottom: calc(var(--vtp-style-block-gap) * 0.35) !important;
  color: var(--vtp-primary-color) !important;
  background-color: var(--vtp-preset-table-th-background) !important;
}
table tbody td {
  padding-top: calc(var(--vtp-style-block-gap) * 0.3);
  padding-bottom: calc(var(--vtp-style-block-gap) * 0.3);
}
table tbody td > [class*=fa-] {
  width: 22px;
  color: var(--vtp-grey-700);
  font-size: 1.1875rem;
}
table tbody td .icon-action [class*=fa-] {
  font-size: 1.5rem;
}
@media (min-width: 768px) {
  table tbody td .icon-action [class*=fa-] {
    font-size: 1.1875rem;
  }
}
table tbody td .badge {
  --bs-badge-padding-x: 0.65em;
  --bs-badge-padding-y: 0.55em;
  --bs-badge-font-size: 0.85em;
  --bs-badge-font-weight: 500;
}
table tbody td .badge.text-bg-success {
  background-color: var(--vtp-presetcolor-success-lighter) !important;
}
table > :not(caption) > * > * {
  padding-top: calc(var(--vtp-style-block-gap) * 0.25);
  padding-bottom: calc(var(--vtp-style-block-gap) * 0.25);
  color: var(--vtp-primary-color);
  background-color: var(--vtp-primary-color);
  border-bottom-width: var(--bs-border-width);
  box-shadow: inset 0 0 0 9999px var(--bs-table-bg-state, var(--bs-table-bg-type, var(--bs-table-accent-bg)));
}
table .table-group-divider {
  border-top: calc(var(--bs-border-width) * 2) solid currentcolor;
}

/*formulaires*/
input[type=radio],
input[type=checkbox] {
  margin-top: 2px;
}

form {
  --bs-border-color: var(--vtp-primary-color-extended-300);
  font-weight: normal;
  font-size: 1rem;
}

fieldset {
  margin: 0px 0 0px 0;
  margin: 0rem 0 0rem 0;
  padding: 20px 0 20px 0;
  padding: 1.25rem 0 1.25rem 0;
  margin-bottom: calc(var(--vtp-style-block-gap) * 0.85);
  border: 1px solid var(--vtp-grey-400);
  border-radius: var(--bs-border-radius-sm);
  padding: calc(var(--vtp-style-block-gap) * 0.5);
}
fieldset h2,
fieldset h3,
fieldset h4,
fieldset .h2,
fieldset .h3,
fieldset .h4 {
  margin: 10px 0 10px 0;
  margin: 0.625rem 0 0.625rem 0;
}

label,
.label {
  font-weight: 600;
  color: var(--vtp-grey-700);
  margin-bottom: 6px;
}
label.form-check-label,
.label.form-check-label {
  margin-bottom: 7px;
}

.form-label {
  font-weight: 600;
  margin-bottom: 0.35rem;
}

.form-check-inline label.form-check-label,
.form-check-inline .label.form-check-label {
  margin-bottom: 0px;
}

input + .form-check-label {
  font-weight: 400;
}

legend,
.legend {
  float: none;
  text-align: left;
  margin-bottom: 1rem;
  margin-top: 0;
  padding: calc(var(--vtp-style-block-gap) * 0.05) calc(var(--vtp-style-block-gap) * 0.25);
  width: auto;
  font-size: calc(var(--bs-body-font-size) * 1.1);
  font-weight: 400;
  letter-spacing: -0.5px;
  line-height: 1.25rem;
}
legend.label,
.legend.label {
  color: var(--vtp-grey-600);
  background-color: transparent;
  padding: 0;
  margin-bottom: 1rem;
  font-weight: 600;
  font-size: calc(var(--bs-body-font-size) * 1.2);
}

form legend,
form .legend {
  background-color: var(--vtp-grey-600);
  color: white;
}

ul {
  margin: 10px 0 20px 0;
  padding-left: 1rem;
}
ul li::before {
  display: none;
}

input[type=text],
input[type=password],
input[type=email],
input[type=search],
input[type=url],
select,
textarea {
  color: var(--vtp-grey-700);
}

::-moz-placeholder {
  font-size: 0.875rem;
}

::placeholder {
  font-size: 0.875rem;
}

.btn,
button,
button[type=button],
button[type=reset],
button[type=submit],
input[type=button],
input[type=reset],
input[type=submit] {
  font-weight: 600;
}
.btn.btn-fluid,
button.btn-fluid,
button[type=button].btn-fluid,
button[type=reset].btn-fluid,
button[type=submit].btn-fluid,
input[type=button].btn-fluid,
input[type=reset].btn-fluid,
input[type=submit].btn-fluid {
  width: 100%;
  margin-left: 0;
  margin-right: 0;
}

input[type=radio],
input[type=checkbox] {
  margin-top: 2px;
}

.has-success input[type=text],
.has-success input[type=password],
.has-success input[type=email],
.has-success input[type=search],
.has-success input[type=url],
.has-success select,
.has-success textarea, .has-success.radio ul, .has-success.radio checkbox,
.has-error input[type=text],
.has-error input[type=password],
.has-error input[type=email],
.has-error input[type=search],
.has-error input[type=url],
.has-error select,
.has-error textarea,
.has-error.radio ul,
.has-error.radio checkbox {
  border-width: 1px;
  border-style: solid;
  padding-right: 40px;
}
.has-success.radio ul, .has-success.checkbox-tools ul,
.has-error.radio ul,
.has-error.checkbox-tools ul {
  padding: 5px 40px 5px 10px;
}
.has-success [class*=fa-],
.has-error [class*=fa-] {
  font-size: 1.25rem;
  margin-left: 10px;
}
.has-success input + .fa,
.has-success select + .fa,
.has-success textarea + .fa,
.has-error input + .fa,
.has-error select + .fa,
.has-error textarea + .fa {
  position: absolute;
  top: 28px;
  right: 25px;
}
@media (max-width: 991px) {
  .has-success input + .fa,
  .has-success select + .fa,
  .has-success textarea + .fa,
  .has-error input + .fa,
  .has-error select + .fa,
  .has-error textarea + .fa {
    top: 30px;
  }
}

.text-error {
  display: block;
  clear: both;
  line-height: normal;
}

form [class*=bg-] {
  padding: calc(var(--vtp-style-block-gap) * 0.8);
  border-radius: var(--bs-border-radius-sm);
}

.form-control {
  color: var(--vtp-grey-700) !important;
  border-radius: 0.25rem;
}

.form-control:disabled,
.form-control[readonly] {
  cursor: not-allowed;
}
.form-control:disabled:hover, .form-control:disabled:focus,
.form-control[readonly]:hover,
.form-control[readonly]:focus {
  cursor: not-allowed;
}

.input-group .form-control {
  border-radius: 0.25rem;
}
.input-group button,
.input-group .btn {
  margin-bottom: 0;
  border-color: var(--bs-border-color);
}
.input-group > :not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback) {
  border-top-right-radius: var(--bs-border-radius);
  border-bottom-right-radius: var(--bs-border-radius);
  font-size: var(--bs-btn-font-size);
}

::-moz-placeholder {
  color: var(--vtp-grey-700) !important;
  font-family: var(--vtp-font-family-base);
}

::placeholder {
  color: var(--vtp-grey-700) !important;
  font-family: var(--vtp-font-family-base);
}

.form-control:disabled,
.form-control[readonly] {
  cursor: not-allowed;
}
.form-control:disabled:hover, .form-control:disabled:focus,
.form-control[readonly]:hover,
.form-control[readonly]:focus {
  cursor: not-allowed;
  box-shadow: none;
  border-color: var(--vtp-grey-400) !important;
}

.invalid-feedback {
  background-color: var(--bs-form-invalid-color);
  color: white;
  padding: 0.15em 0.25em;
}

/* password show / hide*/
.input-group-text .show-hide-pw {
  color: var(--vtp-grey-600);
}

.form-label {
  font-weight: 600;
  margin-bottom: 0.35rem;
}

.form-check-inline {
  min-height: auto;
}
.form-check-inline input[type=radio],
.form-check-inline input[type=checkbox] {
  margin-top: 1px;
  margin-bottom: 0;
}

/* helpers */
@media (min-width: 576px) {
  .sr-sm-only {
    border: 0;
    clip: rect(1px, 1px, 1px, 1px);
    -webkit-clip-path: inset(50%);
    clip-path: inset(50%);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute !important;
    width: 1px;
    word-wrap: normal !important;
    word-break: normal;
  }
  .sr-sm-only:focus {
    background-color: #f1f1f1;
    border-radius: 3px;
    box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
    clip: auto !important;
    -webkit-clip-path: none;
    clip-path: none;
    color: #21759b;
    display: block;
    font-size: 14px;
    font-size: 0.875rem;
    font-weight: 700;
    height: auto;
    right: 5px;
    line-height: normal;
    padding: 15px 23px 14px;
    text-decoration: none;
    top: 5px;
    width: auto;
    z-index: 100000;
  }
}

@media (min-width: 768px) {
  .sr-md-only {
    border: 0;
    clip: rect(1px, 1px, 1px, 1px);
    -webkit-clip-path: inset(50%);
    clip-path: inset(50%);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute !important;
    width: 1px;
    word-wrap: normal !important;
    word-break: normal;
  }
  .sr-md-only:focus {
    background-color: #f1f1f1;
    border-radius: 3px;
    box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
    clip: auto !important;
    -webkit-clip-path: none;
    clip-path: none;
    color: #21759b;
    display: block;
    font-size: 14px;
    font-size: 0.875rem;
    font-weight: 700;
    height: auto;
    right: 5px;
    line-height: normal;
    padding: 15px 23px 14px;
    text-decoration: none;
    top: 5px;
    width: auto;
    z-index: 100000;
  }
}

/* layout styles
-------------------------------------------------- */
body {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}

#app {
  display: flex;
  flex-direction: column;
  height: 100%;
}

main {
  position: relative;
  display: flex;
  flex-direction: column;
  flex: 1 auto;
  margin-bottom: auto;
}
main .content-wrapper {
  flex: 1;
  border-top: 1px solid var(--vtp-primary-color-extended-100);
  padding-top: calc(var(--vtp-style-block-gap) * 0.5);
}
@media (min-width: 576px) {
  main .content-wrapper {
    padding-left: 0;
    padding-right: 0;
  }
}

footer {
  padding: calc(var(--vtp-style-block-gap) * 0.5) 0;
  border-top: 1px solid var(--vtp-primary-color-extended-100);
  text-align: center;
}

/* Grid */
.row > * {
  margin-top: calc(var(--bs-gutter-y) * 0.25);
  margin-bottom: var(--bs-gutter-y);
}

/* layout mobiles styles
-------------------------------------------------- */
.vtp-mobile {
  max-width: 480px;
  margin: 0 auto;
  height: calc(100vh - 60px);
  flex-direction: column;
}

.vtp-mobile-nav {
  max-width: 480px;
  margin: 0 auto;
  padding: 0;
  border-top: 1px solid var(--vtp-grey-300);
}
.vtp-mobile-nav .container-fluid {
  padding: 0;
}
.vtp-mobile-nav .navbar-nav {
  width: 100%;
  height: 100%;
  margin: 0;
  display: flex;
}
.vtp-mobile-nav .navbar-nav .nav-item {
  height: 100%;
  flex: 1;
  text-align: center;
}
.vtp-mobile-nav .navbar-nav .nav-item .nav-link {
  padding: 0.75rem;
  color: var(--vtp-primary-color);
}
@media (max-width: 319px) {
  .vtp-mobile-nav .navbar-nav .nav-item .nav-link {
    padding: 0.65rem;
  }
}
.vtp-mobile-nav .navbar-nav .nav-item .nav-link.active, .vtp-mobile-nav .navbar-nav .nav-item .nav-link:hover, .vtp-mobile-nav .navbar-nav .nav-item .nav-link:focus {
  color: var(--vtp-additional-color);
  background-color: var(--vtp-grey-300);
}
.vtp-mobile-nav .navbar-nav .nav-item [class*=fa-] {
  font-size: 2.125rem;
}
@media (max-width: 319px) {
  .vtp-mobile-nav .navbar-nav .nav-item [class*=fa-] {
    font-size: 1.75rem;
  }
}

.vtp-mobile-content {
  padding: 0.5rem 0.5rem calc(60px + 0.5rem) 0.5rem;
  flex: 1;
}

.vtp-mobile-actions {
  width: 100%;
  padding-left: calc(var(--bs-gutter-x) * 1.5);
  padding-right: calc(var(--bs-gutter-x) * 1.5);
}

/* Modules / composants styles
-------------------------------------------------- */
/* 
- Preloader
- Navigation
- Login
- Breadcrumb
- Titles (pages / sections)
- header Cartridge
- Filters (specifics input)
- Alerts
- spinners
- Toasts
- Badges
- Tooltips
- Progress bar
- Switches (Checkbox input)
- Modales
- Dashboard cards
- Data cards
- Table cards
- Table List / details
- List
- Pagination
- toggle btn
- Tabs
- Accordions
- Drag & Drop / transferts
- Numeric Keyboard (mobile)
- Sticky Footer action
- Autocomplete / Input search 

*/
/* Preloader */
.preloader {
  height: 100vh;
  background-color: var(--vtp-grey-200);
}
.preloader-wrapper {
  position: relative;
}

/* Navigation */
.vtp-sub-nav {
  padding-top: calc(var(--vtp-style-block-gap) * 0.2);
  padding-bottom: calc(var(--vtp-style-block-gap) * 0.2);
}
.vtp-sub-nav .navbar-brand {
  display: block;
  width: 135px;
  height: 30px;
  box-sizing: content-box;
  margin-left: 0rem;
  margin-right: 0.5rem;
  padding-left: 15px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.vtp-sub-nav .navbar-brand img {
  height: 30px;
}
@media (max-width: 767px) {
  .vtp-sub-nav .navbar-brand {
    width: auto;
    padding: 0;
    margin: 0.5rem auto;
  }
  .vtp-sub-nav .navbar-brand img {
    height: 40px;
  }
}
.vtp-sub-nav .navbar-profile {
  position: relative;
  align-items: center;
}
@media (max-width: 767px) {
  .vtp-sub-nav .navbar-profile {
    flex-direction: row;
    width: 100%;
    justify-content: flex-start;
    align-items: flex-start;
    border-top: 1px solid var(--vtp-grey-400);
    margin-top: 0.5rem;
    padding-top: 0.5rem;
  }
  .vtp-sub-nav .navbar-profile .nav-link-item {
    position: absolute;
    top: -1000rem;
    left: -1000rem;
  }
}
.vtp-sub-nav .navbar-profile .nav-item.vpt-nav-item-btn .nav-link-item {
  position: absolute;
  top: -1000rem;
  left: -1000rem;
}
.vtp-sub-nav .navbar-profile .nav-item.vpt-nav-item-btn [class*=fa-] {
  margin: 0;
}
.vtp-sub-nav .navbar-profile .nav-item .btn {
  --bs-btn-padding-x: 0.65rem;
  margin: calc(var(--vtp-style-block-gap) * 0.1) 0 calc(var(--vtp-style-block-gap) * 0.1) calc(var(--vtp-style-block-gap) * 0.25);
}
@media (max-width: 767px) {
  .vtp-sub-nav .navbar-profile .vtp-nav-item-profile {
    margin-right: auto;
    position: initial;
  }
}
.vtp-sub-nav .navbar-profile .vtp-nav-item-profile.dropdown .dropdown-menu {
  width: 100%;
}
@media (max-width: 767px) {
  .vtp-sub-nav .navbar-profile .vtp-nav-item-profile.dropdown .dropdown-menu {
    position: absolute;
    width: 100%;
  }
}
@media (max-width: 767px) {
  .vtp-sub-nav .navbar-profile .vtp-nav-item-profile.dropdown .dropdown-menu .dropdown-item {
    padding: calc(var(--bs-dropdown-item-padding-y) * 3) var(--bs-dropdown-item-padding-x);
  }
}
.vtp-sub-nav .navbar-profile .vtp-nav-item-profile .nav-link {
  display: flex;
  align-items: flex-start;
  flex-direction: row;
  background-color: var(--vtp-grey-300);
  padding-right: var(--bs-navbar-nav-link-padding-x);
  padding-left: var(--bs-navbar-nav-link-padding-x);
  margin-left: 0;
  border: 1px solid white;
  font-size: 0.875rem;
}
@media (max-width: 767px) {
  .vtp-sub-nav .navbar-profile .vtp-nav-item-profile .nav-link {
    font-size: 1.125rem;
  }
}
@media (max-width: 575px) {
  .vtp-sub-nav .navbar-profile .vtp-nav-item-profile .nav-link::before {
    display: inline-block;
    line-height: normal;
    margin: 0.25rem 0.25rem 0;
    font-family: "Font Awesome 6 Free";
    font-weight: 400;
    font-size: 1.25rem;
    content: "\f007";
    color: var(--vtp-grey-700);
  }
}
.vtp-sub-nav .navbar-profile .vtp-nav-item-profile .nav-link .nav-link-item {
  font-weight: 400;
  display: block;
  position: relative;
  top: auto;
  left: auto;
  margin: 0.1rem 0;
  display: flex;
  align-items: baseline;
  color: var(--vtp-grey-700);
}
.vtp-sub-nav .navbar-profile .vtp-nav-item-profile .nav-link .nav-link-item.vtp-nav-link-structure {
  font-weight: 600;
  color: var(--vtp-grey-700);
}
@media (max-width: 575px) {
  .vtp-sub-nav .navbar-profile .vtp-nav-item-profile .nav-link .nav-link-item:not(.vtp-nav-link-structure) {
    position: absolute;
    top: -1000px;
    left: -1000px;
  }
}
.vtp-sub-nav .navbar-profile .vtp-nav-item-profile .nav-link:hover, .vtp-sub-nav .navbar-profile .vtp-nav-item-profile .nav-link:focus {
  background-color: white;
  color: var(--vtp-primary-color-extended-500);
  border: 1px solid var(--vtp-primary-color-extended-500);
}
.vtp-sub-nav .navbar-profile .vtp-nav-item-profile .nav-link:hover::before, .vtp-sub-nav .navbar-profile .vtp-nav-item-profile .nav-link:focus::before {
  font-weight: 700;
  color: var(--vtp-primary-color-extended-500);
}
.vtp-sub-nav .navbar-profile .vtp-nav-item-profile .nav-link:hover .nav-link-item, .vtp-sub-nav .navbar-profile .vtp-nav-item-profile .nav-link:focus .nav-link-item {
  color: var(--vtp-primary-color-extended-500);
}
.vtp-sub-nav .navbar-profile .vtp-nav-item-profile [class*=fa-] {
  margin: 0;
  font-size: 1rem;
}
@media (max-width: 767px) {
  .vtp-sub-nav .navbar-profile .vtp-nav-item-profile [class*=fa-] {
    font-size: 1.125rem;
  }
}
.vtp-sub-nav .navbar-profile .vtp-nav-item-profile [class*=fa-].btn {
  padding: var(--bs-btn-padding-y) var(--bs-btn-padding-x);
}
.vtp-sub-nav .navbar-profile .vtp-nav-item-profile .dropdown-toggle::after {
  display: none;
}
@media (max-width: 575px) {
  .vtp-sub-nav .vtp-sub-nav-login {
    text-align: right;
  }
}
.vtp-sub-nav .vtp-sub-nav-login .btn:hover, .vtp-sub-nav .vtp-sub-nav-login .btn:focus {
  background-color: var(--vtp-grey-900);
  border-color: var(--vtp-grey-900);
  color: white;
}

.vtp-main-nav {
  padding-top: calc(var(--vtp-style-block-gap) * 0.5);
  align-items: flex-start;
}
.vtp-main-nav > .container {
  padding: 0;
}
.vtp-main-nav .vtp-main-navbar {
  align-items: flex-start;
}
@media (max-width: 575px) {
  .vtp-main-nav .vtp-main-navbar.navbar-collapse {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }
}
@media (min-width: 992px) {
  .vtp-main-nav {
    padding-bottom: calc(var(--vtp-style-block-gap) * 0.5);
  }
}
@media (max-width: 991px) {
  .vtp-main-nav {
    padding: 0;
  }
}
.vtp-main-nav .navbar-nav .nav-link {
  padding: 0.25rem 0;
  text-decoration: none;
}
@media (min-width: 992px) {
  .vtp-main-nav .navbar-nav .nav-link {
    padding-right: 0;
    padding-left: 0;
    margin: 0 0.5rem;
  }
}
@media (min-width: 992px) {
  .vtp-main-nav .navbar-nav .nav-item {
    max-width: 100px;
    text-align: center;
    display: flex;
  }
}
@media (min-width: 992px) {
  .vtp-main-nav .admin-container {
    margin-left: auto;
  }
}
.vtp-main-nav .admin-container .nav-item {
  color: var(--vtp-primary-color);
}
@media (min-width: 992px) {
  .vtp-main-nav .admin-container .nav-item {
    max-width: none;
    text-align: left;
    display: block;
  }
}
.vtp-main-nav .admin-container .nav-item .icon-action {
  font-size: 1.375rem;
}
.vtp-main-nav .admin-container .nav-item .nav-link-item {
  display: none;
}
@media (max-width: 991px) {
  .vtp-main-nav .admin-container .nav-item .nav-link-item {
    display: block;
  }
}
.vtp-main-nav .icon-action {
  font-size: 1.25rem;
}
.vtp-main-nav span.vtp-main-nav-link-container {
  display: flex;
  flex-direction: column;
  align-items: center;
}
@media (max-width: 991px) {
  .vtp-main-nav span.vtp-main-nav-link-container {
    align-items: flex-start;
  }
}
.vtp-main-nav .vtp-main-nav-item .nav-link {
  font-weight: normal;
  margin-bottom: 0;
  line-height: 1;
  font-size: 0.9375rem;
  color: var(--vtp-primary-color);
}
.vtp-main-nav .vtp-main-nav-item .nav-link:is(h1, h2, h3, h4, h5, h6) {
  font-weight: normal;
  margin-bottom: 0;
  margin-top: 0;
  line-height: 1;
  font-size: 0.9375rem;
  color: var(--vtp-primary-color);
}
@media (max-width: 991px) {
  .vtp-main-nav .vtp-main-nav-item .nav-link {
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
    border-bottom: 2px solid var(--vtp-primary-color-extended-200);
    font-size: 1.125rem;
  }
}
.vtp-main-nav .nav-link {
  border-bottom: 2px solid transparent;
}
.vtp-main-nav .nav-link .vtp-main-nav-link-container i {
  transition: all 0.15s ease-in-out;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 2px solid var(--vtp-primary-color-extended-300);
  margin-bottom: 0.25rem;
  padding: 1rem;
  text-align: center;
  font-size: 1.375rem;
  width: 55px;
  height: 55px;
  border-radius: 55px;
  box-shadow: none;
}
.vtp-main-nav .nav-link .vtp-main-nav-link-container i::before {
  color: var(--vtp-primary-color-extended-300);
}
.vtp-main-nav .nav-link .vtp-main-nav-link-container i:hover::before, .vtp-main-nav .nav-link .vtp-main-nav-link-container i:focus::before {
  color: var(--vtp-primary-color-extended-600);
}
@media (max-width: 991px) {
  .vtp-main-nav .nav-link .vtp-main-nav-link-container i {
    display: none;
  }
}
.vtp-main-nav .nav-link.active {
  border-bottom-color: var(--vtp-primary-color);
}
.vtp-main-nav .nav-link.active .vtp-main-nav-link-container i {
  border-color: var(--vtp-primary-color);
  background-color: var(--vtp-primary-color);
  color: white;
  border-width: 2px !important;
}
.vtp-main-nav .nav-link.active .vtp-main-nav-link-container i::before {
  color: white;
}
.vtp-main-nav .nav-link:hover, .vtp-main-nav .nav-link:focus {
  transition: all 0.3s ease-in-out 0s;
  border-bottom-color: var(--vtp-primary-color);
}
@media (max-width: 991px) {
  .vtp-main-nav .nav-link:hover, .vtp-main-nav .nav-link:focus {
    background-color: var(--vtp-primary-color-extended-100);
  }
}
.vtp-main-nav .nav-link:hover .vtp-main-nav-link-container i, .vtp-main-nav .nav-link:focus .vtp-main-nav-link-container i {
  border-color: var(--vtp-primary-color);
  background-color: var(--vtp-primary-color);
  color: white;
}
.vtp-main-nav .nav-link:hover .vtp-main-nav-link-container i::before, .vtp-main-nav .nav-link:focus .vtp-main-nav-link-container i::before {
  transition: all 0.3s ease-in-out 0s;
  color: white;
}
.vtp-main-nav .admin-container .nav-link {
  border-bottom: none;
}
.vtp-main-nav .admin-container .nav-link.dropdown-toggle {
  padding: 0;
}
@media (max-width: 991px) {
  .vtp-main-nav .admin-container .nav-link.dropdown-toggle {
    padding: 0.75rem 0;
  }
}
.vtp-main-nav .admin-container .nav-link.dropdown-toggle::after {
  margin: 0.5rem auto 0;
  content: "";
  border-top: 0.5em solid;
  border-right: 0.5em solid transparent;
  border-bottom: 0;
  border-left: 0.5em solid transparent;
  width: 12px;
  display: block;
}

.navbar-toggler {
  padding: 0.25rem 0.75rem 0.5rem;
  margin: 0.75rem 0.5rem 0.5rem;
  font-size: 1.25rem;
  line-height: 1;
  background-color: transparent;
  border: none;
  color: var(--vtp-secondary-color-darker);
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
@media (max-width: 991px) {
  .navbar-toggler {
    padding: 0.25rem 0.25rem 0.25rem 0;
    margin: 0.75rem 0.5rem 0.5rem 0;
  }
}
@media (max-width: 575px) {
  .navbar-toggler {
    margin-left: 0.75rem;
  }
}
.navbar-toggler[aria-expanded=true] {
  margin-bottom: 1rem;
  color: var(--vtp-secondary-color-darker);
}
.navbar-toggler .navbar-toggler-icon {
  color: transparent;
}
.navbar-toggler .navbar-toggler-icon::before {
  display: inline-block;
  line-height: normal;
  margin-right: 0;
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  font-size: 26px;
  color: var(--vtp-secondary-color-darker);
  content: "\f0c9";
}
.navbar-toggler[aria-expanded=true] .navbar-toggler-icon {
  color: transparent;
}
.navbar-toggler[aria-expanded=true] .navbar-toggler-icon::before {
  content: "\f00d";
}

.dropdown-item {
  --bs-dropdown-link-active-bg: var(--vtp-primary-color);
  --bs-dropdown-link-hover-bg: var(--vtp-primary-color-extended-100);
}
@media (max-width: 767px) {
  .dropdown-item {
    padding: calc(var(--bs-dropdown-item-padding-y) * 3) var(--bs-dropdown-item-padding-x);
  }
}
.dropdown-item.active {
  background-color: var(--bs-dropdown-link-active-bg);
}

/* End : Navigation */
/*LOGIN*/
.login {
  height: 100vh;
  background-color: var(--vtp-grey-200);
}
.login .login-wrapper {
  position: relative;
  background-color: white;
  max-width: 480px;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.15);
}
@media (min-width: 992px) {
  .login .login-wrapper .login-logo {
    display: block;
    position: absolute;
    top: 0;
    margin-left: calc(50% - 150px);
  }
}
.login picture {
  position: relative;
  display: block;
}
.login picture figcaption {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  font-size: 0.75rem;
  line-height: 0.9375rem;
  padding: 10px;
  background-color: rgba(255, 255, 255, 0.45);
}
.login-form .btn {
  width: 100%;
}
.login-form .form-check label {
  font-weight: 400;
}
.login-form .valid-feedback,
.login-form .invalid-feedback {
  font-size: 0.875rem;
}
.login-with-picture .login-wrapper {
  max-width: 1140px;
}

/*Breadcrumb*/
nav[aria-label=breadcrumb] {
  padding-top: calc(var(--vtp-style-block-gap) * 0.25);
  padding-bottom: calc(var(--vtp-style-block-gap) * 0.25);
  border-bottom: 1px solid var(--vtp-primary-color-extended-100);
  margin-bottom: calc(var(--vtp-style-block-gap) * 1.25);
  margin-top: calc(var(--vtp-style-block-gap) * -0.5);
}
nav[aria-label=breadcrumb] > a {
  display: inline-block;
  padding-top: calc(var(--vtp-style-block-gap) * 0.2);
  padding-bottom: calc(var(--vtp-style-block-gap) * 0.2);
}

.breadcrumb {
  margin: 0;
}
.breadcrumb-item {
  padding-top: calc(var(--vtp-style-block-gap) * 0.2);
  padding-bottom: calc(var(--vtp-style-block-gap) * 0.2);
}

/*Navigation retour N+X*/
@media (max-width: 767px) {
  .nav-content-back:not(:focus):not(:focus-within) {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
  }
}

/*Pages title*/
/*Sections Title*/
.section-title {
  display: inline-block;
  font-size: 1.1875rem;
  line-height: 1.5rem;
  padding: 0.1rem 0.5rem;
}
@media (max-width: 767px) {
  .section-title {
    display: block;
    font-size: 1.375rem;
    line-height: 1.625rem;
    padding: 0.35rem 0.5rem;
  }
}
.section-title.bg-dark {
  background-color: var(--vtp-additional-color) !important;
}
.section-title.bg-dark > * {
  color: #fff !important;
}
.section-title.bg-dark .section-subtitle {
  background-color: var(--vtp-grey-400) !important;
  color: var(--vtp-grey-800) !important;
}
@media (max-width: 767px) {
  .section-title.bg-dark .section-subtitle {
    display: block;
  }
}
.section-title.bg-dark-subtle {
  color: var(--vtp-grey-800) !important;
  background-color: var(--vtp-grey-400) !important;
}

.section-subtitle {
  display: inline-block;
  font-size: 1.1875rem;
  line-height: 1.5rem;
  font-weight: 400;
  padding: 0.1rem 0.5rem;
  background-color: var(--vtp-grey-400);
  color: var(--vtp-grey-800);
}
@media (max-width: 767px) {
  .section-subtitle {
    display: block;
    padding: 0.35rem 0.5rem;
  }
}

/*header cartridge*/
.heading-cartridge {
  border: 1px solid var(--vtp-grey-400);
  border-radius: var(--bs-border-radius-sm);
  background-color: white;
  box-shadow: var(--bs-box-shadow-sm);
}
.heading-cartridge-header {
  background-color: var(--vtp-grey-300);
  padding: 0.5rem 0.5rem 0.5rem 1rem;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
@media (max-width: 767px) {
  .heading-cartridge-header {
    padding: 0.75rem 0.5rem;
  }
}
.heading-cartridge-title {
  font-size: 1.25rem;
  line-height: 1.5rem;
  margin: 0;
}
.heading-cartridge-content {
  padding: 0.5rem 0;
  height: 100%;
}
@media (max-width: 767px) {
  .heading-cartridge-content {
    padding: 0.75rem 0.5rem;
  }
}
.heading-cartridge-content .list-group-item {
  border: none;
  padding: calc(var(--bs-list-group-item-padding-y) * 0.5) var(--bs-list-group-item-padding-x);
}
.heading-cartridge-options {
  padding: 0.75rem 0.5rem;
  height: 100%;
  display: flex;
  align-items: center;
}
@media (min-width: 768px) {
  .heading-cartridge-options {
    border-left: 1px solid var(--vtp-primary-color-extended-200);
    font-size: 0.875rem;
  }
}
@media (max-width: 767px) {
  .heading-cartridge-options {
    border-top: 1px solid var(--vtp-primary-color-extended-200);
  }
}

/* Filters (specifics input) */
.filters-container {
  display: block;
  padding: calc(var(--vtp-style-block-gap) * 0.25);
  margin-top: calc(var(--vtp-style-block-gap));
  border: 1px solid var(--vtp-grey-400);
  border-radius: var(--bs-border-radius-sm);
}

.input-action {
  position: relative;
}
.input-action .input-action-icon {
  position: absolute;
  z-index: 1;
  top: 0;
  right: 0;
  font-size: 1.25rem !important;
  padding: 0.5rem;
  color: var(--vtp-grey-600);
}
.input-action .input-action-btn {
  position: absolute;
  z-index: 10;
  top: 0;
  right: 0;
  display: block;
  padding: 0;
  border: none;
  background: transparent;
}
.input-action .input-action-btn .input-action-icon {
  position: relative;
}
.input-action .input-action-btn:disabled .input-action-icon {
  color: var(--vtp-btn-disabled-color) !important;
}

.btn-check + .btn {
  position: relative;
  border-radius: var(--bs-border-radius-sm);
  padding-left: 2rem;
  border-color: var(--vtp-grey-500);
}
.btn-check + .btn::before {
  position: absolute;
  left: 7px;
  top: 4px;
  display: block;
  height: 18px;
  width: 18px;
  font-weight: 400;
  font-family: "Font Awesome 6 Free";
  font-size: 1.125rem;
}
.btn-check + .btn:hover {
  color: var(--vtp-grey-700);
  background-color: var(--vtp-grey-400);
}
.btn-check[type=radio] + .btn::before {
  content: "\f111";
}
.btn-check[type=radio]:checked + .btn {
  background-color: var(--vtp-grey-400);
  color: var(--vtp-grey-700);
  border-color: var(--vtp-grey-400);
}
.btn-check[type=radio]:checked + .btn::before {
  content: "\f192";
}
.btn-check[type=checkbox] + .btn::before {
  content: "\f0c8";
}
.btn-check[type=checkbox]:checked + .btn {
  background-color: var(--vtp-grey-400);
  color: var(--vtp-grey-700);
  border-color: var(--vtp-grey-400);
}
.btn-check[type=checkbox]:checked + .btn::before {
  content: "\f14a";
}

/*ALERT*/
.alert {
  position: relative;
  margin-bottom: 1rem;
  padding: 0.75rem 1.25rem;
  border: 0 solid transparent;
  border-radius: 0;
  border-top-width: 4px;
  border-bottom-width: 4px;
  border-radius: 1px;
}
.alert [class*=fa-] {
  float: left;
  margin-top: -5px;
  margin-right: 0.875rem;
  font-size: 1.75rem;
}
.alert p {
  margin-bottom: calc(var(--vtp-style-block-gap) * 0.15);
}
.alert.alert-primary {
  color: #004a72;
  border-color: #8fcdef;
  background-color: #cce8f8;
}
.alert.alert-primary hr {
  border-top-color: #79c3ec;
}
.alert.alert-primary .alert-link {
  color: #00293f;
}
.alert.alert-secondary {
  color: #3d3d3d;
  border-color: #c2c2c2;
  background-color: #e3e3e3;
}
.alert.alert-secondary hr {
  border-top-color: #b5b5b5;
}
.alert.alert-secondary hr .alert-link {
  color: #242424;
}
.alert.alert-success {
  color: #324200;
  border-color: #b9c68f;
  background-color: #dfe5cc;
}
.alert.alert-success hr {
  border-top-color: #aebd7e;
}
.alert.alert-success hr .alert-link {
  color: #0b0f00;
}
.alert.alert-info {
  color: #004a72;
  border-color: #8fcdef;
  background-color: #cce8f8;
}
.alert.alert-info hr {
  border-top-color: #79c3ec;
}
.alert.alert-info hr .alert-link {
  color: #00293f;
}
.alert.alert-warning {
  color: #7c3e0e;
  border-color: #f8c39a;
  background-color: #fce4d1;
}
.alert.alert-warning hr {
  border-top-color: #f6b582;
}
.alert.alert-warning hr .alert-link {
  color: #4e2709;
}
.alert.alert-danger {
  color: var(--vtp-presetcolor-danger-darker);
  border-color: var(--vtp-presetcolor-danger);
  background-color: #f6d2d3;
}
.alert.alert-danger hr {
  border-top-color: var(--vtp-presetcolor-danger);
}
.alert.alert-danger hr .alert-link {
  color: #400a0b;
}
.alert.alert-light {
  color: #818182;
  border-color: #fcfcfd;
  background-color: #fefefe;
}
.alert.alert-light hr {
  border-top-color: #ededf3;
}
.alert.alert-light hr .alert-link {
  color: #686868;
}
.alert.alert-dark {
  color: #171716;
  border-color: #a3a3a2;
  background-color: #d5d5d5;
}
.alert.alert-dark hr {
  border-top-color: #969695;
}
.alert.alert-dark hr .alert-link {
  color: black;
}
.alert.alert-success [class*=fa-] {
  color: #617e00;
}
.alert.alert-warning [class*=fa-] {
  color: #ee771a;
}
.alert.alert-danger {
  background-color: #f9e9e8;
}
.alert.alert-danger [class*=fa-] {
  color: #d02024;
}
.alert.alert-info [class*=fa-] {
  color: #008edb;
}
.alert-dismissible .btn-close {
  padding: 0.75rem 1.25rem;
}
.alert ul {
  margin-top: 0.25rem;
  padding-left: 1rem;
}

.edit-mode-alert {
  display: none;
}

.edit-mode {
  position: relative;
  padding: 0;
  margin-bottom: 1rem;
  border-radius: 0;
  outline: 2px solid rgba(var(--bs-danger-rgb), 0.85);
  outline-offset: 0.5rem;
  outline-style: dashed;
}
@media (max-width: 767px) {
  .edit-mode {
    outline-offset: 0.25rem;
  }
}
.edit-mode .edit-mode-alert {
  display: inline-block;
  position: relative;
  width: 150px;
  top: -1.5rem;
  left: calc(50% - 75px);
  border: 2px solid rgba(var(--bs-danger-rgb), 0.85);
  border-bottom: none;
  border-radius: var(--bs-border-radius-sm) var(--bs-border-radius-sm) 0 0;
  padding: 0.25rem 0.75rem;
  background-color: var(--vtp-presetcolor-danger);
  color: var(--vtp-grey-100);
}
.edit-mode .edit-mode-alert [class*=fa-] {
  color: var(--vtp-grey-100);
}

/* Icônes actions */
.icon-action [class*=fa-] {
  font-size: 1.375rem;
  vertical-align: middle;
}
.icon-action .icon-action-item {
  position: absolute;
  top: -1000rem;
  left: -1000rem;
}

button.icon-action {
  background: transparent;
  border: none;
  color: var(--bs-link-color);
}
button.icon-action.btn-primary {
  color: var(--vtp-primary-color);
}
button.icon-action.btn-secondary {
  color: var(--vtp-secondary-color);
}
button.icon-action.btn-info {
  color: var(--vtp-presetcolor-info);
}
button.icon-action.btn-success {
  color: var(--vtp-presetcolor-success-darker);
}
button.icon-action.btn-warning {
  color: var(--vtp-presetcolor-warning);
}
button.icon-action.btn-danger {
  color: var(--vtp-presetcolor-danger);
}
button.icon-action:hover, button.icon-action:focus {
  text-decoration: none;
  color: var(--bs-link-hover-color);
}
button.icon-action:disabled {
  color: var(--vtp-btn-disabled-color);
}

/*Spinner*/
.spinner-border-xl {
  --bs-spinner-width: 3rem;
  --bs-spinner-height: 3rem;
  --bs-spinner-border-width: 0.3em;
}
.spinner-border-xxl {
  --bs-spinner-width: 4rem;
  --bs-spinner-height: 4rem;
  --bs-spinner-border-width: 0.35em;
}

.spinner-grow-xl {
  --bs-spinner-width: 3rem;
  --bs-spinner-height: 3rem;
}
.spinner-grow-xxl {
  --bs-spinner-width: 4rem;
  --bs-spinner-height: 4rem;
}

/*Toasts*/
.toast {
  --bs-toast-max-width: 450px;
  --bs-toast-font-size: 0.875rem;
  --bs-toast-bg: rgba(var(--bs-body-bg-rgb), 0.85);
  --bs-toast-header-color: var(--bs-secondary-color);
  --bs-toast-header-bg: rgba(var(--bs-body-bg-rgb), 0.85);
}

.toast .btn-close {
  margin-right: calc(-0.5 * var(--bs-toast-padding-x));
  margin-left: var(--bs-toast-padding-x);
  padding: 0 5px;
  width: 24px;
  height: 24px;
}
.toast .progress {
  margin-top: calc(var(--vtp-style-block-gap) * 0.5);
  padding: 0px;
  border-radius: 2px;
  height: 6px;
  background: transparent;
  box-shadow: none;
}
.toast .progress .progress-bar {
  height: 5px;
  border-radius: 2px;
}
.toast .toast-body .btn-close {
  flex-basis: 20px;
}
.toast .toast-body p {
  margin: 0;
}

.toast-backdrop {
  top: 0;
  left: 0;
  position: absolute;
  height: 100%;
  width: 100%;
  background-color: rgba(var(--bs-dark-rgb), 0.88);
}
.toast-backdrop:not(.show) {
  opacity: 0;
  display: none !important;
}

.toast-fullwidth {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  border-radius: 0;
  box-shadow: none;
  border: none;
  --bs-bg-opacity: 1;
}

/*Badges*/
.badge {
  --bs-badge-padding-x: 0.75em;
  --bs-badge-padding-y: 0.45em;
  --bs-badge-font-size: 0.85em;
  --bs-badge-font-weight: 400;
  --bs-badge-color: #fff;
  --bs-badge-border-radius: var(--bs-border-radius);
  padding: var(--bs-badge-padding-y) var(--bs-badge-padding-x);
  font-size: var(--bs-badge-font-size);
  font-weight: var(--bs-badge-font-weight);
  color: var(--bs-badge-color);
}

/*Tooltips*/
.tooltip {
  --bs-tooltip-padding-x: 0.5rem;
  --bs-tooltip-padding-y: 0.25rem;
  --bs-tooltip-font-size: 0.9rem;
  --bs-tooltip-color: var(--bs-body-bg);
  --bs-tooltip-bg: var(--vtp-primary-color-extended-700);
  --bs-tooltip-opacity: 1;
  font-weight: 300;
}
.tooltip-disabled-action {
  --bs-tooltip-color: var(--vtp-grey-800);
  --bs-tooltip-bg: var(--vtp-grey-300);
}

/*Progress bar*/
.progress {
  padding: 3px;
  border-radius: 4px;
  background: rgba(0, 0, 0, 0.25);
  box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.25), 0 1px rgba(255, 255, 255, 0.08);
}
.progress .progress-bar {
  height: 10px;
  border-radius: 4px;
  transition: 0.4s linear;
  transition-property: width, background-color;
}
.progress.progress-moved .progress-bar {
  width: 1%;
  background-color: var(--vtp-primary-color-extended-300);
}

@keyframes progressAnimation {
  0% {
    width: 100%;
    background-color: var(--vtp-primary-color-extended-100);
  }
  100% {
    width: 1%;
    background-color: var(--vtp-primary-color-extended-300);
  }
}
/*Switches*/
.form-switch {
  padding-left: 3em;
  padding-bottom: calc(var(--vtp-style-block-gap) * 0.35);
  padding-top: calc(var(--vtp-style-block-gap) * 0.35);
  margin-bottom: 0;
}
.form-switch .form-check-input {
  width: 2.5em;
  margin-left: -3em;
  margin-top: -1px;
  border-radius: 2.5em;
  height: 1.25em;
  cursor: pointer;
  --bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23FFFFFF'/%3e%3c/svg%3e");
  background-image: var(--bs-form-switch-bg);
  background-color: var(--vtp-presetcolor-danger);
  border-color: var(--vtp-presetcolor-danger);
  box-shadow: inset 0 0 2px rgba(0, 0, 0, 0.1);
}
.form-switch .form-check-input:focus {
  --bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23FFFFFF'/%3e%3c/svg%3e");
}
.form-switch .form-check-input:checked {
  background-color: var(--vtp-presetcolor-success);
  border-color: var(--vtp-presetcolor-success);
}
.form-switch .form-check-input:disabled {
  --bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23cccccc'/%3e%3c/svg%3e");
  opacity: 1;
}
.form-switch.vtp-switch .form-check-input {
  --bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23757575'/%3e%3c/svg%3e");
  background-color: var(--vtp-grey-300);
  border-color: var(--vtp-grey-400);
  background-image: var(--bs-form-switch-bg);
}
.form-switch.vtp-switch .form-check-input:checked {
  --bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23FFFFFF'/%3e%3c/svg%3e");
  background-color: var(--vtp-additional-color);
  border-color: var(--vtp-additional-color);
}
.form-switch.vtp-switch .form-check-input:checked + label {
  color: var(--vtp-additional-color);
}
.form-switch.vtp-switch .form-check-input:disabled {
  --bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23cccccc'/%3e%3c/svg%3e");
  opacity: 1;
}

.form-check-list {
  padding-bottom: calc(var(--vtp-style-block-gap) * 0.35);
  padding-top: calc(var(--vtp-style-block-gap) * 0.35);
  margin-bottom: 0;
}
@media (min-width: 992px) {
  .form-check-list:not(:last-child) {
    border-bottom: 1px solid var(--vtp-grey-300);
  }
}
@media (max-width: 991px) {
  .form-check-list {
    border-bottom: 1px solid var(--vtp-grey-300);
  }
}
.form-check-list label.form-check-label {
  margin-bottom: 0;
}

/*Modales*/
.modal {
  /*Modal variables*/
  --bs-modal-width: 500px;
  --bs-modal-padding: 1rem;
  --bs-modal-margin: 0.5rem;
  --bs-modal-color: var(--vtp-additional-color);
  --bs-modal-bg: var(--vtp-grey-100);
  --bs-modal-border-width: calc(var(--bs-border-width));
  --bs-modal-border-radius: var(--bs-border-radius);
  --bs-modal-box-shadow: var(--bs-box-shadow-sm);
  --bs-modal-inner-border-radius: calc(var(--bs-border-radius-lg) - (var(--bs-border-width)));
  --bs-modal-header-padding: 0.75rem 0.75rem;
}

.modal fieldset {
  margin: 0px 0 0px 0;
  margin: 0rem 0 0rem 0;
  padding: calc(var(--vtp-style-block-gap) * 0.5);
  padding: 20px 0 20px 0;
  padding: 1.25rem 0 1.25rem 0;
  border: none;
  border-radius: none;
}
.modal fieldset h2,
.modal fieldset h3,
.modal fieldset h4,
.modal fieldset .h2,
.modal fieldset .h3,
.modal fieldset .h4 {
  margin: 10px 0 10px 0;
  margin: 0.625rem 0 0.625rem 0;
}

.modal-content {
  color: var(--vtp-grey-800);
  background-color: var(--bs-modal-bg);
  border-radius: calc(var(--bs-modal-border-radius) * 0.6);
  border: none;
}

.modal-backdrop {
  --bs-backdrop-opacity: 0.88;
  background-color: var(--bs-backdrop-bg);
}

.modal-header {
  color: var(--vtp-grey-100);
  background-color: var(--vtp-additional-color);
  border-radius: 0;
}

.modal-header .btn-close {
  --bs-btn-close-color: var(--vtp-grey-100);
  --bs-btn-close-opacity: 0.85;
  --bs-btn-close-hover-opacity: 1;
  background: none;
  font-size: 1.375rem;
}

.modal-title {
  color: var(--vtp-grey-100);
}

.modal-body {
  padding: calc(var(--bs-modal-padding)) calc(var(--bs-modal-padding) * 2);
}

.modal-footer {
  justify-content: space-between;
}

.modal-lg .modal-footer {
  justify-content: end;
  padding: calc(var(--bs-modal-padding) * 0.75) calc(var(--bs-modal-padding) * 2);
}

/*Modal type toast */
.modal-toast .modal-content .modal-header.bg-success .btn-close, .modal-toast .modal-content .modal-header.bg-warning .btn-close, .modal-toast .modal-content .modal-header.bg-info .btn-close, .modal-toast .modal-content .modal-header.bg-light .btn-close {
  --bs-btn-close-color: --bs-dark-rgb;
}
.modal-toast .modal-content .modal-header.bg-success .modal-title, .modal-toast .modal-content .modal-header.bg-warning .modal-title, .modal-toast .modal-content .modal-header.bg-info .modal-title, .modal-toast .modal-content .modal-header.bg-light .modal-title {
  color: var(--bs-dark-rgb);
}
.modal-toast .modal-content .modal-body {
  padding: calc(var(--bs-modal-padding)) calc(var(--bs-modal-padding) * 0.75);
}

/*Modal slide from right or left*/
.modal {
  /*left*/
  /*right*/
}
.modal.vtp-modal-slide-left .modal-dialog, .modal.vtp-modal-slide-right .modal-dialog {
  position: fixed;
  margin: auto;
  width: 320px;
  height: 100%;
  transform: translate3d(0%, 0, 0);
}
.modal.vtp-modal-slide-left .modal-content, .modal.vtp-modal-slide-right .modal-content {
  height: 100%;
  overflow-y: auto;
}
.modal.vtp-modal-slide-left .modal-body, .modal.vtp-modal-slide-right .modal-body {
  padding: calc(var(--bs-modal-padding) * 1.25) calc(var(--bs-modal-padding) * 1.25);
}
.modal.vtp-modal-slide-left.fade .modal-dialog {
  left: -320px;
  transition: opacity 0.3s linear, left 0.3s ease-out;
}
.modal.vtp-modal-slide-left.fade.show .modal-dialog {
  left: 0;
}
.modal.vtp-modal-slide-right.fade .modal-dialog {
  right: -320px;
  transition: opacity 0.3s linear, right 0.3s ease-out;
}
.modal.vtp-modal-slide-right.fade.show .modal-dialog {
  right: 0;
}
@media (max-width: 575px) {
  .modal.vtp-modal-slide-right.fade.show .modal-dialog {
    width: 100%;
  }
}

/*dashboard cards*/
.dashboard-cards.card-deck, .dashboard-cards.card-group {
  display: flex;
  flex-direction: column;
}
.dashboard-cards.card-deck .card, .dashboard-cards.card-group .card {
  margin-bottom: calc(var(--vtp-style-block-gap) * 1.5);
  display: flex;
  flex-direction: column;
  flex: 1 0 0;
  border-radius: var(--bs-border-radius);
}
.dashboard-cards.card-deck .card:first-child, .dashboard-cards.card-group .card:first-child {
  margin-left: 0;
}
.dashboard-cards.card-deck .card:last-child, .dashboard-cards.card-group .card:last-child {
  margin-right: 0;
}
@media (max-width: 767px) {
  .dashboard-cards.card-deck .card, .dashboard-cards.card-group .card {
    margin-bottom: var(--vtp-style-block-gap);
  }
}
@media (min-width: 992px) {
  .dashboard-cards.card-deck, .dashboard-cards.card-group {
    flex-flow: row wrap;
  }
  .dashboard-cards.card-deck > .card, .dashboard-cards.card-group > .card {
    margin-right: calc(var(--vtp-style-block-gap) * 2);
    margin-left: calc(var(--vtp-style-block-gap) * 2);
  }
  .dashboard-cards.card-deck > .card + .card, .dashboard-cards.card-group > .card + .card {
    margin-left: 0;
    border-left: 0;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .dashboard-cards.card-deck > .card, .dashboard-cards.card-group > .card {
    margin-right: calc(var(--vtp-style-block-gap) * 1);
    margin-left: calc(var(--vtp-style-block-gap) * 1);
  }
}
@media (max-width: 767px) {
  .dashboard-cards.card-deck > .card, .dashboard-cards.card-group > .card {
    margin-right: 0;
    margin-left: 0;
  }
}
@media (min-width: 768px) {
  .dashboard-cards.card-deck, .dashboard-cards.card-group {
    flex-flow: row wrap;
  }
  .dashboard-cards.card-deck > .card, .dashboard-cards.card-group > .card {
    margin-bottom: 0;
    flex: 1 0 0;
  }
}
.dashboard-cards.card-deck .card, .dashboard-cards.card-group .card {
  box-shadow: var(--bs-box-shadow-sm);
  border: none;
  background-color: white;
  transition: all 0.3s ease-in-out 0s;
}
.dashboard-cards.card-deck .card figure,
.dashboard-cards.card-deck .card [class*=fa-], .dashboard-cards.card-group .card figure,
.dashboard-cards.card-group .card [class*=fa-] {
  display: flex;
  transition: all 0.3s ease-in-out 0s;
  position: relative;
  padding: 20px 0;
  margin: 0;
  background-color: var(--vtp-primary-color-extended-200);
}
.dashboard-cards.card-deck .card figure > img,
.dashboard-cards.card-deck .card [class*=fa-] > img, .dashboard-cards.card-group .card figure > img,
.dashboard-cards.card-group .card [class*=fa-] > img {
  margin: auto;
}
.dashboard-cards.card-deck .card figure::after,
.dashboard-cards.card-deck .card [class*=fa-]::after, .dashboard-cards.card-group .card figure::after,
.dashboard-cards.card-group .card [class*=fa-]::after {
  display: block;
  content: " ";
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 0%;
  height: 5px;
  background-color: transparent;
}
.dashboard-cards.card-deck .card [class*=fa-], .dashboard-cards.card-group .card [class*=fa-] {
  position: relative;
  text-align: center;
  font-size: calc(var(--bs-body-font-size) * 5);
  padding-top: calc(var(--vtp-style-block-gap));
  padding-bottom: calc(var(--vtp-style-block-gap));
}
@media (min-width: 768px) and (max-width: 991px) {
  .dashboard-cards.card-deck .card [class*=fa-], .dashboard-cards.card-group .card [class*=fa-] {
    font-size: calc(var(--bs-body-font-size) * 3);
  }
}
.dashboard-cards.card-deck .card [class*=fa-]::before, .dashboard-cards.card-group .card [class*=fa-]::before {
  position: relative;
  margin: 0 auto;
  color: white;
  opacity: 0.8;
}
.dashboard-cards.card-deck .card:hover, .dashboard-cards.card-deck .card:focus, .dashboard-cards.card-group .card:hover, .dashboard-cards.card-group .card:focus {
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.15);
}
.dashboard-cards.card-deck .card:hover figure,
.dashboard-cards.card-deck .card:hover [class*=fa-], .dashboard-cards.card-deck .card:focus figure,
.dashboard-cards.card-deck .card:focus [class*=fa-], .dashboard-cards.card-group .card:hover figure,
.dashboard-cards.card-group .card:hover [class*=fa-], .dashboard-cards.card-group .card:focus figure,
.dashboard-cards.card-group .card:focus [class*=fa-] {
  background-color: var(--vtp-primary-color-extended-400);
}
.dashboard-cards.card-deck .card-img-top, .dashboard-cards.card-group .card-img-top {
  width: auto;
}
.dashboard-cards.card-deck .card-body, .dashboard-cards.card-group .card-body {
  background-color: white;
}
@media (min-width: 576px) and (max-width: 767px) {
  .dashboard-cards.card-deck .card-body, .dashboard-cards.card-group .card-body {
    padding: 10px;
  }
}
.dashboard-cards.card-deck .card-title, .dashboard-cards.card-group .card-title {
  font-size: 1.1875rem;
  font-weight: 600;
  margin-top: 0;
  margin-bottom: calc(var(--vtp-style-block-gap) * 0.25);
  color: var(--vtp-primary-color);
  color: var(--vtp-additional-color);
}
@media (min-width: 768px) and (max-width: 991px) {
  .dashboard-cards.card-deck .card-title, .dashboard-cards.card-group .card-title {
    font-size: 1rem;
  }
}
.dashboard-cards.card-deck .card a, .dashboard-cards.card-group .card a {
  text-decoration: none;
}
.dashboard-cards.card-deck .card a:hover figure,
.dashboard-cards.card-deck .card a:hover [class*=fa-], .dashboard-cards.card-deck .card a:focus figure,
.dashboard-cards.card-deck .card a:focus [class*=fa-], .dashboard-cards.card-group .card a:hover figure,
.dashboard-cards.card-group .card a:hover [class*=fa-], .dashboard-cards.card-group .card a:focus figure,
.dashboard-cards.card-group .card a:focus [class*=fa-] {
  background-color: var(--vtp-primary-color-extended-400);
}
.dashboard-cards.card-deck .card a:hover figure::after,
.dashboard-cards.card-deck .card a:hover [class*=fa-]::after, .dashboard-cards.card-deck .card a:focus figure::after,
.dashboard-cards.card-deck .card a:focus [class*=fa-]::after, .dashboard-cards.card-group .card a:hover figure::after,
.dashboard-cards.card-group .card a:hover [class*=fa-]::after, .dashboard-cards.card-group .card a:focus figure::after,
.dashboard-cards.card-group .card a:focus [class*=fa-]::after {
  transition: all 0.3s ease-in-out 0s;
  left: 0;
  width: 100%;
  background-color: var(--vtp-primary-color-extended-600);
}
.dashboard-cards.card-deck .card a:hover [class*=fa-]::before, .dashboard-cards.card-deck .card a:focus [class*=fa-]::before, .dashboard-cards.card-group .card a:hover [class*=fa-]::before, .dashboard-cards.card-group .card a:focus [class*=fa-]::before {
  transition: all 0.3s ease-in-out 0s;
  opacity: 1;
}
.dashboard-cards.card-deck .card-text, .dashboard-cards.card-group .card-text {
  color: var(--vtp-grey-800);
}
.dashboard-cards.card-deck .card-admin, .dashboard-cards.card-group .card-admin {
  border-top: 10px solid var(--vtp-additional-color);
}
@media (min-width: 768px) {
  .dashboard-cards.card-deck .card-admin, .dashboard-cards.card-group .card-admin {
    margin-left: -15px;
    margin-right: -15px;
  }
}
.dashboard-cards.card-deck .card-admin .card-body, .dashboard-cards.card-group .card-admin .card-body {
  padding: 3rem 0.5rem;
  flex-wrap: nowrap;
}
@media (min-width: 992px) {
  .dashboard-cards.card-deck .card-admin .card-body, .dashboard-cards.card-group .card-admin .card-body {
    padding: 3rem 1rem;
  }
}
.dashboard-cards.card-deck .card-admin .card-body::after, .dashboard-cards.card-group .card-admin .card-body::after {
  display: block;
  content: " ";
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 0%;
  height: 10px;
  background-color: transparent;
}
.dashboard-cards.card-deck .card-admin a:hover .card-body::after, .dashboard-cards.card-deck .card-admin a:focus .card-body::after, .dashboard-cards.card-group .card-admin a:hover .card-body::after, .dashboard-cards.card-group .card-admin a:focus .card-body::after {
  left: 0;
  width: 100%;
  background-color: var(--vtp-additionnal-color);
}

/*Data cards - generic*/
.data-cards .card {
  --bs-card-border-color: var(--vtp-primary-color-extended-200);
  --bs-box-shadow: 0 0.25rem 0.45rem rgba(0, 0, 0, 0.15);
  box-shadow: var(--bs-box-shadow);
}
.data-cards .card .badge {
  white-space: normal;
  text-align: start;
}
.data-cards .card strong.badge {
  font-weight: 600;
}
.data-cards .card-header {
  background-color: transparent;
  padding: calc(var(--vtp-style-block-gap) * 0.35);
  border: none;
}
@media (max-width: 767px) {
  .data-cards .card-header {
    background-color: rgba(var(--bs-primary-rgb), 0.12);
  }
}
.data-cards .card-header .card-title {
  font-size: 1rem;
  font-family: var(--vtp-font-family-base);
  font-weight: 600;
  margin: 0;
  color: var(--vtp-grey-800);
}
.data-cards .card-header .card-title span {
  display: block;
}
.data-cards .card-header .card-subtitle {
  font-size: 0.875rem;
  margin: 0.25rem 0;
  color: var(--vtp-grey-700);
}
.data-cards .card-body {
  padding: 0 calc(var(--vtp-style-block-gap) * 0.35) calc(var(--vtp-style-block-gap) * 0.35);
  font-size: 0.875rem;
  line-height: 1.125rem;
}
@media (max-width: 767px) {
  .data-cards .card-body {
    padding: calc(var(--vtp-style-block-gap) * 0.25) calc(var(--vtp-style-block-gap) * 0.35);
    margin-bottom: 5px;
  }
}
.data-cards .card-body strong:not(.badge) {
  color: var(--vtp-grey-600);
}
.data-cards .card-body li,
.data-cards .card-body .list-group-item {
  padding: 0.25rem 0rem;
  border: none;
}
@media (max-width: 575px) {
  .data-cards .card-body li,
  .data-cards .card-body .list-group-item {
    padding: 0.2rem 0rem;
  }
}
.data-cards .card-body dl {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 0;
}
.data-cards .card-body dl dt,
.data-cards .card-body dl dd {
  flex: 1 1 50%;
  margin: 0 0 0.25rem;
}
.data-cards .card-body .icon-action [class*=fa-] {
  font-size: 1.25rem;
}
.data-cards .card-body .badge {
  --bs-badge-font-size: 0.8rem;
}
.data-cards .card-body-detail {
  position: relative;
  padding: calc(var(--vtp-style-block-gap) * 0.35) 0 calc(var(--vtp-style-block-gap) * 0.5);
  border-top: var(--bs-card-border-width) solid var(--bs-card-border-color);
}
.data-cards .card-body-detail [class*=fa-] {
  font-size: 1.25rem;
  vertical-align: middle;
}
.data-cards .card-body-detail-content {
  padding-top: calc(var(--vtp-style-block-gap) * 0.35);
}
.data-cards .card-body-detail .collapsed [class*=fa-] {
  transform: rotate(180deg);
}
.data-cards .card-body-detail .content-over {
  position: absolute;
  background: white;
  width: 100%;
  padding: calc(var(--vtp-style-block-gap) * 0.5);
  left: 0px;
  top: calc(var(--vtp-style-block-gap) * 0.5);
  border: 1px solid var(--bs-card-border-color);
  box-shadow: var(--bs-box-shadow-inset);
  border-radius: var(--bs-border-radius-sm);
}
.data-cards .card-footer {
  padding: calc(var(--vtp-style-block-gap) * 0.35) calc(var(--vtp-style-block-gap) * 0.25);
  font-size: 0.875rem;
  line-height: 1.125rem;
}
.data-cards .card-footer-data {
  font-size: 1.375rem;
  line-height: 1.5rem;
}
@media (max-width: 575px) {
  .data-cards .card-footer .icon-action {
    padding-right: calc(var(--vtp-style-block-gap) * 0.25);
    padding-left: calc(var(--vtp-style-block-gap) * 0.25);
  }
}
.data-cards .card-footer .icon-action [class*=fa-] {
  font-size: 1.25rem;
}
@media (max-width: 767px) {
  .data-cards .card-footer .icon-action [class*=fa-] {
    font-size: 1.625rem;
  }
}
.data-cards .card-inline {
  margin-bottom: calc(var(--vtp-style-block-gap));
}
@media (min-width: 768px) {
  .data-cards .card-inline {
    display: flex;
    flex-direction: row;
    margin-bottom: calc(var(--vtp-style-block-gap) * 0.5);
  }
}
.data-cards .card-inline .card-header {
  background-color: rgba(var(--bs-primary-rgb), 0.12);
}
@media (min-width: 768px) {
  .data-cards .card-inline .card-header {
    width: 12rem;
    min-width: 12rem;
  }
}
.data-cards .card-inline .card-body {
  padding: calc(var(--vtp-style-block-gap) * 0.25) calc(var(--vtp-style-block-gap) * 0.35);
}
@media (min-width: 992px) {
  .data-cards .card-inline .card-body .list-group {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    align-items: center;
    -moz-column-gap: calc(var(--vtp-style-block-gap) * 0.25);
         column-gap: calc(var(--vtp-style-block-gap) * 0.25);
    margin-top: 0;
  }
  .data-cards .card-inline .card-body .list-group-item {
    border-right: 1px solid var(--vtp-grey-500);
    padding-right: calc(var(--vtp-style-block-gap) * 0.25);
  }
  .data-cards .card-inline .card-body .list-group-item:last-child {
    border-right: none;
    padding-right: 0;
  }
  .data-cards .card-inline .card-body .badge {
    margin-top: 0rem;
    margin-bottom: 0rem;
  }
}
@media (min-width: 768px) {
  .data-cards .card-inline .card-body .card-body-detail {
    position: relative;
    padding: calc(var(--vtp-style-block-gap) * 0.25) 0 0;
    margin-top: calc(var(--vtp-style-block-gap) * 0.25);
  }
  .data-cards .card-inline .card-body .card-body-detail-content {
    padding-top: calc(var(--vtp-style-block-gap) * 0.35);
  }
}
@media (min-width: 768px) {
  .data-cards .card-inline .card-footer {
    display: flex;
    flex-wrap: wrap;
    border-top: 0;
    align-items: flex-start;
    row-gap: calc(var(--vtp-style-block-gap) * 0.25);
    justify-content: flex-end;
    align-content: flex-start;
    min-width: 5rem;
    width: 5rem;
  }
}
@media (min-width: 992px) {
  .data-cards .card-inline .card-footer {
    width: 9rem;
  }
}

/* Data Table Cards*/
.table-card tbody .card-row-header {
  font-weight: 600;
}
@media (max-width: 767px) {
  .table-card thead {
    border: 0;
    clip: rect(1px, 1px, 1px, 1px);
    -webkit-clip-path: inset(50%);
    clip-path: inset(50%);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute !important;
    width: 1px;
    word-wrap: normal !important;
    word-break: normal;
  }
  .table-card tbody.table-group-divider {
    border-top: none;
  }
  .table-card tbody tr {
    display: block;
    margin-bottom: calc(var(--vtp-style-block-gap) * 0.5);
  }
  .table-card tbody tr:not(:empty) {
    --bs-card-border-color: var(--vtp-primary-color-extended-200);
    --bs-box-shadow: 0 0.25rem 0.45rem rgba(0, 0, 0, 0.15);
    border: 1px solid var(--bs-card-border-color);
    border-bottom-color: var(--bs-card-border-color);
    border-radius: var(--bs-card-border-radius);
  }
  .table-card tbody tr:hover > td {
    --bs-table-hover-bg: white;
  }
  .table-card tbody tr th {
    display: block;
    font-weight: 600;
    background-color: rgba(var(--bs-primary-rgb), 0.12);
    border-left: none;
    border-right: none;
    padding: calc(var(--vtp-style-block-gap) * 0.35);
  }
  .table-card tbody tr th[card-row-hidden] {
    display: none;
  }
  .table-card tbody tr td:not(.card-row-header) {
    display: block;
    text-align: right;
    border-bottom-color: var(--bs-card-border-color);
  }
  .table-card tbody tr td:not(.card-row-header):before {
    content: attr(data-label);
    float: left;
    font-weight: bold;
    color: var(--vtp-primary-color) !important;
  }
  .table-card tbody tr td:not(.card-row-header):last-child, .table-card tbody tr td:not(.card-row-header).card-row-footer {
    background-color: var(--bs-card-cap-bg);
  }
  .table-card tbody tr td[card-row-hidden] {
    display: none;
  }
  .table-card tbody tr .card-row-header {
    display: block;
    font-weight: 600;
    background-color: rgba(var(--bs-primary-rgb), 0.12);
    border-left: none;
    border-right: none;
    padding: calc(var(--vtp-style-block-gap) * 0.35);
  }
}
.table-card .table-row-detail-btn {
  position: relative;
}
.table-card .table-row-detail-btn [class*=fa-] {
  font-size: 1.25rem;
  vertical-align: middle;
}
.table-card .table-row-detail-btn.collapsed [class*=fa-] {
  transform: rotate(180deg);
}
.table-card .table-row-detail {
  position: relative;
  padding: calc(var(--vtp-style-block-gap) * 0.35) 0 calc(var(--vtp-style-block-gap) * 0.5);
}
.table-card .table-row-detail.collapsing {
  height: 0;
  overflow: hidden;
  display: block;
  padding: 0;
  transition: height 0.35s ease;
}
.table-card .table-row-detail td {
  border-bottom: var(--bs-border-width) solid var(--vtp-grey-200);
}

@media (max-width: 767px) {
  .table-list-detail tbody tr {
    margin-bottom: calc(var(--vtp-style-block-gap) * 0.5);
    box-shadow: none;
  }
}
.table-list-detail tbody tr th,
.table-list-detail tbody tr .card-row-header {
  font-weight: 600;
}
.table-list-detail tbody tr th,
.table-list-detail tbody tr td {
  border-right: none;
}
@media (min-width: 768px) {
  .table-list-detail tbody tr th,
  .table-list-detail tbody tr td {
    background-color: transparent;
  }
}
@media (max-width: 767px) {
  .table-list-detail tbody tr th,
  .table-list-detail tbody tr td {
    text-align: left !important;
  }
  .table-list-detail tbody tr th:not(.card-row-header):last-child, .table-list-detail tbody tr th:not(.card-row-header).card-row-footer,
  .table-list-detail tbody tr td:not(.card-row-header):last-child,
  .table-list-detail tbody tr td:not(.card-row-header).card-row-footer {
    border-bottom: none;
  }
}
.table-list-detail tbody tr:last-child th,
.table-list-detail tbody tr:last-child td {
  border-bottom: none;
}

@media (min-width: 992px) {
  .table-grid-content {
    display: flex;
    flex-flow: wrap;
  }
  .table-grid-2columns tr {
    display: flex;
    flex: 0 0 50%;
  }
  .table-grid-2columns tr th {
    min-width: 30%;
  }
  .table-grid-2columns tr td {
    min-width: 65%;
  }
}

/*Inventory data card - specific*/
.inventory-data-cards .inventory-card .card-header {
  background-color: var(--vtp-grey-300);
}
.inventory-data-cards .inventory-card .card-header .card-title {
  color: var(--vtp-primary-color-extended-600);
}
@media (min-width: 576px) {
  .inventory-data-cards .inventory-card .card-header .card-title {
    font-size: 1.125rem;
  }
}
.inventory-data-cards .inventory-card .card-header .card-subtitle {
  margin-bottom: 0;
}
.inventory-data-cards .inventory-card .card-header .inventory-qty-data-title {
  margin-top: auto;
  text-align: end;
}
@media (max-width: 767px) {
  .inventory-data-cards .inventory-card .card-header .inventory-qty-data-title {
    display: none;
  }
}
.inventory-data-cards .inventory-card .card-body {
  padding: calc(var(--vtp-style-block-gap) * 0.35);
}
.inventory-data-cards .inventory-card .card-body .inventory-item + .inventory-item {
  border-top: 1px solid var(--vtp-grey-300);
  padding-top: calc(var(--vtp-style-block-gap) * 0.35);
  margin-top: calc(var(--vtp-style-block-gap) * 0.35);
}
.inventory-data-cards .inventory-card .card-body .inventory-item [class*=col-]:last-child {
  align-self: flex-end;
}
@media (min-width: 768px) and (max-width: 991px) {
  .inventory-data-cards .inventory-card .card-body .inventory-item .col-md-10 {
    width: 78.33333333%;
  }
  .inventory-data-cards .inventory-card .card-body .inventory-item .col-md-2 {
    width: 21.66666667%;
  }
}
.inventory-data-cards .inventory-card .inventory-qty-data {
  font-size: 1.375rem;
  font-weight: 600;
  margin-left: auto;
  margin-top: 0;
  margin-bottom: calc(var(--vtp-style-block-gap) * 0.15);
  display: flex;
  max-width: 120px;
  justify-content: center;
  --bs-badge-padding-x: 0.5em;
}
@media (max-width: 575px) {
  .inventory-data-cards .inventory-card .inventory-qty-data {
    margin: 0.5rem auto calc(var(--vtp-style-block-gap) * 0.15);
    max-width: none;
    padding: 0.45em 0.25em;
  }
}
.inventory-data-cards .inventory-card .alert {
  margin-bottom: 0.5rem;
}
.inventory-data-cards .inventory-card .alert [class*=fa-] {
  margin-top: 0;
}

/*List*/
.list {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: center;
  justify-content: start;
  -moz-column-gap: 0.25rem;
       column-gap: 0.25rem;
  row-gap: 0.25rem;
}
.list .input-action {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: start;
  width: -moz-fit-content;
  width: fit-content;
  -moz-column-gap: 0.75rem;
       column-gap: 0.75rem;
}
.list .input-action .icon-action {
  font-size: 1.25rem !important;
  cursor: pointer;
}
.list .input-action input {
  border: 0px;
  padding: 0px 0px 0px 1px;
  border-bottom: 1px solid var(--vtp-grey-500);
}
.list .input-action input:focus {
  outline: 0px;
}

/* pagination */
.paginator {
  display: flex;
  margin: calc(var(--vtp-style-block-gap) * 0.25) auto;
  padding: 0.25rem 0;
  align-items: center;
  justify-content: center;
  width: -moz-fit-content;
  width: fit-content;
  background: white;
  padding: 0.35rem 0.5rem;
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.15);
  border-radius: var(--bs-border-radius-sm);
}
.paginator .summary {
  margin-right: 0.5rem;
  border-right: 1px solid var(--vtp-grey-500);
  padding-right: 0.5rem;
}
@media (min-width: 576px) {
  .paginator .summary {
    margin-right: 0.5rem;
  }
}
.paginator nav {
  display: flex;
  gap: 0.5rem;
  align-items: center;
}
.paginator nav button {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0.25rem;
  height: 1.8rem;
  width: 1.8rem;
  color: var(--vtp-primary-color);
  text-decoration: none;
  background-color: white;
  border: 1px solid var(--vtp-grey-300);
  border-radius: var(--bs-border-radius-sm);
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
.paginator nav button.go-first:before, .paginator nav button.go-last:before {
  content: "\f04a";
  font-weight: 900;
  font-family: "Font Awesome 6 Free";
  font-size: 1.125rem;
}
.paginator nav button.go-previous:before, .paginator nav button.go-next:before {
  content: "\f0d9";
  font-weight: 900;
  font-family: "Font Awesome 6 Free";
  font-size: 1.25rem;
}
.paginator nav button.go-next, .paginator nav button.go-last {
  transform: scaleX(-1);
}
.paginator nav button:hover, .paginator nav button:focus {
  background-color: var(--vtp-grey-100);
}
.paginator nav button[disabled] {
  color: var(--vtp-grey-400);
}
.paginator nav .pagination-text {
  margin: 0 0.15rem;
}
@media (min-width: 576px) {
  .paginator nav .pagination-text {
    margin: 0 0.25rem;
  }
}

/* toggle btn */
.btn-section-collapse {
  padding-right: 1.75rem;
  position: relative;
  text-decoration: none;
}
.btn-section-collapse .fa-chevron-down {
  text-indent: 0;
  position: absolute;
  right: 0;
  top: 3px;
}
.btn-section-collapse.btn {
  text-indent: -9999px;
  line-height: 0;
}
.btn-section-collapse.btn .fa-chevron-down {
  top: 6px;
}
.btn-section-collapse.btn::after {
  text-indent: 0;
  display: block;
  line-height: initial;
  content: "" attr(data-btn-content-1) "";
}
.btn-section-collapse[aria-expanded=true] .fa-chevron-down {
  text-indent: 0;
  transform: rotate(180deg);
  top: 6px;
}
.btn-section-collapse[aria-expanded=true].btn .fa-chevron-down {
  top: 6px;
}
.btn-section-collapse[aria-expanded=true].btn::after {
  text-indent: 0;
  display: block;
  line-height: initial;
  content: "" attr(data-btn-content-2) "";
}

/* tabs */
.vpt-tabs-nav {
  margin-bottom: calc(var(--vtp-style-block-gap) * 0.5);
}
.vpt-tabs-nav .nav-item .nav-link {
  --bs-nav-link-padding-x: 0.5rem;
  font-size: 1.125rem;
  line-height: 1.25rem;
  font-weight: 600;
  color: var(--vtp-grey-700);
  border-bottom-width: 3px;
}
.vpt-tabs-nav .nav-item .nav-link.active {
  color: var(--vtp-primary-color-extended-500);
}
.vpt-tabs-nav.nav-underline .nav-item .nav-link {
  --bs-nav-link-padding-x: 0.5rem;
}
.vpt-tabs-nav.nav-pills .nav-item .nav-link {
  --bs-nav-link-padding-x: 0.5rem;
}
.vpt-tabs-nav.nav-pills .nav-item .nav-link.active {
  color: white;
  background-color: var(--vtp-primary-color-extended-500);
}

.vpt-tabs-content .vpt-tabs-content-title {
  display: none;
  margin-bottom: calc(var(--vtp-style-block-gap) * 0.5);
  margin-top: calc(var(--vtp-style-block-gap) * 0.5);
  color: var(--vtp-primary-color-extended-500);
  font-size: 1.625rem;
  line-height: 1.75rem;
}
@media (max-width: 575px) {
  .vpt-tabs-content .vpt-tabs-content-title {
    display: block;
    color: white;
    background-color: var(--vtp-additional-color);
    padding: calc(var(--vtp-style-block-gap) * 0.25);
  }
}

/*Accordions*/
.accordion {
  --bs-accordion-border-radius: var(--bs-border-radius-sm);
  --bs-accordion-inner-border-radius: calc(var(--bs-border-radius-sm) - (var(--bs-border-width)));
  --bs-accordion-btn-icon-width: 1.5rem;
  --bs-accordion-btn-focus-box-shadow: none;
  --bs-accordion-body-padding-x: 1.25rem;
  --bs-accordion-body-padding-y: 1rem;
  --bs-accordion-active-color: var(--vtp-additional-color);
  --bs-accordion-active-bg: var(--vtp-grey-300);
}
.accordion:not(.collapsed) {
  color: var(--vtp-additional-color);
  border-color: var(--vtp-additional-color);
}
.accordion .accordion-item {
  color: var(--bs-accordion-color);
  background-color: var(--bs-accordion-bg);
  border: var(--bs-accordion-border-width) solid var(--bs-accordion-border-color);
}
.accordion .accordion-header {
  font-weight: 400;
}
.accordion .accordion-button {
  font-weight: 400;
}
.accordion .accordion-button:focus {
  color: var(--vtp-additional-color);
  border-color: var(--vtp-additional-color);
}

/*Drag & Drop / transferts*/
.vtp-drag-and-drop--divider {
  display: flex;
  align-content: center;
  align-items: center;
  justify-content: center;
}

/* Search Filter */
.input-search-icon {
  padding-right: calc(1.5em + 0.75rem);
  background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--!Font Awesome Free 6.5.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--><path d="M416 208c0 45.9-14.9 88.3-40 122.7L502.6 457.4c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0L330.7 376c-34.4 25.2-76.8 40-122.7 40C93.1 416 0 322.9 0 208S93.1 0 208 0S416 93.1 416 208zM208 352a144 144 0 1 0 0-288 144 144 0 1 0 0 288z" fill="%23545454"/></svg>');
  background-repeat: no-repeat;
  background-position: right calc(0.375em + 0.1875rem) center;
  background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}

/*Numeric Keyboard (mobile)*/
.vtp-keyboard {
  display: inline-flex;
  flex-wrap: wrap;
  width: 220px;
  margin-bottom: 1.5rem;
}
.vtp-keyboard-result {
  display: block;
  width: 220px;
  text-align: center;
  padding: 0 0.35rem;
  font-size: 1rem;
}
.vtp-keyboard-result span {
  display: block;
  margin: 0.5rem 0;
}
.vtp-keyboard-result .counter {
  display: block;
  margin-top: 0.5rem;
  width: 100%;
  text-align: center;
  padding: 1rem 0.5rem;
  font-size: 2.5rem;
  font-weight: 600;
  background-color: var(--vtp-grey-400);
}
.vtp-keyboard-result.light .counter {
  border: 1px solid var(--vtp-grey-400);
  background-color: transparent;
}
.vtp-keyboard-wrapper .btn {
  flex: 1 1 55px;
  border-radius: var(--bs-border-radius-sm);
  margin: 0.35rem;
  font-size: calc(var(--bs-btn-font-size) * 1.15);
}
.vtp-keyboard-wrapper .btn-action {
  font-size: calc(var(--bs-btn-font-size) * 0.9);
}
.vtp-keyboard-wrapper .btn.btn-lg {
  --bs-btn-padding-y: 0.5rem;
  --bs-btn-padding-x: 0.5rem;
  --bs-btn-font-size: 1.45rem;
}
.vtp-keyboard.light .btn {
  border-radius: var(--bs-border-radius-sm);
  background-color: var(--vtp-grey-100);
  color: var(--vtp-additional-color);
  border-color: var(--vtp-grey-400);
}
.vtp-keyboard.light .btn-success {
  color: var(--vtp-presetcolor-success);
}
.vtp-keyboard.light .btn-danger {
  color: var(--vtp-presetcolor-danger-darker);
}
.vtp-keyboard-extended .vtp-keyboard-actions {
  flex-direction: column;
  width: 55px;
}
.vtp-keyboard-extended .vtp-keyboard-result {
  position: relative;
  width: 100%;
}
.vtp-keyboard-extended .vtp-keyboard-result .btn {
  position: absolute;
  top: 0;
  right: 0;
  margin: 5px 11px 0 0;
  padding: 0.25rem 0.75rem;
  box-sizing: border-box;
  width: 55px;
  border: 1px solid transparent;
  color: var(--vtp-grey-600);
  height: 41px;
}
.vtp-keyboard-extended .vtp-keyboard-result .btn:hover, .vtp-keyboard-extended .vtp-keyboard-result .btn:focus {
  border-color: var(--vtp-grey-500);
  background-color: transparent;
}
.vtp-keyboard-extended .vtp-keyboard-result .btn:active {
  color: var(--vtp-grey-800);
}
.vtp-keyboard-extended .vtp-keyboard-result .counter {
  padding-right: 60px;
}

/* Sticky Footer Actions*/
.product-footer-actions {
  position: sticky;
  z-index: 10000;
  bottom: 0rem;
  width: 100%;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  -moz-column-gap: calc(var(--vtp-style-block-gap) * 0.5);
       column-gap: calc(var(--vtp-style-block-gap) * 0.5);
  padding: calc(var(--vtp-style-block-gap) * 0.75) calc(var(--vtp-style-block-gap) * 0.5);
  background-color: white;
  box-shadow: 0 -4px 6px rgba(0, 0, 0, 0.15);
}
.product-footer-actions .btn {
  margin-top: 0;
  margin-bottom: 0;
}
@media (max-width: 575px) {
  .product-footer-actions {
    flex-direction: column;
    padding: calc(var(--vtp-style-block-gap) * 0.5);
  }
  .product-footer-actions .btn {
    margin-bottom: 0.5rem;
    margin-top: 0.5rem;
    width: 100%;
  }
}

/*Autocomplete Search / filter*/
.autocomplete__wrapper {
  position: relative;
}

.autocomplete__hint,
.autocomplete__input {
  border: 1px solid #ced4da;
  border-radius: 0.25rem;
  box-sizing: border-box;
  margin-bottom: 0;
  width: 100%;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.5;
  display: block;
  width: 100%;
  height: calc(1.5em + 1.25rem + 2px);
  padding: 0.375rem 0.75rem;
}

.autocomplete__input {
  background-color: white;
  position: relative;
}

.autocomplete__hint {
  color: #b1b4b6;
  position: absolute;
}

.autocomplete__input--focused {
  outline-offset: 0;
  box-shadow: inset 0 0 0 2px;
  color: #495057;
  border-color: #80bdff;
  outline: 0;
  background-color: #fff;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

.autocomplete__input--show-all-values {
  padding: 5px 34px 5px 5px;
  cursor: pointer;
}

.autocomplete__dropdown-arrow-down {
  z-index: -1;
  display: inline-block;
  position: absolute;
  right: 8px;
  width: 24px;
  height: 24px;
  top: 10px;
}

.autocomplete__menu {
  background-color: #fff;
  border: 2px solid #80bdff;
  border-top: 0;
  color: #495057;
  margin: 0;
  max-height: 342px;
  overflow-x: hidden;
  padding: 0;
  width: 100%;
  width: calc(100% - 4px);
}

.autocomplete__menu--visible {
  display: block;
}

.autocomplete__menu--hidden {
  display: none;
}

.autocomplete__menu--overlay {
  /*box-shadow: rgba(0, 0, 0, .256863) 0 2px 6px;*/
  left: 0;
  position: absolute;
  top: 100%;
  z-index: 100;
}

.autocomplete__menu--inline {
  position: relative;
}

.autocomplete__option {
  /*border-bottom: solid #b1b4b6;*/
  border-width: 0px 0;
  cursor: pointer;
  display: block;
  position: relative;
}

.autocomplete__option > * {
  pointer-events: none;
}

.autocomplete__option:first-of-type {
  border-top-width: 0;
}

.autocomplete__option:last-of-type {
  border-bottom-width: 0;
}

.autocomplete__option--odd {
  background-color: #fafafa;
}

.autocomplete__option--focused,
.autocomplete__option:hover {
  background-color: #1d70b8;
  border-color: #1d70b8;
  color: #fff;
  outline: 0;
}

.autocomplete__option--no-results {
  background-color: #fafafa;
  color: #646b6f;
  cursor: not-allowed;
}

.autocomplete__hint,
.autocomplete__option {
  padding: 5px;
}

/* Modules mobiles styles
-------------------------------------------------- */
.vtp-mobile .vtp-mobile-header {
  color: var(--vtp-grey-100);
  background-color: var(--vtp-additional-color);
}
.vtp-mobile .heading-title {
  font-size: calc(1rem + 1.5vw);
  color: white;
  margin: 0.5rem 0;
}