/*
 * GFx brand override — teal palette derived from the new logo (#47a8a1).
 * Loaded AFTER the compiled Vite bundle so these rules take precedence.
 * This file is additive only; it does not modify the built Vite assets.
 */
:root {
    --bs-primary: #47a8a1;
    --bs-primary-rgb: 71, 168, 161;
    --bs-primary-text-emphasis: #2b6561;
    --bs-primary-bg-subtle: #edf6f6;
    --bs-primary-border-subtle: #b5dcd9;
    --bs-link-color: #47a8a1;
    --bs-link-color-rgb: 71, 168, 161;
    --bs-link-hover-color: #398681;
    --bs-link-hover-color-rgb: 57, 134, 129;
}

html[data-bs-theme="dark"] {
    --bs-primary: #47a8a1;
    --bs-primary-rgb: 71, 168, 161;
    --bs-primary-text-emphasis: #7ec2bd;
    --bs-primary-bg-subtle: #143634;
    --bs-primary-border-subtle: #2b6561;
    --bs-link-color: #7ec2bd;
    --bs-link-color-rgb: 126, 194, 189;
    --bs-link-hover-color: #a3d5d1;
    --bs-link-hover-color-rgb: 163, 213, 209;
}

.text-primary { color: #47a8a1 !important; }
.bg-primary { background-color: #47a8a1 !important; }
.border-primary { border-color: #47a8a1 !important; }
.link-primary { color: #47a8a1 !important; }

.btn-primary {
    --bs-btn-bg: #47a8a1 !important;
    --bs-btn-border-color: #47a8a1 !important;
    --bs-btn-hover-bg: #3c8f89 !important;
    --bs-btn-hover-border-color: #398681 !important;
    --bs-btn-active-bg: #398681 !important;
    --bs-btn-active-border-color: #398681 !important;
    --bs-btn-disabled-bg: #47a8a1 !important;
    --bs-btn-disabled-border-color: #47a8a1 !important;
    --bs-btn-focus-shadow-rgb: 71, 168, 161 !important;
    background-color: #47a8a1 !important;
    border-color: #47a8a1 !important;
}
.btn-primary:hover, .btn-primary:active, .btn-primary:focus {
    background-color: #3c8f89 !important;
    border-color: #398681 !important;
}

.btn-outline-primary {
    --bs-btn-color: #47a8a1 !important;
    --bs-btn-border-color: #47a8a1 !important;
    --bs-btn-hover-bg: #47a8a1 !important;
    --bs-btn-hover-border-color: #47a8a1 !important;
    --bs-btn-active-bg: #398681 !important;
    --bs-btn-active-border-color: #398681 !important;
    color: #47a8a1 !important;
    border-color: #47a8a1 !important;
}
.btn-outline-primary:hover, .btn-outline-primary:active {
    background-color: #47a8a1 !important;
    border-color: #47a8a1 !important;
    color: #fff !important;
}

.badge.bg-primary,
.alert-primary,
.table-primary,
.progress-bar,
.list-group-item.active,
.list-group-item-primary,
.page-item.active .page-link,
.nav-pills .nav-link.active,
.nav-pills .show > .nav-link,
.dropdown-item.active,
.dropdown-item:active {
    background-color: #47a8a1 !important;
    border-color: #47a8a1 !important;
}

.form-check-input:checked {
    background-color: #47a8a1 !important;
    border-color: #47a8a1 !important;
}
.form-check-input:focus,
.form-control:focus,
.form-select:focus {
    border-color: #7ec2bd !important;
    box-shadow: 0 0 0 .25rem rgba(71, 168, 161, .25) !important;
}
.form-switch .form-check-input:checked {
    background-color: #47a8a1 !important;
    border-color: #47a8a1 !important;
}

.spinner-border.text-primary,
.spinner-grow.text-primary {
    color: #47a8a1 !important;
}

/* Sidebar / topbar active states (Rasket vertical menu) */
.navbar-nav .nav-link.active,
.navbar-nav .nav-link:hover,
#navigation-menu .active > .nav-link,
#navigation-menu .nav-link.active,
#navigation-menu .nav-link:hover,
.logo-sm.text-primary,
.logo-box .text-primary {
    color: #47a8a1 !important;
}

.accordion-button:not(.collapsed) {
    color: #2b6561 !important;
    background-color: #edf6f6 !important;
}
.accordion-button:focus {
    border-color: #7ec2bd !important;
    box-shadow: 0 0 0 .25rem rgba(71, 168, 161, .25) !important;
}

/* Brand logo image */
.gfx-logo-mark {
    height: 34px;
    width: auto;
}
.gfx-logo-mark.gfx-logo-sm {
    height: 28px;
}

/* Sidebar (main-nav) — dark teal to match the GFx logo, replacing the default navy */
html[data-bs-theme="dark"][data-menu-color="dark"],
[data-menu-color="dark"] {
    --bs-main-nav-bg: #14312e !important;
    --bs-main-nav-item-color: #a9c7c2 !important;
    --bs-main-nav-item-hover-bg: #1d4a44 !important;
    --bs-main-nav-item-hover-color: #ffffff !important;
    --bs-main-nav-border-color: #23433d !important;
}

/* Hard override: the compiled theme sometimes sets .main-nav backgrounds and
   nav-link colors directly instead of through the --bs-main-nav-* variables,
   so force the same colors here too. */
.wrapper .main-nav {
    background-color: #14312e !important;
}
.wrapper .main-nav .navbar-nav .nav-item .nav-link {
    color: #a9c7c2 !important;
}
.wrapper .main-nav .navbar-nav .nav-item .nav-link.show,
.wrapper .main-nav .navbar-nav .nav-item .nav-link.active,
.wrapper .main-nav .navbar-nav .nav-item .nav-link:active,
.wrapper .main-nav .navbar-nav .nav-item .nav-link:hover,
.wrapper .main-nav .navbar-nav .nav-item .nav-link:focus {
    color: #ffffff !important;
    background-color: #1d4a44 !important;
}
