@import "https://fonts.googleapis.com/css2?family=Nunito:wght@400;500;600;700;800&display=swap";:root{--orange:#e87722;--cream:#fff8f0;--brown:#6b3f1a;--text:#2c1810;--text-muted:#8b6555;--surface:#fff;--border:#6b3f1a1f;--green:#3b8c4a;--red:#c0392b}*,:before,:after{box-sizing:border-box}html,body{max-width:100vw;height:100%;margin:0;padding:0;overflow-x:hidden}body{color:var(--text);background-color:#f0e8d8;justify-content:center;align-items:center;font-family:Nunito,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;display:flex}#root{justify-content:center;align-items:center;width:100%;max-width:100vw;height:100%;display:flex;overflow-x:hidden}.app-root{box-sizing:border-box;justify-content:center;align-items:center;width:100%;max-width:100vw;padding:24px;display:flex;overflow-x:hidden}.phone-shell{background:radial-gradient(circle at top, #ffe3c4 0, var(--cream) 60%);border:1px solid #fffc;border-radius:44px;justify-content:center;align-items:stretch;width:100%;min-width:0;max-width:390px;height:780px;margin-left:auto;margin-right:auto;padding:14px;display:flex;position:relative;box-shadow:0 26px 60px #00000038,0 6px 16px #0000001f}.phone-inner{background:linear-gradient(#fffaf3 0%,#fff8f0 30%,#fdf3e5 100%);border-radius:34px;flex-direction:column;width:100%;min-width:0;max-width:100%;padding:16px 18px 12px;display:flex;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #fffc,0 18px 40px #0000000f}.phone-header{justify-content:space-between;align-items:center;padding-bottom:8px;display:flex}.header-left{align-items:center;gap:10px;display:flex}.header-avatar{background:#e877221f;border-radius:20px;justify-content:center;align-items:center;width:40px;height:40px;display:flex;overflow:hidden;box-shadow:0 8px 16px #e877224d}.header-avatar img{-o-object-fit:contain;object-fit:contain;width:36px;height:36px}.header-text h1{letter-spacing:.02em;color:var(--brown);margin:0;font-size:17px;font-weight:800}.header-text p{color:var(--text-muted);margin:2px 0 0;font-size:11px;font-weight:500}.header-actions{align-items:center;gap:6px;display:flex}.header-pill{color:var(--text-muted);background:#ffffffe6;border:1px solid #e8772229;border-radius:999px;align-items:center;gap:6px;padding:6px 10px;font-size:10px;display:inline-flex;box-shadow:0 6px 14px #00000014}.header-pill .dot{background:radial-gradient(circle at 30% 30%, #fff, var(--green));border-radius:999px;width:7px;height:7px;box-shadow:0 0 0 2px #3b8c4a40}.header-gear{cursor:pointer;background:#fffffff2;border:none;border-radius:999px;justify-content:center;align-items:center;width:28px;height:28px;font-size:16px;display:flex;box-shadow:0 4px 10px #0000001f}.header-simple{width:100%}.header-page-title{color:var(--brown);margin:0;font-size:16px;font-weight:700}.phone-content{flex:1;max-width:100%;min-height:0;margin-top:8px;margin-bottom:10px;overflow:hidden auto}.page{min-height:min-content;padding-bottom:8px}.card{background-color:var(--surface);border:1px solid var(--border);border-radius:20px;padding:14px 16px;box-shadow:0 14px 30px #0000000d,0 2px 6px #0000000a}.pill{color:var(--orange);background:#e8772214;border-radius:999px;align-items:center;gap:6px;padding:6px 9px;font-size:10px;display:inline-flex}.pill-dot{background:var(--orange);border-radius:999px;width:7px;height:7px}.btn{cursor:pointer;border:none;border-radius:16px;outline:none;justify-content:center;align-items:center;gap:6px;padding:11px 14px;font-family:inherit;font-size:14px;transition:transform .1s,box-shadow .1s,background-color .15s,color .15s,border-color .15s;display:inline-flex}.btn-primary{background:linear-gradient(135deg, #f39b4a 0%, var(--orange) 36%, #c65a0f 100%);color:#fff;box-shadow:0 18px 38px #e8772280,0 4px 10px #00000029}.btn-primary:active{transform:translateY(1px);box-shadow:0 10px 20px #e8772266,0 2px 6px #0000002e}.btn-outline{color:var(--brown);background-color:#fff8f0e6;border:1px solid #6b3f1a29;box-shadow:0 8px 16px #0000000a}.btn-outline:active{transform:translateY(1px);box-shadow:0 4px 10px #00000014}.chip{color:var(--text-muted);background-color:#fff8f0f2;border:1px solid #e877223d;border-radius:999px;align-items:center;gap:6px;padding:4px 9px;font-size:11px;display:inline-flex}.chip-emoji{font-size:14px}.badge-soft{color:var(--orange);background:#e877220f;border:1px dashed #e8772240;border-radius:999px;justify-content:center;align-items:center;padding:6px 8px;font-size:11px;display:inline-flex}@media (width<=430px){body{align-items:flex-start}.app-root{align-items:flex-start;padding:0}.phone-shell{width:100vw;height:100dvh;box-shadow:none;border:none;border-radius:0;padding:0}.phone-inner{padding:16px 18px 12px;padding-top:max(env(safe-area-inset-top), 44px);border-radius:0}}.login-page{justify-content:center;align-items:center;display:flex}.login-shell{flex-direction:column;align-items:stretch;gap:16px;padding:22px 4px 10px;display:flex}.login-skippy{justify-content:center;display:flex}.login-skippy-circle{background:radial-gradient(circle at 30% 0,#ffe9c9 0%,#fbd39b 35%,#f7b571 80%);border-radius:999px;justify-content:center;align-items:center;width:132px;height:132px;padding-top:8px;display:flex;box-shadow:0 24px 50px #e877228c,0 6px 16px #0000003d}.login-skippy-circle img{-o-object-fit:contain;object-fit:contain;width:112px;height:112px}.login-header{text-align:center;padding:0 4px}.login-header h2{letter-spacing:.03em;color:var(--brown);margin:0;font-size:24px;font-weight:800}.login-header p{color:var(--text-muted);margin:8px 0 0;font-size:13px;line-height:1.4}.login-form{flex-direction:column;gap:10px;margin-top:4px;display:flex}.login-field{flex-direction:column;gap:5px;display:flex}.login-label{letter-spacing:.09em;text-transform:uppercase;color:var(--text-muted);font-size:11px;font-weight:600}.login-field input{color:var(--text);background-color:#fffffff2;border:1px solid #6b3f1a2e;border-radius:14px;padding:10px 12px;font-family:inherit;font-size:13px;box-shadow:0 10px 22px #0000000f,0 2px 6px #0000000a}.login-field input::placeholder{color:#8b65558c}.login-field input:focus{border-color:#e87722bf;outline:none;box-shadow:0 0 0 1px #ffffffe6,0 0 0 3px #e8772238,0 10px 24px #00000014}.login-submit{width:100%;margin-top:6px}.login-divider{background:var(--border);height:1px;margin:4px 0 8px}.login-switch{text-align:center;color:var(--text-muted);margin:0;font-size:12px}.login-link{font-size:inherit;color:var(--orange);cursor:pointer;background:0 0;border:none;padding:0;font-weight:600}.home-page{flex-direction:column;gap:12px;display:flex}.home-page--setup{justify-content:center;min-height:min-content}.home-setup-card{text-align:center;flex-direction:column;align-items:center;gap:14px;padding:28px 20px 24px;display:flex}.home-setup-skippy{background:radial-gradient(circle at 30% 20%,#ffe9c9 0%,#f7b571 100%);border-radius:50%;justify-content:center;align-items:center;width:112px;height:112px;display:flex;box-shadow:0 12px 32px #e8772259}.home-setup-skippy img{-o-object-fit:contain;object-fit:contain;width:96px;height:96px}.home-setup-title{color:var(--brown);margin:0;font-size:20px;font-weight:800}.home-setup-msg{color:var(--text);max-width:280px;margin:0;font-size:15px;line-height:1.45}.home-setup-btn{width:100%;max-width:280px;margin-top:4px;padding:14px 20px;font-size:16px;font-weight:800}.home-hero{align-items:flex-start;gap:12px;display:flex}.home-skippy{background:radial-gradient(circle at 30% 20%,#ffe9c9 0%,#f7b571 40%,#f0a24f 100%);border-radius:50%;flex:none;justify-content:center;align-items:center;width:96px;height:96px;display:flex;overflow:hidden;box-shadow:0 6px 20px #e8772259}.home-skippy img{-o-object-fit:contain;object-fit:contain;width:88px;height:88px}.home-bubble{background:var(--surface);border:1px solid var(--border);border-radius:16px;flex:1;padding:14px 16px;box-shadow:0 4px 16px #0000000f}.home-bubble p{color:var(--text);margin:0;font-size:14px;line-height:1.45}.home-bubble strong{color:var(--brown)}.home-balance{padding:14px 16px}.home-balance-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin:0 0 8px;font-size:12px;font-weight:600}.home-balance-row{color:var(--text);justify-content:space-between;align-items:center;padding:6px 0;font-size:14px;display:flex}.home-balance-row strong{color:var(--brown);font-weight:700}.home-balance-row--already{align-items:center}.home-balance-already{align-items:center;gap:6px;display:flex}.home-balance-edit-btn{cursor:pointer;opacity:.85;background:0 0;border:none;padding:2px 4px;font-size:14px;line-height:1}.home-balance-edit-btn:hover{opacity:1}.home-balance-inline-input{border:1px solid var(--border);width:100px;color:var(--brown);border-radius:8px;padding:4px 8px;font-size:14px;font-weight:700}.home-section h3{color:var(--brown);margin:0 0 10px;font-size:14px;font-weight:700}.home-categories{flex-direction:column;gap:8px;display:flex}.home-category-row{flex-direction:column;gap:4px;display:flex}.home-category-row--tappable{cursor:pointer;text-align:left;background:#ffffff73;border:1px solid #0000;border-radius:12px;width:100%;margin:0;padding:10px 10px 8px;transition:background .15s,border-color .15s,transform 80ms}.home-category-row--tappable:hover{background:#e8772214;border-color:#e8772240}.home-category-row--tappable:active{transform:scale(.99)}.home-category-top{justify-content:space-between;align-items:center;font-size:12px;display:flex}.home-category-name{color:var(--text);font-weight:600}.home-category-amount-wrap{align-items:center;gap:8px;display:flex}.home-category-amount{color:var(--text-muted)}.home-category-add-hint{color:var(--orange);opacity:.85;font-size:16px;font-weight:700;line-height:1}.home-expense-mode-group{margin-top:4px}.home-expense-mode-options{flex-direction:column;gap:8px;margin-top:6px;display:flex}.home-expense-mode-option{cursor:pointer;align-items:center;gap:8px;font-size:13px;display:flex}.home-expense-mode-option input{accent-color:var(--orange)}.home-sheet-savings-hint{color:var(--brown);background:#e877221a;border-radius:10px;margin:0;padding:8px 10px;font-size:12px;line-height:1.4}.home-category-bar{background:#6b3f1a14;border-radius:999px;height:6px;overflow:hidden}.home-category-fill{border-radius:inherit;height:100%}.home-add-expense{justify-content:center;width:100%;margin-top:4px}.home-add-expense:disabled{opacity:.55;cursor:not-allowed}.home-category-empty{color:var(--text-muted);text-align:center;margin:0;padding:12px 0;font-size:13px}.home-sheet-backdrop{z-index:100;background:#0006;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.home-sheet{background:var(--cream);border-radius:24px 24px 0 0;width:100%;max-width:390px;padding:20px 18px 28px;box-shadow:0 -8px 32px #00000026}.home-sheet-title{color:var(--brown);margin:0 0 16px;font-size:18px;font-weight:700}.home-sheet-toggle{color:var(--brown);cursor:pointer;align-items:center;gap:10px;font-size:13px;font-weight:600;display:flex}.home-sheet-toggle input{width:18px;height:18px;accent-color:var(--orange)}.home-sheet-field{flex-direction:column;gap:6px;margin-bottom:14px;display:flex}.home-sheet-label{color:var(--text-muted);font-size:12px;font-weight:600}.home-sheet-amount{border:1px solid var(--border);color:var(--brown);border-radius:14px;padding:12px 14px;font-family:inherit;font-size:24px;font-weight:700}.home-sheet-select,.home-sheet-input{border:1px solid var(--border);color:var(--text);border-radius:14px;padding:10px 12px;font-family:inherit;font-size:14px}.home-sheet-actions{gap:10px;margin-top:20px;display:flex}.home-sheet-actions .btn{flex:1}.home-toast{background:var(--green);color:#fff;z-index:200;border-radius:999px;padding:12px 20px;font-size:14px;font-weight:700;animation:.25s home-toast-in;position:fixed;bottom:100px;left:50%;transform:translate(-50%);box-shadow:0 8px 24px #3b8c4a66}@keyframes home-toast-in{0%{opacity:0;transform:translate(-50%)translateY(10px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.home-expenses-history h3{margin:0 0 10px}.home-expense-filters{gap:6px;margin-bottom:10px;display:flex}.home-expense-filter-btn{border:1px solid var(--border);background:var(--surface);color:var(--text-muted);cursor:pointer;border-radius:999px;padding:6px 12px;font-family:inherit;font-size:12px;transition:background .15s,color .15s,border-color .15s}.home-expense-filter-btn--active{color:var(--orange);background:#e877221f;border-color:#e877224d}.home-expenses-empty{color:var(--text-muted);text-align:center;margin:0;padding:16px 0;font-size:13px}.home-expenses-list{flex-direction:column;gap:0;display:flex}.home-expense-row{border-bottom:1px solid var(--border);align-items:center;gap:8px;padding:10px 0;display:flex}.home-expense-row:last-child{border-bottom:none}.home-expense-emoji{flex-shrink:0;font-size:18px}.home-expense-note{min-width:0;color:var(--text);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:13px;overflow:hidden}.home-expense-date{color:var(--text-muted);flex-shrink:0;font-size:11px}.home-expense-amount{color:var(--red);flex-shrink:0;font-size:13px;font-weight:700}.plan-page{flex-direction:column;gap:12px;display:flex}.plan-empty-hint{color:var(--text-muted);margin:0 0 8px;font-size:13px}.plan-income{padding:14px 16px}.plan-income-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;margin:0 0 4px;font-size:11px;font-weight:600}.plan-income-value{color:var(--brown);margin:0;font-size:24px;font-weight:800}.plan-income-row{justify-content:space-between;align-items:center;gap:10px;display:flex}.plan-income-edit{color:#ff9800;cursor:pointer;background:#e877221f;border:none;border-radius:999px;justify-content:center;align-items:center;width:34px;height:34px;font-size:16px;display:flex}.plan-income-edit:hover{background:#e877222e}.plan-categories h3,.plan-goals h3{color:var(--brown);margin:0 0 6px;font-size:14px;font-weight:700}.plan-categories-caption{color:var(--text-muted);margin:0 0 10px;font-size:11px}.plan-category-list{flex-direction:column;gap:10px;display:flex}.plan-category-row{align-items:flex-start;gap:8px;display:flex}.plan-category-main{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.plan-category-actions{flex-shrink:0;align-items:center;gap:2px;display:flex}.plan-category-edit{cursor:pointer;opacity:.8;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;width:24px;height:24px;padding:0;font-size:14px;line-height:1;transition:background .15s,opacity .15s;display:flex}.plan-category-edit:hover{opacity:1;background:#e877221a}.plan-category-remove{width:24px;height:24px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:6px;flex:none;justify-content:center;align-items:center;padding:0;font-size:18px;line-height:1;transition:background .15s,color .15s;display:flex}.plan-category-remove:hover{color:var(--red);background:#c0392b1a}.plan-skippy-suggest{width:100%;margin-bottom:8px;font-size:13px;font-weight:700}.plan-predicted-total{color:var(--text-muted);margin:10px 0 6px;font-size:12px;font-weight:600}.plan-predicted-total strong{color:var(--brown);font-weight:800}.plan-summary-line{color:var(--text-muted);margin:6px 0 0;font-size:12px;font-weight:600}.plan-summary-line strong{color:var(--brown);font-weight:800}.plan-summary-line--savings strong{color:var(--green)}.plan-modal-backdrop{z-index:280;padding:env(safe-area-inset-top) 12px env(safe-area-inset-bottom);background:#281c128c;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.plan-modal-sub{color:var(--text-muted);margin:0 0 10px;font-size:12px}.plan-income-edit-list{flex-direction:column;gap:10px;display:flex}.plan-income-edit-row{color:var(--brown);justify-content:space-between;align-items:center;gap:10px;font-size:13px;font-weight:600;display:flex}.plan-income-edit-input-wrap{align-items:center;gap:6px;display:flex}.plan-income-edit-prefix{color:var(--text-muted);font-weight:800}.plan-income-edit-input{width:110px;color:var(--brown);background:#ffffffe6;border:1px solid #6b3f1a2e;border-radius:10px;padding:8px 10px;font-size:14px;font-weight:800}.plan-category-add{color:var(--orange);cursor:pointer;background:#fff8f0cc;border:1px dashed #e8772266;border-radius:10px;margin-top:4px;padding:8px 12px;font-size:12px;font-weight:600;transition:background .15s,border-color .15s}.plan-category-add:hover{background:#e8772214;border-color:#e8772299}.plan-goal-add-new{width:100%;color:var(--orange);cursor:pointer;background:#fff8f0cc;border:1px dashed #e8772266;border-radius:10px;margin-top:8px;padding:10px 12px;font-family:inherit;font-size:12px;font-weight:600;transition:background .15s,border-color .15s,opacity .15s}.plan-goal-add-new:hover:not(:disabled){background:#e8772214;border-color:#e8772299}.plan-goal-add-new:disabled{opacity:.45;cursor:not-allowed}.plan-category-top{justify-content:space-between;align-items:center;display:flex}.plan-category-name{color:var(--brown);font-size:13px;font-weight:600}.plan-category-planned{color:var(--text-muted);font-size:12px}.plan-category-bar{background:#6b3f1a14;border-radius:999px;height:6px;overflow:hidden}.plan-category-fill{border-radius:inherit;background:linear-gradient(90deg,#ffe3bf 0%,#e87722 100%);height:100%}.plan-category-pill{border-radius:999px;align-self:flex-start;padding:4px 8px;font-size:10px;font-weight:600}.plan-category-pill--calm{color:var(--green);background:#3b8c4a1f}.plan-category-pill--warm{color:var(--orange);background:#e877221a}.plan-goal-cards{flex-direction:column;gap:10px;margin-bottom:8px;display:flex}.plan-goal-card{background:#fff8f099;border:1px solid #e8772233;border-radius:12px;flex-direction:column;gap:6px;padding:10px 12px;display:flex}.plan-goal-card-top{justify-content:space-between;align-items:center;display:flex}.plan-goal-card-actions{align-items:center;gap:2px;display:flex}.plan-goal-name{color:var(--brown);font-size:13px;font-weight:600}.plan-goal-edit{cursor:pointer;opacity:.8;background:0 0;border:none;border-radius:6px;padding:4px;font-size:14px;line-height:1;transition:opacity .15s,background .15s}.plan-goal-edit:hover{opacity:1;background:#e877221a}.plan-goal-remove{cursor:pointer;opacity:.8;background:0 0;border:none;border-radius:6px;padding:4px;font-size:14px;line-height:1;transition:opacity .15s,background .15s}.plan-goal-remove:hover{opacity:1;background:#e877221a}.plan-goal-saved-of{color:var(--brown);margin:0;font-size:13px;font-weight:700}.plan-goal-add-money{margin-top:6px;padding:8px 12px;font-size:12px}.plan-goal-bar{background:#6b3f1a14;border-radius:999px;height:6px;overflow:hidden}.plan-goal-fill{border-radius:inherit;background:linear-gradient(90deg, #f3c36f 0%, #e87722 50%, var(--green) 100%);height:100%}.plan-goal-percent{color:var(--text-muted);font-size:11px;font-weight:700}.plan-goals-tier{color:var(--text-muted);text-align:center;margin:0;font-size:10px}.plan-modal-backdrop{z-index:100;background:#0006;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.plan-modal{background:var(--surface);border:1px solid var(--border);border-radius:20px;width:100%;max-width:340px;padding:20px;box-shadow:0 20px 50px #0003}.plan-modal--small{max-width:280px}.plan-modal-title{color:var(--brown);margin:0 0 16px;font-size:16px;font-weight:700}.plan-modal-remaining{color:var(--text);background:#3b8c4a1a;border:1px solid #3b8c4a33;border-radius:12px;margin:-8px 0 14px;padding:10px 12px;font-size:13px}.plan-modal-remaining strong{color:var(--green)}.plan-modal-hint{color:var(--text-muted);margin-top:4px;font-size:11px;display:block}.plan-modal-body{color:var(--text);margin:0 0 16px;font-size:14px}.plan-modal-field{flex-direction:column;gap:6px;margin-bottom:14px;display:flex}.plan-modal-label{color:var(--text-muted);font-size:12px;font-weight:600}.plan-modal-input{border:1px solid var(--border);color:var(--text);border-radius:12px;padding:10px 12px;font-family:inherit;font-size:14px}.plan-modal-emoji-row{flex-wrap:wrap;gap:6px;display:flex}.plan-modal-emoji-btn{border:1px solid var(--border);background:var(--surface);cursor:pointer;border-radius:10px;width:36px;height:36px;padding:0;font-size:18px;transition:background .15s,border-color .15s}.plan-modal-emoji-btn--active{background:#e8772226;border-color:#e8772266}.plan-modal-actions{gap:10px;margin-top:8px;display:flex}.plan-modal-actions .btn{flex:1}.plan-btn-danger{background:linear-gradient(135deg,#e74c3c 0%,#c0392b 100%);box-shadow:0 8px 20px #c0392b59}.plan-profile-suggest{background:#e877220f;border:1px solid #e8772233;border-radius:14px;margin:0 0 12px;padding:12px}.plan-profile-suggest-title{color:var(--brown);margin:0 0 6px;font-size:13px;font-weight:700}.plan-profile-suggest-hint{color:var(--text-muted);margin:0 0 8px;font-size:11px;line-height:1.35}.plan-profile-chips{flex-wrap:wrap;gap:8px;display:flex}.plan-profile-chip{font:inherit;color:var(--text);cursor:pointer;text-align:left;background:#fff;border:2px solid #6b3f1a26;border-radius:12px;padding:8px 10px;font-size:12px}.plan-profile-chip--watch{background:#e877220f;border-style:dashed;border-color:#e87722}.plan-profile-chip--priority{background:#e877221a;border-width:2px;border-color:#e87722;font-weight:600}.plan-profile-chip.plan-profile-chip--selected{color:#fff;background:#e87722;border-style:solid;border-color:#e87722;font-weight:600}.plan-profile-add-selected{width:100%;margin-top:12px}.scan-page{flex-direction:column;gap:10px;display:flex}.scan-toast{z-index:200;background:var(--brown);color:#fff;border-radius:999px;padding:10px 18px;font-size:13px;font-weight:600;animation:.25s scan-toast-in;position:fixed;bottom:88px;left:50%;transform:translate(-50%);box-shadow:0 4px 16px #00000026}@keyframes scan-toast-in{0%{opacity:0;transform:translate(-50%)translateY(8px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.scan-loading{color:var(--text-muted);margin:0 0 10px;font-size:13px}.scan-error{color:#b91c1c;margin:0 0 10px;font-size:13px;font-weight:600}.scan-empty{color:var(--text-muted);margin:0 0 10px;font-size:13px}.scan-camera{padding:14px 16px;position:relative}.scan-camera-input{clip:rect(0, 0, 0, 0);white-space:nowrap;opacity:0;pointer-events:none;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.scan-zone{cursor:pointer;background:#fff8f0e6;border:2px dashed #e8772273;border-radius:16px;flex-direction:column;align-items:center;gap:8px;width:100%;padding:24px 16px;display:flex}.scan-zone-icon{font-size:32px}.scan-zone-title{color:var(--brown);margin:0;font-size:14px;font-weight:700}.scan-past h3,.scan-result h3{color:var(--brown);margin:0 0 10px;font-size:14px;font-weight:700}.scan-past-list{flex-direction:column;gap:0;display:flex}.scan-past-row{border-bottom:1px solid var(--border);padding:10px 0}.scan-past-row:last-child{border-bottom:none}.scan-past-store{color:var(--brown);font-size:14px;font-weight:600;display:block}.scan-past-meta{color:var(--text-muted);margin-top:2px;font-size:12px}.scan-past-empty{color:var(--text-muted);text-align:center;margin:0;padding:12px 0;font-size:13px}.scan-past-chip{color:var(--orange);background:#e877221f;border-radius:999px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-block}.scan-items{flex-direction:column;gap:6px;margin-bottom:8px;display:flex}.scan-item-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:6px 0;display:flex}.scan-item-row--editable{gap:10px}.scan-item-left{flex:1;min-width:0}.scan-item-name{color:var(--brown);font-size:13px;font-weight:600;display:block}.scan-item-amount{color:var(--text-muted);font-size:12px}.scan-item-select{border:1px solid var(--border);color:var(--text);background:var(--surface);border-radius:10px;flex:0 0 120px;padding:6px 8px;font-family:inherit;font-size:12px}.scan-footer{border-top:1px solid var(--border);flex-direction:column;gap:8px;padding-top:10px;display:flex}.scan-total{color:var(--text);justify-content:space-between;font-size:13px;display:flex}.scan-total-amount{color:var(--brown);font-weight:700}.scan-total-negative{color:var(--red)}.scan-actions{gap:8px;display:flex}.scan-edit{flex:1}.scan-confirm{flex:2}.scan-past-header{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.scan-past-header h3{margin:0}.scan-view-all{color:var(--orange);cursor:pointer;background:0 0;border:none;padding:0;font-size:12px;font-weight:600}.scan-item-tappable{cursor:pointer}.scan-item-input-inline{border:none;border-bottom:1px solid var(--orange);width:100%;color:var(--brown);background:0 0;padding:4px 0;font-family:inherit;font-size:13px}.scan-item-amount-input{max-width:80px}.scan-viewall-backdrop{z-index:100;background:#00000080;justify-content:center;align-items:center;padding:0;display:flex;position:fixed;inset:0}.scan-viewall-modal{background:var(--cream);flex-direction:column;width:100%;max-width:390px;height:100%;max-height:100vh;display:flex;overflow:hidden;box-shadow:0 0 40px #0003}.scan-viewall-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:16px 18px;display:flex}.scan-viewall-header h3{color:var(--brown);margin:0;font-size:16px;font-weight:700}.scan-viewall-close{width:36px;height:36px;color:var(--text);cursor:pointer;background:#0000000f;border:none;border-radius:50%;padding:0;font-size:24px;line-height:1}.scan-viewall-body{flex:1;padding:16px 18px;overflow-y:auto}.scan-viewall-empty{color:var(--text-muted);text-align:center;margin:0;font-size:14px}.scan-viewall-group{margin-bottom:20px}.scan-viewall-date{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin:0 0 10px;font-size:12px;font-weight:700}.scan-viewall-card{background:var(--surface);border:1px solid var(--border);border-radius:12px;margin-bottom:8px;padding:12px 14px}.scan-viewall-card-top{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.scan-viewall-store{color:var(--brown);font-size:14px;font-weight:600}.scan-viewall-total{color:var(--brown);font-size:14px;font-weight:700}.scan-viewall-items{color:var(--text-muted);margin:0;padding-left:18px;font-size:12px;line-height:1.6}.nest-page{flex-direction:column;gap:12px;display:flex}.nest-hero{flex-direction:column;gap:14px;display:flex}.nest-hero-main{align-items:center;gap:12px;display:flex}.nest-skippy{background:radial-gradient(circle at 20% 0,#ffe9c9 0%,#f7b571 50%,#f39b4a 100%);border-radius:24px;flex:none;justify-content:center;align-items:center;width:80px;height:80px;display:flex;overflow:hidden}.nest-skippy img{-o-object-fit:contain;object-fit:contain;width:74px;height:74px}.nest-hero-text{flex:1}.nest-hero h2{color:var(--brown);margin:0;font-size:18px;font-weight:800}.nest-hero-desc{color:var(--text-muted);margin:4px 0 0;font-size:12px;line-height:1.4}.nest-level-name{color:var(--brown);margin:8px 0 0;font-size:12px;line-height:1.4}.nest-level-name strong{color:var(--orange)}.nest-level-next-hint{color:var(--text-muted);font-weight:500}.nest-streak{background:#fff8f0e6;border:1px solid #e8772233;border-radius:12px;padding:10px 12px}.nest-streak-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin:0 0 2px;font-size:11px;font-weight:600}.nest-streak-number{color:var(--orange);margin:0;font-size:22px;font-weight:800}.nest-level{margin-top:2px}.nest-level-top{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.nest-level-label{color:var(--text-muted);font-size:11px}.nest-level-percent{color:var(--brown);font-size:12px;font-weight:700}.nest-level-bar{background:#6b3f1a14;border-radius:999px;height:8px;overflow:hidden}.nest-level-fill{border-radius:inherit;background:linear-gradient(90deg,#ffe3bf 0%,#f39b4a 40%,#e87722 100%);height:100%;transition:width .35s}.nest-badges h3{color:var(--brown);margin:0 0 10px;font-size:14px;font-weight:700}.nest-badges-label{color:var(--text-muted);margin:0 0 6px;font-size:12px;font-weight:600}.nest-badges-empty{color:var(--text-muted);margin:0 0 12px;font-size:13px;line-height:1.45}.nest-badges-label--locked{margin-top:14px}.nest-badges-grid{grid-template-columns:repeat(2,1fr);gap:8px;display:grid}.nest-badges-grid--locked{margin-top:4px}.nest-badge--locked{filter:grayscale();opacity:.4}.nest-badge{text-align:center;background:#fff8f0e6;border:1px solid #e877222e;border-radius:12px;flex-direction:column;align-items:center;gap:4px;padding:10px 8px;display:flex}.nest-badge-icon{font-size:22px}.nest-badge-label{color:var(--brown);font-size:11px;font-weight:600}button.nest-badge{cursor:pointer;text-align:center;width:100%;margin:0;font-family:inherit;transition:transform .12s,box-shadow .12s}button.nest-badge:hover{transform:translateY(-1px);box-shadow:0 4px 12px #e8772233}button.nest-badge--locked:hover{box-shadow:none;transform:none}.nest-badge-toast{top:calc(12px + env(safe-area-inset-top,0px));z-index:400;max-width:min(340px,100% - 24px);color:var(--brown);text-align:center;background:linear-gradient(135deg,#fff8f0 0%,#ffe9d6 100%);border:1px solid #e8772259;border-radius:14px;padding:12px 16px;font-size:14px;font-weight:700;animation:.35s nest-toast-in;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 12px 28px #6b3f1a2e}@keyframes nest-toast-in{0%{opacity:0;transform:translate(-50%,-8px)}to{opacity:1;transform:translate(-50%)}}.nest-modal-backdrop{z-index:500;padding:16px;padding-bottom:calc(16px + env(safe-area-inset-bottom,0px));background:#281c1473;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.nest-modal{background:var(--surface);border-radius:20px 20px 12px 12px;width:100%;max-width:400px;padding:20px 18px 18px;box-shadow:0 -8px 32px #00000026}.nest-modal-skippy{background:radial-gradient(circle at 30% 20%,#ffe9c9 0%,#f7b571 100%);border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;margin:0 auto 10px;display:flex}.nest-modal-skippy img{-o-object-fit:contain;object-fit:contain;width:48px;height:48px}.nest-modal-title{color:var(--brown);text-align:center;margin:0 0 10px;font-size:17px;font-weight:800}.nest-modal-body{color:var(--text);margin:0 0 10px;font-size:14px;line-height:1.5}.nest-modal-skippy-msg{color:var(--orange);margin:0 0 16px;font-size:13px;font-weight:600;line-height:1.45}.nest-modal-close{width:100%}.school-page{flex-direction:column;gap:12px;display:flex}.school-page--error,.school-page--recovering{padding:16px}.school-empty-hero{background:linear-gradient(135deg,#e8772214,#ffffffe6);border:1px solid #e8772233;border-radius:12px;padding:16px}.school-empty-hero-title{color:var(--brown);margin:0 0 8px;font-size:17px;font-weight:800}.school-empty-hero-text{color:var(--text-muted);margin:0;font-size:14px;line-height:1.45}.school-error-card{padding:20px 16px}.school-error-card h3{color:var(--brown);margin:0 0 8px}.school-error-card p{color:var(--text-muted);margin:0;font-size:14px;line-height:1.45}.school-page h3{color:var(--brown);margin:0 0 8px;font-size:14px;font-weight:700}.school-tuition{padding:14px 16px}.school-tuition-head{justify-content:space-between;align-items:flex-start;margin-bottom:4px;display:flex}.school-tuition-head h3{margin:0}.school-edit-btn{cursor:pointer;opacity:.85;background:0 0;border:none;border-radius:8px;padding:4px;font-size:16px;transition:background .15s,opacity .15s}.school-edit-btn:hover{opacity:1;background:#e877221a}.school-edit-btn--small{font-size:14px}.school-tuition-amount{color:var(--brown);margin:4px 0 0;font-size:22px;font-weight:800}.school-tuition-due{color:var(--text-muted);margin:4px 0 0;font-size:12px}.school-tuition-due--muted{font-style:italic}.school-tuition-net-label{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);margin:0 0 4px;font-size:11px;font-weight:700}.school-tuition-amount--net{margin-top:0}.school-tuition-refund-block{margin-bottom:2px}.school-tuition-refund-title{color:var(--green);margin:0;font-size:15px;font-weight:800;line-height:1.3}.school-tuition-refund-amount{color:var(--green);margin:6px 0 0;font-size:20px;font-weight:800;line-height:1.2}.school-tuition-refund-note{color:var(--text-muted);margin:8px 0 0;font-size:11px;font-weight:500;line-height:1.45}.school-tuition-loan-note{color:#b45309;margin:6px 0 0;font-size:12px;font-weight:600}.school-tuition-gross{color:var(--text-muted);margin:4px 0 8px;font-size:12px;line-height:1.4}.school-tuition-period{color:var(--orange);margin:4px 0 0;font-size:12px;font-weight:600}.school-tuition-start{color:var(--brown);margin:6px 0 0;font-size:13px;font-weight:600}.school-tuition--empty .school-tuition-head{margin-bottom:4px}.school-tuition-empty{padding:8px 0 4px}.school-tuition-empty-msg{color:var(--text-muted);margin:0;font-size:14px;line-height:1.45}.school-aid-type-legend{background:#fff8f099;border:1px dashed #e8772240;border-radius:12px;flex-wrap:wrap;gap:10px 14px;margin-bottom:12px;padding:10px 12px;display:flex}.school-aid-legend-item{color:var(--brown);align-items:center;gap:6px;font-size:12px;font-weight:700;display:inline-flex}.school-aid-info-btn{width:20px;height:20px;color:var(--brown);cursor:pointer;background:#e8772233;border:none;border-radius:999px;flex-shrink:0;padding:0;font-size:12px;font-weight:800;line-height:1}.school-aid-info-btn:hover{background:#e8772259}.school-modal--aid-info .school-modal-skippy-line{color:var(--orange);margin:12px 0 8px;font-size:13px;font-weight:600}.school-modal-skippy--small img{-o-object-fit:contain;object-fit:contain;width:48px;height:48px}.school-aid-list{flex-direction:column;gap:6px;display:flex}.school-aid-label-block{flex-direction:column;flex:1;align-items:flex-start;gap:2px;min-width:0;padding-right:8px;display:flex}.school-aid-loan-tag{text-transform:uppercase;letter-spacing:.03em;color:#b45309;font-size:10px;font-weight:700}.school-aid-repay-hint{color:var(--text-muted);font-size:11px}.school-aid-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;padding:8px 0;display:flex}.school-aid-row--grantish{border-left:3px solid var(--green);margin-left:-2px;padding-left:10px}.school-aid-row--loan{background:#f59e0b0f;border-left:3px solid #f59e0b;border-radius:8px;margin-bottom:4px;margin-left:-2px;padding-left:10px}.school-aid-row--loan .school-aid-amount{color:#c2410c}.school-aid-right{align-items:center;gap:6px;display:flex}.school-add-btn{color:var(--orange);cursor:pointer;background:0 0;border:none;margin-top:10px;padding:8px 0;font-size:12px;font-weight:600}.school-aid-row:last-child{border-bottom:none}.school-aid-label{color:var(--text);font-size:13px}.school-aid-amount{color:var(--green);font-size:13px;font-weight:700}.school-aid-amount--negative{color:var(--brown)}.school-payment-list{flex-direction:column;gap:6px;display:flex}.school-payment-summary{color:var(--text-muted);margin:0 0 6px;font-size:11px}.school-payment-timeline-visual{height:28px;margin:12px 4px 16px;position:relative}.school-payment-timeline-track{background:linear-gradient(90deg,#6b3f1a33,#e8772259,#3b8c4a40);border-radius:2px;height:3px;margin-top:-1px;position:absolute;top:50%;left:0;right:0}.school-payment-timeline-node{border:2px solid #fff;border-radius:50%;width:12px;height:12px;margin:-6px 0 0 -6px;position:absolute;top:50%;transform:translate(-50%);box-shadow:0 1px 3px #0000001f}.school-payment-timeline-node--paid{background:var(--green)}.school-payment-timeline-node--open{background:var(--orange)}.school-payment-status{text-transform:uppercase;letter-spacing:.04em;font-size:11px;font-weight:600}.school-payment-status--paid{color:var(--green)}.school-payment-status--next{color:var(--orange)}.school-payment-status--upcoming{color:var(--text-muted)}.school-payment-row{border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:6px;padding:8px 0;display:flex}.school-mark-paid{border:1px solid var(--green);color:var(--green);cursor:pointer;background:#3b8c4a1a;border-radius:999px;margin-left:auto;padding:4px 10px;font-size:11px;font-weight:600}.school-payment-row:last-child{border-bottom:none}.school-payment-dot{background:#ccc;border-radius:50%;width:10px;height:10px;margin-right:8px}.school-payment-dot--paid{background:var(--green)}.school-payment-dot--next{background:var(--orange)}.school-payment-dot--upcoming{background:#6b3f1a4d}.school-payment-main{flex:1;align-items:center;gap:6px;display:flex}.school-payment-date{color:var(--text);font-size:13px}.school-payment-paid{color:var(--green);font-size:12px;font-weight:600}.school-payment-pill{color:var(--orange);background:#e877221a;border-radius:999px;padding:2px 8px;font-size:11px}.school-payment-amount{color:var(--brown);text-align:right;min-width:70px;font-size:13px;font-weight:700}.school-payment-amount--paid{color:var(--green)}.school-payment-amount--upcoming{color:var(--text-muted)}.school-loan-list{flex-direction:column;gap:8px;display:flex}.school-loan-card{background:#fff8f099;border:1px solid #6b3f1a1f;border-radius:12px;padding:10px 12px}.school-loan-card-top{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.school-loan-name{color:var(--brown);flex:1;min-width:0;margin:0 0 4px;font-size:13px;font-weight:600}.school-loan-desc{color:var(--text-muted);margin:0 0 6px;font-size:11px}.school-loan-balance-large{color:var(--brown);margin:0;font-size:20px;font-weight:800}.school-loan-balance-label{color:var(--text-muted);margin:0 0 6px;font-size:11px}.school-loan-bar{background:#6b3f1a14;border-radius:999px;height:8px;margin-bottom:6px;overflow:hidden}.school-loan-fill{border-radius:inherit;background:linear-gradient(90deg, #f3c36f 0%, #e87722 50%, var(--green) 100%);height:100%}.school-loan-payment{color:var(--text-muted);margin:2px 0 0;font-size:12px}.school-loan-payment span{color:var(--orange);font-weight:700}.school-loan-link{color:var(--orange);text-align:left;cursor:pointer;background:0 0;border:none;margin-top:4px;padding:0;font-size:11px}.school-modal-backdrop{z-index:100;background:#0006;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.school-modal{background:var(--surface);border-radius:20px;width:100%;max-width:340px;padding:20px;box-shadow:0 20px 50px #0003}.school-modal-skippy{background:radial-gradient(circle at 30% 20%,#ffe9c9 0%,#f7b571 100%);border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;margin:0 auto 12px;display:flex;overflow:hidden}.school-modal-skippy img{-o-object-fit:contain;object-fit:contain;width:48px;height:48px}.school-modal-title{color:var(--brown);margin:0 0 10px;font-size:15px;font-weight:700}.school-modal-body{color:var(--text);margin:0 0 16px;font-size:13px;line-height:1.55}.school-modal .btn{width:100%}.school-modal-row--split{grid-template-columns:1fr 1fr;align-items:end;gap:12px;display:grid}.school-modal-hint{opacity:.85;margin:0 0 .75rem;font-size:.85rem;line-height:1.35}.school-modal-field{flex-direction:column;gap:6px;margin-bottom:14px;display:flex}.school-modal-label{color:var(--text-muted);font-size:12px;font-weight:600}.school-modal-input{border:1px solid var(--border);color:var(--text);border-radius:12px;padding:10px 12px;font-family:inherit;font-size:14px}.school-modal-actions{gap:10px;margin-top:8px;display:flex}.school-modal-actions .btn{flex:1;width:auto}.page.debt-page{padding-bottom:12px}.debt-summary{flex-direction:column;gap:8px;margin-bottom:12px;display:flex}.debt-summary-row{color:var(--text);justify-content:space-between;align-items:baseline;font-size:14px;display:flex}.debt-summary-row strong{color:var(--brown);font-size:18px}.debt-summary-label{color:var(--text-muted);font-weight:600}.debt-add-btn{width:100%;margin-bottom:12px}.debt-card{margin-bottom:10px;padding:14px 16px}.debt-card-head{justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:8px;display:flex}.debt-card-title{color:var(--brown);margin:0;font-size:16px;font-weight:800}.debt-card-type{color:var(--text-muted);margin:4px 0 0;font-size:12px;font-weight:600}.debt-card-actions{flex-shrink:0;gap:6px;display:flex}.debt-card-actions button{cursor:pointer;background:#e877221a;border:none;border-radius:10px;padding:6px 10px;font-size:16px;line-height:1}.debt-card-actions button:active{transform:scale(.96)}.debt-card-grid{grid-template-columns:1fr 1fr;gap:8px 12px;font-size:12px;display:grid}.debt-card-stat span{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:2px;font-size:10px;font-weight:600;display:block}.debt-card-stat strong{color:var(--text);font-size:14px}.debt-empty{text-align:center;color:var(--text-muted);padding:24px 12px;font-size:14px;line-height:1.5}.debt-modal-backdrop{z-index:200;background:#281e1473;justify-content:center;align-items:flex-end;padding:16px;display:flex;position:fixed;inset:0}.debt-modal{background:var(--surface);border-radius:20px 20px 12px 12px;width:100%;max-width:400px;max-height:90vh;padding:18px 16px 16px;overflow:auto;box-shadow:0 -8px 40px #0003}.debt-modal h3{color:var(--brown);margin:0 0 14px;font-size:18px}.debt-modal-field{color:var(--brown);flex-direction:column;gap:6px;margin-bottom:12px;font-size:13px;font-weight:600;display:flex}.debt-modal-field input,.debt-modal-field select{font-family:inherit}.debt-dollar-field{border:1px solid var(--border);background:#fffffff2;border-radius:14px;align-items:center;gap:2px;max-width:100%;padding:0 10px 0 12px;display:inline-flex}.debt-dollar-field:focus-within{border-color:#e87722b3}.debt-dollar-prefix{color:var(--text-muted);font-weight:700}.debt-modal-field .debt-dollar-field input{background:0 0;border:none;flex:1;min-width:0;padding:10px 0 10px 4px;font-size:15px}.debt-modal-field .debt-dollar-field input:focus{outline:none}.debt-modal-actions{gap:10px;margin-top:8px;display:flex}.debt-modal-actions .btn{flex:1}.onboarding-typeform{min-height:100%;padding:0 18px 24px;padding-top:max(8px, env(safe-area-inset-top));color:#1a1008;touch-action:pan-y;box-sizing:border-box;background:#fdf6ed;flex-direction:column;align-items:center;width:100%;max-width:100%;margin:-16px -18px -12px;display:flex;position:relative;overflow-x:hidden}.onboarding-progress-track{background:#e8772226;border-radius:999px;flex-shrink:0;align-self:stretch;width:100%;max-width:100%;height:3px;margin-bottom:8px;overflow:hidden}.onboarding-progress-fill{border-radius:inherit;background:#e87722;height:100%;transition:width .4s}.onboarding-back-spacer{flex-shrink:0;height:36px}.onboarding-back{font:inherit;color:#6b3f1a;cursor:pointer;background:0 0;border:none;flex-shrink:0;align-self:flex-start;margin:0 0 8px;padding:6px 4px;font-size:14px}.onboarding-back:active{opacity:.7}.onboarding-screen{-webkit-overflow-scrolling:touch;box-sizing:border-box;flex-direction:column;flex:1;align-items:center;gap:16px;width:100%;max-width:100%;min-height:0;animation:.38s onboardingStepIn;display:flex;overflow-y:auto}.onboarding-screen--intro{flex:1;justify-content:stretch;overflow:hidden}@keyframes onboardingStepIn{0%{opacity:0;transform:translate(14px)}to{opacity:1;transform:translate(0)}}.onboarding-skippy-wrap{justify-content:center;margin-top:4px;display:flex}.onboarding-skippy-wrap--large{margin:16px 0 8px}.onboarding-skippy-img{-o-object-fit:contain;object-fit:contain;width:88px;height:88px;animation:2.5s ease-in-out infinite skippyFloat}.onboarding-skippy-img--large{width:140px;height:140px}@keyframes skippyFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.onboarding-title{box-sizing:border-box;text-align:center;color:#1a1008;width:100%;margin:0;padding:0 24px;font-size:22px;font-weight:700;line-height:1.25}.onboarding-subtitle{box-sizing:border-box;color:#6b3f1a;text-align:center;width:100%;margin:-8px 0 0;padding:0 24px;font-size:15px;line-height:1.4}.onboarding-text-input{width:100%;font:inherit;color:#1a1008;box-sizing:border-box;background:#fff;border:1px solid #6b3f1a2e;border-radius:14px;margin-top:4px;padding:14px 16px;font-size:16px}.onboarding-text-input:focus{border-color:#e87722bf;outline:none;box-shadow:0 0 0 3px #e8772226}.onboarding-options{flex-direction:column;align-self:stretch;gap:10px;width:100%;max-width:100%;margin-top:4px;display:flex}.onboarding-option{text-align:center;font:inherit;color:#1a1008;cursor:pointer;background:#fff;border:2px solid #6b3f1a1f;border-radius:14px;padding:14px 16px;font-size:15px;line-height:1.35;transition:border-color .2s,box-shadow .2s,transform .15s}.onboarding-option:active{transform:scale(.99)}.onboarding-option--selected{border-color:#e87722;box-shadow:0 4px 14px #e8772233}.onboarding-footer-actions{flex-direction:column;align-items:stretch;gap:16px;width:100%;margin-top:auto;display:flex}.onboarding-skip{font:inherit;color:#8b7a6a;text-underline-offset:.2em;cursor:pointer;background:0 0;border:none;align-self:center;margin:0;padding:4px 8px;font-size:13px;text-decoration:underline}.onboarding-skip:active{opacity:.75}.onboarding-btn-primary{color:#fff;width:100%;font:inherit;cursor:pointer;background:#e87722;border:none;border-radius:14px;padding:15px 20px;font-size:16px;font-weight:700;box-shadow:0 8px 20px #e8772259}.onboarding-btn-primary--intro{flex-shrink:0;margin-top:auto}.onboarding-btn-primary:disabled{color:#ffffffd9;cursor:not-allowed;box-shadow:none;background:#c4b8a8}.onboarding-btn-primary:not(:disabled):active{transform:scale(.99)}.onboarding-intro-screen{flex-direction:column;flex:1;align-items:stretch;width:100%;min-height:0;display:flex}.onboarding-intro-body{text-align:center;box-sizing:border-box;-webkit-overflow-scrolling:touch;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:20px;min-height:0;padding:0 32px;display:flex;overflow-y:auto}.onboarding-intro-text{color:#1a1008;width:100%;max-width:100%;margin:0;font-size:16px;line-height:1.55}.onboarding-input{color:var(--text);box-sizing:border-box;background:#fffffff2;border:1px solid #6b3f1a1f;border-radius:14px;width:100%;padding:11px 12px;font-family:inherit;font-size:14px}.onboarding-input:focus{border-color:#e87722b3;outline:none}.profile-page{flex-direction:column;gap:12px;display:flex}.profile-section h3{color:var(--brown);margin:0 0 8px;font-size:14px;font-weight:700}.profile-row{justify-content:space-between;padding:4px 0;font-size:13px;display:flex}.profile-label{color:var(--text-muted)}.profile-value{color:var(--brown);font-weight:600}.profile-button{width:100%;margin-top:8px}.profile-subcopy{color:var(--text-muted);margin:0 0 8px;font-size:12px}.profile-upgrade{width:100%}.profile-toggle{justify-content:space-between;align-items:center;font-size:13px;display:flex}.profile-toggle input{display:none}.profile-toggle-slider{background:#6b3f1a33;border-radius:999px;width:40px;height:22px;transition:background .15s;position:relative}.profile-toggle-slider:after{content:"";background:#fff;border-radius:50%;width:16px;height:16px;transition:transform .15s;position:absolute;top:3px;left:3px;box-shadow:0 2px 4px #0003}.profile-toggle input:checked+.profile-toggle-slider{background:var(--orange)}.profile-toggle input:checked+.profile-toggle-slider:after{transform:translate(16px)}.profile-meta{color:var(--text-muted);font-size:11px}.profile-meta p{margin:0}.profile-legal-row{border:none;border-bottom:1px solid var(--border);width:100%;color:var(--text);text-align:left;cursor:pointer;background:0 0;justify-content:space-between;align-items:center;padding:10px 0;font-family:inherit;font-size:13px;display:flex}.profile-legal-row:last-of-type{border-bottom:none}.profile-legal-arrow{color:var(--text-muted)}.profile-modal-backdrop{z-index:100;background:#0006;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.profile-modal{background:var(--surface);border-radius:20px;width:100%;max-width:340px;padding:20px;box-shadow:0 20px 50px #0003}.profile-modal-title{color:var(--brown);margin:0 0 12px;font-size:16px;font-weight:700}.profile-modal-body{color:var(--text);margin:0 0 16px;font-size:13px;line-height:1.5}.profile-modal .btn{width:100%}.profile-modal-actions{gap:10px;display:flex}.profile-modal-actions .btn{flex:1;width:auto}.profile-account-type{color:var(--orange);font-weight:800}.profile-debt-manage-backdrop{z-index:200}.profile-debt-form-backdrop{z-index:220}.profile-debt-manage-modal{max-height:min(90vh,520px);overflow-y:auto}.profile-debt-empty{color:var(--text-muted);margin:0 0 12px;font-size:13px;line-height:1.45}.profile-debt-manage-list{max-height:240px;overflow-y:auto}.profile-reset-data{color:#b71c1c;width:100%;font:inherit;cursor:pointer;box-shadow:none;background:#fff5f5;border:1px solid #b71c1c73;border-radius:12px;margin-top:16px;padding:12px 16px;font-size:14px;font-weight:700}.profile-reset-data:active{opacity:.9}.profile-reset-confirm{color:#fff;background:linear-gradient(135deg,#e74c3c 0%,#c0392b 100%);border:none;font-weight:700;box-shadow:0 8px 20px #c0392b59}.profile-reset-confirm:active{transform:scale(.99)}.profile-logout{color:#c0392b;width:100%;box-shadow:none;background:#fff0f0;border:1px solid #c0392b66;margin-top:4px}.bottom-nav{padding-top:2px}.bottom-nav-inner{background:#ffffffe6;border:1px solid #6b3f1a24;border-radius:999px;justify-content:space-between;align-items:center;height:64px;padding:6px 14px;display:flex;box-shadow:0 18px 40px #0000002e,0 4px 8px #0000001f}.bottom-nav-item{height:52px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:999px;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:2px;font-size:11px;transition:background-color .16s,color .16s,transform 80ms;display:flex}.bottom-nav-item--active{color:var(--orange);background:#e877221f}.bottom-nav-item--disabled{opacity:.4;cursor:default}.bottom-nav-item:active:not(.bottom-nav-item--disabled){transform:translateY(1px)}.bottom-nav-emoji{font-size:18px;line-height:1}.bottom-nav-label{letter-spacing:.03em;font-size:10px}.bottom-nav-scan{background:radial-gradient(circle at 20% 0%, #ffe9c9 0%, var(--orange) 60%);cursor:pointer;color:#fff;border:none;border-radius:32px;justify-content:center;align-items:center;width:64px;height:64px;margin-top:0;padding:0;display:flex;position:static;box-shadow:0 26px 52px #e87722b8,0 8px 16px #00000047}.scan-icon{margin:0;padding:0;font-size:26px;line-height:1}.bottom-nav-launcher{border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;margin:0;padding:0;display:flex;position:static;transform:none}.bottom-nav-launcher .scan-icon{margin:0;padding:0;font-size:30px;font-weight:300;line-height:1;position:static;top:auto;bottom:auto;transform:none}.bottom-nav-launcher .scan-icon--plus{color:#fff;-webkit-text-stroke:1px #fff;text-rendering:geometricprecision;margin:0;padding:0;font-family:system-ui,-apple-system,Segoe UI,sans-serif;font-size:36px;font-weight:900;line-height:1;display:block;position:static;top:auto;bottom:auto;transform:none}.bottom-nav-launcher-wrap{flex-direction:column;align-items:center;display:flex;position:relative;transform:translateY(-28px)}.bottom-nav-sheet{opacity:0;pointer-events:none;z-index:30;background:#fffffffa;border:1px solid #6b3f1a24;border-radius:16px;flex-direction:column;gap:4px;min-width:200px;padding:8px;transition:opacity .22s,transform .22s;display:flex;position:absolute;bottom:calc(100% + 10px);left:50%;transform:translate(-50%,12px);box-shadow:0 12px 32px #0000002e,0 4px 8px #0000001a}.bottom-nav-sheet--open{opacity:1;pointer-events:auto;transform:translate(-50%)}.bottom-nav-sheet-item{width:100%;color:var(--brown);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:12px;align-items:center;gap:10px;padding:10px 12px;font-size:14px;font-weight:600;transition:background .15s;display:flex}.bottom-nav-sheet-item:hover{background:#e877221a}.bottom-nav-sheet-emoji{font-size:18px;line-height:1}.ask-skippy-overlay{z-index:300;padding:env(safe-area-inset-top) 12px env(safe-area-inset-bottom);background:#281c128c;justify-content:center;align-items:stretch;display:flex;position:fixed;inset:0}.ask-skippy-panel{background:var(--surface,#fffaf5);border:1px solid #6b3f1a26;border-radius:20px 20px 0 0;flex-direction:column;width:100%;max-width:420px;height:min(92vh,720px);margin:auto;display:flex;overflow:hidden;box-shadow:0 -8px 40px #0003}.ask-skippy-header{border-bottom:1px solid #6b3f1a1f;flex-shrink:0;justify-content:space-between;align-items:center;padding:12px 14px;display:flex}.ask-skippy-header-left{align-items:center;gap:10px;display:flex}.ask-skippy-avatar{-o-object-fit:contain;object-fit:contain;border-radius:999px;width:40px;height:40px}.ask-skippy-title{color:var(--brown,#5c3d1e);margin:0;font-size:17px;font-weight:800}.ask-skippy-close{cursor:pointer;width:40px;height:40px;color:var(--brown,#5c3d1e);background:#6b3f1a14;border:none;border-radius:999px;font-size:24px;line-height:1}.ask-skippy-messages{flex-direction:column;flex:1;gap:12px;padding:14px;display:flex;overflow-y:auto}.ask-skippy-starters{margin-bottom:8px}.ask-skippy-starters-label{color:var(--text-muted,#6b5a4a);margin:0 0 10px;font-size:12px;font-weight:700}.ask-skippy-chips{flex-direction:column;gap:8px;display:flex}.ask-skippy-chip{text-align:left;cursor:pointer;color:var(--brown,#5c3d1e);background:#ffffffe6;border:1px solid #e8772259;border-radius:12px;padding:10px 12px;font-family:inherit;font-size:13px;transition:background .15s}.ask-skippy-chip:hover{background:#e877221a}.ask-skippy-row{align-items:flex-end;gap:8px;max-width:100%;display:flex}.ask-skippy-row--user{justify-content:flex-end}.ask-skippy-row--skippy{justify-content:flex-start}.ask-skippy-bubble-avatar{-o-object-fit:contain;object-fit:contain;border-radius:999px;flex-shrink:0;width:28px;height:28px}.ask-skippy-bubble{word-break:break-word;border-radius:14px;max-width:82%;padding:10px 12px;font-size:14px;line-height:1.45}.ask-skippy-bubble--user{background:linear-gradient(135deg, #f3b77e 0%, var(--orange,#e87722) 100%);color:#fff;border-bottom-right-radius:4px}.ask-skippy-bubble--skippy{color:var(--text,#3d2e24);background:#fffef8;border:1px solid #6b3f1a1f;border-bottom-left-radius:4px}.ask-skippy-bubble--loading{color:var(--text-muted,#6b5a4a);font-style:italic}.ask-skippy-dots span{opacity:.3;animation:1.2s infinite ask-skippy-dot}.ask-skippy-dots span:nth-child(2){animation-delay:.2s}.ask-skippy-dots span:nth-child(3){animation-delay:.4s}@keyframes ask-skippy-dot{0%,80%,to{opacity:.2}40%{opacity:1}}.ask-skippy-input-row{background:#fffaf5fa;border-top:1px solid #6b3f1a1a;flex-shrink:0;gap:8px;padding:10px 12px 14px;display:flex}.ask-skippy-input{border:1px solid #6b3f1a33;border-radius:12px;flex:1;padding:10px 12px;font-family:inherit;font-size:14px}.ask-skippy-input:focus{border-color:#e8772299;outline:none}.ask-skippy-send{flex-shrink:0;padding-left:16px;padding-right:16px}.floating-skippy-btn{bottom:calc(100px + env(safe-area-inset-bottom,0px));right:calc(16px + env(safe-area-inset-right,0px));cursor:pointer;z-index:260;filter:drop-shadow(0 14px 28px #0003);background:0 0;border:none;justify-content:center;align-items:center;width:74px;height:64px;padding:0;display:flex;position:absolute}.floating-skippy-btn:active{transform:translateY(1px)}.floating-skippy-bubble{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.floating-skippy-img{-o-object-fit:contain;object-fit:contain;filter:drop-shadow(0 2px 3px #0003);pointer-events:none;width:44px;height:44px;margin:0;position:relative}.ow-root{z-index:200;box-sizing:border-box;pointer-events:none;flex-direction:column;justify-content:flex-end;width:100%;max-width:100%;padding:44px 12px 88px;display:flex;position:absolute;inset:0;overflow:hidden}.ow-skip-tour{z-index:5;pointer-events:auto;font:inherit;color:#fffffff2;text-underline-offset:.15em;text-shadow:0 1px 2px #00000059;cursor:pointer;background:0 0;border:none;margin:0;padding:6px 10px;font-size:13px;font-weight:600;text-decoration:underline;position:absolute;top:10px;right:10px}.ow-skip-tour:active{opacity:.85}.ow-blocker{z-index:0;pointer-events:auto;background:0 0;position:absolute;inset:0}.ow-blocker--dim{background:#1a10086b}.ow-hole{z-index:1;pointer-events:none;border-radius:14px;position:fixed;box-shadow:0 0 0 9999px #1a10086b}.ow-panel{z-index:2;pointer-events:auto;background:#fff;border:1px solid #e8772240;border-radius:16px;max-width:100%;padding:14px 16px 16px;position:relative;box-shadow:0 12px 36px #0000002e}.ow-panel--final{text-align:center;align-self:center;margin-top:auto;margin-bottom:auto}.ow-row{align-items:flex-start;gap:10px;display:flex}.ow-skippy{flex-shrink:0}.ow-skippy img{-o-object-fit:contain;object-fit:contain;width:48px;height:48px;display:block}.ow-skippy--center{justify-content:center;margin-bottom:4px;display:flex}.ow-text{color:#1a1008;flex:1;min-width:0;margin:0 0 12px;font-size:15px;line-height:1.45}.ow-text--final{text-align:center;margin-bottom:12px}.ow-btn{width:100%;font:inherit;cursor:pointer;border:none;border-radius:12px;padding:12px 16px;font-size:15px;font-weight:700}.ow-btn--primary{color:#fff;background:#e87722}.ow-btn--primary:active{transform:scale(.99)}.ow-actions{gap:10px;width:100%;display:flex}.ow-actions--row{flex-direction:row}.ow-actions--row .ow-btn{flex:1}.ow-actions--col{flex-direction:column}.ow-btn--secondary{color:#1a1008;background:#fff;border:2px solid #6b3f1a33}.ow-btn--ghost{color:#6b3f1a;background:0 0;border:none;font-weight:600}.ow-btn--ghost:active{opacity:.8}
