/* Shared BVM shell and primary dashboard polish. Deliberately scoped. */
.bvm-shell {
    --bvm-ink: #18324a;
    --bvm-blue: #1769aa;
    --bvm-deep: #104d7e;
    --bvm-line: #d9e5ee;
    --bvm-wash: #f1f7fb;
}
.bvm-shell .bvm-nav {
    background: #f8fbfd !important;
    border-bottom: 1px solid var(--bvm-line);
    box-shadow: 0 2px 12px rgba(24, 50, 74, .08);
}
.bvm-shell .bvm-nav > .absolute { display: none; }
.bvm-shell .bvm-nav a:hover { color: var(--bvm-blue) !important; }
.bvm-dashboard {
    color: var(--bvm-ink);
}
.bvm-dashboard > div:first-child {
    background: linear-gradient(118deg, var(--bvm-deep), var(--bvm-blue)) !important;
    border: 1px solid rgba(255,255,255,.16);
    box-shadow: 0 10px 26px rgba(16, 77, 126, .16);
}
.bvm-dashboard > div:first-child h1 {
    display: flex;
    align-items: center;
    gap: .65rem;
    letter-spacing: -.025em;
}
.bvm-title-icon {
    width: 1.3em;
    height: 1.3em;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.6;
    opacity: .9;
}
.bvm-dashboard > div:not(:first-child) {
    transition: transform .18s ease, box-shadow .18s ease;
}
.bvm-dashboard > div:not(:first-child):hover {
    box-shadow: 0 10px 24px rgba(24, 50, 74, .1);
}
.bvm-dashboard a,
.bvm-dashboard button {
    min-height: 42px;
}
.bvm-dashboard h2,
.bvm-dashboard h3 {
    letter-spacing: -.012em;
}
.bvm-card-title {
    display: flex;
    align-items: center;
    gap: .55rem;
}
.bvm-card-icon {
    width: 1.25em;
    height: 1.25em;
    flex: 0 0 auto;
    fill: none;
    stroke: var(--bvm-blue);
    stroke-width: 1.6;
}
@media (max-width: 640px) {
    .bvm-dashboard { margin-bottom: 1rem; }
    .bvm-dashboard > div:first-child { border-radius: 12px; }
    .bvm-dashboard a,
    .bvm-dashboard button { min-height: 46px; }
}