a {
    text-decoration: none;
}
.page-item {
    margin: 0 3px;
}
.page-link {
    border-radius: .2rem!important;
    font-size: .8rem!important;
}
/* body {
    font-size: 14px!important;
} */
/* Compact tables */
.table-compact table.table > :not(caption) > * > * {
    padding: .35rem .5rem;
}
.table-compact table.table {
    font-size: .9rem;
}
input, select, textarea {
    font-size: .9rem!important;
    border-radius: .2rem!important;
    background-color: rgba(var(--bs-secondary-rgb), .1)!important;
}
.nav-link {
    color: var(--bs-emphasis-color) !important;
    padding-left: 0 !important;
    padding-right: 10px !important;
}

/* Secondary (small) sub nav under header */
.nav.small .nav-link {
    color: var(--bs-secondary-color) !important;
}
.nav.small .nav-link:hover {
    color: var(--bs-primary) !important;
}
/* Active state for sub nav */
.nav.small .nav-link.active {
    color: var(--bs-primary) !important;
    font-weight: 600;
}
.btn {
    font-size: .9rem!important;
    border-radius: .2rem!important;
}

/* Soft/Dusty button palette (solid variants) */
.btn-primary {
    --bs-btn-color: #fff;
    --bs-btn-bg: #6b8faf;        /* dusty blue */
    --bs-btn-border-color: #6b8faf;
    --bs-btn-hover-bg: #5e7f9a;
    --bs-btn-hover-border-color: #5e7f9a;
    --bs-btn-active-bg: #54748f;
    --bs-btn-active-border-color: #54748f;
}
.btn-success {
    --bs-btn-color: #fff;
    --bs-btn-bg: #6fa57a;        /* soft green */
    --bs-btn-border-color: #6fa57a;
    --bs-btn-hover-bg: #63966e;
    --bs-btn-hover-border-color: #63966e;
    --bs-btn-active-bg: #5a8964;
    --bs-btn-active-border-color: #5a8964;
}
.btn-danger {
    --bs-btn-color: #fff;
    --bs-btn-bg: #c97b7b;        /* dusty rose */
    --bs-btn-border-color: #c97b7b;
    --bs-btn-hover-bg: #b86f6f;
    --bs-btn-hover-border-color: #b86f6f;
    --bs-btn-active-bg: #a96565;
    --bs-btn-active-border-color: #a96565;
}
.btn-warning {
    --bs-btn-color: #1b1b18;
    --bs-btn-bg: #c9a15d;        /* muted mustard */
    --bs-btn-border-color: #c9a15d;
    --bs-btn-hover-bg: #b89054;
    --bs-btn-hover-border-color: #b89054;
    --bs-btn-active-bg: #ab844d;
    --bs-btn-active-border-color: #ab844d;
}
.btn-info {
    --bs-btn-color: #fff;
    --bs-btn-bg: #6aa9b8;        /* soft teal */
    --bs-btn-border-color: #6aa9b8;
    --bs-btn-hover-bg: #5f99a7;
    --bs-btn-hover-border-color: #5f99a7;
    --bs-btn-active-bg: #578d9a;
    --bs-btn-active-border-color: #578d9a;
}
td {
    font-size: .9rem!important;
    padding: .2rem .6rem .2rem .6rem!important;
}

/* Alternate table row borders (respects light/dark via Bootstrap vars) */
.table tbody tr {
    border-left: 1px solid var(--bs-border-color);
    border-right: 1px solid var(--bs-border-color);
}
.table tbody tr:nth-of-type(even) {
    border-left-color: var(--bs-border-color-translucent);
    border-right-color: var(--bs-border-color-translucent);
}
.table tbody tr:first-child {
    border-left-color: var(--bs-border-color);
    border-right-color: var(--bs-border-color);
}
.second-nav {
    background-color: rgba(var(--bs-secondary-rgb), .05)!important;
}
label {
    font-size: .7rem!important;
    padding: 0!important;
    margin-bottom: 6px!important;
    opacity: .7;
    text-transform: uppercase;
}

/* Topbar quick help/contacts */
.topbar {
    background-color: rgba(var(--bs-secondary-rgb), .04)!important;
}
.topbar a {
    color: var(--bs-secondary-color) !important;
}
.topbar a:hover {
    color: var(--bs-primary) !important;
}

/* Fix dropdown overflow in tables */
.card-body.p-0 {
    overflow: visible !important;
}

.table-responsive {
    overflow: visible !important;
}

/* Allow dropdown menus to overflow table cells */
.table td {
    position: relative;
}

/* Ensure dropdowns stay on top and visible */
.dropdown-menu {
    z-index: 1050;
    position: absolute !important;
    will-change: transform;
}

/* Prevent table from clipping dropdowns */
.table {
    overflow: visible;
}

/* Prevent body scroll from dropdown positioning */
html {
    height: 100%;
    overflow-y: scroll;
}

body {
    min-height: 100%;
    overflow-y: auto;
}

/* Compact dropdown menus */
.dropdown-menu {
    min-width: 10rem;
    padding: 0.25rem 0;
    font-size: 0.875rem;
}

.dropdown-item {
    padding: 0.375rem 0.75rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
    color: var(--bs-body-color) !important;
}

.dropdown-item:hover {
    background-color: rgba(var(--bs-primary-rgb), 0.1);
    color: var(--bs-primary) !important;
}

/* Move icons to the right */
.dropdown-item i {
    order: 2;
    margin-left: auto;
    margin-right: 0 !important;
    padding-left: 1rem;
}

/* Remove color variations from dropdown items */
.dropdown-item.text-danger,
.dropdown-item.text-success,
.dropdown-item.text-warning,
.dropdown-item.text-primary {
    color: var(--bs-body-color) !important;
}

.dropdown-item.text-danger:hover,
.dropdown-item.text-success:hover,
.dropdown-item.text-warning:hover,
.dropdown-item.text-primary:hover {
    color: var(--bs-primary) !important;
}

/* Compact dividers */
.dropdown-divider {
    margin: 0.25rem 0;
}

/* No shadow utility */
.no-shadow {
    box-shadow: none !important;
}
.summary-card-header {
    padding: .4rem!important;
    padding-right: 1rem!important;
    display: flex;
    align-items: center;
    gap: .5rem;
    background-color: rgba(var(--bs-secondary-rgb), .05)!important;
    border-radius: .2rem!important;
    margin-bottom: 10px;
}
.summary-card-header p {
    margin: 0;
    display: flex;
    align-items: center;
    gap: .5rem;
    opacity: .7;
    font-size: .8rem;
}
.summary-card-header i {
    color: var(--bs-primary);
    width: 30px;
    height: 30px;
    border-radius: .2rem;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: rgba(var(--bs-primary-rgb), 0.2);
}
.summary-card-header p > i {
    background-color: none!important;
}
.summary-card {
    border-radius: .2rem!important;
    box-shadow: none!important;
    background-color: rgba(var(--bs-secondary-rgb), .05)!important;
    padding: 20px;
    border: 1px solid rgba(var(--bs-secondary-rgb), .1);
}
.summary-card-body .card-subtitle {
    font-size: .7rem!important;
    margin-top: 5px!important;
}
p i {
    background-color: transparent!important;
}

/* Compact actions inside summary cards */
.summary-card .btn {
    font-size: .75rem!important;
    padding-top: .15rem!important;
    padding-bottom: .15rem!important;
    font-weight: 200!important;
    background-color: rgba(var(--bs-secondary-rgb), .1)!important;
    border: 1px solid rgba(var(--bs-secondary-rgb), .1)!important;
}
.btn-group {
    gap: .4rem!important;
}
.card-title {
    font-weight: 300!important;
}
.btn-group .btn i {
    font-size: .80rem!important;
}

/* Summary card color variants */
.summary-card.variant-primary .summary-card-header {
    background-color: rgba(var(--bs-primary-rgb), 0.05)!important;
}
.summary-card.variant-primary .summary-card-header i {
    color: var(--bs-primary);
    background-color: rgba(var(--bs-primary-rgb), 0.2);
}

.summary-card.variant-success .summary-card-header {
    background-color: rgba(var(--bs-success-rgb), 0.05)!important;
}
.summary-card.variant-success .summary-card-header i {
    color: var(--bs-success);
    background-color: rgba(var(--bs-success-rgb), 0.2);
}

.summary-card.variant-danger .summary-card-header {
    background-color: rgba(var(--bs-danger-rgb), 0.05)!important;
}
.summary-card.variant-danger .summary-card-header i {
    color: var(--bs-danger);
    background-color: rgba(var(--bs-danger-rgb), 0.2);
}

.summary-card.variant-info .summary-card-header {
    background-color: rgba(var(--bs-info-rgb), 0.05)!important;
}
.summary-card.variant-info .summary-card-header i {
    color: var(--bs-info);
    background-color: rgba(var(--bs-info-rgb), 0.2);
}

/* Summary card MoM badges: text color only (no background) */
.summary-card-header .badge {
    background-color: transparent !important;
    border: 0 !important;
    color: inherit; /* default inherit; overridden by color variants below */
    border-radius: 0 !important;   /* remove pill shape */
    padding: 0 !important;         /* remove badge padding */
    font-weight: 600;              /* emphasize value */
    font-size: 0.85rem;            /* slightly compact */
}
.summary-card-header .badge.bg-success { color: var(--bs-success) !important; }
.summary-card-header .badge.bg-danger { color: var(--bs-danger) !important; }
.summary-card-header .badge.bg-secondary { color: var(--bs-secondary-color) !important; }

/* Directional arrows for MoM badges */
.summary-card-header .badge.bg-success::before {
    content: "\25B2\00A0"; /* ▲ + nbsp */
    color: var(--bs-success);
}
.summary-card-header .badge.bg-danger::before {
    content: "\25BC\00A0"; /* ▼ + nbsp */
    color: var(--bs-danger);
}
.summary-card-header .badge.bg-secondary::before {
    content: "\2014\00A0"; /* — + nbsp */
    color: var(--bs-secondary-color);
}
.card {
    /* padding: 30px; */
    box-shadow: none;
}
.card-header {
    border-bottom: none;
}
.card-header {
    padding: 10px 0;
}