/* BRIDGELAB 동향 자료실 전용 스타일 v1 · 2026-10-27
   대상: board/index.html(목록), board/<주소>/index.html(글). base-v4.css, site-v4.css 다음에 읽습니다.
   색·글꼴은 base-v4.css 의 :root 토큰을 따릅니다. */

.h-page .hl{font-style:normal;color:var(--teal)}

/* ===== 목록 ===== */
.bl-sec{padding:0 0 clamp(64px,8vw,112px)}
.bl-tools{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px 24px;padding:18px 0;border-top:2px solid var(--ink)}
.fchips{display:flex;flex-wrap:wrap;gap:8px}
.fchip{display:inline-flex;align-items:center;gap:8px;font:inherit;font-size:15px;font-weight:600;color:var(--ink);background:var(--white);border:1px solid var(--line);border-radius:999px;padding:8px 14px;cursor:pointer;transition:background .15s,color .15s,border-color .15s}
.fchip span{font-family:var(--mono);font-size:12px;color:var(--muted)}
.fchip:hover{border-color:var(--ink)}
.fchip.is-on{background:var(--ink);border-color:var(--ink);color:#fff}
.fchip.is-on span{color:var(--lime)}
.bl-search input{font:inherit;font-size:15px;width:min(100%,280px);padding:10px 16px;border:1px solid var(--line);border-radius:999px;background:var(--white);color:var(--ink)}
.bl-search input::placeholder{color:var(--muted-2)}
.bl-search input:focus{border-color:var(--teal);outline:0;box-shadow:0 0 0 3px rgba(0,166,166,.18)}
.bl-count{margin:4px 0 8px;font-family:var(--mono);font-size:12px;letter-spacing:.04em}
.bl{border-top:1px solid var(--line)}
.bl__item{border-bottom:1px solid var(--line)}
.bl__item[hidden]{display:none}
.bl__a{display:grid;grid-template-columns:116px 120px minmax(0,1fr) 28px;grid-template-areas:"d c t go" ". . s go";gap:4px 20px;align-items:baseline;padding:22px 8px;transition:background .15s,padding .2s var(--ease)}
.bl__a:hover{background:var(--white);padding-left:16px;padding-right:16px}
.bl__d{grid-area:d;font-family:var(--mono);font-size:13px;letter-spacing:.04em;color:var(--muted)}
.bl__c{grid-area:c;font-family:var(--mono);font-size:12px;letter-spacing:.06em;color:var(--teal-ink);font-weight:600}
.bl__t{grid-area:t;font-size:19px;line-height:1.45;font-weight:700;letter-spacing:-.015em}
.bl__s{grid-area:s;font-size:15px;line-height:1.65;color:var(--muted)}
.bl__go{grid-area:go;justify-self:end;align-self:center;font-size:18px;color:var(--muted-2);transition:transform .2s var(--ease),color .15s}
.bl__a:hover .bl__go{transform:translateX(4px);color:var(--teal)}
.bl__pin{display:inline-block;margin-right:8px;font-family:var(--mono);font-size:11px;letter-spacing:.08em;padding:2px 8px;border-radius:999px;background:var(--lime);color:var(--ink);vertical-align:2px}
.bl__empty{padding:48px 0;color:var(--muted);text-align:center}
@media (max-width:720px){
  .bl__a{grid-template-columns:minmax(0,1fr) 24px;grid-template-areas:"meta go" "t go" "s go";gap:6px 12px;padding:20px 4px}
  .bl__d,.bl__c{display:inline}
  .bl__d{grid-area:meta}
  .bl__c{display:none}
  .bl__t{font-size:18px}
  .bl-search input{width:100%}
  .bl-search{flex:1 1 100%}
}

/* ===== 글 ===== */
.post{padding:clamp(24px,4vw,48px) 0 clamp(64px,8vw,112px)}
.post__wrap{max-width:820px}
.post__head{padding-bottom:28px;border-bottom:2px solid var(--ink);margin-bottom:36px}
.post__cat{margin-bottom:18px}
.post__title{font-size:clamp(30px,4.4vw,48px);line-height:1.16;letter-spacing:-.03em;font-weight:800}
.post__sum{margin-top:18px;font-size:clamp(17px,1.5vw,20px);line-height:1.7;color:var(--muted)}
.post__meta{margin-top:20px;display:flex;flex-wrap:wrap;gap:4px 18px;font-family:var(--mono);font-size:12.5px;letter-spacing:.04em;color:var(--muted)}
.post__meta time{color:var(--ink);font-weight:600}

.prose{font-size:17.5px;line-height:1.85}
.prose > *+*{margin-top:1.1em}
.prose h2{margin-top:2.2em;font-size:clamp(22px,2.6vw,28px);line-height:1.3;letter-spacing:-.025em;font-weight:800;padding-top:.4em}
.prose h3{margin-top:1.8em;font-size:20px;line-height:1.4;font-weight:700}
.prose h2+*,.prose h3+*{margin-top:.7em}
.prose ul,.prose ol{padding-left:1.3em}
.prose ul{list-style:disc}
.prose ol{list-style:decimal}
.prose li{padding-left:.2em}
.prose li+li{margin-top:.45em}
.prose li::marker{color:var(--teal-ink)}
.prose a:not(.btn){color:var(--teal-ink);font-weight:600;text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px}
.prose a:not(.btn):hover{color:var(--ink)}
.prose blockquote{margin-left:0;margin-right:0;border-left:3px solid var(--teal);padding:2px 0 2px 18px;color:var(--muted)}
.prose hr{border:0;border-top:1px solid var(--line);margin:2.2em 0}
.prose code{font-family:var(--mono);font-size:.9em;background:var(--paper-2);padding:1px 6px;border-radius:6px}
.prose img{border-radius:var(--r);border:1px solid var(--line)}
.prose .table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}
.prose table{width:100%;border-collapse:collapse;font-size:15px;line-height:1.6;background:var(--white);border-top:2px solid var(--ink);border-bottom:1px solid var(--line)}
.prose th,.prose td{text-align:left;vertical-align:top;padding:11px 14px;border-bottom:1px solid var(--line)}
.prose th{background:var(--paper-2);font-weight:700;white-space:nowrap}
.prose td{overflow-wrap:break-word}

.post__file{margin-top:40px;display:flex;flex-wrap:wrap;align-items:center;gap:12px 18px;padding:20px 22px;background:var(--white);border:1px solid var(--line);border-radius:var(--r)}
.post__file .btn{padding:12px 20px;font-size:15px}
.post__tags{margin-top:28px}
.post__cta{margin-top:48px;padding:clamp(24px,3vw,36px);background:var(--ink);color:#fff;border-radius:var(--r);display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:18px 28px}
.post__cta p{flex:1 1 320px;font-size:17px;line-height:1.7;color:rgba(255,255,255,.82)}
.post__cta .btn{background:var(--lime);border-color:var(--lime);color:var(--ink)}
.post__cta .btn:hover{background:#fff;border-color:#fff;color:var(--ink)}
.pnav{margin-top:40px;display:grid;grid-template-columns:1fr 1fr;gap:14px}
.pnav:empty{display:none}
.pn{display:block;padding:18px 20px;background:var(--white);border:1px solid var(--line);border-radius:var(--r);transition:border-color .15s,transform .2s var(--ease)}
.pn:hover{border-color:var(--teal);transform:translateY(-2px)}
.pn--next{text-align:right;grid-column:2}
.pn--prev:only-child{grid-column:1}
.pn__t{display:block;margin-top:6px;font-weight:700;line-height:1.45}
.post__back{margin-top:32px}
@media (max-width:640px){
  .pnav{grid-template-columns:1fr}
  .pn--next{grid-column:1;text-align:left}
  .prose{font-size:17px}
}
@media print{
  .bl-tools,.post__cta,.pnav,.post__back{display:none}
}
