/* Responsive visual layer: cream, ink and a little lime. */
:root{--paper:#f8f6f0;--ink:#20251d;--lime:#c7f45b;--line:#e3e4da}
body{color:var(--ink);background:#eaece5}
.phone{max-width:600px;box-shadow:0 0 80px #28311e0c}
.screen{padding:calc(28px + env(safe-area-inset-top)) 24px calc(112px + env(safe-area-inset-bottom))}
h1{font-size:36px;line-height:1.1}h2{line-height:1.2}h3{letter-spacing:-.4px}.muted{color:#686d62}.small{font-size:12px}
.uiIcon{width:22px;height:22px;flex-shrink:0;vertical-align:middle;display:inline-block}
button{touch-action:manipulation}button:focus-visible,[role=button]:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #628629;outline-offset:4px}
.btn{display:flex;align-items:center;justify-content:center;gap:12px;padding:15px 18px;border-radius:16px;min-height:54px}
.btn:has(br){display:block}.btn.green{box-shadow:0 4px 0 #a7cf47}.btn.green:active{box-shadow:0 1px 0 #a7cf47;transform:translateY(2px)}
.back,.iconBtn{width:44px;height:44px;flex-basis:44px;background:transparent;border-color:var(--line)}
.chip,.filter,.size,.linkBtn,button.status{min-height:44px}.linkBtn{color:#465833;font-weight:700}.input{border-color:var(--line);transition:border-color .2s,box-shadow .2s}.input:focus{border-color:#718552;box-shadow:0 0 0 3px #c7f45b33}
.card,.stat,.goalEditorRow{border-color:var(--line);box-shadow:0 3px 8px #242c1b03}.card{border-radius:22px}.section{margin-top:28px}.greeting h2{font-size:24px}.greeting .right{gap:8px}.avatar{border:3px solid white;box-shadow:0 0 0 1px var(--line);width:44px;height:44px}
.available{position:relative;background:var(--ink);color:var(--paper);padding:24px;border-radius:26px;margin-top:25px;overflow:hidden}.available:after{content:'';position:absolute;width:140px;height:140px;border:28px solid #c7f45b10;border-radius:50%;right:-45px;top:35px;pointer-events:none}.balanceHeading{display:flex;align-items:center;justify-content:space-between;gap:12px}.balanceHeading .muted{color:#d4dbca;font-size:10px;letter-spacing:1.6px;font-weight:600}.balanceHeading>.uiIcon,.balanceHeading>span{color:var(--lime)}.available .amount{font-size:clamp(36px,9vw,52px);margin:13px 0;line-height:1.1;overflow-wrap:anywhere}.balanceFoot{display:flex;justify-content:space-between;align-items:center;font-size:11px;color:#d4dbca}.balanceFoot button{border:0;background:var(--lime);width:44px;height:44px;border-radius:50%;cursor:pointer}
.decisionCard{display:flex;align-items:center;gap:13px;text-align:left;width:100%;padding:16px;margin-top:16px;border:1px solid #d5e4bc;border-radius:20px;background:#eaf1dd;cursor:pointer}.decisionCard>span:nth-child(2){flex:1}.decisionCard b{font-size:13px}.decisionCard small{display:block;font-size:11px;color:#5e6b4e;margin-top:4px}.decisionIcon{display:grid;place-items:center;background:var(--lime);width:42px;height:42px;border-radius:14px;flex-shrink:0}.stat{padding:16px;border-radius:18px}.stat .small{font-size:11px}.stat strong{font-size:20px;letter-spacing:-.6px}.stat:nth-child(4){background:#edf2e6}.bar{height:6px;background:#eceee5}.bar span{background:#819e51}.goalTop b{display:flex;align-items:center;gap:10px;font-size:14px}.goalTop b .uiIcon{color:#65813e}.goal{padding:19px}.wishlistItem b{font-size:13px}.wishlistItem{gap:10px}.priority{font-size:8px;letter-spacing:.3px;padding:7px}.productThumb{background:#f0eee7}.empty{background:#f0eee7;border:1px dashed #d8d9cb;border-radius:20px;padding:24px 16px;font-size:13px;line-height:1.7}.empty .big{font-size:26px}
.nav{max-width:600px;padding:8px 12px calc(8px + env(safe-area-inset-bottom));background:#fffffff2;backdrop-filter:blur(18px);border-color:var(--line);gap:4px}.navItem{height:60px;font-size:10px;transition:background .2s,color .2s;border-radius:17px}.navItem.active{background:#e9f2da;color:#334621}.navIcon{margin-bottom:5px}.navIcon .uiIcon{width:22px;height:22px}.isSaved .uiIcon{fill:#edb9ad;stroke:#9f4a39}
#welcome.active{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 28px;min-height:100dvh;background:radial-gradient(ellipse at 50% 48%,#ecf1df,transparent 65%)}.welcomeEyebrow{font-size:9px;letter-spacing:2px;color:#6b755e;font-weight:700;margin-bottom:40px}.welcomeLogo{font-size:68px;line-height:1;letter-spacing:-3px;margin-bottom:22px}.tagline{font-size:25px;line-height:1.15;letter-spacing:-1px;margin-bottom:0}.character{margin:26px auto;width:150px;height:150px;flex-shrink:0;transform:rotate(-7deg)}.character:before,.character:after{top:52px}.character:before{left:44px}.character:after{right:44px}.eyeLine{top:75px;left:48px}.character .arm{top:85px}.character .bag{top:106px}.welcomeDescription{font-size:14px;color:#686d62;margin:14px 0 24px}.welcomeFootnote{font-size:11px;color:#686d62;margin-top:20px}#welcome .btn{max-width:340px}.option{min-height:110px}.option .icon .uiIcon{width:28px;height:28px}.option.selected{background:#eaf4d7;border-color:#809f4e}.progress span{background:#829e50}
#shopList{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}#shopList>.empty{grid-column:1/-1}.shopProduct{min-width:0;display:block;padding:10px;margin:0;border-radius:20px;transition:transform .2s,box-shadow .2s}.shopImage{width:100%;height:140px;background:#eeede4;border-radius:13px;font-size:55px}.shopProduct:nth-child(3n+2) .shopImage{background:#e8eddf}.shopProduct:nth-child(3n) .shopImage{background:#f1e6de}.shopInfo{padding:12px 3px 4px}.shopInfo b{font-size:13px;line-height:1.4}.shopInfo .small{font-size:10px;margin-top:4px}.shopInfo .price{font-size:16px}.shopInfo .sale{font-size:9px;line-height:1.5}.filters{margin-left:-24px;margin-right:-24px;padding-left:24px;padding-right:24px}.filter.active{background:var(--ink)}.productImage{background:#ecefe2}.shopProduct:active,.goal:active,.decisionCard:active{transform:scale(.98)}
.overlay{backdrop-filter:blur(5px)}.sheet,.intervention{max-width:560px;padding-top:25px;overscroll-behavior:contain}.sheet:before,.intervention:before{content:'';display:block;width:36px;height:4px;border-radius:4px;background:#cdd0c3;margin:-10px auto 22px}.modalOpen{overflow:hidden}.sheetHead h2{font-size:23px}.sheet .row{flex-wrap:wrap}.sheet .row>.grow{flex-basis:140px}.toast{max-width:540px}.message.user{background:#3e5536}.chatInput{position:static;transform:none;max-width:none;padding:12px 0 calc(14px + env(safe-area-inset-bottom));flex-shrink:0}.messages{padding-bottom:12px;overscroll-behavior:contain}#debate.active{height:var(--chat-height,100dvh)}.chatProduct{padding:12px;border:1px solid var(--line);border-radius:18px;background:#f0eee6}.chatHeader b{font-size:14px}
@media(hover:hover){.shopProduct:hover,.decisionCard:hover{box-shadow:0 7px 20px #29301c12;transform:translateY(-2px)}.navItem:hover:not(.active){background:#f1f2eb}}
@media(min-width:760px){.phone{max-width:960px}.screen{padding:40px 56px 120px}.nav{max-width:848px;bottom:18px;border:1px solid var(--line);border-radius:24px;box-shadow:0 10px 40px #25321b15}.navItem{display:flex;align-items:center;justify-content:center;gap:10px;font-size:13px}.navIcon{margin:0}.stat-grid{grid-template-columns:repeat(4,minmax(0,1fr))}#homeGoals{display:grid;grid-template-columns:1fr 1fr;gap:14px}#shopList{grid-template-columns:repeat(3,minmax(0,1fr))}.shopImage{height:180px}.available{padding:30px}.option-grid{grid-template-columns:repeat(3,1fr)}#info,#income,#priorities,#apps,#product,#checkout,#debate,#transcript,#result{max-width:660px;margin:auto}.overlay{align-items:center}.sheet,.intervention{border-radius:28px}.welcomeLogo{font-size:84px}#welcome.active{padding:40px}.character{margin:32px auto}#profile .stat-grid{grid-template-columns:1fr 1fr}}
@media(max-width:359px){.screen{padding-left:16px;padding-right:16px}.greeting h2{font-size:20px}.greeting{gap:6px}.greeting .right{gap:4px}.greeting .small{font-size:11px}.available{padding:20px}.wishlistItem{flex-wrap:wrap}.wishlistItem>.priority{margin-left:58px}.shopImage{height:110px;font-size:44px}.shopInfo b{font-size:12px}.chip{padding:8px 10px}h1{font-size:30px}.decisionCard{gap:9px;padding:12px}.decisionCard b{font-size:12px}.filters{margin-left:-16px;margin-right:-16px;padding-left:16px;padding-right:16px}}
@media(max-height:720px){#welcome.active{padding-top:28px;padding-bottom:28px}.welcomeEyebrow{margin-bottom:24px}.welcomeLogo{font-size:54px}.character{width:130px;height:130px;margin:20px auto}.character:before{left:35px}.character:after{right:35px}.eyeLine{left:40px;width:48px}.welcomeDescription{margin:8px 0 18px}.welcomeFootnote{margin-top:16px}}
.budgetImpact{margin-top:16px;padding:20px;border-radius:20px;background:#eaf1dd;font-size:13px}.budgetImpact strong{display:block;font-size:28px;margin:8px 0}.sheet .iconBtn{min-width:44px;min-height:44px}.navItem{font-size:11px}.welcomeFootnote,.decisionCard small{font-size:12px}.balanceFoot button{color:var(--ink)}button.priority{min-height:44px;padding:10px 14px}
.appsHint{margin:-5px 0 14px}.shoppingApps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px 12px}.shoppingApp{min-width:0;display:flex;flex-direction:column;align-items:center;gap:9px;border:0;background:none;cursor:pointer;font-size:12px;font-weight:700}.appMark{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:100%;aspect-ratio:1;background:white;border:1px solid #e5e3dc;border-radius:22px;box-shadow:0 2px 3px #242c1b0b;font-size:30px;font-weight:800;letter-spacing:-1px;color:#242724}.shoppingApp .appMark{transition:transform .18s,box-shadow .18s}.shoppingApp:active .appMark{transform:scale(.94)}.appMark-myntra{color:#ed277c;font-style:italic;text-shadow:3px 2px #ff942e}.appMark-nykaa{color:#f62789;font-style:italic;font-size:17px;letter-spacing:-1.4px}.appMark-savana{background:#ffb921;border-color:#ffb921;font-size:19px;font-weight:700;letter-spacing:-1px}.appMark-newme{color:#25885b;font-size:18px;letter-spacing:-1px;font-weight:800}.appMark-amazon{font-family:Georgia,serif;font-size:44px;text-decoration:underline;text-decoration-color:#f7a42a;text-underline-offset:4px}.appMark-flipkart{background:#ffdc39;color:#2364d5;font-style:italic}.appMark-paytm{color:#147bb2;font-size:26px}.addShoppingApp .appMark{background:transparent;border:1px dashed #b9c2aa;box-shadow:none;color:#64764d;font-size:30px;font-weight:400}.appRow>.appMark{width:44px;border-radius:12px;font-size:16px}.appRow>.appMark-amazon{font-size:27px}.appRow>.appMark-nykaa{font-size:12px}.appRow>.appMark-savana,.appRow>.appMark-newme{font-size:12px}.appPicker{display:grid;gap:9px;margin:18px 0}.appChoice{display:flex;align-items:center;gap:14px;text-align:left;padding:12px;border:1px solid var(--line);border-radius:18px;background:white;cursor:pointer}.appChoice>.appMark{width:52px;border-radius:14px;font-size:19px}.appChoice>.appMark-nykaa,.appChoice>.appMark-newme,.appChoice>.appMark-savana{font-size:13px}.appChoice>span:nth-child(2){flex:1}.appChoice b{font-size:14px}.appChoice small{display:block;color:#686d62;font-size:12px;margin-top:4px}.appChoice.selected{border-color:#91a66b;background:#eef5e3}.appChoiceCheck{display:grid;place-items:center;width:28px;height:28px;border:1px solid #c5ceba;border-radius:50%;font-size:17px}.appChoice.selected .appChoiceCheck{background:#c7f45b;border-color:#a9c67a}.shoppingApp:focus-visible{border-radius:16px}
@media(min-width:760px){.shoppingApps{grid-template-columns:repeat(8,minmax(0,1fr));gap:14px}.appMark{border-radius:20px}}
@media(max-width:359px){.shoppingApps{gap:12px 9px}.appMark{border-radius:17px}.appMark-savana{font-size:16px}.appMark-nykaa,.appMark-newme{font-size:14px}.shoppingApp{font-size:11px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
.appCollection{padding:16px;border:1px solid var(--line);border-radius:20px;margin-bottom:18px;background:#eef2e7}.appCollectionTitle{display:flex;align-items:center;gap:12px;margin-bottom:14px}.appCollectionTitle>.appMark{width:52px;font-size:18px;border-radius:14px}.appCollectionTitle>div{flex:1;min-width:0}.collectionFilters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}.exampleLabel{display:block;color:#667354;font-size:10px;margin-top:6px}.originalProductLink:not([hidden]){display:inline-flex;align-items:center;min-height:44px;color:#486033;font-size:13px;font-weight:700}
