@import url('https://fonts.googleapis.com/css2?family=Shrikhand&display=swap');
:root, .nav-pills {
    /* Ocean Slate palette */
    --os-dark: #152a17;
    --os-primary: #274420;
    --os-primary-deep: #3a6330;
    --os-accent: #ede9e6;
    --os-accent-light: #ede9e6;
    --os-accent-hover: #ede9e6;
    --os-surface: #E8EEF2;
    --os-text: #0d170d;
    --os-danger: #DC4A3A;
    --os-danger-dark: #C43E30;
    --os-danger-text: #7A2218;

    /* Bootstrap mappings */
    --bs-body-bg: var(--os-dark);
    --bs-link-color: var(--os-accent);
    --bs-heading-color: var(--os-accent-light);
    --bs-body-color: var(--os-text);
    --bs-border-color: var(--os-primary);
    --bs-emphasis-color: var(--os-accent-light);

    --bs-nav-pills-link-active-color: var(--os-dark);
    --bs-nav-pills-link-active-bg: var(--os-accent);
    --bs-nav-link-hover-color: var(--os-accent-hover);
}
.table {
    --bs-table-bg: transparent;
    --bs-table-color: var(--os-text);
}
.page-link {
    --bs-pagination-bg: var(--os-surface);
    --bs-pagination-color: var(--os-dark);
    --bs-pagination-hover-bg: var(--os-accent-light);
    --bs-pagination-hover-color: var(--os-dark);
}
.btn-success {
    --bs-btn-bg: var(--os-primary);
    --bs-btn-border-color: var(--os-primary);
    --bs-btn-hover-bg: var(--os-primary-deep);
    --bs-btn-hover-border-color: var(--os-primary-deep);
}
.btn-outline-success {
    --bs-btn-border-color: var(--os-primary);
    --bs-btn-color: var(--os-primary);
    --bs-btn-disabled-border-color: var(--os-primary);
    --bs-btn-disabled-color: var(--os-primary);
}
.btn-danger {
    --bs-btn-bg: var(--os-danger);
    --bs-btn-border-color: var(--os-danger);
    --bs-btn-hover-bg: var(--os-danger-dark);
    --bs-btn-hover-border-color: var(--os-danger-dark);
}
.btn-outline-danger {
    --bs-btn-border-color: var(--os-danger);
    --bs-btn-color: var(--os-danger-text);
    --bs-btn-disabled-border-color: var(--os-danger);
    --bs-btn-disabled-color: var(--os-danger-text);
}
h1, h2, h3, h4, h5, h6 {
    font-family: 'Shrikhand', 'Helvetica', 'Arial', sans-serif;
}
.pagebody {
    background-color: var(--os-surface);
    --bs-heading-color: var(--os-dark);
    --bs-body-color: var(--os-text);
    border-radius: 0.375rem;
}
.form-control {
    background-color: transparent;
}
.form-control:focus {
    background-color: transparent;
}
.form-label {
    color: var(--bs-body-color);
}
.nav-link-admin {
    color: var(--os-danger);
}
.nav-pills .nav-link-admin.active {
    background-color: var(--os-danger);
    color: var(--os-surface);
}
.nav-link-admin:hover {
    color: var(--os-danger-dark);
}
.progress {
    height: 1.5rem;
    font-size: 1rem;
}
.js-choice {
    --choices-bg-color: var(--os-surface);
}
select.form-select {
    --bs-body-bg: var(--os-surface);
}
.modal {
    --bs-modal-bg: var(--os-surface);
}
.modal .btn-danger {
    --bs-btn-bg: var(--os-danger-dark);
    --bs-btn-hover-bg: #A33325;
}
.form-check-input {
    --bs-form-check-bg: var(--os-surface);
}