:root{font-family:Arial,system-ui,sans-serif;color:#303043;background:#fcfcfa;font-synthesis:none;line-height:1.5;font-size:15px}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit;color:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer;min-height:44px;border:0;background:transparent}button:disabled{cursor:wait;opacity:.6}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #71579b;outline-offset:3px}a{color:inherit}h1,h2,h3,p{margin-top:0}h1{font-size:32px;line-height:1.15;letter-spacing:-1px;margin-bottom:12px}h2{font-size:22px;letter-spacing:-.5px;margin-bottom:0}h3{font-size:14px}p{color:#686875}svg{flex-shrink:0}input,select{min-width:0;width:100%;min-height:48px;background:#fff;border:1px solid #dedee2;border-radius:14px;padding:10px 12px}label{display:flex;flex-direction:column;gap:8px;font-weight:600;font-size:14px}.brand{font-size:30px;font-weight:800;letter-spacing:-1.5px}.brand span{color:#df6a57}.eyebrow{display:block;font-size:12px;letter-spacing:1.1px;text-transform:uppercase;color:#626271;margin-bottom:9px}.primary-button,.secondary-button,.google-button{display:inline-flex;align-items:center;justify-content:center;gap:9px;border-radius:999px;padding:12px 22px;font-weight:600;min-height:48px}.primary-button{background:#ff8e7b}.primary-button:hover{background:#ff9e8e}.secondary-button,.google-button{border:1px solid #dcdce0;background:#fff}.text-button{font-size:13px;text-decoration:underline;text-underline-offset:4px}.icon-button{display:inline-flex;align-items:center;justify-content:center;min-width:44px;border-radius:50%}.icon-button:hover{background:#eeeef0}.app-shell{min-height:100dvh}.sidebar{position:fixed;inset:0 auto 0 0;width:230px;border-right:1px solid #e9e9e7;padding:38px 26px;display:flex;flex-direction:column}.sidebar nav{display:grid;gap:8px;margin-top:55px}.sidebar nav button{display:flex;align-items:center;gap:14px;text-align:left;padding:12px 16px;border-radius:999px}.sidebar nav button.active{background:#eee5ff}.sidebar nav svg{width:20px}.sidebar-note{margin-top:auto;display:flex;gap:12px;align-items:center;font-size:12px;color:#686875}.main-content{margin-left:230px;padding:48px 5vw;max-width:1450px}.page-section{max-width:1000px;margin:0 auto}.page-header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:30px}.page-header p{margin:0}.summary-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.budget-card{border-radius:28px;padding:28px}.lilac{background:#eee5ff}.mint{background:#dff4e8}.card-heading{display:flex;align-items:center;justify-content:space-between}.card-heading .eyebrow{margin-bottom:3px}.hero-amount{display:block;font-size:38px;letter-spacing:-1.5px;margin:28px 0 19px;overflow-wrap:anywhere}.budget-meta{display:flex;justify-content:space-between;gap:10px;font-size:13px}.budget-meta strong{white-space:nowrap}.progress-track,.mini-track{height:7px;border-radius:10px;background:#ffffffa0;overflow:hidden;margin:12px 0}.progress-track span{display:block;height:100%;border-radius:10px}.good{background:#37815a}.watch{background:#d29c24}.alert{background:#cb5949}.none{background:#94949f}.status-dot{width:9px;height:9px;border-radius:50%}.budget-total{font-size:12px;color:#626271}.recent-section{margin-top:40px}.section-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px;gap:12px}.section-heading .eyebrow{margin-bottom:2px}.expense-row{display:flex;align-items:center;gap:14px;padding:18px 0;border-bottom:1px solid #e9e9e7}.category-mark{width:40px;height:40px;border-radius:15px;background:#eee5ff;flex-shrink:0;position:relative}.category-mark:after{content:"";position:absolute;inset:13px;border:2px solid #303043;border-radius:5px}.tone-food,.tone-groceries{background:#fff0c6}.tone-transport,.tone-health{background:#dff4e8}.tone-shopping,.tone-travel{background:#ffdcd5}.expense-copy{min-width:0;flex:1}.expense-copy strong{display:block;overflow-wrap:anywhere}.expense-copy span{font-size:12px;color:#73737e}.expense-amount{font-size:15px;white-space:nowrap}.row-actions{display:flex}.danger-quiet{color:#a34135}.date-heading{margin:25px 0 0;color:#686875}.empty-state{display:flex;flex-direction:column;align-items:center;gap:8px;padding:48px 20px;border:1px dashed #dddde1;border-radius:24px;text-align:center;color:#73737e}.empty-state strong{color:#303043}.bottom-nav,.floating-add{display:none}.offline-banner,.error-banner{padding:14px 18px;border-radius:16px;margin-bottom:22px;background:#fff0c6;font-size:13px}.error-banner{background:#ffe3dd;display:flex;align-items:center;justify-content:space-between;gap:12px}.error-banner button{display:flex;align-items:center;gap:6px}.center-state{min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px}.editor-page{max-width:780px;margin:0 auto;padding:30px 28px 60px}.editor-header{display:flex;align-items:center;gap:20px;margin-bottom:30px}.editor-header h1{margin:0;font-size:28px}.editor-header .eyebrow{margin-bottom:3px}.expense-form{max-width:640px;margin:auto}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.name-field{grid-column:1/-1}.suggestion-section{margin:15px 0 24px;min-height:40px}.field-hint{font-size:12px;color:#73737e}.suggestion-chips,.category-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:9px}.suggestion-chips button,.category-chips button{padding:8px 15px;border:1px solid #e3e3e5;border-radius:999px;font-size:13px;overflow-wrap:anywhere;max-width:100%;background:#fff}.suggestion-chips button{background:#fff0c6;border:0}.category-field{border:0;padding:0;margin:0 0 24px}.category-field legend{font-size:14px;font-weight:600}.category-chips .selected{background:#eee5ff;border-color:#b9a8d3}.calculator{background:#f3f3f0;border:1px solid #e9e9e7;border-radius:28px;padding:20px}.calculator-display{text-align:right;padding:8px 6px 20px;overflow-wrap:anywhere}.calculator-display span{display:block;color:#686875;min-height:24px}.calculator-display strong{font-size:34px;letter-spacing:-1px}.keypad{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.keypad button{border-radius:16px;background:#fff;min-height:50px;font-size:22px}.keypad .operator{background:#eee5ff}.keypad .clear-key{background:#fff0c6}.keypad .backspace-key{grid-column:1/-1;display:flex;align-items:center;justify-content:center;background:#e9e9e5}.save-button{width:100%;margin-top:22px}.form-error{color:#9d382c;background:#ffe3dd;padding:12px;border-radius:12px;font-size:14px}.settings-card{border:1px solid #e6e6e4;border-radius:26px;padding:24px;margin-bottom:22px}.settings-card-heading{display:grid;grid-template-columns:1fr 260px;align-items:end;margin-bottom:18px;gap:14px}.budget-column-labels{display:grid;grid-template-columns:1fr 1fr;gap:12px;font-size:12px;color:#73737e}.budget-row{display:grid;grid-template-columns:1fr 124px 124px;gap:12px;align-items:center;padding:12px 0;border-top:1px solid #eee}.budget-row strong{font-size:14px}.budget-row label{position:relative}.budget-row input{padding-left:36px}.money-prefix{position:absolute;left:10px;top:15px;font-size:12px;color:#73737e;font-weight:400}.preferences-card h2{margin-bottom:22px}.settings-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.settings-actions [role=status]{width:100%;font-size:14px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.login-page{min-height:100dvh;display:grid;grid-template-columns:1fr 1fr;max-width:1280px;margin:auto;padding:70px 7vw;align-items:center;gap:70px}.login-panel .brand{margin-bottom:60px}.login-panel h1{font-size:48px;max-width:450px}.login-panel p{max-width:430px}.login-preview{display:flex;gap:40px;margin:32px 0}.login-preview span,.login-preview strong{display:block}.login-preview span{font-size:12px;color:#73737e}.login-preview strong{font-size:23px;margin-top:6px}.google-button{width:100%;max-width:400px}.google-button svg{width:21px;height:21px}.setup-note{font-size:12px;margin-top:16px}.login-panel footer{display:flex;gap:20px;margin-top:45px;font-size:12px;color:#73737e}.login-art{background:#eee5ff;border-radius:32px;min-height:480px;position:relative;padding:70px 30px}.art-card{background:#fcfcfa;border-radius:28px;padding:28px;box-shadow:0 8px 25px #30304308;display:flex;flex-direction:column}.art-main{transform:rotate(-5deg);max-width:260px;margin:auto}.art-main strong{font-size:36px;margin:16px 0}.art-main small{color:#73737e}.art-small{position:relative;background:#dff4e8;max-width:210px;margin:-5px 0 0 auto;transform:rotate(5deg)}.art-small strong{font-size:32px}.mini-track i{display:block;width:36%;height:100%;background:#37815a}.art-dots{display:flex;gap:10px;margin:32px}.art-dots i{width:16px;height:16px;border-radius:50%;background:#ff8e7b}.art-dots i:nth-child(2){background:#fff0c6}.art-dots i:nth-child(3){background:#dff4e8}.skeleton-list span{display:block;height:62px;border-radius:14px;background:#eeeef0;margin:12px 0}@media(max-width:1000px){.sidebar{width:190px;padding:30px 18px}.main-content{margin-left:190px;padding:34px 28px}.summary-grid{gap:14px}.budget-card{padding:22px}.hero-amount{font-size:32px}.page-header{align-items:flex-start}.login-page{gap:30px;padding:40px}.login-panel h1{font-size:40px}.settings-card-heading{grid-template-columns:1fr 200px}.budget-row{grid-template-columns:1fr 94px 94px}}@media(max-width:700px){h1{font-size:29px}.sidebar,.desktop-add{display:none}.main-content{margin-left:0;padding:30px 20px 170px}.page-header{margin-bottom:26px}.summary-grid{grid-template-columns:1fr;gap:16px}.budget-card{padding:24px}.hero-amount{font-size:38px;margin-top:20px}.bottom-nav{position:fixed;bottom:0;left:0;right:0;background:#fcfcfaf5;border-top:1px solid #e6e6e4;display:grid;grid-template-columns:repeat(4,1fr);padding:8px 12px max(8px,env(safe-area-inset-bottom));z-index:10}.bottom-nav button{display:flex;flex-direction:column;align-items:center;gap:4px;font-size:11px;border-radius:18px;min-height:52px}.bottom-nav svg{width:21px;height:21px}.bottom-nav .active{background:#eee5ff}.floating-add{display:flex;position:fixed;bottom:90px;right:20px;background:#ff8e7b;align-items:center;gap:9px;padding:12px 20px;border-radius:999px;box-shadow:0 5px 18px #30304316;z-index:9;font-weight:600}.recent-section{margin-top:30px}.expense-row{gap:10px;flex-wrap:wrap}.category-mark{width:34px;height:36px}.category-mark:after{inset:11px}.row-actions{margin-left:auto}.expense-amount{font-size:14px}.expense-copy{flex-basis:calc(100% - 180px)}.settings-card{padding:18px 14px}.settings-card-heading{grid-template-columns:1fr}.budget-column-labels{margin-left:35%;grid-template-columns:1fr 1fr}.budget-row{grid-template-columns:minmax(76px,1fr) minmax(0,1fr) minmax(0,1fr);gap:7px}.budget-row strong{font-size:12px;overflow-wrap:anywhere}.budget-row input{padding-left:29px;padding-right:5px;font-size:13px}.money-prefix{left:7px;font-size:10px}.preferences-card .form-grid{grid-template-columns:1fr}.editor-page{padding:22px 18px 40px}.form-grid{grid-template-columns:1fr}.editor-header{gap:12px}.editor-header h1{font-size:26px}.login-page{display:block;padding:36px 24px}.login-panel{max-width:440px;margin:auto}.login-panel .brand{margin-bottom:64px}.login-panel h1{font-size:40px}.login-art{display:none}.login-preview{gap:28px}.login-panel footer{margin-top:36px}.login-preview strong{font-size:21px}}@media(prefers-reduced-motion:no-preference){button{transition:background .15s}.progress-track span{transition:width .2s}}.expense-copy strong{word-break:break-word}.login-panel footer a{display:inline-flex;align-items:center;min-height:44px}.calculator-display{min-width:0}.editor-page input[type=date]{max-width:100%}@media(max-width:380px){.budget-row{grid-template-columns:1fr 1fr;gap:8px}.budget-row strong{grid-column:1/-1;font-size:13px}.budget-column-labels{margin-left:0;gap:8px}.budget-row input{font-size:14px}.money-prefix{font-size:12px}}
