.dashboard3-page { width: 100%; color: var(--premium-text-primary, #f7f4ff); }
.dashboard3-heading { display: flex; align-items: end; justify-content: space-between; gap: 1rem; margin-bottom: 1.2rem; }
.dashboard3-heading h1 { margin: 0; font-size: clamp(1.75rem, 4vw, 2.4rem); font-weight: 900; }
.dashboard3-kicker { color: #a78bfa; font-size: .72rem; font-weight: 850; letter-spacing: .12em; text-transform: uppercase; }
.dashboard3-rates { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: .6rem; }
.dashboard3-rates span { padding: .48rem .7rem; border: 1px solid rgba(167, 139, 250, .24); border-radius: .55rem; background: rgba(124, 58, 237, .08); font-size: .76rem; }
.dashboard3-card { margin-bottom: 1rem; overflow: hidden; border: 1px solid rgba(139, 92, 246, .25); border-radius: .8rem; background: rgba(6, 8, 34, .78); box-shadow: 0 .7rem 1.8rem rgba(0, 0, 0, .14); }
.dashboard3-card > h2 { margin: 0; padding: .72rem 1rem; background: linear-gradient(105deg, #31105c, #11163f); color: #fff; font-size: .98rem; font-weight: 850; }
.dashboard3-summary-table-wrap { overflow-x: auto; }
.dashboard3-summary-table { width: 100%; border-collapse: collapse; table-layout: fixed; }
.dashboard3-summary-table td { padding: .78rem 1rem; border-top: 1px solid rgba(139, 92, 246, .17); font-size: .82rem; font-weight: 750; vertical-align: middle; }
.dashboard3-summary-table td:first-child { width: 54%; border-right: 1px solid rgba(139, 92, 246, .17); }
.dashboard3-summary-table td:last-child { text-align: right; }
.dashboard3-summary-table .dashboard3-formula-row td { width: auto; border-right: 0; text-align: left; }
.dashboard3-summary-value { display: inline-block; font-size: 1.08rem; font-weight: 900; }
.dashboard3-summary-table .dashboard3-help { margin-left: .65rem; vertical-align: middle; }
.dashboard3-page .positive, .dashboard3-modal .positive { color: #22c55e; }
.dashboard3-page .negative, .dashboard3-modal .negative { color: #fb7185; }
.dashboard3-help { width: 1.35rem; height: 1.35rem; flex: 0 0 1.35rem; padding: 0; border: 1px solid rgba(167, 139, 250, .45); border-radius: 50%; color: #c4b5fd; background: transparent; font-size: .7rem; font-weight: 900; }
.dashboard3-formula { margin: .55rem 0 0; color: #8f87a3; font-size: .7rem; line-height: 1.35; }
.dashboard3-link { padding: 0; border: 0; color: inherit; background: transparent; font: inherit; font-weight: inherit; text-decoration: underline dotted; text-underline-offset: .2rem; }
.dashboard3-detail-control { display: flex; justify-content: flex-end; margin: .3rem 0 1rem; }
.dashboard3-detail-control button { padding: .58rem .9rem; border: 1px solid rgba(139, 92, 246, .48); border-radius: .55rem; color: inherit; background: rgba(124, 58, 237, .11); font-size: .78rem; font-weight: 850; }
.dashboard3-detail-control span { display: inline-block; margin-left: .25rem; transition: transform .18s; }
.dashboard3-detail-control button[aria-expanded="true"] span { transform: rotate(180deg); }
.dashboard3-table-wrap { overflow-x: auto; }
.dashboard3-table { width: 100%; min-width: 520px; border-collapse: collapse; }
.dashboard3-table td { padding: .72rem 1rem; border-top: 1px solid rgba(139, 92, 246, .15); font-size: .8rem; font-weight: 700; }
.dashboard3-table td:last-child { text-align: right; font-size: .92rem; font-weight: 900; }
.dashboard3-table td:last-child .dashboard3-help { margin-left: .65rem; }
.dashboard3-code { display: inline-flex; min-width: 2.25rem; margin-right: .55rem; padding: .18rem .3rem; justify-content: center; border-radius: .3rem; color: #c4b5fd; background: rgba(124, 58, 237, .14); font-size: .67rem; font-weight: 900; }
.dashboard3-formula-row td { color: #8f87a3; background: rgba(124, 58, 237, .045); font-size: .72rem; font-weight: 500; text-align: left !important; }
.dashboard3-total-row { background: rgba(124, 58, 237, .08); }
.dashboard3-modal { overflow: hidden; border: 1px solid rgba(139, 92, 246, .3); border-radius: .8rem; color: #17152b; }
.dashboard3-modal .modal-header { color: #fff; background: linear-gradient(105deg, #31105c, #11163f); }
.dashboard3-modal .btn-close { filter: invert(1); }
.dashboard3-balance-line { display: flex; align-items: center; justify-content: space-between; gap: .75rem; padding: .7rem .1rem; font-size: .8rem; font-weight: 700; }
.dashboard3-balance-line + .dashboard3-balance-line { border-top: 1px solid #e7e3ef; }
.dashboard3-balance-line small { display: block; color: #777187; font-size: .62rem; }
.dashboard3-balance-line strong { font-size: .92rem; }
.dashboard3-balance-line.total { margin-top: .25rem; border-top: 2px solid #8b5cf6; font-size: .9rem; font-weight: 900; }
body.light-theme .dashboard3-page, body.forest-theme .dashboard3-page { color: var(--premium-text, #172033); }
body.light-theme .dashboard3-card, body.forest-theme .dashboard3-card { border-color: var(--premium-border, #dce3e8); background: var(--premium-panel, #fff); box-shadow: 0 .55rem 1.4rem rgba(20, 30, 50, .07); }
body.light-theme .dashboard3-card > h2 { background: linear-gradient(105deg, #087fa9, #24a9d5); }
body.forest-theme .dashboard3-card > h2 { background: linear-gradient(105deg, #064e3b, #047857); }
body.light-theme .dashboard3-card > h2, body.forest-theme .dashboard3-card > h2 { color: #fff !important; }
body.light-theme .dashboard3-heading h1 { color: #082f49 !important; }
body.forest-theme .dashboard3-heading h1 { color: #064e3b !important; }
body.light-theme .dashboard3-summary-label, body.light-theme .dashboard3-formula, body.light-theme .dashboard3-formula-row td,
body.forest-theme .dashboard3-summary-label, body.forest-theme .dashboard3-formula, body.forest-theme .dashboard3-formula-row td { color: var(--premium-text-secondary, #64748b); }
body.light-theme .dashboard3-summary-table td, body.light-theme .dashboard3-table td,
body.forest-theme .dashboard3-summary-table td, body.forest-theme .dashboard3-table td { border-color: var(--premium-border, #dce3e8); }
body.light-theme .dashboard3-detail-control button, body.forest-theme .dashboard3-detail-control button { color: inherit; background: rgba(var(--bs-primary-rgb), .07); }
@media (max-width: 575.98px) {
    .dashboard3-heading { align-items: flex-start; flex-direction: column; }
    .dashboard3-rates { justify-content: flex-start; }
    .dashboard3-summary-table td { padding: .7rem .75rem; }
    .dashboard3-summary-value { font-size: 1.05rem; }
}
