/* 3案共通の最小リセットと「開発時だけの表示」。デザインのトークンは各案の style.css で定義する */
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body { margin: 0; }
img { display: block; max-width: 100%; height: auto; }
a { color: inherit; }
h1, h2, p { margin: 0; }
.nowrap { white-space: nowrap; }
.sr-only { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
:focus-visible { outline: 2px solid currentColor; outline-offset: 3px; }

/* FV の先は未制作。リンク先の受け皿だけ置き、本番表示には出さない */
.stub { display: none; }

/* ---- 開発時だけ（?dev=1 または比較ビューアーの切替）：確定していない事実を囲んで示す ----
   data-status: confirmed（確定）/ tentative（予定・仮）/ unconfirmed（未確定）/ draft（コピー案）
   本番では is-dev が付かないため、何も表示されない（仮の文言を画面に焼き込まない：P13） */
.is-dev [data-status="tentative"] { outline: 1.5px dashed #e0a000; outline-offset: 2px; }
.is-dev [data-status="unconfirmed"] { outline: 2px dashed #e0303a; outline-offset: 2px; }
.is-dev [data-status="draft"] { outline: 1.5px dotted #2a8fd8; outline-offset: 2px; }
.dev-legend { display: none; }
.is-dev .dev-legend {
  display: block; position: fixed; left: 8px; bottom: 8px; z-index: 99;
  font: 12px/1.6 system-ui, sans-serif; color: #111; background: rgba(255,255,255,.94);
  padding: 6px 10px; border: 1px solid #999; max-width: 300px;
}
.dev-legend b { font-weight: 600; }
.dev-legend i { font-style: normal; display: inline-block; width: 14px; height: 10px; margin-right: 4px; vertical-align: -1px; }
