/* Devsation client theme — brand red + Poppins. */

:root,
[data-bs-theme="light"],
[data-bs-theme="dark"] {
    --devsation-font: "Poppins", system-ui, -apple-system, sans-serif;
    --bs-body-font-family: var(--devsation-font);
    --bs-font-sans-serif: var(--devsation-font);
}

body {
    font-family: var(--devsation-font);
}

:root,
[data-bs-theme="light"] {
    --devsation-brand: #cc2020;
    --devsation-brand-rgb: 204, 32, 32;
    --bs-primary: #cc2020;
    --bs-primary-rgb: 204, 32, 32;
    --bs-primary-text-emphasis: #7a1313;
    --bs-primary-bg-subtle: #f8d6d6;
    --bs-primary-border-subtle: #e99a9a;
    --bs-link-color: #cc2020;
    --bs-link-hover-color: #a31919;
    --bs-link-color-rgb: 204, 32, 32;
    --bs-link-hover-color-rgb: 163, 25, 25;
    --bs-focus-ring-color: rgba(204, 32, 32, 0.25);
    --tblr-primary: #cc2020;
    --tblr-primary-rgb: 204, 32, 32;
    --tblr-primary-fg: #ffffff;
}

[data-bs-theme="dark"] {
    --devsation-brand: #cc2020;
    --devsation-brand-rgb: 204, 32, 32;
    --bs-primary: #cc2020;
    --bs-primary-rgb: 204, 32, 32;
    --bs-link-color: #e24a4a;
    --bs-link-hover-color: #f07a7a;
    --bs-link-color-rgb: 226, 74, 74;
    --tblr-primary: #cc2020;
    --tblr-primary-rgb: 204, 32, 32;
}

/* Menu / page titles: body text, not brand color */
.navbar .nav-link,
.navbar .nav-link:hover,
.navbar .nav-link.active,
.offcanvas-body .nav-link,
.offcanvas-body .nav-link:hover,
.offcanvas-body .nav-link.active,
.offcanvas-item.active > .nav-link {
    color: var(--bs-body-color) !important;
}

.offcanvas-item.active > .nav-link {
    font-weight: 600;
}

.alert-info {
    --bs-alert-color: var(--bs-body-color);
    --bs-alert-bg: var(--bs-tertiary-bg);
    --bs-alert-border-color: var(--bs-border-color);
}

.alert-info,
.alert-info h1,
.alert-info h2,
.alert-info h3,
.alert-info h4,
.alert-info p,
.alert-info li {
    color: var(--bs-body-color) !important;
}

.btn-primary,
.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active,
.btn-primary.active,
.btn-primary.disabled,
.btn-primary:disabled,
.show > .btn-primary.dropdown-toggle {
    --bs-btn-color: #fff;
    --bs-btn-bg: var(--devsation-brand);
    --bs-btn-border-color: var(--devsation-brand);
    --bs-btn-hover-bg: #a31919;
    --bs-btn-hover-border-color: #a31919;
    --bs-btn-active-bg: #8f1616;
    --bs-btn-active-border-color: #8f1616;
    color: #fff !important;
    background-color: var(--devsation-brand) !important;
    border-color: var(--devsation-brand) !important;
}

.btn-primary:hover,
.btn-primary:focus {
    background-color: #a31919 !important;
    border-color: #a31919 !important;
}

.card .btn-dark,
.card .btn-dark:hover,
.card .btn-dark:focus {
    color: #fff !important;
    background-color: var(--devsation-brand) !important;
    border-color: var(--devsation-brand) !important;
}

.btn-outline-primary,
.btn-outline-primary:disabled,
.btn-outline-primary.disabled {
    --bs-btn-color: var(--devsation-brand);
    --bs-btn-border-color: var(--devsation-brand);
    color: var(--devsation-brand) !important;
    border-color: var(--devsation-brand) !important;
    background-color: transparent !important;
}

.btn-outline-primary:hover,
.btn-outline-primary:focus,
.btn-outline-primary:active,
.btn-outline-primary.active {
    color: #fff !important;
    background-color: var(--devsation-brand) !important;
    border-color: var(--devsation-brand) !important;
}

.nav-pills {
    --bs-nav-pills-link-active-bg: var(--devsation-brand);
    --bs-nav-pills-link-active-color: #fff;
}

.pagination {
    --bs-pagination-active-bg: var(--devsation-brand);
    --bs-pagination-active-border-color: var(--devsation-brand);
}

.form-check-input:checked {
    background-color: var(--devsation-brand) !important;
    border-color: var(--devsation-brand) !important;
}

.form-check-input:focus,
.form-select:focus,
.form-control:focus {
    border-color: #e99a9a;
    box-shadow: 0 0 0 0.25rem rgba(var(--devsation-brand-rgb), 0.25);
}

.progress-bar,
.bg-primary {
    background-color: var(--devsation-brand) !important;
}

.text-primary,
a.text-primary {
    color: var(--devsation-brand) !important;
}

.border-primary {
    border-color: var(--devsation-brand) !important;
}

.page-link {
    color: var(--devsation-brand);
}

.page-item.active .page-link {
    background-color: var(--devsation-brand);
    border-color: var(--devsation-brand);
    color: #fff;
}

input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active,
textarea:-webkit-autofill,
select:-webkit-autofill {
    -webkit-text-fill-color: var(--bs-body-color, #212529);
    caret-color: var(--bs-body-color, #212529);
    -webkit-box-shadow: 0 0 0 1000px #fff inset;
    box-shadow: 0 0 0 1000px #fff inset;
    border-color: #e99a9a !important;
    transition: background-color 99999s ease-out;
}

[data-bs-theme="dark"] input:-webkit-autofill,
[data-bs-theme="dark"] input:-webkit-autofill:hover,
[data-bs-theme="dark"] input:-webkit-autofill:focus,
[data-bs-theme="dark"] textarea:-webkit-autofill,
[data-bs-theme="dark"] select:-webkit-autofill {
    -webkit-text-fill-color: var(--bs-body-color, #fff);
    caret-color: var(--bs-body-color, #fff);
    -webkit-box-shadow: 0 0 0 1000px var(--bs-body-bg, #1e1e1e) inset;
    box-shadow: 0 0 0 1000px var(--bs-body-bg, #1e1e1e) inset;
}

input.is-invalid:-webkit-autofill,
input.is-invalid:-webkit-autofill:hover,
input.is-invalid:-webkit-autofill:focus,
textarea.is-invalid:-webkit-autofill,
select.is-invalid:-webkit-autofill {
    -webkit-box-shadow: 0 0 0 1000px #fff inset;
    box-shadow: 0 0 0 1000px #fff inset;
    border-color: var(--bs-form-invalid-border-color, #dc3545) !important;
}

input.is-valid:-webkit-autofill,
input.is-valid:-webkit-autofill:hover,
input.is-valid:-webkit-autofill:focus,
textarea.is-valid:-webkit-autofill,
select.is-valid:-webkit-autofill {
    -webkit-box-shadow: 0 0 0 1000px #fff inset;
    box-shadow: 0 0 0 1000px #fff inset;
    border-color: var(--bs-form-valid-border-color, #198754) !important;
}
