/* SMARTCO Bootstrap-first enterprise polish v2.0
   Scope: sidebar visual refresh + card display polish.
   This layer intentionally preserves routes, APIs, data, and component contracts. */
:root {
    --smartco-surface: #ffffff;
    --smartco-surface-soft: #f8fafc;
    --smartco-border: rgba(15, 23, 42, .08);
    --smartco-shadow: 0 .75rem 2rem rgba(15, 23, 42, .08);
    --smartco-shadow-soft: 0 .35rem 1.25rem rgba(15, 23, 42, .06);
    --smartco-primary: #2563eb;
    --smartco-primary-soft: rgba(37, 99, 235, .10);
    --smartco-title: #64748b;
    --smartco-value: #0f172a;
}

.card.smartco-bootstrap-card,
.smartco-bootstrap-card,
.tenant-foundation .card,
.tenant-foundation-card,
.foundation-card,
.summary-card,
.stat-card,
.metric-card,
.kpi-card {
    background: linear-gradient(180deg, var(--smartco-surface), var(--smartco-surface-soft));
    border: 1px solid var(--smartco-border) !important;
    border-radius: 1rem !important;
    box-shadow: var(--smartco-shadow-soft) !important;
    min-height: 7.25rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    gap: .35rem;
    padding: 1rem 1.15rem;
    transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease;
}

.card.smartco-bootstrap-card:hover,
.smartco-bootstrap-card:hover,
.tenant-foundation .card:hover,
.tenant-foundation-card:hover,
.foundation-card:hover,
.summary-card:hover,
.stat-card:hover,
.metric-card:hover,
.kpi-card:hover {
    transform: translateY(-2px);
    box-shadow: var(--smartco-shadow) !important;
    border-color: rgba(37, 99, 235, .20) !important;
}

.smartco-card-title,
.tenant-foundation .card-title,
.summary-title,
.stat-title,
.metric-title,
.kpi-title {
    color: var(--smartco-title) !important;
    font-size: .78rem;
    font-weight: 700;
    letter-spacing: .01em;
    margin-bottom: .15rem;
}

.smartco-card-value,
.tenant-foundation .card-value,
.summary-value,
.stat-value,
.metric-value,
.kpi-value {
    color: var(--smartco-value) !important;
    font-size: 1.35rem;
    font-weight: 800;
    line-height: 1.25;
}

.smartco-sidebar-shell,
.sidebar {
    background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
    border-inline-end: 1px solid var(--smartco-border);
}

.smartco-sidebar-scroll,
.nav-scrollable {
    scrollbar-width: thin;
    scrollbar-color: rgba(100, 116, 139, .35) transparent;
}

.smartco-sidebar-section-title,
.nav-section-title,
.nav-group-title {
    color: #94a3b8 !important;
    font-size: .70rem;
    letter-spacing: .06em;
}

.smartco-sidebar-link,
.sidebar .nav-link,
.nav-scrollable .nav-link {
    min-height: 2.45rem;
    margin: .16rem .35rem;
    border: 1px solid transparent;
    border-radius: .85rem;
    color: #334155 !important;
    transition: background-color .14s ease, color .14s ease, border-color .14s ease, box-shadow .14s ease, transform .14s ease;
}

.smartco-sidebar-link:hover,
.sidebar .nav-link:hover,
.nav-scrollable .nav-link:hover {
    background: var(--smartco-primary-soft);
    color: var(--smartco-primary) !important;
    border-color: rgba(37, 99, 235, .12);
    box-shadow: 0 .25rem .8rem rgba(37, 99, 235, .08);
    transform: translateX(-1px);
}

.smartco-sidebar-link.active,
.sidebar .nav-link.active,
.nav-scrollable .nav-link.active,
.sidebar .nav-link[aria-current="page"] {
    background: linear-gradient(135deg, rgba(37, 99, 235, .14), rgba(14, 165, 233, .10));
    color: #1d4ed8 !important;
    border-color: rgba(37, 99, 235, .22);
    box-shadow: inset 3px 0 0 #2563eb, 0 .35rem 1rem rgba(37, 99, 235, .08);
}

.sidebar .nav-link .bi,
.nav-scrollable .nav-link .bi,
.smartco-sidebar-link .bi {
    width: 1.25rem;
    height: 1.25rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    opacity: .88;
}

.smartco-bootstrap-toolbar .btn,
.tenant-foundation .btn {
    border-radius: .8rem;
    font-weight: 700;
}