/* ═══ グローバル市況 (page-global-market.php) ═══ */

.page-global-market{position:relative;width:100%;background:#F8F9FB;color:#1A1A1A;overflow:hidden;--side-pad:410px}

/* HERO 1920×400 */
.gm-hero{position:relative;width:100%;height:400px;overflow:hidden;margin-top:97px}
.gm-hero-bg{position:absolute;inset:0;background-size:cover;background-position:center;background-repeat:no-repeat;background-color:#0a1230}
.gm-hero-overlay{position:absolute;inset:0;background:rgba(0,0,0,.20);backdrop-filter:blur(3.5px);-webkit-backdrop-filter:blur(3.5px)}
.gm-hero-content{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:22px;text-align:center;padding:0 20px;z-index:2}
.gm-hero-title{margin:0;font-size:48px;font-weight:800;line-height:1.2;letter-spacing:1px;text-transform:uppercase;color:#FAFAFA}
.gm-hero-sub{margin:0;font-size:25px;font-weight:400;line-height:1.3;color:#FAFAFA}

/* 준비중 카드 섹션 (legacy, 미사용 — 백업) */
.gm-soon-section{padding:80px var(--side-pad) 100px;display:flex;justify-content:center;background:#F8F9FB}
.gm-soon-card{position:relative;width:1000px;max-width:100%;height:436px;background:#FFFFFF;box-shadow:0 4px 30px rgba(0,0,0,.10);border-radius:40px;margin:0 auto;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:50px 60px;box-sizing:border-box}
.gm-soon-icon{display:block;width:73px;height:110px;margin:0 auto 30px;object-fit:contain;transform:scaleX(-1)}
.gm-soon-title{margin:0 auto 16px;font-size:40px;font-weight:700;line-height:1.2;color:#1A1A1A;text-align:center;letter-spacing:-.5px}
.gm-soon-sub{margin:0 auto 38px;font-size:20px;font-weight:400;line-height:1.4;color:#1A1A1A;text-align:center}
.gm-soon-btn{display:inline-flex;align-items:center;justify-content:center;width:184px;height:41px;background:#C00000;border-radius:10px;color:#FFFFFF;font-size:15px;font-weight:700;text-decoration:none;cursor:pointer;transition:transform .15s,box-shadow .15s;box-sizing:border-box}
.gm-soon-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(192,0,0,.25);color:#FFFFFF}

/* ═══ チャートセクション ═══ */
.gm-charts-section{padding:80px var(--side-pad) 100px;background:#F8F9FB}
.gm-charts-card{max-width:1100px;margin:0 auto;background:#FFFFFF;box-shadow:0 4px 30px rgba(0,0,0,.10);border-radius:24px;padding:40px;box-sizing:border-box}

/* カテゴリータブ */
.gm-cat-tabs{display:flex;gap:4px;flex-wrap:wrap;border-bottom:1px solid #E5E7EB;margin-bottom:24px}
.gm-cat-tab{appearance:none;border:none;background:transparent;color:#6B7280;font-size:16px;font-weight:600;padding:12px 20px;cursor:pointer;border-bottom:3px solid transparent;transition:color .15s,border-color .15s;font-family:inherit;margin-bottom:-1px}
.gm-cat-tab:hover{color:#1A1A1A}
.gm-cat-tab.is-active{color:#C00000;border-bottom-color:#C00000}

/* 銘柄ピル */
.gm-sym-rows{margin-bottom:24px}
.gm-sym-row{display:flex;gap:8px;flex-wrap:wrap}
.gm-sym-row.is-hidden{display:none}
.gm-sym{appearance:none;border:1px solid #E5E7EB;background:#FFFFFF;color:#1A1A1A;font-size:14px;font-weight:600;padding:8px 16px;border-radius:999px;cursor:pointer;transition:background .15s,border-color .15s,color .15s;font-family:inherit;line-height:1.2}
.gm-sym:hover{border-color:#C00000;color:#C00000}
.gm-sym.is-active{background:#C00000;border-color:#C00000;color:#FFFFFF}

/* チャート */
.gm-chart-wrap{position:relative;width:100%;height:600px;border-radius:12px;overflow:hidden;background:#F8F9FB;border:1px solid #E5E7EB}
.gm-chart{position:absolute;inset:0}
.gm-chart iframe{width:100%!important;height:100%!important;border:0;display:block}

/* ディスクレイマー */
.gm-disclaimer{margin:20px 0 0;font-size:12px;line-height:1.6;color:#6B7280}

/* レスポンシブ */
@media (max-width: 1440px){
  .page-global-market{--side-pad:80px}
}
@media (max-width: 1024px){
  .page-global-market{--side-pad:32px}
  .gm-charts-section{padding:48px var(--side-pad) 72px}
  .gm-charts-card{padding:28px;border-radius:20px}
  .gm-chart-wrap{height:520px}
}
@media (max-width: 768px){
  .page-global-market{--side-pad:16px}
  .gm-charts-section{padding:32px var(--side-pad) 60px}
  .gm-hero{height:280px;margin-top:60px}
  .gm-hero-title{font-size:32px;letter-spacing:.5px}
  .gm-hero-sub{font-size:15px}
  .gm-charts-card{padding:20px;border-radius:16px}
  .gm-cat-tab{font-size:14px;padding:10px 14px}
  .gm-sym{font-size:12px;padding:6px 12px}
  .gm-chart-wrap{height:440px}
  .gm-disclaimer{font-size:11px}
}
