body{color:#1b1c1f;background:#070b14;min-height:100vh;font-family:Segoe UI,system-ui,-apple-system,sans-serif;overflow-x:hidden}.sidebar{z-index:1000;border-right:1px solid #ffffff0f;width:260px;height:100vh;transition:left .3s;position:fixed;top:0;left:0;overflow:hidden;background:#070b14!important}.sidebar:after{content:"";opacity:.5;z-index:2;background:linear-gradient(#0000 0%,#3b82f6 30%,#06b6d4 70%,#0000 100%);width:1px;height:100%;position:absolute;top:0;right:0}.sidebar-header{border-bottom:1px solid #ffffff0f;padding:22px 18px}.sidebar-brand{align-items:center;gap:10px;margin-bottom:18px;display:flex}.brand-icon{background:linear-gradient(135deg,#3b82f6,#06b6d4);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;font-size:20px;display:flex;box-shadow:0 0 18px #3b82f699}.brand-name{color:#1e212a;letter-spacing:.5px;font-size:20px;font-weight:800}.brand-name span{color:#06b6d4}.user-info{background:#ffffff0a;border:1px solid #ffffff0f;border-radius:10px;align-items:center;gap:10px;padding:10px 12px;display:flex}.avatar{color:#fff;background:linear-gradient(135deg,#8b5cf6,#3b82f6);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:16px;font-weight:700;display:flex;box-shadow:0 0 14px #8b5cf680}.user-name{color:#f0f4ff;white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:600;overflow:hidden}.user-role{color:#4a5568;text-transform:capitalize;margin-top:2px;font-size:11px}.sidebar-section-title{text-transform:uppercase;letter-spacing:2px;color:#fff3;padding:14px 18px 5px;font-family:inherit;font-size:10px;font-weight:600}.sidebar-menu{margin:0;padding:4px 10px;list-style:none}.sidebar-menu li a,.sidebar-menu li button{color:#ffffff80;text-align:left;cursor:pointer;background:0 0;border:none;border-radius:9px;align-items:center;gap:11px;width:100%;margin-bottom:2px;padding:11px 13px;font-family:inherit;font-size:14px;font-weight:500;text-decoration:none;transition:all .2s;display:flex}.sidebar-menu li a .menu-icon,.sidebar-menu li button .menu-icon{text-align:center;flex-shrink:0;width:22px;font-size:17px}.sidebar-menu li a:hover,.sidebar-menu li button:hover{color:#f0f4ff;background:#3b82f61a;transform:translate(3px)}.sidebar-menu li a.active{color:#22d3ee;background:linear-gradient(90deg,#3b82f633 0%,#06b6d414 100%);border-left:2px solid #3b82f6;padding-left:11px}.sidebar-footer-divider{background:#ffffff0d;height:1px;margin:8px 18px}.sidebar-overlay{z-index:999;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000000b3;display:none;position:fixed;inset:0}.sidebar-overlay.open{display:block}.main-content{background:#070b14;flex-direction:column;width:calc(100% - 260px);min-height:100vh;margin-left:260px;display:flex}.topbar{z-index:100;-webkit-backdrop-filter:blur(12px);background:#070b14f2;border-bottom:1px solid #ffffff0f;justify-content:space-between;align-items:center;width:100%;padding:16px 28px;display:flex;position:sticky;top:0}.topbar-menu-btn{cursor:pointer;color:#f0f4ff;background:#ffffff0f;border:1px solid #ffffff14;border-radius:8px;padding:7px 11px;font-size:18px;line-height:1;transition:all .2s;display:none}.topbar-menu-btn:hover{background:#3b82f626;border-color:#3b82f6}.topbar-left,.topbar-right{align-items:center;gap:14px;display:flex}.topbar-title{color:#ffffff4d;text-transform:uppercase;letter-spacing:1.5px;font-size:11px;font-weight:500}.topbar-section{color:#f0f4ff;font-size:20px;font-weight:700;line-height:1.2}.topbar-divider{background:#ffffff14;width:1px;height:28px}.topbar-user{cursor:default;background:#ffffff0a;border:1px solid #ffffff12;border-radius:10px;align-items:center;gap:10px;padding:6px 14px 6px 8px;transition:all .2s;display:flex}.topbar-user:hover{background:#3b82f614;border-color:#3b82f64d}.topbar-avatar{color:#fff;background:linear-gradient(135deg,#8b5cf6,#3b82f6);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:14px;font-weight:700;display:flex;box-shadow:0 0 10px #8b5cf666}.topbar-user-name{color:#f0f4ff;white-space:nowrap;font-size:13px;font-weight:600}.topbar-user-role{color:#ffffff4d;text-transform:capitalize;font-size:11px}.page-content{flex:1;width:100%;padding:24px 28px}.card{background:#111827;border:1px solid #ffffff0f;border-radius:14px;width:100%;margin-bottom:22px;padding:24px;position:relative;overflow:hidden;box-shadow:0 4px 24px #0006}.card:before{content:"";opacity:.8;background:linear-gradient(90deg,#3b82f6,#06b6d4,#8b5cf6);height:2px;position:absolute;top:0;left:0;right:0}.card h3{color:#f0f4ff;border-bottom:1px solid #ffffff0f;align-items:center;gap:10px;margin-bottom:18px;padding-bottom:14px;font-size:17px;font-weight:600;display:flex}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px;width:100%;margin-bottom:24px;display:grid}.stat-card{text-align:center;cursor:default;background:#111827;border:1px solid #ffffff0f;border-radius:14px;padding:26px 20px;transition:all .25s;position:relative;overflow:hidden;box-shadow:0 8px 32px #00000080}.stat-card:before{content:"";background:#3b82f6;height:2px;transition:height .3s;position:absolute;bottom:0;left:0;right:0}.stat-card:after{content:"";pointer-events:none;background:radial-gradient(circle,#3b82f612 0%,#0000 70%);border-radius:50%;width:110px;height:110px;position:absolute;top:-30px;right:-30px}.stat-card:hover{background:#161f33;border-color:#3b82f64d;transform:translateY(-5px);box-shadow:0 0 24px #3b82f633,0 8px 32px #00000080}.stat-card:hover:before{height:3px}.stat-card.green:before{background:#10b981}.stat-card.green:after{background:radial-gradient(circle,#10b98114 0%,#0000 70%)}.stat-card.green:hover{border-color:#10b9814d;box-shadow:0 0 24px #10b98133,0 8px 32px #00000080}.stat-card.red:before{background:#ef4444}.stat-card.red:after{background:radial-gradient(circle,#ef444414 0%,#0000 70%)}.stat-card.red:hover{border-color:#ef44444d;box-shadow:0 0 24px #ef444433,0 8px 32px #00000080}.stat-card.orange:before{background:#f59e0b}.stat-card.orange:after{background:radial-gradient(circle,#f59e0b14 0%,#0000 70%)}.stat-card.orange:hover{border-color:#f59e0b4d;box-shadow:0 0 24px #f59e0b33,0 8px 32px #00000080}.stat-card.purple:before{background:#8b5cf6}.stat-card.purple:after{background:radial-gradient(circle,#8b5cf614 0%,#0000 70%)}.stat-card.purple:hover{border-color:#8b5cf64d;box-shadow:0 0 24px #8b5cf633,0 8px 32px #00000080}.stat-card .icon{filter:drop-shadow(0 0 8px #3b82f680);margin-bottom:12px;font-size:36px;display:block}.stat-card.green .icon{filter:drop-shadow(0 0 8px #10b98180)}.stat-card.orange .icon{filter:drop-shadow(0 0 8px #f59e0b80)}.stat-card.purple .icon{filter:drop-shadow(0 0 8px #8b5cf680)}.stat-card.red .icon{filter:drop-shadow(0 0 8px #ef444480)}.stat-card h4{color:#ffffff4d;text-transform:uppercase;letter-spacing:1.5px;margin-bottom:10px;font-size:11px;font-weight:600}.stat-card .value{color:#f0f4ff;font-variant-numeric:tabular-nums;font-size:32px;font-weight:700;line-height:1}.stat-card .trend{color:#10b981;margin-top:8px;font-size:12px;font-weight:500}.categorias-grid-custom{grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:14px;width:100%;margin-top:18px;display:grid}.categoria-card{text-align:center;cursor:pointer;background:#111827;border:1px solid #ffffff0f;border-radius:12px;padding:18px;transition:all .25s;position:relative;overflow:hidden}.categoria-card:hover{background:#161f33;border-color:#3b82f64d;transform:translateY(-4px);box-shadow:0 0 20px #3b82f626}.categoria-card .icon{margin-bottom:8px;font-size:28px;display:block}.categoria-card h4{color:#fff6;text-transform:uppercase;letter-spacing:.8px;margin:6px 0;font-size:11px;font-weight:600}.categoria-card .value{color:#06b6d4;margin:6px 0;font-size:24px;font-weight:700}.categoria-card .badge-count{color:#ffffff4d;background:#ffffff0d;border:1px solid #ffffff14;border-radius:20px;margin-top:4px;padding:3px 10px;font-size:11px;display:inline-block}.categoria-card .btn-delete{opacity:0;width:100%;margin-top:10px;padding:6px;font-size:12px;transition:opacity .2s}.categoria-card:hover .btn-delete{opacity:1}.categoria-card:first-child{border-top:2px solid #3b82f6}.categoria-card:nth-child(2){border-top:2px solid #10b981}.categoria-card:nth-child(3){border-top:2px solid #f59e0b}.categoria-card:nth-child(4){border-top:2px solid #ef4444}.categoria-card:nth-child(5){border-top:2px solid #8b5cf6}.categoria-card:nth-child(6){border-top:2px solid #06b6d4}.categoria-card:nth-child(7){border-top:2px solid #64748b}.categoria-card:nth-child(8){border-top:2px solid #f97316}.btn{cursor:pointer;white-space:nowrap;letter-spacing:.3px;border:none;border-radius:9px;align-items:center;gap:7px;padding:10px 20px;font-family:inherit;font-size:13px;font-weight:600;text-decoration:none;transition:all .2s;display:inline-flex}.btn-primary{color:#fff;background:linear-gradient(135deg,#3b82f6,#2563eb);box-shadow:0 4px 14px #3b82f659}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #3b82f680}.btn-success{color:#fff;background:linear-gradient(135deg,#10b981,#059669);box-shadow:0 4px 14px #10b98159}.btn-success:hover{transform:translateY(-2px);box-shadow:0 6px 20px #10b98180}.btn-danger{color:#fff;background:linear-gradient(135deg,#ef4444,#dc2626);box-shadow:0 4px 14px #ef444459}.btn-danger:hover{transform:translateY(-2px);box-shadow:0 6px 20px #ef444480}.btn-warning{color:#fff;background:linear-gradient(135deg,#f59e0b,#d97706);box-shadow:0 4px 14px #f59e0b59}.btn-warning:hover{transform:translateY(-2px);box-shadow:0 6px 20px #f59e0b80}.btn-light{color:#f0f4ff;background:#ffffff0f;border:1px solid #ffffff1a}.btn-sm{border-radius:7px;padding:7px 14px;font-size:12px}.action-buttons{flex-wrap:wrap;gap:10px;margin-bottom:20px;display:flex}.form-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px;margin-bottom:20px;display:grid}.form-group label{color:#ffffff80;text-transform:uppercase;letter-spacing:.6px;margin-bottom:7px;font-size:12px;font-weight:600;display:block}.form-group input,.form-group select,.form-group textarea{color:#f0f4ff;background:#ffffff0a;border:1px solid #ffffff14;border-radius:9px;width:100%;padding:11px 14px;font-family:inherit;font-size:14px;transition:all .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{background:#3b82f60f;border-color:#3b82f6;outline:none;box-shadow:0 0 0 3px #3b82f61f}.form-group select option{color:#f0f4ff;background:#111827}table thead tr{background:linear-gradient(90deg,#3b82f626,#06b6d41a);border-bottom:1px solid #3b82f640}table th{text-align:left;color:#22d3ee;text-transform:uppercase;letter-spacing:1px;padding:13px 16px;font-size:11px;font-weight:600}table td{color:#ffffffa6;border-bottom:1px solid #ffffff0d;padding:13px 16px;font-size:14px}table tbody tr{transition:background .15s}table tbody tr:last-child td{border-bottom:none}.img-upload-container{background:#3b82f608;border:1px dashed #3b82f64d;border-radius:12px;align-items:center;gap:18px;padding:18px;transition:border-color .2s;display:flex}.img-upload-container:hover{border-color:#3b82f6}.img-preview-box{background:#ffffff0a;border:1px solid #ffffff14;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:100px;height:100px;display:flex;overflow:hidden}.img-preview{object-fit:cover;max-width:100%;max-height:100%}.img-preview-small,img{object-fit:cover;border:1px solid #ffffff1a;border-radius:8px;width:42px;height:42px}.modal{z-index:2000;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#000c;justify-content:center;align-items:center;display:none;position:fixed;inset:0}.modal-content{background:#111827;border:1px solid #3b82f640;border-radius:18px;width:92%;max-width:660px;max-height:90vh;padding:28px;animation:.25s modalSlide;position:relative;overflow-y:auto;box-shadow:0 24px 80px #000000b3}.modal-content:before{content:"";background:linear-gradient(90deg,#3b82f6,#06b6d4);border-radius:18px 18px 0 0;height:2px;position:absolute;top:0;left:0;right:0}@keyframes modalSlide{0%{opacity:0;transform:scale(.93)translateY(-16px)}to{opacity:1;transform:scale(1)translateY(0)}}.modal-header h3{color:#f0f4ff;margin:0;font-size:18px;font-weight:700}.close-modal{cursor:pointer;color:#ffffff80;background:#ffffff0f;border:1px solid #ffffff14;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:16px;transition:all .2s;display:flex}.close-modal:hover{color:#ef4444;background:#ef444426;border-color:#ef4444}.badge{border-radius:20px;padding:4px 11px;font-size:11px;font-weight:600;display:inline-block}.badge-success{color:#34d399;background:#10b98126;border:1px solid #10b9814d}.badge-danger{color:#f87171;background:#ef444426;border:1px solid #ef44444d}.badge-warning{color:#fbbf24;background:#f59e0b26;border:1px solid #f59e0b4d}.badge-info{color:#22d3ee;background:#06b6d426;border:1px solid #06b6d44d}.message{border-radius:9px;margin-bottom:18px;padding:14px 18px;font-size:14px;font-weight:500;animation:.3s slideDown;display:none}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.message.success{color:#34d399;background:#10b9811a;border:1px solid #10b98140;border-left:3px solid #10b981}.message.error{color:#f87171;background:#ef44441a;border:1px solid #ef444440;border-left:3px solid #ef4444}.message.show{align-items:center;gap:10px;display:flex}.search-bar{margin-bottom:16px;position:relative}.search-bar input{color:#f0f4ff;background:#ffffff0a;border:1px solid #ffffff14;border-radius:9px;width:100%;padding:11px 42px 11px 16px;font-family:inherit;font-size:14px;transition:all .2s}.search-bar input:focus{background:#3b82f60f;border-color:#3b82f6;outline:none;box-shadow:0 0 0 3px #3b82f61a}.search-bar input::placeholder{color:#fff3}.search-bar:before{content:"🔍";pointer-events:none;opacity:.4;font-size:14px;position:absolute;top:50%;right:14px;transform:translateY(-50%)}.charts-grid{grid-template-columns:repeat(auto-fit,minmax(360px,1fr));gap:20px;width:100%;margin-bottom:24px;display:grid}.chart-container{background:#111827;border:1px solid #ffffff0f;border-radius:14px;padding:22px}.chart-container h4{color:#f0f4ff;margin-bottom:16px;font-size:14px;font-weight:600}.alert-box{color:#fbbf24;background:#f59e0b14;border:1px solid #f59e0b40;border-left:3px solid #f59e0b;border-radius:9px;margin-bottom:20px;padding:14px 18px;font-size:14px;font-weight:500}@media (width<=968px){.sidebar{left:-260px}.sidebar.open{left:0}.main-content{width:100%;margin-left:0}.topbar-menu-btn{display:flex!important}.stats-grid{grid-template-columns:1fr 1fr}.charts-grid{grid-template-columns:1fr}.categorias-grid-custom{grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}.page-content{padding:16px}.card{padding:18px;overflow-x:auto}table{min-width:580px}.topbar-user-info{display:none}}@media (width<=480px){.stats-grid{grid-template-columns:1fr}.topbar{padding:12px 14px}.modal-content{padding:20px}.page-content{padding:12px}.btn{padding:9px 14px;font-size:13px}.topbar-user-name,.topbar-user-role,.topbar-divider{display:none}}.modal-content{color:#f0f4ff!important;background:#0d1221!important;border:1px solid #3b82f64d!important;animation:.25s modalSlide,3s ease-in-out infinite borderGlow!important}@keyframes borderGlow{0%{box-shadow:0 0 0 1px #3b82f64d,0 24px 80px #000000b3}33%{box-shadow:0 0 0 1px #06b6d466,0 24px 80px #000000b3}66%{box-shadow:0 0 0 1px #8b5cf666,0 24px 80px #000000b3}to{box-shadow:0 0 0 1px #3b82f64d,0 24px 80px #000000b3}}.modal-content h3,.modal-content h4,.modal-content p,.modal-content label,.modal-content span,.modal-content td,.modal-content th{color:#f0f4ff!important}.modal-content input,.modal-content select,.modal-content textarea{color:#f0f4ff!important;background:#ffffff0d!important;border:1px solid #ffffff1a!important;border-radius:9px!important}.modal-header{border-bottom:1px solid #ffffff12!important}.modal-header h3{color:#f0f4ff!important}table tbody tr:hover td{color:#f0f4ff!important}table tbody tr{background:0 0!important}table td,table th{color:inherit!important}.ajustes-card,.import-card,[class*=ajuste],[class*=import]{color:#f0f4ff!important;background:#111827!important;border:1px solid #ffffff12!important;border-radius:14px!important}.card>div>div,.page-content>div>div{color:#f0f4ff!important}.card p,.card span,.card label{color:#8896b3!important}.alert-box,[class*=instruc],[class*=info-box]{color:#fbbf24!important;background:#f59e0b14!important;border-color:#f59e0b40!important}.card{animation:6s ease-in-out infinite cardBorderCycle}@keyframes cardBorderCycle{0%{border-color:#3b82f61f}25%{border-color:#06b6d426}50%{border-color:#8b5cf61f}75%{border-color:#10b9811f}to{border-color:#3b82f61f}}.card:before{background:linear-gradient(90deg,#3b82f6,#06b6d4,#8b5cf6,#10b981,#3b82f6) 0 0/300% 100%!important;animation:5s linear infinite gradientSlide!important}@keyframes gradientSlide{0%{background-position:0%}to{background-position:300%}}.stat-card{animation:4s ease-in-out infinite statGlow}@keyframes statGlow{0%,to{border-color:#ffffff0f}50%{border-color:#3b82f633}}@media (width<=968px){.sidebar{box-shadow:none;transition:left .3s cubic-bezier(.4,0,.2,1);left:-260px}.sidebar.open{left:0;box-shadow:8px 0 32px #0009}.main-content{width:100%!important;margin-left:0!important}.topbar-menu-btn{display:flex!important}.topbar{padding:12px 16px!important}.topbar-section{font-size:16px!important}.topbar-user-info{display:none}.stats-grid{grid-template-columns:repeat(2,1fr)!important;gap:12px!important}.stat-card{padding:18px 14px!important}.stat-card .value{font-size:24px!important}.charts-grid{grid-template-columns:1fr!important}.categorias-grid-custom{grid-template-columns:repeat(auto-fill,minmax(130px,1fr))!important;gap:10px!important}.page-content{padding:14px 12px!important}.card{padding:16px!important}.card>table,.card>div>table{-webkit-overflow-scrolling:touch;min-width:0;display:block;overflow-x:auto}table{min-width:520px}.form-grid{grid-template-columns:1fr!important}.action-buttons{flex-direction:column;gap:8px}.action-buttons .btn{justify-content:center;width:100%}.modal-content{width:96%!important;max-height:92vh!important;padding:20px 16px!important}.sidebar-overlay{display:none}.sidebar-overlay.open{display:block!important}}@media (width<=480px){.stats-grid{grid-template-columns:1fr!important}.topbar{padding:10px 12px!important}.topbar-user-name,.topbar-user-role,.topbar-divider{display:none}.topbar-section{font-size:15px!important}.page-content{padding:10px 8px!important}.card{border-radius:10px!important;padding:14px 12px!important}.modal-content{border-radius:16px 16px 0 0!important;width:100%!important;max-height:92vh!important;padding:18px 14px!important;position:fixed!important;top:auto!important;bottom:0!important;transform:none!important}.modal{align-items:flex-end!important}.btn{min-height:42px!important;padding:11px 16px!important;font-size:13px!important}.badge{padding:3px 8px!important;font-size:10px!important}.categorias-grid-custom{grid-template-columns:repeat(2,1fr)!important}.table-hide-mobile{display:none!important}.search-bar input,input,select,textarea{font-size:16px!important}}*{box-sizing:border-box;margin:0;padding:0}body{color:#333;background:#f5f5f5;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.sidebar{color:#fff;z-index:1000;background:#16a085;width:250px;height:100vh;position:fixed;top:0;left:0;overflow-y:auto}.sidebar-header{background:#138d75;border-bottom:1px solid #ffffff1a;padding:20px}.user-info{align-items:center;gap:10px;display:flex}.avatar{background:#1abc9c;border-radius:50%;justify-content:center;align-items:center;width:45px;height:45px;font-size:18px;font-weight:700;display:flex}.sidebar-menu{padding:10px 0;list-style:none}.sidebar-menu li a{color:#fffc;align-items:center;gap:12px;padding:14px 20px;text-decoration:none;transition:all .3s;display:flex}.sidebar-menu li a:hover,.sidebar-menu li a.active{color:#fff;background:#1abc9c4d;border-left:4px solid #1abc9c}.main-content{min-height:100vh;margin-left:250px;padding:20px}.topbar{background:#fff;border-radius:8px;justify-content:space-between;align-items:center;margin-bottom:25px;padding:15px 25px;display:flex;box-shadow:0 2px 4px #0000001a}.card{background:#fff;border-radius:8px;margin-bottom:20px;padding:25px;box-shadow:0 2px 4px #00000014}.card h3{color:#2c3e50;border-bottom:2px solid #16a085;margin-bottom:20px;padding-bottom:10px;font-size:18px}.grid-2{grid-template-columns:2fr 1fr;gap:20px;margin-bottom:20px;display:grid}.btn{cursor:pointer;border:none;border-radius:5px;padding:10px 20px;font-size:14px;font-weight:500;text-decoration:none;transition:all .3s;display:inline-block}.btn-primary{color:#fff;background:#16a085}.btn-primary:hover{background:#138d75}.btn-success{color:#fff;background:#27ae60}.btn-success:hover{background:#229954}.btn-danger{color:#fff;background:#e74c3c}.btn-danger:hover{background:#c0392b}.btn-warning{color:#fff;background:#f39c12}.btn-warning:hover{background:#d68910}.btn-light{color:#2c3e50;background:#ecf0f1}.btn-light:hover{background:#d5d8dc}.btn:disabled{opacity:.5;cursor:not-allowed}.form-group label{color:#555;margin-bottom:5px;font-size:14px;font-weight:500;display:block}.form-group input,.form-group select,.form-group textarea{border:1px solid #ddd;border-radius:5px;width:100%;padding:10px;font-family:inherit;font-size:14px}.form-group textarea{resize:vertical;min-height:100px}.form-group input:focus,.form-group textarea:focus{border-color:#16a085;outline:none;box-shadow:0 0 0 3px #16a0851a}.categorias-filter{border-bottom:1px solid #ecf0f1;flex-wrap:wrap;gap:8px;margin-bottom:15px;padding-bottom:15px;display:flex}.cat-btn{cursor:pointer;color:#7f8c8d;background:#fff;border:2px solid #ecf0f1;border-radius:20px;padding:8px 16px;font-size:13px;font-weight:600;transition:all .3s}.cat-btn:hover{color:#16a085;border-color:#16a085}.cat-btn.active{color:#fff;background:#16a085;border-color:#16a085}.productos-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px;max-height:500px;padding:5px;display:grid;overflow-y:auto}.producto-card{cursor:pointer;text-align:center;background:#fff;border:2px solid #ecf0f1;border-radius:10px;padding:12px;transition:all .2s}.producto-card:hover{border-color:#16a085;transform:translateY(-3px);box-shadow:0 4px 12px #16a08533}.producto-card.sin-stock{opacity:.5;cursor:not-allowed}.producto-nombre{color:#2c3e50;-webkit-line-clamp:2;-webkit-box-orient:vertical;height:36px;margin-bottom:8px;font-size:13px;font-weight:600;display:-webkit-box;overflow:hidden}.producto-precio{color:#16a085;margin:8px 0;font-size:16px;font-weight:700}.producto-stock{color:#7f8c8d;background:#ecf0f1;border-radius:12px;padding:4px 8px;font-size:11px;display:inline-block}.carrito-header{background:#f8f9fa;border-radius:8px;justify-content:space-between;align-items:center;margin-bottom:15px;padding:10px 15px;display:flex}.cliente-info{color:#2c3e50;font-size:13px;font-weight:600}.carrito-item{border-bottom:1px solid #ecf0f1;justify-content:space-between;align-items:center;padding:12px;transition:background .2s;display:flex}.carrito-item:hover{background:#f8f9fa}.carrito-cantidad{align-items:center;gap:8px;display:flex}.carrito-cantidad button{cursor:pointer;background:#fff;border:1px solid #ddd;border-radius:5px;width:28px;height:28px;font-size:14px;font-weight:700;transition:all .2s}.carrito-cantidad button:hover{color:#fff;background:#16a085;border-color:#16a085}.descuento-aplicado{background:#fff3cd;border:1px solid #ffeaa7;border-radius:8px;justify-content:space-between;align-items:center;margin:10px 0;padding:12px 15px;animation:.3s slideDown;display:flex}.total-venta{color:#27ae60;text-align:center;background:linear-gradient(135deg,#ecf0f1 0%,#d5dbdb 100%);border-radius:8px;margin:20px 0 5px;padding:20px;font-size:2.5rem;font-weight:700}.subtotal-info{color:#7f8c8d;text-align:center;margin-bottom:15px;font-size:13px}.ventas-pendientes{max-height:200px;overflow-y:auto}.venta-pendiente-item{cursor:pointer;background:#fff;border:1px solid #ecf0f1;border-radius:8px;margin-bottom:10px;padding:12px;transition:all .3s}.venta-pendiente-item:hover{border-color:#16a085;box-shadow:0 2px 8px #16a08533}.modal{z-index:2000;background:#0009;justify-content:center;align-items:center;width:100%;height:100%;display:none;position:fixed;top:0;left:0}.modal.show{display:flex}.modal-content{background:#fff;border-radius:8px;width:90%;max-width:500px;max-height:90vh;padding:30px;animation:.3s modalSlideIn;overflow-y:auto}@keyframes modalSlideIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.modal-header{border-bottom:2px solid #ecf0f1;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:15px;display:flex}.modal-header h3{color:#2c3e50;margin:0}.close-modal{cursor:pointer;color:#95a5a6;background:0 0;border:none;font-size:24px;transition:color .3s}.close-modal:hover{color:#e74c3c}#scanner-container{border-radius:8px;width:100%;max-width:100%;margin:20px 0;position:relative;overflow:hidden}#scanner-video{border-radius:8px;width:100%}.scanner-line{background:#16a085;height:2px;animation:2s ease-in-out infinite scan;position:absolute;top:50%;left:10%;right:10%;box-shadow:0 0 10px #16a085}@keyframes scan{0%,to{transform:translateY(-20px)}50%{transform:translateY(20px)}}table{border-collapse:collapse;width:100%;margin-top:15px}table thead{color:#fff;background:#16a085}table th,table td{text-align:left;border-bottom:1px solid #ecf0f1;padding:12px}table tbody tr:hover{background:#f8f9fa}.badge{border-radius:20px;padding:6px 12px;font-size:12px;font-weight:600}.badge-success{color:#155724;background:#d4edda}.badge-danger{color:#721c24;background:#f8d7da}.badge-warning{color:#856404;background:#fff3cd}.badge-info{color:#0c5460;background:#d1ecf1}.message{border-radius:8px;margin-bottom:20px;padding:15px 20px;animation:.3s slideDown;display:none}.message.success{color:#155724;background:#d4edda;border-left:4px solid #28a745}.message.error{color:#721c24;background:#f8d7da;border-left:4px solid #dc3545}.message.show{display:block}.section-content{display:none}.section-content.active{display:block}.empty-state{text-align:center;color:#7f8c8d;padding:40px 20px}.search-bar{gap:10px;margin-bottom:15px;display:flex}.search-bar input{flex:1}.search-bar .btn{padding:10px 15px}.metodos-pago{grid-template-columns:repeat(2,1fr);gap:10px;margin:15px 0;display:grid}.metodo-btn{cursor:pointer;text-align:center;background:#fff;border:2px solid #ecf0f1;border-radius:8px;padding:12px;font-weight:600;transition:all .3s}.metodo-btn:hover{border-color:#16a085;transform:translateY(-2px)}.metodo-btn.active{color:#fff;background:#16a085;border-color:#16a085}.stats-mini{grid-template-columns:repeat(4,1fr);gap:15px;margin-bottom:20px;display:grid}.stat-mini-card{text-align:center;background:#fff;border-radius:8px;padding:15px;box-shadow:0 2px 4px #00000014}.stat-mini-card .value{color:#16a085;font-size:24px;font-weight:700}.stat-mini-card .label{color:#7f8c8d;margin-top:5px;font-size:12px}@media (width<=968px){.sidebar{transform:translate(-100%)}.main-content{margin-left:0}.productos-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr))}.sidebar{z-index:1000;box-shadow:none;transition:transform .3s cubic-bezier(.4,0,.2,1);position:fixed;transform:translate(-100%)}.sidebar.open{transform:translate(0);box-shadow:8px 0 32px #0006}.main-content{width:100%!important;margin-left:0!important}.grid-2{grid-template-columns:1fr!important}.productos-grid{max-height:300px;grid-template-columns:repeat(auto-fill,minmax(110px,1fr))!important}.producto-card{padding:10px 8px!important}.producto-nombre{font-size:12px!important}.producto-precio{font-size:14px!important}.stats-mini,.metodos-pago{grid-template-columns:repeat(2,1fr)!important}.total-venta{font-size:1.8rem!important}.topbar{padding:12px 16px}.card{padding:16px!important}}@media (width<=480px){.productos-grid{max-height:260px;grid-template-columns:repeat(2,1fr)!important}.stats-mini{grid-template-columns:repeat(2,1fr)!important;gap:8px!important}.stat-mini-card .value{font-size:18px!important}.total-venta{padding:14px!important;font-size:1.5rem!important}.metodo-btn{padding:10px 8px!important;font-size:12px!important}input,select,textarea{font-size:16px!important}.card{padding:12px!important}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{width:100%;height:100%}body{color:#f0f4ff;-webkit-font-smoothing:antialiased;background:#070b14;font-family:Segoe UI,system-ui,-apple-system,sans-serif;font-size:16px;line-height:1.6;overflow-x:hidden}*{scrollbar-width:thin;scrollbar-color:#3b82f666 transparent}::-webkit-scrollbar{width:4px;height:4px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#3b82f666;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#06b6d499}a{color:#06b6d4;text-decoration:none;transition:color .2s}a:hover{color:#3b82f6}img{object-fit:cover;border:1px solid #ffffff1a;border-radius:8px;width:42px;height:42px;transition:all .3s}img:hover{border-color:#3b82f680;box-shadow:0 0 12px #3b82f64d}.container{max-width:1200px;margin:24px auto;padding:0 16px}.container.narrow{max-width:520px}.card{background:#111827;border:1px solid #ffffff0f;border-radius:14px;margin-bottom:20px;padding:24px;transition:border-color .4s;animation:6s ease-in-out infinite cardBorderCycle;position:relative;overflow:hidden;box-shadow:0 4px 24px #0006}.card:before{content:"";background:linear-gradient(90deg,#3b82f6,#06b6d4,#8b5cf6,#10b981,#3b82f6) 0 0/300% 100%;height:2px;animation:5s linear infinite gradientSlide;position:absolute;top:0;left:0;right:0}.card h2{color:#06b6d4;margin-bottom:16px;font-size:1.15rem;font-weight:700}.card h3{color:#f0f4ff;margin-bottom:10px;font-size:1rem;font-weight:600}.grid-2{grid-template-columns:repeat(2,1fr);gap:16px;display:grid}.grid-3{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.form-group{margin-bottom:16px}label{text-transform:uppercase;letter-spacing:.6px;color:#ffffff80;margin-bottom:7px;font-size:12px;font-weight:600;display:block}input,select,textarea{color:#f0f4ff;background:#ffffff0a;border:1px solid #ffffff14;border-radius:9px;width:100%;padding:11px 14px;font-family:inherit;font-size:14px;transition:all .2s}input::placeholder,textarea::placeholder{color:#fff3}input:focus,select:focus,textarea:focus{background:#3b82f612;border-color:#3b82f6;outline:none;box-shadow:0 0 0 3px #3b82f626}input[readonly]{cursor:not-allowed;opacity:.6;background:#ffffff05}select option{color:#f0f4ff;background:#111827}.btn{cursor:pointer;white-space:nowrap;letter-spacing:.3px;color:#fff;background:linear-gradient(135deg,#3b82f6,#2563eb);border:none;border-radius:9px;justify-content:center;align-items:center;gap:7px;padding:10px 20px;font-family:inherit;font-size:13px;font-weight:600;text-decoration:none;transition:all .2s;display:inline-flex;box-shadow:0 4px 14px #3b82f659}.btn:hover{text-decoration:none;transform:translateY(-2px);box-shadow:0 6px 20px #3b82f680}.btn:active{transform:translateY(0)}.btn.light{color:#f0f4ff;box-shadow:none;background:#ffffff0f;border:1px solid #ffffff1a}.btn.light:hover{background:#ffffff1a}.btn.warn,.btn-danger{background:linear-gradient(135deg,#ef4444,#dc2626);box-shadow:0 4px 14px #ef444459}.btn.warn:hover,.btn-danger:hover{box-shadow:0 6px 20px #ef444480}.btn.success,.btn-success{background:linear-gradient(135deg,#10b981,#059669);box-shadow:0 4px 14px #10b98159}.btn.success:hover,.btn-success:hover{box-shadow:0 6px 20px #10b98180}.btn:disabled{opacity:.4;cursor:not-allowed;box-shadow:none!important;transform:none!important}table{border-collapse:collapse;width:100%;margin-top:14px;font-size:14px}thead tr{background:linear-gradient(90deg,#3b82f626,#06b6d41a);border-bottom:1px solid #3b82f640}th{text-align:left;color:#22d3ee;text-transform:uppercase;letter-spacing:1px;background:0 0;padding:13px 16px;font-size:11px;font-weight:600}td{color:#ffffffa6;border-bottom:1px solid #ffffff0d;padding:13px 16px}tbody tr{background:0 0;transition:background .15s}tbody tr:hover{background:#3b82f60f!important}tbody tr:hover td{color:#f0f4ff}tbody tr:last-child td{border-bottom:none}.badge{text-transform:uppercase;letter-spacing:.3px;border-radius:20px;padding:4px 11px;font-size:11px;font-weight:600;display:inline-block}.badge.success,.badge-success{color:#34d399;background:#10b98126;border:1px solid #10b9814d}.badge.danger,.badge-danger{color:#f87171;background:#ef444426;border:1px solid #ef44444d}.badge.warning,.badge-warning{color:#fbbf24;background:#f59e0b26;border:1px solid #f59e0b4d}.badge.info,.badge-info{color:#22d3ee;background:#06b6d426;border:1px solid #06b6d44d}#errorMsg,#successMsg,.message{border-radius:9px;align-items:center;gap:10px;margin:16px 0;padding:13px 18px;font-size:14px;font-weight:500;animation:.3s slideIn;display:none}#errorMsg,.message.error{color:#f87171;background:#ef44441a;border:1px solid #ef444440;border-left:3px solid #ef4444}#successMsg,.message.success{color:#34d399;background:#10b9811a;border:1px solid #10b98140;border-left:3px solid #10b981}#errorMsg.show,#successMsg.show,.message.show{display:flex}.toast{z-index:9999;color:#f0f4ff;background:#111827;border:1px solid #3b82f64d;border-radius:12px;padding:14px 18px;font-size:14px;font-weight:500;animation:.3s slideUp;position:fixed;bottom:24px;right:24px;box-shadow:0 8px 32px #00000080}.banner{color:#34d399;background:#10b98114;border:1px solid #10b98140;border-left:3px solid #10b981;border-radius:9px;margin-bottom:16px;padding:13px 18px;font-size:14px;font-weight:500}.banner.warn{color:#f87171;background:#ef444414;border-color:#ef444440 #ef444440 #ef444440 #ef4444}.login-container{flex-direction:column;justify-content:center;width:100%;max-width:420px;min-height:100vh;margin:0 auto;padding:40px 16px;display:flex}.login-header{text-align:center;margin-bottom:28px}.login-header img{border:2px solid #3b82f666;border-radius:16px;width:72px;height:72px;margin-bottom:16px;box-shadow:0 0 24px #3b82f64d}.login-header h1{letter-spacing:1px;background:linear-gradient(135deg,#f0f4ff 0%,#06b6d4 50%,#8b5cf6 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-bottom:6px;font-size:2rem;font-weight:800}.login-header .subtitle,.login-header p{color:#ffffff59;font-size:14px;font-weight:400}.login-container .card{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0d1221f2;border:1px solid #3b82f633;border-radius:18px;padding:30px;animation:4s ease-in-out infinite loginCardGlow;box-shadow:0 24px 80px #00000080}@keyframes loginCardGlow{0%,to{box-shadow:0 24px 80px #00000080,0 0 0 1px #3b82f633}33%{box-shadow:0 24px 80px #00000080,0 0 0 1px #06b6d44d}66%{box-shadow:0 24px 80px #00000080,0 0 0 1px #8b5cf640}}input[type=email],input[type=password],input[type=text]{color:#f0f4ff;background:#ffffff0a;border:1px solid #ffffff14;border-radius:10px;width:100%;padding:12px 16px;font-family:inherit;font-size:14px;transition:all .2s}input[type=email]:focus,input[type=password]:focus,input[type=text]:focus{background:#3b82f612;border-color:#3b82f6;outline:none;box-shadow:0 0 0 3px #3b82f626}.login-container .btn{background:linear-gradient(135deg,#3b82f6 0%,#06b6d4 50%,#8b5cf6 100%) 0 0/200% 100%;border-radius:10px;width:100%;margin-top:8px;padding:13px;font-size:15px;font-weight:700;transition:all .3s;animation:3s linear infinite btnShimmer;box-shadow:0 4px 20px #3b82f666}@keyframes btnShimmer{0%{background-position:0%}50%{background-position:100%}to{background-position:0%}}.login-container .btn:hover{transform:translateY(-2px);box-shadow:0 8px 28px #3b82f68c}.login-footer{text-align:center;color:#ffffff4d;margin-top:20px;font-size:13px}.login-footer a{color:#06b6d4;font-weight:600;transition:color .2s}.login-footer a:hover{color:#3b82f6}.modal-content{color:#f0f4ff!important;background:#0d1221!important;border:1px solid #3b82f640!important}.modal-content *{color:#f0f4ff!important}.modal-content input,.modal-content select,.modal-content textarea{color:#f0f4ff!important;background:#ffffff0d!important;border:1px solid #ffffff1a!important}.modal-content input::placeholder,.modal-content textarea::placeholder{color:#fff3!important}.modal-content input:focus,.modal-content select:focus,.modal-content textarea:focus{background:#3b82f614!important;border-color:#3b82f6!important;outline:none!important;box-shadow:0 0 0 3px #3b82f626!important}.modal-content select option{color:#f0f4ff!important;background:#0d1221!important}.hidden{display:none!important}.text-center{text-align:center}.text-right{text-align:right}.mt-1{margin-top:8px}.mt-2{margin-top:16px}.mt-3{margin-top:24px}.mb-1{margin-bottom:8px}.mb-2{margin-bottom:16px}.mb-3{margin-bottom:24px}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@media (width<=860px){.grid-2,.grid-3{grid-template-columns:1fr}table{font-size:13px}th,td{padding:10px 12px}}@media (width<=640px){html{font-size:14px}.card{padding:16px}.btn{padding:9px 16px;font-size:13px}.login-container .card{padding:22px 18px}}.topbar{color:#f0f4ff!important;background:#070b14f7!important;border-bottom:1px solid #ffffff0f!important}.topbar *{color:#f0f4ff!important}.main-content,.page-content,.section-content{color:#f0f4ff!important;background:#070b14!important}div,section,aside,main,article,header,nav{background-color:#0000}.factura,.recibo,.ticket,[class*=factura],[class*=recibo],[class*=ticket],[class*=print]{border:1px solid #ffffff1a;border-radius:10px;padding:24px;color:#0f172a!important;background:#fff!important}.factura *,.recibo *,.ticket *,[class*=factura] *,[class*=recibo] *,[class*=ticket] *,[class*=print] *{color:#0f172a!important}.factura h1,.factura h2,.factura h3,.recibo h1,.recibo h2,.recibo h3,[class*=factura] h1,[class*=factura] h2,[class*=factura] h3{color:#0f172a!important;font-weight:700!important}.factura table th,.recibo table th,[class*=factura] table th{color:#1e293b!important;background:#f1f5f9!important;border-bottom:2px solid #cbd5e1!important}.factura table td,.recibo table td,[class*=factura] table td{color:#334155!important;border-bottom:1px solid #e2e8f0!important}.factura table tbody tr:hover,.recibo table tbody tr:hover{background:#f8fafc!important}.factura hr,.recibo hr{border-color:#cbd5e1!important}.factura .total,.recibo .total,[class*=total]{color:#0f172a!important;font-size:16px!important;font-weight:700!important}@media print{.sidebar,.topbar,.topbar-menu-btn,.btn,button,.action-buttons,.sidebar-overlay{display:none!important}.main-content{background:#fff!important;width:100%!important;margin-left:0!important}.factura,.recibo,.ticket,[class*=factura],[class*=recibo]{width:100%!important;max-width:none!important;box-shadow:none!important;border:none!important;padding:0!important}*{color:#000!important;box-shadow:none!important;text-shadow:none!important;background:#fff!important}table,th,td{border:1px solid #ccc!important}th{background:#f1f5f9!important;font-weight:700!important}}
