/* Extension layer for Capital Pro's larger operational dashboard. */
.nav-groups { display:grid; gap:.25rem; }
.nav-group { border:1px solid transparent; border-radius:.75rem; padding:.2rem; transition:border-color .18s,background .18s; }
.nav-group[open] { background:rgba(255,255,255,.045); border-color:rgba(148,163,184,.14); }
.nav-group summary { align-items:center; color:#c6d9ed; cursor:pointer; display:flex; font-size:.73rem; font-weight:800; justify-content:space-between; letter-spacing:.025em; list-style:none; min-height:2.55rem; padding:.45rem .55rem; text-transform:none; }
.nav-group summary::-webkit-details-marker { display: none; }
.nav-group summary::after { color:#6ee7dc; content:'+'; font-size:1.15rem; font-weight:500; line-height:1; }
.nav-group[open] summary::after { content:'-'; }
.nav-group-title { align-items:center; display:flex; gap:.6rem; }
.nav-group-title .ui-icon { color:#78e5d8; height:1.05rem; width:1.05rem; }
.nav-group .nav-item { margin-left:.1rem; padding:.48rem .6rem .48rem .75rem; width:calc(100% - .1rem); }
.nav-group .nav-icon { background:rgba(255,255,255,.055); border-radius:.45rem; height:27px; width:27px; }
.nav-group .nav-icon .ui-icon { height:15px; width:15px; }
.hero-dashboard { display: grid; gap: 1rem; grid-template-columns: minmax(0, 1.7fr) minmax(250px, .8fr); margin-bottom: 1rem; }
.hero-dashboard > section { min-height: 168px; }
.dashboard-welcome { background: linear-gradient(135deg, #082f49 0%, #0f766e 100%); border: 0; color: white; overflow: hidden; position: relative; }
.dashboard-welcome::after { border: 32px solid rgba(255,255,255,.09); border-radius: 999px; content: ''; height: 148px; position: absolute; right: -55px; top: -74px; width: 148px; }
.dashboard-welcome h2 { color: white; font-size: clamp(1.35rem, 2vw, 2rem); margin: .2rem 0 .45rem; }
.dashboard-welcome p { color: #d9fef8; max-width: 50ch; }
.hero-tag { color: #6ee7dc; display: block; font-size: .75rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.dashboard-welcome .quick-actions { grid-template-columns: repeat(3,minmax(0,1fr)); margin-top: 1.05rem; position: relative; z-index: 1; }
.dashboard-welcome .quick-action { background: rgba(255,255,255,.14); border-color: rgba(255,255,255,.2); color: white; min-height: auto; padding: .65rem; }
.dashboard-welcome .quick-action span { color: #99f6e4; }
.portfolio-card { display: grid; gap: .65rem; grid-template-columns: 1fr 1fr; }
.portfolio-card .metric { min-height: 74px; }
.status-board { display: grid; gap: .65rem; grid-template-columns: repeat(3,minmax(0,1fr)); margin: 1rem 0; }
.status-tile { background: #fff; border: 1px solid #e7edf5; border-radius: .8rem; display: grid; gap: .15rem; min-height: 92px; padding: .9rem; }
.status-tile small { color: #64748b; font-weight: 700; text-transform: capitalize; }
.status-tile strong { color: #112a4d; font-size: 1.5rem; }
.status-tile.active { border-bottom: 3px solid #14b8a6; }.status-tile.paid { border-bottom: 3px solid #2563eb; }.status-tile.closed { border-bottom: 3px solid #f59e0b; }
.dashboard-columns { align-items: start; display: grid; gap: 1rem; grid-template-columns: minmax(0,1.15fr) minmax(300px,.85fr); }
.loan-feed { display: grid; gap: .55rem; }
.loan-feed-item { align-items: center; border: 1px solid #edf1f6; border-radius: .7rem; display: grid; gap: .5rem; grid-template-columns: 1fr auto auto; padding: .78rem; }
.loan-feed-item b { color: #102a4d; }.loan-feed-item small { color: #64748b; display: block; margin-top: .15rem; }
.feed-amount { color: #0f766e; font-weight: 800; }
.activity-list { display: grid; gap: .55rem; max-height: 325px; overflow: auto; }
.activity-list li { border-bottom: 1px solid #edf1f6; display: grid; gap: .15rem; list-style: none; padding: .55rem 0; }.activity-list li:last-child { border-bottom: 0; }.activity-list small { color: #64748b; }
.report-actions { display: flex; flex-wrap: wrap; gap: .6rem; }
.detail-grid { display: grid; gap: .8rem; grid-template-columns: repeat(3,minmax(0,1fr)); }.detail-box { background: #f8fbff; border: 1px solid #e5edf6; border-radius: .7rem; padding: .7rem; }.detail-box small { color: #64748b; display: block; }.detail-box b { color: #102a4d; display: block; font-size: 1.05rem; margin-top: .2rem; }
.timeline { border-left: 2px solid #99f6e4; display: grid; gap: .85rem; margin: .8rem .25rem; padding-left: 1rem; }.timeline-item { position: relative; }.timeline-item::before { background: #0f766e; border: 3px solid white; border-radius: 50%; content: ''; height: .5rem; left: -1.38rem; position: absolute; top: .2rem; width: .5rem; }.timeline-item small { color:#64748b; display:block; }

/* Dashboard density: compact the overview without changing shared modules. */
.content.dashboard-compact { padding: 18px 22px; }
.dashboard-compact .view-head { margin-bottom: 12px; }
.dashboard-compact .view-head h2 { font-size: 21px; }
.dashboard-compact .view-head p { font-size: 13px; margin-top: 3px; }
.dashboard-compact .hero-dashboard { gap: 12px; margin-bottom: 10px; }
.dashboard-compact .hero-dashboard > section { min-height: 132px; }
.dashboard-compact .dashboard-welcome { padding: 14px 16px; }
.dashboard-compact .dashboard-welcome h2 { font-size: 1.5rem; margin: .1rem 0 .3rem; }
.dashboard-compact .dashboard-welcome p { font-size: 13px; line-height: 1.4; margin: 0; }
.dashboard-compact .dashboard-welcome .quick-actions { gap: 8px; margin-top: .7rem; }
.dashboard-compact .dashboard-welcome .quick-action { padding: .48rem .6rem; }
.dashboard-compact .dashboard-welcome .quick-action span { height: 29px; margin-bottom: 5px; width: 29px; }
.dashboard-compact .portfolio-card { gap: 8px; }
.dashboard-compact .portfolio-card .metric { min-height: 62px; padding: 11px 12px; }
.dashboard-compact .portfolio-card .metric-icon { border-radius: 9px; height: 32px; width: 32px; }
.dashboard-compact .portfolio-card .metric-icon .ui-icon { height: 17px; width: 17px; }
.dashboard-compact .portfolio-card .metric strong { font-size: 20px; margin-top: 6px; }
.dashboard-compact .status-board { gap: 10px; margin: 10px 0; }
.dashboard-compact .status-tile { min-height: 72px; padding: .62rem .78rem; }
.dashboard-compact .status-tile strong { font-size: 1.25rem; }
.dashboard-compact > .metrics { gap: 10px; margin-bottom: 10px; }
.dashboard-compact > .metrics .metric { min-height: 88px; padding: 12px 14px; }
.dashboard-compact > .metrics .metric-icon { height: 34px; width: 34px; }
.dashboard-compact > .metrics .metric strong { font-size: 21px; margin-top: 7px; }
.dashboard-compact .dashboard-columns { gap: 12px; }
.dashboard-compact .dashboard-columns .panel { padding: 13px 15px; }
.dashboard-compact .dashboard-columns .panel-title { margin-bottom: 8px; }
.dashboard-compact .loan-feed { gap: 6px; }
.dashboard-compact .loan-feed-item { padding: .52rem .65rem; }
.dashboard-compact .activity-list { gap: 3px; max-height: 236px; }
.dashboard-compact .activity-list li { padding: .38rem 0; }
@media (max-width: 980px) { .hero-dashboard,.dashboard-columns { grid-template-columns: 1fr; }.dashboard-welcome .quick-actions { grid-template-columns: 1fr 1fr; }.status-board { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media (max-width: 620px) { .dashboard-welcome .quick-actions,.portfolio-card,.status-board,.detail-grid { grid-template-columns: 1fr; }.loan-feed-item { grid-template-columns: 1fr auto; }.loan-feed-item .status { grid-column: 2; }.nav-group summary { padding-left: 1rem; }.content.dashboard-compact { padding: 14px; }.dashboard-compact .hero-dashboard > section { min-height: auto; }.dashboard-compact .dashboard-welcome .quick-actions { grid-template-columns: 1fr 1fr; }.dashboard-compact .portfolio-card { grid-template-columns: 1fr 1fr; } }
