/* GarnetEngine Connect — frontend styles (works with or without Tailwind) */

.glass-panel { background: rgba(255, 255, 255, 0.95); backdrop-filter: blur(10px); }
.flight-card, .hotel-card { transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1); }
.flight-card:hover, .hotel-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
    border-color: #ea3323;
}

.loader {
    border: 3px solid #f3f3f3;
    border-top: 3px solid #ea3323;
    border-radius: 50%;
    width: 24px; height: 24px;
    animation: garnetengine-spin 1s linear infinite;
    display: none;
}
.loader.show { display: inline-block; }
@keyframes garnetengine-spin { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } }

.page-active  { display: block !important; }
.page-hidden  { display: none !important; }

.star-rating  { color: #facc15; letter-spacing: 0.1em; }
.truncate-3-lines {
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}

.gallery-img { transition: opacity 0.3s ease, transform 0.3s ease; cursor: pointer; }
.gallery-img:hover { opacity: 0.85 !important; transform: scale(1.02); }

.custom-scrollbar::-webkit-scrollbar { width: 6px; }
.custom-scrollbar::-webkit-scrollbar-thumb { background: #d1d5db; border-radius: 9999px; }

.pax-entry { margin-bottom: 1rem; }
