html {
  font-size: 14px;
}

@media (min-width: 768px) {
  html {
    font-size: 16px;
  }
}

html {
  position: relative;
  min-height: 100%;
}

body {
  margin-top: 20px;
  margin-bottom: 60px;
}

.border-top {
  border-top: 1px solid #e5e5e5;
}

.border-bottom {
  border-bottom: 1px solid #e5e5e5;
}

.box-shadow {
  box-shadow: 0 .25rem .75rem rgba(0, 0, 0, .05);
}

.footer {
  margin-top: 25px;
  padding-top: 25px;
  width: 100%;
}

a:hover, a:focus {
  text-decoration: none;
}


.mt-25 {
  margin-top: 25rem !important
}

.mt-15 {
  margin-top: 15rem !important
}

.mt-10 {
  margin-top: 10rem !important
}

.mt-5 {
  margin-top: 5rem !important
}

.pointer {
    cursor: pointer;
}

.w-20 { width: 20%;}

.heading{
 color: rgb(60, 120, 176);
}

.heading svg{
    vertical-align: initial;
}

h1.heading svg {vertical-align: initial;}
h1.heading small { font-size: 50%;}

pre {
    white-space: pre-wrap;
    word-wrap: break-word;
    overflow-wrap: break-word; /* Modern alternative to word-wrap */
    max-width: 100%; /* Prevents overflow */
}

.table-row-fixed-height tbody tr {
    height: 48px; /* Set your desired height */
}

.table-row-fixed-height tbody td {
    vertical-align: middle;
}


/* Wider tooltip for this page */
.tooltip.tooltip-wide {
    --bs-tooltip-max-width: 320px;
    text-align: left;
}

/* Fallback for older Bootstrap builds */
.tooltip-wide .tooltip-inner {
    max-width: 320px;
    text-align: left;
}


/* Highlight readonly controls */
.form-control[readonly],
input.form-control:read-only,
textarea.form-control:read-only {
    background-color: #e9ecef; /* subtle highlight */
    border-color: #dee2e6;
}

.form-control[readonly]:focus {
    box-shadow: none; /* keep focus style calm for readonly */
}


/* Highlight readonly controls */
.form-control[auto], .interactive-first-time{
    background-color: #fff4cc!important; /* subtle highlight */
    border-color: #e0b100!important;
}

.interactive-first-time { 
    border: 1px #e0b100 solid;
    border-radius: 0.25rem;
    padding: 0.25rem 0.5rem; 
}

.badge-lm3 {
    background-color: #90ad47 !important;
    color: #fff; /* Optional: ensures text is readable */
}

.badge-active {
    background-color: #198754;
}

.badge-not-active {
    background-color: #FFC107;
    color: black;
}

.badge-local {
    background-color: #DC3545;
}
.badge-local-text {
    color: #DC3545;
}

.badge-regional {
    background-color: #FFD966;
    color: black;
}
.badge-regional-text {
    color: #FFD966;
}

.badge-not-completed {
    background-color: #6C757D;
}

.badge-disabled {
    background-color: #e6e6f1;
}

.badge-suppliers {
    background-color: #377a0b;
}
.badge-suppliers-text {
    color: #377a0b;
}

.badge-outside {
    background-color: #0D6EFD;    
}
.badge-outside-text {
    color: #0D6EFD;
}


.spaced-row td, .spaced-row th {
    padding-bottom: 20px;
}

.spaced-row-top td, .spaced-row-top th {
    padding-top: 20px;
}


.spaced-row-border {
    border-bottom: 2px solid #3c77af!important;
}


.alert.bg-info-subtle {
    background-color: var(--bs-info-bg-subtle) !important;
    color: var(--bs-info-text-emphasis) !important;
    border-color: var(--bs-info-border-subtle) !important;
}

.alert.bg-success-subtle {
    background-color: var(--bs-success-bg-subtle) !important;
    color: var(--bs-success-text-emphasis) !important;
    border-color: var(--bs-success-border-subtle) !important;
}

.alert.bg-warning-subtle {
    background-color: var(--bs-warning-bg-subtle) !important;
    color: var(--bs-warning-text-emphasis) !important;
    border-color: var(--bs-warning-border-subtle) !important;
}

.alert.bg-danger-subtle {
    background-color: var(--bs-danger-bg-subtle) !important;
    color: var(--bs-danger-text-emphasis) !important;
    border-color: var(--bs-danger-border-subtle) !important;
}

.text-bg-lime {
    --bs-bg-opacity: 1;
    background-color: rgba(193, 255, 7, var(--bs-bg-opacity)) !important;
    color: #000 !important;
}

.action-btn {
    min-width: 140px;
}

.desaturate {
    background-color: #d1e7dd !important;
    color: #2c3e35 !important;
}

span[data-tag-name], span[data-clear] {
    cursor: pointer;
}

.email-stats-popover {
    max-width: min(960px, calc(100vw - 2rem));
    min-width: min(480px, calc(100vw - 2rem));
    width: max-content;
}

.form-switch-regional {
    transform: scale(2.5);
    margin-right: 2.5em;
    margin-top: 0.70em;
}

.debug { background-color: #eadce8; font-size: 0.7em; padding: 0.2em; border-radius: 0.2em; }

div[data-calculator-switch] {
    cursor: pointer;
}

.form-check-input:checked {
    background-color: #3c77af;
    border-color: #3c77af;
}