*{box-sizing:border-box;margin:0;padding:0}:focus{outline:none}:root{--primary:#7c3aed;--primary-dark:#6d28d9;--success:#10b981;--danger:#ef4444;--bg:#f8fafc;--card-bg:#fff;--text:#1e293b;--text-light:#64748b;--border-radius:12px;--shadow:0 2px 8px #0000001a;--shadow-lg:0 4px 16px #00000026}body{background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:16px;line-height:1.5}.app-mobile{background:var(--bg);max-width:430px;min-height:100vh;margin:0 auto;padding:0 .75rem;position:relative;overflow:hidden;box-shadow:0 0 30px #00000026}@media (min-width:431px){.app-mobile{max-width:100%}.main{padding:1.5rem 2rem}.card{margin-left:.5rem;margin-right:.5rem;padding:1.5rem}.header h1{font-size:1.5rem}.privilegios-header{flex-direction:row;justify-content:space-between}.privilegios-title{text-align:center}.privilegios-title h3{font-size:1.4rem}.privilegios-list,.privilegios-month{margin-left:.5rem;margin-right:.5rem}.preview-modal{max-width:600px}.preview-summary{grid-template-columns:repeat(5,1fr)!important}}.privilegios-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.25rem;display:flex}.privilegios-title h3{margin:0;font-size:1rem;font-weight:600}.privilegios-title span{color:#6b7280;font-size:.8rem}.app-mobile>*{z-index:1;position:relative}.card,.modal,.lista .card{-webkit-backdrop-filter:blur(20px);background:#ffffffbf;border:1px solid #ffffff80;border-top-color:#ffffffb3;border-radius:16px;box-shadow:0 8px 32px #7c3aed26,0 2px 8px #0000001a,inset 0 1px #fff9}.header{-webkit-backdrop-filter:blur(20px);background:#ffffffb3;border-bottom:1px solid #7c3aed26;box-shadow:0 4px 20px #7c3aed14}.modal-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0000004d}.modal{-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);background:#ffffffe6;border:1px solid #fff9;border-top-color:#fffc;box-shadow:0 25px 50px -12px #7c3aed40,0 12px 24px #00000026}.header{background:linear-gradient(135deg, var(--primary), var(--primary-dark));color:#fff;text-align:center;z-index:100;padding:1.25rem;position:sticky;top:0;box-shadow:0 4px 12px #00000026}.header h1{font-size:1.1rem;font-weight:600}.header p{opacity:.9;margin-top:.25rem;font-size:.95rem;font-weight:500}.main{padding:1.25rem 1.25rem 5rem}.top-actions{flex-direction:column;gap:.75rem;margin-bottom:1.25rem;display:flex}.header-buttons{justify-content:flex-end;gap:.75rem;display:flex}.btn-icon{cursor:pointer;background:#fff;border:none;border-radius:12px;justify-content:center;align-items:center;width:44px;height:44px;font-size:1.25rem;transition:all .2s;display:flex;box-shadow:0 2px 8px #0000001a}.btn-icon:hover{transform:scale(1.05);box-shadow:0 4px 12px #00000026}.btn-icon:active{transform:scale(.95)}.btn-add-main{background:linear-gradient(135deg, var(--primary), var(--primary-dark));color:#fff;cursor:pointer;border:none;border-radius:14px;width:100%;padding:1.25rem;font-size:1.1rem;font-weight:600;transition:all .2s;box-shadow:0 4px 12px #7c3aed66}.btn-add-main:hover{transform:translateY(-2px);box-shadow:0 6px 16px #7c3aed80}.btn-add-main:active{transform:scale(.98)}.add-form{background:var(--card-bg);border:1px solid #e2e8f0;border-radius:16px;margin-bottom:1rem;padding:1.5rem;box-shadow:0 4px 16px #0000001a}.add-form h2{margin-bottom:1.25rem;font-size:1.2rem;font-weight:600}.add-form input{border:2px solid #e2e8f0;border-radius:12px;width:100%;margin-bottom:1rem;padding:1rem;font-size:1rem;transition:all .2s}.add-form input:focus{border-color:var(--primary);outline:none;box-shadow:0 0 0 3px #7c3aed1a}.form-buttons{gap:.75rem;margin-top:1.5rem;display:flex}.btn{cursor:pointer;border:none;border-radius:12px;flex:1;padding:1rem;font-size:1rem;font-weight:600;transition:all .2s;box-shadow:0 2px 8px #0000001a}.btn-primary{background:linear-gradient(135deg, var(--primary), var(--primary-dark));color:#fff}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 4px 12px #7c3aed66}.btn-primary:active{transform:translateY(0)}.btn-secondary{color:var(--text);background:#f1f5f9;border:1px solid #e2e8f0}.btn-secondary:hover{background:#e2e8f0}.lista{flex-direction:column;gap:1rem;display:flex}.card{background:var(--card-bg);border:2px solid #0000;border-left-width:6px;border-radius:16px;margin:0 .25rem;padding:1.25rem;transition:all .2s;box-shadow:0 4px 12px #00000014}.card:hover{transform:translateY(-2px);box-shadow:0 8px 20px #0000001f}.card.confirmed{border-left-color:var(--success)!important}.card-main{justify-content:space-between;align-items:flex-start;margin-bottom:1rem;display:flex}.card-info{flex-direction:column;flex:1;gap:.35rem;display:flex}.name{color:var(--text);font-size:1.05rem;font-weight:700}.phone{color:var(--primary);font-size:.9rem;text-decoration:none}.card-badges{gap:.5rem;margin-top:.25rem;display:flex}.badge{color:var(--text-light);font-size:.8rem}.birthday-input{cursor:pointer;align-items:center;gap:.25rem;display:inline-flex;position:relative}.birthday-input input{opacity:0;cursor:pointer;width:24px;height:24px;position:absolute}.birthday-text{color:#666;margin-left:2px;font-size:.65rem}.group-toggle{align-items:center;gap:0;display:flex}.toggle-btn{color:#475569;cursor:pointer;background-color:#f1f5f9;border:1px solid #e2e8f0;padding:8px 14px;font-size:13px;font-weight:400;transition:all .2s}.toggle-btn:first-child{border-right:none;border-radius:8px 0 0 8px}.toggle-btn:last-child{border-left:none;border-radius:0 8px 8px 0}.toggle-btn.active{color:#fff;background-color:#7c3aed;font-weight:700}.month-group{margin-bottom:16px}.month-header{color:#7c3aed;background-color:#f3e8ff;border-radius:8px;margin-top:12px;margin-bottom:8px;padding:8px 12px;font-size:14px;font-weight:700}.card-actions-right{align-items:center;gap:.75rem;display:flex}.card-actions-right .btn-icon{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:10px;width:40px;height:40px;transition:all .2s}.card-actions-right .btn-icon:hover{background:#e2e8f0;transform:scale(1.05)}.btn-edit{cursor:pointer;background:linear-gradient(135deg,#e0e7ff,#c7d2fe);border:none;border-radius:12px;justify-content:center;align-items:center;width:48px;height:48px;font-size:1.25rem;transition:all .2s;display:flex;box-shadow:0 2px 8px #0000001a}.btn-edit:hover{background:linear-gradient(135deg,#c7d2fe,#a5b4fc);transform:scale(1.05);box-shadow:0 4px 12px #00000026}.btn-edit:active{transform:scale(.95)}.btn-confirm{cursor:pointer;background:linear-gradient(135deg,#fef3c7,#fde68a);border:none;border-radius:12px;width:48px;height:48px;font-size:1.5rem;transition:all .2s;box-shadow:0 2px 8px #0000001a}.btn-confirm:hover{transform:scale(1.05);box-shadow:0 4px 12px #00000026}.btn-confirm.confirmed{background:linear-gradient(135deg,#d1fae5,#a7f3d0)}.status-indicator{cursor:default;font-size:1.5rem;transition:all .2s}.status-indicator.confirmed{color:#10b981;transform:scale(1.1)}.card-actions{border-top:2px solid #f1f5f9;justify-content:space-between;align-items:center;margin-top:1rem;padding-top:1rem;display:flex}.piezas{align-items:center;gap:.75rem;display:flex}.piezas span{color:var(--text-light);font-size:.9rem;font-weight:500}.pieza-buttons{gap:.5rem;display:flex}.pieza-btn{cursor:pointer;width:40px;height:40px;color:var(--text-light);background:#fff;border:2px solid #e2e8f0;border-radius:10px;font-size:1rem;font-weight:600;transition:all .2s;box-shadow:0 2px 4px #0000000d}.pieza-btn:hover{border-color:var(--primary);transform:scale(1.05)}.pieza-btn.active{background:linear-gradient(135deg, var(--primary), var(--primary-dark));border-color:var(--primary);color:#fff;box-shadow:0 4px 12px #7c3aed66}.costo-badge{background:linear-gradient(135deg, var(--success), #059669);color:#fff;border-radius:20px;padding:.5rem 1rem;font-size:.9rem;font-weight:700;box-shadow:0 2px 8px #10b98166}.btn-delete-small{cursor:pointer;opacity:.5;background:0 0;border:none;padding:.5rem;font-size:1.25rem;transition:all .2s}.btn-delete-small:hover{opacity:1;transform:scale(1.1)}.loading,.empty{text-align:center;color:var(--text-light);padding:2rem;font-size:.95rem}.modal-overlay{z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0009;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.modal{background:#fff;border-radius:20px;width:100%;max-width:400px;padding:2rem;animation:.3s modalSlideIn;box-shadow:0 20px 60px #0000004d}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}.modal h2{text-align:center;color:var(--text);margin-bottom:1.5rem;font-size:1.25rem}.modal input{border:2px solid #e2e8f0;border-radius:12px;width:100%;margin-bottom:1rem;padding:1rem;font-size:1rem;transition:all .2s}.modal input:focus{border-color:var(--primary);outline:none;box-shadow:0 0 0 3px #7c3aed1a}.modal .form-field{margin-bottom:1rem}.modal .form-field label{color:#374151;margin-bottom:.5rem;font-weight:600;display:block}.modal .form-field .input-with-check{position:relative}.modal .form-field .input-with-check input{margin-bottom:0}.modal .form-field .check-icon{font-size:1.2rem;font-weight:700;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.modal .form-field .check-valid{color:#059669}.modal .form-field .check-invalid{color:#dc2626}.modal .form-field .field-error{color:#dc2626;margin-top:.25rem;font-size:.8rem;display:block}.modal .form-error{color:#dc2626;background:#fee2e2;border-radius:8px;margin-bottom:1rem;padding:.75rem;font-size:.875rem}.modal .form-buttons{gap:.75rem;margin-top:1.5rem;display:flex}.settings-item{margin-bottom:1rem}.settings-item label{margin-bottom:.5rem;font-weight:500;display:block}.settings-info{background:#f1f5f9;border-radius:8px;margin-bottom:1rem;padding:1rem}.settings-info p{margin-bottom:.5rem;font-size:.9rem}.settings-info strong{color:var(--primary)}.birthday-edit{margin-bottom:1rem}.birthday-edit label{margin-bottom:.5rem;font-weight:500;display:block}.birthday-inputs{gap:.5rem;display:flex}.birthday-inputs input{text-align:center;flex:1}.month-select{cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:10px;flex:1;padding:.875rem;font-size:1rem}.version{text-align:center;color:var(--text-light);opacity:.6;padding:.75rem;font-size:.7rem}.pdf-preview-overlay{z-index:2000;background:#000000e6;justify-content:center;align-items:center;padding:.5rem;display:flex;position:fixed;inset:0}.pdf-preview-modal{background:#fff;border-radius:16px;flex-direction:column;width:100%;max-width:800px;height:95vh;display:flex;overflow:hidden}.pdf-preview-header{border-bottom:1px solid #e2e8f0;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;padding:1rem;display:flex}.pdf-preview-header h2{margin:0;font-size:1.1rem}.pdf-preview-actions{gap:.5rem;display:flex}.pdf-preview-content{flex:1;overflow:hidden}.pdf-preview-content>div{height:100%}.summary-card{background:linear-gradient(135deg, var(--primary), var(--primary-dark));color:#fff;border-radius:16px;margin-bottom:1rem;padding:1.25rem}.summary-title{text-align:center;margin-bottom:1rem;font-size:1rem;font-weight:600}.summary-stats{grid-template-columns:repeat(2,1fr);gap:.75rem;display:grid}.summary-item{text-align:center;background:#ffffff26;border-radius:12px;flex-direction:column;padding:.75rem;display:flex}.summary-item.confirmed{background:#10b9814d}.summary-item.pending{background:#f59e0b4d}.summary-item.piezas{background:#6366f14d}.summary-item.total{background:#ec48994d}.summary-value{font-size:1.5rem;font-weight:700}.summary-label{opacity:.9;margin-top:.25rem;font-size:.75rem}.switch-field{justify-content:space-between;align-items:center;margin-bottom:.5rem;padding:.75rem 0;display:flex}.switch-label{color:var(--text);font-weight:500}.switch{cursor:pointer;border-radius:14px;width:52px;height:28px;transition:background-color .2s;position:relative}.switch-on{background-color:var(--success)}.switch-off{background-color:#e2e8f0}.switch-handle{background-color:#fff;border-radius:12px;width:24px;height:24px;transition:transform .2s;position:absolute;top:2px;left:2px;box-shadow:0 2px 4px #0003}.switch-on .switch-handle{transform:translate(24px)}.back-btn{color:#fff;cursor:pointer;background:#fff3;border:none;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-size:1.25rem;display:flex;position:absolute;top:50%;left:1rem;transform:translateY(-50%)}.menu-grid{grid-template-columns:repeat(2,1fr);gap:.6rem;margin-bottom:1rem;display:grid}.menu-card{background:linear-gradient(135deg, var(--primary), var(--primary-dark));color:#fff;cursor:pointer;box-sizing:border-box;border:none;border-radius:18px;flex-direction:column;justify-content:center;align-items:center;gap:.35rem;width:100%;min-height:100px;padding:1rem .75rem;transition:transform .2s,box-shadow .2s;display:flex;box-shadow:0 4px 15px #7c3aed4d}.menu-card:active{transform:scale(.98)}.menu-card-warning{background:linear-gradient(135deg,#f59e0b,#d97706);box-shadow:0 4px 15px #f59e0b4d}.menu-card-success{background:linear-gradient(135deg, var(--success), #059669);box-shadow:0 4px 15px #10b9814d}.menu-card-info{background:linear-gradient(135deg,#3b82f6,#1d4ed8);box-shadow:0 4px 15px #3b82f64d}.menu-card-disabled{opacity:.6;cursor:not-allowed;box-shadow:none!important;background:linear-gradient(135deg,#9ca3af,#6b7280)!important}.menu-card-disabled:hover{transform:none}.menu-icon{margin-bottom:.15rem;font-size:1.8rem}.menu-title{text-align:center;font-size:.85rem;font-weight:700;line-height:1.2}.menu-subtitle{opacity:.85;text-align:center;font-size:.7rem}.menu-validity{color:#ffffffb3;text-align:center;margin-top:4px;font-size:.7rem}.card.inactive{opacity:.6;background:#f1f5f9}.card.active{border-left:4px solid var(--success)}.badge-status{border-radius:10px;padding:.2rem .5rem;font-size:.75rem}.status-active{color:#065f46;background:#d1fae5}.status-inactive{color:#991b1b;background:#fee2e2}.badge-virtual{border-radius:10px;padding:.2rem .5rem;font-size:.75rem}.virtual-online{color:#1e40af;background:#dbeafe}.virtual-presencial{color:#92400e;background:#fef3c7}.calendario-tabs{flex-wrap:wrap;gap:.5rem;margin-bottom:1rem;display:flex}.calendario-tab{cursor:pointer;min-width:100px;color:var(--text-light);background:#fff;border:2px solid #e2e8f0;border-radius:8px;flex:1;padding:.75rem .5rem;font-size:.85rem;font-weight:500;transition:all .2s}.calendario-tab.active{background:var(--primary);border-color:var(--primary);color:#fff}.calendario-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:1rem;display:flex}.year-selector{align-items:center;gap:.5rem;display:flex}.year-selector label{font-weight:500}.year-selector select{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:.5rem;font-size:1rem}.calendario-table-container{-webkit-overflow-scrolling:touch;overflow-x:auto}.calendario-table{border-collapse:collapse;background:#fff;border-radius:12px;width:100%;overflow:hidden;box-shadow:0 2px 4px #0000000d}.calendario-table th,.calendario-table td{text-align:left;white-space:nowrap;border-bottom:1px solid #f1f5f9;padding:.5rem}.calendario-table th{background:var(--primary);color:#fff;font-size:.75rem;font-weight:600}.calendario-table td{font-size:.75rem}.calendario-table tr:last-child td{border-bottom:none}.tipo-reunion-buttons{gap:.25rem;display:flex}.tipo-btn{cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:6px;padding:.35rem .5rem;font-size:.75rem;transition:all .2s}.tipo-btn.active.casa{color:#fff;background:#7c3aed;border-color:#7c3aed}.tipo-btn.active.iglesia{color:#fff;background:#0891b2;border-color:#0891b2}.tipo-btn.active.sin-reunion{color:#fff;background:#64748b;border-color:#64748b}.empty-state{text-align:center;background:#fff;border-radius:12px;padding:3rem 1rem}.empty-icon{margin-bottom:1rem;font-size:3rem;display:block}.empty-state h3{color:var(--text);margin-bottom:.5rem}.empty-state p{color:var(--text-light)}.menu-card-info{background:linear-gradient(135deg,#0891b2,#0e7490)}.calendario-table tbody tr{background:#fff;border-radius:8px;margin-bottom:4px;transition:all .2s;border:1px solid #e2e8f0!important;border-left:6px solid #0000!important}.calendario-table tbody tr:hover{box-shadow:0 4px 12px #0000001a}.calendario-table tbody tr td{border:none!important}.calendario-table tbody tr td:first-child{border-radius:8px 0 0 8px}.calendario-table tbody tr td:last-child{border-radius:0 8px 8px 0}.calendario-table tbody tr:nth-child(12n+1){border-left-color:#7c3aed!important}.calendario-table tbody tr:nth-child(12n+2){border-left-color:#0891b2!important}.calendario-table tbody tr:nth-child(12n+3){border-left-color:#059669!important}.calendario-table tbody tr:nth-child(12n+4){border-left-color:#dc2626!important}.calendario-table tbody tr:nth-child(12n+5){border-left-color:#d97706!important}.calendario-table tbody tr:nth-child(12n+6){border-left-color:#4f46e5!important}.calendario-table tbody tr:nth-child(12n+7){border-left-color:#db2777!important}.calendario-table tbody tr:nth-child(12n+8){border-left-color:#0d9488!important}.calendario-table tbody tr:nth-child(12n+9){border-left-color:#ea580c!important}.calendario-table tbody tr:nth-child(12n+10){border-left-color:#6366f1!important}.calendario-table tbody tr:nth-child(12n+11){border-left-color:#8b5cf6!important}.calendario-table tbody tr:nth-child(12n+12){border-left-color:#14b8a6!important}.permisos-container{padding:1rem}.permisos-header{justify-content:space-between;align-items:flex-start;gap:.5rem;margin-bottom:1rem;display:flex}.permisos-header h3{color:var(--text);flex:1;font-size:1rem}.permisos-header .btn{padding:.5rem .75rem;font-size:.85rem}.permisos-list{flex-direction:column;gap:.75rem;display:flex}.permiso-item{background:var(--card-bg);border-radius:8px;padding:1rem;box-shadow:0 1px 3px #0000001a}.permiso-fecha{justify-content:space-between;align-items:center;margin-bottom:.5rem;font-size:.95rem;display:flex}.permiso-count{gap:.5rem;display:flex}.badge{border-radius:12px;padding:.2rem .5rem;font-size:.75rem;font-weight:600}.badge-red{color:#dc2626;background:#fee2e2}.badge-green{color:#059669;background:#d1fae5}.permiso-personas{flex-direction:column;gap:.25rem;display:flex}.permiso-persona{align-items:center;gap:.5rem;padding:.25rem 0;font-size:.9rem;display:flex}.permiso-obs{color:var(--text-light);font-size:.8rem;font-style:italic}.btn-delete{cursor:pointer;opacity:.5;background:0 0;border:none;margin-left:auto;font-size:.9rem;transition:opacity .2s}.btn-delete:hover{opacity:1}.text-green{color:#059669}.text-red{color:#dc2626}.form-group label{color:var(--text);margin-bottom:.5rem;font-weight:500;display:block}.form-group select,.form-group input{border:1px solid #e2e8f0;border-radius:8px;width:100%;padding:.75rem;font-size:1rem}.loading{text-align:center;color:var(--text-light);padding:2rem}.text-muted{color:var(--text-light);font-size:.9rem;font-weight:500}.btn-report{color:#fff;cursor:pointer;background:linear-gradient(135deg,#059669,#047857);border:none;border-radius:12px;align-items:center;gap:.5rem;padding:.75rem 1.25rem;font-size:.95rem;font-weight:600;transition:all .2s;display:flex;box-shadow:0 2px 8px #05966966}.btn-report:hover{background:linear-gradient(135deg,#047857,#065f46);transform:translateY(-2px);box-shadow:0 4px 12px #05966980}.btn-report:disabled{opacity:.6;cursor:not-allowed;transform:none}.modal-large{border-radius:20px;max-width:90%;max-height:90vh;overflow:auto}.pdf-preview-container{border:2px solid #e2e8f0;border-radius:12px;margin:1rem 0;overflow:hidden;box-shadow:0 2px 8px #0000001a}.header-actions{align-items:center;gap:.75rem;display:flex}.tabs-header{background:#fff;border-radius:12px;gap:.25rem;margin-bottom:.5rem;padding:.5rem .25rem;display:flex;box-shadow:0 2px 4px #0000000d}.tab{cursor:pointer;color:var(--text-light);background:0 0;border:none;border-radius:8px;flex:1;padding:.5rem .25rem;font-size:.85rem;font-weight:500;transition:all .2s}.tab:hover{background:#f1f5f9}.tab-active{background:var(--primary);color:#fff;font-weight:600}.tab-active:hover{background:var(--primary-dark)}.tab-settings{border-radius:8px;justify-content:center;align-items:center;width:36px;height:36px;margin-left:auto;padding:0;font-size:1.1rem;display:flex}.info-box{color:#92400e;background:#fef3c7;border:1px solid #fcd34d;border-radius:8px;margin-bottom:1rem;padding:.75rem;font-size:.85rem}.steps-indicator{background:linear-gradient(135deg,#f8fafc,#fff);border:1px solid #e2e8f0;border-radius:16px;justify-content:center;align-items:center;gap:.75rem;margin-bottom:.75rem;padding:.75rem;display:flex;box-shadow:0 4px 12px #00000014}.step{opacity:.4;border-radius:10px;align-items:center;gap:.5rem;padding:.5rem .75rem;transition:all .3s;display:flex}.step-active{opacity:1;background:#7c3aed14}.step-number{width:36px;height:36px;color:var(--text-light);background:#e2e8f0;border-radius:50%;justify-content:center;align-items:center;font-size:1rem;font-weight:700;transition:all .3s;display:flex;box-shadow:0 2px 4px #0000001a}.step-active .step-number{background:linear-gradient(135deg, var(--primary), var(--primary-dark));color:#fff;transform:scale(1.1);box-shadow:0 4px 12px #7c3aed66}.step-label{color:var(--text-light);font-size:.9rem;font-weight:500}.step-active .step-label{color:var(--primary);font-weight:600}.step-line{background:linear-gradient(90deg,#e2e8f0,#cbd5e1);border-radius:2px;width:40px;height:3px}.form-step{background:#fff;border:1px solid #e2e8f0;border-radius:16px;margin-bottom:1rem;padding:1.5rem;box-shadow:0 4px 16px #0000001a}.form-group{margin-bottom:.6rem}.form-group label{color:var(--text);margin-bottom:.35rem;font-size:.95rem;font-weight:600;display:block}.form-group input[type=text],.form-group input[type=date],.form-group input[type=number],.form-group textarea,.form-group select{background:#fafafa;border:1.5px solid #e2e8f0;border-radius:10px;width:100%;padding:.65rem .85rem;font-size:.95rem;transition:all .2s}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{border-color:var(--primary);background:#fff;outline:none;box-shadow:0 0 0 3px #7c3aed1a}.form-group textarea{resize:vertical;min-height:80px;font-family:inherit}.chip{cursor:pointer;color:var(--text);background:#fff;border:2px solid #e2e8f0;border-radius:25px;padding:.75rem 1.25rem;font-size:.95rem;font-weight:500;transition:all .2s;box-shadow:0 2px 4px #0000000d}.chip:hover{border-color:var(--primary);background:#f3e8ff;transform:translateY(-1px);box-shadow:0 4px 8px #0000001a}.chip-selected{border-color:var(--primary);background:linear-gradient(135deg, var(--primary), var(--primary-dark));color:#fff;font-weight:600;box-shadow:0 4px 12px #7c3aed66}.chip-selected:hover{background:linear-gradient(135deg, var(--primary-dark), #5b21b6);transform:translateY(-1px)}.complementos-header{background:linear-gradient(135deg,#f8fafc,#fff);border:1px solid #e2e8f0;border-radius:12px;justify-content:space-between;align-items:center;margin-bottom:1.25rem;padding:1rem;display:flex}.complementos-header h3{color:var(--text);font-size:1.1rem;font-weight:600}.complementos-list{flex-direction:column;gap:1rem;margin-bottom:1.25rem;display:flex}.complemento-card{background:linear-gradient(135deg,#fff,#f8fafc);border:2px solid #e2e8f0;border-radius:14px;justify-content:space-between;align-items:center;padding:1.25rem;transition:all .2s;display:flex;box-shadow:0 2px 8px #0000000f}.complemento-card:hover{border-color:var(--primary);transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.complemento-info{flex-direction:column;flex:1;gap:.35rem;display:flex}.complemento-nombre{color:var(--text);font-size:1rem;font-weight:700}.complemento-modalidad{color:var(--text-light);font-size:.9rem;font-weight:500}.complemento-monto{color:var(--success);background:#10b9811a;border-radius:6px;padding:.25rem .5rem;font-size:1rem;font-weight:700;display:inline-block}.complemento-unidades{color:var(--text-light);font-size:.85rem;font-weight:500}.menu-title{color:var(--text);text-align:center;margin-bottom:1.5rem;font-size:1.5rem;font-weight:700}.description{color:var(--text-light);margin-top:.25rem;font-size:.85rem;line-height:1.4}.checkbox-label{cursor:pointer;align-items:center;gap:.5rem;font-weight:400;display:flex}.checkbox-label input[type=checkbox]{cursor:pointer;width:20px;height:20px}.categoria-chips,.modalidad-chips,.estado-chips,.complemento-chips,.tipo-complemento-chips{flex-wrap:wrap;gap:.75rem;padding:.5rem 0;display:flex}.eventos-list{flex-direction:column;display:flex}.eventos-list .top-actions{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.eventos-list .top-actions h1{color:var(--text);font-size:1.25rem;font-weight:600}.form-card{background:#fff;border:1px solid #e2e8f0;border-radius:20px;margin-bottom:1.5rem;overflow:hidden;box-shadow:0 8px 24px #0000001f}.card-header{background:linear-gradient(135deg, var(--primary), var(--primary-dark));color:#fff;align-items:center;gap:.75rem;padding:.75rem 1.25rem;display:flex}.card-icon{font-size:1.5rem}.card-header h3{margin:0;font-size:1.1rem;font-weight:600}.card-body{padding:.75rem 1.25rem}.card-description{color:var(--text-light);margin-bottom:.75rem;font-size:.9rem;line-height:1.5}.form-row{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}@media (max-width:400px){.form-row{grid-template-columns:1fr}}.btn-lg{padding:.85rem 1.5rem;font-size:1rem}.complementos-checklist{flex-direction:column;gap:.5rem;max-height:60vh;padding-right:.5rem;display:flex;overflow-y:auto}.complementos-checklist::-webkit-scrollbar{width:6px}.complementos-checklist::-webkit-scrollbar-track{background:#f1f5f9;border-radius:3px}.complementos-checklist::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.complementos-checklist::-webkit-scrollbar-thumb:hover{background:#94a3b8}.complemento-checklist-item{background:#f8fafc;border:1.5px solid #e2e8f0;border-radius:12px;padding:.75rem;transition:all .2s}.complemento-checklist-item:hover{background:#f1f5f9;border-color:#cbd5e1}.complemento-checklist-item.selected{border-color:var(--primary);background:#f5f3ff;box-shadow:0 2px 8px #7c3aed26}.complemento-checklist-header{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.checkbox-container{cursor:pointer;flex:1;align-items:center;gap:.75rem;display:flex}.checkbox-container input[type=checkbox]{display:none}.checkmark{border:2px solid #cbd5e1;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;transition:all .2s;display:flex}.checkbox-container input[type=checkbox]:checked+.checkmark{background:linear-gradient(135deg, var(--primary), var(--primary-dark));border-color:var(--primary)}.checkbox-container input[type=checkbox]:checked+.checkmark:after{content:"✓";color:#fff;font-size:.9rem;font-weight:700}.complemento-name{color:var(--text);font-size:.95rem;font-weight:600}.complemento-categoria{color:var(--text-light);background:#e2e8f0;border-radius:6px;padding:.2rem .5rem;font-size:.75rem;font-weight:500}.complemento-config{border-top:1px solid #e2e8f0;flex-direction:column;gap:.75rem;margin-top:1rem;padding-top:1rem;display:flex}.config-row{align-items:center;gap:.75rem;display:flex}.config-row label{color:var(--text-light);min-width:80px;font-size:.85rem;font-weight:500}.modalidad-chips-small{flex-wrap:wrap;flex:1;gap:.5rem;display:flex}.chip-small{cursor:pointer;color:var(--text);background:#fff;border:1px solid #e2e8f0;border-radius:15px;padding:.4rem .75rem;font-size:.8rem;font-weight:500;transition:all .2s}.chip-small:hover{border-color:var(--primary);background:#f3e8ff}.chip-small.chip-selected{border-color:var(--primary);background:var(--primary);color:#fff}.input-small{border:1px solid #e2e8f0;border-radius:8px;flex:1;max-width:120px;padding:.5rem .75rem;font-size:.9rem}.input-small:focus{border-color:var(--primary);outline:none;box-shadow:0 0 0 2px #7c3aed1a}.empty-state{text-align:center;color:var(--text-light);padding:2rem}.empty-state .empty-icon{margin-bottom:.75rem;font-size:2.5rem}.empty-state p{margin-bottom:.25rem}.empty-hint{color:#94a3b8;font-size:.85rem}.mis-pedidos-container .card{border-left-width:4px}
