.ldocs { display: flex; gap: 0; margin-top: 28px; border-top: 1px solid var(--ink); border-bottom: 1px solid var(--line); }
.ldocs a { padding: 16px 28px 16px 0; margin-right: 28px; font-size: 14px; letter-spacing: .04em; opacity: .55; position: relative; transition: opacity .3s; }
.ldocs a::after { content: ''; position: absolute; left: 0; right: 28px; bottom: -1px; height: 1px; background: var(--ink); scale: 0 1; transform-origin: 0 50%; transition: scale .4s var(--ease); }
.ldocs a:hover { opacity: 1; }
.ldocs a[aria-current] { opacity: 1; }
.ldocs a[aria-current]::after { scale: 1 1; }

.ldoc { padding: clamp(56px, 7vw, 96px) var(--pad) var(--sec); }
.ldoc-hd h1 { font-family: var(--ko); font-weight: 300; font-size: clamp(32px, 4.2vw, 56px); line-height: 1.25; margin-top: 16px; }
.draft { display: inline-block; margin-top: 22px; padding: 8px 14px; border: 1px solid var(--acc); color: var(--acc); font-size: 13px; letter-spacing: .04em; }
.ldoc-meta { display: grid; grid-template-columns: repeat(3, auto); gap: 24px 48px; justify-content: start; margin-top: 36px; padding: 24px 0; border-top: 1px solid var(--ink); border-bottom: 1px solid var(--line); }
.ldoc-meta dt { font-size: 12px; letter-spacing: .2em; color: var(--acc); }
.ldoc-meta dd { margin-top: 6px; font-size: 15px; }
.ldoc-intro { margin-top: 40px; font-family: var(--ko); font-weight: 300; font-size: 17px; line-height: 1.85; }

.toc { margin-top: 48px; padding: 28px 32px 24px; border: 1px solid var(--line); }
.toc ol { columns: 2; column-gap: 40px; margin-top: 14px; counter-reset: toc; }
.toc li { break-inside: avoid; font-size: 14px; padding: 6px 0; }
.toc a { opacity: .78; transition: opacity .3s, color .3s; }
.toc a:hover { opacity: 1; color: var(--acc); }

.ldoc-bd { margin-top: clamp(48px, 6vw, 80px); }
.art { display: grid; grid-template-columns: minmax(0, 1fr); gap: 14px; padding: 36px 0; border-top: 1px solid var(--line); }
.art:first-child { border-top: 1px solid var(--ink); }
.art h2 { display: flex; flex-wrap: wrap; align-items: baseline; gap: 6px; font-family: var(--ko); font-weight: 300; font-size: 20px; line-height: 1.4; }
.art-no { color: var(--acc); }
.art-bd { font-size: 16px; line-height: 1.9; }
.art-bd > p + p, .art-bd h3 + p, .art-bd .tbl-wrap + p, .art-bd .dash + p { margin-top: 12px; }
.art-bd h3 { font-family: var(--sans); font-weight: 500; font-size: 15px; margin: 24px 0 10px; }
.art-bd h3:first-child { margin-top: 0; }
.art-bd a { border-bottom: 1px solid var(--line); transition: border-color .3s; }
.art-bd a:hover { border-color: var(--acc); }
.art-bd .tbd { white-space: normal; }
.cl li { display: grid; grid-template-columns: 24px minmax(0, 1fr); gap: 6px; }
.cl li + li { margin-top: 8px; }
.cl i { font-style: normal; color: var(--acc); font-size: 15px; padding-top: 2px; }
.cl .tbl-wrap { margin-top: 12px; }
.dash li { position: relative; padding-left: 14px; }
.dash li::before { content: ''; position: absolute; left: 0; top: .95em; width: 6px; height: 1px; background: var(--acc); }
.dash li + li { margin-top: 6px; }

.ltbl { font-size: 14px; margin-top: 8px; }
.ltbl th, .ltbl td { padding: 12px 10px; line-height: 1.6; }
.ltbl thead th { white-space: nowrap; }
.ltbl tbody th { font-family: var(--sans); font-size: 14px; font-weight: 500; white-space: nowrap; }
.ltbl.kv2 th { width: 140px; color: var(--acc); font-weight: 400; }
.tbl.refund { max-width: 520px; }
.tbl.refund th { font-size: 16px; }
.tbl.refund td b { font-weight: 500; }
.tbl.refund tr:last-child th, .tbl.refund tr:last-child td { border-bottom-color: var(--ink); }
.note-p { margin-top: 16px; font-size: 14px; opacity: .72; }

.ldoc-ft { margin-top: 48px; padding-top: 24px; border-top: 1px solid var(--ink); font-size: 14px; opacity: .8; display: flex; justify-content: space-between; gap: 24px; flex-wrap: wrap; }
.ldoc-ft a { border-bottom: 1px solid var(--line); }
.lvers { flex: 1 1 320px; }
.lvers ul { margin-top: 10px; }
.lvers li { display: flex; flex-wrap: wrap; gap: 4px 20px; padding: 8px 0; border-bottom: 1px solid var(--line); }
.lvers li span { opacity: .7; }
.lvers a[aria-current] { border-bottom-color: var(--ink); font-weight: 500; }

.lold { display: grid; gap: 10px; justify-items: start; margin-bottom: clamp(36px, 5vw, 56px); padding: 20px 24px; border: 1px solid var(--acc); font-size: 15px; }
.lold b { font-weight: 500; }

@media (min-width: 901px) {
  .art { grid-template-columns: 150px minmax(0, 1fr); gap: 24px; }
  .art h2 { display: block; font-size: 17px; }
  .art-no { display: block; }
  .art-tt { display: block; font-size: 15px; opacity: .8; margin-top: 4px; }
  .art.plain h2 { font-size: 16px; }
  .art.plain .art-no { font-family: var(--en); font-size: 26px; letter-spacing: .04em; }
}

@media (max-width: 900px) {
  .ldocs { overflow-x: auto; scrollbar-width: none; margin-top: 20px; }
  .ldocs::-webkit-scrollbar { display: none; }
  .ldocs a { flex: none; padding: 14px 18px 14px 0; margin-right: 18px; }
  .ldoc { padding-top: 40px; }
  .ldoc-meta { grid-template-columns: 1fr; gap: 16px; }
  .toc { padding: 22px 20px 18px; }
  .toc ol { columns: 1; }
  .art { padding: 28px 0; }
  .art h2 { font-size: 18px; }
  .ltbl thead th { white-space: normal; }
  .ltbl tbody th { white-space: normal; }
  .ltbl td, .ltbl th { min-width: 120px; }
  .ltbl.kv2 th { width: auto; min-width: 90px; }
  .ldoc-ft { flex-direction: column; }
}
