52 lines
1.1 KiB
CSS
52 lines
1.1 KiB
CSS
|
|
/* 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);
|
||
|
|
}
|