/* Typography for manager-authored HTML block content.
   The compiled Tailwind stylesheet resets all element styles and its SCSS
   source is not in the repo, so block content gets its readable styling
   here, scoped under .content-prose (applied by DisplayTemplates/HtmlBlock). */

.content-prose {
    max-width: 46rem;
    margin-left: auto;
    margin-right: auto;
    color: #374151;
    font-size: 1.0625rem;
    line-height: 1.75;
}

.content-prose h2 {
    font-size: 1.625rem;
    font-weight: 700;
    color: #1f2937;
    margin: 2.25rem 0 0.875rem;
    line-height: 1.3;
}

.content-prose h2:first-child {
    margin-top: 0;
}

.content-prose h3 {
    font-size: 1.25rem;
    font-weight: 600;
    color: #1f2937;
    margin: 1.75rem 0 0.625rem;
}

.content-prose p {
    margin: 0 0 1.125rem;
}

.content-prose ul,
.content-prose ol {
    margin: 0 0 1.25rem;
    padding-left: 1.5rem;
}

.content-prose ul {
    list-style: disc;
}

.content-prose ol {
    list-style: decimal;
}

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

.content-prose li::marker {
    color: hsl(var(--primary));
}

.content-prose a:not([class]) {
    color: hsl(var(--primary));
    text-decoration: underline;
    text-underline-offset: 2px;
}

.content-prose a:not([class]):hover {
    opacity: 0.85;
}

.content-prose strong {
    color: #1f2937;
    font-weight: 600;
}

.content-prose table {
    width: 100%;
    border-collapse: collapse;
    margin: 1.25rem 0 1.75rem;
    font-size: 0.9375rem;
    border: 1px solid #e5e7eb;
    border-radius: 0.5rem;
    overflow: hidden;
}

.content-prose thead th {
    background-color: hsl(var(--primary) / 0.08);
    color: #1f2937;
    font-weight: 600;
    text-align: left;
    padding: 0.75rem 1rem;
    border-bottom: 2px solid hsl(var(--primary) / 0.25);
}

.content-prose tbody td {
    padding: 0.75rem 1rem;
    border-bottom: 1px solid #e5e7eb;
}

.content-prose tbody tr:last-child td {
    border-bottom: none;
}

.content-prose tbody tr:nth-child(even) {
    background-color: #f9fafb;
}

.content-prose blockquote {
    border-left: 3px solid hsl(var(--primary));
    padding-left: 1.25rem;
    margin: 1.5rem 0;
    font-style: italic;
    color: #4b5563;
}

.content-prose hr {
    border: 0;
    border-top: 1px solid #e5e7eb;
    margin: 2.5rem 0;
}

.content-prose img {
    border-radius: 0.5rem;
    max-width: 100%;
    height: auto;
}

/* Call-to-action button for manager-authored content. Same look as the
   site's donate button, but independent so restyling one doesn't move
   the other. Pairs with Tailwind utilities in the block markup
   (text-white px-6 py-3 rounded-full ...). */
.content-prose .cta-button {
    background-color: hsl(var(--primary));
    border-color: hsl(var(--primary));
}

.content-prose .cta-button:hover {
    background-color: hsl(var(--primary) / 0.9);
    border-color: hsl(var(--primary) / 0.9);
}
