/* 상간소송 가이드 — 공용 스타일 (정적 페이지 전용, React 랜딩과 무관) */
:root{
  --navy:#12203a; --navy-2:#1d3157; --ink:#1a1c20; --muted:#5a6274;
  --line:#e3e7ee; --bg:#ffffff; --bg-soft:#f6f8fb; --accent:#8a6a3b;
  --warn-bg:#fff8ec; --warn-line:#e8d3ab;
  --law-bg:#f4f7fc; --law-line:#c9d8ef;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0; background:var(--bg); color:var(--ink);
  font-family:Pretendard,-apple-system,BlinkMacSystemFont,"Malgun Gothic","맑은 고딕",sans-serif;
  font-size:17px; line-height:1.85; word-break:keep-all; overflow-wrap:anywhere;
}
a{color:var(--navy-2)}
.wrap{max-width:740px;margin:0 auto;padding:0 20px}

/* 헤더 */
.gnb{border-bottom:1px solid var(--line);background:#fff}
.gnb .wrap{display:flex;align-items:center;justify-content:space-between;height:60px}
.gnb .brand{display:flex;align-items:center;gap:9px;font-weight:700;color:var(--navy);text-decoration:none;font-size:15px}
.gnb .brand img{height:24px;width:auto;display:block}
.gnb .home{font-size:14px;color:var(--muted);text-decoration:none}
.gnb .home:hover{color:var(--navy)}

/* 브레드크럼 */
.bc{font-size:13px;color:var(--muted);padding:16px 0 0}
.bc a{color:var(--muted);text-decoration:none}
.bc a:hover{text-decoration:underline}

/* 제목부 */
article header{padding:14px 0 26px;border-bottom:1px solid var(--line);margin-bottom:32px}
h1{font-size:30px;line-height:1.4;letter-spacing:-.02em;margin:8px 0 14px;color:var(--navy);font-weight:800}
.lead{font-size:17px;color:var(--muted);margin:0 0 18px}
.byline{font-size:13.5px;color:var(--muted);display:flex;flex-wrap:wrap;gap:6px 14px;align-items:center}
.byline b{color:var(--ink);font-weight:600}

/* 본문 */
h2{font-size:22px;line-height:1.45;margin:44px 0 14px;color:var(--navy);font-weight:750;letter-spacing:-.01em;
   padding-top:14px;border-top:2px solid var(--navy)}
h3{font-size:18px;margin:26px 0 8px;color:var(--navy-2);font-weight:700}
p{margin:0 0 16px}
.key{font-weight:600;color:var(--ink)}
ul,ol{margin:0 0 18px;padding-left:22px}
li{margin:0 0 8px}

/* 표 */
.tw{overflow-x:auto;margin:0 0 20px;-webkit-overflow-scrolling:touch}
table{border-collapse:collapse;width:100%;font-size:15.5px;min-width:460px}
th,td{border:1px solid var(--line);padding:11px 13px;text-align:left;vertical-align:top}
th{background:var(--bg-soft);font-weight:700;color:var(--navy);white-space:nowrap}

/* 법령 원문 인용 박스 */
.law{background:var(--law-bg);border:1px solid var(--law-line);border-left:4px solid var(--navy-2);
     border-radius:4px;padding:15px 17px;margin:0 0 20px;font-size:15.5px;line-height:1.75}
.law .src{display:block;font-size:13px;font-weight:700;color:var(--navy-2);margin-bottom:7px;letter-spacing:.01em}
.law p{margin:0 0 8px}
.law p:last-child{margin:0}

/* 판례 박스 */
.case{border:1px solid var(--line);border-radius:4px;padding:15px 17px;margin:0 0 20px;background:#fff;font-size:15.5px}
.case .no{display:block;font-size:13px;font-weight:700;color:var(--accent);margin-bottom:7px}
.case q{quotes:"“" "”";font-style:normal;color:#2a2f3a}

/* 주의 박스 */
.warn{background:var(--warn-bg);border:1px solid var(--warn-line);border-radius:4px;padding:15px 17px;margin:0 0 20px;font-size:15.5px}
.warn strong{color:#8a5a12}

/* Q&A */
.qa{border-top:1px solid var(--line)}
.qa details{border-bottom:1px solid var(--line);padding:2px 0}
.qa summary{cursor:pointer;padding:15px 4px;font-weight:650;color:var(--navy);list-style:none;font-size:16.5px;position:relative;padding-right:28px}
.qa summary::-webkit-details-marker{display:none}
.qa summary::after{content:"+";position:absolute;right:6px;top:14px;font-weight:400;font-size:20px;color:var(--muted)}
.qa details[open] summary::after{content:"–"}
.qa .a{padding:0 4px 16px;color:#2b3040;font-size:16px}
.qa .a p{margin:0 0 10px}
.qa .a p:last-child{margin:0}

/* 면책 */
.disc{margin:44px 0 0;padding:18px 20px;background:var(--bg-soft);border:1px solid var(--line);border-radius:4px;
      font-size:14px;color:var(--muted);line-height:1.75}
.disc b{color:var(--ink)}
.src-list{font-size:13.5px;color:var(--muted);margin:20px 0 0;padding-left:20px}
.src-list li{margin-bottom:5px}

/* 하단 상담 안내 (본문 밖) */
.after{margin:34px 0 0;padding:20px;border:1px solid var(--line);border-radius:6px;background:#fff;text-align:center}
.after p{font-size:15px;color:var(--muted);margin:0 0 12px}
.after a{display:inline-block;background:var(--navy);color:#fff;text-decoration:none;font-weight:650;
         padding:12px 26px;border-radius:4px;font-size:15.5px}

/* 관련 글 */
.rel{margin:38px 0 0;padding-top:22px;border-top:1px solid var(--line)}
.rel h2{border:0;padding:0;margin:0 0 12px;font-size:18px}
.rel ul{padding-left:20px}
.rel a{color:var(--navy-2)}

footer.ft{margin-top:52px;border-top:1px solid var(--line);background:var(--bg-soft)}
footer.ft .wrap{padding-top:22px;padding-bottom:30px;font-size:13px;color:var(--muted);line-height:1.8}
footer.ft b{color:var(--ink)}

@media (max-width:640px){
  body{font-size:16.5px}
  h1{font-size:25px}
  h2{font-size:20px;margin-top:38px}
  .wrap{padding:0 17px}
}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

/* ── 하단 고정 플로팅 CTA (가이드 3장: 본문 밖 1개만) ───────────── */
body{padding-bottom:76px}
.fbar{
  position:fixed; left:0; right:0; bottom:0; z-index:90;
  background:#c8102e; border-top:1px solid #a60d26;
  box-shadow:0 -6px 20px rgba(0,0,0,.18);
}
.fbar a{
  display:flex; align-items:center; justify-content:center; gap:10px;
  height:60px; color:#fff; text-decoration:none; font-weight:800;
  font-size:17px; letter-spacing:-.02em;
}
.fbar .dot{
  width:9px; height:9px; border-radius:50%; background:#ffd7dd;
  box-shadow:0 0 0 0 rgba(255,255,255,.75);
  animation:fbeat 1.8s ease-out infinite;
}
.fbar .sub{font-weight:600; font-size:14px; opacity:.92}
.fbar a:hover{background:#b60e29}
@keyframes fbeat{
  0%{box-shadow:0 0 0 0 rgba(255,255,255,.7)}
  70%{box-shadow:0 0 0 11px rgba(255,255,255,0)}
  100%{box-shadow:0 0 0 0 rgba(255,255,255,0)}
}
@media (max-width:640px){
  body{padding-bottom:70px}
  .fbar a{height:56px; font-size:16px; gap:8px}
  .fbar .sub{display:none}
}
@media (prefers-reduced-motion:reduce){ .fbar .dot{animation:none} }

/* ── 푸터 사업자정보 ─────────────────────────────────────────── */
footer.ft .ftname{font-size:15px;font-weight:700;color:var(--navy);margin:0 0 10px}
footer.ft .biz{margin:0 0 10px;font-size:13px;color:var(--muted);line-height:1.9}
footer.ft .biz span{white-space:nowrap}
footer.ft .biz .sep{margin:0 8px;opacity:.45}
footer.ft .ftnote{margin:12px 0 0;padding-top:12px;border-top:1px solid var(--line);font-size:12.5px;color:var(--muted)}
footer.ft .ftcopy{margin:10px 0 0;font-size:12.5px;color:var(--muted)}

/* ── 태그 (연관 키워드 노출) ─────────────────────────────── */
.tags{margin:30px 0 0;padding-top:20px;border-top:1px solid var(--line)}
.tags .lb{display:block;font-size:12.5px;font-weight:700;color:var(--muted);letter-spacing:.04em;margin:0 0 10px}
.tags ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.tags li{margin:0}
.tags span{display:inline-block;padding:6px 13px;border:1px solid var(--line);border-radius:100px;
           background:var(--bg-soft);color:var(--navy-2);font-size:13.5px;font-weight:600;white-space:nowrap}
/* 출처 앵커 — 도메인을 그대로 노출 (네이버 키워드↔공식출처 매핑 대응) */
.src-list a{color:var(--navy-2);text-decoration:underline;text-underline-offset:2px}
.src-list code{font-family:inherit;font-size:12.5px;color:var(--muted)}
