/* AppHub CSV Pro 5.1 */
.csv-wizard-heading,.csv-options-head,.csv-group-head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.csv-step-label{border:1px solid #d9d5e8;border-radius:12px;padding:6px 9px;font-size:11px;font-weight:700;white-space:nowrap}
.csv-steps{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}.csv-steps b{padding:8px 10px;border-radius:9px;background:#f2f0f8;font-size:12px;color:#514b65}
.csv-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin:13px 0}
.csv-grid label,.csv-options label,.csv-group label{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:600}
.csv-grid input,.csv-grid select,.csv-options input,.csv-options select,.csv-options textarea,.csv-group input,.csv-group select,.csv-group textarea{width:100%;min-width:0;padding:10px;border-radius:8px;border:1px solid #c9c8d5;background:#fff;color:#29263b;font:inherit}
.csv-toolbar{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin:12px 0}.csv-toolbar select{width:auto;min-width:200px}
.csv-options,.csv-map-panel{padding:16px;border:1px solid #dedce7;border-radius:14px;margin:16px 0;background:#fdfcfe}
.csv-options h4,.csv-map-panel h4{margin:0 0 6px}.csv-options p{margin:4px 0 12px}.csv-check{display:flex!important;flex-direction:row!important;align-items:center;gap:9px!important}.csv-check input{width:auto!important}
.csv-group{padding:12px;border:1px solid #e2dfed;border-radius:12px;background:white;margin-top:10px;display:grid;gap:9px}.csv-group-head{margin-bottom:4px}
.csv-table-holder{overflow:auto;max-width:100%;max-height:420px;border:1px solid #e3e1ea;border-radius:12px;margin:12px 0}.csv-table-holder table{width:100%;border-collapse:collapse}.csv-table-holder th,.csv-table-holder td{padding:9px;border-bottom:1px solid #ebeaf0;text-align:left;font-size:12px;vertical-align:top}.csv-table-holder th{position:sticky;top:0;background:#f8f7fb;z-index:1}
.csv-edit-table input{min-width:145px;max-width:260px;padding:8px;border-radius:7px;border:1px solid #d4d1dd;background:#fff;color:#232336}.csv-edit-table input[data-col="imagen_url"]{min-width:230px}
.csv-groupcheck{display:flex!important;flex-direction:row!important;white-space:nowrap;font-size:12px!important;font-weight:500!important;margin:5px 0;align-items:center}.csv-groupcheck input{width:auto!important;min-width:0}
.csv-img-preview img{width:52px;height:52px;object-fit:cover;border-radius:8px;margin-top:6px;border:1px solid #ddd}
.csv-error{color:#b52435;font-size:12px}.csv-warn{color:#705401;font-size:12px}
@media(max-width:650px){.csv-grid{grid-template-columns:1fr}.csv-wizard-heading{align-items:flex-start;flex-direction:column}}

.csv-template-highlight{display:flex;align-items:center;justify-content:space-between;gap:15px;background:linear-gradient(135deg,#eaf5fe,#f3eafe);border:1px solid #b9c9f2;padding:16px;border-radius:15px;margin:15px 0}.csv-template-highlight p{font-size:12px;max-width:450px;margin:4px 0}.csv-template-highlight .btn.primary{background:#2459bc!important;color:#fff!important;font-weight:800}.csv-category-review{margin-top:12px}.csv-cat-row{display:grid;grid-template-columns:minmax(140px,1fr) 44px 85px 55px 120px;align-items:center;gap:10px;padding:10px 8px;border-bottom:1px solid #ddd}.csv-cat-row select{width:100%;min-width:0}.csv-cat-row strong{font-size:13px}@media(max-width:800px){.csv-template-highlight{display:block}.csv-cat-row{grid-template-columns:1fr 45px 75px;gap:5px}.csv-cat-row span:nth-of-type(2),.csv-cat-row select:last-child{grid-column:span 1}}

/* V5.3 — icon gallery and workbook feedback */
.csv-workbook-summary{padding:15px 18px;margin:16px 0;background:#e9f8ef;border:1px solid #a3dfbe;border-radius:14px;color:#16422a}.csv-workbook-summary strong{font-size:15px}
.csv-cat-row{display:grid;grid-template-columns:minmax(160px,1fr) 130px 115px;align-items:center;gap:15px;padding:12px;border-bottom:1px solid #e5e7eb}
.csv-icon-pick{display:flex;align-items:center;gap:10px;border:1px solid #ccd5e3;border-radius:12px;background:#f8fafc;padding:5px 9px;cursor:pointer}
.csv-icon-pick span{font-size:27px}.csv-icon-pick small{font-size:11px;line-height:1.2}.csv-cat-visible{display:flex;gap:6px;align-items:center}
.apphub-icon-overlay{position:fixed;inset:0;background:rgba(15,23,42,.58);z-index:99999;display:flex;align-items:center;justify-content:center;padding:20px}
.apphub-icon-dialog{background:#fff;color:#111827;border-radius:20px;width:min(820px,96vw);max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 80px #07102050;padding:22px;gap:12px}
.apphub-icon-top{display:flex;justify-content:space-between;align-items:center;font-size:18px}.apphub-icon-search{width:100%;padding:12px 14px;border:1px solid #cbd5e1;border-radius:10px}
.apphub-icon-groups{display:flex;gap:7px;overflow-x:auto;padding:5px 0;flex-shrink:0}.apphub-icon-groups button{white-space:nowrap;border:1px solid #dbe1eb;border-radius:20px;background:#f8fafc;padding:7px 11px;font-size:12px;cursor:pointer}.apphub-icon-groups button.active{background:#dbeafe;border-color:#2563eb}
.apphub-icon-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(93px,1fr));gap:8px;overflow-y:auto;min-height:140px;padding:4px}.apphub-icon-grid button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-height:76px;border:1px solid #e2e8f0;border-radius:11px;background:#fff;cursor:pointer}.apphub-icon-grid button:hover,.apphub-icon-grid button.selected{background:#eff6ff;border-color:#3b82f6}.apphub-icon-grid span{font-size:30px}.apphub-icon-grid small{font-size:10px;color:#64748b;line-height:1.2}
@media(max-width:650px){.csv-cat-row{grid-template-columns:1fr 130px}.csv-cat-visible{grid-column:span 2}.apphub-icon-dialog{padding:12px}}
