.formulario-container{min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);padding:2rem 1rem}.formulario-progress{max-width:1200px;margin:0 auto 2rem;background:rgba(255,255,255,.95);padding:2rem;border-radius:1rem;box-shadow:0 10px 25px rgba(0,0,0,.1)}.progress-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.progress-header h3{font-size:1.25rem;font-weight:600;color:#1f2937;margin:0}.progress-text{font-size:.9rem;color:#6b7280;font-weight:500}.progress-bar{width:100%;height:8px;background:#e5e7eb;border-radius:4px;overflow:hidden;margin-bottom:2rem}.progress-fill{height:100%;background:linear-gradient(90deg,#3b82f6,#10b981);border-radius:4px;transition:width .3s ease}.progress-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.progress-step{display:flex;align-items:center;gap:.75rem;padding:.75rem;border-radius:.5rem;transition:all .2s}.progress-step.completed{background:#dcfce7;color:#166534}.progress-step.current{background:#dbeafe;color:#1e40af;font-weight:500}.step-indicator{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;border-radius:50%;background:#6b7280;color:white;font-size:.8rem;font-weight:600;flex-shrink:0}.progress-step.completed .step-indicator{background:#10b981}.progress-step.current .step-indicator{background:#3b82f6}.step-info{flex:1;min-width:0}.step-title{font-size:.9rem;font-weight:500;margin:0 0 .25rem;line-height:1.2}.step-description{font-size:.75rem;opacity:.8;margin:0;line-height:1.2}.formulario-header{max-width:1200px;margin:0 auto 2rem;display:flex;justify-content:space-between;align-items:center;background:rgba(255,255,255,.95);padding:2rem;border-radius:1rem;box-shadow:0 10px 25px rgba(0,0,0,.1)}.formulario-title h1{font-size:2rem;font-weight:700;color:#1f2937;margin:0 0 .5rem}.formulario-title p{color:#6b7280;margin:0;font-size:1.1rem}.formulario-content{max-width:1200px;margin:0 auto;background:white;border-radius:1rem;box-shadow:0 20px 25px rgba(0,0,0,.1);overflow:hidden}.formulario-step{padding:2rem}.step-header{text-align:center;margin-bottom:2rem;padding-bottom:1rem;border-bottom:2px solid #e5e7eb}.step-header h2{font-size:1.5rem;font-weight:600;color:#1f2937;margin:0 0 .5rem}.step-header p{color:#6b7280;margin:0;font-size:1rem}.step-content{margin-bottom:2rem}.step-actions{display:flex;justify-content:space-between;align-items:center;padding-top:1.5rem;border-top:1px solid #e5e7eb}.step-actions-right{display:flex;gap:1rem}.formulario-success{max-width:600px;margin:0 auto;text-align:center;background:white;padding:3rem 2rem;border-radius:1rem;box-shadow:0 20px 25px rgba(0,0,0,.1)}.success-icon{margin-bottom:1.5rem}.formulario-success h1{font-size:2rem;font-weight:700;color:#1f2937;margin:0 0 1rem}.formulario-success p{color:#6b7280;font-size:1.1rem;line-height:1.6;margin:0 0 2rem}.success-actions{display:flex;justify-content:center;gap:1rem}.formulario-footer{max-width:1200px;margin:2rem auto 0}.formulario-info{display:flex;align-items:center;gap:.75rem;background:rgba(255,255,255,.9);padding:1rem 1.5rem;border-radius:.75rem;box-shadow:0 4px 6px rgba(0,0,0,.1)}.formulario-info p{margin:0;color:#374151;font-size:.9rem}.form-group{margin-bottom:1.5rem}.form-group label{display:block;font-weight:500;color:#374151;margin-bottom:.5rem;font-size:.9rem}.form-group label.required:after{content:" *";color:#ef4444}.form-input,.form-select,.form-textarea{width:100%;padding:.75rem;border:2px solid #e5e7eb;border-radius:.5rem;font-size:1rem;transition:all .2s;background:white}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px rgba(59,130,246,.1)}.form-input.error,.form-select.error,.form-textarea.error{border-color:#ef4444;box-shadow:0 0 0 3px rgba(239,68,68,.1)}.form-textarea{resize:vertical;min-height:100px}.form-error{color:#ef4444;font-size:.8rem;margin-top:.25rem;display:flex;align-items:center;gap:.25rem}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-grid-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:1rem}.form-group-full{grid-column:1/-1}.form-checkbox,.form-radio{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem}.form-checkbox input,.form-radio input{width:1.25rem;height:1.25rem;accent-color:#3b82f6}.form-checkbox label,.form-radio label{margin:0;font-weight:400;cursor:pointer}.dynamic-list{border:1px solid #e5e7eb;border-radius:.5rem;padding:1rem;background:#f9fafb}.dynamic-list-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.dynamic-list-title{font-weight:600;color:#374151;margin:0}.dynamic-list-item{display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:1rem;align-items:end;padding:.75rem;background:white;border:1px solid #e5e7eb;border-radius:.5rem;margin-bottom:.75rem}.dynamic-list-item:last-child{margin-bottom:0}.dynamic-list-actions{display:flex;gap:.5rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1.5rem;border-radius:.5rem;font-weight:500;font-size:.9rem;transition:all .2s;border:1px solid transparent;cursor:pointer;text-decoration:none}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:#3b82f6;color:white;border-color:#3b82f6}.btn-primary:hover:not(:disabled){background:#2563eb;border-color:#2563eb}.btn-secondary{background:#6b7280;color:white;border-color:#6b7280}.btn-secondary:hover:not(:disabled){background:#4b5563;border-color:#4b5563}.btn-success{background:#10b981;color:white;border-color:#10b981}.btn-success:hover:not(:disabled){background:#059669;border-color:#059669}.btn-danger{background:#ef4444;color:white;border-color:#ef4444}.btn-danger:hover:not(:disabled){background:#dc2626;border-color:#dc2626}.btn-sm{padding:.5rem 1rem;font-size:.8rem}@media (max-width:768px){.formulario-container{padding:1rem .5rem}.formulario-header{flex-direction:column;gap:1rem;text-align:center;padding:1.5rem}.formulario-title h1{font-size:1.5rem}.formulario-step{padding:1.5rem}.form-grid,.form-grid-3{grid-template-columns:1fr}.step-actions{flex-direction:column;gap:1rem}.step-actions-right{width:100%;justify-content:center}.dynamic-list-item{grid-template-columns:1fr;gap:.75rem}.dynamic-list-actions{justify-content:center}}.formulario-final-info{background:#f0f9ff;border:1px solid #0ea5e9;border-radius:.75rem;padding:1.5rem;margin-top:1rem}.formulario-final-info h3{color:#0c4a6e;font-size:1.1rem;font-weight:600;margin:0 0 1rem}.formulario-final-info p{color:#0c4a6e;margin:0 0 .75rem;line-height:1.5}.formulario-final-info p:last-child{margin-bottom:0}.empty-state{text-align:center;padding:2rem;color:#6b7280}.empty-state p{margin:0;font-style:italic}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.formulario-step{animation:fadeIn .3s ease-out}.animate-spin{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}