:root {
    --fc-blue: #0288d1;
    --fc-green: #198754;
    --fc-yellow: #fad972;
}

html {
  font-size: 14px;
}

.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;
}

.btn-fc-green {
    background-color: var(--fc-green);
    color: #fff;s
}

.btn-fc-yellow {
    background-color: var(--fc-yellow);
}

.fc-yellow:hover {
    color: #000;
    background-color: #ffca2c;
    border-color: #ffc720;
}

html {
  position: relative;
  min-height: 100%;
}

html, body {
  margin-bottom: 0;
}

body {
    margin-bottom: 0;
}

input:focus::placeholder {
    color: transparent;
}

.custom-label {
    font-weight: 600;
}

x-small, .x-small {
    font-size: 0.75em;
}

.text-primary {
    color: #198754 !important;
}

.bg-fc-blue {
    background-color: var(--fc-blue);
}

.bg-fc-green {
    background-color: var(--fc-green);
}

.bg-fc-yellow {
    background-color: var(--fc-yellow);
}


/* Collapsible contact chevron rotation */
[data-bs-toggle="collapse"] .fa-chevron-down {
    transition: transform 0.2s ease;
}
[data-bs-toggle="collapse"]:not(.collapsed) .fa-chevron-down {
    transform: rotate(180deg);
}

/* Footer styling for the portal */
.site-footer {
    background: transparent;
    color: #6c757d;
    margin-bottom: 0;
    padding-bottom: 0;
}

.site-footer a {
    text-decoration: none;
}

.site-footer .footer-logo {
    height: 84px;
    width: auto;
    display: inline-block;
    vertical-align: middle;
}

/* Ensure footer (Bootstrap .footer) does not shrink so mt-auto moves it to bottom */
.footer {
    flex-shrink: 0;
}

/* Small screens: center text under logo */
@media (max-width: 767.98px) {
    html {
        font-size: 16px;
    }
    
    .site-footer .container {
        text-align: center;
    }

    .site-footer .text-md-end {
        margin-top: .5rem;
    }
}