/* 毎日マーケットラジオ｜3ページ共通のナビ（ラジオ・相場まとめ・模擬運用マッチ）
   どのページにも同じ上部バーを置いて、行き来できるようにする。クラス名は gn- で始めて各ページのCSSとぶつからないようにする。 */
.gn {
  --gn-ink: #1E2A5A; --gn-sun: #F2B33D; --gn-soft: #C9D0EA;
  position: sticky; top: 0; z-index: 50;
  background: rgba(30, 42, 90, .96); color: #fff;
  -webkit-backdrop-filter: saturate(140%) blur(8px); backdrop-filter: saturate(140%) blur(8px);
  box-shadow: 0 1px 0 rgba(255,255,255,.08), 0 6px 18px -14px rgba(0,0,0,.6);
  font-family: "Zen Kaku Gothic New", "Hiragino Sans", "Noto Sans JP", system-ui, sans-serif;
  padding-top: env(safe-area-inset-top, 0px);
}
.gn-in { max-width: 1040px; margin: 0 auto; padding: 0 16px; display: flex; align-items: center; gap: 14px; min-height: 54px; }
.gn-brand { display: inline-flex; align-items: center; gap: 9px; color: #fff; text-decoration: none; font-weight: 700; font-size: 15px; letter-spacing: .03em; white-space: nowrap; }
.gn-brand img { width: 30px; height: 30px; border-radius: 8px; box-shadow: 0 0 0 1px rgba(255,255,255,.18); }
.gn-in > nav { margin-left: auto; }
.gn-links { display: flex; gap: 4px; margin: 0; padding: 0; list-style: none; }
.gn-links a {
  position: relative; display: inline-flex; align-items: center; gap: 6px; min-height: 40px; padding: 0 12px;
  border-radius: 999px; color: var(--gn-soft); text-decoration: none; font-size: 14px; font-weight: 500; white-space: nowrap;
}
.gn-links a:hover { color: #fff; background: rgba(255,255,255,.08); }
.gn-links a[aria-current="page"] { color: #1A2032; background: var(--gn-sun); font-weight: 700; }
.gn-ico { font-size: 13px; line-height: 1; }
.gn a:focus-visible { outline: 3px solid var(--gn-sun); outline-offset: 2px; }

/* スマホ：ブランド名を隠して3つのボタンを横いっぱいに並べる */
@media (max-width: 640px) {
  .gn-in { gap: 8px; padding: 0 10px; }
  .gn-brand span { display: none; }
  .gn-in > nav { flex: 1; }
  .gn-links { justify-content: space-between; gap: 2px; }
  .gn-links li { flex: 1; }
  .gn-links a { width: 100%; justify-content: center; padding: 0 6px; font-size: 13px; }
}
@media (max-width: 360px) { .gn-ico { display: none; } }

/* 共通フッター（ホームとレポートで使う） */
.gf { background: #141B3D; color: #C9D0EA; padding: 34px 0 calc(34px + env(safe-area-inset-bottom, 0px)); font-size: 13px; line-height: 1.8;
  font-family: "Zen Kaku Gothic New", "Hiragino Sans", "Noto Sans JP", system-ui, sans-serif; }
.gf-in { max-width: 1040px; margin: 0 auto; padding: 0 16px; display: grid; gap: 18px; grid-template-columns: 1.3fr 1fr; }
@media (max-width: 720px) { .gf-in { grid-template-columns: 1fr; } }
.gf-brand { display: flex; align-items: center; gap: 10px; color: #fff; font-weight: 700; font-size: 15px; }
.gf-brand img { width: 28px; height: 28px; border-radius: 7px; }
.gf p { margin: 8px 0 0; }
.gf h2 { margin: 0 0 6px; font-size: 12px; letter-spacing: .14em; color: #F2B33D; font-weight: 700; }
.gf ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 2px; }
.gf a { color: #fff; text-decoration: none; }
.gf a:hover { text-decoration: underline; }
.gf-copy { grid-column: 1 / -1; border-top: 1px solid rgba(255,255,255,.1); padding-top: 14px; font-size: 12px; color: #8D96B8; }
