| LOADING
> Initializing system...
[AUTH_REQUIRED]
:::
[!] {{ authError }}
{{ lockMessage }}
Enter a shared password (6+ chars) to access your trip.
{{ formatDateFull(selectedDate) }}
No activities planned.
{{ activity.time || '--:--' }}
{{ getCategoryIcon(activity.category) }}
{{ activity.title }}
@
{{ activity.location }}
{{ activity.notes }}
[BALANCE_SUMMARY]
{{ expenses.length }} records
TOTAL_SPENT
{{ formatMoney(totalExpense) }}
CURRENCY
{{ rateLabel }}
SETTLEMENT (JPY, TWD ref @ 0.21)
{{ t.from }} → {{ t.to }} ¥{{ t.amount.toLocaleString() }} (NT${{ Math.round(t.amount * 0.21).toLocaleString() }})
BETWEEN FAMILIES
{{ familySettlement.cross.from }} → {{ familySettlement.cross.to }} ¥{{ familySettlement.cross.amount.toLocaleString() }} (NT${{ Math.round(familySettlement.cross.amount * 0.21).toLocaleString() }})
pays: {{ p.member }} {{ p.amount < 0 ? '-' : '' }}¥{{ Math.abs(p.amount).toLocaleString() }}
gets: {{ p.member }} {{ p.amount < 0 ? '-' : '' }}¥{{ Math.abs(p.amount).toLocaleString() }}
[ok] Even
WITHIN FAMILY
{{ t.from }} → {{ t.to }} ¥{{ t.amount.toLocaleString() }} (NT${{ Math.round(t.amount * 0.21).toLocaleString() }})
[ok] Even
NET:
{{ m }} {{ v >= 0 ? '+' : '-' }}¥{{ Math.round(Math.abs(v)).toLocaleString() }}
[ok] All settled!
{{ expense.description }}
{{ expense.category }}
{{ expense.payer }} paid • {{ formatDateShort(expense.date) }}
{{ shareSummary(expense) }}
{{ formatOriginal(expense.amount, expense.currency) }}