[v-cloak] {
    display: none;
}

.fade-enter-active,
.fade-leave-active {
    transition: opacity 0.3s ease;
}

.fade-enter-from,
.fade-leave-to {
    opacity: 0;
}

/* Custom styles for status badges */
.status-badge {
    @apply px-2 py-1 text-xs rounded-full;
}

/* Custom form styles */
input:focus, textarea:focus {
    @apply ring-2 ring-green-500 outline-none;
}

/* Custom button hover effects */
.btn-hover {
    @apply transition-colors duration-200;
}

/* Error page styles */
.error-container {
    min-height: 60vh;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(245, 245, 245, 0.7);
}

.error-card {
    background: #fff;
    border-radius: 16px;
    box-shadow: 0 4px 24px rgba(0,0,0,0.08), 0 1.5px 4px rgba(0,0,0,0.04);
    padding: 2.5rem 2rem 2rem 2rem;
    max-width: 400px;
    text-align: center;
    margin: 2rem;
}

.error-icon {
    font-size: 3rem;
    margin-bottom: 1rem;
}

.error-title {
    font-size: 1.5rem;
    font-weight: 700;
    margin-bottom: 0.5rem;
    color: #d32f2f;
}

.error-message {
    color: #444;
    margin-bottom: 1.5rem;
    font-size: 1.1rem;
}

.error-home-btn {
    display: inline-block;
    padding: 0.6rem 1.5rem;
    background: #388e3c;
    color: #fff;
    border-radius: 6px;
    text-decoration: none;
    font-weight: 600;
    transition: background 0.2s;
}
.error-home-btn:hover {
    background: #256029;
}
