
:root{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#20232a;background:#f5f6f8;font-synthesis:none;--blue:#007aff;--muted:#7a818e;--line:#edf0f4}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}aside{position:fixed;width:228px;inset:0 auto 0 0;background:#fcfcfd;border-right:1px solid #e6e9ed;padding:35px 20px;display:flex;flex-direction:column}.brand{font-size:23px;letter-spacing:-1px;font-weight:750;display:flex;align-items:center;gap:10px}.logo{background:#007aff;color:white;border-radius:13px;padding:9px;font-size:19px;letter-spacing:0}.side-caption{font-size:11px;letter-spacing:1.5px;color:#999faa;margin:44px 14px 12px}nav{display:grid;gap:8px}nav button{border:0;background:none;text-align:left;padding:13px 15px;border-radius:11px;color:#747c89;display:flex;gap:12px}nav button.active{background:#eaf2ff;color:#0671e7;font-weight:600}.side-bottom{margin-top:auto;padding:18px 12px 0;border-top:1px solid #e8ebee;font-size:13px;color:#78808b;line-height:1.7}.avatar{display:inline-grid;place-items:center;width:33px;height:33px;background:#e6ecf5;border-radius:50%;color:#4b6487;font-weight:600;margin-right:7px}main{max-width:1490px;margin-left:228px;padding:38px 48px 50px}header{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px}.eyebrow{font-size:12px;color:#9299a5;letter-spacing:1.5px}h1{font-size:30px;font-weight:650;letter-spacing:-1.2px;margin:8px 0 9px}.subtitle{color:var(--muted);font-size:14px;margin:0}.actions{display:flex;gap:10px;align-items:center}.button,select{border:1px solid #e2e6eb;border-radius:10px;background:#fff;padding:11px 15px;color:#414956}.primary{background:var(--blue);border-color:var(--blue);color:white;box-shadow:0 3px 8px #007aff20}.demo{font-size:11px;color:#8d95a0;display:flex;align-items:center;gap:6px}.demo:before{content:"";width:6px;height:6px;background:#e3ad4e;border-radius:50%}.top-grid{display:grid;grid-template-columns:1.35fr 1fr 1fr 1fr;gap:17px}.card{background:white;border:1px solid #e9ecf1;border-radius:18px;padding:24px;box-shadow:0 4px 14px #182e4b02}.metric-title{font-size:13px;color:#858d99;display:flex;justify-content:space-between;align-items:center}.metric-icon{height:29px;width:29px;border-radius:9px;display:grid;place-items:center;background:#eef5ff;color:#007aff}.metric-value{font-size:29px;letter-spacing:-1px;font-weight:600;margin:17px 0 10px;white-space:nowrap}.metric-note{font-size:12px;color:#8c94a0}.positive{color:#24966c}.negative{color:#c16a65}.net{background:linear-gradient(125deg,#137cf8,#0064db);border-color:transparent;color:#fff;position:relative;overflow:hidden}.net:after{content:"";position:absolute;width:170px;height:170px;border:35px solid #ffffff08;border-radius:50%;right:-70px;bottom:-90px}.net .metric-title,.net .metric-note{color:#d1e6ff}.net .metric-icon{color:white;background:#ffffff22}.net .metric-value{font-size:34px}.net .positive{color:#d8f7e8}.charts{display:grid;grid-template-columns:1.65fr 1fr;gap:20px;margin-top:24px}.card-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}h2{font-size:16px;font-weight:600;letter-spacing:-.3px;margin:0 0 7px}.small{font-size:12px;color:#8d95a0;margin:0}.segments{display:flex;background:#f3f5f8;padding:3px;border-radius:8px;gap:2px}.segments button{border:0;background:none;font-size:11px;padding:6px 10px;color:#818997;border-radius:6px}.segments button.selected{background:white;box-shadow:0 1px 4px #16253c15;color:#333e4d}.chart-summary{display:flex;align-items:baseline;gap:12px;margin-top:21px}.chart-summary strong{font-size:24px;font-weight:600;letter-spacing:-.6px}.chart-summary span{font-size:11px;color:#24966c}.chart{width:100%;height:auto;display:block;margin-top:9px;overflow:visible}.legend{display:flex;gap:16px;align-items:center;font-size:11px;color:#9097a3;margin-top:18px;flex-wrap:wrap}.dot{width:7px;height:7px;display:inline-block;border-radius:50%;margin-right:5px}.bottom{display:grid;grid-template-columns:1.65fr 1fr;gap:20px;margin-top:24px}.link{background:none;border:0;color:#007aff;font-size:12px;padding:0}.group-title{font-size:10px;letter-spacing:1.2px;color:#8b94a1;margin:23px 0 7px}.item{display:flex;justify-content:space-between;padding:11px 0;border-bottom:1px solid #f1f3f6;font-size:13px;align-items:center}.item:last-child{border:0}.item-label{display:flex;align-items:center;gap:10px}.item-icon{width:31px;height:31px;display:grid;place-items:center;border:1px solid #edf0f3;border-radius:9px;color:#7e8b9d;font-size:12px}.amount{font-variant-numeric:tabular-nums;font-size:13px;font-weight:550}.month-row{padding:17px 0;border-bottom:1px solid #f0f2f5;display:flex;justify-content:space-between;gap:10px}.month-row button{border:0;background:none;text-align:left;padding:0;color:#374354;font-size:13px}.month-row small{display:block;font-size:11px;color:#929aa7;margin-top:6px}.month-row .right{text-align:right}.note-box{background:#f6f8fb;border-radius:11px;padding:15px;margin-top:20px;font-size:12px;color:#7f8897;line-height:1.6}.note-box strong{color:#526174;font-weight:550}.footer{display:flex;justify-content:space-between;font-size:11px;color:#a0a7b2;margin-top:25px}.view{display:none}.view.active{display:block}.history-table{width:100%;border-collapse:collapse;font-size:13px;margin-top:20px}.history-table th{text-align:left;color:#929aa5;font-size:11px;font-weight:500}.history-table td,.history-table th{padding:17px 10px;border-bottom:1px solid #edf0f4}.history-table td:not(:first-child),.history-table th:not(:first-child){text-align:right}dialog{border:1px solid #e5e9ef;border-radius:20px;padding:28px;width:min(480px,94vw);box-shadow:0 20px 100px #1234;color:#20232a}dialog::backdrop{background:#15263c60;backdrop-filter:blur(5px)}.form-row{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:13px 0;font-size:13px}.form-row input{width:145px;padding:10px;border:1px solid #dce2eb;border-radius:8px;text-align:right}.dialog-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:24px}.toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:#243449;color:white;border-radius:12px;padding:14px 22px;font-size:13px;z-index:9;display:none}.mobile-brand{display:none}button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible{outline:3px solid #8ec4ff;outline-offset:3px}
@media(min-width:1500px){main{margin-right:auto}}@media(max-width:1180px){aside{width:190px;padding:30px 14px}main{margin-left:190px;padding:32px 26px}.top-grid{gap:12px;grid-template-columns:repeat(2,1fr)}.charts,.bottom{grid-template-columns:1.4fr 1fr}.card{padding:20px}header{align-items:flex-start}.actions{flex-wrap:wrap;justify-content:flex-end}.demo{width:100%;justify-content:flex-end}}@media(max-width:850px){aside{width:76px;padding:25px 10px}.brand{justify-content:center}.brand .name,.side-caption,.side-bottom,nav button span{display:none}nav{margin-top:40px}nav button{justify-content:center;padding:14px}main{margin-left:76px;padding:28px 22px}.charts,.bottom{grid-template-columns:1fr}.chart{max-height:300px}.top-grid{gap:14px}.card{padding:23px}h1{font-size:27px}}@media(max-width:560px){aside{inset:auto 0 0;width:100%;height:67px;padding:7px 20px;z-index:5;border-top:1px solid #e5e9ee;border-right:0;background:#fffffff0;backdrop-filter:blur(14px)}aside .brand{display:none}nav{margin:0;display:flex;justify-content:space-around}nav button{font-size:17px;padding:7px 20px;display:flex;flex-direction:column;gap:4px;align-items:center}nav button span{display:block;font-size:10px}main{margin:0;padding:24px 17px 95px}.mobile-brand{display:block;font-size:14px;font-weight:650;color:#007aff;margin-bottom:22px}header{display:block;margin-bottom:23px}h1{font-size:29px}.actions{margin-top:20px;justify-content:flex-start;gap:8px}.demo{width:auto;margin-left:auto;font-size:10px}.button,select{padding:11px 12px;font-size:12px}.top-grid{gap:10px}.card{padding:18px;border-radius:15px}.net .metric-value{font-size:27px}.metric-value{font-size:23px}.metric-title{font-size:11px}.metric-icon{width:24px;height:24px}.metric-note{font-size:10px}.charts,.bottom{gap:16px;margin-top:16px}.chart-summary strong{font-size:22px}.footer{display:block;line-height:1.8}.history-table td,.history-table th{padding:14px 5px;font-size:11px}.history-table .optional{display:none}.subtitle{line-height:1.6;font-size:13px}}
.danger{color:#d44952}.destructive{background:#d44952;color:#fff;border-color:#d44952}.segments{flex-shrink:0}.charts .card-heading{flex-wrap:wrap}.eyebrow{line-height:1.7}button:disabled{opacity:.4;cursor:default}.empty{padding:40px 10px;color:#7a818e;text-align:center}.entry-layout{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(280px,1fr);gap:24px;align-items:start}.entry-summary{position:sticky;top:24px}.entry-badge{font-size:10px;letter-spacing:.7px;border-radius:7px;padding:7px 9px;background:#edf4ff;color:#007aff}.entry-field{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 0;border-bottom:1px solid #eff2f6;font-size:14px}.entry-field small{display:block;color:#929aa7;font-size:11px;margin-top:5px}.money-input{display:flex;align-items:center;gap:8px;background:#f8f9fc;border:1px solid #dfe5ee;border-radius:10px;padding:11px 12px;color:#8a94a3}.money-input input{width:115px;border:0;outline:0;background:transparent;text-align:right;color:#243449;font-size:15px;font-variant-numeric:tabular-nums}.money-input:focus-within{border-color:#007aff;box-shadow:0 0 0 3px #007aff18}textarea{font:inherit;resize:vertical;width:100%;padding:14px;border:1px solid #dfe5ee;border-radius:10px;margin-top:12px;font-size:14px}.entry-net{background:#edf5ff;border-radius:12px;padding:18px;margin:23px 0 15px}.entry-net strong{display:block;font-size:30px;letter-spacing:-1px;margin-top:9px;color:#007aff}.entry-layout .group-title{margin-top:30px}nav #open-entry.active{background:#eaf2ff;color:#0671e7}@media(max-width:1050px){.entry-layout{grid-template-columns:1fr}.entry-summary{position:static}}@media(max-width:560px){.entry-field{font-size:13px}.money-input{padding:10px}.money-input input{width:91px}.entry-badge{font-size:9px}.entry-layout{gap:16px}nav button{padding:7px 12px}}.availability{display:grid;grid-template-columns:1fr 1fr;gap:17px;margin-top:17px}.availability .card{padding:18px 24px;display:flex;align-items:center;justify-content:space-between;gap:15px}.availability strong{font-size:22px;white-space:nowrap;letter-spacing:-.5px}.availability p{margin-top:7px;line-height:1.6}.settings-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,1fr);gap:24px}.settings-stack{display:grid;gap:24px}.setting-item{padding:15px 0;border-bottom:1px solid #edf0f4}.setting-item-row{display:flex;gap:8px;align-items:center}.setting-item input{min-width:0;flex:1;border:1px solid #e1e6ed;border-radius:8px;padding:9px;font-size:13px}.setting-item .button{font-size:11px;padding:9px}.setting-item small{display:block;margin-top:7px;color:#8d95a0;font-size:11px}.settings-add{display:grid;gap:12px;margin-top:25px;border-top:1px solid #edf0f4;padding-top:20px}.settings-add label{display:grid;gap:7px}.settings-add input{padding:11px;border:1px solid #e1e6ed;border-radius:8px;font:inherit;color:#333}.availability .small{font-size:11px}@media(max-width:1050px){.settings-grid{grid-template-columns:1fr}.availability .card{display:block}.availability strong{display:block;margin-top:12px}}@media(max-width:560px){.availability{gap:10px;margin-top:10px}.availability .card{padding:16px}.availability strong{font-size:21px}.settings-grid,.settings-stack{gap:16px}nav button{padding:7px 8px}nav{gap:0}nav button span{font-size:9px}.setting-item-row{flex-wrap:wrap}.setting-item input{flex-basis:100%}.actions{flex-wrap:wrap}}
.status-banner{background:#fff2dd;color:#825e20;padding:13px 18px;border-radius:12px;margin-bottom:20px;font-size:13px;display:none}.danger-text{color:#d44952}.loading{opacity:.6;pointer-events:none}.month-input{padding:10px;border:1px solid #e1e6ed;border-radius:9px;font:inherit}.entry-title-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.signout{font-size:12px;color:#7a818e;text-decoration:none}.user-label{display:block;margin-top:10px}.setting-kind{width:100%;font-size:12px;padding:8px;margin-top:8px}.history-table{overflow-wrap:anywhere}@media(max-width:560px){.actions .demo{display:none}.eyebrow{letter-spacing:.8px}.metric-value{font-size:21px}.net .metric-value{font-size:25px}.setting-item input{font-size:16px}.money-input input{font-size:16px}.form-row input{font-size:16px}}

.auth-body{min-height:100vh;display:grid;place-items:center;padding:24px}.auth-card{margin:0;padding:36px;background:#fff;border:1px solid #e5eaf2;border-radius:22px;max-width:440px;width:100%;box-shadow:0 18px 60px #15395e0a}.auth-card h1{margin-top:0}.auth-card label{display:grid;gap:9px;font-size:14px;color:#657185}.auth-card input{width:100%;padding:13px;border:1px solid #dce4ef;border-radius:10px;font:inherit}.auth-card button{padding:13px 20px;background:#007aff;color:white;border:0;border-radius:10px;font:inherit}.auth-card a{color:#007aff;margin-left:12px}.auth-card p[role=alert]{color:#c44251;line-height:1.7}

[hidden]{display:none!important}.gate{min-height:100svh;display:grid;place-items:center;padding:35px 20px;background:radial-gradient(ellipse at 20% 0%,#e5efff,transparent 55%),#f5f6f8}.gate-card{width:min(100%,470px);background:#ffffffed;border:1px solid #fff;border-radius:26px;padding:36px;box-shadow:0 18px 90px #173a650c}.gate-intro{margin:34px 0 25px}.gate-intro h1{font-size:34px;line-height:1.14;letter-spacing:-1.5px}.gate-intro p{color:#818b98;font-size:14px;line-height:1.7}.field-label{display:grid;gap:8px;margin:17px 0;font-size:13px;color:#566375}.field-label input,.field-label select{width:100%;font:inherit;padding:12px;border:1px solid #dde4ee;border-radius:10px;background:white;color:#27374a;font-size:16px}.wide{width:100%;margin-top:15px}.gate-footer{display:flex;justify-content:space-between;margin-top:30px;font-size:11px;color:#8c98a7;gap:10px}.form-error{color:#bd3448;font-size:13px;line-height:1.7}.warning{background:#fff5e8;color:#8b5a26;padding:14px;border-radius:10px;font-size:12px;line-height:1.8}.recovery-key{display:block;background:#edf4ff;color:#145cba;border:1px solid #d6e7ff;border-radius:12px;padding:18px;font:600 16px/1.8 ui-monospace,monospace;overflow-wrap:anywhere;margin:22px 0;user-select:all}.receipt-buttons{display:flex;gap:10px;flex-wrap:wrap}.checkbox{display:flex;align-items:flex-start;gap:10px;font-size:13px;line-height:1.7;margin-top:20px}.checkbox input{width:19px;height:19px;flex-shrink:0}.profile-card{margin-bottom:24px}.profile-columns{display:grid;grid-template-columns:1fr 1fr;gap:35px;margin-top:14px}.profile-columns h3{font-size:14px;font-weight:600;margin:17px 0 10px}.profile-columns .small{line-height:1.8;margin-bottom:15px}.profile-columns button{margin:5px 5px 0 0}.update-banner{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:18px;border:1px solid #cbdfff;border-radius:15px;background:#eaf3ff;margin-bottom:24px;font-size:13px}.update-banner p{color:#667d9b;font-size:12px}.key-input{font-family:ui-monospace,monospace!important}button:disabled{opacity:.45;cursor:wait}.site-private-note{font-size:11px;color:#8c98a7}dialog{max-height:90svh;overflow-y:auto}.toast{max-width:90vw;max-height:30vh;overflow:auto;bottom:90px}body.is-locked{overflow:auto}.profile-columns .button{font-size:12px}@media(max-width:650px){.profile-columns{grid-template-columns:1fr;gap:10px}.gate-card{padding:27px 23px}.gate-intro h1{font-size:32px}.gate{padding:22px 14px}.recovery-key{font-size:15px}.receipt-buttons .button{font-size:12px}main{padding-bottom:calc(95px + env(safe-area-inset-bottom))}aside{padding-bottom:calc(7px + env(safe-area-inset-bottom));height:calc(67px + env(safe-area-inset-bottom))}}
