:root{--bg:#f6f8fa;--panel:#fff;--ink:#152231;--muted:#758394;--border:#e8edf0;--accent:#13786f;--accent-d:#0c5b53;--accent-light:#e5f5f0;--red:#c24e5b;--red-bg:#fdf0f1;--shadow:0 8px 28px rgba(25,45,60,.035)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Tahoma,Segoe UI,Arial,sans-serif;background:var(--bg);color:var(--ink);font-size:14px}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.5;cursor:not-allowed}input,select,textarea{outline:none;background:#fff;color:var(--ink);border:1px solid #dce5e9;border-radius:11px;padding:12px 13px;max-width:100%;min-height:44px;width:100%;transition:border .15s,box-shadow .15s}input:focus,select:focus,textarea:focus{border-color:#65a99d;box-shadow:0 0 0 3px rgba(19,120,111,.1)}textarea{resize:vertical}h1,h2,p{margin-top:0}h1{font-size:30px;line-height:1.4;letter-spacing:-.4px}h2{font-size:17px;letter-spacing:-.2px}a{color:var(--accent)}.subtle{color:var(--muted);line-height:1.8}.eyebrow{font-size:10px;font-weight:800;letter-spacing:1.6px;color:#7e918d}.outline,.primary,.small-button{border-radius:10px;border:1px solid transparent;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:700;padding:11px 17px;white-space:nowrap;min-height:42px}.primary{background:var(--accent);color:#fff;box-shadow:0 4px 12px rgba(19,120,111,.12)}.primary:hover:not(:disabled){background:var(--accent-d)}.outline{border-color:#dee8e9;background:#fff;color:#4e626d}.outline:hover{border-color:var(--accent)}.small-button{min-height:32px;padding:6px 11px;border-color:#cce5df;color:var(--accent);background:#f2faf7;font-size:12px}.small-button:hover{background:#e2f3ed}.link-button{padding:6px 0;border:0;background:transparent;color:var(--accent);font-weight:700;white-space:nowrap}.link-button:hover{text-decoration:underline}.danger-link{color:var(--red);font-size:11px}.wide{width:100%}.alert{padding:12px 16px;border-radius:12px;font-weight:600;line-height:1.7;font-size:13px}.alert.success{background:#e7f6ee;color:#16734a;border:1px solid #c2e6d2}.alert.error{background:#fff1f0;color:#a63f45;border:1px solid #ffd6d3}.dismiss{display:flex;justify-content:space-between;align-items:center;gap:15px}.dismiss button{background:transparent;border:0;color:inherit;font-size:22px}.brand-symbol{height:54px;width:54px;background:var(--accent);color:#fff;display:flex;justify-content:center;align-items:center;border-radius:16px;font-size:28px;box-shadow:0 8px 20px rgba(19,120,111,.18)}.brand-symbol.small{height:40px;width:40px;font-size:22px;border-radius:12px;flex:none}.auth-screen,.loading-screen,.setup-screen{min-height:100vh;display:flex;justify-content:center;align-items:center;padding:24px}.loading-screen{color:var(--muted)}.auth-shell{width:100%;max-width:1000px;display:grid;grid-template-columns:1.1fr 1fr;background:#fff;border-radius:24px;overflow:hidden;box-shadow:0 30px 100px rgba(20,40,46,.09);min-height:570px}.auth-intro{padding:65px 50px;background:linear-gradient(145deg,#0a4f49,#167b70 70%,#2c9183);color:#fff;display:flex;flex-direction:column;justify-content:center;gap:21px}.auth-intro .brand-symbol{background:rgba(255,255,255,.15);box-shadow:none}.auth-intro .eyebrow{color:#b9e2d8}.auth-intro h1{font-size:39px;line-height:1.45;margin:0}.auth-intro h1 em{font-style:normal;color:#b9efcc}.auth-intro p{max-width:390px;color:#d2efeb;line-height:2;font-size:15px}.auth-benefits{display:flex;flex-wrap:wrap;gap:10px}.auth-benefits span{background:rgba(255,255,255,.13);padding:8px 10px;border-radius:9px;font-size:12px}.auth-form{padding:58px 50px;display:flex;flex-direction:column;justify-content:center;gap:18px}.auth-form h2{font-size:25px;margin:0}.auth-form p{margin:-12px 0 4px}.auth-form label,.create-workspace label{display:flex;flex-direction:column;gap:8px;font-size:13px;font-weight:700}.auth-form small{text-align:center}.auth-switch{display:flex;background:#f1f4f5;border-radius:12px;padding:5px;margin-bottom:12px}.auth-switch button{border:0;background:none;color:#667884;flex:1 1;padding:10px;border-radius:9px;font-weight:700}.auth-switch button.current{background:#fff;color:var(--accent);box-shadow:0 1px 6px #00000012}.create-workspace,.setup-card{width:100%;max-width:470px;background:#fff;padding:38px;border-radius:23px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:17px}.setup-card{max-width:620px}.create-workspace h1,.setup-card h1{margin:0}.setup-card ol{line-height:2.1;padding-right:25px}.setup-card code{direction:ltr;display:inline-block;background:#f0f4f5;border-radius:5px;padding:0 5px}.create-workspace .subtle{margin:0}.app-shell,.sidebar{min-height:100vh;display:flex}.sidebar{width:248px;flex:0 0 248px;background:#102f36;color:#e8f3f3;padding:25px 15px;flex-direction:column;position:-webkit-sticky;position:sticky;top:0;height:100vh}.sidebar-logo{display:flex;align-items:center;gap:11px;padding:3px 8px 28px}.sidebar-logo strong{display:block;font-size:17px}.sidebar-logo span{display:block;font-size:9px;letter-spacing:1.4px;color:#8bb3b4;margin-top:3px}.workspace-tag{margin:0 8px 27px;border:1px solid #315258;border-radius:12px;padding:13px;display:flex;align-items:center;gap:9px;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.workspace-dot{height:8px;width:8px;background:#79d5a9;border-radius:50%;flex:none}.side-menu{display:flex;flex-direction:column;gap:6px}.side-menu button{width:100%;background:transparent;border:0;color:#aec7c8;text-align:right;padding:13px 15px;border-radius:10px;font-weight:700;display:flex;align-items:center;gap:14px}.side-menu button span{font-size:21px;width:24px;text-align:center}.side-menu button:hover{background:#1b454b;color:#fff}.side-menu button.selected{background:#23565a;color:#fff}.sidebar-bottom{margin-top:auto;border-top:1px solid #315258;padding:20px 8px 0}.signed-user{display:flex;align-items:center;gap:9px;margin-bottom:10px;min-width:0}.avatar{background:#dfefeb;color:#146c64;height:42px;width:42px;min-width:42px;display:inline-flex;justify-content:center;align-items:center;border-radius:12px;font-size:18px;font-weight:800}.signed-user .avatar{background:#2c5f62;color:#d2efeb}.signed-user div{min-width:0}.signed-user small,.signed-user strong{display:block;overflow:hidden;text-overflow:ellipsis;max-width:155px;white-space:nowrap}.signed-user small{color:#91b3b5;margin-top:4px;font-size:10px;direction:ltr;text-align:right}.signout{border:0;color:#aec7c8;background:transparent;padding:12px 4px}.signout:hover{color:#fff}.main-content{max-width:calc(100% - 248px);flex:1 1;padding:36px 38px 30px;min-width:0}.main-header{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:27px}.main-header h1{margin:5px 0 3px}.main-header p{margin:0}.header-actions{display:flex;gap:10px;align-items:center}.header-actions select{width:auto;min-width:150px}.page-sections{display:flex;flex-direction:column;gap:19px;max-width:1300px}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:15px;gap:15px}.stats-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.mini{background:#fff;border:1px solid var(--border);border-radius:16px;padding:22px;display:flex;flex-direction:column;gap:13px;min-width:0;box-shadow:var(--shadow)}.mini>span{font-size:12px;font-weight:700;color:#758594}.mini strong{font-size:clamp(20px,2.4vw,28px);text-align:right;line-height:1.2;color:#1a2a34}.mini.positive strong{color:#12816d}.mini.negative strong{color:var(--red)}.mini small{font-size:11px;color:#a0adb8}.two-panels{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:17px;gap:17px}.panel{background:#fff;border:1px solid var(--border);border-radius:17px;min-width:0;box-shadow:var(--shadow);overflow:hidden}.panel-heading{padding:21px 23px 18px;border-bottom:1px solid #eef1f3;display:flex;justify-content:space-between;align-items:center;gap:12px}.panel-heading h2{margin:0 0 6px;font-size:17px}.panel-heading p{margin:0;font-size:11px;color:#8996a2}.panel-tag{color:#527c78;background:#eaf5f1;border-radius:8px;padding:6px 9px;font-size:11px;white-space:nowrap}.balance-list{padding:0 23px}.balance-row{padding:16px 0;border-bottom:1px solid #f1f3f4;display:flex;gap:12px;align-items:center}.balance-row:last-child{border:0}.balance-name{min-width:0;flex:1 1}.balance-name small,.balance-name strong{display:block}.balance-name strong{font-size:13px}.balance-name small{font-size:11px;margin-top:6px;color:#9ba7b1}.balance-value{text-align:left}.balance-value strong{font-size:16px}.balance-value small{display:block;margin-top:5px;font-size:11px;color:#92a0ab}.balance-value.credit strong,.credit{color:#16866a}.balance-value.debt strong,.debt{color:var(--red)}.transfer-list{padding:12px 22px}.transfer-list.large{padding:18px 24px}.transfer-card{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:15px 0;border-bottom:1px solid #f0f2f4}.transfer-card:last-child{border:0}.transfer-people{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.transfer-people span{font-size:11px;color:#96a4aa}.transfer-actions{display:flex;align-items:center;gap:10px}.transfer-actions>strong{font-size:18px;color:#16866a}.empty{text-align:center;color:#8697a4;padding:39px 20px;display:flex;align-items:center;flex-direction:column;gap:10px}.empty strong{color:#536878}.empty p{font-size:12px;margin:0}.empty-symbol{border-radius:100%;width:58px;height:58px;background:#f2f8f6;display:flex;justify-content:center;align-items:center;font-size:34px;color:#8fc2b9}.entry-list{padding:0 21px}.entry-row{display:flex;gap:12px;align-items:center;border-bottom:1px solid #f0f2f4;padding:14px 2px}.entry-row:last-child{border-bottom:0}.entry-icon{height:43px;width:43px;min-width:43px;display:flex;align-items:center;justify-content:center;border-radius:13px;font-size:23px}.entry-icon.income{background:#e7f8ef;color:#148c6b}.entry-icon.expense{background:#fff0f0;color:#c45761}.entry-icon.settlement{background:#eef3fc;color:#6482bb}.entry-details{flex:1 1;min-width:0}.entry-details small,.entry-details strong{display:block}.entry-details strong{margin-bottom:6px}.entry-details small{color:#90a0a9;font-size:11px;line-height:1.7}.entry-amount{text-align:left;display:flex;align-items:flex-end;flex-direction:column;gap:6px}.entry-amount strong{white-space:nowrap;font-size:15px}.entry-amount strong.income{color:#12876c}.entry-amount strong.expense{color:var(--red)}.entry-amount strong.settlement{color:#6c83b2}.entry-row.voided{opacity:.52}.entry-row.voided strong{text-decoration:line-through}.entry-details small.void-label{color:var(--red)}.footnote{color:#9ba8ae;font-size:11px;line-height:1.9;padding:0 4px}.page-footer{color:#9ca9b2;font-size:11px;padding:30px 0 10px;text-align:center}.loading-line{color:var(--accent);background:#eaf5f0;padding:7px 13px;border-radius:8px;margin-bottom:10px;font-size:12px}.type-selector{padding:21px 23px;display:flex;gap:10px}.type-selector button{background:#f7f9fa;border:1px solid #e6eaec;border-radius:10px;padding:11px 15px;font-weight:700;color:#738492;flex:1 1}.type-selector button.on.inc{background:#ebf8f2;border-color:#a3d9c3;color:#14896a}.type-selector button.on.exp{background:#fff0f0;border-color:#f5bfc6;color:#b34b55}.type-selector button.on.settle{background:#eef3fe;border-color:#c1cfec;color:#5b75ad}.entry-form{padding:0 23px 23px;gap:19px}.entry-form,.entry-form label{display:flex;flex-direction:column}.entry-form label{gap:9px;font-size:12px;font-weight:700;color:#51626e}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:18px;gap:18px}.form-bottom{display:flex;justify-content:space-between;align-items:center;gap:18px}.form-bottom p{font-size:11px;color:#8c9ca5;line-height:1.8;margin:0}.entry-tools{padding:17px 22px;display:flex;gap:10px;align-items:center;border-bottom:1px solid #f2f4f5}.entry-tools input{flex:1 1}.entry-tools select{max-width:170px}.check-label{display:flex;align-items:center;gap:8px;white-space:nowrap;color:#7b8c97;font-size:11px}.check-label input{width:17px;height:17px;min-height:0;accent-color:var(--accent)}.tip{padding:19px 22px;border-radius:13px;background:#ecf6f3;border:1px solid #d6eae2;color:#37675e;line-height:2;font-size:12px}.customer-list,.partners-list{padding:0 22px}.customer-row,.partner-row{border-bottom:1px solid #f0f2f4;padding:20px 0;display:flex;align-items:center;justify-content:space-between;gap:18px}.customer-row:last-child,.partner-row:last-child{border:0}.customer-info{display:flex;align-items:center;gap:12px;min-width:0}.customer-info>div{min-width:0}.customer-info small,.customer-info strong{display:block}.customer-info small{color:#98a5b0;font-size:11px;margin-top:6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:260px}.customer-numbers{display:flex;gap:20px;flex-wrap:wrap;color:#87969e;font-size:11px}.customer-numbers span{display:flex;flex-direction:column;gap:6px}.customer-numbers b{color:#314952;font-size:14px}.partner-side{text-align:left;display:flex;flex-direction:column;align-items:flex-end;gap:9px}.partner-side>strong{font-size:17px}.customer-info .linked{color:#158965}.customer-info .unlinked{color:#a3a6ab}.customer-info .me-tag{display:inline;color:#16876c}.partner-row{flex-wrap:wrap}.partner-email-form{width:100%;display:flex;gap:8px;align-items:center}.partner-email-form input{flex:1 1}.mobile-tabs{display:none}@media(max-width:1150px){.main-content{padding:29px 25px}.sidebar{width:220px;flex-basis:220px}.main-content{max-width:calc(100% - 220px)}.mini{padding:18px}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.two-panels{grid-template-columns:1fr}}@media(max-width:730px){.sidebar{display:none}.app-shell{display:block}.main-content{max-width:none;padding:20px 15px 90px}.main-header{align-items:flex-start;flex-direction:column;gap:14px;margin-bottom:19px}.main-header h1{font-size:25px}.header-actions{width:100%}.header-actions .outline,.header-actions .primary{flex:1 1}.header-actions select{min-width:0;max-width:135px}.stats-grid{gap:9px}.mini{padding:15px;border-radius:13px;gap:10px}.mini strong{font-size:19px}.mini>span{font-size:11px}.two-panels{gap:14px}.panel-heading{padding:17px}.balance-list{padding:0 15px}.transfer-list{padding:12px 15px}.transfer-card{align-items:flex-start;flex-direction:column;gap:13px}.transfer-actions{width:100%;justify-content:space-between}.entry-list{padding:0 12px}.entry-details small{font-size:10px}.entry-amount strong{font-size:13px}.entry-icon{height:35px;width:35px;min-width:35px;font-size:19px}.type-selector{padding:16px 12px}.type-selector button{padding:10px 7px;font-size:12px}.entry-form{padding:0 15px 18px}.form-grid{grid-template-columns:1fr;gap:15px}.form-bottom{align-items:stretch;flex-direction:column}.entry-tools{padding:15px;flex-wrap:wrap}.entry-tools input{width:100%;flex:auto}.entry-tools select{flex:1 1}.customer-row{align-items:flex-start;flex-direction:column}.customer-numbers{width:100%;justify-content:space-between}.mobile-tabs{display:flex;position:fixed;bottom:0;left:0;right:0;background:#fff;z-index:5;box-shadow:0 -8px 25px #1b303010;justify-content:space-around;padding:8px 4px max(8px,env(safe-area-inset-bottom));border-top:1px solid #e7eded}.mobile-tabs button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;flex:1 1;background:transparent;border:0;color:#90a0a7;padding:6px 0}.mobile-tabs button span{font-size:22px}.mobile-tabs button small{font-size:10px}.mobile-tabs button.selected{color:var(--accent);font-weight:800}.auth-shell{grid-template-columns:1fr;max-width:480px}.auth-intro{padding:30px 28px;gap:10px;min-height:250px}.auth-intro h1{font-size:25px}.auth-intro p{margin:0;font-size:12px}.auth-intro .brand-symbol{height:40px;width:40px;font-size:22px}.auth-benefits{display:none}.auth-form{padding:26px 25px 32px}.auth-screen{padding:12px}.create-workspace{padding:30px 22px}.setup-screen{padding:15px}.setup-card{padding:23px}}@media(max-width:360px){.header-actions{flex-wrap:wrap}.stats-grid{grid-template-columns:1fr 1fr}.mini strong{font-size:16px}.panel-heading h2{font-size:15px}.entry-row{gap:8px}.entry-amount strong{font-size:12px}}.ledger-filters{display:grid;grid-template-columns:1.5fr repeat(4,minmax(0,1fr));grid-gap:11px;gap:11px;padding:20px 22px 12px;align-items:end}.ledger-filters label{display:flex;flex-direction:column;gap:7px;font-size:11px;font-weight:700;color:#526b76;min-width:0}.ledger-filters input,.ledger-filters select{font-size:12px;padding:10px;min-height:40px}.ledger-actions{padding:0 22px 13px;display:flex;align-items:center;flex-wrap:wrap;gap:18px}.ledger-summary{padding:0 22px 18px;display:flex;flex-wrap:wrap;gap:9px}.ledger-summary span{background:#f3f8f6;padding:9px 12px;border-radius:9px;color:#677981;font-size:12px;display:flex;gap:8px;align-items:center}.ledger-summary b{color:#203a44;white-space:nowrap}.ledger-summary b.credit{color:#16866a}.ledger-summary b.debt{color:var(--red)}.ledger-table-scroll{margin:0 22px;overflow-x:auto;max-width:calc(100% - 44px);border:1px solid #e8eef0;border-radius:13px}.ledger-table{min-width:1180px;width:100%;border-collapse:collapse;text-align:right;font-size:12px}.ledger-table th{background:#f5f9f8;color:#607980;white-space:nowrap;font-size:11px}.ledger-table td,.ledger-table th{padding:13px 10px;border-bottom:1px solid #edf1f3;vertical-align:top}.ledger-table tr:last-child td{border:0}.ledger-table .ledger-voided{opacity:.5}.ledger-reference summary{font-weight:800;color:#147968;cursor:pointer;list-style:none;direction:ltr;display:inline-block}.ledger-reference summary::-webkit-details-marker{display:none}.ledger-reference code{display:block;font-size:10px;max-width:175px;overflow-wrap:anywhere;margin-top:5px;color:#637784}.ledger-canceled{font-size:10px;color:var(--red);display:block;margin-top:4px}.ledger-table time,.ledger-type{white-space:nowrap}.ledger-type{font-weight:800;font-size:11px;display:inline-block;padding:5px 8px;background:#eff4fa;color:#5c75a1;border-radius:7px}.ledger-type.income{background:#eaf8f0;color:#158466}.ledger-type.expense{background:#fff0f1;color:#b94d5e}.ledger-person{min-width:130px}.ledger-person small,.ledger-person strong{display:block}.ledger-person small{margin-top:5px;color:#8b9ba5;font-size:10px;line-height:1.6}.ledger-description{min-width:135px;max-width:220px;overflow-wrap:anywhere}.ledger-shares{display:grid;grid-gap:5px;gap:5px;min-width:155px}.ledger-shares div{display:flex;align-items:center;justify-content:space-between;gap:9px}.ledger-shares b{white-space:nowrap;font-size:11px}.ledger-table .ledger-empty{text-align:center;padding:30px;color:#8599a4}.ledger-note{padding:12px 22px 19px;font-size:11px;color:#91a0aa;line-height:1.9;margin:0}@media(max-width:1120px){.ledger-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.ledger-filters .ledger-search{grid-column:span 2}}@media(max-width:730px){.ledger-filters{padding:15px;gap:9px}.ledger-actions,.ledger-summary{padding-left:15px;padding-right:15px}.ledger-table-scroll{margin:0 15px;max-width:calc(100% - 30px)}.ledger-note{padding:12px 15px 18px}}