/* Approved UI refinements; same tokens for the website and Android web bundle. */
body#appBody [hidden]{display:none!important}
.ux-fold,.ux-tx-detail,.ux-settings-fold,.ux-annual-fold,.ux-register-optional,.ux-phone-help{border:1px solid var(--border-default);border-radius:14px;background:var(--surface-subcard);padding:12px 14px;min-width:0}
.ux-fold>summary,.ux-tx-detail>summary,.ux-settings-fold>summary,.ux-annual-fold>summary,.ux-register-optional>summary,.ux-phone-help>summary{cursor:pointer;min-height:44px;display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:13px;font-weight:600;list-style:none}
.ux-fold>summary::after,.ux-tx-detail>summary::after,.ux-settings-fold>summary::after,.ux-annual-fold>summary::after,.ux-register-optional>summary::after,.ux-phone-help>summary::after{content:'⌄';color:var(--tone-gold);flex-shrink:0}
details[open]>summary::after{transform:rotate(180deg)}
.ux-fold[open]>:not(summary),.ux-tx-detail[open]>:not(summary),.ux-settings-fold[open]>:not(summary),.ux-annual-fold[open]>:not(summary){margin-top:12px}
summary:focus-visible,.bank-review-message:focus-visible{outline:2px solid var(--tone-gold);outline-offset:3px}
#netWorthCard{min-height:0!important;padding:16px!important;align-self:start!important;justify-content:flex-start!important}#netWorthCard .zad-display-hero{font-size:34px!important}#netWorthCard .ux-fold{margin-top:14px;border:0;border-top:1px solid var(--border-subtle);padding:8px 0 0;background:transparent}#netWorthCard .finance-liquidity-grid{display:grid}
#tab-home [data-i18n^="summary."],#copilotPriorityAction{white-space:normal!important;overflow:visible!important;text-overflow:clip!important;line-height:1.65;min-width:0}#tab-home [data-i18n^="summary."]{flex:1}
#tab-home .finance-summary-label{margin:0!important}#tab-home .finance-overview{margin-bottom:0;order:-20!important}#tab-home #phoneDeferredBanner,#tab-home #urgentBillsBanner{order:-10!important}#tab-home #toolsAlerts{order:-9!important}
body#appBody #tab-home .finance-stat-card{display:grid;grid-template-rows:36px minmax(0,1fr) 38px;gap:6px;height:160px;min-height:160px;min-width:0;padding:12px!important;align-self:start;box-sizing:border-box}
body#appBody #tab-home .finance-stat-header{display:grid;grid-template-columns:minmax(0,1fr) 28px;align-items:center;gap:6px;min-width:0;margin:0}
body#appBody #tab-home .finance-stat-header [data-i18n^="summary."]{font-size:12px;line-height:1.5!important;font-weight:600}
body#appBody #tab-home .finance-stat-body{align-self:start;min-width:0}
body#appBody #tab-home .finance-stat-value{display:flex;flex-direction:column;align-items:flex-start;gap:2px;line-height:1.25;font-size:22px;font-size:clamp(18px,5.6vw,24px)}
body#appBody #tab-home .finance-stat-value>[id]{white-space:nowrap;letter-spacing:-.025em;font-variant-numeric:tabular-nums}
body#appBody #tab-home .finance-stat-value .currency-symbol{font-size:11px;line-height:1.5;white-space:nowrap;letter-spacing:normal}
body#appBody #tab-home .finance-stat-budget{display:grid;grid-template-rows:4px 1fr;gap:4px;min-width:0}
body#appBody #tab-home .finance-stat-budget-values{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;font-size:10px;line-height:1.35}
body#appBody #tab-home .finance-stat-budget-values>span{display:flex;flex-direction:column;align-items:flex-start;min-width:0}
body#appBody #tab-home .finance-stat-budget-values [id]{font-size:11px;white-space:nowrap;font-variant-numeric:tabular-nums}
.ux-amount-field{position:relative;padding:14px 16px;background:var(--surface-subcard);border:1px solid var(--border-default);border-radius:16px}body#appBody .ux-amount-field input{border:0!important;background:transparent!important;padding:4px 0!important;font-size:36px!important;min-height:60px!important;line-height:1.3;text-align:center}.ux-amount-field small{position:absolute;left:16px;right:auto;top:17px;font-size:13px!important}html[dir=ltr] .ux-amount-field small{left:auto;right:16px}.ux-amount-field label{color:var(--ink-secondary)!important}
#quickTransactionModal>.glass-card{max-height:calc(100dvh - 24px)!important;padding:20px!important;overflow-y:auto}#modalExpenseForm>*+*{margin-top:12px!important}.ux-tx-detail summary{display:grid;grid-template-columns:1fr auto;gap:4px 8px}.ux-tx-detail summary>strong{font-size:12px;font-weight:400;grid-column:1;grid-row:2;color:var(--ink-secondary);overflow-wrap:anywhere}.ux-tx-detail summary::after{grid-column:2;grid-row:1/3}.ux-sticky-save{position:sticky;bottom:0;z-index:2;box-shadow:0 -8px 20px var(--surface-card);min-height:48px!important}
#settingsModal>.glass-card{padding:20px!important;max-height:calc(100dvh - 24px)!important}#settingsModal h3{font-size:21px!important}.ux-settings-fold{padding:0 14px}.ux-settings-fold[open]>*:not(summary){margin-bottom:14px}#settingsModal .space-y-5>*+*{margin-top:10px!important}.ux-settings-fold:last-child summary{color:var(--tone-expense)}
.ux-year{display:flex;align-items:center;justify-content:space-between;gap:12px}.ux-year input{max-width:120px;text-align:center}.ux-annual-fold>summary{flex-wrap:wrap}.ux-annual-fold>summary>small{display:block;width:100%;font-size:11px;font-weight:400;color:var(--ink-secondary)}.ux-annual-fold[open]>input{width:100%;margin-block:8px}.ux-annual-fold[open]>label{display:block;font-size:12px;margin-top:12px}#toolsAnnual .tools-annual-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}#toolsAnnual .tools-annual-heading button{min-height:44px}#toolsAnnual>p{font-size:13px;line-height:1.8}#toolsAnnual .tools-table-wrap{max-height:230px}
#toolsForm,#toolsForm .tools-fields,#toolsImportMapping,#toolsImportPreview{min-width:0;max-width:100%;width:100%;box-sizing:border-box}#toolsImportMapping{grid-template-columns:minmax(0,1fr)}#toolsImportMapping select,#toolsForm input{min-width:0;max-width:100%;box-sizing:border-box}#toolsImportPreview .tools-table-wrap{max-width:100%;min-width:0;overflow-x:auto}.tools-dialog .tools-actions .zad-btn{min-height:44px;padding:10px 16px;border-radius:12px;font-weight:700}.tools-dialog .tools-actions .zad-btn-primary{background:#f6be50;color:#182335;flex:1}.tools-dialog .tools-actions .zad-btn-ghost{background:var(--surface-subcard);color:var(--ink);border:1px solid var(--border-default)}
.ux-register-intro{padding:20px!important}.ux-register-intro>div:last-child{margin-top:14px!important}.ux-register-intro .inline-flex{display:none}.ux-register-optional[open]>.grid{margin-top:12px}.ux-phone-help{text-align:start;font-size:13px;line-height:1.8}.ux-phone-help a{display:block;min-height:44px;padding-top:10px;color:var(--tone-gold);text-decoration:underline}.ux-phone-skip{display:block;min-height:44px;width:100%;border:1px solid var(--border-default);border-radius:12px;color:var(--tone-gold);padding:10px}.ux-phone-skip+p{font-size:11px;line-height:1.8;color:var(--ink-secondary)}
.ux-transfer-summary{padding:14px;border:1px solid var(--border-default);background:var(--surface-subcard);border-radius:14px;font-size:13px}.ux-transfer-summary>div{display:flex;justify-content:space-between;gap:10px;margin-bottom:8px}.ux-transfer-summary p{color:var(--tone-gold);font-size:12px}.ux-transfer-summary small{display:block;font-size:11px;line-height:1.8;color:var(--ink-secondary)}#transferModal>.glass-card{max-height:calc(100dvh - 24px);overflow-y:auto}#transferError{font-size:12px;color:var(--tone-expense);line-height:1.8}#transferActivity{min-height:44px;text-decoration:underline;color:var(--tone-gold)}#transferModal [aria-busy=true]{opacity:.65}
.bank-review-fold{padding:12px 14px;border:1px solid var(--border-default);border-radius:14px;background:var(--surface-subcard)}.bank-review-fold>summary{display:grid;gap:9px;list-style:none;cursor:pointer}.bank-review-top{display:flex;justify-content:space-between;gap:10px;align-items:center}.bank-review-top strong{font-size:24px}.bank-review-top span,.bank-review-route{font-size:12px;color:var(--ink-secondary);overflow-wrap:anywhere}.bank-review-open{display:flex;justify-content:space-between;align-items:center;min-height:44px;border-top:1px solid var(--border-subtle);padding-top:8px;font-size:13px;color:var(--tone-gold)}.bank-review-fold .bank-review-card{border:0!important;padding:12px 0!important}.bank-review-quick{min-height:44px;padding:10px 16px;border-radius:11px;font-weight:700;margin-top:8px;width:100%}.bank-review-fold .bank-review-message{white-space:normal;overflow-wrap:anywhere;max-height:none;overflow:visible}.bank-review-fold[open]>summary{padding-bottom:12px}
.bank-review-card [hidden]{display:none!important}.bank-review-liability{grid-column:1/-1}.bank-review-first-payment{margin:12px 0;padding:12px;border:1px solid var(--border-default);border-radius:12px}.bank-review-first-payment>p,[data-bank-create-hint],[data-bank-save-error]{font-size:12px;line-height:1.7;margin:8px 0}.bank-review-first-payment .bank-review-fields{grid-template-columns:minmax(0,1fr)}[data-bank-save-error]{color:var(--tone-rose,#fda4af)}body.privacy-mode [data-bank-first-payment]>p{filter:blur(8px)}
.asset-card .asset-icon{display:grid;place-items:center;color:var(--tone-gold)}.asset-card .asset-icon-btn{min-width:44px;min-height:44px}.asset-icon .zad-icon{width:20px;height:20px;stroke-width:2}
body#appBody.theme-light #urgentBillsBadge{color:#9f1239!important;background:#ffe4e6!important}body#appBody.theme-light #verifyEmailScreen .text-amber-200{color:#7c4a03!important}
@media(max-width:420px){body#appBody #appContainer{padding-inline:10px!important}#tab-home.tools-dashboard:not(.hidden){gap:10px}#quickTransactionModal>.glass-card,#settingsModal>.glass-card{padding:16px!important}#tab-home .zad-card{min-width:0}}
@media(prefers-reduced-motion:no-preference){.ux-settings-fold[open]>:not(summary),.ux-tx-detail[open]>:not(summary),.bank-review-fold[open]>.bank-review-card{animation:ux-reveal .18s ease-out}button,a,summary{transition:background-color .16s ease,border-color .16s ease,color .16s ease}#tab-home .zad-card{transition:border-color .18s ease}}
.bank-review-quick:disabled{opacity:.6;cursor:wait}
body.privacy-mode :is(.bank-review-top strong,.ux-transfer-summary strong,#tradeAccountEffect){filter:blur(8px);user-select:none}
@keyframes ux-reveal{from{opacity:.55;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){body#appBody .animate-fadeInUp,.ux-settings-fold *,.ux-tx-detail *,.bank-review-fold *,#tab-home .zad-card{animation:none!important;transition:none!important}}

.ux-annual-fold>summary:has(>small){display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 8px}.ux-annual-fold>summary>small{grid-column:1;grid-row:2;width:auto}.ux-annual-fold>summary:has(>small)::after{grid-column:2;grid-row:1/3}
body#appBody #tab-home.tools-dashboard>*{margin-top:0!important}
.bank-review-top strong{white-space:nowrap;flex-shrink:0}.bank-review-top>span{min-width:0}
/* Recorded device-testing fixes: compact cards and predictable touch controls. */
body#appBody button:has(>:is(i,svg)[data-lucide="x"]),body#appBody .modal-close{width:44px!important;min-width:44px!important;height:44px!important;min-height:44px!important;flex:0 0 44px;border-radius:50%!important;padding:9px!important;display:grid;place-items:center;aspect-ratio:1}
.home-customize{display:inline-flex;align-items:center;gap:6px;min-height:44px;flex-shrink:0}.home-customize svg{width:18px;height:18px}
.transaction-pagination button{color:var(--ink)!important;background:var(--surface-subcard)!important;border-color:var(--border-default)!important}.transaction-pagination button:not(:disabled):hover{color:var(--tone-gold)!important;border-color:var(--tone-gold)!important}
#categoryBudgetsContainer{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}#categoryBudgetsContainer>div{min-width:0;padding:10px}#categoryBudgetsContainer .flex{flex-wrap:wrap;gap:5px}#categoryBudgetsContainer [dir=ltr]{white-space:normal;overflow-wrap:anywhere}
#homeDistributionCharts{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}#homeDistributionCharts>div{min-width:0}#homeDistributionCharts .finance-chart-wrap{height:210px}#homeDistributionCharts h4{font-size:13px;line-height:1.6;overflow-wrap:anywhere}
#budgetInput[readonly]{font-weight:700;color:var(--tone-gold);cursor:default}.testing-custom-choice{display:grid;gap:6px;margin-top:8px;min-width:0;font-size:12px;color:var(--ink-secondary)}.testing-custom-choice[hidden]{display:none}
.currency-symbol,.zad-currency-symbol{white-space:normal;overflow-wrap:anywhere}
@media(max-width:480px){#homeDistributionCharts .finance-chart-wrap{height:170px}.home-customize{padding:8px;font-size:11px}#homeDistributionCharts{gap:10px;padding:12px!important}}

/* Separate legends keep the two doughnuts equally sized regardless of label count. */
#homeDistributionCharts .distribution-chart-panel{display:flex;flex-direction:column}
#homeDistributionCharts .distribution-chart-panel>.flex{min-height:44px;margin-bottom:12px}
.distribution-chart-row{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,2fr);align-items:center;gap:8px;direction:ltr;flex:1}
#homeDistributionCharts .distribution-ring{position:relative;width:100%;max-width:180px;aspect-ratio:1;height:auto;justify-self:center;min-width:0;min-height:0}
#homeDistributionCharts .distribution-ring>canvas{position:absolute;inset:0;width:100%!important;height:100%!important}
.distribution-legend{min-width:0;max-height:180px;overflow-y:auto;display:grid;align-content:start;gap:4px;scrollbar-width:thin}
.distribution-legend-item{display:flex;align-items:center;gap:4px;min-width:0;min-height:32px;padding:4px 0;text-align:start;font:inherit;font-size:11px;line-height:1.5;color:var(--ink);background:transparent;border:0;cursor:pointer}
.distribution-legend-item>span:last-child{min-width:0;overflow-wrap:anywhere}.distribution-legend-marker{width:8px;height:8px;border-radius:2px;flex-shrink:0}.distribution-legend-item[aria-pressed=false]>span:last-child{text-decoration:line-through;opacity:.6}.distribution-legend-item:focus-visible{outline:2px solid var(--tone-gold);outline-offset:1px}
