/* Admin dashboard visual layer. Kept separate from the vendor theme so the page can evolve safely. */
.admin-dashboard {
    --dashboard-ink: #172033;
    --dashboard-muted: #667085;
    --dashboard-border: #e8edf3;
    --dashboard-primary: #3157d5;
    color: var(--dashboard-ink);
}

.admin-dashboard > .d-flex:first-child {
    position: relative;
    isolation: isolate;
    margin-inline: -1rem;
    padding: 1.5rem 1.5rem 1.35rem;
    border: 1px solid rgba(49, 87, 213, .10);
    border-radius: 1.15rem;
    background: radial-gradient(circle at 90% 0%, rgba(49, 87, 213, .13), transparent 34%), linear-gradient(135deg, #fff 0%, #f7f9ff 100%);
    box-shadow: 0 10px 30px rgba(26, 39, 68, .06);
}

.admin-dashboard > .d-flex:first-child h1 {
    color: var(--dashboard-ink);
    font-size: clamp(1.65rem, 2.5vw, 2.35rem);
    letter-spacing: -.035em;
}

.admin-dashboard .card {
    border: 1px solid var(--dashboard-border) !important;
    border-radius: 1rem;
    box-shadow: 0 5px 18px rgba(25, 39, 66, .045) !important;
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.admin-dashboard a.card:hover,
.admin-dashboard a.card:focus-visible {
    border-color: rgba(49, 87, 213, .28) !important;
    box-shadow: 0 12px 28px rgba(35, 61, 125, .13) !important;
    transform: translateY(-3px);
}

.admin-dashboard a.card:focus-visible { outline: 3px solid rgba(49, 87, 213, .22); outline-offset: 3px; }

.admin-dashboard .card-body { padding: 1.35rem; }
.admin-dashboard .symbol-label { border-radius: .8rem; }
.admin-dashboard .fs-2hx { letter-spacing: -.045em; }

.admin-dashboard > h4 {
    display: flex;
    align-items: center;
    gap: .65rem;
    margin-top: 2.25rem;
    letter-spacing: -.02em;
}

.admin-dashboard > h4::before {
    content: "";
    width: .28rem;
    height: 1.45rem;
    border-radius: 999px;
    background: var(--dashboard-primary);
}

.admin-dashboard .card-header {
    min-height: 5.1rem;
    padding-inline: 1.35rem;
    border-bottom: 1px solid #f0f2f6 !important;
}

.admin-dashboard .card-header h3 { font-size: 1rem; letter-spacing: -.01em; }
.admin-dashboard .card-header .card-toolbar > span:first-child { letter-spacing: -.04em; }

.admin-dashboard .btn-group .btn,
.admin-dashboard [role="group"] .btn { border-radius: .55rem !important; font-weight: 700; }
.admin-dashboard [role="group"] { padding: .25rem; border: 1px solid var(--dashboard-border); border-radius: .72rem; background: #fff; }

.admin-dashboard .alert { border: 0; border-radius: .85rem; box-shadow: 0 5px 18px rgba(49, 87, 213, .08); }
.admin-dashboard canvas { max-width: 100%; }

@media (max-width: 767.98px) {
    .admin-dashboard > .d-flex:first-child { margin-inline: -.35rem; padding: 1.15rem; }
    .admin-dashboard .card-header { min-height: auto; gap: 1rem; flex-wrap: wrap; }
    .admin-dashboard .card-header .card-toolbar { margin-inline-start: auto; }
    .admin-dashboard [role="group"] { width: 100%; overflow-x: auto; }
    .admin-dashboard [role="group"] .btn { flex: 0 0 auto; }
}

@media (prefers-reduced-motion: reduce) {
    .admin-dashboard .card { transition: none; }
}
