/**
 * Lekha Navigation & Library Styles - 'Pastel Paper' Edition
 * High-precision restoration matching user reference screenshots.
 */

@import url('https://fonts.googleapis.com/css2?family=Outfit:wght@400;500;600;700;800&family=Quicksand:wght@400;500;600;700&display=swap');

/* Typography Baseline - No Pure Black */
h1, h2, h3, h4, h5, h6, p, li, a, span {
    color: #111111;
}

body:not(.wp-admin) {
    background-color: #f8f9fa !important;
}

/* Ensure background transparency for homepage blocks */
body.home .wp-block-group,
body.home .wp-block-columns,
body.home .wp-block-column {
    background-color: transparent !important;
}

/* --- VISIBILITY MASTER CONTROLS --- */
@media screen and (min-width: 1025px) {
    .mobile-only { display: none !important; }
}
@media screen and (max-width: 1024px) {
    .desktop-only { display: none !important; }
}

:root {
    /* Sophisticated Early Ed Palette */
    --color-primary-green: #6BCE6B;
    --color-primary-blue: #4AB8D9;
    --color-active-yellow: #F4C430;
    --color-text-dark: #2C3E50;

    /* Core Branding Legacy (Updated) */
    --lekha-primary: var(--color-active-yellow);
    --lekha-primary-dark: #F4C430; /* Synced with Buttons */
    --lekha-black: #111111; /* Standardized from pure black */
    --lekha-white: #ffffff;
    --lekha-text: var(--color-text-dark);
    --lekha-font-main: 'Quicksand', 'Outfit', sans-serif;

    /* V120: THE UNIFIED SPACING SOURCE OF TRUTH */
    --lekha-baseline-unified: 13vh; /* THE ONE TRUE BASELINE - Absolute authority */

    /* V150: MODERN ROUNDING SYSTEM */
    --lekha-radius-lg: 30px;
    --lekha-radius-md: 20px;

    /* V160: HOME HERO ISOLATED SPACING */
    --lekha-home-hero-text-padding-top: 0px;
    --lekha-shadow-btn: 0 4px 0 var(--lekha-primary-dark);
}

@media screen and (max-width: 1024px) {
    :root {
        --lekha-baseline-worksheets: 100px; /* Mobile Clearance: 100px */
    }
}

html,
body {
    min-height: 100vh !important;
    height: auto !important;
}

body {
    font-family: var(--lekha-font-main) !important;
    background-color: #f8f9fa !important; /* Premium Off-White */
    color: var(--lekha-text);
    -webkit-font-smoothing: antialiased;
}

/* Ensure background extends into entire viewport */
html {
    background-color: #f8f9fa !important;
    min-height: 100% !important;
}

/* Core Layout: Fixed Header Support */
header.lekha-persistent-header {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    z-index: 100000 !important;
}

/* V1400: THE UNIFIED SPACING PROTOCOL - Final Absolute Authority */
/* Purges all redundant theme-level buffers and locks every template to the 133px Archive Baseline */

/* 1. ZERO-TOLERANCE THEME RESET: Eliminates 'Ghost' Stacking site-wide */
body:is(.page, .blog, .archive, .search, .tax-subject, .tax-grade, .search-results, .single-worksheets, .single-lekha_worksheets):not(.home) :is(#primary, #main, .site-main, .site-content, .entry-content, .entry-header, .page-header, .archive-header, .taxonomy-description, .lekha-worksheets-header, .lekha-archive-header, .lekha-search-header, .lekha-title-container, .ast-container, .wp-site-blocks) {
    margin-top: 0 !important;
    padding-top: 0 !important; /* Internal containers MUST be zero to prevent multiplication */
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    left: 0 !important;
    position: relative !important;
    box-sizing: border-box !important;
}

/* V2000: THE SUPER UNIFIER - Absolute Baseline Authority */
body:not(.home):not(.wp-admin) {
    padding-top: var(--lekha-baseline-unified) !important;
}

/* V2500: NUCLEAR UNIFICATION RESET - Absolute authority over all theme containers (Protected Header) */
body:not(.home):not(.wp-admin) :is(#page, .site, #content, #primary, #main, .site-main, .site-content, .entry-content, .entry-header, .page-header, .archive-header, .taxonomy-description, .lekha-worksheets-header, .lekha-archive-header, .lekha-search-header, .lekha-title-container, .ast-container, .wp-site-blocks, .lekha-archive-wrapper, .wp-block-group, .wp-block-columns, .wp-block-query, .wp-block-template-part, .lekha-worksheets-section, main, section, article):not(.lekha-persistent-header) {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* Specific Block Reset: Force ALL direct descendants of major containers to start at the absolute top */
body:not(.home):not(.wp-admin) :is(main, .wp-site-blocks, #primary, #main, .entry-content, .site-main, .lekha-archive-wrapper) > *:first-child {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

body:is(.page, .blog, .archive, .search, .tax-subject, .tax-grade, .search-results, .single-worksheets, .single-lekha_worksheets):not(.home) :is(h1.wp-block-post-title, .lekha-archive-header h1, h1.page-title, h1.archive-title, .blog h1.wp-block-heading) {
    padding-top: 0 !important; /* Managed by Body Baseline */
}

body:is(.page, .blog, .archive, .search, .tax-subject, .tax-grade, .search-results, .single-worksheets, .single-lekha_worksheets):not(.home) :is(h1, .page-title, .wp-block-post-title, .lekha-hero-title):not(.lekha-worksheet-card__title) {
    width: 100% !important;
    text-align: center !important;
    margin: 0 auto 35px auto !important; /* Reset top margin; 35px buffer for yellow bar */
}

@media screen and (max-width: 768px) {
    body:is(.page, .blog, .archive, .search, .tax-subject, .tax-grade, .search-results, .single-worksheets, .single-lekha_worksheets):not(.home) :is(h1, .page-title, .wp-block-post-title, .lekha-hero-title):not(.lekha-worksheet-card__title) {
        font-size: 1.8rem !important; /* Adapted for mobile */
        letter-spacing: -0.5px !important;
        margin-bottom: 25px !important;
    }
}

/* Specific fix for Search Results Overlap */
body.search-results .lekha-title-container h1 {
    margin-bottom: 55px !important;
}

@media screen and (max-width: 768px) {
    body.search-results .lekha-title-container h1 {
        margin-bottom: 30px !important;
        font-size: 1.6rem !important;
    }
}

/* V1500: BLOCK THEME (TT5) CONTENT SYNC RESET */
body:is(.single-worksheets, .single-lekha_worksheets) main {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}
body:is(.page, .blog, .archive, .search):not(.home) :is(main, .wp-site-blocks, #primary, #main, .entry-content) > :is(.wp-block-group, .wp-block-columns, .wp-block-query, .wp-block-template-part):first-child {
    margin-top: 0 !important;
    padding-top: 0 !important;
}


/* 3. THE SIGNATURE GOLDEN BAR (#FFD21E) - DNA MASTER (Absolute Authority) */
/* 3. THE SIGNATURE GOLDEN BAR Centering logic moved to Universal Master Title Block for 100% Sync */

:is(h1.wp-block-post-title, .blog h1.wp-block-heading, .lekha-archive-header h1, .lekha-search-header h1, .lekha-worksheets-header h1, .lekha-title-container h1, .single-worksheets h1, .single-lekha_worksheets h1, h1.page-title, h1.archive-title, .lekha-related-worksheets-title, .lekha-hero-title)::after {
    content: "" !important;
    display: block !important;
    width: 60px !important;
    height: 4px !important;
    background: #FFD21E !important;
    margin: 20px auto 30px auto !important;
    border-radius: 2px !important;
    visibility: visible !important;
    opacity: 1 !important;
    z-index: 10 !important;
}

/* 4a. THEME HEADER SUPPRESSION: Absolute Site-Wide Purge (Includes Block Theme Templates) */
body:not(.wp-admin) :is(.site-header, #masthead, .ast-site-header-cart, .site-header-primary-wrapper, .main-header-bar, .ast-header-break-point, .ast-mobile-header-wrap, .ast-desktop-header-content, .ast-main-header-wrap, .ast-sticky-active, .ast-sticky-shrunk, .ast-header-sticked, .ast-sticky-header-wrap, .ast-header-bar-placeholder, header.wp-block-template-part, .wp-block-template-part-header):not(.lekha-persistent-header) {
    display: none !important;
    height: 0 !important;
    min-height: 0 !important;
    overflow: hidden !important;
    visibility: hidden !important;
    pointer-events: none !important;
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
}

/* 4b. NAVIGATION BAR PROTECTION: Professional Premium Style (80px Fixed Centering) */
@media screen and (min-width: 1025px) {
    .lekha-persistent-header {
        padding-top: 0 !important;
        padding-bottom: 0 !important;
        height: 60px !important; /* Streamlined 60px Height */
        min-height: 60px !important; 
        margin-bottom: 0 !important;
        background: #ffffff !important; 
        border-bottom: none !important; 
        box-shadow: 0 2px 10px rgba(0,0,0,0.05) !important; 
        display: flex !important;
        align-items: center !important;
        width: 100% !important;
    }
}

.lekha-persistent-header .lekha-site-logo {
    font-family: 'Quicksand', sans-serif !important;
    font-size: 28px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    text-decoration: none !important;
    color: #111 !important;
    letter-spacing: -0.01em !important;
    display: flex !important;
    align-items: center !important;
    height: 100% !important;
}

header.lekha-persistent-header .lekha-nav-list li a {
    font-family: 'Quicksand', sans-serif !important;
    font-size: 18px !important; /* Increased from 16px */
    font-weight: 700 !important;
    padding: 10px 0 !important; /* Removed horizontal padding to allow gap to handle spacing */
    line-height: 1 !important;
    display: flex !important;
    align-items: center !important;
    color: #111111 !important;
    letter-spacing: -0.01em !important;
    text-decoration: none !important;
}

.lekha-nav-list li {
    display: flex !important;
    align-items: center !important;
    height: 100% !important;
}

.lekha-nav-list {
    display: flex !important;
    align-items: center !important;
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    gap: 30px !important; /* Standard gap between items */
}

.lekha-header-container {
    max-width: 1400px !important; 
    width: 100% !important;
    height: 100% !important; /* Ensure children can center vertically */
    margin: 0 auto !important;
    padding-left: 40px !important;
    padding-right: 40px !important;
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    gap: 30px !important;
}

.lekha-header-left {
    height: 100% !important;
    display: flex !important;
    align-items: center !important;
    flex: 0 0 auto !important;
    margin-right: auto !important; /* Force all other content to the right */
}

.lekha-header-right,
.lekha-header-actions {
    height: 100% !important;
    display: flex !important;
    align-items: center !important;
    margin-left: auto !important; /* Forces the group to the far right */
    flex: 0 0 auto !important;
}

.lekha-header-nav,
.lekha-nav-list {
    height: 100% !important;
    display: flex !important;
    align-items: center !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* --- UNIVERSAL TACTILE GOLD BUTTONS --- */
.lekha-button-primary,
.wp-block-button__link,
.wp-block-button .wp-block-button__link,
.download-link,
.lekha-hero-cta .lekha-button-primary,
.lekha-worksheet-footer .lekha-button-primary,
.lekha-thank-you-downloads__buttons .lekha-button-primary,
.wp-block-button.is-style-outline .wp-block-button__link {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 13px 35px !important;
    background-color: #FFCF40 !important; /* Signature Vibrant Yellow */
    background: #FFCF40 !important; /* Force override */
    color: #111111 !important;
    font-weight: 800 !important;
    font-size: 1.05rem !important;
    border-radius: 999px !important;
    text-decoration: none !important;
    transition: all 0.2s cubic-bezier(0.18, 0.89, 0.32, 1.28) !important;
    box-shadow: 0 5px 0 #111111 !important; /* Premium 3D shadow */
    border: none !important;
    outline: none !important;
    cursor: pointer !important;
}

.lekha-button-primary:hover,
.wp-block-button__link:hover,
.download-link:hover,
.wp-block-button.is-style-outline .wp-block-button__link:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 7px 0 #111111 !important;
    background-color: #FFD55A !important;
    background: #FFD55A !important;
}

.lekha-button-primary:active,
.download-link:active {
    transform: translateY(2px) !important;
    box-shadow: 0 1px 0 #111111 !important;
}

.lekha-hero-cta {
    margin-top: 40px;
    display: flex;
    gap: 20px;
    justify-content: flex-start;
}

/* 6. GHOST LINK & LEGACY LOCKDOWN - Definitive suppression of theme clutter */
body:is(.page-id-47, .page-id-41, .single-worksheets, .single-lekha_worksheets, .archive, .search, .tax-subject, .tax-grade, .search-results) :is(.site-title, .archive-header .site-title, .wp-block-site-title, .site-branding, #headerimg) {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Support for the JS-injected .lekha-title-container wrap */
body:not(.home):not(.wp-admin) .lekha-title-container {
    padding-top: 0 !important; /* Double Baseline Neutralized */
    margin-top: 0 !important;
    margin-bottom: 30px !important;
    display: block !important;
    padding: 0 !important;
    border: none !important;
}

/* --- THE REST OF THE FILE RESTORED --- */

/* 5. SUPPRESS THEME SEPARATORS & CLUTTER */
body:is(.page, .blog, .single-worksheets, .single-lekha_worksheets, .archive, .search, .tax-subject, .tax-grade, .post-type-archive-worksheets):not(.home) header:not(.lekha-title-container, .lekha-sticky-header, .lekha-persistent-header, .wp-block-template-part),
body:is(.page, .blog, .single-worksheets, .single-lekha_worksheets, .archive, .search, .tax-subject, .tax-grade, .post-type-archive-worksheets):not(.home) h1:not(.lekha-title-container h1, .page h1, .blog h1, .archive h1, .search h1, .single-worksheets h1, .single-lekha_worksheets h1),
body:is(.page-id-47, .page-id-41, .single-worksheets, .single-lekha_worksheets, .archive, .search, .tax-subject, .tax-grade) :is(hr, .wp-block-separator, .separator, .archive-title a),
.lekha-hero-match-count,
.lekha-archive-header-count,
.lekha-archive-page .site-footer,
.lekha-search-results-page footer.site-footer,
.lekha-archive-page .wp-block-group.has-background {
    /* display: none !important; */
    /* display: none !important; */
    /* visibility: hidden !important; */
    /* height: 0 !important; */
    /* margin: 0 !important; */
    /* padding: 0 !important; */
    /* border: none !important; */
}

/* 6. ENFORCE PLUGIN SECTION SYMMETRY & FOOTER BUFFER */
.lekha-worksheets-section {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 0 !important;
    padding: 0 35px 30px 35px !important;
    /* V71: Mobile 'Goldilocks' Framing (35px sides) - Reduced bottom to 30px */
    margin: 0 auto !important;
    width: 100% !important;
    border: none !important;
    box-sizing: border-box !important;
}

/* Ensure Desktop still has appropriate width management */
@media (min-width: 1024px) {
    .lekha-worksheets-section {
        padding: 0 0 40px 0 !important; /* Reduced bottom from 80px */
        max-width: 1200px !important;
    }
}

.lekha-filter-bar {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 12px !important;
    margin: 0 !important;
    /* Parent flexbox gap handles spacing */
    flex-wrap: wrap !important;
}

.lekha-filter-btn {
    background: transparent !important;
    border: none !important;
    padding: 10px 22px !important;
    border-radius: 99px !important;
    font-weight: 700 !important;
    font-size: 14px !important;
    cursor: pointer !important;
    transition: all 0.1s ease !important;
    color: #444444 !important;
}

.lekha-filter-btn:hover {
    background: rgba(0, 0, 0, 0.05) !important;
}

.lekha-filter-btn.active {
    background: var(--lekha-black) !important;
    color: #ffffff !important;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1) !important;
}

.lekha-filter-sinhala {
    /* Hidden by default unless in Sri Lanka OR explicitly chosen */
    display: none !important;
}

body.is-lk-region .lekha-filter-sinhala {
    display: inline-block !important;
    /* Revealed for Sri Lanka users */
}

/* SEARCH BAR POSITIONING (Re-enabled) */
.lekha-search-bar-row {
    display: flex !important;
    justify-content: center !important;
    margin-bottom: 50px !important;
    width: 100% !important;
}

.lekha-search-wrapper {
    position: relative !important;
    width: 100% !important;
    max-width: 500px !important;
}

.lekha-grid-search {
    width: 100% !important;
    padding: 18px 25px 18px 55px !important;
    border-radius: 20px !important;
    border: 2px solid rgba(0, 0, 0, 0.05) !important;
    background: #ffffff !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    transition: all 0.3s ease !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.03) !important;
}

.lekha-grid-search:focus {
    outline: none !important;
    border-color: var(--lekha-primary) !important;
    box-shadow: 0 8px 30px rgba(255, 217, 0, 0.15) !important;
    transform: translateY(-2px) !important;
}

.lekha-search-icon {
    position: absolute !important;
    left: 20px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: 22px !important;
    height: 22px !important;
    color: #999999 !important;
    pointer-events: none !important;
}

/* SORT TOGGLE */
.lekha-sort-toggle {
    display: flex !important;
    background: rgba(0, 0, 0, 0.05) !important;
    padding: 4px !important;
    border-radius: 12px !important;
    margin: 0 10px !important;
}

.lekha-sort-btn {
    border: none !important;
    background: transparent !important;
    padding: 8px 18px !important;
    border-radius: 99px !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    cursor: pointer !important;
    transition: all 0.1s ease !important;
    color: #666 !important;
}

.lekha-sort-btn.active {
    background: #ffffff !important;
    color: var(--lekha-black) !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05) !important;
}

/* LOAD MORE */
.lekha-load-more-wrapper {
    text-align: center !important;
    margin-top: 60px !important;
    padding-bottom: 40px !important;
}

#lekha-load-more {
    padding: 18px 45px !important;
    font-size: 16px !important;
    min-width: 240px !important;
}

#lekha-load-more:disabled {
    opacity: 0.6 !important;
    cursor: not-allowed !important;
    transform: none !important;
}

/* --- 4. THE 'PASTEL PAPER' CARDS --- */
.lekha-worksheets-grid {
    display: grid !important;
    /* V77: Optimized for 3-per-row on Desktop */
    grid-template-columns: repeat(auto-fill, minmax(320px, 1fr)) !important;
    gap: 45px !important;
}

@media (min-width: 1200px) {
    .lekha-worksheets-grid {
        grid-template-columns: repeat(3, 1fr) !important;
        /* V77: Definitive 3-Column Lock */
    }
}

.lekha-worksheet-card {
    border-radius: 32px !important;
    padding: 35px 30px !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275) !important;
    text-align: center !important;
    background-color: #ffffff !important;
    background: #ffffff !important; /* Safety double-set */
    position: relative !important;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05) !important;
}

.lekha-worksheet-card.is-visible {
    opacity: 1 !important;
}

.lekha-worksheet-card:hover {
    transform: translateY(-12px) !important;
    box-shadow: 0 25px 50px rgba(0, 0, 0, 0.08) !important;
}

/* Inner Frame for Worksheet Image */
.lekha-worksheet-card__img-link {
    width: 100% !important;
    aspect-ratio: 1 / 1.35 !important;
    background: #ffffff !important;
    border-radius: var(--lekha-radius-md) !important;
    padding: 20px !important;
    margin-bottom: 12px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-shadow: 0 5px 25px rgba(0, 0, 0, 0.03) !important;
    overflow: hidden !important;
    border: 1px solid rgba(0, 0, 0, 0.02) !important;
}

.lekha-worksheet-card__img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
}

.lekha-worksheet-card__title {
    font-size: 1.35rem !important;
    font-weight: 800 !important;
    margin-bottom: 8px !important;
    line-height: 1.2 !important;
    letter-spacing: -0.3px !important;
}

.lekha-worksheet-card__title a {
    text-decoration: none !important;
    color: var(--lekha-black) !important;
}

/* TAG PILLS (High-Precision Bold/Uppercase) */
/* V75: Added 22px margin-top for de-cluttering breathing room */
.lekha-worksheet-card__tags {
    margin-top: 22px !important;
    margin-bottom: 30px !important;
    display: flex !important;
    justify-content: center !important;
    gap: 8px !important;
    transition: all 0.3s ease !important;
}

.lekha-tags-list {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    align-items: center !important; /* Prevent vertical stretching */
    gap: 8px !important;
}

.lekha-tags-hidden {
    display: none !important;
    gap: 8px !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    /* Width removed to allow natural flow with the button */
}

.is-expanded .lekha-tags-hidden {
    display: contents !important;
}

.is-expanded .lekha-tag-more-btn {
    /* Instead of hiding, we change text and keep it as a 'Less' button */
}

.is-expanded .lekha-tag-more-btn::before {
    content: '- Less' !important;
}

/* Hide the original '+ More' text by setting font-size to 0 on the main element when expanded */
.is-expanded .lekha-tag-more-btn {
    font-size: 0 !important;
    background: rgba(0, 0, 0, 0.08) !important;
    color: #555 !important;
    order: 99 !important; /* Force to the absolute end of the flex flow */
}

.is-expanded .lekha-tag-more-btn::before {
    font-size: 10px !important; /* Restore font size for the pseudo-element */
    display: inline-block !important;
}

.lekha-tag-more-btn {
    background: rgba(0, 0, 0, 0.03) !important;
    padding: 7px 12px !important;
    border-radius: 10px !important;
    font-size: 10px !important;
    font-weight: 800 !important;
    color: #888 !important;
    text-transform: uppercase !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
    display: inline-flex !important;
    align-items: center !important;
    position: relative !important;
    z-index: 10 !important;
}

.lekha-tag-more-btn:hover {
    background: rgba(0, 0, 0, 0.08) !important;
    color: #555 !important;
}

.lekha-tag-pill,
.lekha-worksheet-card__tag {
    background: rgba(0, 0, 0, 0.04) !important;
    padding: 6px 12px !important; /* Tighter padding matching + More */
    border-radius: 10px !important;
    font-size: 10px !important; /* Smaller, sharper font */
    font-weight: 800 !important;
    color: #666666 !important;
    text-transform: uppercase !important;
    text-decoration: none !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    white-space: normal !important;
    text-align: center !important;
    line-height: 1.1 !important;
    word-wrap: break-word !important;
    overflow-wrap: break-word !important;
    hyphens: auto !important; /* Smart hyphenation for long words */
    max-width: 120px !important; /* Prevent single tags from taking over the card */
}

/* Single Worksheet Page Tags */
.lekha-single-worksheet-tags {
    margin: 30px auto !important;
    padding: 0 !important;
    background: transparent !important;
    border: none !important;
    max-width: 100% !important; /* Allow it to span the full width of its container (description section) */
    text-align: center !important;
}

.lekha-single-worksheet-tags h4 {
    margin-top: 0 !important;
    margin-bottom: 15px !important;
    font-family: 'Outfit', sans-serif !important;
    font-weight: 600 !important;
    font-size: 13px !important; /* Smaller font as requested */
    color: #888 !important; /* Subtle color */
    text-align: center !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
}

.lekha-single-worksheet-tags .lekha-worksheet-card__tags {
    margin: 0 !important;
    justify-content: center !important;
    flex-wrap: wrap !important;
}

.lekha-single-worksheet-tags .lekha-tag-pill {
    font-size: 12px !important;
    padding: 10px 20px !important;
}
    letter-spacing: 0.8px !important;
    display: inline-block !important;
}


/* English -> Pink */
.lekha-worksheet-card[data-subject="english"],
.single-worksheet-english .lekha-pdf-viewer-container,
.single-worksheet-english .lekha-worksheet-footer {}

/* Math -> Blue */
.lekha-worksheet-card[data-subject="math"],
.single-worksheet-math .lekha-pdf-viewer-container,
.single-worksheet-math .lekha-worksheet-footer {}

/* Science -> Green */
.lekha-worksheet-card[data-subject="science"],
.single-worksheet-science .lekha-pdf-viewer-container,
.single-worksheet-science .lekha-worksheet-footer {}

/* SEL -> Purple */
.lekha-worksheet-card[data-subject="sel"],
.single-worksheet-sel .lekha-pdf-viewer-container,
.single-worksheet-sel .lekha-worksheet-footer {}

/* Kindergarten/General -> Yellow */
.lekha-worksheet-card[data-subject="kindergarten"],
.lekha-worksheet-card[data-subject="general"],
.single-worksheet-general .lekha-pdf-viewer-container,
.single-worksheet-general .lekha-worksheet-footer {}

.single-worksheets {
    background: #ffffff !important;
}

.single-worksheets h1,
.single-worksheets .wp-block-post-title {
    text-align: center !important;
    margin: 0 auto 35px auto !important; /* Spacing for PDF Hint */
    letter-spacing: -1px !important;
    max-width: 1000px !important;
    line-height: 1.1 !important;
    display: block !important;
}

.lekha-pdf-hint {
    text-align: center !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 1.2px !important;
    color: rgba(0, 0, 0, 0.3) !important;
    margin-bottom: 20px !important;
}

.lekha-pdf-viewer-root {
    background: transparent !important;
    padding: 0 !important;
    border-radius: 0 !important;
    text-align: center !important;
    min-height: 500px !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
}

.lekha-pdf-viewer-container {
    padding: 0 !important;
    /* SEAMLESS */
    border-radius: 0 !important;
    margin-top: 10px !important;
    background: transparent !important;
    margin-bottom: 0 !important;
    /* ELIMINATE EXTRA SPACE */
}

/* SEAMLESS SCROLLING VIEW (No Frame, Curved Pages Only) */
.lekha-pdf-view {
    border-radius: 0 !important;
    border: none !important;
    box-shadow: none !important;
    background: transparent !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    max-width: 850px !important;
    /* V83: Synchronized with Footer for 'Column' look */
    margin: 0 auto !important;
    /* V80: Flexible height for single pages (Eliminates massive vertical gap) */
    min-height: 200px !important;
    max-height: 850px !important;
    height: auto !important;
    scroll-behavior: smooth !important;
    padding: 30px 0 !important;
}

@media (max-width: 768px) {
    .lekha-pdf-viewer-container {
        padding: 0 35px !important;
        /* V80: Mobile Framing for PDF Preview */
        margin-top: 25px !important;
        /* V85: Header Clearance Gap */
        box-sizing: border-box !important;
    }
}

/* SEAMLESS PAGE RENDERING (Individually Shadowed Paper) */
.lekha-pdf-page-placeholder {
    margin: 0 auto 60px !important;
    /* SEAMLESS: Physical split between pages */
    width: 98% !important;
    height: auto !important;
    aspect-ratio: auto !important;
    /* Slight breathing room to show curved corners */
    max-width: 100% !important;
    background: #ffffff !important;
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.04) !important;
    /* SUBTLE: Individual page shadow */
    border-radius: 25px !important;
    /* Premium curved corners */
    display: block !important;
    /* Block avoids flexbox canvas cropping bug */
    padding: 0 !important;
    overflow: hidden !important;
    /* Clip canvas to curves */
    border: none !important;
}

.lekha-pdf-page-placeholder canvas {
    width: 100% !important;
    height: auto !important;
    display: block !important;
    margin: 0 auto !important;
}

/* Page Spacing Adjustment (Optional minimal line) */
.lekha-pdf-page-placeholder+.lekha-pdf-page-placeholder {
    border-top: none !important;
    /* SEAMLESS */
}

/* Premium WHITE Scrollbar for Floating PDF View */
.lekha-pdf-view::-webkit-scrollbar {
    width: 10px !important;
}

.lekha-pdf-view::-webkit-scrollbar-track {
    background: transparent !important;
    /* Seamless overlap */
    border-radius: 10px !important;
}

/* Full Screen Viewer Expansion */
.lekha-pdf-viewer-root.is-fullscreen {
    width: 95vw !important;
    max-width: 1200px !important;
    height: auto !important;
    min-height: 90vh !important;
    max-height: none !important;
    margin: 0 auto !important;
    background: transparent !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    position: relative !important;
    z-index: 1000001 !important;
}

.lekha-pdf-viewer-root.is-fullscreen .lekha-pdf-view {
    display: none !important;
    max-height: none !important;
    max-width: 1100px !important;
    height: auto !important;
    padding: 40px 0 !important;
}

/* Explicitly show only the one with inline display: block OR we can use a class */
.lekha-pdf-viewer-root.is-fullscreen .lekha-pdf-view[style*="display: block"],
.lekha-pdf-viewer-root.is-fullscreen .lekha-pdf-view.active-view {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    background: transparent !important;
}

.lekha-pdf-viewer-root.is-fullscreen .lekha-pdf-view.active-view .lekha-pdf-page-placeholder {
    margin-bottom: 80px !important; /* Extra breathing room in full screen */
    box-shadow: 0 15px 50px rgba(0, 0, 0, 0.12) !important;
}

/* Premium Spinner Animation */
.lekha-spinner {
    width: 40px;
    height: 40px;
    border: 4px solid rgba(0,0,0,0.1);
    border-top: 4px solid var(--lekha-primary);
    border-radius: 50%;
    animation: lekha-spin 1s linear infinite;
    margin: 0 auto 15px auto;
}

@keyframes lekha-spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

.lekha-pdf-view::-webkit-scrollbar-thumb {
    background: #ffffff !important;
    /* Pure white scrollbar */
    border-radius: 10px !important;
    border: 3px solid transparent !important;
    /* Breathing room */
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.05) !important;
}

.lekha-pdf-view::-webkit-scrollbar-thumb:hover {
    background: #f0f0f0 !important;
}

.lekha-pdf-controls {
    margin-bottom: 0 !important;
    /* V79: Eliminated dead space (Reduced from 40px) */
    display: flex !important;
    justify-content: center !important;
    gap: 15px !important;
}

.lekha-pdf-switch-btn {
    background: rgba(0, 0, 0, 0.05) !important;
    border: none !important;
    padding: 12px 25px !important;
    border-radius: 12px !important;
    font-weight: 800 !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
    color: #555 !important;
}

.lekha-pdf-switch-btn.active,
.lekha-pdf-switch-btn.active:focus,
.lekha-pdf-switch-btn.active:active,
.lekha-pdf-switch-btn.active:hover {
    background: var(--lekha-black) !important;
    color: #ffffff !important;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.2) !important;
    outline: none !important;
}

/* PDF INTERACTIVE BUTTONS */

/* FULLSCREEN / EXPANDED STATE (Does not block page scroll) */
/* FULLSCREEN / EXPANDED STATE (Does not block page scroll) */
.is-expanded .lekha-pdf-view {
    height: auto !important;
    /* Allow physical height to grow */
    max-width: 1100px !important;
}



/* Download Section (Dynamic Subject Background) */
.lekha-worksheet-footer {
    padding: 20px 35px 60px 35px !important;
    /* V79: 35px Side Framing + Compressed 20px Top */
    border-radius: 40px !important;
    margin: 0 auto !important;
    /* V79: Eliminated extra top-margin pulse */
    max-width: 850px !important;
    text-align: center !important;
    transition: background-color 0.4s ease !important;
}

.lekha-worksheet-footer h4 {
    margin-bottom: 25px !important;
    /* V79: Tighter flow (Reduced from 40px) */
    font-size: 1.4rem !important;
    font-weight: 800 !important;
    color: var(--lekha-black) !important;
    line-height: 1.4 !important;
    max-width: 100% !important;
}

@media (max-width: 768px) {

    /* V92: True Symmetry Lockdown - Corrected Selector (div.lekha-worksheet-downloads-label) */
    body.single-worksheets .lekha-worksheet-downloads-label,
    #main .lekha-worksheet-footer h4 {
        display: block !important;
        white-space: normal !important;
        max-width: 250px !important;
        /* Forces 62px air gap on iPhone SE */
        margin: 0 auto 25px !important;
        padding: 0 15px !important;
        text-wrap: balance !important;
        text-align: center !important;
        line-height: 1.4 !important;
        font-size: 1.15rem !important;
        color: #666 !important;
        /* Match original PHP styling */
    }
}

/* V112: Content & Mobile Resurrection - Fixes Bold/Italic stripping and Mobile edge-touching */
.lekha-worksheet-description {
    font-size: 1.15rem !important;
    line-height: 1.6 !important;
    color: var(--lekha-black) !important;
    text-align: left !important;
    margin-top: 25px !important;
}

.lekha-worksheet-description strong,
.lekha-worksheet-description b {
    font-weight: 800 !important;
    /* Forced Bold */
}

.lekha-worksheet-description em,
.lekha-worksheet-description i {
    font-style: italic !important;
    /* Forced Italic */
}

/* V122: Absolute Symmetry Finalization - Total Header & Mobile Optimization */

/* THE NUCLEAR RECENTERING: Terminate the theme's default header block once and for all */
/* This targets the parent container of the theme's original header to ensure NO duplication */
/* div.wp-site-blocks header.wp-block-template-part.header,
header.wp-block-template-part,
.site-header-container,
.header.wp-block-template-part {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    opacity: 0 !important;
    pointer-events: none !important;
} */

/* Force the NEW Premium Header to be the only authoritative bar */
header.lekha-persistent-header {
    display: block !important;
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    background: rgba(255, 255, 255, 0.95) !important;
    backdrop-filter: blur(15px) !important;
    z-index: 9999999 !important;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05) !important;
    transition: all 0.3s ease !important;
}

/* --- Mobile Navigation & Overlap Optimization --- */
@media (max-width: 768px) {


    .lekha-header-left {
        display: flex !important;
        align-items: center !important;
        max-width: calc(100% - 60px) !important; /* Leave space for hamburger */
    }

    .lekha-header-container {
        justify-content: space-between !important;
        padding: 0 20px !important;
        height: 60px !important;
    }

    .lekha-site-logo {
        font-size: 19px !important;
        max-width: 75% !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
    }

    /* V122: Re-establishing the Mobile Safety Corridor */
    .lekha-worksheet-description {
        padding: 0 25px !important;
        margin-top: 100px !important;
        font-size: 1.1rem !important;
        line-height: 1.6 !important;
        clear: both !important;
        position: relative !important;
    }

    /* Fixed: Hamburger Menu Icon Position */
    .lekha-mobile-menu-toggle {
        display: flex !important;
        margin-left: auto !important;
    }
}

/* Global Bold/Italic Resurrection Logic remains active */
.lekha-worksheet-description strong,
.lekha-worksheet-description b {
    font-weight: 800 !important;
}

.lekha-worksheet-description em,
.lekha-worksheet-description i {
    font-style: italic !important;
}

.lekha-worksheet-downloads {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 15px !important;
    justify-content: center !important;
    flex-wrap: wrap !important;
    margin-top: 40px !important;
    width: 100% !important;
}

/* Large Download Buttons */
.lekha-worksheet-downloads .lekha-button-primary {
    padding: 18px 45px !important;
    font-size: 17px !important;
    /* V81: Compact Width Optimization */
    width: auto !important;
    min-width: 200px !important;
    max-width: 100% !important;
    /* V83: Bound by Footer (which is bound by PDF) */
}

/* Pinterest Button (Vibrant Red) */
#lekha-dynamic-pin-btn {
    background: #E60023 !important;
    color: #ffffff !important;
    box-shadow: 0 4px 0 #ad0000 !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 10px !important;
}

#lekha-dynamic-pin-btn:hover {
    background: #bd081c !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 6px 0 #ad0000 !important;
}

#lekha-dynamic-pin-btn svg {
    width: 20px !important;
    height: 20px !important;
    fill: #ffffff !important;
}


.lekha-related-worksheets-header {
    margin-bottom: 30px !important;
}

.lekha-related-worksheets-title {
    font-size: 1.6rem !important;
    font-weight: 800 !important;
    letter-spacing: -0.5px !important;
    color: var(--lekha-black) !important;
    opacity: 0.8 !important;
    text-align: center !important;
    margin: 0 auto !important;
}

.lekha-related-worksheets-section .lekha-related-grid {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 25px !important;
    margin: 0 auto !important;
    width: 100% !important;
    max-width: 780px !important;
}

/* 50% MICRO-CARDS - CLEAN CONSOLIDATED VISUAL-SIBLING MATCH */
.lekha-related-worksheets-section .lekha-related-grid .lekha-worksheet-card {
    width: 100% !important;
    max-width: 100% !important;
    padding: 30px 25px !important; /* Balanced for related card width */
    min-height: auto !important;
    flex: unset !important;
    border-radius: var(--lekha-radius-lg) !important;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05) !important;
    margin: 0 !important;
    transition: all 0.3s ease !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
}

/* 1. Worksheet Image Frame */
.lekha-related-worksheets-section .lekha-related-grid .lekha-worksheet-card__img-link {
    width: 100% !important;
    aspect-ratio: auto !important;
    height: auto !important;
    min-height: 250px !important;
    background: #ffffff !important;
    border-radius: 15px !important;
    padding: 12px !important;
    margin: 0 !important;
    margin-bottom: 15px !important;
    /* PROPORTIONAL GAP: Mirrors library breathability */
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.03) !important;
    overflow: hidden !important;
    border: 1px solid rgba(0, 0, 0, 0.02) !important;
}

.lekha-related-worksheets-section .lekha-related-grid .lekha-worksheet-card__img-link img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
}

/* 2. Worksheet Title (Name) */
.lekha-related-worksheets-section .lekha-related-grid .lekha-worksheet-card__title {
    font-size: 1.1rem !important;
    /* Slightly bolder presence */
    font-weight: 800 !important;
    line-height: 1.3 !important;
    margin: 0 0 8px !important;
    /* RESTORED REFINED GAP */
    height: auto !important;
    min-height: 0 !important;
    color: var(--lekha-black) !important;
}

/* 3. Subject Tags */
.lekha-related-worksheets-section .lekha-related-grid .lekha-worksheet-card__tags {
    margin-top: 15px !important;
    /* Proportional gap for smaller related cards */
    margin-bottom: 15px !important;
    display: flex !important;
    gap: 5px !important;
    justify-content: center !important;
}

.lekha-related-worksheets-section .lekha-related-grid .lekha-worksheet-card__tag {
    font-size: 9px !important;
    padding: 4px 10px !important;
    font-weight: 900 !important;
    text-transform: uppercase !important;
}

/* 4. Yellow Pill Button - Restore Global Premium Style */
.lekha-related-worksheets-section .lekha-related-grid .lekha-button-primary {
    padding: 14px 35px !important;
    font-size: 15px !important;
    width: auto !important;
    margin-bottom: 0 !important;
}

.lekha-related-worksheets-section .lekha-related-grid .lekha-worksheet-card:hover {
    transform: translateY(-8px) !important;
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.08) !important;
}

@media (max-width: 768px) {
    .lekha-related-worksheets-section .lekha-related-grid {
        grid-template-columns: 1fr !important;
        max-width: none !important;
        width: 100% !important;
    }

    .lekha-related-worksheets-section .lekha-related-grid .lekha-worksheet-card {
        width: 100% !important;
        max-width: 100% !important;
    }
}

/* --- 11. GLOBAL UI: TOGGLE, BACK-TO-TOP, FOOTER --- */

/* REGION SWITCHER (SEGMENTED) */
.lekha-segmented-control {
    display: inline-flex !important;
    position: relative !important;
    background: rgba(0, 0, 0, 0.05) !important;
    padding: 4px !important;
    border-radius: 99px !important;
    margin: 0 !important; /* Reset globally, add back for desktop only */
    vertical-align: middle !important;
    user-select: none !important;
    box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.02) !important;
}

@media (min-width: 1025px) {
    .lekha-segmented-control {
        margin-left: 20px !important;
    }
}


.lekha-seg-btn {
    position: relative !important;
    z-index: 2 !important;
    border: none !important;
    background: transparent !important;
    padding: 6px 18px !important;
    border-radius: 99px !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    color: #888 !important;
    cursor: pointer !important;
    pointer-events: auto !important;
    transition: color 0.12s ease !important;
    text-shadow: none !important;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    min-width: 60px !important;
    transform: translateZ(0);
    /* SHARPNESS LOCK */
}

.lekha-seg-btn.active {
    color: var(--lekha-black) !important;
}

.lekha-seg-glider {
    position: absolute !important;
    height: calc(100% - 8px) !important;
    width: calc(50% - 4px) !important;
    background: #ffffff !important;
    border-radius: 99px !important;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.08) !important;
    transition: transform 0.15s cubic-bezier(0.4, 0, 0.2, 1) !important;
    z-index: 1 !important;
    top: 4px !important;
    left: 4px !important;
    pointer-events: none !important;
    /* CRITICAL: Prevent blocking clicks on buttons underneath */
}

.lekha-seg-btn[data-region="intl"].active~.lekha-seg-glider {
    transform: translateX(100%) !important;
}

.lekha-segmented-control:hover .lekha-seg-btn:not(.active) {
    color: #555 !important;
}

/* BACK TO TOP */
#lekha-back-to-top {
    position: fixed !important;
    bottom: 30px !important;
    right: 30px !important;
    width: 50px !important;
    height: 50px !important;
    background: var(--lekha-black) !important;
    color: white !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    border: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    transform: translateY(20px) !important;
    transition: all 0.3s ease !important;
    z-index: 9999 !important;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.2) !important;
}

#lekha-back-to-top.visible {
    opacity: 1 !important;
    visibility: visible !important;
    transform: translateY(0) !important;
}

#lekha-back-to-top:hover {
    background: var(--lekha-primary) !important;
    color: var(--lekha-black) !important;
    transform: translateY(-5px) !important;
}

#lekha-back-to-top svg {
    width: 24px !important;
    height: 24px !important;
}

/* FOOTER ROW REFINEMENT (1-LEVEL) */

.lekha-footer-row {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    max-width: 1400px !important;
    margin: 0 auto !important;
    padding: 0 40px !important;
    flex-wrap: wrap !important;
    gap: 40px !important;
}

.lekha-footer-brand {
    display: flex !important;
    flex-direction: column !important;
    gap: 2px !important;
}

.lekha-footer-logo {
    font-weight: 800 !important;
    font-size: 13px !important;
    color: var(--lekha-black) !important;
    letter-spacing: -0.2px !important;
    margin-right: 15px !important;
}

.lekha-footer-tagline {
    font-size: 13px !important;
    color: #888 !important;
    font-weight: 600 !important;
}

.lekha-footer-brand-top {
    display: flex !important;
    align-items: center !important;
    flex-wrap: wrap !important;
}

.lekha-footer-right {
    display: flex !important;
    align-items: center !important;
    gap: 30px !important;
}

.lekha-footer-socials-group {
    display: flex !important;
    gap: 15px !important;
    align-items: center !important;
}

/* MOBILE RESPONSIVENESS (APPLE STYLE) */
.lekha-mobile-menu-toggle {
    display: none !important;
    flex-direction: column !important;
    gap: 6px !important;
    background: transparent !important;
    border: none !important;
    cursor: pointer !important;
    padding: 10px !important;
    z-index: 10001 !important;
}

.hamburger-bar {
    display: block !important;
    width: 24px !important;
    height: 2px !important;
    background: var(--lekha-black) !important;
    transition: all 0.3s ease !important;
}

@media (max-width: 1024px) {
    .lekha-mobile-menu-toggle {
        display: flex !important;
    }

    .lekha-mobile-menu-overlay {
        position: fixed !important;
        top: 0 !important;
        left: 0 !important;
        width: 100% !important;
        height: 100% !important;
        background: rgba(255, 255, 255, 0.98) !important;
        z-index: 1000000 !important;
        display: none;
        flex-direction: column;
        align-items: center;
        justify-content: flex-start;
        padding-top: 120px !important;
        overflow-y: auto !important; /* Enable scrolling for long menus */
        -webkit-overflow-scrolling: touch !important;
    }

    .lekha-nav-list {
        position: fixed !important;
        top: 0 !important;
        left: 0 !important;
        width: 100% !important;
        height: 100vh !important;
        background: rgba(255, 255, 255, 0.98) !important;
        backdrop-filter: blur(30px) !important;
        -webkit-backdrop-filter: blur(30px) !important;
        flex-direction: column !important;
        justify-content: center !important;
        align-items: center !important;
        gap: 40px !important;
        padding: 0 !important;
        margin: 0 !important;
        z-index: 10000 !important;
        opacity: 0 !important;
        visibility: hidden !important;
        transform: translateY(-30px) !important;
        transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1) !important;
    }

    .lekha-nav-list.active {
        opacity: 1 !important;
        visibility: visible !important;
        transform: translateY(0) !important;
    }

    /* Legacy Close Button Removed â€” #lekha-mobile-menu-close is used instead */

    .lekha-nav-list li a {
        font-size: 36px !important;
        /* LARGE APPLE STYLE */
        font-weight: 800 !important;
        letter-spacing: -1.5px !important;
    }
}

.lekha-social-icons {
    display: flex !important;
    gap: 15px !important;
    align-items: center !important;
}


.social-icon svg {
    width: 16px !important;
    height: 16px !important;
    fill: none !important;
    stroke: currentColor !important;
    stroke-width: 2 !important;
}

.social-icon:hover {
    transform: translateY(-3px) !important;
    color: white !important;
}

.social-icon.fb:hover {
    background: #1877F2 !important;
}

.social-icon.insta:hover {
    background: #E4405F !important;
}

.social-icon.pin:hover {
    background: #BD081C !important;
}

.social-icon.yt:hover {
    background: #FF0000 !important;
}

.social-icon.tiktok:hover {
    background: #000000 !important;
}

.social-icon svg {
    width: 60% !important;
    height: 60% !important;
    fill: currentColor !important;
    stroke: none !important;
}

@media (max-width: 1024px) {

    /* Fixed Navigation Tray - Apple Style */
    .wp-block-navigation__responsive-container.is-menu-open {
        position: fixed !important;
        top: 0 !important;
        left: 0 !important;
        width: 100vw !important;
        height: 100vh !important;
        background: rgba(255, 255, 255, 0.9) !important;
        backdrop-filter: blur(40px) !important;
        -webkit-backdrop-filter: blur(40px) !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        z-index: 99999 !important;
        padding: 0 !important;
        opacity: 0;
        animation: lekha-fade-in 0.4s cubic-bezier(0.4, 0, 0.2, 1) forwards;
    }

    .wp-block-navigation__responsive-container-content {
        padding: 0 !important;
        width: 100% !important;
        height: 100% !important;
        /* Full height for vertical center */
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
    }

    .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container {
        display: flex !important;
        flex-direction: column !important;
        gap: 25px !important;
        align-items: center !important;
        justify-content: center !important;
        flex-wrap: nowrap !important;
    }

    .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item {
        margin: 0 !important;
        width: 100% !important;
        text-align: center !important;
    }

    .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content {
        font-size: 28px !important;
        /* Balanced size */
        font-weight: 800 !important;
        letter-spacing: -1.2px !important;
        color: #111111 !important;
        padding: 12px 30px !important;
        display: inline-block !important;
        background: transparent !important;
        text-align: center !important;
    }

    /* Floating Toggle Position Fixes */
    .wp-block-navigation__responsive-container-open {
        position: fixed !important;
        right: 20px !important;
        top: 20px !important;
        z-index: 100001 !important;
        background: rgba(0, 0, 0, 0.06) !important;
        border-radius: 50% !important;
        width: 48px !important;
        height: 48px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        border: none !important;
    }

    /* Inside the mobile menu, the Close Button is static and stacked */
    .wp-block-navigation__responsive-container-close {
        position: static !important;
        margin: 20px 20px 0 auto !important;
        background: rgba(0, 0, 0, 0.06) !important;
        border-radius: 99px !important;
        padding: 10px 20px !important;
        width: auto !important;
        height: auto !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        border: none !important;
        font-weight: bold !important;
    }

    @keyframes lekha-fade-in {
        from {
            opacity: 0;
            transform: translateY(-20px) scale(0.95);
        }

        to {
            opacity: 1;
            transform: translateY(0) scale(1);
        }
    }

    /* Mobile Search Refinement */
    #lekha-header-search-anchor {
        width: auto !important;
        padding: 0 !important;
        border: none !important;
        margin: 0 !important;
        display: flex !important;
        align-items: center !important;
    }

    #lekha-header-search-anchor .lekha-nav-search-form {
        position: fixed !important;
        top: 75px !important;
        left: 50% !important;
        right: auto !important;
        opacity: 0 !important;
        visibility: hidden !important;
        transform: translateX(-50%) translateY(-10px) !important;
        box-shadow: 0 15px 40px rgba(0, 0, 0, 0.1) !important;
        background: #fff !important;
        width: calc(100% - 80px) !important;
        max-width: 500px !important;
        margin: 0 !important;
        padding: 15px !important;
        border-radius: 20px !important;
        transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
        z-index: 99999 !important;
    }

    #lekha-header-search-anchor .lekha-nav-search-form.active {
        opacity: 1 !important;
        visibility: visible !important;
        transform: translateX(-50%) translateY(0) !important;
    }

    #lekha-header-search-anchor .lekha-nav-search-toggle {
        display: flex !important;
        padding: 10px !important;
    }
}

/* Site-Wide Unified Header Style (Solid White) */
.lekha-persistent-header {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    z-index: 99999 !important;
    background: #ffffff !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    transition: all 0.3s ease !important;
    border-bottom: 2px solid rgba(0, 0, 0, 0.05) !important;
    padding: 15px 0 !important;
}


/* Header slightly narrower on scroll */
.lekha-persistent-header.is-scrolled {
    padding: 10px 0 !important;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.02) !important;
}

/* Always Black Text & Logos */
.lekha-persistent-header .lekha-nav-list a,
.lekha-persistent-header .site-title,
.lekha-persistent-header .site-title a,
.lekha-persistent-header .lekha-site-logo,
.lekha-persistent-header .lekha-nav-search-toggle,
.lekha-persistent-header svg,
.lekha-persistent-header p {
    color: #111111 !important;
    fill: #111111 !important;
    transition: color 0.3s ease !important;
}

/* Maintain hollow search icon */
.lekha-persistent-header .lekha-nav-search-toggle svg {
    fill: none !important;
}

/* Subpage padding controlled by V1400 Protocol at Top */

/* Purge Legacy Spacing rules (Replaced by V35 Anchor) */





/* Remove main container block margins on these pages */
body:is(.post-type-archive-worksheets, .archive, .search, .post-type-archive-lekha_worksheets, .page-id-47, .single-worksheets, .single-lekha_worksheets) main.wp-block-group,
body:is(.post-type-archive-worksheets, .archive, .search, .post-type-archive-lekha_worksheets, .page-id-47, .single-worksheets, .single-lekha_worksheets) main.site-main,
body:is(.post-type-archive-worksheets, .archive, .search, .post-type-archive-lekha_worksheets, .page-id-47, .single-worksheets, .single-lekha_worksheets) main#primary,
body:is(.post-type-archive-worksheets, .archive, .search, .post-type-archive-lekha_worksheets, .page-id-47, .single-worksheets, .single-lekha_worksheets) .entry-content,
body:is(.post-type-archive-worksheets, .archive, .search, .post-type-archive-lekha_worksheets, .page-id-47, .single-worksheets, .single-lekha_worksheets) .site-content,
/* 5. INTERNAL CONTAINER RESET: Forced parity for all archive-style templates */
body:is(.post-type-archive-worksheets, .archive, .search, .blog, .page, .tax-subject, .tax-grade, .search-results, .single-worksheets, .single-lekha_worksheets) :is(.lekha-archive-header, .wp-block-post-title, .page-title, .entry-header, article, .lekha-search-header) {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

/* Removed Duplicate Baseline Override */


/* End of file */

/* Redundant Hero Padding Removed - Consolidated below */

/* Ensure inner container doesn't counteract padding */
body.home .wp-block-cover__inner-container {
    padding-top: 0 !important;
    margin-top: 0 !important;
}

footer.wp-block-template-part,
footer.site-footer,
.site-footer-container,
.wp-block-template-part-footer {
    display: block !important;
    margin-top: 0 !important;
    background: transparent !important;
}

/* Clear theme-injected empty spaces at bottom */
.wp-site-blocks {
    display: flex !important;
    flex-direction: column !important;
    min-height: 100vh !important;
}

main#primary,
main.site-main {
    flex-grow: 1 !important;
}


/* Remove any potential space after footer */
html,
body {
    margin: 0 !important;
    padding: 0 !important;
    overflow-x: hidden !important;
}

/* Aggressive Footer Clean-up: Hide theme-injected footers site-wide */
footer:not(#lekha-footer-socials):not(:has(.lekha-footer-row)),
.site-footer,
.site-info,
.wp-block-template-part-footer,
[aria-label="Footer"],
.wp-site-blocks>*:last-child:not(#lekha-footer-socials):not(:has(#lekha-footer-socials)),
.wp-site-blocks p:empty,
/* Specifically target the standard Powered by WordPress line if it's in a block theme */
.wp-site-blocks>.wp-block-group:last-child {
    display: none !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    visibility: hidden !important;
}

/* Ensure our specific footer is NEVER hidden if it's treated as a last-child div */

.wp-block-cover__image-background,
.wp-block-cover__video-background,
.lekha-hero-bg {
    will-change: transform;
    height: 120% !important;
    top: -10% !important;
    object-fit: cover !important;
    transform-style: preserve-3d;
}

/* --- Header Navigation Layout --- */
.lekha-nav-list {
    display: flex !important;
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    gap: 30px !important;
    align-items: center !important;
}

.lekha-nav-list>li {
    position: relative !important;
}

.lekha-nav-list a {
    text-decoration: none !important;
    color: #111111 !important;
    font-weight: 700 !important;
    font-size: 18px !important;
    transition: all 0.2s ease !important;
}

.lekha-nav-list a:hover {
    color: var(--lekha-primary-dark) !important;
    /* Darker yellow for legibility on white */
    background: transparent !important;
}

/* Submenu Styles - Restored Vertical "Premium" Original */
.lekha-submenu,
.sub-menu {
    position: absolute !important;
    top: 100% !important;
    left: 50% !important;
    transform: translateX(-50%) translateY(10px) !important;
    background: #ffffff !important;
    /* Restored solid white background */
    min-width: 220px !important;
    list-style: none !important;
    padding: 15px 0 !important;
    border-radius: 18px !important;
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.08) !important;
    opacity: 0 !important;
    visibility: hidden !important;
    transition: all 0.25s ease !important;
    display: flex !important;
    flex-direction: column !important;
    /* Reverted to vertical */
    gap: 0 !important;
    z-index: 10000 !important;
    margin: 0 !important;
}

.lekha-has-submenu:hover .lekha-submenu,
.lekha-has-submenu:hover .sub-menu,
.menu-item-has-children:hover .sub-menu,
.lekha-has-submenu:focus-within .lekha-submenu,
.lekha-has-submenu:focus-within .sub-menu {
    opacity: 1 !important;
    visibility: visible !important;
    transform: translateX(-50%) translateY(0) !important;
    pointer-events: auto !important;
}

.lekha-submenu li a,
.sub-menu li a {
    padding: 10px 25px !important;
    display: block !important;
    /* Back to full-width block */
    font-weight: 700 !important;
    font-size: 15px !important;
    color: #444 !important;
    background: transparent !important;
    /* Remove individual button look */
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    white-space: nowrap !important;
    transition: all 0.2s ease !important;
}

.lekha-submenu li a:hover,
.sub-menu li a:hover {
    color: var(--lekha-primary-dark) !important;
    /* Yellow text only */
    background: transparent !important;
    padding-left: 30px !important;
    /* Keep the subtle push effect */
}

/* --- 12. PREMIUM FILTERING UI (DROPDOWNS) --- */
.lekha-filter-bar,
.lekha-filter-row,
.lekha-filter-group-wrapper {
    position: relative !important;
    z-index: 9990 !important;
    overflow: visible !important;
}

.lekha-filter-bar {
    margin-bottom: 40px !important;
    background: transparent !important;
}

.lekha-filter-group-wrapper {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 15px !important;
    align-items: center !important;
    justify-content: center !important;
}

.lekha-filter-dropdown {
    position: relative !important;
    display: inline-block !important;
    z-index: 9991 !important;
}

.lekha-filter-dropdown.active {
    z-index: 10000 !important;
}

.lekha-filter-dropdown-trigger {
    background: #ffffff !important;
    border: 2px solid #f0f0f0 !important;
    padding: 12px 20px !important;
    border-radius: var(--lekha-radius-md) !important;
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    cursor: pointer !important;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
    font-family: var(--lekha-font-main) !important;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.03) !important;
}

.lekha-filter-dropdown-trigger:hover {
    border-color: var(--color-active-yellow) !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.06) !important;
}

.lekha-filter-dropdown.active .lekha-filter-dropdown-trigger {
    border-color: var(--color-active-yellow) !important;
    background: #fffdf0 !important;
}

.lekha-filter-dropdown-label {
    font-weight: 700 !important;
    color: #888 !important;
    font-size: 14px !important;
}

.lekha-filter-dropdown-value {
    font-weight: 800 !important;
    color: #333 !important;
    font-size: 15px !important;
}

.lekha-filter-dropdown-chevron {
    width: 18px !important;
    height: 18px !important;
    color: #bdc3c7 !important;
    transition: transform 0.3s ease !important;
}

.lekha-filter-dropdown.active .lekha-filter-dropdown-chevron {
    transform: rotate(180deg) !important;
    color: var(--color-active-yellow) !important;
}

.lekha-filter-dropdown-menu {
    position: absolute !important;
    top: calc(100% + 10px) !important;
    left: 50% !important;
    transform: translateX(-50%) translateY(10px) !important;
    background: #ffffff !important;
    min-width: 220px !important;
    max-height: 300px !important; /* Cap height to approx 6-7 items */
    overflow-y: auto !important; /* Enable scrolling */
    border-radius: var(--lekha-radius-lg) !important;
    padding: 10px !important;
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.12) !important;
    z-index: 1000 !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 5px !important;
}

/* Custom Scrollbar for Filter Menu */
.lekha-filter-dropdown-menu::-webkit-scrollbar {
    width: 6px !important;
}
.lekha-filter-dropdown-menu::-webkit-scrollbar-track {
    background: transparent !important;
}
.lekha-filter-dropdown-menu::-webkit-scrollbar-thumb {
    background: #eee !important;
    border-radius: 10px !important;
}
.lekha-filter-dropdown-menu::-webkit-scrollbar-thumb:hover {
    background: #ddd !important;
}

.lekha-filter-dropdown.active .lekha-filter-dropdown-menu {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    transform: translateX(-50%) translateY(0) !important;
    display: flex !important; /* Final safety guard */
}

.lekha-filter-dropdown-menu .lekha-filter-btn,
.lekha-filter-dropdown-menu .lekha-sort-btn {
    width: 100% !important;
    text-align: left !important;
    padding: 12px 18px !important;
    background: transparent !important;
    border: none !important;
    border-radius: 12px !important;
    font-family: var(--lekha-font-main) !important;
    font-weight: 700 !important;
    font-size: 14px !important;
    color: #555 !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
}

.lekha-filter-dropdown-menu .lekha-filter-btn:hover,
.lekha-filter-dropdown-menu .lekha-sort-btn:hover {
    background: #f8f9fa !important;
    color: var(--color-active-yellow) !important;
    padding-left: 22px !important;
}

.lekha-filter-dropdown-menu .lekha-filter-btn.active,
.lekha-filter-dropdown-menu .lekha-sort-btn.active {
    background: var(--color-active-yellow) !important;
    color: #111111 !important;
}

/* Reset Button */
.lekha-filter-reset-btn {
    background: #f8f9fa !important;
    border: 2px solid transparent !important;
    padding: 12px 20px !important;
    border-radius: var(--lekha-radius-md) !important;
    font-family: var(--lekha-font-main) !important;
    font-weight: 700 !important;
    font-size: 14px !important;
    color: #888 !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
}

.lekha-filter-reset-btn:hover {
    background: #fef1f1 !important;
    color: #e74c3c !important;
}

.lekha-filter-reset-btn.active {
    display: none !important; /* Hide reset if "All" is active */
}

/* Row 2: Sort centering */
.lekha-sort-row {
    display: flex !important;
    justify-content: center !important;
    gap: 10px !important;
    align-items: center !important;
    margin-top: 15px !important;
}

/* --- 13. EXPANDABLE NAV SEARCH (Inline) --- */
.lekha-nav-search-wrapper {
    margin-left: 20px !important;
    display: inline-flex !important;
    align-items: center !important;
}

.lekha-nav-search-inner {
    display: flex !important;
    align-items: center !important;
    background: rgba(0, 0, 0, 0.06) !important;
    border-radius: 99px !important;
    padding: 2px !important;
    transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275) !important;
    max-width: 44px !important;
    overflow: hidden !important;
}

.lekha-nav-search-wrapper.active .lekha-nav-search-inner {
    max-width: 350px !important;
    background: #ffffff !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.12) !important;
    padding: 2px 15px 2px 2px !important;
}

.lekha-nav-search-toggle {
    background: transparent !important;
    border: none !important;
    width: 38px !important;
    height: 38px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    border-radius: 50% !important;
    color: var(--lekha-black) !important;
    flex-shrink: 0 !important;
    transition: all 0.2s ease !important;
}

.lekha-nav-search-toggle:hover {
    background: rgba(0, 0, 0, 0.05) !important;
}

.lekha-nav-search-toggle svg {
    width: 20px !important;
    height: 20px !important;
}

.lekha-nav-search-form {
    opacity: 0 !important;
    visibility: hidden !important;
    transform: translateY(-10px) !important;
    transition: all 0.3s ease !important;
    pointer-events: none !important;
}

.lekha-nav-search-form.active {
    opacity: 1 !important;
    visibility: visible !important;
    transform: translateY(0) !important;
    pointer-events: auto !important;
}

.lekha-nav-search-input {
    border: none !important;
    background: transparent !important;
    padding: 8px 10px !important;
    font-family: var(--lekha-font-main) !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    width: 200px !important;
}

/* V2 OVERLAY PILL: Always-on override (higher specificity than bare .lekha-nav-search-input) */
.lekha-nav-search-form-v2 .lekha-nav-search-input,
.lekha-nav-search-form-v2 input[type="search"],
.lekha-nav-search-form-v2 input {
    width: 100% !important;
    height: 60px !important;
    padding: 0 30px 0 70px !important;
    font-size: 20px !important;
    border: none !important;
    border-bottom: none !important;
    border-radius: 50px !important;
    background: #f5f5f5 !important;
    background-color: #f5f5f5 !important;
    -webkit-appearance: none !important;
    appearance: none !important;
    font-family: 'Quicksand', sans-serif !important;
    font-weight: 700 !important;
    color: #111 !important;
    outline: none !important;
    box-shadow: none !important;
    -webkit-box-shadow: none !important;
    box-sizing: border-box !important;
    text-align: left !important;
    line-height: normal !important;
    margin: 0 !important;
}
.lekha-nav-search-form-v2 .lekha-nav-search-input::placeholder,
.lekha-nav-search-form-v2 input[type="search"]::placeholder,
.lekha-nav-search-form-v2 input::placeholder {
    color: #888 !important;
    opacity: 1 !important;
    text-align: left !important;
}

.lekha-nav-search-input:focus {
    outline: none !important;
}

/* Hide old search on library page - DISABLED to allow grid search */
/* .lekha-search-bar-row { display: none !important; } */

/* --- 14. IN-PLACE CINEMATIC OVERLAY (FROSTED GLASS MODAL) --- */
#lekha-cinematic-dimmer {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    /* Prevents scrollbar-shift offset bug */
    height: 100vh !important;
    background: rgba(240, 240, 235, 0.9) !important;
    backdrop-filter: blur(20px) !important;
    -webkit-backdrop-filter: blur(20px) !important;
    z-index: 99990 !important;
    opacity: 0 !important;
    visibility: hidden !important;
    transition: all 0.5s cubic-bezier(0.165, 0.84, 0.44, 1) !important;
    display: block !important;
    /* Fixed flexbox scrolling bugs by using block */
    padding: 60px 0 !important;
    /* 50px top padding to visually match the exact 50px gap between pages */
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch !important;
    /* Smooth scroll on mobile */
    -ms-overflow-style: none !important;
    /* Hide scrollbar IE and Edge */
    scrollbar-width: none !important;
    /* Hide scrollbar Firefox */
}

/* Hide scrollbar for Chrome, Safari and Opera */
#lekha-cinematic-dimmer::-webkit-scrollbar {
    display: none !important;
}

#lekha-cinematic-dimmer.active {
    opacity: 1 !important;
    visibility: visible !important;
}

/* Cinematic Mode Custom Scrollbar */
#lekha-cinematic-dimmer::-webkit-scrollbar {
    width: 12px !important;
}

#lekha-cinematic-dimmer::-webkit-scrollbar-track {
    background: transparent !important;
}

#lekha-cinematic-dimmer::-webkit-scrollbar-thumb {
    background: #ccc !important;
    border-radius: 10px !important;
    border: 3px solid transparent !important;
    background-clip: padding-box !important;
}

/* Premium Exit Button at Bottom */
#lekha-pdf-exit-btn {
    position: fixed !important;
    bottom: 30px !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    z-index: 1000000 !important;
    padding: 10px 20px !important;
    width: auto !important;
    max-width: fit-content !important;
    min-width: 0 !important;
    white-space: nowrap !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 10px !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    border-radius: 99px !important; /* Pill style */
    background-color: var(--lekha-black) !important;
    color: #ffffff !important;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3) !important;
    border: none !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
}

#lekha-pdf-exit-btn svg {
    width: 18px !important;
    height: 18px !important;
    fill: currentColor !important;
}

#lekha-pdf-exit-btn:hover {
    transform: translateX(-50%) translateY(-3px) !important;
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.4), 0 2px 0 #000000 !important;
}

body.lekha-cinematic-mode #lekha-pdf-exit-btn {
    display: inline-flex !important;
    pointer-events: auto !important;
}


/* --- 15. PREMIUM BUTTON POLISH & TYPOGRAPHY FIXES --- */
/* Heavy Specificity for Load More and Secure Print */
body #lekha-load-more,
body #lekha-secure-print-btn {
    background-color: var(--lekha-black) !important;
    color: #ffffff !important;
    border-radius: 99px !important;
    padding: 12px 25px !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    border: none !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    line-height: 1 !important;
    transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

body #lekha-load-more:hover,
body #lekha-secure-print-btn:hover {
    transform: translateY(-2px) !important;
    background-color: #000000 !important;
    color: #ffffff !important;
}

body .lekha-button-black:active,
body #lekha-secure-print-btn:active {
    transform: translateY(1px) !important;
    box-shadow: 0 2px 0 #000000 !important;
}

.lekha-button-black:active {
    transform: translateY(2px) !important;
    box-shadow: 0 2px 0 #000000 !important;
}

/* Fix "Stretched" Button Text & Implement Premium Pill Switcher */
.lekha-pdf-switch-btn,
.lekha-button-primary,
.lekha-segmented-control .lekha-seg-btn {
    font-stretch: normal !important;
    letter-spacing: normal !important;
    text-transform: none !important;
    line-height: 1 !important;
}

/* --- THE UNIFIED PILL SWITCHER (US/INTL) - Image Matched --- */
.lekha-segmented-control {
    display: inline-flex !important;
    background: #f2f2f2 !important; /* Lighter track matching image */
    padding: 3px !important;
    border-radius: 99px !important;
    gap: 0 !important;
    border: none !important;
}

.lekha-seg-btn {
    background: transparent !important;
    border: none !important;
    padding: 10px 25px !important; /* Slightly wider for pill look */
    border-radius: 99px !important;
    font-family: 'Quicksand', sans-serif !important;
    font-weight: 700 !important;
    font-size: 14px !important;
    color: #888 !important; /* Gray for inactive */
    cursor: pointer !important;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
    white-space: nowrap !important;
}

.lekha-seg-btn.active {
    background: #111 !important; /* Solid Black matching image */
    color: #fff !important; /* White text on active */
    box-shadow: none !important; /* Clean flat look from image */
}

/* Desktop Specific: Refined (-10%) */
@media screen and (min-width: 1025px) {
    .lekha-segmented-control {
        transform: scale(0.9) !important; /* Reduced by 10% */
        transform-origin: left center !important;
    }
    .lekha-seg-btn {
        padding: 8px 18px !important;
        font-size: 13px !important;
    }
}

/* Mobile Specific: Large & Centered */
@media screen and (max-width: 1024px) {
    .lekha-segmented-control {
        width: fit-content !important;
        margin: 0 auto 40px auto !important;
        display: flex !important;
        background: #f5f5f5 !important;
        transform: none !important; /* Reverted to 1.0 */
    }
    .lekha-seg-btn {
        padding: 12px 35px !important;
        font-size: 16px !important;
        flex: 1 !important;
    }
}

/* Loading Spinner for Prep */
.lekha-loading-spinner {
    display: inline-block;
    width: 18px;
    height: 18px;
    border: 3px solid rgba(255, 255, 255, .3);
    border-radius: 50%;
    border-top-color: #fff;
    animation: lekha-spin 1s ease-in-out infinite;
    margin-right: 10px;
    vertical-align: middle;
}

/* --- 16. PREMIUM CONTACT PAGE (PASTEL PAPER) --- */
.lekha-contact-container {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    padding: 0 !important;
    width: 100% !important;
    min-height: 80vh !important;
    /* Equidistant vertical */
}

.lekha-contact-card {

    padding: 60px !important;
    border-radius: 40px !important;
    max-width: 700px !important;
    width: 100% !important;
    box-shadow: 0 30px 80px rgba(0, 0, 0, 0.06) !important;
    border: 1px solid rgba(255, 221, 0, 0.2) !important;
    text-align: center !important;
}

.lekha-contact-title {
    font-size: 3rem !important;
    font-weight: 800 !important;
    letter-spacing: -1.5px !important;
    margin-bottom: 10px !important;
    color: var(--lekha-black) !important;
}

.lekha-contact-subtitle {
    font-size: 1.1rem !important;
    color: #666 !important;
    margin-bottom: 40px !important;
    font-weight: 500 !important;
}

.lekha-form {
    text-align: left !important;
    max-width: 500px !important;
    margin: 0 auto !important;
}

.lekha-form-group {
    margin-bottom: 25px !important;
    display: flex !important;
    flex-direction: column !important;
    /* Label above input */
    gap: 8px !important;
}

.lekha-form-group label {
    font-weight: 700 !important;
    font-size: 14px !important;
    color: var(--lekha-black) !important;
    letter-spacing: -0.2px !important;
}

.lekha-form-group input,
.lekha-form-group textarea {
    width: 100% !important;
    box-sizing: border-box !important;
    /* Ensure padding doesn't push edges out */
    padding: 18px 25px !important;
    border: 2px solid rgba(0, 0, 0, 0.05) !important;
    border-radius: 12px !important;
    background: #ffffff !important;
    font-family: var(--lekha-font-main) !important;
    font-size: 16px !important;
    font-weight: 500 !important;
    transition: all 0.3s ease !important;
    color: var(--lekha-black) !important;
}

.lekha-form-group input:focus,
.lekha-form-group textarea:focus {
    outline: none !important;
    border-color: var(--lekha-primary) !important;
    box-shadow: 0 8px 30px rgba(255, 217, 0, 0.1) !important;
}

.lekha-form .lekha-button-black {
    width: 100% !important;
    box-sizing: border-box !important;
    padding: 18px 30px !important;
    font-size: 1.1rem !important;
    font-weight: 800 !important;
    font-family: 'Outfit', sans-serif !important;
    color: #111111 !important;
    background-color: #F4C430 !important; /* Premium Yellow */
    border: none !important;
    border-radius: 20px !important;
    cursor: pointer !important;
    transition: all 0.3s cubic-bezier(0.165, 0.84, 0.44, 1) !important;
    margin-top: 15px !important;
    box-shadow: 0 6px 15px rgba(244, 196, 48, 0.2) !important;
    letter-spacing: -0.01em !important;
}

.lekha-form .lekha-button-black:hover {
    background-color: #111111 !important;
    color: #ffffff !important;
    transform: translateY(-3px) !important;
    box-shadow: 0 12px 25px rgba(0, 0, 0, 0.15) !important;
}

.lekha-form .lekha-button-black:active {
    transform: translateY(0px) !important;
}

/* Cinematic Mode Stabilization */
body.lekha-cinematic-mode {
    overflow: hidden !important;
}

#lekha-cinematic-dimmer {
    -webkit-overflow-scrolling: touch !important;
    overscroll-behavior: contain !important;
    display: none !important;
    overflow-y: auto !important;
    background: rgba(0, 0, 0, 0.92) !important;
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: 100vw !important;
    height: 100vh !important;
    z-index: 999999 !important;
    /* Above the persistent header */
}

/* Hide the persistent header when in cinematic mode */
body.lekha-cinematic-mode .lekha-persistent-header {
    display: none !important;
}

#lekha-cinematic-dimmer.active {
    display: block !important;
    /* Strictly block to prevent flexbox clipping! */
}

/* Prevent double shadow in Cinematic */
#lekha-cinematic-dimmer.active .lekha-pdf-page-placeholder {
    box-shadow: 0 0 40px rgba(0, 0, 0, 0.1) !important;
}

#lekha-cinematic-dimmer .lekha-pdf-viewer-root,
.is-fullscreen {
    position: relative !important;
    z-index: 9995 !important;
    width: 100% !important;
    max-width: 95vw !important;
    margin: 0 auto !important;
    height: auto !important;
    min-height: 90vh !important;
    background: transparent !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    overflow: visible !important;
}

.is-fullscreen .lekha-pdf-view {
    height: auto !important;
    overflow: visible !important;
    display: block !important;
    width: 100% !important;
    max-width: 1000px !important;
    /* Large cinematic size, but prevents infinite blowing up on 4k monitors */
    margin: 0 auto !important;
    padding-top: 10px !important;
}

/* 
 * CRITICAL SCROLL CLEARANCE FIX:
 * Since padding is occasionally ignored at the bottom of scroll containers,
 * we insert a physical, invisible 100px tall block at the end of the pages.
 * This guarantees the user can scroll past the final curved edge, perfectly balancing 
 * the bottom visual gap with the 40px top gap (factoring in the floating Exit button).
 */
.is-fullscreen .lekha-pdf-view::after {
    content: "" !important;
    display: block !important;
    width: 100% !important;
    height: 100px !important;
}

/* 
 * FIX FOR CLIPPING TOP/BOTTOM:
 * Instead of hiding overflow on the wrapper, we apply the background, shadows, 
 * and curves directly to the canvas element itself in Full Screen mode.
 * This completely eliminates the CSS container clipping bug!
 */
.is-fullscreen .lekha-pdf-page-placeholder {
    overflow: visible !important;
    /* Stop cropping! */
    background: transparent !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    margin: 0 auto 50px auto !important;
    /* Forces perfect centering and equal 50px gaps between pages */
}

.is-fullscreen .lekha-pdf-view canvas {
    width: 100% !important;
    height: auto !important;
    display: block !important;
    background: #ffffff !important;
    /* Canvas acts as the paper */
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.15) !important;
    border-radius: 25px !important;
    /* Curves applied directly */
    margin: 0 auto !important;
}

#lekha-footer-socials {
    display: block !important;
    visibility: visible !important;
    position: relative !important;
    z-index: 10 !important;
    margin: 0 !important;
    background: transparent !important;
    padding: 15px 0 !important;
    clear: both !important;
    border-top: 1px solid rgba(0, 0, 0, 0.05) !important;
    opacity: 1 !important;
    height: auto !important;
}

.lekha-footer-row {
    max-width: 1400px !important;
    margin: 0 auto !important;
    padding: 0 40px !important;
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    /* Centered Vertically */
    gap: 40px !important;
}

.lekha-footer-brand {
    flex: 1 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 4px !important;
}

.lekha-worksheet-card__body {
    padding: 10px 0 0 0 !important;
    text-align: center !important;
    flex-grow: 1 !important;
    display: flex !important;
    flex-direction: column !important;
}

.lekha-footer-socials-group {
    flex: 1 !important;
    display: flex !important;
    justify-content: center !important;
    /* Centered Horizontally */
    gap: 20px !important;
}

.lekha-footer-right {
    flex: 1 !important;
    display: flex !important;
    justify-content: flex-end !important;
}

.social-icon {
    width: 32px !important;
    height: 32px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 50% !important;
    background: rgba(0, 0, 0, 0.04) !important;
    color: #444 !important;
    transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

.social-icon:hover {
    background: var(--lekha-black) !important;
    color: #ffffff !important;
    transform: translateY(-3px) !important;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1) !important;
}

.lekha-footer-legal {
    display: flex !important;
    gap: 15px !important;
}

.lekha-footer-legal a {
    font-size: 13px !important;
    font-weight: 600 !important;
    color: #666 !important;
    text-decoration: none !important;
    transition: color 0.2s !important;
    border: none !important;
}

/* Site-Wide Continuity: Remove main margins */
main.site-main,
#primary {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}

/* Hero UI/UX Polish: Move text down to clear fixed header (REMOVED: Handled by responsive custom CSS) */
body.home .lekha-hero {
    padding-top: 0 !important;
    /* Balanced for UX: High-position with header clearance */
}

@media (max-width: 1024px) {
    .lekha-footer-row {
        flex-direction: column !important;
        text-align: center !important;
        gap: 40px !important;
        padding-top: 40px !important;
        padding-bottom: 40px !important;
    }

    .lekha-footer-brand,
    .lekha-footer-socials-group,
    .lekha-footer-right {
        justify-content: center !important;
        align-items: center !important;
        flex: none !important;
        width: 100% !important;
    }

    /* Universal Block Decluttering */
    .wp-block-group, 
    .wp-block-columns, 
    .wp-block-section,
    .entry-content > * {
        margin-top: 60px !important;
        margin-bottom: 60px !important;
    }
}

/* Base Background for all pages */
html,
body {
    background: #ffffff !important;
}

/* --- LOAD MORE BUTTON --- */
.lekha-load-more-container {
    display: flex !important;
    justify-content: center !important;
    padding: 60px 0 !important;
    width: 100% !important;
}

#lekha-load-more {
    background: #fff !important;
    color: var(--lekha-black) !important;
    border: 2px solid var(--lekha-black) !important;
    padding: 16px 40px !important;
    border-radius: 50px !important;
    font-weight: 700 !important;
    font-size: 14px !important;
    cursor: pointer !important;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.05) !important;
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
}

#lekha-load-more:hover {
    background: var(--lekha-black) !important;
    color: #fff !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1) !important;
}

#lekha-load-more:disabled {
    opacity: 0.5 !important;
    cursor: wait !important;
}

#lekha-load-more.hidden {
    display: none !important;
}

/* --- HYBRID PAGINATION BAR --- */
#lekha-pagination-container {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 60px 0 !important;
    width: 100% !important;
}

#lekha-pagination-container.hidden {
    display: none !important;
}

.lekha-page-btn {
    min-width: 42px !important;
    height: 42px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: #fff !important;
    border: 1.5px solid #eee !important;
    border-radius: 50% !important;
    color: #666 !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    cursor: pointer !important;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
    text-decoration: none !important;
}

.lekha-page-btn:hover {
    border-color: var(--lekha-black) !important;
    color: var(--lekha-black) !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.05) !important;
}

.lekha-page-btn.active {
    background: var(--lekha-black) !important;
    border-color: var(--lekha-black) !important;
    color: #ffffff !important;
    box-shadow: 0 8px 15px rgba(0, 0, 0, 0.15) !important;
}

.lekha-page-btn.prev-next {
    padding: 0 15px !important;
    border-radius: 25px !important;
    min-width: auto !important;
}

.lekha-page-btn.dots {
    border: none !important;
    background: transparent !important;
    cursor: default !important;
}

.lekha-page-btn:disabled {
    opacity: 0.3 !important;
    cursor: not-allowed !important;
}

/* Ensure the header and its contents are strictly clickable */
header.lekha-persistent-header,
header.lekha-persistent-header * {
    pointer-events: auto;
}

/* Force Premium Background ONLY on single worksheet pages */

/* Removed Legacy Hero Background */
body.single-worksheets::before {
    content: none !important;
}

/* Footer Restoration: Ensuring site footer is visible everywhere */
footer,
.site-footer,
.wp-block-template-part-footer,
#lekha-footer-socials {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    position: relative !important;
    z-index: 10 !important;
    clear: both !important;
}

/* Search & Archive Card Grid: Responsive Columns */
.lekha-search-results-page .lekha-worksheets-grid,
.lekha-premium-grid-page .lekha-worksheets-grid,
.lekha-archive-wrapper .lekha-worksheets-grid {
    display: grid !important;
    grid-template-columns: 1fr !important; /* Default: 1 column (Mobile) */
    gap: 30px !important;
    padding: 30px 0 !important;
}

/* Tablet: 2 Columns */
@media screen and (min-width: 600px) {
    .lekha-search-results-page .lekha-worksheets-grid,
    .lekha-premium-grid-page .lekha-worksheets-grid,
    .lekha-archive-wrapper .lekha-worksheets-grid {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 35px !important;
    }
}

/* Desktop: 3 Columns */
@media screen and (min-width: 1025px) {
    .lekha-search-results-page .lekha-worksheets-grid,
    .lekha-premium-grid-page .lekha-worksheets-grid,
    .lekha-archive-wrapper .lekha-worksheets-grid {
        grid-template-columns: repeat(3, 1fr) !important;
        gap: 45px !important;
    }
}

@keyframes lekha-spin {
    to {
        transform: rotate(360deg);
    }
}

/* Card Tag Refinements */
.lekha-tag-pill,
.lekha-worksheet-card__tag {
    text-decoration: none !important;
    border-bottom: none !important;
}

.lekha-archive-page .lekha-worksheets-grid {
    display: grid !important;
    grid-template-columns: repeat(auto-fill, minmax(320px, 1fr)) !important;
    gap: 45px !important;
}

/* --- GO TO TOP BUTTON --- */
#lekha-back-to-top {
    position: fixed !important;
    bottom: 30px !important;
    right: 30px !important;
    width: 60px !important;
    height: 60px !important;
    background: var(--lekha-black, #111) !important;
    color: white !important;
    border: none !important;
    border-radius: 50% !important;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2) !important;
    cursor: pointer !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    z-index: 99998 !important;
    opacity: 0 !important;
    visibility: hidden !important;
    transform: translateY(20px) !important;
    transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275) !important;
}

#lekha-back-to-top.visible {
    opacity: 1 !important;
    visibility: visible !important;
    transform: translateY(0) !important;
}

#lekha-back-to-top:hover {
    transform: translateY(-5px) !important;
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.25) !important;
}

#lekha-back-to-top svg {
    width: 24px !important;
    height: 24px !important;
}

/* --- HERO TYPOGRAPHY & BG OPTIMIZATIONS --- */
.wp-block-cover.lekha-ken-burns {
    background-size: cover !important;
    background-repeat: no-repeat !important;
    background-position: center center !important;
}

.lekha-hero-content h1,
body.home .wp-block-cover h1,
body.home .lekha-hero p:first-child {
    line-height: 1.1 !important;
    font-weight: 800 !important;
    letter-spacing: -1.5px !important;
    margin-bottom: 20px !important;
    padding-top: var(--lekha-home-hero-text-padding-top) !important;
    text-align: center;
    color: #ffffff;
    /* White text for dimmed hero */
}

.lekha-hero-stars {
    color: var(--color-active-yellow) !important;
}

@media (max-width: 768px) {

    /* Hero Heading - Centered by default */
    .lekha-hero-content h1,
    body.home .wp-block-cover h1,
    body.home .lekha-hero p:first-child {
        font-size: 1.8rem !important; /* Further reduced for better adaptation */
        letter-spacing: -0.5px !important;
        text-align: center;
        margin-left: auto;
        margin-right: auto;
    }

    /* Tagline refinements - Centered */
    .lekha-ken-burns .wp-block-group p,
    body.home .wp-block-columns p {
        text-align: center;
        font-size: 1rem !important;
        margin-left: auto;
        margin-right: auto;
        max-width: 90%;
    }

    /* Legacy Social Proof Mobile Styles Removed - Handled by Fresh Hero Block */

    #lekha-back-to-top {
        bottom: 20px !important;
        right: 20px !important;
        width: 50px !important;
        height: 50px !important;
        border-radius: 50% !important;
        padding: 0 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        line-height: 1 !important;
        flex-shrink: 0 !important;
    }
}

/* --- GLOBAL HERO CENTERING & LAYOUT --- */
.lekha-hero-cover-clean {
    min-height: clamp(500px, 60vh, 850px) !important;
    display: flex !important;
    align-items: center !important;
    margin-top: 0 !important; /* GAP REMOVED: Managed by responsive CSS */
    background-color: #f8f9fa !important; /* Standardized background */
}

.lekha-hero-cover-clean .wp-block-cover__inner-container {
    width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* --- FRESH HERO SECTION --- */
.lekha-fresh-hero-block {
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: flex-start !important;
    padding: 0 40px !important;
    gap: 0 !important;
    margin: 0 !important;
}

/* 2. Social Proof Section - Direct Children of Hero Block */

/* Stars */
.lekha-social-proof__stars {
    display: flex !important;
    gap: 2px !important;
    margin: 0 0 12px 0 !important; /* Increased from 10px */
    height: 18px !important;
    align-items: center !important;
    visibility: visible !important;
    opacity: 1 !important;
}

.lekha-social-proof__text {
    font-size: 0.85rem !important;
    font-weight: 700 !important;
    letter-spacing: 0.1em !important;
    color: #888 !important;
    margin: 0 0 18px 0 !important; /* Increased from 15px */
    text-transform: uppercase !important;
    text-align: left !important;
}

.lekha-hero-headline {
    font-size: clamp(1.54rem, 3.5vw, 2.66rem) !important; /* Reduced by 30% from original */
    font-weight: 800 !important;
    line-height: 1.6 !important; /* Breathable leading */
    letter-spacing: -0.03em !important;
    color: #111111 !important;
    margin: 0 0 18px 0 !important; /* Increased from 15px */
    padding: 0 !important; /* ABSOLUTE RESET */
    text-align: left !important;
}

.lekha-hero-description {
    font-size: 1.15rem !important;
    line-height: 1.6 !important;
    color: #555 !important;
    margin: 0 0 42px 0 !important; /* Increased from 35px */
    max-width: 550px !important;
    text-align: left !important;
}

/* Rogue Outline Protocol Purged */

/* 5. Image Size Footprint & Premium Shadow */
.lekha-hero-side-image img {
    width: 100% !important;
    height: auto !important;
    margin-left: auto !important;
    display: block !important;
    border-radius: 32px !important; /* Adjusted to 32px for a cleaner look */
    box-shadow: none !important;
    transition: transform 0.4s ease !important;
    object-fit: cover !important;
}

.lekha-hero-side-image img:hover {
    transform: translateY(-4px) scale(1.01) !important;
    box-shadow: none !important;
}

/* --- MOBILE SPECIFIC HERO OVERRIDES --- */
@media screen and (max-width: 1024px) {
    .lekha-fresh-hero-block {
        align-items: center !important;
        text-align: center !important;
        padding: 40px 20px !important;
    }

    .lekha-social-proof__stars,
    .lekha-social-proof__text,
    .lekha-hero-headline,
    .lekha-hero-description {
        text-align: center !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }

    .lekha-hero-side-image {
        margin-top: 40px !important; /* Gap between button and image */
        width: 100% !important;
    }

    /* Scroll Highlight Effect */
    .lekha-worksheet-card {
        transition: transform 0.4s cubic-bezier(0.165, 0.84, 0.44, 1), box-shadow 0.4s ease !important;
    }

    .lekha-worksheet-card.is-highlighted {
        transform: translateY(-8px) scale(1.02) !important;
        box-shadow: 0 25px 50px rgba(0,0,0,0.15) !important;
        z-index: 10 !important;
    }
}

@media screen and (min-width: 1025px) {
    .lekha-fresh-hero-block {
        align-items: flex-start !important;
        text-align: left !important;
    }
    
    .lekha-hero-headline,
    .lekha-hero-description {
        text-align: left !important;
    }

    .lekha-hero-column-text {
        display: flex !important;
        flex-direction: column !important;
        justify-content: center !important;
        height: 650px !important; /* Match Cover min-height for precise centering */
    }
}

/* Force centering of Gutenberg buttons globally in hero */
.lekha-ken-burns .wp-block-buttons {
    justify-content: center !important;
    display: flex !important;
    width: 100% !important;
}

/* Hide Mobile Search and Overlay on Desktop */
.lekha-mobile-search-form,
.lekha-mobile-menu-overlay,
.lekha-mobile-menu-toggle {
    display: none !important;
}

/* --- DESKTOP NAVIGATION STYLING (> 1024px) --- */
@media screen and (min-width: 1025px) {
    /* Responsive Refinements for iPad Pro / Laptops (922px - 1400px) */
    @media (max-width: 1400px) {
        .lekha-header-container {
            padding-left: 35px !important;
            padding-right: 35px !important;
        }
        .lekha-site-logo {
            font-size: 22px !important;
        }
        .lekha-nav-list {
            gap: 20px !important;
        }
        .lekha-header-actions {
            gap: 20px !important;
        }
    }
    
    /* Extra Compact for smaller tablets */
    @media (max-width: 1100px) {
        .lekha-site-logo {
            font-size: 19px !important;
        }
        .lekha-desktop-nav {
            gap: 12px !important;
        }
        .lekha-expanding-search.active {
            width: 200px !important;
        }
    }

    .lekha-header-left {
        display: flex !important;
        align-items: center !important;
        gap: 0 !important; /* Gap removed as requested */
    }

    .lekha-header-nav {
        display: flex !important;
        align-items: center !important;
        gap: 30px !important;
        width: 100% !important;
    }

    .lekha-nav-list {
        display: flex !important;
        list-style: none !important;
        margin: 0 !important;
        padding: 0 !important;
        gap: 25px !important;
        align-items: center !important;
        visibility: visible !important;
        opacity: 1 !important;
    }

    .lekha-nav-list li {
        position: relative !important;
        margin: 0 !important;
    }

    .lekha-nav-list li a {
        font-family: 'Outfit', sans-serif !important;
        font-size: 18px !important; /* Increased for better readability */
        font-weight: 700 !important;
        color: #111111 !important;
        text-decoration: none !important;
        padding: 10px 0 !important;
        transition: color 0.3s ease !important;
        position: relative !important;
        letter-spacing: -0.01em !important; /* Tighter letter-spacing for modern look */
    }

    .lekha-persistent-header .lekha-nav-list li a:hover,
    .lekha-persistent-header .lekha-nav-list li:hover>a,
    .lekha-persistent-header .lekha-nav-list li.current-menu-item>a,
    .lekha-persistent-header .lekha-nav-list li.current_page_item>a {
        color: var(--lekha-primary-dark) !important;
    }

    /* Desktop Dropdowns (Sub-menus) */
    .lekha-nav-list .sub-menu {
        position: absolute !important;
        top: 100% !important;
        left: 50% !important;
        transform: translateX(-50%) translateY(10px) !important;
        background: #fff !important;
        border-radius: 12px !important;
        box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1) !important;
        padding: 15px !important;
        min-width: 180px !important;
        opacity: 0 !important;
        visibility: hidden !important;
        transition: all 0.3s ease !important;
        z-index: 1000 !important;
        list-style: none !important;
    }

    .lekha-nav-list li:hover>.sub-menu {
        opacity: 1 !important;
        visibility: visible !important;
        transform: translateX(-50%) translateY(0) !important;
    }

    /* Desktop Actions & Region Switcher */
    .lekha-header-actions {
        display: flex !important;
        align-items: center !important;
        gap: 30px !important; /* Space between Switcher and Nav group */
        margin-left: auto !important;
        justify-content: flex-end !important;
    }

    .lekha-nav-search-group {
        display: flex !important;
        align-items: center !important;
        gap: 19px !important; /* Total 30px visual gap (19px + 11px icon padding) */
    }

    .lekha-desktop-extras {
        display: flex !important;
        align-items: center !important;
        opacity: 1 !important;
        visibility: visible !important;
    }

    /* --- EXPANDING NAV SEARCH BAR --- */
    .lekha-nav-search-container {
        display: flex !important;
        align-items: center !important;
        margin-right: 15px !important;
    }

    .lekha-expanding-search {
        position: relative !important;
        display: flex !important;
        flex-direction: row !important; /* Input left, Icon right */
        align-items: center !important;
        flex: 0 0 auto !important; /* Prevent stretching */
        background: transparent !important;
        border-radius: 99px !important;
        width: 44px !important;
        height: 44px !important;
        transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1) !important;
        overflow: hidden !important;
        border: 1px solid transparent !important;
    }

    .lekha-expanding-search.active {
        width: 320px !important;
        background: #f8f8f8 !important; /* Subtle background for input area */
        border-color: #eee !important;
        cursor: text !important; /* Show typing cursor when active */
        margin-left: 0 !important; /* Ensure no jump */
    }

    .lekha-nav-search-input {
        width: 0 !important; /* Zero width when inactive */
        opacity: 0 !important;
        border: none !important;
        background: transparent !important;
        padding: 0 !important;
        visibility: hidden !important; /* Completely hide until needed */
        font-family: 'Outfit', sans-serif !important;
        font-size: 18px !important; /* Match menu items */
        font-weight: 700 !important; /* Match menu items */
        color: #111 !important;
        outline: none !important;
        transition: all 0.4s ease !important;
        text-align: left !important; /* Start typing from left */
        height: 44px !important; /* Vertical centering lock */
        line-height: 44px !important; /* Vertical centering lock */
    }

    .lekha-expanding-search.active .lekha-nav-search-input {
        width: 100% !important;
        opacity: 1 !important;
        visibility: visible !important;
        padding: 0 10px 0 20px !important;
        height: 44px !important;
        line-height: 44px !important;
    }

    /* Prevent icon clipping when expanded */
    .lekha-expanding-search.active {
        padding-right: 12px !important;
    }

    .lekha-nav-search-btn {
        background: transparent !important;
        border: none !important;
        width: 44px !important;
        height: 44px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        cursor: pointer !important;
        color: #111 !important;
        flex-shrink: 0 !important;
        padding: 0 !important;
    }

    .lekha-nav-search-btn svg,
    .lekha-nav-search-btn svg circle,
    .lekha-nav-search-btn svg line {
        fill: none !important;
        stroke: currentColor !important;
        stroke-width: 2.2px !important;
    }

    .lekha-search-close {
        position: absolute !important;
        top: 30px !important;
        right: 30px !important;
        font-size: 32px !important;
        color: #ddd !important;
        background: transparent !important;
        border: none !important;
        cursor: pointer !important;
        transition: color 0.2s ease !important;
    }

    .lekha-search-close:hover {
        color: #111 !important;
    }

    .lekha-nav-list .sub-menu li {
        margin-bottom: 10px !important;
        text-align: left !important;
    }

    .lekha-nav-list .sub-menu li:last-child {
        margin-bottom: 0 !important;
    }

    .lekha-nav-list .sub-menu li a {
        font-size: 14px !important;
        white-space: nowrap !important;
        padding: 5px 0 !important;
    }
}

/* --- MOBILE NAVIGATION OVERLAP FIX --- */
@media (max-width: 768px) {

    /* Ensure the mobile menu doesn't just hang open or overlap */
    .wp-block-navigation__responsive-container:not(.is-menu-open) {
        display: none !important;
    }


    .lekha-social-proof__stars span {
        font-size: 2rem !important;
        /* Doubled size for mobile impact */
    }
}

/* --- CLEANUP: Hide duplicate/fallback headers and footers on premium grid pages --- */
.lekha-premium-grid-page header:not(.lekha-persistent-header),
.lekha-premium-grid-page .site-header:not(.lekha-persistent-header),
.lekha-premium-grid-page .wp-block-template-part-header:not(.lekha-persistent-header) {
    display: none !important;
}

/* Hide fallback footers that don't contain our official social/copyright logic */
.lekha-premium-grid-page footer:not(:has(#lekha-footer-socials)),
.lekha-premium-grid-page .site-footer:not(:has(#lekha-footer-socials)),
.lekha-premium-grid-page .wp-block-template-part-footer:not(:has(#lekha-footer-socials)) {
    display: none !important;
}

/* --- SEARCH RESULTS PAGE BAR --- */
.lekha-search-results-hero {
    background: transparent !important;
    padding: 30px 0 !important;
    border: none !important;
    margin-top: 100px !important; /* Alignment below fixed header */
    width: 100% !important;
    position: relative !important;
    z-index: 10 !important;
}

.lekha-search-results-container {
    max-width: 800px !important;
    margin: 0 auto !important;
    padding: 0 25px !important;
}

.lekha-search-results-box {
    display: flex !important;
    align-items: center !important;
    background: #ffffff !important;
    border-radius: 99px !important;
    padding: 8px 10px 8px 35px !important;
    border: 1px solid #f0f0f0 !important;
    box-shadow: 0 10px 30px rgba(0,0,0,0.06) !important;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

.lekha-search-results-box:focus-within {
    background: #ffffff !important;
    border-color: var(--lekha-primary-dark) !important;
    box-shadow: 0 15px 40px rgba(0,0,0,0.08) !important;
}

.lekha-search-results-input {
    flex: 1 !important;
    background: transparent !important;
    border: none !important;
    font-family: 'Outfit', sans-serif !important;
    font-size: 22px !important;
    font-weight: 600 !important;
    color: #111 !important;
    padding: 12px 0 !important;
    outline: none !important;
}

.lekha-search-results-submit {
    background: var(--lekha-primary-dark) !important;
    color: #111 !important;
    width: 54px !important;
    height: 54px !important;
    border-radius: 50% !important;
    border: none !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
}

.lekha-search-results-submit:hover {
    transform: scale(1.05) !important;
    background: #f0c020 !important;
}

/* Ensure Persistent Header Visibility */
header.lekha-persistent-header {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}
    display: none !important;
}

/* Ensure our official one remains visible though */
.lekha-persistent-header .wp-block-site-title {
    display: block !important;
}

/* --- UNIVERSAL MASTER TITLES (Outfit + Quicksand + Yellow Bar Centering) --- */
:is(h1.wp-block-post-title, .blog h1.wp-block-heading, .lekha-archive-header h1, .lekha-search-header h1, .lekha-worksheets-header h1, .lekha-title-container h1, .single-worksheets h1, .single-lekha_worksheets h1, h1.page-title, h1.archive-title) {
    font-family: var(--lekha-font-main) !important;
    font-size: clamp(2.5rem, 5vw, 3.5rem) !important; /* Mobile Baseline */
    font-weight: 800 !important;
    letter-spacing: -2px !important;
    color: var(--lekha-black) !important;
    text-align: center !important;
    margin: 0 auto 0 auto !important;
    line-height: 1.1 !important;
    position: relative !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    display: flex !important; /* Enabled Flex-Centering System */
    flex-direction: column !important;
    align-items: center !important;
    width: 100% !important;
}

/* V2600: DESKTOP TYPOGRAPHY REFINEMENT (30% Reduction) */
@media (min-width: 1025px) {
    :is(h1.wp-block-post-title, .blog h1.wp-block-heading, .lekha-archive-header h1, .lekha-search-header h1, .lekha-worksheets-header h1, .lekha-title-container h1, .single-worksheets h1, .single-lekha_worksheets h1, h1.page-title, h1.archive-title) {
        font-size: clamp(1.5rem, 3vw, 2.15rem) !important; /* Further 10% reduction for premium balance */
    }
}

/* Conflicting Overlap Block Removed - Unified under V125 Protocol at top */

/* Hard Spacing Reduction: Tightening gaps across all grid pages */
.lekha-archive-wrapper {
    padding-top: 0 !important;
    padding-bottom: 20px !important;
}

.lekha-archive-header,
.lekha-search-header,
.lekha-worksheets-header {
    margin-top: 0 !important;
    padding-top: 0 !important;
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}

.lekha-worksheets-section {
    padding-top: 0 !important; /* Secondary gap purged - Controlled by V1400 baseline */
    margin-top: 0 !important;
}

/* Cleanup: Hide secondary title divs since ::after now handles the bar */
.lekha-archive-header h1+div {
    display: none !important;
}

/* --- AUTHORITATIVE MOBILE OVERHAUL (Max 1024px) --- */
@media screen and (max-width: 1024px) {
    /* 1. Reset everything first */
    .lekha-persistent-header * { box-sizing: border-box !important; }

    /* 2. Header: Logo (Left) | Search + Hamburger (Right) */
    .lekha-header-container {
        display: flex !important;
        flex-direction: row !important;
        justify-content: space-between !important;
        align-items: center !important;
        padding: 0 20px !important;
        height: 80px !important;
        width: 100% !important;
        background: #ffffff !important;
        position: relative !important;
        z-index: 1000 !important;
        border-bottom: 1px solid rgba(0,0,0,0.05) !important;
    }

    .lekha-header-left {
        flex: 1 !important;
        display: flex !important;
        align-items: center !important;
    }

    .lekha-site-logo {
        font-size: 20px !important;
        font-weight: 800 !important;
        color: #111 !important;
        text-decoration: none !important; /* No underline as requested */
        white-space: nowrap !important;
    }

    .lekha-header-actions {
        display: flex !important;
        align-items: center !important;
        gap: 15px !important;
    }

    .lekha-nav-search-toggle {
        display: flex !important;
        align-items: center !important;
        padding: 8px !important;
        color: #111 !important;
        background: transparent !important;
        border: none !important;
    }

    .lekha-mobile-menu-toggle {
        display: flex !important;
        flex-direction: column !important;
        gap: 5px !important;
        width: 32px !important;
        background: transparent !important;
        border: none !important;
        padding: 0 !important;
    }

    .lekha-mobile-menu-toggle .hamburger-bar {
        display: block !important;
        width: 24px !important;
        height: 3px !important;
        background: #111 !important;
        border-radius: 2px !important;
    }

    /* 3. Overlay: Clean, Solid White, Centered, NO SCROLL */
    .lekha-mobile-menu-overlay {
        position: fixed !important;
        top: 0 !important;
        left: 0 !important;
        width: 100vw !important;
        height: 100vh !important;
        background: #ffffff !important; /* Solid white as requested */
        z-index: 2147483647 !important; /* Highest z-index */
        display: none !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        padding: 40px !important;
        overflow: hidden !important; /* No scroll as requested */
    }

    body.mobile-menu-open .lekha-mobile-menu-overlay {
        display: flex !important;
    }

    body.mobile-menu-open {
        overflow: hidden !important; /* Prevent page scroll when menu is open */
    }

    .lekha-mobile-menu-content {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        gap: 40px !important;
        width: 100% !important;
    }

    .lekha-mobile-nav-list {
        list-style: none !important;
        margin: 0 !important;
        padding: 0 !important;
        display: flex !important;
        flex-direction: column !important;
        gap: 30px !important;
        align-items: center !important;
    }

    .lekha-mobile-nav-list li a {
        font-family: 'Outfit', sans-serif !important;
        font-size: 26px !important;
        font-weight: 700 !important;
        color: #111 !important;
        text-decoration: none !important;
        letter-spacing: -0.5px !important;
    }

    .lekha-mobile-close-overlay {
        position: absolute !important;
        top: 25px !important;
        right: 25px !important;
        font-size: 32px !important;
        color: #111 !important;
        background: transparent !important;
        border: none !important;
        padding: 10px !important;
        cursor: pointer !important;
    }

    .lekha-mobile-menu-footer {
        margin-top: 20px !important;
        border-top: 1px solid rgba(0,0,0,0.05) !important;
        padding-top: 30px !important;
        text-align: center !important;
    }

    .lekha-menu-tagline {
        font-size: 14px !important;
        color: #999 !important;
        text-transform: uppercase !important;
        letter-spacing: 1px !important;
    }

    /* 4. Hide Desktop Elements */
    .lekha-nav-list, .desktop-only, .lekha-persistent-header .desktop-only { 
        display: none !important; 
        visibility: hidden !important;
        height: 0 !important;
        opacity: 0 !important;
        pointer-events: none !important;
    }
}

    /* 6. Decluttering: Massive Vertical Gaps */
    .lekha-title-container {
        margin-bottom: 60px !important;
        padding-top: 40px !important;
        margin-top: 20px !important;
    }

    .lekha-filter-bar {
        margin-bottom: 70px !important;
        gap: 35px !important;
    }

    .lekha-worksheets-grid {
        gap: 50px !important;
        padding-bottom: 60px !important;
    }

    .lekha-worksheet-card {
        margin-bottom: 20px !important; /* Extra breathing room between stacked cards */
    }

    /* 7. Content Clearance */
    main, #primary, .lekha-archive-wrapper, .entry-content, .lekha-search-bar-row {
        padding-top: 60px !important;
    }

    .lekha-search-bar-row {
        margin-top: 50px !important;
        margin-bottom: 50px !important;
    }
}

/* V140: Mobile Title Edge-Touching Fix */
.lekha-search-header h1,
.lekha-archive-header h1,
header.entry-header h1.page-title {
    padding-left: 20px !important;
    padding-right: 20px !important;
    word-wrap: break-word !important;
    text-wrap: balance !important;
}

/* Legacy description margin removed - Synchronized with V1400 baseline */

/* --- V129: GOLDEN BAR RESTORATION (Matching Blog Style exactly) --- */

/* Legacy Clearance Block Removed - Controlled by V1400 Protocol at Top */

/* PREMIUM UNIFIED TYPOGRAPHY: 42px Outfit (Blog Style Match) */
body:is(.page-id-47, .page-id-41, .archive, .search, .tax-subject, .tax-grade, .search-results, .single-worksheets, .single-lekha_worksheets) .page-title,
body:is(.page-id-47, .page-id-41, .archive, .search, .tax-subject, .tax-grade, .search-results, .single-worksheets, .single-lekha_worksheets) .wp-block-post-title {
    text-align: center !important; /* UNIVERSAL CENTER FOR SUB-CLASSES */
    display: block !important;
    width: 100% !important;
}

/* UNIVERSAL SECTION PUSH: Forced Absolute Offset for V133 */
body:not(.wp-admin).search-results .wp-block-query.alignfull,
.lekha-search-results-page .lekha-worksheets-section {
    margin-top: 0 !important;
    /* Match Archive Symmetry */
    position: relative !important;
    z-index: 1 !important;
}

.lekha-search-results-page .lekha-worksheets-grid {
    margin-top: 0 !important;
    /* Match Archive Symmetry */
}

/* The Signature Golden Bar (#FFD21E) - 1:1 DNA match with Blog */
.archive h1::after,
.search-results h1::after,
/* Duplicate Yellow Line Block Removed - Unified under V125 Protocol at top */

/* thank you buttons size fix */
.lekha-thank-you-downloads__buttons .lekha-button-primary {
    width: auto !important;
    min-width: 200px !important;
    margin: 10px !important;
}

/* thank you buttons size fix */
.lekha-thank-you-downloads__buttons .lekha-button-primary {
    width: auto !important;
    min-width: 200px !important;
    margin: 10px !important;
}

/* Global Bold/Italic Resurrection Logic remains active */

/* --- CONSOLIDATED AUTHORITATIVE MOBILE OVERHAUL --- */
@media screen and (max-width: 1024px) {
    /* 1. Header & Logo Refinements */
    .lekha-header-container {
        display: flex !important;
        flex-direction: row !important;
        justify-content: space-between !important;
        align-items: center !important;
        padding: 0 20px !important;
        height: 80px !important;
        background: #ffffff !important;
        z-index: 1000 !important;
        border-bottom: 1px solid rgba(0,0,0,0.05) !important;
    }

    .lekha-site-logo {
        font-size: 15px !important; /* Smaller for guaranteed visibility */
        font-weight: 800 !important;
        text-decoration: none !important;
        color: #111 !important;
        white-space: nowrap !important;
        overflow: visible !important; /* Ensure no clipping */
        text-overflow: clip !important; /* No dots */
        flex-shrink: 0 !important;
        max-width: none !important;
    }

    /* 2. Search Modal (Centered Window) */
    .lekha-nav-search-form {
        position: fixed !important;
        top: 0 !important;
        left: 0 !important;
        width: 100vw !important;
        height: 100vh !important;
        background: #ffffff !important;
        display: none !important;
        align-items: center !important;
        justify-content: center !important;
        z-index: 2147483647 !important;
        padding: 40px !important;
        box-sizing: border-box !important;
    }

    .lekha-nav-search-form.active {
        display: flex !important;
    }

    .lekha-nav-search-form form {
        width: 100% !important;
        max-width: 500px !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
    }

    /* Scoped to V1 overlay ONLY — does NOT apply to .lekha-nav-search-form-v2 */
    .lekha-nav-search-form .lekha-nav-search-input {
        width: 100% !important;
        font-size: 32px !important;
        padding: 20px 0 !important;
        border: none !important;
        border-bottom: 4px solid #111 !important;
        background: transparent !important;
        text-align: center !important;
        font-family: 'Outfit', sans-serif !important;
        font-weight: 800 !important;
        color: #111 !important;
        outline: none !important;
    }

    .lekha-nav-search-submit {
        margin-top: 30px !important;
        background: #111 !important;
        color: #fff !important;
        border: none !important;
        padding: 15px 40px !important;
        font-family: 'Outfit', sans-serif !important;
        font-weight: 800 !important;
        font-size: 18px !important;
        border-radius: 99px !important;
        cursor: pointer !important;
        text-transform: uppercase !important;
        letter-spacing: 1px !important;
        width: auto !important;
    }

    .lekha-search-close {
        position: absolute !important;
        top: 25px !important;
        right: 25px !important;
        font-size: 40px !important; /* Larger for mobile tap */
        color: #111 !important;
        background: transparent !important;
        border: none !important;
        cursor: pointer !important;
        width: 60px !important;
        height: 60px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
    }

    .lekha-mobile-close-overlay {
        position: absolute !important;
        top: 25px !important;
        right: 25px !important;
        font-size: 40px !important;
        color: #111 !important;
        background: transparent !important;
        border: none !important;
        cursor: pointer !important;
        z-index: 10 !important;
        width: 60px !important;
        height: 60px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
    }

    /* 3. Overlay: Large Responsive Menu Items */
    .lekha-mobile-menu-overlay {
        position: fixed !important;
        top: 0 !important;
        left: 0 !important;
        width: 100vw !important;
        height: 100vh !important;
        background: #ffffff !important;
        z-index: 2147483646 !important;
        display: none !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        padding: 20px !important; /* More space for content */
        overflow: hidden !important;
        box-sizing: border-box !important;
    }

    .lekha-mobile-menu-content {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        width: 100% !important;
        gap: 20px !important;
        position: relative !important;
    }

    .lekha-mobile-nav-list {
        list-style: none !important;
        margin: 0 !important;
        padding: 0 !important;
        display: flex !important;
        flex-direction: column !important;
        gap: 20px !important;
        align-items: center !important;
        width: 100% !important;
    }

    .lekha-mobile-nav-list li a {
        font-family: 'Outfit', sans-serif !important;
        font-size: clamp(32px, 10vw, 52px) !important; /* Larger, responsive scaling */
        font-weight: 800 !important;
        color: #111 !important;
        text-decoration: none !important;
        letter-spacing: 0.05em !important; /* Fixed: Letters were too close */
        line-height: 1.1 !important;
        display: block !important;
        text-align: center !important;
        padding: 8px 20px !important;
        transition: all 0.2s ease !important;
    }

    .lekha-mobile-nav-list li.current-menu-item > a,
    .lekha-mobile-nav-list li.current_page_item > a,
    .lekha-mobile-nav-list li.current-menu-ancestor > a {
        color: var(--lekha-primary-dark, #F4C430) !important;
    }

    .lekha-mobile-nav-list li a:active {
        background: rgba(0,0,0,0.05) !important;
        border-radius: 12px !important;
    }

    /* CENTER THE REGION SWITCHER TOGGLE - STRICT */
    .lekha-mobile-extras-top {
        display: block !important;
        width: 100% !important;
        margin: 0 0 30px 0 !important;
        padding: 0 !important;
        text-align: center !important;
        position: relative !important;
        clear: both !important;
    }

    #lekha-region-switcher-ph.mobile-only {
        display: inline-flex !important;
        justify-content: center !important;
        align-items: center !important;
        position: static !important;
        margin: 0 auto !important;
        transform: none !important;
        left: auto !important;
        width: fit-content !important;
        max-width: 100% !important;
        float: none !important;
    }

    body.mobile-menu-open .lekha-mobile-menu-overlay {
        display: flex !important;
    }

    body.mobile-menu-open {
        overflow: hidden !important;
    }

    /* Hide Desktop Elements */
    .lekha-nav-list, .desktop-only { display: none !important; }
}

/* --- UNIFIED BUTTON & UI HARMONIZATION --- */


/* 2. Remove gray background from Sort Toggle for cleaner look */
.lekha-sort-toggle {
    background: transparent !important;
    padding: 0 !important;
}

/* 3. Harmonize Action Buttons (Full Screen / Exit) */
#lekha-pdf-exit-btn {
    display: none !important;
    /* Hidden by default */
    position: fixed !important;
    bottom: 40px !important;
    /* Moved to bottom */
    top: auto !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    z-index: 9999999 !important;
    width: auto !important;
    min-width: 180px !important;
    height: 48px !important;
    /* Fixed height to prevent stretching */
    line-height: 1 !important;
}

body.lekha-cinematic-mode #lekha-pdf-exit-btn {
    display: inline-flex !important;
    background: rgba(255, 255, 255, 0.9) !important;
    color: #111111 !important;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1) !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 50px !important;
    padding: 12px 28px !important;
    font-family: 'Quicksand', 'Outfit', sans-serif !important;
    font-weight: 700 !important;
    font-size: 15px !important;
    border: 1px solid rgba(0,0,0,0.05) !important;
    cursor: pointer !important;
    transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275) !important;
}

body.lekha-cinematic-mode #lekha-pdf-exit-btn:hover {
    transform: translateX(-50%) translateY(-2px) !important;
    background: #111111 !important;
    color: #ffffff !important;
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.2) !important;
    border-color: #111111 !important;
}

body.lekha-cinematic-mode #lekha-pdf-exit-btn span {
    color: inherit !important;
}

body.lekha-cinematic-mode #lekha-pdf-exit-btn svg {
    margin-right: 10px !important;
    stroke: currentColor !important;
}


.lekha-sort-btn,
.lekha-pdf-switch-btn,
.lekha-unified-action-btn,
.lekha-filter-btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: transparent !important;
    color: #444444 !important;
    padding: 10px 22px !important;
    border-radius: 99px !important;
    font-weight: 700 !important;
    font-size: 14px !important;
    border: 0 !important;
    outline: none !important;
    box-shadow: none !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
    text-decoration: none !important;
}

.lekha-sort-btn.active,
.lekha-pdf-switch-btn.active,
.lekha-filter-btn.active {
    background: var(--lekha-black) !important;
    color: #ffffff !important;
    box-shadow: none !important;
}

.lekha-sort-btn:hover,
.lekha-pdf-switch-btn:hover,
.lekha-filter-btn:hover {
    background: rgba(0, 0, 0, 0.05) !important;
}

/* Specific style for the Full Screen action to match default transparent pills */
.lekha-unified-action-btn {
    background: rgba(0, 0, 0, 0.04) !important;
    width: auto !important;
    height: auto !important;
}

.lekha-unified-action-btn:hover,
#lekha-pdf-fullscreen-toggle:hover {
    background: #111111 !important;
    color: #ffffff !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 5px 15px rgba(0,0,0,0.1) !important;
}

.lekha-unified-action-btn:hover span {
    color: #ffffff !important;
}

#lekha-pdf-fullscreen-toggle:hover svg {
    stroke: #ffffff !important;
}

#lekha-pdf-fullscreen-toggle:hover span {
    color: #ffffff !important;
}

/* 4. PDF Hint Text (Select Paper Size / Scroll) */
.lekha-pdf-hint {
    font-size: 13px !important;
    font-weight: 700 !important;
    color: #999 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
    text-align: center !important;
    margin-bottom: 15px !important;
}

/* --- FILTER BAR TWO-ROW LAYOUT --- */
.lekha-filter-bar {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 20px !important;
    padding-bottom: 40px !important;
    margin: 0 !important;
    width: 100% !important;
    border: none !important;
}

.lekha-filter-row,
.lekha-sort-row {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 12px !important;
    flex-wrap: wrap !important;
    width: 100% !important;
}

.lekha-sort-row {
    padding-top: 15px !important;
    border-top: 1px solid rgba(0, 0, 0, 0.04) !important;
}



/* Global Interaction: Squishy Hover */
button,
a,
.lekha-filter-btn,
.lekha-pdf-switch-btn,
.lekha-sort-btn,
.lekha-unified-action-btn,
.download-link {
    transition: all 0.2s ease-in-out !important;
}

button:hover,
a:hover,
.lekha-filter-btn:hover,
.lekha-pdf-switch-btn:hover,
.lekha-sort-btn:hover,
.lekha-unified-action-btn:hover,
.download-link:hover {
    transform: scale(1.02) !important;
}

/* Playful Minimalism: Tactile Buttons */
/* Legacy Button Overrides Purged */

/* Playful Minimalism: Paper Size Toggles */
.lekha-pdf-switch-btn {
    background: transparent !important;
    border: 1px solid #E2E8F0 !important;
    color: var(--color-text-dark) !important;
    border-radius: 99px !important;
    padding: 8px 20px !important;
    box-shadow: none !important;
    transition: all 0.2s ease-in-out !important;
}

.lekha-pdf-switch-btn[data-type=" us\].active {
    background-color: var(--color-primary-blue) !important;
    color: #ffffff !important;
    border-color: var(--color-primary-blue) !important;
}

.lekha-pdf-switch-btn[data-type=\intl\].active {
    background-color: var(--color-primary-green) !important;
    color: #ffffff !important;
    border-color: var(--color-primary-green) !important;
}

/* Playful Minimalism: Sticker Filter Tags */
.lekha-filter-btn {
    background: transparent !important;
    border: 1px solid #E2E8F0 !important;
    color: var(--color-text-dark) !important;
    border-radius: 99px !important;
    padding: 10px 22px !important;
    box-shadow: none !important;
    transition: all 0.2s ease-in-out !important;
}

.lekha-filter-btn.active {
    background-color: var(--color-active-yellow) !important;
    color: var(--color-text-dark) !important;
    border-color: var(--color-active-yellow) !important;
    box-shadow: none !important;
}

.lekha-filter-bar__label {
    font-family: var(--lekha-font-main) !important;
    color: var(--color-text-dark) !important;
    font-weight: 700 !important;
}

/* --- Sophisticated Early Ed: Global Interactions --- */
button,
a,
.lekha-filter-btn,
.lekha-pdf-switch-btn,
.lekha-sort-btn,
.lekha-unified-action-btn,
.download-link {
    transition: all 0.2s ease !important;
}

button:hover,
a:hover,
.lekha-filter-btn:hover,
.lekha-pdf-switch-btn:hover,
.lekha-sort-btn:hover,
.lekha-unified-action-btn:hover,
.download-link:hover {
    transform: translateY(-1px) !important;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.05) !important;
}

/* --- Sophisticated Early Ed: Tactile Buttons --- */
/* legacy tactile blocks purged */

/* --- Sophisticated Early Ed: Paper Size Toggles --- */
.lekha-pdf-switch-btn {
    background: transparent !important;
    border: 1px solid #E2E8F0 !important;
    color: var(--color-text-dark) !important;
    border-radius: 99px !important;
}

.lekha-pdf-switch-btn.active {
    background-color: var(--color-text-dark) !important;
    color: #ffffff !important;
    border-color: var(--color-text-dark) !important;
}

/* --- Sophisticated Early Ed: Filter Tags --- */
.lekha-filter-btn {
    background: transparent !important;
    border: 1px solid #E2E8F0 !important;
    color: var(--color-text-dark) !important;
    border-radius: 99px !important;
    padding: 10px 22px !important;
}

.lekha-filter-btn.active {
    background-color: var(--color-text-dark) !important;
    color: #ffffff !important;
    border-color: var(--color-text-dark) !important;
    box-shadow: none !important;
}

.lekha-filter-bar__label {
    font-family: var(--lekha-font-main) !important;
    color: var(--color-text-dark) !important;
    font-weight: 700 !important;
}

/* --- Sophisticated Early Ed: Background & Cards --- */
body:not(.home) {
    background-color: #FAFAF8 !important;
}

/* Ensure worksheet previews and library cards pop off the off-white background */
.lekha-worksheet-card,
.lekha-pdf-viewer-root,
.lekha-pdf-view,
.lekha-worksheet-item {
    background-color: #FFFFFF !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04) !important;
    border: none !important;
}



/* --- Sophisticated Early Ed: Apple-Style Navigation --- */
header.lekha-persistent-header {
    background: #FFFFFF !important;
    backdrop-filter: none !important;
    box-shadow: none !important;
    border-bottom: 1px solid #E2E8F0 !important;
    height: 80px !important;
    display: flex !important;
    align-items: center !important;
}

.wp-block-navigation-item__content {
    color: #2C3E50 !important;
    font-family: var(--lekha-font-main) !important;
    font-weight: 600 !important;
    font-size: 16px !important;
    background: transparent !important;
    border-radius: 0 !important;
    padding: 10px 15px !important;
    position: relative !important;
    transition: color 0.2s ease !important;
}

.wp-block-navigation-item__content:hover {
    background: transparent !important;
    color: #4AB8D9 !important;
}

/* Micro-Interaction: Saffron Yellow Dot on Hover */
.wp-block-navigation-item__content:hover::after {
    content: "" !important;
    position: absolute !important;
    bottom: 0px !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    width: 6px !important;
    height: 6px !important;
    background-color: #F4C430 !important;
    border-radius: 50% !important;
}

/* --- Sophisticated Early Ed: Floating Exit Full Screen Button --- */
/* Duplicate Exit Button Block Purged */

/* ============================================================
   Sophisticated Early Ed: Email Capture Popup Override
   Safe: All overrides live here in our custom plugin CSS.
   Never edit popup-maker plugin files directly.
   ============================================================ */

/* Modal Container */
html body #pum-25 .pum-container.popmake {
    background: #ffffff !important;
    border-radius: 20px !important;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.12) !important;
    border: 1px solid #E2E8F0 !important;
    font-family: 'Quicksand', 'Outfit', sans-serif !important;
    padding: 40px !important;
}

/* Close Button */
html body #pum-25 .pum-container .pum-close,
html body #pum-25 .pum-container .popmake-close {
    font-family: 'Quicksand', 'Outfit', sans-serif !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    color: #2C3E50 !important;
    background: #F4F7F6 !important;
    border: 1px solid #E2E8F0 !important;
    border-radius: 50% !important;
    width: 32px !important;
    height: 32px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
    top: 16px !important;
    right: 16px !important;
    padding: 0 !important;
    line-height: 1 !important;
}

html body #pum-25 .pum-container .pum-close:hover,
html body #pum-25 .pum-container .popmake-close:hover {
    background: #2C3E50 !important;
    color: #ffffff !important;
    border-color: #2C3E50 !important;
}

/* Intro paragraph */
html body #pum-25 .pum-content .lekha-popup-intro {
    font-family: 'Quicksand', 'Outfit', sans-serif !important;
    font-size: 15px !important;
    color: #2C3E50 !important;
    line-height: 1.6 !important;
    font-weight: 500 !important;
    text-align: center !important;
    margin-bottom: 24px !important;
}

/* Email label */
html body #pum-25 .pum-content .mc4wp-form label,
html body #pum-25 .pum-content label {
    font-family: 'Quicksand', 'Outfit', sans-serif !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    color: #2C3E50 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
    display: block !important;
    margin-bottom: 8px !important;
    text-align: center !important;
}

/* Email input field */
html body #pum-25 .pum-content .mc4wp-form input[type="email"],
html body #pum-25 .pum-content input[type="email"],
html body #pum-25 .pum-content input[type="text"] {
    font-family: 'Quicksand', 'Outfit', sans-serif !important;
    font-size: 15px !important;
    color: #2C3E50 !important;
    background: #F4F7F6 !important;
    border: 1.5px solid #E2E8F0 !important;
    border-radius: 99px !important;
    padding: 12px 20px !important;
    width: 100% !important;
    box-sizing: border-box !important;
    text-align: center !important;
    transition: border-color 0.2s ease !important;
    box-shadow: none !important;
    outline: none !important;
}

html body #pum-25 .pum-content .mc4wp-form input[type="email"]:focus,
html body #pum-25 .pum-content input[type="email"]:focus {
    border-color: #4AB8D9 !important;
    background: #ffffff !important;
}

/* Submit / Download button */
html body #pum-25 .pum-content .mc4wp-form input[type="submit"],
html body #pum-25 .pum-content .mc4wp-form button[type="submit"],
html body #pum-25 .pum-content input[type="submit"],
html body #pum-25 .pum-content button[type="submit"] {
    font-family: 'Quicksand', 'Outfit', sans-serif !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    background-color: #4AB8D9 !important;
    color: #ffffff !important;
    border: none !important;
    border-bottom: 3px solid #3896B3 !important;
    border-radius: 99px !important;
    padding: 14px 32px !important;
    cursor: pointer !important;
    display: block !important;
    width: 100% !important;
    margin-top: 16px !important;
    box-shadow: none !important;
    transition: all 0.2s ease !important;
}

html body #pum-25 .pum-content .mc4wp-form input[type="submit"]:hover,
html body #pum-25 .pum-content .mc4wp-form button[type="submit"]:hover,
html body #pum-25 .pum-content input[type="submit"]:hover,
html body #pum-25 .pum-content button[type="submit"]:hover {
    transform: translateY(-1px) !important;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.08) !important;
}

/* ============================================================
   Sophisticated Early Ed: Custom Post-Download Popup (V2: FAT & BEAUTIFUL)
   ============================================================ */

.lekha-popup-overlay {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    background: rgba(44, 62, 80, 0.5) !important;
    backdrop-filter: blur(12px) !important;
    -webkit-backdrop-filter: blur(12px) !important;
    z-index: 999999 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 20px !important;
    box-sizing: border-box !important;
}

.lekha-popup-container {
    background: #ffffff !important;
    max-width: 520px !important;
    width: 100% !important;
    border-radius: 32px !important;
    box-shadow: 0 40px 100px rgba(0, 0, 0, 0.2) !important;
    border: 1px solid rgba(255, 255, 255, 0.5) !important;
    position: relative !important;
    padding: 60px 45px !important;
    box-sizing: border-box !important;
    animation: lekhaPopupFatIn 0.5s cubic-bezier(0.175, 0.885, 0.32, 1.275) !important;
}

@keyframes lekhaPopupFatIn {
    from {
        opacity: 0;
        transform: translateY(40px) scale(0.95);
    }

    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

.lekha-popup-icon {
    font-size: 50px !important;
    margin-bottom: 20px !important;
    display: block !important;
    line-height: 1 !important;
}

.lekha-popup-close {
    position: absolute !important;
    top: 25px !important;
    right: 25px !important;
    background: #f0f4f8 !important;
    border: none !important;
    width: 40px !important;
    height: 40px !important;
    border-radius: 50% !important;
    color: #2c3e50 !important;
    font-size: 24px !important;
    line-height: 1 !important;
    cursor: pointer !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.05) !important;
}

.lekha-popup-close:hover {
    background: #2c3e50 !important;
    color: #ffffff !important;
    transform: rotate(180deg) !important;
}

.lekha-popup-content {
    text-align: center !important;
}

.lekha-popup-title {
    font-family: 'Quicksand', 'Outfit', sans-serif !important;
    font-size: 32px !important;
    font-weight: 800 !important;
    color: #2c3e50 !important;
    margin: 0 0 15px 0 !important;
    line-height: 1.1 !important;
    letter-spacing: -0.02em !important;
}

.lekha-popup-text {
    font-family: 'Quicksand', 'Outfit', sans-serif !important;
    font-size: 18px !important;
    color: #5d6d7e !important;
    line-height: 1.5 !important;
    margin: 0 0 35px 0 !important;
    font-weight: 600 !important;
}

.lekha-popup-footer {
    font-family: 'Quicksand', sans-serif !important;
    font-size: 14px !important;
    color: #bdc3c7 !important;
    margin-top: 30px !important;
    font-weight: 600 !important;
}

/* Mailchimp Form Integration (Fat Styles) */
.lekha-popup-form .mc4wp-form {
    max-width: 400px !important;
    margin: 0 auto !important;
}

.lekha-popup-form input[type="email"] {
    width: 100% !important;
    height: 64px !important;
    padding: 0 25px !important;
    border: 2px solid #e2e8f0 !important;
    border-radius: 20px !important;
    font-family: 'Quicksand', sans-serif !important;
    font-size: 17px !important;
    font-weight: 600 !important;
    text-align: center !important;
    margin-bottom: 20px !important;
    background: #f8fafc !important;
    transition: all 0.2s ease !important;
    box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.02) !important;
}

.lekha-popup-form input[type="email"]:focus {
    border-color: #4ab8d9 !important;
    background: #ffffff !important;
    outline: none !important;
    box-shadow: 0 0 0 5px rgba(74, 184, 217, 0.15) !important;
}

.lekha-popup-form input[type="submit"] {
    width: 100% !important;
    height: 64px !important;
    background: #4ab8d9 !important;
    color: #ffffff !important;
    border: none !important;
    border-bottom: 5px solid #3896b3 !important;
    padding: 0 30px !important;
    border-radius: 20px !important;
    font-family: 'Quicksand', sans-serif !important;
    font-weight: 800 !important;
    font-size: 18px !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
    text-transform: none !important;
    letter-spacing: 0.02em !important;
}

.lekha-popup-form input[type="submit"]:hover {
    transform: translateY(-3px) !important;
    box-shadow: 0 10px 25px rgba(74, 184, 217, 0.4) !important;
}

.lekha-popup-form input[type="submit"]:active {
    transform: translateY(2px) !important;
    border-bottom-width: 0 !important;
}

/* Response message styling */
.mc4wp-response {
    margin-top: 20px !important;
    font-family: 'Quicksand', sans-serif !important;
    font-weight: 700 !important;
    font-size: 15px !important;
}

.mc4wp-success {
    color: #27ae60 !important;
}

.mc4wp-error {
    color: #e74c3c !important;
}



/* Duplicate V800 Block Removed - Unified under V1400 Protocol at top */

/* Style Integrity */
.lekha-worksheet-description strong, .lekha-worksheet-description b { font-weight: bold !important; }
.lekha-worksheet-description em, .lekha-worksheet-description i { font-style: italic !important; }

/* MODERN FAQ OVERRIDES - AGGRESSIVE SPECIFICITY */
body .lekha-faq-section .wp-block-details, 
body .lekha-faq-page-container .wp-block-details { 
    border: 1px solid rgba(0,0,0,0.06) !important; 
    border-radius: 16px !important; 
    margin-bottom: 16px !important; 
    background: #ffffff !important; 
    transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1) !important; 
    box-shadow: 0 4px 6px rgba(0,0,0,0.02) !important; 
    overflow: hidden !important; 
}
body .lekha-faq-section .wp-block-details:hover,
body .lekha-faq-page-container .wp-block-details:hover { 
    transform: translateY(-2px) !important; 
    box-shadow: 0 12px 24px rgba(0,0,0,0.06) !important; 
    border-color: rgba(0,0,0,0.1) !important; 
}
body .lekha-faq-section .wp-block-details summary,
body .lekha-faq-page-container .wp-block-details summary { 
    padding: 24px 30px !important; 
    font-weight: 700 !important; 
    font-size: 1.15rem !important; 
    cursor: pointer !important; 
    list-style: none !important; 
    position: relative !important; 
    user-select: none !important; 
    color: #111 !important; 
    display: flex !important; 
    align-items: center !important; 
    justify-content: space-between !important; 
    background: #fff !important; 
}
body .lekha-faq-section .wp-block-details summary::-webkit-details-marker,
body .lekha-faq-page-container .wp-block-details summary::-webkit-details-marker { 
    display: none !important; 
}
body .lekha-faq-section .wp-block-details summary::after,
body .lekha-faq-page-container .wp-block-details summary::after { 
    content: "" !important; 
    width: 20px !important; 
    height: 20px !important; 
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='currentColor' stroke-width='2.5'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M19 9l-7 7-7-7'/%3E%3C/svg%3E") !important; 
    background-repeat: no-repeat !important; 
    background-position: center !important; 
    transition: transform 0.4s cubic-bezier(0.165, 0.84, 0.44, 1) !important; 
    opacity: 0.5 !important; 
}
body .lekha-faq-section .wp-block-details[open] summary::after,
body .lekha-faq-page-container .wp-block-details[open] summary::after { 
    transform: rotate(180deg) !important; 
    opacity: 1 !important; 
}
body .lekha-faq-section .wp-block-details[open],
body .lekha-faq-page-container .wp-block-details[open] { 
    background: #ffffff !important; 
    border-color: #111 !important; 
}
body .lekha-faq-section .wp-block-details .wp-block-details__content,
body .lekha-faq-page-container .wp-block-details .wp-block-details__content { 
    padding: 0 30px 30px 30px !important; 
    line-height: 1.8 !important; 
    color: #444 !important; 
    font-size: 1.05rem !important; 
    animation: lekhaFadeIn 0.5s ease !important; 
}

@keyframes lekhaFadeIn { 
    from { opacity: 0; transform: translateY(-10px); } 
    to { opacity: 1; transform: translateY(0); } 
}
.lekha-section-title { 
    font-size: 3rem !important; 
    font-weight: 800 !important; 
    letter-spacing: -0.03em !important; 
    margin-bottom: 1.5rem !important; 
    color: #111 !important; 
}
.lekha-faq-section p a { 
    display: inline-block !important; 
    margin-top: 10px !important; 
    color: #111 !important; 
    text-decoration: none !important; 
    font-weight: 700 !important; 
    border-bottom: 2px solid #D4AF37 !important; 
    transition: all 0.3s ease !important; 
}
.lekha-faq-section p a:hover { 
    color: #D4AF37 !important; 
    border-bottom-color: #111 !important; 
    padding-left: 5px !important; 
}

/* --- CINEMATIC PDF VIEWER & INTERACTIVE UI --- */
.lekha-pdf-viewer-root.is-fullscreen {
    width: 95vw !important;
    max-width: 1200px !important;
    height: 85vh !important;
    max-height: none !important;
    margin: 0 auto !important;
    background: #fff !important;
    border-radius: 20px !important;
    box-shadow: 0 30px 100px rgba(0,0,0,0.5) !important;
    position: relative !important;
    z-index: 1000001 !important;
}

.lekha-spinner {
    width: 40px;
    height: 40px;
    border: 4px solid rgba(0,0,0,0.1);
    border-top: 4px solid var(--lekha-primary);
    border-radius: 50%;
    animation: lekha-spin 1s linear infinite;
    margin: 0 auto 15px auto;
}

@keyframes lekha-spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

#lekha-cinematic-dimmer {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    background: rgba(0,0,0,0.92) !important;
    z-index: 999999 !important;
    display: none !important;
    justify-content: center !important;
    align-items: flex-start !important;
    padding: 40px 20px !important;
    overflow-y: auto !important;
    backdrop-filter: blur(10px) !important;
}

#lekha-cinematic-dimmer.active {
    display: flex !important;
}

.lekha-related-worksheets-section {
    margin-top: 150px !important;
    padding-top: 100px !important;
    clear: both !important;
    position: relative !important;
    border-top: none !important;
    z-index: 5 !important;
}

.lekha-related-worksheets-title {
    margin-bottom: 40px !important;
    font-size: 26px !important;
    font-weight: 800 !important;
    color: #111 !important;
    text-align: center !important;
}

/* FINAL FIX FOR BACK TO TOP STRETCHING */
#lekha-back-to-top {
    width: 50px !important;
    height: 50px !important;
    border-radius: 50% !important;
    padding: 0 !important;
    box-sizing: border-box !important;
    flex-shrink: 0 !important;
    line-height: 1 !important;
    font-family: Arial, sans-serif !important;
    font-size: 24px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

/* Aggressive theme header suppression to prevent flickering and 'going up' issues */
header.site-header, 
.site-header, 
.wp-block-template-part-header {
    display: none !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
}

/* Ensure our persistent header is the only one visible and stays rock-solid */
.lekha-persistent-header {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}

/* --- MOBILE UI FIXES V2026: NUCLEAR SEPARATION --- */
@media screen and (max-width: 1024px) {
    
    /* 1. Mobile Header Bar (Precise 60px height) */
    .lekha-mobile-header-bar {
        display: flex !important;
        height: 60px !important;
        background: #ffffff !important;
        align-items: center !important;
        justify-content: space-between !important;
        padding: 0 20px !important;
        border-bottom: 2px solid rgba(0,0,0,0.03) !important;
        width: 100% !important;
        position: relative !important;
    }

    .lekha-mobile-logo a {
        font-family: 'Outfit', sans-serif !important;
        font-size: 20px !important;
        font-weight: 800 !important;
        color: #111 !important;
        text-decoration: none !important;
    }

    .lekha-mobile-actions {
        display: flex !important;
        align-items: center !important;
        gap: 15px !important;
    }

    .lekha-mobile-search-trigger {
        padding: 8px !important;
        color: #111 !important;
        background: #f8f8f8 !important;
        border-radius: 8px !important;
        display: flex !important;
    }

    /* 2. Nuclear Search Overlay (Independent of Header Flow) */
    .lekha-nav-search-form {
        position: fixed !important;
        top: 0 !important;
        left: 0 !important;
        width: 100vw !important;
        height: 100vh !important;
        background: rgba(255, 255, 255, 0.98) !important;
        backdrop-filter: blur(15px) !important;
        -webkit-backdrop-filter: blur(15px) !important;
        z-index: 2000000 !important;
        display: none !important;
        align-items: center !important;
        justify-content: center !important;
        opacity: 0 !important;
        visibility: hidden !important;
        transition: all 0.3s ease !important;
    }

    .lekha-nav-search-form.active {
        display: flex !important;
        opacity: 1 !important;
        visibility: visible !important;
    }

    .lekha-search-overlay-inner {
        width: 90% !important;
        max-width: 500px !important;
        position: relative !important;
        text-align: center !important;
    }

    /* Old V1 search form fallback — scoped so it doesn't affect V2 */
    .lekha-nav-search-form .lekha-nav-search-input {
        width: 100% !important;
        padding: 18px 25px !important;
        border-radius: 15px !important;
        border: 2px solid #eee !important;
        font-family: var(--lekha-font-main) !important;
        font-size: 18px !important;
        font-weight: 600 !important;
        outline: none !important;
        margin-bottom: 20px !important;
    }

    /* === V2 SEARCH OVERLAY: AUTHORITATIVE PILL STYLE ===
       This must be last to win over all other rules.
       Matches the correct pill style on worksheets/archive pages. */
    .lekha-nav-search-form-v2 .lekha-nav-search-input,
    .lekha-nav-search-form-v2 input[type="search"],
    .lekha-nav-search-form-v2 input {
        width: 100% !important;
        height: 60px !important;
        padding: 0 30px 0 70px !important;
        font-size: 20px !important;
        border: none !important;
        border-bottom: none !important;
        border-radius: 50px !important;
        background: #f5f5f5 !important;
        background-color: #f5f5f5 !important;
        -webkit-appearance: none !important;
        appearance: none !important;
        font-family: 'Quicksand', sans-serif !important;
        font-weight: 700 !important;
        color: #111 !important;
        outline: none !important;
        box-shadow: none !important;
        -webkit-box-shadow: none !important;
        box-sizing: border-box !important;
        text-align: left !important;
        line-height: normal !important;
        margin: 0 !important;
    }
    .lekha-nav-search-form-v2 .lekha-nav-search-input::placeholder,
    .lekha-nav-search-form-v2 input[type="search"]::placeholder,
    .lekha-nav-search-form-v2 input::placeholder {
        color: #888 !important;
        opacity: 1 !important;
        text-align: left !important;
    }

    .lekha-search-submit {
        background: var(--lekha-black) !important;
        color: #fff !important;
        border: none !important;
        padding: 12px 30px !important;
        border-radius: 10px !important;
        font-weight: 700 !important;
        cursor: pointer !important;
    }

    .lekha-search-close-btn {
        position: absolute !important;
        top: -60px !important;
        right: 0 !important;
        font-size: 30px !important;
        background: none !important;
        border: none !important;
        cursor: pointer !important;
        color: #333 !important;
    }

    /* 3. Mobile Menu Overlay (Vertical Flow) */
    .lekha-mobile-menu-overlay {
        position: fixed !important;
        top: 0 !important;
        left: 0 !important;
        width: 100vw !important;
        height: 100vh !important;
        background: #ffffff !important;
        z-index: 2000001 !important;
        display: none !important;
        flex-direction: column !important;
        padding: 80px 30px 40px 30px !important;
        overflow-y: auto !important;
    }

    body.mobile-menu-open .lekha-mobile-menu-overlay {
        display: flex !important;
    }

    .lekha-mobile-close-overlay {
        position: absolute !important;
        top: 20px !important;
        right: 20px !important;
        width: 44px !important;
        height: 44px !important;
        background: #f5f5f5 !important;
        border-radius: 50% !important;
        border: none !important;
        font-size: 24px !important;
        color: #111 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        cursor: pointer !important;
    }

    .lekha-mobile-menu-content {
        width: 100% !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
    }

    .lekha-mobile-menu-top {
        margin-bottom: 40px !important;
        width: 100% !important;
        display: flex !important;
        justify-content: center !important;
    }

    .lekha-mobile-nav {
        width: 100% !important;
        margin-bottom: 40px !important;
    }

    .lekha-mobile-nav-list {
        list-style: none !important;
        padding: 0 !important;
        margin: 0 !important;
        display: flex !important;
        flex-direction: column !important;
        gap: 20px !important;
        align-items: center !important;
    }

    .lekha-mobile-nav-list li a {
        font-size: 26px !important;
        font-weight: 800 !important;
        color: #111 !important;
        text-decoration: none !important;
    }

    .lekha-mobile-extra-links {
        list-style: none !important;
        padding: 30px 0 !important;
        margin: 30px 0 !important;
        border-top: 1px solid #f0f0f0 !important;
        display: flex !important;
        flex-direction: column !important;
        gap: 15px !important;
        align-items: center !important;
        width: 100% !important;
    }

    .lekha-mobile-extra-links li a {
        font-size: 18px !important;
        font-weight: 700 !important;
        color: #666 !important;
        text-decoration: none !important;
    }

    .lekha-mobile-menu-footer {
        margin-top: 20px !important;
    }

    /* 4. Fix Burger bars if missing */
    .hamburger-bar {
        display: block !important;
        width: 25px !important;
        height: 2px !important;
        background: #111 !important;
        margin: 5px 0 !important;
        transition: 0.3s !important;
    }
}

/* ==========================================================================
   MOBILE V2: PREMIUM REDESIGN (LOCK DOWN DESKTOP)
   ========================================================================== */
@media screen and (max-width: 1024px) {
    /* 1. Reset & Global Mobile Padding */
    body { padding-top: 60px !important; }
    
    .desktop-only { display: none !important; }
    .mobile-only { display: block !important; }

    /* FIX: Strip the white bar from the header wrapper on mobile.
       The real mobile navigation is .lekha-mobile-header-bar-v2 (fixed child),
       so the parent <header> wrapper must be invisible/zero-height. */
    header.lekha-persistent-header,
    .lekha-persistent-header {
        background: transparent !important;
        background-color: transparent !important;
        height: auto !important;
        min-height: 0 !important;
        padding: 0 !important;
        border-bottom: none !important;
        box-shadow: none !important;
        position: static !important;
    }

    /* 2. Premium Header Bar (Single Line) */
    .lekha-mobile-header-bar-v2 {
        position: fixed !important;
        top: 0 !important;
        left: 0 !important;
        width: 100% !important;
        height: 60px !important;
        background: #ffffff !important;
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: space-between !important;
        padding: 0 15px !important;
        box-shadow: 0 4px 15px rgba(0,0,0,0.04) !important;
        z-index: 2000000 !important;
        box-sizing: border-box !important;
    }

    .lekha-mobile-logo-v2 a {
        font-family: 'Outfit', sans-serif !important;
        font-size: 19px !important;
        font-weight: 800 !important;
        color: #111 !important;
        text-decoration: none !important;
        letter-spacing: -0.02em !important;
        white-space: nowrap !important;
    }

    .lekha-mobile-actions-v2 {
        display: flex !important;
        align-items: center !important;
        gap: 8px !important;
    }

    .lekha-mobile-btn {
        background: transparent !important;
        border: none !important;
        padding: 10px !important;
        color: #111 !important;
        cursor: pointer !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
    }

    /* 3. Premium Menu Overlay */
    .lekha-mobile-menu-v2 {
        position: fixed !important;
        top: 0 !important;
        left: 0 !important;
        width: 100vw !important;
        height: 100vh !important;
        background: #ffffff !important;
        z-index: 2000001 !important;
        display: none !important;
        flex-direction: column !important;
        opacity: 0 !important;
        visibility: hidden !important;
        transition: opacity 0.3s ease !important;
    }

    body.mobile-menu-open .lekha-mobile-menu-v2 {
        display: flex !important;
        opacity: 1 !important;
        visibility: visible !important;
    }

    .lekha-mobile-menu-header-v2 {
        height: 60px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: flex-end !important;
        padding: 0 15px !important;
    }

    .lekha-mobile-menu-content-v2 {
        flex: 1 !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        padding: 20px 40px !important;
        overflow-y: auto !important;
    }

    /* Region Switcher Stylings */
    .lekha-mobile-switcher-v2 {
        margin-bottom: 40px !important;
        width: 100% !important;
        max-width: 280px !important;
    }

    /* Navigation List Stylings */
    .lekha-mobile-nav-v2 {
        width: 100% !important;
        list-style: none !important;
        padding: 0 !important;
        margin: 0 !important;
        text-align: center !important;
    }

    .lekha-mobile-nav-v2 li {
        margin-bottom: 25px !important;
    }

    .lekha-mobile-nav-v2 a {
        font-family: 'Outfit', sans-serif !important;
        font-size: 26px !important;
        font-weight: 800 !important;
        color: #111 !important;
        text-decoration: none !important;
        transition: color 0.2s !important;
    }

    .lekha-mobile-nav-v2 a:active {
        color: #d4af37 !important;
    }

    .lekha-mobile-footer-v2 {
        margin-top: auto !important;
        padding: 40px 0 !important;
        text-align: center !important;
    }

    .lekha-mobile-tagline-v2 {
        font-size: 14px !important;
        text-transform: uppercase !important;
        letter-spacing: 0.1em !important;
        color: #999 !important;
        font-weight: 600 !important;
    }

    /* Hamburger Bars */
    .lekha-bar {
        display: block !important;
        width: 24px !important;
        height: 2px !important;
        background: #111 !important;
        margin: 6px 0 !important;
        border-radius: 2px !important;
    }
}

/* --- DEFINITIVE MOBILE FIXES (SINGLE ROW + MENU VISIBILITY) --- */
@media screen and (max-width: 1024px) {
    /* Force single row for header bar */
    .lekha-mobile-header-bar {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        justify-content: space-between !important;
        align-items: center !important;
        height: 60px !important;
        padding: 0 15px !important;
        width: 100% !important;
        box-sizing: border-box !important;
    }

    .lekha-mobile-logo {
        flex: 1 !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
    }

    .lekha-mobile-actions {
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        gap: 12px !important;
        flex-shrink: 0 !important;
    }

    /* Force visibility of menu items in overlay */
    .lekha-mobile-menu-overlay .lekha-mobile-nav,
    .lekha-mobile-menu-overlay .lekha-mobile-nav-list,
    .lekha-mobile-menu-overlay .lekha-mobile-nav-list li,
    .lekha-mobile-menu-overlay .lekha-mobile-nav-list a,
    .lekha-mobile-extra-nav,
    .lekha-mobile-extra-nav li,
    .lekha-mobile-extra-nav a {
        display: block !important;
        visibility: visible !important;
        opacity: 1 !important;
        text-decoration: none !important;
    }

    .lekha-mobile-nav-list, .lekha-mobile-extra-nav {
        list-style: none !important;
        padding: 0 !important;
        margin: 0 !important;
        text-align: center !important;
    }

    .lekha-mobile-nav-list li a, .lekha-mobile-extra-nav li a {
        padding: 15px 0 !important;
        font-size: 20px !important;
        font-weight: 700 !important;
        color: #111 !important;
        border-bottom: 1px solid #f0f0f0 !important;
    }

    /* Position close button on top right */
    .lekha-mobile-overlay-header {
        display: flex !important;
        justify-content: flex-end !important;
        padding: 20px !important;
        width: 100% !important;
        box-sizing: border-box !important;
        height: 60px !important;
    }

    .lekha-mobile-close-overlay {
        font-size: 32px !important;
        background: none !important;
        border: none !important;
        color: #111 !important;
        cursor: pointer !important;
    }

    /* Style the US/Intl toggle in menu */
    .lekha-mobile-menu-top-section {
        margin-bottom: 30px !important;
        display: flex !important;
        justify-content: center !important;
    }
}

