/* スタッフの交通費の申請の小窓（dashboard-travel.js）。2026-10-17 */
.tv-ja { display: block; font-size: .92em; color: var(--neutral, #5f6b78); font-weight: 400; }
.tv-form { display: grid; gap: var(--space-2xs, .4rem); min-width: 0; }
.tv-label { font-size: var(--text-sm, .875rem); font-weight: 600; margin-top: var(--space-2xs, .4rem); }
.tv-form input[type="text"], .tv-form input[type="number"], .tv-form input[type="date"], .tv-form input[type="file"] { width: 100%; max-width: 100%; }
.tv-fs { border: 0; margin: 0; padding: 0; min-width: 0; }
.tv-modes { display: flex; flex-wrap: wrap; gap: .4rem; margin-top: .3rem; }
.tv-mode { display: inline-flex; align-items: center; gap: .3rem; border: 1px solid var(--line, #c8c8cb); border-radius: 4px; padding: .35rem .6rem; cursor: pointer; font-size: var(--text-sm, .875rem); }
.tv-mode:has(input:checked) { border-color: var(--ink, #1d2a3a); background: var(--ink, #1d2a3a); color: #fff; }
.tv-mode:has(input:checked) .tv-ja { color: #fff; }
.tv-check { display: flex; gap: .4rem; align-items: flex-start; font-size: var(--text-sm, .875rem); }
.tv-fine { font-size: var(--text-sm, .875rem); color: var(--neutral, #5f6b78); margin: .2rem 0 0; }
.tv-msg { color: var(--ink, #1d2a3a); font-weight: 600; }
.tv-list { list-style: none; margin: .5rem 0 0; padding: 0; display: grid; gap: .6rem; }
.tv-item { border: 1px solid var(--line, #d8d5cc); border-radius: 6px; padding: .6rem .75rem; display: grid; gap: .3rem; min-width: 0; }
.tv-item-hd { display: flex; flex-wrap: wrap; gap: .3rem .75rem; align-items: baseline; }
.tv-amt { margin-left: auto; font-variant-numeric: tabular-nums; }
.tv-warn { font-size: var(--text-sm, .875rem); color: #8a4b00; background: #fbf0dc; border-left: 3px solid #a2650a; padding: .3rem .5rem; }
.tv-acts { display: flex; gap: .4rem; flex-wrap: wrap; }
.tv-total { font-weight: 700; margin: .6rem 0 0; }
#travel-modal .det__box { width: min(94vw, 560px); }
#travel-modal .det__in { min-width: 0; }
.tv-form input[type="text"], .tv-form input[type="number"], .tv-form input[type="date"] { padding: .5rem .6rem; border: 1px solid var(--line, #c8c8cb); border-radius: 4px; font: inherit; background: #fff; color: inherit; min-height: 2.5rem; box-sizing: border-box; }
