@font-face{font-family:euclidSans;src:url(../media/EuclidCircularB_Regular-s.p.221wmcqaxx7fu.otf)format("opentype");font-display:swap;font-weight:400;font-style:normal}@font-face{font-family:euclidSans;src:url(../media/EuclidCircularB_Medium-s.p.1el7w0cd3j5_6.otf)format("opentype");font-display:swap;font-weight:500;font-style:normal}@font-face{font-family:euclidSans;src:url(../media/EuclidCircularB_Semibold-s.p.0rn2jpa60uk5m.otf)format("opentype");font-display:swap;font-weight:600;font-style:normal}@font-face{font-family:euclidSans;src:url(../media/EuclidCircularB_Bold-s.p.0g4bkdmdl2b6c.otf)format("opentype");font-display:swap;font-weight:700;font-style:normal}@font-face{font-family:euclidSans Fallback;src:local(Arial);ascent-override:93.47%;descent-override:25.05%;line-gap-override:0.0%;size-adjust:106.98%}.euclidsans_810b581c-module__51LIsa__className{font-family:euclidSans,euclidSans Fallback}.euclidsans_810b581c-module__51LIsa__variable{--font-sans:"euclidSans", "euclidSans Fallback"}
@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5ce348bf30bf5439-s.31988l_ccedte.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/4fa387ec64143e14-s.2tuy5pz7dlieh.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/6306c77e7c8268e4-s.2dbetqa9o8jxf.woff2)format("woff2");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7d817b4c03b0c5f1-s.1uyisp29ctx0d.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/bbc41e54d2fcbd21-s.1rgnod-3esatf.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/797e433ab948586e-s.p.0r6juujl39pe6.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Mono Fallback;src:local(Arial);ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.0%;size-adjust:134.59%}.geist_mono_6ed36146-module__KdPPOG__className{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}.geist_mono_6ed36146-module__KdPPOG__variable{--font-mono:"Geist Mono", "Geist Mono Fallback"}
:root{--bg:#fafaf8;--card:#fff;--border:#0000000f;--shadow:0 1px 3px #0000000a, 0 8px 24px #0000000a;--text:#1a1a1f;--muted:#6c757d;--faint:#a3a3a3;--accent:#ff6d49;--accent-dark:#fc4e23;--accent-soft:#ff6d491a;--success:#1fc16b;--warning:#fa7319;--danger:#fa3748;--info:#335cff;--radius-card:16px;--radius-btn:10px;--radius-chip:999px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-tap-highlight-color:transparent;font-size:16px;line-height:1.55}body{background:var(--bg);color:var(--text);font-family:var(--font-sans), system-ui, sans-serif}.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-card);box-shadow:var(--shadow);margin-bottom:12px;padding:18px 20px}.card-title{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin-bottom:12px;font-size:13px;font-weight:600}.btn{border-radius:var(--radius-btn);min-height:44px;font-family:var(--font-sans), system-ui, sans-serif;cursor:pointer;-webkit-tap-highlight-color:transparent;border:none;outline:none;justify-content:center;align-items:center;padding:0 18px;font-size:15px;font-weight:500;transition:opacity .15s,background .15s;display:inline-flex}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover:not(:disabled){background:var(--accent-dark)}.btn-ghost{color:var(--text);border:1px solid var(--border);background:0 0}.btn-ghost:hover:not(:disabled){background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.btn-danger{color:var(--danger);background:0 0;border:1px solid #fa374833}.btn-danger:hover:not(:disabled){background:#fa374814}.btn-sm{min-height:36px;padding:0 12px;font-size:13px}.chip{border-radius:var(--radius-chip);align-items:center;padding:3px 10px;font-size:12px;font-weight:500;line-height:1.4;display:inline-flex}.chip-warning{color:var(--warning);background:#fa73191f}.chip-success{color:var(--success);background:#1fc16b1f}.chip-danger{color:var(--danger);background:#fa37481a}.row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:14px 0;display:flex}.row:last-child{border-bottom:none;padding-bottom:0}.row:first-child{padding-top:0}.row-left{flex:1;min-width:0}.row-right{text-align:right;flex-shrink:0}.muted{color:var(--muted)}.faint{color:var(--faint)}.amount{font-family:var(--font-mono), monospace;letter-spacing:-.01em;font-size:17px;font-weight:600}.amount-sm{font-family:var(--font-mono), monospace;font-size:14px;font-weight:500}.label-sm{color:var(--muted);margin-top:2px;font-size:12px}.page-header{padding:20px 20px 4px}.page-header h1{letter-spacing:-.01em;color:var(--text);font-size:22px;font-weight:700}.input{border:1px solid var(--border);border-radius:var(--radius-btn);width:100%;min-height:44px;font-family:var(--font-sans), system-ui, sans-serif;color:var(--text);background:var(--card);outline:none;padding:10px 14px;font-size:15px;transition:border-color .15s;display:block}.input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.input::placeholder{color:var(--faint)}.form-group{flex-direction:column;gap:6px;margin-bottom:12px;display:flex}.form-group label{color:var(--muted);font-size:13px;font-weight:500}.error-text{color:var(--danger);margin-top:4px;font-size:13px}.nav-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-card);box-shadow:var(--shadow);color:var(--text);justify-content:space-between;align-items:center;margin-bottom:12px;padding:18px 20px;text-decoration:none;transition:transform .12s,box-shadow .12s;display:flex}.nav-card:active{transform:scale(.98)}.nav-card-icon{background:var(--accent-soft);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.nav-card-chevron{color:var(--faint);flex-shrink:0}.brand-gradient{background:linear-gradient(135deg,#f34499,#ff7b6b,#ff4f2e);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.section{margin-bottom:20px;padding:0 20px}.empty-state{text-align:center;color:var(--muted);padding:40px 20px;font-size:15px}textarea.input{resize:vertical;min-height:80px;line-height:1.5}.edit-form{border:1px solid var(--border);background:#ff6d490a;border-radius:12px;flex-wrap:wrap;align-items:flex-end;gap:10px;margin-top:8px;padding:14px;display:flex}.edit-form .form-group{flex:1;min-width:100px;margin-bottom:0}.row-actions{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.cat-title{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin-bottom:8px;font-size:13px;font-weight:600}.table-wrap{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-card);box-shadow:var(--shadow);-webkit-overflow-scrolling:touch;overflow-x:auto}.acct-table{border-collapse:collapse;width:100%;font-size:13px}.acct-table thead th{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);text-align:left;border-bottom:1px solid var(--border);white-space:nowrap;padding:10px 12px;font-size:11px;font-weight:600}.acct-table tbody td{border-bottom:1px solid var(--border);color:var(--text);vertical-align:top;padding:10px 12px}.acct-table tbody tr:last-child td{border-bottom:none}.acct-table td.col-inst{min-width:120px;font-weight:600}.acct-table td.col-prod{color:var(--muted);min-width:110px}.acct-table td.col-amount{font-family:var(--font-mono), monospace;letter-spacing:-.01em;text-align:right;white-space:nowrap;font-weight:600}.acct-table td.col-rate,.acct-table th.col-rate{text-align:right;white-space:nowrap}.acct-table td.col-asof{color:var(--muted);white-space:nowrap}.acct-table td .sub{color:var(--faint);margin-top:2px;font-size:11px;font-weight:400;display:block}.cat-empty{color:var(--faint);padding:2px;font-size:13px}
