/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000}}}@layer theme{:root,:host{--font-sans:"IosevkaTerm Web", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--font-weight-bold:700;--radius-xl:.75rem}}@layer base{:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-family:var(--font-sans);color:#17211e;font-synthesis:none;text-rendering:optimizelegibility;--app-ink:#17211e;--app-muted:#61706b;--app-surface:#fff;--app-border:#dce3df;--app-accent:#176b57;--app-accent-strong:#115243;--app-danger:#b42318;--el-color-primary:#176b57;--el-color-primary-light-3:#5d998a;--el-color-primary-light-5:#8bb5aa;--el-color-primary-light-7:#b9d2cc;--el-color-primary-light-8:#d1e1dd;--el-color-primary-light-9:#e8f0ee;--el-color-primary-dark-2:#125646;--el-border-radius-base:8px;--el-font-family:var(--font-sans);background:#f4f6f3}*{box-sizing:border-box}html,body,#app{min-width:320px;min-height:100%;margin:0}body{background:#f4f6f3;min-height:100vh}button,input,select,textarea{font:inherit}button:focus-visible,a:focus-visible{outline-offset:2px;outline:3px solid #176b5747}.app-shell{min-height:100vh}.app-container{width:min(100%,1120px);margin:0 auto;padding:24px 16px 48px}.page-header{justify-content:space-between;align-items:center;gap:16px;display:flex}.page-header h1{margin-bottom:4px}.page-subtitle{margin-bottom:0}.dashboard-content{gap:20px;display:grid}.section-panel,.state-panel,.balance-panel{border:1px solid var(--app-border);background:var(--app-surface);border-radius:12px;padding:20px}.section-heading,.balance-heading-row{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.recent-heading-actions{align-items:center;gap:12px;display:flex}.section-kicker{color:var(--app-muted);letter-spacing:.04em;text-transform:uppercase;margin-bottom:4px;font-size:.75rem;font-weight:650}.balance-heading-row h2{margin-bottom:0}.balance-select{width:min(48%,220px)}.balance-value{color:var(--app-ink);font-variant-numeric:tabular-nums;letter-spacing:-.04em;margin:32px 0 6px;font-size:clamp(2rem,8vw,3.5rem);font-weight:750}.balance-note{color:var(--app-muted);margin-bottom:0;font-size:.8125rem}.transaction-action{flex-direction:column;align-items:stretch;gap:8px;display:flex}.transaction-action .el-button{min-height:52px;margin:0;font-weight:700}.bottom-nav{z-index:20;padding:12px 16px calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--app-border);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#f4f6f3f2;position:fixed;bottom:0;left:0;right:0}.bottom-nav__inner{justify-content:center;align-items:center;width:min(100%,1120px);margin:0 auto;display:flex}.bottom-nav__spacer{flex:1}.bottom-nav__action{border-radius:999px;width:56px;height:56px;font-size:1.5rem;font-weight:700;box-shadow:0 10px 24px #176b572e}.transaction-action p{text-align:center;margin-bottom:0;font-size:.8125rem}@media (width>=768px){.transaction-action{align-items:flex-start}.transaction-action .el-button{min-width:220px}.transaction-action p{text-align:left}}.section-panel h2,.state-panel h2{margin-bottom:8px;font-size:1.125rem}.account-count{color:var(--app-muted);font-size:.8125rem}.recent-count{color:var(--app-muted);font-size:.75rem}.recent-state,.recent-empty{margin-top:20px}.recent-empty{border:1px dashed var(--app-border);text-align:center;border-radius:8px;padding:28px 16px}.recent-empty h3{margin-bottom:6px;font-size:1rem}.recent-empty p{color:var(--app-muted)}.transaction-list{margin:16px 0 0;padding:0;list-style:none}.transaction-row{border-top:1px solid var(--app-border);justify-content:space-between;align-items:flex-start;gap:12px;padding:16px 0;display:flex}.transaction-main{min-width:0}.transaction-title-row{flex-wrap:wrap;align-items:center;gap:6px 8px;display:flex}.transaction-type{color:#30403b;text-transform:uppercase;background:#edf1ef;border-radius:999px;padding:2px 7px;font-size:.6875rem;font-weight:750}.transaction-type-income{color:#126049;background:#e5f3ee}.transaction-type-expense{color:#8a2c24;background:#fbecea}.transaction-context{overflow-wrap:anywhere;font-size:.875rem;font-weight:650}.transaction-note,.transaction-date{color:var(--app-muted);font-size:.75rem}.transaction-note{overflow-wrap:anywhere;margin:7px 0 2px}.transaction-amount{font-variant-numeric:tabular-nums;white-space:nowrap;flex:none;font-size:.875rem}.transaction-amount-income{color:#126049}.transaction-amount-expense{color:var(--app-danger)}.eyebrow{color:var(--app-accent);letter-spacing:.08em;text-transform:uppercase;margin-bottom:4px;font-size:.75rem;font-weight:700}.muted-copy{color:var(--app-muted)}.login-page{place-items:center;min-height:100dvh;padding:24px 16px;display:grid}.login-panel{border:1px solid var(--app-border);background:var(--app-surface);border-radius:12px;width:min(100%,400px);padding:32px 24px;box-shadow:0 10px 30px #153f3614}.login-form{gap:12px;margin-top:28px;display:grid}.login-form label{font-size:.875rem;font-weight:650}.login-form .el-input__inner{letter-spacing:.3em;text-align:center;font-size:1.25rem}.login-form .el-button{width:100%;min-height:44px;margin-top:4px}.form-error{color:var(--app-danger);margin-bottom:0;font-size:.875rem}.field-full-width{width:100%}.field-help{color:var(--app-muted);margin-top:6px;font-size:.75rem;line-height:1.4}.dialog-actions{justify-content:flex-end;gap:8px;display:flex}.transaction-type-group{width:100%;display:flex}.transaction-type-group .el-radio-button{flex:1}.transaction-type-group .el-radio-button__inner{width:100%}.form-grid{grid-template-columns:1fr;gap:0 16px;display:grid}@media (width>=560px){.form-grid{grid-template-columns:1fr 1fr}}h1,h2,h3,p{margin-top:0}@media (width>=768px){.app-container{padding:40px 32px 64px}}}@layer components;@layer utilities{.mt-4\!{margin-top:calc(var(--spacing) * 4)!important}.flex{display:flex}.grid{display:grid}.table{display:table}.min-h-22{min-height:calc(var(--spacing) * 22)}.w-full{width:100%}.min-w-0{min-width:0}.flex-\[0_0_148px\]{flex:0 0 148px}.flex-shrink{flex-shrink:1}.cursor-pointer{cursor:pointer}.\[scrollbar-width\:thin\]{scrollbar-width:thin}.list-none{list-style-type:none}.content-center{align-content:center}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-items-center{justify-items:center}.gap-1{gap:var(--spacing)}.gap-4{gap:calc(var(--spacing) * 4)}.self-end{align-self:flex-end}.justify-self-center{justify-self:center}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.rounded-\[10px\]{border-radius:10px}.rounded-xl\!{border-radius:var(--radius-xl)!important}.border{border-style:var(--tw-border-style);border-width:1px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-\[var\(--app-border\)\]{border-color:var(--app-border)}.border-\[var\(--app-border\)\]\!{border-color:var(--app-border)!important}.border-transparent\!{border-color:#0000!important}.bg-\[\#f9fbfa\]{background-color:#f9fbfa}.bg-\[var\(--app-surface\)\]\!{background-color:var(--app-surface)!important}.bg-transparent\!{background-color:#0000!important}.p-0\!{padding:0!important}.p-1{padding:var(--spacing)}.p-3\.5{padding:calc(var(--spacing) * 3.5)}.py-0\!{padding-block:0!important}.pl-2{padding-left:calc(var(--spacing) * 2)}.text-center{text-align:center}.text-left{text-align:left}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-xs\!{font-size:var(--text-xs)!important;line-height:var(--tw-leading,var(--text-xs--line-height))!important}.leading-none{--tw-leading:1;line-height:1}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.text-ellipsis{text-overflow:ellipsis}.whitespace-nowrap{white-space:nowrap}.text-\[var\(--app-accent-strong\)\]{color:var(--app-accent-strong)}.text-\[var\(--app-ink\)\]{color:var(--app-ink)}.text-\[var\(--app-ink\)\]\!{color:var(--app-ink)!important}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.\[overscroll-behavior-inline\:contain\]{overscroll-behavior-inline:contain}.first\:border-t-0:first-child{border-top-style:var(--tw-border-style);border-top-width:0}@media (hover:hover){.hover\:border-\[var\(--app-accent\)\]:hover{border-color:var(--app-accent)}.hover\:bg-\[\#f1f7f5\]:hover{background-color:#f1f7f5}}}@font-face{font-family:IosevkaTerm Web;src:url(/assets/IosevkaTermNerdFont-jrv-HG8Y.woff2)format("woff2");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:IosevkaTerm Web;src:url(/assets/IosevkaTermNerdFontMono-C1nyz9VK.woff2)format("woff2");font-style:normal;font-weight:600;font-display:swap}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}
