/*
Theme Name: Clinic Master
Theme URI: https://re-ncompany.com
Author: 리앤컴퍼니
Author URI: https://re-ncompany.com
Description: 클리닉 홍보 사이트 재사용 마스터 템플릿. GeneratePress 자식 테마로, 부산피부과.com 벤치마킹 기반 3열 카드형 홈/아카이브 레이아웃과 게시글 디자인 톤을 기본 내장. 신규 클리닉 사이트 제작 시 이 테마를 설치·활성화하면 레이아웃/색상/타이포그래피가 자동 적용되며, 카테고리와 콘텐츠만 채우면 됨.
Template: generatepress
Version: 1.0.0
Text Domain: clinic-master
*/

/* ===== 참고사이트 디자인 톤 매칭 ===== */
@import url('https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.9/dist/web/static/pretendard.css');

:root {
  --site-bg: #f0f5fa;
  --site-text: #334155;
  --site-heading: #1e293b;
  --site-accent: #046bd2;
  --site-font: 'Pretendard', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Apple SD Gothic Neo", sans-serif;
}
body {
  background-color: var(--site-bg) !important;
  color: var(--site-text);
  font-family: var(--site-font);
}
h1, h2, h3, h4, h5, h6,
.entry-title, .entry-title a, .site-title a {
  color: var(--site-heading) !important;
  font-family: var(--site-font);
}
.entry-content {
  font-family: var(--site-font);
}
a, .entry-meta a, .posted-on a {
  color: var(--site-accent);
}
#masthead.site-header, .site-header {
  background-color: transparent;
  border-bottom: none;
}
.main-navigation a, .menu-item a {
  color: var(--site-text) !important;
}
.grid-container {
  max-width: 1240px;
}

/* 홈/아카이브 3열 카드형 목록 (참고사이트 스타일: 테두리/그림자 없는 플랫형) */
body.home #main.site-main,
body.archive #main.site-main,
body.search #main.site-main {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 32px 28px;
  align-items: start;
}
body.home #main.site-main > article,
body.archive #main.site-main > article,
body.search #main.site-main > article {
  display: flex;
  flex-direction: column;
  margin: 0;
  border: none;
  border-radius: 0;
  overflow: visible;
  background: transparent;
  box-shadow: none;
}
body.home #main.site-main > article .inside-article,
body.archive #main.site-main > article .inside-article,
body.search #main.site-main > article .inside-article {
  display: flex;
  flex-direction: column;
  flex: 1;
}
body.home #main.site-main .post-image,
body.archive #main.site-main .post-image,
body.search #main.site-main .post-image {
  margin: 0 0 14px;
  overflow: hidden;
}
body.home #main.site-main .post-image img,
body.archive #main.site-main .post-image img,
body.search #main.site-main .post-image img {
  width: 100%;
  aspect-ratio: 1 / 1;
  object-fit: cover;
  display: block;
}
body.home #main.site-main .entry-header,
body.archive #main.site-main .entry-header,
body.search #main.site-main .entry-header {
  padding: 0;
}
body.home #main.site-main .entry-title,
body.archive #main.site-main .entry-title,
body.search #main.site-main .entry-title {
  font-size: 1.15em;
  font-weight: 600;
  line-height: 1.4;
  margin-bottom: 4px;
}
body.home #main.site-main .entry-meta,
body.archive #main.site-main .entry-meta,
body.search #main.site-main .entry-meta {
  font-size: 0.85em;
  color: var(--site-accent);
  margin-bottom: 8px;
}
body.home #main.site-main .entry-content,
body.archive #main.site-main .entry-content,
body.search #main.site-main .entry-content {
  padding: 0;
  flex: 1;
  display: flex;
  flex-direction: column;
}
body.home #main.site-main .entry-content > div:first-child,
body.archive #main.site-main .entry-content > div:first-child,
body.search #main.site-main .entry-content > div:first-child {
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  font-size: 0.95em;
  border: none !important;
  background: transparent !important;
  padding: 0 !important;
}
body.home #main.site-main .entry-content a.more-link,
body.archive #main.site-main .entry-content a.more-link,
body.search #main.site-main .entry-content a.more-link {
  margin-top: 10px;
  font-weight: 600;
  color: var(--site-accent);
}

@media (max-width: 680px) {
  body.home #main.site-main,
  body.archive #main.site-main,
  body.search #main.site-main {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 460px) {
  body.home #main.site-main,
  body.archive #main.site-main,
  body.search #main.site-main {
    grid-template-columns: 1fr;
  }
}

/* ===== 카드형 목록(홈/아카이브) 요약부 정리 ===== */
body.home .ov-label,
body.archive .ov-label,
body.search .ov-label {
  display: none;
}
body.home #main.site-main footer.entry-meta,
body.archive #main.site-main footer.entry-meta,
body.search #main.site-main footer.entry-meta {
  display: none;
}

/* ===== 단일 게시글 본문 폭 축소 (참고사이트처럼 좁은 리딩 컬럼) ===== */
body.single .inside-article > .grid-container,
body.single .inside-article .entry-header,
body.single .inside-article .entry-content,
body.single .inside-article > footer.entry-meta {
  max-width: 760px;
  margin-left: auto;
  margin-right: auto;
}

/* ===== 단일 게시글 콘텐츠 템플릿 보조 스타일 ===== */
.single .entry-content p,
.single .entry-content li,
.single .entry-content td,
.single .entry-content th,
.single .entry-content blockquote {
  line-height: 1.9;
}
.single .entry-content p {
  margin: 0 0 1.4em;
}
.single .entry-content li {
  margin-bottom: .5em;
}
.single .entry-content table {
  width: 100%;
  border-collapse: collapse;
  margin: 16px 0;
}
.single .entry-content table th {
  background: #222;
  color: #fff;
  padding: 10px 12px;
  text-align: left;
  border: 1px solid #222;
}
.single .entry-content table td {
  padding: 10px 12px;
  border: 1px solid #ddd;
}
.single .entry-content blockquote {
  border-left: 4px solid #555;
  background: #f8f9fa;
  padding: 14px 20px;
  margin: 20px 0;
  font-style: normal;
}

/* 카드 목록 "Read more" 한글화 (GeneratePress 자체 발췌 기능) */
.read-more.content-read-more {
  font-size: 0;
}
.read-more.content-read-more::after {
  content: "자세히 보기 →";
  font-size: 0.95rem;
  font-weight: 600;
  color: var(--site-accent, #046bd2);
}
