:root{font-family:Vazirmatn,Tahoma,Arial,sans-serif;color:#192335;background:#f4f6fa;font-synthesis:none;--navy:#101827;--navy2:#1a2639;--teal:#30b89b;--teal-light:#dff7f0;--muted:#8290a4;--border:#e7ebf1;--white:#fff;--red:#dc6673;--gold:#d8a34b;--shadow:0 12px 35px rgba(33,48,70,.06)}*{box-sizing:border-box}body{margin:0;min-height:100vh}button,input,select,textarea{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #55cbb1;outline-offset:2px}.app-shell{min-height:100vh}.app-shell[hidden],.auth-wrap[hidden],.setup-wrap[hidden]{display:none}.sidebar{position:fixed;inset:0 auto 0 0;width:254px;background:var(--navy);color:#ecf1f8;padding:25px 18px 18px;display:flex;flex-direction:column;z-index:4}.side-brand{display:flex;align-items:center;gap:12px;padding:2px 10px 20px}.side-brand b{display:block;font-size:16px;letter-spacing:.1px}.side-brand small{display:block;color:#95a5ba;font-size:11px;margin-top:2px}.brand-mark{width:52px;height:52px;border-radius:17px;display:grid;place-items:center;background:linear-gradient(140deg,#48c9ad,#248a80);font-size:25px;font-weight:800;color:white;box-shadow:0 9px 25px #30b89b30}.brand-mark.small{width:42px;height:42px;border-radius:14px;font-size:20px}.side-separator{height:1px;background:#ffffff12;margin:0 6px 18px}.side-nav{display:flex;flex-direction:column;gap:5px}.nav-item{border:0;background:transparent;color:#aab6c6;text-align:right;padding:12px 13px;border-radius:11px;display:flex;align-items:center;gap:12px;font-size:13px;transition:.16s}.nav-item:hover{background:#ffffff0d;color:white}.nav-item.active{color:#7be0c7;background:#30b89b1b;font-weight:700}.nav-icon{font-size:17px;width:22px;text-align:center}.side-bottom{margin-top:auto;border-top:1px solid #ffffff14;padding:16px 8px 0;display:flex;align-items:center;gap:8px;font-size:11px;color:#9dacbe}.privacy-dot{width:8px;height:8px;border-radius:50%;background:#47c6a8;box-shadow:0 0 0 4px #47c6a81d}.side-bottom .icon-btn{margin-right:auto;color:#adbac9}.main-area{margin-left:254px;min-height:100vh}.topbar{height:100px;padding:20px 38px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border);background:#f8f9fc}.eyebrow{font-size:11px;color:var(--muted);font-weight:600;letter-spacing:.1px}.top-title h1{font-size:21px;margin:2px 0 0;font-weight:700;color:#192335}.top-actions{display:flex;align-items:center;gap:12px}.currency-pill{background:white;color:#4a586d;border:1px solid var(--border);border-radius:11px;padding:10px 13px;font-size:12px}.currency-pill span{padding-right:6px;color:#8d98a9}.btn{border:0;border-radius:11px;padding:11px 15px;font-size:12px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;gap:7px;transition:filter .15s,transform .15s}.btn:hover{filter:brightness(1.04);transform:translateY(-1px)}.btn.primary{background:var(--navy);color:white;box-shadow:0 5px 12px #10182720}.btn.teal{background:var(--teal);color:white}.btn.ghost{background:#eff2f6;color:#45546a}.btn.danger{background:#fff0f1;color:#c54c5b}.btn.small{padding:8px 11px;font-size:11px}.btn.wide{width:100%}.content{padding:30px 38px 48px;max-width:1420px;margin:auto}.welcome-row{display:flex;justify-content:space-between;align-items:center;margin:0 0 18px}.welcome-row h2{font-size:15px;margin:0}.welcome-row p{font-size:11px;color:var(--muted);margin:5px 0 0}.period-badge{font-size:11px;color:#5c6b80;background:#fff;border:1px solid var(--border);border-radius:20px;padding:8px 13px}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.stat-card,.panel,.list-card{background:white;border:1px solid #edf0f4;border-radius:16px;box-shadow:var(--shadow)}.stat-card{padding:18px 18px 16px;min-height:128px;position:relative;overflow:hidden}.stat-head{display:flex;align-items:center;justify-content:space-between;color:#7e8a9b;font-size:11px}.stat-icon{width:32px;height:32px;border-radius:10px;display:grid;place-items:center;background:#f0f4f7;color:#607187;font-size:15px}.stat-card.primary-stat .stat-icon{background:var(--teal-light);color:#1d9f83}.stat-value{font-size:20px;letter-spacing:-.3px;font-weight:800;margin:15px 0 1px;direction:ltr;text-align:right;white-space:nowrap}.stat-unit{font-size:10px;color:#929eae}.stat-hint{font-size:10px;color:#9aa5b4;margin-top:5px}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(270px,.8fr);gap:15px;margin-top:17px}.panel{padding:19px}.panel-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.panel-head h3{font-size:13px;margin:0}.panel-sub{font-size:10px;color:#99a4b1;margin-top:3px}.text-btn{border:0;background:transparent;color:#4b9e8b;font-size:11px;font-weight:700;padding:5px}.chart{height:198px;display:flex;align-items:stretch;gap:8px;border-bottom:1px solid var(--border);padding:8px 3px 0}.chart-month{height:100%;flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:7px;min-width:0}.bars{height:148px;width:100%;display:flex;align-items:flex-end;justify-content:center;gap:3px}.bar{width:30%;max-width:16px;min-height:2px;border-radius:5px 5px 2px 2px;background:#35b99b}.bar.expense{background:#f0b35c}.chart-month span{font-size:9px;color:#93a0af}.legend{display:flex;gap:15px;margin-top:13px;color:#8793a2;font-size:10px}.legend i{display:inline-block;width:8px;height:8px;border-radius:3px;margin-left:5px}.legend .in{background:#35b99b}.legend .out{background:#f0b35c}.account-list{display:flex;flex-direction:column;gap:4px}.account-row{display:flex;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid #f0f2f5}.account-row:last-child{border:0}.account-icon{width:34px;height:34px;border-radius:11px;background:#f2f5f8;display:grid;place-items:center;color:#5e7187;font-size:14px;flex:none}.account-info{min-width:0;flex:1}.account-info b{display:block;font-size:11px;font-weight:600}.account-info small{color:#98a3b1;font-size:9px}.account-balance{font-size:11px;direction:ltr;text-align:left;white-space:nowrap;font-weight:700}.recent-panel{margin-top:16px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;white-space:nowrap}th{font-size:10px;color:#8995a5;font-weight:600;text-align:right;padding:10px;border-bottom:1px solid var(--border)}td{font-size:11px;padding:12px 10px;border-bottom:1px solid #f2f4f7;color:#536176}tr:last-child td{border-bottom:0}.tx-title{display:flex;align-items:center;gap:8px;color:#263348;font-weight:600}.tx-mark{width:26px;height:26px;border-radius:8px;display:grid;place-items:center;background:#eaf8f3;color:#25a486}.tx-mark.expense{background:#fff2e5;color:#d09139}.tx-mark.transfer{background:#eef3fb;color:#6881a4}.amount-in{color:#239b80;font-weight:700;direction:ltr;text-align:left}.amount-out{color:#ca6671;font-weight:700;direction:ltr;text-align:left}.empty-state{padding:36px;text-align:center;color:#919eaf;font-size:12px}.empty-icon{font-size:26px;margin-bottom:8px}.page-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:17px}.page-toolbar h2{font-size:16px;margin:0}.toolbar-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.filter-input{border:1px solid var(--border);background:white;border-radius:10px;padding:9px 12px;font-size:11px;color:#56657a}.entity-pill,.tag{display:inline-flex;align-items:center;background:#eef8f5;color:#42937f;padding:5px 8px;border-radius:7px;font-size:9px}.tag.gray{background:#f1f3f6;color:#778498}.tag.amber{background:#fff4e5;color:#b17c32}.tag.red{background:#fff0f1;color:#bf6570}.empty-panel{background:#fff;border:1px dashed #dfe5ed;padding:36px;border-radius:16px;text-align:center;color:#8c98a8}.empty-panel h3{color:#405066;font-size:14px}.empty-panel p{font-size:11px}.cards-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.list-card{padding:16px}.list-card-top{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}.list-card h3{font-size:13px;margin:0}.list-card p{color:#8995a4;font-size:10px;margin:5px 0}.big-number{font-size:17px;font-weight:800;margin:12px 0 3px;direction:ltr;text-align:right}.micro{font-size:10px;color:#919dac}.card-actions{display:flex;gap:7px;margin-top:12px;flex-wrap:wrap}.inline-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.form-box{display:flex;flex-direction:column;gap:6px}.form-box label{font-size:10px;color:#68768a;font-weight:600}.form-box input,.form-box select,.form-box textarea,.stack input{width:100%;border:1px solid #e0e5ec;border-radius:10px;padding:10px 11px;color:#29364a;background:#fff;font-size:12px}.form-box textarea{resize:vertical;min-height:70px}.form-box .hint{font-size:9px;color:#93a0af}.span-all{grid-column:1/-1}.modal{border:0;border-radius:19px;padding:0;width:min(610px,calc(100% - 26px));max-height:min(90vh,800px);box-shadow:0 25px 90px #10182738;color:#202d40}.modal::backdrop{background:#10182799;backdrop-filter:blur(3px)}.modal-head{display:flex;align-items:center;justify-content:space-between;padding:19px 22px 15px;border-bottom:1px solid var(--border)}.modal-head h2{font-size:16px;margin:2px 0 0}.modal-body{padding:19px 22px 22px;overflow:auto}.modal-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.modal-form .span-all{grid-column:1/-1}.modal-footer{grid-column:1/-1;display:flex;justify-content:flex-start;gap:8px;padding-top:5px}.icon-btn{border:0;background:transparent;width:34px;height:34px;border-radius:9px;color:#8290a0;font-size:19px;display:grid;place-items:center}.icon-btn:hover{background:#f1f3f6}.auth-wrap,.setup-wrap{min-height:100vh;display:grid;place-items:center;padding:22px;background:radial-gradient(ellipse at 15% 10%,#dff6f0 0,transparent 34%),#f4f6fa}.auth-card,.setup-card{width:min(420px,100%);background:white;border:1px solid var(--border);box-shadow:var(--shadow);border-radius:22px;padding:34px}.auth-card .brand-mark,.setup-card .brand-mark{margin-bottom:22px}.auth-card h1,.setup-card h1{font-size:22px;margin:6px 0}.auth-card p,.setup-card p,.setup-card li{font-size:11px;line-height:1.9;color:#78869a}.stack{display:flex;flex-direction:column;gap:14px;margin-top:22px}.stack label{display:flex;flex-direction:column;gap:7px;font-size:11px;color:#637188}.auth-foot{border-top:1px solid var(--border);padding-top:14px;margin-top:20px!important;font-size:10px!important}.setup-card{width:min(600px,100%)}.setup-card ol{padding-right:21px}.setup-card code{direction:ltr;display:inline-block;background:#f2f4f7;border-radius:5px;padding:1px 5px;color:#536075}.notice{position:fixed;z-index:10;top:18px;left:50%;transform:translateX(-50%);padding:11px 17px;border-radius:12px;background:#263448;color:white;font-size:12px;box-shadow:0 8px 24px #13203830;max-width:calc(100% - 28px);text-align:center}.notice.error{background:#bd4959}.notice.ok{background:#248b76}.bottom-nav{display:none}.mobile-only{display:none}.positive{color:#28977f}.negative{color:#ca6671}.section-head{display:flex;align-items:center;justify-content:space-between;margin:21px 0 13px}.section-head h3{font-size:13px;margin:0}.report-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:16px}.report-box{background:#fff;border:1px solid var(--border);border-radius:14px;padding:15px}.report-box small{color:#8995a5;font-size:10px}.report-box b{display:block;font-size:16px;margin-top:7px}.industry-head{font-size:11px;color:#77869a;font-weight:700;padding:8px 3px}.subtle{color:#8d99a9;font-size:10px}.split-value{display:flex;gap:7px;align-items:center}.chart-tooltip{font-size:9px;color:#9aa5b3;direction:ltr}
@media(max-width:1120px){.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cards-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.content{padding:24px 25px 42px}.topbar{padding:18px 25px}}
@media(max-width:760px){.sidebar{display:none}.main-area{margin:0;padding-bottom:76px}.topbar{height:75px;padding:13px 17px;background:#f8f9fc}.top-title h1{font-size:18px}.top-title .eyebrow{font-size:9px}.top-actions{gap:7px}.add-top{padding:10px 12px}.add-top span{display:none}.currency-pill{padding:9px 10px}.content{padding:19px 14px 27px}.welcome-row{align-items:flex-start}.welcome-row h2{font-size:13px}.period-badge{font-size:9px;padding:7px 9px}.stats-grid{gap:9px}.stat-card{min-height:112px;padding:13px;border-radius:14px}.stat-head{font-size:9px}.stat-icon{width:28px;height:28px}.stat-value{font-size:16px;margin-top:13px}.stat-unit,.stat-hint{font-size:9px}.dashboard-grid{grid-template-columns:1fr;gap:11px;margin-top:11px}.panel{padding:15px;border-radius:14px}.recent-panel{margin-top:11px}.chart{height:175px}.bars{height:128px}.chart-month span{font-size:8px}.panel-head h3{font-size:12px}.account-row{padding:8px 0}.page-toolbar{align-items:flex-start;flex-direction:column}.toolbar-actions{width:100%}.filter-input{flex:1;min-width:105px}.cards-grid{grid-template-columns:1fr}.inline-form{grid-template-columns:repeat(2,minmax(0,1fr))}.bottom-nav{position:fixed;z-index:5;inset:auto 0 0;height:calc(66px + env(safe-area-inset-bottom));padding:5px 4px calc(5px + env(safe-area-inset-bottom));display:flex;justify-content:space-around;align-items:center;background:#fff;border-top:1px solid var(--border);box-shadow:0 -5px 20px #2132490b}.bottom-nav .nav-item{flex-direction:column;gap:1px;padding:6px 3px;color:#8a96a5;font-size:8px;border-radius:9px;min-width:42px;flex:1}.bottom-nav .nav-item.active{color:#24977f;background:transparent}.bottom-nav .nav-icon{font-size:16px;height:21px}.mobile-only{display:grid}.side-bottom{display:none}.modal{width:calc(100% - 18px);border-radius:18px;max-height:88vh}.modal-head{padding:16px 16px 12px}.modal-body{padding:15px 16px 19px}.modal-form{gap:9px}.modal-form .span-all{grid-column:1/-1}.modal-form .form-box label{font-size:9px}.modal-form input,.modal-form select,.modal-form textarea{font-size:12px;padding:9px}.report-summary{gap:8px}.report-box{padding:11px}.report-box b{font-size:12px}.report-box small{font-size:9px}table{min-width:570px}th,td{padding:9px 7px}.auth-card{padding:27px}.setup-card{padding:23px}}
@media(max-width:370px){.stat-value{font-size:14px}.nav-item{min-width:37px}.bottom-nav .nav-item{font-size:7px}.content{padding-left:11px;padding-right:11px}.stat-card{padding:11px}.currency-pill{font-size:10px}}
