:root{--table-header-bg: #f8fafc;--table-border: #e2e8f0;--table-row-hover: #f1f5f9;--table-text: #475569;--table-text-head: #64748b}.table-container{background:#fff;border-radius:12px;box-shadow:0 4px 6px -1px #0000000d,0 2px 4px -1px #00000008;overflow:hidden;border:1px solid var(--table-border);margin-bottom:20px}.modern-table{width:100%;border-collapse:collapse;font-size:.95rem}.modern-table thead{background-color:var(--table-header-bg);border-bottom:1px solid var(--table-border)}.modern-table th{padding:16px 20px;text-align:left;font-weight:600;color:var(--table-text-head);text-transform:uppercase;font-size:.75rem;letter-spacing:.05em;cursor:pointer;transition:color .2s;-webkit-user-select:none;user-select:none}.modern-table th:hover{color:var(--primary)}.modern-table th i{margin-left:5px;opacity:.5}.modern-table tbody tr{border-bottom:1px solid var(--table-border);transition:background-color .2s}.modern-table tbody tr:last-child{border-bottom:none}.modern-table tbody tr:hover{background-color:var(--table-row-hover)}.modern-table td{padding:16px 20px;color:var(--table-text);vertical-align:middle}.cell-primary{font-weight:600;color:var(--text-main)}.cell-sub{font-size:.85rem;color:var(--text-muted);display:block}.cell-badge{padding:4px 8px;border-radius:20px;font-size:.75rem;font-weight:600;display:inline-block}.table-footer{display:flex;justify-content:space-between;align-items:center;padding:15px 20px;background-color:#fff;border-top:1px solid var(--table-border)}.pagination-info{font-size:.9rem;color:var(--table-text-head)}.pagination-controls{display:flex;gap:5px}.btn-page{padding:6px 12px;border:1px solid var(--table-border);background:#fff;border-radius:6px;color:var(--table-text);cursor:pointer;font-size:.9rem;transition:all .2s}.btn-page:hover:not(:disabled){background:var(--table-row-hover);color:var(--primary);border-color:var(--primary)}.btn-page.active{background:var(--primary);color:#fff;border-color:var(--primary)}.btn-page:disabled{opacity:.5;cursor:not-allowed;background:#f8fafc}.table-actions{display:flex;gap:8px;justify-content:flex-end}.btn-table-action{width:32px;height:32px;border-radius:6px;border:1px solid var(--table-border);background:#fff;color:var(--text-muted);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s}.btn-table-action:hover{background:var(--primary);color:#fff;border-color:var(--primary)}.btn-table-action.delete:hover{background:#e53e3e;border-color:#e53e3e}.status-confirmed,.status-aprobado{background-color:#c6f6d5;color:#22543d}.status-pending,.status-pendiente{background-color:#feebc8;color:#744210}.status-cancelled,.status-cancelado{background-color:#fed7d7;color:#822727}.status-badge{padding:6px 12px;border-radius:20px;font-size:.8rem;font-weight:600;text-transform:capitalize;display:inline-block;min-width:90px;text-align:center}.print-sheet{transition:box-shadow .2s,transform .2s;cursor:default;border:2px solid transparent}.print-sheet.sheet-active{border-color:var(--primary);box-shadow:0 0 0 4px #76c7b733,0 10px 25px #0000001a;transform:translateY(-2px)}.print-sheet.sheet-active:before{content:"Editor Activo";position:absolute;top:-25px;right:0;background:var(--primary);color:#fff;font-size:.75rem;padding:2px 8px;border-radius:4px 4px 0 0;font-weight:600}.mood-item.add-slot-btn{background-color:#f0fdfa;border:2px dashed var(--primary);color:var(--primary);cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;transition:all .2s}.mood-item.add-slot-btn:hover{background-color:#e6fffa;transform:scale(1.02)}.mood-item.add-slot-btn i{font-size:1.5rem;margin-bottom:5px}.style-checklist{margin-top:15px;background:#fafafa;border:1px solid var(--border);border-radius:8px;padding:10px;font-size:.9rem}.style-checklist h4{margin:0 0 8px;font-size:.85rem;color:var(--gray);text-transform:uppercase;letter-spacing:.5px;display:flex;justify-content:space-between;align-items:center}.checklist-input{width:100%;padding:6px 10px;border:1px solid #ddd;border-radius:4px;font-family:inherit;font-size:.9rem;margin-bottom:8px}.checklist-input:focus{outline:none;border-color:var(--primary);background:#fff}.checklist-items{list-style:none;padding:0;margin:0}.checklist-item{display:flex;align-items:flex-start;gap:8px;padding:4px 0;border-bottom:1px dotted #eee}.checklist-item:last-child{border-bottom:none}.checklist-item input[type=checkbox]{margin-top:4px;cursor:pointer;accent-color:var(--primary)}.checklist-item span{flex:1;word-break:break-word;cursor:default;transition:color .2s}.checklist-item.completed span{text-decoration:line-through;color:#ccc}.checklist-item .delete-item{color:#ccc;cursor:pointer;font-size:.8rem;visibility:hidden}.checklist-item:hover .delete-item{visibility:visible}.checklist-item .delete-item:hover{color:#ef4444}.printing-mode .style-checklist{border:none;background:transparent;padding:0;margin-top:20px}.printing-mode .checklist-input{display:none}.tool-dropdown-wrapper{position:relative;display:inline-block}.tool-dropdown-menu{display:none;position:absolute;top:100%;left:0;margin-top:5px;background:#fff;box-shadow:0 4px 12px #00000026;border-radius:6px;border:1px solid #eee;z-index:1000;min-width:140px;overflow:hidden}.tool-dropdown-menu.show{display:block}.tool-dropdown-item{padding:10px 15px;font-size:.85rem;color:var(--dark);cursor:pointer;display:flex;align-items:center;gap:8px;transition:background .2s}.tool-dropdown-item:hover{background:#f7fafc;color:var(--primary)}.presentation-toolbar{overflow:visible!important}.btn-premium{padding:8px 16px;border-radius:12px;font-weight:600;font-size:.9rem;cursor:pointer;transition:all .2s cubic-bezier(.25,.8,.25,1);display:inline-flex;align-items:center;gap:8px;border:1px solid transparent;background:#fff;color:var(--dark);box-shadow:0 2px 4px #0000000d;height:38px}.btn-premium:hover{transform:translateY(-2px);box-shadow:0 5px 15px #0000001a}.btn-premium i{font-size:1rem}.btn-premium-primary{background:var(--primary);color:#fff;box-shadow:0 4px 10px #76c7b74d}.btn-premium-primary:hover{background:var(--primary-dark);color:#fff}.btn-premium-secondary{background:#fff;border:1px solid var(--border);color:var(--dark)}.btn-premium-secondary:hover{border-color:var(--primary);color:var(--primary)}.btn-premium-accent{background:#fff7ed;color:#ea580c;border:1px solid #FFEDD5}.btn-premium-accent:hover{background:#ffedd5}.btn-premium-danger{background:#fef2f2;color:#dc2626;border:1px solid #FECACA}.btn-premium-danger:hover{background:#fee2e2}.guide-masonry{display:flex;flex-direction:row;flex-wrap:wrap;align-content:flex-start;gap:15px;width:100%}.guide-card.full-width{width:auto!important;min-width:300px;flex:1 1 48%}.guide-card{flex-grow:0}.modal{display:none;position:fixed;z-index:3000;left:0;top:0;width:100%;height:100%;overflow:auto;background-color:#00000080;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:fadeIn .3s}.modal-content{background-color:#fff;margin:5% auto;padding:25px;border:1px solid var(--border);width:90%;max-width:800px;border-radius:16px;box-shadow:0 10px 25px #0003;position:relative;animation:slideIn .3s}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;border-bottom:1px solid var(--border);padding-bottom:15px}.modal-header h2,.modal-header h3{margin:0;color:var(--dark);font-family:var(--font-heading)}.close-modal{color:#aaa;float:right;font-size:28px;font-weight:700;cursor:pointer;line-height:1;transition:color .2s}.close-modal:hover,.close-modal:focus{color:var(--primary);text-decoration:none;cursor:pointer}.premium-table-container{background:#fff;border-radius:12px;box-shadow:0 4px 20px #0000000d;overflow:hidden;font-family:Inter,sans-serif}.premium-table-header{padding:20px 25px;border-bottom:1px solid #f0f0f0;display:flex;justify-content:space-between;align-items:center;background:#fff}.premium-table-header h2{margin:0;font-size:1.25rem;color:#1a202c;font-weight:700}.premium-table-header .table-controls{display:flex;gap:12px}.control-input{padding:8px 12px;border:1px solid #e2e8f0;border-radius:8px;font-size:.9rem;color:#4a5568;background:#f8fafc;transition:all .2s}.control-input:focus{background:#fff;border-color:var(--primary, #3b82f6);box-shadow:0 0 0 3px #3b82f61a;outline:none}.btn-premium{background:var(--primary, #3b82f6);color:#fff;padding:8px 16px;border-radius:8px;font-weight:600;border:none;cursor:pointer;transition:transform .1s,box-shadow .2s;display:flex;align-items:center;gap:8px}.btn-premium:hover{transform:translateY(-1px);box-shadow:0 4px 12px #3b82f64d}.premium-table{width:100%;border-collapse:separate;border-spacing:0}.premium-table th{background:#f8fafc;color:#64748b;font-weight:600;font-size:.85rem;text-transform:uppercase;letter-spacing:.05em;padding:16px 20px;text-align:left;border-bottom:1px solid #e2e8f0}.premium-table td{padding:16px 20px;border-bottom:1px solid #f1f5f9;color:#334155;font-size:.95rem;transition:background .2s}.premium-table tr:hover td{background:#f8fafc;cursor:pointer}.premium-table tr:last-child td{border-bottom:none}.badge{display:inline-flex;align-items:center;padding:4px 10px;border-radius:999px;font-size:.75rem;font-weight:600;line-height:1}.badge-draft{background:#f1f5f9;color:#64748b;border:1px solid #e2e8f0}.badge-issued{background:#eff6ff;color:#2563eb;border:1px solid #dbeafe}.badge-paid{background:#f0fdf4;color:#16a34a;border:1px solid #dcfce7}.badge-late{background:#fef2f2;color:#dc2626;border:1px solid #fee2e2}.badge-fiscal{background:#fff7ed;color:#ea580c;border:1px solid #ffedd5}.badge-void{background:#000;color:#fff}.row-actions{opacity:1;display:flex;gap:8px}.action-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px;color:#64748b;background:transparent;border:none;cursor:pointer;transition:all .2s}.action-btn:hover{background:#e2e8f0;color:#1e293b}.invoice-drawer-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#0006;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:999;opacity:0;pointer-events:none;transition:opacity .3s ease}.invoice-drawer-overlay.active{opacity:1;pointer-events:auto}.invoice-drawer{position:fixed;top:0;right:-100%;width:90%;max-width:1400px;height:100vh;background:#f8fafc;z-index:1000;box-shadow:-10px 0 25px #0000001a;transition:right .4s cubic-bezier(.16,1,.3,1);display:flex;flex-direction:column}.invoice-drawer.active{right:0}.drawer-header{background:#fff;padding:15px 30px;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;align-items:center;box-shadow:0 2px 4px #00000005}.drawer-title input{font-size:1.25rem;font-weight:700;border:none;outline:none;color:#1e293b;width:100%;background:transparent}.drawer-actions{display:flex;gap:12px}.drawer-body{flex:1;display:flex;overflow:hidden}.editor-panel{flex:0 0 450px;background:#fff;border-right:1px solid #e2e8f0;padding:25px;overflow-y:auto;display:flex;flex-direction:column;gap:20px}.panel-section-title{font-size:.85rem;text-transform:uppercase;color:#94a3b8;font-weight:600;margin-bottom:12px;letter-spacing:.05em}.premium-input-group{margin-bottom:15px}.premium-input-group label{display:block;margin-bottom:6px;font-size:.9rem;color:#475569;font-weight:500}.premium-input{width:100%;padding:10px 12px;border:1px solid #cbd5e1;border-radius:6px;font-size:.95rem;color:#1e293b;transition:border .2s}.premium-input:focus{border-color:var(--primary, #3b82f6);outline:none}.editor-item-row{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:12px;margin-bottom:10px;position:relative;transition:all .2s}.editor-item-row:hover{border-color:#cbd5e1;box-shadow:0 2px 5px #0000000d}.editor-item-top{display:flex;gap:10px;margin-bottom:8px}.editor-item-bottom{display:flex;justify-content:space-between;align-items:center}.btn-add-item{width:100%;padding:10px;border:2px dashed #cbd5e0;border-radius:8px;background:transparent;color:#64748b;font-weight:600;cursor:pointer;transition:all .2s}.btn-add-item:hover{border-color:var(--primary, #3b82f6);color:var(--primary, #3b82f6);background:#eff6ff}.preview-panel{flex:1;background:#525659;padding:40px;overflow-y:auto;display:flex;justify-content:center;align-items:flex-start}.paper-sheet{background:#fff;width:210mm;min-height:297mm;padding:20mm;box-shadow:0 0 20px #0000004d;position:relative;transition:transform .2s}.fiscal-lock-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#ffffffb3;z-index:10;display:flex;flex-direction:column;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);color:#444}.full-screen-view{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#f8fafc;z-index:2000;display:none;flex-direction:column;overflow-y:auto;opacity:0;transition:opacity .3s ease}.full-screen-view.active{display:flex;opacity:1}.view-header{background:#fff;border-bottom:1px solid #e2e8f0;position:sticky;top:0;z-index:10;box-shadow:0 2px 10px #00000008;transform:translateY(-20px);opacity:0;transition:all .4s cubic-bezier(.16,1,.3,1)}.view-header-content{max-width:1600px;margin:0 auto;padding:15px 40px;display:flex;justify-content:space-between;align-items:center}.full-screen-view.active .view-header{transform:translateY(0);opacity:1}.view-title h2{margin:0;font-size:1.25rem;color:#1e293b}.view-actions{display:flex;gap:10px}.view-content{padding:30px 40px;max-width:1600px;margin:0 auto;width:100%;display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start;height:calc(100vh - 80px);overflow:hidden}.editor-column{display:flex;flex-direction:column;gap:20px;padding-right:10px;overflow-y:auto;height:100%;padding-bottom:40px;scrollbar-width:thin}.preview-column{background:#e2e8f0;border-radius:12px;padding:30px;height:100%;overflow-y:auto;display:flex;justify-content:center;box-shadow:inset 0 2px 10px #0000000d}#livePreviewPaper{background:#fff;width:100%;max-width:800px;min-height:1000px;padding:40px;box-shadow:0 10px 30px #0000001a;border-radius:4px;transform-origin:top center;transition:transform .3s ease}.invoice-card{background:#fff;border-radius:12px;border:1px solid #e2e8f0;padding:25px;box-shadow:0 4px 6px #00000005;opacity:0;transform:translateY(20px);transition:all .5s cubic-bezier(.16,1,.3,1)}.full-screen-view.active .editor-column .invoice-card{opacity:1;transform:translateY(0)}.full-screen-view.active .invoice-card{opacity:1!important;transform:translateY(0)!important}.full-screen-view.active .editor-column .invoice-card:nth-child(1){transition-delay:.1s}.full-screen-view.active .editor-column .invoice-card:nth-child(2){transition-delay:.2s}.preview-column{opacity:0;transform:translate(20px);transition:all .6s cubic-bezier(.16,1,.3,1);transition-delay:.3s}.full-screen-view.active .preview-column{opacity:1;transform:translate(0)}@media (max-width: 1100px){.view-content{grid-template-columns:1fr;height:auto;overflow-y:auto}.preview-column{display:none}}.client-card-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:20px;align-items:start}.form-group label{display:block;margin-bottom:6px;font-weight:500;color:#64748b;font-size:.85rem}.items-table{width:100%;border-collapse:collapse}.items-table th{text-align:left;padding:10px;color:#64748b;font-size:.85rem;border-bottom:1px solid #e2e8f0}.items-table td{padding:10px;vertical-align:top}.items-table input{width:100%;padding:8px;border:1px solid #e2e8f0;border-radius:6px;font-family:inherit;transition:border-color .2s}.items-table input:focus{outline:none;border-color:var(--primary, #3b82f6);box-shadow:0 0 0 3px #3b82f61a}.btn-add-item-row{margin-top:15px;color:var(--primary, #3b82f6);background:none;border:none;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;gap:5px;padding:5px 10px;border-radius:6px;transition:background .2s}.btn-add-item-row:hover{background:#ecfdf5}.summary-section{display:flex;justify-content:flex-end;margin-top:20px}.summary-box{width:300px}.summary-row{display:flex;justify-content:space-between;margin-bottom:10px;font-size:.95rem;color:#475569}.summary-row.total{border-top:2px solid #e2e8f0;padding-top:10px;font-weight:700;color:#1a202c}.mode-conduce .price-col,.mode-conduce .total-col,.mode-conduce .invoice-totals-section{display:none!important}.conduce-signatures{display:none;margin-top:50px;padding-top:20px;border-top:1px solid #eee}.mode-conduce .conduce-signatures{display:flex;justify-content:space-between}.signature-box{width:45%;border-top:1px solid #333;padding-top:10px;text-align:center;font-weight:600}.status-badge{padding:4px 10px;border-radius:20px;font-size:.8rem;font-weight:600}.status-borrador{background:#e2e8f0;color:#475569}.status-pendiente{background:#fff7ed;color:#c2410c;border:1px solid #ffedd5}.status-aprobada{background:#eff6ff;color:#1d4ed8;border:1px solid #dbeafe}.status-emitida{background:#f0fdf4;color:#15803d;border:1px solid #dcfce7}.status-pagada{background:#faf5ff;color:#7e22ce;border:1px solid #f3e8ff}
