/*
 * Tela Network v2 — typography utilities.
 */

.v2-label-caps {
    font-family: var(--v2-font-sans);
    font-size: var(--v2-text-sm);
    font-weight: 600;
    letter-spacing: 0.11em;
    line-height: 1.2;
    text-transform: uppercase;
}

.v2-label-caps-sm {
    font-family: var(--v2-font-sans);
    font-size: var(--v2-text-sm);
    font-weight: 600;
    letter-spacing: 0.13em;
    line-height: 1.2;
    text-transform: uppercase;
}

.v2-ledger-date {
    font-family: var(--v2-font-mono);
    font-size: var(--v2-text-sm);
    font-variant-numeric: tabular-nums;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.v2-num {
    font-family: var(--v2-font-mono);
    font-variant-numeric: tabular-nums;
    letter-spacing: -0.01em;
}

.v2-hash {
    font-family: var(--v2-font-mono);
    font-size: var(--v2-text-sm);
    letter-spacing: 0.01em;
    word-break: break-all;
}

.v2-text-accent {
    color: var(--v2-accent);
}

.v2-text-muted {
    color: var(--v2-muted-foreground);
}

.v2-font-serif {
    font-family: var(--v2-font-serif);
}

.v2-prose {
    color: var(--v2-foreground);
    font-family: var(--v2-font-serif);
    font-size: var(--v2-text-lg);
    line-height: 1.72;
}

.v2-prose p {
    margin-block: 1.35em;
}

.v2-prose p:first-child {
    margin-top: 0;
}

.v2-prose h2 {
    font-family: var(--v2-font-sans);
    font-size: 1.0625rem;
    font-weight: 600;
    letter-spacing: 0.02em;
    line-height: 1.625;
    margin-block: 2.4em 0.9em;
    text-transform: uppercase;
}

.v2-prose blockquote {
    border-left: 2px solid var(--v2-rule);
    color: var(--v2-muted-foreground);
    font-style: italic;
    margin-block: 1.6em;
    padding-left: 1.2rem;
}

.v2-prose a {
    color: inherit;
    text-decoration: none;
}

.v2-prose a:hover {
    text-decoration: underline;
    text-decoration-color: currentColor;
    text-decoration-thickness: 1px;
    text-underline-offset: 4px;
}

.v2-prose strong {
    font-weight: 600;
}
