@charset "UTF-8";
/* ============================================================================
 * base.css
 * COLAVIA v1.000.0000
 *
 *   タイポグラフィ・フォーカス・スクロールバー。
 *
 *   フォントは Noto Sans JP（§2.1）。
 *   サイズ指定は rem / vh / vw を基本とし、ヘアラインなど 1px 相当のみ例外（§3.3）。
 *
 *   出所: mock/css/common.css（ワイヤーフレームモックの共通スタイル）から
 *         該当部分を切り出したもの。§3.4 のディレクトリ構成に合わせて
 *         reset / tokens / base / layout / components の5本に分けている。
 *
 *   読み込む順序に意味がある（app_shell.php を参照）
 *     reset → tokens → base → layout → components → css/views/*.css
 * ========================================================================== */

body {
  font-family: var(--font-base);
  font-size: var(--fs-base);
  line-height: var(--lh-base);
  color: var(--c-text);
  background-color: var(--c-window-bg);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-text-size-adjust: 100%;
  min-height: 100vh;
}

:focus { outline: none; }
:focus-visible {
  outline: 0.1875rem solid var(--c-focus-ring);
  outline-offset: 0.125rem;
  border-radius: var(--r-xs);
}

h1, h2, h3, h4 { font-weight: 700; line-height: var(--lh-tight); }

::selection { background-color: var(--c-accent-soft); }

::-webkit-scrollbar { width: 0.5rem; height: 0.5rem; }
::-webkit-scrollbar-track { background: transparent; }
::-webkit-scrollbar-thumb { background-color: var(--c-fill-hover); border-radius: var(--r-full); }
::-webkit-scrollbar-thumb:hover { background-color: var(--c-fill-active); }

.visually-hidden {
  position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0;
  overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0;
}
