/* 追思詞：置中對齊 */
[class$="-hero__intro"],
.memorial-hero__intro {
  text-align: center;
  width: 100%;
}

/* 時間流程：告別式日期 */
[class$="-schedule-card__date"],
.mj-schedule__head-date {
  font-family: 'Noto Serif TC', serif;
}

/* 時間流程：告別式日期備註 */
[class$="-schedule-card__note"],
.mj-schedule__head-note,
.memorial-ceremony__date-note {
  font-size: inherit;
  font-weight: 500;
  color: #c62828;
}

/* 花禮區塊：訂購截止時間 */
.memorial-flower-deadline {
  margin: -14px 0 18px;
  font-size: 12px;
  line-height: 1.6;
  font-weight: 400;
  color: #d46a6a;
}
.my-page .memorial-flower-deadline,
.mcu-page .memorial-flower-deadline {
  color: #e89595;
}

[class*="share-sheet__grid"] {
  grid-template-columns: repeat(4, 1fr);
}

[class*="share-sheet__icon"] svg {
  display: block;
  width: 26px;
  height: 26px;
  flex-shrink: 0;
}

[class*="share-sheet__icon--line"] {
  background: transparent;
  border: none;
  padding: 0;
  overflow: hidden;
  border-radius: 14px;
}

[class*="share-sheet__icon--line"] img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

[class*="share-sheet__icon--facebook"] svg {
  fill: currentColor;
}

[class*="share-sheet__icon--copy"] svg,
[class*="share-sheet__icon--more"] svg {
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

/* Memorial themes — 觸控裝置修正（Safari 毛玻璃圓角泛白） */
@media (hover: none) and (pointer: coarse) {
  .mc-page { --card: oklch(0.99 0.008 82); }
  .mh-page { --card: oklch(0.99 0.006 60); }
  .myd-page { --card: oklch(1 0 0 / 0.92); }
  .mhg-page { --card: oklch(0.99 0.006 210 / 0.92); }
  .mfj-page { --card: rgba(255, 252, 245, 0.92); }
  .my-page { --card: oklch(0.24 0.030 268); }
  .mcu-page { --card: oklch(0.33 0.045 164); }

  [class$="-topbar"].is-scrolled,
  [class*="-topbar__share"],
  [class*="-carousel__btn"],
  [class*="-portrait-shell"],
  [class*="-schedule-card"],
  [class*="-location-card"],
  [class*="-flowers"],
  [class*="-message-form"],
  [class*="-handler"],
  [class*="-dock"],
  [class*="-quote"],
  .memorial-toast {
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
  }

  .mc-topbar.is-scrolled { background: oklch(0.975 0.008 82); }
  .mc-topbar__share,
  .mc-topbar.is-scrolled .mc-topbar__share { background: oklch(0.99 0.008 82); }
  .mc-carousel__btn { background: oklch(0.99 0.008 82); }
  .mc-dock { background: oklch(0.99 0.008 82); }

  .mh-topbar.is-scrolled { background: oklch(0.97 0.012 50); }
  .mh-topbar__share { background: oklch(0.99 0.006 60); }
  .mh-carousel__btn { background: oklch(0.99 0.006 60); }
  .mh-dock { background: oklch(0.99 0.006 60); }

  .mj-topbar.is-scrolled { background: oklch(0.985 0.003 106); }
  .mj-dock { background: oklch(0.985 0.003 106); }

  .my-topbar.is-scrolled { background: oklch(0.2 0.03 268); }
  .my-topbar__share,
  .my-carousel__btn { background: oklch(0.22 0.03 268); }
  .my-dock { background: oklch(0.2 0.03 268); }

  .mcu-topbar.is-scrolled { background: oklch(0.28 0.044 166); }
  .mcu-topbar__share,
  .mcu-carousel__btn { background: oklch(0.28 0.044 166); }
  .mcu-dock { background: oklch(0.28 0.044 166); }

  .myd-topbar.is-scrolled { background: oklch(0.98 0.012 235); }
  .myd-topbar__share,
  .myd-carousel__btn { background: oklch(1 0 0 / 0.92); }
  .myd-dock { background: oklch(1 0 0 / 0.92); }

  .mhg-topbar.is-scrolled { background: oklch(0.97 0.012 205); }
  .mhg-topbar__share,
  .mhg-carousel__btn { background: oklch(0.99 0.006 210 / 0.92); }
  .mhg-dock { background: oklch(0.99 0.006 210 / 0.92); }

  .mc-page .memorial-toast--success { background: var(--accent); }
  .mj-page .memorial-toast--success { background: var(--ink); }
  .mh-page .memorial-toast--success { background: var(--rose, var(--accent)); }
  .my-page .memorial-toast--success { background: var(--gold, var(--accent)); }
  .mcu-page .memorial-toast--success { background: var(--gold, var(--accent)); }
  .myd-page .memorial-toast--success { background: var(--sky, var(--accent)); }
  .mhg-page .memorial-toast--success { background: var(--teal, var(--accent)); }
}

/* Obituary banner — wider image block */
section[aria-label="訃聞圖片"] > div[class*="-banner--pair"] {
  width: min(1120px, calc(100vw - 40px));
  max-width: min(1120px, calc(100vw - 40px));
  margin-left: 50%;
  transform: translateX(-50%);
}

section[aria-label="訃聞圖片"] > div[class*="-banner"]:not([class*="-banner--pair"]) {
  max-width: min(640px, 100%);
}

@media (max-width: 520px) {
  section[aria-label="訃聞圖片"] > div[class*="-banner--pair"] {
    width: 100%;
    max-width: 100%;
    margin-left: 0;
    transform: none;
  }
}
