:root{color:#15211d;background:#f4f1e8;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button,input,textarea{font:inherit}button{cursor:pointer}.shell{width:min(1180px,calc(100% - 40px));margin:0 auto;padding:72px 0}.topbar{display:flex;align-items:end;justify-content:space-between;gap:32px}.eyebrow{margin:0 0 12px;color:#507568;font-size:.75rem;font-weight:800;letter-spacing:.16em}h1{max-width:720px;margin:0;font-family:Georgia,serif;font-size:clamp(2.5rem,6vw,5.4rem);font-weight:500;line-height:.98;letter-spacing:-.045em}.connect,.primary{border:0;border-radius:999px;padding:14px 22px;color:#eef7f2;background:#163f34}.connect:disabled,.primary:disabled{opacity:.5}.actions{display:flex;align-items:center;gap:12px}.link,.edit{border:0;background:transparent;color:#507568;text-decoration:underline}.secondary{width:100%;border:1px solid #163f34;border-radius:999px;padding:12px;background:transparent;color:#163f34}.summary{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:64px}.metric{min-height:180px;padding:24px;border:1px solid #d8d4c8;border-radius:22px;background:#ffffff8c}.metric p,.metric span{color:#65716c}.metric p{margin:0}.metric strong{display:block;margin:28px 0 8px;font-family:Georgia,serif;font-size:2.2rem;font-weight:500}.metric span{font-size:.86rem}.panel{display:grid;grid-template-columns:1.6fr .8fr;align-items:end;gap:40px;margin-top:18px;padding:36px;border-radius:28px;color:#eaf2ee;background:#132a24}.panel h2{max-width:760px;margin:0;font-family:Georgia,serif;font-size:clamp(1.8rem,4vw,3.4rem);font-weight:500;line-height:1.08}.copy{max-width:650px;margin:20px 0 0;color:#abc0b8;line-height:1.6}.status{justify-self:end;padding:14px 18px;border:1px solid #38534a;border-radius:999px;color:#c9d7d2;font-size:.88rem}.status-dot{display:inline-block;width:8px;height:8px;margin-right:8px;border-radius:50%;background:#e9b95b}.login-shell{min-height:100vh;display:grid;place-items:center;padding:24px;background:#132a24}.login-card{width:min(560px,100%);padding:40px;border-radius:28px;background:#f4f1e8}.login-card h1{font-size:clamp(2.4rem,8vw,4.4rem)}.dark{color:#52605b}.login-card label{display:grid;gap:7px;margin:22px 0 12px;font-size:.88rem;font-weight:700}.login-card input,.editor textarea,.editor select,.new-tag input{width:100%;border:1px solid #c9c5ba;border-radius:12px;padding:13px;background:#fff}.login-card .primary{width:100%}.login-card details{margin-top:22px}.login-card summary{cursor:pointer;color:#507568}.error{color:#a12d26}.table-panel{margin-top:18px;padding:30px;border:1px solid #d8d4c8;border-radius:28px;background:#fff9}.section-title h2,.editor h2{margin:0;font:500 2rem Georgia,serif}.transaction{display:flex;justify-content:space-between;gap:16px;padding:18px 0;border-bottom:1px solid #ddd8cd}.transaction small{display:block;margin-top:5px;color:#69746f}.amount{text-align:right;font-weight:750}.amount.credit{color:#247050}.amount.debit{color:#7c3c31}.edit{display:block;margin:6px 0 0 auto;font-size:.8rem}.empty{color:#69746f}.editor{position:fixed;inset:0;margin:auto;width:min(500px,calc(100% - 32px));border:0;border-radius:24px;padding:28px;box-shadow:0 20px 80px #0005}.editor::backdrop{background:#0006}.editor label{display:grid;gap:7px;margin-top:16px;font-size:.88rem;font-weight:700}.editor fieldset{margin:18px 0 0;border:1px solid #d8d4c8;border-radius:14px}.editor .check{display:inline-flex;align-items:center;gap:6px;margin:8px 14px 8px 0;font-weight:500}.new-tag{display:flex;gap:8px;margin-top:12px}.new-tag .secondary{width:auto}.editor .actions{justify-content:flex-end;margin-top:18px}.notice{margin:24px 0 0;padding:12px 16px;border-radius:12px;background:#fff8}.notice.success{color:#247050;border:1px solid #8fbaa8}.notice.error{color:#a12d26;border:1px solid #d7a7a3}.security-panel{display:flex;align-items:center;justify-content:space-between;gap:28px;margin-top:18px;padding:24px 30px;border:1px solid #d8d4c8;border-radius:22px;background:#ffffff8c}.security-panel h2{margin:0;font:500 2rem Georgia,serif}.security-panel p:not(.eyebrow){max-width:680px;margin:8px 0 0;color:#65716c;line-height:1.5}.security-panel .primary{flex:0 0 auto}.secondary.compact{width:auto;white-space:nowrap}.budget-panel{margin-top:18px;padding:30px;border-radius:28px;color:#edf6f2;background:#132a24}.budget-heading{display:flex;align-items:end;justify-content:space-between;gap:24px}.budget-heading h2{margin:0;font:500 2.3rem Georgia,serif}.budget-heading>p{max-width:420px;margin:0;color:#abc0b8}.budget-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px;margin-top:30px}.budget-period h3{margin:0 0 18px;font-size:1rem;color:#d9e6e1}.budget-item{margin-top:18px}.budget-line,.budget-meta{display:flex;justify-content:space-between;gap:14px}.budget-line span{font-variant-numeric:tabular-nums}.budget-track{height:15px;margin:9px 0 7px;overflow:hidden;border-radius:999px;background:#071b15;box-shadow:inset 0 0 0 1px #ffffff18}.budget-remaining{height:100%;border-radius:inherit;transition:width .35s ease,background .35s ease}.budget-item.safe .budget-remaining{background:#55b88e}.budget-item.warning .budget-remaining{background:#e7b94f}.budget-item.danger .budget-remaining,.budget-item.exceeded .budget-remaining{background:#e16f5c}.budget-item.exceeded .budget-track{box-shadow:inset 0 0 0 2px #e16f5c}.budget-item.exceeded .budget-line span{color:#ff9d8d}.budget-meta{color:#9db4ab;font-size:.78rem}.budget-meta span:last-child{color:#e7c986;text-align:right}.excluded-badge{display:inline-block;margin-top:7px;padding:3px 8px;border-radius:999px;color:#71530e;background:#f5df9c;font-size:.72rem;font-weight:800}.exclude-check{grid-template-columns:auto 1fr!important;align-items:start}.exclude-check input{width:auto;margin-top:4px}.exclude-check small{display:block;margin-top:3px;color:#69746f;font-weight:400}.budget-editor{max-height:min(760px,calc(100vh - 32px));overflow:auto}.settings-group{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 14px;margin-top:22px}.settings-group h3{grid-column:1/-1;margin:0}.budget-editor input{width:100%;border:1px solid #c9c5ba;border-radius:12px;padding:13px;background:#fff}.app-version{padding:12px 20px 18px;color:#7a8580;background:#f4f1e8;text-align:center;font-size:.75rem;font-variant-numeric:tabular-nums}@media(max-width:760px){.shell{width:min(100% - 24px,1180px);padding:38px 0}.topbar,.security-panel{align-items:stretch;flex-direction:column}.summary,.panel,.budget-columns{grid-template-columns:1fr}.summary{margin-top:40px}.status{justify-self:start}.security-panel .primary,.secondary.compact{width:100%}.transaction{align-items:start}.amount{min-width:112px}.budget-heading{align-items:start;flex-direction:column}.budget-line,.budget-meta{gap:8px}.budget-line span{text-align:right}.settings-group{grid-template-columns:1fr}}
