html,
body {
    margin: 0;
    min-height: 100%;
    background: #020d20;
    color: #f2f7ff;
    font-family: Arial, Helvetica, sans-serif;
}

body {
    min-height: 100vh;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    color: #f2f7ff;
}

a {
    color: #75d0ff;
}

    a:hover {
        color: #00d2ff;
    }

/* Cards */

.card {
    background: linear-gradient( 145deg, rgba(3, 40, 88, 0.98), rgba(3, 28, 62, 0.98) );
    border: 1px solid rgba(117, 208, 255, 0.30);
    border-radius: 12px;
    box-shadow: 0 0 18px rgba(0, 210, 255, 0.06);
}

.card-title {
    color: #75d0ff;
}

/* Inputs */

.form-control,
.form-select {
    background: rgba(4, 61, 128, 0.55);
    border: 1px solid rgba(117, 208, 255, 0.28);
    color: #f2f7ff;
}

    .form-control:focus,
    .form-select:focus {
        background: rgba(4, 61, 128, 0.75);
        color: #ffffff;
        border-color: #75d0ff;
        box-shadow: 0 0 0 0.2rem rgba(0, 210, 255, 0.12);
    }

    .form-control::placeholder {
        color: rgba(242, 247, 255, 0.55);
    }

    .form-select option {
        background: #031a3a;
        color: #f2f7ff;
    }

/* Labels */

.form-label {
    color: #b9dfff;
}

/* Tables */

.table {
    color: #f2f7ff;
    border-color: rgba(117, 208, 255, 0.18);
}

    .table > :not(caption) > * > * {
        background-color: transparent;
        color: #f2f7ff;
        border-color: rgba(117, 208, 255, 0.15);
    }

.table-striped > tbody > tr:nth-of-type(odd) > * {
    background-color: rgba(117, 208, 255, 0.04);
    color: #f2f7ff;
}

.table thead th {
    color: #75d0ff;
    border-bottom-color: rgba(117, 208, 255, 0.35);
}

/* Primary buttons */

.btn-primary {
    background: linear-gradient( 135deg, #00d2ff, #2a82ff );
    border-color: #00d2ff;
    color: #020d20;
    font-weight: 600;
}

    .btn-primary:hover {
        background: #75d0ff;
        border-color: #75d0ff;
        color: #020d20;
    }

/* Outline buttons */

.btn-outline-primary {
    border-color: #75d0ff;
    color: #75d0ff;
}

    .btn-outline-primary:hover {
        background: #75d0ff;
        color: #020d20;
    }

/* Secondary */

.btn-secondary {
    background: #031a3a;
    border-color: rgba(117, 208, 255, 0.35);
    color: #b9dfff;
}

/* Alerts */

.alert-success {
    background: rgba(0, 210, 255, 0.10);
    border-color: rgba(0, 210, 255, 0.35);
    color: #b9dfff;
}

.alert-danger {
    background: rgba(228, 86, 73, 0.12);
    color: #f2f7ff;
}
