.b-educ-ai-content {
    width: 100%;
    max-width: 72ch;
    color: var(--color-base-content);
    font-size: 1rem;
    line-height: 1.68;
    overflow-wrap: anywhere;
    text-wrap: pretty;
}

.b-educ-ai-content > :first-child,
.b-educ-ai-block > :first-child {
    margin-top: 0;
}

.b-educ-ai-content > :last-child,
.b-educ-ai-block > :last-child {
    margin-bottom: 0;
}

.b-educ-ai-block + .b-educ-ai-block {
    margin-top: 1rem;
}

.b-educ-ai-content :is(h2, h3, h4) {
    margin: 0;
    color: var(--color-base-content);
    font-family: var(--font-display);
    font-weight: 700;
    letter-spacing: -0.015em;
    line-height: 1.25;
    text-wrap: balance;
}

.b-educ-ai-content h2 {
    font-size: 1.5rem;
    font-weight: 800;
}

.b-educ-ai-content h3 {
    font-size: 1.25rem;
}

.b-educ-ai-content h4 {
    font-size: 1.125rem;
}

.b-educ-ai-block--heading {
    display: flex;
    align-items: center;
    gap: 0.65rem;
    margin-top: 1.75rem;
    border-bottom: 2px solid color-mix(in oklch, var(--color-primary) 22%, var(--color-base-300));
    padding-bottom: 0.65rem;
}

.b-educ-ai-block--heading::before {
    width: 0.6rem;
    height: 0.6rem;
    flex: 0 0 0.6rem;
    border-radius: 50%;
    background: var(--color-primary);
    content: "";
}

.b-educ-ai-block--paragraph p,
.b-educ-ai-block--definition p,
.b-educ-ai-block--callout p,
.b-educ-ai-block--check p {
    margin: 0;
}

.b-educ-ai-block--definition strong:first-child {
    font-weight: 800;
}

.b-educ-ai-block--list ul {
    margin: 0.65rem 0 0;
    padding-inline-start: 1.3rem;
    list-style: disc;
}

.b-educ-ai-block--list li + li {
    margin-top: 0.45rem;
}

.b-educ-ai-block--list li::marker {
    color: var(--color-primary);
}

.b-educ-ai-block--quote blockquote,
.b-educ-ai-block--callout,
.b-educ-ai-block--check,
.b-educ-ai-block--math {
    border: 1px solid var(--color-base-300);
    border-radius: var(--radius-field);
    background: var(--color-base-200);
    padding: 0.85rem 1rem;
}

.b-educ-ai-block--quote blockquote {
    margin: 0;
    font-style: italic;
}

.b-educ-ai-block--check {
    background: color-mix(in oklch, var(--color-primary) 9%, var(--color-base-100));
    font-weight: 500;
}

.b-educ-ai-block--check strong:first-child {
    font-weight: 800;
}

.b-educ-ai-block--tone-success {
    background: color-mix(in oklch, var(--color-success) 12%, var(--color-base-100));
}

.b-educ-ai-block--tone-warning {
    background: color-mix(in oklch, var(--color-warning) 16%, var(--color-base-100));
}

.b-educ-ai-block--tone-info {
    background: color-mix(in oklch, var(--color-info) 12%, var(--color-base-100));
}

.b-educ-ai-block--math {
    max-width: 100%;
    overflow-x: auto;
    overflow-y: hidden;
    overscroll-behavior-inline: contain;
    scrollbar-width: thin;
}

.b-educ-ai-content .katex {
    font-size: 1.1em;
}

.b-educ-ai-content .katex-display {
    max-width: 100%;
    margin: 0;
    overflow-x: auto;
    overflow-y: hidden;
    padding-block: 0.25rem;
}

.b-educ-ai-content pre {
    max-width: 100%;
    margin: 0;
    overflow-x: auto;
    border-radius: var(--radius-field);
    background: var(--color-neutral);
    padding: 1rem;
    color: var(--color-neutral-content);
    line-height: 1.55;
}

.b-educ-ai-content code {
    font-variant-ligatures: none;
}

@media (max-width: 639px) {
    .b-educ-ai-content h2 {
        font-size: 1.375rem;
    }

    .b-educ-ai-content h3 {
        font-size: 1.1875rem;
    }

    .b-educ-ai-block--quote blockquote,
    .b-educ-ai-block--callout,
    .b-educ-ai-block--check,
    .b-educ-ai-block--math {
        padding: 0.75rem;
    }
}
