:root {
    --brand-powder-blue: #b0e0e6;
    --brand-pink: #ffc0cb;
    --brand-sage: #9cba7f;
    --brand-lavender: #e6e6fa;
    --brand-white: #ffffff;
    --brand-black: #000000;
}

/* Navbar styling */
.navbar-dark {
    background-color: var(--brand-pink) !important;
    color: var(--brand-black) !important;
}

.navbar-dark .navbar-brand,
.navbar-dark .nav-link {
    color: var(--brand-black) !important;
}

.navbar-dark .nav-link.active {
    font-weight: bold;
    text-decoration: underline;
}

.navbar-dark .navbar-toggler-icon {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%280, 0, 0, 0.75%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e") !important;
}

.navbar-dark .navbar-toggler {
    border-color: var(--brand-black) !important;
}

/* Main content background */
body {
    background-color: var(--brand-white);
}

/* Primary buttons */
.btn-primary {
    background-color: var(--brand-powder-blue);
    border-color: var(--brand-powder-blue);
    color: var(--brand-black);
}

.btn-primary:hover {
    background-color: var(--brand-sage);
    border-color: var(--brand-sage);
    color: var(--brand-white);
}

/* Secondary buttons */
.btn-secondary {
    background-color: var(--brand-lavender);
    border-color: var(--brand-lavender);
    color: var(--brand-black);
}

.btn-secondary:hover {
    background-color: var(--brand-pink);
    border-color: var(--brand-pink);
    color: var(--brand-black);
}

/* Danger buttons */
.btn-danger {
    background-color: var(--brand-pink);
    border-color: var(--brand-pink);
    color: var(--brand-black);
}

.btn-danger:hover {
    background-color: #ff9aa2;
    border-color: #ff9aa2;
    color: var(--brand-black);
}

/* Table styling */
.table-striped > tbody > tr:nth-of-type(odd) {
    background-color: var(--brand-powder-blue);
    opacity: 0.7;
}

.table-striped > tbody > tr:nth-of-type(even) {
    background-color: var(--brand-white);
}

.table-striped > tbody > tr:hover {
    background-color: var(--brand-lavender);
    opacity: 1;
}

/* Modal styling */
.modal-header {
    background-color: var(--brand-lavender);
    color: var(--brand-black);
    border-bottom: 1px solid var(--brand-powder-blue);
}

.modal-footer {
    background-color: var(--brand-white);
    border-top: 1px solid var(--brand-powder-blue);
}

/* Form control styling */
.form-control:focus {
    border-color: var(--brand-sage);
    box-shadow: 0 0 0 0.25rem rgba(156, 186, 127, 0.25);
}

/* Links styling */
a {
    color: var(--brand-sage);
    text-decoration: none;
}

a:hover {
    color: var(--brand-powder-blue);
    text-decoration: underline;
}

/* Select2 customization */
.select2-container--bootstrap-5 .select2-selection {
    border-color: var(--brand-sage);
}

.select2-container--bootstrap-5 .select2-selection--single:focus {
    border-color: var(--brand-sage);
    box-shadow: 0 0 0 0.25rem rgba(156, 186, 127, 0.25);
}

.select2-container--bootstrap-5 .select2-dropdown .select2-results__option--highlighted {
    background-color: var(--brand-powder-blue);
    color: var(--brand-black);
}