/* Extracted styles from kanri/inquiry/inquiry_detail.cfm */
body { font-family: "Lucida Grande", "segoe UI", "ヒラギノ丸ゴ ProN W4", "Hiragino Maru Gothic Pro", "メイリオ", Meiryo, Verdana, Arial, sans-serif; }
.navbar-light { border-bottom: 2px solid #23683a; }
.btn-close-red { background-color: #dc3545; border-color: #dc3545; color: #fff; padding: 0.1rem 0.5rem; font-size: 0.75rem; line-height: 1.5; }
.btn-close-red:hover,
.btn-close-red:focus,
.btn-close-red:active { background-color: #b02a37; border-color: #b02a37; color: #fff; box-shadow: 0 0 0 0.15rem rgba(220,53,69,0.18); transform: translateY(-1px); }
.btn-custom-sm { padding: 0.1rem 0.5rem; font-size: 0.75rem; line-height: 1.5; }
.align-center-content { display: flex; flex-direction: column; justify-content: center; }
.comment-header { background-color: #f0ece1; padding: 6px 12px; color: #000000ff; }
.comment-header.staff-reply { background-color: #533414ff; color: #fff; }
.comment-body { display: inline-table; padding: 10px 12px; border-bottom: 1px solid #dee2e6; white-space: pre-wrap; width: auto !important; max-width: 70%; vertical-align: top; text-align: left; background: #fff; border-radius: 4px; }
.comment-body > div,
.comment-body > p,
.comment-body > span { display: table-cell; width: auto; margin: 0 0 .5rem 0; vertical-align: top; }
.btn-reply,
.btn-confirm,
.btn-confirmed { color: white; display: inline-flex; align-items: center; justify-content: center; }
.btn-reply { background-color: #f46f03; border-color: #f46f03; }
.btn-confirm { background-color: #172d82; border-color: #172d82; }
.btn-confirmed { background-color: #6c757d; border-color: #6c757d; margin-left: 8px; }
button.btn-reply:hover,
button.btn-reply:focus,
button.btn-reply:active { background-color: #e65b00; border-color: #e65b00; color: #ffffff; box-shadow: 0 0 0 0.2rem rgba(230,91,0,0.18); transform: translateY(-1px); }
button.btn-confirm:hover,
button.btn-confirm:focus,
button.btn-confirm:active { background-color: #0f1f5f; border-color: #0f1f5f; color: #ffffff; box-shadow: 0 0 0 0.2rem rgba(15,31,95,0.18); transform: translateY(-1px); }
button.btn-confirmed[disabled],
button.btn-confirmed.disabled,
button.btn-confirmed:disabled { cursor: default; pointer-events: none; opacity: 1; background-color: #6c757d; border-color: #6c757d; color: #fff; box-shadow: none; transform: none; }
.badge{ display:inline-block; padding:.25em .4em; font-size:75%; font-weight:700; line-height:1; color: #fff; text-align:center; white-space:nowrap; vertical-align:baseline; border-radius:.25rem }
.card-reservation-info { border: 2px solid #198754 !important; margin-bottom: 1.5rem !important; }
.card-reservation-header { background-color: #198754 !important; color: #fff !important; }
.confirmation-content { background-color: #f8f9fa; }

/* リクエスト予約、予約ページの問合せ部分のスタイル */
.inquiry-header-th { position: relative; font-size: 130%;}
.inquiry-header-link { position: absolute; right: 10px; top: 50%; transform: translateY(-50%); font-weight: normal; font-size: 106%; }
.inquiry-header-link a { color: #0066cc; text-decoration: underline; }
.inquiry-description { margin-bottom: 10px; color: #333; font-size: 1.0em; }
.inquiry-no-data { font-size: 106%; }
.inquiry-textarea { width: 98%; padding: 8px; border: 1px solid #ddd; border-radius: 3px; white-space: pre-wrap; overflow-wrap: break-word; }

/* 問合せ履歴表示 */
.inquiry-item { border: 1px solid #ddd; border-radius: 5px; margin-bottom: 10px; background-color: #fff; }
.inquiry-item-header { padding: 8px; border-radius: 5px 5px 0 0; display: flex; justify-content: space-between; }
.inquiry-item-header.member { background-color: #006400; color: #fff; }
.inquiry-item-header.staff { background-color: #533414; color: #fff; }
.inquiry-item-date { font-weight: bold; font-size: 1.0em; }
.inquiry-item-staff { font-size: 1.0em; }
.inquiry-item-body { padding: 10px; font-size: 0.95em; white-space: pre-line; text-align: left; overflow-wrap: break-word; word-break: break-all; white-space: pre-wrap;}
.inquiry-error-message {
  color: red;
  font-weight: bold;
  margin-bottom: 10px;
  text-align: left;
}
