:root{font-family:DM Sans,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#1e302a;background:#f5f6f2;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:wait;opacity:.6}h1,h2,h3,p{margin-top:0}h1,h2,h3,strong,b{font-family:Manrope,DM Sans,sans-serif}h1{letter-spacing:-.05em}a{color:inherit}.eyebrow{font-weight:800;font-size:10px;letter-spacing:.15em;color:#508472}.eyebrow.light{color:#b6d5bc}.app-shell{display:flex;min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:248px;background:#153a31;color:#d1e3d9;display:flex;flex-direction:column;z-index:20;padding:28px 13px 17px}.brand{display:flex;align-items:center;gap:12px;padding:0 13px 36px;color:#fff}.brand-mark,.login-mark{font-family:Manrope,sans-serif;font-size:31px;font-weight:800;letter-spacing:-.12em;line-height:1}.brand-mark span,.login-mark span{color:#b8d678}.brand strong{display:block;font-size:15px;letter-spacing:.1em}.brand small{display:block;font-size:9px;letter-spacing:.26em;margin-top:3px;color:#a4c8b2}.nav-label{font-size:9px;font-weight:800;letter-spacing:.17em;color:#719e8e;margin:0 12px 12px}.sidebar nav{display:flex;flex-direction:column;gap:4px}.nav-link{width:100%;background:transparent;border:0;color:#bbd2c7;display:flex;align-items:center;gap:12px;padding:13px 14px;border-radius:10px;text-align:left;font-size:12px;font-weight:700;min-height:46px}.nav-link:hover{background:#ffffff12;color:#fff}.nav-link.active{background:#e6f2df;color:#184638}.nav-active-dot{width:6px;height:6px;margin-left:auto;background:#3f906e;border-radius:50%}.sidebar-bottom{margin-top:auto}.private-note{border:1px solid #ffffff20;background:#ffffff0b;border-radius:12px;padding:13px;display:flex;gap:10px;align-items:flex-start;margin-bottom:13px}.private-note svg{color:#c1dd9c;flex-shrink:0}.private-note b{font-size:10px;color:#fff;display:block}.private-note span{display:block;font-size:9px;line-height:1.55;color:#b9d3c3;margin-top:4px}.logout{width:100%;background:none;color:#b4cfc2;border:0;text-align:left;padding:12px 14px;display:flex;gap:10px;align-items:center;font-size:11px}.logout:hover{color:#fff}.main-shell{margin-left:248px;min-width:0;width:calc(100% - 248px)}.topbar{height:66px;border-bottom:1px solid #e2e7df;background:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 32px}.breadcrumb{display:flex;align-items:center;gap:9px;font-size:10px;font-weight:800;letter-spacing:.08em;color:#a7b5ab}.breadcrumb span{color:#31554a;letter-spacing:0}.top-right,.top-left{display:flex;align-items:center;gap:17px}.private-badge{display:flex;align-items:center;gap:6px;border:1px solid #e1ede3;background:#f6fbf4;color:#2f6c52;padding:7px 10px;border-radius:999px;font-size:9px;font-weight:800;letter-spacing:.08em}.private-badge span{background:#56ab73;width:6px;height:6px;border-radius:50%}.avatar{height:33px;width:33px;display:grid;place-items:center;border-radius:10px;background:#e2eadf;color:#315849;font-weight:800;font-size:10px}.content{max-width:1600px;padding:26px 32px 18px;margin:auto}.context-strip{display:flex;justify-content:space-between;align-items:center;gap:12px;border:1px solid #dcead6;background:#ecf4e9;color:#547366;border-radius:9px;padding:9px 12px;font-size:10px}.context-strip span:first-child{display:flex;align-items:center;gap:7px}.toolbar{display:flex;align-items:end;justify-content:space-between;gap:14px;padding:29px 0 23px}.toolbar-title h2{font-size:18px;margin:4px 0 0;letter-spacing:-.04em}.period-control{display:flex;align-items:center;gap:9px;font-size:10px;color:#728178;font-weight:700}.period-control select{height:37px;min-width:165px;background:#fff;color:#2c3f35;border:1px solid #dde4dc;border-radius:8px;padding:0 10px;font-weight:700;font-size:11px}.section-title{display:flex;justify-content:space-between;align-items:end;gap:18px;margin:0 0 18px}.section-title h1{font-size:30px;margin:5px 0 4px;line-height:1.22}.section-title p{font-size:11px;color:#78867c;margin:0;line-height:1.5}.outline-action{height:39px;border:1px solid #c6dbbf;border-radius:8px;background:#e7f1e0;color:#25533d;font-weight:800;font-size:11px;padding:0 14px;display:flex;align-items:center;gap:7px;white-space:nowrap}.outline-action:hover,.primary:hover{filter:brightness(.95)}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:12px}.metric{background:#fff;border:1px solid #e8ebe4;border-radius:12px;min-height:128px;padding:17px 18px;box-shadow:0 4px 15px #153a3107}.metric-head{display:flex;justify-content:space-between;align-items:center;font-size:10px;font-weight:800;color:#667a6e}.metric-head svg{color:#61987b}.metric.red .metric-head svg{color:#cd7c63}.metric.blue .metric-head svg{color:#5f94a3}.metric.gold .metric-head svg{color:#be9862}.metric strong{display:block;font-size:25px;letter-spacing:-.055em;color:#193e31;margin:13px 0 5px;white-space:nowrap}.metric small{color:#9aa89d;font-size:9px}.overview-grid{display:grid;grid-template-columns:.88fr 1.12fr;gap:12px;margin-bottom:12px}.balance-card{background:#194536;color:#fff;min-height:245px;border-radius:12px;padding:22px 25px;position:relative;overflow:hidden}.balance-card:before{content:"";position:absolute;width:220px;height:220px;border:1px solid #ffffff22;border-radius:50%;right:-75px;top:-95px;box-shadow:0 0 0 55px #ffffff09,0 0 0 105px #ffffff04}.balance-card p{color:#c9dcca;font-size:11px;margin:17px 0 4px}.balance-card strong{font-size:35px;letter-spacing:-.05em}.balance-rule{display:flex;flex-wrap:wrap;gap:8px 18px;border-top:1px solid #ffffff2a;margin-top:18px;padding-top:14px}.balance-rule span{display:flex;flex-direction:column;gap:3px;font-size:9px;color:#bbd1bd}.balance-rule b{color:#fff;font-size:11px}.balance-card small{display:block;margin-top:14px;font-size:9px;color:#adcaaf}.panel{background:#fff;border:1px solid #e7eae2;border-radius:12px;box-shadow:0 4px 15px #153a3106;min-width:0}.category-panel{padding:20px 22px}.panel-header{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:18px}.panel-header h2{font-size:15px;letter-spacing:-.03em;margin:5px 0 0}.link-button{border:0;background:transparent;color:#4b8264;font-size:10px;font-weight:800;display:flex;align-items:center;white-space:nowrap}.category-line{margin-bottom:13px}.category-line>div:first-child{display:flex;justify-content:space-between;gap:10px;font-size:10px;color:#617568}.category-line b{color:#294437;white-space:nowrap}.bar-track{height:6px;border-radius:20px;background:#eff3ed;margin-top:7px;overflow:hidden}.bar-track span{display:block;height:100%;border-radius:20px;background:#7da988}.empty-inline{padding:55px 0;text-align:center;color:#9aa89a;font-size:11px}.year-panel{padding:18px 22px 16px}.chart-legend{font-size:9px;color:#8b998b;display:flex;align-items:center;gap:5px}.chart-legend i{height:7px;width:7px;background:#8aac9a;border-radius:2px}.chart-legend i:nth-of-type(2){background:#d5b779;margin-left:8px}.chart{height:118px;display:grid;grid-template-columns:repeat(12,1fr);gap:8px;border-top:1px solid #edf1e9;padding-top:14px}.chart-month{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:end;gap:5px}.chart-bars{height:83px;width:80%;display:flex;gap:3px;align-items:end;justify-content:center}.chart-bars span{width:35%;min-height:0;border-radius:3px 3px 0 0}.expense-bar{background:#8aac9a}.commission-bar{background:#d5b779}.chart-month small{font-size:9px;color:#9aaa9d;text-transform:uppercase}.list-tools{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:15px 18px;border-bottom:1px solid #edf0e9}.search{height:36px;width:min(100%,390px);display:flex;align-items:center;gap:9px;border:1px solid #e2e8df;border-radius:8px;padding:0 11px;color:#8d9f91}.search input{border:0;outline:none;flex:1;min-width:0;font-size:11px;color:#233f32}.search input::placeholder{color:#a8b3a9}.count-pill{background:#f3f6f0;color:#789182;padding:6px 9px;border-radius:7px;font-size:9px;font-weight:800;white-space:nowrap}.table-wrap{overflow-x:auto}.table-wrap table{width:100%;border-collapse:collapse;text-align:left}.table-wrap th{background:#fbfcf9;color:#8fa296;text-transform:uppercase;font-size:9px;letter-spacing:.08em;font-weight:800;white-space:nowrap;padding:14px 16px;border-bottom:1px solid #e9eee8}.table-wrap td{font-size:10px;padding:14px 16px;border-bottom:1px solid #eff1ed;color:#4f6256;white-space:nowrap}.table-wrap td b{display:block;color:#294638;font-size:10px}.table-wrap td small{display:block;color:#99a79a;margin-top:4px}.table-wrap tr:last-child td{border-bottom:0}.table-wrap .muted{color:#839787}.table-wrap .money{font-variant-numeric:tabular-nums;font-weight:700}.table-wrap .strong{color:#1e4635}.income{color:#2a8a5f!important}.outgoing{color:#be6c5c!important}.tag{display:inline-block;padding:6px 8px;background:#f0f4ed;border-radius:5px;color:#5c7666;font-size:9px;font-weight:700}.status{display:inline-block;border-radius:5px;padding:6px 8px;font-size:9px;font-weight:800}.status.paid{color:#348560;background:#e9f5ea}.status.pending{color:#b38943;background:#fff5e4}.row-edit,.icon-btn{border:0;background:transparent;color:#58806b;border-radius:6px;padding:7px;display:inline-grid;place-items:center}.row-edit:hover,.icon-btn:hover{background:#e6f0e5}.empty{text-align:center;padding:54px 18px;color:#91a395}.empty svg{color:#aac4af}.empty h3{color:#3e5e49;font-size:14px;margin:11px 0 6px}.empty p{font-size:11px;margin:0}.people-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.people-panel{overflow:hidden}.people-panel .panel-header{padding:18px 17px;margin:0}.people-panel .table-wrap th,.people-panel .table-wrap td{padding:13px 10px}.settings-grid{display:grid;grid-template-columns:300px 1fr;gap:12px;align-items:start}.settings-add{padding:20px}.settings-add label{display:block;margin:14px 0;color:#607265;font-size:10px;font-weight:800}.settings-add input,.settings-add select,.modal input,.modal select,.modal textarea{display:block;width:100%;margin-top:7px;border:1px solid #dce5dc;border-radius:7px;background:#fff;color:#244030;padding:10px 11px;outline:none;font-size:11px}.settings-add input:focus,.settings-add select:focus,.modal input:focus,.modal select:focus,.modal textarea:focus,.login-card input:focus{border-color:#639979;box-shadow:0 0 0 3px #85bd861e}.settings-add>p{font-size:10px;line-height:1.5;color:#99a99b;margin:15px 0 0}.primary{border:0;border-radius:7px;background:#24543e;color:#fff;min-height:39px;padding:9px 14px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:11px;font-weight:800}.settings-add .primary{width:100%}.settings-lists{display:grid;grid-template-columns:1fr 1fr;gap:12px}.settings-list{padding:18px}.chip-list{display:flex;flex-wrap:wrap;gap:6px;max-height:155px;overflow:auto}.chip-list span{background:#f3f6f1;color:#5f7966;border-radius:5px;padding:6px 8px;font-size:9px}.audit-list{overflow:hidden}.audit-item{display:flex;align-items:center;gap:12px;padding:15px 20px;border-bottom:1px solid #eef0ec}.audit-item:last-child{border:0}.audit-icon{width:30px;height:30px;display:grid;place-items:center;color:#4b8360;background:#eaf3e9;border-radius:8px}.audit-item b{font-size:10px;display:block}.audit-item small{font-size:9px;color:#9bad9d}.page-alert,.form-error{background:#fff0e8;color:#995640;border:1px solid #f2d5c4;border-radius:7px;padding:10px 12px;font-size:11px;margin-bottom:14px}.page-alert{display:flex;justify-content:space-between}.page-alert button{border:0;background:none;color:#995640}.loading-card{padding:50px;text-align:center;background:#fff;color:#8c9c8f;border-radius:12px}.footer{display:flex;justify-content:space-between;gap:10px;padding:26px 0 5px;color:#96a499;font-size:9px}.footer span:first-child{display:flex;align-items:center;gap:5px}.modal-backdrop{position:fixed;inset:0;z-index:40;background:#0c241bcc;display:flex;align-items:center;justify-content:center;padding:16px}.modal{background:#fff;width:min(590px,100%);max-height:calc(100dvh - 32px);overflow-y:auto;border-radius:13px;padding:24px;box-shadow:0 25px 75px #091a1255}.modal-heading{display:flex;align-items:start;justify-content:space-between;margin-bottom:19px}.modal-heading h2{font-size:21px;margin:4px 0 0;letter-spacing:-.04em}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.form-grid label,.settings-add label{font-size:10px;font-weight:800;color:#586e5f}.form-grid .wide{grid-column:span 2}.form-grid small{display:block;color:#899a8d;font-weight:400;margin-top:5px}.form-hint{color:#859989;font-size:10px;margin:14px 0}.modal-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:20px}.ghost-btn{border:1px solid #dfe8de;border-radius:7px;background:#fff;color:#627968;font-size:11px;font-weight:700;padding:8px 14px}.login-screen{display:grid;grid-template-columns:1fr 1fr;min-height:100vh}.login-left{background:#153c30;color:#fff;padding:45px 7vw;display:flex;flex-direction:column;position:relative;overflow:hidden}.login-left:before{content:"";position:absolute;width:450px;height:450px;border:1px solid #ffffff24;border-radius:50%;right:-180px;top:20%;box-shadow:0 0 0 70px #ffffff06,0 0 0 140px #ffffff06,0 0 0 220px #ffffff04}.login-copy{margin:auto 0;position:relative}.login-copy h1{font-size:clamp(42px,5vw,78px);line-height:1.08;margin:18px 0 23px}.login-copy p{font-size:14px;line-height:1.7;color:#bed3c3;max-width:440px}.login-bottom{font-size:11px;color:#9ac0a9}.login-right{background:#f8faf5;display:grid;place-items:center;padding:28px}.login-card{width:min(360px,100%);background:#fff;padding:34px;border:1px solid #e9eee6;border-radius:13px;box-shadow:0 22px 65px #18362613}.security-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:11px;background:#e8f3e5;color:#357256;margin-bottom:28px}.login-card h2{font-size:26px;letter-spacing:-.04em;margin:8px 0}.login-card p{font-size:11px;line-height:1.6;color:#7e9081;margin-bottom:26px}.login-card label{font-weight:800;font-size:10px;color:#446450}.login-card input{display:block;width:100%;border:1px solid #d9e2d7;border-radius:8px;margin-top:7px;margin-bottom:16px;height:43px;padding:0 11px;outline:none}.login-card .primary{width:100%;height:43px}.login-card small{display:block;color:#a1b0a2;font-size:9px;line-height:1.5;margin-top:23px}.login-card .form-error{margin:13px 0 0}.boot-screen{min-height:100vh;background:#153a31;color:#fff;display:grid;place-content:center;text-align:center;gap:8px}.boot-screen p{font-size:12px;color:#bdd0bf}.mobile-backdrop,.menu-button{display:none}@media(max-width:1200px){.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.people-grid,.settings-grid{grid-template-columns:1fr}.settings-lists{grid-template-columns:1fr 1fr}}@media(max-width:800px){.sidebar{transform:translate(-100%);transition:transform .2s}.sidebar.open{transform:translate(0)}.mobile-backdrop{display:block;position:fixed;inset:0;background:#061b16aa;border:0;z-index:19}.menu-button{display:grid;place-items:center;color:#3a5f49;border:0;background:transparent;padding:5px}.main-shell{margin-left:0;width:100%}.topbar{padding:0 17px;height:58px}.content{padding:16px}.toolbar{padding:22px 0}.section-title h1{font-size:26px}.overview-grid{grid-template-columns:1fr}}@media(max-width:560px){.private-badge{display:none}.context-strip{font-size:9px}.context-strip span:last-child{display:none}.toolbar{align-items:start}.toolbar-title h2{font-size:15px}.period-control{align-items:stretch;flex-direction:column;gap:3px}.period-control select{min-width:138px;height:42px}.section-title{align-items:start;flex-direction:column}.outline-action{width:100%;justify-content:center;min-height:44px}.metrics{gap:8px}.metric{padding:13px;min-height:114px}.metric strong{font-size:17px}.metric-head{font-size:9px}.metric small{font-size:8px}.balance-card strong{font-size:30px}.year-panel .panel-header{align-items:start;flex-direction:column}.chart{gap:2px}.category-panel,.year-panel{padding:15px}.settings-lists{grid-template-columns:1fr}.footer{flex-direction:column}.form-grid{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}.login-screen{grid-template-columns:1fr;grid-template-rows:200px 1fr}.login-left{padding:24px}.login-copy{margin:auto 0}.login-copy h1{font-size:28px;margin:7px 0}.login-copy p,.login-bottom{display:none}.login-right,.login-card{padding:24px}.modal{padding:18px}.list-tools{align-items:start}.count-pill{white-space:normal}}.login-card p{font-size:12px;color:#576e5e}.login-card small{font-size:10px;color:#607969}.login-card input{height:47px;border-color:#b6c9b9}.login-card .primary{height:47px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
