.import-panel { max-width: 42rem; }
.import-panel form { display: grid; gap: .75rem; }
.import-panel label { font-weight: 700; }
.import-panel input { max-width: 100%; padding: .6rem; border: 1px solid #aebbb2; }
.import-panel .button { justify-self: start; }
.preview-summary {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(10rem, 1fr));
  gap: 1rem;
}
.preview-section { margin-block: 2rem; }
.preview-grid, .preview-callouts {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(18rem, 1fr));
  gap: 1rem;
  margin-block: 2rem;
}
.callout {
  border-left: 4px solid #17633a;
  padding: 1rem;
  background: #fff;
}
.callout h2 { font-size: 1rem; }
.callout p:last-child { margin-bottom: 0; }
.count-list { display: flex; flex-wrap: wrap; gap: .75rem; }
.count-item {
  display: flex;
  gap: 1rem;
  justify-content: space-between;
  min-width: 13rem;
  border: 1px solid #dce3de;
  border-radius: 6px;
  padding: .65rem .8rem;
  background: #fff;
}
.check-list, .blocked-list, .compact-list, .warning-list { padding-left: 1.25rem; }
.check-list li::marker { color: #17633a; }
.blocked-list li::marker, .warning-list li::marker { color: #a33a2b; }
.table-scroll { overflow-x: auto; }
.preview-table {
  width: 100%;
  border-collapse: collapse;
  background: #fff;
}
.preview-table th, .preview-table td {
  border: 1px solid #dce3de;
  padding: .55rem;
  text-align: left;
  white-space: nowrap;
}
.preview-table th { background: #edf3ef; }
