/* Utility classes used by existing admin views (Phase 1 compat layer) */

.avatar-sm { height: 2.25rem; width: 2.25rem; }
.avatar-md { height: 3.5rem; width: 3.5rem; display: flex; align-items: center; justify-content: center; }
.avatar-lg { height: 4.5rem; width: 4.5rem; }
.avatar-title { display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; }

.fs-13 { font-size: 0.8125rem !important; }
.fs-15 { font-size: 0.9375rem !important; }
.fs-16 { font-size: 1rem !important; }
.fs-18 { font-size: 1.125rem !important; }
.fs-22 { font-size: 1.375rem !important; }
.fs-24 { font-size: 1.5rem !important; }
.fs-32 { font-size: 2rem !important; }
.fs-48 { font-size: 3rem !important; }

.bg-soft-primary { background-color: rgba(var(--tblr-primary-rgb, 6, 111, 209), 0.18) !important; }
.bg-soft-success { background-color: rgba(var(--tblr-success-rgb, 47, 179, 68), 0.18) !important; }
.bg-soft-warning { background-color: rgba(var(--tblr-warning-rgb, 245, 159, 0), 0.18) !important; }
.bg-soft-info { background-color: rgba(var(--tblr-info-rgb, 66, 153, 225), 0.18) !important; }
.bg-soft-danger { background-color: rgba(var(--tblr-danger-rgb, 214, 57, 57), 0.18) !important; }
.bg-soft-secondary { background-color: rgba(var(--tblr-secondary-rgb, 107, 114, 128), 0.18) !important; }

.btn-soft-primary { color: var(--tblr-primary, #066fd1); background: rgba(var(--tblr-primary-rgb, 6, 111, 209), 0.12); border: 0; }
.btn-soft-primary:hover { color: #fff; background: var(--tblr-primary, #066fd1); }
.btn-soft-secondary { color: var(--tblr-secondary, #6b7280); background: rgba(var(--tblr-secondary-rgb, 107, 114, 128), 0.12); border: 0; }
.btn-soft-success { color: var(--tblr-success, #2fb344); background: rgba(var(--tblr-success-rgb, 47, 179, 68), 0.12); border: 0; }
.btn-soft-warning { color: var(--tblr-warning, #f59f00); background: rgba(var(--tblr-warning-rgb, 245, 159, 0), 0.12); border: 0; }
.btn-soft-info { color: var(--tblr-info, #4299e1); background: rgba(var(--tblr-info-rgb, 66, 153, 225), 0.12); border: 0; }
.btn-soft-danger { color: var(--tblr-danger, #d63939); background: rgba(var(--tblr-danger-rgb, 214, 57, 57), 0.12); border: 0; }

.badge-soft-primary { color: var(--tblr-primary, #066fd1); background: rgba(var(--tblr-primary-rgb, 6, 111, 209), 0.15); }
.badge-soft-success { color: var(--tblr-success, #2fb344); background: rgba(var(--tblr-success-rgb, 47, 179, 68), 0.15); }
.badge-soft-info { color: var(--tblr-info, #4299e1); background: rgba(var(--tblr-info-rgb, 66, 153, 225), 0.15); }
.badge-soft-danger { color: var(--tblr-danger, #d63939); background: rgba(var(--tblr-danger-rgb, 214, 57, 57), 0.15); }
.badge-soft-secondary { color: var(--tblr-secondary, #6b7280); background: rgba(var(--tblr-secondary-rgb, 107, 114, 128), 0.15); }
.badge-soft-warning { color: var(--tblr-warning, #f59f00); background: rgba(var(--tblr-warning-rgb, 245, 159, 0), 0.15); }

.badge.badge-soft-primary,
.badge.badge-soft-success,
.badge.badge-soft-info,
.badge.badge-soft-danger,
.badge.badge-soft-secondary,
.badge.badge-soft-warning {
    display: inline-flex;
    align-items: center;
    font-weight: 500;
    line-height: 1.2;
    padding: 0.25rem 0.625rem;
    border-radius: 999px;
}

html[data-bs-theme=dark] .text-dark,
html[data-bs-theme=dark] h3.text-dark,
html[data-bs-theme=dark] h4.text-dark,
html[data-bs-theme=dark] h5.text-dark,
html[data-bs-theme=dark] .card-title.text-dark {
    color: var(--bs-body-color) !important;
}

html[data-bs-theme=dark] .btn-outline-light {
    color: #e5e7eb;
    border-color: rgba(255, 255, 255, 0.22);
}

html[data-bs-theme=dark] .btn-outline-light:hover,
html[data-bs-theme=dark] .btn-outline-light.active {
    color: #fff;
    background: rgba(139, 92, 246, 0.22);
    border-color: rgba(139, 92, 246, 0.65);
}

html[data-bs-theme=dark] .btn-light {
    color: #111827;
}

html[data-bs-theme=dark] .dropdown-menu .text-dark {
    color: var(--bs-body-color) !important;
}

html[data-bs-theme=dark] .apexcharts-text,
html[data-bs-theme=dark] .apexcharts-title-text,
html[data-bs-theme=dark] .apexcharts-legend-text {
    fill: #d1d5db !important;
}

html[data-bs-theme=dark] .apexcharts-gridline,
html[data-bs-theme=dark] .apexcharts-xaxis-tick,
html[data-bs-theme=dark] .apexcharts-yaxis-tick {
    stroke: rgba(255, 255, 255, 0.08);
}

.apex-charts {
    min-height: 10px;
}

.card .border-start {
    border-color: rgba(255, 255, 255, 0.08) !important;
}

html[data-bs-theme=light] .card .border-start {
    border-color: rgba(0, 0, 0, 0.08) !important;
}

.mt-n2 { margin-top: -0.5rem !important; }

.page-title-box { margin-bottom: 1rem; }

.border-dashed { border-style: dashed !important; }
