/*
Theme Name: Latinout
Theme URI: https://latinout.com
Author: Latinout Team
Author URI: https://latinout.com
Description: A modern, high-performance WordPress theme for Latin dance event discovery. Features a sleek "Latin night" aesthetic with Salsa and Bachata event listings.
Version: 1.0.0
Requires at least: 6.0
Tested up to: 6.4
Requires PHP: 8.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: latinout
Tags: events, directory, latin-dance, salsa, bachata, custom-post-types

Latinout - Feel the Rhythm, Find the Party
*/

/* ========================================
   GLOBAL MOBILE RESPONSIVE FIXES
   ======================================== */

/* Prevent horizontal overflow on all pages */
html, body {
    overflow-x: hidden;
    max-width: 100vw;
}

/* Ensure all containers respect screen width */
* {
    box-sizing: border-box;
}

/* Mobile padding fixes */
@media (max-width: 640px) {
    /* Ensure proper padding on all sections */
    section {
        padding-left: 1rem;
        padding-right: 1rem;
    }
    
    /* Fix containers that might overflow */
    .max-w-7xl,
    .max-w-6xl,
    .max-w-5xl,
    .max-w-4xl,
    .max-w-3xl,
    .max-w-2xl {
        padding-left: 1rem;
        padding-right: 1rem;
        max-width: 100%;
    }
    
    /* Reduce heading sizes on mobile */
    h1 {
        font-size: 1.75rem !important;
        line-height: 1.2 !important;
    }
    
    h2 {
        font-size: 1.5rem !important;
    }
    
    /* Fix text overflow */
    p, span, a, li {
        word-wrap: break-word;
        overflow-wrap: break-word;
    }
    
    /* Calendar specific mobile fix */
    .calendar-grid {
        grid-template-columns: 1fr !important;
    }
    
    /* Week navigation mobile fix */
    .min-w-\[200px\] {
        min-width: auto !important;
    }
}

/* Blog post content spacing */
.blog-content p,
.entry-content p {
    margin-bottom: 1.5rem;
    line-height: 1.8;
}

.blog-content h2,
.entry-content h2 {
    margin-top: 2rem;
    margin-bottom: 1rem;
}

/* Single post better spacing */
.prose p {
    margin-bottom: 1.5em;
}

.prose h2, .prose h3, .prose h4 {
    margin-top: 2em;
    margin-bottom: 0.75em;
}

/* Force blog post content spacing */
.prose p,
article .prose p,
.entry-content p,
[itemprop="articleBody"] p,
.blog-content p {
    margin-bottom: 1.75rem !important;
    line-height: 1.9 !important;
    color: #cbd5e1; /* slate-300 */
}

[itemprop="articleBody"] > p:first-child,
.blog-content > p:first-child {
    margin-top: 0;
}

/* Bold text as section breaks need more space */
.prose p strong:only-child,
[itemprop="articleBody"] p strong:only-child,
.blog-content p strong:only-child {
    display: block;
    margin-top: 2.5rem;
    margin-bottom: 0.5rem;
    font-size: 1.1em;
    color: #fff;
}

/* Lists in blog posts */
.prose ul, .prose ol,
[itemprop="articleBody"] ul,
[itemprop="articleBody"] ol,
.blog-content ul,
.blog-content ol {
    margin-top: 1.5rem !important;
    margin-bottom: 1.5rem !important;
    padding-left: 1.5rem;
}

.prose li,
[itemprop="articleBody"] li,
.blog-content li {
    margin-bottom: 0.75rem !important;
    line-height: 1.7;
    color: #cbd5e1;
}

/* Blog content headings */
.blog-content h2,
.blog-content h3,
.blog-content h4 {
    color: #fff;
    font-weight: 700;
    margin-top: 2.5rem;
    margin-bottom: 1rem;
}

.blog-content h2 {
    font-size: 1.75rem;
}

.blog-content h3 {
    font-size: 1.5rem;
}

/* Blog content links */
.blog-content a {
    color: #f87171; /* red-400 */
    text-decoration: none;
}

.blog-content a:hover {
    text-decoration: underline;
}

/* Blog content strong/bold */
.blog-content strong {
    color: #fff;
    font-weight: 600;
}

/* Blog content blockquotes */
.blog-content blockquote {
    border-left: 4px solid #ef4444;
    padding-left: 1.5rem;
    margin: 2rem 0;
    font-style: italic;
    color: #94a3b8;
}
