/* IMPORTAR — Sanfer Volvo v2 */
.import-types{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin-bottom:24px}
.import-type-card{border:2px solid var(--border);border-radius:14px;padding:20px 22px;cursor:pointer;transition:all .2s;background:#fff;display:flex;align-items:flex-start;gap:14px}
.import-type-card:hover{border-color:var(--volvo-accent);box-shadow:0 4px 16px rgba(0,86,145,.1)}
.import-type-card.active{border-color:var(--volvo-blue);background:var(--volvo-light);box-shadow:0 4px 16px rgba(0,86,145,.15)}
.itc-icon{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.2rem;flex-shrink:0}
.itc-icon.blue{background:rgba(0,86,145,.12);color:var(--volvo-blue)}
.itc-icon.green{background:rgba(34,197,94,.12);color:#16a34a}
.itc-title{font-size:.9rem;font-weight:700;color:var(--text)}
.itc-desc{font-size:.77rem;color:var(--text-light);margin-top:3px;line-height:1.4}
.itc-badge{display:inline-block;margin-top:7px;padding:2px 9px;border-radius:10px;font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}
.itc-badge.csv{background:#dbeafe;color:#1e40af}
.itc-badge.xl{background:#d1fae5;color:#065f46}
.tab-panel{display:none}.tab-panel.show{display:block}
.steps{display:flex;gap:0;margin-bottom:24px}.step{display:flex;align-items:center;flex:1}
.step:last-child .step-connector{display:none}
.step-num{width:34px;height:34px;border-radius:50%;background:var(--border);color:var(--text-light);display:flex;align-items:center;justify-content:center;font-size:.82rem;font-weight:800;flex-shrink:0;transition:all .2s}
.step.active .step-num{background:var(--volvo-blue);color:#fff}.step.done .step-num{background:#22c55e;color:#fff}
.step-label{font-size:.72rem;font-weight:700;color:var(--text-light);margin-left:8px;white-space:nowrap}
.step.active .step-label{color:var(--volvo-blue)}.step.done .step-label{color:#16a34a}
.step-connector{flex:1;height:2px;background:var(--border);margin:0 12px}.step.done .step-connector{background:#22c55e}
.steps-p{display:flex;gap:0;margin-bottom:24px}.step-p{display:flex;align-items:center;flex:1}
.step-p:last-child .step-p-line{display:none}
.step-p-num{width:32px;height:32px;border-radius:50%;background:var(--border);color:var(--text-light);display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:800;flex-shrink:0;transition:all .2s}
.step-p.active .step-p-num{background:var(--volvo-blue);color:#fff}.step-p.done .step-p-num{background:#22c55e;color:#fff}
.step-p-lbl{font-size:.72rem;font-weight:700;color:var(--text-light);margin-left:8px;white-space:nowrap}
.step-p.active .step-p-lbl{color:var(--volvo-blue)}.step-p.done .step-p-lbl{color:#16a34a}
.step-p-line{flex:1;height:2px;background:var(--border);margin:0 12px}.step-p.done .step-p-line{background:#22c55e}
.drop-zone{border:2px dashed var(--border);border-radius:14px;padding:40px 20px;text-align:center;cursor:pointer;transition:all .2s;background:#fafafa}
.drop-zone.drag-over,.drop-zone:hover{border-color:var(--volvo-blue);background:var(--volvo-light)}
.drop-icon i{font-size:2.5rem;color:var(--text-light);margin-bottom:14px;display:block}
.drop-title{font-size:.95rem;font-weight:700;color:var(--text)}
.drop-sub{font-size:.8rem;color:var(--text-light);margin-top:6px}
.drop-btn{display:inline-block;margin-top:14px;padding:7px 18px;background:var(--volvo-blue);color:#fff;border-radius:8px;font-size:.82rem;font-weight:700}
.mapping-grid{display:flex;flex-wrap:wrap;gap:10px}
.map-chip{display:flex;align-items:center;gap:8px;padding:7px 13px;background:var(--bg);border-radius:9px;font-size:.8rem}
.chip-from{background:#f1f5f9;padding:3px 8px;border-radius:6px;font-size:.78rem;font-weight:700}
.arrow{color:var(--text-light);font-size:.75rem}
.mapeo-grid-p{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.mapeo-row{display:flex;align-items:center;gap:8px;font-size:.82rem}
.mapeo-label{width:175px;color:var(--text-mid);font-weight:700;flex-shrink:0}
.mapeo-req{color:#ef4444}
.mapeo-row select{flex:1;padding:6px 10px;border:1.5px solid var(--border);border-radius:7px;font-family:'Montserrat',sans-serif;font-size:.8rem;outline:none}
.mapeo-row select:focus{border-color:var(--volvo-blue)}
.preview-wrap-p{max-height:320px;overflow:auto;border:1px solid var(--border);border-radius:10px}
.preview-wrap-p table{width:100%;border-collapse:collapse;font-size:.78rem}
.preview-wrap-p th{background:var(--volvo-blue);color:#fff;padding:7px 10px;font-size:.68rem;letter-spacing:.07em;text-transform:uppercase;white-space:nowrap}
.preview-wrap-p td{padding:6px 10px;border-bottom:1px solid var(--border)}
.preview-wrap-p tr:hover td{background:var(--volvo-light)}
.panel-p{display:none}.panel-p.show{display:block}
.res-ok{background:#d1fae5;color:#065f46;border-radius:10px;padding:12px 16px;display:flex;align-items:center;gap:10px;font-weight:700;font-size:.88rem;margin-bottom:8px}
.res-err{background:#fee2e2;color:#991b1b;border-radius:10px;padding:12px 16px;display:flex;align-items:center;gap:10px;font-weight:700;font-size:.88rem;margin-bottom:8px}
.progress-wrap{background:#e2e8f0;border-radius:10px;height:10px;overflow:hidden;margin:12px 0}
.progress-bar{height:100%;background:var(--volvo-blue);border-radius:10px;transition:width .3s;width:0%}
.plantilla-btn{display:inline-flex;align-items:center;gap:7px;padding:8px 16px;background:var(--volvo-light);color:var(--volvo-accent);border:1.5px solid var(--volvo-accent);border-radius:8px;font-size:.82rem;font-weight:700;cursor:pointer;transition:all .2s}
.plantilla-btn:hover{background:var(--volvo-accent);color:#fff}
@media(max-width:768px){.mapeo-grid-p{grid-template-columns:1fr}}
