/* アプデ人事LP：ホワイトペーパー資料ダウンロードの常時表示ポップアップ
   ------------------------------------------------------------------
   マークアップとJSは views/partials/hr_wp_popup.php。
   読み込みとポップアップの出し分けは views/layouts/hr.php。
   参考にしたのは NP掛け払い（np-kakebarai.com）の右下の資料ダウンロード。

   ★ PC（768px以上）… 右下に常時表示するカード
   ★ SP（767px以下）… 画面下いっぱいの細いバー。
     ⚠️ 既存の下部追従CTA（#hr-bottom-cta・高さ --hr-bottom-cta-h）と場所が競合する。
        追従CTAは「280pxスクロール後に出て、フッター手前で消える」ので**常時そこにあるわけではない**。
        JSが #hr-bottom-cta の .is-visible を見て --wp-popup-lift を 0 / CTAの高さ に切り替え、
        バーはその上に乗る。監視は scroll だけでなく MutationObserver も併用している
        （クラスはスクロール以外のきっかけでも変わりうるため）。

   /css/style.css はビルド済みTailwindで新規クラスを足せないため、このファイルに独立して書く。 */

.wp-popup {
  --wp-popup-w: 268px;   /* 2026-09-11: 316 → 268px（少し小さく） */
  --wp-popup-lift: 0px;

  position: fixed;
  right: 20px;
  bottom: 20px;
  z-index: 60;   /* #hr-bottom-cta は 50。ヘッダー(9999)より下 */
  width: var(--wp-popup-w);
  border-radius: 12px;
  overflow: hidden;
  background: #fff;
  box-shadow: 0 14px 40px rgba(0, 52, 82, 0.22);
  /* JSが位置を確定するまで出さない（SPでCTAの上に飛ぶのが見えるのを防ぐ） */
  opacity: 0;
  transform: translateY(12px);
  transition: opacity 0.45s ease, transform 0.45s ease;
}

.wp-popup.is-ready {
  opacity: 1;
  transform: translateY(0);
}

.wp-popup[hidden] {
  display: none;
}

.wp-popup__head {
  display: block;
  padding: 13px 30px 10px 13px;
  background: linear-gradient(90deg, #0080b6 0%, #35b4e3 100%);
  color: #fff;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.02em;
}

.wp-popup__head span {
  display: block;
  margin-bottom: 2px;
  font-size: 9px;
  font-weight: 500;
  letter-spacing: 0.14em;
  opacity: 0.85;
}

.wp-popup__body {
  display: block;
  padding: 11px 13px 13px;
  text-decoration: none;
  color: inherit;
}

.wp-popup__cover {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 6px;
  border: 1px solid #e6ebef;
  box-shadow: 0 6px 16px rgba(0, 52, 82, 0.12);
}

.wp-popup__btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  height: 40px;
  margin-top: 11px;
  border-radius: 9999px;
  background: linear-gradient(90deg, #0080b6 0%, #35b4e3 100%);
  color: #fff;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.04em;
  transition: transform 0.3s, box-shadow 0.3s;
}

.wp-popup__body:hover .wp-popup__btn {
  transform: translateY(-2px);
  box-shadow: 0 10px 22px rgba(0, 128, 182, 0.32);
}

.wp-popup__btn svg {
  width: 14px;
  height: 14px;
  fill: currentColor;
}

/* 閉じるボタン。ヘッダーの帯の上に重ねる */
.wp-popup__close {
  position: absolute;
  top: 5px;
  right: 5px;
  width: 25px;
  height: 25px;
  padding: 0;
  border: none;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.18);
  color: #fff;
  font-size: 15px;
  line-height: 1;
  cursor: pointer;
  transition: background 0.3s;
}

.wp-popup__close:hover {
  background: rgba(255, 255, 255, 0.34);
}

/* ---- SP：下いっぱいの細いバー ------------------------------------ */
@media screen and (max-width: 767px) {
  .wp-popup {
    right: 0;
    left: 0;
    bottom: var(--wp-popup-lift);
    width: 100%;
    border-radius: 0;
    box-shadow: 0 -6px 20px rgba(0, 52, 82, 0.18);
    transition: opacity 0.45s ease, transform 0.45s ease, bottom 0.4s ease;
  }

  /* 帯とカバー画像はSPでは畳んで、1行のバーにする */
  .wp-popup__head,
  .wp-popup__cover {
    display: none;
  }

  .wp-popup__body {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 7px 40px 7px 11px;
    background: #fff;
  }

  .wp-popup__sp-thumb {
    flex: 0 0 auto;
    width: 42px;
    height: 30px;
    border-radius: 3px;
    border: 1px solid #e6ebef;
    object-fit: cover;
    object-position: left center;
  }

  .wp-popup__sp-text {
    flex: 1 1 auto;
    min-width: 0;
    font-size: 11px;
    font-weight: 700;
    line-height: 1.35;
    color: #0072a8;
    /* タイトルが長いので2行で打ち切る（3行になるとバーが厚くなりすぎる） */
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
  }

  .wp-popup__btn {
    flex: 0 0 auto;
    width: auto;
    height: 32px;
    margin-top: 0;
    padding: 0 12px;
    font-size: 11px;
  }

  .wp-popup__close {
    top: 50%;
    right: 8px;
    transform: translateY(-50%);
    width: 26px;
    height: 26px;
    background: rgba(0, 128, 182, 0.1);
    color: #0080b6;
  }

  .wp-popup__close:hover {
    background: rgba(0, 128, 182, 0.2);
  }
}

/* PCではSP用のサムネと文字列を出さない */
@media screen and (min-width: 768px) {
  .wp-popup__sp-thumb,
  .wp-popup__sp-text {
    display: none;
  }
}
