.page-body {
   max-width: 100%;
   --bs-gutter-x: 0;
   --bs-gutter-y: 0;
   min-height: 100%;
   transition: 0.3s;
   /*position: absolute; shouldnt be needed now i hope */
}
.active {
   background-color: var(--core-bg);
}
.table > :not(caption) > * > * {
   background-color: initial;
}
.table-hover > tbody > tr.no-hover:hover > * {
   --bs-table-color-state: initial;
   --bs-table-bg-state: initial;
}

.header {
   transition: 0.3s;
}

/* Large devices (desktops, 992px and up) */
@media (min-width: 992px) { 
   .page-body {
      width: calc(100% - 25px);
      margin-left: 25px;
   }
   .header {
      width: calc(100% - 25px);
      margin-left: 25px;
   }
}

.navbar-brand {
   padding-top: 5px;
   font-size: 1rem;
   display: table;
}

/* Large devices (desktops, 992px and up) */
@media (min-width: 992px) { 
   .exacom-logo{
         max-width: 131px; 
         min-width: 0px;
         margin-top: -1px;
         padding-bottom: 1px;

   }  
   .navbar {
         position: initial;
   }
}

/* Sidebar */
.sidebar {
   background-color: var(--bs-body-bg); 
   position: fixed;
   top: 0rem;
   padding-top: 0px;
   bottom: 0;
   left: 0;
   box-shadow: inset -1px 0 0 rgba(0, 0, 0, .1);
   overflow-y: auto;
   overflow-x: hidden;
   z-index: 999;
   width: 100%;
   transition: 0.3s;
}
.sidebar .nav-link {
   color: #fff;  
   padding: 0.78rem 0.875rem 0.62rem 0.95rem;
   font-size: 15px;
   font-weight: 400;
   width: 100%;
   text-align: center;
}
.sidebar .nav-link i {
   margin-right: 8px;
   width: 18px;
   height: 18px;
   text-align: center;
}
.sidebar .nav-link .fa-list-ul {
   font-size: 16px;
}
.sidebar .nav-link:hover {
   background-color: var(--black);
}
.sidebar .icon-home {
   color: var(--bs-gray-300);
}
.sidebar-logo {
   top: 0px;
   z-index: 999;
   position: fixed !important;
   padding: 12px 0px 13px 0px;
   background-color: var(--bs-body-bg);
   display: none;
   transition: 0.3s;
}

.opensidemenu-chevron {
   color: var(--sidebar-color);
}

/* Large devices (desktops, 992px and up) */
@media (min-width: 992px) { 
   .sidebar {
      width: 225px;
   }
   .sidebar .nav-link {
      width: 202.5px;  
      text-align: left;
   }
   .sidebar-logo {
      width: 225px;
      display: block;
   }
}

/* modified from the 400 version */
.widget-box {
   padding: 2.5rem;
   background-color: var(--bs-body-bg);
   color: var(--bs-body-color);
   margin-bottom: 1rem;
   border: 1px solid var(--selectable-border);
   border-radius: var(--bs-border-radius) !important;
}

.title {
   border-bottom: 1px solid var(--selectable-border);
   width: 100%;
   display: block;
   margin-bottom: 14px;
   font-size: 18px;
   font-weight: 500;
   padding-bottom: 6px;
}

.title-no-border {
    width: 100%;
    display: block;
    margin-bottom: 14px;
    font-size: 18px;
    font-weight: 500;
    padding-bottom: 6px;
}

/*jQuery Validate Messages */
label.is-invalid {
   font-weight: bold;
   font-style: italic;
}

.form-grid {
    display: grid;
    grid-template-columns: 100%;
}
.form-grid-var {
    display: grid;
}

.container.bsl-page-content {
   max-width: 100%;
}

.bsl-step-panel {
   scroll-margin-top: 2rem;
}

.bsl-step-panel .form-check {
   margin-left: 0;
}

.bsl-step-panel .form-check-input {
   margin-left: 0;
}

.bsl-status-badge {
   font-size: 0.9rem;
   font-weight: 500;
}

.bsl-reference-display {
   padding: 0.875rem 1rem;
   border: 1px solid var(--selectable-border);
   border-radius: var(--bs-border-radius);
   background-color: var(--bs-tertiary-bg);
   font-weight: 600;
   letter-spacing: 0.04em;
}

.bsl-repeatable-list {
   display: grid;
   gap: 1rem;
}

.bsl-repeatable-card {
   border: 1px solid var(--selectable-border);
   border-radius: var(--bs-border-radius);
   background-color: var(--bs-tertiary-bg);
   padding: 1rem;
}

.bsl-toggle-check {
   margin: 0;
   display: flex;
   align-items: flex-start;
   gap: 0.85rem;
   padding: 0.15rem 0;
   padding-left: 0;
}

.bsl-toggle-check-input {
   position: static;
   float: none;
   flex: 0 0 auto;
   margin-left: 0;
   margin-top: 0.05rem;
   min-width: 1.3rem;
   min-height: 1.3rem;
   border: 2px solid var(--bs-secondary-color);
   background-color: var(--bs-body-bg);
   box-shadow: none;
}

.bsl-toggle-check-input:checked {
   background-color: var(--bs-primary);
   border-color: var(--bs-primary);
}

.bsl-toggle-check-input:focus {
   border-color: var(--bs-primary);
   box-shadow: 0 0 0 0.18rem rgba(var(--bs-primary-rgb), 0.2);
}

.bsl-toggle-check-label {
   color: var(--bs-body-color);
   font-weight: 500;
   line-height: 1.4;
}

.bsl-toggle-check-input:disabled {
   opacity: 0.8;
   background-color: var(--bs-secondary-bg);
   border-color: var(--bs-border-color);
}

.bsl-toggle-check-input:disabled ~ .bsl-toggle-check-label {
   opacity: 0.75;
}

.bsl-option-grid {
   display: grid;
   grid-template-columns: repeat(2, minmax(0, 1fr));
   gap: 1rem;
}

.bsl-option-card {
   width: 100%;
   padding: 1rem 1.25rem;
   font-size: 1.1rem;
}

@media (max-width: 767.98px) {
   .bsl-option-grid {
      grid-template-columns: 100%;
   }
}

.bsl-upload-drop-area {
   border: 2px dashed var(--selectable-border);
   border-radius: var(--bs-border-radius);
   padding: 1.25rem;
   transition: border-color 0.15s ease-in-out, background-color 0.15s ease-in-out;
}

.bsl-upload-drop-area.bsl-upload-highlight {
   border-color: var(--bs-primary);
   background-color: var(--bs-tertiary-bg);
}

.bsl-upload-file-list {
   display: grid;
   gap: 0.5rem;
}

.bsl-upload-file-row {
   border: 1px solid var(--selectable-border);
   border-radius: var(--bs-border-radius);
   background-color: var(--bs-tertiary-bg);
   padding: 0.6rem 0.85rem;
}
