@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&display=swap');
:root{--purple:#6c3ce6;--purple-dark:#4d25bd;--ink:#1b1930;--muted:#77758a;--line:#ebe9f2;--bg:#f7f7fb;--white:#fff;--green:#16a36a;--red:#d9475c;--amber:#d89017}*{box-sizing:border-box}body{margin:0;font-family:'DM Sans',system-ui,sans-serif;background:var(--bg);color:var(--ink)}button,a{font:inherit}.layout{min-height:100vh;display:grid;grid-template-columns:260px 1fr}.sidebar{position:fixed;inset:0 auto 0 0;width:260px;background:#201742;color:#fff;padding:26px 18px;display:flex;flex-direction:column;z-index:20}.brand{display:flex;align-items:center;gap:12px;padding:0 8px 28px}.brand-mark{width:40px;height:40px;display:grid;place-items:center;background:linear-gradient(135deg,#8b5cf6,#5a2bd0);border-radius:12px;font-weight:700;font-size:21px}.brand strong,.brand small{display:block}.brand small{color:#aaa4bd;margin-top:3px;font-size:12px}.sidebar nav{display:grid;gap:7px}.nav-item{width:100%;border:0;background:transparent;color:#bdb7cd;text-decoration:none;display:grid;grid-template-columns:25px 1fr;align-items:center;text-align:left;padding:13px 12px;border-radius:10px;cursor:pointer}.nav-item small{grid-column:2;font-size:9px;text-transform:uppercase;color:#777086}.nav-item.active{color:#fff;background:#392969}.nav-item:disabled{cursor:not-allowed;opacity:.75}.read-only{margin-top:auto;border:1px solid #463968;background:#2c2250;border-radius:12px;padding:13px;display:flex;gap:10px}.read-only strong,.read-only small{display:block}.read-only small{color:#a8a1bd;font-size:12px;margin-top:2px}main{grid-column:2}.topbar{height:86px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;padding:0 38px;gap:14px}.topbar p{margin:0;color:var(--muted);font-size:12px}.topbar h1{font-size:18px;margin:3px 0 0}.avatar{margin-left:auto;width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:#ece5ff;color:var(--purple);font-weight:700}.menu-button{display:none;border:0;background:none;font-size:22px}.content{padding:36px;max-width:1450px;margin:auto}.welcome{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-bottom:28px}.eyebrow{font-size:11px;color:var(--purple);font-weight:700;letter-spacing:.1em}.welcome h2{font-size:30px;margin:7px 0}.welcome p{color:var(--muted);margin:0}.primary{border:0;border-radius:11px;background:linear-gradient(135deg,var(--purple),var(--purple-dark));color:#fff;padding:13px 20px;display:flex;gap:9px;align-items:center;font-weight:600;box-shadow:0 8px 20px #6c3ce633;cursor:pointer}.primary:disabled{opacity:.7}.primary.loading .button-icon{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.notice{padding:12px 16px;border-radius:9px;background:#fff2d9;color:#8a5900;margin-bottom:18px}.hidden{display:none}.connection-card{display:flex;align-items:center;gap:16px;background:#fff;padding:22px;border:1px solid var(--line);border-radius:15px;box-shadow:0 5px 20px #2b1d5a0a}.connection-card small{font-size:10px;letter-spacing:.08em;color:var(--muted)}.connection-card strong{display:block;margin:4px 0}.connection-card p{margin:0;color:var(--muted);font-size:13px}.status-icon{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:#efedf3;color:#aaa}.status-icon.success{background:#e3f8ef;color:var(--green)}.status-icon.error{background:#fde9ec;color:var(--red)}.status-icon.loading{background:#eee8ff;color:var(--purple)}.badge{margin-left:auto;border-radius:20px;padding:6px 11px;font-size:11px;background:#f0eef4;color:#777}.badge.success{background:#e3f8ef;color:var(--green)}.badge.error{background:#fde9ec;color:var(--red)}.badge.loading{background:#eee8ff;color:var(--purple)}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin:22px 0}.stats article{background:#fff;border:1px solid var(--line);border-radius:15px;padding:22px;display:flex;align-items:center;gap:14px}.stats small{display:block;color:var(--muted);font-size:12px;margin-bottom:6px}.stats strong{font-size:27px}.stat-icon{width:43px;height:43px;display:grid;place-items:center;border-radius:11px;font-weight:700}.purple{background:#eee8ff;color:var(--purple)}.green{background:#e1f8ed;color:var(--green)}.amber{background:#fff3dc;color:var(--amber)}.red{background:#fde7eb;color:var(--red)}.coming{text-align:center;background:#fff;border:1px dashed #d8d3e7;border-radius:15px;padding:38px 20px}.coming-icon{font-size:26px;color:var(--purple)}.coming h3{margin:9px 0 5px}.coming p{color:var(--muted);margin:0 auto 15px;max-width:550px}.coming span{display:inline-block;border-radius:20px;padding:6px 12px;background:#eee8ff;color:var(--purple);font-size:11px;font-weight:700}.overlay{display:none}
@media(max-width:1000px){.stats{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.layout{display:block}.sidebar{transform:translateX(-100%);transition:transform .25s}.sidebar.open{transform:translateX(0)}main{display:block}.topbar{height:72px;padding:0 18px}.topbar p{display:none}.topbar h1{font-size:15px}.menu-button{display:block}.content{padding:24px 17px}.welcome{align-items:flex-start;flex-direction:column}.welcome h2{font-size:25px}.primary{width:100%;justify-content:center}.overlay.show{display:block;position:fixed;inset:0;background:#16102299;z-index:10}}
@media(max-width:500px){.stats{grid-template-columns:1fr}.connection-card{align-items:flex-start;flex-wrap:wrap}.badge{margin-left:58px}.avatar{display:none}}

/* Fase 2: nuevo producto */
.app-view[hidden]{display:none}.product-heading{margin-bottom:24px}.security-pill{background:#e6f7ef;color:var(--green);padding:9px 14px;border-radius:20px;font-size:12px;font-weight:600}.form-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:20px;align-items:start}.form-main{display:grid;gap:20px}.form-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:24px;box-shadow:0 5px 20px #2b1d5a08}.card-heading{display:flex;align-items:flex-start;gap:13px;padding-bottom:20px;margin-bottom:22px;border-bottom:1px solid var(--line)}.card-heading>span{display:grid;place-items:center;flex:0 0 36px;height:36px;border-radius:10px;background:#eee8ff;color:var(--purple);font-size:12px;font-weight:700}.card-heading h3{margin:0 0 4px;font-size:17px}.card-heading p{margin:0;color:var(--muted);font-size:12px}.card-heading.compact{margin-bottom:16px}.field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:19px}.field-grid.three-columns{grid-template-columns:repeat(3,minmax(0,1fr))}.field.wide{grid-column:1/-1}.field>span,.image-group>span{display:block;margin-bottom:8px;font-size:12px;font-weight:600}.field b{color:var(--red)}.field input,.field select,.field textarea{width:100%;border:1px solid #dedbe8;border-radius:10px;background:#fff;color:var(--ink);padding:12px 13px;outline:0;transition:border .2s,box-shadow .2s}.field textarea{resize:vertical;line-height:1.55}.field input:focus,.field select:focus,.field textarea:focus{border-color:#8e6aed;box-shadow:0 0 0 3px #6c3ce615}.field input.invalid,.field select.invalid{border-color:var(--red);box-shadow:0 0 0 3px #d9475c12}.field>small{display:block;color:var(--muted);font-size:10px;margin-top:6px}.field .field-error{color:var(--red);font-weight:500}.field-error:empty{display:none}.input-prefix{position:relative}.input-prefix i{position:absolute;left:13px;top:50%;transform:translateY(-50%);font-style:normal;color:var(--muted)}.input-prefix input{padding-left:29px}.sticky-card{position:sticky;top:20px}.status-options{display:grid;gap:10px}.status-options label{cursor:pointer}.status-options input{position:absolute;opacity:0;pointer-events:none}.status-options span{display:grid;grid-template-columns:38px 1fr;border:1px solid var(--line);padding:13px;border-radius:11px;transition:.2s}.status-options i{grid-row:1/3;display:grid;place-items:center;width:30px;height:30px;border-radius:8px;background:#f2eff8;color:var(--purple);font-style:normal}.status-options strong,.status-options small{grid-column:2}.status-options strong{font-size:13px}.status-options small{color:var(--muted);font-size:10px;margin-top:3px}.status-options input:checked+span{border-color:var(--purple);background:#f8f5ff;box-shadow:0 0 0 2px #6c3ce611}.status-options input:checked+span i{background:var(--purple);color:#fff}.safe-note{margin-top:17px;padding:12px;border-radius:9px;background:#f7f7fb;color:var(--muted);font-size:11px;line-height:1.45}.image-fields{display:grid;grid-template-columns:1fr 1fr;gap:20px}.upload-zone{min-height:130px;border:1.5px dashed #cfc9df;border-radius:12px;background:#faf9fd;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;padding:18px;cursor:pointer;transition:.2s}.upload-zone:hover{border-color:var(--purple);background:#f8f5ff}.upload-zone input{position:absolute;width:1px;height:1px;opacity:0}.upload-zone .upload-icon{display:grid;place-items:center;width:35px;height:35px;border-radius:10px;background:#eee8ff;color:var(--purple);margin-bottom:8px}.upload-zone strong{font-size:12px}.upload-zone small{color:var(--muted);font-size:10px;margin-top:4px}.preview-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:10px}.preview-grid.single{grid-template-columns:minmax(0,130px)}.preview-grid figure{margin:0;min-width:0}.preview-grid img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:9px;border:1px solid var(--line);display:block}.preview-grid figcaption{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:9px;margin-top:4px}.local-image-note{margin:16px 0 0;padding:10px 12px;background:#fff7e8;color:#8a630d;border-radius:9px;font-size:11px}.form-actions{position:sticky;bottom:0;z-index:5;margin-top:20px;padding:15px 0;display:flex;justify-content:space-between;gap:14px;background:linear-gradient(#f7f7fb00,var(--bg) 20%)}.form-actions>div{display:flex;gap:10px}.secondary{border:1px solid #d8d4e3;border-radius:10px;background:#fff;color:var(--ink);padding:12px 17px;font-weight:600;cursor:pointer}.secondary:hover{border-color:#b8afcf}.danger-soft{color:#a44655}.form-alert{padding:13px 16px;border-radius:10px;margin-bottom:18px;font-size:13px}.form-alert.error{background:#fde9ec;color:#a52f42;border:1px solid #f6cdd3}.form-alert.loading{background:#eee8ff;color:var(--purple);border:1px solid #ddd1ff}.success-result{display:grid;grid-template-columns:48px 1fr auto;align-items:center;gap:14px;background:#ecfaf4;border:1px solid #ccefe0;border-radius:14px;padding:18px;margin-bottom:20px}.success-check{width:43px;height:43px;display:grid;place-items:center;border-radius:50%;background:var(--green);color:#fff;font-size:20px}.success-result strong{color:#08794b}.success-result p{margin:4px 0 0;color:#567264;font-size:12px}.success-result dl{display:flex;gap:20px;margin:0}.success-result dl div{min-width:55px}.success-result dt{font-size:9px;color:#668174;text-transform:uppercase}.success-result dd{margin:3px 0 0;font-size:13px;font-weight:700}.form-actions button:disabled{opacity:.6;cursor:wait}.form-actions .loading{position:relative}.form-actions .loading:after{content:'…'}
@media(max-width:1100px){.form-layout{grid-template-columns:1fr}.sticky-card{position:static}.field-grid.three-columns{grid-template-columns:repeat(2,minmax(0,1fr))}.field-grid.three-columns .field:last-child{grid-column:1/-1}.success-result{grid-template-columns:48px 1fr}.success-result dl{grid-column:1/-1;padding-left:62px}}
@media(max-width:760px){.security-pill{display:none}.form-card{padding:18px}.field-grid,.field-grid.three-columns,.image-fields{grid-template-columns:1fr}.field-grid.three-columns .field:last-child{grid-column:auto}.form-actions{position:static;flex-direction:column-reverse}.form-actions>div{flex-direction:column}.form-actions button{width:100%;justify-content:center}.success-result{grid-template-columns:40px 1fr}.success-result dl{padding-left:0;display:grid;grid-template-columns:repeat(3,1fr)}}
@media(max-width:500px){.preview-grid{grid-template-columns:repeat(3,1fr)}.success-result dl{grid-template-columns:repeat(2,1fr)}}

/* Fase 3: carga masiva */
.example-links{display:flex;gap:8px}.example-links a{border:1px solid #d8d4e3;background:#fff;color:var(--purple);padding:9px 12px;border-radius:9px;text-decoration:none;font-size:11px;font-weight:700}.bulk-upload-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.bulk-source-card{min-width:0}.bulk-source-card .card-heading{margin-bottom:15px}.bulk-zone{min-height:145px}.bulk-help{margin:16px 0;background:#f0ecff;color:#57458b;border-radius:11px;padding:13px 16px;font-size:12px;line-height:1.6}.bulk-help code{background:#fff;padding:2px 5px;border-radius:4px;color:#4d25bd}.bulk-toolbar,.bulk-process-actions{display:flex;justify-content:space-between;gap:12px;margin:18px 0}.bulk-preview{display:grid;gap:18px}.bulk-summary{display:grid;grid-template-columns:repeat(3,150px) 1fr;gap:12px;align-items:center}.bulk-summary>div{background:#fff;border:1px solid var(--line);border-radius:12px;padding:14px 16px}.bulk-summary small{display:block;color:var(--muted);font-size:10px}.bulk-summary strong{display:block;font-size:23px;margin-top:3px}.bulk-summary .success strong{color:var(--green)}.bulk-summary .error strong{color:var(--red)}.bulk-summary>span{text-align:right;color:var(--muted);font-size:11px}.table-card{background:#fff;border:1px solid var(--line);border-radius:15px;overflow:hidden}.table-heading{padding:18px 20px;display:flex;align-items:center;justify-content:space-between;gap:15px;border-bottom:1px solid var(--line)}.table-heading h3{margin:0 0 3px;font-size:16px}.table-heading p{margin:0;color:var(--muted);font-size:11px}.table-heading label{font-size:11px;color:var(--muted);white-space:nowrap}.table-scroll{overflow:auto}.bulk-table{width:100%;min-width:1100px;border-collapse:collapse;font-size:11px}.bulk-table th{position:sticky;top:0;background:#f8f7fb;color:#6e6b7d;text-align:left;padding:11px 10px;font-size:9px;text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--line)}.bulk-table td{padding:11px 10px;border-bottom:1px solid #f0eef4;vertical-align:middle}.bulk-table tr:last-child td{border-bottom:0}.bulk-table .row-blocked{background:#fffafb;color:#847d88}.sku-cell{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:600}.bulk-thumb{width:42px;height:42px;object-fit:cover;border-radius:7px;border:1px solid var(--line)}.validation-badge{display:inline-block;padding:5px 8px;border-radius:15px;font-size:9px;font-weight:700;white-space:nowrap}.validation-badge.ready{background:#e3f8ef;color:var(--green)}.validation-badge.warning{background:#fff3dc;color:#a26b0d}.validation-badge.blocked{background:#fde9ec;color:var(--red)}.bulk-result{max-width:160px}.result-success{color:var(--green);font-weight:700}.result-error{color:var(--red);font-weight:600}.form-alert.success{background:#e3f8ef;color:#08794b;border:1px solid #c8eddd}.form-alert.warning{background:#fff3dc;color:#8a630d;border:1px solid #f3dfb8}.bulk-process-actions{justify-content:flex-end;padding-bottom:25px}.bulk-process-actions button{min-width:220px}
@media(max-width:900px){.bulk-upload-grid{grid-template-columns:1fr}.bulk-summary{grid-template-columns:repeat(3,1fr)}.bulk-summary>span{grid-column:1/-1;text-align:left}.example-links{flex-direction:column}}
@media(max-width:600px){.bulk-summary{grid-template-columns:1fr 1fr}.bulk-summary>div:first-child{grid-column:1/-1}.bulk-toolbar,.bulk-process-actions{flex-direction:column-reverse}.bulk-toolbar button,.bulk-process-actions button{width:100%;min-width:0}.table-heading{align-items:flex-start;flex-direction:column}.example-links{width:100%;flex-direction:row}.example-links a{flex:1;text-align:center}}

/* Fase 4: validación editable y filtros */
.bulk-summary{grid-template-columns:repeat(4,140px) 1fr}.bulk-summary .duplicate strong{color:#8b4acb}
.validation-badge.duplicate{background:#f0e8fb;color:#7133aa}
.bulk-filters{display:flex;gap:8px;padding:12px 20px;border-bottom:1px solid var(--line);overflow:auto}.bulk-filters button{border:1px solid #ddd8e8;background:#fff;color:var(--muted);border-radius:18px;padding:7px 13px;font-size:10px;font-weight:700;cursor:pointer;white-space:nowrap}.bulk-filters button.active{background:var(--purple);border-color:var(--purple);color:#fff}
.bulk-edit{min-width:105px;width:100%;border:1px solid #dedbe8;border-radius:7px;padding:8px;background:#fff;color:var(--ink);font:inherit}.bulk-edit[data-field="name"]{min-width:150px}.bulk-edit:focus{outline:0;border-color:var(--purple);box-shadow:0 0 0 2px #6c3ce615}.bulk-edit:disabled{background:#f3f2f6;color:var(--muted)}tr[hidden]{display:none}
@media(max-width:900px){.bulk-summary{grid-template-columns:repeat(4,1fr)}}
@media(max-width:600px){.bulk-summary{grid-template-columns:1fr 1fr}.bulk-summary>div:first-child{grid-column:auto}}

/* Fase 5: progreso e historial temporal */
.bulk-progress{background:#fff;border:1px solid var(--line);border-radius:15px;padding:20px}.progress-heading{display:flex;justify-content:space-between;gap:15px;font-size:13px}.progress-heading span{color:var(--purple);font-weight:700}.progress-track{height:10px;background:#eeeaf5;border-radius:10px;overflow:hidden;margin:13px 0 17px}.progress-track span{display:block;width:0;height:100%;background:linear-gradient(90deg,#7040e7,#9a6bf2);border-radius:inherit;transition:width .25s}.progress-counts{display:grid;grid-template-columns:repeat(6,1fr);gap:10px}.progress-counts div{background:#f8f7fb;border-radius:9px;padding:10px 12px}.progress-counts small{display:block;color:var(--muted);font-size:9px}.progress-counts strong{display:block;margin-top:3px;font-size:17px}.process-processing{color:var(--purple);font-weight:700}.process-published,.process-draft{color:var(--green);font-weight:700}.process-error{color:var(--red);font-weight:600}.process-duplicate,.process-already_created{color:#8b4acb;font-weight:600}.bulk-history{margin-bottom:28px}.bulk-history .bulk-table{min-width:760px}.bulk-history td:last-child{max-width:330px;white-space:normal}.bulk-process-actions{flex-wrap:wrap}
@media(max-width:900px){.progress-counts{grid-template-columns:repeat(3,1fr)}}
@media(max-width:600px){.progress-counts{grid-template-columns:repeat(2,1fr)}}

/* Fase 6: autenticación y módulos administrativos */
.login-page{min-height:100vh;background:linear-gradient(135deg,#201742,#6c3ce6);display:grid;place-items:center;padding:20px}.login-shell{width:100%;max-width:430px}.login-card{background:#fff;border-radius:20px;padding:34px;box-shadow:0 24px 60px #150d3555}.login-brand{padding:0 0 25px;color:var(--ink)}.login-brand small{color:var(--muted)}.login-card h1{margin:0 0 7px;font-size:28px}.login-card>p{margin:0 0 25px;color:var(--muted)}.login-card form{display:grid;gap:18px}.login-card .primary{margin-top:4px;justify-content:center}.user-menu{margin-left:auto;display:flex;align-items:center;gap:13px}.user-menu strong,.user-menu small{display:block;text-align:right}.user-menu small{font-size:10px;color:var(--muted)}.user-menu button{border:1px solid var(--line);background:#fff;border-radius:9px;padding:8px 10px;color:#a44655;font-size:10px;cursor:pointer}.module-toolbar{display:flex;gap:10px;margin-bottom:18px}.module-toolbar input,.module-toolbar select{min-width:180px;border:1px solid #dedbe8;border-radius:10px;background:#fff;padding:11px 13px}.module-toolbar input:first-child{flex:1}.products-table{min-width:1050px}.product-edit{width:105px;border:1px solid #dedbe8;border-radius:7px;padding:8px;background:#fff}.products-table td:nth-child(3){min-width:190px}.products-table .save-product{padding:8px 12px}.history-table{min-width:1050px}.history-table td:last-child{max-width:300px;white-space:normal}.settings-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.settings-grid article{background:#fff;border:1px solid var(--line);border-radius:15px;padding:23px}.settings-grid small{display:block;color:var(--muted);margin-bottom:8px}.settings-grid strong{font-size:16px;overflow-wrap:anywhere}
.product-pagination{display:flex;justify-content:center;align-items:center;gap:14px;margin:18px 0}.product-pagination span{font-size:12px;color:var(--muted)}.product-pagination button:disabled{opacity:.5;cursor:not-allowed}
.user-settings{margin-top:22px}.user-settings-actions{display:flex;justify-content:flex-end;margin-top:20px}.user-settings-actions .primary{width:auto}
@media(max-width:900px){.settings-grid{grid-template-columns:repeat(2,1fr)}.history-filters{flex-wrap:wrap}.history-filters input{flex:1}}
@media(max-width:760px){.user-menu>div{display:none}.module-toolbar{flex-direction:column}.module-toolbar input,.module-toolbar select{width:100%}.settings-grid{grid-template-columns:1fr}.login-card{padding:25px}.user-settings-actions .primary{width:100%}}

/* Identidad visual y centrado responsive del acceso */
.brand-logo{width:46px;height:46px;object-fit:contain;border-radius:50%;background:#fff;flex:0 0 46px}
.login-page{min-height:100vh;background:radial-gradient(circle at 50% 20%,#7040df 0,#4a289d 38%,#211742 100%);display:grid;grid-template-columns:minmax(0,1fr);place-items:center;padding:clamp(18px,4vw,48px)}
.login-page .login-shell{grid-column:auto;width:min(100%,460px);max-width:none;margin:0 auto}
.login-page .login-card{width:100%;background:#fff;border-radius:24px;padding:clamp(25px,4vw,40px);box-shadow:0 28px 70px #150d3566}
.login-page .login-brand{display:flex;flex-direction:column;align-items:center;text-align:center;padding:0 0 24px;color:var(--ink)}
.login-page .login-brand img{width:112px;height:112px;object-fit:contain;border-radius:50%;margin-bottom:10px}
.login-page .login-brand strong{display:block;font-size:13px;color:var(--muted);font-weight:600}
.login-heading{text-align:center;margin-bottom:26px}.login-heading h1{margin:0 0 7px;font-size:clamp(26px,5vw,32px)}.login-heading p{margin:0;color:var(--muted);font-size:14px}
.login-page .login-card form{display:grid;gap:18px}.login-page .login-card .field input{min-height:50px}.login-page .login-card .primary{min-height:50px;margin-top:4px;justify-content:center}
@media(max-width:480px){.login-page{padding:14px;align-items:center}.login-page .login-card{border-radius:18px;padding:24px 20px}.login-page .login-brand{padding-bottom:18px}.login-page .login-brand img{width:92px;height:92px}.login-heading{margin-bottom:22px}.login-heading p{font-size:13px}.login-page .login-card form{gap:16px}}

/* Marketplaces / Multi-API */
.marketplace-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-bottom:22px}.marketplace-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:20px;min-width:0;box-shadow:0 9px 25px #23164b08}.marketplace-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.marketplace-card h3{margin:0 0 5px;font-size:17px}.marketplace-card code{font-size:10px;color:var(--purple);background:#f1edff;padding:4px 7px;border-radius:6px}.marketplace-status{font-size:9px;font-weight:800;padding:6px 9px;border-radius:16px;white-space:nowrap}.marketplace-status.connected{background:#e3f8ef;color:var(--green)}.marketplace-status.error{background:#fde9ec;color:var(--red)}.marketplace-status.warning{background:#fff3dc;color:#94620d}.marketplace-status.pending{background:#f0eef4;color:var(--muted)}.marketplace-card dl{display:grid;gap:8px;margin:20px 0}.marketplace-card dl div{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid #f1eff5;padding-bottom:7px}.marketplace-card dt{color:var(--muted);font-size:10px}.marketplace-card dd{margin:0;text-align:right;font-size:10px;font-weight:700;overflow-wrap:anywhere}.marketplace-actions{display:flex;flex-wrap:wrap;gap:8px}.marketplace-actions button{flex:1;min-width:105px;padding:9px 10px;font-size:10px}.marketplace-form-card{margin:0 0 22px}.credential-note{background:#f0ecff;color:#57458b;border-radius:10px;padding:12px 14px;font-size:11px}.mapping-placeholder{margin-bottom:25px}.mapping-tags{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}.mapping-tags span{background:#f1edff;color:var(--purple);border-radius:18px;padding:7px 11px;font-size:10px;font-weight:700}.mapping-placeholder>p{color:var(--muted);font-size:11px}.marketplace-form-card .form-actions{margin-bottom:0;padding-bottom:0}
@media(max-width:1100px){.marketplace-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.marketplace-grid{grid-template-columns:1fr}.marketplace-actions{flex-direction:column}.marketplace-actions button{width:100%}.marketplace-form-card .form-actions{flex-direction:column-reverse}.marketplace-form-card .form-actions button{width:100%}}

/* Conector Falabella: categorías y atributos de solo lectura */
.falabella-browser{margin:0 0 22px}.falabella-toolbar{display:flex;gap:10px;margin:14px 0 18px}.falabella-toolbar input{flex:1;border:1px solid #dedbe8;border-radius:10px;padding:11px 13px}.falabella-data-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:18px}.falabella-data-grid>div{min-width:0}.falabella-data-grid h4{font-size:13px;margin:0 0 10px}.category-results,.attribute-results{height:430px;overflow:auto;border:1px solid var(--line);border-radius:12px;background:#faf9fc;padding:9px}.category-results>p,.attribute-results>p{color:var(--muted);font-size:11px;padding:10px}.category-result{display:grid;width:100%;text-align:left;border:0;border-bottom:1px solid #ece9f2;background:transparent;padding:11px;cursor:pointer;color:var(--ink)}.category-result:last-child{border-bottom:0}.category-result:hover,.category-result.selected{background:#eee8ff;border-radius:8px}.category-result strong{font-size:12px}.category-result span{color:var(--muted);font-size:9px;margin:4px 0;line-height:1.4}.category-result code{color:var(--purple);font-size:9px}.attribute-card{background:#fff;border:1px solid #e8e5ee;border-left:4px solid #b8b3c2;border-radius:9px;padding:11px;margin-bottom:8px}.attribute-card.required{border-left-color:#e6455b}.attribute-card>div{display:flex;justify-content:space-between;gap:10px}.attribute-card strong{font-size:11px}.attribute-card span{background:#f1eff5;color:var(--muted);font-size:8px;font-weight:800;border-radius:12px;padding:4px 7px}.attribute-card.required span{background:#fde9ec;color:var(--red)}.attribute-card p{font-size:9px;color:var(--muted);margin:6px 0}.attribute-card small{display:block;font-size:9px;line-height:1.45;color:#514b60}.falabella-operator-field select{min-height:42px}
@media(max-width:820px){.falabella-data-grid{grid-template-columns:1fr}.category-results,.attribute-results{height:330px}}
@media(max-width:560px){.falabella-toolbar{flex-direction:column}.falabella-toolbar button{width:100%}}

/* Paso 3: envío individual ProductCreate */
.falabella-product-panel{margin-top:22px;padding-top:22px;border-top:1px solid var(--line)}.falabella-product-panel .success-result{margin:15px 0}.selected-falabella-category{background:#f1edff;border-radius:10px;padding:13px}.selected-falabella-category>span{display:block;color:var(--muted);font-size:10px;margin-bottom:5px}.selected-falabella-category strong{color:var(--purple);font-size:12px}.falabella-product-attributes{margin-top:20px}.falabella-product-attributes>h4{font-size:13px;margin:0 0 12px}.falabella-product-panel .safe-note{margin-top:18px}.falabella-product-panel .form-actions{margin-bottom:0;padding-bottom:0}.falabella-product-panel .success-result dl{grid-template-columns:repeat(4,minmax(0,1fr))}.falabella-product-panel .success-result dd{overflow-wrap:anywhere}
@media(max-width:760px){.falabella-product-panel .success-result dl{grid-template-columns:1fr 1fr}.falabella-product-panel .form-actions{display:block}.falabella-product-panel .form-actions button{width:100%}}

/* Paso 4: estado e historial del feed */
.falabella-feed-result{display:grid}.falabella-feed-result.feed-rejected,.falabella-feed-result.feed-error{background:#fff7f8;border-color:#f3cbd2}.falabella-feed-result.feed-rejected .success-check,.falabella-feed-result.feed-error .success-check{background:#fde2e7;color:var(--red)}.falabella-feed-result.feed-processing .success-check{background:#fff0d3;color:#9a6500}.falabella-feed-errors{grid-column:1/-1;background:#fff;border:1px solid #efcbd1;border-radius:9px;padding:10px 13px}.falabella-feed-errors p{color:#9e3042;font-size:10px;line-height:1.5;margin:4px 0}.falabella-feed-actions{grid-column:1/-1;display:flex;justify-content:flex-end;gap:9px;margin-top:10px}.falabella-submission-history{margin-top:24px;border:1px solid var(--line);border-radius:14px;overflow:hidden}.falabella-feed-table{min-width:1000px}.falabella-feed-table td:nth-child(6){max-width:340px;white-space:normal}.falabella-feed-table button{padding:8px 11px;white-space:nowrap}
@media(max-width:600px){.falabella-feed-actions{flex-direction:column}.falabella-feed-actions button{width:100%}}
.falabella-monitor-stats{grid-template-columns:repeat(5,minmax(0,1fr))}.falabella-monitor-filters{flex-wrap:wrap}.falabella-monitor-filters .secondary.active{background:#eee8ff;border-color:#bca9f3;color:var(--purple)}.falabella-monitor-table{min-width:1320px}.falabella-monitor-table td:nth-child(7){max-width:330px;white-space:normal}.falabella-monitor-table td:first-child{font-weight:700}.falabella-monitor-table .secondary{padding:8px 11px;white-space:nowrap}.monitor-rejected,.monitor-error{background:#fff8f9}.monitor-accepted{background:#f7fdf9}
@media(max-width:1000px){.falabella-monitor-stats{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.falabella-monitor-stats{grid-template-columns:1fr}.falabella-monitor-filters{display:grid;grid-template-columns:1fr 1fr}.falabella-monitor-filters button{justify-content:center}.falabella-dashboard-stats{margin-top:18px}}
.bulk-channel-notice{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:18px;padding:15px 17px;border:1px solid #d8ccfa;border-radius:12px;background:#f2edff;color:#493778}.bulk-channel-notice strong{color:var(--ink)}.bulk-channel-notice span{flex:1;min-width:260px}.bulk-channel-notice a{display:inline-flex;padding:9px 13px;border-radius:9px;background:var(--purple);color:#fff;text-decoration:none;font-weight:700}.bulk-channel-notice.hidden{display:none}

/* Paso 5: imágenes Falabella */
.falabella-images-panel{margin:20px 0;padding:20px;background:#faf9fc;border:1px solid var(--line);border-radius:14px}.falabella-image-preview{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:15px 0}.falabella-image-preview>p{grid-column:1/-1;color:var(--muted);font-size:11px}.falabella-image-preview figure{margin:0;background:#fff;border:1px solid var(--line);border-radius:10px;padding:8px;min-width:0}.falabella-image-preview img{display:block;width:100%;aspect-ratio:1;object-fit:cover;border-radius:7px}.falabella-image-preview figcaption{font-size:10px;font-weight:800;margin-top:7px}.falabella-image-preview small{display:block;color:var(--muted);font-size:8px;margin-top:3px}.falabella-image-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:14px 0}.falabella-image-meta div{background:#fff;border:1px solid var(--line);border-radius:9px;padding:10px}.falabella-image-meta dt{font-size:8px;color:var(--muted)}.falabella-image-meta dd{font-size:10px;font-weight:700;margin:4px 0 0;overflow-wrap:anywhere}
@media(max-width:760px){.falabella-image-preview{grid-template-columns:repeat(2,minmax(0,1fr))}.falabella-image-meta{grid-template-columns:1fr}}
.falabella-channel-panel{margin:20px 0;padding:20px;background:#faf9fc;border:1px solid var(--line);border-radius:14px}.channel-columns{display:grid;grid-template-columns:minmax(190px,.65fr) minmax(0,2fr);gap:16px;margin:16px 0}.channel-columns article{background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px}.channel-columns h4{margin:0 0 14px}.channel-columns dl{display:grid;gap:10px}.channel-columns dl div,.channel-status span{display:flex;justify-content:space-between;gap:12px;padding:10px;background:#faf9fc;border-radius:8px}.channel-columns dt,.channel-status{color:var(--muted)}.channel-columns dd{margin:0;font-weight:800}.channel-status{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px;font-size:10px}.channel-buttons{gap:8px;flex-wrap:wrap}.channel-buttons button{flex:1 1 180px}
@media(max-width:760px){.channel-columns{grid-template-columns:1fr}.channel-status{grid-template-columns:1fr}.falabella-channel-panel{padding:14px}}
.channel-selector{margin-bottom:18px}.publication-channels{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.publication-channels input{position:absolute;opacity:0}.publication-channels span{display:block;padding:14px;text-align:center;border:1px solid var(--line);border-radius:10px;font-weight:800;cursor:pointer;background:#fff}.publication-channels input:checked+span{border-color:var(--purple);background:#f0eaff;color:var(--purple)}.channel-results{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:0 0 18px}.channel-results article{padding:15px;background:#fff;border:1px solid var(--line);border-radius:12px}.channel-results h4{margin:0 0 7px}.channel-results p{margin:0;overflow-wrap:anywhere}.channel-ok{color:#15945e}.channel-pending{color:#a66b00}.channel-error{color:#c7394f}
@media(max-width:600px){.publication-channels,.channel-results{grid-template-columns:1fr}.publication-channels span{text-align:left}}
