:root {
    --bg: #f2f3f1;
    --surface: #ffffff;
    --surface-2: #f7f8f6;
    --text: #252a28;
    --muted: #68716d;
    --primary: #49675c;
    --primary-dark: #354d44;
    --primary-soft: #edf2ef;
    --border: #dce1de;
    --danger: #a53a32;
    --danger-soft: #fbf1f0;
    --warning: #8a6327;
    --shadow: 0 1px 2px rgba(30, 38, 34, .035), 0 7px 20px rgba(30, 38, 34, .045);
}

.top,
.bottom { background-color: rgba(255, 255, 255, .95); }
.totals .net { background: #384640; border-color: #384640; }
.totals .net span { color: #d9e2de; }
.actions a:hover,
button.secondary:hover { background: var(--primary-soft); border-color: #c8cfcb; }
label { color: #3f4844; }
input,
select,
textarea { border-color: #c8cfcb; }
input:hover,
select:hover,
textarea:hover { border-color: #9da8a2; }
input:focus,
select:focus,
textarea:focus,
a:focus-visible,
button:focus-visible { outline-color: rgba(73, 103, 92, .2); }
.success { background: #eef6f1; border-color: #bfd8ca; color: #35664f; }
.error { background: var(--danger-soft); border-color: #e8c4c0; color: #8b3029; }
.notice,
.support { background: #faf6eb; border-color: #dfd0a8; color: #75531f; }
.bottom .add { box-shadow: 0 6px 16px rgba(53, 77, 68, .2); }
.money-actions a { background: var(--primary-soft); border-color: var(--border); color: var(--primary-dark); }
.money-actions a:hover { background: #e2ebe6; border-color: #bdcbc4; }
.account-directory { border-color: var(--border); }
.account-group-heading { background: var(--surface-2); }
.account-group-held .account-group-heading { border-left-color: #81968d; }
.account-group-advanced .account-group-heading { border-left-color: #56655f; }
.account-group-advanced .account-balance { color: #37443f; }
.account-row > span:last-child { color: #98a29d; }

textarea { display:block;width:100%;margin-top:5px;padding:9px 11px;border-width:1px;border-style:solid;border-radius:8px;background:#fff;color:var(--text);font:400 .9rem/1.5 var(--font);resize:vertical;box-shadow:0 1px 2px rgba(30,38,34,.03) }
.note-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.note-card{display:flex;flex-direction:column;min-height:180px;margin:0}.note-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.note-heading h2{margin:0 0 5px}.note-schedule{display:inline-flex;padding:3px 8px;border-radius:999px;background:var(--primary-soft);color:var(--primary-dark);font-size:.72rem;font-weight:650}.note-amount{white-space:nowrap;font-size:1.05rem;font-variant-numeric:tabular-nums}.note-details{flex:1;white-space:pre-wrap;overflow-wrap:anywhere;color:#454d49}.note-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;padding-top:10px;border-top:1px solid var(--border)}.note-footer>small{color:var(--muted)}.note-footer form{margin:0}.empty-note{grid-column:1/-1;text-align:center}.empty-note .button{margin-top:4px}@media(max-width:700px){.note-grid{grid-template-columns:1fr}.note-card{min-height:0}.note-footer{align-items:flex-end}.bottom a{font-size:.66rem}}
.note-details-input,.note-details-table{font-family:"Cascadia Mono","Segoe UI Mono",Consolas,"Liberation Mono",monospace;font-variant-numeric:tabular-nums;tab-size:8}.note-table-scroll{max-width:100%;margin:10px 0 14px;overflow-x:auto;border:1px solid var(--border);border-radius:8px;background:var(--surface-2)}.note-details-table{display:block;min-width:max-content;margin:0;padding:11px 12px;white-space:pre;overflow-wrap:normal;color:#454d49;font-size:.84rem;line-height:1.55}.note-table-scroll:focus-visible{outline:3px solid rgba(23,107,82,.2);outline-offset:1px}
.note-heading h2 a{color:inherit;text-decoration:none}.note-heading h2 a:hover{color:var(--primary)}.note-preview{position:relative;max-height:150px;overflow:hidden}.note-preview:after{content:"";position:absolute;right:0;bottom:0;left:0;height:38px;background:linear-gradient(transparent,var(--surface));pointer-events:none}.note-preview .note-table-scroll{margin-bottom:0}.note-full{max-width:100%;margin-inline:auto}.note-full .note-heading{margin-bottom:16px}.note-details-full{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.6}.note-table-full{max-height:none;margin-bottom:4px}.note-table-full .note-details-table{max-height:none}.note-full .note-footer{margin-top:18px}

/* One transaction pattern across history, account activity, and dashboard. */
.transaction-row{grid-template-columns:76px minmax(180px,1fr) 112px 54px}.transaction-main{min-width:0}.transaction-main b,.transaction-main small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.transaction-row-compact{grid-template-columns:minmax(0,1fr) auto;gap:3px 10px;padding:9px 0}.transaction-row-compact time,.transaction-row-compact .transaction-main{grid-column:1}.transaction-row-compact .transaction-amount,.transaction-row-compact .badge{grid-column:2}.transaction-row-compact time{grid-row:1}.transaction-row-compact .transaction-main{grid-row:2/4}.transaction-row-compact .transaction-amount{grid-row:2}.transaction-row-compact .badge{grid-row:3}
@media(max-width:600px){.transaction-row{grid-template-columns:1fr auto}.transaction-row time,.transaction-row .transaction-main{grid-column:1}.transaction-row .transaction-amount,.transaction-row .badge{grid-column:2}.transaction-row time{grid-row:1}.transaction-row .transaction-main{grid-row:2/4}.transaction-row .transaction-amount{grid-row:2}.transaction-row .badge{grid-row:3}}
.transaction-detail-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.transaction-detail-heading>strong{padding-top:18px;white-space:nowrap;font-size:1.2rem;font-variant-numeric:tabular-nums}.transaction-meta{display:flex;flex-wrap:wrap;gap:6px}@media(max-width:600px){.transaction-detail-heading{display:block}.transaction-detail-heading>strong{display:block;padding-top:3px}}

/* Compact account statement and verification controls. */
.compact-card{padding:12px 14px}.range-controls,.verify-controls,.verify-controls form{display:flex;align-items:flex-end;gap:8px}.range-controls label{flex:1;min-width:145px;margin:0}.range-controls label span{display:block;margin-bottom:4px}.range-controls input,.verify-controls input{margin:0}.range-controls button,.range-controls .button,.verify-controls button,.verify-controls .button{white-space:nowrap}.verify-controls{margin-top:10px}.verify-controls form{margin:0;flex:1}.verify-controls input{min-width:140px}.verify-controls form input{flex:1}.verify-controls .button.secondary{background:var(--surface);border-color:var(--border);color:var(--text)}.verify-controls .button.secondary:hover{background:var(--primary-soft)}
@media(max-width:700px){.range-controls,.verify-controls{flex-wrap:wrap}.range-controls label{flex:1 1 calc(50% - 4px)}.range-controls button,.range-controls .button{flex:1 1 auto}.verify-controls form{flex:1 1 100%}.verify-controls .button{flex:1 1 auto}}
.account-toolbar{display:flex;align-items:flex-end;gap:18px}.account-toolbar-identity{display:flex;align-items:baseline;gap:12px;min-width:0;margin-right:auto}.account-toolbar-identity h1,.account-toolbar-identity .balance{margin:0;white-space:nowrap}.account-toolbar-identity h1{font-size:1.35rem}.account-toolbar-identity .balance{font-size:1.05rem}.account-toolbar .range-controls{flex:0 1 650px}.account-toolbar .range-controls label{min-width:128px}@media(max-width:900px){.account-toolbar{align-items:stretch;flex-direction:column;gap:10px}.account-toolbar-identity{width:100%;justify-content:space-between}.account-toolbar .range-controls{flex:auto;width:100%}}@media(max-width:480px){.account-toolbar-identity{gap:10px}.account-toolbar-identity h1{font-size:1.25rem}.account-toolbar-identity .balance{font-size:1rem}}
