:root{--map-navy:#123f67;--map-dark:#0c2e4c;--map-gold:#b88a3b;--map-bg:#f6f3ed;--map-panel:#fff;--map-border:#dfe5e9;--map-text:#263543;--map-muted:#6d7a85}
.dashboard-page{background:var(--map-bg)}
.dashboard-page .content{width:min(100% - 48px,1280px);margin:0 auto;padding:34px 0 60px}
.dashboard-header{display:flex;justify-content:space-between;gap:28px;margin-bottom:28px}
.dashboard-eyebrow{margin:0 0 8px;color:var(--map-gold);font-size:.74rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.dashboard-header h1,.dashboard-panel h2{color:var(--map-dark);font-family:Georgia,"Times New Roman",serif}
.dashboard-header h1{margin:0;font-size:clamp(2.2rem,4vw,3.6rem);letter-spacing:-.035em}
.dashboard-lead{max-width:720px;margin:12px 0 0;color:var(--map-muted);line-height:1.75}
.dashboard-status{align-self:flex-start;margin-top:8px;padding:9px 13px;color:#21835a;background:#edf8f2;border:1px solid #cce8d8;border-radius:999px;font-size:.78rem;font-weight:750}
.dashboard-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:28px}
.dashboard-metric,.dashboard-panel{background:var(--map-panel);border:1px solid var(--map-border);box-shadow:0 10px 30px rgba(24,48,68,.055)}
.dashboard-metric{min-height:138px;padding:22px;border-radius:16px}
.dashboard-metric-icon{display:flex;align-items:center;justify-content:center;width:38px;height:38px;margin-bottom:16px;color:var(--map-navy);background:#eaf1f7;border-radius:11px}
.dashboard-metric strong{display:block;margin-bottom:5px;color:var(--map-dark);font-size:2rem;line-height:1}.dashboard-metric>span:last-child{color:var(--map-muted);font-size:.82rem;font-weight:700}
.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,.75fr);gap:20px;align-items:start}.dashboard-column{display:grid;gap:20px}.dashboard-panel{padding:24px;border-radius:18px}
.dashboard-panel-header{display:flex;justify-content:space-between;gap:18px;margin-bottom:18px}.dashboard-panel-header h2{margin:3px 0 0;font-size:1.45rem}.dashboard-panel-header p{margin:5px 0 0;color:var(--map-muted);font-size:.82rem}.dashboard-panel-link{color:var(--map-navy);font-size:.8rem;font-weight:750;white-space:nowrap}
#dynamic-intro-text{color:#4e5d69;line-height:1.78}.home-story-lead{color:var(--map-text);font-size:1.05rem}
.dashboard-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.dashboard-action{display:flex;align-items:center;gap:13px;min-height:76px;padding:15px;color:var(--map-text);background:#fbfcfd;border:1px solid var(--map-border);border-radius:13px}.dashboard-action:hover{color:var(--map-text);transform:translateY(-2px)}.dashboard-action-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;flex:0 0 auto;color:var(--map-navy);background:#eaf1f7;border-radius:11px}.dashboard-action strong,.dashboard-action small{display:block}.dashboard-action small{color:var(--map-muted)}
.dashboard-activity-list,.dashboard-case-list{display:grid;gap:8px}.dashboard-list-item{display:grid;grid-template-columns:36px minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid #edf0f2}.dashboard-list-item:last-child{border-bottom:0}.dashboard-list-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;color:var(--map-navy);background:#eef4f8;border-radius:10px}.dashboard-list-copy strong,.dashboard-list-copy span{display:block}.dashboard-list-copy strong{font-size:.84rem}.dashboard-list-copy span,.dashboard-list-meta{color:var(--map-muted);font-size:.72rem}.dashboard-empty{padding:22px;color:var(--map-muted);background:#fafbfc;border:1px dashed #ccd5db;border-radius:12px;text-align:center}
#home-personal-summary{display:grid;gap:12px}#home-personal-summary .home-info-card,#home-personal-summary .home-bond-card{margin:0;padding:17px;border:1px solid var(--map-border);border-radius:13px;box-shadow:none}
@media(max-width:1050px){.dashboard-metrics{grid-template-columns:repeat(2,1fr)}.dashboard-grid{grid-template-columns:1fr}}@media(max-width:700px){.dashboard-page .content{width:min(100% - 24px,1280px)}.dashboard-header{display:block}.dashboard-status{display:inline-block;margin-top:16px}.dashboard-actions{grid-template-columns:1fr}}@media(max-width:520px){.dashboard-metrics{grid-template-columns:1fr}.dashboard-panel{padding:18px}}

/* =========================================================
   SPRINT 5.1A — HERO PREMIUM
========================================================= */
.dashboard-hero-premium{
    display:grid;
    grid-template-columns:minmax(0,1.45fr) minmax(330px,.72fr);
    gap:28px;
    align-items:stretch;
    margin-bottom:20px;
    padding:34px;
    overflow:hidden;
    background:
        radial-gradient(circle at 8% 8%,rgba(184,138,59,.13),transparent 28%),
        linear-gradient(135deg,#ffffff 0%,#fbfcfd 56%,#f1f6fa 100%);
    border:1px solid var(--map-border);
    border-radius:22px;
    box-shadow:0 18px 44px rgba(24,48,68,.075);
}
.dashboard-hero-main{
    display:flex;
    flex-direction:column;
    justify-content:center;
    min-height:290px;
    padding:8px 12px 8px 4px;
}
.dashboard-hero-main h1{
    max-width:760px;
    margin:0;
    color:var(--map-dark);
    font-family:Georgia,"Times New Roman",serif;
    font-size:clamp(2.7rem,5vw,4.7rem);
    line-height:.98;
    letter-spacing:-.045em;
}
.dashboard-hero-main .dashboard-lead{
    max-width:690px;
    margin:22px 0 0;
    font-size:1.03rem;
}
.dashboard-hero-actions{
    display:flex;
    flex-wrap:wrap;
    gap:12px;
    margin-top:28px;
}
.dashboard-hero-button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    min-height:46px;
    padding:0 18px;
    border-radius:11px;
    font-size:.86rem;
    font-weight:800;
    transition:transform 160ms ease,box-shadow 160ms ease,background-color 160ms ease;
}
.dashboard-hero-button:hover{
    transform:translateY(-2px);
}
.dashboard-hero-button.is-primary{
    color:#fff;
    background:var(--map-navy);
    box-shadow:0 10px 22px rgba(18,63,103,.18);
}
.dashboard-hero-button.is-primary:hover{color:#fff;background:var(--map-dark)}
.dashboard-hero-button.is-secondary{
    color:var(--map-dark);
    background:rgba(255,255,255,.82);
    border:1px solid var(--map-border);
}
.dashboard-hero-button.is-secondary:hover{color:var(--map-dark);background:#fff}
.dashboard-archive-status{
    display:flex;
    flex-direction:column;
    justify-content:space-between;
    min-width:0;
    padding:22px;
    color:#fff;
    background:
        linear-gradient(160deg,rgba(255,255,255,.07),transparent 42%),
        linear-gradient(145deg,var(--map-dark),#174f79);
    border:1px solid rgba(255,255,255,.08);
    border-radius:18px;
    box-shadow:0 18px 42px rgba(12,46,76,.24);
}
.dashboard-archive-status .dashboard-eyebrow{color:#e0bd78}
.dashboard-archive-status-heading{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:14px;
}
.dashboard-archive-status h2{
    margin:2px 0 0;
    color:#fff;
    font-family:Georgia,"Times New Roman",serif;
    font-size:1.45rem;
}
.dashboard-archive-status .dashboard-status{
    display:inline-flex;
    align-items:center;
    gap:7px;
    margin:0;
    padding:7px 10px;
    color:#e7faef;
    background:rgba(63,180,119,.15);
    border-color:rgba(126,222,169,.26);
}
.dashboard-status-dot{
    width:7px;
    height:7px;
    border-radius:50%;
    background:#76dfa7;
    box-shadow:0 0 0 4px rgba(118,223,167,.12);
}
.dashboard-status-primary{
    margin:30px 0 22px;
    padding:22px 0;
    border-top:1px solid rgba(255,255,255,.12);
    border-bottom:1px solid rgba(255,255,255,.12);
}
.dashboard-status-primary strong{
    display:block;
    color:#fff;
    font-family:Georgia,"Times New Roman",serif;
    font-size:clamp(3rem,5vw,4.8rem);
    line-height:.85;
    letter-spacing:-.04em;
}
.dashboard-status-primary span{
    display:block;
    margin-top:12px;
    color:rgba(255,255,255,.74);
    font-size:.82rem;
    font-weight:700;
}
.dashboard-status-list{
    display:grid;
    gap:0;
    margin:0;
}
.dashboard-status-list>div{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:14px;
    align-items:center;
    padding:12px 0;
    border-bottom:1px solid rgba(255,255,255,.09);
}
.dashboard-status-list>div:last-child{border-bottom:0}
.dashboard-status-list dt{
    color:rgba(255,255,255,.66);
    font-size:.75rem;
}
.dashboard-status-list dd{
    margin:0;
    color:#fff;
    font-size:.78rem;
    font-weight:800;
    text-align:right;
}
.dashboard-metric{
    position:relative;
    overflow:hidden;
}
.dashboard-metric::after{
    content:"";
    position:absolute;
    right:-24px;
    bottom:-34px;
    width:96px;
    height:96px;
    border-radius:50%;
    background:#edf3f7;
}
.dashboard-metric>*{position:relative;z-index:1}
.dashboard-metric-detail{
    display:block;
    margin-top:10px;
    color:#98a4ad;
    font-size:.69rem;
    font-weight:700;
}
@media(max-width:1100px){
    .dashboard-hero-premium{grid-template-columns:1fr}
    .dashboard-hero-main{min-height:auto}
}
@media(max-width:700px){
    .dashboard-hero-premium{padding:22px;border-radius:16px}
    .dashboard-hero-main h1{font-size:2.65rem}
    .dashboard-archive-status-heading{flex-direction:column}
    .dashboard-status-list>div{grid-template-columns:1fr}
    .dashboard-status-list dd{text-align:left}
}
/* =========================================================
   SPRINT 11.3 — DASHBOARD COMPONENT MIGRATION
========================================================= */

#dashboard-component-hero {
    margin-bottom: var(--mtv-space-4);
}

#dashboard-component-metrics {
    margin-bottom: var(--mtv-space-5);
}

/*
 * Legacy dashboard hero selectors are retained below for compatibility
 * with older snapshots, but the live page now uses shared components.
 */

.dashboard-page .mtv-hero {
    min-height: 430px;
}

.dashboard-page .mtv-summary-panel {
    min-height: 100%;
}

.dashboard-page .mtv-metric-card {
    min-height: 150px;
}

.dashboard-page .mtv-metric-card__value {
    font-family: var(--mtv-font-serif);
    font-size: 2.1rem;
}

.dashboard-page .dashboard-grid {
    margin-top: var(--mtv-space-5);
}

@media (max-width: 980px) {
    .dashboard-page .mtv-hero {
        min-height: auto;
    }
}
