@import "https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@300;400;500;600;700;800&family=JetBrains+Mono:wght@400;500;700&display=swap";:root{--font-heading:"Plus Jakarta Sans", sans-serif;--font-body:"Plus Jakarta Sans", sans-serif;--font-mono:"JetBrains Mono", monospace;--bg-app:#f8fafc;--bg-card:#fff;--bg-sidebar:#fff;--text-primary:#0f172a;--text-secondary:#475569;--text-muted:#64748b;--border-color:#e2e8f0cc;--primary:217 78% 48%;--primary-hover:217 78% 40%;--accent:215 90% 60%;--success:142 84% 40%;--success-bg:#dcfce7b3;--warning:38 96% 50%;--warning-bg:#fef3c7b3;--danger:350 90% 58%;--danger-bg:#fee2e2b3;--shadow-sm:0 1px 3px #0000000d;--shadow-md:0 8px 30px #00000005;--shadow-lg:0 20px 40px #0f172a0a;--glass-border:#e2e8f0cc;--glass-shadow:0 8px 32px 0 #0f172a05;--glow-primary:0 0 15px #1b64da33;--glow-accent:0 0 15px #3d8af533;--sidebar-width:280px}[data-theme=dark]{--bg-app:#070a13;--bg-card:#0f1626;--bg-sidebar:#070a13;--text-primary:#f8fafc;--text-secondary:#94a3b8;--text-muted:#64748b;--border-color:#ffffff0f;--primary:217 88% 56%;--primary-hover:217 88% 64%;--accent:215 95% 62%;--success:142 86% 55%;--success-bg:#064e3b4d;--warning:38 96% 55%;--warning-bg:#7835044d;--danger:350 90% 64%;--danger-bg:#7f1d1d59;--shadow-sm:0 1px 3px #0000004d;--shadow-md:0 10px 40px #0006;--shadow-lg:0 25px 50px -12px #00000080;--glass-border:#ffffff0d;--glass-shadow:0 8px 32px 0 #0000004d;--glow-primary:0 0 20px #2c78f259;--glow-accent:0 0 20px #428ffa4d}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-body);background-color:var(--bg-app);color:var(--text-primary);-webkit-font-smoothing:antialiased;min-height:100vh;line-height:1.6;transition:background-color .4s cubic-bezier(.4,0,.2,1);position:relative;overflow-x:hidden}body:before,body:after{content:"";z-index:-2;filter:blur(120px);pointer-events:none;opacity:.15;border-radius:50%;width:45vw;height:45vw;transition:opacity .5s;position:fixed}body:before{background:radial-gradient(circle, hsl(var(--primary)) 0%, transparent 70%);top:-10%;right:-5%}body:after{background:radial-gradient(circle, hsl(var(--accent)) 0%, transparent 70%);bottom:-15%;left:-5%}[data-theme=dark] body:before,[data-theme=dark] body:after{opacity:.22}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);letter-spacing:-.02em;color:var(--text-primary);font-weight:600}::-webkit-scrollbar{width:7px;height:7px}::-webkit-scrollbar-track{background:#00000005}::-webkit-scrollbar-thumb{background:#94a3b84d;border-radius:99px}::-webkit-scrollbar-thumb:hover{background:#6366f180}.app-container{min-height:100vh;display:flex}.sidebar{width:var(--sidebar-width);background:var(--bg-sidebar);-webkit-backdrop-filter:blur(20px);border-right:1px solid var(--border-color);z-index:20;flex-direction:column;height:100vh;padding:2.25rem 1.75rem;transition:all .4s;display:flex;position:fixed;top:0;left:0}.sidebar.sidebar-hidden{display:none!important}.logo-container{align-items:center;gap:.85rem;margin-bottom:3.5rem;display:flex}.logo-sidebar-img{transition:filter .3s}[data-theme=dark] .logo-sidebar-img{filter:drop-shadow(0 0 5px #ffffff26)brightness(1.1)}.logo-icon{background:linear-gradient(135deg, hsl(var(--primary)), hsl(var(--accent)));color:#fff;width:44px;height:44px;box-shadow:var(--glow-primary);border-radius:14px;justify-content:center;align-items:center;animation:4s ease-in-out infinite floatIcon;display:flex}.logo-text{font-family:var(--font-heading);letter-spacing:-.03em;color:var(--text-primary);font-size:1.35rem;font-weight:800}.logo-text span{color:#1b64da}.nav-links{flex-direction:column;flex-grow:1;gap:.65rem;display:flex}.nav-item{color:var(--text-secondary);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:12px;align-items:center;gap:1rem;width:100%;padding:.85rem 1.15rem;font-size:.85rem;font-weight:500;text-decoration:none;transition:all .25s cubic-bezier(.4,0,.2,1);display:flex}.nav-item:hover{color:hsl(var(--primary));background:#1b64da0d;border-color:#1b64da1a;transform:translate(3px)}.nav-item.active{color:#fff;background:linear-gradient(135deg, hsl(var(--primary)), hsl(var(--primary) / .85));box-shadow:var(--glow-primary);border-color:#0000}.nav-item.active:hover{color:#fff;transform:none}.sidebar-footer{border-top:1px solid var(--border-color);margin-top:auto;padding-top:1.75rem}.main-content{margin-left:var(--sidebar-width);z-index:1;flex-direction:column;flex-grow:1;gap:2.25rem;min-width:0;padding:2.5rem 3.5rem;display:flex}.main-content.hide-sidebar{width:100%!important;max-width:100%!important;margin-left:0!important;padding:1.5rem 2rem!important}.mobile-menu-toggle{border:1px solid var(--border-color);background:var(--bg-card);width:40px;height:40px;color:var(--text-primary);cursor:pointer;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:none}.sidebar-backdrop{display:none}@media (width<=991px){.sidebar{left:calc(-1 * var(--sidebar-width));box-shadow:none}.sidebar.sidebar-open{left:0;box-shadow:0 25px 50px -12px #0006}.main-content{margin-left:0;padding:1.25rem 1.25rem 2rem}.mobile-menu-toggle{display:inline-flex}.sidebar-backdrop{z-index:15;background:#0f172a73;display:block;position:fixed;inset:0}}@media (width<=640px){.top-header{flex-wrap:wrap;gap:1rem}.user-info{display:none}}.main-content-bulk{gap:1rem;padding:1.25rem 1.25rem 1.5rem}.main-content-bulk .top-header{padding-bottom:.8rem}.main-content-bulk .bulk-upload-page{flex:1;min-width:0;display:flex}.top-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding-bottom:1.5rem;display:flex}.header-title-section h1{letter-spacing:-.03em;background:linear-gradient(135deg, var(--text-primary) 30%, var(--text-secondary));-webkit-text-fill-color:transparent;-webkit-background-clip:text;font-size:1.5rem;font-weight:700}.header-title-section p{color:var(--text-secondary);margin-top:.25rem;font-size:.825rem;font-weight:400}.header-actions{align-items:center;gap:1.5rem;display:flex}.wallet-header-button{border:1px solid var(--border-color);background:var(--bg-card,#fff);color:var(--text-primary);cursor:pointer;border-radius:12px;align-items:center;gap:.5rem;padding:.35rem .85rem .35rem .45rem;font-weight:750;line-height:1.1;display:inline-flex}.wallet-header-button:hover{border-color:#cbd5e1}.wallet-header-button span{font-size:1.05rem}.wallet-header-button small{color:var(--text-secondary);font-size:.7rem;font-weight:600}.bulk-purpose-panel{background:linear-gradient(135deg,#2563eb0f,#2563eb05);border:1px solid #2563eb38;border-radius:14px;flex-direction:column;gap:.85rem;margin-bottom:1.25rem;padding:1rem 1.15rem;display:flex}.bulk-purpose-head{gap:.8rem;display:flex}.bulk-purpose-icon{color:#1d4ed8;background:#2563eb24;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;display:flex}.bulk-purpose-head h4{color:#1e293b;margin-bottom:.25rem;font-size:.95rem;font-weight:800}.bulk-purpose-head p{color:var(--text-secondary);font-size:.8rem;line-height:1.5}.bulk-purpose-cols{grid-template-columns:1fr 1fr;gap:1rem 1.5rem;display:grid}@media (width<=900px){.bulk-purpose-cols{grid-template-columns:1fr}}.bulk-purpose-label{text-transform:uppercase;letter-spacing:.04em;color:#1d4ed8;margin-bottom:.4rem;font-size:.7rem;font-weight:800;display:block}.bulk-purpose-cols ul,.bulk-purpose-cols ol{flex-direction:column;gap:.32rem;margin:0;padding-left:1.15rem;display:flex}.bulk-purpose-cols li{color:var(--text-secondary);font-size:.78rem;line-height:1.45}.bulk-purpose-cols strong{color:var(--text-primary)}.bulk-purpose-foot{color:var(--text-secondary);border-top:1px dashed #2563eb40;padding-top:.7rem;font-size:.76rem;line-height:1.45}.bulk-purpose-foot strong{color:#1d4ed8}.mapper{flex-direction:column;gap:1rem;width:100%;min-width:0;display:flex}.tpl-choice{background:#2563eb0a;border:1px solid #2563eb33;border-radius:14px;flex-direction:column;gap:.65rem;padding:.9rem 1rem;display:flex}.tpl-choice-title{color:#1d4ed8;font-size:.82rem;font-weight:800}.tpl-choice-opt{gap:.6rem;display:flex}.tpl-choice-opt-icon{color:#1d4ed8;background:#2563eb1f;border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;display:flex}.tpl-choice-opt-icon.violet{color:#7c3aed;background:#7c3aed1f}.tpl-choice-opt-body{flex-direction:column;gap:.3rem;min-width:0;display:flex}.tpl-choice-opt-body b{color:var(--text-primary);font-size:.78rem}.tpl-choice-opt-body>span{color:var(--text-secondary);font-size:.7rem;line-height:1.4}.tpl-choice-btn{border-radius:9px;align-self:flex-start;align-items:center;gap:.3rem;margin-top:.15rem;padding:.4rem .7rem;font-size:.75rem;display:flex}.tpl-choice-sep{text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);align-items:center;gap:.6rem;font-size:.66rem;font-weight:700;display:flex}.tpl-choice-sep:before,.tpl-choice-sep:after{content:"";background:#2563eb2e;flex:1;height:1px}.mapper-kicker{letter-spacing:.14em;text-transform:uppercase;color:#7c3aed;align-items:center;gap:.35rem;font-size:.62rem;font-weight:800;display:inline-flex}.mapper-hero{background:radial-gradient(120% 140% at 0 0,#7c3aed29,#0000 55%),radial-gradient(120% 160% at 100% 0,#2563eb24,#0000 55%),linear-gradient(#fff,#f6f5ff);border:1px solid #7c3aed38;border-radius:16px;gap:1rem;padding:1.15rem 1.25rem;display:flex;position:relative;overflow:hidden;box-shadow:0 10px 30px -18px #4c1d9566}.mapper-hero.compact{padding:.95rem 1.1rem}.mapper-hero-grid{pointer-events:none;background-image:linear-gradient(#7c3aed14 1px,#0000 1px),linear-gradient(90deg,#7c3aed14 1px,#0000 1px);background-size:26px 26px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(120% 100% at 100% 0,#000 0%,#0000 70%);mask-image:radial-gradient(120% 100% at 100% 0,#000 0%,#0000 70%)}.mapper-hero-icon{color:#fff;background:linear-gradient(135deg,#7c3aed,#4f46e5);border-radius:13px;flex-shrink:0;justify-content:center;align-items:center;width:42px;height:42px;display:flex;position:relative;box-shadow:0 0 0 4px #7c3aed24,0 8px 20px -6px #4f46e599}.mapper-hero.compact .mapper-hero-icon{border-radius:11px;width:36px;height:36px}.mapper-hero-text{flex-direction:column;gap:.28rem;display:flex;position:relative}.mapper-hero-text h4{color:#1e1b4b;letter-spacing:-.01em;font-size:1.02rem;font-weight:800}.mapper-hero.compact .mapper-hero-text h4{font-size:.95rem}.mapper-hero-text p{color:var(--text-secondary);font-size:.8rem;line-height:1.55}.mapper-hero-text b{color:#4f46e5}.mapper-steps{grid-template-columns:repeat(4,1fr);gap:.6rem;margin:0;padding:0;list-style:none;display:grid}@media (width<=760px){.mapper-steps{grid-template-columns:1fr}}.mapper-steps li{border:1px solid var(--border-color);background:var(--bg-card,#fff);border-radius:12px;flex-direction:column;gap:.4rem;padding:.8rem .85rem;display:flex;position:relative}.mapper-step-num{color:#4f46e5;background:#4f46e51f;border-radius:7px;justify-content:center;align-items:center;width:22px;height:22px;font-size:.72rem;font-weight:800;display:flex}.mapper-step-body{flex-direction:column;gap:.2rem;display:flex}.mapper-step-icon{color:#7c3aed}.mapper-step-body b{color:var(--text-primary);font-size:.8rem}.mapper-step-body span{color:var(--text-secondary);font-size:.72rem;line-height:1.4}.mapper-dropzone{background:radial-gradient(100% 100% at 50% 0%, #7c3aed0f, transparent 70%), var(--bg-card,#fff);border-color:#7c3aed66;transition:border-color .2s,background .2s,box-shadow .2s}.mapper-dropzone .dropzone-icon{color:#7c3aed}.mapper-dropzone.drag,.mapper-dropzone:hover{background:radial-gradient(100% 100% at 50% 0%, #7c3aed1f, transparent 70%), var(--bg-card,#fff);border-color:#7c3aed;box-shadow:0 0 0 4px #7c3aed1f}.mapper-fineprint{color:var(--text-muted);align-items:center;gap:.4rem;font-size:.72rem;display:flex}.mapper-fineprint svg{color:#16a34a;flex-shrink:0}.mapper-alert{border-radius:10px;align-items:flex-start;gap:.5rem;padding:.6rem .8rem;font-size:.78rem;line-height:1.4;display:flex}.mapper-alert.error{background:var(--danger-bg);color:hsl(var(--danger))}.mapper-alert.warn{background:var(--warning-bg);color:hsl(var(--warning))}.mapper-alert.info{color:#1d4ed8;background:#2563eb14}.mapper-file-chip{color:var(--text-primary);background:var(--bg-subtle,#f1f5f9);border:1px solid var(--border-color);border-radius:10px;align-items:center;gap:.5rem;padding:.45rem .7rem;font-size:.8rem;display:flex}.mapper-file-chip span{color:var(--text-secondary);font-size:.72rem}.mapper-file-chip button{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;margin-left:auto;display:flex}.mapper-counts{color:var(--text-secondary);background:#2563eb0d;border-radius:10px;flex-wrap:wrap;gap:.4rem 1rem;padding:.55rem .8rem;font-size:.74rem;display:flex}.mapper-counts b{color:var(--text-primary);font-size:.82rem}.mapper-section{flex-direction:column;gap:.5rem;display:flex}.mapper-rows{flex-direction:column;gap:.4rem;display:flex}.mapper-row{grid-template-columns:minmax(0,1fr) minmax(180px,260px);align-items:center;gap:.75rem;display:grid}@media (width<=640px){.mapper-row{grid-template-columns:1fr;gap:.25rem}}.mapper-row-label{color:var(--text-primary);flex-wrap:wrap;align-items:center;gap:.35rem;min-width:0;font-size:.8rem;display:flex}.mapper-row-label .req{color:hsl(var(--danger))}.mapper-row .form-control{background:var(--bg-card,#fff);appearance:auto;text-overflow:ellipsis;border-radius:8px;width:100%;min-width:0;height:auto;padding:.5rem .7rem;font-size:.8rem;font-weight:600;line-height:1.35}.mapper-enum-chip{letter-spacing:.02em;text-transform:uppercase;color:#1d4ed8;background:#2563eb1a;border-radius:5px;padding:.1rem .35rem;font-size:.64rem;font-weight:700}.mapper-enum-chip.alt{color:#b45309;background:#f59e0b24}.mapper-sample,.mapper-hint{color:var(--text-muted);font-size:.7rem}.mapper-hint{line-height:1.4}.mapper-empty{color:var(--text-secondary);font-size:.78rem}.mapper-values-block{flex-direction:column;gap:.4rem;margin-top:.5rem;display:flex}.mapper-values-title{color:var(--text-primary);font-size:.8rem;font-weight:700}.mapper-values-title span{color:var(--text-secondary);font-weight:500}.mapper-footer{border-top:1px solid var(--border-color);flex-wrap:wrap;justify-content:flex-end;gap:.6rem;padding-top:.9rem;display:flex}.mapper-footer .btn{align-items:center;gap:.35rem;display:flex}.mapper{font-size:.95rem}.mapper .mapper-hero-text p{font-size:.95rem;line-height:1.6}.mapper .mapper-hero-text h4{font-size:1.15rem}.mapper .mapper-hero.compact .mapper-hero-text h4{font-size:1.08rem}.mapper .mapper-step-body b{font-size:.95rem}.mapper .mapper-step-body span{font-size:.9rem;line-height:1.5}.mapper .mapper-row-label{font-size:.95rem}.mapper .mapper-row .form-control{min-height:44px;padding:.6rem .75rem;font-size:.95rem}.mapper .mapper-counts{font-size:.9rem}.mapper .mapper-counts b{font-size:1rem}.mapper .mapper-sample,.mapper .mapper-hint{font-size:.86rem}.mapper .mapper-empty{font-size:.92rem}.mapper .mapper-alert{font-size:.92rem;line-height:1.5}.mapper .mapper-file-chip span{font-size:.86rem}.mapper .mapper-values-title{font-size:.95rem}.mapper .bulk-purpose-label{font-size:.86rem}.mapper-btn{min-height:48px;padding:.75rem 1.3rem;font-size:.95rem}.mapper-progress{grid-template-columns:repeat(4,minmax(0,1fr));gap:.5rem;margin:0;padding:0;list-style:none;display:grid}@media (width<=640px){.mapper-progress{grid-template-columns:repeat(2,minmax(0,1fr))}}.mapper-progress-step{border:1px solid var(--border-color);background:var(--bg-card,#fff);min-height:48px;color:var(--text-muted);border-radius:12px;align-items:center;gap:.55rem;padding:.5rem .7rem;font-size:.9rem;font-weight:700;display:flex}.mapper-progress-step.actual{color:#4338ca;background:#4f46e514;border-color:#4f46e5}.mapper-progress-step.listo{color:#15803d;border-color:#16a34a59}.mapper-progress-num{width:28px;height:28px;color:inherit;background:#64748b29;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.88rem;font-weight:800;display:flex}.mapper-progress-step.actual .mapper-progress-num{background:#4f46e52e}.mapper-progress-step.listo .mapper-progress-num{background:#16a34a29}.mapper-progress-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.mapper-sheet-list{flex-wrap:wrap;gap:.5rem;display:flex}.mapper-sheet{border:1px solid var(--border-color);background:var(--bg-card,#fff);cursor:pointer;text-align:left;border-radius:12px;flex-direction:column;align-items:flex-start;gap:.1rem;min-height:48px;padding:.5rem .9rem;display:flex}.mapper-sheet b{color:var(--text-primary);font-size:.95rem}.mapper-sheet span{color:var(--text-secondary);font-size:.82rem}.mapper-sheet.sel{background:#4f46e514;border-color:#4f46e5}.mapper-sheet.sel b{color:#4338ca}.mapper-preview-wrap{border:1px solid var(--border-color);border-radius:12px;overflow-x:auto}.mapper-revision-encabezado{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.mapper-revision-expandida{z-index:1200;background:var(--bg-app);margin:0;padding:1rem 1.25rem 1.25rem;position:fixed;inset:0;overflow:auto}.mapper-revision-expandida .mapper-preview-wrap{max-height:calc(100vh - 11rem);overflow:auto}.mapper-revision-expandida .mapper-preview thead th{z-index:1;background:var(--bg-card);position:sticky;top:0}.mapper-revision-paginado{color:var(--text-secondary);flex-wrap:wrap;justify-content:center;align-items:center;gap:1rem;font-size:.85rem;display:flex}.mapper-preview{border-collapse:collapse;width:100%;font-size:.88rem}.mapper-preview tr{cursor:pointer}.mapper-preview tr:hover{background:#4f46e50d}.mapper-preview th,.mapper-preview td{border-bottom:1px solid var(--border-color);text-align:left;white-space:nowrap;text-overflow:ellipsis;max-width:220px;color:var(--text-secondary);padding:.6rem .7rem;overflow:hidden}.mapper-preview th{background:var(--bg-app,#f8fafc);color:var(--text-muted);font-weight:700;position:sticky;left:0}.mapper-preview tr.titulos{background:#4f46e51a}.mapper-preview tr.titulos td{color:var(--text-primary);font-weight:700}.mapper-preview-tag{color:#fff;text-transform:uppercase;background:#4f46e5;border-radius:5px;margin-left:.4rem;padding:.05rem .35rem;font-size:.66rem;font-weight:800;display:inline-block}.mapper-row-control{flex-direction:column;gap:.35rem;min-width:0;display:flex}.mapper-row.falta .mapper-row-label>span:first-child{color:hsl(var(--danger));font-weight:700}.mapper-default-input{width:100%}.mapper-guide-box{background:linear-gradient(135deg,#2563eb14 0%,#4f46e50a 100%);border:1.5px solid #2563eb40;border-radius:12px;flex-direction:column;gap:.6rem;margin-bottom:1rem;padding:1.1rem 1.3rem;display:flex}.mapper-guide-header{color:#1d4ed8;align-items:center;gap:.5rem;display:flex}.mapper-guide-header h4{color:#1e3a8a;margin:0;font-size:1.08rem;font-weight:700}.mapper-guide-box p{color:var(--text-secondary);margin:0;font-size:.95rem;line-height:1.55}.mapper-guide-columns-legend{background:#ffffffd9;border:1px dashed #2563eb59;border-radius:8px;justify-content:space-between;align-items:center;gap:1rem;margin-top:.25rem;padding:.65rem 1rem;font-size:.92rem;display:flex}.legend-item.repuestop{color:#1d4ed8;align-items:center;gap:.4rem;font-weight:600;display:flex}.legend-arrow{color:#334155;white-space:nowrap;background:#e2e8f0;border-radius:6px;padding:.25rem .75rem;font-size:.88rem;font-weight:700}.legend-item.excel{color:#047857;align-items:center;gap:.4rem;font-weight:600;display:flex}.mapper-section-group{flex-direction:column;gap:.75rem;margin-bottom:1.5rem;display:flex}.mapper-section-header{border-bottom:2px solid #e2e8f0e6;flex-direction:column;gap:.25rem;padding-bottom:.45rem;display:flex}.mapper-section-title-wrap{align-items:center;gap:.75rem;display:flex}.mapper-section-title-wrap h5{color:var(--text-primary);margin:0;font-size:1.08rem;font-weight:700}.mapper-section-badge{color:#475569;background:#f1f5f9;border-radius:9999px;padding:.2rem .65rem;font-size:.82rem;font-weight:700}.mapper-section-desc{color:var(--text-muted);margin:0;font-size:.88rem}.mapper-card-row{background:var(--bg-card,#fff);border:1.5px solid #e2e8f0;border-radius:12px;grid-template-columns:minmax(260px,1fr) auto minmax(280px,1.15fr);align-items:center;gap:1.25rem;padding:1.1rem 1.35rem;transition:border-color .15s,box-shadow .15s;display:grid;box-shadow:0 1px 3px #00000008}.mapper-card-row:hover{border-color:#93c5fd;box-shadow:0 4px 12px #2563eb12}.mapper-card-row.falta{background:snow;border-color:#fca5a5}.mapper-card-row.listo{border-color:#cbd5e1}@media (width<=860px){.mapper-card-row{grid-template-columns:1fr;gap:.75rem}.mapper-card-connector{display:none}}.mapper-card-dest{flex-direction:column;gap:.4rem;min-width:0;display:flex}.mapper-card-header-line{flex-wrap:wrap;align-items:center;gap:.45rem;display:flex}.mapper-card-title{color:var(--text-primary);font-size:1.02rem;font-weight:700}.mapper-pill{text-transform:uppercase;letter-spacing:.02em;border-radius:6px;padding:.15rem .5rem;font-size:.72rem;font-weight:700}.mapper-pill-req{color:#b91c1c;background:#fee2e2}.mapper-pill-opt{color:#64748b;background:#f1f5f9}.mapper-pill-done{color:#15803d;background:#dcfce7;align-items:center;gap:.25rem;display:inline-flex}.mapper-card-desc{color:#475569;margin:0;font-size:.88rem;line-height:1.45}.mapper-card-hint{color:#64748b;background:#f8fafc;border-left:3px solid #3b82f6;border-radius:0 6px 6px 0;margin-top:.15rem;padding:.35rem .65rem;font-size:.82rem}.mapper-hint-tag{color:#1e40af;font-style:italic}.mapper-hint-label{color:#475569;font-weight:600}.mapper-hint-values{color:#1e40af;font-family:monospace;font-weight:600}.mapper-card-connector{justify-content:center;align-items:center;padding:0 .25rem;display:flex}.mapper-connector-badge{letter-spacing:.02em;color:#475569;white-space:nowrap;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:6px;padding:.25rem .65rem;font-size:.76rem;font-weight:600}.mapper-card-origin{flex-direction:column;gap:.45rem;min-width:0;display:flex}.mapper-origin-label{color:#334155;margin-bottom:.1rem;font-size:.86rem;font-weight:600}.mapper-select-main{background:#fff;border:1.5px solid #cbd5e1;border-radius:8px;width:100%;padding:.6rem .8rem;font-size:.95rem;font-weight:600}.mapper-select-main:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f626}.mapper-preview-pill{color:#166534;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;align-items:flex-start;gap:.4rem;padding:.45rem .65rem;font-size:.86rem;line-height:1.4;display:flex}.mapper-preview-icon{flex-shrink:0}.mapper-preview-label{color:#15803d;flex-shrink:0;font-weight:600}.mapper-preview-text{color:#14532d;word-break:break-word}.mapper-preview-empty{color:#86efac}.mapper-auto-info{color:#166534;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;align-items:center;gap:.4rem;padding:.5rem .75rem;font-size:.86rem;line-height:1.4;display:flex}.mapper-auto-desc{font-weight:600}.mapper-default-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;flex-direction:column;gap:.35rem;padding:.6rem .75rem;display:flex}.mapper-default-card.default-urgente{background:#fff7ed;border-color:#fed7aa}.mapper-default-title{color:#64748b;align-items:center;gap:.35rem;font-size:.82rem;display:flex}.mapper-default-title strong{color:#c2410c}.mapper-switch{min-height:48px;color:var(--text-secondary);cursor:pointer;background:#4f46e50f;border:1px solid #4f46e54d;border-radius:12px;align-items:flex-start;gap:.6rem;padding:.7rem .9rem;font-size:.92rem;line-height:1.5;display:flex}.mapper-switch input{cursor:pointer;flex-shrink:0;width:20px;height:20px;margin-top:.15rem}.mapper-switch b{color:var(--text-primary)}.mapper-arreglos{flex-direction:column;gap:.4rem;margin:0;padding:0;list-style:none;display:flex}.mapper-arreglos li{background:#16a34a12;border-radius:10px;flex-wrap:wrap;align-items:center;gap:.45rem;padding:.5rem .7rem;font-size:.92rem;display:flex}.mapper-arreglos svg{color:#15803d;flex-shrink:0}.mapper-arreglo-col{color:var(--text-primary);font-weight:700}.mapper-arreglo-ejemplos{color:var(--text-secondary)}.mapper-detalles-archivo,.mapper-detalle-arreglos,.mapper-compat{border:1px solid var(--border-color);background:var(--bg-card);border-radius:12px;padding:.75rem 1rem}.mapper-detalles-archivo>summary,.mapper-detalle-arreglos>summary,.mapper-compat>summary{cursor:pointer;color:var(--text-primary);list-style:revert;font-weight:700}.mapper-detalles-archivo[open]>summary,.mapper-compat[open]>summary{margin-bottom:.75rem}.mapper-detalles-archivo>.mapper-section{margin-top:1rem}.mapper-compat-grupo>td{background:var(--bg-app);color:var(--text-secondary);white-space:normal;max-width:none;padding-top:.5rem;padding-bottom:.5rem;font-size:.84rem}.mapper-compat-grupo{cursor:default}.mapper-compat-grupo:hover>td{background:var(--bg-app)}.mapper-compat-falta{color:#b45309;font-weight:600}.mapper-detalle-arreglos{margin-top:.5rem}.mapper-arreglo-antes{color:var(--text-muted);text-decoration:line-through}.mapper-arreglo-despues{color:#15803d;font-weight:700}.mapper-arreglo-filas{color:var(--text-muted);margin-left:auto;font-size:.84rem}.fotos-desde-excel{color:#15803d;background:#16a34a17;border-radius:10px;align-items:flex-start;gap:.45rem;margin:0 0 .4rem;padding:.55rem .7rem;font-size:.78rem;line-height:1.45;display:flex}.fotos-desde-excel svg{flex-shrink:0;margin-top:.1rem}.fotos-faltantes{background:var(--warning-bg);color:#92400e;border-radius:12px;align-items:flex-start;gap:.6rem;padding:.8rem .9rem;display:flex}.fotos-faltantes svg{flex-shrink:0;margin-top:.1rem}.fotos-faltantes b{color:#78350f}.fotos-faltantes p{margin-top:.35rem;font-size:.88rem;line-height:1.5}.carga-resumen-overlay{z-index:1200;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0f172a8c;justify-content:center;align-items:center;padding:1.25rem;display:flex;position:fixed;inset:0}.carga-resumen{background:var(--bg-card,#fff);border-radius:18px;flex-direction:column;align-items:flex-start;gap:.75rem;width:min(560px,100%);max-height:90vh;padding:1.5rem;display:flex;overflow-y:auto;box-shadow:0 24px 60px #0f172a40}.carga-resumen-icono{border-radius:50%;justify-content:center;align-items:center;width:52px;height:52px;display:flex}.carga-resumen-icono.ok{color:#15803d;background:#16a34a1f}.carga-resumen-icono.con-errores{color:#b45309;background:var(--warning-bg)}.carga-resumen h4{color:var(--text-primary);font-size:1.25rem;font-weight:800;line-height:1.3}.carga-resumen-detalle{color:var(--text-secondary);font-size:.98rem;line-height:1.55}.carga-resumen-errores{background:var(--warning-bg);color:#92400e;border-radius:12px;align-items:flex-start;gap:.5rem;width:100%;padding:.75rem .9rem;font-size:.94rem;line-height:1.5;display:flex}.carga-resumen-errores svg{flex-shrink:0;margin-top:.15rem}.carga-resumen-fotos{background:#2563eb0d;border:1px solid #2563eb40;border-radius:14px;flex-direction:column;gap:.6rem;width:100%;padding:1rem;display:flex}.carga-resumen-paso{letter-spacing:.12em;text-transform:uppercase;color:#1d4ed8;font-size:.72rem;font-weight:800}.carga-resumen-fotos p{color:var(--text-secondary);font-size:.96rem;line-height:1.55}.carga-resumen-fotos .btn{align-self:flex-start;min-height:48px;font-size:.95rem}.carga-resumen-ejemplo{background:#2563eb12;border-left:3px solid #2563eb66;border-radius:0 8px 8px 0;padding:.6rem .75rem;font-size:.92rem}.carga-resumen-acciones{flex-wrap:wrap;gap:.6rem;display:flex}.carga-resumen-cerrar{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;align-self:center;margin-top:.25rem;padding:.5rem .75rem;font-size:.92rem;font-weight:700;text-decoration:underline}.mapper-default-input.con-error{border-color:hsl(var(--danger));background:var(--danger-bg)}.mapper-campo-error{color:hsl(var(--danger));margin-top:.25rem;font-size:.84rem;line-height:1.35;display:block}.mapper-btn-sugerencias{align-self:flex-start}.mapper-row.resuelta .mapper-row-label>span:not(.mapper-sample){color:#15803d;font-weight:700}.mapper-row-check{color:#15803d;flex-shrink:0}.mapper-counts .ok b{color:#15803d}.mapper-counts .mal b{color:hsl(var(--danger))}.mapper-counts .ojo b{color:#b45309}.mapper-ficha{border:1px solid var(--border-color);background:var(--bg-card,#fff);border-radius:14px;gap:1rem;padding:1rem;display:flex}@media (width<=640px){.mapper-ficha{flex-direction:column}}.mapper-ficha-foto{border:1px dashed var(--border-color);background:var(--bg-app,#f8fafc);width:128px;height:128px;color:var(--text-muted);text-align:center;border-radius:12px;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;gap:.35rem;display:flex}.mapper-ficha-foto span{padding:0 .4rem;font-size:.72rem;line-height:1.3}.mapper-ficha-body{flex-direction:column;gap:.45rem;min-width:0;display:flex}.mapper-ficha-body h5{color:var(--text-primary);font-size:1.05rem;font-weight:800}.mapper-ficha-chips{flex-wrap:wrap;gap:.35rem;display:flex}.mapper-ficha-chip{color:#1d4ed8;background:#2563eb1a;border-radius:6px;padding:.15rem .5rem;font-size:.78rem;font-weight:700}.mapper-ficha-chip.alt{color:var(--text-secondary);background:#64748b24}.mapper-ficha-chip.cond{color:#15803d;background:#16a34a1f}.mapper-ficha-precio{color:var(--text-primary);font-size:1.25rem;font-weight:800}.mapper-ficha-compat{color:#1d4ed8;font-size:.9rem;font-weight:600}.mapper-ficha-meta{color:var(--text-muted);font-size:.86rem}.mapper-ficha-desc{color:var(--text-secondary);white-space:pre-line;max-height:6.5em;font-size:.88rem;line-height:1.5;overflow:hidden}.mapper-preview.revisada thead th{background:var(--bg-app,#f8fafc);color:var(--text-secondary);white-space:nowrap;font-size:.78rem;position:static}.mapper-preview.revisada thead th:first-child{z-index:1;position:sticky;left:0}.mapper-preview.revisada tr{cursor:default}.mapper-preview.revisada tr:hover{background:0 0}.mapper-preview.revisada tr.con-error th[scope=row]{color:hsl(var(--danger))}.mapper-preview.revisada tr.con-aviso th[scope=row]{color:#b45309}.mapper-preview.revisada td.celda-error{background:var(--danger-bg);color:hsl(var(--danger));font-weight:700}.mapper-preview.revisada td.celda-aviso{background:var(--warning-bg);color:#b45309}.mapper-preview.revisada td.motivo,.mapper-preview.revisada th.motivo{white-space:normal;background:var(--bg-card,#fff);border-left:1px solid var(--border-color);min-width:200px;max-width:300px;position:sticky;right:0}.mapper-preview.revisada th.motivo{background:var(--bg-app,#f8fafc)}.mapper-motivo{font-size:.8rem;line-height:1.35;display:block}.mapper-motivo.error{color:hsl(var(--danger))}.mapper-motivo.aviso{color:#b45309}.mapper-motivo.info{color:var(--text-secondary)}.mapper-resumen{flex-direction:column;gap:.3rem;margin:0;padding:0;list-style:none;display:flex}.mapper-resumen li{color:var(--text-secondary);font-size:.95rem}.mapper-resumen b{color:var(--text-primary)}.mapper-generated-card{background:radial-gradient(120% 140% at 0 0,#10b98129,#0000 55%),radial-gradient(120% 160% at 100% 0,#2563eb1a,#0000 55%),linear-gradient(#fff,#f2fbf6);border:1px solid #16a34a4d;border-radius:16px;flex-direction:column;gap:.7rem;padding:1rem 1.1rem;display:flex;position:relative;overflow:hidden;box-shadow:0 10px 30px -18px #057a5573}.mapper-generated-grid{pointer-events:none;background-image:linear-gradient(#10b98117 1px,#0000 1px),linear-gradient(90deg,#10b98117 1px,#0000 1px);background-size:26px 26px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(120% 100% at 100% 0,#000 0%,#0000 70%);mask-image:radial-gradient(120% 100% at 100% 0,#000 0%,#0000 70%)}.mapper-generated-top{align-items:center;gap:.75rem;display:flex;position:relative}.mapper-generated-check{color:#fff;background:linear-gradient(135deg,#10b981,#059669);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;display:flex;box-shadow:0 0 0 4px #10b98126,0 8px 18px -6px #05966999}.mapper-generated-info{flex-direction:column;gap:.18rem;display:flex}.mapper-generated-info .mapper-kicker{color:#059669}.mapper-generated-info strong{color:var(--text-primary);font-size:.9rem;font-weight:800}.mapper-generated-file{color:var(--text-secondary);align-items:center;gap:.3rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.72rem;display:inline-flex}.mapper-generated-hint{color:var(--text-secondary);font-size:.76rem;line-height:1.5;position:relative}.mapper-generated-hint b{color:#047857}.mapper-generated-actions{flex-wrap:wrap;gap:.5rem;display:flex;position:relative}.mapper-generated-actions .btn{align-items:center;gap:.3rem;padding:.4rem .75rem;font-size:.75rem;display:flex}.card{background:var(--bg-card);-webkit-backdrop-filter:blur(25px);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow);border-radius:20px;padding:1.75rem;transition:all .35s cubic-bezier(.4,0,.2,1)}.card:hover{box-shadow:0 15px 35px -10px #8b5cf61f, var(--glass-shadow);border-color:#8b5cf633;transform:translateY(-4px)scale(1.005)}.theme-toggle{background:var(--bg-card);border:1px solid var(--border-color);cursor:pointer;width:46px;height:46px;color:var(--text-primary);box-shadow:var(--shadow-sm);border-radius:14px;justify-content:center;align-items:center;transition:all .25s;display:flex}.theme-toggle:hover{border-color:hsl(var(--primary));color:hsl(var(--primary));box-shadow:var(--glow-primary);transform:rotate(15deg)scale(1.05)}.user-profile{background:var(--bg-card);border:1px solid var(--border-color);box-shadow:var(--shadow-sm);border-radius:16px;align-items:center;gap:.85rem;padding:.55rem 1.25rem;display:flex}.avatar{background:linear-gradient(135deg, hsl(var(--primary)), hsl(var(--accent)));color:#fff;width:36px;height:36px;box-shadow:var(--glow-primary);border-radius:10px;justify-content:center;align-items:center;font-size:.95rem;font-weight:800;display:flex;overflow:hidden}.avatar img{border-radius:inherit;object-fit:cover;width:100%;height:100%}.user-info{flex-direction:column;display:flex}.user-name{font-size:.825rem;font-weight:600}.user-role{color:hsl(var(--accent));letter-spacing:.05em;text-transform:uppercase;font-size:.68rem;font-weight:600}.founder-badge-web{color:#8a6112;background:#fff8dc;border:1px solid #e4c56f;border-radius:999px;align-items:center;gap:4px;width:fit-content;margin-top:3px;padding:2px 7px;font-size:.66rem;font-weight:800;display:inline-flex}.founder-crown-icon{color:#d9a514}.founder-info{color:inherit;cursor:pointer;background:0 0;border:0;place-items:center;padding:0;display:inline-grid;position:relative}.founder-tooltip{z-index:20;color:#fff;text-transform:none;letter-spacing:0;width:260px;box-shadow:var(--shadow);background:#172741;border-radius:10px;padding:10px 12px;font-size:.72rem;font-weight:500;line-height:1.4;display:none;position:absolute;top:calc(100% + 8px);right:0}.founder-info:hover .founder-tooltip,.founder-info:focus .founder-tooltip{display:block}.kpis-grid{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:1.5rem;display:grid}.kpi-card{flex-direction:column;justify-content:space-between;min-height:125px;display:flex;position:relative;overflow:hidden;padding:1.25rem!important}.kpi-card:before{content:"";width:100%;height:3px;position:absolute;top:0;left:0}.kpi-card.card:hover{transform:translateY(-4px)}.kpis-grid>div:first-child:before{background:linear-gradient(90deg, hsl(var(--primary)), transparent)}.kpis-grid>div:nth-child(2):before{background:linear-gradient(90deg, hsl(var(--accent)), transparent)}.kpis-grid>div:nth-child(3):before{background:linear-gradient(90deg, hsl(var(--warning)), transparent)}.kpis-grid>div:nth-child(4):before{background:linear-gradient(90deg, hsl(var(--success)), transparent)}.kpi-header{justify-content:space-between;align-items:center;width:100%;display:flex}.kpi-body{flex-direction:column;margin-top:.75rem;display:flex}.kpi-icon{border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;transition:transform .3s;display:flex}.kpi-card:hover .kpi-icon{transform:scale(1.08)rotate(3deg)}.kpi-icon.primary{color:hsl(var(--primary));background:#8b5cf61a}.kpi-icon.accent{color:hsl(var(--accent));background:#06b6d41a}.kpi-icon.warning{color:hsl(var(--warning));background:#f59e0b1a}.kpi-icon.success{color:hsl(var(--success));background:#10b9811a}.kpi-label{color:var(--text-secondary);text-transform:none;letter-spacing:normal;font-size:.78rem;font-weight:500}.kpi-value{font-family:var(--font-heading);letter-spacing:-.025em;color:var(--text-primary);font-size:1.45rem;font-weight:700;line-height:1.1}.kpi-trend{margin-top:.2rem;font-size:.72rem;font-weight:500}.control-bar-single-row{flex-direction:row;align-items:center;gap:.65rem;width:100%;display:flex;padding:.85rem 1.25rem!important}.search-input-wrapper-single{flex:2.5 240px;align-items:center;min-width:180px;display:flex;position:relative}.search-icon-single{color:var(--text-muted);pointer-events:none;position:absolute;left:.95rem}.search-input-single{border:1px solid var(--border-color);box-sizing:border-box;background:#00000005;border-radius:10px;outline:none;width:100%;height:38px;padding:0 .85rem 0 2.25rem;font-size:.825rem;font-weight:500;transition:all .3s}.search-input-single:focus{border-color:hsl(var(--primary));background:var(--bg-sidebar);box-shadow:var(--glow-primary)}.select-filter-single{border:1px solid var(--border-color);cursor:pointer;box-sizing:border-box;appearance:none;background:#00000005 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%2364748b' stroke-width='2'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M19 9l-7 7-7-7'/%3E%3C/svg%3E") right .6rem center/.9rem no-repeat;border-radius:10px;outline:none;flex:120px;min-width:105px;height:38px;padding:0 1.75rem 0 .75rem;font-size:.825rem;font-weight:500;transition:all .3s}.select-filter-single:focus{border-color:hsl(var(--primary));background:var(--bg-sidebar)}.btn-single-row{box-sizing:border-box;border-radius:10px;flex:none;align-items:center;gap:.35rem;height:38px;font-size:.825rem;font-weight:600;display:flex;padding:0 1rem!important}.search-input-wrapper{flex-grow:1;min-width:260px;max-width:400px;position:relative}.search-icon{color:var(--text-muted);transition:color .2s;position:absolute;top:50%;left:1.15rem;transform:translateY(-50%)}.search-input{border:1px solid var(--border-color);background:#00000005;border-radius:14px;outline:none;width:100%;padding:.85rem 1rem .85rem 3rem;font-size:.85rem;font-weight:500;transition:all .3s cubic-bezier(.4,0,.2,1)}.search-input:focus{border-color:hsl(var(--primary));background:var(--bg-sidebar);box-shadow:var(--glow-primary)}.search-input-wrapper:focus-within .search-icon{color:hsl(var(--primary))}.select-filter{border:1px solid var(--border-color);cursor:pointer;background:#00000005;border-radius:14px;outline:none;padding:.85rem 2.25rem .85rem 1.15rem;font-size:.85rem;font-weight:500;transition:all .3s}.select-filter:focus{border-color:hsl(var(--primary));background:var(--bg-sidebar)}.btn{cursor:pointer;border:1px solid #0000;border-radius:14px;align-items:center;gap:.6rem;padding:.85rem 1.5rem;font-size:.825rem;font-weight:600;transition:all .3s cubic-bezier(.4,0,.2,1);display:inline-flex}.btn:hover{transform:translateY(-2px)}.btn:disabled{cursor:not-allowed;opacity:.6;box-shadow:none;transform:none}.btn-primary:disabled{background:var(--border-color);color:var(--text-muted);box-shadow:none}.btn-primary:disabled:hover{box-shadow:none;transform:none}.btn-primary{background:linear-gradient(135deg, hsl(var(--primary)), hsl(var(--primary) / .85));color:#fff;box-shadow:0 4px 20px #1b64da40}.btn-primary:hover{box-shadow:0 8px 25px #1b64da66, var(--glow-primary)}.btn-secondary{background:var(--bg-card);border:1px solid var(--border-color);color:var(--text-primary)}.btn-secondary:hover{background:var(--border-color)}.btn-danger{background:hsl(var(--danger));color:#fff;box-shadow:0 4px 15px #ef444433}.btn-icon{border:1px solid var(--border-color);background:var(--bg-card);width:36px;height:36px;color:var(--text-secondary);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;transition:background .15s,color .15s;display:inline-flex}.btn-icon:hover:not(:disabled){background:var(--border-color);color:var(--text-primary)}.btn-icon:disabled{opacity:.5;cursor:not-allowed}.btn-icon:focus-visible{outline:2px solid hsl(var(--primary));outline-offset:2px}.empty-state{text-align:center;color:var(--text-secondary);flex-direction:column;justify-content:center;align-items:center;gap:.75rem;padding:4rem 2rem;display:flex}.empty-state h3{color:var(--text-primary);margin:0;font-size:1.05rem}.empty-state p{color:var(--text-muted);max-width:32ch;margin:0;font-size:.85rem}.empty-state-icon{color:var(--text-muted)}.btn-danger:hover{background:hsl(var(--danger) / .9);box-shadow:0 8px 20px #ef444459}.table-container{background:0 0;border-radius:16px;overflow-x:auto}.inventory-table{border-collapse:separate;border-spacing:0 .5rem;text-align:left;width:100%}.inventory-table th{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.08em;border-bottom:2px solid var(--border-color);text-align:left;background:0 0;padding:1rem 1.25rem;font-size:.72rem;font-weight:600}.inventory-table td{background:var(--bg-card);-webkit-backdrop-filter:blur(10px);border-top:1px solid var(--border-color);border-bottom:1px solid var(--border-color);color:var(--text-primary);vertical-align:middle;white-space:normal;padding:.85rem 1.25rem;font-size:.825rem;font-weight:450;transition:all .2s}.inventory-table td.col-sku,.inventory-table td.col-id,.inventory-table td.col-price,.inventory-table td.actions-cell{white-space:nowrap}.inventory-table td:first-child{border-left:1px solid var(--border-color);border-top-left-radius:12px;border-bottom-left-radius:12px}.inventory-table td:last-child{border-right:1px solid var(--border-color);border-top-right-radius:12px;border-bottom-right-radius:12px}.inventory-table tr:hover td{background:#8b5cf60a;border-color:#8b5cf62e;transform:scale(1.001)}.inventory-table tr.inventory-row-top td{background:#fffaf0;border-color:#f1d27a}.inventory-table tr.inventory-row-top-expired td{background:#fafafa;border-color:#e5e7eb}.top-table-badge{color:#875b00;white-space:nowrap;background:#fff0c4;border-radius:999px;align-items:center;gap:.28rem;width:fit-content;margin-top:.35rem;padding:.16rem .42rem .16rem .2rem;font-size:.68rem;font-weight:750;display:flex}.top-table-badge img{object-fit:contain;width:20px;height:20px}.top-table-badge.expired{color:#64748b;background:#f1f5f9}.col-sku{font-family:var(--font-mono);color:hsl(var(--primary));font-size:.825rem;font-weight:600}.col-id{font-family:var(--font-mono);color:var(--text-muted);font-size:.78rem}.col-price{font-family:var(--font-heading);color:var(--text-primary);font-size:.9rem;font-weight:700}.quick-edit-display-wrapper:hover{background:#8b5cf614}.quick-edit-display-wrapper:hover .quick-edit-btn{opacity:1!important;color:hsl(var(--primary))!important}.badge{text-transform:uppercase;letter-spacing:.02em;border-radius:10px;align-items:center;padding:.35rem .75rem;font-size:.7rem;font-weight:600;display:inline-flex}.badge-success{background:var(--success-bg);color:#166534;border:1px solid #10b98133}.badge-warning{background:var(--warning-bg);color:#92400e;border:1px solid #f59e0b33;animation:2s infinite pulseWarning}.badge-danger{background:var(--danger-bg);color:#b91c1c;border:1px solid #ef444433}[data-theme=dark] .badge-success{color:hsl(var(--success))}[data-theme=dark] .badge-warning{color:hsl(var(--warning))}[data-theme=dark] .badge-danger{color:hsl(var(--danger))}.modal-overlay{-webkit-backdrop-filter:blur(10px);z-index:100;background:#03071280;justify-content:center;align-items:center;padding:2rem;animation:.25s fadeIn;display:flex;position:fixed;inset:0}.top-modal,.wallet-modal{border-radius:20px;flex-direction:column;width:min(680px,96vw);max-height:88vh;display:flex;box-shadow:0 28px 80px #0f172a47}.top-modal .modal-header,.wallet-modal .modal-header{justify-content:space-between;align-items:center;display:flex}.wallet-modal .modal-header{background:linear-gradient(135deg,#f8fbff 0%,#edf4ff 55%,#f7f9fc 100%);border-bottom:1px solid #dbe5f2}.top-modal .modal-header>div,.wallet-modal .modal-header>div{align-items:center;gap:.65rem;display:flex}.top-modal h2,.wallet-modal h2{margin:0;font-size:1.15rem}.top-modal-icon,.wallet-modal-icon{color:#9a6800;background:#fff0c4;border-radius:11px;justify-content:center;align-items:center;width:38px;height:38px;display:inline-flex}.top-modal-badge{object-fit:contain;width:48px;height:48px}.top-status-badge{object-fit:contain;flex:none;width:28px;height:28px}.icon-close{color:var(--text-secondary);cursor:pointer;background:0 0;border:0;padding:.3rem}.top-modal-body,.wallet-modal-body{gap:1.1rem;padding:1.35rem 1.5rem;display:grid;overflow:auto}.top-product-hero{background:linear-gradient(135deg,#fafcff,#f5f8fc);border:1px solid #e8edf5;border-radius:14px;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.1rem;display:flex}.top-product-hero div{gap:.28rem;display:grid}.top-product-hero span{letter-spacing:.08em;color:#64748b;font-size:.67rem;font-weight:800}.top-product-hero strong{color:#17213a;font-size:1.02rem}.top-product-hero p{color:#64748b;margin:0;font-size:.78rem}.top-product-hero img{object-fit:contain;width:64px;height:64px}.top-intro{color:var(--text-secondary);margin:0;line-height:1.5}.top-status,.top-error,.top-insufficient{color:#805900;background:#fff7dd;border-radius:9px;align-items:center;gap:.55rem;padding:.75rem;font-size:.84rem;display:flex}.top-status.expired{color:#64748b;background:#f1f5f9}.top-error{color:#be123c;background:#fff1f2}.top-insufficient{cursor:pointer;text-align:left;border:1px solid #f4d788;width:100%;font-weight:650}.top-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;display:grid}.top-summary-grid>div{background:#fff;border:1px solid #e3eaf3;border-radius:12px;align-content:start;gap:.28rem;min-height:94px;padding:.8rem .9rem;display:grid}.top-summary-grid span{text-transform:uppercase;letter-spacing:.045em;color:#64748b;font-size:.7rem;font-weight:700}.top-summary-grid strong{color:#16213b;font-size:1.08rem}.top-summary-grid small{color:#718096;font-size:.71rem;line-height:1.25}.top-cost-card{background:#fffcf2!important;border-color:#efd18a!important}.top-cost-card strong{color:#9a6800}.top-free-exhausted{background:#f8fafc!important}.top-free-exhausted strong{color:#64748b}.top-rules{color:#526076;background:#fffcf3;border-left:3px solid #d3a32d;border-radius:8px;padding:.9rem 1rem;font-size:.79rem;line-height:1.5}.top-rules strong{color:#3b4658}.top-rules ul,.wallet-steps{margin:.45rem 0 0;padding-left:1.15rem}.wallet-steps{color:var(--text-secondary);font-size:.82rem;line-height:1.65}.top-modal-footer{justify-content:flex-end;gap:.65rem;display:flex}.top-confirm{color:#fff;background:#9a6800;border-color:#9a6800}.top-confirm:hover{background:#7d5300}.wallet-modal .top-confirm{color:#fff;background:#06f;border-color:#06f}.wallet-modal .top-confirm:hover{background:#1257b8;border-color:#1257b8}.wallet-card-actions .top-confirm{color:#0f4aa8;background:linear-gradient(135deg,#fff 0%,#eef3f9 50%,#ccd8e7 100%);border-color:#0000}.wallet-card-actions .top-confirm:hover{filter:brightness(1.04);background:linear-gradient(135deg,#fff 0%,#eef3f9 50%,#ccd8e7 100%)}.wallet-card-actions .btn-secondary{color:#e2ecf9;background:0 0;border-color:#ffffff47}.wallet-card-actions .btn-secondary:hover{background:#ffffff1a;border-color:#fff6}.action-btn-top{color:#9a6800}.action-btn-top:hover,.action-btn-top.active{color:#8a5b00;background:#fff4d1;border-color:#f2ce68}.wallet-balance{color:#1257b8;background:linear-gradient(135deg,#edf4ff,#dbeafe);border:1px solid #bfdbfe;border-radius:12px;align-items:center;gap:.75rem;padding:1rem;display:flex}.wallet-balance div{gap:.15rem;display:grid}.wallet-balance span{font-size:.75rem}.wallet-balance strong{font-size:1.15rem}.wallet-explainer{color:#1257b8;background:#eff6ff;border-radius:10px;gap:.65rem;padding:.85rem;display:flex}.wallet-explainer p{color:var(--text-secondary);margin:.25rem 0 0;font-size:.82rem;line-height:1.45}.wallet-top-badge{object-fit:contain;flex:none;width:48px;height:48px}.wallet-modal h3{margin:0;font-size:.9rem}.wallet-note{color:var(--text-secondary);margin:0;font-size:.78rem}.wallet-packs{grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem;display:grid}.wallet-pack{text-align:left;color:var(--text-primary);cursor:pointer;background:#f8fafc;border:1.5px solid #dce4ee;border-radius:12px;gap:.25rem;padding:.75rem;transition:border-color .16s,background .16s,box-shadow .16s,transform .16s;display:grid;position:relative}.wallet-pack:hover{border-color:#a8b9d0;transform:translateY(-1px);box-shadow:0 8px 20px #0b1b4714}.wallet-pack.selected{background:#faf5ff;border:2.5px solid #7c3aed;box-shadow:0 0 0 3px #7c3aed1f,0 8px 20px #4c1d9514}.wallet-pack span{color:var(--text-secondary);font-size:.76rem}.wallet-pack em{color:#047857;font-style:normal;font-weight:800}.wallet-pack svg{color:#7c3aed;position:absolute;top:.55rem;right:.55rem}.wallet-payment-summary{background:var(--bg-app);border-radius:9px;justify-content:space-between;align-items:center;gap:.75rem;padding:.8rem .9rem;font-size:.82rem;display:flex}.wallet-payment-summary div{gap:.15rem;display:grid}.wallet-payment-summary span{color:var(--text-secondary);font-size:.72rem}.wallet-payment-total{text-align:right}.wallet-payment-total strong{color:#16803c;font-size:1.05rem}.wallet-secure-note{color:var(--text-secondary);align-items:center;gap:.5rem;margin:0;font-size:.76rem;display:flex}.wallet-secure-note svg{color:#16803c;flex:none}.wallet-card{color:#fff;background:linear-gradient(135deg,#1d5fc4,#0f4aa8 55%,#06285c);border-radius:14px;grid-template-columns:auto 1fr;align-items:center;gap:.5rem 1rem;padding:1.1rem;display:grid}.wallet-card-copy{gap:.1rem;display:grid}.wallet-card-copy span{letter-spacing:.04em;text-transform:uppercase;color:#bcd6f8;font-size:.72rem}.wallet-card-copy strong{font-size:1.9rem;line-height:1.1}.wallet-card-copy small{color:#cfe0f4;font-size:.74rem}.wallet-card-actions{flex-wrap:wrap;grid-column:1/-1;justify-content:flex-end;gap:.55rem;display:flex}.wallet-card-actions .btn{align-items:center;gap:.4rem;display:inline-flex}.wallet-explainer-icon{color:#06f;background:#fff;border-radius:9px;flex:none;justify-content:center;align-items:center;width:34px;height:34px;display:inline-flex}.wallet-pending{color:#7c4a03;background:#fffaf0;border-left:3px solid #b45309;border-radius:10px;gap:.55rem;margin:0;padding:.8rem .9rem;font-size:.82rem;line-height:1.5;display:flex}.wallet-pending svg{flex:none;margin-top:.1rem}.recharge-subtitle{color:var(--text-secondary);font-size:.75rem;font-weight:600;display:block}.recharge-step{align-items:center;gap:.6rem;display:flex}.recharge-step>span{color:#1257b8;background:#eaf2ff;border-radius:8px;flex:none;justify-content:center;align-items:center;width:26px;height:26px;font-size:.8rem;font-weight:900;display:inline-flex}.recharge-step strong{font-size:.88rem;display:block}.recharge-step small{color:var(--text-secondary);font-size:.74rem}.wallet-pack-tag{letter-spacing:.04em;text-transform:uppercase;color:#475569;background:#e2e8f0;border-radius:5px;justify-self:start;padding:.1rem .4rem;font-size:.64rem;font-weight:800}.wallet-pack-tag.is-featured{color:#fff;background:#7c3aed}.wallet-pack-bonus{font-weight:700;color:#059669!important;font-size:.72rem!important}.recharge-doc-choice{grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem;display:grid}.recharge-doc-option{text-align:left;border:1px solid var(--border-color);background:var(--bg-card);color:var(--text-primary);cursor:pointer;border-radius:10px;gap:.15rem;padding:.7rem .8rem;display:grid}.recharge-doc-option.selected{background:#f4f8ff;border:2px solid #0f4aa8}.recharge-doc-option small{color:var(--text-secondary);font-size:.73rem}.recharge-doc-fields{gap:.6rem;display:grid}.recharge-doc-fields label{gap:.25rem;font-size:.8rem;font-weight:700;display:grid}.recharge-doc-fields input{border:1px solid var(--border-color);background:var(--bg-card);color:var(--text-primary);border-radius:8px;padding:.55rem .65rem;font-weight:500}.recharge-doc-fields input.is-invalid{background:#fff6f5;border-color:#dc2626}.recharge-doc-error{color:#b42318;font-size:.74rem;font-weight:600}.wallet-history-icon{color:#1257b8;background:#eaf2ff;border-radius:11px;justify-content:center;align-items:center;width:38px;height:38px;display:inline-flex}.wallet-history-summary{background:var(--bg-app);text-align:center;border-radius:10px;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;padding:.8rem;display:grid}.wallet-history-summary b{font-size:1.15rem;display:block}.wallet-history-summary span{color:var(--text-secondary);font-size:.72rem}.wallet-history-list{gap:.4rem;display:grid}.wallet-history-item{border:1px solid var(--border-color);background:var(--bg-card);width:100%;color:var(--text-primary);cursor:pointer;text-align:left;border-radius:10px;align-items:center;gap:.65rem;padding:.6rem .7rem;display:flex}.wallet-history-item:hover{border-color:#cbd5e1}.wallet-history-item-icon{border-radius:50%;flex:none;justify-content:center;align-items:center;width:30px;height:30px;display:inline-flex}.is-credit .wallet-history-item-icon,.wallet-history-item-icon.is-credit{color:#16803c;background:#e7f7ee}.is-debit .wallet-history-item-icon,.wallet-history-item-icon.is-debit{color:#b42318;background:#fdeceb}.wallet-history-body{flex:auto;gap:.1rem;min-width:0;display:grid}.wallet-history-body strong{text-overflow:ellipsis;white-space:nowrap;font-size:.84rem;overflow:hidden}.wallet-history-body span{color:var(--text-secondary);font-size:.74rem}.wallet-history-amount{flex:none;font-size:.9rem;font-weight:800}.is-credit .wallet-history-amount{color:#16803c}.is-debit .wallet-history-amount{color:#b42318}.wallet-history-empty{color:var(--text-secondary);justify-items:center;gap:.4rem;padding:1.6rem 0;font-size:.84rem;display:grid}.wallet-detail-overlay{z-index:1600}.wallet-detail{border-radius:20px;flex-direction:column;width:min(520px,96vw);max-height:88vh;display:flex}.wallet-detail-amount{background:var(--bg-app);border-radius:12px;justify-items:center;gap:.1rem;padding:1rem;display:grid}.wallet-detail-amount strong{font-size:2rem;line-height:1.1}.wallet-detail-amount.is-credit strong{color:#16803c}.wallet-detail-amount.is-debit strong{color:#b42318}.wallet-detail-amount span{color:var(--text-secondary);font-size:.76rem}.wallet-detail-rows{gap:.1rem;margin:0;display:grid}.wallet-detail-rows>div{border-bottom:1px solid var(--border-color);justify-content:space-between;gap:1rem;padding:.5rem 0;display:flex}.wallet-detail-rows>div:last-child{border-bottom:0}.wallet-detail-rows dt{color:var(--text-secondary);flex:none;font-size:.78rem}.wallet-detail-rows dd{text-align:right;overflow-wrap:anywhere;margin:0;font-size:.8rem;font-weight:700}.document-viewer-overlay{z-index:1700}.document-viewer{border-radius:20px;flex-direction:column;width:min(860px,96vw);height:min(88vh,900px);display:flex}.document-viewer .modal-header>div{align-items:center;gap:.65rem;display:flex}.document-viewer h2{margin:0;font-size:1.05rem}.document-viewer small{color:var(--text-secondary);font-size:.75rem}.document-viewer-icon{color:#16803c;background:#e7f7ee;border-radius:11px;flex:none;justify-content:center;align-items:center;width:38px;height:38px;display:inline-flex}.document-viewer-frame{border:1px solid var(--border-color);background:#f8fafc;border-radius:12px;flex:auto;min-height:0;margin:0 1.5rem;overflow:hidden}.document-viewer-frame object{border:0;width:100%;height:100%}.document-viewer-state{text-align:center;height:100%;color:var(--text-secondary);align-content:center;justify-items:center;gap:.7rem;padding:1.5rem;font-size:.84rem;display:grid}.document-viewer-spinner{border:2px solid #cbd5e1;border-top-color:#0f4aa8;border-radius:50%;width:22px;height:22px;animation:.8s linear infinite document-viewer-spin}@keyframes document-viewer-spin{to{transform:rotate(360deg)}}.document-viewer-download{align-items:center;gap:.4rem;text-decoration:none;display:inline-flex}.document-viewer.adhesion-modal{width:min(1180px,96vw);max-width:none;height:92vh;max-height:92vh;overflow:hidden}.adhesion-modal .document-viewer-frame{background:#f1f5f9;border:0;border-radius:0;margin:0}.adhesion-modal .modal-footer{background:#fbfcfe;padding:.85rem 1.25rem}.adhesion-modal .btn-primary:disabled{background:linear-gradient(135deg, hsl(var(--primary)), hsl(var(--primary) / .85));color:#fff;opacity:.45;cursor:not-allowed}.adhesion-checkbox{color:var(--text-primary,#0f172a);cursor:pointer;align-items:flex-start;gap:.55rem;margin:.75rem 1.25rem 0;font-size:.86rem;display:flex}.adhesion-checkbox input{margin-top:.15rem}.coin-rain-layer{z-index:1800;color:#fff;text-align:center;background:#06285cd1;align-content:center;justify-items:center;gap:.3rem;display:grid;position:fixed;inset:0}.coin-rain-layer h3{margin:0;font-size:1.6rem}.coin-rain-layer p{color:#cfe0f4;margin:0;font-size:.92rem}.coin-rain{pointer-events:none;position:absolute;inset:0;overflow:hidden}.coin-rain-item{width:var(--coin-size);height:var(--coin-size);animation:coin-rain-fall var(--coin-dur) linear var(--coin-delay) forwards;position:absolute;top:0}.coin-rain-item>svg{animation:coin-rain-spin var(--coin-dur) linear var(--coin-delay) forwards}@keyframes coin-rain-fall{0%{opacity:0;transform:translateY(-30vh)}12%{opacity:1}to{transform:translate3d(var(--coin-deriva), 115vh, 0);opacity:1}}@keyframes coin-rain-spin{0%{transform:rotateY(0)}to{transform:rotateY(var(--coin-giro))}}@media (prefers-reduced-motion:reduce){.coin-rain{display:none}}@media (width<=640px){.wallet-packs,.recharge-doc-choice{grid-template-columns:1fr}.wallet-card{text-align:center;grid-template-columns:1fr;justify-items:center}.wallet-card-actions{justify-content:center}}.drawer-overlay{-webkit-backdrop-filter:blur(8px);z-index:120;background:#0307128c;justify-content:flex-end;animation:.2s fadeIn;display:flex;position:fixed;inset:0}.drawer-content{background:var(--bg-card);border-left:1px solid var(--border-color);flex-direction:column;width:min(780px,94vw);height:100vh;animation:.3s cubic-bezier(.16,1,.3,1) slideInRight;display:flex;position:relative;box-shadow:-10px 0 30px #00000040}@keyframes slideInRight{0%{transform:translate(100%)}to{transform:translate(0)}}.drawer-subtitle{color:var(--text-secondary);margin-top:.15rem;font-size:.78rem;font-weight:500;display:block}.manual-unsaved-modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:50;background:#03071299;justify-content:center;align-items:center;padding:1.5rem;animation:.15s fadeIn;display:flex;position:absolute;inset:0}.manual-unsaved-card{background:var(--bg-card);border:1px solid var(--border-color);width:100%;max-width:440px;box-shadow:var(--shadow-lg);border-radius:16px;flex-direction:column;gap:.85rem;padding:1.75rem;display:flex}.manual-unsaved-card h4{color:var(--text-primary);margin:0;font-size:1.1rem;font-weight:700}.manual-unsaved-card p{color:var(--text-secondary);margin:0;font-size:.85rem;line-height:1.45}.manual-unsaved-actions{justify-content:flex-end;gap:.75rem;margin-top:.5rem;display:flex}@media (width<=768px){.drawer-content{width:100vw}}.modal-content{background:var(--bg-card);border:1px solid var(--border-color);width:100%;max-width:700px;max-height:85vh;box-shadow:var(--shadow-lg);border-radius:24px;flex-direction:column;animation:.35s cubic-bezier(.16,1,.3,1) slideUp;display:flex;overflow-y:auto}.bulk-upload-page{width:100%}.bulk-upload-page-content{background:var(--bg-card);border:1px solid var(--border-color);box-shadow:var(--shadow-sm);border-radius:18px;overflow:hidden}.bulk-upload-page-content,.bulk-upload-page-content .modal-body,.bulk-upload-page-content .modal-body>*{min-width:0}.bulk-upload-page-content .modal-header{background:linear-gradient(#fff 0%,#fbfdff 100%);border-bottom:1px solid #e2e8f0}.bulk-upload-tabs{background:#f8fafc;border-top:1px solid #eef2f7;border-bottom:1px solid #dfe7f1;gap:.4rem;padding:.85rem 2rem 0;display:flex}.bulk-upload-page-content .modal-body{background:#f8fafc;flex:1;min-height:0;display:flex}.bulk-upload-page-content .bulk-upload-split-layout{flex:1}.bulk-upload-page-content .modal-footer{background:#fbfdff;border-top:1px solid #dfe7f1!important}.modal-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:1rem 2rem;display:flex}.modal-body{padding:1.25rem 2rem;overflow-y:auto}.modal-footer{border-top:1px solid var(--border-color);justify-content:flex-end;gap:1rem;padding:1rem 2rem;display:flex}.form-grid{grid-template-columns:repeat(2,1fr);gap:1.5rem;display:grid}.form-group-full{grid-column:span 2}.form-group{flex-direction:column;gap:.55rem;display:flex}.form-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;font-size:.85rem;font-weight:700}.form-control{border:1px solid var(--border-color);background:#00000005;border-radius:12px;outline:none;padding:.85rem 1.15rem;font-size:.95rem;font-weight:600;transition:all .3s}.form-control:focus{border-color:hsl(var(--primary));background:var(--bg-sidebar);box-shadow:var(--glow-primary)}.dropzones-container{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.75rem;margin-bottom:1.75rem;display:grid}.dropzone{border:2px dashed var(--border-color);text-align:center;cursor:pointer;background:#8b5cf603;border-radius:18px;flex-direction:column;justify-content:center;align-items:center;gap:1.15rem;padding:3rem 1.75rem;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex}.dropzone:hover{border-color:hsl(var(--primary));background:#8b5cf60a;transform:translateY(-2px)}.dropzone-icon{color:hsl(var(--primary));animation:3s infinite pulseGlow}.dropzone-title{font-size:1.05rem;font-weight:800}.dropzone-desc{color:var(--text-secondary);font-size:.8rem;line-height:1.5}.log-table-container{border:1px solid var(--border-color);border-radius:12px;max-height:250px;margin-top:1rem;overflow-y:auto}.log-table-container,.log-table-body-scroll{scrollbar-width:auto;scrollbar-color:#64748b #f1f5f9}.log-table-container::-webkit-scrollbar{width:14px;height:14px}.log-table-body-scroll::-webkit-scrollbar{width:14px;height:14px}.log-table-container::-webkit-scrollbar-track{background:#f1f5f9;border-left:1px solid #e2e8f0;border-radius:8px}.log-table-body-scroll::-webkit-scrollbar-track{background:#f1f5f9;border-left:1px solid #e2e8f0;border-radius:8px}.log-table-container::-webkit-scrollbar-thumb{background:#64748b;border:3px solid #f1f5f9;border-radius:8px}.log-table-body-scroll::-webkit-scrollbar-thumb{background:#64748b;border:3px solid #f1f5f9;border-radius:8px}.log-table-container::-webkit-scrollbar-thumb:hover{background:#334155}.log-table-body-scroll::-webkit-scrollbar-thumb:hover{background:#334155}.scroll-indicator-pulse{animation:2.5s ease-in-out infinite pulseScrollText}@keyframes pulseScrollText{0%,to{opacity:.7;transform:scale(1)}50%{opacity:1;color:hsl(var(--accent));transform:scale(1.02)}}.log-table{border-collapse:separate;border-spacing:0;width:100%;font-size:.825rem}.log-table th{background:var(--bg-sidebar);border-bottom:2px solid var(--border-color);z-index:3;padding:.85rem 1.15rem;font-weight:800;position:sticky;top:0}.log-table td{border-bottom:1px solid var(--border-color);padding:.85rem 1.15rem}.log-table{--sticky-action-w:90px;--sticky-images-w:160px}.log-table th.sticky-action,.log-table td.sticky-action,.log-table th.sticky-images,.log-table td.sticky-images{background:var(--bg-card);z-index:5;position:sticky}.log-table th.sticky-action,.log-table td.sticky-action{width:var(--sticky-action-w);min-width:var(--sticky-action-w);max-width:var(--sticky-action-w);right:0}.log-table th.sticky-images,.log-table td.sticky-images{right:var(--sticky-action-w);width:var(--sticky-images-w);min-width:var(--sticky-images-w);max-width:var(--sticky-images-w);box-shadow:-6px 0 10px -4px #0000001f}.log-table th.sticky-action,.log-table th.sticky-images{background:var(--bg-sidebar);z-index:6}.log-table tr.missing-image-row>td.sticky-images,.log-table tr.missing-image-row>td.sticky-action{background:#fff8db}[data-theme=dark] .log-table tr.missing-image-row>td.sticky-images,[data-theme=dark] .log-table tr.missing-image-row>td.sticky-action{background:#3b2f0b}.log-table td.gallery-row-cell{padding-right:calc(var(--sticky-action-w) + var(--sticky-images-w) + 1rem)}.log-status-badge{letter-spacing:.02em;border-radius:6px;padding:.2rem .5rem;font-size:.7rem;font-weight:800;display:inline-block}.auth-page{background:radial-gradient(circle at 80% 20%,#1b64da0f 0%,#0000 45%),radial-gradient(circle at 20% 80%,#1b64da0a 0%,#0000 55%),#f8fafc;flex-direction:column;height:100dvh;padding:clamp(.5rem,2vh,1.25rem) clamp(1rem,3vw,1.5rem);display:flex;position:relative;overflow:hidden}.auth-content{z-index:5;flex:1;justify-content:center;align-items:center;width:100%;min-height:0;display:flex}.auth-page:before{content:"";opacity:.045;z-index:0;pointer-events:none;background-image:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='240'%20height='240'%20viewBox='0%200%20240%20240'%3e%3cdefs%3e%3cpattern%20id='shelf-unit'%20width='240'%20height='240'%20patternUnits='userSpaceOnUse'%3e%3c!--%20Postes%20verticales%20del%20estante%20--%3e%3crect%20x='14'%20y='10'%20width='6'%20height='220'%20fill='%231b64da'%20/%3e%3crect%20x='220'%20y='10'%20width='6'%20height='220'%20fill='%231b64da'%20/%3e%3c!--%20Niveles%20horizontales%20--%3e%3crect%20x='14'%20y='40'%20width='212'%20height='5'%20fill='%231b64da'%20/%3e%3crect%20x='14'%20y='118'%20width='212'%20height='5'%20fill='%231b64da'%20/%3e%3crect%20x='14'%20y='196'%20width='212'%20height='5'%20fill='%231b64da'%20/%3e%3c!--%20Cajas%20nivel%201%20--%3e%3crect%20x='28'%20y='14'%20width='30'%20height='24'%20rx='2'%20fill='%231b64da'%20/%3e%3crect%20x='66'%20y='18'%20width='24'%20height='20'%20rx='2'%20fill='%231b64da'%20/%3e%3crect%20x='150'%20y='16'%20width='34'%20height='22'%20rx='2'%20fill='%231b64da'%20/%3e%3c!--%20Cajas%20nivel%202%20--%3e%3crect%20x='40'%20y='92'%20width='26'%20height='24'%20rx='2'%20fill='%231b64da'%20/%3e%3crect%20x='120'%20y='88'%20width='34'%20height='28'%20rx='2'%20fill='%231b64da'%20/%3e%3crect%20x='180'%20y='94'%20width='24'%20height='22'%20rx='2'%20fill='%231b64da'%20/%3e%3c!--%20Cajas%20nivel%203%20--%3e%3crect%20x='30'%20y='168'%20width='28'%20height='26'%20rx='2'%20fill='%231b64da'%20/%3e%3crect%20x='90'%20y='170'%20width='30'%20height='24'%20rx='2'%20fill='%231b64da'%20/%3e%3crect%20x='160'%20y='166'%20width='28'%20height='28'%20rx='2'%20fill='%231b64da'%20/%3e%3c/pattern%3e%3c/defs%3e%3crect%20width='240'%20height='240'%20fill='url(%23shelf-unit)'%20/%3e%3c/svg%3e");background-repeat:repeat;background-size:200px 200px;position:absolute;inset:0}[data-theme=dark] .auth-page{background:radial-gradient(circle at 80% 20%,#1b64da1f 0%,#0000 50%),radial-gradient(circle at 20% 80%,#1b64da14 0%,#0000 60%),#070a13}[data-theme=dark] .auth-page:before{opacity:.08}.auth-wrapper{z-index:5;grid-template-columns:1.32fr .68fr;align-items:center;gap:clamp(1.25rem,3vw,3rem);width:100%;max-width:1500px;max-height:100%;margin:0 auto;display:grid}.auth-left-panel{color:var(--text-primary);flex-direction:column;max-height:100%;padding:.5rem 0;display:flex;position:relative;overflow:hidden}.auth-eyebrow{color:#1b64da;letter-spacing:.04em;text-transform:uppercase;background:#1b64da14;border-radius:999px;align-self:flex-start;align-items:center;margin-bottom:clamp(.5rem,2vh,1.5rem);padding:.4rem .9rem;font-size:.78rem;font-weight:700;display:inline-flex}[data-theme=dark] .auth-eyebrow{background:#1b64da29}.auth-left-panel .logo-text-brand{font-family:var(--font-heading);letter-spacing:-.03em;color:#0f172a;font-size:1.75rem;font-weight:800}[data-theme=dark] .auth-left-panel .logo-text-brand{color:#fff}.auth-left-panel .logo-text-brand span.logo-blue{color:#1b64da}.auth-left-panel h1{color:#0f172a;letter-spacing:-.03em;margin-bottom:clamp(.5rem,2vh,1.25rem);font-size:clamp(1.5rem,4vh,2.85rem);font-weight:800;line-height:1.2}[data-theme=dark] .auth-left-panel h1{color:#fff}.auth-left-panel h1 span.text-blue{color:#1b64da}.auth-left-panel .auth-description{color:#64748b;max-width:520px;margin-bottom:.5rem;font-size:clamp(.85rem,2vh,1.05rem);line-height:1.5}.auth-features-list{flex-direction:column;gap:clamp(.75rem,2vh,1.75rem);margin-bottom:.5rem;display:flex}.auth-feature-item{align-items:flex-start;gap:1.25rem;display:flex}.auth-feature-icon-wrapper{color:#1b64da;background:#1b64da14;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;transition:all .3s;display:flex}.auth-feature-item:hover .auth-feature-icon-wrapper{background:#1b64da26;transform:translateY(-2px)}.auth-feature-content h4{color:#0f172a;margin-bottom:.25rem;font-size:.95rem;font-weight:700}[data-theme=dark] .auth-feature-content h4{color:#f8fafc}.auth-feature-content p{color:#64748b;font-size:.875rem;line-height:1.4}.auth-branding-row{flex-direction:row;justify-content:space-between;align-items:center;gap:clamp(.75rem,2vw,2rem);width:100%;display:flex;position:relative}.auth-features-list{z-index:5;flex-direction:column;flex:0 0 clamp(240px,24vw,360px);gap:clamp(.75rem,2vh,2.25rem);display:flex}.auth-hero-image-container{z-index:5;flex:1.6;justify-content:center;align-items:center;max-height:62vh;padding:0;display:flex;position:relative}.auth-hero-image-container:before{content:"";z-index:0;pointer-events:none;background:radial-gradient(circle,#1b64da29 0%,#1b64da0d 45%,#0000 72%);border-radius:50%;width:440px;height:440px;position:absolute}.auth-hero-image-container:after{content:"";z-index:1;pointer-events:none;background:radial-gradient(#0f172a24 0%,#0000 75%);width:62%;height:32px;position:absolute;bottom:6%}.auth-hero-image{object-fit:contain;filter:drop-shadow(0 24px 32px #0f172a24);z-index:2;width:220%;max-width:220%;height:auto;max-height:min(700px,60vh);animation:6s ease-in-out infinite floatHero;position:relative}.auth-dots-decor{opacity:.65;z-index:1;pointer-events:none;background-image:radial-gradient(#cbd5e1 1.5px,#0000 1.5px);background-size:11px 11px;width:96px;height:80px;position:absolute}[data-theme=dark] .auth-dots-decor{opacity:.45;background-image:radial-gradient(#ffffff1a 1.5px,#0000 1.5px)}.auth-dots-decor.top-right{top:10%;right:-5%}.auth-dots-decor.bottom-left{bottom:0%;left:-3%}@keyframes floatHero{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.auth-right-panel{justify-content:flex-end;align-items:center;display:flex}.auth-card{z-index:10;background:#fff;border:1px solid #e2e8f0d9;border-radius:28px;width:100%;max-width:460px;max-height:100%;padding:clamp(1.25rem,4vh,3.5rem) clamp(1.5rem,3vw,3rem);transition:transform .3s,box-shadow .3s;overflow:hidden;box-shadow:0 20px 50px #0f172a0a,0 4px 12px #0f172a03}[data-theme=dark] .auth-card{background:#0f1626;border-color:#ffffff0d;box-shadow:0 25px 60px #00000073}.auth-card .logo-container-center{justify-content:center;align-items:center;margin-bottom:clamp(.75rem,2.5vh,2rem);display:flex}.logo-image-card{object-fit:contain;width:auto;height:clamp(70px,12vh,140px)}.auth-card h2{text-align:center;color:#0f172a;letter-spacing:-.02em;margin-bottom:.5rem;font-size:clamp(1.15rem,3vh,1.55rem);font-weight:700}[data-theme=dark] .auth-card h2{color:#fff}.auth-card p.auth-subtitle{color:#64748b;text-align:center;margin-bottom:clamp(1rem,3vh,2.25rem);font-size:.9rem}.auth-card .form-group{margin-bottom:clamp(.75rem,2vh,1.5rem)}.auth-card .form-label{color:#1b64da;letter-spacing:.06em;text-transform:uppercase;margin-bottom:.5rem;font-size:.75rem;font-weight:700;display:block}.auth-card .form-control{color:#0f172a;background:#fff;border:1px solid #e2e8f0;border-radius:12px;width:100%;padding:.85rem 1rem .85rem 2.75rem;font-size:.95rem;transition:all .25s}[data-theme=dark] .auth-card .form-control{color:#f8fafc;background:#090d16;border-color:#ffffff1a}.auth-card .form-control:focus{border-color:#1b64da;outline:none;box-shadow:0 0 0 4px #1b64da1f}.auth-card .btn-primary{color:#fff;cursor:pointer;background:#1b64da;border:none;border-radius:12px;justify-content:center;align-items:center;width:100%;margin-top:clamp(.75rem,2vh,1.75rem);padding:.9rem;font-size:.975rem;font-weight:600;transition:all .25s;display:flex;box-shadow:0 4px 15px #1b64da40}.auth-card .btn-primary:hover:not(:disabled){background:#154ec1;transform:translateY(-2px);box-shadow:0 8px 25px #1b64da59}.auth-card .btn-primary:active:not(:disabled){transform:translateY(0)}.auth-card .btn-primary:disabled{opacity:.7;cursor:not-allowed}.auth-card .auth-help-text{text-align:center;color:#64748b;margin-top:clamp(.75rem,2vh,1.75rem);font-size:.8rem;line-height:1.4}.auth-footer{text-align:center;color:#64748b;z-index:5;flex-shrink:0;padding-top:clamp(.4rem,1.5vh,1rem);font-size:.8rem}@media (width<=992px){.auth-wrapper{grid-template-columns:1fr;gap:.5rem;height:100%}.auth-left-panel{display:none}.auth-right-panel{justify-content:center;max-height:100%}.auth-card{padding:clamp(1rem,4vh,2rem) clamp(1.25rem,5vw,2rem)}}@media (height<=700px){.logo-image-card{height:clamp(36px,7vh,60px)}.auth-card .logo-container-center{margin-bottom:.5rem}.auth-card p.auth-subtitle{margin-bottom:.75rem}}.pagination{background:0 0;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:1.25rem 1.5rem;font-weight:600;display:flex}.pagination-buttons{flex-flow:row;align-items:center;gap:.5rem;display:flex}.import-progress-bar{background-color:#00000014;border-radius:99px;width:100%;height:10px;margin:1.5rem 0;overflow:hidden}.import-progress-fill{background:linear-gradient(90deg, hsl(var(--primary)), #a060fb);border-radius:99px;height:100%;transition:width .3s}@keyframes floatIcon{0%,to{transform:translateY(0)rotate(0)}50%{transform:translateY(-5px)rotate(3deg)}}@keyframes pulseGlow{0%,to{opacity:.8;filter:drop-shadow(0 0 5px #a060fb66)}50%{opacity:1;filter:drop-shadow(0 0 15px #a060fbcc)}}@keyframes pulseWarning{0%,to{box-shadow:0 0 #f59e0b66}50%{box-shadow:0 0 0 6px #f59e0b00}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes loadingSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.report-summary-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem;margin:1.25rem 0 1.75rem;display:grid}.summary-card{background:var(--bg-card);-webkit-backdrop-filter:blur(10px);border:1px solid var(--border-color);text-align:center;box-shadow:var(--shadow-sm);border-radius:16px;flex-direction:column;justify-content:center;align-items:center;padding:1.25rem 1rem;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex}.summary-card:hover{box-shadow:var(--shadow-md);transform:translateY(-3px)}.summary-num{font-family:var(--font-heading);margin-bottom:.35rem;font-size:2rem;font-weight:800;line-height:1.1}.summary-txt{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;font-size:.72rem;font-weight:700}.summary-card{cursor:pointer;-webkit-user-select:none;user-select:none;transition:all .25s cubic-bezier(.4,0,.2,1);position:relative}.summary-card.active{box-shadow:0 0 0 2px var(--card-active-color,hsl(var(--primary))), var(--shadow-md);transform:translateY(-2px)scale(1.02)}.summary-card-success{border-left:4px solid hsl(var(--success))}.summary-card-success:hover,.summary-card-success.active{border-color:#10b9814d #10b9814d #10b9814d hsl(var(--success))}.summary-card-success.active{--card-active-color:hsl(var(--success));background:#10b9810f}.summary-card-success .summary-num{color:hsl(var(--success));text-shadow:0 0 10px #10b98126}.summary-card-warning{border-left:4px solid hsl(var(--warning))}.summary-card-warning:hover,.summary-card-warning.active{border-color:#f59e0b4d #f59e0b4d #f59e0b4d hsl(var(--warning))}.summary-card-warning.active{--card-active-color:hsl(var(--warning));background:#f59e0b0f}.summary-card-warning .summary-num{color:hsl(var(--warning));text-shadow:0 0 10px #f59e0b26}.summary-card-danger{border-left:4px solid hsl(var(--danger))}.summary-card-danger:hover,.summary-card-danger.active{border-color:#ef44444d #ef44444d #ef44444d hsl(var(--danger))}.summary-card-danger.active{--card-active-color:hsl(var(--danger));background:#ef44440f}.summary-card-danger .summary-num{color:hsl(var(--danger));text-shadow:0 0 10px #ef444426}.bulk-mode-selector{background:#f1f5f9cc;border:1px solid #e2e8f0e6;border-radius:12px;align-items:center;gap:.5rem;margin-bottom:1.25rem;padding:.25rem;display:flex}.bulk-mode-tab{color:#64748b;cursor:pointer;background:0 0;border:none;border-radius:9px;flex:1;justify-content:center;align-items:center;gap:.5rem;padding:.6rem 1rem;font-size:.85rem;font-weight:600;transition:all .2s;display:flex}.bulk-mode-tab:hover{color:#1e293b;background:#fff9}.bulk-mode-tab.active-full{color:#1b64da;background:#fff;border:1px solid #1b64da33;box-shadow:0 1px 3px #00000014,0 1px 2px #1b64da1f}.bulk-mode-tab.active-express{color:#059669;background:#fff;border:1px solid #10b98159;box-shadow:0 1px 3px #00000014,0 1px 2px #10b9812e}.express-theme .dropzone-box{background:#10b98105;border-color:#10b98166}.express-theme .dropzone-box:hover{background:#10b9810d;border-color:#059669;box-shadow:0 0 15px #10b9811f}.express-theme .btn-primary-action{background:linear-gradient(135deg,#10b981 0%,#059669 100%);border-color:#047857;box-shadow:0 4px 12px #10b98140}.express-theme .btn-primary-action:hover{background:linear-gradient(135deg,#059669 0%,#047857 100%);box-shadow:0 6px 16px #10b98159}.express-badge{color:#047857;letter-spacing:.02em;background:#10b9811f;border:1px solid #10b9814d;border-radius:9999px;align-items:center;gap:.35rem;padding:.25rem .65rem;font-size:.75rem;font-weight:700;display:inline-flex}.bulk-upload-split-layout{grid-template-columns:1fr 1.25fr;align-items:start;gap:2rem;display:grid}.bulk-upload-left-panel{background:#fff;border:1px solid #dfe7f1;border-radius:16px;flex-direction:column;gap:1.25rem;padding:1.25rem;display:flex;box-shadow:0 1px 2px #0f172a08}.bulk-upload-right-panel{background:#fff;border:1px solid #dfe7f1;border-radius:16px;flex-direction:column;justify-content:flex-start;min-width:0;min-height:480px;max-height:560px;padding:1.25rem;display:flex;overflow:hidden;box-shadow:0 1px 2px #0f172a08}.bulk-upload-left-panel>div:first-child{background:#f8faff!important;border-color:#d8e2ef!important;border-radius:12px!important}.dropzones-horizontal-container{border-top:1px solid #eef2f7;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;padding-top:.25rem;display:grid}.dropzone.compact{text-align:center;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:.4rem;height:175px;padding:1.25rem .75rem;display:flex}.dropzone.compact .dropzone-icon{margin:0}.dropzone.compact .dropzone-title{white-space:nowrap;font-size:.85rem;font-weight:750}.dropzone.compact .dropzone-desc{color:var(--text-muted);font-size:.7rem;line-height:1.3}.bulk-upload-right-panel>div{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.bulk-upload-right-panel .log-table-container{flex:1;min-height:0;max-height:420px;overflow-y:auto}.bulk-upload-right-panel>div:first-child{border-radius:14px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spin{animation:1s linear infinite spin}.dropzone.active{border-color:hsl(var(--success));background:var(--success-bg)}.dropzone.active .dropzone-icon,.dropzone.active .dropzone-title{color:hsl(var(--success))}.dropzone.active-full{background:#2563eb0a!important;border-color:#2563eb!important}.dropzone.active-full .dropzone-icon{color:#2563eb!important}.dropzone.active-full .dropzone-title{color:#1d4ed8!important}.dropzone.disabled,.dropzone.blocked{opacity:.5;cursor:not-allowed!important;background:#f8fafc!important;border-style:dashed!important;border-color:#cbd5e1!important}.dropzone.disabled *,.dropzone.blocked *{cursor:not-allowed!important}.dropzone-clear-btn{color:#64748b;cursor:pointer;z-index:10;background:#fff;border:1px solid #cbd5e1;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;transition:all .15s;display:flex;position:absolute;top:8px;right:8px;box-shadow:0 1px 3px #0000001a}.dropzone-clear-btn:hover{color:#fff;background:#ef4444;border-color:#dc2626;transform:scale(1.08)}.full-badge{color:#1d4ed8;letter-spacing:.02em;background:#2563eb1a;border:1px solid #2563eb40;border-radius:9999px;align-items:center;gap:.35rem;padding:.25rem .65rem;font-size:.75rem;font-weight:700;display:inline-flex}.btn-primary-blue{color:#fff!important;background:linear-gradient(135deg,#2563eb 0%,#1d4ed8 100%)!important;border-color:#1e40af!important;box-shadow:0 4px 12px #2563eb40!important}.btn-primary-blue:hover:not(:disabled){background:linear-gradient(135deg,#1d4ed8 0%,#1e40af 100%)!important;box-shadow:0 6px 16px #2563eb59!important}@media (width<=992px){.bulk-upload-split-layout{grid-template-columns:1fr;gap:1.5rem}.bulk-upload-left-panel{border-right:none;border-bottom:1px solid var(--border-color);padding-bottom:1.5rem;padding-right:0}}.form-section-card{border:1px solid var(--border-color);box-shadow:var(--shadow-sm);background:#ffffff03;border-radius:18px;margin-bottom:1.5rem;padding:1.5rem;transition:all .3s cubic-bezier(.4,0,.2,1)}[data-theme=dark] .form-section-card{background:#0a0f1e4d}.form-section-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.form-section-header{text-transform:uppercase;letter-spacing:.08em;align-items:center;gap:.65rem;margin-bottom:1.25rem;font-size:.8rem;font-weight:800;display:flex}.form-section-header.primary{color:hsl(var(--primary))}.form-section-header.accent{color:hsl(var(--accent))}.form-section-header.success{color:hsl(var(--success))}.form-section-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem;display:grid}.form-section-grid-full{grid-column:span 2}.manual-upload-modal{background:#fff;border:1px solid #d9e5f4;border-radius:8px;width:min(1180px,100vw - 48px);max-width:none;max-height:min(900px,100vh - 48px);box-shadow:0 24px 70px #0f1b2d38}.manual-upload-header{background:#fbfdff;border-bottom:1px solid #dce6f2;min-height:64px;padding:16px 18px}.manual-upload-header h3{color:#071632;letter-spacing:0;align-items:center;gap:.65rem;margin:0;font-size:1.2rem;font-weight:800;display:flex}.manual-upload-title-dot{background:#2f7df0;border-radius:50%;flex:none;width:12px;height:12px}.manual-upload-header .btn-icon{color:#102033;background:#fff;border:1px solid #cfd9e6;border-radius:8px;width:34px;height:34px}.manual-upload-body{background:#fff;padding:18px 20px 20px}.manual-form-section{background:linear-gradient(135deg,#f8fbff 0%,#fff 72%);border-color:#dfe8f3;border-radius:8px;margin-bottom:16px;padding:18px;box-shadow:0 10px 26px #0f1b2d0f}.manual-form-section:hover{transform:none;box-shadow:0 14px 34px #0f1b2d17}.manual-form-section .form-section-header{color:#2563eb;letter-spacing:.08em;margin-bottom:18px;font-size:.78rem;font-weight:800}.manual-form-section .form-label{color:#42566d;letter-spacing:.06em;font-size:.78rem;font-weight:800}.manual-form-section .form-control{color:#071632;min-height:44px;box-shadow:none;background:#fff;border:1px solid #dfe8f3;border-radius:8px;font-size:.93rem;font-weight:650}.manual-form-section .form-control::placeholder{color:#7b8795}.manual-form-section .form-control:focus{border-color:#2f7df0;box-shadow:0 0 0 3px #2f7df01f}.manual-section-header-actions{justify-content:space-between;align-items:center;gap:12px;display:flex}.manual-section-header-actions>div{align-items:center;gap:.45rem;display:flex}.manual-add-compat{color:#2f7df0;cursor:pointer;background:#2f7df01a;border:0;border-radius:999px;justify-content:center;align-items:center;width:34px;height:34px;display:inline-flex}.manual-compat-list{flex-direction:column;gap:14px;width:100%;display:flex}.manual-compat-list>*{width:100%}.manual-compat-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:14px;display:grid}.manual-compat-grid>.manual-compat-card:only-child{grid-column:1/-1}.manual-compat-card{background:#fff;border:1px solid #dfe8f3;border-radius:8px;width:100%;padding:14px}.manual-compat-card .form-section-grid{grid-template-columns:1fr}.manual-compat-card .form-section-grid-full{grid-column:span 1}.manual-compat-card-header{color:#64748b;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;font-size:.88rem;display:flex}.manual-remove-compat{color:#dc2626;cursor:pointer;background:#dc26261a;border:0;border-radius:999px;justify-content:center;align-items:center;width:30px;height:30px;display:inline-flex}.manual-universal-card{background:#fff;border:1px solid #dfe8f3;border-radius:8px;flex-direction:column;gap:8px;padding:12px 14px;display:flex}.manual-universal-card.is-active{background:#2f7df00d;border-color:#2f7df066}.manual-universal-title{align-items:center;gap:10px;display:flex}.manual-universal-title strong{color:#1e293b;font-size:.92rem}.manual-universal-icon{color:#2f7df0;background:#2f7df01f;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:inline-flex}.manual-universal-desc{color:#64748b;margin:0;font-size:.8rem}.manual-universal-switch-row{cursor:pointer;align-items:center;gap:10px;display:flex;position:relative}.manual-universal-switch-row input{opacity:0;cursor:pointer;width:44px;height:24px;margin:0;position:absolute}.manual-universal-slider{background:#cbd5e1;border-radius:999px;flex-shrink:0;width:44px;height:24px;transition:background .15s;position:relative}.manual-universal-slider:before{content:"";background:#fff;border-radius:999px;width:20px;height:20px;transition:transform .15s;position:absolute;top:2px;left:2px}.manual-universal-switch-row input:checked+.manual-universal-slider{background:#2f7df0}.manual-universal-switch-row input:checked+.manual-universal-slider:before{transform:translate(20px)}.manual-universal-switch-label{color:#64748b;font-size:.8rem;font-weight:600}.manual-universal-badge{color:#2f7df0;background:#2f7df01f;border-radius:6px;align-items:center;gap:6px;margin-top:10px;padding:8px 10px;font-size:.78rem;font-weight:600;display:flex}.manual-chassis-field{margin-top:2px}.manual-photo-area{gap:12px;display:grid}.manual-photo-grid{grid-template-columns:repeat(4,80px);gap:10px;display:grid}.manual-photo-preview,.manual-photo-empty{border-radius:8px;width:80px;height:80px;position:relative;overflow:hidden}.manual-photo-preview{background:#fff;border:1px solid #dfe8f3}.manual-photo-preview img{object-fit:cover;width:100%;height:100%}.manual-photo-preview button{color:#dc2626;cursor:pointer;background:#fff;border:0;border-radius:999px;justify-content:center;align-items:center;width:22px;height:22px;display:inline-flex;position:absolute;top:5px;right:5px;box-shadow:0 4px 12px #0f1b2d2e}.manual-photo-empty{color:#94a3b8;background:#f8fbff;border:2px dashed #cbd5e1;justify-content:center;align-items:center;display:flex}.form-control-file.disabled{opacity:.55;cursor:not-allowed}.manual-upload-footer{background:#fbfdff;border-top:1px solid #dce6f2;padding:14px 18px}.manual-radio-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:16px;display:grid}.manual-radio-card{color:#42566d;text-align:left;cursor:pointer;background:#fff;border:1px solid #dfe8f3;border-radius:8px;gap:4px;min-height:64px;padding:12px 14px;display:grid}.manual-radio-card strong{color:#071632;font-size:.9rem}.manual-radio-card span{color:#64748b;font-size:.78rem;line-height:1.35}.manual-radio-card.active{background:#2f7df014;border-color:#2f7df0}.manual-radio-card:disabled{opacity:.55;cursor:not-allowed}.manual-pricing-helper{background:#f8fbff;border:1px solid #dfe8f3;border-radius:8px;gap:8px;margin-top:14px;padding:12px;display:grid}.manual-pricing-row{color:#64748b;justify-content:space-between;align-items:center;gap:12px;font-size:.84rem;display:flex}.manual-pricing-fee{color:#dc2626}.manual-pricing-earnings{color:#2563eb;font-size:1rem}.manual-suggested-price{background:#2f7df012;border:1px solid #2f7df033;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;margin-top:4px;padding:10px;display:flex}.manual-suggested-price div{color:#64748b;gap:3px;font-size:.82rem;display:grid}.manual-suggested-price strong{color:#071632;font-size:.95rem}.manual-suggested-price button{color:#fff;cursor:pointer;background:#2f7df0;border:0;border-radius:6px;min-height:32px;padding:6px 12px;font-weight:800}.manual-chip-row{flex-wrap:wrap;gap:10px;display:flex}.manual-chip{color:#42566d;cursor:pointer;background:#fff;border:1px solid #dfe8f3;border-radius:999px;min-height:36px;padding:8px 14px;font-weight:700}.manual-chip.active{color:#2563eb;background:#2f7df01a;border-color:#2f7df0}.manual-helper-text{color:#64748b;background:#f8fbff;border:1px solid #dfe8f3;border-radius:8px;align-items:center;min-height:44px;padding:0 12px;font-size:.85rem;font-weight:650;display:flex}.manual-multi-select{position:relative}.manual-multi-trigger{color:#071632;text-align:left;cursor:pointer;background:#fff;border:1px solid #dfe8f3;border-radius:8px;justify-content:space-between;align-items:center;gap:10px;width:100%;min-height:44px;padding:0 12px;font-size:.9rem;font-weight:650;display:flex}.manual-multi-trigger span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.manual-multi-trigger.active{border-color:#2f7df0;box-shadow:0 0 0 3px #2f7df01f}.manual-multi-menu{z-index:30;background:#fff;border:1px solid #d9e5f4;border-radius:8px;max-height:260px;padding:6px;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow-y:auto;box-shadow:0 18px 42px #0f1b2d2e}.manual-select-all,.manual-option-row{color:#42566d;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:6px;justify-content:space-between;align-items:center;gap:10px;width:100%;min-height:36px;padding:8px 10px;font-size:.86rem;font-weight:700;display:flex}.manual-select-all{color:#1d4ed8;background:#2f7df014;margin-bottom:4px}.manual-option-row:hover,.manual-option-row.active{color:#1d4ed8;background:#2f7df01a}.manual-multi-actions{background:#fff;border-top:1px solid #e2e8f0;margin-top:6px;padding:8px 6px 4px;position:sticky;bottom:-6px}.manual-multi-confirm{background:hsl(var(--primary));color:#fff;cursor:pointer;border:none;border-radius:6px;justify-content:center;align-items:center;gap:6px;width:100%;padding:8px 12px;font-size:.82rem;font-weight:700;transition:background .15s;display:flex}.manual-multi-confirm:hover{background:hsl(var(--primary-hover,217 91% 45%))}.manual-counter{color:#7b8795;align-self:flex-end;font-size:.78rem;font-weight:650}@media (width<=760px){.manual-upload-modal{width:calc(100vw - 24px)}.manual-radio-row{grid-template-columns:1fr}.manual-upload-body,.manual-form-section{padding:14px}.manual-form-section .form-section-grid{grid-template-columns:1fr}.manual-form-section .form-section-grid-full{grid-column:span 1}.manual-compat-grid{grid-template-columns:1fr}}.form-control.focus-primary:focus{border-color:hsl(var(--primary));box-shadow:var(--glow-primary);background:var(--bg-sidebar)}.form-control.focus-accent:focus{border-color:hsl(var(--accent));box-shadow:var(--glow-accent);background:var(--bg-sidebar)}.form-control.focus-success:focus{border-color:hsl(var(--success));background:var(--bg-sidebar);box-shadow:0 0 15px #10b98140}.form-control-file{background:var(--bg-card);border:1px dashed var(--border-color);cursor:pointer;color:var(--text-secondary);border-radius:12px;justify-content:center;align-items:center;padding:.75rem 1.25rem;transition:all .3s;display:flex}.form-control-file:hover{border-color:hsl(var(--primary));color:hsl(var(--primary));background:#8b5cf60d}.form-control-file.disabled{opacity:.5!important;cursor:not-allowed!important;pointer-events:none!important;background:var(--bg-app)!important;color:var(--text-muted)!important;border-style:solid!important}.actions-cell{white-space:nowrap;justify-content:flex-start;align-items:center;gap:6px;display:flex}.action-btn{border:1px solid var(--border-color,#e2e8f0);background:var(--bg-card,#fff);width:34px;height:34px;color:var(--text-secondary,#64748b);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;padding:0;transition:all .2s cubic-bezier(.4,0,.2,1);display:inline-flex}.action-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #0f172a14}.action-btn-edit:hover{color:#2563eb;background:#eff6ff;border-color:#93c5fd}.action-btn-pause:hover{color:#ea580c;background:#fff7ed;border-color:#fed7aa}.action-btn-play:hover{color:#16a34a;background:#f0fdf4;border-color:#bbf7d0}.action-btn-danger:hover{color:#dc2626;background:#fef2f2;border-color:#fca5a5}.inventory-view-toolbar{justify-content:space-between;align-items:center;gap:1rem;display:flex}.inventory-view-toolbar>div:first-child{gap:.15rem;display:grid}.inventory-view-toolbar strong{color:var(--text-primary);font-size:.9rem}.inventory-view-toolbar span{color:var(--text-secondary);font-size:.76rem}.inventory-order-select{color:var(--text-secondary);align-items:center;gap:.45rem;margin-left:auto;font-size:.78rem;font-weight:700;display:inline-flex}.inventory-order-select select{border:1px solid var(--border-color);background:var(--bg-card);color:var(--text-primary);cursor:pointer;border-radius:9px;padding:.45rem .6rem;font-size:.78rem;font-weight:700}.inventory-group-row th{text-align:left;letter-spacing:.03em;text-transform:uppercase;color:#52627a;background:var(--bg-app);border-top:1px solid var(--border-color);border-bottom:1px solid var(--border-color);padding:.6rem .9rem;font-size:.74rem;font-weight:800;position:sticky;left:0}.inventory-group-row.is-top-vencido th{color:#b42318;background:#fff5f4;box-shadow:inset 3px 0 #dc2626}.inventory-group-row.is-top-vigente th{color:#8a5c00;background:#fffaed;box-shadow:inset 3px 0 #d3a32d}.inventory-group-row.is-stock-bajo th{color:#8a5c00;background:#fffdf5;box-shadow:inset 3px 0 #eab308}.inventory-group-row.is-atencion th{color:#9a3412;background:#fff8f1;box-shadow:inset 3px 0 #ea8c55}.inventory-group-heading{letter-spacing:.03em;text-transform:uppercase;color:#52627a;background:var(--bg-app);border-radius:9px;grid-column:1/-1;margin:.5rem 0 -.2rem;padding:.5rem .75rem;font-size:.74rem;font-weight:800}.inventory-group-heading.is-top-vencido{color:#b42318;background:#fff5f4;box-shadow:inset 3px 0 #dc2626}.inventory-group-heading.is-top-vigente{color:#8a5c00;background:#fffaed;box-shadow:inset 3px 0 #d3a32d}.inventory-group-heading.is-stock-bajo{color:#8a5c00;background:#fffdf5;box-shadow:inset 3px 0 #eab308}.inventory-group-heading.is-atencion{color:#9a3412;background:#fff8f1;box-shadow:inset 3px 0 #ea8c55}.inventory-view-switch{border:1px solid var(--border-color);background:var(--bg-card);border-radius:10px;gap:.2rem;padding:.25rem;display:inline-flex}.inventory-view-switch button{color:var(--text-secondary);cursor:pointer;background:0 0;border:0;border-radius:7px;align-items:center;gap:.35rem;padding:.42rem .62rem;font-size:.78rem;font-weight:700;display:inline-flex}.inventory-view-switch button.active{background:hsl(var(--primary));color:#fff;box-shadow:0 2px 5px #4f46e533}.inventory-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;display:grid}.inventory-grid-card{border:1px solid var(--border-color);background:var(--bg-card);border-radius:16px;flex-direction:column;min-width:0;transition:transform .18s,box-shadow .18s,border-color .18s;display:flex;overflow:hidden;box-shadow:0 4px 14px #0f172a0d}.inventory-grid-card:hover{border-color:#8b5cf659;transform:translateY(-3px);box-shadow:0 10px 22px #0f172a1a}.inventory-grid-card.is-top{border-color:#e4c36e;box-shadow:0 5px 16px #bf8f1324}.inventory-grid-card.is-paused{opacity:.72}.inventory-grid-image{background:#f5f7fa;height:142px;position:relative;overflow:hidden}.inventory-grid-image>img{object-fit:cover;width:100%;height:100%;display:block}.grid-top-badge{color:#815800;background:#fffaebf0;border-radius:999px;align-items:center;gap:.18rem;max-width:calc(100% - .9rem);padding:.15rem .35rem .15rem .18rem;font-size:.62rem;font-weight:800;display:inline-flex;position:absolute;top:.45rem;left:.45rem;box-shadow:0 2px 6px #0f172a21}.grid-top-badge.expired{color:#64748b;background:#f1f5f9f2}.grid-top-badge img{object-fit:contain;width:22px;height:22px}.grid-top-badge span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.grid-paused{color:#fff;background:#475569e0;border-radius:999px;padding:.22rem .45rem;font-size:.65rem;font-weight:750;position:absolute;bottom:.5rem;right:.5rem}.inventory-grid-content{gap:.35rem;padding:.8rem .85rem .7rem;display:grid}.grid-sku{color:hsl(var(--primary));font-family:var(--font-mono);text-overflow:ellipsis;white-space:nowrap;font-size:.67rem;font-weight:700;overflow:hidden}.inventory-grid-content h3{min-height:2.35em;color:var(--text-primary);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:.86rem;line-height:1.2;display:-webkit-box;overflow:hidden}.grid-details{color:var(--text-secondary);justify-content:space-between;align-items:baseline;gap:.4rem;font-size:.72rem;display:flex}.grid-details strong{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;font-size:.84rem;overflow:hidden}.inventory-grid-actions{border-top:1px solid var(--border-color);grid-template-columns:repeat(4,1fr);gap:.35rem;margin-top:auto;padding:.65rem .85rem .8rem;display:grid}.grid-action{border:1px solid var(--border-color);background:var(--bg-card);min-height:32px;color:var(--text-secondary);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;display:inline-flex}.grid-action:hover{color:hsl(var(--primary));background:#f1f5f9}.grid-action-top{color:#a27212}.grid-action-top:hover{color:#8a5b00;background:#fff9e7;border-color:#eed273}.grid-action-danger:hover{color:#dc2626;background:#fef2f2;border-color:#fca5a5}.inventory-grid-empty{color:var(--text-secondary);justify-items:center;gap:.55rem;padding:3rem;display:grid}.inventory-grid-empty h3,.inventory-grid-empty p{margin:0}@media (width<=1280px){.inventory-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=900px){.inventory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=560px){.inventory-view-toolbar{flex-direction:column;align-items:flex-start}.inventory-order-select{margin-left:0}.inventory-grid{grid-template-columns:1fr}.inventory-grid-image{height:180px}}.mapper-celda-edit{background:#4f46e50d;border:1px dashed #4f46e573;border-radius:6px;width:100%;min-width:120px;padding:.25rem .4rem;font-size:.82rem;line-height:1.3}.mapper-celda-edit:focus{background:#fff;border-style:solid}.mapper-preview.revisada td:has(.mapper-celda-edit){padding:.2rem .3rem}.mapper-celda-edit{background:0 0;border-color:#0000}.mapper-celda-edit:hover{background:#fff;border-color:#94a3b899}.mapper-celda-edit.destacada{background:#4f46e50d;border:1px dashed #4f46e573}.mapper-celda-edit.con-error{background:#dc26260f;border:1px solid #dc2626}.mapper-celda-error{color:#b91c1c;margin-top:.2rem;font-size:.72rem;display:block}.mapper-celda-texto{cursor:text;border:1px solid #0000;border-radius:6px;padding:.25rem .4rem;display:block}.mapper-celda-texto:hover,.mapper-celda-texto:focus{background:#fff;border-color:#94a3b899;outline:none}.mapper-quitar{color:#b91c1c;cursor:pointer;background:0 0;border:1px solid #dc262659;border-radius:6px;padding:.2rem .55rem;font-size:.75rem}.mapper-quitar:hover{background:#dc262614}
