:root{--ink:#20243a;--muted:#878ba1;--line:#ececf3;--paper:#fff;--wash:#f6f7fb;--purple:#6b61e8;--purple-dark:#5148ce;--purple-pale:#eeedff;--peach:#fff0e7;--mint:#e7f7ef;--coral:#ff866f;--green:#278a60;--shadow:0 12px 40px rgba(37,39,75,.055);font-family:Yu Gothic UI,Hiragino Kaku Gothic ProN,Meiryo,sans-serif;color:var(--ink);font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;background:var(--wash);font-size:14px;-webkit-font-smoothing:antialiased}button,input,select{font:inherit}button{cursor:pointer}a{color:inherit}.app-shell{min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:238px;background:#fff;border-right:1px solid #eeeef3;padding:30px 19px 20px;display:flex;flex-direction:column;z-index:5}.brand,.topbar-mobile-brand{display:flex;align-items:center;gap:10px;font-size:23px;font-weight:800;letter-spacing:-1.1px;text-decoration:none}.brand-mark{width:34px;height:34px;background:var(--purple);border-radius:12px;color:#fff;display:grid;place-items:center;font-size:21px;font-weight:800;box-shadow:0 5px 14px #6b61e844}.brand-dot{color:var(--coral)}.side-caption{font-size:9px;letter-spacing:1.7px;color:#b1b2c0;font-weight:800;margin:7px 0 34px 45px}.side-nav{display:grid;gap:7px}.nav-item{border:0;background:transparent;color:#86899c;text-align:left;width:100%;display:flex;align-items:center;gap:13px;border-radius:13px;padding:13px 14px;font-weight:650;transition:.18s}.nav-item:hover{color:var(--purple);background:#f8f7ff}.nav-item.active{color:var(--purple);background:#f0efff}.nav-icon{font-family:Arial,sans-serif;font-size:18px;width:18px;text-align:center;color:inherit}.sidebar-bottom{margin-top:auto}.side-tip{margin:0 3px 19px;padding:17px 15px;border-radius:16px;background:#faf9ff;border:1px solid #f0efff;position:relative}.tip-spark{display:block;color:var(--coral);font-size:21px;margin-bottom:8px}.side-tip strong{font-size:11px;line-height:1.8;display:block}.side-tip small{color:#a0a2b1;font-size:9px;display:block;margin-top:8px}.version-label{display:block;color:#b4b6c2;font-size:9px;padding:17px 14px 0}.main-area{margin-left:238px;min-height:100vh;display:flex;flex-direction:column}.topbar{height:68px;position:sticky;top:0;z-index:4;background:#ffffffd9;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid #ededf3;display:flex;align-items:center;justify-content:space-between;padding:0 48px}.topbar-context{display:flex;align-items:center;gap:9px;color:#9396a8;font-size:11px;font-weight:600}.live-dot{width:7px;height:7px;border-radius:100%;background:#60c891;box-shadow:0 0 0 4px #e6f7ed}.topbar-actions{display:flex;align-items:center;gap:14px}.demo-pill{font-size:10px;color:#9c6a29;background:#fff5dd;border:1px solid #f8e6b9;border-radius:99px;padding:6px 10px}.demo-pill.hidden{display:none}.avatar{width:32px;height:32px;border:0;border-radius:50%;background:#e8e7ff;color:var(--purple);font-weight:800}.topbar-mobile-brand{display:none}.view-root{width:min(1190px,100%);padding:43px 48px 30px;margin:0 auto;flex:1}.welcome-row,.page-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:22px;margin-bottom:27px}.eyebrow{font-size:9px;letter-spacing:1.45px;font-weight:800;color:#a1a3b2;display:block;margin-bottom:9px}.welcome-row h1,.page-heading h1{font-size:clamp(23px,2.4vw,32px);line-height:1.45;letter-spacing:-1.1px;margin:0;font-weight:850}.accent-underline{position:relative;white-space:nowrap}.accent-underline:after{position:absolute;content:"";height:7px;left:0;right:0;bottom:1px;background:#e4e1ff;z-index:-1;border-radius:8px}.welcome-sub,.page-heading p{margin:8px 0 0;color:#9699aa;font-size:12px}.button{border:0;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:12px 17px;font-weight:750;white-space:nowrap;transition:transform .16s,box-shadow .16s}.button:hover{transform:translateY(-1px)}.button-primary{background:var(--purple);color:#fff;box-shadow:0 7px 16px #6b61e82e}.button-primary:hover{background:var(--purple-dark);box-shadow:0 9px 18px #6b61e844}.button-primary span{font-size:17px;line-height:10px}.button-soft{background:#f0efff;color:var(--purple)}.button-ghost{color:#777b90;background:#f5f5f8}.plus{font-size:18px;font-weight:400}.hero-grid{display:grid;grid-template-columns:1.12fr .88fr;gap:17px}.balance-card,.goal-card{min-height:224px;border-radius:22px;position:relative;overflow:hidden;padding:24px 26px}.balance-card{color:#fff;background:linear-gradient(130deg,#6359e2,#8177f1);box-shadow:0 15px 30px #7067e02e}.balance-card-top,.balance-card-bottom,.card-topline,.goal-amount-row,.goal-bottom{display:flex;align-items:center;justify-content:space-between}.balance-label{font-size:11px;color:#e4e3ff}.balance-icon{display:grid;place-items:center;width:31px;height:31px;border-radius:10px;background:#ffffff24;font-size:16px}.balance-number{font-size:42px;font-weight:800;letter-spacing:-2px;margin:13px 0 7px;position:relative;z-index:1}.balance-subline{font-size:10px;color:#e0defc;display:flex;align-items:center;gap:8px}.sub-dot{opacity:.7}.balance-card-bottom{margin-top:22px;position:relative;z-index:1}.soft-pill{border-radius:99px;padding:7px 10px;background:#fff2;color:#fff;font-size:9px;display:flex;align-items:center;gap:6px}.soft-pill i{width:6px;height:6px;background:#a9f4cc;border-radius:50%}.balance-note{font-size:9px;color:#dfdefb}.hero-decoration{position:absolute;border:1px solid #ffffff1c;border-radius:50%;pointer-events:none}.hero-decoration-one{width:210px;height:210px;right:-65px;top:75px}.hero-decoration-two{width:155px;height:155px;right:-35px;top:105px}.goal-card{background:#fff;border:1px solid var(--line);box-shadow:var(--shadow)}.card-topline{align-items:flex-start}.card-topline .eyebrow{color:#b0b2c0}.card-topline h2{font-size:14px;margin:0;font-weight:750}.icon-button{border:0;background:#f4f3ff;color:var(--purple);width:30px;height:30px;border-radius:10px;font-size:17px}.icon-button.light{background:#f6f5ff}.goal-amount-row{justify-content:flex-start;gap:8px;margin-top:19px}.goal-current{font-size:25px;font-weight:800;letter-spacing:-.7px}.goal-divider{color:#c2c3cf}.goal-total{font-size:13px;color:#9b9dae;font-weight:650}.progress-track{height:8px;background:#f0eff7;border-radius:8px;margin:10px 0;overflow:hidden}.progress-track span{display:block;height:100%;background:linear-gradient(90deg,#786df0,#f28a79);border-radius:8px;min-width:2px}.goal-bottom{font-size:10px;color:#9699aa}.goal-bottom b{color:var(--ink)}.goal-footnote{font-size:9px;color:#b0b1bd;margin-top:17px}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:17px 0}.stat-card{background:#fff;border:1px solid var(--line);border-radius:17px;padding:16px;display:flex;align-items:center;gap:12px;position:relative;min-width:0}.stat-icon{width:36px;height:36px;flex:none;display:grid;place-items:center;border-radius:12px;font-size:18px}.stat-icon.lavender,.wall-icon.lavender{background:var(--purple-pale);color:var(--purple)}.stat-icon.peach,.wall-icon.peach{background:var(--peach);color:#e98a5c}.stat-icon.mint,.wall-icon.mint{background:var(--mint);color:#37a173}.stat-copy{display:grid;gap:4px;min-width:0}.stat-copy span{color:#a0a2b1;font-size:9px}.stat-copy strong{font-size:18px;letter-spacing:-.5px;white-space:nowrap}.stat-copy strong em{font-size:11px;font-style:normal;margin-left:3px}.stat-copy small{font-size:9px;color:#b4b5c1;white-space:nowrap}.stat-corner{position:absolute;right:13px;top:12px;color:#c7c8d2;font-size:11px}.content-grid{display:grid;grid-template-columns:1fr .88fr;gap:17px}.panel{background:#fff;border:1px solid var(--line);border-radius:19px;padding:21px 22px;box-shadow:0 7px 23px #292b4b06}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.panel-heading h2{font-size:15px;margin:0;font-weight:780}.panel-heading .eyebrow{margin:0 0 5px}.text-button{border:0;background:transparent;color:var(--purple);font-size:10px;font-weight:700;padding:5px}.text-button span{padding-left:4px}.shift-list{margin:14px 0}.shift-row{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid #f3f3f7}.date-tile{width:39px;height:43px;border-radius:11px;background:#f5f4ff;color:var(--purple);display:flex;flex-direction:column;align-items:center;justify-content:center;flex:none}.date-tile b{font-size:16px;line-height:1.05}.date-tile small{font-size:8px;margin-top:3px}.shift-details{display:grid;gap:4px;min-width:0;flex:1}.shift-details strong{font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.shift-details small{font-size:9px;color:#aaacb8}.shift-row-pay{text-align:right;font-size:11px;font-weight:750;white-space:nowrap}.shift-row-pay small{display:block;color:#b2b3be;font-weight:500;font-size:8px;margin-top:3px}.more-button{border:0;background:none;color:#b2b4c1;letter-spacing:1px}.add-dashed{width:100%;border:1px dashed #dcdbe9;background:#fcfcff;color:var(--purple);padding:11px;border-radius:11px;font-size:10px;font-weight:700;margin-top:7px}.add-dashed:hover{background:#f6f5ff;border-color:#a7a2ef}.spending-total{display:flex;align-items:baseline;gap:9px;padding:17px 0 11px}.spending-total strong{font-size:24px;letter-spacing:-1px}.spending-total span{font-size:9px;color:#a5a7b5}.mini-expense-list{margin-bottom:11px}.mini-expense{display:flex;align-items:center;gap:10px;padding:9px 0;border-bottom:1px solid #f4f4f7}.category-dot{width:31px;height:31px;display:grid;place-items:center;border-radius:10px;font-size:14px;flex:none}.category-dot.food{background:#fff0e9}.category-dot.cafe{background:#f4edff}.category-dot.transport{background:#eaf3ff}.category-dot.hobby{background:#fff2d8}.category-dot.beauty{background:#fff0f6}.category-dot.goods{background:#e8f8ee}.category-dot.other{background:#f2f2f6}.expense-title{font-size:10px;display:grid;gap:4px;min-width:0;flex:1;font-weight:650}.expense-title small{color:#adafbc;font-size:8px;font-weight:450}.mini-expense>b{font-size:10px;white-space:nowrap}.full-width{width:100%}.empty-expense{padding:14px 0;color:#a5a7b5;font-size:10px}.empty-inline{display:flex;align-items:center;gap:12px;padding:21px 0;color:var(--coral)}.empty-inline>span{font-size:22px}.empty-inline div{display:grid;gap:5px;color:var(--ink)}.empty-inline strong{font-size:11px}.empty-inline small{font-size:9px;color:#a5a7b5}.insight-banner{margin-top:17px;border-radius:15px;background:#fff8f4;border:1px solid #ffede4;padding:15px 18px;display:flex;align-items:center;gap:14px}.insight-spark{width:30px;height:30px;border-radius:10px;background:#ffe9dc;color:#e98968;display:grid;place-items:center}.insight-banner .eyebrow{font-size:8px;margin:0;color:#c4907b}.insight-banner p{font-size:10px;margin:5px 0 0;color:#7e7480}.insight-banner p b{color:#d2684a}.insight-banner .text-button{margin-left:auto;white-space:nowrap}.app-footer{border-top:1px solid #edecf3;padding:16px 48px;display:flex;justify-content:space-between;color:#adafbb;font-size:9px}.app-footer button{border:0;background:transparent;color:#9294a4;font-size:9px}.mobile-nav{display:none}.page-heading{align-items:center;margin-bottom:24px}.page-heading h1{font-size:29px}.month-summary{background:linear-gradient(120deg,#f0efff,#fbfaff);border:1px solid #e7e5ff;border-radius:18px;padding:19px 22px;margin-bottom:16px}.month-summary-title{display:flex;align-items:center;gap:15px}.month-picker{display:inline-flex;align-items:center;gap:10px;border:1px solid #eae9f4;background:#fff;border-radius:10px;padding:4px 7px;font-size:10px;font-weight:700}.month-picker button{border:0;background:transparent;color:#777a90;font-size:17px;width:19px;height:23px}.muted-label{color:#a7a8b8;font-size:9px}.month-summary-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:18px}.month-summary-stats>div{display:grid;gap:5px}.month-summary-stats small{font-size:9px;color:#989aab}.month-summary-stats strong{font-size:21px;letter-spacing:-.6px}.month-summary-stats em{font-style:normal;font-size:11px;margin-left:3px}.table-panel{margin-top:16px}.count-pill{border-radius:99px;background:#f3f3f8;color:#999bab;font-size:9px;padding:6px 9px}.shift-table{margin:12px 0}.shift-table-row{min-height:67px;border-bottom:1px solid #f1f1f5;display:flex;align-items:center;gap:14px}.status-chip{font-size:8px;padding:5px 8px;border-radius:99px}.status-chip.done{color:#42926b;background:#e8f7ef}.status-chip.planned{color:#8978cb;background:#f0edff}.row-amount{font-size:11px;width:80px;text-align:right}.small-action{border:0;background:#f0efff;color:var(--purple);font-size:9px;padding:7px 9px;border-radius:8px}.delete-action{width:25px;height:25px;border:0;border-radius:8px;background:transparent;color:#b9bbc7;font-size:17px}.delete-action:hover{background:#fff0ef;color:#e27668}.empty-state{text-align:center;padding:42px 15px;color:#a2a4b2}.empty-art{width:45px;height:45px;border-radius:15px;margin:0 auto 12px;background:#f0efff;color:var(--purple);display:grid;place-items:center;font-size:21px}.empty-state strong{display:block;color:var(--ink);font-size:12px}.empty-state p{font-size:10px;margin:8px 0 0}.expense-overview{display:grid;grid-template-columns:.8fr 1.2fr;gap:16px}.expense-total-card{border-radius:19px;background:#6259de;color:#fff;padding:23px 22px;box-shadow:0 12px 26px #6b61e82a}.expense-total-card .eyebrow{color:#dcdafa}.expense-total-card>strong{display:block;font-size:34px;letter-spacing:-1.2px;margin:17px 0 2px}.expense-total-caption{font-size:9px;color:#e3e1ff}.expense-total-bottom{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:23px;padding-top:15px;border-top:1px solid #ffffff32;font-size:8px;color:#dfdefb}.expense-total-bottom b{color:#fff;font-size:9px;margin-right:7px}.expense-separator{opacity:.6}.green-text{color:#b4f5d1!important}.category-panel{padding:18px}.category-breakdown{display:grid;gap:12px;margin-top:17px}.category-row{display:grid;grid-template-columns:31px 54px 1fr auto;align-items:center;gap:9px;font-size:9px}.category-row .category-dot{width:28px;height:28px;font-size:12px}.category-bar{height:5px;background:#f1f1f6;border-radius:9px;overflow:hidden}.category-bar i{display:block;height:100%;background:linear-gradient(90deg,#867bf1,#f39482);border-radius:9px}.category-row>strong{font-size:9px}.expense-list{margin-top:8px}.expense-row{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid #f2f2f6}.expense-row .expense-title strong{font-size:11px}.expense-row>b{font-size:11px;white-space:nowrap}.wall-intro{display:flex;align-items:center;gap:15px;border:1px solid #e9e7ff;border-radius:17px;background:linear-gradient(105deg,#f2f1ff,#fff);padding:17px 20px;margin-bottom:17px}.wall-intro-icon{width:39px;height:39px;border-radius:13px;background:#e4e1ff;color:var(--purple);display:grid;place-items:center;font-size:19px;flex:none}.wall-intro>div:nth-child(2){flex:1}.wall-intro strong{font-size:12px}.wall-intro p{margin:5px 0 0;color:#999bab;font-size:9px}.wall-current{display:grid;text-align:right;gap:4px}.wall-current small{font-size:8px;color:#a4a5b3}.wall-current b{font-size:14px}.wall-list{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.wall-card{border:1px solid var(--line);border-radius:17px;background:#fff;padding:16px 16px 15px;box-shadow:0 6px 20px #292b4b05}.wall-card-top{display:flex;align-items:flex-start;gap:10px}.wall-icon{width:32px;height:32px;display:grid;place-items:center;border-radius:10px;flex:none;font-size:13px;font-weight:800}.wall-name{min-width:0;flex:1}.wall-tag{font-size:8px;border-radius:99px;padding:4px 7px;display:inline-block}.wall-tag.lavender{background:var(--purple-pale);color:var(--purple)}.wall-tag.peach{background:var(--peach);color:#d77b50}.wall-tag.mint{background:var(--mint);color:#32845d}.wall-name h2{font-size:11px;margin:7px 0 0;line-height:1.6}.info-button{border:1px solid #e8e8ef;background:#fff;color:#aaaaba;width:20px;height:20px;border-radius:50%;font-size:10px;flex:none}.wall-countdown{display:grid;gap:3px;margin:18px 0 12px}.wall-countdown>span{color:#a3a5b2;font-size:8px}.wall-countdown strong{font-size:22px;letter-spacing:-.6px}.wall-countdown small{font-size:8px;color:#a6a8b5}.wall-progress{height:6px;border-radius:8px;background:#f1f1f6;position:relative;margin:0 4px}.wall-progress i{height:100%;display:block;border-radius:8px}.wall-progress i.lavender{background:#786cf0}.wall-progress i.peach{background:#f0a176}.wall-progress i.mint{background:#5ab589}.wall-progress b{position:absolute;top:50%;transform:translate(-50%,-50%);width:11px;height:11px;border-radius:50%;background:#fff;border:2px solid var(--purple)}.wall-progress-labels{display:flex;justify-content:space-between;color:#a7a9b7;font-size:8px;margin:8px 0 12px}.wall-impact{display:flex;gap:7px;border-radius:10px;background:#fafafe;padding:9px 8px}.impact-bullet{color:var(--purple);font-weight:700}.wall-impact p{font-size:8px;color:#74778a;line-height:1.7;margin:0}.wall-note{font-size:8px;line-height:1.7;color:#a4a6b3;margin:10px 0 0}.work-hours-panel{margin-top:15px;display:flex;align-items:center;gap:14px}.work-hours-icon{width:35px;height:35px;display:grid;place-items:center;border-radius:11px;background:#fff2dd;color:#dc9851;font-size:19px;flex:none}.work-hours-panel>div:nth-child(2){flex:1}.work-hours-panel .eyebrow{margin-bottom:4px}.work-hours-panel h2{font-size:12px;margin:0 0 4px}.work-hours-panel p{font-size:9px;color:#777a8e;margin:0 0 5px}.work-hours-panel small{font-size:8px;color:#a4a6b3}.hours-badge{display:grid;justify-items:center;padding:10px 15px;border-radius:12px;background:#fff8e9;color:#d0914b;flex:none}.hours-badge b{font-size:17px}.hours-badge small{color:#c39b70;font-size:7px}.sources-note{margin:14px 2px;color:#999bab;font-size:9px;line-height:1.8}.sources-note>strong{color:#76798b;font-size:9px}.sources-note p{margin:4px 0 7px}.sources-note>div{display:flex;flex-wrap:wrap;gap:8px 16px}.sources-note a{color:var(--purple);font-size:8px}.sources-note>small{display:block;font-size:8px;color:#b0b2be;margin-top:5px}.settings-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:17px;align-items:start}.settings-form{padding:22px}.settings-icon{color:var(--coral);font-size:23px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px 13px;margin-top:17px}.form-grid label,.dialog-fields label{display:grid;gap:7px;font-size:9px;font-weight:700;color:#686c80}.form-grid input,.form-grid select,.dialog-fields input,.dialog-fields select{width:100%;height:42px;border:1px solid #e9e9f0;border-radius:10px;background:#fff;padding:0 12px;color:var(--ink);font-size:11px;outline:none}.form-grid input:focus,.form-grid select:focus,.dialog-fields input:focus,.dialog-fields select:focus{border-color:#8d84ee;box-shadow:0 0 0 3px #7b71e61a}.input-with-unit{position:relative}.input-with-unit input{padding-right:62px}.input-with-unit i{font-style:normal;font-size:8px;color:#a8aab7;position:absolute;right:11px;top:50%;transform:translateY(-50%);pointer-events:none}.form-separator{height:1px;background:#f0f0f4;margin:23px 0 18px}.goal-settings-heading h2{font-size:13px}.settings-save{margin-top:20px;min-width:150px}.settings-aside{display:grid;gap:13px}.privacy-card,.demo-card{background:#fff;border:1px solid var(--line);border-radius:17px;padding:19px}.privacy-card{background:#f3f2ff;border-color:#e9e7ff}.privacy-symbol{width:34px;height:34px;border-radius:11px;background:#e4e1ff;color:var(--purple);display:grid;place-items:center;font-size:19px;margin-bottom:15px}.privacy-card .eyebrow,.demo-card .eyebrow{font-size:8px}.privacy-card h2{font-size:13px;margin:0 0 8px}.privacy-card p,.demo-card p{font-size:9px;color:#85889b;line-height:1.8;margin:0}.privacy-divider{height:1px;background:#e2e0f5;margin:13px 0}.privacy-card>strong{font-size:9px;display:block;margin-bottom:5px}.privacy-card>small{font-size:8px;color:#989aab;line-height:1.8;display:block}.demo-card h3{font-size:11px;margin:0 0 6px}.demo-card p{margin-bottom:13px}.danger-button{border:0;background:transparent;color:#cb7168;text-align:left;font-size:9px;padding:8px 5px}.danger-button span{font-size:15px;margin-left:8px}.span-two{grid-column:span 2}.checkbox-label{display:flex!important;align-items:center;gap:8px!important;font-size:9px!important;color:#86899b!important;font-weight:500!important}.checkbox-label input{width:15px;height:15px;accent-color:var(--purple)}.entry-dialog{border:0;border-radius:20px;width:min(470px,calc(100% - 28px));padding:0;color:var(--ink);box-shadow:0 25px 90px #16173530}.entry-dialog::backdrop{background:#22243b77;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.entry-dialog form{padding:23px}.dialog-head{display:flex;justify-content:space-between;align-items:flex-start}.dialog-head .eyebrow{margin-bottom:4px}.dialog-head h2{font-size:18px;margin:0}.dialog-fields{margin-top:18px}.dialog-fields .form-grid{margin:0}.dialog-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:22px}.dialog-actions .button{padding:11px 15px;font-size:10px}.toast{position:fixed;left:50%;bottom:27px;transform:translate(-50%,15px);padding:11px 17px;background:#282a40;color:#fff;border-radius:11px;font-size:10px;box-shadow:0 9px 25px #20223c30;opacity:0;pointer-events:none;transition:.2s;z-index:20}.toast.show{opacity:1;transform:translate(-50%)}@media(max-width:1150px){.sidebar{width:205px;padding-left:14px;padding-right:14px}.main-area{margin-left:205px}.topbar{padding:0 30px}.view-root{padding:35px 30px 25px}.app-footer{padding-left:30px;padding-right:30px}.wall-list{grid-template-columns:1fr}.wall-card{display:grid;grid-template-columns:1fr 1fr;column-gap:18px}.wall-card-top{grid-column:span 2}.wall-countdown{margin-top:14px}.wall-progress,.wall-progress-labels,.wall-impact,.wall-note{grid-column:span 2}.wall-progress{margin-top:10px}.wall-impact{margin-top:3px}}@media(max-width:820px){.sidebar{display:none}.main-area{margin-left:0}.topbar{height:60px;padding:0 20px}.topbar-mobile-brand{display:flex;font-size:19px}.topbar-mobile-brand .brand-mark{width:29px;height:29px;border-radius:10px;font-size:18px}.topbar-context{display:none}.view-root{padding:28px 20px 30px;max-width:700px}.app-footer{padding:15px 20px 88px}.mobile-nav{position:fixed;z-index:10;left:0;right:0;bottom:0;display:grid;grid-template-columns:repeat(4,1fr);padding:8px 8px max(8px,env(safe-area-inset-bottom));background:#ffffffed;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-top:1px solid #eeeef4}.mobile-nav-item{border:0;background:transparent;color:#a3a5b3;display:grid;justify-items:center;gap:3px;padding:4px 0}.mobile-nav-item span{font-size:18px;line-height:20px}.mobile-nav-item small{font-size:8px;font-weight:600}.mobile-nav-item.active{color:var(--purple)}.mobile-nav-item.active span{transform:translateY(-1px)}.content-grid,.hero-grid{grid-template-columns:1fr 1fr}.welcome-row h1,.page-heading h1{font-size:26px}.balance-card,.goal-card{padding:21px;min-height:210px}.balance-number{font-size:36px}.stats-grid{gap:9px}.stat-card{padding:13px;gap:9px}.stat-icon{width:31px;height:31px}.stat-copy strong{font-size:15px}.stat-copy small{font-size:8px}.expense-overview{grid-template-columns:1fr 1.2fr}.settings-grid{grid-template-columns:1.1fr .9fr}}@media(max-width:600px){body{font-size:13px}.topbar{padding:0 16px}.view-root{padding:22px 15px 23px}.welcome-row,.page-heading{align-items:flex-start;flex-direction:column;margin-bottom:19px;gap:14px}.welcome-row h1,.page-heading h1{font-size:23px;line-height:1.45}.welcome-sub,.page-heading p{font-size:10px}.welcome-row .button,.page-heading>.button{width:100%;padding:13px}.hero-grid{grid-template-columns:1fr;gap:11px}.balance-card,.goal-card{min-height:0;border-radius:18px;padding:19px}.balance-number{font-size:38px;margin:10px 0 6px}.balance-card-bottom{margin-top:17px}.goal-card{padding:18px}.goal-amount-row{margin-top:14px}.goal-footnote{margin-top:12px}.stats-grid{grid-template-columns:1fr 1fr;gap:8px;margin:12px 0}.stat-card{border-radius:14px;padding:11px;gap:8px}.stat-card:last-child{grid-column:auto}.stat-copy span{font-size:8px}.stat-copy strong{font-size:15px}.stat-copy small{font-size:8px}.content-grid{grid-template-columns:1fr;gap:11px}.panel{padding:17px;border-radius:16px}.panel-heading h2{font-size:13px}.insight-banner{align-items:flex-start;padding:13px;gap:10px}.insight-banner p{font-size:9px;line-height:1.7}.insight-banner .text-button{font-size:8px;padding:4px 0}.app-footer{padding:12px 15px 90px;font-size:8px;gap:12px}.app-footer button{font-size:8px}.topbar-actions{gap:9px}.demo-pill{font-size:8px;padding:5px 8px}.page-heading{gap:12px}.month-summary{padding:15px;border-radius:15px}.month-summary-stats{gap:8px;margin-top:14px}.month-summary-stats strong{font-size:16px}.month-summary-stats small{font-size:8px}.month-summary-title{gap:8px;justify-content:space-between}.muted-label{font-size:8px}.table-panel{padding:15px}.shift-table-row{gap:8px;min-height:63px}.shift-table-row .shift-details small{font-size:8px}.row-amount{width:auto;font-size:9px}.status-chip{padding:4px 6px;font-size:7px}.small-action{padding:6px;font-size:8px}.delete-action{flex:none}.expense-overview{grid-template-columns:1fr;gap:10px}.expense-total-card{padding:18px}.expense-total-card>strong{font-size:29px;margin:13px 0 1px}.expense-total-bottom{margin-top:16px;padding-top:12px}.category-panel{padding:15px}.category-row{grid-template-columns:29px 44px 1fr auto;gap:7px}.wall-intro{padding:14px;gap:10px;align-items:flex-start}.wall-intro-icon{width:32px;height:32px;font-size:16px}.wall-intro strong{font-size:10px}.wall-intro p{font-size:8px;line-height:1.6}.wall-current{display:none}.wall-list{gap:10px}.wall-card{padding:14px;grid-template-columns:1fr}.wall-card-top,.wall-progress,.wall-progress-labels,.wall-impact,.wall-note{grid-column:auto}.wall-name h2{font-size:11px}.wall-countdown{margin:13px 0 10px}.wall-countdown strong{font-size:21px}.wall-impact{margin-top:2px}.work-hours-panel{align-items:flex-start;padding:14px;gap:10px}.work-hours-panel h2{font-size:10px}.work-hours-panel p{font-size:8px;line-height:1.6}.work-hours-panel small{font-size:7px;line-height:1.6;display:block}.hours-badge{padding:7px 9px}.hours-badge b{font-size:14px}.hours-badge small{font-size:6px}.sources-note>div{display:grid;gap:5px}.settings-grid{grid-template-columns:1fr}.settings-form{padding:17px}.form-grid{gap:13px 9px}.form-grid label{font-size:8px}.form-grid input,.form-grid select{height:40px;font-size:10px;padding:0 9px}.input-with-unit i{font-size:7px;right:7px}.privacy-card,.demo-card{padding:16px}.shift-details strong{font-size:10px}.shift-details small{font-size:8px}.shift-row-pay{font-size:10px}.entry-dialog form{padding:19px}.dialog-head h2{font-size:16px}.dialog-actions{display:grid;grid-template-columns:1fr 1fr}.toast{bottom:82px;max-width:calc(100vw - 36px);width:max-content}}@media(max-width:820px){.mobile-nav{grid-template-columns:repeat(5,minmax(0,1fr))}}.settings-help{margin:7px 0 0;color:#999bab;font-size:9px;line-height:1.7}.big-goal-card{margin:16px 0 17px;padding:21px 23px;background:linear-gradient(125deg,#fff,#f5f4ff);border:1px solid #e8e6ff;border-radius:19px;box-shadow:0 8px 24px #39366d08}.big-goal-header{display:flex;justify-content:space-between;align-items:flex-start;gap:18px}.big-goal-header .eyebrow{color:#8e84dc;margin-bottom:5px}.big-goal-header h2{font-size:16px;margin:0}.big-goal-header p{font-size:9px;color:#999bab;margin:5px 0 0}.big-goal-header .button{font-size:9px;padding:9px 12px}.big-goal-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:14px;margin:20px 0 15px}.big-goal-grid>div{display:grid;align-content:start;gap:5px;padding:12px 13px;background:#fff;border:1px solid #efedf8;border-radius:12px;min-width:0}.big-goal-grid span{font-size:8px;color:#999bab}.big-goal-grid strong{font-size:20px;letter-spacing:-.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.big-goal-grid small{font-size:8px;color:#a5a6b4;font-weight:500;letter-spacing:0}.big-goal-monthly strong{color:#645bd9}.big-goal-monthly strong small{font-size:10px;color:#837dd7}.big-goal-pace strong{font-size:16px}.big-goal-progress .progress-track{margin:0 0 8px}.big-goal-progress .progress-track span{background:linear-gradient(90deg,#685fe1,#a99df8)}.big-goal-progress>div:last-child{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;color:#999bab;font-size:8px}.big-goal-progress>div:last-child span:last-child{text-align:right;color:#777a90}.big-goal-forecast{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:13px;padding-top:12px;border-top:1px solid #eae8f5;color:#85889b;font-size:9px;line-height:1.6}.big-goal-forecast .text-button{white-space:nowrap;font-size:9px}@media(max-width:600px){.big-goal-card{padding:16px;margin:12px 0}.big-goal-header{gap:9px}.big-goal-header h2{font-size:14px}.big-goal-header p{font-size:8px}.big-goal-header .button{font-size:8px;padding:8px 9px}.big-goal-grid{grid-template-columns:1fr 1fr;gap:8px;margin:14px 0 12px}.big-goal-grid>div{padding:10px}.big-goal-grid>div:first-child{grid-column:span 2}.big-goal-grid strong{font-size:17px}.big-goal-grid small{font-size:7px}.big-goal-progress>div:last-child{font-size:7px}.big-goal-forecast{align-items:flex-start;font-size:8px}.big-goal-forecast .text-button{font-size:8px;padding:2px 0}}.goal-mascot{display:flex;align-items:center;gap:9px;min-height:70px;margin:10px 0 0;padding:4px 10px;border:1px solid #eeecfa;border-radius:12px;background:linear-gradient(110deg,#fff 12%,#faf9ff);overflow:hidden}.goal-mascot img{width:52px;height:66px;flex:none;object-fit:contain;object-position:center bottom;animation:mascot-arrive .25s ease-out}.goal-mascot>div{min-width:0}.goal-mascot>div>span{display:block;margin-bottom:3px;color:#a29bcf;font-size:7px;font-weight:800;letter-spacing:1.1px}.goal-mascot strong{display:block;color:#5148ce;font-size:11px}.goal-mascot p{margin:2px 0 0;color:#85889b;font-size:8px;line-height:1.6}.goal-mascot.mood-1{background:linear-gradient(110deg,#fff 10%,#f8f5f7)}.goal-mascot.mood-2{background:linear-gradient(110deg,#fff 10%,#faf7f8)}.goal-mascot.mood-4{background:linear-gradient(110deg,#fff 10%,#f4fbf8);border-color:#e3f2eb}.goal-mascot.mood-5{background:linear-gradient(110deg,#fff 10%,#fff9ef);border-color:#faebd1}.goal-mascot.mood-5 strong{color:#bf8242}@keyframes mascot-arrive{0%{opacity:.6;transform:translateY(5px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.savings-chart-card{margin:14px 0 17px;padding:20px 22px;background:#fff;border:1px solid #ecebf4;border-radius:18px;box-shadow:0 8px 24px #39366d08}.savings-chart-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.savings-chart-heading .eyebrow{color:#8e84dc;margin-bottom:5px}.savings-chart-heading h2{font-size:15px;margin:0}.savings-chart-heading p{font-size:9px;color:#999bab;margin:5px 0 0}.savings-chart-heading>strong{font-size:19px;letter-spacing:-.4px;white-space:nowrap}.savings-chart-heading>strong small{font-size:9px;color:#999bab;font-weight:500}.savings-chart-legend{display:flex;gap:15px;margin:17px 0 1px;color:#85889b;font-size:8px}.savings-chart-legend span{display:flex;align-items:center;gap:6px}.savings-chart-legend i{display:inline-block;width:17px;height:3px;border-radius:9px;background:#6b61e8}.savings-chart-legend .legend-goal{height:0;border-top:2px dashed #ff987c;background:none}.savings-chart-svg{display:block;width:100%;height:auto;overflow:visible}.chart-grid line{stroke:#efeff5;stroke-width:1}.chart-grid text,.chart-date text{fill:#a0a2b0;font-family:inherit;font-size:10px}.chart-axis,.chart-date line{stroke:#dedee9;stroke-width:1}.chart-actual-line{fill:none;stroke:#6b61e8;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.chart-goal-line{fill:none;stroke:#ff987c;stroke-width:2;stroke-dasharray:6 5}.chart-current-dot{fill:#fff;stroke:#6b61e8;stroke-width:3}.savings-chart-empty{display:grid;place-items:center;min-height:100px;margin-top:12px;padding:15px;border:1px dashed #e8e6f2;border-radius:12px;color:#999bab;font-size:9px;text-align:center;line-height:1.7}@media(max-width:600px){.savings-chart-card{margin:11px 0 13px;padding:15px 13px;border-radius:15px}.savings-chart-heading h2{font-size:13px}.savings-chart-heading p{font-size:8px}.savings-chart-heading>strong{font-size:15px}.savings-chart-heading>strong small{font-size:8px}.savings-chart-legend{gap:11px;margin-top:13px;font-size:7px}.chart-grid text,.chart-date text{font-size:9px}}.savings-chart-scroll{width:100%;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:#d8d5f5 transparent}.chart-marker-group{cursor:crosshair;outline:none}.chart-data-marker{fill:#fff;stroke:#6b61e8;stroke-width:2}.chart-marker-group:hover .chart-data-marker,.chart-marker-group:focus .chart-data-marker{fill:#6b61e8;stroke:#fff;stroke-width:2.5;r:5px}.chart-point-tooltip{opacity:0;visibility:hidden;pointer-events:none;transition:opacity .12s ease}.chart-marker-group:hover .chart-point-tooltip,.chart-marker-group:focus .chart-point-tooltip{opacity:1;visibility:visible}.chart-point-tooltip rect{fill:#282a40;stroke:#ffffff30;stroke-width:1;filter:drop-shadow(0 4px 8px #1e1f3a30)}.chart-point-tooltip text{fill:#fff;font-family:inherit;font-size:8px}.chart-point-tooltip .tooltip-date{font-size:9px;font-weight:800;fill:#d8d4ff}.analysis-heading{align-items:center}.analysis-heading .month-picker{flex:none}.analysis-calendar-card{margin:14px 0 18px;padding:20px 22px;background:#fff;border:1px solid #ecebf4;border-radius:18px;box-shadow:0 8px 24px #39366d08}.analysis-calendar-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:15px}.analysis-calendar-heading .eyebrow{color:#8e84dc;margin-bottom:5px}.analysis-calendar-heading h2{font-size:15px;margin:0}.analysis-calendar-heading p{font-size:9px;color:#999bab;margin:5px 0 0}.analysis-calendar-scroll{width:100%;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:#d8d5f5 transparent}.analysis-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;min-width:700px}.analysis-calendar-weekday{height:25px;text-align:center;color:#9395a6;font-size:9px;font-weight:750}.analysis-calendar-weekday.is-sunday{color:#d98686}.analysis-calendar-weekday.is-saturday{color:#788bc2}.analysis-day-cell{min-width:0;min-height:88px;padding:7px 8px;border:1px solid #efeff5;border-radius:10px;background:#fff;display:flex;flex-direction:column;align-items:flex-start;gap:4px}.analysis-day-cell.has-activity{background:#fcfbff;border-color:#eae8f7}.analysis-day-cell.is-today{border-color:#9c94ed;box-shadow:0 0 0 2px #6b61e814}.analysis-calendar-blank{min-height:88px}.analysis-day-number{width:22px;height:22px;display:grid;place-items:center;border-radius:8px;color:#6f7287;font-size:9px;font-weight:750}.analysis-day-cell.is-today .analysis-day-number{background:#6b61e8;color:#fff}.calendar-income,.calendar-expense,.calendar-shift,.calendar-planned{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:8px;line-height:1.35}.calendar-income{color:#278a60}.calendar-expense{color:#dc776d}.calendar-shift{color:#6b61e8}.calendar-planned{color:#85889b}.analysis-calendar-legend{display:flex;gap:14px;margin-top:13px;color:#85889b;font-size:8px}.analysis-calendar-legend span{display:flex;align-items:center;gap:5px}.analysis-calendar-legend i{display:inline-block;width:7px;height:7px;border-radius:50%}.calendar-income-dot{background:#4dab80}.calendar-expense-dot{background:#e48176}.calendar-shift-dot{background:#8279e7}@media(max-width:600px){.analysis-heading{align-items:flex-start}.analysis-calendar-card{margin:11px 0 14px;padding:15px 13px;border-radius:15px}.analysis-calendar-heading h2{font-size:13px}.analysis-calendar-heading p{font-size:8px}.analysis-calendar-grid{min-width:660px;gap:5px}.analysis-day-cell,.analysis-calendar-blank{min-height:78px}.analysis-day-cell{padding:6px}.analysis-calendar-legend{font-size:7px}}.annual-goal-card{margin-top:10px}.annual-goal-card .savings-chart-heading>button{font-size:9px;padding:9px 12px}.annual-chart-empty-note{margin:0 0 2px;color:#999bab;font-size:8px;line-height:1.6}.chart-target-marker{fill:#fff;stroke:#ff987c;stroke-width:2}.chart-marker-group:hover .chart-target-marker,.chart-marker-group:focus .chart-target-marker{fill:#ff987c;stroke:#fff;stroke-width:2.5;r:5px}.annual-goal-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:14px 0 4px}.annual-goal-summary>div{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:10px 12px;border-radius:11px;background:#f8f7fd}.annual-goal-summary span{font-size:8px;color:#85889b}.annual-goal-summary strong{font-size:12px;color:#282a40}.annual-goal-summary p{grid-column:1/-1;margin:0;padding:10px 12px;border-radius:11px;background:#fff6f2;color:#9b6b5d;font-size:9px;line-height:1.6}@media(max-width:600px){.annual-goal-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.annual-goal-summary>div{display:block;padding:9px}.annual-goal-summary span,.annual-goal-summary strong{display:block}.annual-goal-summary strong{margin-top:4px;font-size:11px}.annual-goal-summary p{font-size:8px}}.chart-gross-line{fill:none;stroke:#36a786;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}.chart-takehome-line{fill:none;stroke:#a177df;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}.chart-gross-marker{fill:#fff;stroke:#36a786;stroke-width:2}.chart-takehome-marker{fill:#fff;stroke:#a177df;stroke-width:2}.chart-marker-group:hover .chart-gross-marker,.chart-marker-group:focus .chart-gross-marker{fill:#36a786;stroke:#fff;stroke-width:2.5;r:5px}.chart-marker-group:hover .chart-takehome-marker,.chart-marker-group:focus .chart-takehome-marker{fill:#a177df;stroke:#fff;stroke-width:2.5;r:5px}.savings-chart-legend .legend-gross{background:#36a786}.savings-chart-legend .legend-takehome{background:#a177df}.savings-chart-legend{flex-wrap:wrap}.annual-chart-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:14px 0 3px}.annual-range-control,.annual-year-control{display:flex;align-items:center;gap:5px}.annual-range-control>span{margin-right:4px;color:#85889b;font-size:8px}.annual-range-option,.annual-year-control button{min-height:29px;padding:5px 9px;border:1px solid #ecebf4;border-radius:8px;background:#fff;color:#77798f;font:inherit;font-size:8px;cursor:pointer}.annual-range-option.active{border-color:#d9d5ff;background:#f1efff;color:#645bd9;font-weight:750}.annual-year-control{gap:9px}.annual-year-control button{width:29px;padding:0;font-size:15px;color:#665de0}.annual-year-control strong{min-width:92px;text-align:center;color:#55576d;font-size:9px}@media(max-width:600px){.annual-chart-controls{align-items:flex-start;flex-direction:column;gap:9px}.annual-range-control{width:100%;justify-content:space-between;gap:4px}.annual-range-control>span{margin-right:auto}.annual-range-option{padding:5px 8px}.annual-year-control{align-self:flex-end}}.monthly-chart-controls{justify-content:flex-end;margin-top:11px}.demo-welcome-dialog{position:relative;display:none;width:min(92vw,650px);max-width:none;max-height:88vh;padding:28px;border:1px solid #e8e6f4;border-radius:22px;background:linear-gradient(135deg,#fff 20%,#f8f6ff);color:#25273d;box-shadow:0 24px 90px #28204435;overflow:visible}.demo-welcome-dialog[open]{display:flex;align-items:center;gap:18px}.demo-welcome-dialog::backdrop{background:#25243b88;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.demo-welcome-close{position:absolute;top:12px;right:12px;z-index:1;width:34px;height:34px;border:0;border-radius:50%;background:#f0eff8;color:#77798f;font-size:22px;line-height:1;cursor:pointer}.demo-welcome-art{flex:0 0 190px;display:grid;place-items:center;align-self:stretch;min-height:250px}.demo-welcome-art img{display:block;width:100%;max-height:310px;object-fit:contain}.demo-welcome-copy{padding:12px 14px 12px 0}.demo-welcome-copy .eyebrow{color:#8177df;font-size:9px;letter-spacing:1.1px}.demo-welcome-copy h2{margin:8px 0 12px;font-size:20px;line-height:1.45}.demo-welcome-copy p{margin:0 0 12px;color:#77798d;font-size:12px;line-height:1.8}.demo-welcome-copy p b{color:#373950}.demo-welcome-copy small{color:#a0a1b0;font-size:10px}@media(max-width:600px){.demo-welcome-dialog{width:min(92vw,420px);padding:26px 20px 22px}.demo-welcome-dialog[open]{flex-direction:column;gap:4px}.demo-welcome-art{flex:0 0 auto;min-height:0;height:142px;margin-top:5px}.demo-welcome-art img{height:150px;width:150px}.demo-welcome-copy{padding:0 4px 3px}.demo-welcome-copy h2{font-size:17px}.demo-welcome-copy p{font-size:11px}}.demo-welcome-dialog[open]{flex-direction:row-reverse}@media(max-width:600px){.demo-welcome-dialog[open]{flex-direction:column-reverse}}.sample-delete-button{margin-top:8px}.react-view{display:contents}.local-mode-banner{margin:0 48px;padding:9px 13px;background:#fff8e8;border:1px solid #f2e4bb;border-radius:10px;color:#8c7446;font-size:10px}.clerk-user-button{display:grid;place-items:center;margin-left:2px}.auth-screen{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;padding:24px;background:radial-gradient(ellipse at 50% 0,#eeedff 0,transparent 58%),var(--wash)}.auth-brand{display:flex;align-items:center;gap:10px;font-size:22px;font-weight:850;letter-spacing:-1px}.auth-card{width:min(440px,100%);padding:28px;border:1px solid #ecebf4;border-radius:20px;background:#fff;box-shadow:0 14px 45px #29274d0c}.auth-card .eyebrow{color:var(--purple);margin-bottom:9px}.auth-card h1{margin:0;font-size:24px;line-height:1.55;letter-spacing:-.7px}.auth-card>p{margin:8px 0 22px;color:var(--muted);font-size:12px;line-height:1.8}.auth-card .cl-rootBox,.auth-card .cl-cardBox{width:100%;max-width:none}.auth-card .cl-cardBox{padding:0;border:0;box-shadow:none}.auth-card>small{display:block;margin-top:14px;text-align:center;color:#999bab;font-size:9px}.auth-privacy-note{color:#9295a6;font-size:10px}.auth-loading-card{display:flex;flex-direction:column;align-items:center;gap:10px;padding:28px 36px;border:1px solid #ecebf4;border-radius:18px;background:#fff;color:#6e7187}.auth-loading-card p{margin:2px 0 0;font-size:11px}@media(max-width:600px){.local-mode-banner{margin:0 15px;font-size:8px}.auth-card{padding:22px 18px;border-radius:17px}.auth-card h1{font-size:21px}}
