/* ========== H18 长廊回忆卡（docs08 §2.1；纸张规范参照 06-V1.2/V1.5） ========== */
#memory-card {
  position: fixed; left: 50%; top: 50%; z-index: 45;
  transform: translate(-50%, -46%) scale(.96);
  width: min(430px, 88vw); max-height: 84vh; overflow-y: auto;
  padding: 22px 26px 20px;
  border-radius: 12px;
  /* 暖白信纸底 + 极淡纤维纹（信纸质感，06 纸张规范） */
  background:
    repeating-linear-gradient(0deg, rgba(180, 140, 90, .028) 0 1px, transparent 1px 4px),
    radial-gradient(circle at 30% 12%, #fffdf8, #f8f0e2 58%, #f2e7d2);
  color: #4a3138;
  box-shadow: 0 8px 40px rgba(0, 0, 0, .5), 0 2px 10px rgba(60, 30, 20, .25);
  border: 1px solid rgba(216, 189, 150, .55);
  text-align: center;
  opacity: 0; visibility: hidden; pointer-events: none;
  transition: opacity .45s cubic-bezier(.25, .1, .25, 1), transform .45s cubic-bezier(.25, .1, .25, 1), visibility .45s;
}
#memory-card.on {
  opacity: 1; visibility: visible; pointer-events: auto;
  transform: translate(-50%, -50%) scale(1);
}
#memory-card .mc-head {
  display: flex; justify-content: space-between; align-items: baseline;
  font-size: 12px; letter-spacing: .22em; color: #a8854f;
  border-bottom: 1px solid rgba(168, 133, 79, .3);
  padding-bottom: 8px; margin-bottom: 10px;
}
#memory-card .mc-date { font-weight: 700; }
#memory-card .mc-no { opacity: .75; }
#memory-card .mc-title {
  font-family: var(--hand, 'Ma Shan Zheng', serif); font-weight: 400;
  font-size: clamp(22px, 4.6vw, 28px); color: #43303a; margin: 2px 0 12px;
}
/* 照片区：两侧点击或箭头切换 */
#memory-card .mc-photo {
  position: relative; margin: 0 auto 12px;
  width: 100%; aspect-ratio: 4 / 3; max-height: 42vh;
  border-radius: 8px; overflow: hidden;
  background: #20161c;
  box-shadow: inset 0 0 0 1px rgba(216, 189, 150, .4), 0 4px 14px rgba(60, 30, 20, .18);
}
#memory-card .mc-photo img {
  width: 100%; height: 100%; object-fit: cover; display: block;
  transition: opacity .18s ease;
}
#memory-card .mc-arrow {
  position: absolute; top: 50%; transform: translateY(-50%);
  width: 34px; height: 52px; border: none; cursor: pointer;
  font-size: 26px; line-height: 1; color: #fdf3e6;
  background: rgba(30, 16, 22, .45); backdrop-filter: blur(3px);
  transition: background .25s, opacity .25s; opacity: .75;
}
#memory-card .mc-arrow:hover { background: rgba(30, 16, 22, .72); opacity: 1; }
#memory-card .mc-prev { left: 0; border-radius: 0 8px 8px 0; }
#memory-card .mc-next { right: 0; border-radius: 8px 0 0 8px; }
#memory-card .mc-count {
  position: absolute; right: 8px; bottom: 6px;
  font-size: 11px; letter-spacing: .18em; color: #f7e8d2;
  background: rgba(30, 16, 22, .5); border-radius: 999px; padding: 2px 10px;
}
#memory-card .mc-text {
  font-size: 14px; line-height: 1.9; color: rgba(74, 49, 56, .88);
  margin: 0 0 14px;
}
#memory-card .mc-go {
  font-family: var(--serif); font-size: 14px; letter-spacing: .3em; text-indent: .3em;
  color: #6d4a1f; background: linear-gradient(160deg, #f3dfb4, #dcbd85);
  border: 1px solid rgba(168, 133, 79, .65); border-radius: 999px;
  padding: 10px 30px; cursor: pointer;
  transition: transform .25s, box-shadow .25s, filter .25s;
  box-shadow: 0 3px 12px rgba(120, 84, 30, .25);
}
#memory-card .mc-go:hover {
  transform: translateY(-1px); filter: brightness(1.05);
  box-shadow: 0 6px 18px rgba(120, 84, 30, .35);
}
