/* Resa pubblica dei contenuti generati dall'editor Quill.
 * Gli articoli memorizzano HTML con classi Quill (allineamenti, liste,
 * blocchi di codice, ecc.): queste regole sono volutamente limitate al corpo
 * dell'articolo e non caricano il tema editor nel sito pubblico. */
.article-content {
    overflow-wrap: anywhere;
}

.article-content p {
    margin: 0 0 1rem;
    line-height: 1.8;
}

.article-content h1,
.article-content h2,
.article-content h3,
.article-content h4 {
    margin-top: 1.5rem;
}

.article-content ul,
.article-content ol {
    margin: 0 0 1rem;
    padding-left: 1.75rem;
}

.article-content li {
    margin-bottom: 0.35rem;
}

/* Quill 2 può serializzare elenchi puntati e numerati usando data-list. */
.article-content li[data-list="bullet"] {
    list-style-type: disc;
}

.article-content li[data-list="ordered"] {
    list-style-type: decimal;
}

.article-content .ql-ui {
    display: none;
}

.article-content blockquote {
    margin: 1.5rem 0;
    padding: 0.25rem 0 0.25rem 1rem;
    border-left: 4px solid var(--primary-color);
    color: var(--text-secondary);
}

.article-content pre,
.article-content .ql-code-block-container {
    margin: 1.25rem 0;
    padding: 1rem;
    border-radius: var(--border-radius-lg);
    background: var(--surface-secondary);
    overflow-x: auto;
    font-family: var(--font-family-monospace);
    font-size: 0.92rem;
    line-height: 1.55;
}

.article-content .ql-code-block {
    white-space: pre-wrap;
    font-family: inherit;
}

.article-content img {
    max-width: 100%;
    height: auto;
    border-radius: 8px;
}

.article-content a {
    overflow-wrap: anywhere;
}

.article-content .ql-align-center {
    text-align: center;
}

.article-content .ql-align-right {
    text-align: right;
}

.article-content .ql-align-justify {
    text-align: justify;
}

.article-content .ql-direction-rtl {
    direction: rtl;
    text-align: inherit;
}

.article-content .ql-size-small {
    font-size: 0.75em;
}

.article-content .ql-size-large {
    font-size: 1.5em;
}

.article-content .ql-size-huge {
    font-size: 2.5em;
}

.article-content .ql-indent-1 { padding-left: 3em; }
.article-content .ql-indent-2 { padding-left: 6em; }
.article-content .ql-indent-3 { padding-left: 9em; }
.article-content .ql-indent-4 { padding-left: 12em; }
.article-content .ql-indent-5 { padding-left: 15em; }
.article-content .ql-indent-6 { padding-left: 18em; }
.article-content .ql-indent-7 { padding-left: 21em; }
.article-content .ql-indent-8 { padding-left: 24em; }

@media (max-width: 767.98px) {
    .article-content .ql-indent-1,
    .article-content .ql-indent-2,
    .article-content .ql-indent-3,
    .article-content .ql-indent-4,
    .article-content .ql-indent-5,
    .article-content .ql-indent-6,
    .article-content .ql-indent-7,
    .article-content .ql-indent-8 {
        padding-left: 1.5rem;
    }
}
