/* =========================================================
   신승건의 서재 - Additional CSS (링크 밑줄 정책 정리 버전)
   목표
   1) 포스트/아카이브 제목: 밑줄 없음
   2) 사이트 타이틀: 밑줄 없음
   3) 푸터(사이트 정보/저작권 영역): 밑줄 없음
   4) 포스트/페이지 본문 링크: 밑줄 유지
   ========================================================= */


/* ===== 0. 기본 원칙: 본문 링크는 밑줄 유지 ===== */
/* 본문(글/페이지 내용)에서만 밑줄을 강제 */
.single-post .entry-content a,
.page .entry-content a,
.single-post .entry-content a:visited,
.page .entry-content a:visited,
.single-post .entry-content a:hover,
.page .entry-content a:hover,
.single-post .entry-content a:focus,
.page .entry-content a:focus {
  text-decoration: underline;
  text-underline-offset: 0.15em;
}

/* 본문 링크는 변수 영향도 받도록 보정 */
.single-post .entry-content a,
.page .entry-content a {
  --linkdeco: underline;
}


/* ===== 1. 헤더 영역(사이트 타이틀 포함): 밑줄 제거 ===== */
header.header a,
.site-title a,
.site-branding a {
  text-decoration: none !important;
  --linkdeco: none;
}


/* ===== 2. 포스트/목록 제목 링크: 밑줄 제거 ===== */
.entry-title a,
.nv-post-title a,
.nv-post-title-wrap a,
.blog .nv-title a,
.archive .nv-title a {
  text-decoration: none !important;
  --linkdeco: none;
}


/* ===== 3. 푸터 사이트 정보 영역: 밑줄 제거 (링크는 유지하되 밑줄만 제거) ===== */
/* Neve/WordPress.com에서 흔히 쓰는 푸터 선택자들을 함께 커버 */
footer a,
.footer a,
.site-footer a,
.nv-footer a,
.nv-footer-content a,
.footer-bottom a,
.nv-footer-bottom a,
.site-info a {
  text-decoration: none !important;
  --linkdeco: none;
}

/* 푸터에서만 링크 색/굵기 유지하고 싶으면 아래는 건드리지 않음 */


/* ===== 본문 정렬 ===== */
.type-post p {
  text-align: justify;
}

/* 모바일 가독성 보정 */
@media (max-width: 768px) {
  .type-post p {
    text-align: left;
  }
}


/* ===== 태그 클라우드에서 특정 태그 제외 ===== */
.tag-link-61156,
.tag-link-581363990,
.tag-link-581373648,
.tag-link-581373650,
.tag-link-581373652,
.tag-link-581373654,
.tag-link-581373656,
.tag-link-581373658,
.tag-link-581373660,
.tag-link-581373662,
.tag-link-581373664,
.tag-link-581373666,
.tag-link-581373668,
.tag-link-581373670,
.tag-link-581373672,
.tag-link-581373674,
.tag-link-581373676 {
  display: none !important;
}


/* ===== 불필요 요소 숨김 ===== */
.likebtn-mlw-no-items,
.nv-page-title h1 {
  display: none !important;
}


/* ===== Pagination 중앙 정렬 ===== */
ul.page-numbers {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  padding-left: 0;
  list-style: none;
  margin: 2em auto;
  row-gap: 8px;
}


/* ===== Neve 헤더 고정 (범위 최소화) ===== */
header.header {
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 1100;
  background-color: #ffffff;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
}


/* 헤더 고정으로 인한 겹침 방지 */
body {
  padding-top: 84px;
}

@media (max-width: 768px) {
  body {
    padding-top: 110px;
  }
}


/* ===== 플로팅 버튼 컨테이너 ===== */
#floating-buttons-container {
  position: fixed;
  bottom: 20px;
  left: 0;
  right: 0;
  margin: 0 auto;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 12px;
  z-index: 1200;
}


/* ===== 플로팅 버튼 기본 스타일 ===== */
.floating-button {
  position: relative;
  background: linear-gradient(135deg, #404248, #6a5acd);
  background-size: 200% 200%;
  background-position: 0% 50%;
  color: #fff;
  border-radius: 8px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 7px 20px;
  gap: 5px;
  box-shadow: 0px 6px 12px rgba(0, 0, 0, 0.3);
  font-weight: bold;
  font-size: 16px;
  overflow: hidden;
  transition: background-position 0.8s ease, transform 0.2s ease-in-out;
}


/* ===== 광선 효과 ===== */
.floating-button::before {
  content: "";
  position: absolute;
  top: -50%;
  left: -75%;
  width: 200%;
  height: 200%;
  background: linear-gradient(
    120deg,
    rgba(255, 255, 255, 0) 0%,
    rgba(255, 255, 255, 0.2) 40%,
    rgba(255, 255, 255, 0.6) 50%,
    rgba(255, 255, 255, 0.2) 60%,
    rgba(255, 255, 255, 0) 100%
  );
  transform: rotate(25deg);
  pointer-events: none;
  opacity: 0;
}

.floating-button.shine::before {
  animation: shineEffect 1.2s ease-in-out 1 forwards;
  opacity: 1;
}

@keyframes shineEffect {
  0% { transform: translateX(-100%) rotate(25deg); }
  100% { transform: translateX(100%) rotate(25deg); }
}


/* ===== 호버 효과 ===== */
.floating-button:hover {
  background-position: 100% 50%;
  transform: translateY(-3px);
}


/* ===== 아이콘 및 텍스트 ===== */
.floating-button i {
  font-size: 18px;
  margin-right: 4px;
}

.floating-button span {
  font-size: 16px;
  font-weight: bold;
}


/* ===== 반응형 ===== */
@media (max-width: 768px) {
  .floating-button {
    padding: 6px 9px;
    font-size: 15px;
  }

  .floating-button i {
    font-size: 16px;
  }
}

.mail-icon-wrapper {
  position: relative;
  display: inline-block;
}


/* ===== 사이트 타이틀·태그라인 간격 ===== */
.site-branding {
  margin-bottom: 0 !important;
}

.site-title {
  margin-bottom: 2px !important;
  line-height: 1.2 !important;
}

.site-description {
  margin-top: 0 !important;
  line-height: 1.2 !important;
}


/* ===== 첫 화면 썸네일 상단 간격 ===== */
.blog .nv-index-posts,
.archive .nv-index-posts {
  margin-top: 10px !important;
}


/* ===== 상담 카테고리 메타 정보 숨김 ===== */
.single-post.category-consults .nv-meta-list,
.single-post.category-consults-en .nv-meta-list {
  display: none !important;
}


/* ===== 댓글 제목 숨김 ===== */
.comment-reply-title {
  display: none !important;
}


/* ===== 메타 정보 정렬 ===== */
ul.nv-meta-list {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

ul.nv-meta-list a {
  color: inherit;
  text-decoration: none;
}