/* =====================================================================
   pk-theme — パッケージ統一デザイントークン（単一情報源）
   ---------------------------------------------------------------------
   パッケージ（＝複数の単体機能モジュールを束ねた提供サービス）全体で
   見た目を統一するための、色・タイポ・余白・角丸・影・状態色の正本。
   パッケージフレームワーク（グローバルナビ／ダッシュボード等のウィジェット）
   と、各モジュール画面が同じトークンを参照する。
   cp-ui（ドロワー）の濃紺シェルとも整合（--pk-shell 系）。
   ===================================================================== */

:root{
  /* 面・背景 */
  --pk-bg:#eef2f7;            /* ページ背景 */
  --pk-surface:#ffffff;       /* カード面 */
  --pk-surface-2:#f6f9fc;     /* 淡い面 */
  --pk-line:#d9dee5;          /* 罫線 */
  --pk-line-soft:#eef1f5;

  /* ブランド／アクセント */
  --pk-navy:#0f3d6e;          /* ヘッダ・ブランド */
  --pk-navy-2:#155a9c;
  --pk-accent:#2563eb;        /* 主要アクション */
  --pk-accent-weak:#e8f0fe;

  /* 濃紺シェル（cp-ui ドロワーと共有する暗色系） */
  --pk-shell:#0f172a; --pk-shell-2:#132033; --pk-shell-text:#f8fafc;
  --pk-shell-muted:rgba(226,232,240,.72); --pk-shell-line:rgba(148,163,184,.18);

  /* テキスト。text-3 は 2026-07-05 に #8b95a6（白背景比3.0:1）から neutral.500 へ
     是正＝本文コントラスト4.5:1基準（design-system 04-accessibility）。
     これより薄い灰色を文字に使わない。 */
  --pk-text:#1f2933; --pk-text-2:#5b6675; --pk-text-3:#64748b; --pk-on-navy:#e8f4ff;

  /* 状態色（モジュール横断で統一） */
  --pk-ok:#15803d;   --pk-ok-bg:#e7f6ec;
  --pk-mid:#b45309;  --pk-mid-bg:#fdf0dd;
  --pk-none:#64748b; --pk-none-bg:#eef1f5;
  --pk-risk:#b91c1c; --pk-risk-bg:#fdeaea;
  --pk-assist:#2f7d8a;

  /* 形 */
  --pk-radius:12px; --pk-radius-lg:16px; --pk-radius-pill:999px;
  --pk-shadow:0 8px 24px rgba(15,23,42,.08);
  --pk-shadow-sm:0 2px 10px rgba(15,23,42,.10);

  /* タイポ */
  --pk-font:'Hiragino Kaku Gothic ProN','Noto Sans JP',system-ui,sans-serif;
  --pk-fs:13px;

  /* タイプスケール（design-system design-tokens.json font.size と1:1・2026-07-05）。
     ページ側CSSは生pxを書かずこの変数を参照する。
     badge は例外段＝記号的ラベル（バッジ/件数チップ/アイコン/軸目盛）専用。
     文として読む文字（説明・メタ・ボタン・名前・日時）の最小は xs=12px。 */
  --pk-fs-badge:11px;
  --pk-fs-xs:12px; --pk-fs-sm:13px; --pk-fs-base:14px;
  --pk-fs-lg:16px; --pk-fs-xl:18px; --pk-fs-2xl:20px;
}

*{box-sizing:border-box;}
.pk-body{margin:0;background:var(--pk-bg);color:var(--pk-text);font-family:var(--pk-font);font-size:var(--pk-fs);line-height:1.6;}
.pk-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0;}
a.pk-reset{color:inherit;text-decoration:none;}
