/* Styles personnalisés */ input[type="text"], input[type="number"], select { @apply border border-gray-300 rounded-md px-3 py-2; } /* Animation de chargement */ .loading { position: relative; pointer-events: none; } .loading::after { content: ""; position: absolute; top: 50%; left: 50%; width: 20px; height: 20px; margin: -10px 0 0 -10px; border: 2px solid #ffffff; border-top-color: transparent; border-radius: 50%; animation: loading 0.6s linear infinite; } @keyframes loading { to { transform: rotate(360deg); } } /* Message de succès */ .success-message { @apply fixed top-4 right-4 bg-green-500 text-white px-6 py-3 rounded-md shadow-lg transform transition-transform duration-300; transform: translateX(120%); } .success-message.show { transform: translateX(0); } /* Message d'erreur */ .error-message { @apply fixed top-4 right-4 bg-red-500 text-white px-6 py-3 rounded-md shadow-lg transform transition-transform duration-300; transform: translateX(120%); } .error-message.show { transform: translateX(0); } /* Styles pour l'auto-complétion des clients */ .client-suggestions { border: 1px solid #e2e8f0; box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06); max-height: 200px; overflow-y: auto; z-index: 50; } .client-suggestion { padding: 0.75rem 1rem; cursor: pointer; transition: background-color 0.2s; } .client-suggestion:hover { background-color: #f3f4f6; } .client-suggestion:not(:last-child) { border-bottom: 1px solid #e2e8f0; }