.sdo-import-dialog {
  width: min(1040px, calc(100vw - 32px));
  max-width: calc(100vw - 32px);
  max-height: calc(100dvh - 32px);
  padding: 0;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  color: var(--ink);
  background: var(--card-surface);
  box-shadow: var(--shadow);
  overflow: hidden;
}
.sdo-import-form { display: flex; flex-direction: column; max-height: calc(100dvh - 34px); min-width: 0; }
.sdo-import-form > header, .sdo-import-form > footer { display: flex; align-items: center; justify-content: space-between; gap: var(--space-3); padding: var(--space-4); flex: 0 0 auto; }
.sdo-import-form > header { border-bottom: 1px solid var(--line); }
.sdo-import-form > footer { border-top: 1px solid var(--line); }
.sdo-import-form > footer > div { display: flex; flex-wrap: wrap; gap: var(--space-2); }
.sdo-import-form h2 { font-size: var(--type-section); margin: 0; }
.sdo-import-form header p { margin: var(--space-1) 0 0; color: var(--muted); overflow-wrap: anywhere; }
.sdo-import-body { overflow-y: auto; overflow-x: hidden; padding: var(--space-4); min-height: 0; }
.sdo-import-controls { display: grid; grid-template-columns: minmax(180px, 2fr) minmax(70px, 1fr) minmax(70px, 1fr); gap: var(--space-2); align-items: end; margin-bottom: var(--space-4); }
.sdo-import-form label { display: flex; flex-direction: column; gap: var(--space-1); min-width: 0; font-size: var(--type-caption); color: var(--muted); }
.sdo-import-form input:not([type="checkbox"]), .sdo-import-form select { min-width: 0; width: 100%; min-height: var(--control-height); border: 1px solid var(--line); border-radius: var(--radius-sm); padding: var(--space-2); font: inherit; font-size: var(--type-body); color: var(--ink); background: var(--card-surface); box-sizing: border-box; }
.sdo-import-row { border: 1px solid var(--line); border-radius: var(--radius-sm); padding: var(--space-3); margin-bottom: var(--space-3); min-width: 0; }
.sdo-import-row__head { display: flex; align-items: center; flex-wrap: wrap; gap: var(--space-3); margin-bottom: var(--space-3); }
.sdo-import-row__head > label:first-child { flex-direction: row; align-items: center; font-size: var(--type-body); color: var(--ink); }
.sdo-import-form .sdo-import-close { flex-direction: row; align-items: center; gap: var(--space-2); margin-top: var(--space-3); color: var(--ink); font-size: var(--type-body); }
.sdo-import-row__fields, .sdo-import-contract { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-2); }
.sdo-import-contract { padding: var(--space-3); background: var(--surface); border-radius: var(--radius-sm); margin-bottom: var(--space-4); }
.sdo-import-contract > p, .sdo-import-contract > details { grid-column: 1 / -1; }
.sdo-import-notice, .sdo-import-hint { color: var(--muted); font-size: var(--type-body); overflow-wrap: anywhere; }
.sdo-import-error { color: var(--danger); font-size: var(--type-body); overflow-wrap: anywhere; margin-bottom: 0; }
.sdo-import-form details { font-size: var(--type-body); color: var(--muted); overflow-wrap: anywhere; }
@media (max-width: 600px) {
  .sdo-import-dialog { width: calc(100vw - 16px); max-width: calc(100vw - 16px); max-height: calc(100dvh - 16px); }
  .sdo-import-form { max-height: calc(100dvh - 18px); }
  .sdo-import-form > header, .sdo-import-form > footer, .sdo-import-body { padding: var(--space-3); }
  .sdo-import-controls { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sdo-import-controls > label:first-child { grid-column: 1 / -1; }
  .sdo-import-row__fields, .sdo-import-contract { grid-template-columns: minmax(0, 1fr); }
  .sdo-import-form > footer { align-items: stretch; flex-direction: column; }
  .sdo-import-form > footer > div > button { flex: 1; }
}
