:root{--color-rosa-principal:#ff1493;--color-rosa-claro:#ffe4f0;--color-blanco:#fff;--color-gris-oscuro:#2c2c2c;--color-gris-medio:#f5f5f5;--color-dorado:#ffb81c;--color-exito:#4caf50;--color-error:#f44336;--color-advertencia:#ff9800;--color-info:#2196f3;--font-family-base:"Segoe UI",Tahoma,Geneva,Verdana,sans-serif;--font-size-h1:2.5rem;--font-size-h2:2rem;--font-size-h3:1.5rem;--font-size-body:1rem;--spacing-xs:0.25rem;--spacing-sm:0.5rem;--spacing-md:1rem;--spacing-lg:1.5rem;--spacing-xl:2rem;--shadow-sm:0 2px 4px #0000001a;--shadow-md:0 4px 8px #00000026;--shadow-lg:0 8px 16px #0003}*{box-sizing:border-box;margin:0;padding:0}body,html{background-color:#f5f5f5;background-color:var(--color-gris-medio);color:#2c2c2c;color:var(--color-gris-oscuro);font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;font-family:var(--font-family-base)}body{line-height:1.6}.login-container{align-items:center;background:linear-gradient(135deg,#ff1493,#ff69b4);background:linear-gradient(135deg,var(--color-rosa-principal) 0,#ff69b4 100%);display:flex;justify-content:center;min-height:100vh}.login-card{background:#fff;background:var(--color-blanco);border-radius:20px;box-shadow:0 8px 16px #0003;box-shadow:var(--shadow-lg);max-width:400px;padding:2rem;padding:var(--spacing-xl);width:100%}.login-logo{margin-bottom:1.5rem;margin-bottom:var(--spacing-lg);text-align:center}.login-logo h1{color:#ff1493;color:var(--color-rosa-principal);font-size:2.5rem;font-size:var(--font-size-h1);margin-bottom:.5rem;margin-bottom:var(--spacing-sm)}.login-logo p{color:#f5f5f5;color:var(--color-gris-medio);font-size:.9rem}.form-group{margin-bottom:1.5rem;margin-bottom:var(--spacing-lg)}.form-group label{color:#2c2c2c;color:var(--color-gris-oscuro);display:block;font-weight:600;margin-bottom:.5rem;margin-bottom:var(--spacing-sm)}.form-group input{border:2px solid #ffe4f0;border:2px solid var(--color-rosa-claro);border-radius:8px;font-size:1rem;padding:1rem;padding:var(--spacing-md);transition:all .3s ease;width:100%}.form-group input:focus{border-color:#ff1493;border-color:var(--color-rosa-principal);box-shadow:0 0 0 3px #ff14931a;outline:none}.btn-primary{background-color:#ff1493;background-color:var(--color-rosa-principal);border:none;border-radius:8px;color:#fff;color:var(--color-blanco);cursor:pointer;font-size:1rem;font-weight:600;margin-top:1rem;margin-top:var(--spacing-md);padding:1rem;padding:var(--spacing-md);transition:all .3s ease;width:100%}.btn-primary:hover:not(:disabled){background-color:#ff0080;box-shadow:0 4px 8px #00000026;box-shadow:var(--shadow-md);transform:translateY(-2px)}.btn-primary:disabled{cursor:not-allowed;opacity:.6}.btn-secondary{background-color:#f5f5f5;background-color:var(--color-gris-medio);border:2px solid #2c2c2c;border:2px solid var(--color-gris-oscuro);border-radius:8px;color:#2c2c2c;color:var(--color-gris-oscuro);cursor:pointer;font-weight:600;padding:1rem 1.5rem;padding:var(--spacing-md) var(--spacing-lg);transition:all .3s ease}.btn-secondary:hover{background-color:#2c2c2c;background-color:var(--color-gris-oscuro);color:#fff;color:var(--color-blanco)}.error-message{background-color:#ffebee;border-left:4px solid #f44336;border-left:4px solid var(--color-error);color:#f44336;color:var(--color-error)}.error-message,.success-message{border-radius:8px;margin-bottom:1rem;margin-bottom:var(--spacing-md);padding:1rem;padding:var(--spacing-md)}.success-message{background-color:#e8f5e9;border-left:4px solid #4caf50;border-left:4px solid var(--color-exito);color:#4caf50;color:var(--color-exito)}.info-message{background-color:#e3f2fd;border-left:4px solid #2196f3;border-left:4px solid var(--color-info);border-radius:8px;color:#2196f3;color:var(--color-info);margin-bottom:1rem;margin-bottom:var(--spacing-md);padding:1rem;padding:var(--spacing-md)}.login-info{color:#2c2c2c;color:var(--color-gris-oscuro);font-size:.85rem;margin-top:1.5rem;margin-top:var(--spacing-lg);text-align:center}@media (max-width:768px){:root{--font-size-h1:2rem;--font-size-h2:1.5rem;--spacing-xl:1.5rem}.login-card{margin:1.5rem;margin:var(--spacing-lg)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.fade-in{animation:fadeIn .3s ease-in}.spinner{animation:spin .8s linear infinite;border:3px solid #ffe4f0;border-top-color:#ff1493;border:3px solid var(--color-rosa-claro);border-radius:50%;border-top-color:var(--color-rosa-principal);display:inline-block;height:20px;width:20px}
/*# sourceMappingURL=main.4e5d1b7c.css.map*/