:root {
    --av-bg: #09090b;
    --av-bg-2: #111114;
    --av-card: rgba(24, 24, 27, .88);
    --av-line: rgba(255, 255, 255, .08);
    --av-text: #fafafa;
    --av-muted: #a1a1aa;
    --av-accent: #e11d48;
    --av-rose: #fb7185;
    --av-gold: #fbbf24;
    --av-ok: #34d399;
    --av-shadow: 0 24px 60px rgba(0, 0, 0, .4);
    --av-radius: 18px;
    --av-wrap: 1280px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body.site-body {
    margin: 0;
    color-scheme: dark;
    overflow-x: hidden;
    color: var(--av-text);
    background:
        radial-gradient(900px 420px at 8% -8%, rgba(225, 29, 72, .22), transparent 55%),
        radial-gradient(700px 360px at 92% 0%, rgba(251, 191, 36, .08), transparent 48%),
        var(--av-bg);
    font-family: "Noto Sans SC", "Segoe UI", sans-serif;
    line-height: 1.65;
}
body.nav-open { overflow: hidden; }
a { color: inherit; text-decoration: none; }
img { max-width: 100%; height: auto; }
.av-wrap { width: min(var(--av-wrap), calc(100% - 40px)); margin: 0 auto; }
.av-header > .av-wrap,
.av-footer > .av-wrap { width: min(1280px, calc(100% - 40px)); }
.av-inner { padding: 36px 0 80px; }
.av-kicker {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: var(--av-rose);
    letter-spacing: .14em;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
}
.av-kicker::before {
    content: "";
    width: 18px;
    height: 2px;
    background: linear-gradient(90deg, var(--av-rose), transparent);
}
h1, h2, h3 { line-height: 1.2; margin: 0 0 .4em; }
.av-muted, .muted { color: var(--av-muted); }
.av-lead { color: #d4d4d8; font-size: 16px; max-width: 720px; overflow-wrap: anywhere; }
.av-lead code, .av-muted code, .av-repo-name code { word-break: break-all; }
.av-prose { color: #d4d4d8; }
.av-lead a, .av-muted a, .av-acc-body a, .av-list a, .av-copy a, .av-card a { color: var(--av-rose); }

.av-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 44px;
    padding: 0 18px;
    border-radius: 999px;
    border: 1px solid transparent;
    font-weight: 600;
    cursor: pointer;
    transition: .2s ease;
}
.av-btn-primary { background: linear-gradient(135deg, #e11d48, #fb7185); color: #fff; }
.av-btn-primary:hover { transform: translateY(-1px); box-shadow: 0 10px 24px rgba(225, 29, 72, .28); }
.av-btn-ghost { background: rgba(255,255,255,.04); border-color: var(--av-line); color: var(--av-text); }
.av-btn-ghost:hover { border-color: rgba(251, 113, 133, .45); }
.av-btn-line { background: transparent; border-color: rgba(255,255,255,.16); }
.av-btn-line:hover { border-color: rgba(251, 113, 133, .45); color: #fff; }
a:focus-visible, button:focus-visible, .av-btn:focus-visible {
    outline: 2px solid #fb7185;
    outline-offset: 3px;
}

.av-header {
    position: sticky;
    top: 0;
    z-index: 80;
    backdrop-filter: blur(16px);
    background: rgba(9, 9, 11, .66);
    border-bottom: 1px solid transparent;
}
.av-header.is-scrolled { border-bottom-color: var(--av-line); background: rgba(9, 9, 11, .9); }
.av-header-bar {
    min-height: 72px;
    display: flex;
    align-items: center;
    gap: 20px;
}
.av-brand { display: inline-flex; align-items: center; gap: 10px; font-weight: 800; font-size: 18px; }
.av-brand img, .av-brand-icon {
    height: 40px;
    width: 40px;
    padding: 3px;
    object-fit: contain;
    background: #fff;
    border-radius: 50%;
}
.av-brand small { display: block; font-size: 11px; color: var(--av-muted); font-weight: 500; letter-spacing: .04em; }
.av-nav { display: flex; align-items: center; gap: 4px; margin-left: auto; }
.av-nav .lang { margin-left: 8px; font-size: 12px; color: var(--av-muted); }
.av-nav > a {
    padding: 8px 8px;
    border-radius: 8px;
    color: #d4d4d8;
    font-size: 14px;
    white-space: nowrap;
}
.av-nav > a:hover, .av-nav a[aria-current="page"] { color: #fff; background: rgba(255,255,255,.06); }
.av-header-cta { display: flex; gap: 8px; margin-left: 8px; }
.av-nav-toggle {
    display: none;
    margin-left: auto;
    width: 42px;
    height: 42px;
    border: 1px solid var(--av-line);
    border-radius: 10px;
    background: transparent;
    color: #fff;
}
.av-drawer {
    display: none;
    scrollbar-width: thin;
    scrollbar-color: #3f3f46 transparent;
}
.av-drawer::-webkit-scrollbar { width: 8px; height: 8px; }
.av-drawer::-webkit-scrollbar-track { background: transparent; }
.av-drawer::-webkit-scrollbar-thumb {
    background: #3f3f46;
    border-radius: 99px;
}

.av-hero { padding: 40px 0 8px; overflow: hidden; }
.is-home .av-section { padding: 48px 0; }
.is-home .av-poster { aspect-ratio: 16 / 10; }
.av-hero-grid {
    display: grid;
    grid-template-columns: 1.05fr .95fr;
    gap: 40px;
    align-items: center;
}
.av-hero-grid > * { min-width: 0; }
.av-hero h1 { font-size: clamp(32px, 4vw, 48px); letter-spacing: -.03em; overflow-wrap: anywhere; }
.av-hero h1 em {
    font-style: normal;
    background: linear-gradient(90deg, #fff, #fb7185);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
}
.av-hero-actions { display: flex; flex-wrap: wrap; gap: 12px; margin: 22px 0 12px; }
.av-hero-links { display: flex; flex-wrap: wrap; gap: 8px 18px; margin: 0 0 12px; }
.av-hero-links a { color: #fb7185; font-weight: 600; text-underline-offset: 3px; }
.av-hero-links a:hover { text-decoration: underline; }
.av-hero-meta { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; color: var(--av-muted); font-size: 13px; }
.av-hero-meta span {
    padding: 4px 10px;
    border-radius: 999px;
    border: 1px solid var(--av-line);
    background: rgba(255,255,255,.03);
}
.av-migration-link { display: inline-flex; margin-top: 14px; color: #fb7185; font-weight: 700; }
.av-migration-link:hover { text-decoration: underline; text-underline-offset: 3px; }
.av-product-preview {
    margin: 0;
    min-width: 0;
    max-width: 100%;
    border: 1px solid var(--av-line);
    border-radius: 18px;
    background: #111114;
    overflow: hidden;
    box-shadow: var(--av-shadow);
}
.av-preview-bar {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 14px;
    background: #18181b;
    border-bottom: 1px solid var(--av-line);
    color: #e4e4e7;
    font-size: 12px;
}
.av-live-dot { width: 8px; height: 8px; border-radius: 50%; background: var(--av-ok); flex: 0 0 auto; }
.av-preview-label { margin-left: auto; color: var(--av-muted); }
.av-product-preview a { position: relative; display: block; color: inherit; }
.av-product-preview img { display: block; width: 100%; height: auto; }
.av-preview-open {
    position: absolute;
    right: 12px;
    bottom: 12px;
    padding: 6px 10px;
    border-radius: 999px;
    background: rgba(9, 9, 11, .82);
    color: #fff;
    font-size: 12px;
    font-weight: 700;
}
.av-product-preview figcaption { margin: 0; padding: 8px 14px 12px; color: var(--av-muted); font-size: 12px; }
.av-extension-band {
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr);
    gap: 28px;
    align-items: center;
}
.av-extension-list { display: grid; gap: 10px; }
.av-extension-list div {
    padding: 14px 16px;
    border: 1px solid var(--av-line);
    border-radius: 14px;
    background: rgba(255,255,255,.03);
}
.av-extension-list strong { display: block; }
.av-extension-list span { color: var(--av-muted); font-size: 14px; }
.av-text-link { color: #fb7185; font-weight: 700; }
.av-text-link:hover { text-decoration: underline; text-underline-offset: 3px; }
.av-migration-grid {
    display: grid;
    grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
    gap: 16px;
    align-items: start;
}
.av-migration-note {
    padding: 20px;
    border: 1px solid var(--av-line);
    border-radius: var(--av-radius);
    background: var(--av-card);
}
.av-migration-steps {
    margin: 0;
    padding: 8px 20px 8px 0;
    list-style: none;
    display: grid;
    gap: 4px;
}
.av-migration-steps li {
    display: grid;
    gap: 4px;
    padding: 14px 0;
    border-bottom: 1px solid var(--av-line);
}
.av-migration-steps li:last-child { border-bottom: 0; }
.av-migration-steps span { color: var(--av-muted); }
.av-pills { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 16px; }
.av-pill {
    padding: 6px 10px;
    border-radius: 999px;
    border: 1px solid var(--av-line);
    background: rgba(255,255,255,.03);
    font-size: 12px;
    color: #e4e4e7;
}

.av-mock {
    border-radius: 22px;
    border: 1px solid var(--av-line);
    background: #111114;
    box-shadow: var(--av-shadow);
    overflow: hidden;
}
.av-mock-bar {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 10px 14px;
    background: #18181b;
    border-bottom: 1px solid var(--av-line);
}
.av-mock-bar i { width: 8px; height: 8px; border-radius: 50%; background: #3f3f46; }
.av-mock-bar i:first-child { background: #e11d48; }
.av-mock-bar span { margin-left: 8px; color: var(--av-muted); font-size: 12px; }
.av-mock-screen { padding: 14px; }
.av-mock-nav {
    display: flex;
    gap: 10px;
    color: #a1a1aa;
    font-size: 12px;
    margin-bottom: 12px;
}
.av-mock-nav b { color: #fb7185; }
.av-posters {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 8px;
}
.av-poster {
    position: relative;
    margin: 0;
    min-width: 0;
    aspect-ratio: 3/4;
    border-radius: 8px;
    overflow: hidden;
    background: #18181b;
}
.av-poster img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.av-poster figcaption {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    margin: 0;
    padding: 22px 8px 8px;
    background: linear-gradient(180deg, transparent, rgba(0,0,0,.78));
    font-size: 11px;
    color: #fff;
}
.av-player {
    margin-top: 10px;
    border-radius: 10px;
    background: #18181b;
    padding: 12px;
}
.av-player-bar {
    height: 6px;
    border-radius: 99px;
    background: #27272a;
    overflow: hidden;
}
.av-player-bar em {
    display: block;
    width: 42%;
    height: 100%;
    background: linear-gradient(90deg, #e11d48, #fb7185);
}
.av-player-meta { display: flex; justify-content: space-between; color: #a1a1aa; font-size: 12px; margin-top: 8px; }
.av-mock-note { margin: 0; padding: 4px 14px 12px; color: var(--av-muted); font-size: 12px; }

.av-trust { padding: 18px 0 8px; }
.av-trust-grid {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 12px;
}
.av-trust-grid div {
    padding: 16px;
    border: 1px solid var(--av-line);
    border-radius: 14px;
    background: rgba(255,255,255,.03);
}
.av-trust-grid b { display: block; font-size: 15px; }
.av-trust-grid span { color: var(--av-muted); font-size: 12px; }

.av-section { padding: 64px 0; scroll-margin-top: 84px; }
.av-section-alt { background: linear-gradient(180deg, rgba(255,255,255,.02), transparent); }
.av-section-head { margin-bottom: 36px; }
.av-section-head.is-center { text-align: center; max-width: 740px; margin-left: auto; margin-right: auto; }
.av-section-head.is-center .av-lead { margin: 10px auto 0; }
.av-news-list { display: grid; gap: 16px; }
.av-news-body { max-width: 760px; }
.av-news-body p, .av-news-body ul { margin: 0 0 14px; color: #d4d4d8; }
.av-news-body pre {
    margin: 0 0 16px;
    padding: 14px;
    border-radius: 12px;
    background: #111114;
    border: 1px solid var(--av-line);
    white-space: pre-wrap;
    word-break: break-all;
    overflow-x: auto;
}
.av-section-cta { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 28px; }
.av-section-cta.is-center { justify-content: center; }
.av-section h2 { font-size: clamp(26px, 3vw, 38px); }
.av-grid-4, .av-grid-3, .av-grid-2 { display: grid; gap: 16px; }
.av-grid-4 { grid-template-columns: repeat(4, 1fr); }
.av-grid-3 { grid-template-columns: repeat(3, 1fr); }
.av-grid-2 { grid-template-columns: 1fr 1fr; }
.av-card {
    min-width: 0;
    background: var(--av-card);
    border: 1px solid var(--av-line);
    border-radius: var(--av-radius);
    padding: 20px;
    transition: transform .2s ease, border-color .2s ease;
}
.av-card:hover { transform: translateY(-2px); border-color: rgba(225, 29, 72, .35); }
.av-card h3 { font-size: 18px; }
.av-skin { padding: 0; overflow: hidden; color: inherit; }
.av-skin img, .av-skin-ph {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 10;
    object-fit: cover;
    background: #18181b;
}
.av-skin-ph {
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--av-muted);
    font-size: 13px;
}
.av-skin-body { display: flex; flex-direction: column; gap: 6px; padding: 14px 16px 16px; }
.av-skin-body strong { font-size: 16px; }
.av-skin-detail img {
    display: block;
    width: min(100%, 960px);
    height: auto;
    border-radius: 16px;
    border: 1px solid var(--av-line);
    margin-bottom: 22px;
}
.av-topic-list, .av-forum { display: grid; gap: 14px; }
.av-topic { display: flex; flex-direction: column; gap: 6px; }
.av-topic strong { font-size: 18px; }
.av-post-box { margin-top: 28px; padding-top: 8px; }
.av-post-box h2 { font-size: 22px; }
.av-post-form { max-width: 720px; display: grid; gap: 8px; }
.av-post-form textarea { min-height: 160px; }
.av-forum-status { color: var(--av-ok); }
.av-forum-error { color: #fb7185; }
.av-banner-list { display: grid; gap: 16px; }
.av-banner { display: block; border-radius: 16px; overflow: hidden; border: 1px solid var(--av-line); }
.av-banner img { display: block; width: 100%; height: auto; }
.av-path span, .av-repo-role {
    display: inline-block;
    color: var(--av-gold);
    font-weight: 700;
    letter-spacing: .06em;
    font-size: 12px;
    margin-bottom: 8px;
}
.av-path p:last-child { margin-bottom: 0; }
.av-repo-grid {
    display: grid;
    grid-template-columns: minmax(0, 560px);
    gap: 16px;
    margin-inline: auto;
}
.av-repo-grid.is-compact { grid-template-columns: minmax(0, 560px); }
.av-repo {
    display: flex;
    flex-direction: column;
    min-width: 0;
    gap: 12px;
    padding: 20px;
    border: 1px solid var(--av-line);
    border-radius: var(--av-radius);
    background: var(--av-card);
}
.av-repo.is-primary { border-color: rgba(225, 29, 72, .4); }
.av-repo h3 { font-size: 20px; margin: 0; }
.av-repo-name { margin: 0; }
.av-repo-links { display: flex; flex-wrap: wrap; gap: 14px; margin: 0; }
.av-repo-links a, .av-path a { color: var(--av-rose); }
.av-feat { padding: 22px; }
.av-feat span {
    display: block;
    color: var(--av-gold);
    font-weight: 800;
    letter-spacing: .08em;
    font-size: 12px;
    margin-bottom: 10px;
}

.av-table-wrap { overflow: auto; border-radius: 16px; border: 1px solid var(--av-line); }
table.av-table { width: 100%; border-collapse: collapse; min-width: 720px; }
.av-table th, .av-table td { padding: 14px 16px; text-align: left; border-bottom: 1px solid var(--av-line); font-size: 14px; }
.av-table th { background: #18181b; color: #d4d4d8; }
.av-table td { background: rgba(9, 9, 11, .7); }
.av-table tr:last-child td { border-bottom: 0; }
.av-ok { color: var(--av-ok); }

.av-code {
    border: 1px solid var(--av-line);
    border-radius: 14px;
    background: #111114;
    overflow: hidden;
}
.av-code-bar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 8px 12px;
    background: #18181b;
    color: var(--av-muted);
    font-size: 12px;
}
.av-code-bar button {
    border: 0;
    background: transparent;
    color: var(--av-rose);
    cursor: pointer;
    font: inherit;
}
.av-code pre {
    margin: 0;
    padding: 16px;
    overflow-x: auto;
    overflow-wrap: anywhere;
    white-space: pre-wrap;
    word-break: break-all;
    font-size: 13px;
    line-height: 1.7;
    color: #f4f4f5;
}
.av-code code { font-family: ui-monospace, SFMono-Regular, Consolas, monospace; word-break: break-all; }
.av-list { margin: 0; padding-left: 18px; color: #d4d4d8; }
.av-list li { margin: 6px 0; }

.av-acc { border: 1px solid var(--av-line); border-radius: 14px; background: rgba(255,255,255,.03); overflow: hidden; }
.av-acc + .av-acc { margin-top: 10px; }
.av-acc button {
    width: 100%;
    text-align: left;
    background: none;
    border: 0;
    color: inherit;
    padding: 16px 18px;
    font: inherit;
    font-weight: 700;
    cursor: pointer;
}
.av-acc-body { display: none; padding: 0 18px 16px; color: #d4d4d8; }
.av-acc.is-open .av-acc-body { display: block; }

.av-steps { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; }
.av-steps article {
    padding: 18px;
    border-radius: 16px;
    border: 1px solid var(--av-line);
    background: rgba(255,255,255,.03);
}
.av-steps b { color: var(--av-gold); }

.av-page-hero { padding: 48px 0 12px; }
.av-crumb { color: var(--av-muted); font-size: 13px; margin-bottom: 12px; }
.av-crumb a:hover { color: #fff; }

.av-cta-band {
    display: flex;
    justify-content: space-between;
    gap: 24px;
    align-items: center;
    padding: 28px;
    border-radius: 22px;
    border: 1px solid rgba(225, 29, 72, .28);
    background: linear-gradient(135deg, rgba(225, 29, 72, .16), rgba(24, 24, 27, .9));
}
.av-cta-actions { display: flex; flex-wrap: wrap; gap: 10px; }

.av-notice {
    padding: 14px 16px;
    border-radius: 12px;
    border: 1px solid rgba(251, 191, 36, .28);
    background: rgba(251, 191, 36, .08);
    color: #fde68a;
    font-size: 14px;
}

.av-show-grid, .av-cap-grid, .av-start-grid, .av-community { display: grid; gap: 16px; }
.av-show-grid, .av-start-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.av-cap-grid, .av-community { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.av-community { margin-top: 16px; }
.av-jump {
    display: flex;
    flex-direction: column;
    gap: 6px;
    min-height: 100%;
    color: inherit;
}
.av-jump span { color: var(--av-gold); font-size: 12px; font-weight: 700; letter-spacing: .06em; }
.av-jump strong { font-size: 18px; }
.av-jump p { margin: 0; color: var(--av-muted); }
.av-jump:hover { color: inherit; }
.av-migrate { margin: 18px 0 8px; padding-left: 20px; color: #d4d4d8; }
.av-migrate li { margin: 8px 0; }
.av-links, .av-news-mini { margin: 8px 0 0; padding: 0; list-style: none; }
.av-links { display: flex; flex-wrap: wrap; gap: 8px 16px; }
.av-news-mini { display: grid; gap: 8px; }
.av-links a, .av-news-mini a { color: var(--av-rose); font-weight: 600; }
.av-links a:hover, .av-news-mini a:hover, .av-card a:hover { text-decoration: underline; text-underline-offset: 3px; }

.av-footer {
    padding: 48px 0 88px;
    border-top: 1px solid var(--av-line);
    background: #09090b;
}
.av-footer-grid {
    display: grid;
    grid-template-columns: 1.4fr 1fr 1fr 1fr;
    gap: 24px;
}
.av-footer strong { display: block; margin-bottom: 10px; }
.av-footer a { display: block; color: #d4d4d8; margin: 6px 0; font-size: 14px; }
.av-footer a:hover { color: #fff; }
.av-copy { margin-top: 28px; padding-top: 16px; border-top: 1px solid var(--av-line); color: var(--av-muted); font-size: 13px; }

.av-consult {
    position: fixed;
    right: 18px;
    bottom: 18px;
    z-index: 70;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 8px;
    max-width: calc(100vw - 24px);
}
.av-consult-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    padding: 0;
    border: 0;
    border-radius: 999px;
    background: #e11d48;
    color: #fff;
    cursor: pointer;
    box-shadow: 0 10px 28px rgba(0, 0, 0, .35);
}
.av-consult-toggle svg { width: 20px; height: 20px; display: block; }
.av-consult-toggle:hover { transform: translateY(-1px); }
.av-consult-panel {
    display: grid;
    gap: 8px;
    min-width: 168px;
    padding: 10px;
    border-radius: 16px;
    border: 1px solid var(--av-line);
    background: #18181b;
    box-shadow: var(--av-shadow);
}
.av-consult-panel[hidden] { display: none; }
.av-consult-panel a {
    display: flex;
    align-items: center;
    min-height: 40px;
    padding: 0 12px;
    border-radius: 999px;
    color: #fff;
    font-weight: 600;
}
.av-consult-panel a.is-group { background: #229ed9; }
.av-consult-panel a.is-dm { background: #e11d48; }
.av-consult-panel a:hover { filter: brightness(1.08); }
.av-lightbox {
    position: fixed;
    inset: 0;
    z-index: 90;
    background: rgba(0,0,0,.82);
    display: grid;
    place-items: center;
    padding: 24px;
}
.av-lightbox[hidden] { display: none; }
.av-lightbox img { max-width: min(1100px, 92vw); max-height: 80vh; border-radius: 12px; }
.av-lightbox-close {
    position: absolute;
    top: 16px;
    right: 16px;
    width: 40px;
    height: 40px;
    border: 0;
    border-radius: 50%;
    background: #18181b;
    color: #fff;
    font-size: 22px;
    cursor: pointer;
}

.av-inner .breadcrumb, .av-inner .grid, .av-inner .content, .av-inner .card-soft { max-width: none; }
.av-inner .grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.av-inner .card-soft, .av-inner article.card-soft {
    background: var(--av-card);
    border: 1px solid var(--av-line);
    border-radius: 16px;
    padding: 18px;
}
.av-docs-hubs {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
    margin-top: 22px;
}
.av-docs-hub {
    display: grid;
    gap: 8px;
    padding: 16px 18px;
    border: 1px solid var(--av-line);
    border-radius: 14px;
    background: rgba(255,255,255,.03);
    color: #e4e4e7;
}
.av-docs-hub strong { font-size: 16px; color: #fff; }
.av-docs-hub span { font-size: 13px; color: var(--av-muted); line-height: 1.5; }
.av-docs-hub:hover, .av-docs-hub.is-on {
    border-color: rgba(225, 29, 72, .45);
    background: rgba(225, 29, 72, .12);
    color: #fff;
}
.av-docs {
    display: grid;
    grid-template-columns: 220px minmax(0, 1fr);
    gap: 36px;
    align-items: start;
}
.av-docs-nav {
    position: sticky;
    top: 88px;
    display: grid;
    gap: 18px;
    padding: 16px;
    border: 1px solid var(--av-line);
    border-radius: 16px;
    background: rgba(255,255,255,.03);
}
.av-docs-group { display: grid; gap: 4px; }
.av-docs-group strong { font-size: 12px; color: var(--av-muted); letter-spacing: .08em; }
.av-docs-nav a {
    padding: 6px 8px;
    border-radius: 8px;
    color: #d4d4d8;
    font-size: 14px;
}
.av-docs-nav a:hover, .av-docs-nav a[aria-current="page"] {
    color: #fff;
    background: rgba(225, 29, 72, .16);
}
.av-docs-body h3 { margin: 28px 0 12px; }
.av-docs-body a { color: var(--av-rose); }
.av-docs-body .muted, .av-docs-body .hint, .av-docs-body .field-hint { color: var(--av-muted); }
.av-docs-body .code { margin: 12px 0 18px; border: 1px solid var(--av-line); border-radius: 14px; background: #111114; overflow: hidden; }
.av-docs-body .code pre { margin: 0; padding: 14px 16px; overflow: auto; }
.av-docs-body table.help-doc { width: 100%; border-collapse: collapse; }
.av-docs-body table.help-doc th, .av-docs-body table.help-doc td { padding: 12px 14px; border-bottom: 1px solid var(--av-line); text-align: left; }
.av-docs-body .av-table-wrap, .av-docs-body .av-code { margin: 12px 0 18px; }
.av-docs-body .av-acc { margin-top: 10px; }

.av-inner .content { color: #e4e4e7; }
.av-inner .content a { color: var(--av-rose); }
.cms-form input, .cms-form textarea, .cms-form select,
.cms-comments input, .cms-comments textarea {
    background: #18181b;
    border: 1px solid var(--av-line);
    color: #fff;
    border-radius: 10px;
    padding: 10px 12px;
}
.cms-form button, .cms-comments button, .btn {
    background: var(--av-accent);
    color: #fff;
    border: 0;
    border-radius: 999px;
    padding: 10px 16px;
}

@media (max-width: 1180px) {
    .av-nav, .av-header-cta { display: none; }
    .av-nav-toggle { display: inline-flex; align-items: center; justify-content: center; }
}
@media (max-width: 980px) {
    .av-nav, .av-header-cta { display: none; }
    .av-nav-toggle { display: inline-flex; align-items: center; justify-content: center; }
    .av-drawer {
        display: none;
        position: fixed;
        inset: 72px 16px auto;
        z-index: 79;
        padding: 16px;
        border-radius: 16px;
        border: 1px solid var(--av-line);
        background: #111114;
        box-shadow: var(--av-shadow);
    }
    .av-drawer.is-open { display: grid; gap: 8px; }
    .av-drawer a { padding: 10px 8px; color: #fafafa; }
    .av-wrap,
    .av-header > .av-wrap,
    .av-footer > .av-wrap { width: min(1280px, calc(100% - 28px)); }
    .av-hero-grid, .av-grid-4, .av-grid-3, .av-grid-2, .av-trust-grid, .av-steps, .av-footer-grid, .av-cta-band, .av-inner .grid, .av-docs, .av-docs-hubs, .av-repo-grid, .av-repo-grid.is-compact, .av-show-grid, .av-cap-grid, .av-start-grid, .av-community, .av-extension-band, .av-migration-grid {
        grid-template-columns: minmax(0, 1fr);
    }
    .av-hero h1, .av-hero .av-lead, .av-product-preview figcaption { max-width: calc(100vw - 48px); }
    .av-hero h1 { font-size: 30px; }
    .av-hero-grid > * { min-width: 0; max-width: 100%; }
    .av-mock, .av-posters, .av-poster { min-width: 0; max-width: 100%; }
    .av-hero-actions, .av-section-cta { flex-direction: column; align-items: stretch; }
    .av-hero-actions .av-btn, .av-section-cta .av-btn { width: 100%; flex: 1 1 auto; min-width: 0; }
    .av-brand { min-width: 0; flex: 1; font-size: 15px; gap: 8px; }
    .av-brand span { min-width: 0; line-height: 1.2; }
    .av-brand-icon { width: 34px; height: 34px; }
    .av-mock-nav { flex-wrap: wrap; }
    .av-card, .av-repo, .av-code, .av-section-head, .av-muted { overflow-wrap: anywhere; }
    .av-code { max-width: 100%; }
    .av-code pre { font-size: 12px; padding: 12px; }
    .av-docs-body .code pre { white-space: pre-wrap; word-break: break-all; }
    .av-docs-nav { position: static; }
    .av-posters { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .is-home .av-posters { grid-template-columns: repeat(4, minmax(0, 1fr)); }
    .av-section-cta .av-btn { justify-content: center; }
    .av-consult {
        right: max(10px, env(safe-area-inset-right));
        bottom: max(10px, env(safe-area-inset-bottom));
    }
    .site-main { padding-bottom: 24px; }
    .av-footer { padding-bottom: calc(84px + env(safe-area-inset-bottom, 0px)); }
}

/* Homepage: product evidence, clear paths, and a compact reading rhythm. */
.is-home { --av-wrap: 1280px; }
.is-home .av-home-hero {
    padding: 80px 0 64px;
    background: radial-gradient(ellipse at 80% 38%, rgba(225,29,72,.09), transparent 60%);
}
.is-home .av-hero-grid { grid-template-columns: .95fr 1.05fr; gap: 48px; }
.is-home .av-hero h1 { margin-top: 16px; max-width: 580px; font-size: clamp(36px, 4.2vw, 56px); line-height: 1.18; letter-spacing: -.035em; text-wrap: balance; }
.is-home .av-hero .av-lead { margin: 22px 0; font-size: 16px; line-height: 1.9; max-width: 520px; color: #b8b8c3; }
.is-home .av-hero-actions { margin: 26px 0 18px; flex-direction: row; }
.is-home .av-hero-actions .av-btn { min-height: 48px; padding: 0 24px; }
.is-home .av-hero-links { font-size: 13px; }
.is-home .av-hero-links a { color: #b8b8c3; font-weight: 500; }
.is-home .av-hero-links a:hover { color: #fb7185; }
.is-home .av-hero-meta { display: flex; flex-wrap: wrap; gap: 8px; margin: 24px 0 12px; }
.is-home .av-hero-meta span { border: 1px solid var(--av-line); padding: 3px 10px; border-radius: 6px; font-size: 11px; color: #b8b8c3; background: rgba(255,255,255,.025); }
.av-migration-link { display: inline-block; font-size: 12px; color: #a1a1aa; padding: 4px 0; }
.av-migration-link:hover { color: #fb7185; }
.av-migration-link span { margin-left: 8px; }
.av-product-preview { margin: 0; min-width: 0; border: 1px solid rgba(255,255,255,.13); border-radius: 16px; overflow: hidden; background: #101014; box-shadow: 0 24px 70px #0008, 0 0 60px #e11d4808; }
.av-preview-bar { display: flex; align-items: center; gap: 8px; padding: 13px 16px; font-size: 11px; color: #d4d4d8; border-bottom: 1px solid var(--av-line); }
.av-live-dot { width: 6px; height: 6px; border-radius: 50%; background: #fb7185; box-shadow: 0 0 10px #fb718555; }
.av-preview-label { margin-left: auto; color: #a1a1aa; }
.av-product-preview > a { display: block; position: relative; }
.av-product-preview img { display: block; width: 100%; height: auto; }
.av-preview-open { position: absolute; right: 14px; bottom: 14px; border: 1px solid #ffffff30; background: #18181bea; padding: 7px 12px; border-radius: 8px; color: #fff; font-size: 12px; transition: background .2s; }
.av-product-preview a:hover .av-preview-open { background: #be123c; }
.av-product-preview figcaption { padding: 11px 16px; border-top: 1px solid var(--av-line); color: #a1a1aa; font-size: 11px; }
.is-home .av-section { padding: 56px 0; scroll-margin-top: 88px; }
.is-home #show { border-top: 1px solid var(--av-line); }
.is-home .av-section-head { margin-bottom: 28px; }
.is-home .av-section-head h2 { font-size: clamp(25px, 2.8vw, 34px); margin-top: 12px; line-height: 1.35; letter-spacing: -.025em; text-wrap: balance; }
.is-home .av-section-head .av-lead { color: #a1a1aa; font-size: 14px; margin: 12px 0 0; }
.is-home .av-show-grid { counter-reset: capability; gap: 14px; }
.is-home .av-jump { position: relative; padding: 24px; background: linear-gradient(135deg, #19191e, #121215); border-radius: 12px; transition: border-color .2s, transform .2s; }
.is-home .av-jump::before { counter-increment: capability; content: '0' counter(capability); position: absolute; right: 22px; top: 20px; font-size: 12px; color: #676770; font-variant-numeric: tabular-nums; }
.is-home .av-jump:hover { border-color: #fb71855c; transform: translateY(-3px); }
.is-home .av-jump > span { color: #fb7185; font-size: 12px; }
.is-home .av-jump strong { display: block; font-size: 18px; color: #f4f4f5; margin-top: 14px; }
.is-home .av-jump p { font-size: 13px; line-height: 1.8; color: #a1a1aa; margin-bottom: 0; }
.is-home .av-section-cta { margin-top: 24px; flex-direction: row; }
.is-home .av-card { border-radius: 12px; }
.av-extension-band { display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: 64px; }
.av-extension-band h2 { margin-top: 12px; font-size: clamp(26px, 3vw, 34px); }
.av-extension-band p { font-size: 14px; max-width: 420px; }
.av-text-link { color: #fb7185; font-size: 14px; font-weight: 600; text-underline-offset: 4px; }
.av-text-link:hover { text-decoration: underline; }
.av-extension-list { border-top: 1px solid var(--av-line); }
.av-extension-list > div { display: grid; grid-template-columns: 110px 1fr; gap: 16px; padding: 18px 0; border-bottom: 1px solid var(--av-line); font-size: 13px; }
.av-extension-list strong { color: #e4e4e7; }
.av-extension-list span { color: #a1a1aa; }
.is-home .av-start-grid .av-path { position: relative; background: none; border: none; border-top: 1px solid #ffffff20; border-radius: 0; padding: 22px 0 0; }
.is-home .av-start-grid .av-path > span { display: block; color: #fb7185; font-size: 12px; margin-bottom: 14px; }
.is-home .av-start-grid .av-path h3 { font-size: 19px; }
.is-home .av-start-grid .av-path p { font-size: 14px; line-height: 1.8; max-width: 330px; }
.is-home .av-start-grid { gap: 32px; }
.av-migration-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 48px; }
.av-migration-note { border-left: 2px solid #fb7185; background: #fb718508; padding: 24px; border-radius: 0 12px 12px 0; }
.av-migration-note h3 { margin-top: 14px; font-size: 22px; }
.av-migration-note p { font-size: 13px; line-height: 1.9; }
.av-migration-note p:last-child { margin-bottom: 0; }
.av-migration-steps { list-style: none; counter-reset: step; padding: 0; margin: 0; }
.av-migration-steps li { position: relative; padding: 0 0 22px 40px; }
.av-migration-steps li:last-child { padding-bottom: 0; }
.av-migration-steps li::before { counter-increment: step; content: counter(step); position: absolute; left: 0; top: 0; display: grid; place-items: center; width: 26px; height: 26px; border-radius: 50%; border: 1px solid #fb718540; color: #fb7185; font-size: 12px; }
.av-migration-steps strong { display: block; font-size: 15px; color: #e4e4e7; }
.av-migration-steps span { display: block; font-size: 13px; color: #a1a1aa; margin-top: 5px; line-height: 1.8; }
.is-home #docs .av-card h3 { font-size: 18px; }
.is-home #docs .av-card p, .is-home .av-news-mini { font-size: 14px; }
.is-home .av-footer { border-top: 1px solid var(--av-line); }
.av-card .av-btn-primary { color: #fff; }
:where(a, button, summary, input, textarea, select):focus-visible { outline: 2px solid #fb7185; outline-offset: 5px; }
@media (min-width: 981px) and (max-width: 1180px) {
    .av-drawer.is-open { display: grid; gap: 4px; position: fixed; inset: 72px 16px auto; z-index: 79; padding: 16px; max-height: calc(100dvh - 92px); overflow-y: auto; border: 1px solid var(--av-line); border-radius: 16px; background: #111114; }
    .av-drawer a { padding: 8px; }
}
@media (max-width: 980px) {
    .is-home .av-home-hero { padding: 44px 0 40px; }
    .is-home .av-hero-grid { grid-template-columns: minmax(0, 1fr); gap: 32px; }
    .is-home .av-hero h1 { max-width: 620px; font-size: clamp(32px, 6vw, 48px); }
    .is-home .av-hero .av-lead { max-width: 620px; }
    .av-product-preview { max-width: 700px; width: 100%; }
    .is-home .av-show-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .is-home .av-start-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
    .av-extension-band, .av-migration-grid { gap: 28px; }
    .av-drawer { max-height: calc(100dvh - 92px); overflow-y: auto; }
}
@media (max-width: 600px) {
    .is-home .av-wrap,
    .is-home .av-header > .av-wrap,
    .is-home .av-footer > .av-wrap { width: min(1280px, calc(100% - 28px)); }
    .is-home .av-section { padding: 38px 0; }
    .is-home .av-hero h1 { font-size: 36px; max-width: 390px; }
    .is-home .av-hero .av-lead { font-size: 14px; line-height: 1.9; margin: 18px 0; }
    .is-home .av-hero-actions { gap: 10px; margin-top: 22px; }
    .is-home .av-hero-actions .av-btn { width: auto; flex: 1 1 120px; padding: 0 16px; font-size: 14px; }
    .av-preview-bar { padding: 10px 12px; }
    .av-product-preview figcaption { padding: 10px 12px; line-height: 1.7; }
    .av-preview-open { right: 8px; bottom: 8px; padding: 5px 8px; font-size: 10px; }
    .is-home .av-show-grid, .is-home .av-start-grid, .av-extension-band, .av-migration-grid { grid-template-columns: minmax(0, 1fr); }
    .is-home .av-jump { padding: 20px; }
    .is-home .av-jump strong { margin-top: 8px; }
    .is-home .av-start-grid { gap: 22px; }
    .av-extension-list > div { grid-template-columns: 92px 1fr; gap: 8px; }
    .av-migration-note { padding: 20px; }
    .is-home .av-section-cta .av-btn { width: auto; flex: 1 1 130px; font-size: 13px; }
}
@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; }
    *, *::before, *::after { transition-duration: .01ms !important; animation-duration: .01ms !important; }
}

.is-home .av-home-hero h1 > span, .is-home .av-home-hero h1 > em { display: block; }
.is-home .av-home-hero h1 > em { margin-top: 6px; }

/* Community: dense discussion rows with a shared reading sidebar. */
.is-forum { --av-wrap: 1280px; }
.av-forum-hero { padding: 26px 0 32px; border-bottom: 1px solid var(--av-line); background: radial-gradient(ellipse at 10% 0, #e11d480b, transparent 65%); }
.av-forum-hero .av-crumb { display: flex; flex-wrap: wrap; gap: 10px; margin: 0 0 28px; font-size: 12px; color: #92929e; }
.av-forum-hero .av-crumb a:hover { color: #fb7185; }
.av-forum-hero-row { display: flex; justify-content: space-between; align-items: center; gap: 28px; }
.av-forum-hero h1 { margin: 12px 0; font-size: clamp(28px, 3vw, 38px); letter-spacing: -.025em; line-height: 1.35; }
.av-forum-hero p { color: #a1a1aa; font-size: 14px; margin: 0; }
.av-forum-hero-row > .av-btn { flex-shrink: 0; }
.av-forum-content { padding: 32px 0 64px; }
.av-forum-layout { display: grid; grid-template-columns: minmax(0, 1fr) 290px; gap: 24px; align-items: start; }
.av-forum-main { min-width: 0; display: grid; gap: 24px; }
.av-forum-panel { min-width: 0; border: 1px solid #ffffff12; background: #121215; border-radius: 14px; overflow: hidden; }
.av-forum-panel h2 { font-size: 17px; margin: 0; }
.av-discussion-toolbar { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 16px; padding: 20px 24px; border-bottom: 1px solid var(--av-line); }
.av-discussion-toolbar > div { display: flex; align-items: center; gap: 12px; }
.av-discussion-toolbar > div > span { color: #858591; font-size: 12px; }
.av-forum-tabs { display: flex; gap: 4px; padding: 3px; background: #09090b; border: 1px solid var(--av-line); border-radius: 8px; }
.av-forum-tabs a { padding: 5px 11px; color: #a1a1aa; font-size: 12px; border-radius: 5px; }
.av-forum-tabs a[aria-current=page] { background: #29292f; color: #fafafa; }
.av-forum-tabs a:hover { color: #fff; }
.av-discussion-row { display: grid; grid-template-columns: 38px minmax(0, 1fr) 90px; align-items: start; gap: 14px; padding: 24px; border-bottom: 1px solid var(--av-line); transition: background .2s; }
.av-discussion-row:last-child { border-bottom: 0; }
.av-discussion-row:hover { background: #ffffff02; }
.av-forum-avatar { display: grid; place-items: center; width: 38px; height: 38px; border-radius: 12px; border: 1px solid #fb718523; background: linear-gradient(135deg, #fb71851a, #27232e); color: #fda4af; font-size: 15px; font-weight: 600; flex-shrink: 0; }
.av-discussion-row:nth-child(3n+2) > .av-forum-avatar { color: #b5b4e9; background: #a5a4df12; border-color: #a5a4df23; }
.av-discussion-row:nth-child(3n) > .av-forum-avatar { color: #92c8c4; background: #92c8c412; border-color: #92c8c423; }
.av-discussion-summary { min-width: 0; }
.av-discussion-summary h3 { font-size: 16px; line-height: 1.5; font-weight: 600; margin: 0; overflow-wrap: anywhere; }
.av-discussion-summary h3 a { color: #ededf0; }
.av-discussion-summary h3 a:hover { color: #fb7185; }
.av-discussion-summary > p { font-size: 13px; color: #92929e; margin: 8px 0 12px; line-height: 1.65; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; overflow-wrap: anywhere; }
.av-topic-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; font-size: 11px; color: #92929e; }
.av-topic-badge { display: inline-flex; padding: 2px 7px; border: 1px solid #ffffff12; background: #ffffff04; border-radius: 4px; color: #a1a1aa; font-size: 10px; }
.av-discussion-counts { display: flex; justify-content: flex-end; gap: 18px; color: #858591; font-size: 10px; text-align: center; padding-top: 3px; }
.av-discussion-counts span { display: grid; gap: 3px; }
.av-discussion-counts b { color: #b8b8c3; font-size: 15px; font-weight: 500; font-variant-numeric: tabular-nums; }
.av-forum-sidebar { display: grid; gap: 18px; }
.av-forum-sidebar > .av-forum-panel { padding: 22px; }
.av-forum-sidebar h2 { font-size: 16px; }
.av-forum-welcome { background: radial-gradient(ellipse at top right, #e11d4817, transparent 75%), #141416; }
.av-forum-symbol { color: #fb7185; font-size: 26px; line-height: 1; }
.av-forum-welcome h2 { margin-top: 18px; }
.av-forum-welcome p { color: #a1a1aa; font-size: 13px; line-height: 1.9; margin: 12px 0 18px; }
.av-forum-welcome .av-btn { width: 100%; border-radius: 9px; font-size: 13px; }
.av-forum-welcome small { display: block; color: #858591; font-size: 10px; text-align: center; margin-top: 12px; }
.av-forum-resource { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 16px 0; font-size: 13px; border-bottom: 1px solid var(--av-line); color: #dddde3; }
.av-forum-resource:last-child { border-bottom: 0; padding-bottom: 0; }
.av-forum-resource small { display: block; margin-top: 3px; font-size: 11px; color: #858591; }
.av-forum-resource > span:last-child { color: #777781; }
.av-forum-resource:hover { color: #fb7185; }
.av-forum-guidelines { padding: 4px 8px; }
.av-forum-guidelines h2 { font-size: 13px; color: #b8b8c3; }
.av-forum-guidelines ul { margin: 12px 0 0; padding-left: 17px; color: #858591; font-size: 12px; line-height: 2; }
.av-forum-compose { padding: 24px; scroll-margin-top: 90px; }
.av-compose-heading { display: flex; align-items: center; gap: 14px; }
.av-compose-heading .av-forum-symbol { display: grid; place-items: center; width: 38px; height: 38px; background: #fb718510; border-radius: 10px; font-size: 22px; flex-shrink: 0; }
.av-compose-heading p { margin: 6px 0 0; font-size: 12px; color: #92929e; }
.av-forum-signin { margin-top: 22px; padding: 20px; border: 1px dashed #ffffff20; border-radius: 10px; text-align: center; background: #ffffff02; }
.av-forum-signin p { margin: 0 0 16px; color: #a1a1aa; font-size: 13px; }
.av-forum-signin > div { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; }
.is-forum .av-btn { border-radius: 8px; font-size: 13px; }
.is-forum .av-post-form { max-width: none; margin-top: 24px; gap: 6px; }
.is-forum .av-post-form input[type=text], .is-forum .av-post-form textarea { max-width: none; background: #0d0d10; font: inherit; font-size: 14px; }
.is-forum .av-post-form label { font-size: 13px; color: #d4d4d8; }
.av-compose-actions { display: flex; flex-wrap: wrap; gap: 14px; justify-content: space-between; align-items: center; margin-top: 14px; }
.av-compose-actions > span { color: #92929e; font-size: 12px; }
.av-forum-status, .av-forum-error { margin: 0; padding: 12px 16px; border-radius: 8px; background: #ffffff06; font-size: 13px; }
.av-forum-empty { padding: 48px 24px; text-align: center; }
.av-forum-empty > span { font-size: 30px; color: #fb7185; }
.av-forum-empty h3 { font-size: 18px; margin-top: 16px; }
.av-forum-empty p { font-size: 13px; color: #92929e; }
.av-forum-pagination { padding: 20px 24px; border-top: 1px solid var(--av-line); }
.av-thread-hero { padding: 22px 0; }
.av-thread-hero .av-crumb { margin-bottom: 14px; }
.av-thread-back { color: #b8b8c3; font-size: 12px; }
.av-thread-back:hover { color: #fb7185; }
.av-thread-article { padding: 30px; }
.av-thread-heading { padding-bottom: 24px; border-bottom: 1px solid var(--av-line); }
.av-thread-heading h1 { font-size: clamp(24px, 3vw, 32px); line-height: 1.45; margin: 14px 0 22px; overflow-wrap: anywhere; }
.av-thread-author { display: flex; align-items: center; gap: 12px; }
.av-thread-author strong { font-size: 13px; font-weight: 500; }
.av-thread-author .av-topic-meta { margin-top: 4px; }
.av-thread-author > .av-btn { margin-left: auto; }
.av-thread-body { padding: 24px 0 32px; min-height: 180px; font-size: 15px; line-height: 1.95; overflow-wrap: anywhere; }
.av-thread-body > :first-child { margin-top: 0; }
.av-thread-body pre { padding: 16px; border-radius: 8px; background: #09090b; max-width: 100%; overflow: auto; }
.av-thread-body code { background: #ffffff08; padding: 2px 5px; border-radius: 4px; color: #fda4af; font-size: .9em; }
.av-thread-body img { max-width: 100%; border-radius: 8px; }
.av-thread-body table { display: block; max-width: 100%; overflow-x: auto; }
.av-thread-footer { display: flex; justify-content: space-between; gap: 16px; margin: 0; padding: 18px 0 0; border-top: 1px solid var(--av-line); color: #858591; font-size: 12px; }
.av-thread-footer a { color: #fb7185; }
.av-thread-replies { padding: 24px 30px; scroll-margin-top: 90px; }
.is-forum .cms-comments { border: 0; padding: 0; margin-top: 24px; font-size: 14px; }
.is-forum .cms-comments form.cms-form { max-width: none !important; padding: 20px; background: #0c0c0f; border: 1px solid var(--av-line); border-radius: 10px; }
.is-forum .cms-comments .cms-comment { padding: 18px; border: 1px solid var(--av-line); border-radius: 10px; background: #ffffff02; overflow-wrap: anywhere; }
.is-forum .cms-comments .cms-comment-reply { border-left-color: #fb718540 !important; }
.is-forum .cms-comments input[type=text], .is-forum .cms-comments input[type=email], .is-forum .cms-comments textarea { max-width: none; font: inherit; font-size: 14px; background: #141419; }
.is-forum .cms-comments label { font-size: 12px; color: #a1a1aa; }
.is-forum .cms-favorite { font-size: 12px; margin-top: 0 !important; }
.is-forum .cms-favorite p { margin-top: 0; }
.is-forum .cms-favorite a { color: #fb7185; }
@media (max-width: 980px) {
    .av-forum-layout { grid-template-columns: minmax(0, 1fr) 240px; gap: 18px; }
    .av-forum-sidebar > .av-forum-panel { padding: 18px; }
    .av-discussion-row { grid-template-columns: 32px minmax(0,1fr); padding: 20px; gap: 12px; }
    .av-discussion-row > .av-forum-avatar { width: 32px; height: 32px; border-radius: 9px; font-size: 13px; }
    .av-discussion-counts { grid-column: 2; justify-content: flex-start; padding: 0; gap: 16px; }
    .av-discussion-counts span { display: flex; align-items: center; gap: 5px; }
    .av-discussion-counts b { font-size: 12px; }
    .av-thread-article, .av-thread-replies { padding: 22px; }
}
@media (max-width: 700px) {
    .is-forum .av-wrap,
    .is-forum .av-header > .av-wrap,
    .is-forum .av-footer > .av-wrap { width: min(1280px, calc(100% - 28px)); }
    .av-forum-layout { grid-template-columns: minmax(0, 1fr); }
    .av-forum-hero { padding: 20px 0 24px; }
    .av-forum-hero .av-crumb { margin-bottom: 20px; }
    .av-forum-hero-row { display: block; }
    .av-forum-hero h1 { font-size: 28px; }
    .av-forum-hero p { font-size: 13px; line-height: 1.9; }
    .av-forum-hero-row > .av-btn { margin-top: 20px; }
    .av-forum-content { padding-top: 20px; }
    .av-discussion-toolbar { padding: 18px; gap: 14px; }
    .av-discussion-toolbar > div { width: 100%; }
    .av-discussion-summary h3 { font-size: 15px; }
    .av-discussion-row { padding: 18px; }
    .av-topic-meta { gap: 6px; }
    .av-forum-compose { padding: 20px; }
    .av-forum-signin { padding: 18px 12px; }
    .av-forum-sidebar { margin-top: 8px; }
    .av-forum-welcome { display: none; }
    .av-thread-heading h1 { font-size: 24px; }
    .av-thread-author { flex-wrap: wrap; }
    .av-thread-author > .av-btn { width: 100%; margin-top: 6px; }
    .av-thread-article, .av-thread-replies { padding: 20px; }
    .av-thread-body { font-size: 14px; }
    .av-thread-footer { flex-wrap: wrap; }
    .is-forum .cms-comments form.cms-form { padding: 14px; }
}

/* Forum-specific replies; shared article comments retain their own presentation. */
.av-replies-heading { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 12px; margin-bottom: 24px; }
.av-replies-heading h2 { font-size: 18px; }
.av-replies-heading h2 > span { display: inline-block; margin-left: 6px; padding: 2px 8px; background: #ffffff08; border-radius: 6px; color: #a1a1aa; font-size: 12px; }
.av-replies-heading > span { color: #858591; font-size: 12px; }
.av-thread-replies > .av-forum-status, .av-thread-replies > .av-forum-error { margin-bottom: 18px; }
.av-reply { padding: 22px 0; border-bottom: 1px solid var(--av-line); scroll-margin-top: 90px; }
.av-reply:first-child { padding-top: 0; }
.av-reply:last-child { border-bottom: 0; }
.av-reply-header { display: flex; align-items: center; gap: 10px; }
.av-reply-header > div { min-width: 0; }
.av-reply-header strong { font-size: 13px; font-weight: 600; overflow-wrap: anywhere; }
.av-reply-header time { display: block; font-size: 11px; color: #858591; margin-top: 3px; }
.av-author-badge { display: inline-block; font-size: 10px; padding: 1px 6px; border-radius: 4px; background: #fb718518; color: #fda4af; margin-left: 8px; vertical-align: middle; }
.av-reply-floor { margin-left: auto; align-self: flex-start; font-size: 11px; color: #858591; white-space: nowrap; padding: 3px; }
.av-reply-floor:hover { color: #fb7185; }
.av-reply-text { font-size: 14px; line-height: 1.9; color: #d4d4d8; margin: 14px 0 10px 48px; white-space: pre-wrap; overflow-wrap: anywhere; }
.av-reply-quote { margin-left: 48px; padding: 4px 0; background: none; border: 0; font: inherit; font-size: 12px; color: #a1a1aa; cursor: pointer; }
.av-reply-quote:hover { color: #fb7185; }
.av-reply-children { margin: 18px 0 0 48px; padding: 18px; background: #ffffff03; border: 1px solid var(--av-line); border-radius: 9px; }
.av-reply-child { padding: 16px 0; border-bottom: 1px solid var(--av-line); scroll-margin-top: 90px; }
.av-reply-child:first-child { padding-top: 0; }
.av-reply-child:last-child { padding-bottom: 0; border-bottom: 0; }
.av-reply-child .av-forum-avatar { width: 30px; height: 30px; font-size: 12px; border-radius: 9px; }
.av-reply-child .av-reply-text { margin-left: 40px; }
.av-reply-empty { text-align: center; padding: 24px 10px; color: #92929e; font-size: 13px; }
.av-reply-empty > span { font-size: 26px; color: #fb7185; }
.av-reply-editor { padding-top: 24px; margin-top: 10px; border-top: 1px solid var(--av-line); scroll-margin-top: 90px; }
.av-reply-editor h3 { font-size: 16px; margin: 0 0 18px; }
.av-reply-identity { font-size: 12px; color: #92929e; }
.av-reply-identity strong { font-weight: 500; color: #d4d4d8; }
.av-reply-form label { display: block; margin: 0 0 8px; font-size: 12px; color: #b8b8c3; }
.av-reply-form label > span { color: #fb7185; }
.av-reply-form input:not([type=hidden]), .av-reply-form textarea { width: 100%; min-width: 0; border: 1px solid #ffffff20; border-radius: 8px; padding: 10px 12px; background: #0b0b0e; color: #f4f4f5; font: inherit; font-size: 14px; }
.av-reply-form textarea { resize: vertical; min-height: 130px; line-height: 1.8; }
.av-reply-form textarea::placeholder { color: #666670; }
.av-reply-form [aria-invalid=true] { border-color: #fb7185; }
.av-reply-guest-fields { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-bottom: 20px; }
.av-reply-context { padding: 12px 16px; border-left: 2px solid #fb7185; background: #fb718508; border-radius: 0 8px 8px 0; margin-bottom: 18px; }
.av-reply-context[hidden], .av-reply-submitting[hidden] { display: none; }
.av-reply-context > div { display: flex; justify-content: space-between; align-items: start; gap: 12px; }
.av-reply-context strong { font-size: 12px; font-weight: 500; color: #fda4af; overflow-wrap: anywhere; }
.av-reply-context button { border: 0; background: none; padding: 0; color: #a1a1aa; font: inherit; font-size: 11px; cursor: pointer; white-space: nowrap; }
.av-reply-context p { font-size: 12px; margin: 8px 0 0; color: #92929e; overflow-wrap: anywhere; white-space: pre-wrap; }
.av-reply-help { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 8px; color: #858591; font-size: 11px; margin: 6px 0 18px; }
.av-reply-captcha { display: flex; align-items: center; gap: 14px; margin-top: 14px; }
.av-reply-captcha > label { margin: 0; }
.av-reply-captcha input { max-width: 100px; }
.av-reply-submit { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 14px; margin-top: 20px; }
.av-reply-submit p, .av-reply-submitting { font-size: 11px; color: #92929e; margin: 0; }
.av-reply-submitting { margin-top: 12px; }
.av-reply-submit .av-btn[disabled] { cursor: wait; opacity: .6; transform: none; }
.av-forum-my-posts { color: #fb7185; font-size: 13px; justify-self: start; }
@media(max-width:600px) {
    .av-reply-guest-fields { grid-template-columns: minmax(0,1fr); gap: 14px; }
    .av-reply-text, .av-reply-child .av-reply-text { margin-left: 0; }
    .av-reply-quote { margin-left: 0; }
    .av-reply-children { margin-left: 8px; padding: 14px; }
    .av-reply-submit { align-items: stretch; }
    .av-reply-submit .av-btn { width: 100%; }
}

@media(max-width:700px) { .is-forum .av-consult { display: none; } }

/* Resource directory: original 15:1 banners, separate project shortcuts. */
.is-sources { --av-wrap: 1200px; }
.av-sources-hero { padding: 24px 0 30px; border-bottom: 1px solid var(--av-line); background: radial-gradient(ellipse at 10% 0, #e11d480b, transparent 65%); }
.av-sources-hero .av-crumb { display: flex; flex-wrap: wrap; gap: 10px; margin: 0 0 24px; font-size: 12px; color: #92929e; }
.av-sources-heading { display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.av-sources-heading h1 { margin: 12px 0 10px; font-size: clamp(28px, 3vw, 38px); letter-spacing: -.02em; }
.av-sources-heading p { color: #a1a1aa; font-size: 14px; margin: 0; }
.av-sources-heading > a { flex-shrink: 0; }
.is-sources .av-btn { border-radius: 8px; font-size: 13px; }
.av-sources-content { padding: 26px 0 48px; }
.av-sources-toolbar, .av-sources-toolbar > div { display: flex; align-items: center; gap: 12px; }
.av-sources-toolbar { justify-content: space-between; margin-bottom: 16px; }
.av-sources-toolbar h2 { font-size: 18px; margin: 0; }
.av-sources-toolbar > div > span { font-size: 12px; color: #92929e; }
.av-motion-toggle { border: 1px solid #ffffff15; border-radius: 7px; background: #ffffff03; color: #b8b8c3; min-height: 34px; padding: 6px 12px; font: inherit; font-size: 12px; cursor: pointer; }
.av-motion-toggle:hover { border-color: #fb71854a; color: #fff; }
.av-motion-toggle[hidden] { display: none; }
.av-source-directory { display: grid; gap: 16px; }
.av-source-card { min-width: 0; background: #121215; border: 1px solid #ffffff14; border-radius: 12px; overflow: hidden; transition: border-color .2s; }
.av-source-card:hover { border-color: #ffffff35; }
.av-source-card-heading { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 16px 18px; }
.av-source-identity { display: flex; align-items: center; gap: 12px; min-width: 0; }
.av-source-monogram { display: grid; place-items: center; width: 34px; height: 34px; flex-shrink: 0; border-radius: 9px; background: #fb718512; border: 1px solid #fb718521; color: #fda4af; font-size: 14px; }
.av-source-card:nth-child(2n) .av-source-monogram { background: #a5b4fc12; border-color: #a5b4fc21; color: #a5b4fc; }
.av-source-identity h3 { margin: 0; color: #ededf0; font-size: 15px; line-height: 1.5; overflow-wrap: anywhere; }
.av-source-domain { display: block; font-size: 11px; color: #92929e; margin-top: 3px; overflow-wrap: anywhere; }
.av-source-visit { flex-shrink: 0; color: #fda4af; background: #fb71850b; border: 1px solid #fb718530; border-radius: 7px; padding: 7px 12px; font-size: 12px; }
.av-source-visit:hover { background: #fb71851a; border-color: #fb718560; }
.av-source-visit > span { margin-left: 8px; }
.av-source-unavailable { font-size: 11px; color: #858591; }
.av-source-banner { display: block; margin: 0 18px 16px; overflow-x: auto; scrollbar-width: thin; scrollbar-color: #4c4c58 #17171b; border: 1px solid var(--av-line); border-radius: 5px; background: #0b0b0e; }
.av-source-banner img { display: block; width: 100%; height: auto; }
.av-source-banner img[hidden], .av-source-paused-placeholder[hidden] { display: none; }
.av-source-paused-placeholder { display: grid; place-items: center; min-height: 72px; padding: 14px; color: #a1a1aa; font-size: 14px; }
.av-source-description { margin: -2px 18px 16px; font-size: 12px; color: #a1a1aa; overflow-wrap: anywhere; }
.av-source-scroll-hint { display: none; }
.av-source-shortcuts { margin-top: 30px; padding-top: 26px; border-top: 1px solid var(--av-line); }
.av-sources-subheading { display: flex; align-items: center; flex-wrap: wrap; gap: 12px; margin-bottom: 16px; }
.av-sources-subheading h2 { font-size: 16px; margin: 0; }
.av-sources-subheading > span { color: #858591; font-size: 12px; }
.av-source-shortcut-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.av-source-shortcut { display: flex; align-items: center; gap: 12px; padding: 18px; background: #ffffff03; border: 1px solid #ffffff14; border-radius: 10px; min-width: 0; transition: border-color .2s, background .2s; }
.av-source-shortcut:hover { border-color: #fb71854a; background: #fb718506; }
.av-source-shortcut-icon { display: grid; place-items: center; width: 34px; height: 34px; border: 1px solid var(--av-line); border-radius: 8px; color: #a1a1aa; background: #ffffff03; font-size: 16px; flex-shrink: 0; }
.av-source-shortcut strong { font-size: 13px; font-weight: 600; color: #d4d4d8; }
.av-source-shortcut small { display: block; font-size: 11px; color: #858591; margin-top: 4px; overflow-wrap: anywhere; }
.av-shortcut-arrow { margin-left: auto; color: #777781; font-size: 14px; }
.av-source-bottom { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 16px; margin-top: 22px; font-size: 11px; }
.av-source-bottom p { color: #777781; margin: 0; }
.av-source-bottom a { color: #b8b8c3; }
.av-source-bottom a:hover { color: #fb7185; }
.av-source-empty { text-align: center; padding: 38px 20px; border: 1px dashed #ffffff20; border-radius: 12px; }
.av-source-empty > span { color: #fb7185; font-size: 28px; }
.av-source-empty h3 { font-size: 18px; margin-top: 14px; }
.av-source-empty p { color: #92929e; font-size: 13px; }
.av-sources-pagination { margin-top: 24px; padding: 12px 0; font-size: 13px; }
@media(max-width:700px) {
    .is-sources .av-wrap { width: calc(100% - 32px); }
    .av-sources-hero { padding: 20px 0 24px; }
    .av-sources-heading { display: block; }
    .av-sources-heading h1 { font-size: 30px; }
    .av-sources-heading p { font-size: 13px; line-height: 1.8; }
    .av-sources-heading > a { margin-top: 18px; }
    .av-sources-content { padding-top: 22px; }
    .av-source-card-heading { padding: 14px; gap: 10px; }
    .av-source-identity { gap: 9px; }
    .av-source-identity h3 { font-size: 14px; }
    .av-source-monogram { width: 30px; height: 30px; font-size: 12px; }
    .av-source-visit { padding: 6px 9px; font-size: 11px; }
    .av-source-visit > span { margin-left: 4px; }
    .av-source-banner { margin: 0 14px 14px; }
    .av-source-banner img { width: 100%; min-width: 720px; max-width: none; }
    .av-source-scroll-hint { display: block; margin: -4px 0 14px; font-size: 10px; color: #858591; }
    .av-source-shortcut-grid { grid-template-columns: minmax(0,1fr); gap: 10px; }
    .av-source-shortcut { padding: 14px; }
    .av-source-bottom { gap: 12px; }
    .is-sources .av-consult { display: none; }
}
/* Plugin catalog: searchable extensions, clear setup requirements. */
.is-plugins { --av-wrap: 1200px; }
.av-plugins-hero { padding: 24px 0 38px; border-bottom: 1px solid var(--av-line); background: radial-gradient(ellipse at 80% 20%, #e11d480d, transparent 65%); }
.av-plugins-hero .av-crumb { display: flex; flex-wrap: wrap; gap: 10px; margin: 0 0 32px; font-size: 12px; color: #92929e; }
.av-plugins-hero-grid { display: grid; grid-template-columns: 1.35fr 1fr; gap: 72px; align-items: center; }
.av-plugins-hero h1 { font-size: clamp(30px, 3.5vw, 44px); letter-spacing: -.025em; line-height: 1.25; margin: 14px 0 20px; }
.av-plugins-hero h1 em { display: block; font-style: normal; color: #fda4af; margin-top: 5px; }
.av-plugins-hero-grid > div > p { max-width: 560px; margin: 0; color: #a1a1aa; font-size: 14px; line-height: 1.9; }
.av-plugins-hero-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 22px; margin-top: 24px; }
.is-plugins .av-btn { border-radius: 8px; font-size: 13px; }
.av-plugins-doc-link { color: #b8b8c3; font-size: 13px; }
.av-plugins-doc-link:hover { color: #fb7185; }
.av-plugin-intro { padding: 26px; border: 1px solid #ffffff12; border-radius: 14px; background: linear-gradient(140deg, #1e151a, #121215); }
.av-plugin-intro h2 { margin: 14px 0 22px; font-size: 18px; line-height: 1.6; max-width: 290px; }
.av-plugin-intro-stats { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; padding-bottom: 18px; margin-bottom: 16px; border-bottom: 1px solid var(--av-line); }
.av-plugin-intro-stats > div { display: flex; align-items: baseline; gap: 10px; }
.av-plugin-intro-stats strong { font-size: 38px; font-weight: 650; line-height: 1.1; letter-spacing: -.03em; }
.av-plugin-intro-stats span { color: #92929e; font-size: 12px; }
.av-plugins-hero-grid .av-plugin-intro > p { font-size: 12px; line-height: 1.8; color: #92929e; }
.av-plugin-directory { padding: 32px 0 56px; scroll-margin-top: 86px; }
.av-plugin-directory-heading { display: flex; justify-content: space-between; align-items: center; gap: 24px; margin-bottom: 24px; }
.av-plugin-directory-heading h2 { font-size: 22px; margin: 0 0 8px; }
.av-plugin-directory-heading p { font-size: 13px; color: #92929e; margin: 0; }
.av-plugin-search { display: flex; align-items: center; gap: 10px; width: 360px; min-width: 0; padding: 6px 8px 6px 14px; border: 1px solid #ffffff20; border-radius: 9px; background: #111114; }
.av-plugin-search:focus-within { border-color: #fb718580; }
.av-plugin-search-label { position: absolute; width: 1px; height: 1px; padding: 0; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.av-plugin-search svg { width: 17px; height: 17px; flex-shrink: 0; fill: none; stroke: #777781; stroke-width: 1.6; stroke-linecap: round; }
.av-plugin-search input[type=search] { min-width: 0; flex: 1; background: none; border: none; padding: 4px 0; color: #e4e4e7; font: inherit; font-size: 12px; outline: none; }
.av-plugin-search input::placeholder { color: #777781; }
.av-plugin-search button { background: #ffffff06; border: 1px solid var(--av-line); border-radius: 5px; min-height: 30px; padding: 4px 10px; color: #b8b8c3; cursor: pointer; font: inherit; font-size: 11px; }
.av-plugin-filters { display: flex; flex-wrap: wrap; gap: 6px; padding: 10px 0 16px; border-bottom: 1px solid var(--av-line); position: sticky; top: 72px; z-index: 25; background: #09090bf5; backdrop-filter: blur(12px); }
.av-plugin-filters a { display: flex; align-items: center; gap: 9px; padding: 8px 13px; border: 1px solid transparent; border-radius: 7px; color: #a1a1aa; font-size: 13px; white-space: nowrap; }
.av-plugin-filters a > span { font-size: 10px; color: #777781; }
.av-plugin-filters a:hover { color: #ededf0; background: #ffffff04; }
.av-plugin-filters a[aria-current=page] { color: #fda4af; border-color: #fb718525; background: #fb71850d; }
.av-plugin-filters a[aria-current=page] > span { color: #fda4af; }
.av-plugin-results { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 10px; color: #858591; font-size: 11px; padding: 16px 0; }
.av-plugin-results b { color: #d4d4d8; font-weight: 500; }
.av-plugin-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 16px; align-items: start; }
.av-plugin-card { display: flex; flex-direction: column; min-width: 0; border: 1px solid #ffffff13; border-radius: 12px; background: linear-gradient(145deg, #19191e, #111114); padding: 22px 22px 0; transition: border-color .2s, box-shadow .2s; scroll-margin-top: 150px; }
.av-plugin-card[hidden], .av-plugin-empty[hidden] { display: none; }
.av-plugin-card:hover { border-color: #ffffff2f; box-shadow: 0 8px 24px #0002; }
.av-plugin-card-top { display: flex; align-items: center; gap: 10px; margin-bottom: 18px; }
.av-plugin-card-top small { font-size: 10px; color: #6e6e7a; margin-left: auto; }
.av-plugin-icon { display: grid; place-items: center; width: 36px; height: 36px; flex-shrink: 0; border-radius: 10px; border: 1px solid #fb718523; background: #fb718511; color: #fda4af; }
.av-plugin-icon svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; }
.av-plugin-icon.is-play { color: #c4b5fd; border-color: #c4b5fd25; background: #c4b5fd10; }
.av-plugin-icon.is-member { color: #f9ce8a; border-color: #f9ce8a25; background: #f9ce8a10; }
.av-plugin-icon.is-site { color: #8fcec0; border-color: #8fcec025; background: #8fcec010; }
.av-plugin-icon.is-tools { color: #98bcf1; border-color: #98bcf125; background: #98bcf110; }
.av-plugin-group { color: #858591; font-size: 11px; }
.av-plugin-card h3 { margin: 0 0 10px; font-size: 18px; color: #ededf0; }
.av-plugin-description { margin: 0; color: #a1a1aa; font-size: 13px; line-height: 1.8; min-height: 47px; }
.av-plugin-tags { display: flex; flex-wrap: wrap; gap: 6px; margin: 16px 0 14px; }
.av-plugin-tags > span { padding: 3px 7px; border-radius: 4px; border: 1px solid #ffffff0b; background: #ffffff02; color: #92929e; font-size: 10px; }
.av-plugin-availability { color: #858591; font-size: 10px; margin: 0 0 18px; }
.av-plugin-availability > span { display: inline-flex; align-items: center; gap: 6px; }
.av-plugin-availability > span::before { content: ''; width: 4px; height: 4px; border-radius: 50%; background: #777781; }
.av-plugin-availability .is-config { color: #a1a1aa; }
.av-plugin-availability .is-partial { color: #f9ce8a; }
.av-plugin-availability .is-partial::before { background: #f9ce8a; }
.av-plugin-details { border-top: 1px solid var(--av-line); margin-top: auto; }
.av-plugin-details summary { display: flex; justify-content: space-between; align-items: center; padding: 13px 0; font-size: 12px; color: #b8b8c3; list-style: none; cursor: pointer; }
.av-plugin-details summary::-webkit-details-marker { display: none; }
.av-plugin-details summary:hover { color: #fb7185; }
.av-plugin-details summary > span { color: #858591; font-size: 16px; transition: transform .2s; }
.av-plugin-details[open] summary { color: #fda4af; }
.av-plugin-details[open] summary > span { transform: rotate(45deg); }
.av-plugin-details > div { padding-bottom: 18px; }
.av-plugin-details p { margin: 0 0 12px; color: #a1a1aa; font-size: 12px; line-height: 1.9; overflow-wrap: anywhere; }
.av-plugin-details a { color: #fda4af; font-size: 11px; }
.av-plugin-empty { padding: 44px 20px; text-align: center; border: 1px dashed #ffffff20; border-radius: 12px; }
.av-plugin-empty > span { color: #fb7185; font-size: 34px; }
.av-plugin-empty h3 { font-size: 20px; margin-top: 14px; }
.av-plugin-empty p { color: #92929e; font-size: 13px; }
.av-plugin-empty a { color: #fb7185; font-size: 13px; }
.av-plugin-start { display: flex; justify-content: space-between; align-items: center; gap: 28px; padding: 28px; margin-top: 32px; border: 1px solid var(--av-line); border-radius: 12px; background: linear-gradient(120deg, #fb718506, #ffffff02); }
.av-plugin-start h2 { margin: 12px 0 10px; font-size: 22px; }
.av-plugin-start p { margin: 0; color: #92929e; font-size: 13px; line-height: 1.8; }
.av-plugin-start > a { flex-shrink: 0; }
@media(max-width:980px) {
    .av-plugins-hero-grid { gap: 28px; grid-template-columns: 1.2fr 1fr; }
    .av-plugin-intro { padding: 22px; }
    .av-plugin-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .av-plugin-directory-heading { gap: 16px; }
    .av-plugin-search { width: 320px; }
}
@media(max-width:700px) {
    .is-plugins .av-wrap { width: calc(100% - 32px); }
    .av-plugins-hero { padding: 20px 0 28px; }
    .av-plugins-hero .av-crumb { margin-bottom: 24px; }
    .av-plugins-hero-grid { grid-template-columns: minmax(0,1fr); }
    .av-plugins-hero h1 { font-size: 32px; }
    .av-plugins-hero-grid > div > p { font-size: 13px; }
    .av-plugin-intro { display: none; }
    .av-plugin-directory { padding-top: 26px; }
    .av-plugin-directory-heading { display: block; margin-bottom: 16px; }
    .av-plugin-search { margin-top: 18px; width: 100%; }
    .av-plugin-filters { flex-wrap: nowrap; overflow-x: auto; scrollbar-width: thin; padding-bottom: 12px; }
    .av-plugin-filters a { padding: 8px 10px; font-size: 12px; }
    .av-plugin-results > span:last-child { display: none; }
    .av-plugin-grid { grid-template-columns: minmax(0,1fr); gap: 14px; }
    .av-plugin-card { padding: 20px 20px 0; }
    .av-plugin-description { min-height: 0; }
    .av-plugin-start { display: block; padding: 22px; }
    .av-plugin-start h2 { font-size: 20px; }
    .av-plugin-start > a { margin-top: 18px; }
    .is-plugins .av-consult { display: none; }
}
.av-plugin-filters { scrollbar-color: #3f3f46 #0d0d10; }
.av-plugin-filters::-webkit-scrollbar { height: 3px; }
.av-plugin-filters::-webkit-scrollbar-thumb { background: #3f3f46; border-radius: 4px; }
/* Keep the directory and first row visible sooner on desktop. */
@media(min-width:701px) {
    .av-plugins-hero { padding-bottom: 28px; }
    .av-plugins-hero .av-crumb { margin-bottom: 20px; }
    .av-plugins-hero h1 { font-size: clamp(30px, 3.2vw, 40px); margin: 12px 0 14px; }
    .av-plugins-hero-actions { margin-top: 18px; }
    .av-plugin-intro { padding: 22px 26px; }
    .av-plugin-intro h2 { margin: 12px 0 16px; }
    .av-plugin-directory { padding-top: 26px; }
    .av-plugin-directory-heading { margin-bottom: 16px; }
    .av-plugin-filters { padding-top: 4px; padding-bottom: 12px; }
    .av-plugin-results { padding: 13px 0; }
    .av-plugin-card-top { margin-bottom: 14px; }
    .av-plugin-tags { margin-top: 14px; margin-bottom: 10px; }
    .av-plugin-availability { margin-bottom: 12px; }
}

/* Product overview */
.is-product .av-p-hero{padding:34px 0 46px;background:radial-gradient(ellipse at 75% 20%,#e11d4810,transparent 65%)}
.av-p-intro{display:grid;grid-template-columns:1.35fr .65fr;gap:80px;align-items:center;margin-top:32px}.is-product h1{font-size:clamp(36px,4.5vw,60px);line-height:1.18;letter-spacing:-.035em;margin:16px 0 22px}.is-product h1 em{font-style:normal;color:#fb7185}.av-p-intro .av-lead{max-width:620px;font-size:17px;line-height:1.9}.av-p-textlinks{display:flex;gap:24px;margin-top:20px;font-size:13px;color:#a1a1aa}.av-p-textlinks a:hover,.av-p-link:hover{color:#fb7185}
.av-p-flow{border:1px solid #ffffff12;background:#121215;border-radius:18px;padding:25px 28px}.av-p-eyebrow{font-size:12px;color:#a1a1aa}.av-p-flow>a{display:flex;align-items:center;gap:18px;padding:17px 0;border-bottom:1px solid #ffffff10}.av-p-flow>a>span:first-child{font-size:12px;color:#fb7185;font-variant-numeric:tabular-nums}.av-p-flow>a>span:last-child{margin-left:auto;color:#71717a}.av-p-flow>a:hover strong{color:#fb7185}.av-p-flow p{font-size:12px;color:#a1a1aa;margin:18px 0 0;line-height:1.7}
.av-p-nav{border-block:1px solid #ffffff0d;background:#101013}.av-p-nav .av-wrap{display:flex;gap:36px;overflow:auto}.av-p-nav a{padding:17px 0;white-space:nowrap;font-size:13px;color:#b4b4bd}.av-p-nav a:hover{color:#fb7185}.av-p-section{padding:56px 0;scroll-margin-top:90px}.is-product h2{font-size:clamp(25px,2.7vw,35px);line-height:1.35;letter-spacing:-.025em;margin:10px 0 16px}.av-p-preview-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:60px;align-items:center}.av-p-section-copy>p{font-size:14px;line-height:1.9;color:#a1a1aa;max-width:380px}.av-p-link{font-size:13px;color:#e4e4e7;display:inline-block;margin-top:10px}.av-p-shot{margin:0;border:1px solid #ffffff15;border-radius:14px;overflow:hidden;background:#121215}.av-p-shot-bar{display:flex;align-items:center;gap:9px;padding:12px 16px;font-size:11px;color:#a1a1aa}.av-p-shot-bar>span{width:6px;height:6px;border-radius:50%;background:#fb7185}.av-p-shot-bar b{font-weight:400;margin-left:auto}.av-p-shot img{display:block;width:100%;height:auto}.av-p-shot figcaption{font-size:11px;color:#a1a1aa;padding:12px 16px;line-height:1.6}
.av-p-core{background:#101013;border-block:1px solid #ffffff08}.av-p-heading{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:25px}.av-p-pill{font-size:11px;border:1px solid #ffffff15;color:#b4b4bd;border-radius:100px;padding:5px 10px;white-space:nowrap;display:inline-block}.av-p-features{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}.av-p-feature{padding:22px 0 0;border-top:2px solid #e11d4860;scroll-margin-top:100px}.av-p-feature-label{display:flex;align-items:center;gap:10px;font-size:12px;color:#a1a1aa}.av-p-feature-label span{color:#fb7185;font-variant-numeric:tabular-nums}.is-product h3{font-size:18px;line-height:1.55;margin:14px 0 12px}.av-p-feature p,.av-p-secondary p,.av-p-extensions p{color:#a1a1aa;font-size:13px;line-height:1.9;margin:0}.av-p-feature-tags{font-size:11px;color:#b4b4bd;margin-top:20px;line-height:1.8}.av-p-secondary{display:grid;grid-template-columns:1fr 1fr;gap:30px;border-top:1px solid #ffffff10;margin-top:35px;padding-top:28px}.av-p-secondary article{display:flex;gap:16px;scroll-margin-top:100px}.av-p-secondary article>span{color:#fb7185;font-size:22px}.av-p-secondary h3{margin-top:0;font-size:16px}.av-p-secondary a,.av-p-admin a{font-size:12px;color:#fda4af;display:inline-block;margin-top:12px}.av-p-admin{display:flex;align-items:center;gap:24px;background:#19191e;border:1px solid #ffffff0b;border-radius:12px;padding:20px 24px;margin-top:28px}.av-p-admin strong{font-size:13px;white-space:nowrap}.av-p-admin p{margin:0;color:#a1a1aa;font-size:12px;line-height:1.8}.av-p-admin a{white-space:nowrap;margin:0}.av-p-extensions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.av-p-extensions>a{padding:25px;border:1px solid #ffffff12;background:#121215;border-radius:14px;transition:border-color .2s,background .2s}.av-p-extensions>a:hover{background:#19191e;border-color:#fb718560}.av-p-extensions h3{font-size:17px}.av-p-extensions h3 span{float:right;color:#fb7185}.av-p-start{display:grid;grid-template-columns:1fr 1fr;gap:50px;padding:38px;background:linear-gradient(120deg,#e11d4812,#121215 65%);border:1px solid #e11d4828;border-radius:18px}.av-p-start p{color:#a1a1aa;font-size:14px;line-height:1.8}.av-p-start-options>a{display:block;padding:20px 0;border-bottom:1px solid #ffffff15}.av-p-start-options strong{display:block;font-size:16px;margin-bottom:8px}.av-p-start-options span{font-size:12px;color:#a1a1aa}.av-p-start-options a:hover strong{color:#fb7185}.is-product #start{padding-top:0}.is-product a:focus-visible{outline:2px solid #fb7185;outline-offset:5px}
@media(max-width:1000px){.av-p-intro{gap:35px;grid-template-columns:1.2fr .8fr}.av-p-preview-grid{gap:30px}.av-p-features{grid-template-columns:1fr 1fr}.av-p-admin{flex-wrap:wrap}.av-p-extensions>a{padding:20px}}
@media(max-width:700px){.av-p-intro,.av-p-preview-grid,.av-p-secondary,.av-p-start{grid-template-columns:1fr;gap:28px}.is-product .av-p-hero{padding:25px 0 32px}.av-p-intro{margin-top:25px}.is-product h1{font-size:38px}.av-p-intro .av-lead{font-size:15px}.av-p-flow{padding:20px}.av-p-flow>a{padding:12px 0}.av-p-section{padding:36px 0}.av-p-nav .av-wrap{gap:25px}.av-p-heading{align-items:flex-start;flex-wrap:wrap;gap:0}.av-p-features{gap:25px 20px}.is-product h3{font-size:16px}.av-p-extensions{grid-template-columns:1fr}.av-p-start{padding:25px}.av-p-admin{padding:20px;gap:10px}.is-product .av-consult{display:none}.av-p-section-copy>p{max-width:none}.av-p-section-copy h2 br{display:none}}
@media(max-width:380px){.av-p-features{grid-template-columns:1fr}.is-product h1{font-size:33px}}

/* Theme showcase */
.av-t-hero{padding:32px 0 24px;background:radial-gradient(ellipse at 80% 0,#e11d4810,transparent 70%)}.av-t-hero .av-kicker{margin-top:30px}.av-t-hero h1{font-size:clamp(30px,3.8vw,48px);line-height:1.25;letter-spacing:-.03em;margin:16px 0}.av-t-hero .av-lead{max-width:740px;font-size:16px;line-height:1.9}.av-t-section{padding:30px 0 42px}.av-t-featured{display:grid;grid-template-columns:1.2fr 1fr;border:1px solid #ffffff14;border-radius:18px;overflow:hidden;background:#121215}.av-t-preview{align-self:center;padding:24px;background:#0d0d10}.av-t-browser{display:flex;gap:8px;align-items:center;font-size:11px;color:#a1a1aa;padding:10px 0 14px}.av-t-browser>span{width:6px;height:6px;background:#fb7185;border-radius:50%}.av-t-browser b{margin-left:auto;font-weight:400}.av-t-preview img{width:100%;height:auto;display:block;border:1px solid #ffffff12;border-radius:8px}.av-t-preview p{font-size:11px;color:#a1a1aa;margin:12px 0 0}.av-t-feature-copy{padding:35px}.av-t-badge{font-size:11px;color:#fda4af;background:#e11d4812;border:1px solid #e11d4830;padding:5px 10px;border-radius:100px;display:inline-block}.is-themes h2{font-size:clamp(24px,2.5vw,32px);line-height:1.4;margin:14px 0}.av-t-feature-copy>p{color:#a1a1aa;font-size:14px;line-height:1.9}.av-t-feature-copy ul{padding:0;list-style:none;margin:22px 0}.av-t-feature-copy li{font-size:13px;color:#d4d4d8;padding:7px 0}.av-t-feature-copy li:before{content:'✓';color:#fb7185;margin-right:10px}.av-t-actions{display:flex;gap:10px;flex-wrap:wrap}.av-t-note{display:block;color:#a1a1aa;font-size:11px;line-height:1.7;margin-top:16px}.av-t-gallery{background:#101013;border-block:1px solid #ffffff08}.av-t-heading{display:flex;justify-content:space-between;gap:30px;align-items:center;margin-bottom:24px}.av-t-heading>p{max-width:380px;color:#a1a1aa;font-size:13px;line-height:1.9}.av-t-grid,.av-t-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.av-t-card{border:1px solid #ffffff12;border-radius:14px;overflow:hidden;background:#151518;transition:border-color .2s}.av-t-card:hover{border-color:#fb718570}.av-t-cover{position:relative;aspect-ratio:16/9;overflow:hidden;background:#1a1a20;display:grid;place-items:center}.av-t-cover img{display:block;width:100%;height:100%;object-fit:cover}.av-t-cover-label{position:absolute;left:12px;bottom:12px;background:#09090bea;border:1px solid #ffffff20;padding:5px 9px;border-radius:6px;font-size:10px;color:#d4d4d8}.av-t-card-body{padding:21px}.av-t-card h3{margin:0 0 10px;font-size:18px}.av-t-card h3>span{float:right;color:#71717a}.av-t-card p,.av-t-steps p{color:#a1a1aa;font-size:13px;line-height:1.9;margin:0}.av-t-card-link{display:block;font-size:12px;color:#fda4af;margin-top:20px}.av-t-steps>a{padding:22px 0;border-top:1px solid #ffffff20}.av-t-steps>a>span{font-size:12px;color:#fb7185}.av-t-steps h3{font-size:18px;margin:16px 0 10px}.av-t-steps b{display:block;font-size:12px;font-weight:500;color:#fda4af;margin-top:20px}.is-themes a:focus-visible{outline:2px solid #fb7185;outline-offset:5px}.av-t-empty{padding:25px;color:#a1a1aa;border:1px solid #ffffff15;border-radius:12px}.is-themes .av-section-cta:empty{display:none}
@media(max-width:1000px){.av-t-feature-copy{padding:25px}.av-t-preview{padding:18px}.av-t-grid{gap:16px}.av-t-card-body{padding:17px}}
@media(max-width:700px){.av-t-featured,.av-t-grid,.av-t-steps{grid-template-columns:1fr}.av-t-hero{padding-top:25px}.av-t-hero .av-lead{font-size:14px}.av-t-section{padding:24px 0 30px}.av-t-feature-copy{padding:24px}.av-t-heading{display:block;margin-bottom:20px}.av-t-heading>p{max-width:none}.av-t-steps{gap:5px}.is-themes .av-consult{display:none}.av-t-cover{aspect-ratio:16/8}.av-t-card-body{padding:21px}}

/* Open source hub */
.av-o-hero{padding:32px 0 48px;background:radial-gradient(ellipse at 80% 20%,#e11d4810,transparent 65%)}.av-o-grid{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center;margin-top:38px}.av-o-hero h1{font-size:clamp(32px,3.8vw,49px);line-height:1.3;letter-spacing:-.03em;margin:18px 0 22px}.av-o-hero h1 em{font-style:normal;color:#fb7185}.av-o-hero .av-lead{font-size:16px;line-height:1.9;max-width:550px}.av-o-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:25px}.av-o-meta{display:flex;gap:20px;color:#a1a1aa;font-size:12px;margin-top:24px}.av-o-repository{padding:28px;border:1px solid #ffffff16;border-radius:18px;background:linear-gradient(135deg,#19191f,#101013);min-width:0}.av-o-repo-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:25px}.av-o-repo-top>span:first-child{font-family:monospace;font-size:24px;color:#fb7185}.av-o-badge{font-size:11px;color:#fda4af;border:1px solid #e11d4840;background:#e11d4810;border-radius:100px;padding:5px 10px}.av-o-eyebrow{font-size:10px;letter-spacing:.12em;color:#a1a1aa}.av-o-repository h2{font-size:30px;margin:8px 0 12px;overflow-wrap:anywhere}.av-o-repository>p{color:#a1a1aa;font-size:13px;line-height:1.8}.av-o-address{font-size:12px;color:#d4d4d8;overflow-wrap:anywhere}.av-o-repository .av-code{margin-top:24px;background:#09090c;min-width:0}.av-o-repository .av-code pre{font-size:12px;padding:18px;overflow:auto;line-height:1.9}.av-o-repository .av-code-bar{padding:10px 16px}.av-o-repo-bottom{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:20px;font-size:12px}.av-o-repo-bottom>a{color:#fda4af}.av-o-repo-bottom>span{color:#71717a;font-size:11px}.av-o-section{padding:42px 0}.av-o-heading{margin-bottom:28px}.is-opensource h2{line-height:1.4}.av-o-heading h2,.av-o-resources h2{font-size:clamp(24px,2.5vw,32px);margin:12px 0}.av-o-paths{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.av-o-paths>article{border-top:2px solid #e11d4860;padding:24px 0}.av-o-number{font-size:11px;color:#fb7185;letter-spacing:.04em}.av-o-paths h3{font-size:20px;margin:18px 0 14px}.av-o-paths p{font-size:13px;color:#a1a1aa;line-height:1.9;min-height:100px;margin-bottom:22px}.av-o-paths a{display:block;font-size:13px;color:#fda4af;margin-top:14px}.av-o-paths a.av-o-secondary{font-size:12px;color:#a1a1aa}.av-o-bottom{background:#101013;border-top:1px solid #ffffff0b}.av-o-resources{display:grid;grid-template-columns:1.15fr .85fr;gap:90px;align-items:center}.av-o-resources p{font-size:13px;color:#a1a1aa;line-height:1.9;max-width:540px}.av-o-resource-links{display:grid;grid-template-columns:1fr 1fr;gap:14px}.av-o-resource-links a{font-size:13px;padding:17px 0;border-bottom:1px solid #ffffff18}.av-o-resource-links span{float:right;color:#fb7185}.is-opensource a:hover{color:#fb7185}.is-opensource a:focus-visible,.is-opensource button:focus-visible{outline:2px solid #fb7185;outline-offset:5px}
@media(max-width:1000px){.av-o-grid{gap:30px}.av-o-resources{gap:35px}.av-o-repository{padding:23px}.av-o-paths p{min-height:125px}}
@media(max-width:700px){.av-o-grid,.av-o-paths,.av-o-resources{grid-template-columns:1fr;gap:22px}.av-o-hero{padding:25px 0 30px}.av-o-grid{margin-top:28px}.av-o-hero .av-lead{font-size:14px}.av-o-actions{flex-direction:column}.av-o-hero h1{font-size:34px}.av-o-section{padding:32px 0}.av-o-paths>article{padding:22px 0 10px}.av-o-paths p{min-height:0}.av-o-paths h3{font-size:19px}.av-o-meta{flex-wrap:wrap}.av-o-repo-bottom{flex-wrap:wrap}.is-opensource .av-consult{display:none}}

/* Community sign in */
.av-auth-section{padding:54px 0 66px;background:radial-gradient(ellipse at 20% 30%,#e11d480b,transparent 60%)}.av-auth-grid{display:grid;grid-template-columns:1fr 440px;gap:100px;align-items:center;max-width:1040px}.av-auth-back{display:inline-block;color:#a1a1aa;font-size:13px;margin-bottom:46px}.av-auth-intro h2{font-size:clamp(36px,4vw,50px);line-height:1.25;letter-spacing:-.03em;margin:20px 0}.av-auth-intro h2 em{font-style:normal;color:#fb7185}.av-auth-intro>p{color:#a1a1aa;font-size:15px;line-height:1.9;max-width:390px}.av-auth-topics{display:flex;flex-wrap:wrap;gap:9px;margin-top:24px}.av-auth-topics span{padding:6px 11px;border:1px solid #ffffff12;border-radius:100px;color:#b4b4bd;font-size:11px}.av-auth-help{border-top:1px solid #ffffff10;margin-top:40px;padding-top:24px}.av-auth-help strong{font-size:13px}.av-auth-help p{color:#a1a1aa;font-size:12px;line-height:1.8}.av-auth-help a{font-size:12px;color:#fda4af}.av-auth-card{padding:32px;background:#131316;border:1px solid #ffffff15;border-radius:20px;box-shadow:0 20px 70px #0003;min-width:0}.av-auth-card-heading h1{font-size:28px;line-height:1.3;margin:17px 0 8px;letter-spacing:-.02em}.av-auth-card-heading>p{font-size:13px;color:#a1a1aa;margin:0 0 24px}.av-auth-mark{display:grid;place-items:center;width:38px;height:38px;border:1px solid #e11d4830;background:#e11d4812;color:#fb7185;border-radius:11px;font-size:22px}.av-auth-context{border-left:2px solid #fb7185;background:#e11d4809;padding:10px 12px;font-size:12px;color:#d4d4d8;line-height:1.7;margin:0 0 22px}.av-auth-field{margin-bottom:19px}.av-auth-field>label{display:block;font-size:13px;color:#d4d4d8;margin-bottom:9px}.av-auth-field input{display:block;width:100%;min-width:0;height:46px;padding:0 13px;border:1px solid #ffffff1c;background:#0b0b0e;border-radius:9px;color:#fafafa;font:inherit;font-size:16px;box-sizing:border-box;transition:border-color .15s,box-shadow .15s}.av-auth-field input::placeholder{color:#71717a;font-size:13px}.av-auth-field input:focus{outline:none;border-color:#fb7185;box-shadow:0 0 0 3px #e11d481b}.av-auth-field input[aria-invalid=true]{border-color:#fb7185}.av-auth-password{position:relative}.av-auth-password input{padding-right:66px}.av-auth-password button{position:absolute;right:5px;top:5px;height:36px;padding:0 10px;background:transparent;color:#b4b4bd;border:0;border-radius:6px;font-size:12px;cursor:pointer}.av-auth-password button:hover{color:#fb7185;background:#ffffff06}.av-auth-password button[hidden]{display:none}.av-auth-options{display:flex;justify-content:space-between;gap:16px;align-items:center;margin:0 0 22px;font-size:12px}.av-auth-options label{display:flex;align-items:center;gap:7px;color:#b4b4bd;cursor:pointer;min-height:30px}.av-auth-options input{accent-color:#e11d48;width:15px;height:15px;margin:0}.av-auth-options a{color:#a1a1aa;padding:6px 0}.av-auth-question{margin-left:10px;color:#fda4af;font-variant-numeric:tabular-nums}.av-auth-submit{width:100%;justify-content:center;min-height:46px;gap:12px;margin-top:3px}.av-auth-register{text-align:center;font-size:12px;color:#a1a1aa;border-top:1px solid #ffffff0d;margin:24px 0 0;padding-top:22px}.av-auth-register a{color:#fda4af;margin-left:7px}.av-auth-error{font-size:12px;line-height:1.7;color:#fda4af;margin:7px 0 0}.av-auth-alert,.av-auth-status{padding:12px;border:1px solid #e11d4840;border-radius:8px;font-size:13px;color:#fda4af;margin-bottom:20px;line-height:1.7}.av-auth-status{border-color:#ffffff20;color:#d4d4d8}.is-auth a:hover{color:#fb7185}.is-auth a:focus-visible,.is-auth button:focus-visible{outline:2px solid #fb7185;outline-offset:4px}.is-auth .av-consult{display:none}
@media(max-width:1000px){.av-auth-grid{gap:40px;grid-template-columns:1fr 420px}.av-auth-section{padding:35px 0 45px}}
@media(max-width:760px){.av-auth-grid{display:flex;flex-direction:column;gap:24px;max-width:480px;align-items:stretch}.av-auth-intro .av-kicker,.av-auth-intro h2,.av-auth-intro>p,.av-auth-topics,.av-auth-help{display:none}.av-auth-back{margin:0}.av-auth-card{padding:26px;border-radius:16px}.av-auth-section{padding:25px 0 38px}.av-auth-card-heading h1{font-size:26px}.is-auth .av-footer{padding-top:28px}}
@media(prefers-reduced-motion:reduce){.av-auth-field input{transition:none}}
.av-auth-intro .av-auth-back{display:block;width:fit-content}

/* News and reading */
.av-n-hero{padding:32px 0 34px;background:radial-gradient(ellipse at 70% 0,#e11d4810,transparent 70%)}.av-n-hero .av-kicker{margin-top:30px}.av-n-hero h1{font-size:clamp(32px,3.8vw,48px);line-height:1.3;letter-spacing:-.03em;margin:16px 0}.av-n-hero .av-lead{font-size:16px;line-height:1.9}.av-n-section{padding:20px 0 50px}.av-n-layout,.av-n-article-layout{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:45px}.av-n-list-heading{display:flex;align-items:center;justify-content:space-between;margin:0 0 20px}.av-n-list-heading h2{font-size:16px;margin:0}.av-n-list-heading>span{font-size:11px;color:#71717a}.av-n-item{padding:28px 0;border-bottom:1px solid #ffffff12}.av-n-item.is-featured{background:linear-gradient(120deg,#e11d4810,#141417 65%);border:1px solid #e11d4828;border-radius:14px;padding:28px;margin-bottom:8px}.av-n-meta{display:flex;align-items:center;gap:16px;color:#a1a1aa;font-size:12px;line-height:1.7}.av-n-meta time{font-variant-numeric:tabular-nums}.av-n-badge{font-size:10px;color:#fda4af;background:#e11d4815;border:1px solid #e11d4830;border-radius:100px;padding:3px 8px}.av-n-item h3{font-size:21px;line-height:1.55;margin:13px 0 12px}.av-n-item.is-featured h3{font-size:27px}.av-n-item h3 a{color:#fafafa}.av-n-item p{font-size:14px;color:#a1a1aa;line-height:1.9;margin:0}.av-n-read{display:inline-flex;gap:18px;color:#fda4af;font-size:12px;margin-top:19px}.av-n-sidebar{padding-top:40px;min-width:0}.av-n-sidebar>section{padding:23px;background:#131316;border:1px solid #ffffff12;border-radius:13px;margin-bottom:18px}.av-n-sidebar h2{font-size:18px;line-height:1.5;margin:10px 0 12px}.av-n-sidebar p{font-size:12px;color:#a1a1aa;line-height:1.9;margin:0 0 20px}.av-n-sidebar .av-btn{width:100%;box-sizing:border-box;justify-content:center;font-size:12px}.av-n-sidebar .av-kicker{font-size:10px}.av-n-links>a{display:block;padding:13px 0;border-bottom:1px solid #ffffff0b;font-size:13px;color:#d4d4d8}.av-n-links>a:last-child{border:0}.av-n-links>a span{float:right;color:#fb7185}.av-n-sidebar p.av-n-sidebar-note{font-size:11px;padding:0 10px;color:#71717a}.av-n-empty{padding:25px;color:#a1a1aa;border:1px solid #ffffff15;border-radius:12px}.av-n-article-hero{padding:30px 0 28px;background:radial-gradient(ellipse at 70% 0,#e11d480c,transparent 70%)}.av-n-back{font-size:12px;color:#a1a1aa;display:block;width:fit-content;margin-bottom:30px}.av-n-article-hero h1{font-size:clamp(29px,3.4vw,43px);line-height:1.4;max-width:900px;margin:16px 0 20px;overflow-wrap:anywhere}.av-n-summary{max-width:810px;color:#a1a1aa;font-size:16px;line-height:1.9;margin:22px 0 0}.av-n-article{min-width:0}.av-n-article .av-news-body{font-size:16px;line-height:2;color:#d4d4d8;max-width:none}.av-n-article .av-news-body p{margin:0 0 22px}.av-n-article .av-news-body pre{max-width:100%;overflow:auto;font-size:13px;white-space:pre-wrap;overflow-wrap:anywhere}.av-n-article .av-news-body img{max-width:100%;height:auto}.av-n-article-nav{border-block:1px solid #ffffff12;padding:22px 0;margin:32px 0;display:grid;grid-template-columns:1fr 1fr;gap:25px;font-size:13px;line-height:1.8}.av-n-article-nav>div>span{display:block;font-size:11px;color:#71717a;margin-bottom:7px}.av-n-comments{margin-top:28px}.is-news-detail .av-n-sidebar{padding-top:0}.is-news a:hover{color:#fb7185}.is-news a:focus-visible,.is-news button:focus-visible{outline:2px solid #fb7185;outline-offset:5px}
@media(max-width:1000px){.av-n-layout,.av-n-article-layout{gap:28px;grid-template-columns:minmax(0,1fr) 260px}}
@media(max-width:700px){.av-n-layout,.av-n-article-layout{grid-template-columns:1fr;gap:25px}.av-n-hero{padding:25px 0}.av-n-hero .av-lead{font-size:14px}.av-n-item.is-featured{padding:23px}.av-n-item.is-featured h3{font-size:23px}.av-n-item h3{font-size:19px}.av-n-item{padding:24px 0}.av-n-sidebar{padding-top:0}.av-n-section{padding-bottom:30px}.av-n-article-hero{padding-top:25px}.av-n-summary{font-size:14px}.av-n-article .av-news-body{font-size:15px}.av-n-article-nav{grid-template-columns:1fr;gap:20px}.is-news .av-consult{display:none}}

/* Homepage finishing details */
.is-home .av-home-hero{padding:60px 0 50px}.av-home-sections{border-block:1px solid #ffffff0d;background:#101013}.av-home-sections .av-wrap{display:flex;align-items:center;gap:35px;overflow-x:auto;scrollbar-width:thin}.av-home-sections a{font-size:12px;white-space:nowrap;color:#b4b4bd;padding:16px 0}.av-home-sections a:hover{color:#fb7185}.is-home #show{border-top:0}.is-home .av-jump::before{content:'↗';counter-increment:none;font-size:17px;color:#a1a1aa}.is-home .av-jump>span{display:inline-block;max-width:calc(100% - 24px)}.is-home .av-jump{display:flex;flex-direction:column}.is-home .av-jump strong{line-height:1.5}.is-home .av-jump p{margin-top:10px}.is-home .av-jump:focus-visible{border-color:#fb7185}.is-home .av-extension-list>a{display:grid;grid-template-columns:100px minmax(0,1fr) 16px;align-items:center;gap:15px;padding:19px 0;border-bottom:1px solid #ffffff12;font-size:13px}.is-home .av-extension-list>a>b{font-size:14px;font-weight:400;color:#71717a}.is-home .av-extension-list>a:hover strong,.is-home .av-extension-list>a:hover b{color:#fb7185}.is-home .av-start-grid .av-path{display:flex;flex-direction:column}.is-home .av-start-grid .av-path p{flex:1}.is-home .av-path-link{display:inline-block;width:fit-content;font-size:12px;color:#fda4af;margin-top:8px;padding:5px 0}.is-home #docs .av-grid-3 .av-card{display:flex;flex-direction:column}.is-home #docs .av-grid-3 .av-card>p:last-child{margin-top:auto;padding-top:10px}.is-home .av-news-mini li{display:flex;align-items:baseline;gap:18px;justify-content:space-between;padding:9px 0;border-bottom:1px solid #ffffff0a}.is-home .av-news-mini a{font-size:13px;font-weight:500;line-height:1.7;color:#d4d4d8}.is-home .av-news-mini time{font-size:11px;white-space:nowrap;color:#a1a1aa;font-variant-numeric:tabular-nums}.is-home .av-hero-links{display:flex;flex-wrap:wrap;gap:8px 20px}.is-home .av-hero-links a{padding:4px 0}.is-home .av-hero-meta{margin-top:16px}.is-home a:focus-visible{outline:2px solid #fb7185;outline-offset:5px}.is-home .av-migration-steps li::marker{content:''}.is-home .av-section-cta{flex-wrap:wrap}
@media(min-width:601px) and (max-width:980px){.is-home .av-hero-grid{grid-template-columns:1fr 1fr;gap:28px}.is-home .av-hero h1{font-size:clamp(30px,4.2vw,42px)}.is-home .av-hero .av-lead{font-size:14px}.is-home .av-preview-open{font-size:10px}.is-home .av-migration-grid{grid-template-columns:1fr 1fr}.is-home .av-hero-actions .av-btn{padding:0 15px;font-size:13px}}
@media(max-width:600px){.is-home .av-home-hero{padding:30px 0 32px}.is-home .av-hero-grid{gap:25px}.is-home .av-hero h1{font-size:clamp(30px,8vw,36px)}.is-home .av-hero .av-lead{margin:16px 0}.is-home .av-hero-actions{margin:20px 0 12px}.is-home .av-hero-meta{margin:12px 0 8px}.is-home .av-consult{display:none}.av-home-sections .av-wrap{gap:23px}.av-home-sections a{font-size:11px;padding:14px 0}.is-home .av-extension-list>a{grid-template-columns:80px minmax(0,1fr) 14px;gap:10px;font-size:12px}.is-home .av-migration-note h3{font-size:20px}.is-home .av-news-mini li{gap:12px}.is-home .av-hero-links{margin:8px 0}.is-home .av-community{gap:14px}}

/* Header actions are independent of page-level content buttons. */
.av-header .av-header-bar{height:72px;min-height:72px;flex-wrap:nowrap}.av-header .av-brand{flex-shrink:0;white-space:nowrap}.av-header .av-header-cta{flex:0 0 auto;align-items:center;gap:10px;margin-left:8px}.av-header .av-header-action{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;box-sizing:border-box;height:42px;min-height:42px;padding:0 16px;border:1px solid #ffffff14;border-radius:10px;font-family:inherit;font-size:14px;font-weight:600;line-height:1;letter-spacing:0;white-space:nowrap;text-decoration:none;color:#fafafa;background:#151518;transition:background .18s,border-color .18s,box-shadow .18s;transform:none}.av-header .av-header-action-github{width:92px}.av-header .av-header-action-download{width:104px;background:linear-gradient(135deg,#e11d48,#fb7185);border-color:transparent;color:#fff}.av-header .av-header-action:hover{color:#fff;border-color:#fb718570;background:#202025;transform:none;text-decoration:none}.av-header .av-header-action-download:hover{color:#fff;background:linear-gradient(135deg,#be123c,#f43f5e);border-color:transparent;box-shadow:0 4px 16px #e11d4828}.av-header .av-header-action:focus-visible{outline:2px solid #fda4af;outline-offset:4px}.av-header .av-nav-toggle{flex-shrink:0}
@media(max-width:1180px){.av-header .av-header-cta{display:none}}

.av-auth-hint{color:#a1a1aa;font-size:11px;line-height:1.7;margin:8px 0 0}.is-register .av-auth-section{padding-top:38px;padding-bottom:48px}.is-register .av-auth-card-heading>p{margin-bottom:18px}.is-register .av-auth-field{margin-bottom:16px}.is-register .av-auth-context{margin-bottom:18px}.is-register .av-auth-register{margin-top:20px;padding-top:18px}
@media(max-width:760px){.is-register .av-auth-section{padding-top:24px;padding-bottom:32px}.is-register .av-auth-card{padding:23px}.is-register .av-auth-grid{gap:18px}}

/* Homepage navigation and resource finishing touches */
.is-home .av-home-sections{position:sticky;top:72px;z-index:60;background:#101013f5;backdrop-filter:blur(12px)}.is-home .av-home-sections a{position:relative;transition:color .18s;min-height:48px;display:inline-flex;align-items:center}.is-home .av-home-sections a[aria-current=location]{color:#fda4af}.is-home .av-home-sections a[aria-current=location]::after{content:'';position:absolute;bottom:0;left:0;right:0;height:2px;background:#fb7185;border-radius:2px}.is-home .av-section{scroll-margin-top:138px}.av-home-card-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:12px}.is-home .av-home-card-head h3{margin:0}.av-home-card-head>span,.av-home-card-head>a{font-size:11px;font-weight:400;line-height:1.7}.av-home-card-head>span{color:#a1a1aa}.av-home-card-head>a{color:#fda4af;white-space:nowrap}.is-home .av-home-community>.av-muted{font-size:13px;line-height:1.9;max-width:440px}.is-home .av-home-community .av-links{display:flex;flex-wrap:wrap;gap:9px;margin-top:22px}.is-home .av-home-community .av-links a{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:7px 13px;border:1px solid #ffffff16;border-radius:8px;background:#ffffff03;color:#d4d4d8;font-weight:500;font-size:12px}.is-home .av-home-community .av-links a:hover{color:#fda4af;border-color:#fb718560;text-decoration:none}.is-home .av-news-mini{gap:0}.is-home .av-home-news .av-news-mini li:last-child{border-bottom:0}.is-home .av-home-news .av-news-mini a{display:block;padding:3px 0}.is-home .av-hero-meta span{background:transparent;border:0;padding:0 11px 0 0;border-right:1px solid #ffffff25;border-radius:0}.is-home .av-hero-meta span:last-child{border:0;padding-right:0}.is-home .av-community{align-items:stretch}.is-home .av-jump:hover strong{color:#fff}.is-home .av-jump:hover::before{color:#fb7185}
@media(max-width:600px){.is-home .av-home-sections a{min-height:44px}.is-home .av-section{scroll-margin-top:128px}.is-home .av-community>.av-card{padding:21px}.av-home-card-head{gap:10px}.is-home .av-home-community .av-links{margin-top:17px}.is-home .av-home-community .av-links a{min-height:40px}.is-home .av-hero-meta{gap:10px}}
@media(prefers-reduced-motion:reduce){.is-home .av-home-sections a{transition:none}}
