/*
 * Codify: Responsive Text Control — style.css
 * Codify Werks, LLC
 *
 * Breakpoints
 *   Desktop : min-width: 1025px     — hide only (alignment handled natively)
 *   Tablet  : 741px – 1024px
 *   Mobile  : max-width: 740px
 *
 * Typography overrides are injected as scoped <style> tags by the
 * render_block PHP filter, using a unique class per block instance.
 */

/* ─── Desktop (≥ 1025px) — hide only ────────────────────────────────────── */

@media (min-width: 1025px) {
    .cw-desktop-hide { display: none !important; }
}

/* ─── Tablet only (741px – 1024px) ──────────────────────────────────────── */

@media (min-width: 741px) and (max-width: 1024px) {

    /* Alignment */
    .cw-tablet-align-left    { text-align: left    !important; }
    .cw-tablet-align-center  { text-align: center  !important; }
    .cw-tablet-align-right   { text-align: right   !important; }
    .cw-tablet-align-justify { text-align: justify !important; }

    /* core/buttons flex alignment */
    .wp-block-buttons.cw-tablet-align-left   { justify-content: flex-start !important; text-align: left   !important; }
    .wp-block-buttons.cw-tablet-align-center { justify-content: center     !important; text-align: center !important; }
    .wp-block-buttons.cw-tablet-align-right  { justify-content: flex-end   !important; text-align: right  !important; }

    /* Full width — resolves text-align inside flex parents */
    .cw-tablet-full-width { width: 100% !important; }

    /* Hide */
    .cw-tablet-hide { display: none !important; }
}

/* ─── Mobile (≤ 740px) ───────────────────────────────────────────────────── */

@media (max-width: 740px) {

    /* Alignment */
    .cw-mobile-align-left    { text-align: left    !important; }
    .cw-mobile-align-center  { text-align: center  !important; }
    .cw-mobile-align-right   { text-align: right   !important; }
    .cw-mobile-align-justify { text-align: justify !important; }

    /* core/buttons flex alignment */
    .wp-block-buttons.cw-mobile-align-left   { justify-content: flex-start !important; text-align: left   !important; }
    .wp-block-buttons.cw-mobile-align-center { justify-content: center     !important; text-align: center !important; }
    .wp-block-buttons.cw-mobile-align-right  { justify-content: flex-end   !important; text-align: right  !important; }

    /* Full width — resolves text-align inside flex parents */
    .cw-mobile-full-width { width: 100% !important; }

    /* Hide */
    .cw-mobile-hide { display: none !important; }
}