.deity-detail-page {
  background-color: var(--paper-white);
  position: relative;
  min-height: 100vh;
  font-family: var(--font-serif);
  color: var(--ink-deep);
}

.deity-detail-page::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-image:
    url("image/svg+xml,%3Csvg width='600' height='600' viewBox='0 0 600 600' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 300 Q 150 280, 300 300 T 600 300' stroke='%23d7ccc8' stroke-width='0.5' fill='none' opacity='0.1'/%3E%3Cpath d='M300 0 Q 280 150, 300 300 T 300 600' stroke='%23d7ccc8' stroke-width='0.5' fill='none' opacity='0.1'/%3E%3C/svg%3E"),
    radial-gradient(circle at 20% 20%, rgba(156, 93, 56, 0.03) 0%, transparent 50%),
    radial-gradient(circle at 80% 80%, rgba(156, 93, 56, 0.02) 0%, transparent 50%);
  background-size: 300px 300px, cover, cover;
  opacity: 0.5;
  pointer-events: none;
  z-index: 1;
}

/* === 頁首：神明基本資料 === */
.deity-detail-header {
  background: linear-gradient(135deg, var(--paper-white) 0%, var(--paper-cream) 100%);
  border-radius: 8px;
  padding: 3rem;
  margin-bottom: 3rem;
  box-shadow:
    0 8px 30px rgba(0,0,0,0.1),
    inset 0 0 0 1px rgba(255,255,255,0.5);
  position: relative;
  overflow: hidden;
  border-left: 4px solid var(--vermilion-medium);
}

.deity-profile {
  display: flex;
  align-items: center;
  gap: 3rem;
  margin-bottom: 2rem;
}

.deity-symbol {
  flex-shrink: 0;
  position: relative;
}

.deity-symbol-icon {
  width: 140px;
  height: 140px;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--ochre) 0%, var(--gamboge) 100%);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--paper-white);
  font-family: var(--font-title);
  font-size: 3.5rem;
  border: 5px solid var(--paper-white);
  box-shadow:
    0 12px 35px rgba(156, 93, 56, 0.4),
    inset 0 0 25px rgba(255,255,255,0.5);
  position: relative;
  z-index: 2;
}

.deity-basic-info { flex: 1; }

.deity-title {
  font-size: 3.2rem;
  color: var(--ochre);
  margin-bottom: 0.8rem;
  font-family: var(--font-title);
  text-shadow:
    2px 2px 0 var(--paper-white),
    4px 4px 0 rgba(0,0,0,0.05);
  letter-spacing: 4px;
}

.deity-subtitle {
  font-size: 1.4rem;
  color: var(--vermilion-dark);
  margin-bottom: 1.5rem;
  font-weight: 600;
  border-left: 3px solid var(--vermilion-dark);
  padding-left: 1rem;
}

.deity-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 0.8rem;
  margin-bottom: 2rem;
}

.deity-tag {
  background: rgba(156, 93, 56, 0.1);
  color: var(--ochre);
  padding: 0.5rem 1.2rem;
  border-radius: 20px;
  font-size: 0.95rem;
  border: 1px solid rgba(156, 93, 56, 0.3);
  font-weight: 500;
  transition: all 0.3s ease;
}
.deity-tag:hover {
  background: rgba(156, 93, 56, 0.15);
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(156, 93, 56, 0.2);
}

/* === 神格定調區塊（靜態卷軸）=== */
.deity-essence-section {
  margin: 4rem 0;
  position: relative;
  text-align: center;
}

.deity-essence-title {
  font-family: var(--font-title);
  font-size: 2.5rem;
  color: var(--vermilion-dark);
  margin-bottom: 3rem;
  position: relative;
  letter-spacing: 6px;
}
.deity-essence-title::before,
.deity-essence-title::after {
  content: '❖';
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  color: var(--ochre);
  opacity: 0.5;
  font-size: 1.5rem;
}
.deity-essence-title::before { left: 25%; }
.deity-essence-title::after { right: 25%; }

/* 卷軸容器 - 僅視覺模擬 */
.deity-scroll-mockup {
  max-width: 900px;
  margin: 0 auto;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* 軸頭（靜態裝飾） */
.deity-scroll-handle {
  width: 60px;
  min-height: 400px;
  background: linear-gradient(135deg,
    var(--ochre) 0%,
    var(--gamboge) 30%,
    var(--ochre) 70%,
    #654321 100%);
  border-radius: 8px;
  box-shadow:
    inset 0 0 20px rgba(0, 0, 0, 0.3),
    0 4px 12px rgba(0, 0, 0, 0.2);
  z-index: 2;
  position: relative;
}
.deity-scroll-handle.left {
  border-right: 2px solid #654321;
  transform: rotate(1deg);
  margin-right: -30px;
}
.deity-scroll-handle.right {
  border-left: 2px solid #654321;
  transform: rotate(-1deg);
  margin-left: -30px;
}
.handle-ornament {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-size: 2.5rem;
  color: #d2b48c;
  opacity: 0.7;
  font-family: var(--font-classic);
}

/* 卷軸內容（不可互動） */
.deity-scroll-content {
  flex: 1;
  min-height: 400px;
  position: relative;
  background: var(--paper-old);
  border-top: 1px solid var(--ink-wash);
  border-bottom: 1px solid var(--ink-wash);
}

.deity-scroll-paper {
  padding: 4rem;
  min-height: 400px;
  position: relative;
  background-image:
    url("image/svg+xml,%3Csvg width='100' height='100' viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M11 18c3.866 0 7-3.134 7-7s-3.134-7-7-7-7 3.134-7 7 3.134 7 7 7zm48 25c3.866 0 7-3.134 7-7s-3.134-7-7-7-7 3.134-7 7 3.134 7 7 7zm-43-7c1.657 0 3-1.343 3-3s-1.343-3-3-3-3 1.343-3 3 1.343 3 3 3zm63 31c1.657 0 3-1.343 3-3s-1.343-3-3-3-3 1.343-3 3 1.343 3 3 3zM34 90c1.657 0 3-1.343 3-3s-1.343-3-3-3-3 1.343-3 3 1.343 3 3 3zm56-76c1.657 0 3-1.343 3-3s-1.343-3-3-3-3 1.343-3 3 1.343 3 3 3zM12 86c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm28-65c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm23-11c2.76 0 5-2.24 5-5s-2.24-5-5-5-5 2.24-5 5 2.24 5 5 5zm-6 60c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm29 22c2.76 0 5-2.24 5-5s-2.24-5-5-5-5 2.24-5 5 2.24 5 5 5zM32 63c2.76 0 5-2.24 5-5s-2.24-5-5-5-5 2.24-5 5 2.24 5 5 5zm57-13c2.76 0 5-2.24 5-5s-2.24-5-5-5-5 2.24-5 5 2.24 5 5 5zm-9-21c1.105 0 2-.895 2-2s-.895-2-2-2-2 .895-2 2 .895 2 2 2zM60 91c1.105 0 2-.895 2-2s-.895-2-2-2-2 .895-2 2 .895 2 2 2zM35 41c1.105 0 2-.895 2-2s-.895-2-2-2-2 .895-2 2 .895 2 2 2zM12 60c1.105 0 2-.895 2-2s-.895-2-2-2-2 .895-2 2 .895 2 2 2z' fill='%238b4513' fill-opacity='0.03' fill-rule='evenodd'/%3E%3C/svg%3E"),
    radial-gradient(circle at 10% 10%, rgba(139, 69, 19, 0.05) 0%, transparent 50%),
    radial-gradient(circle at 90% 90%, rgba(139, 69, 19, 0.05) 0%, transparent 50%);
  background-size: 100px 100px, cover, cover;
  border: 1px solid rgba(139, 69, 19, 0.2);
  box-shadow:
    inset 0 0 50px rgba(139, 69, 19, 0.1),
    0 5px 20px rgba(0, 0, 0, 0.1);
}

/* 內容樣式 */
.deity-scroll-paper p {
  font-size: 1.15rem;
  line-height: 1.9;
  color: var(--ink-deep);
  font-family: var(--font-serif);
  text-align: justify;
  text-indent: 2em;
  margin-bottom: 1.5rem;
}
.deity-scroll-paper p:last-child {
  margin-bottom: 0;
}

/* 印章裝飾（靜態） */
.essence-seals {
  display: flex;
  justify-content: center;
  gap: 1.5rem;
  margin-top: 3rem;
  padding-top: 2rem;
  border-top: 2px dashed var(--ink-wash);
}
.essence-seal {
  width: 80px;
  height: 80px;
  background: linear-gradient(135deg,
    var(--vermilion-dark) 0%,
    var(--ochre) 100%);
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: var(--font-classic);
  color: white;
  font-size: 1.2rem;
  opacity: 0.9;
  box-shadow: 2px 2px 5px rgba(0,0,0,0.2);
}

/* === 聖蹟卷宗區塊 === */
.deity-stories-section {
  margin: 3rem 0;
}

.deity-stories-title {
  color: var(--gold-dark);
  font-size: 2.2rem;
  margin-bottom: 2rem;
  font-family: var(--font-title);
  text-align: center;
  border-bottom: 2px solid rgba(249,168,37,0.3);
  padding-bottom: 0.8rem;
}

.deity-stories-list {
  display: flex;
  flex-direction: column;
  gap: 2rem;
}

.deity-story-item {
  background: rgba(250,248,243,0.85);
  padding: 1.8rem;
  border-radius: 10px;
  border-left: 4px solid var(--gold-dark);
  position: relative;
}

.deity-story-preview h3 {
  font-family: var(--font-title);
  font-size: 1.5rem;
  color: var(--ink-deep);
  margin-bottom: 0.6rem;
}

.deity-story-intro {
  color: var(--ink-light);
  line-height: 1.7;
  margin-bottom: 0.8rem;
}

.deity-story-toggle {
  background: var(--paper-aged);
  color: var(--vermilion-dark);
  border: 1px solid var(--gold-dark);
  padding: 0.5rem 1rem;
  border-radius: 6px;
  cursor: pointer;
  font-size: 0.95rem;
  transition: all 0.2s;
}
.deity-story-toggle:hover {
  background: #e0e0e0;
}

.deity-story-content {
  margin-top: 1.5rem;
  padding-top: 1.5rem;
  border-top: 1px dashed var(--ink-wash);
  background-image: url("image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='100' height='100'%3E%3Cpath d='M0,0 L100,0' stroke='%23f5f0e6' stroke-width='0.5' opacity='0.5'/%3E%3C/svg%3E");
  background-size: 100px 100px;
}
.deity-story-content.hidden {
  display: none;
}
/* =========================
   Pantheon extras styling
   ========================= */

.panth-extras-divider {
  margin: 26px 0 18px;
  border-top: 1px dashed rgba(140, 80, 34, 0.25);
}

.panth-extras-head {
  text-align: center;
  margin: 0 0 14px;
}

.panth-extras-kicker {
  display: inline-block;
  padding: 6px 14px;
  font-size: 1.5rem;
  border: 1px solid rgba(140, 80, 34, 0.25);
  background: rgba(255, 255, 255, 0.55);
  border-radius: 999px;
  font-family: 'iansui', cursive;
  letter-spacing: 0.12em;
  color: rgba(60, 45, 24, 0.9);
}

.panth-extras-desc {
  margin-top: 8px;
  font-family: 'keel one', cursive;
  font-size: 1rem;
  opacity: 0.75;
}

.panth-extras-list .panth-story-item {
  border-left: 3px solid rgba(93, 140, 135, 0.55);
}

.panth-extras-list .panth-story-title a::before {
  content: "✶ ";
  opacity: 0.7;
}
/* === 雙版本內容 === */
.deity-dual-version {
  display: flex;
  flex-direction: column;
  gap: 2rem;
  margin-top: 1rem;
}

.deity-dual-version h4 {
  font-size: 1.1rem;
  font-weight: 700;
  margin-bottom: 0.8rem;
  color: var(--vermilion-dark);
  display: flex;
  align-items: center;
}

.deity-version-original blockquote {
  background: var(--paper-cream);
  border-left: 3px solid var(--ochre);
  padding: 1.2rem;
  margin: 0;
  font-size: 0.95rem;
  color: var(--ink-light);
  line-height: 1.8;
  font-style: italic;
}

.deity-story-location-tag {
  margin-top: 1.5rem;
  padding-top: 1rem;
  border-top: 1px solid var(--ink-wash);
  font-style: italic;
  color: var(--vermilion-dark);
  text-align: right;
}

/* === 廟宇記錄區塊 === */
.deity-temple-section {
  background: rgba(250,248,243,0.95);
  border-radius: 16px;
  padding: 2.5rem;
  margin: 3rem 0;
  border-left: 5px solid var(--indigo-dark);
  position: relative;
  overflow: hidden;
}

.deity-temple-section::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(135deg, rgba(40,53,147,0.02) 0%, transparent 50%, rgba(40,53,147,0.01) 100%);
  pointer-events: none;
  z-index: 0;
}

.deity-temple-title {
  color: var(--indigo-dark);
  font-size: 2rem;
  margin-bottom: 1.5rem;
  font-family: var(--font-title);
  border-bottom: 2px solid rgba(40,53,147,0.2);
  padding-bottom: 0.8rem;
}

.deity-temple-info {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  gap: 1.5rem;
  margin-bottom: 2rem;
}

.deity-temple-item {
  background: var(--paper-white);
  border-radius: 8px;
  padding: 1.5rem;
  box-shadow: 0 2px 8px rgba(0,0,0,0.05);
}
.deity-temple-item h4 {
  color: var(--indigo-dark);
  margin-bottom: 0.5rem;
  font-size: 1.1rem;
  font-weight: 700;
}
.deity-temple-item p {
  color: var(--ink-light);
  line-height: 1.6;
  font-size: 0.95rem;
}

.deity-temple-note {
  font-style: italic;
  color: var(--ink-deep);
  margin-top: 1.5rem;
  padding-top: 1rem;
  border-top: 1px solid var(--ink-wash);
  text-align: center;
}

/* === 延伸閱讀區塊 === */
.deity-related-section {
  background: rgba(250,248,243,0.95);
  border-radius: 16px;
  padding: 2.5rem;
  margin: 3rem 0;
  border-left: 5px solid var(--gold-dark);
}

.deity-related-title {
  color: var(--gold-dark);
  font-size: 2rem;
  margin-bottom: 1.5rem;
  font-family: var(--font-title);
  text-align: center;
}

.deity-related-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 1.5rem;
}

.deity-related-card {
  background: var(--paper-white);
  border-radius: 8px;
  padding: 1.5rem;
  box-shadow: 0 2px 8px rgba(0,0,0,0.05);
  transition: all 0.3s ease;
  text-decoration: none;
  display: block;
}
.deity-related-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 4px 12px rgba(0,0,0,0.1);
}
.deity-related-card h4 {
  color: var(--ink-deep);
  margin-bottom: 0.5rem;
  font-size: 1.1rem;
  font-weight: 700;
}
.deity-related-card p {
  color: var(--ink-light);
  font-size: 0.95rem;
  line-height: 1.5;
}

/* === 返回按鈕 === */
.deity-back-btn {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  background: rgba(198, 40, 40, 0.08);
  color: var(--vermilion-medium);
  padding: 0.8rem 1.8rem;
  border-radius: 4px;
  text-decoration: none;
  font-weight: 600;
  transition: all 0.3s ease;
  border: 1px solid var(--vermilion-medium);
  margin-bottom: 2rem;
  box-shadow:
    0 3px 10px rgba(0,0,0,0.05),
    inset 0 0 0 1px rgba(255,255,255,0.5);
}
.deity-back-btn:hover {
  background: rgba(198, 40, 40, 0.15);
  transform: translateX(-5px);
  box-shadow:
    0 6px 15px rgba(0,0,0,0.08),
    inset 0 0 0 1px rgba(255,255,255,0.6);
}

.panth-story-header {
    margin-bottom: 50px;
    text-align: center;
}

.panth-story-main-title {
    font-size: 3.4rem;
    color: #5d4c3a;
    margin-bottom: 15px;
    letter-spacing: 4px;
}

.panth-story-subtitle {
    font-size: 1.5rem;
    color: #7a6b56;
    font-style: italic;
    margin-bottom: 25px;
}

.panth-story-meta {
    display: flex;
    justify-content: center;
    gap: 30px;
    color: #9c8e7a;
    font-size: 0.95rem;
    flex-wrap: wrap;
}

.panth-meta-deity,
.panth-meta-date {
    padding: 8px 20px;
    background: rgba(232, 223, 208, 0.7);
    border: 1px solid #d4c9b8;
    border-radius: 2px;
}

.panth-story-cover {
    margin: 40px 0;
    text-align: center;
}

.panth-story-cover .panth-image-container {
    height: 400px;
    margin-bottom: 15px;
}

.panth-story-content {
    margin: 60px 0;
}

.panth-story-chapters {
    background: rgba(248, 244, 233, 0.7);
    border: 1px solid #d9d0bb;
    border-radius: 3px;
    padding: 30px;
    margin: 40px 0;
}

.panth-chapter-title {
    color: #5d4c3a;
    margin-bottom: 20px;
    padding-bottom: 10px;
    border-bottom: 1px solid rgba(176, 155, 124, 0.3);
}

.panth-chapter-list {
    list-style: none;
    padding-left: 0;
}

.panth-chapter-item {
    padding: 10px 0;
    color: #6d5a45;
    border-bottom: 1px dashed rgba(176, 155, 124, 0.2);
    position: relative;
    padding-left: 25px;
}

.panth-chapter-item::before {
    content: '·';
    position: absolute;
    left: 0;
    color: #b09b7c;
    font-size: 1.5rem;
}

.panth-story-pagination {
    display: flex;
    justify-content: space-between;
    margin: 60px 0;
    padding: 20px 0;
    border-top: 1px dashed rgba(176, 155, 124, 0.3);
    border-bottom: 1px dashed rgba(176, 155, 124, 0.3);
}

.panth-prev-story,
.panth-next-story {
    padding: 12px 25px;
    background: rgba(232, 223, 208, 0.8);
    border: 1px solid #d4c9b8;
    border-radius: 2px;
    color: #6d5a45;
    text-decoration: none;
    transition: all 0.3s;
    max-width: 45%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.panth-prev-story:hover,
.panth-next-story:hover {
    border-color: #b09b7c;
    color: #5d4c3a;
    background: rgba(176, 155, 124, 0.1);
}

/* 🏮 單一神明頁 - 主視覺區 */
.panth-deity-header {
margin-bottom: 80px;
position: relative;
text-align: center;
padding: 40px 0;
background:
linear-gradient(rgba(242, 236, 219, 0.9) 0%,
rgba(235, 229, 210, 0.85) 100%);
border-radius: 10px;
border: 3px solid #d4c9b8;
box-shadow:
0 15px 40px rgba(0, 0, 0, 0.15),
inset 0 1px 0 rgba(255, 255, 255, 0.8);
}
.panth-deity-main-title {
font-size: 3.5rem;
color: #5d4c3a;
text-align: center;
margin-bottom: 15px;
letter-spacing: 12px;
position: relative;
padding-bottom: 25px;
text-shadow:
2px 2px 4px rgba(0, 0, 0, 0.15),
0 1px 0 rgba(255, 255, 255, 0.5);
}
.panth-deity-main-title::after {
content: '';
position: absolute;
bottom: 0;
left: 30%;
right: 30%;
height: 3px;
background:
linear-gradient(90deg,
transparent,
#b09b7c,
rgba(156, 142, 122, 0.8),
#b09b7c,
transparent);
border-radius: 1.5px;
box-shadow: 0 2px 5px rgba(176, 155, 124, 0.3);
}
.panth-deity-subtitle {
font-size: 1.8rem;
color: #7a6b56;
text-align: center;
font-style: italic;
letter-spacing: 6px;
margin-bottom: 40px;
padding: 15px 40px;
display: inline-block;
background: rgba(232, 223, 208, 0.8);
border-radius: 4px;
border: 1px solid rgba(192, 160, 128, 0.4);
box-shadow:
inset 0 1px 0 rgba(255, 255, 255, 0.6),
0 5px 15px rgba(0, 0, 0, 0.1);
}
/* 📷 身份確立區 - 主視覺 */
.panth-identity-section {
background:
linear-gradient(rgba(248, 244, 233, 0.85) 0%,
rgba(242, 236, 219, 0.9) 100%),
url("data:image/svg+xml,%3Csvg width='150' height='150' xmlns='http://www.w3.org/2000/svg'%3E%3Crect x='10' y='10' width='130' height='130' stroke='rgba(140,120,100,0.1)' stroke-width='1' fill='none'/%3E%3C/svg%3E");
border: 2px solid #d9d0bb;
border-radius: 6px;
padding: 50px 60px;
margin: 80px 0;
position: relative;
box-shadow:
0 15px 40px rgba(0, 0, 0, 0.15),
inset 0 1px 0 rgba(255, 255, 255, 0.7);
}
/* 經匣裝飾 */
.panth-identity-section::before {
content: '';
position: absolute;
top: -15px;
left: -15px;
right: -15px;
bottom: -15px;
border: 3px solid #c4b7a0;
border-radius: 8px;
pointer-events: none;
opacity: 0.4;
z-index: -1;
background:
linear-gradient(45deg, transparent 97%, rgba(196, 183, 160, 0.3) 97%),
linear-gradient(-45deg, transparent 97%, rgba(196, 183, 160, 0.3) 97%);
}
.panth-visual-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
gap: 50px;
margin-bottom: 40px;
}
.panth-image-item {
  text-align: center;
  position: relative;
  font-family: "Klee One", cursive;
  font-weight: 600;
  font-size: 1.3rem;
  margin-bottom: 20px;
}
.panth-image-item-center {
  text-align: center;
  position: relative;
}
.panth-image-container {
width: auto;
height: auto; /* ✅ 移除固定高度 */
background:
linear-gradient(#f5f1e6e6 0%,
#f0ebddcc 100%);
border: 2px solid #d4c9b8;
border-radius: 4px;
overflow: hidden;
margin-bottom: 20px;
position: relative;
box-shadow:
0 10px 30px rgba(0, 0, 0, 0.1),
inset 0 1px 0 rgba(255, 255, 255, 0.6);
transition: all 0.4s ease;
}
.panth-image-container:hover {
transform: translateY(-5px);
box-shadow:
0 20px 50px rgba(0, 0, 0, 0.2),
inset 0 1px 0 rgba(255, 255, 255, 0.8);
border-color: #b09b7c;
}
.panth-image-container img {
  width: auto;
  height: auto; /* ✅ 保持原始比例 */
  object-fit: contain; /* ✅ 不裁剪，完整顯示 */
  transition: opacity 0.8s ease, transform 0.8s ease;
  will-change: opacity, transform;
}

.panth-image-container:hover img {
transform: scale(1.05);
}
.panth-image-load-effect {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: radial-gradient(circle at center,
        transparent 0%,
        rgba(176, 155, 124, 0.1) 50%,
        transparent 100%);
    pointer-events: none;
    z-index: 1;
    opacity: 0;
    animation: panth-ink-spread 1s ease-out forwards;
}
/* 圖片邊框裝飾 */
.panth-image-container::before {
content: '';
position: absolute;
top: -5px;
left: -5px;
right: -5px;
bottom: -5px;
background:
linear-gradient(45deg, transparent 96%, rgba(176, 155, 124, 0.3) 96%),
linear-gradient(-45deg, transparent 96%, rgba(176, 155, 124, 0.3) 96%);
border-radius: 8px;
pointer-events: none;
z-index: -1;
opacity: 0.5;
}
.panth-temple-info-centered {
  margin-top: 20px;
  padding-top: 15px;
  border-top: 1px solid rgba(180, 160, 140, 0.3);
  text-align: center;
  color: #7a6b56;
  font-size: 0.95rem;
  font-family: "Klee One", cursive;
  font-weight: 600;
  line-height: 1.6;
}
.panth-temple-info-centered div {
  margin: 4px 0;
}

/* 🎴 神格定調區 - 核心內容 */
.panth-essence-section {
background:
linear-gradient(145deg,
rgba(242, 236, 219, 0.95) 0%,
rgba(235, 229, 210, 0.9) 100%),
url("data:image/svg+xml,%3Csvg width='200' height='200' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M20,100 Q100,20 180,100 T180,100' stroke='rgba(140,120,100,0.05)' stroke-width='1' fill='none'/%3E%3C/svg%3E");
border: 3px solid #d4c9b8;
border-radius: 8px;
padding: 70px 80px;
margin: 80px 0;
position: relative;
box-shadow:
0 20px 60px rgba(0, 0, 0, 0.2),
inset 0 1px 0 rgba(255, 255, 255, 0.8),
inset 0 -1px 0 rgba(0, 0, 0, 0.15);
}
/* 書帙裝飾 */
.panth-essence-section::before {
content: '';
position: absolute;
top: 15px;
left: 15px;
right: 15px;
bottom: 15px;
border: 2px solid rgba(176, 155, 124, 0.3);
border-radius: 6px;
pointer-events: none;
z-index: 0;
background:
linear-gradient(45deg, transparent 98%, rgba(176, 155, 124, 0.1) 98%),
linear-gradient(-45deg, transparent 98%, rgba(176, 155, 124, 0.1) 98%);
}
.panth-essence-content {
font-size: 1.25rem;
line-height: 2.2; /* ✅ 寬鬆行距 */
color: #4a3c2a;
text-align: justify;
position: relative;
z-index: 1;
letter-spacing: 0.3px;
text-shadow: 0 1px 1px rgba(255, 255, 255, 0.5);
}

/* 🔑 神格關鍵詞區 */
.panth-keywords-section {
margin: 70px 0;
text-align: center;
}

.panth-keywords-grid {
display: flex;
flex-wrap: wrap;
gap: 0.8rem;
margin-top: 1.5rem;
justify-content: center;
}
.panth-keywords-minimal {
  display: flex;
  justify-content: center;
  gap: 1.2rem;
  margin: 4rem auto;
  padding: 1.5rem 0;
  border-top: 1px solid rgba(176, 155, 124, 0.2);
  border-bottom: 1px solid rgba(176, 155, 124, 0.2);
  max-width: 800px;
}

.panth-keyword-minimal {
  font-family: var(--font-title); /* Ma Shan Zheng 手寫感 */
  font-size: 1.15rem;
  color: var(--vermilion-dark);
  opacity: 0.9;
  letter-spacing: 1px;
  position: relative;
}

.panth-keyword-minimal::before {
  content: '·';
  position: absolute;
  left: -1.2rem;
  top: 0;
  color: var(--ink-light);
  font-family: var(--font-serif);
}

.panth-keyword-tag {
/* 方形印章感 */
background: var(--paper-white);
border: 2px solid var(--vermilion-dark);
color: var(--vermilion-dark);
padding: 0.4rem 1rem;
font-family: var(--font-title); /* Ma Shan Zheng 手寫感 */
font-size: 1.1rem;
letter-spacing: 1px;
text-align: center;
min-width: 80px;
box-shadow:
0 2px 4px rgba(198, 40, 40, 0.1),
inset 0 0 0 1px rgba(255, 255, 255, 0.8);
transition: all 0.2s ease;
}
.panth-keyword-tag:hover {
transform: translateY(-2px);
box-shadow:
0 4px 8px rgba(198, 40, 40, 0.2),
inset 0 0 0 1px rgba(255, 255, 255, 0.9);
background: rgba(198, 40, 40, 0.03);
}
/* ============================================
關鍵詞效果詳細樣式
============================================ */
.panth-keyword-ink-effect {
position: absolute;
top: 50%;
left: 50%;
background: radial-gradient(circle,
rgba(176, 155, 124, 0.2) 0%,
rgba(156, 142, 122, 0.1) 40%,
transparent 70%);
border-radius: 50%;
pointer-events: none;
z-index: -1;
transform: translate(-50%, -50%);
}
.panth-keyword-text-effect {
position: absolute;
top: -40px;
left: 50%;
transform: translateX(-50%);
font-family: var(--font-classic);
color: rgba(176, 155, 124, 0.8);
font-size: 1.1rem;
white-space: nowrap;
opacity: 0;
pointer-events: none;
z-index: 10;
text-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
background: rgba(40, 35, 30, 0.9);
padding: 5px 10px;
border-radius: 4px;
border: 1px solid rgba(176, 155, 124, 0.3);
}
.panth-keyword-seal {
position: absolute;
top: -8px;
right: -8px;
width: 20px;
height: 20px;
background: rgba(182, 69, 69, 0.1);
border: 1px solid rgba(182, 69, 69, 0.3);
border-radius: 4px;
display: flex;
align-items: center;
justify-content: center;
font-family: var(--font-classic);
color: rgba(182, 69, 69, 0.5);
font-size: 0.8rem;
opacity: 0;
transform: scale(0.5);
transition: all 0.3s ease;
z-index: 1;
pointer-events: none;
}
.panth-keyword-ripple {
position: absolute;
top: 50%;
left: 50%;
background: radial-gradient(circle,
rgba(176, 155, 124, 0.3) 0%,
transparent 70%);
border-radius: 50%;
pointer-events: none;
z-index: -1;
transform: translate(-50%, -50%) scale(0);
opacity: 0.8;
}
.panth-keyword-tag:hover {
background:
linear-gradient(145deg,
rgba(217, 208, 187, 0.9) 0%,
rgba(200, 190, 170, 0.8) 100%);
border-color: #b09b7c;
transform: translateY(-5px) scale(1.05);
box-shadow:
0 15px 35px rgba(0, 0, 0, 0.2),
0 0 20px rgba(176, 155, 124, 0.2),
inset 0 1px 0 rgba(255, 255, 255, 0.8);
color: #5d4c3a;
}
/* 關鍵詞印章效果 */
.panth-keyword-tag::before {
content: '';
position: absolute;
top: 5px;
left: 5px;
right: 5px;
bottom: 5px;
background:
linear-gradient(45deg, transparent 95%, rgba(176, 155, 124, 0.2) 95%),
linear-gradient(-45deg, transparent 95%, rgba(176, 155, 124, 0.2) 95%);
border-radius: 20px;
pointer-events: none;
opacity: 0.3;
}
/* 📜 聖蹟卷宗區 */
.panth-stories-section {
margin: 80px 0;
}
.panth-stories-list {
background:
linear-gradient(rgba(248, 244, 233, 0.9) 0%,
rgba(242, 236, 219, 0.95) 100%);
border: 2px solid #d9d0bb;
border-radius: 6px;
padding: 60px 70px;
position: relative;
box-shadow:
0 15px 40px rgba(0, 0, 0, 0.15),
inset 0 1px 0 rgba(255, 255, 255, 0.7);
}
/* 卷軸裝飾 */
.panth-stories-list::before {
content: '';
position: absolute;
top: -8px;
left: -8px;
right: -8px;
bottom: -8px;
border: 2px solid rgba(176, 155, 124, 0.4);
border-radius: 8px;
pointer-events: none;
z-index: -1;
background:
linear-gradient(45deg, transparent 97%, rgba(176, 155, 124, 0.1) 97%),
linear-gradient(-45deg, transparent 97%, rgba(176, 155, 124, 0.1) 97%);
}
.panth-story-items {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
gap: 35px;
margin-top: 40px;
}
.panth-story-item {
padding: 30px 35px;
background:
linear-gradient(rgba(255, 255, 255, 0.95) 0%,
rgba(250, 250, 245, 0.9) 100%);
border: 1px solid #e8dfd0;
border-radius: 4px;
transition: all 0.4s ease;
position: relative;
box-shadow:
0 8px 25px rgba(0, 0, 0, 0.08),
inset 0 1px 0 rgba(255, 255, 255, 0.8);
}
.panth-story-item:hover {
border-color: #b09b7c;
transform: translateX(8px) translateY(-3px);
box-shadow:
0 15px 40px rgba(0, 0, 0, 0.15),
0 0 0 1px rgba(176, 155, 124, 0.2),
inset 0 1px 0 rgba(255, 255, 255, 0.9);
}
.panth-story-item::before {
content: '卷';
position: absolute;
top: 15px;
right: 15px;
font-family: 'STKaiti', cursive;
color: rgba(176, 155, 124, 0.6);
font-size: 1.1rem;
padding: 5px 10px;
background: rgba(232, 223, 208, 0.6);
border-radius: 3px;
border: 1px solid rgba(212, 201, 184, 0.4);
}
.panth-story-title {
font-size: 1.4rem;
color: #5d4c3a;
margin-bottom: 15px;
padding-right: 50px;
line-height: 1.4;
}
.panth-story-title a {
color: inherit;
text-decoration: none;
transition: color 0.3s;
position: relative;
display: inline-block;
}
.panth-story-title a:hover {
color: #8b7355;
}
.panth-story-title a::after {
content: '';
position: absolute;
bottom: -3px;
left: 0;
width: 0;
height: 2px;
background: linear-gradient(90deg,
rgba(139, 115, 85, 0.8),
rgba(176, 155, 124, 0.8));
transition: width 0.3s ease;
}
.panth-story-title a:hover::after {
width: 100%;
}
.panth-story-desc {
font-size: 1rem;
color: #7a6b56;
line-height: 1.6;
margin-top: 10px;
}
/* 📖 延伸閱讀區 */
.panth-extensions-section {
margin: 60px 0;
padding: 50px;
background:
linear-gradient(rgba(242, 236, 219, 0.6) 0%,
rgba(235, 229, 210, 0.7) 100%);
border: 2px dashed #c4b7a0;
border-radius: 8px;
text-align: center;
box-shadow:
0 10px 30px rgba(0, 0, 0, 0.1),
inset 0 1px 0 rgba(255, 255, 255, 0.5);
}
.panth-extension-links {
display: flex;
justify-content: center;
gap: 35px;
margin-top: 30px;
flex-wrap: wrap;
}
.panth-extension-link {
padding: 15px 40px;
background:
linear-gradient(145deg,
rgba(232, 223, 208, 0.9) 0%,
rgba(217, 208, 187, 0.8) 100%);
border: 2px solid #c4b7a0;
border-radius: 4px;
color: #6d5a45;
text-decoration: none;
transition: all 0.4s ease;
font-size: 1.05rem;
box-shadow:
0 5px 15px rgba(0, 0, 0, 0.1),
inset 0 1px 0 rgba(255, 255, 255, 0.6);
backdrop-filter: blur(2px);
}
.panth-extension-link:hover {
background:
linear-gradient(145deg,
rgba(217, 208, 187, 0.9) 0%,
rgba(200, 190, 170, 0.8) 100%);
border-color: #b09b7c;
transform: translateY(-5px);
box-shadow:
0 15px 35px rgba(0, 0, 0, 0.2),
0 0 20px rgba(176, 155, 124, 0.15),
inset 0 1px 0 rgba(255, 255, 255, 0.8);
color: #5d4c3a;
}
/* 🏺 印章裝飾元素 */
.panth-seal-decoration {
position: absolute;
width: 100px;
height: 100px;
background:
linear-gradient(145deg,
rgba(182, 69, 69, 0.15) 0%,
rgba(162, 59, 59, 0.1) 100%);
border: 3px solid rgba(182, 69, 69, 0.4);
border-radius: 8px;
display: flex;
align-items: center;
justify-content: center;
font-family: 'STKaiti', cursive;
color: rgba(182, 69, 69, 0.6);
font-size: 2rem;
pointer-events: none;
z-index: 0;
box-shadow:
5px 5px 20px rgba(0, 0, 0, 0.2),
inset 0 1px 0 rgba(255, 255, 255, 0.3);
backdrop-filter: blur(2px);
animation: panth-seal-drift 30s ease-in-out infinite;
transform-style: preserve-3d;
}
@keyframes panth-seal-drift {
0%, 100% {
transform: rotate(0deg) translateY(0) scale(1);
opacity: 0.1;
}
25% {
transform: rotate(90deg) translateY(-20px) scale(1.05);
opacity: 0.15;
}
50% {
transform: rotate(180deg) translateY(0) scale(1);
opacity: 0.1;
}
75% {
transform: rotate(270deg) translateY(10px) scale(0.95);
opacity: 0.15;
}
}
/* ============================================
印章交互效果樣式
============================================ */
.panth-seal-decoration.interactive {
pointer-events: auto;
cursor: pointer;
transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}
.panth-seal-decoration.interactive:hover {
opacity: 0.3 ;
transform: scale(1.1) ;
z-index: 10 ;
}
.panth-seal-glow {
position: fixed;
border-radius: 50%;
background: radial-gradient(circle,
rgba(176, 155, 124, 0.2) 0%,
transparent 70%);
pointer-events: none;
z-index: 9;
transform: translate(-50%, -50%);
}
.panth-seal-click-effect {
position: fixed;
border-radius: 50%;
background: radial-gradient(circle,
rgba(182, 69, 69, 0.3) 0%,
rgba(156, 136, 116, 0.2) 30%,
transparent 70%);
pointer-events: none;
z-index: 999;
transform: translate(-50%, -50%);
}
.panth-seal-hint {
position: fixed;
bottom: 100px;
right: 30px;
background: rgba(40, 35, 30, 0.9);
color: #e6dfcd;
padding: 12px 20px;
border-radius: 6px;
border: 1px solid rgba(176, 155, 124, 0.4);
box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
z-index: 1000;
opacity: 0;
transform: translateY(20px);
transition: all 0.3s ease;
font-family: var(--font-classic);
backdrop-filter: blur(5px);
font-size: 1.1rem;
pointer-events: none;
}
/* 印章裂紋效果 */
.panth-seal-crack {
position: absolute;
top: 10%;
left: 10%;
right: 10%;
bottom: 10%;
background:
linear-gradient(45deg, transparent 97%, rgba(182, 69, 69, 0.3) 97%),
linear-gradient(-45deg, transparent 97%, rgba(182, 69, 69, 0.3) 97%);
border-radius: 4px;
pointer-events: none;
opacity: 0.3;
}
/* 印章文字效果 */
.panth-seal-decoration::before {
content: '';
position: absolute;
top: 10px;
left: 10px;
right: 10px;
bottom: 10px;
background:
linear-gradient(45deg, transparent 97%, rgba(182, 69, 69, 0.3) 97%),
linear-gradient(-45deg, transparent 97%, rgba(182, 69, 69, 0.3) 97%);
border-radius: 4px;
pointer-events: none;
opacity: 0.3;
}
/* 🔙 返回按鈕 - 古籍樣式 */
.panth-back-button {
display: inline-flex;
align-items: center;
gap: 15px;
padding: 18px 50px;
background:
linear-gradient(145deg,
rgba(242, 236, 219, 0.95) 0%,
rgba(235, 229, 210, 0.9) 100%);
border: 3px solid #c4b7a0;
border-radius: 4px;
color: #5d4c3a;
text-decoration: none;
font-size: 1.15rem;
transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1);
position: relative;
overflow: hidden;
margin-bottom: 50px;
box-shadow:
0 8px 30px rgba(0, 0, 0, 0.2),
inset 0 1px 0 rgba(255, 255, 255, 0.7);
backdrop-filter: blur(3px);
}
.panth-back-button:hover {
border-color: #b09b7c;
color: #4a3c2a;
box-shadow:
0 15px 45px rgba(0, 0, 0, 0.3),
0 0 25px rgba(176, 155, 124, 0.2),
inset 0 1px 0 rgba(255, 255, 255, 0.9);
transform: translateX(-12px);
padding-left: 55px;
padding-right: 45px;
}
.panth-back-button::before {
font-size: 1.5rem;
transition: transform 0.3s ease;
}
.panth-back-button:hover::before {
transform: translateX(-8px) rotate(-20deg);
}
.panth-back-button::after {
content: '';
position: absolute;
top: 0;
left: -100%;
width: 100%;
height: 100%;
background: linear-gradient(90deg,
transparent,
rgba(255, 255, 255, 0.25),
transparent);
transition: left 0.7s ease;
}
.panth-back-button:hover::after {
left: 100%;
}
/* 📄 古籍分頁線 */
.panth-page-divider {
height: 2px;
background:
repeating-linear-gradient(
to right,
transparent,
transparent 20px,
rgba(176, 155, 124, 0.4) 20px,
rgba(176, 155, 124, 0.4) 40px
);
margin: 80px auto;
max-width: 850px;
position: relative;
border-radius: 1px;
box-shadow: 0 2px 10px rgba(176, 155, 124, 0.2);
}
.panth-page-divider::before,
.panth-page-divider::after {
content: '❖';
position: absolute;
top: 50%;
transform: translateY(-50%);
color: #b09b7c;
font-size: 1.8rem;
text-shadow: 1px 1px 3px rgba(0, 0, 0, 0.2);
animation: panth-divider-spin 25s linear infinite;
}
.panth-page-divider::before {
left: -45px;
}
.panth-page-divider::after {
right: -45px;
}
@keyframes panth-divider-spin {
from { transform: translateY(-50%) rotate(0deg); }
to { transform: translateY(-50%) rotate(360deg); }
}
/* ============================================
動畫關鍵幀庫
============================================ */
@keyframes panth-fade-in {
from {
opacity: 0;
transform: translateY(20px);
}
to {
opacity: 1;
transform: translateY(0);
}
}
@keyframes panth-slide-up {
from {
opacity: 0;
transform: translateY(30px);
}
to {
opacity: 1;
transform: translateY(0);
}
}
@keyframes panth-text-reveal {
0% {
clip-path: inset(0 100% 0 0);
opacity: 0;
}
100% {
clip-path: inset(0 0 0 0);
opacity: 1;
}
}
@keyframes panth-ink-spread {
0% {
transform: scale(0);
opacity: 1;
}
50% {
opacity: 0.5;
}
100% {
transform: scale(1);
opacity: 0;
}
}
@keyframes panth-breathe {
0%, 100% {
opacity: 0.7;
transform: scale(1);
}
50% {
opacity: 1;
transform: scale(1.02);
}
}
@keyframes panth-card-float {
0%, 100% {
transform: translateY(0) rotate(0deg);
}
33% {
transform: translateY(-10px) rotate(0.5deg);
}
66% {
transform: translateY(-5px) rotate(-0.5deg);
}
}
@keyframes panth-page-turn {
    0% {
        transform: scaleX(0) rotateY(0deg);
        opacity: 0;
    }
    50% {
        transform: scaleX(1) rotateY(10deg);
        opacity: 0.3;
    }
    100% {
        transform: scaleX(0) rotateY(0deg);
        opacity: 0;
    }
}

@keyframes panth-keyword-pulse {
0%, 100% {
transform: scale(1);
box-shadow: 0 0 0 rgba(176, 155, 124, 0.4);
}
50% {
transform: scale(1.05);
box-shadow: 0 0 20px rgba(176, 155, 124, 0.6);
}
}
@keyframes panth-dust-float {
0% {
transform: translate(var(--start-x), var(--start-y)) rotate(0deg);
opacity: 0;
}
10% {
opacity: var(--opacity);
}
90% {
opacity: calc(var(--opacity) * 0.3);
}
100% {
transform: translate(var(--end-x), var(--end-y)) rotate(var(--rotation));
opacity: 0;
}
}
@keyframes panth-seal-float {
0%, 100% {
transform: rotate(0deg) translateY(0) scale(1);
opacity: 0.1;
}
25% {
transform: rotate(90deg) translateY(-20px) scale(1.05);
opacity: 0.15;
}
50% {
transform: rotate(180deg) translateY(0) scale(1);
opacity: 0.1;
}
75% {
transform: rotate(270deg) translateY(10px) scale(0.95);
opacity: 0.15;
}
}
@keyframes panth-page-shadow {
0%, 100% {
opacity: 0.3;
}
50% {
opacity: 0.6;
}
}
@keyframes panth-scroll-unfold {
0% {
transform: scaleY(0.8);
opacity: 0;
}
100% {
transform: scaleY(1);
opacity: 1;
}
}
@keyframes panth-ornament-spin {
from {
transform: translateY(-50%) rotate(0deg);
}
to {
transform: translateY(-50%) rotate(360deg);
}
}
@keyframes panth-divider-spin {
from {
transform: translateY(-50%) rotate(0deg);
}
to {
transform: translateY(-50%) rotate(360deg);
}
}
@keyframes panth-scroll-float {
0%, 100% {
transform: translateY(0) rotate(0deg) scale(1);
opacity: 0.3;
}
33% {
transform: translateY(-30px) rotate(-5deg) scale(1.1);
opacity: 0.5;
}
66% {
transform: translateY(10px) rotate(5deg) scale(0.95);
opacity: 0.4;
}
}
/* note*/
.panth-note-section {
  background: linear-gradient(to bottom, #f8f4e8 0%, #f5f0e0 100%);
  border: 1px solid #e6d9c2;
  border-radius: 4px;
  padding: 1.5rem;
  margin-top: 2rem;  
}

.panth-note-content {
  font-size: 1.1rem;
  line-height: 1.7;
  color: #5a4a42;
  margin-left: 1.4rem;
}

.panth-note-content strong {
  color: #8c5022;
  font-size: 1.5rem;
  font-weight: 900;
}

.panth-note-content p {
  margin-bottom: 1.2rem;
}
/* ============================================
漫畫圖片專用設定 - 保持原始尺寸
============================================ */

/* 1. 針對故事頁面的漫畫區域 */
.panth-comic-grid .panth-image-container {
  width: auto !important;
  height: auto !important;
  max-width: 100% !important;
  min-width: 0 !important;
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
}

/* 2. 漫畫圖片本身 */
.panth-comic-grid img {
  width: auto !important;
  height: auto !important;
  max-width: 100% !important;
  max-height: 100vh !important;
  display: block !important;
  margin: 0 auto !important;
  object-fit: contain !important;
  object-position: center !important;
}

/* 3. 漫畫項目容器 */
.panth-comic-item {
  width: 100%;
  display: flex;
  justify-content: center;
  margin-bottom: 2rem;
}

/* 4. 移除所有可能的限制 */
.panth-essence-section .panth-comic-grid .panth-image-container,
.panth-essence-section .panth-comic-grid img {
  width: auto !important;
  height: auto !important;
  min-width: 0 !important;
  min-height: 0 !important;
}