html {
  font-size: 14px;
}

@media (min-width: 768px) {
  html {
    font-size: 16px;
  }
}

@media print { /* do not center on print (with default margin auto) so wide tables can be printed */
    .container {
        margin-left: 0;
        margin-right: 0;
        max-width: 100% !important;
        width: 100% !important;
        padding: 0 !important;
        margin: 0 !important;
    }
}

html {
  position: relative;
  min-height: 100%;
}

body {
  margin-bottom: 60px;
}

.ZuluTime {
  font-style: italic;
}

.padleft {
  padding-left: 1rem !important;
}

.padright {
  padding-right: 1rem !important;
}

.extralarge {
  font-size: 1.5rem !important;
}

.boostmono {
  font-size: 1.25rem !important; /* font-monospace seems smaller */
}

.foundgray {
  background-color: #161616 !important; /* matching background of profoundrs.com */
}

.foundred {
  color: rgb(242, 12, 11) !important; /* red #f20c0b matching "FOUND" in logo */
}

.foundred-toggler .navbar-toggler-icon {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(242, 12, 11, 1.0)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 8h24M4 16h24M4 24h24'/%3E%3C/svg%3E");
}

.foundred-toggler.navbar-toggler {
  border-color: rgb(242, 12, 11);
}

.msg-container{
  width: 100%;
  display: flex;
}

.msg-container.right{
  justify-content: flex-end;
}

.msg-container.left{
  justify-content: flex-start;
}

.msg{
  max-width: 70%;
  border-radius: 0.5rem;
  padding: 0.5rem;
  margin-bottom: 0.5rem;
}

.msgfullwidth{
  border-radius: 0.5rem;
  padding: 0.5rem;
  margin-bottom: 0.5rem;
}

.cancelled{
  text-decoration: line-through;
}

/* Bootstrap Icons color inheritance and alignment */
.bi {
  color: currentColor;
  vertical-align: -0.125em;
}

#bd-theme .bi {
  color: #000;
}

/* Collapsible sections icon toggle */
[data-bs-toggle="collapse"] {
  cursor: pointer;
  user-select: none;
}

.collapse-chevron {
  transition: transform 0.2s ease-in-out;
  display: inline-block;
}

[data-bs-toggle="collapse"][aria-expanded="true"] .collapse-chevron {
  transform: rotate(180deg);
}

/* Smooth collapse/expand animation with different timing for different content sizes */
.collapse-fast.collapsing {
  transition: height 0.5s ease-out;
}

.collapse-slow.collapsing {
  transition: height 1s ease-out;
}

.toggle-group {
    display: inline-flex;
    align-items: stretch;
    border: 0.7px solid #adb5bd; 
    border-radius: 50rem;
    overflow: hidden;

    height: 22px; 
    width: 60px;
    background-color: var(--bs-body-bg);
}

.toggle-btn {
    border: none;
    background: transparent;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: none; 
    cursor: pointer;
    color: var(--bs-body-color); 
}

.toggle-btn:hover:not(:disabled) {
    background-color: rgba(0, 0, 0, 0.1); 
    color: var(--bs-body-color); 
}


.toggle-btn.active {
    background-color: var(--bs-body-color);
    color: var(--bs-body-bg);
    cursor: default;
}

.toggle-btn i {
    font-size: 0.70rem;
    font-weight: bold;
    line-height: 1;
}

.toggle-btn-check {
    font-size: 0.65rem;
    font-weight: bold;
    line-height: 1;
}

.toggle-group form.border-end {
    border-right-color: #adb5bd !important; 
}

[data-bs-theme="light"] .form-select {
    border-color: #999;
}

tr.table-warning .text-body-secondary {
    color: #212529 !important;
}

.btn .spinner-border,
.btn .loading-icon,
.spinner-border.foundred,
.loading-icon.foundred {
    color: rgb(242, 12, 11) !important;
    border-color: rgb(242, 12, 11) !important;
    border-right-color: transparent !important;
}

.blink-underline {
    text-decoration: underline !important;
    animation: blinker 1s linear infinite;
    pointer-events: none; 
}

@keyframes blinker {
    50% {
        text-decoration-color: transparent;
    }
}