.project-import-dialog { position:fixed; inset:0; z-index:3500; background:#0005; display:flex; align-items:center; justify-content:center; padding:3vh 2vw; }
.project-import-panel { width:1280px; max-width:100%; height:94vh; max-height:100%; background:var(--panel); color:var(--text); border:1px solid var(--line); border-radius:6px; display:flex; flex-direction:column; box-shadow:0 12px 48px #0003; font-size:13px; }
.project-import-panel > header,.project-import-panel > footer { display:flex; align-items:center; gap:12px; padding:12px 16px; flex-shrink:0; }
.project-import-panel > header { justify-content:space-between; border-bottom:1px solid var(--line); }
.project-import-panel h2 { font-size:18px; font-weight:400; margin:0 0 4px; }
.project-import-panel h3 { font-size:15px; font-weight:400; margin:12px 0 8px; }
.project-import-panel > main { overflow:auto; min-height:0; padding:0 16px 16px; flex:1; }
.project-import-panel > footer { border-top:1px solid var(--line); flex-wrap:wrap; }
.project-import-panel > footer > span { flex:1; }
.project-import-panel button { padding:6px 10px; height:auto; min-height:30px; border:1px solid var(--line); border-radius:4px; background:var(--panel); color:var(--text); font:inherit; font-weight:400; }
.project-import-panel button[data-edit-row],.project-import-panel header > button { width:30px; height:30px; padding:6px; display:inline-flex; align-items:center; justify-content:center; }
.project-import-panel input[type=checkbox] { width:16px; height:16px; padding:0; flex:none; }
.project-import-panel button:disabled { opacity:.5; cursor:default; }
.project-import-panel button svg { width:16px; height:16px; fill:none; stroke:currentColor; stroke-width:2.5; stroke-linecap:round; stroke-linejoin:round; }
.project-import-panel input,.project-import-panel select,.project-import-panel textarea { font:inherit; font-weight:400; color:var(--text); background:var(--bg); border:1px solid var(--line); border-radius:4px; padding:7px; min-width:0; max-width:100%; }
.project-import-panel label { display:flex; flex-direction:column; gap:5px; min-width:0; }
.project-import-panel label:has(input[type=checkbox]) { flex-direction:row; align-items:center; }
.project-import-source { display:grid; grid-template-columns:minmax(180px,1fr) minmax(200px,1fr) auto; gap:12px; align-items:end; padding:16px 0; }
.project-import-status { padding:8px 0; color:var(--muted); white-space:pre-wrap; overflow-wrap:anywhere; }
.project-import-heading { display:flex; align-items:baseline; flex-wrap:wrap; gap:16px; border-top:1px solid var(--line); }
.project-import-mapping,.project-import-value-mapping { padding:12px 0; border-bottom:1px solid var(--line); }
.project-import-mapping summary,.project-import-value-mapping summary { cursor:pointer; }
.project-import-map-options,.project-import-map-grid,[data-value-maps] { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px 16px; padding:12px 0; }
.project-import-validation { padding:10px 0; color:var(--muted); overflow-wrap:anywhere; }
.project-import-validation strong { font-weight:400; color:#ba5444; }
.project-import-panel [data-import-auto-correct] { grid-column:1 / -1; justify-self:start; max-width:100%; white-space:normal; overflow-wrap:anywhere; }
.project-import-auto-report { max-height:260px; overflow:auto; }
.project-import-auto-report summary { cursor:pointer; position:sticky; top:0; background:var(--panel); padding:6px 0; }
.project-import-hierarchy { padding:10px 0; border-bottom:1px solid var(--line); overflow-wrap:anywhere; }
.project-import-hierarchy strong { font-weight:400; color:#ba5444; }
.project-import-table-wrap { overflow:auto; border-block:1px solid var(--line); }
.project-import-panel table { width:100%; min-width:750px; border-collapse:collapse; table-layout:fixed; }
.project-import-panel th,.project-import-panel td { text-align:left; padding:7px; border-bottom:1px solid var(--line); font-weight:400; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.project-import-panel th:first-child { width:36px; }.project-import-panel th:nth-child(2) { width:80px; }.project-import-panel th:nth-child(4) { width:110px; }.project-import-panel th:last-child { width:48px; }
.project-import-pages { display:flex; align-items:center; justify-content:center; gap:16px; padding:10px; }
.project-import-row-editor { border-top:1px solid var(--line); padding:10px 0; }
.project-import-row-editor form > label { margin:10px 0; }
.project-import-row-editor fieldset { display:flex; flex-wrap:wrap; gap:12px; border:1px solid var(--line); margin:10px 0; }
.project-import-row-editor dl { display:grid; grid-template-columns:1fr 3fr; gap:8px; overflow-wrap:anywhere; }.project-import-row-editor dd { margin:0; white-space:pre-wrap; }
@media(max-width:650px) { .project-import-dialog { padding:8px; }.project-import-panel { height:98vh; }.project-import-source,.project-import-map-options,.project-import-map-grid,[data-value-maps] { grid-template-columns:1fr; }.project-import-panel > footer { gap:6px; padding:8px; }.project-import-panel > footer > span { flex-basis:100%; } }
.project-sheet-dialog { box-sizing:border-box; width:420px; max-width:calc(100vw - 32px); padding:18px; border:1px solid var(--line); border-radius:6px; background:var(--panel); color:var(--text); }
.project-sheet-dialog::backdrop { background:#0005; }
.project-sheet-dialog h2 { margin:0 0 16px; font-size:17px; font-weight:400; }
.project-sheet-dialog label { display:grid; gap:6px; font-size:12px; }
.project-sheet-dialog select { width:100%; min-width:0; height:36px; padding:6px; background:var(--panel); color:var(--text); border:1px solid var(--line); border-radius:4px; font:inherit; }
.project-sheet-dialog footer { display:flex; justify-content:flex-end; gap:8px; margin-top:18px; }
.project-sheet-dialog button { padding:7px 12px; border:1px solid var(--line); border-radius:4px; background:var(--panel); color:var(--text); cursor:pointer; }
