body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f5f5f5;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}*{box-sizing:border-box}.container{margin:0 auto;max-width:1200px;padding:20px}.card{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:20px;padding:20px}.button{background-color:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:16px;padding:10px 20px}.button:hover{background-color:#0056b3}.button:disabled{background-color:#ccc;cursor:not-allowed}.form-group{margin-bottom:15px}.form-group label{font-weight:500;margin-bottom:5px}.form-group input,.form-group select,.form-group textarea{border:1px solid #ddd;border-radius:4px;font-size:14px;padding:8px 12px;width:100%}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#007bff;outline:none}.error{color:#dc3545}.error,.success{font-size:14px;margin-top:5px}.success{color:#28a745}.auth-container{align-items:center;display:flex;justify-content:center;min-height:calc(100vh - 80px);padding:20px}.auth-card{background:#fff;border-radius:8px;box-shadow:0 4px 6px #0000001a;max-width:400px;padding:40px;width:100%}.auth-card h2{color:#2c3e50;margin-bottom:30px;margin-top:0;text-align:center}.auth-footer{color:#666;margin-top:20px;text-align:center}.auth-footer a{color:#007bff;text-decoration:none}.auth-footer a:hover{text-decoration:underline}.dashboard-actions{display:flex;flex-wrap:wrap;gap:15px;margin-top:30px}.dashboard-actions .button{display:inline-block;text-decoration:none}.button-secondary{background-color:#6c757d!important}.button-secondary:hover{background-color:#5a6268!important}.kpi-section{border-top:2px solid #e9ecef;margin-top:30px;padding-top:24px}.kpi-titulo{color:#333;font-size:1.3rem;margin-bottom:20px}.kpi-empty,.kpi-loading{color:#6c757d;font-style:italic;padding:16px 0}.kpi-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));margin-bottom:30px}.kpi-card{align-items:center;border-radius:12px;box-shadow:0 2px 8px #00000014;display:flex;flex-direction:column;justify-content:center;padding:20px 12px;text-align:center}.kpi-icon{font-size:1.8rem;margin-bottom:8px}.kpi-valor{color:#222;font-size:1.4rem;font-weight:700;margin-bottom:4px}.kpi-label{color:#555;font-size:.78rem;font-weight:500}.kpi-primary{background:#e8f4fd;border-left:4px solid #2196f3}.kpi-success{background:#e8f8f0;border-left:4px solid #4caf50}.kpi-info{background:#f3e8fd;border-left:4px solid #9c27b0}.kpi-warning{background:#fff8e1;border-left:4px solid #ff9800}.kpi-neutral{background:#f5f5f5;border-left:4px solid #9e9e9e}.kpi-recientes h3{color:#444;font-size:1.05rem;margin-bottom:12px}.kpi-tabla{border-collapse:collapse;font-size:.88rem;width:100%}.kpi-tabla th{background:#f8f9fa;border-bottom:2px solid #dee2e6;color:#555;font-weight:600;padding:10px 12px;text-align:left}.kpi-tabla td{border-bottom:1px solid #f0f0f0;color:#333;padding:10px 12px}.kpi-tabla tr:hover td{background:#fafafa}.ganancia-cell{color:#2e7d32;font-weight:600}.estado-badge-mini{border-radius:12px;font-size:.75rem;font-weight:600;padding:3px 8px;text-transform:uppercase}.estado-completada{background:#d4edda;color:#155724}.estado-pendiente{background:#fff3cd;color:#856404}.estado-cancelada{background:#f8d7da;color:#721c24}.estado-reembolsada{background:#d1ecf1;color:#0c5460}.eventos-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:30px}.eventos-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.evento-card{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;display:flex;flex-direction:column;padding:20px}.evento-card p{color:#495057;font-size:14px;margin:10px 0}.evento-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:15px}.evento-actions .button,.evento-actions .button-danger,.evento-actions .button-edit,.evento-actions .button-secondary,.evento-actions a.button{flex-basis:calc(50% - 4px);flex-grow:1;flex-shrink:1;font-size:13px;min-width:120px;overflow:hidden;padding:10px 12px;text-align:center;text-overflow:ellipsis;white-space:nowrap}@media (max-width:768px){.evento-actions .button,.evento-actions .button-danger,.evento-actions .button-edit,.evento-actions .button-secondary,.evento-actions a.button{flex:1 1 100%}}.button-danger{background-color:#dc3545;white-space:nowrap}.button-danger:hover{background-color:#c82333}.button-secondary{background-color:#6c757d;white-space:nowrap}.button-secondary:hover{background-color:#5a6268}.button-edit{background-color:#28a745;color:#fff}.button-edit:hover{background-color:#218838}.modal{align-items:center;background:#00000080;display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:1000}.modal-content{max-width:500px;overflow-y:auto;padding:30px;width:90%}.modal-actions{margin-top:20px}.price-modal-info{background:#f8f9fa;border-radius:6px;margin-bottom:20px;padding:15px}.price-modal-info p{color:#495057;margin:8px 0}.alert-info{background:#d1ecf1;border:1px solid #bee5eb;border-radius:4px;color:#0c5460;font-size:14px;margin-top:15px;padding:12px}.evento-card h3{border-bottom:2px solid #e9ecef;color:#2c3e50;font-size:20px;font-weight:600;margin-bottom:15px;margin-top:0;padding-bottom:10px}.evento-card p strong{color:#495057;display:inline-block;font-weight:600;min-width:120px}.evento-card:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-2px);transition:all .3s ease}@media (max-width:480px){.eventos-grid{grid-template-columns:1fr}.evento-card{padding:15px}.evento-card h3{font-size:18px}}.upload-container{margin:0 auto;max-width:1200px;padding:20px}.upload-header{align-items:center;display:flex;gap:20px;margin-bottom:30px}.upload-header h1{color:#333;margin:0}.button-back{background:#6c757d;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:background .2s}.button-back:hover{background:#5a6268}.upload-card{background:#fff;border-radius:12px;box-shadow:0 4px 6px #0000001a;padding:30px}.dropzone{background:#f8f9fa;border:3px dashed #cbd5e0;border-radius:12px;cursor:pointer;padding:60px 40px;text-align:center;transition:all .3s ease}.dropzone:hover{background:#e7f3ff;border-color:#007bff}.dropzone.drag-active{background:#d4edda;border-color:#28a745;transform:scale(1.02)}.dropzone-content{pointer-events:none}.dropzone-icon{animation:float 3s ease-in-out infinite;font-size:72px;margin-bottom:20px}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.dropzone-title{color:#333;font-size:24px;font-weight:600;margin:0 0 10px}.dropzone-subtitle{color:#666;font-size:16px;margin:0 0 20px}.button-browse{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;box-shadow:0 4px 12px #667eea66;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:12px 32px;pointer-events:all;transition:all .3s}.button-browse:hover{box-shadow:0 6px 16px #667eea99;transform:translateY(-2px)}.dropzone-info{color:#999;font-size:13px;margin-top:15px}.files-preview-section{margin-top:40px}.preview-header{align-items:center;border-bottom:2px solid #e9ecef;display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:15px}.preview-header h3{color:#333;font-size:20px;margin:0}.button-clear-all{background:#dc3545;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:8px 16px;transition:background .2s}.button-clear-all:hover{background:#c82333}.preview-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.preview-item{background:#f8f9fa;border-radius:12px;box-shadow:0 2px 8px #0000001a;overflow:hidden;position:relative;transition:transform .2s,box-shadow .2s}.preview-item:hover{box-shadow:0 4px 16px #00000026;transform:translateY(-4px)}.preview-item img{display:block;height:200px;object-fit:cover;width:100%}.preview-overlay{background:linear-gradient(0deg,#000c,#0000);bottom:0;color:#fff;left:0;padding:15px 10px 10px;position:absolute;right:0}.preview-name{font-size:13px;font-weight:600;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.preview-size{color:#ddd;font-size:11px;margin:4px 0 0}.preview-remove{align-items:center;background:#dc3545e6;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:24px;height:32px;justify-content:center;line-height:1;opacity:0;position:absolute;right:8px;top:8px;transition:all .2s;width:32px}.preview-item:hover .preview-remove{opacity:1}.preview-remove:hover{background:#c82333;transform:scale(1.1)}.preview-dorsal-row{align-items:center;display:flex;gap:5px;margin-top:6px;padding:0 2px}.preview-dorsal-label{color:#ffe066;flex-shrink:0;font-size:13px;font-weight:700}.preview-dorsal-input{background:#0000008c;border:1.5px solid #ffffff59;border-radius:6px;color:#fff;flex:1 1;font-size:13px;font-weight:700;outline:none;padding:4px 8px;text-align:center;transition:border-color .2s,background .2s}.preview-dorsal-input::placeholder{color:#ffffff80;font-weight:400}.preview-dorsal-input:focus{background:#000000bf;border-color:#ffe066}.preview-dorsal-input:not(:placeholder-shown){background:#28a7454d;border-color:#28a745}.upload-actions{margin-top:30px;text-align:center}.button-upload{align-items:center;background:linear-gradient(135deg,#28a745,#20c997);border:none;border-radius:12px;box-shadow:0 4px 12px #28a74566;color:#fff;cursor:pointer;display:inline-flex;font-size:18px;font-weight:600;gap:10px;padding:16px 48px;transition:all .3s}.button-upload:hover:not(:disabled){box-shadow:0 6px 16px #28a74599;transform:translateY(-2px)}.button-upload:disabled{background:#6c757d;cursor:not-allowed;transform:none}.button-cerrar-evento{background:linear-gradient(135deg,#dc3545,#c82333);border:none;border-radius:10px;box-shadow:0 4px 10px #dc354559;color:#fff;cursor:pointer;font-size:15px;font-weight:600;padding:12px 28px;transition:all .3s;white-space:nowrap}.button-cerrar-evento:hover:not(:disabled){box-shadow:0 6px 14px #dc35458c;transform:translateY(-2px)}.button-cerrar-evento:disabled{background:#6c757d;box-shadow:none;cursor:not-allowed;transform:none}.spinner{animation:spin .8s linear infinite;border:3px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:18px;width:18px}@keyframes spin{to{transform:rotate(1turn)}}.upload-info{background:linear-gradient(135deg,#e7f3ff,#f0f8ff);border-left:5px solid #007bff;border-radius:12px;margin-top:40px;padding:25px}.upload-info h3{color:#007bff;font-size:18px;margin:0 0 15px}.upload-info ul{list-style:none;margin:0;padding-left:20px}.upload-info li{color:#333;font-size:14px;line-height:1.6;margin:12px 0;padding-left:10px}@media (max-width:768px){.upload-container{padding:15px}.upload-card{padding:20px}.dropzone{padding:40px 20px}.dropzone-icon{font-size:56px}.dropzone-title{font-size:20px}.preview-grid{gap:15px;grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.preview-item img{height:150px}.button-upload{font-size:16px;padding:14px 32px}}.fotos-evento-container{margin:0 auto;max-width:1400px;padding:20px}.header{margin-bottom:30px}.evento-info{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-top:20px;padding:20px}.evento-info h2{color:#333;margin:0 0 10px}.evento-stats{color:#666;font-size:14px;margin-top:10px}.vista-controls{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;display:flex;gap:10px;justify-content:center;margin-bottom:20px;padding:15px 20px}.button-view{background:#f8f9fa;border:2px solid #dee2e6;border-radius:4px;color:#333;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:all .2s}.button-view:hover{background:#e9ecef;border-color:#adb5bd}.button-view.active{background:#007bff;border-color:#007bff;color:#fff}.foto-placeholder-small{align-items:center;background:linear-gradient(135deg,#28a745,#20c997);border-radius:50%;box-shadow:0 2px 8px #28a7454d;display:flex;height:60px;justify-content:center;min-width:60px;width:60px}.foto-icon-small{color:#fff;font-size:32px;font-weight:700}.foto-row{align-items:center;display:flex;flex-wrap:wrap;gap:15px}.button-small{background:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:8px 16px;transition:background .2s;white-space:nowrap}.button-small:hover{background:#0056b3}.button-delete{align-items:center;background-color:#dc3545;border:none;border-radius:4px;color:#fff;cursor:pointer;display:flex;font-size:14px;gap:4px;padding:8px 16px;transition:background-color .3s;white-space:nowrap}.button-delete:hover:not(:disabled){background-color:#c82333}.button-delete:disabled{background-color:#6c757d;cursor:not-allowed;opacity:.5}.detail-row{align-items:center;display:flex;flex-wrap:wrap;gap:20px;margin-bottom:10px}.fotos-list{display:flex;flex-direction:column;gap:15px}.foto-item{align-items:center;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;display:flex;gap:15px;padding:15px;transition:transform .2s,box-shadow .2s}.foto-item:hover{box-shadow:0 4px 8px #00000026;transform:translateX(5px)}.foto-details-inline{display:flex;flex:1 1;flex-direction:column;gap:8px}.foto-details-inline p{align-items:center;color:#333;display:flex;font-size:14px;gap:8px;margin:0}.foto-details-inline strong{color:#666}.foto-item .foto-thumbnail{border-radius:8px;cursor:pointer;height:150px;min-width:150px;object-fit:cover;transition:transform .2s;width:150px}.foto-item .foto-thumbnail:hover{transform:scale(1.05)}.fotos-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));margin-top:20px}.foto-card{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;cursor:pointer;overflow:hidden;transition:transform .2s,box-shadow .2s}.foto-card:hover{box-shadow:0 4px 8px #0003;transform:translateY(-5px)}.foto-thumbnail{height:200px;object-fit:cover;width:100%}.foto-info{display:flex;flex-wrap:wrap;gap:8px;padding:10px}.corredor-badge{background:#007bff;color:#fff;font-weight:600}.corredor-badge,.estado-badge{border-radius:4px;font-size:12px;padding:4px 8px}.estado-procesando{background:#ffc107;color:#333}.estado-disponible{background:#28a745;color:#fff}.estado-vendida{background:#6c757d;color:#fff}.estado-error{background:#dc3545;color:#fff}.vendida-badge{background:#17a2b8}.precio-badge,.vendida-badge{border-radius:4px;color:#fff;font-size:12px;font-weight:600;padding:4px 8px}.precio-badge{background:#28a745}.empty-state{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:60px 20px;text-align:center}.empty-state p{color:#666;font-size:16px;margin-bottom:20px}.loading-container{min-height:400px}.loading-container,.modal-overlay{align-items:center;display:flex;justify-content:center}.modal-overlay{background:#000c;bottom:0;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.modal-content{background:#fff;border-radius:8px;max-height:90vh;max-width:90%;overflow:auto;padding:20px;position:relative}.modal-close{align-items:center;background:#fff;border:none;border-radius:50%;box-shadow:0 2px 4px #0003;cursor:pointer;display:flex;font-size:32px;height:40px;justify-content:center;position:absolute;right:10px;top:10px;width:40px;z-index:1}.modal-close:hover{background:#f0f0f0}.foto-full{display:block;margin:0 auto;max-height:70vh;max-width:100%;object-fit:contain}.foto-details{background:#f8f9fa;border-radius:4px;margin-top:20px;padding:15px}.foto-details p{align-items:center;color:#333;display:flex;gap:8px;margin:8px 0}.foto-details .detail-row p{margin:5px 0}.vendida-info{background:#d4edda;border-radius:4px;color:#28a745;font-weight:600;margin-top:10px;padding:8px 12px}.button-secondary{background:#6c757d;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:background .2s}.button-secondary:hover{background:#5a6268}.foto-actions{gap:10px}.button-preview,.foto-actions{align-items:center;display:flex}.button-preview{background:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;gap:4px;padding:8px 16px;transition:background-color .3s;white-space:nowrap}.button-preview:hover{background:#0056b3}.preview-loading{padding:40px;text-align:center}.preview-loading p{color:#666;margin:10px 0}.cost-info{color:#28a745;font-size:12px;font-weight:600}.preview-image-container{text-align:center}.preview-image{border-radius:8px;box-shadow:0 4px 8px #0000001a;max-height:70vh;max-width:100%;object-fit:contain}.preview-info{background:#e7f3ff;border-left:4px solid #007bff;border-radius:4px;color:#004085;font-size:14px;margin-top:15px;padding:12px;text-align:left}.button-edit{align-items:center;background:#ffc107;border:none;border-radius:4px;color:#333;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:4px;padding:8px 16px;transition:background-color .3s;white-space:nowrap}.button-edit:hover{background:#e0a800}.modal-edit{max-width:500px}.edit-form{padding:10px 0}.edit-info{background:#fff3cd;border-left:4px solid #ffc107;border-radius:4px;color:#856404;font-size:14px;margin-bottom:20px;padding:12px}.edit-info strong{color:#333}.edit-info small{color:#856404;display:block;margin-top:8px}.form-group{margin-bottom:20px}.form-group label{color:#333;display:block;font-weight:600;margin-bottom:8px}.form-input{border:2px solid #dee2e6;border-radius:4px;box-sizing:border-box;font-size:16px;padding:10px 12px;transition:border-color .2s;width:100%}.form-input:focus{border-color:#007bff;outline:none}.modal-actions{display:flex;gap:10px;justify-content:flex-end}.modal-actions .button,.modal-actions .button-secondary{padding:10px 24px}.modal-actions .button-secondary:disabled,.modal-actions .button:disabled{cursor:not-allowed;opacity:.6}.ventas-container{margin:40px auto;max-width:1100px;padding:0 20px}.ventas-titulo{color:#2c3e50;font-size:1.8rem;margin-bottom:24px}.ventas-empty,.ventas-loading{color:#666;font-size:1rem}.ventas-error{color:#e74c3c;font-size:1rem}.ventas-table-wrapper{overflow-x:auto}.ventas-table{border-collapse:collapse;font-size:.9rem;width:100%}.ventas-table th{background-color:#2c3e50;color:#fff;padding:10px 14px;text-align:left;white-space:nowrap}.ventas-table td{border-bottom:1px solid #e0e0e0;padding:10px 14px;vertical-align:middle}.ventas-table tbody tr:hover{background-color:#f5f8fa}.monto{color:#27ae60;font-weight:600}.estado-badge{border-radius:12px;display:inline-block;font-size:.8rem;font-weight:600;padding:3px 10px;text-transform:uppercase}.estado-completada{background-color:#d4efdf;color:#1e8449}.estado-pendiente{background-color:#fef9e7;color:#b7950b}.estado-cancelada{background-color:#fadbd8;color:#a93226}.estado-reembolsada{background-color:#d6eaf8;color:#1a5276}.whatsapp-badge{color:#777;font-size:.75rem;margin-left:6px}.ventas-resumen{background-color:#f0f4f8;border-radius:8px;color:#2c3e50;display:flex;font-size:.95rem;gap:32px;margin-top:20px;padding:16px 20px}.navbar{background-color:#2c3e50;box-shadow:0 2px 4px #0000001a;padding:1rem 0}.navbar-container{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:1200px;padding:0 20px}.navbar-logo{color:#fff;font-size:24px;font-weight:700;text-decoration:none}.navbar-logo:hover{color:#3498db}.navbar-menu{align-items:center;display:flex;gap:2rem;list-style:none;margin:0;padding:0}.navbar-item{margin:0}.navbar-link{color:#fff;font-size:16px;text-decoration:none;transition:color .3s}.navbar-link:hover{color:#3498db}.navbar-user{color:#ecf0f1;font-size:14px}.button-link{background:none;border:none;cursor:pointer;font-size:16px;padding:0}
/*# sourceMappingURL=main.36b48e84.css.map*/