/* =====================================================================
   style.css — 海外との会議時間さがし ツール固有の微調整のみ。
   共通スタイルは /_shared/shirugear.css に任せる（結果表示は sg-result）。
   ===================================================================== */

/* 結果値はタブ幅数字で桁を揃える */
.sg-result__value {
  font-variant-numeric: tabular-nums;
}

.sg-field .sg-help {
  margin-top: var(--sg-space-1);
}

/* 区切り線 */
.sg-hr {
  border: none;
  border-top: 1px solid var(--sg-border, #e5e7eb);
  margin: var(--sg-space-4) 0;
}

/* 都市チェックボックス群 */
.tz-cities {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: var(--sg-space-2);
}
.tz-city {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 7px 11px;
  border: 1px solid var(--sg-border, #e5e7eb);
  border-radius: var(--sg-radius, 8px);
  font-size: 0.88rem;
  cursor: pointer;
  user-select: none;
}
.tz-city input {
  width: 16px;
  height: 16px;
  accent-color: var(--sg-primary, #3b5bdb);
}
.tz-city:has(input:checked) {
  border-color: var(--sg-primary, #3b5bdb);
  background: rgba(59, 91, 219, 0.08);
  color: var(--sg-primary, #3b5bdb);
  font-weight: 600;
}

/* 時差の一覧表 */
.tz-table-wrap {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
.tz-table {
  border-collapse: collapse;
  width: 100%;
  min-width: 360px;
  font-variant-numeric: tabular-nums;
  font-size: 0.85rem;
}
.tz-table th,
.tz-table td {
  border: 1px solid var(--sg-border, #e5e7eb);
  padding: 6px 8px;
  text-align: center;
  white-space: nowrap;
}
.tz-table thead th {
  background: var(--sg-surface-2, #f4f6fb);
  font-weight: 600;
  position: sticky;
  top: 0;
}
.tz-table small {
  font-size: 0.72em;
  opacity: 0.7;
}
.tz-th-base {
  background: var(--sg-surface-2, #f4f6fb);
  font-weight: 600;
  position: sticky;
  left: 0;
  z-index: 1;
}
/* おすすめ行（全員が業務時間内） */
.tz-table tbody tr.tz-row--ok th,
.tz-table tbody tr.tz-row--ok td {
  background: rgba(34, 160, 90, 0.14);
}
.tz-cell--ng {
  color: var(--sg-muted, #999);
}

/* 凡例スウォッチ */
.tz-swatch {
  display: inline-block;
  width: 12px;
  height: 12px;
  border-radius: 3px;
  vertical-align: -1px;
  margin: 0 3px 0 10px;
  border: 1px solid var(--sg-border, #e5e7eb);
}
.tz-swatch--ok { background: rgba(34, 160, 90, 0.35); }
.tz-swatch--ng { background: transparent; }
