/* =======================
Reload bootstrap styles
======================= */

/* Layout */
.d-lg-block {
   display: none !important;
}

.d-lg-none {
   display: inline block !important;
}

@media (min-width: 1200px) {
  .container, .container-xl {
    max-width: 1180px;
  }

  .d-lg-block {
    display: block !important;
  }

  .d-lg-none {
    display: none !important;
  }
}

.my-xl-3 {
  margin-top: 0rem !important;
  margin-bottom: 1rem !important;
}

@media (min-width: 1200px) {
  .my-xl-3 {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
  }
}

/* Text */
.text-danger {
  color: #B03E24 !important;
}

.text-warning {
  color: #be7e1f !important;
}

.text-nowrap {
  white-space: nowrap;
}

/* Navbar */
.navbar {
  border-radius: 30px;
  background-image: url('../img/navbar.svg');
  background-repeat: no-repeat;
  min-height: 80px;
}

a.nav-link {
  padding: 10px;
}

@media (min-width: 1200px) {
  li.nav-item {
    margin: 0 15px;
    align-items: center;
    display: flex;
  }
}

.nav-pills .nav-link.active, .nav-pills .show>.nav-link {
    background-color: #a1d7ff !important;
    box-shadow: 3px 3px 0px 0px #399DE4;
    color: black;
    border-radius: 15px;
}

.nav-link:focus, .nav-link:hover {
    color: #2d7ab0;
}

.navbar-brand {
    padding-top: 0px;
    padding-bottom: 5px;
    padding-left: 10px;
}

.navbar-nav {
  margin-top: 10px;
}

@media (min-width: 1200px) {
  .navbar-nav {
    margin-top: 0;
  }
}

.navbar-nav a:link {
  color: #000;
  border-radius: 15px !important;
}

.navbar-nav a:hover {
  color: #000 !important;
  background-color: #A0D7FF;
  border-radius: 15px !important;
  font-weight: normal !important;
}

.navbar-nav a:active {
  background-color: #6EC2FF;
}

.navbar-nav .dropdown-menu {
  box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.2);
  background-color: #d3f9ff;
  border: 0;
  border-radius: 15px;
}

.navbar-nav .dropdown-menu a:hover {
  border-radius: 0 !important;
}

/* Links */
a,
a:link,
a:visited {
  color: #000;
}

a:hover {
  color: #666;
}

a:active {
  color: #999;
}

.link-muted {
  text-decoration:none;
  color: var(--bs-secondary-color) !important;
}

.link-muted:hover {
  text-decoration:underline;
  color: var(--bs-secondary-color) !important;
}

/* Background colors */
.bg-primary {
  background-color: #D6EEFF !important;
}

.bg-secondary {
  background-color: #F7E3FF !important;
}

.bg-success {
  background-color: #E8FAC4 !important;
}

.bg-danger {
  background-color: #FFA894 !important;
}

.bg-warning {
  background-color: #FFD6A6 !important;
}

.bg-info {
  background-color: #C9CDFF !important;
}

.bg-dark {
  background-color: #999 !important;
}

.bg-light {
  background-color: #F9F9F9 !important;
}

/* Tables */
.table {
  text-align: center;
  vertical-align: middle;
  border-style: hidden !important;
}

.table>:not(caption)>*>* {
  background-color: transparent;
  color: unset;
}

.table .badge {
  font-size: 1em;
}

.table th {
  padding: 15px;
  border: 1px solid #E2E2E2 !important;
  font-size: 1.15em;
  font-weight: bold;
}

th:has(.brush),
td:has(.brush) {
    font-weight: normal !important;
}

.table th:has(.brush),
.table td:has(.brush) {
    font-weight: normal !important;
}

tr.brush th {
    font-weight: normal !important;
}

.table td {
  border: 1px solid #E2E2E2 !important;
}

.table.no-border th {
  border: 0 !important;
}

.table.no-border td {
  border: 0 !important;
}

.table-sm td {
  padding: 3px;
}

.table-lg td {
  padding: 15px;
}

/* Buttons */
.btn {
  color: #000 !important;
  border-radius: 15px;
  border: 0;
  transition: all 0.3s ease;
}

.btn-lg {
  margin-bottom: 0 !important;
  font-weight: 300;
}

.btn-group input[type='radio']:checked+label::before {
  content:"";
  left:0.2em;
  top:0.1em;
  border-width:2px;
  border-style:dashed;
  border-color: white;
  position:absolute;
  width:97%;
  height:85%;
  transform:rotate(-1deg);
  opacity:0.8;
  border-radius:35%;
  padding:0.1em 0.25em;
}

.btn-group-vertical>.btn-check:checked+.btn, .btn-group-vertical>.btn-check:focus+.btn,
.btn-group-vertical>.btn.active,
.btn-group-vertical>.btn:active,
.btn-group-vertical>.btn:focus,
.btn-group-vertical>.btn:hover,
.btn-group>.btn-check:checked+.btn,
.btn-group>.btn-check:focus+.btn,
.btn-group>.btn.active,
.btn-group>.btn:active,
.btn-group>.btn:focus,
.btn-group>.btn:hover {
    z-index: unset;
}

.btn-primary {
  background-color: #A0D7FF !important;
  box-shadow: 3px 3px 0px 0px #399DE4;
  border-color: #399DE4 !important;
}

.btn-primary:hover {
  background-color: #6EC2FF !important;
}

.btn-primary:active,
.btn-primary:focus,
.btn-primary.active {
  background-color: #4AB3FF !important;
}

.btn-blue {
  background-color: #F0F8FF !important;
  box-shadow: 3px 3px 0px 0px #88C2F1;
  border-color: #88C2F1 !important;
}

.btn-blue:hover {
  background-color: #c4e3ff !important;
}

.btn-blue:active,
.btn-blue:focus,
.btn-blue:focus-visible,
.btn-blue.active {
  background-color: #A0D7FF !important;
  box-shadow: 3px 3px 0px 0px #399DE4 !important;
}

.input-group .btn-blue {
  border-radius: var(--bs-border-radius);
  border: var(--bs-border-width) solid var(--bs-border-color) !important;
}

.label.btn.btn-primary:checked {
  text-decoration: underline !important;
  background-color: #000 !important;
}

.btn-secondary {
  background-color: #F7DBF8 !important;
  box-shadow: 2px 3px 0px 0px #E073E1;
  border-color: #E073E1 !important;
}

.btn-secondary:hover {
  background-color: #F2BFF3 !important;
}

.btn-secondary:active,
.btn-secondary:focus,
.btn-secondary:focus-visible,
.btn-secondary.active {
  background-color: #ECA2EE !important;
}

.btn-success {
  background-color: #DDF3AF;
  box-shadow: 2px 3px 0px 0px #9CCB39;
  border-color: #9CCB39 !important;
  --bs-btn-active-bg: #B3E34B;
}

.btn-success:hover {
  background-color: #CAF373;
}

.btn-success:active,
.btn-success:focus,
.btn-success:focus-visible,
.btn-success.active
.btn-success.show{
  background-color: #B3E34B !important;
}

.btn-danger {
  background-color: #FFA894;
  box-shadow: 2px 3px 0px 0px #B03E24;
  border-color: #B03E24 !important;
}

.btn-danger:hover {
  background-color: #FF8B71;
}

.btn-danger:active,
.btn-danger:focus,
.btn-danger:focus-visible,
.btn-danger.active {
  background-color: #FF7759 !important;
}

.btn-warning {
  background-color: #FFCF87;
  box-shadow: 2px 3px 0px 0px #DA9D42;
  border-color: #DA9D42 !important;
}

.btn-warning:hover {
  background-color: #FFC36A;
}

.btn-warning:active,
.btn-warning:focus,
.btn-warning:focus-visible,
.btn-warning.active {
  background-color: #FFB648 !important;
}

.btn-outline-warning {
  background-color: #FFF;
  border: 2px solid #FFCF87 !important;
}

.btn-outline-warning:hover {
  border-color: #DA9D42 !important;
  background-color: #FFC36A !important;
}

.btn-outline-warning:active,
.btn-outline-warning:focus,
.btn-outline-warning:focus-visible,
.btn-outline-warning.active {
  border-color: #DA9D42 !important;
  background-color: #FFB648 !important;
}

.btn-info {
  background-color: #C9CDFF;
  box-shadow: 2px 3px 0px 0px #6A71CB;
  border-color: #6A71CB !important;
}

.btn-info:hover {
  background-color: #B2B7FF !important;
}

.btn-info:checked,
.btn-info.active,
.btn-info:active,
.btn-info:focus,
.btn-info:focus-visible {
  background-color: #969EFF !important;
}

.btn-dark {
  background-color: transparent !important;
  box-shadow: 2px 3px 0px 0px #00000040;
  outline: 1px solid #000000d4;
  outline-offset: -1px;
}

.btn-dark:hover {
  background-color: #00000050 !important;
}

.btn-dark:active,
.btn-dark:focus,
.btn-dark:focus-visible,
.btn-dark.active {
  background-color: #00000070 !important;
}

.btn[disabled],
.btn:disabled,
.btn.disabled {
  background-color:#F0F0F0 !important;
  box-shadow: 2px 3px 0px 0px #B9B9B9 !important;
}

/* Badges */
.badge {
  color: #000 !important;
  border-radius: 15px !important;
  font-weight: normal;
  white-space: normal;
}

.badge.bold {
  font-weight: bold;
}

.badge.normal {
  padding: 0.5em 0.8em;
  font-size: 0.9em;
}

.badge.medium {
  padding: 0.8em;
}

.badge a {
  font-size: 1em;
  padding: 0;
}

.badge.large {
  padding: 0.8em;
  font-size: 1em;
}

td>.badge.large {
  min-width: 90%;
}

.badge.extra-large {
  padding: 0.5em;
  font-size: 1.3em;
}

.badge.square {
  font-size: 1em;
  min-width: 50px;
  min-height: 50px;
  padding: 17px 54px;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px;
  flex-shrink: 0 !important;
  padding: 0;
}

.badge.square-fixed {
  font-size: 1em;
  width: 2.7em;
  height: 2.7em;
  justify-content: center;
  align-items: center;
}

.badge.square-shrink {
  font-size: 1em;
  min-width: 2.7em;
  min-height: 2.7em;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0!important;
}

.badge.square-shrink-sm {
  font-size: 0.9em;
  min-width: 2.3em;
  min-height: 2.3em;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0!important;
}

/* Alerts */
.alert {
  border-radius: 15px;
  border-style: dashed;
  border-width: 2px;
}

.alert-primary {
  background: #BCE3FF50;
  color: #2a74a8;
  border-color: #399DE450;
}

.alert-secondary {
  background: #F7DBF850;
  color: #a052a1;
  border-color: #E073E150;
}

.alert-success {
  background: #DDF3AF50;
  color: #5e7a22;
  border-color: #9CCB3950;
}

.alert-danger,
.alert-error {
  background: #FFA89450;
  color: #B03E24;
  border-color: #B03E2450;
}

.alert-warning {
  background: #FFCF8750;
  color: #8d652b;
  border-color: #DA9D4250;
}

.alert-info {
  background: #C9CDFF50;
  color: #5f65b5;
  border-color: #6A71CB50;
}

.alert-link {
  font-weight: 600;
  color: var(--alert-link-color) !important;
}

.border-primary {
  border-color: #399DE450 !important;
}

/* Modal */

.modal-header,
.modal-footer {
  border: 0;
}

/* Accordion */

.accordion {
  background: #F9F9F9 !important;
  border-radius: 15px !important;
  border: none;
  --bs-accordion-border-color: none;
}

.accordion-button,
.accordion-button:not(.collapsed) {
  background: #F9F9F9 !important;
  color: #000000 !important;
  border: none;
  padding-top: 20px;
  padding-bottom: 20px;
}

.accordion-button:not(.collapsed)::after {
    background-image: var(--bs-accordion-btn-icon);
}

.accordion-button:focus {
    box-shadow: none;
}

.accordion-body,
.accordion-collapse {
  background: #FFFFFF !important;
  border-radius: 15px !important;
}

.accordion-body {
  padding: 25px var(--bs-accordion-body-padding-x);
}

.accordion-item {
  border-radius: 0px 0px 15px 15px !important;
  border: none;
}

.accordion-item:not(:last-of-type) {
  border-bottom: white solid 3px !important;
}

/* Tooltip */

.tooltip {
  --bs-tooltip-bg: #333333;
  --bs-tooltip-max-width: 230px;
}

.tooltip-image {
  --bs-tooltip-bg: #545454;
  --bs-tooltip-max-width: 500px;
  --bs-tooltip-color: #ffffff;
  --bs-tooltip-opacity: 90%;
}

.tooltip-image img {
  max-width: 100%;
  margin-top: 4px;
  margin-bottom: 4px;
}

/* Breadcrumb */
.breadcrumb-arrow-divider {
    --bs-breadcrumb-divider: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8'%3E%3Cpath d='M2.5 0L1 1.5 3.5 4 1 6.5 2.5 8l4-4-4-4z' fill='%236c757d'/%3E%3C/svg%3E");
}

/* Utilities */

.table-wrapper {
    overflow-x: auto; /* Enable horizontal scrolling */
    margin-left: -1.5rem; /* Compensate for the modal padding */
    margin-right: -1.5rem; /* Compensate for the modal padding */
}
