:root{font-family:Manrope,Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#20243c;background:#f7f8fb;font-size:14px}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.5;cursor:not-allowed}a{color:inherit;text-decoration:none}:focus-visible{outline:3px solid #a6a0ee;outline-offset:2px}h1,h2,h3,p{margin-top:0}h1{font-size:30px;letter-spacing:-.045em;line-height:1.2}h2{font-size:19px;letter-spacing:-.03em}h3{font-size:15px}small,.muted{color:#8990a4}.shell{display:grid;grid-template-columns:258px minmax(0,1fr);min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;padding:23px 14px 14px;background:#fff;border-right:1px solid #eceef4;display:flex;flex-direction:column;z-index:20}.brand{display:flex;align-items:center;gap:10px;padding:5px 11px 24px;font-weight:800;font-size:20px;letter-spacing:-.04em}.brand-mark{display:grid;place-items:center;width:34px;height:34px;border-radius:11px;background:#6254d8;color:white;font-size:21px}.brand small{font-size:9px;text-transform:uppercase;letter-spacing:.14em;display:block;font-weight:700;margin-top:-3px}.nav-title{color:#a0a5b5;font-weight:800;letter-spacing:.12em;text-transform:uppercase;font-size:10px;margin:12px 12px 8px}.nav-link{display:flex;align-items:center;gap:12px;width:100%;padding:11px 13px;border-radius:11px;color:#687087;font-weight:700;transition:.15s}.nav-link:hover{background:#f6f5fe;color:#4d42af}.nav-link.active{background:#eeecff;color:#5143c3}.nav-link.sub{padding-left:46px;font-size:13px}.nav-icon{display:grid;place-items:center;width:20px;font-size:18px}.nav-spacer{flex:1}.version{margin-top:12px;padding:13px 12px;border-top:1px solid #edf0f5;display:flex;align-items:center;justify-content:space-between;font-size:12px;color:#8b91a2}.version strong{color:#6254d8}.main{min-width:0;padding:0 36px 54px}.topbar{height:72px;border-bottom:1px solid #e9ebf2;display:flex;align-items:center;justify-content:space-between;gap:12px}.mobile-toggle{display:none}.topbar-right{display:flex;align-items:center;gap:10px;color:#7a8296}.avatar{width:34px;height:34px;border-radius:50%;background:#eeecff;color:#6254d8;display:grid;place-items:center;font-weight:800}.page{max-width:1250px;margin:auto;padding-top:33px}.page-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:24px}.page-head p{margin:8px 0 0;color:#8b91a2}.eyebrow{text-transform:uppercase;font-size:11px;font-weight:800;letter-spacing:.13em;color:#6c5ed5;margin-bottom:8px}.btn{border:0;background:#6355d8;color:white;border-radius:10px;padding:10px 15px;font-weight:800;display:inline-flex;align-items:center;justify-content:center;gap:7px;white-space:nowrap;min-height:40px}.btn:hover{background:#5345c4}.btn.secondary{background:#fff;color:#6254d8;border:1px solid #e5e2fb}.btn.secondary:hover{background:#f6f5ff}.btn.ghost{background:transparent;color:#70778d}.btn.danger{background:#fff1f0;color:#b54d48}.btn.small{min-height:31px;padding:6px 9px;font-size:12px}.card{background:white;border:1px solid #eceef4;border-radius:16px;box-shadow:0 5px 20px rgba(31,38,91,.025);padding:22px}.grid{display:grid;gap:18px}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.metric{position:relative;min-height:118px}.metric .value{font-size:26px;font-weight:800;letter-spacing:-.05em;margin:10px 0 3px}.metric .label{color:#858da0;font-weight:700;font-size:12px}.metric .hint{color:#949aac;font-size:11px}.metric-icon{position:absolute;right:17px;top:17px;border-radius:10px;background:#f1efff;color:#675bd5;padding:7px}.section{margin-top:27px}.section-head{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:13px}.section-head h2{margin:0}.list{display:grid;gap:10px}.item{background:white;border:1px solid #eceef4;border-radius:12px;padding:14px 16px;display:flex;align-items:flex-start;gap:12px}.item-main{flex:1;min-width:0}.item-title{font-weight:800;overflow-wrap:anywhere}.item-sub{color:#9097a7;font-size:12px;margin-top:4px}.item-actions{display:flex;gap:5px}.icon-btn{border:0;background:transparent;color:#9aa0af;border-radius:8px;padding:5px 7px}.icon-btn:hover{background:#f0efff;color:#6254d8}.check{appearance:none;width:19px;height:19px;border:2px solid #c9cdda;border-radius:6px;flex:none;margin:1px 0 0;cursor:pointer}.check:checked{background:#6254d8;border-color:#6254d8}.check:checked:after{content:'✓';color:white;display:block;text-align:center;font-size:13px;line-height:15px}.done .item-title{text-decoration:line-through;color:#a1a5b2}.pill{display:inline-flex;align-items:center;gap:5px;padding:4px 8px;border-radius:100px;font-size:11px;font-weight:800;background:#f0efff;color:#6254d8}.pill.danger{background:#fff0ef;color:#cc6259}.pill.green{background:#e6f8f3;color:#278f78}.pill.gray{background:#f1f2f6;color:#858c9b}.dot{width:7px;height:7px;border-radius:50%;background:var(--dot,#6254d8)}.chips{display:flex;flex-wrap:wrap;gap:5px;margin-top:8px}.filters,.toolbar{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.filters{margin-bottom:17px}.tabs{display:flex;gap:4px;background:#efeff5;padding:4px;border-radius:11px;width:max-content;max-width:100%;overflow:auto}.tab{border:0;background:transparent;color:#858b9e;border-radius:8px;padding:8px 11px;font-weight:800;white-space:nowrap}.tab.active{background:white;color:#5346c2;box-shadow:0 1px 5px #23204b15}.field{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:800;color:#626980}.field input,.field select,.field textarea,.filters input,.filters select,.toolbar input,.toolbar select{width:100%;border:1px solid #e1e4ee;border-radius:9px;background:#fff;color:#252a40;padding:10px 11px;outline:none}.field input:focus,.field select:focus,.field textarea:focus,.filters input:focus,.filters select:focus{border-color:#9d94eb;box-shadow:0 0 0 3px #efedff}.field textarea{min-height:88px;resize:vertical}.filters input{max-width:250px}.filters select{width:auto}.empty{padding:30px;color:#9299aa;text-align:center;background:#fff;border:1px dashed #dfe2ed;border-radius:13px}.summary{color:#7e8598;font-size:13px}.project-card{cursor:pointer;transition:.15s}.project-card:hover{border-color:#bdb7f3;transform:translateY(-2px)}.project-card h2{margin:11px 0 8px}.project-card p{color:#8d94a5;line-height:1.5;min-height:35px}.project-card .foot{display:flex;justify-content:space-between;margin-top:18px;color:#8c93a6;font-size:12px}.back{border:0;background:transparent;color:#6c5ed5;font-weight:800;margin-bottom:14px;padding:0}.detail-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,1fr);gap:18px}.detail-line{display:grid;grid-template-columns:125px 1fr;gap:10px;margin:10px 0;font-size:13px}.detail-line b{color:#9299a8}.timeline{border-left:2px solid #e6e2fc;margin-left:7px;padding-left:20px}.timeline-entry{position:relative;margin-bottom:18px}.timeline-entry:before{content:'';position:absolute;left:-27px;top:4px;width:10px;height:10px;border-radius:50%;background:#6b5bd2}.finance-row{display:grid;grid-template-columns:110px minmax(130px,1fr) minmax(100px,1fr) 130px 30px;gap:10px;align-items:center}.amount{font-weight:800;white-space:nowrap;text-align:right}.amount.income{color:#209274}.amount.expense{color:#d36e62}.amount.transfer{color:#73809f}.report-bar{display:flex;align-items:center;gap:12px;margin:12px 0}.report-bar .name{width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:700}.track{height:8px;background:#f0eff6;border-radius:10px;flex:1;overflow:hidden}.track span{display:block;height:100%;border-radius:10px;background:var(--bar,#7064dc)}.report-bar .sum{width:100px;text-align:right;font-weight:800}.budget-row{display:grid;grid-template-columns:130px 1fr 110px 85px;gap:12px;align-items:center;margin:13px 0}.login-wrap{min-height:100vh;display:grid;place-items:center;padding:20px;background:radial-gradient(circle at 15% 10%,#eeebff,transparent 35%),#f7f8fb}.login{max-width:410px;width:100%;padding:35px}.login .brand{padding:0 0 25px}.login h1{font-size:27px}.login .field{margin:14px 0}.login .btn{width:100%;margin-top:8px}.error{background:#fff0ef;color:#a7433a;border-radius:9px;padding:10px 12px;margin:12px 0}.dialog-shade{position:fixed;inset:0;background:#181a36a3;z-index:40;display:grid;place-items:center;padding:15px}.dialog{width:min(650px,100%);max-height:calc(100vh - 30px);overflow:auto;background:white;border-radius:17px;box-shadow:0 20px 70px #17193045;padding:23px}.dialog-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:17px}.dialog-head h2{margin:0}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.field.full{grid-column:1/-1}.dialog-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:22px}.tag-options{display:flex;flex-wrap:wrap;gap:8px}.tag-option{display:inline-flex;align-items:center;gap:5px;padding:6px 9px;border:1px solid #e5e6ee;border-radius:8px}.tag-option input{accent-color:#6254d8}.toast{position:fixed;bottom:22px;right:22px;background:#272748;color:#fff;padding:11px 16px;border-radius:10px;z-index:60;box-shadow:0 9px 30px #1d204633}.login-note{color:#8b91a2;font-size:12px;line-height:1.6}.menu-overlay{display:none}@media(max-width:1050px){.grid.four{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-grid{grid-template-columns:1fr}}@media(max-width:760px){.shell{display:block}.sidebar{position:fixed;left:0;top:0;width:258px;transform:translateX(-100%);transition:transform .2s}.sidebar.open{transform:none}.menu-overlay.show{display:block;position:fixed;inset:0;background:#15182e80;z-index:19}.main{padding:0 17px 40px}.topbar{height:58px}.mobile-toggle{display:inline-flex}.page{padding-top:23px}.page-head{align-items:flex-start}.page-head h1{font-size:24px}.grid.three,.grid.two{grid-template-columns:1fr}.finance-row{grid-template-columns:80px 1fr 105px}.finance-row .account-col,.finance-row .icon-btn{display:none}.budget-row{grid-template-columns:90px 1fr 70px 62px;gap:6px;font-size:11px}}@media(max-width:520px){.grid.four{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.card{padding:16px}.metric{min-height:104px}.metric .value{font-size:21px}.metric-icon{display:none}.page-head{flex-direction:column}.page-head .btn{align-self:flex-start}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.report-bar .name{width:78px}.report-bar .sum{width:80px;font-size:11px}.item{padding:11px}.item-actions{gap:0}.filters input{max-width:100%;width:100%}}
:root{color-scheme:light}
@media(max-width:760px){.finance-row .icon-btn{display:inline-flex}.finance-row>span:last-child{grid-column:2/-1;display:flex;justify-content:flex-end}}
