*{box-sizing:border-box}body{margin:0;font-family:Tahoma,Arial,sans-serif;background:#f4f7fb;color:#16324f}body.login{display:grid;place-items:center;min-height:100vh;background:linear-gradient(135deg,#092d50,#17679b)}.login-card{width:min(520px,92%);background:#fff;padding:32px;border-radius:20px;box-shadow:0 20px 60px #0004}.login-card h1{margin-top:0}.login-card form{display:grid;gap:14px}.app{min-height:100vh;display:grid;grid-template-columns:260px 1fr}.app aside{background:linear-gradient(#0b355b,#092844);color:white;padding:24px 16px;display:flex;flex-direction:column}.brand{font-size:22px;padding:8px 10px 24px;display:flex;gap:10px}.brand b{font-size:28px}nav{display:grid;gap:7px}nav a,.logout{color:#dcecff;text-decoration:none;padding:14px;border-radius:10px}nav a:hover,nav a.active{background:#1682c7;color:#fff}.logout{margin-top:auto}main{min-width:0}header{height:76px;background:#fff;display:flex;align-items:center;gap:18px;padding:0 28px;box-shadow:0 2px 12px #1231}header h1{font-size:22px;margin:0;flex:1}.menu{display:none;border:0;background:none;font-size:25px}.content{padding:24px}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:20px}.card,.panel{background:#fff;border-radius:14px;padding:20px;box-shadow:0 3px 18px #1431}.card{border-top:4px solid}.card small,.card span{display:block;color:#678}.card strong{font-size:30px;display:block;margin:10px 0}.green{border-color:#26a65b}.red{border-color:#dc4153}.blue{border-color:#2684d8}.gold{border-color:#e6ad23}.grid2{display:grid;grid-template-columns:1fr 1.7fr;gap:20px}.panel h2{margin-top:0;font-size:19px}.bar{height:18px;background:#e8eef5;border-radius:20px;overflow:hidden}.bar i{display:block;height:100%;background:#e6ad23}.ok{color:#087c43}.bad{color:#bd2940}.actions{display:flex;gap:10px;flex-wrap:wrap;margin:15px 0}.btn{display:inline-block;border:0;border-radius:9px;padding:11px 18px;color:#fff;text-decoration:none;cursor:pointer;font:inherit}.primary{background:#197ac0}.success{background:#219653}.danger{background:#d94155}.period{margin-bottom:16px}.period input,input,select{width:100%;padding:11px;border:1px solid #cad5e0;border-radius:8px;background:white;font:inherit}.period input{width:200px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-grid label{display:grid;gap:6px}.wide{grid-column:1/-1}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;white-space:nowrap}th,td{padding:11px;border-bottom:1px solid #e2e9f0;text-align:right}th{background:#eef4f9}.alert{padding:12px;border-radius:8px;margin:10px 0}.alert.error{background:#ffe5e8;color:#9f2130}.alert.ok{background:#dff7e9;color:#087c43}@media(max-width:900px){.app{grid-template-columns:1fr}.app aside{position:fixed;right:-280px;top:0;bottom:0;width:260px;z-index:10;transition:.25s}.nav-open aside{right:0}.menu{display:block}.cards{grid-template-columns:1fr 1fr}.grid2{grid-template-columns:1fr}}@media(max-width:560px){.cards,.form-grid{grid-template-columns:1fr}.wide{grid-column:auto}.content{padding:14px}.card strong{font-size:24px}}@media print{aside,header,.actions,.period{display:none!important}.app{display:block}.content{padding:0}.panel{box-shadow:none}}

/* v2.2 compact */
:root{--sidebar:205px}.app{grid-template-columns:var(--sidebar) 1fr}.app aside{padding:14px 10px}.brand{font-size:17px;padding:5px 8px 14px}nav a,.logout{padding:9px 11px;font-size:13px}header{height:58px;padding:0 18px}header h1{font-size:18px}.content{padding:15px}.card,.panel{padding:13px;border-radius:10px}.card strong{font-size:22px}.btn{padding:8px 12px;font-size:13px}input,select{padding:8px;font-size:13px}th,td{padding:8px;font-size:12px}.lang-switch{background:#eef5fb;padding:7px 10px;border-radius:7px;text-decoration:none}.security-panel{max-width:700px}.otp-input{text-align:center;font-size:24px;letter-spacing:8px}.dark{background:#101820;color:#e9f0f5}.dark .panel,.dark .card,.dark header{background:#18232e;color:#e9f0f5}.dark input,.dark select{background:#101820;color:#fff;border-color:#425466}.dark th{background:#22303d}.dark td{border-color:#344454}@media(max-width:900px){.app{grid-template-columns:1fr}.grid2{grid-template-columns:1fr}.cards{grid-template-columns:1fr 1fr}}/* v3.1 operations */
.inline{display:inline}.inline button{margin:0}.soft-btn{background:#edf4f8;color:#145f8c}.locked{color:#718096}.table-wrap small{display:block;color:#718096}.report-filter{display:flex;gap:8px;align-items:end;flex-wrap:wrap;margin-bottom:14px}.report-filter label{display:grid;gap:4px;min-width:130px}.type-badge{display:inline-block;padding:4px 7px;border-radius:14px;font-size:11px}.type-badge.income{background:#dcf5e7;color:#087c43}.type-badge.expense{background:#ffe2e6;color:#a92839}.type-badge.salary{background:#e3effc;color:#126ca9}.type-badge.withdrawal{background:#fff1d7;color:#9a6500}.check-line{display:flex!important;align-items:center;gap:8px}.check-line input{width:auto}@media(max-width:700px){.report-filter>*{width:100%}.report-filter label{width:100%}}
/* Partner Accounts v3.2.0 modern UI */
:root{--sidebar-w:222px;--sidebar-mini:76px;--nav:#0e3554;--nav2:#0a2942;--accent:#1686c9;--accent2:#26a269;--surface:#fff;--canvas:#f3f6f9;--text:#17324c;--muted:#708395;--line:#dfe7ee;--shadow:0 6px 22px rgba(22,50,76,.07);--radius:12px}
body{background:var(--canvas);color:var(--text);font-family:Tahoma,"Segoe UI",Arial,sans-serif;font-size:14px}.app{grid-template-columns:var(--sidebar-w) minmax(0,1fr);transition:grid-template-columns .22s ease}.app aside{position:sticky;top:0;height:100vh;overflow:hidden;background:linear-gradient(180deg,var(--nav),var(--nav2));padding:0 10px 12px;box-shadow:8px 0 28px rgba(12,42,66,.09);z-index:30}.brand{height:72px;padding:12px 6px;display:flex;align-items:center;gap:10px;border-bottom:1px solid rgba(255,255,255,.09)}.brand-mark{width:40px;height:40px;display:grid;place-items:center;flex:0 0 40px;border-radius:11px;background:linear-gradient(135deg,#1f96db,#23a36a);color:#fff;font-weight:800;font-size:14px;box-shadow:0 6px 16px rgba(0,0,0,.18)}.brand-copy{min-width:0;display:grid}.brand-copy b{font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.brand-copy small{font-size:10px;color:#9fc0d8;margin-top:3px}.collapse-btn{margin-inline-start:auto;width:27px;height:27px;padding:0;border:0;border-radius:7px;background:rgba(255,255,255,.08);color:#dcecff;font-size:20px;cursor:pointer}.app aside nav{margin-top:12px;gap:3px}.app aside nav a,.app aside .logout{height:40px;padding:0 10px;border-radius:8px;display:flex;align-items:center;gap:10px;color:#cfe2f0;font-size:12.5px;white-space:nowrap}.app aside nav a:hover{background:rgba(255,255,255,.07)}.app aside nav a.active{background:linear-gradient(90deg,#1686c9,#207caf);color:#fff;box-shadow:0 7px 16px rgba(9,82,126,.3)}.nav-icon{width:24px;height:24px;display:grid;place-items:center;flex:0 0 24px;border-radius:6px;background:rgba(255,255,255,.07);font-size:13px}.active .nav-icon{background:rgba(255,255,255,.16)}.side-footer{margin-top:auto;border-top:1px solid rgba(255,255,255,.09);padding-top:8px}.side-footer .logout{margin:0}.version{display:block;padding:5px 11px;color:#759bb7;font-size:9px}.sidebar-mini .app{grid-template-columns:var(--sidebar-mini) minmax(0,1fr)}.sidebar-mini .brand-copy,.sidebar-mini .nav-label,.sidebar-mini .version{display:none}.sidebar-mini .collapse-btn{position:absolute;inset-inline-end:8px;top:78px;transform:rotate(180deg)}.sidebar-mini .app aside nav{margin-top:45px}.sidebar-mini .app aside nav a,.sidebar-mini .app aside .logout{justify-content:center;padding:0}.sidebar-mini .brand{justify-content:center}.sidebar-mini .brand-mark{width:38px;height:38px;flex-basis:38px}
header{height:68px;padding:0 20px;background:rgba(255,255,255,.95);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);box-shadow:none;position:sticky;top:0;z-index:20}.page-title{flex:1;min-width:0}.page-title small{display:block;color:var(--muted);font-size:10px;margin-bottom:3px}.page-title h1{font-size:19px;line-height:1.2}.header-actions{display:flex;align-items:center;gap:10px}.lang-switch{height:34px;display:flex;align-items:center;gap:6px;padding:0 10px;border:1px solid var(--line);background:#f8fbfd;color:#176fa6;border-radius:8px;font-size:12px;font-weight:700}.user-chip{display:flex;align-items:center;gap:8px;padding:4px 8px 4px 5px;border:1px solid var(--line);border-radius:10px;background:#fff}.user-avatar{width:30px;height:30px;border-radius:8px;display:grid;place-items:center;background:#e5f2fa;color:#126da6;font-weight:800}.user-chip div{display:grid;min-width:70px}.user-chip b{font-size:11px}.user-chip small{font-size:9px;color:var(--muted)}.content{padding:18px}.content-inner{max-width:1500px;margin:0 auto}.cards{gap:11px;margin-bottom:14px}.card,.panel{border:1px solid var(--line);border-radius:var(--radius);padding:14px;box-shadow:var(--shadow)}.card{position:relative;overflow:hidden;border-top:0;border-inline-start:4px solid}.card:after{content:"";position:absolute;width:62px;height:62px;border-radius:50%;background:currentColor;opacity:.055;inset-inline-end:-18px;bottom:-20px}.card small{font-size:11px}.card strong{font-size:23px;margin:6px 0 3px}.card span{font-size:10px}.panel h2{font-size:16px;margin:0 0 12px}.grid2{gap:14px;grid-template-columns:minmax(300px,.8fr) minmax(500px,1.45fr)}.form-grid{gap:9px}.form-grid label{font-size:11px;color:#526b7e;gap:4px}input,select,textarea{height:35px;padding:6px 9px;border:1px solid #d6e0e8;border-radius:8px;background:#fff;color:var(--text);font-size:12px;outline:none;transition:border-color .15s,box-shadow .15s}input:focus,select:focus,textarea:focus{border-color:#4b9dcc;box-shadow:0 0 0 3px rgba(22,134,201,.1)}input[type=checkbox]{height:auto;accent-color:#147fc0}.btn{min-height:33px;padding:7px 12px;border-radius:8px;font-size:11.5px;font-weight:700;box-shadow:none}.btn:hover{filter:brightness(.96);transform:translateY(-1px)}.table-wrap{border:1px solid var(--line);border-radius:9px;overflow:auto}table{background:#fff}th{background:#eef4f8;color:#345069;font-size:10.5px;text-transform:none;letter-spacing:.1px;position:sticky;top:0;z-index:1}th,td{padding:8px 9px;border-bottom:1px solid #e7edf2;font-size:11.5px}tbody tr:hover{background:#f8fbfd}.report-filter{padding:11px;gap:7px}.report-filter label{font-size:10.5px}.actions{gap:7px;margin:11px 0}.alert{padding:10px 12px;border-radius:8px;font-size:11.5px}.bar{height:9px}.login-card{width:min(440px,92%);padding:25px;border-radius:15px}.login-card h1{font-size:21px}.type-badge{font-size:10px;padding:3px 7px}.row-actions .btn{padding:5px 7px}.security-panel{max-width:620px}
.dark{--surface:#17232e;--canvas:#101820;--text:#e6eef5;--muted:#92a5b6;--line:#314352;background:var(--canvas);color:var(--text)}.dark header,.dark .panel,.dark .card,.dark table,.dark .user-chip{background:var(--surface);color:var(--text)}.dark input,.dark select,.dark textarea{background:#101a23;color:#edf4fa;border-color:#3a4f60}.dark th{background:#223341;color:#dbe9f2}.dark tbody tr:hover{background:#1c2c38}.dark .lang-switch{background:#1c2b36;border-color:#395060}.dark .table-wrap{border-color:#344958}
@media(max-width:1100px){.grid2{grid-template-columns:1fr}.app{grid-template-columns:190px minmax(0,1fr)}.brand-copy b{font-size:12px}.cards{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.app{display:block}.app aside{position:fixed;inset-block:0;inset-inline-start:-240px;width:220px;transition:inset-inline-start .2s}.nav-open .app aside{inset-inline-start:0}.menu{display:block}.collapse-btn{display:none}.content{padding:12px}.cards{grid-template-columns:1fr 1fr}.header-actions .user-chip div{display:none}.page-title small{display:none}.page-title h1{font-size:16px}.header-actions{gap:5px}.lang-switch{font-size:11px;padding:0 8px}.panel,.card{padding:11px}}
@media(max-width:480px){.cards{grid-template-columns:1fr}.user-chip{display:none}header{padding:0 12px}.content{padding:9px}.panel h2{font-size:14px}}
@media print{aside,header,.report-filter,.no-print{display:none!important}.app{display:block}.content{padding:0}.panel,.card{box-shadow:none;break-inside:avoid}}
/* v3.3.0 financial reports */
.report-toolbar{display:grid;grid-template-columns:minmax(220px,1fr) auto auto;align-items:end;gap:14px;margin-bottom:14px}.report-toolbar h2{margin:0 0 3px}.report-toolbar p,.report-card-head p,.report-heading p{margin:0;color:var(--muted);font-size:10.5px}.report-toolbar form{display:flex;align-items:end;gap:7px}.report-toolbar label{display:grid;gap:4px;color:var(--muted);font-size:10px}.report-toolbar select{min-width:115px}.report-actions{display:flex;gap:7px}.report-print{background:#334d63}.report-export{background:#168c61}.report-heading{display:flex;justify-content:space-between;align-items:center;padding:5px 3px 13px}.report-heading h2{margin:4px 0;font-size:19px}.eyebrow{color:var(--accent);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.7px}.report-status{padding:7px 13px;border-radius:18px;font-size:11px;font-weight:800}.report-status.profit{background:#e1f5e9;color:#087c43}.report-status.loss{background:#ffe5e8;color:#b3293e}.report-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:14px}.report-kpi{display:flex;gap:11px;align-items:center;min-height:94px;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:13px;box-shadow:var(--shadow)}.report-kpi .kpi-icon{width:37px;height:37px;border-radius:10px;display:grid;place-items:center;font-size:18px;flex:0 0 37px}.report-kpi small,.report-kpi em{display:block;color:var(--muted);font-size:10px;font-style:normal}.report-kpi strong{display:inline-block;font-size:20px;margin:5px 5px 3px 0}.report-kpi.revenue .kpi-icon{background:#e0f5e9;color:#168b55}.report-kpi.expense .kpi-icon,.report-kpi.negative .kpi-icon{background:#ffe5e8;color:#c23d4f}.report-kpi.salary .kpi-icon{background:#e4effc;color:#287bc1}.report-kpi.net .kpi-icon{background:#fff2d7;color:#aa7000}.report-visuals{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(280px,.75fr);gap:14px;margin-bottom:14px}.chart-card,.share-card{height:390px;overflow:hidden}.report-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:9px}.report-card-head h2{margin-bottom:3px}.chart-key{display:flex;gap:10px;color:var(--muted);font-size:9.5px}.chart-key span{white-space:nowrap}.chart-key i{display:inline-block;width:8px;height:8px;border-radius:2px;margin-inline-end:4px}.income-dot{background:#21a366}.expense-dot{background:#df5364}.report-chart{height:315px;width:100%;overflow:hidden}.report-chart canvas{display:block;width:100%;height:100%}.share-card{display:flex;flex-direction:column}.share-donut{width:145px;height:145px;border-radius:50%;margin:3px auto 10px;padding:25px;background:conic-gradient(#1686c9 0 35%,#23a36a 35% 70%,#e5aa28 70% 80%,#805cc5 80% 90%,#2ab4ba 90%);position:relative}.share-donut:after{content:"";position:absolute;inset:25px;background:var(--surface);border-radius:50%}.share-donut>div{position:absolute;z-index:1;inset:25px;display:grid;place-content:center;text-align:center}.share-donut strong{font-size:15px}.share-donut span{font-size:8.5px;color:var(--muted)}.donut-loss{background:conic-gradient(#c83f51 0 35%,#df6574 35% 70%,#eb8893 70% 80%,#f0a7ae 80% 90%,#f6c8cc 90%)}.share-breakdown{display:grid;gap:5px}.share-breakdown>div{display:grid;grid-template-columns:9px 1fr auto;align-items:center;gap:6px;padding:5px 7px;border-radius:7px;background:#f7fafc;font-size:10px}.share-breakdown em{font-style:normal;color:var(--accent);font-weight:800}.share-color{width:7px;height:7px;border-radius:2px}.c0{background:#1686c9}.c1{background:#23a36a}.c2{background:#e5aa28}.c3{background:#805cc5}.c4{background:#2ab4ba}.mini-summary{display:grid;grid-template-columns:1fr 1fr;gap:5px;margin-top:auto}.mini-summary span{padding:6px;background:#f3f7fa;border-radius:7px;color:var(--muted);font-size:8.5px}.mini-summary b{display:block;margin-top:2px;color:var(--text);font-size:10px}.distribution-card{margin-bottom:18px}.closed-badge{background:#e5f2fa;color:#1571a8;padding:5px 9px;border-radius:14px;font-size:9px;font-weight:800}.report-empty{text-align:center;color:var(--muted);padding:32px 12px;border:1px dashed var(--line);border-radius:9px;background:#fafcfd}.report-table .percent-pill{display:inline-block;background:#e7f3fa;color:#1674aa;padding:4px 7px;border-radius:12px;font-weight:800}.due-amount{color:#087c43}.dark .share-breakdown>div,.dark .mini-summary span,.dark .report-empty{background:#1c2b36}.dark .share-donut:after{background:var(--surface)}
@media(max-width:1150px){.report-toolbar{grid-template-columns:1fr}.report-toolbar form{flex-wrap:wrap}.report-visuals{grid-template-columns:1fr}.chart-card{height:370px}.share-card{height:auto;min-height:350px}.report-kpis{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){.report-kpis{grid-template-columns:1fr}.report-toolbar form>*{width:100%}.report-toolbar select{width:100%}.report-actions{display:grid;grid-template-columns:1fr 1fr}.chart-card{height:330px}.report-chart{height:250px}.chart-key{display:none}}
@media print{.report-heading{padding-top:0}.report-kpis{grid-template-columns:repeat(4,1fr)}.report-visuals{grid-template-columns:1.7fr .8fr}.chart-card,.share-card{height:330px}.report-chart{height:255px}.report-kpi{box-shadow:none}.distribution-card{break-before:auto}}

@import url('transactions-redesign.css?v=3.5.0');

/* PA period totals v3.6.2 */
.period-total-card{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:-2px 0 14px;border-inline-start:4px solid #1686c9!important}.period-total-card small{display:block;color:#708395;font-size:10px}.period-total-card strong{display:block;font-size:24px;margin:3px 0;color:#126fa8}.period-total-card span,.period-total-card p{color:#708395;font-size:10px}.period-total-card p{margin:0}.period-total-summary{display:flex;align-items:center;justify-content:space-between;gap:14px;background:#eef7fc;border:1px solid #cde4f2;border-radius:11px;padding:12px 14px;margin-bottom:10px}.period-total-summary small{display:block;color:#58768b;font-size:10px}.period-total-summary strong{display:block;color:#0d6fa8;font-size:21px;margin-top:3px}.period-total-summary>span{color:#708395;font-size:10px}.dark .period-total-summary{background:#173243;border-color:#2d566e}@media(max-width:650px){.period-total-card,.period-total-summary{display:grid}}
