/* 固定CTAフッター・著作権バー・ページ先頭ボタンで共通のオフセット（js で実測値に上書き） */
:root {
  --site-footer-stack: calc(4.5rem + env(safe-area-inset-bottom, 0px));
}

/* ホームインジケータ領域までフッター背景を伸ばし、下の「すきま」をなくす */
footer[role="contentinfo"].fixed {
  box-sizing: border-box;
  padding-bottom: env(safe-area-inset-bottom, 0px);
}

/* 本文末尾が固定フッターに隠れないよう、全ページで同一量の下余白（Tailwind の pb 代替） */
body.site-scroll-pad-for-fixed-footer,
main.site-scroll-pad-for-fixed-footer {
  padding-bottom: var(--site-footer-stack);
}

/* ページ最下部付近までスクロールしたときのみ表示する著作権バー */

.site-copyright-bar {
  position: fixed;
  left: 0;
  right: 0;
  bottom: var(--site-footer-stack);
  z-index: 1050;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translateY(10px);
  transition: opacity 0.22s ease, visibility 0.22s ease, transform 0.22s ease;
}

.site-copyright-bar.site-copyright-bar--visible {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  /* サブピクセルでフッター背景が見えるのを 1px 重ねて抑止 */
  transform: translateY(1px);
}

.site-copyright-bar__text {
  margin: 0;
  padding: 0.4rem 0.75rem;
  text-align: center;
  font-size: 11px;
  line-height: 1.45;
  color: #171717;
  background: rgba(250, 250, 250, 0.97);
  border-top: 1px solid #e5e5e5;
  box-shadow: 0 -4px 14px rgba(0, 0, 0, 0.07);
}

@media (min-width: 640px) {
  .site-copyright-bar__text {
    font-size: 12px;
    padding: 0.45rem 1rem;
  }
}
