.nv-onboarding-form { gap: var(--spacing-xl); }
.nv-onboarding-form__row { display: grid; grid-template-columns: 1fr 1fr; gap: var(--spacing-md); }
.nv-onboarding-optional,
.nv-onboarding-hint,
.nv-onboarding-preview { color: var(--color-text-muted); font-size: var(--font-size-sm); }
.nv-onboarding-hint,
.nv-onboarding-preview { margin: 0; line-height: var(--line-height-relaxed); }
.nv-onboarding-file { width: 100%; color: var(--color-text-secondary); font: inherit; }
.nv-onboarding-file::file-selector-button { margin-inline-end: var(--spacing-md); padding: var(--spacing-sm) var(--spacing-md); border: 0; border-radius: var(--button-radius); background: var(--color-surface-muted); color: var(--color-text-primary); font: inherit; cursor: pointer; }
.nv-onboarding-error { margin: 0; padding: var(--spacing-md); border-radius: var(--component-radius-sm); background: var(--color-error-soft); color: var(--color-error); font-size: var(--font-size-sm); line-height: var(--line-height-relaxed); }
.nv-onboarding-label-row { display: flex; align-items: baseline; justify-content: space-between; gap: var(--spacing-md); }
.nv-onboarding-template { color: var(--color-text-secondary); font-size: var(--font-size-sm); text-underline-offset: 3px; }
.nv-onboarding-review { min-width: 0; border-radius: var(--component-radius-sm); background: var(--color-surface-muted); overflow: hidden; }
.nv-onboarding-review__scroll { max-height: 260px; overflow: auto; }
.nv-onboarding-review table { width: 100%; border-collapse: collapse; font-size: var(--font-size-sm); }
.nv-onboarding-review th, .nv-onboarding-review td { padding: var(--spacing-sm) var(--spacing-md); text-align: left; vertical-align: top; border-bottom: 1px solid var(--color-border-subtle); white-space: nowrap; }
.nv-onboarding-review th { position: sticky; top: 0; z-index: 1; background: var(--color-surface-muted); color: var(--color-text-muted); font-weight: 500; }
.nv-onboarding-review td:nth-child(3) { max-width: 200px; overflow: hidden; text-overflow: ellipsis; }
.nv-onboarding-review tr[data-invalid="true"] td:last-child { color: var(--color-error); font-weight: 500; white-space: normal; }
.nv-onboarding-history { color: var(--color-text-secondary); font-size: var(--font-size-sm); }
.nv-onboarding-history summary { cursor: pointer; color: var(--color-text-primary); font-weight: 500; }
.nv-onboarding-history [data-import-history] { padding-top: var(--spacing-sm); }
.nv-onboarding-history ul { display: grid; gap: var(--spacing-sm); margin: 0; padding: 0; list-style: none; }
@media (max-width: 600px) { .nv-onboarding-form__row { grid-template-columns: 1fr; } }
