/* 受取請求書: スマートフォン */
.sidebar__mobile-toggle { display: none; }
.table .received-mobile-more { display: none; }
@media (max-width: 620px) {
  .app, .app.app--no-detail { --app-sidebar-width: 48px; grid-template-columns: 48px minmax(0, 1fr); }
  .sidebar { width: 48px; padding: 8px 4px; overflow-x: hidden; }
  .sidebar__mobile-toggle { display: grid; place-items: center; flex: none; width: 40px; height: 40px; border: 0; border-radius: 8px; background: transparent; color: inherit; font-size: 22px; cursor: pointer; }
  .sidebar:not(.sidebar--mobile-open) > :not(.sidebar__mobile-toggle) { display: none; }
  .sidebar.sidebar--mobile-open { width: min(260px, 85vw); padding: 8px; align-items: stretch; box-shadow: 8px 0 24px #0004; }
  .sidebar--mobile-open .sidebar__section, .sidebar--mobile-open .sidebar__user-name, .sidebar--mobile-open .sidebar__logout-label, .sidebar--mobile-open .sidebar__item span { display: inline; }
  .sidebar--mobile-open .sidebar__section { display: block; }
  .sidebar--mobile-open .sidebar__item { justify-content: flex-start; min-height: 44px; gap: 10px; }
  .sidebar--mobile-open .sidebar__user { justify-content: space-between; }
  .main__head { padding: 14px 12px 10px; }
  .main__body { padding: 0 8px 16px; }
  .list-actions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; margin-top: 0; }
  .list-actions .btn { box-sizing: border-box; width: 100%; min-width: 0; min-height: 44px; margin: 0; justify-content: center; padding: 8px; white-space: normal; }
  .filterbar { padding: 10px; }
  .filterbar__fields { gap: 8px; }
  .received-tabs { flex-wrap: wrap; padding: 10px 0 0; gap: 8px; }
  .received-tabs__pills { min-width: 0; }
  .received-tabs__actions { margin-left: auto; }
  .table.received-invoices__table { display: block; box-sizing: border-box; width: 100%; max-width: 100%; min-width: 0; table-layout: auto; }
  .received-invoices__table thead { display: block; width: 100%; overflow-x: auto; }
  .received-invoices__table thead tr { display: flex; width: max-content; }
  .received-invoices__table thead th { position: static; display: block; padding: 8px; }
  .received-invoices__table tbody { display: grid; grid-template-columns: minmax(0, 1fr); box-sizing: border-box; width: 100%; gap: 8px; padding: 8px; }
  .received-invoices__table tbody tr { display: grid; grid-template-columns: minmax(0,1fr) auto; min-width: 0; border: 1px solid var(--line); border-radius: 10px; overflow: hidden; }
  .received-invoices__table tbody td, .received-school__table tbody td { display: grid; grid-template-columns: minmax(72px, 35%) minmax(0,1fr); gap: 8px; width: auto; min-width: 0; max-width: none; padding: 7px 10px; border-right: 0; white-space: normal; text-align: left; overflow-wrap: anywhere; }
  .received-invoices__table tbody td { grid-column: 1 / -1; }
  .received-invoices__table tbody tr:not(.is-mobile-expanded) td[data-label]:not([data-label="取引先"]):not([data-label="支払金額"]):not([data-label="振込期日"]):not([data-label="支払期日"]):not([data-label="状態"]):not([data-label="承認状態"]) { display: none; }
  .received-invoices__table tbody td[data-label="取引先"] { grid-row: 1; grid-column: 1; display: block; padding: 14px 12px 10px; font-weight: 700; font-size: 15px; }
  .received-invoices__table tbody td[data-label="取引先"]::before { display: none; }
  .received-invoices__table tbody td[data-label="支払金額"] { font-size: 15px; font-weight: 700; }
  .received-invoices__table tbody td[data-label]::before { content: attr(data-label); font-weight: 700; font-size: 11px; color: var(--ink-2); text-align: left; }
  .received-invoices__table tbody td.td--check { display: flex; grid-row: 1; grid-column: 2; justify-content: flex-end; align-items: center; }
  .table.received-invoices__table .received-mobile-more { display: block; padding: 4px 12px 10px; border-bottom: 0; }
  .received-mobile-more button { border: 0; padding: 8px 0; background: transparent; color: var(--brand); font: inherit; font-size: 12px; font-weight: 700; cursor: pointer; }
  .received-invoices__table input[type="checkbox"] { width: 20px; height: 20px; }
  .dpage__bar { gap: 6px; padding: 8px; flex-wrap: wrap; }
  .dpage__id { gap: 5px; width: 100%; }
  .dpage__partner { max-width: none; }
  .dpage__nav { gap: 4px; width: 100%; min-width: 0; overflow-x: auto; }
  .dpage__nav > * { flex-shrink: 0; }
  .dpage__close { position: sticky; right: 0; z-index: 1; }
  .dpage__navbtn { width: 40px; height: 40px; }
  .dpage__form { padding: 14px 12px 24px; }
  .dpage__pdfbar { flex-wrap: wrap; padding: 8px 10px; }
  .dpage__pdfname { max-width: 55%; }
  .dpage input:not([type="checkbox"]), .dpage select, .dpage textarea,
  .modal input:not([type="checkbox"]), .modal select, .modal textarea { font-size: 16px; }
  .modal-overlay { padding: 8px; }
  .modal-overlay .modal { max-width: 100%; max-height: calc(100dvh - 16px); }
  .modal__head, .modal__body, .modal__actions { padding-left: 12px; padding-right: 12px; }
  .modal__actions { flex-wrap: wrap; }
  .modal-backdrop { padding: 8px; }
  .modal-backdrop .modal { box-sizing: border-box; max-width: 100%; max-height: calc(100dvh - 16px); }
}
