/* 阿橘+1 LIFF — 我的餘額（09A-P5）：頁面專屬，其餘見 finance-common.css */
.wallet-card-title { font-size: var(--font-size-body); font-weight: var(--font-weight-bold); color: var(--color-text-strong); margin-bottom: var(--space-3); }
.wallet-filters { display: flex; flex-direction: column; gap: var(--space-2); }
.wallet-filter-row { display: grid; grid-template-columns: 1fr 1fr; gap: var(--space-2); }
@media (max-width: 339px) { .wallet-filter-row { grid-template-columns: 1fr; } }
#ledger-tabs { overflow-x: auto; -webkit-overflow-scrolling: touch; scrollbar-width: none; }
#ledger-tabs::-webkit-scrollbar { display: none; }
#ledger-tabs .fin-seg-btn { flex: 0 0 auto; padding: 0 var(--space-3); }

/* ── 09A-P7：會員錢包呈現（只在本頁；共用層 finance-common.css 不動）── */
/* 主卡：這是哪個群組的帳 → 金額 → 一句說明 */
.fin-balance .w-context { margin-top: 2px; font-size: var(--font-size-body); font-weight: var(--font-weight-bold); color: var(--color-text-strong); overflow-wrap: anywhere; }
.fin-balance-amount { margin-top: var(--space-2); }
.fin-balance.is-negative .fin-balance-amount { color: var(--color-text-strong); }   /* 負數靠「-」與說明表達，不用整片紅 */
.fin-balance-note.w-note-neg { margin-top: var(--space-3); padding: var(--space-2) var(--space-3); border-radius: var(--radius-sm); background: var(--color-warning-surface); color: var(--color-warning-fg); font-weight: var(--font-weight-medium); line-height: var(--line-height-body); }
.w-empty-title { display: block; margin-bottom: var(--space-1); font-size: var(--font-size-lg); font-weight: var(--font-weight-bold); color: var(--color-text-strong); }
.fin-balance.w-no-ledger .fin-balance-note { margin-top: var(--space-3); font-size: var(--font-size-body); color: var(--color-text-primary); line-height: var(--line-height-body); }
.w-skel-amount { display: inline-block; width: 128px; max-width: 60%; height: 34px; border-radius: var(--radius-sm); background: var(--color-bg-sunken); vertical-align: middle; }
@media (prefers-reduced-motion: no-preference) { .w-skel-amount { animation: w-pulse 1.4s ease-in-out infinite; } }
@keyframes w-pulse { 50% { opacity: .55; } }
.w-order-link {
  display: inline-flex; align-items: center; min-height: var(--tap-min); margin-top: var(--space-3); padding: 0 var(--space-1);
  color: var(--color-action-text); font-size: var(--font-size-body); font-weight: var(--font-weight-bold); text-decoration: none; border-radius: var(--radius-sm);
}
/* 多群組 tab：換行，不橫向捲動；長名稱省略號（完整名稱在 title 與下方餘額列） */
#ledger-tabs.w-ledger-tabs { flex-wrap: wrap; overflow: visible; }
#ledger-tabs .fin-seg-btn { flex: 0 1 auto; max-width: 100%; padding: 0 var(--space-3); }
#ledger-tabs .fin-seg-btn[aria-pressed="true"] { box-shadow: inset 0 -3px 0 var(--color-action-text); }
#ledger-tabs .fin-seg-btn:focus-visible, #ledger-tabs .fin-seg-btn[aria-pressed="true"]:focus-visible { box-shadow: inset 0 -3px 0 var(--color-action-text), var(--focus-ring); }
#ledger-tabs .fin-seg-btn:not([aria-pressed="true"]):focus-visible { box-shadow: var(--focus-ring); }
.w-tab-text { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.fin-ledger-name { white-space: normal; overflow-wrap: anywhere; }

/* 本月摘要：一列四格（窄螢幕兩列） */
.w-monthly { padding: var(--space-3) var(--space-4); }
.w-monthly .wallet-card-title { margin: 0 0 var(--space-2); font-size: var(--font-size-sm); color: var(--color-text-soft); }
.w-summary { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--space-1); }
.w-summary .fin-summary-cell { padding: var(--space-2); text-align: center; }
.w-summary .fin-summary-value { font-size: var(--font-size-body); }
@media (max-width: 359px) { .w-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); } }

/* 交易列：標題＋金額；類型・時間・群組；說明 */
#tx-section .fin-section-title { margin-bottom: var(--space-2); }
#tx-section .wallet-filters { margin-top: 0; margin-bottom: var(--space-2); }
h3.fin-date-head { margin-left: 0; margin-right: 0; }
.w-tx .fin-tx-title { margin: 0; }
.w-tx .fin-amt { font-size: var(--font-size-lg); }
.w-tx-meta { gap: var(--space-1); }
.w-tx-type { font-weight: var(--font-weight-bold); color: var(--color-text-primary); }
.fin-tx--in .w-tx-type { color: var(--color-success-fg); }
.w-dot { color: var(--color-text-soft); }
.w-tx-why { margin-top: 2px; font-size: var(--font-size-sm); color: var(--color-text-soft); overflow-wrap: anywhere; }
.fin-tx-ledger { overflow-wrap: anywhere; }
