:root{--bg:#f4f7f4;--ink:#11382f;--ink2:#46665d;--green:#103e33;--green2:#235749;--lime:#c7f767;--border:#e1e9e3;--white:#fff;--red:#b44135;--gold:#b47a2d;--shadow:0 20px 70px rgba(22,58,47,.08)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);font-family:Inter,Arial,Helvetica,sans-serif;color:var(--ink);line-height:1.55}a{color:inherit}button,input,select,textarea{font:inherit}button{cursor:pointer}h1,h2,h3,p{margin-top:0}h1,h2,h3{letter-spacing:-.04em;line-height:1.15}h1{font-size:clamp(2.0rem,4vw,3.2rem)}h2{font-size:1.6rem}h3{font-size:1.1rem}.muted{color:#6b837b}.small{font-size:.82rem}.overline{text-transform:uppercase;font-size:.73rem;letter-spacing:.16em;font-weight:800;color:#607e70}.hidden{display:none!important}.pill{display:inline-flex;align-items:center;gap:.4rem;border:1px solid #cce3d5;background:#f2f9f2;padding:.35rem .7rem;border-radius:100px;font-size:.78rem;font-weight:700}.appbar{background:#0e332b;color:white;padding:14px 30px;display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:70px}.brand-logo{font-size:1.1rem;letter-spacing:-.06em;font-weight:900;text-decoration:none;line-height:1}.brand-logo span{color:var(--lime)}.btn{display:inline-flex;justify-content:center;align-items:center;gap:9px;border:0;border-radius:12px;padding:12px 18px;background:var(--green);color:white;font-size:.9rem;font-weight:750;text-decoration:none;transition:.18s}.btn:hover{filter:brightness(1.12);transform:translateY(-1px)}.btn-lime{background:var(--lime);color:#193a2c}.btn-ghost{background:#eaf1e9;color:var(--ink)}.btn-outline{border:1px solid #b7c9bf;background:transparent;color:var(--ink)}.btn-sm{padding:8px 12px;font-size:.79rem;border-radius:9px}.btn-danger{background:#fff1ef;color:var(--red)}.btn:disabled{opacity:.55;cursor:not-allowed}.shell{display:grid;grid-template-columns:245px minmax(0,1fr);min-height:calc(100vh - 70px)}.sidebar{background:#fff;border-right:1px solid var(--border);padding:25px 17px}.nav-btn{width:100%;display:flex;align-items:center;gap:12px;text-align:left;padding:13px 14px;color:#59736b;font-size:.89rem;background:transparent;border:0;border-radius:12px;font-weight:700;margin-bottom:5px}.nav-btn.active,.nav-btn:hover{background:#e8f2ed;color:var(--green)}.sidebar-bottom{margin-top:40px;padding:17px;border-radius:17px;background:#0e352b;color:white}.sidebar-bottom p{font-size:.8rem;opacity:.8;margin:8px 0 0}.main{padding:30px clamp(16px,3vw,55px);max-width:1530px;width:100%;margin:auto}.page-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:24px}.page-head h1{margin:8px 0 0}.grid{display:grid;gap:15px}.stats{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:17px}.card{border:1px solid var(--border);background:#fff;border-radius:19px;padding:22px;box-shadow:0 5px 26px rgba(17,56,47,.025)}.stat-value{font-size:clamp(1.3rem,2.3vw,2.05rem);letter-spacing:-.06em;font-weight:850;margin:6px 0 4px;white-space:nowrap}.negative{color:var(--red)}.positive{color:#08774a}.stat-label{font-size:.79rem;font-weight:700;color:#657e74}.two-col{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:17px}.card-top{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:18px}.card-top h2{margin:0}.bar-wrap{background:#ebefe9;border-radius:100px;height:12px;overflow:hidden;display:flex;margin:10px 0 14px}.bar-seg{height:100%}.list-row{display:flex;justify-content:space-between;gap:10px;align-items:center;border-bottom:1px solid #eef2ed;padding:11px 0}.list-row:last-child{border-bottom:0}.value{font-weight:800;white-space:nowrap}.icon-circle{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:12px;background:#edf3eb;margin-right:9px;font-size:1.1rem}.row-left{display:flex;align-items:center;gap:3px;min-width:0}.row-left strong{display:block;font-size:.85rem;word-break:break-word}.row-left small{display:block;color:#7c9589}.empty{padding:21px;border-radius:12px;background:#f5f8f4;color:#71887d;text-align:center}.insight{padding:18px;border-radius:16px;background:#113e32;color:#fff}.insight strong{color:var(--lime)}.insight p{opacity:.86;margin:8px 0 0;font-size:.92rem}.section{display:none}.section.active{display:block}.input,.select,.textarea{width:100%;border:1px solid #cfddd2;padding:12px 13px;background:white;border-radius:11px;outline-color:#7fb79d;color:#12382e}.textarea{min-height:90px;resize:vertical}.field{display:flex;flex-direction:column;gap:6px;font-size:.79rem;font-weight:750;margin-bottom:14px}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.dialog{border:0;border-radius:22px;padding:0;width:min(92vw,560px);box-shadow:0 30px 95px #061c1788}.dialog::backdrop{background:#061b17a0}.dialog-content{padding:25px}.dialog-head{display:flex;align-items:center;justify-content:space-between}.close{border:0;background:transparent;font-size:1.6rem;color:#6f867c}.notice{padding:14px;border-radius:12px;background:#e5f3e7;border:1px solid #c6e4cf;color:#174e37;font-size:.87rem;margin-bottom:15px}.notice.error{background:#fff0ec;color:#a5382b;border-color:#f0c9be}.notice.warning{background:#fff7e7;color:#795920;border-color:#f4e4bc}.task-label{display:flex;align-items:center;gap:10px;font-size:.91rem}.task-label input{width:17px;height:17px;accent-color:#21684e}.chat-shell{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:17px;height:min(71vh,710px);min-height:550px}.chat-main{display:flex;flex-direction:column;min-height:0}.chat-messages{overflow:auto;flex:1;padding:5px}.chat-bubble{padding:14px 17px;border-radius:17px;font-size:.92rem;white-space:pre-wrap;max-width:90%;margin:11px 0;line-height:1.6}.chat-bubble.user{margin-left:auto;background:#e2f6cf}.chat-bubble.assistant{margin-right:auto;background:#eef4f0}.chat-bottom{border-top:1px solid var(--border);padding-top:14px}.chat-input-row{display:flex;gap:9px}.chat-input-row .input{flex:1}.chat-disclaimer{font-size:.73rem;color:#789083;margin:8px 0 0}.steps{counter-reset:step}.step{display:flex;gap:12px;margin:12px 0}.step-num{min-width:30px;height:30px;background:#e4f2db;border-radius:50%;display:grid;place-items:center;font-weight:900}.download{padding:15px 17px;border:1px solid #dbe9df;border-radius:13px;display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:10px}.login-layout{min-height:100vh;display:grid;grid-template-columns:1fr 1fr}.login-art{background:#0e372c;padding:7vw;display:flex;flex-direction:column;justify-content:center;color:#fff;overflow:hidden;position:relative}.login-art h1{font-size:clamp(2.5rem,5vw,5rem);max-width:650px}.login-art h1 em{font-style:normal;color:var(--lime)}.login-art p{max-width:460px;color:#bbd2c7}.login-art img{max-width:210px;margin-top:18px;transform:rotate(-4deg);box-shadow:18px 20px 40px #01120d66;border-radius:4px}.login-form-wrap{display:flex;align-items:center;justify-content:center;padding:30px}.login-panel{max-width:435px;width:100%}.login-panel h2{font-size:2.1rem}.link{font-weight:750;color:#20644d}.login-tabs{display:flex;background:#e6ede8;border-radius:12px;padding:5px;margin:25px 0}.login-tab{background:none;border:0;flex:1;padding:11px;border-radius:9px;font-weight:800;color:#6d8477}.login-tab.active{background:white;color:#184b3a;box-shadow:0 1px 5px #0c2c2220}.legal{font-size:.78rem;color:#6f877c;line-height:1.7}.locked{max-width:670px;margin:40px auto;text-align:center}.locked h1{font-size:2.6rem}.locked .card{padding:35px}.feature-nav{display:flex;gap:10px;overflow:auto;margin-bottom:20px}.feature-nav .nav-btn{width:auto;white-space:nowrap}.mobile-only{display:none}.timeline{display:grid;gap:12px}.timeline .card{padding:18px}.footer{padding:20px 25px;text-align:center;font-size:.76rem;color:#758a80}.status-dot{display:inline-block;width:9px;height:9px;background:#80ca91;border-radius:50%;margin-right:6px}.send-spinner{animation:spin .8s linear infinite;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}
@media(max-width:1120px){.stats{grid-template-columns:repeat(2,1fr)}.shell{grid-template-columns:200px 1fr}.chat-shell{grid-template-columns:1fr}.chat-shell aside{display:none}}
@media(max-width:720px){.login-layout{grid-template-columns:1fr}.login-art{padding:30px 25px 26px;min-height:250px}.login-art h1{font-size:2.3rem;margin:14px 0}.login-art img{display:none}.login-form-wrap{padding:27px 18px}.appbar{padding:14px 17px}.appbar .small{display:none}.shell{display:block}.sidebar{display:none}.main{padding:20px 15px}.page-head{align-items:flex-start;flex-direction:column}.page-head h1{font-size:2rem}.stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.card{padding:17px;border-radius:15px}.stat-value{font-size:1.33rem}.two-col{grid-template-columns:1fr}.mobile-only{display:block}.feature-nav.mobile-only{display:flex;overflow-x:auto;gap:7px;padding-bottom:7px;scrollbar-width:thin}.feature-nav.mobile-only .nav-btn{flex:0 0 auto;width:auto;white-space:nowrap;padding:10px 13px}.field-grid{grid-template-columns:1fr}.chat-shell{height:calc(100vh - 240px);min-height:480px}.chat-bubble{max-width:97%}}

.cash-buttons{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.cash-period{display:flex;align-items:center;gap:20px;flex-wrap:wrap}.cash-period .field{min-width:210px}
.cash-mini-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.cash-mini-grid>div{display:flex;flex-direction:column;gap:4px;background:#f5f8f3;padding:14px;border-radius:12px}.cash-mini-grid strong{font-size:20px}
.cash-entry{display:flex;align-items:center;justify-content:space-between;padding:14px 0;border-bottom:1px solid #ecf1ea;gap:12px}.cash-entry:last-child{border:0}
.cash-entry-main{display:flex;align-items:center;gap:12px;min-width:0}.cash-entry-main>div{min-width:0}.cash-entry-main strong{display:block;overflow-wrap:anywhere}.cash-entry-main small{display:block;color:#7e9586;margin-top:2px}
.cash-entry-badge{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;font-weight:800;background:#e4f4e8;color:#207b50;flex:none}.cash-entry-badge.outflow{background:#ffefea;color:#a4513e}
.cash-entry-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}
@media(max-width:700px){.cash-mini-grid{grid-template-columns:1fr 1fr}.cash-entry{align-items:flex-start;flex-direction:column}.cash-entry-actions{width:100%;justify-content:space-between}.cash-stats{grid-template-columns:1fr 1fr!important}}
