.resume-start { display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:56px; margin:12px 0 40px }
.resume-start-copy h1 { font-family:var(--serif); font-weight:400; font-size:clamp(32px,3.4vw,44px); line-height:1.5; letter-spacing:.01em; margin:18px 0 }
.resume-start-copy h1 span { color:#697e58 }
.resume-start-lead { font-size:14px; color:var(--dim); line-height:1.9; max-width:400px; margin:0 0 28px }
.resume-start-actions { display:flex; flex-wrap:wrap; gap:12px }
.resume-start-actions .btn { min-height:44px }
.resume-private-note { font-size:11px; color:var(--dim); margin-top:18px }
.resume-start .template-grid { grid-template-columns:1fr }
.resume-start .template-info { padding:18px 20px }
.resume-start .template-info p { max-width:230px }
.resume-steps { display:grid; grid-template-columns:repeat(3,1fr); gap:32px; padding:24px 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line) }
.resume-steps>div { display:grid; grid-template-columns:24px 1fr; align-items:baseline; column-gap:12px }
.resume-steps span { color:#718166; font-family:Georgia,serif; font-size:13px; font-style:italic; grid-row:span 2 }
.resume-steps h2 { font-size:13px; font-weight:550; margin:0 0 6px }
.resume-steps p { font-size:11px; color:var(--dim); margin:0; line-height:1.8 }
.resume-import-dialog { width:1120px; max-width:calc(100vw - 40px); max-height:calc(100dvh - 40px); padding:0 }
.import-header { padding:28px 32px 22px; position:relative; border-bottom:1px solid var(--line) }
.import-header h2 { font-size:24px; font-weight:550; margin:0 0 8px }
.import-header p:not(.eyebrow) { font-size:12px; color:var(--dim); line-height:1.8; margin:0 }
.import-header .eyebrow { margin-bottom:10px }
.import-body { padding:24px 32px; max-height:calc(100dvh - 260px); overflow:auto; overscroll-behavior:contain }
.resume-dropzone { text-align:center; padding:36px 24px; border:1px dashed #bdcab1; background:#f6f8f0; border-radius:10px }
.resume-dropzone.dragging { background:#e8efdc; outline:2px solid #8fa37d; outline-offset:3px }
.document-symbol { display:block; width:32px; height:40px; border:1px solid #819773; border-radius:3px; background:var(--surface); margin:0 auto 20px; position:relative; box-shadow:5px 5px #e0e8d5 }
.document-symbol::after { content:""; position:absolute; top:12px; left:7px; right:7px; height:1px; background:#8b9d7d; box-shadow:0 6px #8b9d7d,0 12px #8b9d7d }
.resume-dropzone h3 { margin:0 0 10px; font-size:18px; font-weight:550 }
.resume-dropzone p { font-size:12px; color:var(--dim); margin:0 0 20px; line-height:1.8 }
.resume-dropzone .form-hint { font-size:11px; margin:18px 0 0 }
.import-example-links { margin-top:18px; display:flex; flex-wrap:wrap; justify-content:center; gap:12px; color:var(--dim); font-size:11px }
.import-example-links a { color:var(--accent); text-decoration:underline; text-underline-offset:3px }
.resume-file-list { list-style:none; padding:0; margin:20px 0 0; display:flex; flex-direction:column; gap:8px }
.resume-file-row { display:flex; align-items:center; gap:12px; background:#f6f7f2; border:1px solid var(--line); border-radius:6px; padding:10px 14px; font-size:12px }
.resume-file-row strong { font-weight:500; flex:1; min-width:0; overflow-wrap:anywhere }
.resume-file-row span { color:var(--dim); white-space:nowrap; font-size:11px }
.resume-file-row button { border:0; background:none; color:var(--dim); border-radius:4px; width:28px; height:28px; font-size:18px }
.resume-file-row button:hover { background:var(--soft) }
.import-picker-actions { display:flex; gap:20px; align-items:center; justify-content:space-between; margin-top:24px }
.import-picker-actions .form-hint { margin:0 }
.import-progress { text-align:center; padding:64px 24px }
.import-progress .loading-dot { display:inline-block; width:10px; height:10px }
.import-progress h3 { font-size:17px; font-weight:500; margin:18px 0 }
.import-progress progress { display:block; width:300px; max-width:100%; height:7px; margin:24px auto; accent-color:var(--accent); border:0; border-radius:4px; overflow:hidden }
.import-progress progress::-webkit-progress-bar { background:#e5e9dc }
.import-progress progress::-webkit-progress-value { background:#6d865d }
.import-progress p { color:var(--dim); font-size:12px; line-height:1.8; max-width:460px; margin:0 auto 24px; overflow-wrap:anywhere }
.import-result-summary { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:20px }
.import-result-summary h3 { margin:0 0 6px; font-size:17px; font-weight:550 }
.import-result-summary p { margin:0; font-size:11px; color:var(--dim) }
.resume-warnings { font-size:12px; line-height:1.8; color:#826344; padding:12px 16px; background:#fcf3e7; border:1px solid #eadbc4; border-radius:6px; margin-bottom:20px; white-space:pre-wrap }
.import-review-layout { display:grid; grid-template-columns:.8fr 1.2fr; gap:24px; align-items:start }
.import-source { position:sticky; top:0; padding:16px; background:#f5f6ef; border:1px solid var(--line); border-radius:8px }
.import-source label { font-size:13px; font-weight:550 }
.import-source p { color:var(--dim); font-size:11px; line-height:1.8; margin:8px 0 12px }
.import-source textarea { width:100%; min-height:380px; max-height:550px; resize:vertical; border:1px solid var(--line); border-radius:5px; background:var(--surface); padding:12px; font:12px/1.8 "Segoe UI","Microsoft YaHei",sans-serif; color:var(--ink) }
.import-source .btn { margin-top:12px }
.import-review-heading { display:flex; align-items:baseline; gap:12px; justify-content:space-between; margin:0 0 16px }
.import-review-heading strong { font-weight:550; font-size:13px }
.import-review-heading span { font-size:10px; color:var(--dim) }
.import-field { display:grid; grid-template-columns:100px 1fr; gap:12px; align-items:start; margin-bottom:12px }
.import-field>label { display:flex; gap:8px; align-items:center; font-size:12px; padding-top:10px }
.import-field input[type=checkbox],.import-section-toggle input,.import-record-toggle input { accent-color:var(--accent); width:15px; height:15px; margin:0; flex-shrink:0 }
.import-field input:not([type=checkbox]),.import-field textarea,.import-record input,.import-record textarea,.import-section-content>textarea { width:100%; min-height:38px; border:1px solid var(--line); border-radius:5px; background:#fff; padding:8px 10px; font-size:12px; color:var(--ink); line-height:1.7 }
.import-field textarea { min-height:62px; resize:vertical }
.import-section { margin-top:20px; border-top:1px solid var(--line); padding-top:16px }
.import-section-toggle { display:flex; align-items:center; gap:8px; font-size:13px; font-weight:550; margin-bottom:14px }
.import-section-toggle span { color:var(--dim); font-size:10px; font-weight:400; margin-left:auto }
.import-record { border:1px solid var(--line); border-radius:6px; background:#fafbf6; padding:14px; margin-bottom:12px }
.import-record-toggle { display:flex; gap:8px; align-items:center; font-size:11px; color:var(--dim); margin-bottom:12px }
.import-record-fields { display:grid; grid-template-columns:1fr 1fr; gap:12px }
.import-record-fields label { font-size:11px; color:var(--dim); display:flex; flex-direction:column; gap:5px; min-width:0 }
.import-record-fields .wide { grid-column:1/-1 }
.import-record textarea { resize:vertical; min-height:64px }
.import-section-content>textarea { min-height:110px; resize:vertical }
.import-unclassified { margin-top:20px; border:1px solid var(--line); border-radius:6px; padding:12px }
.import-unclassified summary { cursor:pointer; font-size:12px }
.import-unclassified p { color:var(--dim); font-size:11px }
.import-unclassified textarea { width:100%; min-height:110px; padding:10px; font-size:12px; line-height:1.8; border:1px solid var(--line); border-radius:5px; resize:vertical; background:#f5f6ef }
.import-options { margin:24px 0 0; padding-top:20px; border-top:1px solid var(--line); display:flex; align-items:center; flex-wrap:wrap; gap:12px; font-size:12px }
.import-options select { border:1px solid var(--line); border-radius:5px; padding:8px 12px; color:var(--ink); background:#fff }
.import-options p { width:100%; color:var(--dim); margin:0; font-size:11px; line-height:1.8 }
.import-footer { display:flex; justify-content:space-between; gap:20px; align-items:center; padding:18px 32px; border-top:1px solid var(--line); background:#f8faf3 }
.import-footer>span { color:var(--dim); font-size:11px; line-height:1.8 }
.import-body>.form-error { margin:20px 0 0 }
@media(max-width:1000px) { .resume-start { gap:32px }.resume-start-copy h1 { font-size:35px }.resume-start .template-info { gap:12px }.resume-start .template-info p { font-size:11px } }
@media(max-width:720px) {
  .resume-start { grid-template-columns:1fr; gap:28px; margin:0 0 28px }.resume-start-copy h1 { font-size:32px }.resume-start-lead { max-width:none; font-size:13px; margin-bottom:22px }
  .resume-steps { gap:20px; grid-template-columns:1fr; padding:22px 0 }.resume-steps>div { column-gap:14px }.resume-steps h2 { font-size:13px }
  .resume-import-dialog { width:100vw; max-width:none; height:100dvh; max-height:none; border:0; border-radius:0 }
  .import-header { padding:24px 20px 18px }.import-header h2 { font-size:21px; padding-right:24px }.import-header p:not(.eyebrow) { font-size:11px }
  .import-body { padding:20px; max-height:calc(100dvh - 235px) }.import-footer { padding:16px 20px; gap:14px }.import-footer>span { max-width:140px; font-size:10px }
  .import-review-layout { grid-template-columns:1fr; gap:20px }.import-source { position:static }.import-source textarea { min-height:180px; max-height:280px }
  .resume-dropzone { padding:30px 18px }.resume-dropzone h3 { font-size:17px }.import-picker-actions { align-items:flex-start; gap:12px }.import-picker-actions .form-hint { font-size:10px; max-width:160px }
  .import-result-summary { align-items:flex-start; gap:12px }.import-result-summary .btn { padding:7px 10px; font-size:10px }.import-field { grid-template-columns:90px 1fr; gap:8px }
  .import-progress { padding:44px 12px }.import-review-heading span { max-width:140px; text-align:right }
  .workbench-tools { flex-wrap:wrap }.workbench-tools #editor-import { padding-left:9px; padding-right:9px }
}
@media(max-width:380px) { .resume-start-copy h1 { font-size:28px }.resume-start-actions { gap:8px }.resume-start-actions .btn { font-size:12px; padding:9px 12px }.import-body { padding:16px }.import-header { padding:24px 16px 18px }.import-footer { padding:14px 16px }.import-record-fields { grid-template-columns:1fr }.import-record-fields .wide { grid-column:auto }.import-field { grid-template-columns:82px 1fr }.import-footer .btn { font-size:11px; padding:9px 12px } }
