article {
    font-size: 0.9rem;   /* ~14.4px; try 0.9–0.95rem to taste */
    line-height: 1.4;
}

article h2 {
    margin-top: 1.5rem;
    margin-bottom: 0.6rem;
}

article h3 {
    margin-top: 1.2rem;
    margin-bottom: 0.5rem;
}

body {
    --sweeplink-blue: #076189;
}
body[data-theme="dark"] {
    --sweeplink-blue: #4db3e0;
}

/* DEFAULTS: both parts blend with surroundings (safe everywhere) */
.sl-sweep,
.sl-link {
    font-weight: inherit;              /* tracks bold/normal automatically */
}
.sl-sweep {
    -webkit-text-stroke: 0.4px currentColor;   /* medium look for thin font */
    letter-spacing: 0.02em;
}
.sl-link {
    color: inherit;                    /* uniform in nav/links */
}

/* OPT-IN: two-tone brand blue ONLY in main prose (not inside links) */
article :not(a) .sl-link {
    color: var(--sweeplink-blue);
    font-weight: bold;
}

.repo-link-icon {
    display: inline-flex;
    align-items: center;
    color: var(--color-foreground-secondary);
    margin-right: 0.5rem;
    font-size: 0.9rem;      /* label text size */
    text-decoration: none;
}

.content-icon-container a.repo-link-icon,
.content-icon-container a.repo-link-icon:hover,
.content-icon-container a.repo-link-icon:visited,
.content-icon-container a.repo-link-icon:focus,
.content-icon-container a.repo-link-icon:active {
    color: var(--color-foreground-secondary);
}
.content-icon-container a.repo-link-icon:hover {
    color: var(--color-foreground-primary);
}

.repo-link-icon:visited {
    color: var(--color-foreground-secondary);
}
