/* 回导预览沿用项目表单、面板、表格及语义token。 */
/* 数据导入不设页面最大宽度（布局与断点「桌面工作区」）：.rt-page 与 .page 同一内边距与宽度，标题、表单与表格对齐同一内容边缘 */
.rt-page { max-width: none; }
.rt-steps { display: flex; flex-wrap: wrap; gap: 12px 24px; list-style: none; padding: 0; color: var(--fg-2); }
.rt-steps [aria-current] { color: var(--fg); font-weight: 600; }
.rt-body { padding: 24px; min-width: 0; }
.rt-body > p { margin-block: 8px; }
.rt-body p, .rt-body li, .rt-body td, .rt-body summary { overflow-wrap: anywhere; }
.rt-record { border-top: 1px solid var(--border); padding: 20px 0; }
.rt-record header, .rt-select, .rt-actions { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }
.rt-record header { justify-content: space-between; }
.rt-select { min-height: 44px; cursor: pointer; }
.rt-select input { width: 20px; height: 20px; flex: none; }
.rt-body .table-scroll { max-width: 100%; overflow: auto; }
.rt-body td { min-width: 120px; white-space: normal; vertical-align: top; }
.rt-body td small { display: block; color: var(--fg-2); }
.rt-impact { margin-block: 12px; }
.rt-impact summary { min-height: 44px; padding-block: 10px; cursor: pointer; }
.rt-impact ul { max-height: 24rem; overflow: auto; }
.rt-resolutions { border: 1px solid var(--border); border-radius: var(--radius-sm); padding: 16px; margin-top: 16px; }
.rt-actions { margin-top: 16px; }
@media (max-width: 640px) { .rt-body { padding: 16px; } }

/* 导入与回导共用表单控件（组件「表单」D-01）：select、input、textarea 包进 .input-shell（外壳样式见 base.css）；文件控件不进外壳，两处同一样式 */
:is(.rt-body, .import-body) input[type=file] { max-width: 100%; min-height: 44px; }
:is(.rt-body, .import-body) input[type=file]::file-selector-button { min-height: 44px; padding: 8px 16px; margin-right: 12px; border: 1px solid var(--border); border-radius: var(--radius-pill); color: var(--fg); background: var(--surface); font: inherit; cursor: pointer; }
/* 多行文本外壳随内容增高；焦点环只画在外壳上 */
:is(.rt-body, .import-body) .input-shell:has(> textarea) { height: auto; align-items: stretch; padding-block: 8px; }
:is(.rt-body, .import-body) .input-shell > textarea { flex: 1; width: 100%; min-width: 0; min-height: 4.5rem; padding: 0; border: 0; outline: 0; background: transparent; color: var(--fg); font-size: var(--text-table); resize: vertical; }
:is(.rt-body, .import-body) .input-shell > textarea:focus-visible { box-shadow: none; }
:is(.rt-body, .import-body) .input-shell > textarea:disabled { color: var(--muted); cursor: not-allowed; }
@media (pointer: coarse) and (max-width: 1023px), (max-width: 640px) { :is(.rt-body, .import-body) .input-shell > textarea { font-size: max(16px, 1rem); } } /* 同 base.css 触控尺寸查询，避免 iOS 聚焦放大 */

/* 外部工作区共用已有回导密度与token；表格局部滚动，长表头和原值可换行。 */
/* 导入方式切换为分段控件 .seg（组件「开关与选择器」），选中以 aria-pressed 表达 */
.import-modes { display: flex; padding-bottom: 0; }
.import-body { padding: 24px; min-width: 0; }
.import-body .btn { min-height: 44px; height: auto; white-space: normal; padding-block: 8px; }
.import-body p, .import-body li, .import-body th, .import-body td { overflow-wrap: anywhere; }
.import-body .table-scroll { max-width: 100%; overflow: auto; }
.import-body td { min-width: 120px; white-space: pre-wrap; vertical-align: top; }
.import-body td small { display: block; color: var(--fg-2); }
.import-body summary { min-height: 44px; padding-block: 10px; cursor: pointer; }
.import-body fieldset { border: 1px solid var(--border); border-radius: var(--radius-sm); margin-block: 16px; padding: 16px; min-width: 0; }
.import-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 260px), 1fr)); gap: 16px; }
.import-page h2, .import-page h3 { margin-block: 12px; }
@media (max-width: 640px) { .import-body { padding: 16px; } }

/* 边界对照图采用同一坐标范围；孔洞even-odd，旧界虚线、新界实线。 */
.import-boundary-preview { margin: 16px 0; color: var(--fg-2); }
.import-boundary-preview svg { width: 100%; max-height: 300px; background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius-sm); }
.import-boundary-old { fill: none; stroke: var(--fg-2); stroke-width: 2; stroke-dasharray: 7 5; }
.import-boundary-new { fill: var(--accent-soft); stroke: var(--accent); stroke-width: 2; fill-opacity: .3; }
