/* ★2026-11-09 Mockup 共通スタイル（全頁）。Mockup のインライン共通 CSS をそのまま移植。ページ別 CSS より前に読み込む。 */
.sl_bar{ display:flex; align-items:center; gap:10px; margin-bottom:14px; flex-wrap:wrap; } .sl_bar .sp{ flex:1; }
.ml_tbl td.nm{ font-weight:600; } .ml_tbl td.nm .sub2{ font-weight:400; }
.ms_card{ padding:16px 20px 14px; margin-bottom:14px; }
.ms_card .card_title{ margin-bottom:6px; padding-bottom:8px; } .ms_card .card_title .sub2{ margin-left:auto; font-weight:400; }
.kv{ width:100%; border-collapse:collapse; font-size:13px; }
.kv td{ padding:8px 0; border-bottom:1px solid var(--border); vertical-align:middle; }
.kv td.k{ color:var(--muted); width:200px; } .kv td.k .req{ margin-left:3px; }
.kv tr:last-child td{ border-bottom:none; }
.kv td.v .none{ color:var(--hint); }
.kv td.v input[type=text],.kv td.v input[type=date],.kv td.v input[type=number],.kv td.v input[type=email],.kv td.v select{ min-width:0; height:32px; }
.kv td.v input[type=number]{ text-align:right; width:140px; }
.kv td.v .seg{ display:inline-flex; gap:14px; } .kv td.v .seg label{ display:inline-flex; align-items:center; gap:4px; cursor:pointer; }
.kv2{ display:grid; grid-template-columns:1fr 1fr; gap:0 40px; }
.ms_tbl{ min-width:0; font-size:13px; } .ms_tbl td{ padding:7px 12px; white-space:normal; } .ms_tbl thead td{ position:static; white-space:nowrap; }
.ms_tbl td.c{ text-align:center; } .ms_tbl td.n{ text-align:right; font-variant-numeric:tabular-nums; }
.ms_tbl td input,.ms_tbl td select{ min-width:0; height:30px; font-size:12px; width:100%; } .ms_tbl td input[type=number]{ text-align:right; width:110px; }
.ms_tbl td input[type=checkbox]{ width:auto; height:auto; }
.ms_empty{ color:var(--hint); font-size:12px; padding:10px 0; }
.ms_add{ margin-top:8px; }
.ms_who{ display:flex; align-items:center; gap:14px; }
.ms_who .av{ width:44px; height:44px; font-size:16px; }
.ms_who .nm{ font-size:16px; font-weight:700; } .ms_who .nm .sub2{ font-weight:400; margin-left:8px; }
.ms_who .tags{ display:flex; gap:6px; margin-top:3px; }
.ms_act{ display:flex; gap:8px; justify-content:flex-end; margin-top:4px; }
.ms_note{ font-size:11px; color:var(--hint); margin-top:8px; line-height:1.8; }
.ms_alert{ color:var(--danger); font-weight:600; }
.ms_warn{ color:var(--warning); font-weight:600; }
.ck_tbl td.j{ text-align:center; width:90px; } .ck_tbl td.j .ok{ color:var(--success); font-weight:700; } .ck_tbl td.j .ng{ color:var(--danger); font-weight:700; } .ck_tbl td.j .na{ color:var(--hint); }
.ck_tbl tr.grp td{ background:var(--bg); font-weight:700; font-size:12px; color:var(--muted); }
.ck_seg{ display:inline-flex; border:1px solid var(--border); border-radius:var(--r); overflow:hidden; }
.ck_seg label{ padding:4px 12px; font-size:12px; cursor:pointer; color:var(--muted); border-right:1px solid var(--border); } .ck_seg label:last-child{ border-right:none; }
.ck_seg label.on{ background:var(--accent-bg); color:var(--accent); font-weight:600; } .ck_seg label.on.ng{ background:var(--danger-bg); color:var(--danger); }
.ck_seg input{ display:none; }
.nt_tbl td.sub{ white-space:normal; } .nt_tbl td.sub .sub2{ display:block; }
.nt_body{ white-space:pre-wrap; line-height:1.8; font-size:13px; }
