
/* ── 旧サブギャラリー（説明文下の小グリッド）を非表示 ── */
.eap-auction .eap-subgallery { display: none !important; }

/* ── カルーセル本体 ── */
.eap-photo-carousel-wrap {
    width: 100%; margin: 0 auto 12px; position: relative;
    background: #000; border-radius: 12px; overflow: hidden;
}
.eap-photo-carousel-wrap .swiper { width: 100%; border-radius: 12px; overflow: hidden; }
.eap-photo-carousel-wrap .swiper-slide {
    display: flex; align-items: center; justify-content: center;
    background: #000; aspect-ratio: 4/3; position: relative; overflow: hidden;
}
.eap-photo-carousel-wrap .swiper-slide img {
    width: 100%; height: 100%; object-fit: contain; display: block; cursor: pointer;
}

/* ページネーション */
.eap-photo-carousel-wrap .swiper-pagination-bullet { background: #fff; opacity: 0.5; width: 10px; height: 10px; }
.eap-photo-carousel-wrap .swiper-pagination-bullet-active { opacity: 1; background: #1976d2; }

/* ナビ矢印 */
.eap-photo-carousel-wrap .swiper-button-next,
.eap-photo-carousel-wrap .swiper-button-prev { color: #fff; text-shadow: 0 1px 4px rgba(0,0,0,0.5); }
.eap-photo-carousel-wrap .swiper-button-next::after,
.eap-photo-carousel-wrap .swiper-button-prev::after { font-size: 24px; }

/* スライドカウンター */
.eap-photo-counter { text-align: center; font-size: 13px; color: #888; margin: 4px 0 8px; font-weight: 600; }

/* 拡大モーダル */
.eap-lightbox-overlay {
    position: fixed; top: 0; left: 0; right: 0; bottom: 0;
    background: rgba(0,0,0,0.92); z-index: 999999;
    display: flex; align-items: center; justify-content: center;
    cursor: zoom-out; animation: eapLBFadeIn 0.2s ease;
}
.eap-lightbox-overlay img { max-width: 95vw; max-height: 92vh; object-fit: contain; border-radius: 4px; }
.eap-lightbox-close {
    position: absolute; top: 12px; right: 18px; color: #fff;
    font-size: 36px; cursor: pointer; line-height: 1;
    text-shadow: 0 1px 3px rgba(0,0,0,0.6); z-index: 10;
}
@keyframes eapLBFadeIn { from { opacity: 0; } to { opacity: 1; } }

/* スマホ：矢印非表示（スワイプで操作） */
@media (max-width: 767px) {
    .eap-photo-carousel-wrap .swiper-button-next,
    .eap-photo-carousel-wrap .swiper-button-prev { display: none; }
}


.eap-auction .eap-hero-inner{overflow:hidden !important;}
.eap-auction .eap-hero-inner iframe{
  position:absolute !important;
  top:-10% !important;        /* 黒帯を上に押し出す（調整可） */
  left:0 !important;
  width:100% !important;
  height:120% !important;      /* 黒帯を枠外に隠す（調整可） */
  border:0 !important;
}



/* ══════════════════════════════════════════════════════════════
   EDO RANMA UI Unifier v1.0
   品評会・図鑑・お薬計算機 → RANMA 欄間 UI v6 完全統一
   既存コードを1行も変更せず、CSSオーバーライドのみで統一
══════════════════════════════════════════════════════════════ */

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
   共通デザイントークン（CSS変数）
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
:root {
  /* 墨染 — 青みを含む深い黒 */
  --rm-m0:#010305; --rm-m1:#020508; --rm-m2:#03070c; --rm-m3:#050c14;
  --rm-m4:#081018; --rm-m5:#0c1620; --rm-m6:#111e2c;

  /* 金泥 — 沈んだ重い金 → 輝く金泥 */
  --rm-k1:#2a1c06; --rm-k2:#4e3510; --rm-k3:#7a5218; --rm-k4:#a87228;
  --rm-k5:#c89038; --rm-k6:#dda844; --rm-k7:#edc054; --rm-k8:#f8d870;
  --rm-k9:#ffe898;

  /* 白磁 */
  --rm-s1:#c8d0d8; --rm-s2:#d8e0e8; --rm-s3:#e8edf2; --rm-s4:#f2f6f8;

  /* 朱漆 */
  --rm-r1:#3c0800; --rm-r2:#780e04; --rm-r3:#b01808; --rm-r4:#d02810; --rm-r5:#f04020;

  /* 藍鉄 */
  --rm-b1:#040c1c; --rm-b2:#081828; --rm-b3:#0e2848; --rm-b4:#183878;

  /* テキスト */
  --rm-tx0:#f6f0e6; --rm-tx1:#e6dccb; --rm-tx2:#c6b89e; --rm-tx3:#96886e;
  --rm-tx4:#685c46; --rm-tx5:#3e3428;

  /* ボーダー */
  --rm-bd0:rgba(221,168,68,.07); --rm-bd1:rgba(221,168,68,.16);
  --rm-bd2:rgba(221,168,68,.32); --rm-bd3:rgba(221,168,68,.56);

  /* サーフェス */
  --rm-sf0:rgba(221,168,68,.04); --rm-sf1:rgba(221,168,68,.09);
  --rm-sf2:rgba(221,168,68,.16);

  /* グラデーション */
  --rm-gk:linear-gradient(135deg,var(--rm-k4),var(--rm-k7) 50%,var(--rm-k5));
  --rm-gk2:linear-gradient(90deg,var(--rm-k3),var(--rm-k7),var(--rm-k3));

  /* フォント */
  --rm-fm:'Zen Old Mincho','YuMincho','Hiragino Mincho ProN',serif;
  --rm-fa:'Zen Antique Soft',serif;
  --rm-fs:'DM Sans','Noto Sans JP',sans-serif;

  /* モーション */
  --rm-ez:cubic-bezier(.16,1,.3,1);

  /* 青海波SVG（Base64） */
  --rm-seigaiha:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='23'%3E%3Cellipse cx='20' cy='23' rx='20' ry='12' fill='none' stroke='rgba(221%2C168%2C68%2C0.18)' stroke-width='0.8'/%3E%3Cellipse cx='0' cy='23' rx='20' ry='12' fill='none' stroke='rgba(221%2C168%2C68%2C0.18)' stroke-width='0.8'/%3E%3Cellipse cx='40' cy='23' rx='20' ry='12' fill='none' stroke='rgba(221%2C168%2C68%2C0.18)' stroke-width='0.8'/%3E%3Cellipse cx='10' cy='11.5' rx='20' ry='12' fill='none' stroke='rgba(221%2C168%2C68%2C0.10)' stroke-width='0.6'/%3E%3Cellipse cx='30' cy='11.5' rx='20' ry='12' fill='none' stroke='rgba(221%2C168%2C68%2C0.10)' stroke-width='0.6'/%3E%3C/svg%3E");
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
   【1】品評会 (eap-fire.php + eap-fair-podium-patch.php) RANMA化
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */

/* ===== メインコンテナ ===== */
#eap-fair-root {
  background: var(--rm-m0) !important;
  font-family: var(--rm-fs) !important;
  position: relative !important;
}

/* 青海波背景（コンテナ内に収める） */
#eap-fair-root .eap-fair-wrap {
  position: relative !important;
  z-index: 1 !important;
}

#eap-fair-root .eap-fair-wrap::before {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  background-image: var(--rm-seigaiha) !important;
  background-size: 40px 23px !important;
  pointer-events: none !important;
  z-index: 0 !important;
  opacity: 0.7 !important;
}

#eap-fair-root .eap-fair-wrap > * {
  position: relative !important;
  z-index: 1 !important;
}

/* ===== ヒーロー・タイトル ===== */
#eap-fair-root .eap-hero {
  text-align: center !important;
  padding: 40px 20px !important;
  margin-bottom: 40px !important;
  border-bottom: 1px solid var(--rm-bd1) !important;
  background: linear-gradient(180deg, rgba(221,168,68,.06) 0%, transparent 100%) !important;
  position: relative !important;
}

#eap-fair-root .eap-hero::after {
  content: '' !important;
  position: absolute !important;
  bottom: 0 !important;
  left: 10% !important;
  right: 10% !important;
  height: 1px !important;
  background: linear-gradient(90deg, transparent, var(--rm-k5), var(--rm-k7), var(--rm-k5), transparent) !important;
}

#eap-fair-root .eap-title {
  font-family: var(--rm-fm) !important;
  font-size: 2.8rem !important;
  font-weight: 700 !important;
  letter-spacing: .25em !important;
  background: var(--rm-gk) !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  text-shadow: none !important;
  margin-bottom: 10px !important;
}

#eap-fair-root .eap-sub {
  color: var(--rm-tx3) !important;
  font-family: var(--rm-fs) !important;
  letter-spacing: .1em !important;
}

/* ===== タブナビゲーション ===== */
#eap-fair-root .eap-event-tabs,
#eap-fair-root .eap-nav-tabs,
#eap-fair-root .eap-tabs,
#eap-fair-root .eap-list-tabs {
  display: flex !important;
  justify-content: center !important;
  gap: 12px !important;
  margin-bottom: 30px !important;
  padding-bottom: 20px !important;
  border-bottom: 1px solid var(--rm-bd1) !important;
  position: relative !important;
}

#eap-fair-root .eap-event-tabs::after,
#eap-fair-root .eap-nav-tabs::after {
  content: '' !important;
  position: absolute !important;
  bottom: 0 !important;
  left: 20% !important;
  right: 20% !important;
  height: 1px !important;
  background: var(--rm-gk2) !important;
  opacity: 0.5 !important;
}

#eap-fair-root .eap-event-tab,
#eap-fair-root .eap-nav-item,
#eap-fair-root .eap-tab,
#eap-fair-root .eap-list-tab {
  background: var(--rm-m2) !important;
  border: 1px solid var(--rm-bd1) !important;
  border-radius: 30px !important;
  padding: 12px 28px !important;
  color: var(--rm-tx3) !important;
  font-family: var(--rm-fs) !important;
  font-weight: 600 !important;
  letter-spacing: .08em !important;
  transition: all .3s var(--rm-ez) !important;
}

#eap-fair-root .eap-event-tab:hover,
#eap-fair-root .eap-nav-item:hover,
#eap-fair-root .eap-tab:hover,
#eap-fair-root .eap-list-tab:hover {
  border-color: var(--rm-bd2) !important;
  color: var(--rm-tx1) !important;
  background: var(--rm-m3) !important;
}

#eap-fair-root .eap-event-tab.active,
#eap-fair-root .eap-nav-item.active,
#eap-fair-root .eap-tab.active,
#eap-fair-root .eap-list-tab.active {
  background: linear-gradient(135deg, var(--rm-k3) 0%, var(--rm-k5) 50%, var(--rm-k4) 100%) !important;
  border-color: var(--rm-k6) !important;
  color: var(--rm-m0) !important;
  box-shadow: 0 4px 20px rgba(221,168,68,.25) !important;
}

/* ===== イベントリスト ===== */
#eap-fair-root .eap-event-list {
  display: grid !important;
  gap: 16px !important;
}

#eap-fair-root .eap-event-item {
  background: var(--rm-m1) !important;
  border: 1px solid var(--rm-bd1) !important;
  border-radius: 14px !important;
  padding: 24px !important;
  position: relative !important;
  overflow: hidden !important;
  transition: all .3s var(--rm-ez) !important;
}

#eap-fair-root .eap-event-item::before {
  content: '' !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  height: 2px !important;
  background: linear-gradient(90deg, transparent, var(--rm-k5), transparent) !important;
  opacity: 0 !important;
  transition: opacity .3s !important;
}

#eap-fair-root .eap-event-item:hover {
  border-color: var(--rm-bd2) !important;
  transform: translateX(8px) !important;
  box-shadow: 0 8px 32px rgba(0,0,0,.4) !important;
}

#eap-fair-root .eap-event-item:hover::before {
  opacity: 1 !important;
}

#eap-fair-root .eap-event-status {
  font-family: var(--rm-fm) !important;
  font-weight: 700 !important;
  letter-spacing: .1em !important;
  border-radius: 6px !important;
  padding: 4px 12px !important;
}

#eap-fair-root .eap-event-status.st-active {
  background: linear-gradient(135deg, var(--rm-k4), var(--rm-k6)) !important;
  color: var(--rm-m0) !important;
}

#eap-fair-root .eap-event-status.st-past {
  background: var(--rm-m3) !important;
  color: var(--rm-tx3) !important;
  border: 1px solid var(--rm-bd0) !important;
}

/* ===== メンバーカード ===== */
#eap-fair-root .eap-member-card {
  background: linear-gradient(160deg, rgba(221,168,68,.06) 0%, var(--rm-m1) 50%) !important;
  border: 1px solid var(--rm-k5) !important;
  border-radius: 16px !important;
  padding: 24px !important;
  position: relative !important;
  overflow: hidden !important;
  box-shadow:
    0 0 0 1px rgba(0,0,0,.5),
    0 8px 32px rgba(0,0,0,.4),
    inset 0 1px 0 rgba(221,168,68,.1) !important;
}

#eap-fair-root .eap-member-card::before {
  content: '' !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  height: 3px !important;
  background: linear-gradient(90deg, transparent 5%, var(--rm-k5) 30%, var(--rm-k8) 50%, var(--rm-k5) 70%, transparent 95%) !important;
}

#eap-fair-root .eap-mc-icon {
  color: var(--rm-k6) !important;
}

#eap-fair-root .eap-mc-name {
  font-family: var(--rm-fm) !important;
  color: var(--rm-tx0) !important;
  letter-spacing: .08em !important;
}

#eap-fair-root .eap-mc-meta {
  color: var(--rm-tx3) !important;
}

#eap-fair-root .eap-mc-badge {
  background: linear-gradient(135deg, var(--rm-k4), var(--rm-k6)) !important;
  color: var(--rm-m0) !important;
  font-family: var(--rm-fm) !important;
  letter-spacing: .12em !important;
  border-radius: 6px !important;
}

/* ===== 作品カード（グリッド） ===== */
#eap-fair-root .eap-grid {
  display: grid !important;
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)) !important;
  gap: 24px !important;
}

#eap-fair-root .eap-card {
  background: var(--rm-m1) !important;
  border: 1px solid var(--rm-bd1) !important;
  border-radius: 16px !important;
  overflow: hidden !important;
  position: relative !important;
  transition: all .35s var(--rm-ez) !important;
  box-shadow:
    0 0 0 1px rgba(0,0,0,.5),
    0 8px 24px rgba(0,0,0,.4) !important;
}

/* カード上部の金線 */
#eap-fair-root .eap-card::before {
  content: '' !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  height: 2px !important;
  background: linear-gradient(90deg, transparent, var(--rm-k4), var(--rm-k6), var(--rm-k4), transparent) !important;
  z-index: 10 !important;
  opacity: 0.6 !important;
  transition: opacity .3s !important;
}

#eap-fair-root .eap-card:hover {
  border-color: var(--rm-bd2) !important;
  transform: translateY(-6px) !important;
  box-shadow:
    0 0 0 1px rgba(0,0,0,.5),
    0 16px 48px rgba(0,0,0,.5),
    0 0 30px rgba(221,168,68,.1) !important;
}

#eap-fair-root .eap-card:hover::before {
  opacity: 1 !important;
}

#eap-fair-root .eap-card.is-selected {
  border-color: var(--rm-k5) !important;
  box-shadow:
    0 0 0 1px rgba(0,0,0,.5),
    0 0 40px rgba(221,168,68,.2),
    0 16px 48px rgba(0,0,0,.5) !important;
}

#eap-fair-root .eap-card.is-selected::before {
  opacity: 1 !important;
  height: 3px !important;
  background: linear-gradient(90deg, var(--rm-k5), var(--rm-k8), var(--rm-k5)) !important;
}

/* メディア（動画サムネ） */
#eap-fair-root .eap-media {
  background: var(--rm-m0) !important;
  border-bottom: 1px solid var(--rm-bd0) !important;
}

#eap-fair-root .eap-play-btn {
  background: rgba(1,3,5,.75) !important;
  border: 2px solid var(--rm-k5) !important;
  box-shadow: 0 4px 20px rgba(0,0,0,.5) !important;
}

#eap-fair-root .eap-play-btn:hover {
  background: linear-gradient(135deg, var(--rm-k4), var(--rm-k6)) !important;
  border-color: var(--rm-k7) !important;
}

#eap-fair-root .eap-play-btn::before {
  border-color: transparent transparent transparent var(--rm-k7) !important;
}

/* カードボディ */
#eap-fair-root .eap-body {
  padding: 20px !important;
  background: linear-gradient(180deg, transparent 0%, rgba(221,168,68,.02) 100%) !important;
}

#eap-fair-root .eap-card-title {
  font-family: var(--rm-fm) !important;
  font-size: 1.15rem !important;
  font-weight: 700 !important;
  color: var(--rm-tx0) !important;
  letter-spacing: .06em !important;
  margin-bottom: 8px !important;
}

#eap-fair-root .eap-card-exhibitor {
  font-family: var(--rm-fs) !important;
  color: var(--rm-k6) !important;
  font-weight: 500 !important;
}

#eap-fair-root .eap-card-desc {
  color: var(--rm-tx2) !important;
  line-height: 1.7 !important;
}

/* 投票チェックボックス */
#eap-fair-root .eap-chk-label {
  background: var(--rm-m2) !important;
  border: 1px solid var(--rm-bd1) !important;
  border-radius: 10px !important;
  color: var(--rm-tx2) !important;
  transition: all .25s var(--rm-ez) !important;
}

#eap-fair-root .eap-chk-label:hover {
  border-color: var(--rm-bd2) !important;
  background: var(--rm-m3) !important;
}

#eap-fair-root .eap-chk-icon {
  border-color: var(--rm-k5) !important;
}

#eap-fair-root input[type="checkbox"]:checked + .eap-chk-icon {
  background: linear-gradient(135deg, var(--rm-k4), var(--rm-k6)) !important;
}

/* ===== ボタン類 ===== */
#eap-fair-root .eap-btn,
#eap-fair-root .eap-btn-submit {
  background: linear-gradient(180deg, rgba(255,255,255,.06) 0%, transparent 40%),
    linear-gradient(135deg, var(--rm-k2) 0%, var(--rm-k5) 30%, var(--rm-k7) 55%, var(--rm-k5) 80%, var(--rm-k3) 100%) !important;
  border: 1px solid var(--rm-k6) !important;
  border-radius: 30px !important;
  color: var(--rm-m0) !important;
  font-family: var(--rm-fm) !important;
  font-weight: 700 !important;
  letter-spacing: .15em !important;
  text-shadow: 0 1px 0 rgba(255,255,255,.2) !important;
  box-shadow:
    0 1px 0 rgba(0,0,0,.6),
    0 4px 16px rgba(168,114,40,.2),
    inset 0 1px 0 rgba(255,255,255,.15) !important;
  position: relative !important;
  overflow: hidden !important;
  transition: all .3s var(--rm-ez) !important;
}

#eap-fair-root .eap-btn::before,
#eap-fair-root .eap-btn-submit::before {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  background: linear-gradient(110deg, transparent 0%, rgba(255,255,255,0) 35%, rgba(255,255,255,.25) 50%, rgba(255,255,255,0) 65%, transparent 100%) !important;
  transform: translateX(-100%) !important;
  transition: transform .5s var(--rm-ez) !important;
}

#eap-fair-root .eap-btn:hover::before,
#eap-fair-root .eap-btn-submit:hover::before {
  transform: translateX(100%) !important;
}

#eap-fair-root .eap-btn:hover,
#eap-fair-root .eap-btn-submit:hover {
  transform: translateY(-2px) !important;
  box-shadow:
    0 2px 0 rgba(0,0,0,.5),
    0 8px 28px rgba(221,168,68,.3),
    inset 0 1px 0 rgba(255,255,255,.2) !important;
}

#eap-fair-root .eap-btn-outline {
  background: transparent !important;
  border: 1px solid var(--rm-k5) !important;
  color: var(--rm-k6) !important;
}

#eap-fair-root .eap-btn-outline:hover {
  background: var(--rm-sf1) !important;
  color: var(--rm-k8) !important;
}

/* ===== フォームボックス ===== */
#eap-fair-root .eap-form-box {
  background: var(--rm-m1) !important;
  border: 1px solid var(--rm-bd1) !important;
  border-radius: 16px !important;
  padding: 32px !important;
  position: relative !important;
  overflow: hidden !important;
  box-shadow: 0 8px 32px rgba(0,0,0,.4) !important;
}

#eap-fair-root .eap-form-box::before {
  content: '' !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  height: 3px !important;
  background: linear-gradient(90deg, transparent 10%, var(--rm-k5) 30%, var(--rm-k8) 50%, var(--rm-k5) 70%, transparent 90%) !important;
}

#eap-fair-root input[type="text"],
#eap-fair-root input[type="password"],
#eap-fair-root select,
#eap-fair-root textarea {
  background: var(--rm-m2) !important;
  border: 1px solid var(--rm-bd1) !important;
  border-radius: 10px !important;
  color: var(--rm-tx1) !important;
  padding: 14px 16px !important;
  font-family: var(--rm-fs) !important;
}

#eap-fair-root input[type="text"]:focus,
#eap-fair-root input[type="password"]:focus,
#eap-fair-root select:focus,
#eap-fair-root textarea:focus {
  outline: none !important;
  border-color: var(--rm-k5) !important;
  box-shadow: 0 0 0 3px rgba(221,168,68,.12) !important;
}

/* ===== モーダル ===== */
#eap-fair-root .eap-modal-overlay {
  background: rgba(1,3,5,.92) !important;
  backdrop-filter: blur(8px) !important;
}

#eap-fair-root .eap-modal {
  background: var(--rm-m1) !important;
  border: 1px solid var(--rm-k5) !important;
  border-radius: 16px !important;
  box-shadow: 0 20px 60px rgba(0,0,0,.6) !important;
  position: relative !important;
  overflow: hidden !important;
}

#eap-fair-root .eap-modal::before {
  content: '' !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  height: 3px !important;
  background: linear-gradient(90deg, var(--rm-k4), var(--rm-k7), var(--rm-k4)) !important;
}

#eap-fair-root .eap-modal ul {
  color: var(--rm-tx2) !important;
}

/* ===== ランキング ===== */
#eap-fair-root .eap-rank-list {
  margin: 24px 0 !important;
}

#eap-fair-root .eap-rank-item {
  background: var(--rm-m2) !important;
  border: 1px solid var(--rm-bd0) !important;
  border-radius: 10px !important;
  margin-bottom: 12px !important;
  padding: 14px !important;
  transition: all .25s var(--rm-ez) !important;
}

#eap-fair-root .eap-rank-item:hover {
  border-color: var(--rm-bd1) !important;
  background: var(--rm-m3) !important;
}

#eap-fair-root .eap-rank-item.top {
  border-color: var(--rm-k5) !important;
  background: linear-gradient(90deg, rgba(221,168,68,.06) 0%, var(--rm-m2) 100%) !important;
}

#eap-fair-root .eap-bar-wrap {
  background: var(--rm-m4) !important;
  border-radius: 3px !important;
}

#eap-fair-root .eap-bar {
  background: linear-gradient(90deg, var(--rm-k4), var(--rm-k7)) !important;
  box-shadow: 0 0 10px rgba(221,168,68,.4) !important;
}

/* ===== 見出し（h3） ===== */
#eap-fair-root h3 {
  font-family: var(--rm-fm) !important;
  color: var(--rm-tx0) !important;
  border-left: 3px solid var(--rm-k5) !important;
  letter-spacing: .1em !important;
  background: linear-gradient(90deg, rgba(221,168,68,.06) 0%, transparent 100%) !important;
  padding: 12px 16px !important;
  border-radius: 0 8px 8px 0 !important;
}

/* ===== リンク ===== */
#eap-fair-root a {
  color: var(--rm-k6) !important;
  transition: color .2s !important;
}

#eap-fair-root a:hover {
  color: var(--rm-k8) !important;
}

/* ===== 表彰台（Podiumパッチ） ===== */
/* 全体コンテナ */
.pdm3 {
  background: var(--rm-m0) !important;
  border: 1px solid var(--rm-bd1) !important;
  border-radius: 20px !important;
  padding: 24px !important;
  position: relative !important;
  overflow: hidden !important;
  box-shadow:
    0 0 0 1px rgba(0,0,0,.9),
    0 60px 140px rgba(0,0,0,.9),
    inset 0 1px 0 rgba(221,168,68,.06) !important;
}

/* 青海波背景 */
.pdm3::before {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  background-image: var(--rm-seigaiha) !important;
  background-size: 40px 23px !important;
  opacity: 1 !important;
  pointer-events: none !important;
  z-index: 0 !important;
}

.pdm3 > * { position: relative !important; z-index: 1 !important; }

/* ヘッダー */
.pdm3-hd::before, .pdm3-hd::after {
  background: linear-gradient(90deg,transparent,var(--rm-k5),transparent) !important;
}
.pdm3-crown { filter: drop-shadow(0 0 8px rgba(221,168,68,.4)) !important; }
.pdm3-ttl {
  font-family: var(--rm-fm) !important;
  color: var(--rm-k7) !important;
  letter-spacing: .3em !important;
  background: var(--rm-gk) !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
}
.pdm3-sub { color: var(--rm-tx3) !important; }

/* カード共通 */
.pdm3-card {
  background: var(--rm-m1) !important;
  border-radius: 12px !important;
  overflow: hidden !important;
  position: relative !important;
}

/* 1位 GOLD — 金泥仕様 */
.pdm3-card--1 {
  background: linear-gradient(160deg, rgba(221,168,68,.08) 0%, var(--rm-m1) 50%) !important;
  border: 1px solid var(--rm-k5) !important;
  box-shadow:
    0 0 30px rgba(221,168,68,.15),
    inset 0 1px 0 rgba(221,168,68,.12) !important;
}
.pdm3-card--1 .pdm3-badge {
  background: var(--rm-gk) !important;
  color: var(--rm-m0) !important;
  font-weight: 900 !important;
}
.pdm3-card--1 .pdm3-rank { color: var(--rm-k7) !important; }
.pdm3-card--1 .pdm3-votes {
  background: var(--rm-gk) !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
}
.pdm3-card--1 .pdm3-line {
  background: linear-gradient(90deg, transparent, var(--rm-k6) 30%, var(--rm-k6) 70%, transparent) !important;
}

/* 2位 SILVER — 白磁仕様 */
.pdm3-card--2 {
  background: linear-gradient(160deg, rgba(200,208,216,.05) 0%, var(--rm-m1) 50%) !important;
  border: 1px solid rgba(200,208,216,.25) !important;
}
.pdm3-card--2 .pdm3-badge {
  background: linear-gradient(135deg, var(--rm-s1), var(--rm-s3)) !important;
  color: var(--rm-m0) !important;
}
.pdm3-card--2 .pdm3-rank { color: var(--rm-s2) !important; }
.pdm3-card--2 .pdm3-votes { color: var(--rm-s3) !important; }
.pdm3-card--2 .pdm3-line {
  background: linear-gradient(90deg, transparent, var(--rm-s1) 30%, var(--rm-s1) 70%, transparent) !important;
}

/* 3位 BRONZE — 朱漆仕様 */
.pdm3-card--3 {
  background: linear-gradient(160deg, rgba(176,24,8,.06) 0%, var(--rm-m1) 50%) !important;
  border: 1px solid rgba(176,24,8,.35) !important;
}
.pdm3-card--3 .pdm3-badge {
  background: linear-gradient(135deg, #cd7f32, #a06828) !important;
  color: var(--rm-m0) !important;
}
.pdm3-card--3 .pdm3-rank { color: #cd7f32 !important; }
.pdm3-card--3 .pdm3-votes { color: #cd7f32 !important; }
.pdm3-card--3 .pdm3-line {
  background: linear-gradient(90deg, transparent, #a06828 30%, #a06828 70%, transparent) !important;
}

/* 名前・テキスト */
.pdm3-name { color: var(--rm-tx0) !important; }
.pdm3-name a { color: var(--rm-tx0) !important; }
.pdm3-name a:hover { color: var(--rm-k8) !important; }
.pdm3-who { color: var(--rm-tx3) !important; }
.pdm3-vu { color: var(--rm-tx4) !important; }

/* 4位以下リスト */
.pdm3-rest-ttl {
  font-family: var(--rm-fm) !important;
  color: var(--rm-tx4) !important;
}
.pdm3-rest {
  background: var(--rm-m1) !important;
  border: 1px solid var(--rm-bd1) !important;
  border-radius: 10px !important;
}
.pdm3-rest li { border-bottom-color: var(--rm-bd0) !important; }
.pdm3-rest-rk { color: var(--rm-tx4) !important; font-family: var(--rm-fm) !important; }
.pdm3-rest-nm a { color: var(--rm-tx2) !important; }
.pdm3-rest-nm a:hover { color: var(--rm-k7) !important; }
.pdm3-rest-sc { color: var(--rm-k6) !important; font-family: var(--rm-fm) !important; }
.pdm3-hr { border-top-color: var(--rm-bd0) !important; }

/* 総合優勝特別装飾 */
.pdm3--ov .pdm3-card--1 {
  box-shadow:
    0 0 40px rgba(221,168,68,.25),
    0 0 80px rgba(221,168,68,.1),
    inset 0 1px 0 rgba(221,168,68,.15) !important;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
   【2】図鑑 (medaka-registry-all-in-one.php + edo-registry-gatekeeper.php) RANMA化
   ※ テーマCSS・既存CSSより確実に上書きするため最高詳細度で指定
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */

/* ===================================================================
   図鑑ポータル（edo-registry-gatekeeper.php）RANMA化
   白いカードボタンを金泥墨染スタイルに
=================================================================== */

/* ポータル全体 */
html body .mrg-portal,
body .mrg-portal,
.mrg-portal {
  background: var(--rm-m0) !important;
  border: 1px solid var(--rm-bd1) !important;
  border-radius: 20px !important;
  box-shadow:
    0 0 0 1px rgba(0,0,0,.9),
    0 40px 100px rgba(0,0,0,.85),
    inset 0 1px 0 rgba(221,168,68,.06) !important;
  overflow: hidden !important;
  position: relative !important;
}

/* 青海波背景 */
html body .mrg-portal::before,
body .mrg-portal::before,
.mrg-portal::before {
  content: '' !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  background-image: var(--rm-seigaiha) !important;
  background-size: 40px 23px !important;
  pointer-events: none !important;
  z-index: 0 !important;
}

html body .mrg-portal > *,
body .mrg-portal > *,
.mrg-portal > * {
  position: relative !important;
  z-index: 1 !important;
}

/* ヘッダー */
html body .mrg-header,
body .mrg-header,
.mrg-header {
  background: linear-gradient(180deg, rgba(221,168,68,.06) 0%, var(--rm-m1) 100%) !important;
  border-bottom: 1px solid var(--rm-bd1) !important;
  padding: 20px 24px !important;
}

html body .mrg-header::after,
body .mrg-header::after,
.mrg-header::after {
  content: '' !important;
  position: absolute !important;
  bottom: 0 !important;
  left: 10% !important;
  right: 10% !important;
  height: 1px !important;
  background: linear-gradient(90deg, transparent, var(--rm-k5), var(--rm-k7), var(--rm-k5), transparent) !important;
}

html body .mrg-title,
body .mrg-title,
.mrg-title {
  font-family: var(--rm-fm) !important;
  font-size: 1.3rem !important;
  font-weight: 700 !important;
  letter-spacing: .15em !important;
  background: var(--rm-gk) !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  color: var(--rm-k7) !important;
}

html body .mrg-user,
body .mrg-user,
.mrg-user {
  color: var(--rm-tx2) !important;
  font-family: var(--rm-fs) !important;
}

/* ボディ */
html body .mrg-body,
body .mrg-body,
.mrg-body {
  background: transparent !important;
  padding: 24px !important;
}

/* ナビゲーション（カードボタン） */
html body .mrg-nav,
body .mrg-nav,
.mrg-nav {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)) !important;
  gap: 16px !important;
  margin-bottom: 30px !important;
  padding-bottom: 24px !important;
  border-bottom: 1px solid var(--rm-bd1) !important;
}

/* ★ カードボタン — 金泥墨染スタイル ★ */
html body .mrg-btn,
body .mrg-btn,
.mrg-btn,
a.mrg-btn,
.mrg-portal .mrg-btn,
.mrg-nav .mrg-btn {
  all: unset !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  box-sizing: border-box !important;
  background: var(--rm-m1) !important;
  border: 1px solid var(--rm-bd1) !important;
  border-radius: 14px !important;
  padding: 24px 16px !important;
  min-height: 110px !important;
  color: var(--rm-tx2) !important;
  font-family: var(--rm-fs) !important;
  font-weight: 700 !important;
  font-size: 0.95rem !important;
  letter-spacing: .08em !important;
  text-decoration: none !important;
  text-align: center !important;
  cursor: pointer !important;
  position: relative !important;
  overflow: hidden !important;
  transition: all .3s cubic-bezier(.16,1,.3,1) !important;
  box-shadow:
    0 0 0 1px rgba(0,0,0,.5),
    0 4px 16px rgba(0,0,0,.3) !important;
}

/* カード上部の金線 */
html body .mrg-btn::before,
body .mrg-btn::before,
.mrg-btn::before,
a.mrg-btn::before {
  content: '' !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  height: 2px !important;
  background: linear-gradient(90deg, transparent, var(--rm-k4), var(--rm-k6), var(--rm-k4), transparent) !important;
  opacity: 0.4 !important;
  transition: opacity .3s !important;
}

/* アイコン */
html body .mrg-btn span,
body .mrg-btn span,
.mrg-btn span {
  font-size: 2.2em !important;
  margin-bottom: 10px !important;
  display: block !important;
  filter: grayscale(0.3) !important;
  transition: filter .3s !important;
}

/* ホバー */
html body .mrg-btn:hover,
body .mrg-btn:hover,
.mrg-btn:hover,
a.mrg-btn:hover {
  background: var(--rm-m2) !important;
  border-color: var(--rm-bd2) !important;
  color: var(--rm-k7) !important;
  transform: translateY(-4px) !important;
  box-shadow:
    0 0 0 1px rgba(0,0,0,.5),
    0 12px 32px rgba(0,0,0,.4),
    0 0 20px rgba(221,168,68,.1) !important;
}

html body .mrg-btn:hover::before,
body .mrg-btn:hover::before,
.mrg-btn:hover::before {
  opacity: 1 !important;
}

html body .mrg-btn:hover span,
body .mrg-btn:hover span,
.mrg-btn:hover span {
  filter: grayscale(0) !important;
}

/* アクティブ状態 */
html body .mrg-btn.active,
body .mrg-btn.active,
.mrg-btn.active,
a.mrg-btn.active {
  background: linear-gradient(160deg, rgba(221,168,68,.1) 0%, var(--rm-m1) 100%) !important;
  border-color: var(--rm-k5) !important;
  color: var(--rm-k7) !important;
  box-shadow:
    0 0 0 1px rgba(0,0,0,.5),
    0 0 25px rgba(221,168,68,.15),
    0 8px 24px rgba(0,0,0,.4) !important;
}

html body .mrg-btn.active::before,
body .mrg-btn.active::before,
.mrg-btn.active::before {
  opacity: 1 !important;
  height: 3px !important;
  background: linear-gradient(90deg, var(--rm-k5), var(--rm-k8), var(--rm-k5)) !important;
}

html body .mrg-btn.active span,
body .mrg-btn.active span,
.mrg-btn.active span {
  filter: grayscale(0) drop-shadow(0 0 6px rgba(221,168,68,.4)) !important;
}

/* 説明書ボタン */
html body .mrg-btn.help-btn,
body .mrg-btn.help-btn,
.mrg-btn.help-btn,
a.mrg-btn.help-btn {
  background: linear-gradient(135deg, rgba(221,168,68,.08) 0%, var(--rm-m1) 100%) !important;
  border-color: var(--rm-bd2) !important;
}

/* コンテンツエリア */
html body .mrg-content,
body .mrg-content,
.mrg-content {
  min-height: 300px !important;
  color: var(--rm-tx1) !important;
}

/* フォームUI補正 */
html body .mrg-portal input,
html body .mrg-portal select,
html body .mrg-portal textarea,
body .mrg-portal input,
body .mrg-portal select,
body .mrg-portal textarea,
.mrg-portal input,
.mrg-portal select,
.mrg-portal textarea {
  background: var(--rm-m2) !important;
  background-color: var(--rm-m2) !important;
  color: var(--rm-tx1) !important;
  border: 1px solid var(--rm-bd1) !important;
  border-radius: 10px !important;
  padding: 14px 16px !important;
  font-family: var(--rm-fs) !important;
}

html body .mrg-portal input:focus,
html body .mrg-portal select:focus,
html body .mrg-portal textarea:focus,
body .mrg-portal input:focus,
body .mrg-portal select:focus,
body .mrg-portal textarea:focus,
.mrg-portal input:focus,
.mrg-portal select:focus,
.mrg-portal textarea:focus {
  outline: none !important;
  border-color: var(--rm-k5) !important;
  box-shadow: 0 0 0 3px rgba(221,168,68,.15) !important;
}

/* モーダル */
html body .mrg-modal,
body .mrg-modal,
.mrg-modal {
  background: rgba(1,3,5,.92) !important;
  backdrop-filter: blur(8px) !important;
}

html body .mrg-modal-content,
body .mrg-modal-content,
.mrg-modal-content {
  background: var(--rm-m1) !important;
  background-color: var(--rm-m1) !important;
  color: var(--rm-tx1) !important;
  border: 1px solid var(--rm-k5) !important;
  border-radius: 16px !important;
  box-shadow: 0 20px 60px rgba(0,0,0,.6) !important;
  position: relative !important;
}

html body .mrg-modal-content::before,
body .mrg-modal-content::before,
.mrg-modal-content::before {
  content: '' !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  height: 3px !important;
  background: linear-gradient(90deg, var(--rm-k4), var(--rm-k7), var(--rm-k4)) !important;
  border-radius: 16px 16px 0 0 !important;
}

html body .mrg-modal h4,
body .mrg-modal h4,
.mrg-modal h4 {
  color: var(--rm-k7) !important;
  font-family: var(--rm-fm) !important;
  border-bottom-color: var(--rm-bd1) !important;
}

html body .mrg-modal p,
body .mrg-modal p,
.mrg-modal p {
  color: var(--rm-tx2) !important;
}

html body .mrg-modal strong,
body .mrg-modal strong,
.mrg-modal strong {
  color: var(--rm-k7) !important;
  background: var(--rm-m2) !important;
}

html body .mrg-modal .note,
body .mrg-modal .note,
.mrg-modal .note {
  background: var(--rm-m2) !important;
  color: var(--rm-tx3) !important;
}

html body .mrg-modal-close,
body .mrg-modal-close,
.mrg-modal-close {
  color: var(--rm-tx3) !important;
}

html body .mrg-modal-close:hover,
body .mrg-modal-close:hover,
.mrg-modal-close:hover {
  color: var(--rm-r4) !important;
}

/* h3見出し（インラインスタイル上書き） */
html body .mrg-portal h3,
html body .mrg-content h3,
body .mrg-portal h3,
body .mrg-content h3,
.mrg-portal h3,
.mrg-content h3,
.mrg-content h3[style] {
  color: var(--rm-k7) !important;
  font-family: var(--rm-fm) !important;
  border-left: 3px solid var(--rm-k5) !important;
  border-left-color: var(--rm-k5) !important;
  background: linear-gradient(90deg, rgba(221,168,68,.06) 0%, transparent 100%) !important;
  padding: 12px 16px !important;
  border-radius: 0 8px 8px 0 !important;
  letter-spacing: .1em !important;
}

/* ===================================================================
   図鑑フォーム（medaka-registry-all-in-one.php）RANMA化
=================================================================== */

/* ===== メインラップ — 最高詳細度で上書き ===== */
html body .mr-wrap,
html body div.mr-wrap,
html body .mr-wrap.mr-member,
html body .mr-wrap.mr-variety-form,
body .mr-wrap,
body div.mr-wrap {
  all: unset !important;
  display: block !important;
  box-sizing: border-box !important;
  background: var(--rm-m0) !important;
  background-color: var(--rm-m0) !important;
  border: 1px solid var(--rm-bd1) !important;
  border-radius: 20px !important;
  padding: 28px !important;
  margin: 20px 0 !important;
  color: var(--rm-tx1) !important;
  font-family: var(--rm-fs) !important;
  font-size: 16px !important;
  line-height: 1.6 !important;
  position: relative !important;
  overflow: hidden !important;
  box-shadow:
    0 0 0 1px rgba(0,0,0,.9),
    0 40px 100px rgba(0,0,0,.85),
    inset 0 1px 0 rgba(221,168,68,.06) !important;
}

/* 青海波背景 */
html body .mr-wrap::before,
body .mr-wrap::before {
  content: '' !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  background-image: var(--rm-seigaiha) !important;
  background-size: 40px 23px !important;
  pointer-events: none !important;
  z-index: 0 !important;
}

html body .mr-wrap > *,
body .mr-wrap > * {
  position: relative !important;
  z-index: 1 !important;
}

/* ===== 見出し ===== */
html body .mr-wrap h3,
html body .mr-wrap h4,
html body .mr-wrap h5,
body .mr-wrap h3,
body .mr-wrap h4,
body .mr-wrap h5 {
  all: unset !important;
  display: block !important;
  font-family: var(--rm-fm) !important;
  color: var(--rm-k7) !important;
  font-size: 1.4rem !important;
  font-weight: 700 !important;
  letter-spacing: .15em !important;
  border-bottom: 1px solid var(--rm-bd1) !important;
  padding-bottom: 12px !important;
  margin-top: 0 !important;
  margin-bottom: 24px !important;
  position: relative !important;
  z-index: 1 !important;
}

/* ===== ラベル ===== */
html body .mr-wrap label,
body .mr-wrap label {
  color: var(--rm-tx2) !important;
  font-weight: 600 !important;
  display: block !important;
  margin-bottom: 6px !important;
}

/* ===== 入力フィールド ===== */
html body .mr-wrap input[type="text"],
html body .mr-wrap input[type="email"],
html body .mr-wrap input[type="tel"],
html body .mr-wrap input[type="url"],
html body .mr-wrap input[type="number"],
html body .mr-wrap input[type="password"],
html body .mr-wrap select,
html body .mr-wrap textarea,
body .mr-wrap input[type="text"],
body .mr-wrap input[type="email"],
body .mr-wrap input[type="tel"],
body .mr-wrap input[type="url"],
body .mr-wrap input[type="number"],
body .mr-wrap input[type="password"],
body .mr-wrap select,
body .mr-wrap textarea {
  all: unset !important;
  display: block !important;
  width: 100% !important;
  box-sizing: border-box !important;
  background: var(--rm-m2) !important;
  background-color: var(--rm-m2) !important;
  border: 1px solid var(--rm-bd1) !important;
  border-radius: 10px !important;
  color: var(--rm-tx1) !important;
  padding: 14px 16px !important;
  margin-bottom: 15px !important;
  font-family: var(--rm-fs) !important;
  font-size: 16px !important;
  transition: border-color .2s, box-shadow .2s !important;
}

html body .mr-wrap input:focus,
html body .mr-wrap select:focus,
html body .mr-wrap textarea:focus,
body .mr-wrap input:focus,
body .mr-wrap select:focus,
body .mr-wrap textarea:focus {
  outline: none !important;
  border-color: var(--rm-k5) !important;
  box-shadow: 0 0 0 3px rgba(221,168,68,.15), 0 0 12px rgba(221,168,68,.1) !important;
}

/* ===== ボタン — 金泥蒔絵スタイル ===== */
html body .mr-btn,
html body .mr-wrap button,
html body .mr-wrap .mr-btn,
html body button.mr-btn,
html body .mr-wrap button[type="submit"],
html body .mr-wrap button[type="button"],
html body #mr_portal_fetch,
html body #mr_do_search,
html body #mr_portal_save_member,
body .mr-btn,
body .mr-wrap button,
body .mr-wrap .mr-btn,
body button.mr-btn,
body #mr_portal_fetch,
body #mr_do_search,
body #mr_portal_save_member {
  all: unset !important;
  display: inline-block !important;
  box-sizing: border-box !important;
  background: linear-gradient(180deg, rgba(255,255,255,.08) 0%, transparent 40%),
    linear-gradient(135deg, var(--rm-k2) 0%, var(--rm-k5) 30%, var(--rm-k7) 55%, var(--rm-k5) 80%, var(--rm-k3) 100%) !important;
  border: 1px solid var(--rm-k6) !important;
  border-radius: 10px !important;
  color: var(--rm-m0) !important;
  font-family: var(--rm-fm) !important;
  font-weight: 700 !important;
  font-size: 16px !important;
  letter-spacing: .15em !important;
  padding: 14px 28px !important;
  margin-top: 10px !important;
  cursor: pointer !important;
  position: relative !important;
  overflow: hidden !important;
  text-shadow: 0 1px 0 rgba(255,255,255,.2) !important;
  box-shadow:
    0 1px 0 rgba(0,0,0,.6),
    0 4px 16px rgba(168,114,40,.2),
    inset 0 1px 0 rgba(255,255,255,.15) !important;
  transition: all .3s cubic-bezier(.16,1,.3,1) !important;
  text-align: center !important;
  text-decoration: none !important;
  z-index: 1 !important;
}

html body .mr-btn:hover,
html body .mr-wrap button:hover,
html body #mr_portal_fetch:hover,
html body #mr_do_search:hover,
html body #mr_portal_save_member:hover,
body .mr-btn:hover,
body .mr-wrap button:hover {
  transform: translateY(-2px) !important;
  box-shadow:
    0 2px 0 rgba(0,0,0,.5),
    0 8px 28px rgba(221,168,68,.35),
    inset 0 1px 0 rgba(255,255,255,.2) !important;
}

html body .mr-btn:active,
html body .mr-wrap button:active,
body .mr-btn:active,
body .mr-wrap button:active {
  transform: translateY(1px) !important;
}

html body .mr-btn:disabled,
html body .mr-wrap button:disabled,
body .mr-btn:disabled,
body .mr-wrap button:disabled {
  background: var(--rm-m4) !important;
  color: var(--rm-tx4) !important;
  cursor: not-allowed !important;
  box-shadow: none !important;
  border-color: var(--rm-bd0) !important;
}

/* ===== fieldset ===== */
html body .mr-wrap fieldset,
body .mr-wrap fieldset {
  all: unset !important;
  display: block !important;
  box-sizing: border-box !important;
  background: var(--rm-m1) !important;
  background-color: var(--rm-m1) !important;
  border: 1px solid var(--rm-bd1) !important;
  border-radius: 12px !important;
  padding: 20px !important;
  margin-bottom: 20px !important;
  position: relative !important;
  z-index: 1 !important;
}

html body .mr-wrap legend,
body .mr-wrap legend {
  color: var(--rm-k6) !important;
  font-family: var(--rm-fm) !important;
  font-weight: 700 !important;
  letter-spacing: .1em !important;
  padding: 0 12px !important;
  float: left !important;
  width: 100% !important;
  margin-bottom: 12px !important;
}

/* ===== .mr-row ===== */
html body .mr-wrap .mr-row,
body .mr-wrap .mr-row {
  margin-bottom: 16px !important;
  position: relative !important;
  z-index: 1 !important;
}

/* ===== チェックボックス ===== */
html body .mr-wrap input[type="checkbox"],
body .mr-wrap input[type="checkbox"] {
  all: revert !important;
  accent-color: var(--rm-k6) !important;
  width: 18px !important;
  height: 18px !important;
  margin-right: 6px !important;
  vertical-align: middle !important;
}

/* インラインスタイルのラベル */
html body .mr-wrap label[style],
html body .mr-wrap div[style] label,
body .mr-wrap label[style],
body .mr-wrap div[style] label {
  color: var(--rm-tx2) !important;
  display: inline !important;
}

html body .mr-wrap fieldset div[style],
body .mr-wrap fieldset div[style] {
  color: var(--rm-tx2) !important;
  margin: 8px 0 !important;
}

html body .mr-wrap fieldset div[style] div[style],
body .mr-wrap fieldset div[style] div[style] {
  font-weight: 700 !important;
  color: var(--rm-tx1) !important;
  margin-bottom: 8px !important;
}

/* ===== 属性チップ ===== */
html body .mr-attr-chip,
html body span.mr-attr-chip,
body .mr-attr-chip,
body span.mr-attr-chip {
  background: var(--rm-sf1) !important;
  border: 1px solid var(--rm-bd2) !important;
  color: var(--rm-k7) !important;
  border-radius: 20px !important;
  font-family: var(--rm-fs) !important;
  padding: 4px 12px !important;
  display: inline-block !important;
  margin: 0 5px 5px 0 !important;
}

/* ===== テーブル ===== */
html body .mr-detail-table,
html body .mr-wrap .mr-detail-table,
body .mr-detail-table,
body .mr-wrap .mr-detail-table {
  color: var(--rm-tx1) !important;
  border-collapse: collapse !important;
  width: 100% !important;
  margin: 20px 0 !important;
}

html body .mr-detail-table th,
html body .mr-wrap .mr-detail-table th,
body .mr-detail-table th,
body .mr-wrap .mr-detail-table th {
  background: var(--rm-m2) !important;
  background-color: var(--rm-m2) !important;
  color: var(--rm-k6) !important;
  border: 1px solid var(--rm-bd1) !important;
  font-family: var(--rm-fm) !important;
  padding: 14px !important;
  text-align: left !important;
}

html body .mr-detail-table td,
html body .mr-wrap .mr-detail-table td,
body .mr-detail-table td,
body .mr-wrap .mr-detail-table td {
  background: var(--rm-m1) !important;
  background-color: var(--rm-m1) !important;
  border: 1px solid var(--rm-bd0) !important;
  padding: 14px !important;
  color: var(--rm-tx1) !important;
}

/* ===== 完了メッセージ ===== */
html body .mr-thanks-box,
body .mr-thanks-box {
  background: linear-gradient(135deg, rgba(16,185,129,.08) 0%, var(--rm-m1) 100%) !important;
  border: 1px solid rgba(16,185,129,.3) !important;
  border-radius: 12px !important;
  padding: 20px !important;
}

html body .mr-thanks-title,
body .mr-thanks-title {
  color: #6ee7b7 !important;
  font-family: var(--rm-fm) !important;
}

/* ===== リンク ===== */
html body .mr-wrap a,
body .mr-wrap a {
  color: var(--rm-k6) !important;
  text-decoration: none !important;
}

html body .mr-wrap a:hover,
body .mr-wrap a:hover {
  color: var(--rm-k8) !important;
  text-decoration: underline !important;
}

/* ===== 検索結果リスト ===== */
html body #mr_result_list,
html body ul#mr_result_list,
body #mr_result_list,
body ul#mr_result_list {
  list-style: none !important;
  padding: 0 !important;
  margin: 20px 0 !important;
}

html body #mr_result_list li,
body #mr_result_list li {
  background: var(--rm-m2) !important;
  border: 1px solid var(--rm-bd0) !important;
  border-radius: 10px !important;
  padding: 16px !important;
  margin-bottom: 12px !important;
  transition: all .25s cubic-bezier(.16,1,.3,1) !important;
}

html body #mr_result_list li:hover,
body #mr_result_list li:hover {
  border-color: var(--rm-bd1) !important;
  background: var(--rm-m3) !important;
}

html body #mr_result_list a,
body #mr_result_list a {
  color: var(--rm-k6) !important;
  font-family: var(--rm-fm) !important;
  font-weight: 700 !important;
  text-decoration: none !important;
}

html body #mr_result_list a:hover,
body #mr_result_list a:hover {
  color: var(--rm-k8) !important;
}

/* ===== YouTube埋め込み ===== */
html body .mr-embed,
body .mr-embed {
  border: 1px solid var(--rm-bd1) !important;
  border-radius: 12px !important;
  overflow: hidden !important;
}

/* ===== ポータル内の品種ボックス（JSで生成） ===== */
html body .mr-varbox,
html body div.mr-varbox,
body .mr-varbox,
body div.mr-varbox {
  background: var(--rm-m1) !important;
  background-color: var(--rm-m1) !important;
  border: 1px solid var(--rm-bd1) !important;
  border-radius: 12px !important;
  padding: 16px !important;
  margin: 16px 0 !important;
}

html body .mr-varbox h5,
body .mr-varbox h5 {
  color: var(--rm-tx0) !important;
  margin: 0 0 12px !important;
}

html body .mr-varbox fieldset,
body .mr-varbox fieldset {
  background: var(--rm-m2) !important;
  border: 1px solid var(--rm-bd0) !important;
  border-radius: 10px !important;
  padding: 12px !important;
  margin: 12px 0 !important;
}

html body .mr-varbox legend,
body .mr-varbox legend {
  color: var(--rm-k5) !important;
  font-weight: 700 !important;
}

/* ===== メッセージエリア ===== */
html body #mr_member_msg,
html body #mr_variety_msg,
html body #mr_portal_msg,
body #mr_member_msg,
body #mr_variety_msg,
body #mr_portal_msg {
  color: var(--rm-tx2) !important;
  font-size: 14px !important;
}

/* ===== 単一品種ページ（single） ===== */
html body .mr-view,
body .mr-view,
.mr-view {
  background: var(--rm-m0) !important;
  background-color: var(--rm-m0) !important;
  color: var(--rm-tx1) !important;
  padding: 20px !important;
  border-radius: 12px !important;
  margin-bottom: 20px !important;
}

html body .mr-view h1,
html body .mr-view h2,
html body .mr-view h3,
body .mr-view h1,
body .mr-view h2,
body .mr-view h3,
.mr-view h1,
.mr-view h2,
.mr-view h3 {
  color: var(--rm-k7) !important;
  font-family: var(--rm-fm) !important;
  background: transparent !important;
}

html body .mr-view p,
body .mr-view p,
.mr-view p {
  color: var(--rm-tx2) !important;
  background: transparent !important;
}

/* ===================================================================
   品種詳細ページ（single-medaka_variety）全体のRANMA化
   テーマのentry-content/post-content等を上書き
=================================================================== */

/* 投稿タイプ medaka_variety のシングルページ全体 */
body.single-medaka_variety,
html body.single-medaka_variety {
  background: var(--rm-m0) !important;
  background-color: var(--rm-m0) !important;
}

/* ★★★ 最強の上書き：白背景を持つ可能性のある全要素 ★★★ */
body.single-medaka_variety #page,
body.single-medaka_variety #content,
body.single-medaka_variety #primary,
body.single-medaka_variety #main,
body.single-medaka_variety #wrapper,
body.single-medaka_variety .site,
body.single-medaka_variety .site-content,
body.single-medaka_variety .site-main,
body.single-medaka_variety .content-area,
body.single-medaka_variety main,
body.single-medaka_variety article,
body.single-medaka_variety .hentry,
body.single-medaka_variety .post,
body.single-medaka_variety .type-medaka_variety,
body.single-medaka_variety .entry-content,
body.single-medaka_variety .post-content,
body.single-medaka_variety .the-content,
body.single-medaka_variety .page-content,
body.single-medaka_variety .single-content,
body.single-medaka_variety .article-content,
body.single-medaka_variety .entry,
body.single-medaka_variety .post-inner,
body.single-medaka_variety .entry-inner,
body.single-medaka_variety .post-wrap,
body.single-medaka_variety .content-wrap,
body.single-medaka_variety .container,
body.single-medaka_variety .wrapper,
body.single-medaka_variety .inner,
body.single-medaka_variety .row,
body.single-medaka_variety .col,
body.single-medaka_variety [class*="col-"],
body.single-medaka_variety .card,
body.single-medaka_variety .card-body,
body.single-medaka_variety .box,
body.single-medaka_variety .panel,
body.single-medaka_variety .section,
body.single-medaka_variety section,
body.single-medaka_variety .mr-view,
body.single-medaka_variety div:not(.mr-attr-chip):not([class*="mr-embed"]) {
  background: var(--rm-m0) !important;
  background-color: var(--rm-m0) !important;
}

/* テキストカラー強制 */
body.single-medaka_variety,
body.single-medaka_variety *:not(.mr-attr-chip):not(.mr-btn):not(a) {
  color: var(--rm-tx1) !important;
}

/* 投稿タイトル */
body.single-medaka_variety .entry-title,
body.single-medaka_variety h1.entry-title,
body.single-medaka_variety article h1,
body.single-medaka_variety .post-title,
body.single-medaka_variety h1,
body.single-medaka_variety .single-title,
body.single-medaka_variety .page-title {
  color: var(--rm-k7) !important;
  font-family: var(--rm-fm) !important;
  letter-spacing: .1em !important;
  background: transparent !important;
}

/* メタ情報（日付など） */
body.single-medaka_variety .entry-meta,
body.single-medaka_variety .post-meta,
body.single-medaka_variety .posted-on,
body.single-medaka_variety .byline,
body.single-medaka_variety .author,
body.single-medaka_variety time,
body.single-medaka_variety .date,
body.single-medaka_variety .meta {
  color: var(--rm-tx3) !important;
}

/* 本文テキスト */
body.single-medaka_variety p,
body.single-medaka_variety .entry-content p,
body.single-medaka_variety .post-content p,
body.single-medaka_variety article p,
body.single-medaka_variety .mr-view p,
body.single-medaka_variety span:not(.mr-attr-chip):not(.mr-attrs-label) {
  color: var(--rm-tx2) !important;
}

/* リンク */
body.single-medaka_variety a,
body.single-medaka_variety a:link,
body.single-medaka_variety a:visited {
  color: var(--rm-k6) !important;
}

body.single-medaka_variety a:hover,
body.single-medaka_variety a:active {
  color: var(--rm-k8) !important;
}

/* 見出し */
body.single-medaka_variety h1,
body.single-medaka_variety h2,
body.single-medaka_variety h3,
body.single-medaka_variety h4,
body.single-medaka_variety h5,
body.single-medaka_variety h6 {
  color: var(--rm-k7) !important;
  background: transparent !important;
}

/* ヘッダー・フッター */
body.single-medaka_variety .site-header,
body.single-medaka_variety header#masthead,
body.single-medaka_variety header,
body.single-medaka_variety .site-footer,
body.single-medaka_variety footer#colophon,
body.single-medaka_variety footer {
  background: var(--rm-m0) !important;
  color: var(--rm-tx2) !important;
  border-color: var(--rm-bd0) !important;
}

/* サイドバー */
body.single-medaka_variety .sidebar,
body.single-medaka_variety .widget-area,
body.single-medaka_variety aside,
body.single-medaka_variety #secondary {
  background: var(--rm-m1) !important;
  color: var(--rm-tx2) !important;
}

/* ナビゲーション */
body.single-medaka_variety nav,
body.single-medaka_variety .navigation,
body.single-medaka_variety .post-navigation,
body.single-medaka_variety .nav-links {
  background: var(--rm-m1) !important;
  border-color: var(--rm-bd0) !important;
}

/* コメントエリア */
body.single-medaka_variety .comments-area,
body.single-medaka_variety #comments,
body.single-medaka_variety .comment-respond {
  background: var(--rm-m1) !important;
  color: var(--rm-tx2) !important;
}

/* ボーダー */
body.single-medaka_variety hr,
body.single-medaka_variety [class*="border"],
body.single-medaka_variety [class*="divider"] {
  border-color: var(--rm-bd0) !important;
}

/* ===== 作出者ライン ===== */
html body .mr-breeder-line,
body .mr-breeder-line {
  border-bottom-color: var(--rm-bd0) !important;
  color: var(--rm-tx2) !important;
}

html body .mr-breeder-line strong,
body .mr-breeder-line strong {
  color: var(--rm-tx1) !important;
}

html body .mr-breeder-line a,
body .mr-breeder-line a {
  color: var(--rm-k6) !important;
}

/* ===== 属性表示エリア ===== */
html body .mr-attrs,
body .mr-attrs {
  margin: 16px 0 !important;
}

html body .mr-attrs-label,
body .mr-attrs-label {
  color: var(--rm-tx3) !important;
  font-weight: 700 !important;
}

/* ===== #mr-variety-details 強制上書き ===== */
html body #mr-variety-details,
html body #mr-variety-details.mr-wrap,
body #mr-variety-details,
body #mr-variety-details.mr-wrap {
  background: var(--rm-m0) !important;
  background-color: var(--rm-m0) !important;
  border-color: var(--rm-bd1) !important;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
   【3】お薬計算機 (medaka-kobo-fish-medicine.php) RANMA化
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */

/* body背景 — ショートコードページのみ */
body:has([class*="hdr-logo"]:not(.mg-app)) {
  background: var(--rm-m0) !important;
}

/* ヘッダー */
.hdr {
  background: linear-gradient(180deg, rgba(221,168,68,.03) 0%, var(--rm-m0) 100%) !important;
  border-bottom: 1px solid var(--rm-bd1) !important;
  backdrop-filter: blur(12px) !important;
}
.hdr::after {
  content: '' !important;
  position: absolute !important;
  bottom: 0 !important;
  left: 0 !important;
  right: 0 !important;
  height: 1px !important;
  background: linear-gradient(90deg, transparent 5%, var(--rm-k5) 30%, var(--rm-k7) 50%, var(--rm-k5) 70%, transparent 95%) !important;
}

.hdr-logo {
  font-family: var(--rm-fm) !important;
  background: var(--rm-gk) !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
}
.hdr-sub { color: var(--rm-tx3) !important; }

/* メニューボタン */
.menu-btn {
  background: var(--rm-sf1) !important;
  border: 1px solid var(--rm-bd1) !important;
  border-radius: 8px !important;
}
.menu-btn span { background: var(--rm-k6) !important; }
.menu-btn:hover { border-color: var(--rm-bd2) !important; }

/* ドロワー */
.drawer {
  background: var(--rm-m1) !important;
  border-left: 1px solid var(--rm-bd1) !important;
}
.drawer-hdr {
  border-bottom: 1px solid var(--rm-bd1) !important;
  background: linear-gradient(180deg, rgba(221,168,68,.04) 0%, transparent 100%) !important;
}
.drawer-title {
  font-family: var(--rm-fm) !important;
  color: var(--rm-k7) !important;
}
.drawer-close {
  color: var(--rm-tx3) !important;
}
.drawer-section-title {
  color: var(--rm-k6) !important;
  font-family: var(--rm-fm) !important;
  letter-spacing: .1em !important;
}
.drawer-item {
  background: var(--rm-m2) !important;
  border: 1px solid var(--rm-bd0) !important;
  border-radius: 10px !important;
}
.drawer-item:hover {
  border-color: var(--rm-bd1) !important;
  background: var(--rm-m3) !important;
}

/* HERO */
.hero {
  background: linear-gradient(180deg, rgba(221,168,68,.06) 0%, var(--rm-m0) 60%) !important;
  border: 1px solid var(--rm-bd1) !important;
  border-radius: 20px !important;
  position: relative !important;
  overflow: hidden !important;
}
.hero::before {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  background-image: var(--rm-seigaiha) !important;
  background-size: 40px 23px !important;
  pointer-events: none !important;
  z-index: 0 !important;
}
.hero > * { position: relative !important; z-index: 1 !important; }

.hero-badge {
  background: var(--rm-sf1) !important;
  border: 1px solid var(--rm-bd2) !important;
  color: var(--rm-k7) !important;
  font-family: var(--rm-fm) !important;
}

.hero h1 {
  font-family: var(--rm-fm) !important;
  color: var(--rm-tx0) !important;
  letter-spacing: .15em !important;
}
.hero h1 .ac {
  background: var(--rm-gk) !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
}
.hero-desc { color: var(--rm-tx2) !important; }

.hstat {
  background: var(--rm-m2) !important;
  border: 1px solid var(--rm-bd0) !important;
  border-radius: 10px !important;
}
.hstat-n {
  color: var(--rm-k7) !important;
  font-family: var(--rm-fm) !important;
}
.hstat-l { color: var(--rm-tx3) !important; }

/* セクションヘッダー */
.sec-hdr { position: relative !important; }
.sec-label {
  background: var(--rm-sf1) !important;
  border: 1px solid var(--rm-bd1) !important;
  color: var(--rm-k6) !important;
  font-family: var(--rm-fm) !important;
  border-radius: 20px !important;
}
.sec-title {
  font-family: var(--rm-fm) !important;
  color: var(--rm-tx0) !important;
  letter-spacing: .12em !important;
}
.sec-title span { color: var(--rm-k7) !important; }

/* 症状カード */
.symp-card {
  background: var(--rm-m2) !important;
  border: 1px solid var(--rm-bd0) !important;
  border-radius: 12px !important;
  transition: all .25s var(--rm-ez) !important;
}
.symp-card:hover, .symp-card.active {
  border-color: var(--rm-bd2) !important;
  background: var(--rm-m3) !important;
}
.symp-card::after { color: var(--rm-tx4) !important; }
.symp-card.active::after { color: var(--rm-k6) !important; }
.symp-glow { background: var(--rm-k6) !important; }
.symp-name { color: var(--rm-tx0) !important; }
.symp-tag {
  background: var(--rm-sf1) !important;
  border: 1px solid var(--rm-bd1) !important;
  color: var(--rm-k6) !important;
}

/* 症状モーダル */
.smodal-overlay {
  background: rgba(1,3,5,.94) !important;
  backdrop-filter: blur(8px) !important;
}
.smodal {
  background: var(--rm-m1) !important;
  border: 1px solid var(--rm-bd1) !important;
  border-radius: 20px 20px 0 0 !important;
}
@media(min-width:640px) {
  .smodal { border-radius: 20px !important; }
}
.smodal-handle { background: var(--rm-bd1) !important; }
.smodal-hdr {
  border-bottom-color: var(--rm-bd1) !important;
  background: linear-gradient(180deg, rgba(221,168,68,.04) 0%, transparent 100%) !important;
}
.smodal-disease {
  font-family: var(--rm-fm) !important;
  color: var(--rm-tx0) !important;
}
.smodal-tag {
  background: var(--rm-sf1) !important;
  border: 1px solid var(--rm-bd1) !important;
  color: var(--rm-k6) !important;
}
.smodal-close {
  background: var(--rm-sf1) !important;
  color: var(--rm-tx2) !important;
}
.smodal-close:hover { background: var(--rm-sf2) !important; }
.smodal-note {
  background: var(--rm-m2) !important;
  border-left: 3px solid var(--rm-k5) !important;
  color: var(--rm-tx2) !important;
}

/* 病気詳細ボタン */
.disease-detail-btn {
  background: linear-gradient(135deg, var(--rm-sf1) 0%, var(--rm-m2) 100%) !important;
  border: 1px solid var(--rm-bd1) !important;
  color: var(--rm-k6) !important;
  border-radius: 10px !important;
}
.disease-detail-btn:hover {
  border-color: var(--rm-bd2) !important;
}

.disease-detail-panel {
  background: var(--rm-m0) !important;
  border: 1px solid var(--rm-bd0) !important;
  border-radius: 10px !important;
}

/* 薬カード（モーダル内） */
.smod-med-card {
  background: var(--rm-m2) !important;
  border: 1px solid var(--rm-bd0) !important;
  border-radius: 12px !important;
}
.smod-med-card::before { background: var(--rm-k5) !important; }
.smod-med-card:hover {
  border-color: var(--rm-bd2) !important;
  background: var(--rm-m3) !important;
}
.smod-med-card.rank-p {
  border-color: var(--rm-bd2) !important;
  background: linear-gradient(90deg, rgba(221,168,68,.06) 0%, var(--rm-m2) 100%) !important;
}
.smod-med-card.rank-p::before { background: var(--rm-k6) !important; }
.smod-name { color: var(--rm-tx0) !important; }
.smod-ing { color: var(--rm-tx3) !important; }
.smod-arrow { color: var(--rm-k5) !important; }

.med-rank-label { font-family: var(--rm-fm) !important; }
.mrl-first { color: var(--rm-k7) !important; }
.mrl-alt { color: var(--rm-k5) !important; }

.srb-p {
  background: var(--rm-sf1) !important;
  border: 1px solid var(--rm-bd2) !important;
  color: var(--rm-k7) !important;
}
.srb-s {
  background: var(--rm-sf0) !important;
  border: 1px solid var(--rm-bd1) !important;
  color: var(--rm-k5) !important;
}

/* 計算機ラップ */
.calc-wrap {
  background: var(--rm-m1) !important;
  border: 1px solid var(--rm-bd1) !important;
  border-radius: 20px !important;
  position: relative !important;
  overflow: hidden !important;
}
.calc-wrap::before {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  background-image: var(--rm-seigaiha) !important;
  background-size: 40px 23px !important;
  pointer-events: none !important;
  z-index: 0 !important;
}
.calc-wrap > * { position: relative !important; z-index: 1 !important; }

.calc-hdr {
  background: linear-gradient(180deg, rgba(221,168,68,.05) 0%, transparent 100%) !important;
  border-bottom: 1px solid var(--rm-bd1) !important;
}
.calc-hdr::after {
  content: '' !important;
  position: absolute !important;
  bottom: 0 !important;
  left: 10% !important;
  right: 10% !important;
  height: 1px !important;
  background: linear-gradient(90deg, transparent, var(--rm-k5), transparent) !important;
}
.calc-hdr h2 {
  font-family: var(--rm-fm) !important;
  color: var(--rm-tx0) !important;
}
.calc-hdr p { color: var(--rm-tx3) !important; }

/* タブナビ */
.tab-nav {
  background: var(--rm-m2) !important;
  border-bottom: 1px solid var(--rm-bd1) !important;
}
.tab-btn {
  background: none !important;
  color: var(--rm-tx4) !important;
  font-family: var(--rm-fs) !important;
  border-bottom: 2px solid transparent !important;
  transition: all .2s !important;
}
.tab-btn:hover { color: var(--rm-tx2) !important; }
.tab-btn.active {
  color: var(--rm-k7) !important;
  border-bottom-color: var(--rm-k6) !important;
  background: var(--rm-sf0) !important;
}

/* タブペイン */
.tab-pane { background: transparent !important; }

/* フォームグループ */
.fg { margin-bottom: 16px !important; }
.fl {
  color: var(--rm-tx2) !important;
  font-family: var(--rm-fs) !important;
  margin-bottom: 6px !important;
}
.req { color: var(--rm-r4) !important; }

/* セレクト */
.sel-wrap { position: relative !important; }
.msel {
  background: var(--rm-m2) !important;
  border: 1px solid var(--rm-bd1) !important;
  border-radius: 10px !important;
  color: var(--rm-tx1) !important;
  padding: 14px 16px !important;
  font-family: var(--rm-fs) !important;
  width: 100% !important;
  appearance: none !important;
}
.msel:focus {
  outline: none !important;
  border-color: var(--rm-k5) !important;
  box-shadow: 0 0 0 3px rgba(221,168,68,.12) !important;
}

/* 水量グリッド */
.vgrid {
  display: grid !important;
  gap: 6px !important;
}
.vgrid-item {
  background: var(--rm-m2) !important;
  border: 1px solid var(--rm-bd0) !important;
  border-radius: 8px !important;
  color: var(--rm-tx2) !important;
  transition: all .2s !important;
}
.vgrid-item:hover {
  border-color: var(--rm-bd1) !important;
}
.vgrid-item.active {
  background: var(--rm-sf1) !important;
  border-color: var(--rm-k5) !important;
  color: var(--rm-k7) !important;
}

/* 計算ボタン */
.calc-btn {
  background: linear-gradient(180deg, rgba(255,255,255,.06) 0%, transparent 40%),
    linear-gradient(135deg, var(--rm-k2) 0%, var(--rm-k5) 30%, var(--rm-k7) 55%, var(--rm-k5) 80%, var(--rm-k3) 100%) !important;
  border: 1px solid var(--rm-k6) !important;
  border-radius: 12px !important;
  color: var(--rm-m0) !important;
  font-family: var(--rm-fm) !important;
  font-weight: 700 !important;
  letter-spacing: .2em !important;
  text-shadow: 0 1px 0 rgba(255,255,255,.2) !important;
  box-shadow:
    0 1px 0 rgba(0,0,0,.6),
    0 4px 20px rgba(168,114,40,.25),
    inset 0 1px 0 rgba(255,255,255,.15) !important;
  position: relative !important;
  overflow: hidden !important;
  transition: all .3s var(--rm-ez) !important;
}
.calc-btn::before {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  background: linear-gradient(110deg, transparent 0%, rgba(255,255,255,0) 35%, rgba(255,255,255,.25) 50%, rgba(255,255,255,0) 65%, transparent 100%) !important;
  transform: translateX(-100%) !important;
  transition: transform .5s var(--rm-ez) !important;
}
.calc-btn:hover::before { transform: translateX(100%) !important; }
.calc-btn:hover {
  transform: translateY(-2px) !important;
  box-shadow:
    0 2px 0 rgba(0,0,0,.5),
    0 10px 36px rgba(221,168,68,.35),
    inset 0 1px 0 rgba(255,255,255,.2) !important;
}

/* 結果ボックス */
.result-box {
  background: var(--rm-m1) !important;
  border: 1px solid var(--rm-bd1) !important;
  border-radius: 14px !important;
  position: relative !important;
  overflow: hidden !important;
}
.result-box::before {
  content: '' !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  height: 3px !important;
  background: linear-gradient(90deg, transparent 5%, var(--rm-k5) 30%, var(--rm-k8) 50%, var(--rm-k5) 70%, transparent 95%) !important;
}
.result-title {
  font-family: var(--rm-fm) !important;
  color: var(--rm-k7) !important;
  letter-spacing: .15em !important;
}

.result-row {
  background: var(--rm-m2) !important;
  border: 1px solid var(--rm-bd0) !important;
  border-radius: 10px !important;
}
.result-lbl { color: var(--rm-tx3) !important; }
.result-val {
  color: var(--rm-k8) !important;
  font-family: var(--rm-fm) !important;
}
.result-unit { color: var(--rm-tx4) !important; }

/* 薬アコーディオン */
.med-acc {
  background: var(--rm-m2) !important;
  border: 1px solid var(--rm-bd0) !important;
  border-radius: 12px !important;
  transition: border-color .2s !important;
}
.med-acc.open { border-color: var(--rm-bd1) !important; }

.med-acc-hdr { cursor: pointer !important; }
.med-icon {
  background: var(--rm-m3) !important;
  border-radius: 8px !important;
}
.med-name {
  color: var(--rm-tx0) !important;
  font-family: var(--rm-fs) !important;
}
.med-ing { color: var(--rm-tx3) !important; }
.med-arr { color: var(--rm-tx4) !important; }

.med-body-inner {
  border-top: 1px solid var(--rm-bd0) !important;
}

/* バッジ — 金泥系統 */
.bdg {
  border-radius: 6px !important;
  font-family: var(--rm-fs) !important;
}
.bbl {
  background: var(--rm-sf1) !important;
  border: 1px solid var(--rm-bd1) !important;
  color: var(--rm-k6) !important;
}
.bgo {
  background: var(--rm-sf1) !important;
  border: 1px solid var(--rm-bd2) !important;
  color: var(--rm-k7) !important;
}
.bre {
  background: rgba(176,24,8,.1) !important;
  border: 1px solid rgba(176,24,8,.3) !important;
  color: var(--rm-r4) !important;
}
.bgr {
  background: rgba(16,185,129,.1) !important;
  border: 1px solid rgba(16,185,129,.25) !important;
  color: #6ee7b7 !important;
}

.use-btn {
  background: var(--rm-sf1) !important;
  border: 1px solid var(--rm-bd1) !important;
  color: var(--rm-k6) !important;
  border-radius: 10px !important;
  font-family: var(--rm-fm) !important;
}
.use-btn:hover {
  background: var(--rm-sf2) !important;
  border-color: var(--rm-bd2) !important;
}

.med-detail-grid {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 8px !important;
}
.mdi {
  background: var(--rm-m3) !important;
  border-radius: 8px !important;
}
.mdi-l { color: var(--rm-tx4) !important; }
.mdi-v { color: var(--rm-tx1) !important; }

.med-dis { color: var(--rm-tx2) !important; }
.med-note {
  background: var(--rm-m3) !important;
  border-left: 3px solid var(--rm-bd1) !important;
  color: var(--rm-tx3) !important;
}

/* フッター */
footer {
  border-top: 1px solid var(--rm-bd0) !important;
  color: var(--rm-tx4) !important;
}

/* スクロールトップ */
.scroll-top {
  background: linear-gradient(135deg, var(--rm-k4), var(--rm-k6)) !important;
  border: 1px solid var(--rm-k5) !important;
  box-shadow: 0 4px 20px rgba(0,0,0,.4) !important;
}

/* LINE バナー */
.line-banner {
  background: linear-gradient(135deg, rgba(6,199,85,.1) 0%, var(--rm-m1) 100%) !important;
  border: 1px solid rgba(6,199,85,.25) !important;
  border-radius: 16px !important;
}
.line-banner-title {
  font-family: var(--rm-fm) !important;
}
.line-banner-desc { color: var(--rm-tx2) !important; }

/* 病気詳細タブ */
.ddp-tabs {
  border-bottom: 1px solid var(--rm-bd0) !important;
}
.ddp-tab {
  color: var(--rm-tx3) !important;
  font-family: var(--rm-fs) !important;
}
.ddp-tab.active {
  color: var(--rm-k6) !important;
  border-bottom-color: var(--rm-k5) !important;
  background: var(--rm-sf0) !important;
}

/* タイムライン */
.symptom-timeline::before {
  background: linear-gradient(180deg, var(--rm-k5), var(--rm-r4)) !important;
}
.st-item::before { background: var(--rm-k5) !important; border-color: var(--rm-m0) !important; }
.st-stage { color: var(--rm-k6) !important; }
.st-title { color: var(--rm-tx0) !important; }
.st-desc { color: var(--rm-tx2) !important; }

/* 危険サインボックス */
.danger-sign-box {
  background: rgba(176,24,8,.06) !important;
  border: 1px solid rgba(176,24,8,.25) !important;
  border-radius: 10px !important;
}
.dsb-title { color: var(--rm-r4) !important; }
.dsb-icon { color: var(--rm-r4) !important; }

/* 原因グリッド */
.cause-item {
  background: var(--rm-m3) !important;
  border: 1px solid var(--rm-bd0) !important;
  border-radius: 8px !important;
}
.cause-label { color: var(--rm-tx4) !important; }
.cause-val { color: var(--rm-tx1) !important; }

/* 適応テーブル */
.adapt-table th {
  background: var(--rm-sf1) !important;
  color: var(--rm-k6) !important;
}
.adapt-table td {
  border-bottom-color: var(--rm-bd0) !important;
}
.adapt-ok { color: #6ee7b7 !important; }
.adapt-ng { color: var(--rm-r4) !important; }
.adapt-caution { color: var(--rm-k6) !important; }
.adapt-note { color: var(--rm-tx4) !important; }

/* 分量比較 */
.dosage-compare {
  background: var(--rm-m2) !important;
  border: 1px solid var(--rm-bd0) !important;
  border-radius: 10px !important;
}
.dc-header {
  background: var(--rm-sf0) !important;
}
.dc-col-label { color: var(--rm-k6) !important; }
.dc-row { border-top-color: var(--rm-bd0) !important; }
.dc-cell { color: var(--rm-tx1) !important; }
.dc-cell.highlight { color: var(--rm-k7) !important; }

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
   【4】共通アニメーション
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */

@keyframes rm-katanaGleam {
  0%, 100% { transform: translateX(-5%) skewX(-8deg); opacity: .5; }
  50% { transform: translateX(220%) skewX(-8deg); opacity: 1; }
}

/* 刀身の光（オプション：各コンテナに適用可能） */
.pdm3::after,
.calc-wrap::after {
  content: '' !important;
  position: absolute !important;
  top: -30% !important;
  left: -15% !important;
  width: 50% !important;
  height: 200% !important;
  background: linear-gradient(110deg,
    transparent 0%,
    rgba(221,168,68,.04) 42%,
    rgba(248,216,112,.08) 50%,
    rgba(221,168,68,.04) 58%,
    transparent 100%) !important;
  pointer-events: none !important;
  z-index: 0 !important;
  animation: rm-katanaGleam 12s ease-in-out infinite !important;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
   【5】レスポンシブ対応
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */

@media (max-width: 600px) {
  .pdm3 { padding: 16px !important; border-radius: 16px !important; }
  .mr-wrap { padding: 20px !important; border-radius: 16px !important; }
  .hero { border-radius: 16px !important; }
  .calc-wrap { border-radius: 16px !important; }
}

    


  .atsco-wrap > h2 + div{
    background:#0e1b3f !important;
    border:1px solid #0e1b3f !important;
    color:#fff !important;
    border-radius:8px;
  }
  .atsco-wrap > h2 + div strong,
  .atsco-wrap > h2 + div span{ color:#fff !important; opacity:.95; }
  

    /* eap-ec-shop-nav-patch v1.2.0: カートバーを下端から20px上に */
    #eap-ec-cart-bar {
        bottom: 20px !important;
        border-radius: 8px !important;
        left: 10px !important;
        right: 10px !important;
        width: auto !important;
    }
    

    /* v1.4.0: ドロワーフッターをsafe-area対応・常に表示 */
    .ec-drawer {
        /* iOSのノッチ・ホームインジケーター対応 */
        padding-bottom: env(safe-area-inset-bottom, 0px);
    }
    .ec-drawer-footer {
        flex-shrink: 0 !important;
        padding-bottom: calc(14px + env(safe-area-inset-bottom, 8px)) !important;
        position: relative;
        z-index: 1;
    }
    .ec-drawer-body {
        /* フッターの高さ分だけ余白を確保してスクロール可能に */
        padding-bottom: 8px !important;
    }
    /* ① カード内に小計行を追加するスタイル */
    .ec-cart-item-sub-wrap {
        display: flex;
        justify-content: space-between;
        align-items: center;
        margin-top: 6px;
        font-size: .88em;
        color: #888;
    }
    .ec-cart-item-sub-wrap .sub-total {
        font-weight: bold;
        color: #c00;
        font-size: 1em;
    }
    

    /* v1.5.0: カード内小計行 */
    .ec-card-subtotal-row {
        display: flex;
        justify-content: space-between;
        align-items: center;
        margin-top: 4px;
        padding-top: 6px;
        border-top: 1px dashed #e0e0e0;
        font-size: .88em;
        color: #888;
    }
    .ec-card-subtotal-row .sub-val {
        font-weight: bold;
        color: #c00;
        font-size: 1.05em;
    }
    /* ドロワー内 各アイテムの単価行に小計を追記 */
    .ec-cart-item-price-sub {
        font-size: .84em;
        color: #c00;
        font-weight: bold;
        margin-top: 2px;
    }
    

    /* eapsnp v1.9.0: クーポン成功メッセージを緑・✅ で明確に表示 */
    .eapcp-coupon-msg.ok {
        color: #1a7a1a !important;
        font-weight: bold !important;
        font-size: 0.92rem !important;
        background: #eafbea;
        border: 1px solid #a0d8a0;
        border-radius: 5px;
        padding: 5px 10px;
        display: inline-block;
        margin-top: 6px;
    }
    .eapcp-coupon-msg.err {
        color: #cc0000 !important;
        font-weight: bold !important;
        font-size: 0.92rem !important;
        background: #fff0f0;
        border: 1px solid #f0a0a0;
        border-radius: 5px;
        padding: 5px 10px;
        display: inline-block;
        margin-top: 6px;
    }
    

            /* Hide 3rd party subtitle inputs in frontend form */
            .eap-form-box input[name="subtitle"], 
            .eap-form-box .subtitle-wrap,
            #kia-subtitle-form-row { display: none !important; }
        
.eappd-cert-sticker{--eappd-c:#39424e;display:inline-flex;align-items:center;gap:5px;padding:5px 9px;margin:3px 6px 3px 0;border:1px solid var(--eappd-c);border-radius:999px;background:#fff;color:var(--eappd-c);font-size:11px;line-height:1.15;vertical-align:middle;box-shadow:0 1px 3px rgba(0,0,0,.08)}.eappd-cert-sticker b{white-space:nowrap}.eappd-cert-sticker small{max-width:170px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.eappd-cert-sticker i{display:inline-grid;place-items:center;width:15px;height:15px;border-radius:50%;background:var(--eappd-c);color:#fff;font-style:normal;font-size:10px}

        /* ページ下部がナビに隠れないよう余白を確保 */
        body { padding-bottom: 100px !important; -webkit-tap-highlight-color: transparent; }

        /* --- ナビゲーションバー --- */
        .edo-bottom-nav {
            position: fixed; bottom: 0; left: 0; width: 100%;
            background: rgba(17, 17, 17, 0.96); /* 漆黒 */
            backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px);
            border-top: 1px solid rgba(197, 160, 89, 0.4); /* 江戸ゴールドの結界 */
            
            display: grid; 
            grid-template-columns: 1fr 1fr 1.2fr 1fr 1fr;
            align-items: center; /* 上下中央揃え */
            
            /* 【重要】見切れ防止の計算式 */
            /* 高さはコンテンツボックス基準(60px) + 安全領域(padding) */
            height: 60px;
            padding-bottom: env(safe-area-inset-bottom);
            box-sizing: content-box; 
            
            z-index: 999999; 
            box-shadow: 0 -5px 20px rgba(0,0,0,0.6);
        }

        /* アイコン共通 */
        .edo-nav-item {
            text-align: center; 
            color: #888888; 
            text-decoration: none !important;
            font-family: "Yu Mincho", "YuMincho", "Hiragino Mincho ProN", serif;
            font-weight: 500;
            
            /* コンテナ内で位置調整 */
            height: 100%;
            display: flex; flex-direction: column; align-items: center; justify-content: flex-end;
            padding-bottom: 10px; /* アイコンを少し持ち上げる */
            box-sizing: border-box;
            transition: color 0.3s ease;
        }

        /* アイコン画像 */
        .edo-nav-item .edo-nav-icon svg { 
            width: 20px; height: 20px; /* サイズ微調整 */
            fill: currentColor; 
            margin-bottom: 2px;
            filter: drop-shadow(0 1px 1px rgba(0,0,0,0.5));
        }

        /* テキストサイズ（見切れ防止のため縮小・行間調整） */
        .edo-nav-item span:not(.edo-nav-icon) {
            font-size: 10px; 
            line-height: 1.1;
            white-space: nowrap; /* 絶対に改行させない */
            overflow: visible;   /* 見切れても表示 */
        }
        
        /* 画面が狭いスマホ用（iPhone SE等）微調整 */
        @media (max-width: 370px) {
            .edo-nav-item span:not(.edo-nav-icon) { font-size: 9px; transform: scale(0.95); }
        }

        .edo-nav-item.active { color: #c5a059; }
        
        /* 中央の会場ボタン */
        .edo-nav-item.highlight { 
            color: #ffffff; 
            overflow: visible; 
            position: relative; 
            justify-content: flex-end;
        }
        .edo-nav-item.highlight .icon-wrapper {
            background: linear-gradient(135deg, #d4af37 0%, #aa8428 100%);
            width: 50px; height: 50px; border-radius: 50%;
            display: flex; align-items: center; justify-content: center;
            
            /* 位置：中央から上に飛び出させる */
            position: absolute;
            bottom: 25px; 
            left: 50%;
            transform: translateX(-50%);
            
            box-shadow: 0 4px 15px rgba(197, 160, 89, 0.3);
            border: 4px solid #111111;
            animation: edoPulse 2s infinite;
        }
        .edo-nav-item.highlight .icon-wrapper svg { width: 24px; height: 24px; fill: #111111; margin: 0; }
        
        .edo-nav-item.highlight span.label {
            color: #c5a059; font-weight: bold; font-size: 10px;
            text-shadow: 0 1px 2px rgba(0,0,0,0.8);
            margin-bottom: 0; /* 余計な隙間を削除 */
        }

        @keyframes edoPulse {
            0% { transform: translateX(-50%) scale(1); box-shadow: 0 0 0 0 rgba(197, 160, 89, 0.7); }
            70% { transform: translateX(-50%) scale(1.05); box-shadow: 0 0 0 10px rgba(197, 160, 89, 0); }
            100% { transform: translateX(-50%) scale(1); box-shadow: 0 0 0 0 rgba(197, 160, 89, 0); }
        }

        /* 特商法ボタン */
        .edo-nav-item.small-btn { opacity: 0.7; transform: scale(0.9); }

        /* 通知バナー */
        #eap-install-banner {
            display: none; position: fixed; bottom: 85px; left: 5%; width: 90%;
            background: rgba(10, 10, 10, 0.95); 
            border: 1px solid rgba(197, 160, 89, 0.3);
            color: #f0f0f0; padding: 10px 16px; border-radius: 8px;
            box-shadow: 0 8px 25px rgba(0,0,0,0.5); z-index: 999998;
            align-items: center; justify-content: space-between; box-sizing: border-box;
        }
        #eap-install-btn { 
            background: #c5a059; color: #000; border: none; 
            padding: 6px 14px; border-radius: 4px; font-size: 11px; font-weight: bold; cursor: pointer;
        }

        /* iOS用の吹き出しガイド */
        .ios-instruction-bubble {
            display: none; position: fixed; bottom: 140px; left: 50%; transform: translateX(-50%);
            width: 260px; background: #fff; color: #333; padding: 15px; border-radius: 10px;
            box-shadow: 0 5px 20px rgba(0,0,0,0.3); z-index: 999999; font-size: 12px; line-height: 1.5; text-align: center;
        }
        .ios-instruction-bubble::after {
            content: ''; position: absolute; bottom: -10px; left: 50%; transform: translateX(-50%);
            border-width: 10px 10px 0; border-style: solid; border-color: #fff transparent transparent;
        }
        .ios-icon { display:inline-block; vertical-align:middle; width:18px; margin:0 2px; }
    
.eapx-lost-log{display:block!important;opacity:1!important;visibility:visible!important;}

    /* ============ 江戸オク市場 スタイル ============ */
    .eim-ichiba-wrap {
        max-width: 1000px; margin: 0 auto; padding: 0 16px;
        font-family: system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,
                     "Hiragino Kaku Gothic ProN","Noto Sans JP",Meiryo,sans-serif;
    }

    /* イベントバナー */
    .eim-event-banner {
        background: linear-gradient(135deg, #e64a19 0%, #ff7043 100%);
        color: #fff; border-radius: 12px; padding: 16px 20px; margin-bottom: 24px;
        box-shadow: 0 4px 12px rgba(230,74,25,.3);
    }
    .eim-event-inner { display: flex; align-items: center; gap: 14px; }
    .eim-event-icon { font-size: 40px; line-height: 1; }
    .eim-event-title { font-size: 20px; font-weight: 900; }
    .eim-event-desc { font-size: 13px; opacity: 0.9; margin-top: 4px; }

    /* カードグリッド */
    .eim-list { display: grid; gap: 20px; }
    .eim-cols-2 { grid-template-columns: repeat(2, 1fr); }
    .eim-cols-3 { grid-template-columns: repeat(3, 1fr); }
    .eim-cols-4 { grid-template-columns: repeat(4, 1fr); }

    @media (max-width: 600px) {
        .eim-cols-2,.eim-cols-3,.eim-cols-4 { grid-template-columns: 1fr; }
    }
    @media (min-width: 601px) and (max-width: 900px) {
        .eim-cols-3,.eim-cols-4 { grid-template-columns: repeat(2, 1fr); }
    }

    /* カード */
    .eim-card {
        background: #fff; border: 1px solid #e0e0e0; border-radius: 12px;
        overflow: hidden; box-shadow: 0 2px 8px rgba(0,0,0,.08);
        transition: transform .2s, box-shadow .2s; position: relative;
    }
    .eim-card:hover {
        transform: translateY(-3px);
        box-shadow: 0 6px 18px rgba(0,0,0,.15);
    }

    /* 市場バッジ */
    .eim-badge-ichiba {
        position: absolute; top: 8px; left: 8px;
        background: rgba(230,74,25,.9); color: #fff;
        padding: 3px 10px; border-radius: 20px; font-size: 11px;
        font-weight: bold; z-index: 1;
    }

    /* サムネイル */
    .eim-thumb img {
        width: 100%; height: 200px; object-fit: cover; display: block;
    }
    .eim-ytbox { position: relative; padding-top: 56.25%; background: #000; }
    .eim-ytbox iframe {
        position: absolute; top: 0; left: 0; width: 100%; height: 100%; border: 0;
    }

    /* カード本文 */
    .eim-body { padding: 12px 14px; }
    .eim-ttl { font-size: 14px; font-weight: bold; margin-bottom: 6px; }
    .eim-ttl a { color: #111; text-decoration: none; }
    .eim-ttl a:hover { color: #e64a19; }
    .eim-price { font-size: 15px; font-weight: 800; color: #e64a19; margin-bottom: 4px; }
    .eim-price-num { font-variant-numeric: tabular-nums; }
    .eim-meta { font-size: 12px; color: #666; }
    .eim-countdown { color: #e60000; font-weight: bold; }
    .eim-badge-end {
        background: #555; color: #fff; padding: 2px 8px;
        border-radius: 4px; font-size: 11px;
    }

    /* ボタン */
    .eim-actions { display: flex; gap: 8px; padding: 0 14px 14px; }
    .eim-btn-outline {
        display: inline-block; border: 2px solid #555; color: #555;
        background: #fff; padding: 7px 12px; border-radius: 8px;
        text-decoration: none; font-weight: bold; font-size: 13px; text-align: center; flex: 1;
    }
    .eim-btn-primary {
        display: inline-block; background: #e64a19; color: #fff; border: 0;
        padding: 7px 12px; border-radius: 8px; text-decoration: none;
        font-weight: bold; font-size: 13px; text-align: center; flex: 1;
    }
    .eim-btn-primary:hover { background: #bf360c; }
    .eim-empty { padding: 30px; text-align: center; color: #888; font-size: 15px; }

    /* 通常オークション一覧と共通化した市場ステータス */
    .eim-native-status {
        display: flex; gap: 8px; flex-wrap: wrap; margin: 0 0 14px;
    }
    .eim-native-status-btn {
        display: inline-block; padding: 8px 16px; border-radius: 999px;
        border: 1px solid #d7d7d7; background: #fff; color: #333 !important;
        text-decoration: none; font-size: 13px; font-weight: 800;
    }
    .eim-native-status-btn:hover { border-color: #e64a19; color: #e64a19 !important; }
    .eim-native-status-btn.active {
        background: #e64a19; border-color: #e64a19; color: #fff !important;
    }
    .eim-native-list-host .eap-list-wrapper,
    .eim-native-list-host .eap-searchwrap { max-width: 960px; margin-left: auto; margin-right: auto; }

    /* 絞り込みタブバー */
    .eim-filter-bar {
        display: flex; flex-wrap: wrap; gap: 10px 20px;
        margin-bottom: 18px; align-items: center;
    }
    .eim-filter-group { display: flex; align-items: center; gap: 6px; flex-wrap: wrap; }
    .eim-filter-label { font-size: 12px; color: #888; font-weight: bold; min-width: 3em; }
    .eim-tab {
        background: #f5f5f5; color: #444; border: 1px solid #ddd;
        border-radius: 20px; padding: 5px 14px; font-size: 13px;
        font-weight: bold; cursor: pointer; transition: all .15s;
    }
    .eim-tab:hover { background: #ffe0d4; border-color: #e64a19; color: #e64a19; }
    .eim-tab.active { background: #e64a19; color: #fff; border-color: #e64a19; }

    /* カードエリアのフェード */
    .eim-cards-area { transition: opacity .2s; }

    /* ローディングスピナー */
    .eim-loading {
        text-align: center; padding: 20px; font-size: 14px; color: #888;
    }
    .eim-spinner {
        display: inline-block; width: 16px; height: 16px;
        border: 2px solid #ddd; border-top-color: #e64a19;
        border-radius: 50%; animation: eim-spin .7s linear infinite;
        vertical-align: middle; margin-right: 6px;
    }
    @keyframes eim-spin { to { transform: rotate(360deg); } }

    /* 入場ボタン */
    .eim-entry-btn-wrap { margin-bottom: 20px; }
    .eim-entry-btn {
        display: inline-block; background: #e64a19; color: #fff !important;
        border: none; border-radius: 10px; padding: 14px 32px;
        font-size: 16px; font-weight: 900; text-decoration: none;
        box-shadow: 0 4px 12px rgba(230,74,25,.3);
        transition: background .2s, transform .15s;
    }
    .eim-entry-btn:hover { background: #bf360c; transform: translateY(-2px); }

    /* 入場カード（通常カードと同サイズ） */
    .eim-entry-card {
        background: #fff; border: 2px solid #e64a19; border-radius: 12px;
        overflow: hidden; display: flex; flex-direction: column;
        box-shadow: 0 2px 8px rgba(230,74,25,.15); position: relative;
        cursor: pointer; text-decoration: none; color: inherit;
    }
    .eim-entry-card:hover { transform: translateY(-3px); box-shadow: 0 6px 18px rgba(230,74,25,.3); transition: transform .2s, box-shadow .2s; }
    .eim-entry-card-img {
        width: 100%; padding-top: 56.25%; position: relative; background: #e64a19; overflow: hidden;
    }
    .eim-entry-card-img-inner {
        position: absolute; top: 0; left: 0; width: 100%; height: 100%;
        display: flex; align-items: center; justify-content: center;
        font-size: 52px; line-height: 1;
    }
    .eim-entry-card-body {
        padding: 12px 14px; flex: 1; display: flex; flex-direction: column; justify-content: center;
    }
    .eim-entry-card-title {
        font-size: 15px; font-weight: 900; color: #e64a19; margin-bottom: 6px; line-height: 1.4;
    }
    .eim-entry-card-sub {
        font-size: 12px; color: #888;
    }
    .eim-entry-card-actions {
        padding: 0 14px 14px;
    }
    .eim-entry-card-btn {
        display: block; background: #e64a19; color: #fff !important; text-align: center;
        border-radius: 8px; padding: 9px 12px; font-weight: 900; font-size: 13px;
        text-decoration: none;
    }
    .eim-entry-card-btn:hover { background: #bf360c; }

    /* 開催中パルス（赤く光る） */
    .eim-entry-card.eim-live {
        animation: eim-pulse-border 2s ease-in-out infinite;
    }
    .eim-live-badge {
        position: absolute; top: 8px; right: 8px; z-index: 2;
        background: #e60000; color: #fff; font-size: 11px; font-weight: 900;
        padding: 3px 10px; border-radius: 20px;
        animation: eim-pulse-badge 1.4s ease-in-out infinite;
    }
    @keyframes eim-pulse-border {
        0%,100% { box-shadow: 0 0 0 0 rgba(230,74,25,.5), 0 2px 8px rgba(230,74,25,.15); }
        50%      { box-shadow: 0 0 0 6px rgba(230,74,25,0), 0 2px 8px rgba(230,74,25,.15); }
    }
    @keyframes eim-pulse-badge {
        0%,100% { opacity: 1; }
        50%      { opacity: .55; }
    }
    
.gallery .gallery-item img { width: auto; height: auto; }
#eap-install-banner{display:none !important;}
.eappd-box{color:#1b1f24 !important;border-color:#c8ced6 !important}.eappd-box h3,.eappd-box label,.eappd-box .eappd-label,.eappd-box .eappd-row label,.eappd-box p,.eappd-box small,.eappd-box summary,.eappd-box span{color:#1b1f24 !important}.eappd-box .eappd-note{color:#2b3a47 !important;background:#eef3f8 !important}.eappd-box .eappd-warn{color:#6b5200 !important;background:#fff3cd !important}.eappd-box .eap-input,.eappd-box input,.eappd-box select,.eappd-box textarea{color:#1b1f24 !important;background:#fff !important;border:1px solid #c8ced6 !important;-webkit-text-fill-color:#1b1f24 !important;opacity:1 !important}.eappd-box input::placeholder,.eappd-box textarea::placeholder{color:#8a94a0 !important;-webkit-text-fill-color:#8a94a0 !important;opacity:1 !important}.eappd-box option{color:#1b1f24 !important;background:#fff !important}.eappd-box .eappd-apply{border-color:#c8ced6 !important}.eappd-drawer{color:#1b1f24 !important;background:#fff !important}.eappd-drawer *{color:#1b1f24 !important}.eappd-drawer .eap-input{background:#fff !important;-webkit-text-fill-color:#1b1f24 !important}.eappd-drawer .eappd-close{color:#1b1f24 !important}
.eapmtl-page-link{color:inherit;text-decoration:none;border-bottom:1px solid rgba(0,0,0,.28);padding-bottom:.05em;transition:border-color .15s ease,background-color .15s ease;}.eapmtl-page-link:hover,.eapmtl-page-link:focus{border-bottom-color:currentColor;background-color:rgba(0,0,0,.04);}

    /* 既存スマート履歴の色味を濃くする */
    .eap-bidlog-smart .nm{color:#111827 !important;font-weight:700 !important;} /* 名前：真っ黒＆太字 */
    .eap-bidlog-smart .tm{color:#374151 !important;}                             /* 日時：濃いグレー */
    .eap-bidlog-smart .yen{color:#111827 !important;font-weight:800 !important;} /* 金額：濃色＆太字 */
    .eap-bidlog-smart li.is-top .yen{color:#b91c1c !important;}                  /* 最高値は濃い赤 */
    .eap-bidlog-smart .auto{color:#1d4ed8 !important;}                           /* 自動入札バッジ */
    .eap-bidlog-smart .cap{color:#059669 !important;}                            /* 上限更新バッジ */

    /* 全履歴ブロック */
    .eap-bidlog-all{border:1px solid #e5e7eb;border-radius:12px;padding:12px;background:#fff;margin-top:12px;font-size:14px;line-height:1.6}
    .eap-bidlog-all .hd{display:flex;gap:8px;align-items:baseline;margin-bottom:6px}
    .eap-bidlog-all .hd .ttl{font-weight:700}
    .eap-bidlog-all .toggle{margin-left:auto;border:1px solid #e5e7eb;background:#fafafa;border-radius:8px;padding:8px 10px;cursor:pointer}
    .eap-bidlog-all ol{list-style:none;margin:8px 0 0;padding:0}
    .eap-bidlog-all li{display:flex;align-items:center;gap:10px;padding:8px 0;border-top:1px dashed #e5e7eb}
    .eap-bidlog-all li:first-child{border-top:none}
    .eap-bidlog-all .nm{color:#111827;font-weight:700}
    .eap-bidlog-all .tm{color:#374151;font-size:12px}
    .eap-bidlog-all .yen{color:#111827;font-weight:800}
    .eap-bidlog-all .auto{color:#1d4ed8;font-size:12px;margin-left:6px}
    .eap-bidlog-all .cap{color:#059669;font-size:12px;margin-left:6px}
    .eap-bidlog-all[data-open="0"] ol{display:none}
  

    .eapx-lost-log{border:1px solid #e5e7eb;border-radius:12px;padding:12px;background:#fff;margin-top:16px;font-size:14px;line-height:1.6}
    .eapx-lost-log .hd{display:flex;gap:8px;align-items:baseline;margin-bottom:6px}
    .eapx-lost-log .ttl{font-weight:700}
    .eapx-lost-log ol{list-style:none;margin:8px 0 0;padding:0}
    .eapx-lost-log li{display:flex;align-items:center;gap:10px;padding:8px 0;border-top:1px dashed #e5e7eb}
    .eapx-lost-log li:first-child{border-top:none}
    .eapx-lost-log .nm{color:#111827;font-weight:700}
    .eapx-lost-log .tm{color:#374151;font-size:12px}
    .eapx-lost-log .yen{color:#111827;font-weight:800}
  

    .eapx-lost-log{border:1px solid #e5e7eb;border-radius:12px;padding:12px;background:#fff;margin-top:16px;font-size:14px;line-height:1.6}
    .eapx-lost-log .nm{color:#111827;font-weight:700}
    .eapx-lost-log .tm{color:#374151;font-size:12px}
    .eapx-lost-log .yen{color:#111827;font-weight:800}
  

    .eapx-lost-log{border:1px solid #e5e7eb;border-radius:12px;padding:12px;background:#fff;margin-top:16px;font-size:14px;line-height:1.6}
    .eapx-lost-log .nm{color:#111827;font-weight:700}
    .eapx-lost-log .tm{color:#374151;font-size:12px}
    .eapx-lost-log .yen{color:#111827;font-weight:800}
  

    .eapx-lost-log{display:none!important;}
    .eapx-lost-log--masked{display:block!important;opacity:1!important;visibility:visible!important;}
  
.eapx-lost-log--masked{display:none!important;visibility:hidden!important;}

			/* ===========================================
   1) サイト全体（HP全体）に効く“見えやすさ”リセット
   ※ テーマが薄い配色でもフォームが読めるように
   =========================================== */
html, body {
  color-scheme: light only; /* 一部テーマの自動反転対策（任意） */
}

/* 入力欄・セレクト・テキストエリア（全ページ共通） */
input[type="text"], input[type="search"], input[type="email"],
input[type="tel"], input[type="url"], input[type="number"],
input[type="password"], textarea, select {
  color:#111 !important;
  background:#fff !important;
  border:1px solid #ccc !important;
  border-radius:6px !important;
  padding:.65em .8em !important;
  box-shadow:none !important;
  outline:none !important;
}
::placeholder { color:#888 !important; opacity:1 !important; }
input:focus, textarea:focus, select:focus {
  border-color:#666 !important;
  box-shadow:0 0 0 2px rgba(0,0,0,.08) !important;
}
/* オートフィルで白文字になる対策 */
input:-webkit-autofill {
  -webkit-text-fill-color:#111 !important;
  box-shadow:0 0 0 1000px #fff inset !important;
}

/* ボタンのコントラスト（共通） */
button, .wp-element-button, input[type="submit"] {
  color:#fff !important;
  background:#333 !important;
  border:0 !important;
  border-radius:6px !important;
}
button:hover, .wp-element-button:hover, input[type="submit"]:hover {
  filter:brightness(1.05);
}

/* ===========================================
   2) オークション専用の見た目（どのページでも .eap-* があれば適用）
   =========================================== */

/* ボックス */
.eap-auction{
  max-width:920px;
  margin:24px auto;
  padding:16px;
  border:1px solid #ddd;
  border-radius:8px;
  background:#fff;
  color:#222;
}
.eap-title{margin:0 0 10px;font-size:22px;color:#222}
.eap-price{font-size:20px;font-weight:700;margin:8px 0;color:#222}
.eap-meta{color:#555;margin:4px 0}
.eap-count{font-size:16px;margin:6px 0;color:#222}
.eap-badge{display:inline-block;background:#111;color:#fff;font-size:12px;padding:2px 8px;border-radius:4px}
.eap-h3{margin-top:18px;color:#222}
.eap-hist{background:#fafafa;border:1px solid #eee;border-radius:6px;padding:10px;margin-top:8px;font-size:14px;color:#222}

/* 入力類（.eap-auction 内はさらに確実に） */
.eap-auction input[type="text"],
.eap-auction input[type="number"],
.eap-auction input[type="email"],
.eap-auction input[type="tel"],
.eap-auction input[type="url"],
.eap-auction textarea,
.eap-auction select{
  color:#111 !important; -webkit-text-fill-color:#111 !important;
  background:#fff !important; border:1px solid #ccc !important;
  padding:10px !important; border-radius:6px !important;
  box-shadow:none !important; outline:none !important;
}
.eap-auction ::placeholder{ color:#888 !important; opacity:1 !important; }
.eap-auction .eap-btn-primary{
  background:#333 !important; color:#fff !important; border:0 !important;
}
.eap-auction .eap-countdown{ color:#111 !important; }

/* YouTube（ヒーロー） */.eap-hero iframe,
.eap-video iframe{
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
}
.eap-hero iframe, .eap-video iframe{
  position:absolute; inset:0; width:100%; height:100%; border:0;
}

/* ギャラリー（YouTubeの下に小さく綺麗に） */
.eap-gallery, .eap-items{
  max-width:920px;
  margin:8px auto 16px;
  display:grid !important;
  grid-template-columns:repeat(4, 1fr);
  gap:8px;
}
@media (max-width:900px){ .eap-gallery, .eap-items{ grid-template-columns:repeat(3, 1fr); } }
@media (max-width:600px){ .eap-gallery, .eap-items{ grid-template-columns:repeat(2, 1fr); } }

.eap-gitem, .eap-item{
  position:relative;
  aspect-ratio:1 / 1;
  border:1px solid #eee;
  border-radius:8px;
  overflow:hidden;
  background:#fff;
}
.eap-gitem img, .eap-item img{
  width:100%; height:100%; object-fit:cover; display:block !important;
}

/* キャプション（小見出し・本文を画像の下部に重ねる版） */
.eap-gcap{
  position:absolute; left:0; right:0; bottom:0;
  padding:6px 8px;
  background:linear-gradient(transparent, rgba(0,0,0,.6));
  color:#fff;
  font-size:12px; line-height:1.4;
}
.eap-gcap strong{ display:block; font-size:13px; margin-bottom:2px; }
.eap-gitem--text{ padding:10px; aspect-ratio:auto; }

/* 商品説明（画像の下にテキストで出す版の体裁） */
.eap-item-title{font-size:13px;margin:6px 8px 0}
.eap-item-text {font-size:12px;margin:4px 8px 8px;color:#555}

/* “本文の最初の1枚がダブる”テーマ向け（単一オークションのみ隠す） */
body.single-auction .post-thumbnail:first-of-type,
body.single-auction .entry-content > .wp-block-image:first-of-type,
body.single-auction .entry-content > p:first-of-type > img:first-child{
  display:none !important;
}
/* スマホメニューを強制的に隠す */
#global-menu,
.sp-header-menu,
.mobile-nav,
.drawer-menu,
nav ul#menu-header,
header .menu,
.drawer--right {
    display: none !important;
}		

    /* 濃い表示に上書き（スマート履歴） */
    .eap-bidlog-smart .nm{color:#111827 !important;font-weight:700 !important;}
    .eap-bidlog-smart .tm{color:#374151 !important;}
    .eap-bidlog-smart .yen{color:#111827 !important;font-weight:800 !important;}
    .eap-bidlog-smart li.is-top .yen{color:#b91c1c !important;}
    .eap-bidlog-smart .auto{color:#1d4ed8 !important;}
    .eap-bidlog-smart .cap{color:#059669 !important;}

    /* 全履歴ブロックの基本（トグルON/OFF用） */
    .eap-bidlog-all[data-open="0"] ol{display:none;}
    .eap-bidlog-all .toggle{cursor:pointer;}

    /* 連続して同じブロックが出たら2個目を非表示（簡易保険） */
    .eap-bidlog-smart + .eap-bidlog-smart{display:none !important;}
    .eap-bidlog-all   + .eap-bidlog-all{display:none !important;}
  

    /* 「さらに表示」ボタンを消す */
    .eap-bidlog-smart .more{ display:none !important; }
    /* 隠しクラスでも常に表示（レンダリング更新時も有効） */
    .eap-bidlog-smart li.is-hidden{ display:flex !important; }
  
[style*="background:#fff"] :where(p,li,td,th,h1,h2,h3,h4,h5,h6,label,legend,small,blockquote,dt,dd,span:not([style*="color"]),div:not([style*="color"]):not([style*="background"])),[style*="background: #fff"] :where(p,li,td,th,h1,h2,h3,h4,h5,h6,label,legend,small,blockquote,dt,dd,span:not([style*="color"]),div:not([style*="color"]):not([style*="background"])),[style*="background:#ffffff"] :where(p,li,td,th,h1,h2,h3,h4,h5,h6,label,legend,small,blockquote,dt,dd,span:not([style*="color"]),div:not([style*="color"]):not([style*="background"])),[style*="background: #ffffff"] :where(p,li,td,th,h1,h2,h3,h4,h5,h6,label,legend,small,blockquote,dt,dd,span:not([style*="color"]),div:not([style*="color"]):not([style*="background"])),[style*="background-color:#fff"] :where(p,li,td,th,h1,h2,h3,h4,h5,h6,label,legend,small,blockquote,dt,dd,span:not([style*="color"]),div:not([style*="color"]):not([style*="background"])),[style*="background-color: #fff"] :where(p,li,td,th,h1,h2,h3,h4,h5,h6,label,legend,small,blockquote,dt,dd,span:not([style*="color"]),div:not([style*="color"]):not([style*="background"])),[style*="background:white"] :where(p,li,td,th,h1,h2,h3,h4,h5,h6,label,legend,small,blockquote,dt,dd,span:not([style*="color"]),div:not([style*="color"]):not([style*="background"])),[style*="background: white"] :where(p,li,td,th,h1,h2,h3,h4,h5,h6,label,legend,small,blockquote,dt,dd,span:not([style*="color"]),div:not([style*="color"]):not([style*="background"])),[style*="background:#fffdf7"] :where(p,li,td,th,h1,h2,h3,h4,h5,h6,label,legend,small,blockquote,dt,dd,span:not([style*="color"]),div:not([style*="color"]):not([style*="background"])),[style*="background: #fffdf7"] :where(p,li,td,th,h1,h2,h3,h4,h5,h6,label,legend,small,blockquote,dt,dd,span:not([style*="color"]),div:not([style*="color"]):not([style*="background"])),[style*="background:#fefefe"] :where(p,li,td,th,h1,h2,h3,h4,h5,h6,label,legend,small,blockquote,dt,dd,span:not([style*="color"]),div:not([style*="color"]):not([style*="background"])),[style*="background: #fefefe"] :where(p,li,td,th,h1,h2,h3,h4,h5,h6,label,legend,small,blockquote,dt,dd,span:not([style*="color"]),div:not([style*="color"]):not([style*="background"])){color:#222222;-webkit-text-fill-color:currentColor;text-shadow:none}[style*="background:#fff"] :where(strong:not([style*="color"]),b:not([style*="color"])),[style*="background: #fff"] :where(strong:not([style*="color"]),b:not([style*="color"])),[style*="background:#ffffff"] :where(strong:not([style*="color"]),b:not([style*="color"])),[style*="background: #ffffff"] :where(strong:not([style*="color"]),b:not([style*="color"])),[style*="background-color:#fff"] :where(strong:not([style*="color"]),b:not([style*="color"])),[style*="background-color: #fff"] :where(strong:not([style*="color"]),b:not([style*="color"])),[style*="background:white"] :where(strong:not([style*="color"]),b:not([style*="color"])),[style*="background: white"] :where(strong:not([style*="color"]),b:not([style*="color"])),[style*="background:#fffdf7"] :where(strong:not([style*="color"]),b:not([style*="color"])),[style*="background: #fffdf7"] :where(strong:not([style*="color"]),b:not([style*="color"])),[style*="background:#fefefe"] :where(strong:not([style*="color"]),b:not([style*="color"])),[style*="background: #fefefe"] :where(strong:not([style*="color"]),b:not([style*="color"])){color:#111111;-webkit-text-fill-color:currentColor}[style*="background:#fff"] :where(a:not([style*="color"])),[style*="background: #fff"] :where(a:not([style*="color"])),[style*="background:#ffffff"] :where(a:not([style*="color"])),[style*="background: #ffffff"] :where(a:not([style*="color"])),[style*="background-color:#fff"] :where(a:not([style*="color"])),[style*="background-color: #fff"] :where(a:not([style*="color"])),[style*="background:white"] :where(a:not([style*="color"])),[style*="background: white"] :where(a:not([style*="color"])),[style*="background:#fffdf7"] :where(a:not([style*="color"])),[style*="background: #fffdf7"] :where(a:not([style*="color"])),[style*="background:#fefefe"] :where(a:not([style*="color"])),[style*="background: #fefefe"] :where(a:not([style*="color"])){color:#8a6d1f;-webkit-text-fill-color:currentColor}[style*="background:#fff"] button, [style*="background:#fff"] input[type="submit"], [style*="background:#fff"] input[type="button"],[style*="background: #fff"] button, [style*="background: #fff"] input[type="submit"], [style*="background: #fff"] input[type="button"],[style*="background:#ffffff"] button, [style*="background:#ffffff"] input[type="submit"], [style*="background:#ffffff"] input[type="button"],[style*="background: #ffffff"] button, [style*="background: #ffffff"] input[type="submit"], [style*="background: #ffffff"] input[type="button"],[style*="background-color:#fff"] button, [style*="background-color:#fff"] input[type="submit"], [style*="background-color:#fff"] input[type="button"],[style*="background-color: #fff"] button, [style*="background-color: #fff"] input[type="submit"], [style*="background-color: #fff"] input[type="button"],[style*="background:white"] button, [style*="background:white"] input[type="submit"], [style*="background:white"] input[type="button"],[style*="background: white"] button, [style*="background: white"] input[type="submit"], [style*="background: white"] input[type="button"],[style*="background:#fffdf7"] button, [style*="background:#fffdf7"] input[type="submit"], [style*="background:#fffdf7"] input[type="button"],[style*="background: #fffdf7"] button, [style*="background: #fffdf7"] input[type="submit"], [style*="background: #fffdf7"] input[type="button"],[style*="background:#fefefe"] button, [style*="background:#fefefe"] input[type="submit"], [style*="background:#fefefe"] input[type="button"],[style*="background: #fefefe"] button, [style*="background: #fefefe"] input[type="submit"], [style*="background: #fefefe"] input[type="button"]{background:#1a1a1a !important;color:#e8c86a !important;-webkit-text-fill-color:currentColor !important;text-shadow:none !important;font-weight:bold !important}

@media (min-width: 1200px) {
  main > section > .container { max-width: 1440px !important; }
  main .epress_pager { max-width: 1440px !important; }
  main article > .container { max-width: none !important; padding: 0 !important; }
  main article > .container > .row { display: flex !important; align-items: flex-start !important; gap: 2% !important; }
  main article > .container > .row > .col { float: none !important; margin-left: 0 !important; margin-bottom: 0 !important; }
  main article > .container > .row > .col.span_4 { width: 40% !important; align-self: flex-start; }
  main article > .container > .row > .col.span_8 { width: 58% !important; }
  main { overflow: visible !important; overflow: clip !important; }
  main article > .container > .row > .col.span_4 { position: -webkit-sticky; position: sticky; top: calc(24px + var(--wp-admin--admin-bar-height, 0px)); }
  main article .col.span_4 .swiper { width: 100% !important; }
  main article .col.span_4 .swiper-slide { aspect-ratio: 1 / 1 !important; }
  main article .col.span_8 .eap-auction:not(.eap-card) { max-width: none !important; width: auto !important; padding: 32px 36px !important; }
  main article .col.span_8 .eap-gallery, main article .col.span_8 .eap-items { max-width: none !important; }
}


        /* ==========================================
           1. ターゲットの精密定義（一覧カードを完全に除外）
           ========================================== */
        /* .eap-card クラスを持っていない要素のみを対象とする */
        .eap-auction:not(.eap-card), 
        .eap-mypage-wrap, 
        .eap-rank-card-wrap,
        .eap-fav-page-wrapper,
        .eap-gacha-box,
        #eap-gate-wrap,
        .eap-gate-container,
        .eap-auction-form-wrap,
        form.eap-auction {
            max-width: 850px !important; /* 人が最も読みやすいと言われる幅 */
            margin-left: auto !important;
            margin-right: auto !important;
            float: none !important;
            box-sizing: border-box !important;
            display: block !important;
            clear: both !important;
        }

        /* 一覧の親グリッド(.eap-list)自体はページ中央に配置するが、中のカードには触れない */
        .eap-list {
            max-width: 1200px !important; /* 一覧全体は広く取る */
            margin-left: auto !important;
            margin-right: auto !important;
        }

        /* ==========================================
           2. フォーム内部と入力フィールドの最適化
           ========================================== */
        /* 各入力項目（ラベルと入力欄）を中央ブロック内にバランスよく配置 */
        .eap-field, 
        .eap-gate-field, 
        .eap-form-group,
        .eap-gate-container form > div {
            text-align: left;
            max-width: 650px;
            margin-left: auto !important;
            margin-right: auto !important;
            margin-bottom: 25px !important;
        }

        /* 入力欄そのものを枠いっぱいに広げる */
        .eap-input, 
        .eap-input-text, 
        textarea.eap-input,
        .eap-gate-container input:not([type="submit"]):not([type="checkbox"]),
        .eap-gate-container textarea,
        .eap-gate-container select {
            width: 100% !important;
            box-sizing: border-box !important;
            border-radius: 8px !important;
            padding: 12px !important;
        }

        /* ==========================================
           3. 全ての重要ボタンを中央に（カード内ボタンは除外）
           ========================================== */
        /* コンテナ直下の大きなボタンのみ中央寄せ */
        .eap-auction > .eap-btn-primary, 
        .eap-auction > .eap-btn-outline,
        .eap-mypage-wrap .eap-btn-sub, 
        .eap-btn-line, 
        .eap-gate-submit {
            display: block !important;
            width: 100% !important;
            max-width: 380px !important;
            margin: 30px auto !important;
            text-align: center !important;
            padding: 16px 20px !important;
            font-weight: bold !important;
            height: auto !important;
            border-radius: 50px !important;
        }

        /* ==========================================
           4. マイページ・ランク表示・ガチャの中央化
           ========================================== */
        .eap-mypage-header, .eap-gacha-box {
            text-align: center !important;
        }
        .eap-rank-card {
            width: 100% !important;
            max-width: 580px !important;
            margin: 0 auto !important;
        }

        /* ==========================================
           5. PC表示での装飾（カード以外に限定）
           ========================================== */
        @media (min-width: 1024px) {
            /* コンテンツを背景から浮き立たせて「高級感」を出す */
            .eap-auction:not(.eap-card), 
            .eap-mypage-wrap, 
            #eap-gate-wrap,
            .eap-gate-container {
                padding: 60px !important;
                background: #fff !important;
                border: 1px solid #f2f2f2 !important;
                border-radius: 20px !important;
                box-shadow: 0 25px 50px rgba(0,0,0,0.06) !important;
                margin-top: 40px !important;
                margin-bottom: 60px !important;
            }
        }

        /* ==========================================
           6. スマホ・モバイルの最適化
           ========================================== */
        @media (max-width: 767px) {
            .eap-auction:not(.eap-card), 
            .eap-mypage-wrap, 
            #eap-gate-wrap,
            .eap-gate-container {
                width: 96% !important;
                padding: 25px 15px !important;
            }
            .eap-btn-primary, .eap-btn-outline {
                max-width: 100% !important;
            }
        }
    

        .eap-field:has(input[name="auto_max"]),
        .eap-bid-form input[name="auto_max"],
        .eap-bid-form label[for*="auto_max"],
        .eap-bid-form input[name="auto_max"] + .eap-help { display: none !important; }
        input[name="auto_max"] { display: none !important; }
        .eap-btn-primary { width: 100%; text-align: center; padding: 16px; font-size: 1.2rem; font-weight: 900; margin-top: 10px; }
    

        .eapfx-topinfo {
            top: 20px !important;
        }
    

            .edo-bottom-nav { grid-template-columns: 1fr 1fr 1.2fr 1fr 1fr !important; }
            #edo-sub-menu { display: none; position: fixed; bottom: 70px; right: 10px; background: rgba(17, 17, 17, 0.95); border: 1px solid #c5a059; border-radius: 8px; padding: 0; z-index: 9999999; box-shadow: 0 4px 20px rgba(0,0,0,0.6); min-width: 200px; overflow: hidden; }
            #edo-sub-menu a { display: block; color: #fff; padding: 15px 20px; text-decoration: none; font-size: 14px; border-bottom: 1px solid #333; transition: background 0.2s; }
            #edo-sub-menu a:last-child { border-bottom: none; }
            #edo-sub-menu a:hover { background: #333; color: #c5a059; }

            .eua-step { display: none; } .eua-step.active { display: block; }
            .eua-input { width: 100%; padding: 12px; margin: 10px 0; border: 1px solid #ccc; border-radius: 8px; font-size: 16px; box-sizing: border-box; }
            .eua-btn { width: 100%; padding: 12px; margin-top: 10px; background: #c5a059; color: #000; border: none; border-radius: 8px; font-weight: bold; font-size: 16px; cursor: pointer; }
            .eua-btn:disabled { opacity: 0.6; cursor: not-allowed; }
            .eua-btn.secondary { background: #f0f0f0; color: #333; }
        

                .eap-bid-form, #eap-bid-form, 
                .eap-login-box, .eap-fav-auth-form, .eapx-reset-email, #eap-wait-box,
                .eap-btn-sub, .eapx-verify-btn, .eap-verify-trigger { 
                    display: none !important; 
                }
                
                input[name="bid_price"]:not(.eua-bid-input), 
                input[name="amount"]:not(.eua-bid-input), 
                input[name="email"]:not(.eua-input), 
                input[name="nickname"]:not(.eua-nick-input),
                input[name="bidder_email"], 
                input[name="bidder_contact"],
                button.eap-btn-primary {
                    display: none !important;
                }

                .eua-bid-card {
                    background: #fff; border: 1px solid #e5e7eb; border-radius: 12px;
                    padding: 20px; margin: 20px 0; box-shadow: 0 4px 6px rgba(0,0,0,0.05);
                    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
                    color: #333;
                    display: block !important; visibility: visible !important; opacity: 1 !important;
                }
                .eua-status-bar {
                    display: flex; align-items: center; justify-content: space-between;
                    margin-bottom: 15px; padding-bottom: 10px; border-bottom: 1px solid #f0f0f0;
                }
                .eua-user-info { font-weight: bold; font-size: 14px; display: flex; align-items: center; gap: 5px; }
                .eua-verified-mark { color: #06C755; background: #e6fffa; padding: 2px 6px; border-radius: 4px; font-size: 11px; }
                
                .eua-login-prompt { text-align: center; padding: 10px; }
                .eua-login-btn {
                    background: #333; color: #fff; padding: 12px 30px; border-radius: 50px; 
                    text-decoration: none; font-weight: bold; display: inline-block; cursor: pointer;
                }

                .eua-form-group { margin-bottom: 15px; }
                .eua-label { display: block; font-size: 12px; font-weight: bold; margin-bottom: 5px; color: #555; }

                .eua-bid-input, .eua-nick-input { 
                    display: block !important;
                    width: 100%; padding: 12px; font-size: 16px; border: 2px solid #ddd; border-radius: 8px; 
                    box-sizing: border-box; visibility: visible !important; opacity: 1 !important;
                }
                .eua-bid-input::placeholder, .eua-nick-input::placeholder { color: #ccc !important; opacity: 1; }

                .eua-bid-submit {
                    display: block !important; width: 100%; padding: 14px; font-size: 18px; border: none; border-radius: 50px; 
                    background: linear-gradient(to bottom, #d4af37, #b8860b); 
                    color: #fff; font-weight: bold; cursor: pointer;
                    box-shadow: 0 4px 0 #8b6508; transition: transform 0.1s, box-shadow 0.1s;
                    visibility: visible !important; opacity: 1 !important; margin-top: 10px;
                }
                .eua-bid-submit:active { transform: translateY(2px); box-shadow: 0 2px 0 #8b6508; }
            

        main h1,
        .primary_header,
        .crumbs_area {
            display: none !important;
        }
       main > br + br {display:none;}
       main {margin-top:220px;}
        footer,
        footer:before {
        	background: none !important;
        }
    

        /* 入札ページのみ: mainの220pxを60pxに上書き */
        main {
            margin-top: 60px !important;
            padding-top: 0 !important;
        }
    

        /* モーダル表示時、親の z-index 制限を解除 */
        .medaka-modal {
            position: fixed !important;
            z-index: 999999 !important;
            isolation: auto !important;
        }
    
