/**
 * Justify for Blocks Extended - Styles
 * 
 * CSS styles for text justification in multiple block types
 * (Paragraph, Headings, Quote, Lists)
 * 
 * @package JustifyForBlocksExtended
 * @since 1.0.0
 */

/* Base justify alignment class */
.has-text-align-justify {
    text-align: justify !important;
}

/* Paragraph block justification */
.wp-block-paragraph.has-text-align-justify {
    text-align: justify;
}

/* Heading blocks justification (H1-H6) */
.wp-block-heading.has-text-align-justify,
h1.has-text-align-justify,
h2.has-text-align-justify,
h3.has-text-align-justify,
h4.has-text-align-justify,
h5.has-text-align-justify,
h6.has-text-align-justify {
    text-align: justify;
}

/* Quote block justification */
.wp-block-quote.has-text-align-justify {
    text-align: justify;
}

.wp-block-quote.has-text-align-justify p {
    text-align: justify;
}

.wp-block-quote.has-text-align-justify cite {
    text-align: justify;
}

/* List blocks justification */
.wp-block-list.has-text-align-justify {
    text-align: justify;
}

.wp-block-list.has-text-align-justify li {
    text-align: justify;
}

/* Ordered list justification */
ol.has-text-align-justify,
ol.has-text-align-justify li {
    text-align: justify;
}

/* Unordered list justification */
ul.has-text-align-justify,
ul.has-text-align-justify li {
    text-align: justify;
}

/* Editor-specific styles for better preview */
.block-editor-block-list__layout .has-text-align-justify {
    text-align: justify;
}

/* Ensure proper spacing and readability for justified text */
.has-text-align-justify {
    hyphens: auto;
    word-spacing: 0.1em;
}

/* Responsive adjustments for justified text */
@media (max-width: 600px) {
    .has-text-align-justify {
        text-align: left; /* Fallback to left alignment on small screens for better readability */
    }
}

/* Print styles */
@media print {
    .has-text-align-justify {
        text-align: justify;
    }
}