@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";:root{--bg-app: #F1F5F9;--bg-surface: #FFFFFF;--bg-raised: #F8FAFC;--bg-tertiary: #EFF6FF;--border: #E2E8F0;--border-strong:#CBD5E1;--accent-primary: #2563EB;--accent-hover: #1D4ED8;--accent-primary-rgb: 37, 99, 235;--text-primary: #1E293B;--text-secondary: #64748B;--text-muted: #94A3B8;--success: #16A34A;--success-bg: #F0FDF4;--success-text: #16A34A;--danger: #DC2626;--danger-bg: #FEF2F2;--danger-text: #DC2626;--warning: #D97706;--warning-bg: #FFFBEB;--warning-text: #D97706;--bg-primary: #F1F5F9;--primary-color: #2563EB;--success-color: #16A34A;--danger-color: #DC2626;--warning-color: #D97706;--surface-color: #FFFFFF;--bg-color: #F1F5F9;--bg-secondary: #FFFFFF;--text-color: #1E293B;--border-color: #E2E8F0;--glass-border: #E2E8F0;--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--radius-full: 9999px;--shadow-sm: 0 1px 3px rgba(0,0,0,.06);--shadow-md: 0 2px 8px rgba(0,0,0,.08);--shadow-lg: 0 4px 16px rgba(0,0,0,.1);--sidebar-w: 220px;--transition-fast: .12s ease;--transition-normal: .2s ease;--transition-bounce: .2s ease}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.875rem;line-height:1.5;background-color:var(--bg-app);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1{font-size:1.25rem;font-weight:700;letter-spacing:-.01em;color:var(--text-primary)}h2{font-size:1rem;font-weight:600;color:var(--text-primary)}h3{font-size:.9375rem;font-weight:600;color:var(--text-primary)}h4{font-size:.875rem;font-weight:600;color:var(--text-primary)}.app-container{display:flex;height:100vh;overflow:hidden;background-color:var(--bg-app)}.main-content{flex:1;display:flex;flex-direction:column;overflow-y:auto;padding:1.25rem 1.5rem;background:var(--bg-app);min-width:0}.header-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.glass-panel{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.375rem;padding:.4rem .875rem;border-radius:var(--radius-md);font-family:inherit;font-weight:500;font-size:.8125rem;cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast);border:1px solid transparent;text-decoration:none;white-space:nowrap;line-height:1.4}.btn-sm{padding:.25rem .625rem;font-size:.75rem}.btn-primary{background:var(--accent-primary);color:#fff;border-color:var(--accent-primary)}.btn-primary:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.btn-primary:active{opacity:.9}.btn-ghost{background:transparent;color:var(--text-secondary);border-color:var(--border)}.btn-ghost:hover{background:var(--bg-raised);color:var(--text-primary)}.btn-danger{background:var(--danger-bg);color:var(--danger);border-color:transparent}.btn-danger:hover{background:#fee2e2}.input-group{display:flex;flex-direction:column;gap:.3rem;margin-bottom:.875rem}.input-label{font-size:.75rem;font-weight:500;color:var(--text-secondary)}.input-field{width:100%;background:var(--bg-surface);border:1px solid var(--border);color:var(--text-primary);padding:.4375rem .625rem;border-radius:var(--radius-md);font-size:.8125rem;font-family:inherit;transition:border-color var(--transition-fast),box-shadow var(--transition-fast);line-height:1.4}.input-field:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 2px rgba(var(--accent-primary-rgb),.15)}.input-field::placeholder{color:var(--text-muted)}.input-field:disabled{background:var(--bg-raised);opacity:.7;cursor:not-allowed}select.input-field{cursor:pointer}.badge{display:inline-flex;align-items:center;padding:.125rem .5rem;border-radius:var(--radius-full);font-size:.6875rem;font-weight:600;letter-spacing:.03em;text-transform:uppercase;white-space:nowrap}.badge-success{background:var(--success-bg);color:var(--success)}.badge-danger{background:var(--danger-bg);color:var(--danger)}.badge-warning{background:var(--warning-bg);color:var(--warning)}.badge-primary{background:#eff6ff;color:var(--accent-primary)}.badge-neutral{background:#f1f5f9;color:var(--text-secondary)}.table-container{width:100%;overflow-x:auto;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-surface)}.table{width:100%;border-collapse:collapse;text-align:left;font-size:.8125rem}.table th{padding:.5rem .75rem;background:var(--bg-raised);color:var(--text-secondary);font-weight:600;font-size:.6875rem;text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--border);white-space:nowrap}.table td{padding:.5rem .75rem;border-bottom:1px solid var(--border);color:var(--text-primary);vertical-align:middle}.table tr:last-child td{border-bottom:none}.table tbody tr:hover td{background:var(--bg-raised)}.table tfoot td{padding:.5rem .75rem;background:var(--bg-raised);border-top:1px solid var(--border-strong);font-weight:600;font-size:.8125rem}.page-container{width:100%}.page-header{margin-bottom:1rem}.page-title{font-size:1.125rem;font-weight:700;color:var(--text-primary)}.page-description{font-size:.8125rem;color:var(--text-secondary);margin-top:.125rem}.mb-4{margin-bottom:1rem}.mt-4{margin-top:1rem}.text-muted{color:var(--text-muted)}.text-right{text-align:right}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}@keyframes fadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.animate-in{animation:fadeIn .18s ease forwards}.stagger-1{animation-delay:40ms}.stagger-2{animation-delay:80ms}.stagger-3{animation-delay:.12s}.switch{position:relative;display:inline-block;width:36px;height:20px;flex-shrink:0}.switch input{opacity:0;width:0;height:0}.slider{position:absolute;cursor:pointer;inset:0;background-color:var(--border-strong);border-radius:20px;transition:background-color .2s}.slider:before{content:"";position:absolute;height:14px;width:14px;left:3px;bottom:3px;background:#fff;border-radius:50%;transition:transform .2s}input:checked+.slider{background-color:var(--accent-primary)}input:checked+.slider:before{transform:translate(16px)}.data-table{width:100%;border-collapse:collapse;font-size:.8125rem}.data-table th{padding:.4375rem .625rem;background:var(--bg-raised);color:var(--text-secondary);font-weight:600;font-size:.6875rem;text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--border);white-space:nowrap}.data-table td{padding:.4375rem .625rem;border-bottom:1px solid var(--border);vertical-align:middle}.data-table tr:last-child td{border-bottom:none}.data-table tbody tr:hover td{background:var(--bg-raised)}.data-table tfoot td{background:var(--bg-raised);border-top:1px solid var(--border-strong);font-weight:600;padding:.4375rem .625rem}.text-truncate{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:inline-block;max-width:100%}@media(max-width:768px){.header-top{flex-direction:column;align-items:flex-start;gap:.5rem}.table th,.table td,.data-table th,.data-table td{padding:.375rem .5rem;font-size:.75rem}.tabs-container{flex-wrap:wrap}.modal-content{width:calc(100vw - 1.5rem);max-width:100%;max-height:90dvh;overflow-y:auto}.header-top .btn{font-size:.75rem;padding:.3rem .625rem}}.app-container{display:flex;height:100vh;overflow:hidden;background:var(--bg-app)}.sidebar{width:var(--sidebar-w);height:100vh;display:flex;flex-direction:column;background:var(--bg-surface);border-right:1px solid var(--border);flex-shrink:0;overflow:hidden}.sidebar-header{display:flex;align-items:center;gap:.625rem;padding:0 1rem;height:52px;border-bottom:1px solid var(--border);flex-shrink:0}.logo-glow{width:24px;height:24px;border-radius:var(--radius-md);background:var(--accent-primary);flex-shrink:0}.sidebar-header h2{font-size:.9375rem;font-weight:700;color:var(--text-primary);letter-spacing:-.01em;margin:0}.sidebar-nav{flex:1;overflow-y:auto;padding:.5rem 0}.sidebar-nav::-webkit-scrollbar{width:3px}.sidebar-nav::-webkit-scrollbar-track{background:transparent}.sidebar-nav::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:3px}.nav-group-label{padding:.75rem 1rem .25rem;font-size:.625rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);display:flex;align-items:center;justify-content:space-between;cursor:pointer;-webkit-user-select:none;user-select:none;transition:color var(--transition-fast)}.nav-group-label:hover{color:var(--text-secondary)}.nav-group-arrow{font-size:.5rem;opacity:.7}.nav-items{margin-bottom:.25rem}.nav-link{display:flex;align-items:center;padding:.375rem 1rem;margin:0 .375rem;border-radius:var(--radius-md);color:var(--text-secondary);text-decoration:none;font-size:.8125rem;font-weight:400;transition:background var(--transition-fast),color var(--transition-fast);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nav-link:hover{background:var(--bg-raised);color:var(--text-primary)}.nav-link.active{background:var(--bg-tertiary);color:var(--accent-primary);font-weight:600}.sidebar-footer{padding:.75rem 1rem;border-top:1px solid var(--border);flex-shrink:0}.user-info{display:flex;align-items:center;gap:.625rem;margin-bottom:.5rem}.user-avatar{width:30px;height:30px;border-radius:var(--radius-full);background:var(--bg-tertiary);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.75rem;color:var(--accent-primary);flex-shrink:0}.user-meta{display:flex;flex-direction:column;min-width:0}.user-name{font-size:.8125rem;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-role{font-size:.625rem}.btn-logout{display:flex;align-items:center;justify-content:center;width:100%;padding:.375rem;border-radius:var(--radius-md);border:1px solid var(--border);background:transparent;color:var(--text-secondary);font-size:.75rem;font-family:inherit;cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast)}.btn-logout:hover{background:var(--danger-bg);color:var(--danger);border-color:transparent}.main-content{flex:1;height:100vh;overflow-y:auto;padding:1.25rem 1.5rem;background:var(--bg-app);min-width:0;display:flex;flex-direction:column}.mobile-header{display:none;position:sticky;top:0;z-index:30;padding:.625rem 1rem;background:var(--bg-surface);border-bottom:1px solid var(--border);align-items:center;justify-content:space-between;flex-shrink:0;box-shadow:0 1px 3px #0000000f;margin-bottom:.75rem}.menu-toggle{padding:.375rem .75rem;font-size:.875rem;min-height:36px}.logo-text{font-size:.9375rem;font-weight:700;color:var(--text-primary)}.mobile-overlay{display:none;position:fixed;inset:0;background:#0f172a66;z-index:40;cursor:pointer}@media(max-width:768px){.mobile-header{display:flex}.sidebar{position:fixed;top:0;left:0;bottom:0;width:260px;transform:translate(-100%);z-index:50;transition:transform var(--transition-normal);box-shadow:var(--shadow-lg)}.sidebar.mobile-open{transform:translate(0)}.mobile-overlay{display:block}.main-content{height:100vh;overflow-y:auto;padding:0 .75rem 3rem}}.login-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background-color:var(--bg-app);position:relative;overflow:hidden}.blob{position:absolute;filter:blur(70px);z-index:0;border-radius:50%;animation:float 12s infinite ease-in-out alternate;pointer-events:none}.blob-1{width:320px;height:320px;background:#2563eb1f;top:-80px;left:-80px}.blob-2{width:400px;height:400px;background:#0ea5e914;bottom:-100px;right:-80px;animation-delay:-6s}.login-card{width:100%;max-width:380px;padding:2rem;position:relative;z-index:10;opacity:0;transform:translateY(12px);animation:popupFade .35s ease forwards}@keyframes popupFade{to{transform:translateY(0);opacity:1}}@keyframes float{0%{transform:translate(0) scale(1)}to{transform:translate(20px,-30px) scale(1.08)}}.text-center{text-align:center}.mx-auto{margin-left:auto;margin-right:auto}.mb-4{margin-bottom:1.25rem}.mt-4{margin-top:1.25rem}.dashboard-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:1rem;grid-template-areas:"gp         gp         gp         gp         gc          gc          gc          gc          gpv         gpv         gpv         gpv" "pedido     pedido     pedido     pedido     pedido      pedido      pedido      pedido      pedido      pedido      pedido      pedido" "cajas      cajas      cajas      cajas      inversiones inversiones inversiones inversiones prestamos   prestamos   prestamos   prestamos" "cxc        cxc        cxc        cxc        cxc         cxc         cxp         cxp         cxp         cxp         cxp         cxp" "inv        inv        inv        inv        inv         inv         ranking     ranking     ranking     ranking     ranking     ranking" "activos    activos    activos    activos    activos     activos     activos     activos     activos     activos     activos     activos";margin-top:.75rem}@media(max-width:1200px){.dashboard-grid{grid-template-areas:"gp         gp         gp         gp         gp         gp         gc          gc          gc          gc          gc          gc" "gpv        gpv        gpv        gpv        gpv        gpv        gpv         gpv         gpv         gpv         gpv         gpv" "pedido     pedido     pedido     pedido     pedido     pedido     pedido      pedido      pedido      pedido      pedido      pedido" "cajas      cajas      cajas      cajas      cajas      cajas      inversiones inversiones inversiones inversiones inversiones inversiones" "prestamos  prestamos  prestamos  prestamos  prestamos  prestamos  cxc         cxc         cxc         cxc         cxc         cxc" "cxp        cxp        cxp        cxp        cxp        cxp        inv         inv         inv         inv         inv         inv" "ranking    ranking    ranking    ranking    ranking    ranking    activos     activos     activos     activos     activos     activos"}}@media(max-width:768px){.dashboard-grid{grid-template-columns:1fr;gap:.625rem;margin-top:.5rem;grid-template-areas:"gp" "gc" "gpv" "pedido" "cajas" "inversiones" "prestamos" "cxc" "cxp" "inv" "ranking" "activos"}.dash-card{padding:.75rem}.bar-label{width:85px;font-size:.6875rem}.bar-val{width:46px;font-size:.625rem}.bar-track{height:12px}.pedido-hide-mobile{display:none}.cov-badge{padding:.1875rem .5rem;font-size:.75rem}}.page-container.dashboard-root{padding:1rem;max-width:1600px;margin:0 auto}@media(max-width:768px){.page-container.dashboard-root{padding:0;margin:0;max-width:100%}}.dash-card{padding:1rem;border-radius:var(--radius-lg);background:var(--bg-surface);border:1px solid var(--border);display:flex;flex-direction:column;min-height:0;min-width:0;overflow:hidden}.dash-card h2{font-size:.8125rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;margin-bottom:.75rem;padding-bottom:.5rem;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between}.dash-table-wrapper{flex:1;overflow-x:auto}.small-table th,.small-table td{padding:.4375rem .625rem;font-size:.8125rem}.small-table tfoot td{background:var(--bg-raised);border-top:1px solid var(--border-strong);font-weight:600;padding:.4375rem .625rem}.text-truncate{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:inline-block}.bar-list{display:flex;flex-direction:column;gap:.4375rem}.bar-row{display:flex;align-items:center;gap:.5rem}.bar-label{width:110px;font-size:.75rem;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex-shrink:0}.bar-track{flex:1;background:var(--bg-raised);border-radius:2px;height:14px;overflow:hidden}.bar-fill{height:100%;border-radius:2px;transition:width .5s ease;min-width:2px}.bar-val{width:58px;text-align:right;font-size:.6875rem;font-weight:600;color:var(--text-secondary);flex-shrink:0}.cov-badge{display:inline-block;padding:.1rem .375rem;border-radius:var(--radius-sm);font-size:.6875rem;font-weight:600}.cov-0{background:var(--danger-bg);color:var(--danger-text)}.cov-1{background:var(--warning-bg);color:var(--warning)}.cov-ok{background:var(--success-bg);color:var(--success)}.catalog-page{display:flex;flex-direction:column;height:100%}.tabs-container{display:flex;flex-wrap:wrap;gap:.25rem;border-bottom:1px solid var(--border);padding-bottom:.75rem;margin-bottom:.875rem}.tab-btn{background:transparent;border:1px solid transparent;color:var(--text-secondary);font-size:.8125rem;font-weight:500;font-family:inherit;padding:.3125rem .75rem;cursor:pointer;border-radius:var(--radius-md);transition:background var(--transition-fast),color var(--transition-fast)}.tab-btn:hover{background:var(--bg-raised);color:var(--text-primary)}.tab-btn.active{background:var(--bg-tertiary);color:var(--accent-primary);font-weight:600;border-color:var(--accent-primary)}.p-0{padding:0}.loading-state{padding:2rem;text-align:center;color:var(--text-secondary);font-size:.8125rem}.modal-overlay{position:fixed;inset:0;background:#0f172a73;z-index:100;display:flex;align-items:center;justify-content:center;padding:1rem}.modal-content{width:100%;max-width:480px;padding:1.25rem 1.5rem;background:var(--bg-surface);border:1px solid var(--border);box-shadow:var(--shadow-lg);border-radius:var(--radius-lg)}.modal-content h3{margin-bottom:1rem;color:var(--text-primary);font-size:.9375rem}.pos-container{display:flex;gap:1rem;align-items:flex-start;min-height:0}.pos-products{flex:1.3;display:flex;flex-direction:column;gap:.75rem;min-width:0}.pos-checkout{width:420px;flex-shrink:0;display:flex;flex-direction:column;background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden}.products-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.625rem;overflow-y:auto;max-height:calc(100vh - 200px);padding-right:2px}.product-card{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:.75rem;cursor:pointer;transition:border-color var(--transition-fast),box-shadow var(--transition-fast);display:flex;flex-direction:column;justify-content:space-between;min-height:90px}.product-card:hover:not(.out-of-stock){border-color:var(--accent-primary);box-shadow:var(--shadow-sm)}.product-card.out-of-stock{opacity:.45;cursor:not-allowed;filter:grayscale(1)}.product-name{font-weight:500;font-size:.8125rem;color:var(--text-primary);line-height:1.3;margin-bottom:.375rem}.product-price{color:var(--success);font-weight:700;font-size:.875rem}.product-stock{font-size:.6875rem;color:var(--text-muted);margin-top:.25rem}.checkout-header{padding:.75rem 1rem;border-bottom:1px solid var(--border);font-weight:600;font-size:.875rem;color:var(--text-primary)}.cart-items{flex:1;overflow-y:auto;padding:.75rem;display:flex;flex-direction:column;gap:.5rem;max-height:calc(100vh - 380px)}.cart-item{background:var(--bg-raised);border:1px solid var(--border);border-radius:var(--radius-md);padding:.625rem .75rem;display:flex;flex-direction:column;gap:.5rem}.cart-item-header{display:flex;justify-content:space-between;align-items:flex-start;gap:.5rem}.cart-item-name{font-weight:500;font-size:.8125rem;color:var(--text-primary);line-height:1.3}.cart-item-price{font-size:.75rem;color:var(--text-muted)}.cart-item-controls{display:grid;grid-template-columns:1fr 1fr;gap:.375rem}.cart-item-controls label{font-size:.6875rem;color:var(--text-secondary);font-weight:500;display:block;margin-bottom:.125rem}.cart-item-controls .input-field{padding:.3125rem .5rem;font-size:.8125rem;text-align:center;font-weight:600}.cart-item-footer{display:flex;justify-content:space-between;align-items:center}.cart-item-total{font-weight:700;font-size:.875rem;color:var(--text-primary)}.checkout-summary{padding:.875rem 1rem;border-top:1px solid var(--border);background:var(--bg-surface);display:flex;flex-direction:column;gap:.5rem}.checkout-fields{display:flex;flex-direction:column;gap:.5rem;padding-bottom:.5rem;border-bottom:1px solid var(--border);margin-bottom:.25rem}.total-row{display:flex;justify-content:space-between;align-items:center;font-size:.8125rem;color:var(--text-secondary)}.total-row.main{font-size:.9375rem;font-weight:700;color:var(--text-primary);border-top:1px solid var(--border);padding-top:.375rem;margin-top:.125rem}.total-amount{font-size:1.125rem;font-weight:700;color:var(--success)}@media(max-width:900px){.pos-container{flex-direction:column}.pos-checkout{width:100%}.products-grid{max-height:45vh}.cart-items{max-height:35vh}}.traslados-page{display:flex;flex-direction:column;height:100%}.custom-scroll::-webkit-scrollbar{width:6px}.custom-scroll::-webkit-scrollbar-track{background:var(--bg-tertiary)}.custom-scroll::-webkit-scrollbar-thumb{background:var(--accent-primary);border-radius:10px}.cart-list{background:var(--bg-raised);border-radius:var(--radius-md);padding:.5rem;border:1px solid var(--border);max-height:260px;overflow-y:auto}
