/**
 * 站点样式覆盖（不直接改 themes/，升级主题时仍生效）
 */

/* ========== 链接色：默认中性（适配灰底主站） ========== */
:root {
  --site-link: #3f4f63;
  --site-link-hover: #2a3644;
  --site-link-underline: rgba(63, 79, 99, 0.38);
}

body[data-theme='dark'] {
  --site-link: #9eb4c8;
  --site-link-hover: #c2d4e4;
  --site-link-underline: rgba(158, 180, 200, 0.42);
}

.post a,
.post a:focus,
.page-content .post a {
  color: var(--site-link) !important;
  border-bottom-color: var(--site-link-underline) !important;
  text-decoration-color: var(--site-link-underline) !important;
}

.post a:hover,
.post a:active {
  color: var(--site-link-hover) !important;
  border-bottom-color: var(--site-link-hover) !important;
}

/* 书页链接：略加字重，更易辨认 */
body.book-custom-bg .post a {
  font-weight: 600;
}

body.book-custom-bg {
  --site-link: #7a2438;
  --site-link-hover: #5a1828;
  --site-link-underline: rgba(122, 36, 56, 0.45);
}

body[data-theme='dark'].book-custom-bg {
  --site-link: #e8a0b0;
  --site-link-hover: #f5c4ce;
  --site-link-underline: rgba(232, 160, 176, 0.5);
}

/* 书页元信息：每项一行 */
.book-note .post-meta-stack {
  display: flex;
  flex-direction: column;
  gap: 0.45rem;
  margin: 0.75rem 0 0;
  padding-top: 0.5rem;
  line-height: 1.5;
}

.book-note .post-meta-row {
  display: flex;
  align-items: baseline;
  gap: 0.65rem;
  margin: 0;
}

.book-note .post-meta-row dt {
  flex: 0 0 auto;
  min-width: 9.5em;
  margin: 0;
  font-weight: 500;
  opacity: 0.72;
  font-size: 0.92em;
}

.book-note .post-meta-row dd {
  margin: 0;
  font-weight: 500;
}

.book-note .post-meta-stack time::after {
  display: none;
}

.book-note .post-meta-stack span[itemprop='author'] {
  border-bottom: none;
}

/* 主题原粉色下划线动画（archive 等） */
a::after {
  background: var(--site-link) !important;
}

/* 笔记/文章页：去掉主题自带的毛玻璃背景虚化 */
.wrapper.post {
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

/* 行内代码块的毛玻璃也一并去掉 */
.post code,
body[data-theme="dark"] .post code {
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

.post code {
  background-color: rgba(255, 255, 255, 0.88);
}

body[data-theme="dark"] .post code {
  background-color: rgba(30, 30, 36, 0.75);
}

/* ========== 单书笔记：独立背景 + 悬浮小图 ========== */
body.book-custom-bg {
  background:
    linear-gradient(
      rgba(255, 255, 255, var(--book-bg-overlay-light, 0.62)),
      rgba(255, 255, 255, var(--book-bg-overlay-light, 0.62))
    ),
    var(--book-bg-image) center center / cover no-repeat fixed !important;
}

body[data-theme="dark"].book-custom-bg {
  background:
    linear-gradient(
      rgba(0, 0, 0, var(--book-bg-overlay-dark, 0.82)),
      rgba(0, 0, 0, var(--book-bg-overlay-dark, 0.82))
    ),
    var(--book-bg-image) center center / cover no-repeat fixed !important;
}

.book-float-deco {
  position: fixed;
  z-index: 0;
  width: min(110px, 18vw);
  opacity: 0.42;
  pointer-events: none;
  user-select: none;
  filter: drop-shadow(0 8px 24px rgba(0, 0, 0, 0.12));
  animation: book-float-drift 9s ease-in-out infinite;
}

.book-note.float-pos-br .book-float-deco {
  right: 3vw;
  bottom: 14vh;
}

.book-note.float-pos-bl .book-float-deco {
  left: 3vw;
  bottom: 14vh;
}

.book-note.float-pos-tr .book-float-deco {
  right: 3vw;
  top: 18vh;
}

.book-note .page-content {
  position: relative;
  z-index: 1;
}

@keyframes book-float-drift {
  0%,
  100% {
    transform: translateY(0) rotate(0deg);
  }
  50% {
    transform: translateY(-10px) rotate(2deg);
  }
}

@media screen and (max-width: 768px) {
  .book-float-deco {
    width: min(72px, 22vw);
    opacity: 0.28;
  }
}

/* ========== 导航栏：桌面端单行占满 ========== */
@media screen and (min-width: 769px) {
  .navbar {
    max-width: calc(890px - 30px * 2);
    padding: 15px 24px;
  }

  .menu {
    display: flex;
    align-items: center;
    gap: 10px;
  }

  .menu a#mode {
    float: none;
    position: relative;
    left: 0;
    top: 0;
    flex-shrink: 0;
  }

  .menu .trigger {
    float: none;
    flex: 1;
    min-width: 0;
  }

  .menu .trigger-container {
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    gap: 4px;
  }

  .menu .menu-link {
    white-space: nowrap;
    flex: 1 1 0;
    text-align: center;
    font-size: inherit;
    line-height: 1.5;
    padding: 5px 2px;
    letter-spacing: 0.02em;
  }

  .menu .menu-link:not(:last-child) {
    margin-right: 0;
  }
}
