/* =========================================================================
   19hole · guide 전용 에디토리얼 스킨 (Ivory Editorial)
   - 아이보리 정독형 레이아웃 + 와인 포인트 + 명조 헤드라인 + 좌측 목차(TOC)
   - 기존 본문 인라인스타일을 이기기 위해 view-content 내부는 !important 사용
   ========================================================================= */

:root{
  /* [2026-07-10] 아이보리 → 다크 누아르 전환 (홈페이지와 통일) */
  --ed-bg:#100F0D; --ed-paper:#17150F; --ed-fg:#E8E4DC; --ed-body:#cfc9bc;
  --ed-mut:#a49d8f; --ed-wine:#D9A441; --ed-wine-d:#c08f2f; --ed-line:rgba(255,255,255,.10);
  --ed-serif:"Nanum Myeongjo","Times New Roman",Georgia,serif;
  --ed-sans:"Apple SD Gothic Neo","Pretendard","Malgun Gothic","Noto Sans KR",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
}

/* ---- 페이지 지면 ---- */
.view-wrap.ed-view{
  background:var(--ed-bg);
  color:var(--ed-fg);
  font-family:var(--ed-sans);
  padding:clamp(24px,4vw,52px) clamp(16px,4vw,44px);
  border-radius:14px;
  border:1px solid var(--ed-line);
  box-shadow:0 20px 60px -34px rgba(60,40,20,.45);
}

/* ---- 2단 레이아웃 (좌 TOC / 우 본문) ---- */
.ed-view .ed-grid{
  display:grid; grid-template-columns:210px minmax(0,1fr); gap:clamp(28px,4vw,54px);
  max-width:1080px; margin:0 auto; align-items:start;
}
.ed-view .ed-main{min-width:0}

/* ---- 좌측 목차 ---- */
.ed-view .ed-toc{position:sticky; top:20px; align-self:start; font-size:13.5px}
.ed-view .ed-toc .ed-toc-t{
  color:var(--ed-wine); font-weight:800; letter-spacing:.14em; text-transform:uppercase;
  font-size:11px; margin-bottom:12px;
}
.ed-view .ed-toc a{
  display:block; color:var(--ed-mut); text-decoration:none; padding:8px 0;
  border-top:1px solid var(--ed-line); line-height:1.5; transition:color .15s;
}
.ed-view .ed-toc a:first-child{border-top:0}
.ed-view .ed-toc a:hover,.ed-view .ed-toc a.on{color:var(--ed-wine)}
.ed-view .ed-toc.empty{display:none}

/* ---- 상단 eyebrow ---- */
.ed-view .ed-eyebrow{
  color:var(--ed-wine); font-weight:800; letter-spacing:.16em; text-transform:uppercase;
  font-size:12px; margin-bottom:12px;
}

/* ---- 제목 ---- */
.ed-view h1{
  font-family:var(--ed-serif); font-weight:700;
  font-size:clamp(27px,4.4vw,42px); line-height:1.3; letter-spacing:-.01em;
  text-wrap:balance; margin:0 0 18px; color:var(--ed-fg); padding:0;
}
.ed-view h1 .talker-photo{display:none}

/* ---- 메타 바 ---- */
.ed-view .view-head{
  background:transparent !important; border:0 !important; box-shadow:none !important;
  border-bottom:2px solid var(--ed-fg) !important; border-radius:0 !important;
  margin:0 0 6px !important; padding:0;
}
.ed-view .view-head .panel-heading{background:transparent !important; border:0 !important; padding:0 0 18px !important}
.ed-view .view-head .font-12{color:var(--ed-mut) !important; font-size:13.5px !important}
.ed-view .view-head .fa{color:var(--ed-wine) !important}
.ed-view .view-head .sp{display:inline-block; width:1px; height:11px; background:var(--ed-line); margin:0 10px; vertical-align:middle}
.ed-view .view-head .red{color:var(--ed-wine) !important}
/* 첨부/링크 리스트 */
.ed-view .view-head .list-group{margin-top:14px}
.ed-view .view-head .list-group-item{background:var(--ed-paper); border-color:var(--ed-line)}

/* =========================================================================
   본문  ── 기존 인라인 스타일을 덮어써야 하므로 !important
   ========================================================================= */
.ed-view .view-content{
  font-family:var(--ed-sans) !important;
  color:var(--ed-body) !important;
  font-size:17px; line-height:1.95; max-width:none;
  padding-top:28px;
}
.ed-view .view-content p{
  font-family:var(--ed-sans) !important;
  font-size:17px !important; line-height:1.95 !important;
  color:var(--ed-body) !important; background:transparent !important;
  margin:0 0 18px !important; letter-spacing:0;
}
/* 저자 바이라인 (E-E-A-T) */
.ed-view .view-content .ed-byline{
  display:flex !important; flex-wrap:wrap; gap:5px 12px; align-items:center;
  font-size:13px !important; color:var(--ed-mut) !important; margin:0 0 22px !important;
  padding:11px 0 !important; border-top:1px solid var(--ed-line); border-bottom:1px solid var(--ed-line);
}
.ed-view .view-content .ed-byline strong{color:var(--ed-wine) !important; font-weight:700}
/* 리드 문단 + 드롭캡 */
.ed-view .view-content .ed-lead{font-size:19px !important; line-height:1.85 !important; color:#2c251d !important}
.ed-view .view-content .ed-lead::first-letter{
  float:left; font-family:var(--ed-serif); font-size:74px; line-height:.82;
  font-weight:700; padding:8px 14px 0 0; color:var(--ed-wine);
}
/* 문의 CTA */
.ed-view .view-content .ed-cta{
  margin:36px 0 !important; text-align:center; background:var(--ed-paper);
  border:1px dashed var(--ed-wine); border-radius:8px; padding:26px 24px;
}
.ed-view .view-content .ed-cta strong{display:block; font-size:19px !important; color:var(--ed-fg) !important; margin-bottom:8px}
.ed-view .view-content .ed-cta .ed-tel{font-family:var(--ed-serif); font-size:27px !important; color:var(--ed-wine) !important; font-weight:700; letter-spacing:.02em; display:inline-block; margin:2px 0}
.ed-view .view-content .ed-cta a{color:var(--ed-wine) !important; font-weight:700}
/* 관련글(내부링크) 박스 */
.ed-view .view-content .ed-related{margin:36px 0 !important; background:#f0e7d6; border-radius:8px; padding:20px 24px}
.ed-view .view-content .ed-related b,.ed-view .view-content .ed-related strong{display:block; color:var(--ed-wine) !important; font-family:var(--ed-serif); font-size:17px !important; margin-bottom:10px !important}
.ed-view .view-content .ed-related ul{list-style:none !important; padding:0 !important; margin:0 !important}
.ed-view .view-content .ed-related li{margin:9px 0 !important; padding-left:18px !important; position:relative; background:transparent !important}
.ed-view .view-content .ed-related li::before{content:"›"; position:absolute; left:0; color:var(--ed-wine); font-weight:700}
.ed-view .view-content .ed-related li::marker{content:""}
.ed-view .view-content .ed-related a{color:var(--ed-wine-d) !important; text-decoration:none; font-weight:600}
.ed-view .view-content .ed-related a:hover{text-decoration:underline}
/* 저자 소개 박스 (E-E-A-T) */
.ed-view .view-content .ed-author{margin:38px 0 0 !important; display:flex; gap:16px; align-items:flex-start; background:var(--ed-paper); border:1px solid var(--ed-line); border-left:3px solid var(--ed-wine); border-radius:6px; padding:20px 22px}
.ed-view .view-content .ed-author .ed-ava{flex:0 0 auto; width:46px; height:46px; border-radius:50%; background:var(--ed-wine); color:#fff; display:grid; place-items:center; font-family:var(--ed-serif); font-size:20px; font-weight:700}
.ed-view .view-content .ed-author .ed-aname{font-weight:800 !important; color:var(--ed-fg) !important; margin:0 0 4px !important; font-size:15px !important}
.ed-view .view-content .ed-author p{font-size:13.5px !important; color:var(--ed-mut) !important; margin:0 !important; line-height:1.7 !important}
/* 면책 */
.ed-view .view-content .ed-disclaimer{margin:20px 0 0 !important; font-size:12px !important; color:var(--ed-mut) !important; line-height:1.6 !important; padding-top:14px; border-top:1px solid var(--ed-line)}
/* 태그 */
.ed-view .view-content .ed-tags{margin:26px 0 0 !important; display:flex; flex-wrap:wrap; gap:8px}
.ed-view .view-content .ed-tags a,.ed-view .view-content .ed-tags span{font-size:13px !important; color:var(--ed-wine) !important; background:#efe4d0; padding:5px 12px; border-radius:3px; text-decoration:none}
.ed-view .view-content h2{
  font-family:var(--ed-serif) !important; font-weight:700 !important;
  font-size:25px !important; line-height:1.4 !important;
  color:var(--ed-fg) !important; background:transparent !important;
  margin:40px 0 14px !important; padding:0 0 10px !important;
  border-bottom:1px solid var(--ed-line) !important;
}
.ed-view .view-content h3{
  font-family:var(--ed-serif) !important; font-weight:700 !important;
  font-size:20px !important; color:var(--ed-fg) !important;
  background:transparent !important; margin:30px 0 12px !important;
}
.ed-view .view-content h4,.ed-view .view-content h5{
  font-family:var(--ed-sans) !important; font-weight:800 !important;
  color:var(--ed-wine) !important; background:transparent !important; margin:26px 0 10px !important;
}
.ed-view .view-content strong,.ed-view .view-content b{color:var(--ed-fg) !important; font-weight:700}
.ed-view .view-content a{color:var(--ed-wine) !important; text-underline-offset:3px}
.ed-view .view-content ul,.ed-view .view-content ol{margin:0 0 18px; padding-left:22px}
.ed-view .view-content li{font-size:17px !important; line-height:1.9 !important; color:var(--ed-body) !important; margin:6px 0; background:transparent !important}
.ed-view .view-content li::marker{color:var(--ed-wine)}
.ed-view .view-content img{max-width:100% !important; height:auto !important; border-radius:6px; margin:14px 0}
.ed-view .view-content blockquote{
  margin:30px 0 !important; padding:20px 26px !important;
  background:var(--ed-paper) !important; border:1px solid var(--ed-line) !important;
  border-left:3px solid var(--ed-wine) !important; border-radius:2px;
  font-family:var(--ed-serif) !important; font-size:20px !important; line-height:1.65 !important;
  color:var(--ed-wine-d) !important;
}
.ed-view .view-content table{width:100% !important; border-collapse:collapse !important; margin:26px 0 !important; background:var(--ed-paper)}
.ed-view .view-content table td,.ed-view .view-content table th{
  border:1px solid var(--ed-line) !important; padding:12px 16px !important;
  font-size:15px !important; color:var(--ed-body) !important; background:transparent !important;
}
.ed-view .view-content table th{background:#f0e7d6 !important; color:var(--ed-fg) !important; font-weight:700}

/* ---- 이미지 상/하단 ---- */
.ed-view .view-img img{border-radius:8px; margin:8px 0}

/* ---- 태그 ---- */
.ed-view .view-tag{
  margin-top:30px !important; padding-top:20px; border-top:1px solid var(--ed-line);
  color:var(--ed-mut) !important; font-size:13px !important;
}
.ed-view .view-tag a{
  display:inline-block; color:var(--ed-wine) !important; background:#f0e7d6;
  padding:5px 12px; border-radius:3px; margin:3px 4px 3px 0; text-decoration:none; font-weight:600;
}

/* ---- 추천/비추천 ---- */
.ed-view .view-good-box{margin:34px 0; text-align:center}
.ed-view .view-good a,.ed-view .view-nogood a{color:var(--ed-wine)}

/* ---- SNS / 아이콘 줄 ---- */
.ed-view .view-icon{margin-top:24px; padding-top:18px; border-top:1px solid var(--ed-line)}

/* ---- 작성자 서명 패널 ---- */
.ed-view .view-author{background:var(--ed-paper); border:1px solid var(--ed-line); border-radius:8px}
.ed-view .view-author .panel-heading{background:transparent; border-bottom:1px solid var(--ed-line)}

/* ---- 댓글 제목 ---- */
.ed-view h3.view-comment{
  font-family:var(--ed-serif); font-size:22px; color:var(--ed-fg);
  margin:44px 0 16px; padding-bottom:10px; border-bottom:2px solid var(--ed-fg);
}

/* ---- 하단 버튼 (이전/다음/목록/글쓰기) ---- */
.ed-view .view-btn{margin-top:30px; padding-top:22px; border-top:1px solid var(--ed-line)}
.ed-view .view-btn .btn{border-radius:4px; font-weight:600}
.ed-view .view-btn .btn-black{
  background:var(--ed-paper) !important; color:var(--ed-fg) !important;
  border:1px solid var(--ed-line) !important;
}
.ed-view .view-btn .btn-black:hover{border-color:var(--ed-wine) !important; color:var(--ed-wine) !important}
.ed-view .view-btn .btn-color{
  background:var(--ed-wine) !important; color:#fdf6ef !important; border:1px solid var(--ed-wine) !important;
}

/* ---- 반응형 : 모바일에선 TOC 숨김, 여백 축소 ---- */
@media (max-width:768px){
  .view-wrap.ed-view{border-radius:0; border-left:0; border-right:0; padding:22px 16px 30px}
  .ed-view .ed-grid{grid-template-columns:1fr; gap:0}
  .ed-view .ed-toc{display:none}
  .ed-view h1{font-size:26px}
  .ed-view .view-content,.ed-view .view-content p,.ed-view .view-content li{font-size:16.5px !important}
  .ed-view .view-content .ed-lead{font-size:17.5px !important}
  .ed-view .view-content .ed-lead::first-letter{font-size:58px}
  .ed-view .view-content .ed-author{flex-direction:column; gap:10px}
}

/* =========================================================================
   [2026-07-10] 다크 누아르 통일 — 하드코딩 아이보리 색상 override
   (view.skin.php 인라인 스타일 및 editorial.css 내 고정색을 !important로 덮음)
   ========================================================================= */
.ed-authorbox{background:#17150F !important; border:1px solid rgba(255,255,255,.10) !important;}
.ed-authorbox-ava{background:#D9A441 !important; color:#171310 !important;}
.ed-authorbox-name{color:#E8E4DC !important;}
.ed-authorbox-name span{color:#D9A441 !important;}
.ed-authorbox-bio{color:#a49d8f !important;}
.ed-related{background:#17150F !important; border:1px solid rgba(255,255,255,.10) !important;}
.ed-related-t{color:#E8E4DC !important;}
.ed-related-list a{color:#cfc9bc !important;}
.ed-related-list a:hover{color:#D9A441 !important;}
.ed-related-date{color:#8c877d !important;}
.ed-view .view-content .ed-lead{color:#cfc9bc !important;}
.ed-view .view-content .ed-related{background:#17150F !important;}
.ed-view .view-content .ed-author .ed-ava{background:#D9A441 !important; color:#171310 !important;}
.ed-view .view-content .ed-tags a,.ed-view .view-content .ed-tags span{background:rgba(217,164,65,.14) !important; color:#D9A441 !important;}
.ed-view .view-content table th{background:#221f18 !important; color:#E8E4DC !important;}
.ed-view .view-content table td{border-color:rgba(255,255,255,.10) !important;}
/* 본문 내 밝은가정 인라인색 방어: 기본 본문색 강제 */
.ed-view .view-content, .ed-view .view-content p, .ed-view .view-content div, .ed-view .view-content li, .ed-view .view-content span:not([style*="color:#D9"]){color:#cfc9bc;}
.ed-view .view-content a{color:#D9A441;}
