/* ==========================================================
   CIANA LIN MENG — Homepage CSS
   Loaded ONLY by layouts/index.html (standalone template)
   ========================================================== */

:root {
  --font-latin: 'Inter', sans-serif;
  --font-chinese-kai: 'STKaiti', 'KaiTi', 'AR PL KaitiM GB', serif;
  --color-black: #000;
  --color-white: #fff;
  --color-gray-light: #999;
  --header-height: 68px;
}


/* ==========================================================
   HOMEPAGE BODY
   ========================================================== */

.page-home {
  margin: 0;
  padding: 0;
  background: var(--color-white);
  color: var(--color-black);
  overflow: hidden;
  height: 100vh;
  -webkit-font-smoothing: antialiased;
}



/* ==========================================================
   HOMEPAGE MAIN
   ========================================================== */

.homepage {
  position: relative;
  width: 100%;
  height: 100vh;
  padding-top: var(--header-height);
}


/* ==========================================================
   VERTICAL CHINESE MENU
   Hidden by default; toggled via #works-toggle click
   ========================================================== */

.vertical-menu {
  position: absolute;
  top: calc(var(--header-height) + 16px);
  right: 36px;
  z-index: 10;

  display: flex;
  flex-direction: row-reverse; /* 一 在最右 */
  gap: 6px;

  /* Hidden state */
  opacity: 0;
  visibility: hidden;
  transform: translateY(-6px);
  transition: opacity 0.2s ease, visibility 0.2s, transform 0.2s ease;
}

.vertical-menu.is-open {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

.vm-item {
  writing-mode: vertical-rl;
  text-orientation: mixed;
  text-decoration: none;
  color: var(--color-black);
  font-family: var(--font-chinese-kai);
  font-size: 12px;
  line-height: 1.8;
  letter-spacing: 0.05em;
  transition: opacity 0.2s ease;
  white-space: nowrap;
}

.vm-item:hover { opacity: 0.4; }

/* "See All →" — Latin font, slightly muted, aligned to content (not prefix numbers) */
.vm-see-all {
  font-family: var(--font-latin);
  font-weight: 300;
  color: var(--color-gray-light);
  letter-spacing: 0.04em;
  /* Push start of text down past the "X：" prefix (2 chars × 1.8 line-height) */
  padding-top: 3.6em;
}


/* ==========================================================
   HOMEPAGE FOOTER
   ========================================================== */

.home-footer {
  position: absolute;
  bottom: 20px;
  left: 36px;
  font-family: var(--font-latin);
  font-weight: 300;
  font-size: 11px;
  color: var(--color-gray-light);
  letter-spacing: 0.04em;
}


/* ==========================================================
   HERO GLYPHS
   ========================================================== */

.hero-glyphs {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -45%);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 5vw;
  width: 80%;
  max-width: 1100px;
}

.hero-glyphs img {
  width: 28%;
  height: auto;
  display: block;
}


/* ==========================================================
   RESPONSIVE
   ========================================================== */

@media (max-width: 768px) {
  /* 移动端竖排目录隐藏 */
  .vertical-menu { display: none !important; }

  .hero-glyphs {
    width: 90%;
    gap: 4vw;
    transform: translate(-50%, -50%);
  }
}

@media (max-width: 480px) {
  .hero-glyphs {
    flex-direction: column;
    gap: 8vh;
    width: 60%;
  }
  .hero-glyphs img { width: 100%; }
}
