/* Import Tailwind CSS */
@import url("https://cdn.jsdelivr.net/npm/tailwindcss@2.2.19/dist/tailwind.min.css");

/* Custom Base Styles */
body {
    font-family: 'Poppins', sans-serif;
    line-height: 1.6;
    color: #333; /* Using a dark gray for body text */
    background-color: #f9f9f9; /* Light background */
}

/* Typography */
h1, h2, h3, h4, h5, h6 {
    font-weight: 600;
    line-height: 1.2;
    margin-bottom: 1rem; /* Tailwind default is often 0.5rem or 0.75rem, adjust as needed */
}

h1 {
    font-size: 2.5rem; /* Default for larger screens */
}

h2 {
    font-size: 2rem;
}

h3 {
    font-size: 1.5rem;
}

.subtitle {
    font-size: 1.2rem;
    color: #777; /* Using a medium gray */
    margin-bottom: 2rem; /* More space below subtitle */
    text-align: center;
}

/* Re-adding button base styles from style (2).css for consistency if needed */
.btn {
    padding: 0.75rem 1.5rem; /* Corresponds to px-6 py-3 */
    border-radius: 9999px; /* Corresponds to rounded-full */
    text-decoration: none;
    font-weight: 600;
    transition: all 0.3s;
    display: inline-flex;
    align-items: center;
    gap: 0.5rem; /* Corresponds to gap-2 */
    cursor: pointer;
    border: none;
}

.btn i {
    font-size: 1rem;
}

/* Hero Section Background */
.gradient-bg {
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); /* Purple gradient */
}

/* Glass Effect */
.glass-effect {
    background: rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.2);
}

/* Card Hover Effect */
.card-hover {
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.card-hover:hover {
    transform: translateY(-5px);
    box-shadow: 0 20px 40px rgba(0,0,0,0.1);
}

/* Navigation Link Hover Effect */
.nav-link {
    position: relative;
    overflow: hidden;
}

.nav-link::before {
    content: '';
    position: absolute;
    bottom: 0;
    left: -100%;
    width: 100%;
    height: 2px;
    background: linear-gradient(90deg, #667eea, #764ba2);
    transition: left 0.3s ease;
}

.nav-link:hover::before {
    left: 0;
}

/* Hero Section Float Animation */
.animate-float {
    animation: float 6s ease-in-out infinite;
}

@keyframes float {
    0% { transform: translateY(0px); }
    50% { transform: translateY(-20px); }
    100% { transform: translateY(0px); }
}

/* Feature Icon Gradient */
.feature-icon {
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

/* Chart Container Height */
.chart-container {
    height: 400px; /* Adjust height as needed */
}

/* Sticky Navigation Transparency */
.sticky-nav {
    backdrop-filter: blur(10px);
    background: rgba(255, 255, 255, 0.95);
}

/* Scroll Progress Indicator */
.scroll-indicator {
    position: fixed;
    top: 0;
    left: 0;
    height: 4px;
    background: linear-gradient(90deg, #667eea, #764ba2);
    z-index: 9999;
    transition: width 0.1s ease;
}

/* Back to Top Button */
.back-to-top {
    position: fixed;
    bottom: 2rem; /* Corresponds to bottom-8 */
    right: 2rem; /* Corresponds to right-8 */
    background-color: #764ba2; /* Purple color */
    color: white;
    width: 3rem; /* Corresponds to w-12 */
    height: 3rem; /* Corresponds to h-12 */
    border-radius: 9999px; /* Corresponds to rounded-full */
    box-shadow: 0 10px 15px rgba(0,0,0,0.1); /* Corresponds to shadow-lg */
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: opacity 0.3s ease, transform 0.3s ease;
    opacity: 0;
    pointer-events: none;
    z-index: 50; /* Ensure it's above content but below modal */
}

.back-to-top.show {
    opacity: 1;
    pointer-events: auto;
}

.back-to-top:hover {
    background-color: #667eea; /* Lighter purple on hover */
    transform: translateY(-3px);
}


/* Page Specific Styles (Consolidated from style (2).css and mobile.css) */

/* Mobile adjustments for headings */
@media (max-width: 768px) {
    h1 {
        font-size: 2.2rem; /* Smaller heading on mobile */
    }

    h2 {
         font-size: 1.8rem;
    }
    .subtitle {
        font-size: 1rem;
    }
}

@media (max-width: 480px) {
    h1 {
        font-size: 2rem;
    }

    h2 {
        font-size: 1.5rem;
    }
    .hero {
        padding: 3rem 0; /* 60px */
    }

    /* Adjusted padding for various cards */
    .feature-card,
    .update-card,
    .alternative-card,
    .info-card,
    .calculator-form,
    .calculator-results,
    .post-card,
    .sidebar-card,
    .create-post,
     .values-card,
     .category-card {
        padding: 1.25rem; /* 20px */
    }

    .calculator-section .form-group input,
    .calculator-section .form-group select,
    .community-section #postForm input[type="text"],
    .community-section #postForm textarea {
        padding: 0.625rem 0.75rem; /* 10px 12px */
    }

    .wiki-section .wiki-categories {
        grid-template-columns: 1fr; /* Single column on smallest screens */
    }
}


/* Scripts Section */
.scripts-section .disclaimer,
.scripts-section .warning-box {
     /* Styles handled by Tailwind classes in HTML */
}

.scripts-section .code-block {
    background-color: #282c34;
    border-radius: 6px;
    padding: 1rem; /* Corresponds to p-4 or p-6 */
    margin: 1.25rem 0; /* Corresponds to my-5 */
    overflow-x: auto;
}

.scripts-section code {
    font-family: 'Courier New', Courier, monospace;
    color: #abb2bf;
}

.scripts-section .concepts-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(120px, 1fr)); /* Adjusted for better mobile fit */
    gap: 1rem; /* Corresponds to gap-4 */
    margin-top: 1.25rem; /* Corresponds to mt-5 */
}

.scripts-section .concept-card {
    background-color: white;
    border-radius: 8px; /* Corresponds to rounded-lg */
    padding: 1rem; /* Corresponds to p-4 */
    text-align: center;
    box-shadow: 0 3px 10px rgba(0,0,0,0.05);
}

.scripts-section .concept-card i {
    font-size: 1.5rem;
    color: #764ba2; /* Using purple from gradient */
    margin-bottom: 0.5rem; /* Corresponds to mb-2 */
}

.scripts-section .concept-card h4 {
    font-size: 1rem;
    margin-bottom: 0.25rem; /* Corresponds to mb-1 */
}

.scripts-section .concept-card p {
    font-size: 0.9rem;
    color: #777;
}

.scripts-section .alternatives-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); /* Adjusted min width */
    gap: 1.25rem; /* Corresponds to gap-5 or gap-6 */
    margin-top: 1.5rem; /* Corresponds to mt-6 */
}


/* Calculator Page Styles */
.calculator-section .calculator-container {
     /* Styles handled by Tailwind grid in HTML */
}

.calculator-section .calculator-form,
.calculator-section .calculator-results {
     /* Styles handled by Tailwind classes in HTML */
}

.calculator-section .form-group {
    margin-bottom: 1.25rem; /* Corresponds to mb-5 */
}

.calculator-section .form-group label {
     /* Styles handled by Tailwind classes in HTML */
     margin-bottom: 0.5rem; /* Adjust label bottom margin */
}

.calculator-section .form-group input,
.calculator-section .form-group select {
    width: 100%;
    padding: 0.75rem 1rem; /* Corresponds to px-3 py-2 */
    border: 1px solid #e0e0e0; /* Using light gray */
    border-radius: 0.375rem; /* Corresponds to rounded-md */
    font-family: 'Poppins', sans-serif;
    font-size: 1rem;
}

.calculator-section .form-group input:focus,
.calculator-section .form-group select:focus {
    outline: none;
    border-color: #764ba2; /* Using purple */
    box-shadow: 0 0 0 3px rgba(118, 75, 162, 0.2); /* Purple focus ring */
}

.calculator-section .mutations-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(100px, 1fr)); /* Adjusted for better mobile fit */
    gap: 0.5rem; /* Corresponds to gap-2 */
}

.calculator-section .mutations-grid label {
    display: flex;
    align-items: center;
    gap: 0.5rem; /* Corresponds to gap-2 */
    cursor: pointer;
    font-size: 0.875rem; /* Corresponds to text-sm */
}

.calculator-section .initial-state {
     /* Styles handled by Tailwind classes in HTML */
}

.calculator-section .result-card {
    background-color: #f5f5f5;
    border-radius: 8px;
    padding: 1.25rem; /* Corresponds to p-5 */
    margin-bottom: 1.25rem; /* Corresponds to mb-5 */
}

.calculator-section .result-card h4 {
    color: #764ba2; /* Using purple */
    margin-bottom: 15px;
}

.calculator-section .result-item {
    display: flex;
    justify-content: space-between;
    margin-bottom: 8px;
    padding-bottom: 8px;
    border-bottom: 1px solid #eee;
}

.calculator-section .result-item:last-child {
    border-bottom: none;
    margin-bottom: 0;
    padding-bottom: 0;
}

.calculator-section .calculator-chart {
    margin-top: 2rem; /* Corresponds to mt-8 */
    height: 300px; /* Default height */
}

@media (min-width: 768px) {
    .calculator-section .calculator-chart {
         height: 400px; /* Taller on larger screens */
    }
}

.calculator-section .calculator-info {
    margin-top: 3rem; /* Corresponds to mt-12 or mt-16 */
}

.calculator-section .info-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); /* Adjusted min width */
    gap: 1.25rem; /* Corresponds to gap-5 or gap-6 */
    margin-top: 1.5rem; /* Corresponds to mt-6 */
}

.calculator-section .info-card {
     /* Styles handled by Tailwind classes in HTML */
}

.calculator-section .info-card h3 {
    color: #764ba2; /* Using purple */
    margin-bottom: 1rem; /* Corresponds to mb-4 */
    font-size: 1.2rem;
}


/* Guides Page Styles */
.guides-section .category-tabs {
    display: flex;
    gap: 0.75rem; /* Corresponds to gap-3 */
    margin-bottom: 1.5rem; /* Corresponds to mb-6 */
    overflow-x: auto;
    padding-bottom: 0.5rem; /* Add padding for scrollbar */
    -webkit-overflow-scrolling: touch; /* Smooth scrolling on iOS */
    scrollbar-width: thin; /* Firefox */
    scrollbar-color: #d1d5db #f3f4f6; /* Firefox scrollbar color */
}

.guides-section .category-tabs::-webkit-scrollbar {
    height: 8px;
}

.guides-section .category-tabs::-webkit-scrollbar-track {
    background: #f3f4f6;
    border-radius: 10px;
}

.guides-section .category-tabs::-webkit-scrollbar-thumb {
    background: #d1d5db;
    border-radius: 10px;
}

.guides-section .tab-btn {
    padding: 0.5rem 1rem; /* Corresponds to px-4 py-2 */
    background-color: white;
    border: 1px solid #e0e0e0;
    border-radius: 9999px; /* Corresponds to rounded-full */
    font-family: 'Poppins', sans-serif;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.3s;
    white-space: nowrap; /* Prevent text wrapping */
    font-size: 0.875rem; /* Corresponds to text-sm */
}

.guides-section .tab-btn.active {
    background-color: #764ba2; /* Using purple */
    color: white;
    border-color: #764ba2;
}

.guides-section .category-content {
    display: none;
}

.guides-section .category-content.active {
    display: block;
}

.guides-section .guide-card {
    display: grid;
    grid-template-columns: 1fr; /* Stack on mobile */
    gap: 1.25rem; /* Corresponds to gap-5 */
    background-color: white;
    border-radius: 0.625rem; /* Corresponds to rounded-xl */
    overflow: hidden;
    box-shadow: 0 5px 15px rgba(0,0,0,0.05);
    margin-bottom: 1.5rem; /* Corresponds to mb-6 */
}

@media (min-width: 768px) {
    .guides-section .guide-card {
        grid-template-columns: 250px 1fr; /* Image left, content right */
    }
}

.guides-section .guide-image {
    height: 12rem; /* Corresponds to h-48 */
    background-size: cover;
    background-position: center;
    position: relative;
}

@media (min-width: 768px) {
    .guides-section .guide-image {
        height: auto; /* Fill grid height */
    }
}

.guides-section .difficulty {
    position: absolute;
    top: 0.75rem; /* Corresponds to top-3 */
    left: 0.75rem; /* Corresponds to left-3 */
    padding: 0.25rem 0.5rem; /* Corresponds to px-2 py-1 */
    border-radius: 0.25rem; /* Corresponds to rounded-md */
    font-size: 0.8rem; /* Smaller text */
    font-weight: 500;
    color: white;
}

.guides-section .difficulty.beginner {
    background-color: #10b981; /* Teal/Green */
}

.guides-section .difficulty.intermediate {
    background-color: #f59e0b; /* Yellow/Orange */
}

.guides-section .difficulty.advanced {
    background-color: #ef4444; /* Red */
}


.guides-section .guide-info {
    padding: 1.5rem; /* Corresponds to p-6 */
}

.guides-section .guide-excerpt {
    color: #777;
    margin-bottom: 1.25rem; /* Corresponds to mb-5 */
}

.guides-section .guide-meta {
    display: flex;
    gap: 1.25rem; /* Corresponds to gap-5 */
    margin-bottom: 1.25rem; /* Corresponds to mb-5 */
    font-size: 0.9rem;
    color: #777;
}

.guides-section .guide-meta i {
    margin-right: 0.25rem; /* Corresponds to mr-1 */
}

.guides-section .popular-guides {
    margin-top: 3.75rem; /* Corresponds to mt-16 */
}

.guides-section .popular-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); /* Adjusted min width */
    gap: 1.25rem; /* Corresponds to gap-5 */
    margin-top: 1.5rem; /* Corresponds to mt-6 */
}

.guides-section .popular-card {
    background-color: white;
    border-radius: 0.625rem; /* Corresponds to rounded-xl */
    padding: 1.5rem; /* Corresponds to p-6 */
    box-shadow: 0 5px 15px rgba(0,0,0,0.05);
    position: relative;
}

.guides-section .popular-badge {
    position: absolute;
    top: -0.5rem; /* Corresponds to -top-2 */
    right: 1rem; /* Corresponds to right-4 */
    background-color: #764ba2; /* Purple */
    color: white;
    padding: 0.25rem 0.5rem; /* Corresponds to px-2 py-1 */
    border-radius: 0.25rem; /* Corresponds to rounded-md */
    font-size: 0.8rem;
    font-weight: 500;
    display: flex;
    align-items: center;
    gap: 0.25rem; /* Corresponds to gap-1 */
}

.guides-section .popular-card h3 {
    margin-bottom: 0.5rem; /* Corresponds to mb-2 */
    color: #764ba2; /* Purple */
}

.guides-section .popular-card p {
    color: #777;
    margin-bottom: 1rem; /* Corresponds to mb-4 */
}

.guides-section .popular-card .read-more {
    color: #764ba2; /* Purple */
    text-decoration: none;
    font-weight: 500;
    display: inline-flex;
    align-items: center;
    gap: 0.25rem; /* Corresponds to gap-1 */
    margin-top: 0.75rem; /* Corresponds to mt-3 */
}
.guides-section .popular-card .read-more:hover {
    text-decoration: underline;
}

/* Values Page Styles */
.values-section .values-grid {
     /* Styles handled by Tailwind grid in HTML */
}

.values-section .values-card {
     /* Styles handled by Tailwind classes in HTML */
}

.values-section .top-values {
    margin-top: 1.25rem; /* Corresponds to mt-5 */
}

.values-section .value-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1rem 0; /* Corresponds to py-4 */
    border-bottom: 1px solid #eee;
}

.values-section .value-item:last-child {
    border-bottom: none;
}

.values-section .crop-info {
    display: flex;
    align-items: center;
    gap: 0.75rem; /* Corresponds to gap-3 */
}

.values-section .crop-info .emoji {
    font-size: 1.5rem;
}

.values-section .value-info {
    text-align: right;
}

.values-section .price {
    font-weight: 600;
    font-size: 1.1rem;
    display: block;
}

.values-section .trend {
    font-size: 0.9rem;
}

.values-section .trend.up {
    color: #10b981; /* Teal/Green */
}

.values-section .trend.down {
    color: #ef4444; /* Red */
}

.values-section .chart-container {
     height: 300px; /* Default height */
     margin-top: 1.25rem; /* Corresponds to mt-5 */
}
@media (min-width: 768px) {
    .values-section .chart-container {
         height: 400px; /* Taller on larger screens */
    }
}


.values-section .values-table {
    margin-top: 3.75rem; /* Corresponds to mt-16 */
}

.values-section .table-responsive {
    overflow-x: auto;
    margin-top: 1.25rem; /* Corresponds to mt-5 */
}

.values-section table {
    width: 100%;
    border-collapse: collapse;
    background-color: white;
    box-shadow: 0 5px 15px rgba(0,0,0,0.05);
    border-radius: 0.625rem; /* Corresponds to rounded-xl */
    overflow: hidden; /* Ensures rounded corners clip content */
}

.values-section th,
.values-section td {
    padding: 1rem; /* Corresponds to p-4 */
    text-align: left;
    border-bottom: 1px solid #eee;
}

.values-section th {
    background-color: #f5f5f5;
    font-weight: 600;
    font-size: 0.75rem; /* Corresponds to text-xs */
    text-transform: uppercase;
    letter-spacing: 0.05em; /* Corresponds to tracking-wider */
    color: #6b7280; /* Gray 500 */
}

.values-section td {
    font-size: 0.875rem; /* Corresponds to text-sm */
    color: #6b7280; /* Gray 500 */
}

.values-section td:first-child {
    font-weight: 500;
    color: #1f2937; /* Gray 900 */
}


.values-section .update-info {
    display: flex;
    align-items: center;
    justify-content: center; /* Center the update info */
    gap: 0.5rem; /* Corresponds to gap-2 */
    margin-top: 2rem; /* Corresponds to mt-8 */
    color: #777;
    font-size: 0.9rem;
    text-align: center; /* Ensure text is centered */
}

.values-section .update-info i {
    color: #764ba2; /* Purple */
}


/* Wiki Page Styles */
.wiki-section .wiki-search {
    margin: 2.5rem 0; /* Corresponds to my-10 */
}

.wiki-section .search-container input {
    /* Styles handled by Tailwind classes in HTML */
}

.wiki-section .search-container button {
     /* Styles handled by Tailwind classes in HTML */
}


.wiki-section .wiki-categories {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); /* Adjusted min width */
    gap: 1.5rem; /* Corresponds to gap-6 */
    margin-top: 2.5rem; /* Corresponds to mt-10 */
}

.wiki-section .category-card {
     /* Styles handled by Tailwind classes in HTML */
}

.wiki-section .category-icon {
    width: 4rem; /* Corresponds to w-16 */
    height: 4rem; /* Corresponds to h-16 */
    background-color: #f5f5f5;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1rem; /* Center and add bottom margin */
}

.wiki-section .category-icon i {
    font-size: 1.5rem; /* Corresponds to text-2xl or text-3xl */
    color: #764ba2; /* Purple */
}

.wiki-section .recent-updates {
    margin-top: 3.75rem; /* Corresponds to mt-16 */
}

.wiki-section .update-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); /* Adjusted min width */
    gap: 1.25rem; /* Corresponds to gap-5 */
    margin-top: 1.5rem; /* Corresponds to mt-6 */
}

.wiki-section .update-card {
     /* Styles handled by Tailwind classes in HTML */
     text-decoration: none; /* Remove underline for link cards */
     display: block; /* Make the whole card clickable */
}

.wiki-section .update-card h3 {
    color: #764ba2; /* Purple */
    margin-bottom: 0.5rem; /* Corresponds to mb-2 */
}

.wiki-section .update-date {
    font-size: 0.875rem; /* Corresponds to text-sm */
    color: #777;
    display: block;
    margin-top: 0.75rem; /* Corresponds to mt-3 */
}


/* Community Page Styles */
.community-section .community-grid {
     /* Styles handled by Tailwind grid in HTML */
}

.community-section .community-tabs {
     /* Styles handled by Tailwind flex and gap in HTML */
     margin-bottom: 1.5rem; /* Corresponds to mb-6 */
     overflow-x: auto;
     padding-bottom: 0.5rem; /* Add padding for scrollbar */
     -webkit-overflow-scrolling: touch; /* Smooth scrolling on iOS */
     scrollbar-width: thin; /* Firefox */
     scrollbar-color: #d1d5db #f3f4f6; /* Firefox scrollbar color */
}
.community-section .community-tabs::-webkit-scrollbar {
    height: 8px;
}

.community-section .community-tabs::-webkit-scrollbar-track {
    background: #f3f4f6;
    border-radius: 10px;
}

.community-section .community-tabs::-webkit-scrollbar-thumb {
    background: #d1d5db;
    border-radius: 10px;
}


.community-section .community-tabs .tab-btn {
    padding: 0.5rem 1rem; /* Corresponds to px-4 py-2 */
    font-size: 0.9rem;
     background-color: white;
    border: 1px solid #e0e0e0;
    border-radius: 9999px; /* Corresponds to rounded-full */
    font-family: 'Poppins', sans-serif;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.3s;
    white-space: nowrap; /* Prevent text wrapping */
}

.community-section .community-tabs .tab-btn.active {
    background-color: #764ba2; /* Purple */
    color: white;
    border-color: #764ba2;
}

.community-section .tab-content {
    display: none;
}

.community-section .tab-content.active {
    display: block;
}


.community-section .post-card {
    background-color: white;
    border-radius: 0.625rem; /* Corresponds to rounded-xl */
    padding: 1.5rem; /* Corresponds to p-6 */
    box-shadow: 0 5px 15px rgba(0,0,0,0.05);
    margin-bottom: 1.25rem; /* Corresponds to mb-5 */
}

.community-section .post-author {
    display: flex;
    align-items: center;
    gap: 0.75rem; /* Corresponds to gap-3 */
    margin-bottom: 1rem; /* Corresponds to mb-4 */
}

.community-section .avatar {
    width: 2.5rem; /* Corresponds to w-10 */
    height: 2.5rem; /* Corresponds to h-10 */
    background-color: #f5f5f5;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.community-section .avatar i {
    color: #777;
    font-size: 1.2rem;
}

.community-section .author-info h4 {
    font-size: 1rem;
    margin-bottom: 0.25rem; /* Corresponds to mb-1 */
}

.community-section .post-time {
    font-size: 0.8rem;
    color: #777;
}

.community-section .post-content h3 {
    font-size: 1.2rem;
    margin-bottom: 1rem; /* Corresponds to mb-4 */
    color: #764ba2; /* Purple */
}

.community-section .post-actions {
    display: flex;
    gap: 1rem; /* Corresponds to gap-4 */
    margin-top: 1rem; /* Corresponds to mt-4 */
}

.community-section .post-actions button {
    background: none;
    border: none;
    color: #777;
    font-family: 'Poppins', sans-serif;
    font-size: 0.9rem;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 0.25rem; /* Corresponds to gap-1 */
    transition: color 0.3s;
}

.community-section .post-actions button:hover {
    color: #764ba2; /* Purple */
}

.community-section .post-actions button i {
    font-size: 0.9rem;
}

.community-section .sidebar-card {
     /* Styles handled by Tailwind classes in HTML */
     margin-bottom: 1.5rem; /* Corresponds to mb-6 */
}

.community-section .stats-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(100px, 1fr)); /* Adjusted min width */
    gap: 1rem; /* Corresponds to gap-4 */
    margin-top: 1.25rem; /* Corresponds to mt-5 */
}

.community-section .stat-item {
    display: flex;
    align-items: center;
    gap: 0.75rem; /* Corresponds to gap-3 */
}

.community-section .stat-item i {
    font-size: 1.5rem;
    color: #764ba2; /* Purple */
}

.community-section .stat-number {
    font-weight: 600;
    font-size: 1.2rem;
    color: #1f2937; /* Gray 900 */
}

.community-section .stat-label {
    font-size: 0.9rem;
    color: #777;
    display: block;
}

.community-section .tags-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem; /* Corresponds to gap-2 */
    margin-top: 0.75rem; /* Corresponds to mt-3 */
}

.community-section .tag {
    background-color: #f5f5f5;
    padding: 0.25rem 0.75rem; /* Corresponds to px-3 py-1 */
    border-radius: 9999px; /* Corresponds to rounded-full */
    font-size: 0.875rem; /* Corresponds to text-sm */
    color: #777;
    text-decoration: none;
    transition: all 0.3s;
}

.community-section .tag:hover {
    background-color: #764ba2; /* Purple */
    color: white;
}

.community-section .discord-card {
    background: linear-gradient(135deg, #5865F2, #4752C4); /* Discord blue gradient */
    color: white;
}

.community-section .discord-card h3 {
    color: white;
}

.community-section .discord-card p {
    color: rgba(255,255,255,0.8);
    margin-bottom: 1.25rem; /* Corresponds to mb-5 */
}

.community-section .create-post {
    margin-top: 3.75rem; /* Corresponds to mt-16 */
     background-color: white;
    border-radius: 0.625rem; /* Corresponds to rounded-xl */
    padding: 1.5rem; /* Corresponds to p-6 */
    box-shadow: 0 5px 15px rgba(0,0,0,0.05);
}

.community-section #postForm {
    margin-top: 1.25rem; /* Corresponds to mt-5 */
}

.community-section #postForm textarea {
    min-height: 9.375rem; /* Corresponds to min-h-36 or min-h-40 */
    resize: vertical;
     width: 100%;
    padding: 0.75rem 1rem;
    border: 1px solid #e0e0e0;
    border-radius: 0.375rem;
    font-family: 'Poppins', sans-serif;
    font-size: 1rem;
}
.community-section #postForm input[type="text"] {
    width: 100%;
    padding: 0.75rem 1rem;
    border: 1px solid #e0e0e0;
    border-radius: 0.375rem;
    font-family: 'Poppins', sans-serif;
    font-size: 1rem;
}

/* --- Modal Styles --- */
/* The modal overlay and modal box are styled primarily using Tailwind classes in HTML */

/* Custom class to ensure modal is hidden by default and can be toggled */
#signupModal {
    /* Tailwind 'hidden' class handles display: none; */
    /* Fixed position, inset-0 (top:0, right:0, bottom:0, left:0) and bg-black bg-opacity-50 for overlay */
    /* flex items-center justify-center for centering content */
    /* z-[1000] for high z-index to be above everything */
}

#signupModal > div {
    /* Inner modal box */
    /* bg-white, rounded-lg, shadow-xl, p-8, m-4, max-w-sm, w-full for size and appearance */
    /* relative is needed for absolute positioning of the close button */
}

#closeModalBtn {
    /* Absolute position, top-3, right-3 for close button position */
    /* text-gray-500 hover:text-gray-700 text-xl for appearance */
}

/* Style for the success/error message after form submission */
#formMessage {
    /* mt-4, text-center, text-sm, font-semibold for appearance */
    /* hidden class toggled by JS */
}

/* Optional: Add custom transition for modal appearance */
/*
#signupModal {
    transition: opacity 0.3s ease;
}
#signupModal:not(.hidden) {
    opacity: 1;
}
#signupModal.hidden {
    opacity: 0;
}
*/