.text-primary {
    color: hsl(var(--foreground)) !important;
}

.text-secondary,
.text-muted {
    color: hsl(var(--muted-foreground)) !important;
}

.text-destructive,
.text-danger {
    color: hsl(var(--destructive)) !important;
}

.text-success {
    color: var(--bs-success) !important;
}

.text-warning {
    color: var(--bs-warning) !important;
}

p {
    margin-top: calc(0.375rem * calc(1 - var(--tw-space-y-reverse)));
    margin-bottom: calc(0.375rem * var(--tw-space-y-reverse));
    font-size: 0.875rem;
    line-height: calc(var(--spacing) * 6);
}

.text-lead {
    color: hsl(var(--muted-foreground));
    font-size: 1.25rem;
    line-height: calc(1.75 / 1.25);
}

a {
    color: inherit;
}

h1,
h2,
h3,
h4,
h5 {
    margin-top: 1.1rem;
    margin-bottom: 1.1rem;
}

h1 {
    text-wrap: balance;
    letter-spacing: var(--tracking-tight);
    font-weight: 700;
    font-size: 2.25rem;
    line-height: calc(2.5/2.25);
}

h2 {
    letter-spacing: var(--tracking-tight);
    font-weight: 600;
    font-size: 1.875rem;
    line-height: calc(2.25/1.875);
    padding-bottom: calc(var(--spacing) * 2);
    border-bottom-width: 1px;
}

h3 {
    letter-spacing: var(--tracking-tight);
    font-weight: 600;
    font-size: 1.5rem;
    line-height: calc(2/1.5);
}

h4 {
    letter-spacing: var(--tracking-tight);
    font-weight: 600;
    font-size: 1.25rem;
    line-height: calc(1.75/1.25);
}

blockquote {
    margin: 0;
    font-size: 0.875rem;
    font-style: italic;
    padding-left: calc(var(--spacing) * 6);
    border-left-width: 2px;
    margin-top: calc(var(--spacing) * 6);
    color: hsl(var(--muted-foreground));
}

ul,
ol {
    margin: 0;
    list-style-type: disc;
    margin-left: calc(var(--spacing) * 6);
    margin-block: calc(var(--spacing) * 6);
    padding: 0;
    font-size: 0.875rem;

    li {
        margin: 0;
        padding: 0;
        margin-top: calc(var(--spacing) * 2);
    }
}

ol {
    list-style-type: decimal;
}