#add-data-modal { width:min(780px,calc(100% - 32px)); }
.import-dropzone {
  display:flex; flex-direction:column; align-items:center; justify-content:center;
  gap:9px; width:100%; padding:26px 18px; border:2px dashed var(--line);
  border-radius:12px; color:var(--ink); background:var(--paper); cursor:pointer;
  font:inherit; text-align:center;
}
.import-dropzone i { color:var(--accent); font-size:26px; }
.import-dropzone strong { font-size:14px; }
.import-dropzone span { font-size:11px; color:var(--muted); }
.import-dropzone:hover,.import-dropzone.is-dragging { border-color:var(--accent); background:var(--accent-soft); }
.import-dropzone:focus-visible { outline:3px solid var(--accent); outline-offset:3px; }
.import-dropzone:disabled { opacity:.6; cursor:wait; }
.import-list { display:grid; gap:14px; margin-top:20px; }
.import-card { border:1px solid var(--line); border-radius:12px; padding:16px; min-width:0; }
.import-card-heading { display:flex; align-items:center; gap:20px; }
.import-card-heading .checkbox-label { margin:0; color:var(--accent); }
.import-name { flex:1; }
.import-name input { margin-bottom:8px; }
.import-csv-controls { display:grid; grid-template-columns:1fr 1fr; gap:14px; margin-top:12px; }
.import-preview { display:flex; gap:18px; align-items:center; margin:14px 0; }
.import-preview svg { flex:0 0 220px; width:220px; height:120px; background:var(--paper); border:1px solid var(--line); border-radius:8px; }
.import-preview circle { fill:var(--accent); stroke:none; }
.import-preview polyline { fill:none; stroke:var(--accent); stroke-width:1.5; }
.import-preview .helper { margin:6px 0; overflow-wrap:anywhere; }
.import-preview strong { font-size:14px; }
.import-table-wrap { overflow-x:auto; max-width:100%; }
.import-table { width:100%; border-collapse:collapse; font-size:11px; text-align:left; }
.import-table th,.import-table td { padding:8px; border-bottom:1px solid var(--line); max-width:200px; overflow-wrap:anywhere; }
.import-table th { background:var(--paper); font-weight:600; }
.import-warning,.import-error { padding:10px 12px; border-radius:8px; font-size:12px; line-height:1.5; overflow-wrap:anywhere; }
.import-warning { color:var(--ink); background:var(--accent-soft); margin:12px 0; }
.import-error { color:var(--danger); border:1px solid var(--danger); margin-top:14px; }
.import-actions { align-items:center; position:sticky; bottom:-28px; background:var(--surface); border-top:1px solid var(--line); padding:14px 0; }
.import-actions .helper { flex:1; margin:0; min-width:160px; }
@media (max-width:600px) {
  .import-preview { flex-direction:column; align-items:flex-start; gap:10px; }
  .import-preview svg { flex:none; width:100%; }
  .import-card-heading { flex-wrap:wrap; gap:10px; }
  .import-name { flex-basis:100%; }
  .import-csv-controls { grid-template-columns:1fr; gap:0; }
  .import-actions { bottom:-22px; }
  .import-actions .helper { flex-basis:100%; }
}
