/* Scoped to the VLA survey; shared article layouts keep their existing styles. */
.vla-survey {
  --vla-ink: #243447;
  --vla-blue: #1864ab;
  --vla-muted: #526579;
  --vla-line: #d9e3ed;
  --vla-tint: #f3f7fb;
}
.vla-survey .vla-guide { margin: 0 0 3rem; color: var(--vla-ink); }
.vla-survey .vla-guide-intro { margin: 0 0 1.25rem; color: var(--vla-muted); font-size: 1.1rem; }
.vla-survey .vla-reading-paths { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin: 0; border-block: 1px solid var(--vla-line); }
.vla-survey .vla-reading-paths a { display: flex; flex-direction: column; gap: .35rem; margin: 0; padding: 1rem .75rem; text-align: left; letter-spacing: normal; font-weight: 400; transition: none; }
.vla-survey .vla-reading-paths a + a { border-left: 1px solid var(--vla-line); }
.vla-survey .vla-reading-paths a:hover { background: var(--vla-tint); }
.vla-survey .vla-reading-paths strong { font-size: 1rem; }
.vla-survey .vla-reading-paths span { color: var(--vla-muted); font-size: .8rem; line-height: 1.6; }
.vla-survey .vla-paper-index { margin-top: 1.5rem; }
.vla-survey .vla-index-heading { display: flex; align-items: baseline; justify-content: space-between; gap: 1rem; margin-bottom: .6rem; }
.vla-survey .vla-index-heading > label { font-weight: 650; }
.vla-survey .vla-index-heading > a { font-size: .85rem; }
.vla-survey .vla-search-fields { display: flex; align-items: center; gap: .75rem; }
.vla-survey .vla-search-fields input,
.vla-survey .vla-search-fields select { min-height: 44px; border: 1px solid #a7bacd; border-radius: 5px; background: #fff; color: var(--vla-ink); font: inherit; font-size: .9rem; padding: .6rem .75rem; }
.vla-survey .vla-search-fields input { flex: 1; min-width: 0; width: 100%; }
.vla-survey .vla-search-fields input::placeholder { color: var(--vla-muted); }
.vla-survey .vla-year-label { display: flex; align-items: center; gap: .5rem; white-space: nowrap; font-size: .85rem; }
.vla-survey .vla-result-count { margin: .6rem 0; font-size: .8rem; color: var(--vla-muted); }
.vla-survey .vla-paper-results { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 1rem; max-height: 250px; overflow-y: auto; overscroll-behavior: contain; margin: 0; padding: 0 .5rem 0 0; scrollbar-width: thin; }
.vla-survey .vla-paper-results > li { margin: 0; min-width: 0; list-style: none; border-top: 1px solid var(--vla-line); }
.vla-survey .vla-paper-results > li::before { content: none; }
.vla-survey .vla-paper-results a { display: block; min-height: 44px; padding: .65rem .35rem; line-height: 1.5; font-size: .87rem; overflow-wrap: anywhere; transition: none; }
.vla-survey .vla-paper-results a:hover { background: var(--vla-tint); }
.vla-survey .vla-empty { margin: 1rem 0 .5rem; color: var(--vla-muted); font-size: .9rem; }
.vla-survey .vla-reset { min-height: 44px; margin-top: .5rem; padding: .4rem .8rem; border: 1px solid var(--vla-line); border-radius: 5px; background: var(--vla-tint); color: var(--vla-blue); font: inherit; font-size: .85rem; cursor: pointer; }
.vla-survey .vla-guide :focus-visible { outline: 2px solid var(--vla-blue); outline-offset: 3px; }
.vla-survey [hidden] { display: none !important; }
.article-page .vla-survey .entry > h1 { margin-top: 3.25rem; padding-bottom: .65rem; border-bottom: 2px solid var(--vla-line); line-height: 1.45; }
.article-page .vla-survey .entry > h2 { margin-top: 2.5rem; line-height: 1.5; }
.article-page .vla-survey .entry > p,
.article-page .vla-survey .entry > ul,
.article-page .vla-survey .entry > ol { line-height: 1.85; }
.vla-survey .entry > p { overflow-wrap: anywhere; }
.vla-survey .entry { overflow-x: clip; }
.vla-survey .entry img { height: auto; }
.vla-survey .vla-process-figure,
.vla-survey .vla-signal-figure,
.vla-survey .vla-reliability-figure,
.vla-survey .vla-evidence-figure { margin: 1.7rem 0 2rem; padding: 1.25rem 0; border-top: 1px solid var(--vla-line); border-bottom: 1px solid var(--vla-line); color: var(--vla-ink); }
.vla-survey .vla-process-figure figcaption,
.vla-survey .vla-signal-figure figcaption,
.vla-survey .vla-reliability-figure figcaption,
.vla-survey .vla-evidence-figure figcaption { margin: .9rem 0 0; color: var(--vla-muted); font-size: .84rem; line-height: 1.65; text-align: left; }
.vla-survey .vla-process-steps { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); counter-reset: vla-step; gap: 1px; padding: 0; margin: 0; list-style: none; background: var(--vla-line); }
.vla-survey .vla-process-steps li { counter-increment: vla-step; min-width: 0; padding: 1rem .9rem 1.1rem; background: #f8fbfe; list-style: none; }
.vla-survey .vla-process-steps li::before { content: counter(vla-step, decimal-leading-zero); display: block; margin-bottom: .55rem; color: var(--vla-blue); font-size: .8rem; font-weight: 750; }
.vla-survey .vla-process-steps strong,
.vla-survey .vla-process-steps span { display: block; }
.vla-survey .vla-process-steps strong { margin-bottom: .3rem; font-size: 1rem; }
.vla-survey .vla-process-steps span { color: var(--vla-muted); font-size: .86rem; line-height: 1.6; }
.vla-survey .vla-chunk-example { margin-top: 1rem; }
.vla-survey .vla-chunk-heading,
.vla-survey .vla-chunk-notes { display: flex; align-items: baseline; justify-content: space-between; gap: 1rem; font-size: .83rem; }
.vla-survey .vla-chunk-heading { margin-bottom: .45rem; }
.vla-survey .vla-chunk-heading span,
.vla-survey .vla-chunk-notes span { color: var(--vla-muted); }
.vla-survey .vla-chunk-cells { display: grid; grid-template-columns: repeat(8, minmax(0, 1fr)); gap: 3px; }
.vla-survey .vla-chunk-cells span { padding: .4rem 0; background: #e8eef4; color: var(--vla-muted); font-size: .9rem; text-align: center; }
.vla-survey .vla-chunk-cells .vla-chunk-executed { background: var(--vla-blue); color: #fff; font-weight: 700; }
.vla-survey .vla-chunk-notes { margin-top: .35rem; }
.vla-survey .vla-chunk-notes strong { color: var(--vla-blue); }
.vla-survey .vla-signal-row { display: grid; grid-template-columns: minmax(8.5rem, 1fr) minmax(10rem, 1.45fr) minmax(11rem, 1.6fr); align-items: baseline; gap: 1rem; padding: .8rem .4rem; border-bottom: 1px solid var(--vla-line); }
.vla-survey .vla-signal-row:first-child { border-top: 1px solid var(--vla-line); }
.vla-survey .vla-signal-row strong { color: var(--vla-blue); font-size: .91rem; }
.vla-survey .vla-signal-row span { font-size: .9rem; }
.vla-survey .vla-signal-row small { color: var(--vla-muted); font-size: .84rem; }
.vla-survey .vla-reliability-row { display: grid; grid-template-columns: 3.8rem minmax(0, 1fr) 3.3rem; align-items: center; gap: .75rem; margin: .55rem 0; font-size: .9rem; }
.vla-survey .vla-reliability-row strong { text-align: right; font-variant-numeric: tabular-nums; }
.vla-survey .vla-reliability-track { height: 1.2rem; background: #e8eef4; }
.vla-survey .vla-reliability-track i { display: block; height: 100%; background: #3381b6; }
.vla-survey .vla-reliability-row:last-of-type .vla-reliability-track i { background: #b05c43; }
.vla-survey .vla-evidence-steps { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: .75rem; margin: 0; padding: 0; list-style: none; counter-reset: vla-evidence; }
.vla-survey .vla-evidence-steps li { counter-increment: vla-evidence; min-width: 0; padding: .75rem .7rem .8rem; border-top: 3px solid var(--vla-blue); background: #f8fbfe; list-style: none; }
.vla-survey .vla-evidence-steps li::before { content: counter(vla-evidence); display: inline-block; width: 1.45rem; height: 1.45rem; margin-right: .35rem; border-radius: 50%; background: var(--vla-blue); color: #fff; text-align: center; line-height: 1.45rem; font-size: .78rem; font-weight: 700; }
.vla-survey .vla-evidence-steps strong { font-size: .94rem; }
.vla-survey .vla-evidence-steps span { display: block; margin-top: .5rem; color: var(--vla-muted); font-size: .84rem; line-height: 1.55; }
.vla-survey .vla-ranking-lead { margin: .35rem 0 1.2rem; color: var(--vla-muted); font-size: 1.03rem; line-height: 1.75; }
.vla-survey .vla-ranking-nav { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1px; margin: 0 0 2.25rem; padding: 1px 0; border-block: 1px solid var(--vla-line); background: var(--vla-line); }
.vla-survey .vla-ranking-nav a { display: flex; flex-direction: column; gap: .28rem; min-width: 0; min-height: 5.5rem; padding: .8rem .85rem; background: #fff; color: var(--vla-ink); text-decoration: none; transition: background-color .15s ease; }
.vla-survey .vla-ranking-nav a:hover { background: var(--vla-tint); }
.vla-survey .vla-ranking-nav a:focus-visible { outline: 2px solid var(--vla-blue); outline-offset: -3px; }
.vla-survey .vla-ranking-nav strong { color: var(--vla-blue); font-size: .95rem; line-height: 1.45; }
.vla-survey .vla-ranking-nav span { color: var(--vla-muted); font-size: .77rem; line-height: 1.5; }
.vla-survey .entry > h2[id^="vla-ranking-"] { scroll-margin-top: 1.5rem; }
.vla-survey .vla-table-hint { display: none; }
.vla-survey .entry table { display: block; max-width: 100%; overflow-x: auto; scrollbar-width: thin; }
.vla-survey .entry pre { max-width: 100%; overflow-x: auto; }
.vla-survey .vla-leaderboard-table th,
.vla-survey .vla-leaderboard-table td { white-space: nowrap; font-variant-numeric: tabular-nums; }
.vla-survey .vla-leaderboard-table th:first-child,
.vla-survey .vla-leaderboard-table td:first-child { position: sticky; left: 0; z-index: 1; background: #fff; }
.vla-survey .vla-leaderboard-table th:first-child { background: var(--vla-tint); }
.vla-survey .vla-official-table tbody tr:first-child td { background: #eaf3fb; }
.vla-survey .vla-score-meter { display: block; min-width: 6.5rem; padding: .08rem .3rem; background: linear-gradient(90deg, #dcebf6 var(--vla-meter), transparent var(--vla-meter)); text-align: right; font-variant-numeric: tabular-nums; }
.vla-survey .vla-decoder-diagram { overflow-x: auto; margin: 1.5rem 0; }
.vla-survey .vla-decoder-diagram .mermaid { min-width: 920px; margin: 0; }
.vla-survey .vla-decoder-diagram:focus-visible { outline: 2px solid var(--vla-blue); outline-offset: 3px; }
.vla-survey .vla-anchor-alias { display: block; scroll-margin-top: 24px; }
@media (max-width: 600px) {
  .vla-survey .vla-table-hint { display: block; margin: .5rem 0 -.45rem; color: var(--vla-muted); font-size: .78rem; text-align: right; }
  .vla-survey .vla-ranking-nav { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .vla-survey .vla-ranking-nav a { min-height: 5.1rem; padding: .7rem .6rem; }
  .vla-survey .vla-ranking-nav strong { font-size: .88rem; }
  .vla-survey .vla-ranking-nav span { font-size: .72rem; }
  .vla-survey .vla-reading-paths { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .vla-survey .vla-reading-paths a:nth-child(3) { border-left: 0; }
  .vla-survey .vla-reading-paths a:nth-child(n+3) { border-top: 1px solid var(--vla-line); }
  .vla-survey .vla-search-fields { flex-direction: column; align-items: stretch; }
  .vla-survey .vla-year-label { justify-content: space-between; }
  .vla-survey .vla-year-label select { flex: 1; }
  .vla-survey .vla-paper-results { grid-template-columns: minmax(0, 1fr); max-height: 220px; }
  .vla-survey .vla-guide-intro { font-size: 1rem; }
  .vla-survey .vla-process-steps,
  .vla-survey .vla-evidence-steps { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .vla-survey .vla-signal-row { grid-template-columns: minmax(0, 1fr); gap: .15rem; }
  .vla-survey .vla-signal-row small { margin-top: .1rem; }
  .vla-survey .vla-chunk-notes { font-size: .72rem; }
  .article-page .vla-survey .entry > h1 { font-size: 1.6rem; }
  .article-page .vla-survey .entry > h2 { font-size: 1.3rem; }
}
@media (max-width: 330px) {
  .vla-survey .vla-process-steps,
  .vla-survey .vla-evidence-steps { grid-template-columns: minmax(0, 1fr); }
}
@media print {
  .vla-survey .vla-guide { display: none; }
}
