/* ==========================================
   MEMBERSHIP QR CODE SECTION
   WordPress Gutenberg Blocks Component
   
   Usage:
   - Cover Block with class: membership-qrcode
   - Columns Block inside with class: qrcode-container
   - First Column: Heading and text
   - Second Column: QR code images with labels
   ========================================== */

/* ==========================================
   SECTION CONTAINER (Cover Block)
   ========================================== */

.membership-qrcode {
    background-color: #FDE5ED !important;
    padding: 60px 0 !important;
    width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    min-height: 0 !important;
}

/* Override Gutenberg inline styles on cover block */
.membership-qrcode.wp-block-cover {
    padding: 60px 0 !important;
    max-width: 100% !important;
}

.membership-qrcode .wp-block-cover__inner-container {
    max-width: 1200px;
    margin: 0 auto;
    width: 100%;
    padding: 0 20px;
}

/* ==========================================
   COLUMNS CONTAINER
   ========================================== */

.qrcode-container,
.membership-qrcode .wp-block-columns {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 60px !important;
    margin: 0 !important;
}

/* ==========================================
   COLUMN BLOCKS
   ========================================== */

.membership-qrcode .wp-block-column {
    padding: 0 !important;
    background: transparent !important;
}

/* Override Gutenberg is-layout-flow spacing */
.membership-qrcode .wp-block-column.is-layout-flow,
.membership-qrcode .wp-block-column-is-layout-flow {
    padding: 0 !important;
    margin: 0 !important;
}

.membership-qrcode .wp-block-columns.is-layout-flow,
.membership-qrcode .wp-block-columns-is-layout-flow {
    margin: 0 !important;
    padding: 0 !important;
}

/* First column - Heading and text */
.membership-qrcode .wp-block-column:first-child {
    flex: 1 !important;
}

/* Second column - QR codes container */
.membership-qrcode .wp-block-column:last-child {
    flex: 0 0 auto !important;
    display: flex !important;
    flex-direction: row !important;
    gap: 48px !important;
    padding-right: 40px !important;
}

/* ==========================================
   HEADING STYLING
   ========================================== */

.membership-qrcode h2,
.membership-qrcode .wp-block-column:first-child h2 {
    color: #E7004C !important;
    font-size: 48px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    margin: 0 0 20px 0 !important;
}

/* ==========================================
   TEXT STYLING
   ========================================== */

.membership-qrcode p,
.membership-qrcode .wp-block-column:first-child p,
.qrcode-container p {
    color: #303030 !important;
    font-size: 24px !important;
    line-height: 1.6 !important;
    margin: 0 !important;
}

/* ==========================================
   QR CODE CARDS
   ========================================== */

/* QR code cards - Each Group is a separate pink card */
.membership-qrcode .qrcode-card,
.membership-qrcode .wp-block-column:last-child > .wp-block-group {
    background: #E7004C !important;
    border-radius: 12px !important;
    padding: 28px 24px !important;
    text-align: center !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 16px !important;
    min-width: 180px !important;
    flex: 0 0 auto !important;
}

/* Nested groups inside cards (if present) should be transparent */
.membership-qrcode .wp-block-column:last-child .wp-block-group .wp-block-group {
    background: transparent !important;
    padding: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 12px !important;
    min-width: auto !important;
}

/* QR code image */
.membership-qrcode .qrcode-card .wp-block-image,
.membership-qrcode .wp-block-column:last-child .wp-block-group .wp-block-image {
    margin: 0 !important;
    width: 160px !important;
}

.membership-qrcode .qrcode-card .wp-block-image img,
.membership-qrcode .wp-block-column:last-child .wp-block-group .wp-block-image img {
    width: 160px !important;
    height: 160px !important;
    display: block !important;
    background: white !important;
}

/* Hide figcaptions - we use paragraph blocks instead */
.membership-qrcode .qrcode-card figcaption,
.membership-qrcode .wp-block-column:last-child .wp-block-group figcaption,
.membership-qrcode .wp-block-column:last-child .wp-block-group .wp-element-caption {
    display: none !important;
}

/* QR code labels - Shared styles */
.membership-qrcode .qrcode-card p,
.membership-qrcode .wp-block-column:last-child .wp-block-group p {
    color: var(--color-white) !important;
    font-weight: 700 !important;
    text-align: center !important;
}

/* QR code labels - First line (e.g., "Full" or "Concession") */
.membership-qrcode .qrcode-card p:first-of-type,
.membership-qrcode .wp-block-column:last-child .wp-block-group p:first-of-type {
    font-size: 20px !important;
    line-height: 1 !important;
    margin: 16px 0 0 0 !important;
}

/* QR code labels - Second line (e.g., "Membership $15") */
.membership-qrcode .qrcode-card p:nth-of-type(2),
.membership-qrcode .wp-block-column:last-child .wp-block-group p:nth-of-type(2) {
    font-size: 20px !important;
    line-height: 1 !important;
    margin: 4px 0 0 0 !important;
}

/* ==========================================
   RESPONSIVE DESIGN
   ========================================== */

@media (max-width: 968px) {
    .membership-qrcode,
    .membership-qrcode.wp-block-cover {
        padding: 40px 0 !important;
        max-width: 100% !important;
    }
    
    .membership-qrcode .wp-block-cover__inner-container {
        padding: 0 15px !important;
        max-width: 100% !important;
        width: 100% !important;
    }

    /* Remove Gutenberg content width constraint on card inner containers */
    .membership-qrcode .wp-block-group__inner-container.is-layout-constrained,
    .membership-qrcode .wp-block-column:last-child .wp-block-group__inner-container {
        max-width: 100% !important;
        width: 100% !important;
        padding: 0 !important;
        margin: 0 !important;
    }
    
    /* Stack columns vertically on tablet/mobile */
    .qrcode-container,
    .membership-qrcode .wp-block-columns,
    .membership-qrcode .wp-block-columns.is-layout-flow,
    .membership-qrcode .wp-block-columns-is-layout-flow {
        flex-direction: column !important;
        gap: 48px !important;
        align-items: center !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
    }
    
    /* Stack QR code cards vertically on mobile */
    .membership-qrcode .wp-block-column:last-child,
    .membership-qrcode .wp-block-column:last-child.is-layout-flow,
    .membership-qrcode .wp-block-column:last-child.wp-block-column-is-layout-flow {
        flex-direction: column !important;
        gap: 32px !important;
        padding-right: 0 !important;
        padding-left: 0 !important;
        padding-top: 0 !important;
        padding-bottom: 0 !important;
        align-items: center !important;
        justify-content: center !important;
        width: 100% !important;
        flex: 0 0 100% !important;
        margin: 0 auto !important;
    }
    
    /* Center text on mobile */
    .membership-qrcode .wp-block-column:first-child,
    .membership-qrcode .wp-block-column:first-child.is-layout-flow,
    .membership-qrcode .wp-block-column:first-child.wp-block-column-is-layout-flow {
        text-align: center !important;
        flex: 0 0 100% !important;
        width: 100% !important;
        padding: 0 !important;
        margin: 0 !important;
    }
    
    /* Smaller heading on mobile */
    .membership-qrcode h2,
    .membership-qrcode .wp-block-column:first-child h2 {
        font-size: 36px !important;
    }
    
    /* Smaller text on mobile */
    .membership-qrcode p,
    .membership-qrcode .wp-block-column:first-child p,
    .qrcode-container p {
        font-size: 24px !important;
    }
}

@media (max-width: 600px) {
    .membership-qrcode,
    .membership-qrcode.wp-block-cover {
        padding: 30px 0 !important;
        max-width: 100% !important;
    }

    .membership-qrcode .wp-block-cover__inner-container {
        padding: 0 10px !important;
        max-width: 100% !important;
        width: 100% !important;
    }

    /* Remove Gutenberg content width constraint on card inner containers */
    .membership-qrcode .wp-block-group__inner-container.is-layout-constrained,
    .membership-qrcode .wp-block-column:last-child .wp-block-group__inner-container {
        max-width: 100% !important;
        width: 100% !important;
        padding: 0 !important;
        margin: 0 !important;
    }

    /* Reduce gap between stacked columns */
    .qrcode-container,
    .membership-qrcode .wp-block-columns {
        gap: 32px !important;
        width: 100% !important;
    }

    /* Center QR code cards */
    .membership-qrcode .wp-block-column:last-child {
        gap: 24px !important;
        align-items: center !important;
        width: 100% !important;
        margin: 0 auto !important;
    }

    /* Smaller heading on phone */
    .membership-qrcode h2,
    .membership-qrcode .wp-block-column:first-child h2 {
        font-size: 28px !important;
    }
}

@media (max-width: 480px) {
    .membership-qrcode,
    .membership-qrcode.wp-block-cover {
        padding: 30px 0 !important;
        max-width: 100% !important;
    }

    .membership-qrcode .wp-block-cover__inner-container {
        padding: 0 10px !important;
        max-width: 100% !important;
        width: 100% !important;
    }

    /* Re-assert column stacking and centering */
    .qrcode-container,
    .membership-qrcode .wp-block-columns,
    .membership-qrcode .wp-block-columns.is-layout-flow,
    .membership-qrcode .wp-block-columns-is-layout-flow {
        flex-direction: column !important;
        align-items: center !important;
        width: 100% !important;
        gap: 32px !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    .membership-qrcode .wp-block-column:first-child,
    .membership-qrcode .wp-block-column:first-child.is-layout-flow,
    .membership-qrcode .wp-block-column:first-child.wp-block-column-is-layout-flow {
        text-align: center !important;
        flex: 0 0 100% !important;
        width: 100% !important;
        padding: 0 !important;
        margin: 0 !important;
    }

    .membership-qrcode .wp-block-column:last-child,
    .membership-qrcode .wp-block-column:last-child.is-layout-flow,
    .membership-qrcode .wp-block-column:last-child.wp-block-column-is-layout-flow {
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        width: 100% !important;
        flex: 0 0 100% !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        padding-top: 0 !important;
        padding-bottom: 0 !important;
        margin: 0 auto !important;
        gap: 24px !important;
    }

    /* Wider QR code cards on small phones */
    .membership-qrcode .qrcode-card,
    .membership-qrcode .wp-block-column:last-child .wp-block-group {
        min-width: 240px !important;
        padding: 24px 20px !important;
        gap: 20px !important;
        margin: 0 auto !important;
        width: auto !important;
    }

    /* Remove Gutenberg content width constraint on card inner container */
    .membership-qrcode .wp-block-group__inner-container.is-layout-constrained,
    .membership-qrcode .wp-block-column:last-child .wp-block-group__inner-container {
        max-width: 100% !important;
        width: 100% !important;
        padding: 0 !important;
        margin: 0 !important;
    }
    
    .membership-qrcode .qrcode-card .wp-block-image,
    .membership-qrcode .wp-block-column:last-child .wp-block-group .wp-block-image {
        width: 160px !important;
        margin: 0 auto !important;
    }

    .membership-qrcode .qrcode-card .wp-block-image img,
    .membership-qrcode .wp-block-column:last-child .wp-block-group .wp-block-image img {
        width: 160px !important;
        height: 160px !important;
    }
}
