html {
  font-size: 14px;
}

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

.btn:focus, .btn:active:focus, .btn-link.nav-link:focus, .form-control:focus, .form-check-input:focus {
  box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #258cfb;
}

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

.footer.has-action-bar {
    margin-bottom: calc(4.25rem + 2px);
}

.btn.btn-primary {
    border-color: #FBCB04;
    background: #FBCB04;
    color: black;
    transition: all 0.2s;
}

.btn.btn-primary:hover {
    border-color: #EFBF00;
    background: #EFBF00;
    color: black;
}

.fs-7 {
    font-size: 0.8rem;
}

[data-bs-theme="dark"] .visible-light {
    display: none;
}

[data-bs-theme="light"] .visible-dark {
    display: none;
}

.layout {
    min-height: calc(100vh - 28px - 6.5rem);
}

.file-upload-container {
    max-width: 700px;
    width: 100%;
}

.file-upload-container a {
    color: inherit !important;
}

.file-upload-container .drop-zone {
    border-radius: 1rem;
    border: 2px dashed grey;
    padding: 2rem 1rem 1rem 1rem;
    display: flex;
    flex-direction: column;
    align-content: center;
    align-items: center;
    gap: 1rem;
    transition: 0.2s border;
}

.file-upload-container .drop-zone:hover {
    border: 2px dashed #FECE04;
    cursor: pointer;
}

.markdown-content h4 {
    font-size: 1.2rem;
    padding-top: 1rem;
    margin: 1rem 0 0.25rem 0;
}

.markdown-content h4:first-of-type {
    margin-top: 0;
}

.markdown-content h5 {
    font-size: 1rem;
    padding: 0;
    color: grey;
    font-weight: normal;
}

.markdown-content .table-container {
    width: 100%;
    overflow: auto;
}

.markdown-content .table-container table {
    width: auto;
    margin-bottom: 3px;
}

.markdown-content .table-container table th {
    min-width: 90px;
    max-width: 120px;
}
