/* ==========================================================================
   문서 화면(규칙·데이터·MCP·약관·처리방침) + 에이전트 지침서 모달 — 디자인 시스템 v1(ds.css)의 st-* 위에 얹는 이 화면 전용 스타일.
   섹션 머리(SectionHeader) · 탭(Tabs) · 말풍선 안내(Callout) · 코드 블록(CodeBlock) · 표 머리 paper-sunk.
   모든 규칙은 .docs-page(화면) 또는 .docs-*(조각) 범위 — 다른 화면은 건드리지 않는다. 마크업은 js/docs-ui.js.
   ========================================================================== */

/* ---------- 화면 머리 ---------- */
.docs-page .page-head { margin-bottom: var(--st-space-10); }
.docs-page .page-head h1 { font-size: clamp(34px, 4.6vw, 44px); font-weight: 900; letter-spacing: -0.045em; line-height: 1.12; margin: var(--st-space-4) 0; text-wrap: balance; }
.docs-page .page-head p { font-size: 18px; line-height: 1.7; color: var(--st-ink-2); max-width: 680px; }
.docs-page .page-head .st-row { margin-top: var(--st-space-6); gap: var(--st-space-2); }
.docs-page .st-inline-code, .docs-page p > code:not([class]), .docs-page li > code:not([class]) {
  padding: 2px 6px; border-radius: var(--st-radius-xs); background: var(--st-paper-sunk); color: var(--st-ink);
  font: 500 0.88em/1.5 var(--st-font-mono); letter-spacing: 0; overflow-wrap: anywhere; box-decoration-break: clone; -webkit-box-decoration-break: clone;
}

/* ---------- 탭(Tabs): 데이터 화면 오가기 · MCP 도구 고르기 ---------- */
.docs-tabs { display: flex; width: max-content; max-width: 100%; margin: 0 0 var(--st-space-12); }
.docs-tabs .st-tab { display: inline-flex; align-items: center; text-decoration: none; }
.docs-tabs .st-tab[aria-current="page"] { background: var(--st-paper); color: var(--st-ink); font-weight: 700; box-shadow: var(--st-shadow-sm); }
.docs-pane { margin-top: var(--st-space-4); }
.docs-pane[hidden] { display: none; }
#client-tabs { margin-top: var(--st-space-2); }

/* ---------- 본문 흐름 ---------- */
.docs-main { min-width: 0; }
.docs-main > * + * { margin-top: var(--st-space-6); }
.docs-main > .docs-sec { margin-top: var(--st-space-24); }
.docs-main > .docs-sec:first-child { margin-top: 0; }
.docs-page .doc { gap: var(--st-space-16); grid-template-columns: 240px minmax(0, 1fr); }
.docs-page .doc-body { gap: var(--st-space-16); }
.docs-page .grid-2 { gap: var(--st-space-6); }
/* 코드 상자와 설명 카드가 짝일 때는 두 칸으로 나누지 않고 위아래로 쌓는다(한쪽이 길게 비는 걸 막는다). */
.docs-page .grid-2:has(> .st-code, > div > .st-code) { grid-template-columns: minmax(0, 1fr); }
.docs-page .grid-2 + .grid-2, .docs-page .grid-2 + .docs-table, .docs-page .docs-table + .grid-2 { margin-top: var(--st-space-6); }

/* ---------- 섹션 머리(SectionHeader) ---------- */
.docs-sec { scroll-margin-top: calc(var(--nav-h, 72px) + var(--st-space-6)); }
.docs-sec-head { margin-bottom: var(--st-space-8); }
.docs-page .docs-sec h2 { display: block; margin: var(--st-space-3) 0 0; font-size: 32px; line-height: 1.2; font-weight: 800; letter-spacing: -0.035em; text-wrap: balance; }
.docs-page .docs-sec-head .doc-lead { margin: var(--st-space-3) 0 0; max-width: 640px; font-size: 17px; line-height: 1.7; color: var(--st-ink-2); }
.docs-page .doc-sec > p, .docs-page .doc-sec li { color: var(--st-ink-2); font-size: 16px; line-height: 1.7; }
.docs-page .doc-sec li b, .docs-page .doc-sec p b { color: var(--st-ink); }
.docs-page .doc-sec ul { gap: var(--st-space-3); margin-top: var(--st-space-4); }
.docs-page .doc-sec li::before { top: 0.72em; width: 6px; height: 6px; border-radius: 2px; background: var(--st-ink-3); }
.docs-page .doc-sec .docs-sec-head + ul { margin-top: 0; }

/* ---------- 목차(왼쪽 · 휴대폰에서는 위 가로 줄) ---------- */
.docs-page .toc { gap: var(--st-space-1); }
.docs-page .toc a {
  display: flex; align-items: baseline; gap: var(--st-space-3); padding: 9px 14px; border: 0; border-radius: var(--st-radius-md);
  color: var(--st-ink-2); font-size: 14px; font-weight: 600; line-height: 1.45; text-decoration: none; transition: background-color 0.15s, color 0.15s;
}
.docs-page .toc a:hover { background: var(--st-paper-sunk); color: var(--st-ink); }
.docs-page .toc a.on { background: var(--st-brand-soft); color: var(--st-ink); font-weight: 700; border: 0; }
.toc-no { flex: none; min-width: 22px; color: var(--st-ink-2); font-variant-numeric: tabular-nums; font-weight: 600; }
.docs-page .toc a.on .toc-no { color: var(--st-brand-ink); }

/* ---------- 글 조각 ---------- */
.docs-p { margin: 0; font-size: 15px; line-height: 1.75; color: var(--st-ink-2); }
.docs-p + .docs-p { margin-top: var(--st-space-3); }
.docs-p b, .docs-notes b { color: var(--st-ink); }
.docs-page .docs-notes { margin: var(--st-space-4) 0 0; padding-left: 20px; display: grid; gap: var(--st-space-2); font-size: 14px; line-height: 1.75; color: var(--st-ink-2); }
.docs-page ul.docs-notes { list-style: disc; }
.docs-page ol.docs-notes { list-style: decimal; }
.docs-page .docs-notes li { padding-left: 2px; font-size: 14px; color: var(--st-ink-2); line-height: 1.75; }
.docs-page .docs-notes li::before { content: none; }
.docs-page .docs-notes li::marker { color: var(--st-ink-3); font-weight: 700; }
.docs-page .docs-sec-head .st-eyebrow { color: var(--st-ink-2); }
.docs-note { margin: 0 0 var(--st-space-1); font-size: 13.5px; line-height: 1.7; color: var(--st-ink-2); }

/* ---------- 카드(떼어 보일 것에만) ---------- */
.docs-card { padding: var(--st-space-6); min-width: 0; }
.docs-card h3 { margin: 0 0 var(--st-space-3); font-size: 20px; font-weight: 800; letter-spacing: -0.03em; line-height: 1.3; text-wrap: balance; }
.docs-optional { margin-top: var(--st-space-12); }
.docs-optional .st-code { margin: var(--st-space-4) 0; }

/* ---------- 이름·설명 줄(옛 receipt 대신) ---------- */
.docs-kv { display: grid; margin: var(--st-space-3) 0 0; }
.docs-kv > div { display: grid; grid-template-columns: minmax(96px, 30%) minmax(0, 1fr); gap: var(--st-space-4); padding: var(--st-space-3) 0; border-top: 1px solid var(--st-line); }
.docs-kv > div:first-child { border-top: 0; padding-top: 0; }
.docs-kv > div > span:first-child { color: var(--st-ink); font-size: 14px; font-weight: 700; line-height: 1.6; overflow-wrap: anywhere; font-variant-numeric: tabular-nums; }
.docs-kv > div > span:last-child { color: var(--st-ink-2); font-size: 14px; line-height: 1.7; overflow-wrap: anywhere; }
.docs-kv .mono { font-family: var(--st-font-mono); letter-spacing: 0; }

/* ---------- 표(표 머리 paper-sunk) ---------- */
.docs-table {
  margin-top: var(--st-space-5); border: 1px solid var(--st-line); border-radius: var(--st-radius-lg); overflow-x: auto; min-width: 0;
  /* 가로로 더 밀 수 있다는 단서: 가장자리 그림자(고정) + 끝에서 그림자를 가리는 덮개(내용과 함께 움직임) */
  background:
    linear-gradient(to right, var(--st-paper) 30%, rgba(255, 255, 255, 0)) left center / 40px 100% no-repeat local,
    linear-gradient(to left, var(--st-paper) 30%, rgba(255, 255, 255, 0)) right center / 40px 100% no-repeat local,
    radial-gradient(farthest-side at 0 50%, rgba(25, 23, 20, 0.16), rgba(25, 23, 20, 0)) left center / 14px 100% no-repeat scroll,
    radial-gradient(farthest-side at 100% 50%, rgba(25, 23, 20, 0.16), rgba(25, 23, 20, 0)) right center / 14px 100% no-repeat scroll;
}
.docs-tbl { width: 100%; min-width: 440px; border-collapse: collapse; font-size: 14px; }
.docs-tbl:has(th:nth-child(4)) { min-width: 620px; }
.docs-tbl th {
  padding: var(--st-space-3) var(--st-space-4); background: var(--st-paper-sunk); color: var(--st-ink-2); text-align: left; white-space: nowrap;
  font: 700 13px/1.4 var(--st-font-sans); letter-spacing: -0.005em; text-transform: none; border-bottom: 1px solid var(--st-line);
}
.docs-tbl td { padding: var(--st-space-4); border-bottom: 1px solid var(--st-line); vertical-align: top; color: var(--st-ink-2); line-height: 1.7; overflow-wrap: anywhere; }
.docs-tbl tbody tr:last-child td { border-bottom: 0; }
.docs-tbl td.mono { color: var(--st-ink); font-family: var(--st-font-mono); letter-spacing: 0; font-weight: 500; }
.docs-tbl .dim { color: var(--st-ink-3); }
.docs-tbl th.num, .docs-tbl td.num { text-align: right; font-family: var(--st-font-sans); font-variant-numeric: tabular-nums; letter-spacing: 0; white-space: nowrap; }
.docs-tbl td.num.strong { color: var(--st-ink); font-weight: 800; }
.docs-tbl b { color: var(--st-ink); }
.docs-err-code { color: var(--st-ink); font-family: var(--st-font-mono); font-size: 13px; letter-spacing: 0; font-weight: 600; white-space: nowrap; vertical-align: top; }

/* ---------- 말풍선 안내(Callout) ---------- */
.docs-page .st-callout { margin-top: var(--st-space-5); }
.docs-page .st-callout-bubble { min-width: 0; overflow-wrap: anywhere; }
.docs-page .st-callout-bubble p { font-size: 15px; line-height: 1.7; }
.docs-page .st-callout-bubble b { font-weight: 800; }
.docs-page .st-callout-bubble a { color: var(--st-brand-ink); font-weight: 600; text-decoration: underline; text-underline-offset: 3px; }
.docs-page .st-callout .st-inline-code, .docs-page .st-callout code { background: rgba(255, 255, 255, 0.7); }
.docs-page .grid-2 .st-callout, .docs-page .docs-card .st-callout { margin-top: var(--st-space-4); }

/* ---------- 코드 블록(CodeBlock): 밝은 판 ---------- */
.docs-page .st-code, .docs-guide .st-code { min-width: 0; max-width: 100%; }
.st-code-title { color: var(--st-ink-2); font: 600 13.5px/1.4 var(--st-font-sans); letter-spacing: -0.005em; }
.st-code-head .st-btn { height: 32px; padding: 0 var(--st-space-3); font-size: 13px; flex: none; white-space: nowrap; }
.st-code pre { font-size: 13.5px; line-height: 1.75; white-space: pre; }
.st-code pre .tok-s, .st-code pre .s { color: var(--st-brand-ink); }
.st-code pre .tok-c, .st-code pre .c { color: var(--st-ink-2); }
.st-code pre .tok-k, .st-code pre .tok-n { color: var(--st-info); font-weight: 700; }
.st-code pre .tok-f { color: var(--st-ink); font-weight: 700; }
.docs-pipe { margin-bottom: var(--st-space-6); display: grid; gap: var(--st-space-5); padding: var(--st-space-6); }
.docs-pipe-row { display: grid; grid-template-columns: minmax(0, 1fr) auto minmax(0, 1.3fr) auto minmax(0, 1fr); gap: var(--st-space-3); align-items: stretch; }
.docs-pipe-node { display: grid; align-content: start; gap: var(--st-space-1); padding: var(--st-space-4) var(--st-space-5); border-radius: var(--st-radius-md); background: var(--st-paper-sunk); }
.docs-pipe-node small { color: var(--st-ink-2); font: 700 12px/1 var(--st-font-sans); }
.docs-pipe-node b { font: 800 16px/1.3 var(--st-font-sans); letter-spacing: -0.02em; }
.docs-pipe-node span { color: var(--st-ink-2); font-size: 14px; line-height: 1.5; overflow-wrap: anywhere; }
.docs-pipe-arrow { align-self: center; color: var(--st-ink-3); font-weight: 800; }
.docs-pipe-tools { margin: 0; padding-left: 20px; display: grid; gap: var(--st-space-1); color: var(--st-ink-2); font-size: 14.5px; line-height: 1.6; }
@media (max-width: 720px) { .docs-pipe-row { grid-template-columns: minmax(0, 1fr); } .docs-pipe-arrow { justify-self: center; transform: rotate(90deg); } }

/* ---------- 데이터 개요 ---------- */
.docs-hero-card {
  display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: var(--st-space-6); align-items: center;
  padding: var(--st-space-6) var(--st-space-8); border-radius: var(--st-radius-xl); background: var(--st-brand-soft);
}
.docs-hero-copy p { margin: var(--st-space-2) 0 0; font-size: 15px; line-height: 1.7; color: var(--st-ink); max-width: 640px; }
.docs-nav-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--st-space-5); margin-top: var(--st-space-6); }
.docs-nav-card { display: flex; flex-direction: column; gap: var(--st-space-3); padding: var(--st-space-6); color: inherit; text-decoration: none; min-height: 240px; }
.docs-nav-card h3 { font-size: 22px; font-weight: 800; letter-spacing: -0.03em; }
.docs-nav-card p { color: var(--st-ink-2); font-size: 15px; line-height: 1.65; }
.docs-nav-ico { display: grid; place-items: center; width: 48px; height: 48px; border-radius: var(--st-radius-agent); background: var(--st-brand-soft); color: var(--st-brand-ink); }
.docs-nav-ico svg { width: 24px; height: 24px; }
.docs-nav-go { margin-top: auto; display: inline-flex; align-items: center; gap: 6px; color: var(--st-brand-ink); font-size: 14px; font-weight: 700; }
.docs-nav-go svg { width: 16px; height: 16px; transition: transform 0.25s cubic-bezier(0.16, 1, 0.3, 1); }
.docs-nav-card:hover .docs-nav-go svg { transform: translateX(3px); }

/* ---------- 엔드포인트 · 도구 · 규칙 목록 ---------- */
.docs-endpoints h3 { margin-bottom: var(--st-space-1); }
.docs-group-note { margin: 0 0 var(--st-space-2); font-size: 13.5px; line-height: 1.6; color: var(--st-ink-2); overflow-wrap: anywhere; }
.docs-endpoint-list { margin-top: var(--st-space-2); }
.docs-page .endpoint { grid-template-columns: 76px minmax(0, 1fr); gap: var(--st-space-3) var(--st-space-4); padding: var(--st-space-4) 0; align-items: start; }
.docs-page .method { padding: 4px 0; border-radius: var(--st-radius-pill); font: 700 11.5px/1.3 var(--st-font-mono); letter-spacing: 0.02em; text-align: center; }
.docs-page .method.get { color: var(--st-info); background: var(--st-info-soft); }
.docs-page .method.post { color: var(--st-brand-ink); background: var(--st-brand-soft); }
.docs-page .method.del { color: var(--st-danger); background: var(--st-danger-soft); }
.docs-page .method.patch { color: var(--st-warn); background: var(--st-warn-soft); }
.docs-page .endpoint code { font-size: 13.5px; line-height: 1.6; color: var(--st-ink); letter-spacing: 0; }
.docs-page .endpoint p { font-size: 14px; line-height: 1.7; color: var(--st-ink-2); margin-top: 0; }
.docs-tools { margin-top: var(--st-space-2); }
.docs-tool { padding: var(--st-space-4) 0; border-top: 1px solid var(--st-line); }
.docs-tool:first-child { border-top: 0; }
.docs-tool-name { font: 700 14px/1.5 var(--st-font-mono); color: var(--st-ink); letter-spacing: 0; overflow-wrap: anywhere; }
.docs-tool-desc { margin: var(--st-space-1) 0 0; font-size: 14px; line-height: 1.7; color: var(--st-ink-2); }
.docs-tool-args { margin: var(--st-space-2) 0 0; font: 500 12.5px/1.65 var(--st-font-mono); color: var(--st-ink-3); letter-spacing: 0; overflow-wrap: anywhere; }

/* ---------- 규칙: 대회 진행 단계 ---------- */
.docs-page ol.docs-flow { display: flex; flex-wrap: wrap; gap: var(--st-space-2); margin: var(--st-space-5) 0 0; padding: 0; list-style: none; counter-reset: ph; font-family: var(--st-font-sans); font-size: 14px; }
.docs-flow li { counter-increment: ph; display: inline-flex; align-items: center; gap: var(--st-space-2); padding: 6px 14px; border-radius: var(--st-radius-pill); background: var(--st-paper-sunk); color: var(--st-ink-2); font-weight: 600; line-height: 1.4; }
.docs-page .docs-flow li::before { content: counter(ph); position: static; width: auto; height: auto; background: none; border-radius: 0; font-variant-numeric: tabular-nums; opacity: 0.6; }
.docs-flow li.on { background: var(--st-brand); color: var(--st-on-brand); font-weight: 800; }
.docs-flow li.on::before { opacity: 0.7; }

/* ---------- 마무리 행동 띠 ---------- */
.docs-band { margin-top: calc(var(--st-space-24) + var(--st-space-8)); padding: var(--st-space-16) var(--st-space-8); }
.docs-band h2 { font-size: clamp(28px, 4vw, 44px); font-weight: 900; letter-spacing: -0.045em; }
.docs-band p { font-size: 17px; }
.docs-band .st-row { gap: var(--st-space-3); }

/* ---------- 에이전트 지침서 모달 · 복사 완료 모달 ---------- */
.docs-guide { padding: var(--st-space-8); }
.docs-guide-body { text-align: left; }
.docs-guide-top { display: flex; align-items: center; justify-content: space-between; gap: var(--st-space-3); }
.docs-guide-x { min-width: 36px; padding: 0 var(--st-space-3); }
.docs-guide h2 { display: flex; align-items: center; gap: var(--st-space-3); margin: var(--st-space-4) 0 var(--st-space-2); font-size: 30px; font-weight: 800; letter-spacing: -0.04em; }
.docs-steps { display: grid; gap: var(--st-space-3); margin: var(--st-space-5) 0; padding: 0; list-style: none; }
.docs-steps li { display: grid; grid-template-columns: 28px minmax(0, 1fr); gap: var(--st-space-3); align-items: start; font-size: 14.5px; line-height: 1.7; color: var(--st-ink); }
.docs-step-no { display: grid; place-items: center; width: 28px; height: 28px; border-radius: var(--st-radius-agent); background: var(--st-brand); color: var(--st-on-brand); font-size: 14px; font-weight: 800; font-variant-numeric: tabular-nums; }
.docs-guide .st-callout { margin: 0 0 var(--st-space-3); }
.docs-guide-act { margin: var(--st-space-4) 0 var(--st-space-3); gap: var(--st-space-3); }
.docs-guide-field { margin: var(--st-space-4) 0 var(--st-space-3); }
.docs-token-input { font-family: var(--st-font-mono); letter-spacing: 0; }
.docs-copied { text-align: left; }
.docs-copied h2 { margin: var(--st-space-3) 0 var(--st-space-2); font-size: 24px; }
.docs-copied .st-callout { margin: var(--st-space-4) 0; }
.docs-copied-act { justify-content: flex-end; margin-top: var(--st-space-5); gap: var(--st-space-3); }
.docs-status-line { min-height: 1.5em; }

/* ---------- 약관·처리방침 화면의 동의 상태 줄 ---------- */
.docs-status { margin: calc(-1 * var(--st-space-2)) 0 var(--st-space-10); }

/* ---------- 좁은 화면 ---------- */
@media (max-width: 900px) {
  .docs-page .doc { grid-template-columns: minmax(0, 1fr); gap: var(--st-space-8); }
  .docs-page .toc { display: flex; flex-wrap: nowrap; gap: var(--st-space-2); overflow-x: auto; padding-bottom: var(--st-space-2); scrollbar-width: none; }
  .docs-page .toc::-webkit-scrollbar { display: none; }
  .docs-page .toc a, .docs-page .toc a.on { flex: none; white-space: nowrap; border: 0; border-radius: var(--st-radius-pill); background: var(--st-paper-sunk); padding: 9px 14px; }
  .docs-page .toc a.on { background: var(--st-brand-soft); }
  .docs-nav-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .docs-hero-card { grid-template-columns: auto minmax(0, 1fr); }
  .docs-hero-card .st-row { grid-column: 1 / -1; }
}
@media (max-width: 720px) {
  .docs-main > .docs-sec { margin-top: var(--st-space-16); }
  .docs-page .doc-body { gap: var(--st-space-12); }
  .docs-page .docs-sec h2 { font-size: 26px; }
  .docs-page .page-head p { font-size: 16.5px; }
  .docs-tabs { width: 100%; }
  .docs-tabs .st-tab { flex: 1 0 auto; justify-content: center; }
  .docs-hero-card { grid-template-columns: minmax(0, 1fr); padding: var(--st-space-5); }
  .docs-kv > div { grid-template-columns: minmax(0, 1fr); gap: var(--st-space-1); }
  .docs-band { padding: var(--st-space-12) var(--st-space-5); margin-top: calc(var(--st-space-16) + var(--st-space-8)); }
  .docs-band .st-btn { width: 100%; }
  .docs-guide { padding: var(--st-space-5); }
  .docs-guide h2 { font-size: 26px; }
  .docs-guide-act .st-btn { width: 100%; }
  .docs-copied-act .st-btn { flex: 1; }
}
@media (max-width: 560px) {
  .docs-nav-grid { grid-template-columns: minmax(0, 1fr); }
  .docs-nav-card { min-height: 0; }
  .docs-page .endpoint { grid-template-columns: minmax(0, 1fr); }
  .docs-page .endpoint p { grid-column: 1; }
  .docs-page .method { justify-self: start; padding: 4px 10px; }
  .docs-card { padding: var(--st-space-5); }
}

/* 개발자용 접이: 코드 이름·필드 이름은 본문에서 빼고 여기에 모은다 */
.docs-page .docs-dev { margin-top: var(--st-space-4); color: var(--st-ink-2); font-size: 14px; }
.docs-page .docs-dev > summary { width: fit-content; min-height: 32px; display: flex; align-items: center; gap: var(--st-space-2); list-style: none; cursor: pointer; font-weight: 600; }
.docs-page .docs-dev > summary::-webkit-details-marker { display: none; }
.docs-page .docs-dev > summary::after { content: ''; width: 7px; height: 7px; border-right: 2px solid var(--st-ink-2); border-bottom: 2px solid var(--st-ink-2); transform: rotate(45deg) translateY(-2px); transition: transform 0.2s; }
.docs-page .docs-dev[open] > summary::after { transform: rotate(-135deg) translateY(-2px); }
.docs-page .docs-dev > p { margin: var(--st-space-2) 0 0; max-width: 65ch; line-height: 1.65; }

/* 탭 맨 위 한 줄: 이 탭이 누구를 위한 것인지 */
.docs-page .docs-audience { margin: var(--st-space-6) 0 var(--st-space-10); padding: var(--st-space-4) var(--st-space-5); border-radius: var(--st-radius-lg); background: var(--st-brand-soft); color: var(--st-ink); font-size: 15px; line-height: 1.7; }
.docs-page .docs-audience a { font-weight: 700; }

/* 휴대폰: 2칸 표(파일·내용 등)는 칸이 잘리지 않게 위아래로 쌓는다. 3칸 이상 표는 좌우로 밀어 봐요. */
@media (max-width: 640px) {
  .docs-tbl:not(:has(th:nth-child(3))) { min-width: 0; }
  .docs-tbl:not(:has(th:nth-child(3))) thead { display: none; }
  .docs-tbl:not(:has(th:nth-child(3))) tr, .docs-tbl:not(:has(th:nth-child(3))) td { display: block; }
  .docs-tbl:not(:has(th:nth-child(3))) td { border-bottom: 0; padding: var(--st-space-2) var(--st-space-4); }
  .docs-tbl:not(:has(th:nth-child(3))) tr { padding: var(--st-space-2) 0; border-bottom: 1px solid var(--st-line); }
  .docs-tbl:not(:has(th:nth-child(3))) tbody tr:last-child { border-bottom: 0; }
}
