/* ============================================================
   DASHBOARD  —  Source: app/pages/dashboard/DashboardPage.css
   ============================================================ */
.dash-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:var(--space-5)}
.dash-header__left{display:flex;flex-direction:column;gap:4px}
.dash-title{font-size:var(--text-3xl);font-weight:var(--weight-bold);color:var(--text-primary);letter-spacing:-.02em;line-height:1.2}
.dash-subtitle{font-size:var(--text-base);font-weight:var(--weight-regular);color:var(--text-secondary);line-height:1.4}
.dash-header__right{display:flex;align-items:center;flex-shrink:0;margin-top:2px}
.dash-date-badge{display:flex;align-items:center;gap:var(--space-2);height:40px;padding:0 var(--space-3);
  background:var(--surface);border:1px solid var(--border);border-radius:8px;
  font-size:var(--text-base);font-weight:var(--weight-medium);color:var(--text-secondary);white-space:nowrap;cursor:pointer;
  transition:background var(--duration-fast) var(--ease),border-color var(--duration-fast) var(--ease)}
.dash-date-badge:hover{background:var(--surface-2);border-color:var(--border-hi)}
.dash-date-badge svg{width:16px;height:16px;stroke:var(--text-muted);fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
.dash-date-badge__chev{width:14px;height:14px;color:var(--text-muted)}
/* Date-range popover (interactive) */
.dash-dr{position:relative}
.dash-dr__label{display:inline-block}
.dash-dr__pop{position:absolute;top:calc(100% + 8px);right:0;min-width:230px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:var(--space-2);display:none;z-index:60}
.dash-dr__pop--open{display:block}
.dash-dr__item{display:block;width:100%;text-align:left;height:34px;padding:0 var(--space-3);border:none;background:transparent;border-radius:var(--radius-sm);font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--text-secondary);cursor:pointer;transition:background var(--duration-fast) var(--ease),color var(--duration-fast) var(--ease)}
.dash-dr__item:hover{background:var(--surface-2);color:var(--text-primary)}
.dash-dr__item--active{background:var(--info-bg);color:var(--info)}
.dash-dr__custom{display:none;flex-direction:column;gap:6px;padding:var(--space-2) var(--space-2) 0;margin-top:var(--space-2);border-top:1px solid var(--border)}
.dash-dr__custom--show{display:flex}
.dash-dr__field{display:flex;flex-direction:column;gap:3px;font-size:var(--text-xs);font-weight:var(--weight-medium);color:var(--text-secondary)}
.dash-dr__date{height:32px;border:1px solid var(--border);border-radius:var(--radius-sm);padding:0 8px;font-size:var(--text-sm);color:var(--text-primary);background:var(--surface)}
.dash-dr__date:focus{outline:none;border-color:var(--border-hi)}
.dash-dr__err{font-size:var(--text-xs);color:var(--error);min-height:14px;line-height:1.2}
.dash-dr__actions{display:flex;gap:6px;margin-top:2px}
.dash-dr__cancel{flex:1;height:32px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text-secondary);font-size:var(--text-sm);font-weight:var(--weight-semibold);cursor:pointer;transition:background var(--duration-fast) var(--ease),border-color var(--duration-fast) var(--ease),color var(--duration-fast) var(--ease)}
.dash-dr__cancel:hover{background:var(--surface-2);border-color:var(--border-hi);color:var(--text-primary)}
.dash-dr__apply{flex:1;height:32px;border:none;border-radius:var(--radius-sm);background:var(--info);color:#fff;font-size:var(--text-sm);font-weight:var(--weight-semibold);cursor:pointer}
.dash-dr__apply:hover{filter:brightness(.95)}
.dash-toast{position:fixed;left:50%;bottom:28px;transform:translateX(-50%) translateY(8px);background:var(--navy);color:#fff;padding:10px var(--space-4);border-radius:10px;box-shadow:var(--shadow-lg);font-size:var(--text-sm);font-weight:var(--weight-medium);z-index:1000;opacity:0;pointer-events:none;transition:opacity var(--duration-base) var(--ease),transform var(--duration-base) var(--ease)}
.dash-toast--show{opacity:1;transform:translateX(-50%) translateY(0)}

.stats-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:var(--app-section-gap,var(--space-4));margin-bottom:var(--app-section-gap,var(--space-5))}
.metric-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);padding:var(--app-card-pad,var(--space-4));display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);transition:box-shadow var(--duration-base) var(--ease),transform var(--duration-base) var(--ease)}
.metric-card:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}
.metric-card__body{display:flex;flex-direction:column;gap:6px;min-width:0;flex:1}
.metric-card__label{font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--text-secondary);line-height:1}
.metric-card__value-row{display:flex;align-items:baseline;gap:3px}
.metric-card__value{font-size:var(--app-metric-val,var(--text-3xl));font-weight:var(--weight-bold);color:var(--text-primary);letter-spacing:-.03em;line-height:1}
.metric-card__value--sm{font-size:var(--text-xl)}
.metric-card__suffix{font-size:var(--text-xl);font-weight:var(--weight-semibold);color:var(--text-secondary);line-height:1}
.metric-card__delta{display:flex;align-items:center;gap:4px;font-size:var(--text-sm);font-weight:var(--weight-medium);line-height:1}
.metric-card__delta--up{color:var(--success)}.metric-card__delta--down{color:var(--error)}.metric-card__delta--neutral{color:var(--text-muted)}
.metric-card__delta-icon{display:flex;align-items:center;flex-shrink:0}
.metric-card__delta-icon svg{width:10px;height:10px;stroke:currentColor;fill:none;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}
.metric-card__delta-val{font-weight:var(--weight-semibold)}.metric-card__delta-lbl{color:var(--text-muted);font-weight:var(--weight-regular)}
.metric-card__icon{width:var(--app-metric-icon,48px);height:var(--app-metric-icon,48px);min-width:var(--app-metric-icon,48px);border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.metric-card__icon svg{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.metric-card__icon--success{background:var(--success-bg);color:var(--success)}
.metric-card__icon--info{background:var(--info-bg);color:var(--info)}
.metric-card__icon--warning{background:var(--warning-bg);color:var(--warning)}
.metric-card__icon--error{background:var(--error-bg);color:var(--error)}
.metric-card__icon--purple{background:var(--purple-bg);color:var(--purple)}

.dash-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);overflow:hidden;display:flex;flex-direction:column;transition:box-shadow var(--duration-base) var(--ease),transform var(--duration-base) var(--ease)}
.dash-runs-card{margin-bottom:var(--app-section-gap,var(--space-5))}
.dash-card:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}
.dash-card__hd{display:flex;align-items:center;justify-content:space-between;height:var(--app-card-hd-h,46px);min-height:var(--app-card-hd-h,46px);padding:0 var(--space-4);border-bottom:1px solid var(--border);flex-shrink:0;gap:var(--space-3)}
.dash-card__title{font-size:var(--text-md);font-weight:var(--weight-semibold);color:var(--text-primary);line-height:1;white-space:nowrap}
.dash-viewall{font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--brand);white-space:nowrap;flex-shrink:0;cursor:pointer;transition:opacity var(--duration-fast) var(--ease)}
.dash-viewall:hover{opacity:.75}
.dash-viewall--inline{display:inline-flex;align-items:center;gap:6px}
.dash-card__bd{padding:var(--app-card-pad,var(--space-4)) var(--space-4)}
.dash-card__ft{padding:var(--space-3) var(--space-5);border-top:1px solid var(--border);flex-shrink:0}

.dash-chart-title-group{display:flex;align-items:center;gap:var(--space-4);flex:1;min-width:0}
.dash-chart-legend{display:flex;align-items:center;gap:var(--space-4);flex-shrink:0}
.dash-legend-item{display:flex;align-items:center;gap:6px;font-size:var(--text-sm);font-weight:var(--weight-regular);color:var(--text-secondary);white-space:nowrap}

.dash-runs-list{display:flex;flex-direction:column;min-height:280px}
.dash-run-item{display:flex;align-items:center;justify-content:space-between;min-height:var(--app-run-row-h,56px);padding:var(--space-2) var(--space-4);border-bottom:1px solid var(--border);gap:var(--space-3);transition:background var(--duration-fast) var(--ease);cursor:pointer}
.dash-run-item:last-child{border-bottom:none}.dash-run-item:hover{background:var(--surface-2)}
.dash-run-item__left{display:flex;align-items:center;gap:var(--space-3);min-width:0;flex:1}
.dash-run-item__info{display:flex;flex-direction:column;gap:2px;min-width:0}
.dash-run-item__right{display:flex;align-items:center;gap:var(--space-3);flex-shrink:0}
.dash-run-dot{width:8px;height:8px;min-width:8px;border-radius:var(--radius-full);flex-shrink:0}
.dash-run-dot--passed{background:var(--success)}.dash-run-dot--failed{background:var(--error)}
.dash-run-dot--running{background:var(--warning);box-shadow:0 0 0 3px var(--warning-bg)}.dash-run-dot--skipped{background:var(--text-muted)}
.dash-run-name{font-size:var(--text-base);font-weight:var(--weight-semibold);color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.2}
.dash-run-desc{font-size:var(--text-xs);color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.2}
.dash-run-status-lbl{font-size:var(--text-xs);font-weight:var(--weight-semibold);white-space:nowrap;flex-shrink:0}
.dash-run-status-lbl--passed{color:var(--success)}.dash-run-status-lbl--failed{color:var(--error)}.dash-run-status-lbl--running{color:var(--warning)}
.dash-run-dur{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-muted);white-space:nowrap;flex-shrink:0}
.dash-run-time{font-size:var(--text-xs);color:var(--text-muted);line-height:1.2;white-space:nowrap;flex-shrink:0}
.dash-run-chev{display:flex;align-items:center;color:var(--text-muted);flex-shrink:0}
.dash-run-chev svg{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}

.dash-badge{display:inline-flex;align-items:center;height:20px;padding:0 var(--space-2);border-radius:4px;font-size:var(--text-xs);font-weight:var(--weight-semibold);letter-spacing:.02em;white-space:nowrap;flex-shrink:0;line-height:1}
.dash-badge--passed{background:var(--success-bg);color:var(--success)}.dash-badge--failed{background:var(--error-bg);color:var(--error)}
.dash-badge--running{background:var(--warning-bg);color:var(--warning)}.dash-badge--skipped{background:rgba(148,163,184,.12);color:var(--text-muted)}

.dash-failures-list{display:flex;flex-direction:column;min-height:138px;flex:1}
.dash-fail-item{display:flex;align-items:stretch;min-height:var(--app-run-row-h,46px);border-bottom:1px solid var(--border);transition:background var(--duration-fast) var(--ease)}
.dash-fail-item:last-child{border-bottom:none}.dash-fail-item:hover{background:var(--surface-2)}
.dash-fail-item__bar{width:3px;min-width:3px;background:var(--error);border-radius:var(--radius-full);flex-shrink:0;margin:10px 0}
.dash-fail-item__content{display:flex;flex-direction:column;justify-content:center;gap:3px;padding:var(--space-3) var(--space-5) var(--space-3) var(--space-3);min-width:0;flex:1}
.dash-fail-item__row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}
.dash-fail-name{font-size:var(--text-base);font-weight:var(--weight-semibold);color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.2}
.dash-fail-time{font-size:var(--text-xs);color:var(--text-muted);white-space:nowrap;flex-shrink:0;line-height:1.2}
.dash-fail-error{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--error);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.3}

.dash-toptests{display:flex;flex-direction:column;padding:var(--space-3) var(--space-5);gap:var(--space-3);min-height:148px}
.dash-toptest{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);min-height:32px}
.dash-toptest__info{display:flex;align-items:center;gap:var(--space-3);min-width:0;flex:1}
.dash-toptest__rank{font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--weight-semibold);color:var(--text-muted);min-width:20px;flex-shrink:0}
.dash-toptest__name{font-size:var(--text-base);font-weight:var(--weight-medium);color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dash-toptest__right{display:flex;align-items:center;gap:var(--space-2);flex-shrink:0}
.dash-toptest__track{width:72px;height:5px;background:var(--surface-2);border-radius:var(--radius-full);overflow:hidden;flex-shrink:0}
.dash-toptest__fill{height:100%;width:0;border-radius:var(--radius-full);background:linear-gradient(90deg,var(--success),#059669);transition:width 600ms var(--ease)}
.dash-toptest__pct{font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--success);min-width:32px;text-align:right}

.dash-actions-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3)}
.dash-action-workspace{display:flex;align-items:center;justify-content:center;gap:var(--space-2);width:100%;height:36px;margin-top:var(--space-2);border:1px solid var(--brand);border-radius:var(--radius-md);background:var(--brand-muted);color:var(--brand);font-size:var(--text-sm);font-weight:var(--weight-semibold);text-decoration:none;cursor:pointer;transition:background var(--duration-fast) var(--ease),border-color var(--duration-fast) var(--ease),color var(--duration-fast) var(--ease)}
.dash-action-workspace:hover{background:var(--brand);color:var(--text-inverse)}
.dash-action-workspace:hover svg{stroke:var(--text-inverse)}
.dash-action-workspace__icon{display:flex;align-items:center;flex-shrink:0}
.dash-action-workspace svg{width:14px;height:14px;stroke:var(--brand);fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;transition:stroke var(--duration-fast) var(--ease)}
.dash-action-tile{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-lg);cursor:pointer;text-decoration:none;transition:background var(--duration-fast) var(--ease),border-color var(--duration-fast) var(--ease),box-shadow var(--duration-fast) var(--ease)}
.dash-action-tile:hover{background:var(--surface-2);border-color:var(--border-hi);box-shadow:var(--shadow-xs)}
.dash-action-tile__icon{width:32px;height:32px;border-radius:var(--radius-sm);background:var(--brand-muted);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.dash-action-tile__icon svg{width:15px;height:15px;stroke:var(--brand);fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.dash-action-tile__label{font-size:var(--text-base);font-weight:var(--weight-semibold);color:var(--text-primary);line-height:1.2}
.dash-action-tile__sub{font-size:var(--text-xs);color:var(--text-muted);line-height:1.2}

.dash-bottom-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:var(--app-section-gap,var(--space-5));margin-top:var(--app-section-gap,var(--space-5))}

/* ── Quality Analytics ────────────────────────────────────────────────── */
.dash-section-hd{display:flex;flex-direction:column;gap:2px;margin-top:var(--app-section-gap,var(--space-5));margin-bottom:var(--space-4)}
.dash-section-title{font-size:var(--text-xl);font-weight:var(--weight-bold);color:var(--text-primary);letter-spacing:-.01em;line-height:1.2}
.dash-section-sub{font-size:var(--text-sm);color:var(--text-secondary);line-height:1.4}

.qa-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--app-section-gap,var(--space-4));margin-bottom:var(--app-section-gap,var(--space-4))}
.qa-kpi{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);padding:var(--app-card-pad,var(--space-4));transition:box-shadow var(--duration-base) var(--ease),transform var(--duration-base) var(--ease)}
.qa-kpi:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}
.qa-kpi__top{display:flex;align-items:center;gap:6px;margin-bottom:10px}
.qa-kpi__label{font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em}
.qa-kpi__info{display:flex;color:var(--text-muted);flex-shrink:0}
.qa-kpi__info svg{width:13px;height:13px;stroke:currentColor;fill:none;stroke-width:2}
.qa-kpi__value{font-size:var(--text-3xl);font-weight:var(--weight-bold);color:var(--text-primary);letter-spacing:-.01em;line-height:1;margin-bottom:12px}
.qa-kpi__of{font-size:var(--text-lg);font-weight:var(--weight-medium);color:var(--text-muted)}
.qa-kpi__track{height:6px;border-radius:var(--radius-full);background:var(--surface-2);overflow:hidden;margin-bottom:10px}
.qa-kpi__fill{height:100%;border-radius:var(--radius-full);transition:width 600ms var(--ease)}
.qa-kpi__fill--success{background:var(--success)}.qa-kpi__fill--warning{background:var(--warning)}.qa-kpi__fill--error{background:var(--error)}
.qa-kpi__desc{display:flex;align-items:center;gap:6px;font-size:var(--text-xs);color:var(--text-secondary);line-height:1.4}
.qa-kpi__dot{width:6px;height:6px;min-width:6px;border-radius:50%}
.qa-kpi__dot--success{background:var(--success)}.qa-kpi__dot--warning{background:var(--warning)}.qa-kpi__dot--error{background:var(--error)}

.qa-grid{display:grid;grid-template-columns:1fr 1.25fr 1.25fr;gap:var(--app-section-gap,var(--space-4));align-items:stretch}
.qa-card{min-height:0}
.qa-card--empty{min-height:220px}

.qa-donut-wrap{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);flex:1}
.qa-donut{position:relative;width:120px;height:120px;flex-shrink:0;margin:0 auto}
.qa-donut-center{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center}
.qa-donut-total{font-size:var(--text-2xl);font-weight:var(--weight-bold);color:var(--text-primary);line-height:1}
.qa-donut-total-lbl{font-size:var(--text-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-top:2px}
.qa-legend-list{display:flex;flex-direction:column;gap:var(--space-2);width:100%;padding:0 var(--space-2)}
.qa-legend-row{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm)}
.qa-legend-row__label{color:var(--text-secondary)}
.qa-legend-row__val{margin-left:auto;font-weight:var(--weight-semibold);color:var(--text-primary)}
.qa-legend-row__pct{color:var(--text-muted);width:48px;text-align:right}
.qa-legend-dot{width:8px;height:8px;min-width:8px;border-radius:50%}
.qa-legend-dot--passed{background:var(--success)}.qa-legend-dot--failed{background:var(--error)}.qa-legend-dot--error{background:var(--warning)}

.qa-trend-wrap{flex:1;display:flex;flex-direction:column;min-height:220px}
.qa-trend-svg{width:100%;height:220px;display:block;overflow:visible}
.qa-trend-grid{stroke:var(--border);stroke-width:1;fill:none}
.qa-trend-axis{font-family:var(--font-sans);font-size:10px;fill:var(--text-muted)}

.qa-coverage-wrap{flex:1}
.qa-cov-tablewrap{overflow-x:auto}
.qa-cov-table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}
.qa-cov-table th{text-align:left;font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);font-weight:var(--weight-semibold);padding:0 var(--space-2) var(--space-2);border-bottom:1px solid var(--border);white-space:nowrap}
.qa-cov-table td{padding:var(--space-2);border-bottom:1px solid var(--surface-2);white-space:nowrap;color:var(--text-primary)}
.qa-cov-table tr:last-child td{border-bottom:none}
.qa-cov-cell{display:flex;align-items:center;gap:var(--space-2)}
.qa-cov-track{width:52px;height:5px;border-radius:var(--radius-full);background:var(--surface-2);overflow:hidden;flex-shrink:0}
.qa-cov-fill{height:100%;border-radius:var(--radius-full)}
.qa-cov-fill--success{background:var(--success)}.qa-cov-fill--warning{background:var(--warning)}.qa-cov-fill--error{background:var(--error)}
.qa-cov-val{font-weight:var(--weight-semibold);min-width:52px}
.qa-cov-val--success{color:var(--success)}.qa-cov-val--warning{color:var(--warning)}.qa-cov-val--error{color:var(--error)}

@media(max-width:1200px){.qa-kpis{grid-template-columns:repeat(2,1fr)}.qa-grid{grid-template-columns:1fr}}
@media(max-width:768px){.qa-kpis{grid-template-columns:1fr}}

.dash-footer{text-align:center;padding:var(--space-6) 0 var(--space-2);font-size:var(--text-sm);color:var(--text-muted);font-weight:var(--weight-regular)}

@media(max-width:1200px){.stats-grid{grid-template-columns:repeat(3,1fr)}.dash-bottom-grid{grid-template-columns:1fr 1fr}}
@media(max-width:768px){.stats-grid{grid-template-columns:repeat(2,1fr)}.dash-bottom-grid{grid-template-columns:1fr}}

/* ── Responsive density: laptop/mid-size (≤1440px wide or ≤900px tall) ── */
@media(max-height:900px),(max-width:1440px){
  .dash-footer{padding:var(--space-4) 0 var(--space-1)}
  .dash-toptests{padding:var(--space-2) var(--space-4);gap:var(--space-2)}
  .dash-toptest{min-height:28px}
  .dash-actions-grid{gap:var(--space-2)}
  .dash-action-workspace{height:32px;margin-top:var(--space-1)}
  .dash-fail-item__bar{margin:8px 0}
  .dash-fail-item__content{padding:var(--space-2) var(--space-4) var(--space-2) var(--space-3)}
  .dash-card__ft{padding:var(--space-2) var(--space-4)}
}

/* ── Empty state ──────────────────────────────────────────────────────── */
.dash-es{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-6) var(--space-4);text-align:center;flex:1}
.dash-es__icon{width:44px;height:44px;border-radius:var(--radius-full);background:var(--surface-2);display:flex;align-items:center;justify-content:center;color:var(--text-muted);flex-shrink:0}
.dash-es__icon svg{stroke:currentColor;fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.dash-es__title{font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--text-secondary)}
.dash-es__desc{font-size:var(--text-xs);color:var(--text-muted);line-height:1.5;max-width:220px}

/* ── Responsive density: compact laptop (≤1366px wide or ≤780px tall) ── */
@media(max-height:780px),(max-width:1366px){
  .dash-footer{padding:var(--space-3) 0 var(--space-1)}
  .dash-date-badge{height:34px;font-size:var(--text-sm)}
  .dash-toptests{padding:var(--space-2) var(--space-3);gap:var(--space-1)}
  .dash-toptest{min-height:24px}
  .dash-toptest__track{width:60px}
  .dash-actions-grid{gap:var(--space-2)}
  .dash-action-workspace{height:30px;font-size:var(--text-sm)}
  .dash-action-tile{padding:var(--space-2)}
  .dash-action-tile__icon{width:28px;height:28px}
  .dash-action-tile__label{font-size:var(--text-sm)}
  .metric-card__icon svg{width:16px;height:16px}
  .dash-card__ft{padding:var(--space-2) var(--space-3)}
}
