/* --- ヘッダーの表示を他のページと統一するための追加ルール --- */
/* bodyにheader-overlayクラスが付与された際に、ヘッダーを画面上部に固定する */
body.page-template-page-verify-php.header-overlay #masthead,
body.page-template-page-login-shop-php.header-overlay #masthead,
body.page-template-page-lost-password-php.header-overlay #masthead,
body.page-template-page-reset-password-php.header-overlay #masthead,
body.page-template-page-business-login-php.header-overlay #masthead,
body.page-template-page-giveaway-login-php.header-overlay #masthead,
body.page-template-page-select-giveaway-task-php.header-overlay #masthead {

    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 9999; /* 他の要素より手前、モーダルよりは後ろ */
}

/* 検証ページ全体 */
.verify-page-wrapper {
  max-width: 500px;
  margin: 0 auto; /* 上下のマージンを削除 */
  padding: 6em 15px 2em 15px; /* 上部にヘッダー分の余白を追加 */
}

/* 結果表示ボックス */
.verify-result-box {
  border: 1px solid #ddd;
  border-radius: 8px;
  box-shadow: 0 2px 10px rgba(0,0,0,0.05);
  overflow: hidden;
}

/* ヘッダー部分 */
.verify-result-header {
  padding: 15px 20px;
  display: flex;
  align-items: center;
  color: #fff;
  border-bottom: 1px solid #ddd;
}
.verify-result-header .dashicons {
  font-size: 28px;
  height: 28px;
  width: 28px;
  margin-right: 15px;
}
.verify-result-header h2 {
  margin: 0;
  font-size: 1.4em;
  color: #fff;
}

/* ボディ部分 */
.verify-result-body {
  padding: 25px;
  text-align: center;
  background: #fff;
}

/* --- ステータス毎のスタイル --- */

/* 成功時 */
.verify-result-box.is-success .verify-result-header {
  background-color: #5cb85c; /* 緑 */
  border-color: #4cae4c;
}

/* 期限切れ */
.verify-result-box.is-expired .verify-result-header {
  background-color: #f0ad4e; /* オレンジ */
  border-color: #eea236;
}

/* エラー時 */
.verify-result-box.is-error .verify-result-header {
  background-color: #d9534f; /* 赤 */
  border-color: #d43f3a;
}

/* --- 成功時のコンテンツスタイル --- */

/* 画像表示エリアのコンテナ (重ね合わせの基準) */
.verify-images-container {
  position: relative;
  margin-bottom: 25px;
}

/* 会員証の背景画像 */
.verify-card-image-bg {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 8px;
  box-shadow: 0 4px 15px rgba(0,0,0,0.1);
}

/* 顔写真のオーバーレイ画像 (WIDE CARD用デフォルト) */
.verify-profile-photo-overlay {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  /* 会員証の高さ(幅x0.63)と直径を合わせるため、幅をコンテナの63.08%に設定 */
  width: 63.08%;
  /* 高さはaspect-ratioで自動計算させるため、明示的な指定は不要 */
  aspect-ratio: 1 / 1; /* 常に正円を維持 */
  border-radius: 50%; /* 円形に切り抜く */
  object-fit: cover;
  border: 4px solid rgba(255, 255, 255, 0.9); /* 白い縁取りを少し太く、不透明に */
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3); /* 影を少し強調して立体感を出す */
}

/* --- ロコカード会員の場合のレイアウト調整 --- */

/* コンテナをFlexboxにして横並びにする */
.verify-images-container[data-card-type="loco"] {
  position: static; /* 重ね合わせを解除 */
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 20px; /* 画像間の余白 */
}

/* ロコカード会員証の画像を120pxに固定 */
.verify-images-container[data-card-type="loco"] .verify-card-image-bg {
  width: auto;
  height: 180px;
}

/* ロコカード会員の顔写真を120pxの円形に固定 */
.verify-images-container[data-card-type="loco"] .verify-profile-photo-overlay {
  position: static; /* 重ね合わせを解除 */
  width: 180px;
  height: 180px;
}

/* ユーザー情報テキストエリア */
.verify-user-info .user-name {
  font-size: 1.8em;
  font-weight: bold;
  margin: 0 0 0.2em;
}
.verify-user-info .user-meta {
  font-size: 1em;
  color: #666;
  margin: 0;
}
.verify-instruction {
  margin-top: 25px;
  padding-top: 20px;
  border-top: 1px dashed #ccc;
  font-weight: bold;
  color: #333;
}

/* スマホ表示用の調整 (特に不要なため削除) */
