:root {
    --st-primary: #2563eb;
    --st-secondary: #06b6d4;
    --st-ink: #0f172a;
    --st-soft: #eff6ff;
}

body {
    color: var(--st-ink);
}

.navbar.bg-primary {
    background: linear-gradient(120deg, #1d4ed8, #2563eb 58%, #0891b2) !important;
}

.navbar-brand {
    font-weight: 700;
    letter-spacing: -0.02em;
}

.bs-sidebar .nav > li > a.active,
.bs-sidebar .nav > li > a:hover {
    color: var(--st-primary);
    border-right-color: var(--st-primary);
}

.st-cta {
    display: inline-block;
    margin: 0.6rem 0 1.35rem;
    padding: 0.75rem 1.2rem;
    border-radius: 0.65rem;
    background: linear-gradient(120deg, var(--st-primary), var(--st-secondary));
    color: #fff !important;
    font-weight: 700;
    text-decoration: none !important;
    box-shadow: 0 10px 24px rgb(37 99 235 / 22%);
}

.st-cta:hover {
    transform: translateY(-1px);
    box-shadow: 0 13px 28px rgb(37 99 235 / 28%);
}

article img {
    max-width: 100%;
    height: auto;
    border: 1px solid #dbe4f0;
    border-radius: 0.8rem;
    box-shadow: 0 14px 34px rgb(15 23 42 / 10%);
}

article table {
    display: block;
    width: 100%;
    overflow-x: auto;
}

article h1,
article h2,
article h3 {
    color: var(--st-ink);
    letter-spacing: -0.02em;
}

.admonition.note {
    border-color: var(--st-primary);
    background: var(--st-soft);
}
