/* ナンバーズ分析ボード — 解説ページ共通スタイル */
:root{
  --ink:#0e1524; --ink-2:#151f34; --ink-3:#1d2a45;
  --line:#2a3a5c; --fog:#8ea3c7; --paper:#eef3fb;
  --hot:#ff6b4a; --hot-dim:#f0906f;
  --cold:#43b7e8; --gold:#f5c451; --green:#4fd18b;
  --n3:#ffb03a; --n4:#5ac8fa;
  --radius:14px;
  --mono:"SFMono-Regular",Consolas,"Roboto Mono","Courier New",monospace;
}
*{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{
  background:
    radial-gradient(1200px 600px at 80% -10%, #1a2942 0%, transparent 60%),
    radial-gradient(900px 500px at -10% 10%, #17233c 0%, transparent 55%),
    var(--ink);
  color:var(--paper);
  font-family:"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,system-ui,sans-serif;
  line-height:1.85; min-height:100vh;
}
.mono{font-family:var(--mono);font-variant-numeric:tabular-nums}

/* ヘッダー・ナビ（index.html と同一のスクロール追従型） */
header{
  position:sticky;top:0;z-index:50;
  border-bottom:1px solid var(--line);
  background:linear-gradient(180deg,rgba(14,21,36,.96),rgba(14,21,36,.88));
  backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
  box-shadow:0 6px 22px rgba(0,0,0,.28);
}
.hwrap,.hrow{max-width:1000px;margin:0 auto;padding:0}
header .hrow{display:flex;align-items:center;gap:12px;padding:11px clamp(12px,4vw,48px) 9px;
  max-width:1000px}
.logo{font-weight:800;font-size:clamp(16px,2.9vw,23px);letter-spacing:.02em;
  text-decoration:none;color:var(--paper);white-space:nowrap}
.logo b{color:var(--gold)}
.tag{color:var(--fog);font-size:12px}
nav{max-width:1000px;margin:0 auto;display:flex;gap:2px;overflow-x:auto;
  padding:0 clamp(12px,4vw,48px);scrollbar-width:none;-webkit-overflow-scrolling:touch}
nav::-webkit-scrollbar{display:none}
nav a{
  flex:0 0 auto;color:var(--fog);text-decoration:none;font-size:13px;
  font-weight:700;padding:9px 13px;border-bottom:2px solid transparent;
  transition:.15s;white-space:nowrap;
}
nav a:hover{color:var(--paper)}
nav a.on{color:var(--gold);border-bottom-color:var(--gold)}

@media(max-width:560px){
  header .hrow{gap:8px;padding:9px clamp(12px,4vw,48px) 7px}
  .tag{display:none}
  nav a{font-size:12px;padding:8px 10px}
}

main{max-width:1000px;margin:0 auto;padding:26px clamp(16px,4vw,48px) 70px}

/* パンくず・見出し */
.crumb{color:var(--fog);font-size:12px;margin-bottom:14px}
.crumb a{color:var(--fog)}
h1{font-size:clamp(23px,4.2vw,34px);font-weight:800;line-height:1.35;
  margin-bottom:10px;letter-spacing:.01em}
.lead{color:var(--fog);font-size:14.5px;margin-bottom:8px}
h2{font-size:clamp(18px,2.8vw,23px);font-weight:800;margin:44px 0 14px;
  padding-left:13px;border-left:4px solid var(--gold);line-height:1.4}
h3{font-size:16px;font-weight:800;margin:28px 0 10px;color:var(--paper)}
p{margin:12px 0;font-size:14.5px}
a{color:var(--n4)}
strong{color:var(--gold);font-weight:700}

/* カード・テーブル */
.card{background:var(--ink-2);border:1px solid var(--line);border-radius:var(--radius);
  padding:20px;margin:18px 0}
.card h3{margin-top:0}
.note{background:rgba(67,183,232,.07);border:1px solid rgba(67,183,232,.28);
  border-radius:12px;padding:15px 18px;margin:20px 0;font-size:13.5px;color:var(--fog)}
.note b{color:var(--cold)}
.warn{background:rgba(255,107,74,.06);border:1px dashed var(--line);
  border-radius:12px;padding:16px 18px;margin:22px 0;font-size:13px;color:var(--fog)}
.warn b{color:var(--hot-dim)}

.tw{overflow-x:auto;margin:16px 0}
table{border-collapse:collapse;width:100%;font-size:13.5px;min-width:460px}
th,td{padding:10px 12px;border-bottom:1px solid var(--line);text-align:left;
  vertical-align:top}
th{color:var(--fog);font-size:11.5px;letter-spacing:.06em;font-weight:700;
  text-transform:uppercase;background:var(--ink-3)}
td.num,th.num{text-align:right;font-family:var(--mono);font-variant-numeric:tabular-nums}
tbody tr:hover{background:rgba(255,255,255,.02)}
caption{caption-side:bottom;color:var(--fog);font-size:11.5px;padding-top:8px;
  text-align:left}

ul,ol{margin:12px 0 12px 22px;font-size:14.5px}
li{margin:7px 0}

/* 数字タイル */
.balls{display:flex;gap:7px;flex-wrap:wrap;align-items:center;margin:12px 0}
.ball{width:42px;height:42px;border-radius:11px;display:grid;place-items:center;
  font:800 21px/1 var(--mono);background:var(--ink-3);border:1px solid var(--line);
  box-shadow:inset 0 -3px 0 rgba(0,0,0,.25)}
.ball.gold{background:linear-gradient(180deg,#3a2f12,#2a2109);border-color:var(--gold);color:var(--gold)}
.ball.dim{color:var(--fog)}
.arrow{color:var(--fog);font-size:18px;padding:0 4px}

/* FAQ */
details{background:var(--ink-2);border:1px solid var(--line);border-radius:12px;
  margin:10px 0;overflow:hidden}
details[open]{border-color:var(--fog)}
summary{padding:15px 18px;cursor:pointer;font-weight:700;font-size:14.5px;
  list-style:none;display:flex;gap:11px;align-items:flex-start;transition:.15s}
summary::-webkit-details-marker{display:none}
summary::before{content:"Q";flex:0 0 auto;width:22px;height:22px;border-radius:6px;
  background:var(--ink-3);border:1px solid var(--line);color:var(--gold);
  font:800 12px/22px var(--mono);text-align:center}
summary:hover{background:rgba(255,255,255,.03)}
details .body{padding:0 18px 17px 51px;color:var(--fog);font-size:14px}
details .body p{margin:9px 0}
details .body strong{color:var(--paper)}

/* 統計ハイライト */
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:11px;margin:18px 0}
.stat{background:var(--ink-3);border:1px solid var(--line);border-radius:12px;
  padding:16px;text-align:center}
.stat .v{font:800 25px/1.1 var(--mono);color:var(--gold)}
.stat .l{font-size:11.5px;color:var(--fog);margin-top:6px;line-height:1.45}

.cta{display:inline-block;background:var(--gold);color:#241a04;text-decoration:none;
  padding:13px 26px;border-radius:11px;font-weight:800;font-size:14.5px;margin:8px 8px 8px 0}
.cta:hover{filter:brightness(1.08)}
.cta.ghost{background:var(--ink-3);color:var(--fog);border:1px solid var(--line)}
.cta.ghost:hover{color:var(--paper)}

footer{border-top:1px solid var(--line);margin-top:56px;
  padding:26px clamp(16px,4vw,48px) 36px;color:var(--fog);font-size:12.5px}
.fin{max-width:1000px;margin:0 auto}
.flinks{display:flex;gap:16px;flex-wrap:wrap;margin-bottom:14px}
.flinks a{color:var(--fog);text-decoration:none}
.flinks a:hover{color:var(--paper);text-decoration:underline}
.fdis{line-height:1.75;font-size:12px}
