.community-document { color-scheme: dark; background: var(--ink); color: var(--white); }
.community-document .site-header { background: rgba(2, 7, 11, .96); border-bottom: 1px solid rgba(155, 178, 188, .12); }
.community-document .site-header .brand-wordmark b { color: var(--white); }
.community-document .site-header .brand-wordmark em { color: var(--cyan); }
.community-document .site-nav > a, .community-document .nav-drop-trigger { color: rgba(241, 248, 250, .72); }
.community-document .site-nav a[aria-current="page"], .community-document .lang-switch button[aria-pressed="true"] { color: var(--cyan); }
.community-document .site-nav a::after { background: var(--cyan); }
.community-document .lang-switch button, .community-document .lang-sep { color: var(--muted); }
.community-document .site-nav-divider { background: rgba(155, 178, 188, .25); }
.community-document main { font-family: var(--type-font-family); }
.community-document .community-overview { padding-block: 72px 56px; }
.community-document main .overview-heading h1, .community-document main .community-cta h2 { color: var(--white); }
.community-document main .overview-heading p, .community-document main .community-cta p { color: var(--muted); }
.community-document :is(.stage-detail, .community-collaboration, .community-editor, .community-faq, .data-section) {
 color-scheme: dark;
 color: var(--community-text);
 background: transparent;
 border: 0;
 border-radius: 0;
 padding: 72px 0;
 margin-block: 24px;
 border-top: 1px solid var(--community-line);
}
.community-document .data-section { width: min(1160px, calc(100% - 96px)); margin-inline: auto; }
.community-document .data-section > .wrap { width: 100%; }
.community-document .stage-two-column, .community-document .data-layout { gap: 40px; }
.community-document .stage-two-column > *, .community-document .data-layout > * { min-width: 0; }
.community-document .community-cta { border-top: 0; padding-block: 80px 90px; }
.community-document .community-button.primary { color: var(--ink); background: var(--cyan); border-color: var(--cyan); border-radius: 8px; font-weight: 600; }
.community-document .community-button.primary:hover { background: #a0efff; border-color: #a0efff; }
.community-document .cta-email { color: var(--muted); }
.community-document :is(a, button, summary, [tabindex]):focus-visible { outline-color: var(--blue); }
.community-overview .stream-stage > g { fill: var(--white); }
.community-overview .stream-stage[data-journey-stage="3"] > g { fill: var(--community-text); }
.community-overview [data-i18n="community.streamSource"], .community-overview [data-i18n="community.streamVersion"] { fill: var(--muted); }
.community-overview .stream-stage[data-journey-stage="1"] > g > path { stroke: #263844; }
.community-overview .stream-stage > a > text { fill: var(--muted); }
.community-overview .stream-stage.is-active > a > text, .community-overview .flow-stage-link:hover text { fill: var(--cyan); }
.community-overview .stream-rail, .community-overview .stream-branch { stroke: #263844; }
.community-overview .stream-trail { stroke: #416370; }
.community-overview .stream-particles, .community-overview .stream-signal, .community-overview .stream-halo { stroke: var(--cyan); }
.community-overview .stream-signal-haze { stroke: var(--blue); }
.community-overview .stream-spark { fill: var(--cyan); stroke: var(--ink); }
.community-overview .stream-node { fill: var(--ink); stroke: #52707e; }
.community-overview .stream-stage.is-active .stream-node, .community-overview .stream-stage.is-complete .stream-node { fill: var(--ink); stroke: var(--cyan); }
.community-overview .stream-stage.is-active .stream-core, .community-overview .stream-stage.is-complete .stream-core { fill: var(--cyan); }
.community-overview .stream-stage [data-source-progress], .community-overview .stream-stage [data-write] { stroke: var(--cyan); }
.community-overview .stream-stage [data-reveal] circle, .community-overview .stream-stage [data-member-cursor] { fill: var(--cyan); }
@media (max-width: 1024px) {
 .community-document .data-section { width: calc(100% - 64px); }
 .community-document :is(.stage-detail, .community-collaboration, .community-editor, .community-faq, .data-section) { padding: 56px 0; }
}
@media (max-width: 760px) {
 .community-document .community-overview { padding-block: 42px 28px; }
 .community-document .data-section { width: calc(100% - 40px); }
 .community-document :is(.stage-detail, .community-collaboration, .community-editor, .community-faq, .data-section) { padding: 44px 0; border-radius: 0; margin-block: 16px; }
 .community-document main .phrase-heading { font-size: clamp(24px, 6vw, 32px); }
 .community-document .community-cta { padding-block: 52px 60px; }
}

.community-document .community-editor { padding-block: 36px; }
.community-editor .section-heading { margin-bottom: 24px; }
.community-editor .sheet-toolbar { padding-top: 16px; }
.community-editor .sheet-demo { padding-bottom: 14px; }
.community-editor .sheet-scroll th { padding-block: 9px; }
.community-editor .sheet-scroll td { height: 58px; padding-block: 7px; }
.community-editor .sheet-change { padding-block: 5px; }
.community-editor .sheet-notes { padding-block: 18px; row-gap: 16px; }
@media (max-width: 760px) {
 .community-document .community-editor { padding-block: 28px; }
}

.community-document .overview-heading .hero-lead { max-width: none; width: 100%; text-wrap: wrap; }
@media (min-width: 761px) {
 .community-document .overview-heading { grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: 56px; }
}

.community-reveal { opacity: 0; transform: translate3d(0, 24px, 0); transition: opacity 620ms var(--ease-reveal), transform 760ms var(--ease-reveal); }
.community-reveal.is-revealed { opacity: 1; transform: none; }
.community-reveal > :is(.section-heading, .stage-two-column, .data-layout, h2) { opacity: 0; transform: translate3d(0, 9px, 0); transition: opacity 620ms var(--ease-reveal) 120ms, transform 760ms var(--ease-reveal) 120ms; }
.community-reveal > figure { opacity: 0; transform: translate3d(0, 9px, 0); transition: opacity 620ms var(--ease-reveal) 220ms, transform 760ms var(--ease-reveal) 220ms; }
.community-reveal.is-revealed > :is(.section-heading, .stage-two-column, .data-layout, h2, figure) { opacity: 1; transform: none; }
@media (prefers-reduced-motion: reduce) {
 .community-reveal, .community-reveal > :is(.section-heading, .stage-two-column, .data-layout, h2, figure) { opacity: 1; transform: none; transition: none; }
}
@media print {
 .community-reveal, .community-reveal > :is(.section-heading, .stage-two-column, .data-layout, h2, figure) { opacity: 1; transform: none; transition: none; }
}

/* Shared dark photography and quiet data surfaces. */
.community-document main { position: relative; isolation: isolate; padding-top: 0; }
.community-document .community-overview { position: relative; padding-top: 0; }
.community-document .overview-heading { min-height: 100svh; display: flex; flex-direction: column; align-items: flex-start; justify-content: center; gap: 28px; margin-bottom: 48px; padding: 140px 0 64px; box-sizing: border-box; }
.community-document .overview-heading h1 { font-size: clamp(38px, 4.4vw, 68px); line-height: 1.25; }
.community-document .overview-heading .hero-lead { max-width: 620px; font-size: 18px; line-height: 1.9; font-weight: 400; }
.community-hero-backdrop { position: absolute; z-index: -1; top: 0; left: 50%; width: 100vw; height: 100svh; min-height: 640px; transform: translateX(-50%); background: linear-gradient(90deg, #02070b 2%, rgba(2,7,11,.88) 32%, rgba(2,7,11,.24) 100%), linear-gradient(0deg, #02070b, transparent 50%), url('/illustrations/club-opponents.png') right center / cover no-repeat; pointer-events: none; }
.community-document .community-eyebrow { color: var(--cyan); letter-spacing: .16em; font-size: 12px; margin-bottom: 22px; }
.community-document .stage-kicker { color: var(--cyan) !important; }
.community-document .database-sheet { box-shadow: 7px 7px 0 #10232d, 8px 8px 0 #263e4b; }
.community-document .data-package { background: #0c1c27; border-color: var(--community-line); }
.community-document .discussion-person strong { color: var(--white); }
.community-document .discussion-speech p { color: var(--muted) !important; }
.community-document .is-speaking .discussion-speech p { color: #b7d5df !important; }
.community-document .is-speaking .discussion-person strong { color: var(--cyan); }
.community-document main :is(th, td) { border-color: var(--community-line); }
.community-document .community-faq details { border-color: var(--community-line); }
.community-document .data-journey { padding: 28px 0; border-block: 1px solid var(--community-line); }
.community-overview .stream-stage text { fill: var(--community-text); }
.community-overview .stream-stage [data-archive-layer] rect { fill: #152d39; }
.community-overview .stream-stage [data-archive-layer] text { fill: #b7d5df; }
@media (max-width: 760px) {
 .community-document .overview-heading { min-height: 100svh; padding: 146px 0 56px; gap: 24px; }
 .community-document .overview-heading .hero-lead { font-size: 16px; }
 .community-hero-backdrop { opacity: .65; background-position: center, center, 65% center; }
 .community-document .community-overview { padding-top: 0; }
}

/* Reading navigation begins after the full-height introduction. */
.community-reading-layout { display: grid; grid-template-columns: 190px minmax(0, 1fr); gap: 48px; max-width: 1440px; margin-inline: auto; padding: 0 40px; align-items: start; }
.community-reading-content { min-width: 0; }
.community-directory { position: sticky; top: 120px; padding-block: 28px; }
.community-directory p { padding-bottom: 20px; font-size: 12px; letter-spacing: .12em; }
.community-directory ol { list-style: none; padding: 0; margin: 0; border-left: 1px solid var(--community-line); }
.community-directory a { display: flex; gap: 10px; padding: 12px 0 12px 16px; margin-left: -1px; border-left: 2px solid transparent; color: var(--community-muted); font-size: 14px; line-height: 1.6; text-decoration: none; }
.community-directory a:hover, .community-directory a[aria-current="step"] { color: var(--cyan); border-left-color: var(--cyan); }
.community-directory .directory-number { flex: 0 0 20px; font-size: 11px; padding-top: 3px; opacity: .65; }
.community-directory .directory-en { display: none; }
html[lang="en"] .community-directory .directory-zh { display: none; }
html[lang="en"] .community-directory .directory-en { display: inline; }
.community-document .community-reading-content > :is(.wrap, .data-section) { width: 100%; }
.community-document .community-reading-content > .community-overview { padding-block: 28px 48px; }
@media (max-width: 1000px) {
 .community-reading-layout { grid-template-columns: 155px minmax(0, 1fr); gap: 24px; padding-inline: 24px; }
 .community-directory a { padding-left: 10px; gap: 6px; font-size: 13px; }
 .community-reading-content .stage-two-column, .community-reading-content .data-layout { grid-template-columns: 1fr; }
}
@media (max-width: 760px) {
 .community-reading-layout { display: block; padding-inline: 20px; }
 .community-directory { top: 96px; z-index: 12; padding-block: 10px; background: var(--ink); }
 .community-directory p { padding-bottom: 6px; font-size: 10px; }
 .community-directory ol { display: flex; overflow-x: auto; border-left: 0; border-bottom: 1px solid var(--community-line); }
 .community-directory li { flex: 0 0 auto; }
 .community-directory a { margin: 0; padding: 8px 12px; border-left: 0; border-bottom: 2px solid transparent; white-space: nowrap; }
 .community-directory a[aria-current="step"] { border-bottom-color: var(--cyan); }
 .community-reading-content [id] { scroll-margin-top: 210px; }
}
