:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light;color:#1a1a1a;background-color:#1a1a1a;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;min-width:320px;min-height:100vh;background:#f2ebe8}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}.navbar{position:fixed;top:0;left:0;right:0;z-index:1000;background:#fff;border-bottom:1px solid #e5e7eb;box-shadow:0 1px 4px #0000000f}.nav-content{max-width:1260px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;padding:0 20px;min-height:66px}.logo{font-size:1.5rem;font-weight:700;color:#fff}.logo-section{display:flex;align-items:center;gap:.75rem}.logo-img{height:40px;width:auto}.logo-text{font-size:24px;font-weight:700;color:#111827}.nav-menu{display:flex;list-style:none;gap:2rem;margin:0;padding:0}.nav-menu li a{color:#4b5563;text-decoration:none;transition:color .3s;font-size:14px;font-weight:600}.nav-menu li a:hover{color:#6f0d16}.profile-icon{width:34px;height:34px;border-radius:999px;border:0;background:#6f0d16;color:#fff;font-size:15px;line-height:1;cursor:pointer}@media(max-width:900px){.nav-menu{gap:1rem}.logo-text{font-size:20px}}.cliente-sec{background:#fff;border-radius:8px;padding:16px;border:1px solid #d8d7d2;box-shadow:0 2px #00000014}.cliente-sec .section-title{display:flex;align-items:center;gap:10px;margin-bottom:20px}.cliente-sec .section-title h2{font-size:27px;font-weight:700;color:#101828;margin:0}.cliente-sec .field{margin-bottom:15px}.cliente-sec .field label{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.05em;font-weight:700;color:#64748b;margin-bottom:8px}.cliente-sec .select-input{width:100%;padding:12px;border:1px solid #d6d3ce;border-radius:6px;font-size:14px;color:#1a1a1a}.cliente-sec .select-input:focus{outline:none;border-color:#722f37;box-shadow:0 0 0 3px #722f371a}.cliente-info{margin-top:10px}.meta-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.meta-item{padding:8px 0}.meta-item span{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:#94a3b8;margin-bottom:3px}.meta-item strong{color:#111827;font-size:14px;font-weight:600}.full-width{grid-column:1 / -1}@media(max-width:768px){.meta-grid{grid-template-columns:1fr}}.details-sec{background:#fff;border-radius:8px;padding:16px;border:1px solid #d8d7d2;box-shadow:0 2px #00000014}.details-sec .section-title{display:flex;align-items:center;gap:10px;margin-bottom:20px}.details-sec .section-title h2{font-size:27px;font-weight:700;color:#101828;margin:0}.details-sec .grid-2{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:15px}.details-sec .field{display:flex;flex-direction:column}.details-sec .field label{font-size:11px;text-transform:uppercase;letter-spacing:.05em;font-weight:700;color:#64748b;margin-bottom:8px}.details-sec .field input,.details-sec .field select{padding:12px;border:1px solid #d6d3ce;border-radius:6px;font-size:14px;color:#1a1a1a;background:#f3efe6}.details-sec .field input:focus,.details-sec .field select:focus{outline:none;border-color:#722f37;box-shadow:0 0 0 3px #722f371a}.details-sec .field input[type=text]:read-only{background-color:#efe6cf;cursor:not-allowed;color:#7a2f2b;font-weight:700}@media(max-width:768px){.details-sec .grid-2{grid-template-columns:1fr}}.items-section{background:#fff;border-radius:8px;padding:0;margin-bottom:14px;overflow-x:auto;border:1px solid #d8d7d2;box-shadow:0 2px #00000014}.items-section .section-title{display:flex;align-items:center;gap:10px;margin-bottom:0;padding:13px 16px;background:#6f0d16}.items-section .section-title h2{font-size:22px;font-weight:700;color:#fff;margin:0}.section-title>div{display:flex;align-items:center;gap:10px}.items-table{width:100%;border-collapse:collapse;font-size:13px;table-layout:fixed}.items-table .col-index{width:8%}.items-table .col-description{width:30%}.items-table .col-qty{width:16%}.items-table .col-unit-price{width:20%}.items-table .col-total{width:18%}.items-table .col-actions{width:8%}.items-table thead{background:#f2efe9;border-bottom:1px solid #ded8d0;border-top:0}.items-table th{padding:10px 16px;text-align:left;font-weight:800;color:#6b7280;text-transform:uppercase;letter-spacing:.06em;font-size:10px}.items-table .th-qty{text-align:center}.items-table .th-unit-price,.items-table .th-total{text-align:right}.items-table .th-actions{text-align:center}.items-table td{padding:12px 16px;border-bottom:1px solid #e0e0e0;color:#1a1a1a}.items-table tbody tr{background:#fff}.items-table .desc-col{max-width:300px;word-wrap:break-word}.items-table .center{text-align:center}.qty-pill{background:#efe6cf;border:1px solid #d7d0bf;border-radius:6px;display:inline-flex;min-width:48px;min-height:28px;align-items:center;justify-content:center;font-weight:700;color:#3f3f46}.items-table .right{text-align:right;font-weight:500}.items-table .action{text-align:center}.delete-btn{background:none;border:none;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);color:#722f37}.add-line-row{padding:10px 16px 14px}.add-line-btn{border:0;background:transparent;color:#6f0d16;font-weight:800;font-size:15px;cursor:pointer}.add-line-btn:hover{text-decoration:underline}.delete-btn:hover{transform:scale(1.2);color:#1a1a1a}@media(max-width:768px){.items-table{font-size:12px}.items-table th,.items-table td{padding:8px}}.modal-overlay{position:fixed;inset:0;background-color:#0009;display:flex;justify-content:center;align-items:center;z-index:1000;padding:20px}.modal-content{background-color:#fff;border-radius:12px;width:100%;max-width:700px;max-height:85vh;display:flex;flex-direction:column;box-shadow:0 10px 40px #0003;overflow:hidden}.modal-header{padding:1.5rem 1.75rem;background:linear-gradient(135deg,#722f37,#1a1a1a);color:#fff;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #e0e0e0}.modal-header h3{margin:0;font-size:22px;font-weight:600}.modal-close{background:none;border:none;color:#fff;font-size:24px;cursor:pointer;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background-color .2s}.modal-close:hover{background-color:#fff3}.modal-body{flex:1;overflow-y:auto;padding:20px 25px}.search-box{margin-bottom:20px}.search-input{width:100%;padding:12px 15px;border:2px solid #e0e0e0;border-radius:8px;font-size:15px;transition:border-color .3s}.search-input:focus{outline:none;border-color:#610129;box-shadow:0 0 0 3px #6101291a}.productos-list{display:flex;flex-direction:column;gap:12px;margin-bottom:20px}.producto-item{padding:15px;border:2px solid #e0e0e0;border-radius:8px;cursor:pointer;transition:all .3s ease;display:flex;justify-content:space-between;align-items:center;background-color:#fafafa}.producto-item:hover{border-color:#610129;background-color:#fff;box-shadow:0 2px 8px #6101291a;transform:translateY(-2px)}.producto-item.selected{border-color:#610129;background:linear-gradient(135deg,#fff9fc,#f5e6f0);box-shadow:0 4px 12px #61012933}.producto-info{flex:1}.producto-header{display:flex;justify-content:space-between;align-items:start;margin-bottom:8px}.producto-header h4{margin:0;color:#333;font-size:16px;font-weight:600}.precio{font-weight:700;color:#610129;font-size:16px;white-space:nowrap;margin-left:15px}.description{margin:0;font-size:13px;color:#666;line-height:1.4}.producto-check{width:24px;height:24px;border-radius:50%;background-color:#610129;color:#fff;display:flex;align-items:center;justify-content:center;margin-left:10px;font-weight:700;font-size:14px;opacity:0;transition:opacity .3s}.producto-item.selected .producto-check{opacity:1}.no-results,.empty-state,.loading-state,.error-state{padding:40px 20px;text-align:center;color:#999}.no-results p,.empty-state p,.loading-state p,.error-state p{margin:0;font-size:16px}.error-state p{color:#610129}.cantidad-section{background:linear-gradient(135deg,#f5f5f5,#efefef);padding:20px;border-radius:8px;border:1px solid #e0e0e0}.producto-seleccionado{background-color:#fff;padding:12px 15px;border-radius:6px;margin-bottom:15px;display:flex;justify-content:space-between;align-items:center}.producto-seleccionado h4{margin:0;color:#333;font-size:15px}.producto-seleccionado p{margin:0;color:#610129;font-weight:700;font-size:16px}.cantidad-input-group{display:flex;align-items:center;gap:10px;margin-bottom:15px}.cantidad-input-group label{font-weight:600;color:#333;white-space:nowrap}.cantidad-input-group input{width:100px;padding:10px;border:2px solid #ddd;border-radius:6px;font-size:15px;font-weight:600;text-align:center;transition:border-color .3s}.cantidad-input-group input:focus{outline:none;border-color:#610129}.subtotal-box{display:flex;justify-content:space-between;align-items:center;background-color:#fff;padding:12px 15px;border-radius:6px;border-left:4px solid #610129}.subtotal-box span:first-child{font-weight:600;color:#333}.subtotal-value{font-size:18px;font-weight:700;color:#610129}.modal-actions{padding:15px 25px;display:flex;gap:10px;justify-content:flex-end;background-color:#f5f5f5;border-top:1px solid #e0e0e0}.btn-cancel{padding:11px 25px;background-color:#ddd;color:#333;border:none;border-radius:6px;cursor:pointer;font-weight:600;font-size:14px;transition:all .3s}.btn-cancel:hover{background-color:#ccc;transform:translateY(-1px)}.btn-confirm{padding:11px 25px;background:linear-gradient(135deg,#610129,#8b0140);color:#fff;border:none;border-radius:6px;cursor:pointer;font-weight:600;font-size:14px;transition:all .3s}.btn-confirm:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #6101294d}.btn-confirm:disabled{background:#ccc;cursor:not-allowed;opacity:.6}.editable-price{cursor:pointer;padding:4px 8px;border-radius:4px;transition:all .2s;display:inline-block}.editable-price:hover{background-color:#722f371a;color:#722f37}.price-edit-container{display:flex;align-items:center;justify-content:flex-end}.price-input{width:120px;padding:6px 10px;border:2px solid #722F37;border-radius:4px;font-size:14px;font-weight:500;text-align:right;outline:none;transition:all .2s}.price-input:focus{border-color:#610129;box-shadow:0 0 0 3px #722f371a}.footer-content{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:1.5rem}.notes-panel{flex:1;background:#fff;border-radius:8px;border:1px solid #d8d7d2;box-shadow:0 2px #00000014;padding:12px;min-height:130px}.notes-title{font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:#6b7280;margin-bottom:8px;font-weight:800}.notes-input{width:100%;min-height:78px;border:1px solid #dfd8cc;border-radius:6px;resize:none;padding:10px;background:#f2efe9;font-family:inherit;font-size:13px}.summary-panel{width:340px}.sum-row{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid #f0f0f0;font-size:13px;color:#3f3f46}.sum-row span:first-child{font-weight:500}.sum-row .amount{color:#1a1a1a;font-weight:500}.sum-row.total-row{border-bottom:none;border-top:1px solid #d8d2c8;padding-top:1rem;padding-bottom:0;font-size:13px;font-weight:700;color:#7a1b1f}.sum-row.total-row .total-amount{font-size:37px;color:#7a1b1f;font-weight:800}.actions{display:flex;gap:10px;flex-direction:column;margin-top:12px}.btn-guardar,.btn-generar{padding:12px 24px;border:none;border-radius:4px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-guardar{background:#f0f0f0;color:#1a1a1a;border:1px solid #ddd}.btn-guardar:hover{background:#e0e0e0}.btn-generar{background:#6f0d16;color:#fff;box-shadow:0 4px 8px #6f0d1647}.btn-generar:hover{opacity:.95}.btn-generar:active{transform:scale(.98)}@media(max-width:1024px){.footer-content{flex-direction:column;align-items:flex-start;gap:14px}.summary-panel{width:100%}.actions{width:100%;flex-direction:row}.btn-guardar,.btn-generar{flex:1}}.crear-cuenta-page{min-height:100vh;background:#dfc06d;padding:94px 0 36px}.crear-cuenta-shell{max-width:1260px;margin:0 auto;padding:0 22px}.crear-cuenta-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.crear-cuenta-header h1{color:#111827;font-size:39px;line-height:1;margin-bottom:6px}.crear-cuenta-header p{color:#4b5563;font-size:15px}.header-actions{display:flex;gap:10px}.btn-header-primary,.btn-header-secondary{border-radius:9px;border:0;height:44px;padding:0 20px;font-weight:700;cursor:pointer}.btn-header-primary{background:#6f0d16;color:#fff;box-shadow:0 3px 9px #6f0d164d}.btn-header-secondary{background:#fff;color:#312e31;border:1px solid #ece8e1}.main-content{margin:0 0 16px;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:14px}@media(max-width:1024px){.crear-cuenta-header{flex-direction:column;align-items:flex-start;gap:14px}.header-actions{width:100%}.btn-header-primary,.btn-header-secondary{flex:1}.main-content{grid-template-columns:1fr}}@media(max-width:768px){.crear-cuenta-page{padding-top:14px}.crear-cuenta-shell{padding:0 10px}.crear-cuenta-header h1{font-size:29px}.header-actions{flex-direction:column}}:root{--clientes-bg: #e4c264;--clientes-card: #fbfbfc;--clientes-surface: #ffffff;--clientes-text: #2a1630;--clientes-muted: #6b7280;--clientes-accent: #70161c;--clientes-accent-soft: #f3e7d2;--clientes-border: #eadfce;--clientes-shadow: 0 18px 40px rgba(120, 90, 25, .16)}.clientes-page{min-height:100vh;background:var(--clientes-bg);padding:94px 30px 36px}.clientes-shell{max-width:1240px;margin:0 auto}.clientes-hero{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:22px}.clientes-heading h1{margin:0;color:var(--clientes-accent);font-size:2.75rem;line-height:1;font-weight:800;letter-spacing:-.05em}.clientes-heading p{margin:6px 0 0;color:#22151f;font-size:1.06rem;font-weight:500}.btn-crear{display:inline-flex;align-items:center;gap:10px;padding:.95rem 1.2rem;margin-top:2px;border:0;border-radius:12px;background:var(--clientes-accent);color:#fff;font-size:.98rem;font-weight:700;box-shadow:0 10px 24px #70161c3d;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}.btn-crear:hover{transform:translateY(-1px);border-color:transparent;background:#5e1117;box-shadow:0 14px 26px #70161c4d}.btn-crear-icon{font-size:.92rem;line-height:1}.clientes-toolbar{display:flex;justify-content:flex-start;margin-bottom:18px}.search-box{display:flex;align-items:center;gap:10px;width:min(100%,340px);background:#ffffffe6;border:1px solid rgba(255,255,255,.45);border-radius:14px;padding:0 14px;min-height:44px;box-shadow:inset 0 1px #ffffff80}.form-container,.clientes-table-card,.loading-container,.empty-state,.error-alert{background:var(--clientes-card);border-radius:18px;box-shadow:var(--clientes-shadow)}.form-container{padding:24px;margin-bottom:18px}.formulario-cliente{display:flex;flex-direction:column;gap:24px}.form-header h2{margin:0;color:var(--clientes-accent);font-size:1.65rem}.form-header p{margin:6px 0 0;color:var(--clientes-muted)}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{color:#3c2a36;font-size:.92rem;font-weight:700}.form-group input{min-height:46px;padding:0 14px;border:1px solid #e5d7c4;border-radius:12px;background:#fff;color:#1f2937;font-size:.96rem}.form-group input:focus{outline:0;border-color:#70161c59;box-shadow:0 0 0 4px #70161c14}.form-buttons{display:flex;gap:12px}.btn-submit,.btn-cancel{min-height:46px;padding:0 18px;border-radius:12px;font-size:.95rem;font-weight:700;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.btn-submit{border:0;background:var(--clientes-accent);color:#fff;box-shadow:0 10px 22px #70161c33}.btn-submit:hover{transform:translateY(-1px);border-color:transparent}.btn-cancel{border:1px solid #dbcbb5;background:#fff;color:#4b5563}.btn-cancel:hover{border-color:#cdb79c}.error-alert{padding:16px 18px;margin-bottom:18px;color:#7a1320;border:1px solid #eab8c0;background:#fff2f4}.loading-container,.empty-state{padding:48px 24px;text-align:center}.spinner{width:42px;height:42px;margin:0 auto 14px;border-radius:50%;border:4px solid #f3e6d2;border-top-color:var(--clientes-accent);animation:spin .9s linear infinite}.empty-icon{width:64px;height:64px;margin:0 auto 14px;border-radius:50%;display:grid;place-items:center;background:#f4ecde;color:var(--clientes-accent);font-size:1.7rem}.empty-state h3{margin:0 0 8px;color:var(--clientes-text);font-size:1.4rem}.empty-state p,.loading-container p{margin:0;color:var(--clientes-muted)}.clientes-content{display:flex;flex-direction:column;gap:26px}.clientes-table-card{overflow:hidden}.clientes-table-wrapper{overflow-x:auto}.clientes-table{width:100%;border-collapse:collapse;min-width:840px}.clientes-table thead th{padding:18px 20px;text-align:left;text-transform:uppercase;font-size:.78rem;letter-spacing:.04em;color:var(--clientes-accent);background:#ffffffe0}.clientes-table tbody td{padding:22px 20px;color:#243b5a;font-size:1rem;border-top:1px solid #edf0f4;vertical-align:middle}.clientes-table tbody tr:hover{background:#fffaf1}.nombre-cell{display:flex;align-items:center;gap:14px;color:#111827;font-weight:600}.avatar-chip{width:28px;height:28px;border-radius:50%;display:inline-grid;place-items:center;background:#f8efe3;color:var(--clientes-accent);font-size:.8rem;font-weight:800;letter-spacing:.02em;flex-shrink:0}.client-name{color:#111827;white-space:nowrap}.actions{white-space:nowrap;text-align:center}.clientes-table th:last-child{width:120px}.clientes-table td.actions{display:table-cell;width:120px;vertical-align:middle;text-align:center;white-space:nowrap;padding-left:10px;padding-right:10px}.btn-edit,.btn-delete{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;padding:0;line-height:1;border:0;border-radius:10px;background:transparent;color:var(--clientes-accent);font-size:1rem;transition:background .2s ease,transform .2s ease;margin:0 4px}.btn-edit:hover,.btn-delete:hover{background:var(--clientes-accent-soft);border-color:transparent;transform:translateY(-1px)}.pagination-arrow,.pagination-number{width:34px;height:34px;border-radius:8px;border:1px solid #e8ecf1;background:#fff;color:#4b5563;font-size:.94rem;font-weight:700;transition:background .2s ease,color .2s ease,transform .2s ease}.pagination-number.is-active{background:var(--clientes-accent);color:#fff;border-color:var(--clientes-accent);box-shadow:0 8px 18px #70161c33}.clientes-stats{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:36px;color:#111827;font-size:1rem;font-weight:700}.stat-item{display:inline-flex;align-items:center;gap:10px}.stat-icon{color:#0f172a;font-size:1rem}@media(max-width:960px){.clientes-page{padding:22px 18px 28px}.clientes-hero{flex-direction:column;align-items:stretch}.btn-crear{align-self:flex-start}.form-grid{grid-template-columns:1fr}.table-footer{flex-direction:column;align-items:flex-start}.clientes-stats{justify-content:flex-start;gap:18px 26px}}@media(max-width:640px){.clientes-heading h1{font-size:2.2rem}.search-box,.btn-crear,.form-buttons button{width:100%}.form-buttons{flex-direction:column}.table-footer{align-items:stretch}.pagination{justify-content:space-between;width:100%}}:root{--facturas-bg: #dfc06d;--facturas-card: #fbfbfc;--facturas-surface: #ffffff;--facturas-text: #2a1630;--facturas-muted: #6b7280;--facturas-accent: #70161c;--facturas-accent-soft: #f3e7d2;--facturas-border: #eadfce;--facturas-shadow: 0 18px 40px rgba(120, 90, 25, .16)}.facturas-page{min-height:100vh;background:var(--facturas-bg);padding:28px 30px 36px}.facturas-shell{max-width:1240px;margin:0 auto}.facturas-hero{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:22px}.facturas-heading h1{margin:0;color:var(--facturas-accent);font-size:2.75rem;line-height:1;font-weight:800;letter-spacing:-.05em}.facturas-heading p{margin:6px 0 0;color:#22151f;font-size:1.06rem;font-weight:500}.facturas-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px;gap:12px;flex-wrap:wrap}.search-box{display:flex;align-items:center;gap:10px;flex:1;min-width:200px;background:#ffffffe6;border:1px solid rgba(255,255,255,.45);border-radius:14px;padding:0 14px;min-height:44px;box-shadow:inset 0 1px #ffffff80}.search-box:focus-within{border-color:#70161c40;box-shadow:0 0 0 4px #70161c14}.search-icon{color:#1a1a1a;font-size:1.15rem;flex-shrink:0}.search-box input{width:100%;border:0;outline:0;background:transparent;color:#1f2937;font-size:.98rem;padding:12px 0}.search-box input::placeholder{color:#6b7280}.toolbar-filters{display:flex;gap:10px}.btn-filter,.btn-calendar{display:flex;align-items:center;gap:8px;padding:0 14px;height:44px;border:1px solid rgba(255,255,255,.5);background:#fff9;border-radius:10px;color:#4b5563;font-size:.92rem;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-filter:hover,.btn-calendar:hover{background:#ffffffd9;border-color:#ffffffb3}.facturas-content{animation:fadeIn .3s cubic-bezier(.4,0,.2,1)}.facturas-table-card{background:var(--facturas-card);border-radius:18px;box-shadow:var(--facturas-shadow);overflow:hidden}.facturas-table-wrapper{overflow-x:auto}.facturas-table{width:100%;border-collapse:collapse;min-width:900px}.facturas-table thead th{padding:18px 20px;text-align:left;text-transform:uppercase;font-size:.75rem;letter-spacing:.05em;color:var(--facturas-accent);background:#ffffffe0}.facturas-table tbody td{padding:22px 20px;color:#243b5a;font-size:.95rem;border-top:1px solid #edf0f4;vertical-align:middle}.facturas-table tbody tr:hover{background:#fffaf1}.facturas-table .invoice-number{color:var(--facturas-accent);font-weight:700}.facturas-table .total{font-weight:700;color:#111827}.status-badge{display:inline-block;padding:.4rem .8rem;border-radius:20px;font-size:.8rem;font-weight:600}.status-badge.status-paid{background:#dcfce7;color:#16a34a}.status-badge.status-pending{background:#fef08a;color:#ca8a04}.status-badge.status-cancelled{background:#fee2e2;color:#dc2626}.actions{display:flex;align-items:center;justify-content:center;gap:8px;white-space:nowrap;text-align:center}.btn-view,.btn-download{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;padding:0;line-height:1;border:0;border-radius:10px;background:transparent;color:var(--facturas-accent);font-size:1rem;vertical-align:middle;transition:background .2s ease,transform .2s ease;margin:0}.btn-view:hover,.btn-download:hover{background:var(--facturas-accent-soft);border-color:transparent;transform:translateY(-1px)}.table-footer{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:14px 20px;border-top:1px solid #edf0f4;color:#718096;font-size:.92rem}.table-footer p{margin:0}.pagination{display:flex;align-items:center;gap:8px}.pagination-arrow,.pagination-number{width:34px;height:34px;border-radius:8px;border:1px solid #e8ecf1;background:#fff;color:#4b5563;font-size:.94rem;font-weight:700;transition:background .2s ease,color .2s ease,transform .2s ease;cursor:pointer}.pagination-arrow:hover,.pagination-number:hover{transform:translateY(-1px)}.pagination-number.is-active{background:var(--facturas-accent);color:#fff;border-color:var(--facturas-accent);box-shadow:0 8px 18px #70161c33}.pagination-arrow:disabled{color:#c7cdd6;background:#fafbfc;cursor:not-allowed;transform:none}.error-alert{background:#fff2f4;border-radius:18px;padding:16px 18px;margin-bottom:18px;color:#7a1320;border:1px solid #eab8c0}@media(max-width:960px){.facturas-toolbar{flex-direction:column;align-items:stretch}.search-box{width:100%}.toolbar-filters{width:100%;justify-content:space-between}.table-footer{flex-direction:column;align-items:flex-start}}@media(max-width:640px){.facturas-page{padding:22px 18px 28px}.facturas-heading h1{font-size:2rem}.btn-filter,.btn-calendar{flex:1}.table-footer{align-items:stretch}.pagination{justify-content:space-between;width:100%}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.facturas-table .total{font-weight:700;color:#722f37}.facturas-table .actions{text-align:center}.facturas-table th:last-child{width:120px}.facturas-table td.actions{display:table-cell;width:120px;vertical-align:middle;text-align:center;white-space:nowrap;padding-left:10px;padding-right:10px}.status-badge{display:inline-block;padding:.4rem .8rem;border-radius:20px;font-size:.85rem;font-weight:600}.status-borrador{background:#fff4e6;color:#f59e0b}.status-enviada{background:#dbeafe;color:#0284c7}.status-pagada{background:#dcfce7;color:#16a34a}.btn-view,.btn-download{display:inline-flex;align-items:center;justify-content:center;background:none;border:none;padding:0;line-height:1;width:30px;height:30px;font-size:1.1rem;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);margin:0 4px}.btn-view:hover,.btn-download:hover{transform:scale(1.2)}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;background:#fff;border-radius:15px;gap:1.5rem;box-shadow:0 5px 20px #0000001a}.spinner{width:50px;height:50px;border:4px solid #f0f0f0;border-top:4px solid #722F37;border-radius:50%;animation:spin 1s linear infinite}.loading-container p{color:#722f37;font-size:1.1rem;font-weight:500}.error-alert{background:#f9e8eb;border:2px solid #722F37;color:#722f37;padding:1rem 1.5rem;border-radius:8px;margin-bottom:2rem;font-weight:500;box-shadow:0 4px 12px #722f3726}.empty-state{text-align:center;padding:4rem 2rem;background:#fff;border-radius:15px;box-shadow:0 5px 20px #0000001a}.empty-icon{font-size:4rem;margin-bottom:1rem;animation:bounce 2s infinite}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}.empty-state h3{color:#333;font-size:1.8rem;margin:0 0 .5rem}.empty-state p{color:#888;font-size:1.1rem;margin:0}.empty-state{background:var(--facturas-card);border-radius:18px;box-shadow:var(--facturas-shadow);padding:48px 24px;text-align:center}.empty-icon{width:64px;height:64px;margin:0 auto 14px;border-radius:50%;display:grid;place-items:center;background:#f4ecde;color:var(--facturas-accent);font-size:1.7rem}.empty-state h3{margin:0 0 8px;color:var(--facturas-text);font-size:1.4rem}.empty-state p{margin:0;color:var(--facturas-muted)}.loading-container{background:var(--facturas-card);border-radius:18px;box-shadow:var(--facturas-shadow);padding:48px 24px;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.5rem}.spinner{width:42px;height:42px;border-radius:50%;border:4px solid #f3e6d2;border-top-color:var(--facturas-accent);animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.loading-container p{margin:0;color:var(--facturas-muted)}.error-alert{background:var(--facturas-card);border-radius:18px;box-shadow:var(--facturas-shadow);padding:16px 18px;margin-bottom:18px;color:#7a1320;border:1px solid #eab8c0;background:#fff2f4}.modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:#fff;border-radius:12px;padding:30px;max-width:500px;width:90%;box-shadow:0 4px 20px #00000026;position:relative}.modal-close{position:absolute;top:15px;right:15px;background:none;border:none;font-size:24px;cursor:pointer;color:#666}.modal-close:hover{color:#000}.modal-content h2{margin-top:0;margin-bottom:20px;color:#333}.invoice-details{display:flex;flex-direction:column;gap:15px}.detail-row{display:flex;justify-content:space-between;padding-bottom:10px;border-bottom:1px solid #eee}.detail-row .label{font-weight:600;color:#555}.detail-row .value{color:#333}.detail-row .total{font-weight:600;color:#27ae60}.modal-actions{display:flex;gap:10px;margin-top:20px;justify-content:flex-end}.modal-actions .btn-edit,.modal-actions .btn-save,.modal-actions .btn-cancel{display:inline-flex;align-items:center;justify-content:center;min-width:120px;height:40px;padding:10px 20px;border:none;border-radius:6px;font-size:14px;line-height:1;cursor:pointer;font-weight:500;transition:all .3s ease}.modal-actions .btn-edit{background-color:#3498db;color:#fff}.modal-actions .btn-edit:hover{background-color:#2980b9}.modal-actions .btn-save{background-color:#27ae60;color:#fff}.modal-actions .btn-save:hover:not(:disabled){background-color:#229954}.modal-actions .btn-save:disabled{background-color:#95a5a6;cursor:not-allowed}.modal-actions .btn-cancel{background-color:#e74c3c;color:#fff}.modal-actions .btn-cancel:hover:not(:disabled){background-color:#c0392b}.modal-actions .btn-cancel:disabled{background-color:#95a5a6;cursor:not-allowed}.facturas-table td.actions{text-align:center;vertical-align:middle;white-space:nowrap;padding-left:12px;padding-right:12px}.facturas-table td.actions .btn-view,.facturas-table td.actions .btn-download{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;padding:0;margin:0 4px;line-height:1;border:0;border-radius:8px;background:transparent;color:var(--facturas-accent);font-size:1rem;cursor:pointer}.editable-row{background-color:#f8f9fa;padding:10px;border-radius:4px}.input-field{padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px;font-family:inherit}.input-field:focus{outline:none;border-color:#3498db;box-shadow:0 0 5px #3498db4d}@media(max-width:1024px){.facturas-table{font-size:.9rem}.facturas-table th,.facturas-table td{padding:.75rem .5rem}}@media(max-width:768px){.facturas-page{padding:1rem;padding-top:60px}.facturas-header{flex-direction:column;text-align:center}.header-content h1{font-size:2rem}.facturas-table{font-size:.85rem}.facturas-table th,.facturas-table td{padding:.5rem}.facturas-table-wrapper{padding:1rem}}@media(max-width:480px){.header-content h1{font-size:1.8rem}.header-content p{font-size:.9rem}.empty-icon{font-size:3rem}.empty-state h3{font-size:1.4rem}}:root{--inv-bg: #f4f7fb;--inv-panel: #ffffff;--inv-panel-border: #d8e1ef;--inv-title: #0f172a;--inv-muted: #64748b;--inv-primary: #2563eb;--inv-primary-dark: #1d4ed8;--inv-green: #059669;--inv-green-soft: #dcfce7;--inv-red: #e11d48;--inv-red-soft: #ffe4e6;--inv-warning: #d97706;--inv-warning-soft: #ffedd5;--inv-shadow: 0 10px 28px rgba(15, 23, 42, .08)}.inventory-container{width:100%;max-width:none;margin:0;min-height:100vh;padding:94px 18px 36px;box-sizing:border-box;font-family:Manrope,DM Sans,Segoe UI,sans-serif;color:var(--inv-title);background:radial-gradient(circle at 0 0,#e9f0fb 0,#e9f0fb00 32%),radial-gradient(circle at 100% 0,#eef4ff 0,#eef4ff00 36%),var(--inv-bg)}.inventory-header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:22px}.inventory-header h1{margin:0;font-size:clamp(1.7rem,3vw,2.25rem);line-height:1.15}.inventory-header p{margin:6px 0 0;color:var(--inv-muted);font-size:.96rem}.inventory-header-actions{display:flex;gap:10px}.inventory-outline-btn,.inventory-primary-btn,.inventory-button{height:42px;padding:0 17px;border-radius:10px;border:1px solid transparent;font-family:inherit;font-weight:700;font-size:.89rem;cursor:pointer;transition:transform .22s ease,box-shadow .22s ease,background-color .22s ease}.inventory-outline-btn{background:var(--inv-panel);border-color:var(--inv-panel-border);color:#1e293b}.inventory-primary-btn{background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff;box-shadow:0 7px 14px #2563eb42}.inventory-outline-btn:hover,.inventory-primary-btn:hover,.inventory-button:hover:not(:disabled){transform:translateY(-1px)}.inventory-primary-btn:hover,.inventory-button:hover:not(:disabled){background:linear-gradient(135deg,#2563eb,#1e40af)}.inventory-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:22px}.inventory-kpi-card{padding:18px;border:1px solid var(--inv-panel-border);border-radius:14px;background:var(--inv-panel);box-shadow:var(--inv-shadow);animation:riseIn .42s ease both}.inventory-kpi-label{margin:0;color:#475569;font-weight:800;font-size:.78rem;letter-spacing:.08em}.inventory-kpi-value{margin:8px 0 4px;font-size:2rem;font-weight:800;color:#0f172a}.inventory-kpi-value--danger{color:var(--inv-red)}.inventory-kpi-foot{margin:0;color:#94a3b8;font-size:.83rem;font-weight:700}.inventory-kpi-foot--ok{color:var(--inv-green)}.inventory-kpi-foot--danger{color:var(--inv-red)}.inventory-toolbar{display:grid;grid-template-columns:1fr auto auto auto;gap:10px;margin-bottom:16px;padding:11px;border:1px solid var(--inv-panel-border);border-radius:14px;background:var(--inv-panel);box-shadow:var(--inv-shadow)}.inventory-stock-panel{border:1px solid var(--inv-panel-border);border-radius:14px;padding:16px;margin-bottom:16px;background:var(--inv-panel);box-shadow:var(--inv-shadow)}.inventory-stock-panel-head h2{margin:0;font-size:1.04rem}.inventory-stock-panel-head p{margin:5px 0 0;color:var(--inv-muted);font-size:.86rem}.inventory-stock-controls{margin-top:12px}.inventory-stock-summary{margin-top:12px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.inventory-stock-card{border:1px solid var(--inv-panel-border);border-radius:12px;background:#f8fbff;padding:12px}.inventory-stock-label{margin:0;font-size:.77rem;letter-spacing:.06em;font-weight:800;color:#64748b}.inventory-stock-value{margin:7px 0 0;font-size:1.1rem;font-weight:800;color:#0f172a}.inventory-search,.inventory-filter,.inventory-select,.inventory-input{height:42px;border:1px solid var(--inv-panel-border);border-radius:10px;padding:0 12px;font-size:.9rem;font-family:inherit;color:#334155;background:#fff}.inventory-filter,.inventory-select{min-width:178px}.inventory-search:focus,.inventory-filter:focus,.inventory-select:focus,.inventory-input:focus{outline:none;border-color:#7aa8ff;box-shadow:0 0 0 3px #3b82f633}.inventory-movement-panel{border:1px solid var(--inv-panel-border);border-radius:14px;padding:18px;margin-bottom:16px;background:var(--inv-panel);box-shadow:var(--inv-shadow);animation:fadeDown .26s ease}.inventory-movement-panel h2{margin:0 0 13px;font-size:1.1rem}.inventory-form-row{display:grid;grid-template-columns:1.4fr .9fr 1.2fr auto auto;gap:10px}.inventory-button{background:var(--inv-primary);color:#fff;border:none}.inventory-button:disabled{opacity:.62;cursor:not-allowed}.inventory-button-in{background:linear-gradient(135deg,#22c55e,#15803d)}.inventory-button-out{background:linear-gradient(135deg,#f43f5e,#be123c)}.inventory-table-card{border:1px solid var(--inv-panel-border);border-radius:14px;background:var(--inv-panel);box-shadow:var(--inv-shadow);overflow:hidden}.inventory-table-wrap{overflow-x:auto}.inventory-table-card table{width:100%;border-collapse:collapse;min-width:920px}.inventory-table-card thead{background:#f8fbff;border-bottom:1px solid var(--inv-panel-border)}.inventory-table-card th{text-align:left;font-size:.79rem;letter-spacing:.08em;font-weight:800;color:#334155;padding:14px 16px}.inventory-table-card td{padding:14px 16px;border-bottom:1px solid #edf2f7;font-size:.91rem;color:#334155}.inventory-product-cell{color:#0f172a;font-weight:700}.inventory-pill{display:inline-block;border-radius:999px;padding:3px 11px;font-size:.72rem;font-weight:700}.inventory-pill.in{color:var(--inv-green);background:var(--inv-green-soft)}.inventory-pill.out{color:var(--inv-red);background:var(--inv-red-soft)}.inventory-qty-in{color:#0f766e;font-weight:700}.inventory-qty-out{color:#b91c1c;font-weight:700}.inventory-stock-danger{color:#dc2626;font-weight:800}.inventory-action-btn{width:30px;height:30px;border:1px solid #dce7f5;border-radius:8px;background:#fff;color:#64748b;font-weight:800;cursor:pointer}.inventory-empty-row{text-align:center;color:#94a3b8}.inventory-pagination{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 16px}.inventory-pagination p{margin:0;color:#64748b;font-size:.84rem}.inventory-pagination div{display:flex;gap:6px}.inventory-pagination button{min-width:34px;height:32px;border:1px solid var(--inv-panel-border);background:#fff;color:#475569;border-radius:7px;padding:0 10px;font-weight:700;cursor:pointer}.inventory-pagination button.active{background:#e3efff;color:#1d4ed8;border-color:#b8d2ff}.inventory-pagination button:disabled{opacity:.5;cursor:not-allowed}.inventory-footer{margin-top:28px;text-align:center;color:#94a3b8;font-size:.8rem}.inventory-error{margin-bottom:16px;border-radius:12px;border:1px solid #fecaca;background:#fef2f2;color:#991b1b;padding:11px 14px}.inventory-file-input{display:none}.inventory-import-result{margin-bottom:16px;border-radius:12px;border:1px solid #bbf7d0;background:#f0fdf4;color:#166534;padding:11px 14px}.inventory-import-result h3{margin:0 0 6px;font-size:.92rem}.inventory-import-result p{margin:4px 0;font-size:.86rem}@media(max-width:1100px){.inventory-toolbar{grid-template-columns:1fr 1fr}.inventory-stock-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.inventory-toolbar,.inventory-stock-summary{grid-template-columns:1fr}}@keyframes riseIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeDown{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}@media(max-width:1024px){.inventory-kpis{grid-template-columns:1fr}.inventory-toolbar{grid-template-columns:1fr 1fr}.inventory-search{grid-column:1 / -1}.inventory-form-row{grid-template-columns:1fr 1fr}}@media(max-width:768px){.inventory-container{padding:18px 12px 24px}.inventory-header{flex-direction:column;align-items:stretch}.inventory-header-actions{width:100%;flex-direction:column}.inventory-toolbar,.inventory-form-row{grid-template-columns:1fr}.inventory-filter,.inventory-select,.inventory-input,.inventory-button,.inventory-primary-btn,.inventory-outline-btn{width:100%}.inventory-pagination{flex-direction:column;align-items:flex-start}}.inventory-stock-page{min-height:100vh;padding:94px 18px 36px;background:radial-gradient(circle at 0 0,#e9f0fb 0,#e9f0fb00 32%),radial-gradient(circle at 100% 0,#eef4ff 0,#eef4ff00 36%),#f4f7fb}.inventory-stock-shell{max-width:1260px;margin:0 auto}.inventory-stock-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px}.inventory-stock-header h1{margin:0;font-size:2.1rem;color:#0f172a}.inventory-stock-header p{margin:6px 0 0;color:#64748b}.inventory-stock-back-btn{height:42px;padding:0 16px;border-radius:10px;border:1px solid #d8e1ef;background:#fff;color:#1e293b;font-weight:700;cursor:pointer}.inventory-stock-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:16px}.inventory-stock-kpi-card{border:1px solid #d8e1ef;border-radius:14px;background:#fff;padding:16px;box-shadow:0 10px 28px #0f172a14}.inventory-stock-kpi-label{margin:0;font-size:.76rem;letter-spacing:.08em;color:#64748b;font-weight:800}.inventory-stock-kpi-value{margin:8px 0 0;font-size:1.9rem;color:#0f172a;font-weight:800}.inventory-stock-kpi-value.danger{color:#e11d48}.inventory-stock-toolbar{border:1px solid #d8e1ef;border-radius:14px;background:#fff;padding:10px;margin-bottom:14px;overflow:hidden}.inventory-stock-search{display:block;width:100%;max-width:100%;box-sizing:border-box;height:42px;border:1px solid #d8e1ef;border-radius:10px;padding:0 12px;font-size:.92rem}.inventory-stock-search:focus{outline:none;border-color:#7aa8ff;box-shadow:0 0 0 3px #3b82f633}.inventory-stock-error{margin-bottom:14px;border-radius:12px;border:1px solid #fecaca;background:#fef2f2;color:#991b1b;padding:11px 14px}.inventory-stock-table-card{border:1px solid #d8e1ef;border-radius:14px;background:#fff;box-shadow:0 10px 28px #0f172a14;overflow:hidden}.inventory-stock-loading{margin:0;padding:24px;color:#64748b}.inventory-stock-table-wrap{overflow-x:auto}.inventory-stock-table-card table{width:100%;border-collapse:collapse;min-width:900px}.inventory-stock-table-card th{text-align:left;padding:14px 16px;font-size:.78rem;letter-spacing:.08em;color:#334155;border-bottom:1px solid #d8e1ef;background:#f8fbff}.inventory-stock-table-card td{padding:14px 16px;border-bottom:1px solid #edf2f7;color:#334155;font-size:.92rem}.inventory-stock-product-name{color:#0f172a;font-weight:700}.inventory-stock-ok{color:#15803d;font-weight:800}.inventory-stock-danger{color:#be123c;font-weight:800}.inventory-stock-pill{display:inline-block;border-radius:999px;padding:3px 10px;font-size:.74rem;font-weight:700}.inventory-stock-pill.ok{color:#166534;background:#dcfce7}.inventory-stock-pill.danger{color:#9f1239;background:#ffe4e6}.inventory-stock-empty-row{text-align:center;color:#94a3b8}@media(max-width:900px){.inventory-stock-kpis{grid-template-columns:1fr}.inventory-stock-header{flex-direction:column}}
