 /* Enhanced Loader Styles */
 .loader {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(255, 255, 255, 0.95);
    backdrop-filter: blur(10px);
    z-index: 9999;
    font-family: 'Inter', sans-serif;
}

.spinner {
    width: 50px;
    height: 50px;
    border: 4px solid #e2e8f0;
    border-top: 4px solid #667eea;
    border-radius: 50%;
    animation: spin 1s linear infinite;
    margin-bottom: 20px;
}

.loader-text {
    font-size: 18px;
    font-weight: 500;
    color: #4a5568;
    margin-bottom: 10px;
}

.loader-subtext {
    font-size: 14px;
    color: #718096;
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}
.pricing-cards-grid .plan-card.free-card {
    order: -1; /* Has no effect in grid */
}

.container {
    padding: 100px 0;
    width: 100%;
    max-width: 72rem;
    /* max-w-6xl */
    margin-left: auto;
    margin-right: auto;
}

.pricing-cards-grid {
    display: grid;
    grid-template-columns: 1fr;
    /* grid-cols-1 */
    gap: 1.5rem;
    /* gap-6 */
}

@media (min-width: 768px) {

    .pricing-description{
        width: 100% !important;
    }
    /* md:grid-cols-2 */
    .pricing-cards-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (min-width: 1024px) {

    /* lg:grid-cols-3 */
    .pricing-cards-grid {
        grid-template-columns: repeat(3, 1fr);
    }
}

.plan-card {
    position: relative;
    background-color: #fff;
    border-radius: 0.75rem;
    /* rounded-xl */
    box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
    /* shadow-lg */
    padding: 1.5rem;
    /* p-6 */
    display: flex;
    flex-direction: column;
    /* align-items: center; */
    /* text-align: center; */
    transition: all 0.3s ease-in-out;
    /* transition-all duration-300 */
}

.plan-card:hover {
    box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
    /* hover:shadow-xl */
}

.plan-card.pro-plan {
    border: 2px solid #2463eb;
    /* border-2 border-blue-500 */
}

.popular-tag {
    position: absolute;
    top: 1rem;
    /* mt-4 */
    right: 1rem;
    /* mr-4 */
    background-color: #2463eb;
    /* bg-blue-500 */
    color: #fff;
    /* text-white */
    font-size: 0.75rem;
    /* text-xs */
    font-weight: 600;
    /* font-semibold */
    padding: 0.25rem 0.75rem;
    /* px-3 py-1 */
    border-radius: 9999px;
    /* rounded-full */
    text-transform: uppercase;
    /* uppercase */
    letter-spacing: 0.05em;
    /* tracking-wider */
}

.plan-name {
    text-align: left;
    font-size: 1.5rem;
    /* text-2xl */
    font-weight: 600;
    /* font-semibold */
    color: #1f2937;
    /* text-gray-800 */
    margin-bottom: 0.5rem;
    /* mb-2 */
    text-transform: capitalize;
    /* capitalize */
}

.price-display {
    color: #4b5563;
    /* text-gray-600 */
    margin-bottom: 1.5rem;
    /* mb-6 */
}

.price-dollar {
    font-size: 2.25rem;
    /* text-4xl */
    font-weight: 700;
    /* font-bold */
    color: #111827;
    /* text-gray-900 */
}

.price-suffix {
    font-size: 1.125rem;
    /* text-lg */
    color: #6b7280;
    /* text-gray-500 */
}

.plan-description {
    color: #4b5563;
    /* text-gray-600 */
    margin-bottom: 1.5rem;
    /* mb-6 */
    flex-grow: 1;
    /* flex-grow */
}

.features-section {
    width: 100%;
    /* w-full */
    text-align: left;
    /* text-left */
    margin-bottom: 2rem;
    margin-top: 1.5rem;
    /* mb-8 */
}

.features-heading {
    font-size: 1.125rem;
    /* text-lg */
    font-weight: 500;
    /* font-medium */
    color: #1f2937;
    /* text-gray-800 */
    margin-bottom: 1rem;
    /* mb-4 */
}

.features-list {
    list-style: none;
    /* remove default list style */
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    /* space-y-3 */
    color: #374151;
    /* text-gray-700 */
}

.features-list li {
    display: flex;
    align-items: center;
}

.checkmark-icon {
    /* Inline SVG for checkmark */
    display: inline-block;
    width: 1.25rem;
    /* 20px */
    height: 1.25rem;
    /* 20px */
    margin-right: 0.5rem;
    /* 8px */
    vertical-align: middle;
    fill: currentColor;
    color: #2463eb;
    /* text-blue-500 */
}

.action-button {
    margin-top: auto;
    /* mt-auto */
    width: 100%;
    /* w-full */
    padding: 1rem 1.5rem;
    /* py-3 px-6 */
    border-radius: 0.5rem;
    /* rounded-lg */
    font-weight: 600;
    /* font-semibold */
    transition: all 0.3s ease-in-out;
    /* transition-all duration-300 */
    border: none;
    cursor: pointer;
    border-radius: 50px;
}

.action-button.free-plan-button {
    background: transparent;
    border-radius: 50px;
    border: 1px solid #2463eb;
    color: #2463eb;
}

.action-button.free-plan-button:hover {
    background-color: #d1d5db;
    /* hover:bg-gray-300 */
}

.action-button.paid-plan-button {
    background-color: #2563eb;
    /* bg-blue-600 */
    color: #fff;
    /* text-white */
}

.action-button.paid-plan-button:hover {
    background-color: #1d4ed8;
    /* hover:bg-blue-700 */
}
