/* 
 * Quill Content Styles
 * Used to render content from the Quill editor on the front-end
 * ensuring it matches the backend editor perfectly.
 */

.ql-content {
    font-family: inherit;
    font-size: 1rem;
    line-height: 1.6;
    color: inherit;
}

/* Paragraph Spacing - The "Flawless" part */
.ql-content p {
    margin-top: 0;
    margin-bottom: 1.25rem; /* Consistent spacing */
}

.ql-content p:last-child {
    margin-bottom: 0;
}

/* Line Breaks (Shift+Enter) */
.ql-content br {
    display: block;
    content: "";
    margin-top: 0;
}

/* Headings */
.ql-content h1, 
.ql-content h2, 
.ql-content h3, 
.ql-content h4 {
    font-weight: 700;
    margin-top: 2rem;
    margin-bottom: 1rem;
    line-height: 1.2;
}

.ql-content h1 { font-size: 2.25rem; }
.ql-content h2 { font-size: 1.875rem; }
.ql-content h3 { font-size: 1.5rem; }
.ql-content h4 { font-size: 1.25rem; }

/* Lists */
.ql-content ul, 
.ql-content ol {
    margin-bottom: 1.25rem;
    padding-left: 1.5rem;
}

.ql-content ul { list-style-type: disc; }
.ql-content ol { list-style-type: decimal; }

.ql-content li {
    margin-bottom: 0.5rem;
}

/* Links */
.ql-content a {
    color: black;
    text-decoration: underline;
    text-underline-offset: 2px;
    transition: opacity 0.2s;
}

.ql-content a:hover {
    opacity: 0.7;
}

/* Images */
.ql-content img {
    max-width: 100%;
    height: auto;
    border-radius: 0.5rem;
    margin: 1.5rem 0;
    display: block;
}

/* Blockquotes */
.ql-content blockquote {
    border-left: 4px solid #e5e7eb;
    padding-left: 1.5rem;
    font-style: italic;
    margin: 1.5rem 0;
    color: #4b5563;
}

/* Code Blocks */
.ql-content pre {
    background: #f3f4f6;
    padding: 1rem;
    border-radius: 0.5rem;
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
    font-size: 0.875rem;
    overflow-x: auto;
    margin: 1.5rem 0;
}

/* Text Align */
.ql-align-center { text-align: center; }
.ql-align-right { text-align: right; }
.ql-align-justify { text-align: justify; }

/* Font Weights */
.ql-content strong { font-weight: 700; }
.ql-content em { font-style: italic; }
.ql-content u { text-decoration: underline; }
.ql-content s { text-decoration: line-through; }
