body {
  font-family: 'Hiragino Sans', 'Meiryo', sans-serif;
  font-size: 1rem;
}

/* タブレット・スマホ対応：ボタン大きめ */
.btn-lg { min-height: 48px; }

/* 印刷用 */
@media print {
  .no-print, nav, .navbar { display: none !important; }
  .print-only { display: block !important; }
  .print-table { display: block !important; }
  .container-fluid { padding: 0 !important; }
  .collapse { display: table-row !important; }
  body { font-size: 11pt; }
  table { font-size: 10pt; }
}

.print-only { display: none; }

/* タイムカードキオスク */
@media (max-width: 576px) {
  .kiosk-card { margin: 0 -8px; border-radius: 0; }
}

/* テーブルの横スクロール対応 */
.table th, .table td {
  vertical-align: middle;
  white-space: nowrap;
}

/* 希望入力画面 */
.form-switch .form-check-input {
  width: 3em;
  height: 1.5em;
}
