/* 出張精算（#trip）。スペック: docs/specs/20261104-task-tool-trip-expense.md。色は app.css の変数を使う */
.trip { display: grid; gap: 10px; max-width: 980px; }
.trip-top { display: flex; align-items: center; justify-content: space-between; gap: 8px; flex-wrap: wrap; }
.trip-pad { padding: 12px; }
.trip-step { padding: 10px 12px; display: grid; gap: 8px; min-width: 0; }
.trip-h { margin: 0; font-size: calc(var(--fs) + 2px); }
.trip-line { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; }
.trip-line label.btn { display: inline-flex; align-items: center; }
.trip-table { border-collapse: collapse; width: 100%; min-width: 640px; }
.trip-table th { text-align: left; font-size: var(--fs-s); color: var(--sub); font-weight: 700; padding: 2px 4px; }
.trip-table td { padding: 2px 4px; border-top: 1px solid var(--line2); }
.trip-table .field { width: 100%; }
.trip-table .t-time { min-width: 6.5em; }
.trip-table .t-wide { min-width: 16em; }
.trip-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); gap: 8px; }
.trip-grid .trip-full { grid-column: 1 / -1; }
.trip .notice { margin: 0; }
@media (max-width: 640px) {
  .trip-step { padding: 10px; }
}

/* 精算書（画面と PDF で同じもの）。PDF にするときは白地・黒字の固定の幅で描く */
.tdoc-view { overflow-x: auto; border: 1px solid var(--line); border-radius: 6px; background: #fff; }
.tdoc-work { position: fixed; left: -10000px; top: 0; width: 760px; }
.tdoc { width: 720px; padding: 20px; background: #fff; color: #111; font-family: "Hiragino Sans", "Yu Gothic", "Meiryo", sans-serif; font-size: 13px; line-height: 1.5; }
.tdoc-title { margin: 0 0 12px; text-align: center; font-size: 20px; letter-spacing: .2em; }
.tdoc-h { margin: 14px 0 4px; font-size: 13px; }
.tdoc table { border-collapse: collapse; width: 100%; }
.tdoc th, .tdoc td { border: 1px solid #555; padding: 4px 6px; text-align: left; vertical-align: top; }
.tdoc th { background: #EEF1F4; font-weight: 700; white-space: nowrap; }
.tdoc-kv th { width: 5.5em; }
.tdoc-t thead th { text-align: center; }
.tdoc .r { text-align: right; white-space: nowrap; }
.tdoc-sum th { width: 6em; }
.tdoc-total th, .tdoc-total td { font-weight: 700; font-size: 15px; }

/* これまでの出張の一覧（docs/specs/20261104-task-tool-trip-auto.md） */
.trip-list { display: grid; gap: 6px; }
.trip-item { display: grid; grid-template-columns: 1fr auto; gap: 2px 8px; align-items: center; text-align: left; width: 100%; padding: 8px 10px; border: 1px solid var(--line); border-radius: 8px; background: var(--panel); color: var(--ink); font: inherit; cursor: pointer; min-height: var(--h-btn); }
.trip-item:hover { background: #F2F5F8; }
.trip-item.on { border-color: var(--accent); box-shadow: inset 3px 0 0 var(--accent); }
.trip-item .sub { grid-column: 1 / -1; }
.trip-item-t { font-weight: 700; min-width: 0; overflow-wrap: anywhere; }
.pill { font-size: var(--fs-s); font-weight: 700; padding: 1px 8px; border-radius: 999px; white-space: nowrap; }
.p-wait { background: #FFF4DB; color: #8A5A00; }
.p-doc { background: var(--chip); color: var(--accent); }
.p-sent { background: #E8F5EC; color: #1E7A45; }
.trip-upload { display: inline-flex; align-items: center; }
.trip-open { margin: 6px 0 0; font-size: calc(var(--fs) + 3px); }
