.dashboard-grid { display: grid; grid-template-columns: minmax(0, 1.65fr) minmax(300px, .9fr); gap: 10px; margin-top: 10px; }
.dashboard-grid .table-scroll { height: clamp(220px, calc(100vh - 455px), 470px); min-height: 0; overflow: auto; }
.dashboard-grid + .panel .table-scroll { height: clamp(130px, calc(100vh - 660px), 240px); min-height: 0; overflow: auto; }
.activity-list { margin: 0; padding: 0; list-style: none; }
.activity-list li { padding: 8px 3px; border-bottom: 1px solid #e6ebf1; font-size: 12px; }
.activity-list time { display: block; margin-top: 2px; color: var(--muted); font-size: 10px; }
.detail-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 6px 18px; }
.detail-item { padding: 5px 0; border-bottom: 1px dotted #d9e0e8; }
.detail-label { color: var(--muted); font-size: 10px; font-weight: 600; text-transform: uppercase; }
.detail-value { margin-top: 2px; }
.timeline { margin: 0; padding-left: 19px; border-left: 2px solid #cbd5df; list-style: none; }
.timeline li { position: relative; padding: 0 0 13px 10px; }
.timeline li::before { content: ""; position: absolute; left: -16px; top: 4px; width: 8px; height: 8px; background: var(--blue); border: 2px solid white; border-radius: 50%; box-shadow: 0 0 0 1px #91a5bd; }
.timeline .timeline-date { color: var(--muted); font-size: 10px; }
.progress { height: 8px; overflow: hidden; background: #e3e8ee; border: 1px solid #cbd3dd; }
.progress > span { display: block; height: 100%; background: var(--blue); }
