﻿/* Import Mulish font */
@import url('https://fonts.googleapis.com/css2?family=Mulish:wght@300;400;500;600;700;800&display=swap');

/* Root font settings */
:root {
    --bs-font-sans-serif: 'Mulish', 'Helvetica Neue', Helvetica, sans-serif;
}

/* Apply globally */
body {
    font-family: 'Mulish', 'Helvetica Neue', Helvetica, sans-serif;
    font-weight: 400;
    line-height: 1.6;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

/* Headings */
h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
    font-family: 'Mulish', 'Helvetica Neue', Helvetica, sans-serif;
    font-weight: 700;
    line-height: 1.2;
}

/* Strong / bold text */
strong, b {
    font-weight: 700;
}

/* Light text */
.text-light,
.fw-light {
    font-weight: 300 !important;
}

/* Medium weight utility override */
.fw-medium {
    font-weight: 500 !important;
}

/* Semi-bold */
.fw-semibold {
    font-weight: 600 !important;
}

/* Buttons */
.btn {
    font-family: 'Mulish', 'Helvetica Neue', Helvetica, sans-serif;
    font-weight: 600;
    letter-spacing: 0.02em;
}

/* Form elements */
input, textarea, select, button {
    font-family: 'Mulish', 'Helvetica Neue', Helvetica, sans-serif;
}

/* Navbar */
.navbar,
.navbar-brand,
.nav-link {
    font-family: 'Mulish', 'Helvetica Neue', Helvetica, sans-serif;
    font-weight: 500;
}

/* Cards */
.card-title {
    font-weight: 600;
}

.card-text {
    font-weight: 400;
}

/* Small text */
small,
.text-muted {
    font-weight: 300;
}


/* PRIMARY BUTTON OVERRIDE */
.btn-primary {
    /* Fallback solid color */
    background-color: #0273ba;
    border-color: #0273ba;
    color: #ffffff;
    /* Gradient */
    background-image: linear-gradient(135deg, #012a52, #0273ba);
    border: 1px solid #0273ba;
    font-weight: 600;
    transition: all 0.2s ease-in-out;
}

    /* Hover state */
    .btn-primary:hover,
    .btn-primary:focus {
        color: #ffffff;
        border-color: #012a52;
        /* Gradient hover */
        background-image: linear-gradient(135deg, #012a52, #253a6e);
        /* Fallback hover */
        background-color: #012a52;
    }

    /* Active / pressed */
    .btn-primary:active,
    .btn-primary.active,
    .show > .btn-primary.dropdown-toggle {
        color: #ffffff;
        background-image: none;
        background-color: #012a52;
        border-color: #012a52;
    }

    /* Disabled */
    .btn-primary:disabled,
    .btn-primary.disabled {
        background-image: none;
        background-color: #0273ba;
        border-color: #0273ba;
        opacity: 0.65;
    }

    /* Optional: remove Bootstrap default shadow */
    .btn-primary:focus {
        box-shadow: 0 0 0 0.2rem rgba(2, 115, 186, 0.25);
    }


/* BADGE → MATCH PRIMARY BUTTON STYLE */
.badge.text-bg-success {
    color: #ffffff !important;
    /* Fallback */
    background-color: #0273ba;
    /* Gradient */
    background-image: linear-gradient(135deg, #012a52, #0273ba);
    border: 1px solid #0273ba;
    font-weight: 600;
}

    /* Optional: subtle hover (if badge is clickable) */
    .badge.text-bg-success:hover {
        background-image: linear-gradient(135deg, #012a52, #253a6e);
        background-color: #012a52;
        border-color: #012a52;
    }

/* GLOBAL BACKGROUND OVERRIDE */
body {
    background-color: #edeff1;
    color: #212529; /* keep Bootstrap default text color */
}

/* SUCCESS BUTTON → MATCH PRIMARY STYLE */
.btn-success {
    /* Fallback */
    background-color: #0273ba;
    border-color: #0273ba;
    color: #ffffff;
    /* Gradient */
    background-image: linear-gradient(135deg, #012a52, #0273ba);
    border: 1px solid #0273ba;
    font-weight: 600;
    letter-spacing: 0.02em;
    transition: all 0.2s ease-in-out;
}

    /* Hover / focus */
    .btn-success:hover,
    .btn-success:focus {
        color: #ffffff;
        border-color: #012a52;
        /* Gradient hover */
        background-image: linear-gradient(135deg, #012a52, #253a6e);
        /* Fallback */
        background-color: #012a52;
    }

    /* Active / pressed */
    .btn-success:active,
    .btn-success.active,
    .show > .btn-success.dropdown-toggle {
        color: #ffffff;
        background-image: none;
        background-color: #012a52;
        border-color: #012a52;
    }

    /* Disabled */
    .btn-success:disabled,
    .btn-success.disabled {
        background-image: none;
        background-color: #0273ba;
        border-color: #0273ba;
        opacity: 0.65;
    }

    /* Focus ring */
    .btn-success:focus {
        box-shadow: 0 0 0 0.2rem rgba(2, 115, 186, 0.25);
    }

/* Footer */
footer {
    background-color: #edeff1;
}

footer .row {
    background-color: #edeff1;
}

footer > .container > .row:last-child {
    background-color: #edeff1; 
}

ul {
    font-family: 'Mulish', 'Helvetica Neue', Helvetica, sans-serif;
}

table {
    font-family: 'Mulish', 'Helvetica Neue', Helvetica, sans-serif;
}

