/* ===========================================================================
   Axis Portal brand theme — recolours Vuexy primary to match the logo
   (forest green) with an amber/gold accent. Loaded AFTER core.css/custom.css.
   =========================================================================== */

:root,
.light-style,
.dark-style,
[data-theme="theme-default"] {
    --bs-primary: #1c7c4a;            /* logo forest green */
    --bs-primary-rgb: 28, 124, 74;
    --bs-primary-contrast: #ffffff;

    /* amber/gold accent from the logo ring */
    --axis-amber: #f0a81e;
    --axis-amber-rgb: 240, 168, 30;
}

/* ── Sidebar: active menu item (was dark navy) → green gradient ──────────── */
.menu-vertical .menu-inner > .menu-item.active > .menu-link:not(.menu-toggle) {
    background: linear-gradient(270deg, rgba(var(--bs-primary-rgb), 0.78) 0%, var(--bs-primary) 100%) !important;
    color: #fff !important;
    box-shadow: 0 2px 6px 0 rgba(var(--bs-primary-rgb), 0.40);
}
.menu-vertical .menu-inner > .menu-item.active > .menu-link .menu-icon {
    color: #fff !important;
}
/* hover state on non-active items → soft green tint */
.menu-vertical .menu-inner > .menu-item:not(.active) > .menu-link:hover {
    background: rgba(var(--bs-primary-rgb), 0.08);
    color: var(--bs-primary);
}
.menu-vertical .menu-inner > .menu-item:not(.active) > .menu-link:hover .menu-icon {
    color: var(--bs-primary);
}

/* brand text colour to match logo green */
.app-brand .app-brand-text { color: var(--bs-primary) !important; }

/* ── Buttons (btn-primary is hardcoded in core.css) ─────────────────────── */
.btn-primary {
    --bs-btn-color: #fff;
    --bs-btn-bg: #1c7c4a;
    --bs-btn-border-color: #1c7c4a;
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #186b40;
    --bs-btn-hover-border-color: #176338;
    --bs-btn-focus-shadow-rgb: var(--bs-primary-rgb);
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: #176338;
    --bs-btn-active-border-color: #155c34;
    --bs-btn-disabled-color: #fff;
    --bs-btn-disabled-bg: #1c7c4a;
    --bs-btn-disabled-border-color: #1c7c4a;
}
.btn-outline-primary {
    --bs-btn-color: #1c7c4a;
    --bs-btn-border-color: #1c7c4a;
    --bs-btn-hover-bg: #1c7c4a;
    --bs-btn-hover-border-color: #1c7c4a;
    --bs-btn-active-bg: #1c7c4a;
    --bs-btn-active-border-color: #1c7c4a;
    --bs-btn-focus-shadow-rgb: var(--bs-primary-rgb);
}

/* ── Misc primary accents ───────────────────────────────────────────────── */
.form-check-input:checked,
.form-check-input[type=checkbox]:indeterminate {
    background-color: #1c7c4a;
    border-color: #1c7c4a;
}
.form-switch .form-check-input:checked { background-color: #1c7c4a; border-color: #1c7c4a; }
.page-item.active .page-link { background-color: #1c7c4a; border-color: #1c7c4a; }
a { color: #1c7c4a; }
a:hover { color: #176338; }
.nav-pills .nav-link.active { background-color: #1c7c4a; }

/* allow the 3-dots actions dropdown to escape the datatable wrapper */
.card-datatable.table-responsive { overflow: visible; }
.card-datatable .dataTables_scrollBody { overflow: visible !important; }
table.dataTable td .dropdown-menu { z-index: 1056; }

/* chain step rows: don't clip the row action dropdown */
.chain-editor-card .table-responsive { overflow: visible; }
.chain-steps-table td .dropdown-menu { z-index: 1056; }

/* order detail items table: don't clip the row action dropdown */
.order-items-table { overflow: visible; }
.card > .table-responsive:has(.order-items-table) { overflow: visible; }

/* priority kanban card 3-dot menus (rendered with fixed Popper strategy) */
.kanban-card .dropdown-menu.show,
.res-card .dropdown-menu.show { z-index: 1060; }

/* amber accent — login button highlight & spinners stay green; keep amber subtle */
.text-amber { color: var(--axis-amber) !important; }
.bg-amber { background-color: var(--axis-amber) !important; color:#3a2c00 !important; }
.app-brand img { box-shadow: 0 0 0 2px rgba(var(--axis-amber-rgb), 0.5); }
