.data-insight-view,.data-insight-grid { display: grid; gap: 16px; }
.data-insight-intro { display: flex; align-items: flex-start; justify-content: space-between; gap: 18px; padding: 18px 20px; border: 1px solid var(--color-border); border-radius: var(--radius-md); background: var(--color-surface); box-shadow: var(--shadow-card); }
.data-insight-intro .section-label,.data-insight-card .section-label { margin: 0 0 3px; }
.data-insight-intro h1,.data-insight-card h2 { margin: 0; }
.data-insight-intro h1 { font-size: 20px; }
.data-insight-intro p:last-child { margin: 6px 0 0; color: var(--color-text-secondary); font-size: var(--font-sm); }
.data-insight-card { min-width: 0; }
.data-insight-card-head { margin-bottom: 15px; display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; }
.data-insight-card-head h2 { font-size: 16px; }
.data-insight-domain-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; }
.data-insight-domain { padding: 14px; border: 1px solid var(--color-border); border-radius: 10px; background: var(--color-surface-subtle); }
.data-insight-domain.stale { border-color: color-mix(in srgb,var(--color-warning) 35%,var(--color-border)); }
.data-insight-domain.error,.data-insight-domain.blocked { border-color: color-mix(in srgb,var(--color-danger) 35%,var(--color-border)); }
.data-insight-domain > div { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.data-insight-domain dl { margin: 13px 0 0; display: grid; grid-template-columns: auto 1fr; gap: 7px 12px; font-size: var(--font-xs); }
.data-insight-domain dt { color: var(--color-text-secondary); }
.data-insight-domain dd { margin: 0; text-align: right; font-weight: 700; font-variant-numeric: tabular-nums; }
.data-insight-mapping-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
.data-insight-mapping-group { padding: 14px; border: 1px solid var(--color-border); border-radius: 10px; background: var(--color-surface-subtle); }
.data-insight-mapping-group h3,.data-insight-change-summary section > h3 { margin: 0 0 10px; font-size: var(--font-sm); }
.data-insight-mapping-group > div { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 8px; }
.mapping-count { padding: 10px; border-radius: 8px; background: var(--color-surface); }
.mapping-count small,.mapping-count strong { display: block; }
.mapping-count small { color: var(--color-text-secondary); font-size: var(--font-xs); }
.mapping-count strong { margin-top: 5px; font-size: 22px; font-variant-numeric: tabular-nums; }
.mapping-count.conflict { background: var(--color-danger-soft); color: var(--color-danger); }
.data-insight-alert { margin: 12px 0 0; padding: 10px 12px; display: flex; align-items: center; gap: 8px; border-radius: 9px; font-size: var(--font-sm); }
.data-insight-alert.red { background: var(--color-danger-soft); color: var(--color-danger); }
.data-insight-blocked-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
.data-insight-blocked-grid > div { padding: 14px; border: 1px solid var(--color-border); border-radius: 10px; background: var(--color-surface-subtle); }
.data-insight-blocked-grid > div.warning { border-color: color-mix(in srgb,var(--color-warning) 35%,var(--color-border)); background: var(--color-warning-soft); }
.data-insight-blocked-grid span,.data-insight-blocked-grid strong,.data-insight-blocked-grid small { display: block; }
.data-insight-blocked-grid span,.data-insight-blocked-grid small { color: var(--color-text-secondary); font-size: var(--font-xs); }
.data-insight-blocked-grid strong { margin: 8px 0 5px; font-size: 24px; font-variant-numeric: tabular-nums; }
.data-insight-batches { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
.data-insight-batch { padding: 12px 14px; border: 1px solid var(--color-border); border-radius: 10px; background: var(--color-surface-subtle); }
.data-insight-batch span,.data-insight-batch strong,.data-insight-batch small { display: block; }
.data-insight-batch span,.data-insight-batch small { color: var(--color-text-secondary); font-size: var(--font-xs); }
.data-insight-batch strong { margin: 5px 0; font-size: var(--font-sm); }
.data-insight-change-summary > section { margin-top: 16px; }
.data-insight-change-table { min-width: 560px; }
.data-insight-change-counts,.data-insight-deltas { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 10px; }
.data-insight-change-counts > span,.data-insight-delta { min-width: 0; padding: 12px; border: 1px solid var(--color-border); border-radius: 9px; background: var(--color-surface-subtle); }
.data-insight-change-counts small,.data-insight-change-counts strong,.data-insight-delta > span,.data-insight-delta > strong,.data-insight-delta > small { display: block; }
.data-insight-change-counts small,.data-insight-delta > span,.data-insight-delta > small { color: var(--color-text-secondary); font-size: var(--font-xs); }
.data-insight-change-counts strong { margin-top: 5px; font-size: 20px; }
.data-insight-delta > strong,.data-insight-delta > .reference-tag { margin-top: 8px; }
.data-insight-delta > small { margin-top: 6px; }
.data-insight-delta.blocked { border-color: color-mix(in srgb,var(--color-danger) 35%,var(--color-border)); }
.data-insight-skeleton { display: grid; gap: 9px; }
.data-insight-fallback > strong { display: block; }
.data-insight-fallback > p { margin: 6px 0 0; color: var(--color-text-secondary); font-size: var(--font-sm); }
@media(max-width:900px) {
  .data-insight-domain-grid,.data-insight-change-counts,.data-insight-deltas { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media(max-width:640px) {
  .data-insight-intro,.data-insight-card-head { align-items: stretch; flex-direction: column; }
  .data-insight-domain-grid,.data-insight-mapping-grid,.data-insight-blocked-grid,.data-insight-batches,.data-insight-change-counts,.data-insight-deltas { grid-template-columns: 1fr; }
}
