.community-document { --community-text: #191919; --community-muted: #606660; --community-line: #f0f0ee; --community-green: #dededb; --community-purple: #ece7fa; color-scheme: light; background: #fff; color: var(--community-text); }
.community-document .site-header { background: #fff; border-bottom: 1px solid #1919190d; }
.community-document .site-header .brand-wordmark b { color: #191919; }
.community-document .site-header .brand-wordmark em { color: #52524f; }
.community-document .site-nav > a, .community-document .nav-drop-trigger { color: #52524f; }
.community-document .site-nav a[aria-current="page"] { color: #52524f; }
.community-document .site-nav a::after { background: #52524f; }
.community-document .lang-switch button { color: #707770; }
.community-document .lang-switch button[aria-pressed="true"] { color: #191919; }
.community-document .lang-sep { color: #858a85; }
.community-document .site-nav-divider { background: #dededb; }
.community-document main { padding-top: 88px; font-family: "Helvetica Neue", "PingFang SC", Arial, sans-serif; font-size: 17px; line-height: 1.7; }
.community-document main h1, .community-document main h2, .community-document main h3, .community-document main h4, .community-document main p, .community-document main figure { margin: 0; }
.community-document main h1, .community-document main h2 { font-weight: 650; letter-spacing: -.045em; line-height: 1.22; text-wrap: balance; }
.community-document main h2 { font-size: clamp(30px, 3.2vw, 44px); }
.community-document main h3 { font-size: 21px; line-height: 1.4; }
.community-document main h4 { font-size: 17px; line-height: 1.5; }
.community-document .wrap { width: min(1160px, calc(100% - 96px)); margin-inline: auto; }
.community-document main p { color: var(--community-muted); }
.community-document main a, .community-document main button, .community-document main summary { -webkit-tap-highlight-color: transparent; }
.community-document a:focus-visible, .community-document button:focus-visible, .community-document summary:focus-visible, .community-document [tabindex]:focus-visible { outline: 2px solid #52524f; outline-offset: 5px; }
.community-document [id] { scroll-margin-top: 128px; }
.community-hero { display: grid; grid-template-columns: 1.15fr 1fr; gap: 16px; align-items: center; padding-block: 76px 72px; }
.community-status { font-size: 14px; color: #52524f !important; margin-bottom: 24px !important; }
.community-hero h1 { font-size: clamp(38px, 4vw, 58px); }
.hero-lead { max-width: 30em; margin-top: 26px !important; font-size: 18px; line-height: 1.8; }
.community-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 28px; }
.community-button { display: inline-flex; align-items: center; justify-content: center; padding: 11px 19px; min-height: 46px; border: 1px solid #dededb; border-radius: 6px; color: var(--community-text); font-size: 15px; font-weight: 500; text-decoration: none; }
.community-button.primary { background: #191919; border-color: #191919; color: #fff; }
.community-button:hover { background: #f0f0ee; }
.community-button.primary:hover { background: #52524f; }
.hero-art img { width: 100%; height: auto; display: block; }
.hero-art figcaption { text-align: center; color: var(--community-muted); font-size: 13px; }
.community-intro { border-top: 1px solid var(--community-line); padding-block: 46px 74px; }
.community-intro h2 { max-width: 22em; font-size: 30px !important; }
.intro-columns { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 48px; margin-top: 34px; }
.intro-columns p { margin-top: 12px !important; font-size: 16px; }
.section-heading { max-width: 820px; margin-bottom: 36px; }
.section-heading > p { margin-top: 18px !important; }
.preview-section { background: #f8f8f6; padding-block: 74px; }
.match-workspace { background: #fff; border: 1px solid #dededb; border-radius: 10px; overflow: hidden; box-shadow: 0 14px 38px #19191909; }
.workspace-top { display: flex; justify-content: space-between; align-items: center; gap: 12px; border-bottom: 1px solid var(--community-line); padding: 15px 22px; }
.workspace-brand { font-size: 14px; font-weight: 600; }
.demo-badge { font-size: 12px; color: #737a72; }
.workspace-body { display: grid; grid-template-columns: 180px minmax(0, 1fr); }
.match-index { padding: 27px 15px; background: #f8f8f6; border-right: 1px solid var(--community-line); font-size: 13px; }
.index-heading { font-weight: 600; margin: 0 10px 22px !important; }
.index-selected { padding: 8px 10px; background: #f0f0ee; border-radius: 5px; font-weight: 500; }
.match-index > p:not(.index-heading) { padding: 14px 10px 6px; }
.index-rally { padding: 3px 10px 3px 24px; color: #52524f; }
.index-note { margin: 70px 10px 0; font-size: 12px; }
.match-content { padding: 28px 32px; min-width: 0; }
.match-title h3 { font-size: 23px !important; }
.match-title p { font-size: 13px; margin-top: 6px !important; }
.view-switch { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 25px; padding-bottom: 12px; border-bottom: 1px solid var(--community-line); }
.view-switch button { background: transparent; border: 0; border-radius: 5px; padding: 8px 12px; color: #52524f; cursor: pointer; font-size: 14px; }
.view-switch button[aria-pressed="true"] { background: #f0f0ee; color: #52524f; font-weight: 600; }
.view-switch button:hover { background: #f0f0ee; }
.demo-panels { min-height: 312px; padding-top: 22px; }
.demo-panels [hidden] { display: none; }
.panel-description { font-size: 14px; margin-bottom: 20px !important; }
.shot-table { overflow-x: auto; }
.shot-table table { border-collapse: collapse; width: 100%; text-align: left; font-size: 14px; white-space: nowrap; }
.shot-table th { color: #858581; font-size: 12px; font-weight: 500; padding: 0 14px 10px; }
.shot-table td { border-top: 1px solid #f0f0ee; padding: 12px 14px; }
.time-label { color: #858581; }
.data-badge { display: inline-block; background: #f0f0ee; color: #52524f; border-radius: 4px; padding: 2px 7px; font-size: 12px; }
.data-badge.amber { background: #fff2d4; color: #805c1a; }
.data-badge.purple { background: var(--community-purple); color: #665080; }
.small-note { font-size: 12px; line-height: 1.65; margin-top: 16px !important; }
.shot-sequence { display: flex; align-items: center; gap: 20px; padding: 8px 0 22px; }
.shot-sequence > span { display: grid; place-items: center; width: 40px; height: 40px; border: 1px solid #dededb; border-radius: 50%; font-size: 13px; }
.shot-sequence > .key-shot { background: #f7d775; border-color: #b59945; }
.analysis-explanation h4 { margin-top: 10px !important; }
.analysis-explanation p { font-size: 14px; margin-top: 7px !important; }
.review-note { display: flex; gap: 13px; padding-block: 9px 17px; }
.avatar { display: grid; place-items: center; flex: 0 0 30px; height: 30px; border-radius: 50%; font-size: 12px; }
.avatar.green { background: var(--community-green); }
.avatar.purple { background: var(--community-purple); }
.review-note p { font-size: 14px; margin: 6px 0 9px !important; }
.perspective-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
.perspective-grid article { padding: 18px; background: #f8f8f6; border-radius: 7px; }
.perspective-grid article:last-child { background: #f5f2fb; }
.perspective-grid h4 { margin: 14px 0 9px !important; }
.perspective-grid p { font-size: 14px; margin-top: 8px !important; }
.preview-caption { font-size: 12px; margin-top: 16px !important; }
.contribution { padding-block: 92px; }
.contribution-layout { display: grid; grid-template-columns: 1fr 1fr; gap: 90px; align-items: center; }
.contribution-steps article { padding-block: 21px; border-bottom: 1px solid var(--community-line); }
.contribution-steps article:first-child { padding-top: 0; }
.contribution-steps article:last-child { border: 0; }
.contribution-steps p { margin-top: 10px !important; font-size: 16px; }
.contribution-sheet { padding: 34px; background: #f2eef9; border-radius: 10px; }
.sheet-icon { display: block; font-size: 48px; line-height: 1.2; margin-bottom: 14px; }
.contribution-sheet dl { margin-block: 24px; }
.contribution-sheet dl > div { display: grid; grid-template-columns: 85px 1fr; gap: 12px; padding-block: 12px; border-bottom: 1px solid #dcd4ea; font-size: 14px; }
.contribution-sheet dt { color: #756782; }
.contribution-sheet dd { margin: 0; }
.contribution-sheet > p { font-size: 14px; }
.data-section { background: #f0f0ee; padding-block: 78px; }
.data-layout { display: grid; grid-template-columns: 1fr 1fr; gap: 72px; align-items: center; }
.data-layout h2 { white-space: pre-line; }
.data-layout > div > p { margin-top: 22px !important; }
.text-link { display: inline-block; margin-top: 22px; text-underline-offset: 5px; font-size: 15px; }
.data-package { background: #fff; border: 1px solid #dededb; padding: 28px; border-radius: 9px; }
.package-head { display: flex; align-items: center; flex-wrap: wrap; gap: 12px; padding-bottom: 20px; }
.package-head > span { font-size: 30px; }
.package-head h3 { font-size: 19px !important; }
.package-head small { font-size: 11px; color: #858581; }
.package-file { display: grid; gap: 3px; padding: 13px 0; border-top: 1px solid var(--community-line); }
.package-file > span { font-size: 14px; font-weight: 500; }
.package-file small { font-size: 12px; color: var(--community-muted); }
.community-faq { display: grid; grid-template-columns: .9fr 1.1fr; gap: 80px; padding-block: 90px; }
.community-faq h2 { max-width: 12em; }
.community-faq details { padding-block: 20px; border-bottom: 1px solid var(--community-line); }
.community-faq details:first-child { padding-top: 5px; }
.community-faq summary { cursor: pointer; font-size: 17px; font-weight: 500; padding-right: 12px; }
.community-faq details p { padding-top: 14px; font-size: 15px; }
.community-cta { text-align: center; border-top: 1px solid var(--community-line); padding-block: 70px 95px; }
.community-cta p { max-width: 44em; margin: 22px auto 26px !important; }
.cta-email { display: block; margin-top: 15px; font-size: 13px; color: var(--community-muted); }
@media (max-width: 1100px) {
  .community-document .site-nav { gap: 18px; }
  .community-document .wrap { width: calc(100% - 64px); }
  .community-hero { gap: 0; }
  .community-hero h1 { font-size: 42px; }
  .contribution-layout, .data-layout { gap: 40px; }
}
@media (max-width: 960px) {
  .community-document main { padding-top: 114px; }
  .community-hero { padding-top: 48px; }
  .community-hero h1 { font-size: 36px; }
  .hero-lead { font-size: 16px; }
  .community-actions { gap: 8px; }
  .community-button { font-size: 13px; padding: 10px 13px; }
  .intro-columns { gap: 25px; }
  .workspace-body { grid-template-columns: 140px minmax(0, 1fr); }
  .match-content { padding: 24px; }
  .community-faq { gap: 40px; }
}
@media (max-width: 640px) {
  .community-document .wrap { width: calc(100% - 40px); }
  .community-hero { grid-template-columns: 1fr; padding-block: 36px 42px; gap: 14px; }
  .community-hero h1 { font-size: clamp(32px, 8.7vw, 44px); }
  .community-status { margin-bottom: 18px !important; }
  .hero-art { max-width: 430px; margin-inline: auto !important; }
  .hero-lead { margin-top: 20px !important; }
  .community-actions { margin-top: 22px; }
  .community-intro { padding-block: 35px 45px; }
  .community-intro h2 { font-size: 26px !important; }
  .intro-columns { grid-template-columns: 1fr; gap: 24px; margin-top: 28px; }
  .intro-columns p { margin-top: 7px !important; }
  .preview-section, .data-section { padding-block: 46px; }
  .section-heading { margin-bottom: 25px; }
  .workspace-body { grid-template-columns: minmax(0, 1fr); }
  .match-index { display: none; }
  .workspace-top { padding: 14px; align-items: flex-start; }
  .demo-badge { max-width: 14em; text-align: right; font-size: 10px; }
  .match-content { padding: 22px 14px; }
  .match-title h3 { font-size: 20px !important; }
  .view-switch { gap: 3px; }
  .view-switch button { padding: 9px 7px; font-size: 12px; }
  .shot-table td, .shot-table th { padding: 10px 7px; }
  .shot-table table { font-size: 12px; }
  .data-badge { font-size: 10px; }
  .shot-table th { font-size: 11px; }
  .time-label { display: block; font-size: 10px; }
  .demo-panels { min-height: 358px; }
  .perspective-grid { grid-template-columns: 1fr; gap: 12px; }
  .contribution, .community-faq { padding-block: 48px; }
  .contribution-layout, .data-layout, .community-faq { grid-template-columns: 1fr; gap: 28px; }
  .contribution-sheet { padding: 26px; }
  .data-package { padding: 22px; }
  .community-faq h2 { max-width: none; }
  .community-cta { padding-block: 44px 60px; }
}

.community-collaboration { padding-block: 16px 76px; }
.community-collaboration .section-heading { max-width: 820px; margin-bottom: 16px; }
.co-figure { width: 100%; }
.co-diagram { display: block; width: 100%; height: auto; overflow: visible; font-family: "Helvetica Neue", "PingFang SC", Arial, sans-serif; }
.co-mobile { display: none; }
.co-figure figcaption { max-width: 760px; margin: 12px auto 0; color: var(--community-muted); font-size: 13px; line-height: 1.7; text-align: center; }
@media (max-width: 640px) {
  .community-collaboration { padding-block: 6px 46px; }
  .community-collaboration .section-heading { margin-bottom: 26px; }
  .co-desktop { display: none; }
  .co-mobile { display: block; }
  .co-figure figcaption { text-align: left; font-size: 12px; }
}
html[lang="en"] .co-mobile text[data-i18n$="Title"] { font-size: 20px; }

.co-replay { width: 100%; height: 100%; border-radius: 7px; overflow: hidden; background: #080d15; }

.co-replay canvas { display: block; width: 100%; height: 100%; }
.co-replay.scene-unavailable { background: #080d15 url('/community/match-poster.png') center / contain no-repeat; }
.community-editor { padding-block: 0 80px; }
.shared-sheet { border: 1px solid #dededb; border-radius: 10px; overflow: hidden; }
.sheet-toolbar { display: flex; align-items: center; gap: 14px; padding: 24px 24px 10px; }
.sheet-toolbar strong { font-size: 16px; font-weight: 500; }
.sheet-people { display: flex; padding-left: 5px; }
.sheet-avatar { display: inline-block; flex: 0 0 34px; width: 34px; height: 34px; border-radius: 50%; background-image: url('/community/contributors.png'); background-size: 200% 200%; }
.sheet-people .sheet-avatar { margin-left: -5px; border: 2px solid white; }
.avatar-A { background-position: 0 0; }.avatar-B { background-position: 100% 0; }.avatar-C { background-position: 0 100%; }.avatar-D { background-position: 100% 100%; }
.sheet-review { margin-left: auto; padding: 3px 8px; background: #f4f0e7; color: #80704f; font-size: 12px; border-radius: 4px; white-space: nowrap; }
.sheet-demo { padding: 0 24px 24px; font-size: 12px; }
.sheet-scroll { overflow-x: auto; padding-bottom: 10px; }
.sheet-scroll table { border-collapse: collapse; width: 100%; min-width: 880px; text-align: left; font-size: 14px; }
.sheet-scroll thead { background: #f8f8f6; color: #52524f; }
.sheet-scroll th { padding: 13px 20px; font-weight: 500; white-space: nowrap; }
.sheet-scroll td { border-top: 1px solid #f0f0ee; padding: 9px 16px; height: 66px; }
.sheet-scroll td:nth-child(2) { min-width: 160px; }
.sheet-scroll td:nth-child(5) { min-width: 175px; }
.sheet-scroll td strong { font-weight: 500; }
.sheet-scroll del { color: #858581; font-size: 12px; margin-right: 7px; }
.sheet-contributor { color: #858581; font-size: 12px; white-space: nowrap; }
.sheet-change { position: relative; padding: 9px 11px; border: 1.5px solid; border-radius: 3px; white-space: nowrap; }
.change-A { color: #52524f; border-color: #858581; background: #f0f0ee; }
.change-B { color: #856223; border-color: #ccae6d; background: #fcf6e6; }
.change-C { color: #6b5686; border-color: #b09acb; background: #f5effa; }
.change-D { color: #456d85; border-color: #8cacbd; background: #eef5f9; }
.sheet-pointer { display: flex; align-items: center; gap: 3px; position: absolute; right: -7px; bottom: -18px; font-size: 10px; color: white; border-radius: 3px; padding: 1px 5px; z-index: 1; }
.sheet-pointer svg { position: absolute; width: 14px; height: 18px; left: -11px; top: -12px; overflow: visible; }
.sheet-pointer svg path { stroke: white; stroke-width: 1.3px; }
.pointer-A { background: #858581; }.pointer-A svg { fill: #858581; }
.pointer-B { background: #b59655; }.pointer-B svg { fill: #b59655; }
.pointer-C { background: #9780b3; }.pointer-C svg { fill: #9780b3; }
.pointer-D { background: #7599b0; }.pointer-D svg { fill: #7599b0; }
.sheet-notes { display: grid; grid-template-columns: 1fr 1fr; gap: 24px 36px; border-top: 1px solid #f0f0ee; padding: 28px 24px; }
.sheet-note { display: flex; align-items: flex-start; gap: 12px; }
.sheet-note h3 { font-size: 13px !important; line-height: 1.6 !important; }
.note-action { margin-left: 10px; font-weight: 400; color: #858581; }
.sheet-note p { margin-top: 5px !important; font-size: 13px; }
.editor-source { font-size: 12px; margin-top: 15px !important; }
@media (max-width: 640px) {
 .community-editor { padding-bottom: 46px; }
 .sheet-toolbar { padding: 18px 15px 10px; gap: 8px; flex-wrap: wrap; }
 .sheet-toolbar strong { font-size: 13px; }
 .sheet-review { margin-left: 0; font-size: 11px; }
 .sheet-demo { padding: 0 15px 18px; }
 .sheet-notes { grid-template-columns: 1fr; padding: 22px 15px; gap: 20px; }
}

/* Shared match document and explicit interpretation comparison. */
.annotation-art { width: 100%; max-width: 490px; padding: 10px 0 0 24px; }
.annotation-paper { border: 1px solid #dededb; border-radius: 6px; background: #fff; padding: 20px; box-shadow: 8px 8px 0 #f0f0ee; }
.paper-kicker { font-size: 12px; color: #52524f; margin-bottom: 6px; }
.paper-match { display: block; font-size: 21px; letter-spacing: -.025em; }
.paper-scope { font-size: 12px; margin-top: 2px !important; }
.hero-art .paper-court { width: 100%; height: 230px; object-fit: contain; background: #080d16; border-radius: 3px; margin-top: 15px; }
.paper-record { display: flex; justify-content: space-between; gap: 12px; font-size: 13px; padding-top: 12px; }
.paper-contribution { position: relative; display: flex; gap: 12px; align-items: center; background: #f0f0ee; border-left: 3px solid #858581; padding: 13px 15px; margin: 20px 0 0 28px; }
.paper-contribution::before { content: ''; position: absolute; height: 20px; width: 1px; background: #858581; left: 24px; top: -20px; }
.paper-contribution strong { display: block; font-size: 13px; }
.paper-contribution p { font-size: 12px; margin-top: 3px !important; }
.paper-members { display: flex; gap: 12px; align-items: center; padding: 16px 0 12px 28px; font-size: 12px; color: #606660; }
.paper-members .sheet-people { flex-shrink: 0; }
.annotation-art figcaption { font-size: 11px; }
.comparison-context { display: flex; justify-content: space-between; align-items: center; gap: 20px; padding: 22px 0; border-top: 1px solid #dededb; border-bottom: 1px solid #dededb; }
.comparison-context strong { font-size: 20px; }
.comparison-context p { font-size: 13px; margin-top: 3px !important; }
.record-comparison { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); margin-top: 30px; }
.comparison-column { padding: 0 28px; border-left: 1px solid #dededb; min-width: 0; }
.comparison-column:first-child { padding-left: 0; border: 0; }
.comparison-column:last-child { padding-right: 0; }
.comparison-author { display: flex; align-items: center; justify-content: space-between; height: 38px; margin-bottom: 12px; }
.comparison-number { font-size: 14px; color: #858581; font-variant-numeric: tabular-nums; }
.comparison-sub { font-size: 13px; margin-top: 7px !important; min-height: 44px; }
.comparison-column dl { margin: 20px 0 0; }
.comparison-column dl > div { border-top: 1px solid #f0f0ee; padding: 15px 0; min-height: 84px; }
.comparison-column dt { font-size: 12px; color: #858581; margin-bottom: 5px; }
.comparison-column dd { font-size: 16px; font-weight: 500; line-height: 1.55; margin: 0; }
.comparison-column.revision dl > div:first-child dd { color: #52524f; }
.comparison-foot { border-top: 2px solid #dededb; padding-top: 16px; font-size: 13px; }
@media (max-width: 760px) {
 .annotation-art { padding-left: 0; max-width: 440px; }
 .comparison-context { align-items: flex-start; flex-direction: column; gap: 10px; }
 .record-comparison { grid-template-columns: 1fr; gap: 28px; }
 .comparison-column, .comparison-column:first-child, .comparison-column:last-child { border: 0; padding: 0; }
 .comparison-sub { min-height: 0; }
 .comparison-column dl { margin-top: 16px; }
 .comparison-column dl > div { display: grid; grid-template-columns: 92px 1fr; gap: 12px; min-height: 0; }
 .comparison-column dd { font-size: 15px; }
 .paper-contribution { margin-left: 12px; }
 .paper-members { padding-left: 12px; }
}
.co-connection { fill: none; stroke: #bcbcb8; stroke-width: 1.5; stroke-linecap: round; }
.player-pair { display: flex; align-items: center; gap: 12px; margin-block: 10px; }
.hero-art .player-pair img { width: 36px; height: 36px; object-fit: cover; border-radius: 50%; border: 1px solid #dededb; }
.player-pair span { color: #858581; font-size: 14px; }
.hero-art .paper-court { height: auto; aspect-ratio: 48 / 31; }
.co-replay.scene-unavailable { background: #080d15; }
.database-art { width: 100%; padding: 12px 16px 0 20px; }
.database-sheet { position: relative; border: 1px solid #dededb; border-radius: 9px; background: #fff; box-shadow: 7px 7px 0 #f0f0ee, 8px 8px 0 #dededb, 15px 15px 0 #f8f8f6, 16px 16px 0 #f0f0ee; }
.database-heading { display: flex; gap: 15px; align-items: center; padding: 25px 22px; }
.database-heading svg { flex-shrink: 0; }
.database-heading strong { font-size: 21px; letter-spacing: -.03em; line-height: 1.3; display: block; }
.database-heading p { font-size: 12px; margin-top: 6px !important; }
.database-directory { display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: 10px 20px; background: #f8f8f6; border-block: 1px solid #f0f0ee; font-size: 12px; }
.database-directory > span { color: #858581; font-size: 10px; }
.database-records { width: 100%; border-collapse: collapse; text-align: left; font-size: 11px; white-space: nowrap; }
.database-records th, .database-records td { padding: 13px 7px; border-bottom: 1px solid #f0f0ee; font-weight: 400; }
.database-records th:first-child { padding-left: 20px; }
.database-records th:last-child, .database-records td:last-child { padding-right: 14px; }
.database-records thead th { color: #858581; font-size: 10px; }
.database-records tbody th { font-size: 11px; font-variant-numeric: tabular-nums; font-weight: 500; }
.database-file { color: #858581; margin-right: 6px; }
.database-selected { background: #f0f0ee; }
.database-selected th { box-shadow: inset 3px 0 #858581; }
.database-dot { display: inline-block; width: 4px; height: 4px; border-radius: 50%; background: #858581; margin-right: 4px; vertical-align: middle; }
.database-linked { padding: 16px 20px 20px; }
.database-link-label { display: flex; gap: 8px; align-items: center; font-size: 11px; color: #52524f; margin-bottom: 12px; }
.database-link-label strong { font-weight: 500; }
.database-collections { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); border: 1px solid #dededb; border-radius: 4px; }
.database-collections > div { padding: 10px 8px; border-left: 1px solid #dededb; }
.database-collections > div:first-child { border: 0; }
.database-collections small { display: block; font-size: 9px; color: #858581; letter-spacing: .08em; margin-bottom: 5px; }
.database-collections span { display: block; font-size: 10px; line-height: 1.5; }
.database-maintainers { display: flex; align-items: center; gap: 12px; padding: 13px 20px; border-top: 1px solid #f0f0ee; font-size: 12px; color: #52524f; }
.database-maintainers .sheet-avatar { width: 27px; height: 27px; flex-basis: 27px; }
.database-art figcaption { margin-top: 27px !important; font-size: 11px; }
@media (max-width:760px) {
 .database-art { padding: 0 16px 0 0; max-width: 500px; }
 .database-heading { padding: 20px 14px; gap: 10px; }
 .database-heading strong { font-size: 19px; }
 .database-heading p { font-size: 11px; }
 .database-records th:first-child { padding-left: 10px; }
 .database-records th, .database-records td { padding: 12px 4px; font-size: 10px; }
 .database-records tbody th { font-size: 10px; }
 .database-file { margin-right: 3px; }
 .database-linked { padding: 14px 10px; }
 .database-maintainers { padding: 12px 10px; font-size: 11px; }
 .database-collections > div { padding: 9px 6px; }
}
.maintenance-flow { padding-block: 56px 72px; border-top: 1px solid #f0f0ee; }
.maintenance-flow .section-heading { margin-bottom: 24px; }
.maintenance-diagram { width: 100%; height: auto; display: block; font-family: "Helvetica Neue", "PingFang SC", Arial, sans-serif; }
.flow-mobile { display: none; }
.maintenance-flow figcaption { font-size: 12px; color: #858581; margin-top: 10px !important; }
html[lang="en"] .flow-desktop text[font-size="18"] { font-size: 16px; }
html[lang="en"] .flow-desktop text[font-size="12"] { font-size: 10px; }
@media (max-width:760px) {
 .maintenance-flow { padding-block: 36px 46px; }
 .flow-desktop { display: none; }
 .flow-mobile { display: block; max-width: 430px; margin-inline: auto; }
}
.maintenance-flow .section-heading { margin-bottom: 38px; }
html[lang="en"] .flow-desktop text[font-size="21"] { font-size: 19px; }
html[lang="en"] .flow-mobile text[font-size="18"] { font-size: 17px; }
.maintenance-flow figcaption { margin-top: 26px !important; }
.journey-svg { display: block; width: 100%; height: auto; overflow: visible; font-family: "Helvetica Neue", "PingFang SC", Arial, sans-serif; }
.journey-mobile { display: none; }
.journey-track { fill: none; stroke: #d8d6ce; stroke-width: 1.4; stroke-linecap: round; }
.journey-wash { fill: #f5f2e9; opacity: 0; transition: opacity .45s ease; }
.journey-stage.is-active .journey-wash { opacity: 1; }
.journey-stage text { fill: #77746e; transition: fill .3s ease; }
.journey-stage text:first-of-type { fill: #242424; font-weight: 600; }
.journey-stage.is-active text:first-of-type { fill: #52524f; }
.journey-packet { opacity: 0; }
.packet-labels, .packet-reviewed { opacity: 0; }
.journey-svg[data-step="1"] .packet-video, .journey-svg[data-step="2"] .packet-video, .journey-svg[data-step="3"] .packet-video { opacity: 0; }
.journey-svg[data-step="1"] .packet-labels, .journey-svg[data-step="2"] .packet-labels, .journey-svg[data-step="3"] .packet-labels { opacity: 1; }
.journey-svg[data-step="2"] .packet-reviewed, .journey-svg[data-step="3"] .packet-reviewed { opacity: 1; }
.archive-signal { fill: #f4f2eb; transition: fill .5s ease; }
.is-archived .archive-signal { fill: #bcbcb8; }
.journey-svg > text { fill: #8b877e; }
.journey-caption { display: flex; align-items: center; justify-content: center; gap: 9px; font-size: 14px; min-height: 28px; margin-top: 15px; color: #191919; }
.journey-live-dot { width: 6px; height: 6px; flex-shrink: 0; border-radius: 50%; background: #858581; }
.data-journey figcaption { text-align: center; }
@media (max-width:760px) {
 .journey-desktop { display: none; }
 .journey-mobile { display: block; max-width: 430px; margin-inline: auto; }
 .journey-caption { font-size: 12px; justify-content: flex-start; }
 .data-journey figcaption { text-align: left; }
 html[lang="en"] .journey-mobile text[font-size="18"] { font-size: 16px; }
}
@media (prefers-reduced-motion: reduce) { .journey-svg * { transition: none; } }
.stream-svg { width: 100%; height: auto; display: block; overflow: visible; font-family: "Helvetica Neue", "PingFang SC", Arial, sans-serif; }
.stream-mobile { display: none; }
.stream-rail, .stream-trail, .stream-particles, .stream-branch { fill: none; stroke-linecap: round; }
.stream-rail { stroke: #f0f0ee; stroke-width: 9; }
.stream-trail { stroke: #bcbcb8; stroke-width: 5; stroke-dasharray: 0 1; }
.stream-particles { stroke: #52524f; stroke-width: 2; stroke-dasharray: 3 19; }
.stream-branch { stroke: #dededb; stroke-width: 1; }
.stream-node { fill: #fff; stroke: #bcbcb8; stroke-width: 2; }
.stream-halo { fill: none; stroke: #858581; stroke-width: 1; opacity: 0; }
.stream-stage.is-active .stream-node, .stream-stage.is-complete .stream-node { fill: #858581; stroke: #fff; }
.stream-stage.is-active .stream-halo { opacity: .55; }
.stream-stage > text { fill: #858581; font-weight: 500; }
.stream-stage.is-active > text { fill: #191919; font-weight: 600; }
.stream-stage [data-reveal], .stream-stage [data-archive-layer] { opacity: 0; }
.stream-stage [data-source-progress] { stroke-dasharray: 0 1; }
.stream-stage [data-write] { stroke-dasharray: 0 1; }
.stream-stage [data-scan], .stream-stage [data-member-cursor] { opacity: 0; }
.data-journey .journey-caption { margin-top: 0; }
@media (max-width:760px) {
 .stream-desktop { display: none; }
 .stream-mobile { display: block; max-width: 430px; margin-inline: auto; }
}
/* Fine signal rail with a soft moving highlight. */
.stream-rail { stroke: #f0f0ee; stroke-width: 1.1; }
.stream-trail { stroke: #bcbcb8; stroke-width: 1; }
.stream-particles { stroke: #bcbcb8; stroke-width: 1.3; stroke-dasharray: 12 230; opacity: .55; }
.stream-signal, .stream-signal-haze { fill: none; stroke-linecap: round; stroke-dasharray: 0 1; }
.stream-signal { stroke: #52524f; stroke-width: 2; }
.stream-signal-haze { stroke: #bcbcb8; stroke-width: 5; }
.stream-spark { fill: #52524f; stroke: #fff; stroke-width: 1.1; }
.stream-branch { stroke: #dededb; stroke-width: 1; }
.stream-node { fill: #fff; stroke: #dededb; stroke-width: 1.2; }
.stream-core { fill: #dededb; }
.stream-halo { stroke: #bcbcb8; stroke-width: .8; }
.stream-stage.is-active .stream-node, .stream-stage.is-complete .stream-node { fill: #fff; stroke: #858581; }
.stream-stage.is-active .stream-core, .stream-stage.is-complete .stream-core { fill: #858581; }
.stream-stage.is-active .stream-halo { opacity: .45; }
.community-overview { padding-block: 48px 52px; }
.overview-heading { display: grid; grid-template-columns: 1fr 1fr; gap: 70px; align-items: center; margin-bottom: 38px; }
.overview-heading h1 { font-size: clamp(34px,3.5vw,48px); }
.overview-heading .community-status { margin-bottom: 16px !important; }
.overview-heading .hero-lead { margin-top: 0 !important; font-size: 16px; }
.overview-heading .community-actions { margin-top: 20px; }
.community-overview .data-journey figcaption { margin-top: 14px !important; font-size: 11px; color: #858581; }
.flow-stage-link { cursor: pointer; }
.flow-stage-link:hover text { fill: #52524f; text-decoration: underline; text-underline-offset: 4px; }
.stream-stage > a > text { fill: #858581; font-weight: 500; }
.stream-stage.is-active > a > text { fill: #191919; font-weight: 600; }
.stage-detail { padding-block: 76px; border-top: 1px solid #f0f0ee; }
.stage-two-column { display: grid; grid-template-columns: 1fr 1fr; gap: 76px; align-items: center; }
.stage-kicker { font-size: 12px; letter-spacing: .07em; color: #52524f !important; margin-bottom: 18px !important; }
.stage-lead { font-size: 17px; margin-top: 22px !important; }
.stage-notes { margin-top: 32px; }
.stage-notes h3 { font-size: 17px !important; margin-top: 22px !important; }
.stage-notes p { font-size: 14px; margin-top: 7px !important; }
.stage-two-column .database-art { max-width: none; }
.annotation-example { display: grid; grid-template-columns: 1.1fr 1fr; gap: 48px; align-items: center; }
.annotation-court { min-width: 0; }
.annotation-court .co-replay { aspect-ratio: 48 / 31; height: auto; }
.annotation-output h3 { margin-bottom: 16px !important; }
.annotation-output table { border-collapse: collapse; width: 100%; text-align: left; font-size: 14px; }
.annotation-output th, .annotation-output td { padding: 12px 14px; border-bottom: 1px solid #f0f0ee; font-weight: 400; }
.annotation-output thead th { background: #f8f8f6; color: #858581; font-size: 12px; }
.community-collaboration { padding-top: 76px; border-top: 1px solid #f0f0ee; }
.data-layout .stage-kicker { margin-top: 0 !important; }
@media (max-width:760px) {
 .community-overview { padding-block: 34px 42px; }
 .overview-heading, .stage-two-column, .annotation-example { grid-template-columns: 1fr; gap: 28px; }
 .overview-heading { margin-bottom: 22px; }
 .stage-detail { padding-block: 42px; }
 .community-collaboration { padding-top: 42px; }
 .stage-kicker { margin-bottom: 14px !important; font-size: 11px; }
 .annotation-output th, .annotation-output td { padding: 10px; }
}
/* Neutral product surfaces with restrained blue interaction accents. */
.community-document { --community-text: #191919; --community-muted: #62625f; --community-line: #e9e9e7; --community-accent: #0075de; --community-accent-soft: #eaf4fe; --community-surface: #f7f7f5; }
.community-document .site-header { border-bottom-color: #eeeeec; }
.community-document .site-header .brand-wordmark em { color: #191919; }
.community-document .site-nav a[aria-current="page"] { color: #191919; }
.community-document .site-nav a::after { background: #191919; }
.community-status, .stage-kicker { color: #777772 !important; }
.community-document a:focus-visible, .community-document button:focus-visible, .community-document summary:focus-visible, .community-document [tabindex]:focus-visible { outline-color: var(--community-accent); }
.community-button.primary { background: var(--community-accent); border-color: var(--community-accent); }
.community-button.primary:hover { background: #0063bd; border-color: #0063bd; }
.community-button:not(.primary) { background: var(--community-accent-soft); border-color: transparent; color: #245d91; }
.community-button:not(.primary):hover { background: #ddeefd; }
.database-sheet { border-color: #dededb; box-shadow: 7px 7px 0 #f4f4f2, 8px 8px 0 #e4e4e1, 15px 15px 0 #fafaf8, 16px 16px 0 #eaeae7; }
.database-directory, .sheet-scroll thead, .annotation-output thead th { background: var(--community-surface); color: #767671; }
.database-selected { background: #edf5fd; }
.database-selected th { box-shadow: inset 3px 0 #76a8db; }
.database-dot { background: #619acb; }
.database-file, .database-link-label, .database-maintainers { color: #646460; }
.database-collections { border-color: #e5e5e2; }
.database-collections > div { border-color: #e5e5e2; }
.database-heading svg { color: #191919; }
.shared-sheet { border-color: #e5e5e2; }
.change-A { color: #316591; border-color: #93b8dc; background: #f0f7fe; }
.pointer-A { background: #6c9ac5; }
.pointer-A svg path { fill: #6c9ac5; }
.change-D { color: #97695a; border-color: #cfad9e; background: #fbf2ec; }
.pointer-D { background: #b48a78; }
.pointer-D svg path { fill: #b48a78; }
.data-section { background: #f7f7f5; }
.co-connection { stroke: #cfcfcb; }
.stream-rail { stroke: #e5e8ed; }
.stream-trail { stroke: #c6d9ed; }
.stream-particles { stroke: #8baecf; }
.stream-signal { stroke: #397ebc; }
.stream-signal-haze { stroke: #b4d4f2; }
.stream-spark { fill: #2476bd; }
.stream-branch { stroke: #dedfe1; }
.stream-node { stroke: #cbd1d8; }
.stream-core { fill: #c8cdd4; }
.stream-halo { stroke: #7aadd9; }
.stream-stage.is-active .stream-node, .stream-stage.is-complete .stream-node { stroke: #79a3cd; }
.stream-stage.is-active .stream-core, .stream-stage.is-complete .stream-core { fill: #5a91c4; }
.stream-stage > a > text { fill: #6a6a66; }
.stream-stage.is-active > a > text, .flow-stage-link:hover text { fill: #2476bd; }
.stream-stage [data-reveal] circle { fill: #74a4ce; }
.stream-stage [data-source-progress], .stream-stage [data-write] { stroke: #79a8d0; }
.stream-stage [data-member-cursor] { fill: #568dbf; }
.stream-stage [data-archive-layer] rect { fill: #eaf4fe; }
.stream-stage [data-archive-layer] text { fill: #36546f; }
.stream-stage [data-archive-layer] path { stroke: #729fc7; }
.journey-live-dot { background: #5c9bcf; }
.journey-caption { color: #51514e; }
.community-document main .phrase-heading { text-wrap: wrap; white-space: normal; }
html:not([lang="en"]) .phrase-heading .heading-phrase { display: inline-block; white-space: nowrap; }
html[lang="en"] .phrase-heading .heading-phrase { white-space: normal; }
@media (max-width:380px) {
 .community-document main .phrase-heading { font-size: clamp(24px, 7.1vw, 27px); }
}

@media (max-width:380px) {
 html:not([lang="en"]) .overview-heading h1 { font-size: 30px; }
}
.discussion-layout { display: block; width: 100%; height: auto; overflow: visible; }
.discussion-mobile { display: none; }
.discussion-wire, .discussion-trace { fill: none; stroke-linecap: round; stroke-linejoin: round; }
.discussion-wire { stroke: #e2e7eb; stroke-width: 1.2; }
.discussion-trace { stroke: #72a4d1; stroke-width: 1.8; stroke-dasharray: 0 1; }
.discussion-pulse { fill: #397fb9; stroke: white; stroke-width: 1.5; opacity: 0; }
.discussion-court-outline { fill: white; stroke: #e1e6eb; stroke-width: 1; transition: stroke .35s, stroke-width .35s; }
[data-discussion-phase="received"] .discussion-court-outline { stroke: #87b2d7; stroke-width: 2; }
.discussion-member { font-family: "Helvetica Neue", "PingFang SC", Arial, sans-serif; padding: 9px 8px; }
.discussion-person { display: flex; align-items: center; gap: 11px; }
.discussion-person .sheet-avatar { width: 48px; height: 48px; flex-basis: 48px; }
.discussion-name { display: block; color: #8a8a86; font-size: 12px; margin-bottom: 3px; }
.discussion-person strong { display: block; color: #343432; font-size: 16px; line-height: 1.4; font-weight: 500; }
.discussion-speech { position: relative; margin-top: 15px; padding: 13px 13px 15px 19px; border-left: 2px solid #e3e5e6; border-radius: 0 6px 6px 0; transition: background .35s, border-color .35s; }
.discussion-speech p { font-size: 13px; line-height: 1.65; color: #888985 !important; transition: color .35s; }
.discussion-quote { display: none; }
.is-speaking .discussion-speech { background: #eff6fc; border-left-color: #76a7d1; }
.is-speaking .discussion-speech p { color: #244e72 !important; }
.is-speaking .discussion-person strong { color: #1c4365; }
.discussion-typing { display: flex; gap: 3px; height: 5px; margin-top: 8px; opacity: 0; }
.discussion-typing i { width: 3px; height: 3px; border-radius: 50%; background: #76a7d1; }
.is-speaking .discussion-typing { opacity: 1; }
.discussion-receipt { text-align: center; font: 12px/1.7 "Helvetica Neue", "PingFang SC", Arial, sans-serif; color: #87919a; padding-top: 7px; }
.discussion-receipt [data-discussion-receipt] { color: #3c709b; }
.discussion-scene figcaption { margin-top: 0 !important; }
@media (max-width:760px) {
 .discussion-desktop { display: none; }
 .discussion-mobile { display: block; }
 .discussion-person strong { font-size: 19px; }
 .discussion-name { font-size: 16px; }
 .discussion-person .sheet-avatar { width: 54px; height: 54px; flex-basis: 54px; }
 .discussion-speech p { font-size: 19px; }
 .discussion-receipt { font-size: 17px; }
 .discussion-speech { padding: 12px; }
 .discussion-member { padding: 9px 0; }
}
@media (prefers-reduced-motion:reduce) {
 .discussion-scene * { transition: none; }
}

@media (max-width:760px) {
 .discussion-person strong { font-size: 22px; }
 .discussion-speech p { font-size: 21px; }
 .discussion-person .sheet-avatar { width: 60px; height: 60px; flex-basis: 60px; }
}
