@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@300;400;500;600;700;800&display=swap');

:root {
    --dk-red: #E52329;
    --dk-red-dark: #B91C1C;
    --dk-red-light: #FEE2E2;
}

body {
    font-family: 'Plus Jakarta Sans', sans-serif;
    -webkit-tap-highlight-color: transparent;
    background-color: #FFFFFF;
}

/* Responsive Container across Mobile, Tablet, and Desktop */
.mobile-container {
    width: 100%;
    max-width: 100%;
    margin: 0 auto;
    min-height: 100vh;
    background-color: #FFFFFF;
    position: relative;
    box-shadow: 0 4px 25px -5px rgba(0, 0, 0, 0.05);
}

@media (min-width: 640px) {
    .mobile-container {
        max-width: 640px;
    }
}

@media (min-width: 768px) {
    .mobile-container {
        max-width: 768px;
    }
}

@media (min-width: 1024px) {
    .mobile-container {
        max-width: 960px;
    }
}

@media (min-width: 1280px) {
    .mobile-container {
        max-width: 1120px;
    }
}

.admin-container {
    max-width: 1200px;
    margin: 0 auto;
}

/* Smooth Scrolling & Hide scrollbar */
.no-scrollbar::-webkit-scrollbar {
    display: none;
}
.no-scrollbar {
    -ms-overflow-style: none;
    scrollbar-width: none;
}

/* Step Flow Indicator */
.step-item.active .step-dot {
    background-color: #E52329;
    color: #FFFFFF;
    box-shadow: 0 0 0 4px #FEE2E2;
}
.step-item.completed .step-dot {
    background-color: #10B981;
    color: #FFFFFF;
}
.step-item.pending .step-dot {
    background-color: #E2E8F0;
    color: #64748B;
}

/* Pulse badge animation */
@keyframes pulse-ring {
    0% { transform: scale(0.95); opacity: 0.8; }
    50% { transform: scale(1.1); opacity: 0.4; }
    100% { transform: scale(0.95); opacity: 0.8; }
}
.pulse-badge {
    animation: pulse-ring 2s infinite ease-in-out;
}
