@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&family=Hind+Siliguri:wght@400;500;600&family=Noto+Sans+Bengali:wght@500;600&display=swap');
:root{--bg:#f5f6f3;--surface:#fff;--ink:#20332e;--muted:#7b8781;--line:#e7ebe5;--green:#0a7560;--soft:#eaf4ed;--red:#c65a51;--shadow:0 3px 14px #243a2e03;--sidebar:246px}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:'DM Sans','Noto Sans Bengali',sans-serif;font-size:14px}body[data-theme=dark]{--bg:#121d19;--surface:#1c2923;--ink:#e5eee7;--muted:#a1b3a7;--line:#334039;--soft:#263f32;--green:#62c4a3;--red:#ed9287}button,input,select,textarea{font:inherit}button,a,input,select{outline-offset:4px}button{cursor:pointer}button{border:0;background:none;color:inherit}button:disabled{opacity:.45;cursor:not-allowed}a{color:inherit}svg{vertical-align:middle}.icon{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.shell{display:flex;min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:var(--sidebar);background:var(--surface);border-right:1px solid var(--line);padding:32px 22px 18px;display:flex;flex-direction:column;z-index:10}.logo{display:flex;align-items:center;gap:11px;font-family:Manrope,sans-serif;font-size:23px;font-weight:800;letter-spacing:-1px}.logo img{width:37px}.logo span span{color:var(--green)}.tagline{font-size:10px;color:var(--muted);letter-spacing:1.1px;margin:9px 0 30px 48px;text-transform:uppercase}.switcher{background:var(--bg);border:1px solid var(--line);padding:5px;border-radius:10px;display:flex;margin-bottom:28px}.switcher button{flex:1;padding:9px 4px;border-radius:7px;font-size:12px;font-weight:600;color:var(--muted)}.switcher .selected{background:var(--surface);color:var(--green);box-shadow:0 2px 6px #00000009}.nav-label{text-transform:uppercase;font-size:10px;font-weight:700;color:var(--muted);letter-spacing:1.5px;padding:0 12px;margin:0 0 10px}.nav{display:flex;flex-direction:column;gap:5px}.nav button{display:flex;align-items:center;gap:12px;text-align:left;padding:12px;border-radius:9px;color:var(--muted);font-weight:500}.nav button:hover{background:var(--bg);color:var(--ink)}.nav button.active{background:var(--soft);color:var(--green);font-weight:700}.nav .count{margin-left:auto;background:var(--surface);font-size:11px;border-radius:5px;padding:3px 6px}.sidebar-bottom{margin-top:auto;padding-top:32px}.help-card{border:1px solid var(--line);border-radius:12px;padding:16px;background:var(--bg);margin-bottom:20px;font-size:12px;line-height:1.7}.help-card strong{display:block;font-size:13px;margin:8px 0 3px}.help-card p{color:var(--muted);margin:0}.profile{border-top:1px solid var(--line);padding:18px 0 0;display:flex;gap:11px;align-items:center}.avatar{width:36px;height:36px;border-radius:50%;background:#f1e8d5;color:#786242;display:grid;place-items:center;font-weight:700;font-size:12px}.profile strong{font-size:12px}.profile small{display:block;color:var(--muted);font-size:10px;margin-top:4px}.main{margin-left:var(--sidebar);width:calc(100% - var(--sidebar))}.topbar{padding:20px 40px;background:var(--surface);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;height:80px}.breadcrumb{font-size:12px;color:var(--muted);display:flex;gap:12px;align-items:center}.breadcrumb b{font-weight:500;color:var(--ink)}.top-actions{display:flex;gap:16px;align-items:center}.demo-pill{font-size:10px;background:#faf1d9;color:#8b7229;padding:6px 9px;border-radius:5px}.icon-button{position:relative;padding:8px}.dot{width:5px;height:5px;background:#d78354;border-radius:50%;position:absolute;right:9px;top:8px}.content{max-width:1510px;margin:auto;padding:34px 40px}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px}.eyebrow{font-size:10px;color:var(--green);text-transform:uppercase;font-weight:700;letter-spacing:1.4px;margin-bottom:9px}.page-heading h1{font-family:Manrope,'Noto Sans Bengali',sans-serif;font-size:29px;letter-spacing:-1px;line-height:1.3;margin:0 0 8px;font-weight:800}.page-heading p{color:var(--muted);font-size:12px;margin:0}.heading-actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:8px;padding:11px 15px;font-size:12px;font-weight:600;background:var(--surface);border:1px solid var(--line);white-space:nowrap}.btn .icon{width:16px;height:16px}.btn.primary{background:var(--green);border-color:var(--green);color:white}.btn.danger{color:var(--red)}.btn.small{padding:7px 10px;font-size:11px}.month-select{padding:10px 12px;background:var(--surface);border:1px solid var(--line);border-radius:8px;color:var(--ink);font-size:12px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:17px;margin-bottom:24px}.stat{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:21px;box-shadow:var(--shadow)}.stat.featured{background:#0b6d58;color:#fff;border-color:#0b6d58;position:relative;overflow:hidden}.stat.featured:after{content:'';position:absolute;width:170px;height:170px;border:24px solid #ffffff06;border-radius:50%;right:-63px;top:-33px;pointer-events:none}.stat-top{display:flex;justify-content:space-between;align-items:center;font-size:11px;color:var(--muted);margin-bottom:17px}.featured .stat-top{color:#d3e7de}.stat-symbol{display:grid;place-items:center;width:30px;height:30px;background:var(--soft);border-radius:8px;color:var(--green)}.featured .stat-symbol{background:#ffffff17;color:white}.stat-symbol.red{background:#fcf0ee;color:var(--red)}.stat-value{font-size:27px;font-weight:700;letter-spacing:-.8px;margin-bottom:9px;font-family:Manrope,sans-serif}.stat-foot{font-size:10px;color:var(--muted);display:flex;gap:5px;align-items:center}.featured .stat-foot{color:#c4dfd0}.stat-foot .positive{color:var(--green)}.featured .stat-foot .positive{color:#c4eda6}.grid-main{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(290px,1fr);gap:23px;margin-bottom:24px}.card{background:var(--surface);border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);overflow:hidden}.card-pad{padding:22px}.card-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:22px}.card-head h2{font-family:Manrope,sans-serif;font-size:14px;margin:0;font-weight:800;letter-spacing:-.25px}.card-head p{margin:6px 0 0;font-size:10px;color:var(--muted)}.link-btn{color:var(--green);font-size:11px;font-weight:600;padding:4px}.legend{display:flex;gap:14px;font-size:10px;color:var(--muted)}.legend span:before{content:'';display:inline-block;width:7px;height:7px;border-radius:2px;background:#0a7560;margin-right:6px}.legend span:last-child:before{background:#bfd5bf}.chart{height:210px;display:flex;gap:16px;position:relative;padding-top:15px}.axis{display:flex;flex-direction:column;justify-content:space-between;color:var(--muted);font-size:9px;min-width:32px;padding-bottom:23px}.bars{display:flex;flex:1;gap:16px;justify-content:space-around;border-bottom:1px solid var(--line);background:repeating-linear-gradient(to top,transparent 0,transparent calc(25% - 1px),var(--line) calc(25% - 1px),var(--line) 25%);margin-bottom:23px}.bar-group{height:100%;flex:1;display:flex;align-items:flex-end;justify-content:center;gap:6px;position:relative}.bar{width:20px;max-width:32%;border-radius:4px 4px 0 0;background:#0a7560;min-height:0}.bar.secondary{background:#bfd5bf}.bar-label{position:absolute;bottom:-22px;font-size:9px;color:var(--muted)}.chart-footer{border-top:1px solid var(--line);margin-top:17px;padding-top:15px;color:var(--muted);font-size:10px;display:flex;gap:7px;align-items:center}.chart-footer b{color:var(--ink)}.donut-layout{display:flex;align-items:center;gap:22px;margin-top:30px}.donut{width:150px;height:150px;border-radius:50%;flex-shrink:0;position:relative;background:conic-gradient(#0a7560 0 36%,#8db693 36% 59%,#d4c389 59% 78%,#c7d8bf 78% 90%,#edf0e7 90%)}.donut-hole{position:absolute;inset:20px;border-radius:50%;background:var(--surface);display:flex;align-items:center;justify-content:center;flex-direction:column}.donut-hole span{font-size:9px;color:var(--muted)}.donut-hole strong{font-family:Manrope;font-size:19px;margin-top:5px}.category-legend{flex:1;display:flex;flex-direction:column;gap:13px}.category-row{display:flex;align-items:center;font-size:10px;gap:7px}.category-row i{width:7px;height:7px;border-radius:50%;flex-shrink:0}.category-row b{margin-left:auto;font-size:10px}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;white-space:nowrap}th{text-align:left;font-size:9px;text-transform:uppercase;letter-spacing:.7px;color:var(--muted);font-weight:600;padding:12px 20px;background:var(--bg);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}td{padding:14px 20px;font-size:11px;border-bottom:1px solid var(--line)}tbody tr:last-child td{border:0}.table-title{display:flex;gap:10px;align-items:center}.transaction-icon{width:34px;height:34px;border-radius:9px;display:grid;place-items:center;background:var(--bg);color:var(--green)}.transaction-icon .icon{width:16px;height:16px}.table-title strong{font-size:11px;font-weight:600}.table-title small{font-size:9px;color:var(--muted);display:block;margin-top:4px}.badge{font-size:9px;background:var(--bg);padding:5px 8px;border-radius:5px;color:var(--muted);display:inline-block}.badge.green{background:var(--soft);color:var(--green)}.badge.red{background:#fbefea;color:#c06547}.amount{font-weight:700;font-family:Manrope}.amount.income{color:var(--green)}.amount.expense{color:var(--red)}.recent-head{padding:21px 22px;margin:0}.lower-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(290px,1fr);gap:23px}.bill{display:flex;align-items:center;gap:11px;padding:13px 0;border-bottom:1px solid var(--line)}.bill:last-child{border:0}.bill .avatar{border-radius:9px;background:var(--bg);color:var(--muted)}.bill-info{flex:1}.bill-info strong{font-size:11px}.bill-info small{display:block;font-size:9px;color:var(--muted);margin-top:5px}.bill-right{text-align:right}.bill-right strong{display:block;font-size:12px;margin-bottom:6px}.empty{text-align:center;color:var(--muted);padding:40px 20px;line-height:1.8}.empty strong{display:block;color:var(--ink)}.filterbar{display:flex;gap:10px;padding:18px 22px;border-top:1px solid var(--line);flex-wrap:wrap}.filterbar input{flex:1;min-width:150px}.field,input,select,textarea{background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:7px;padding:10px 12px;font-size:12px}.filterbar select{max-width:160px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-field{display:flex;flex-direction:column;gap:7px}.form-field.full{grid-column:1/-1}.form-field label{font-size:11px;font-weight:600}.form-field small{font-size:10px;color:var(--muted)}.overlay{position:fixed;inset:0;background:#0d261b66;backdrop-filter:blur(3px);z-index:50;display:flex;justify-content:center;align-items:center;padding:20px}.modal{width:520px;max-width:100%;max-height:90vh;overflow:auto;background:var(--surface);border:1px solid var(--line);border-radius:16px;box-shadow:0 20px 100px #0003;padding:27px}.modal h2{margin:0;font-size:20px;font-family:Manrope}.modal-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:23px}.modal-footer{display:flex;justify-content:flex-end;gap:10px;margin-top:25px}.form-error{color:var(--red);font-size:12px;margin-top:12px}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.settings-card h2{font-size:15px;margin:0 0 8px}.settings-card p{color:var(--muted);font-size:12px;line-height:1.7}.choice-row{display:flex;gap:9px;margin:20px 0}.choice-row button{flex:1;padding:16px 8px;border:1px solid var(--line);border-radius:9px;background:var(--bg)}.choice-row button.chosen{border-color:var(--green);background:var(--soft);color:var(--green)}.note{padding:13px 16px;background:var(--soft);color:var(--green);font-size:11px;border-radius:8px;line-height:1.7;margin-bottom:20px}.business-strip{display:flex;align-items:center;gap:10px;margin-bottom:24px;flex-wrap:wrap}.business-strip select{min-width:220px}.loan-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.loan-card h3{margin:14px 0 5px;font-size:16px}.loan-card .meta{font-size:11px;color:var(--muted)}.loan-card .big{font-family:Manrope;font-size:26px;font-weight:700;margin:22px 0 9px}.progress{height:5px;border-radius:5px;background:var(--line);overflow:hidden;margin:15px 0}.progress span{display:block;height:100%;background:var(--green)}.loan-details{display:flex;justify-content:space-between;margin:11px 0;color:var(--muted);font-size:11px}.loan-details b{color:var(--ink);font-weight:500}.loan-actions{display:flex;gap:8px;margin-top:20px}.report-total{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding:20px;font-size:15px;font-weight:700}.report-line{display:flex;justify-content:space-between;padding:15px 20px;font-size:12px}.chips{display:flex;gap:7px;flex-wrap:wrap;margin-top:18px}.chips span{border:1px solid var(--line);padding:7px 11px;border-radius:7px;font-size:11px}.footer{display:flex;justify-content:space-between;margin-top:25px;font-size:9px;color:var(--muted)}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%) translateY(100px);background:var(--ink);color:var(--surface);padding:13px 20px;border-radius:9px;z-index:100;transition:transform .2s;font-size:12px;max-width:90vw}#toast.show{transform:translateX(-50%) translateY(0)}.mobile-menu{display:none}.login-shell{min-height:100vh;display:grid;place-items:center;padding:30px;background:var(--bg)}.login-card{width:420px;max-width:100%;padding:35px}.login-card h1{font-size:26px;margin:30px 0 10px}.login-card p{color:var(--muted);line-height:1.7}.login-card .form-field{margin:15px 0}.login-card .btn{width:100%;margin-top:10px}
@media(min-width:1500px){.content{padding-top:42px}.stats{gap:22px}.stat{padding:25px}.chart{height:235px}.donut{width:175px;height:175px}.donut-layout{gap:30px}}@media(max-width:1150px){:root{--sidebar:210px}.sidebar{padding:28px 15px}.content{padding:28px 25px}.topbar{padding:20px 25px}.donut-layout{gap:12px}.donut{width:115px;height:115px}.donut-hole{inset:15px}.donut-hole strong{font-size:15px}.stats{gap:12px}.stat{padding:17px}.stat-value{font-size:23px}.grid-main,.lower-grid{grid-template-columns:minmax(0,1.4fr) minmax(260px,1fr)}.loan-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:900px){.grid-main,.lower-grid{grid-template-columns:1fr}.donut-layout{justify-content:center;margin:10px auto;max-width:370px}.donut{width:150px;height:150px}.stats{grid-template-columns:repeat(2,1fr)}.settings-grid{grid-template-columns:1fr}.page-heading{align-items:flex-start}.heading-actions{justify-content:flex-end}.page-heading h1{font-size:24px}}@media(max-width:650px){:root{--sidebar:0px}.sidebar{width:246px;transform:translateX(-100%);transition:.2s;box-shadow:10px 0 60px #0002}.sidebar.open{transform:translateX(0)}.main{margin:0;width:100%}.topbar{height:64px;padding:12px 18px}.mobile-menu{display:inline-flex}.top-actions{gap:5px}.breadcrumb{gap:7px}.content{padding:24px 17px}.page-heading{flex-direction:column;gap:17px}.heading-actions{justify-content:flex-start}.stats{gap:10px;margin-bottom:17px}.stat{padding:15px}.stat-top{margin-bottom:12px;font-size:10px}.stat-value{font-size:22px}.stat-foot{font-size:9px}.card-pad{padding:18px}.chart{gap:9px}.bars{gap:8px}.bar-group{gap:4px}.loan-grid{grid-template-columns:1fr}.form-grid{gap:12px}.modal{padding:22px}.demo-pill{font-size:9px;padding:5px}.footer{line-height:1.7;gap:15px}.help-card{display:none}.logo{font-size:22px}td,th{padding-left:15px;padding-right:15px}.grid-main,.lower-grid{gap:17px}.stat-symbol{width:26px;height:26px}}
/* Hisab Kori — reference-inspired financial workspace */
:root{--bg:#f6f7f9;--ink:#24282e;--muted:#91959c;--line:#eef0f4;--green:#367cf5;--soft:#eef4ff;--sidebar:230px;--shadow:none}body[data-theme=dark]{--bg:#101620;--surface:#192231;--ink:#ecf0f8;--muted:#a2adc0;--line:#2b3546;--green:#70a5ff;--soft:#233854}.sidebar{padding:28px 18px}.logo{font-weight:700;letter-spacing:-.8px}.logo img{width:34px}.tagline{margin:9px 0 28px 44px;font-size:9px}.switcher{margin-bottom:26px;background:var(--bg);border:0}.switcher button{padding:10px 4px}.nav-label{font-size:11px;text-transform:none;letter-spacing:0;font-weight:400;margin-bottom:12px}.nav{gap:9px}.nav button{font-size:13px;padding:14px 13px;border-radius:8px}.nav button.active{background:#367cf5;color:white;font-weight:500}.nav button.active .count{background:#ffffff29;color:white}.help-card{background:#367cf5;color:white;border:0;border-radius:15px;padding:22px 18px}.help-card strong{font-size:17px;line-height:1.6;font-weight:600}.help-card p{color:#dce8ff;font-size:10px}.help-card .icon{color:white}.avatar{background:#e8f0ff;color:#3974cc}.topbar{height:86px;padding:20px 30px;border-bottom:0}.topbar-title{font-family:Manrope,'Noto Sans Bengali',sans-serif;font-size:23px;font-weight:700;letter-spacing:-.7px;color:var(--ink)}.top-actions{gap:13px}.header-search{display:flex;align-items:center;gap:9px;background:var(--bg);padding:0 13px;border-radius:6px;color:var(--muted);width:220px}.header-search input{background:none;border:0;width:100%;padding:12px 0;min-width:0;font-size:12px}.header-profile{display:flex;gap:9px;align-items:center;border-left:1px solid var(--line);padding-left:15px}.header-profile strong{font-size:13px;font-weight:600}.header-profile small{display:block;font-size:10px;margin-top:4px;color:var(--muted)}.header-profile .avatar{width:40px;height:40px}.content{padding:25px 30px;max-width:1650px}.page-heading{margin-bottom:23px}.page-heading h1{font-size:24px}.page-heading .eyebrow{font-size:9px}.page-heading p{font-size:11px}.btn{border-radius:9px}.card{border:0;border-radius:25px}.card-pad{padding:25px}.card-head h2{font-size:17px;letter-spacing:-.5px;font-weight:700}.card-head p{font-size:10px}.overview-top{display:grid;grid-template-columns:1fr 1.05fr;gap:23px;margin-bottom:23px}.summary-quartet{padding:11px;background:var(--surface);border-radius:25px}.summary-quartet .stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;margin:0;height:100%}.summary-quartet .stat{background:var(--bg);border-radius:21px;padding:23px 20px;border:0;min-height:160px}.stat.featured,.summary-quartet .stat.featured{background:#367cf5;color:white;border:0}.stat.featured:after{border-radius:20px;transform:rotate(35deg);width:160px;height:160px;right:-15px;top:70px}.stat-top{font-size:12px;margin-bottom:18px;color:var(--ink)}.stat-symbol{border-radius:50%;width:36px;height:36px;background:#e6eefb;color:#367cf5}.stat-symbol.red{background:#e6eefb;color:#367cf5}.stat-value{font-size:29px;font-weight:700;letter-spacing:-1px}.stat-foot{font-size:10px;margin-top:12px}.stat-foot .icon{width:16px;height:16px;color:#3caf82}.stat-foot .icon+span{background:#e5f4e9}.profit-card .chart{height:257px;padding-top:10px;margin-top:24px}.profit-card .card-head{margin-bottom:8px}.bars{gap:12px;background:repeating-linear-gradient(to top,transparent 0,transparent calc(25% - 1px),var(--line) calc(25% - 1px),var(--line) 25%)}.bar{background:repeating-linear-gradient(35deg,#367cf5 0px,#367cf5 4px,#4286fa 4px,#4286fa 7px);width:29px;max-width:42%;border-radius:8px 8px 4px 4px;min-height:0}.bar.secondary{background:#254d94}.bar-group{gap:5px}.legend span:before{background:#367cf5}.legend span:last-child:before{background:#254d94}.dashboard-columns{display:grid;grid-template-columns:minmax(0,1.75fr) minmax(290px,1fr);gap:23px}.dashboard-primary,.dashboard-secondary{display:flex;flex-direction:column;gap:23px;min-width:0}.trend-chart svg{width:100%;height:auto;display:block}.trend-legend{display:flex;align-items:center;gap:17px;font-size:10px;color:var(--muted);margin-top:12px}.trend-legend span{display:flex;gap:6px;align-items:center}.trend-legend i{width:7px;height:7px;background:#367cf5;border-radius:50%}.trend-legend span:nth-child(2) i{background:#3ec9dc}.trend-hint{margin-left:auto}.due-divider{height:1px;background:var(--line);margin:24px 0}.due-panel .bill{padding:15px 0}.due-panel .bill .avatar{background:#edf3ff;color:#367cf5;border-radius:50%;width:38px;height:38px}.bill-info strong{font-size:12px}.bill-info small{font-size:10px}.bill-right strong{font-size:13px}.due-panel .btn{border-color:#a5c3ff;color:#367cf5;background:transparent;border-radius:18px}.badge.green{background:#e9f7ee;color:#42a673}.badge.red{background:#fff0f0;color:#df6d72}.recent-head{padding:24px 25px}.recent-head .btn{border-radius:18px;border-color:#a5c3ff;color:#367cf5}.transaction-icon{background:#eef4ff;color:#367cf5;border-radius:50%}.amount.income{color:#39a979}th{background:var(--surface);text-transform:none;letter-spacing:0;font-size:11px;border-top:0;padding:15px 24px}td{padding:17px 24px;font-size:11px}.spending-card .donut-layout{flex-direction:column;margin-top:15px;gap:19px}.spending-card .category-legend{width:100%}.spending-card .donut{width:140px;height:140px}.stats>.stat{border:0;border-radius:19px}.settings-card{border-radius:21px}.loan-card{border-radius:23px}.demo-pill{font-size:9px}.footer{margin-top:24px}
@media(min-width:1500px){.content{padding:30px 35px}.summary-quartet .stat{min-height:195px;padding:28px}.stat-value{font-size:36px}.profit-card .chart{height:310px}.trend-chart svg{max-height:330px}.card-head h2{font-size:20px}}
@media(max-width:1100px){.header-search{width:170px}.header-profile small{display:none}.topbar-title{font-size:20px}.topbar{padding:20px 24px}.content{padding:24px}.summary-quartet .stat{padding:19px 15px}.stat-value{font-size:25px}.card-head h2{font-size:15px}.card-pad{padding:22px}.overview-top{gap:17px}.dashboard-columns{grid-template-columns:minmax(0,1.65fr) minmax(260px,1fr);gap:17px}.header-profile strong{display:none}}
@media(max-width:900px){.overview-top{grid-template-columns:1fr}.profit-card .chart{height:220px}.header-search{display:none}.dashboard-columns{grid-template-columns:1fr}.dashboard-secondary{display:grid;grid-template-columns:1.2fr 1fr;gap:17px}.spending-card .donut-layout{flex-direction:column}.summary-quartet .stat{min-height:150px}.topbar-title{font-size:20px}}
@media(max-width:650px){:root{--sidebar:0px}.sidebar{width:246px}.topbar{height:66px;padding:12px 17px}.topbar-title{font-size:17px;letter-spacing:-.4px}.top-actions{gap:3px}.header-profile{border:0;padding-left:5px}.header-profile .avatar{width:30px;height:30px}.header-profile strong,.header-profile small{display:none}.top-actions>[data-page="Settings"]{display:none}.demo-pill{font-size:8px;padding:5px 6px}.content{padding:20px 16px}.page-heading h1{font-size:22px}.page-heading{margin-bottom:20px}.summary-quartet{padding:9px;border-radius:21px}.summary-quartet .stat{padding:16px 12px;border-radius:17px;min-height:155px}.summary-quartet .stat-top{font-size:10px;margin-bottom:13px}.stat-symbol{width:30px;height:30px}.stat-value{font-size:23px}.stat-foot{font-size:9px}.card{border-radius:21px}.card-pad{padding:20px}.card-head h2{font-size:15px}.overview-top{gap:17px;margin-bottom:17px}.dashboard-columns{gap:17px}.dashboard-primary{gap:17px}.dashboard-secondary{display:flex;gap:17px}.spending-card .donut-layout{flex-direction:row}.trend-chart svg{min-height:160px}.profit-card .chart{height:220px}.recent-head{padding:20px}.card-head p{font-size:9px}.topbar .breadcrumb{gap:6px}.spending-card .category-legend{width:auto;min-width:100px}}
.overview-top>*{min-width:0}.profit-card .chart{gap:10px}.profit-card .bars{min-width:0;gap:8px}.profit-card .bar-group{min-width:0;gap:4px}.profit-card .bar{width:25px}.profit-card .legend{flex-wrap:wrap;gap:8px}.profit-card .card-head{align-items:flex-start}.header-search input::placeholder{color:var(--muted)}
.profile-menu-wrap{position:relative}.profile-trigger{cursor:pointer;text-align:left;gap:10px}.profile-trigger:hover{background:var(--bg);border-radius:10px}.profile-trigger>.icon{width:15px;height:15px;color:var(--muted);margin-left:4px}.profile-dropdown[hidden]{display:none}.profile-dropdown{position:absolute;right:0;top:calc(100% + 14px);width:235px;padding:9px;border:1px solid var(--line);border-radius:16px;background:var(--surface);box-shadow:0 14px 45px #13274d20;z-index:30}.profile-menu-heading{padding:12px 12px 14px;font-size:13px;font-weight:600}.profile-menu-heading small{display:block;margin-top:5px;font-size:10px;color:var(--muted);font-weight:400}.profile-dropdown button{width:100%;display:flex;align-items:center;gap:11px;padding:12px;border-radius:9px;font-size:12px;text-align:left}.profile-dropdown button:hover,.profile-dropdown button:focus-visible{background:var(--bg)}.profile-dropdown button.current{color:var(--green);background:var(--soft);font-weight:600}.profile-dropdown button span{flex:1}.profile-dropdown button .icon{width:17px;height:17px}.profile-menu-divider{height:1px;background:var(--line);margin:8px 5px}.sidebar .nav-label{margin-top:12px}.header-profile .profile-label small{display:block}.header-profile .profile-label strong{display:block}
@media(max-width:650px){.profile-trigger .profile-label{display:none}.profile-trigger{padding:5px}.profile-trigger>.icon{margin-left:0;width:12px}.profile-dropdown{top:calc(100% + 10px);width:220px}}
.feature-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:25px 0 16px}.feature-heading h2{font-size:20px}.goal-track{height:9px;background:var(--border,#e7edf5);border-radius:10px;overflow:hidden;margin:20px 0 12px}.goal-track span{display:block;height:100%;background:#3478f6;border-radius:10px}.budget-warning{color:#e05266}.settings-grid .stat-value{font-size:27px}.stat-value small{font-size:14px;font-weight:500;color:var(--muted,#798394)}details{font-size:12px;margin-top:16px}summary{cursor:pointer;color:#3478f6}td small{display:block;margin-top:6px;color:var(--muted,#798394)}

.sidebar{overflow-y:auto}.sidebar .nav{flex-shrink:0}.sidebar-bottom{flex-shrink:0}
.transaction-actions{display:flex;gap:12px;justify-content:flex-end;margin:0 0 20px}.transaction-modal{max-width:560px}.transaction-modal .form-grid{display:flex;flex-direction:column;gap:17px}.transaction-modal .form-field input,.transaction-modal .form-field select,.transaction-modal textarea{width:100%;padding:13px 15px;border:1px solid var(--line);border-radius:12px;background:var(--bg);color:var(--ink)}.transaction-modal textarea{resize:vertical;min-height:90px}.transaction-type-tabs{display:flex;background:var(--bg);padding:5px;border-radius:12px;gap:5px}.transaction-type-tabs button{flex:1;padding:10px;border-radius:9px;display:flex;align-items:center;justify-content:center;gap:8px}.transaction-type-tabs .selected{background:var(--soft);color:var(--green);font-weight:700}.repeat-expense{display:flex;align-items:flex-start;gap:11px;border:1px solid var(--line);padding:15px;border-radius:12px;cursor:pointer}.repeat-expense input{margin-top:4px;width:17px;height:17px}.repeat-expense small{display:block;color:var(--muted);font-size:11px;line-height:1.5;margin-top:5px}.stat[role=button]{cursor:pointer}.stat[role=button]:hover{box-shadow:0 5px 20px #3478f61a}
.native-select{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;padding:0!important;pointer-events:none;clip-path:inset(50%)}.select-trigger{width:100%;min-height:46px;border:1px solid var(--line);background:var(--surface);border-radius:11px;padding:12px 14px;display:flex;align-items:center;justify-content:space-between;gap:18px;text-align:left;font-size:13px;transition:border-color .15s,box-shadow .15s}.select-trigger span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.select-trigger>.icon{width:16px;height:16px;color:var(--muted);transition:transform .15s}.select-trigger[aria-expanded=true]>.icon{transform:rotate(180deg)}.select-trigger:hover{border-color:#a9bfe4}.select-trigger:focus-visible,.select-trigger[aria-expanded=true]{outline:none;border-color:#3478f6;box-shadow:0 0 0 3px #3478f618}.select-trigger.placeholder{color:var(--muted)}.select-popover{position:fixed;z-index:200;padding:7px;border:1px solid var(--line);border-radius:14px;background:var(--surface);color:var(--ink);box-shadow:0 12px 38px #13274d26;max-height:330px;display:flex;flex-direction:column;animation:dropdown-in .12s ease-out}.select-options{overflow-y:auto;overscroll-behavior:contain}.select-option{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;text-align:left;padding:11px 12px;font-size:13px;min-height:42px;border-radius:8px}.select-option:hover,.select-option:focus-visible{background:var(--bg);outline:none}.select-option[aria-selected=true]{background:var(--soft);color:var(--green);font-weight:600}.select-option>.icon{width:16px;height:16px}.select-search{width:100%;border:1px solid var(--line);background:var(--bg);color:var(--ink);border-radius:8px;padding:10px 12px;margin-bottom:6px;font-size:13px;outline-offset:1px}.select-no-results{font-size:12px;padding:12px;color:var(--muted)}.filterbar .select-trigger{width:auto;min-width:145px}.business-strip>.select-trigger{width:220px}.transaction-modal{padding:0!important;width:590px;max-width:calc(100vw - 28px)}.transaction-modal .modal-top{padding:22px 26px 17px;border-bottom:1px solid var(--line);margin:0;position:sticky;top:0;background:var(--surface);z-index:2}.transaction-modal .modal-top h2{font-size:20px;letter-spacing:-.4px}.transaction-modal .form-grid{padding:20px 26px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:19px 18px}.transaction-modal .form-field label{font-size:12px;font-weight:600;margin-bottom:8px;display:block}.transaction-modal .form-field input,.transaction-modal textarea{background:var(--surface);font-size:13px;min-height:46px;border-radius:11px}.transaction-modal .form-field:has([name=description]),.transaction-modal .form-field:has([name=party]){grid-column:1/-1}.transaction-modal .form-error{margin:0 26px}.transaction-modal .modal-footer{position:sticky;bottom:0;padding:17px 26px;margin:0;background:var(--surface);border-top:1px solid var(--line);z-index:2}.transaction-type-tabs{padding:4px;border:1px solid var(--line)}.transaction-type-tabs button{font-size:13px}.transaction-type-tabs .selected{background:var(--surface);color:#3478f6;box-shadow:0 2px 6px #13274d0c}.repeat-expense{background:var(--bg)}.profile-dropdown{padding:8px;box-shadow:0 14px 40px #13274d20}.profile-dropdown button{min-height:44px}.profile-trigger[aria-expanded=true]{background:var(--bg)}@keyframes dropdown-in{from{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:translateY(0)}}@media(max-width:650px){.transaction-modal .form-grid{padding:18px;gap:16px;grid-template-columns:1fr}.transaction-modal .modal-top,.transaction-modal .modal-footer{padding:17px 18px}.filterbar .select-trigger{min-width:0;flex:1}.select-option{min-height:46px}.business-strip>.select-trigger{width:100%}}
.transaction-modal .form-grid>.full{grid-column:1/-1}.transaction-modal .transaction-type-tabs{display:flex;min-height:48px}.transaction-modal .repeat-expense{width:100%}
.budget-tabs{display:flex;gap:5px;padding:5px;background:var(--surface);border:1px solid var(--line);border-radius:14px;width:max-content;max-width:100%;overflow-x:auto;margin:0 0 26px}.budget-tabs button{display:flex;gap:9px;align-items:center;white-space:nowrap;padding:12px 16px;border-radius:10px;font-size:13px;color:var(--muted)}.budget-tabs [aria-selected=true]{background:var(--soft);color:var(--green);font-weight:700}.budget-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.budget-panel{padding:30px}.budget-panel h2{font-size:22px;margin:0 0 10px}.budget-panel>p{color:var(--muted);line-height:1.6;margin-bottom:30px}.budget-panel .form-field{margin-bottom:24px}.budget-panel input{width:100%;min-height:50px;font-size:16px}.budget-panel form>.btn{width:100%;justify-content:center;min-height:48px}.budget-meter{margin:28px 0}.budget-meter>div:first-child{display:flex;justify-content:space-between;gap:12px;font-size:15px}.budget-meter p{font-size:12px;color:var(--muted)}.budget-meter .goal-track{margin:13px 0}.budget-summary,.goal-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;padding:20px;background:var(--bg);border-radius:12px;font-size:11px;color:var(--muted)}.budget-summary strong,.goal-facts strong{display:block;font-size:16px;color:var(--ink);margin-top:7px}.goal-status{display:flex;justify-content:space-between;margin:12px 0 20px}.goal-rule{border-left:3px solid #3478f6;background:var(--soft);padding:13px;margin:20px 0;font-size:12px}.goal-rule small{display:block;color:var(--muted);margin-top:6px}.goal-card .card-head{align-items:flex-start}.goal-card .card-head p{font-size:11px;color:var(--muted);margin:8px 0}.goal-card details{margin-top:20px}@media(max-width:900px){.budget-layout{grid-template-columns:1fr}}@media(max-width:650px){.budget-panel{padding:22px}.budget-tabs{width:100%}.budget-tabs button{padding:10px 12px;font-size:12px}}
.goal-card table{min-width:420px;width:100%;font-size:11px}.goal-card th,.goal-card td{padding:12px 8px}.goal-card td:first-child{white-space:normal}.budget-panel input:focus{outline:2px solid #3478f6;outline-offset:2px}.budget-tabs button:focus-visible{outline:2px solid #3478f6;outline-offset:1px}
/* Quiet palette and lighter bilingual typography; existing layout is preserved. */
:root{--bg:#f7f8fa;--surface:#fff;--ink:#232b35;--muted:#727d89;--line:#e9edf1;--green:#2498bd;--soft:#edf7fa;--red:#d86868;--accent-cyan:#2498bd;--accent-orange:#e99745;--accent-positive:#309d73}
body{font-family:'DM Sans','Hind Siliguri',sans-serif;font-weight:400;-webkit-font-smoothing:antialiased}h1,h2,h3,.topbar-title,.logo,.stat-value{font-family:'DM Sans','Hind Siliguri',sans-serif}h1,h2,h3,strong,b{font-weight:500}.page-heading h1,.topbar-title{font-weight:500;letter-spacing:-.5px}.card-head h2,.budget-panel h2,.feature-heading h2,.transaction-modal .modal-top h2{font-weight:500;letter-spacing:-.25px}.logo{font-weight:600}.stat-value{font-weight:500;letter-spacing:-.6px;font-variant-numeric:tabular-nums}.nav button,.btn,.select-trigger,.select-option,.transaction-type-tabs button{font-weight:400}.nav button.active{background:var(--soft);color:var(--green);font-weight:500}.nav button.active .count{background:var(--surface);color:var(--green)}.summary-quartet .stat,.stat.featured,.summary-quartet .stat.featured{background:var(--surface);color:var(--ink);border:1px solid var(--line)}.stat.featured:after{display:none}.summary-quartet{background:transparent;padding:0}.summary-quartet .stat:nth-child(1){background:#f0f8fa}.summary-quartet .stat:nth-child(2){background:#f1faf5}.summary-quartet .stat:nth-child(3){background:#fff8f0}.summary-quartet .stat:nth-child(4){background:#f7f8fa}.stat.featured .stat-top,.stat.featured .stat-foot{color:var(--muted)}.stat.featured .stat-symbol{background:#e0f2f7;color:var(--accent-cyan)}.stat-symbol{background:#e9f6f9;color:var(--accent-cyan)}.summary-quartet .stat:nth-child(2) .stat-symbol{background:#e5f6ed;color:var(--accent-positive)}.stat-symbol.red,.summary-quartet .stat:nth-child(3) .stat-symbol{background:#fff0df;color:var(--accent-orange)}.stat-top{color:var(--muted);font-weight:400}.help-card{background:var(--bg);border:1px solid var(--line);color:var(--ink)}.help-card strong{font-weight:500}.help-card p{color:var(--muted)}.help-card .icon{color:var(--green)}.avatar{background:#edf6f8;color:var(--green)}.btn.primary{background:var(--green);border-color:var(--green);font-weight:500}.btn.primary:hover{background:#1e85a7}.bar{background:linear-gradient(to top,#d7eff5,#3ba6c7)}.bar.secondary{background:linear-gradient(to top,#fff0dd,#eda157)}.legend span:before,.trend-legend i{background:var(--accent-cyan)}.legend span:last-child:before,.trend-legend span:nth-child(2) i{background:var(--accent-orange)}.goal-track span{background:var(--accent-cyan)}.transaction-icon{background:var(--soft);color:var(--green)}.select-trigger:focus-visible,.select-trigger[aria-expanded=true]{border-color:var(--green);box-shadow:0 0 0 3px #2498bd18}.select-option[aria-selected=true]{font-weight:500}.select-trigger,.select-search{font-size:13px}.transaction-type-tabs .selected{color:var(--green);font-weight:500}.budget-tabs [aria-selected=true]{font-weight:500}.goal-rule{border-left-color:var(--green)}.budget-summary strong,.goal-facts strong,.bill-info strong,.bill-right strong,.header-profile strong,.table-title strong{font-weight:500}.amount{font-weight:500}.card{box-shadow:0 1px 3px #182a3d03}.budget-panel .form-field label,.transaction-modal .form-field label{font-weight:400}.goal-status .badge{font-weight:400}
html[lang=bn] body{font-family:'Hind Siliguri','DM Sans',sans-serif;line-height:1.6}html[lang=bn] h1,html[lang=bn] h2,html[lang=bn] h3,html[lang=bn] .topbar-title,html[lang=bn] .stat-value{font-family:'Hind Siliguri','DM Sans',sans-serif;font-weight:500;letter-spacing:0}html[lang=bn] .nav button{font-weight:400;font-size:14px}html[lang=bn] .page-heading p,html[lang=bn] .card-head p,html[lang=bn] .bill-info small,html[lang=bn] .help-card p{font-size:12px}html[lang=bn] .form-field label{font-size:13px;font-weight:400}html[lang=bn] .badge{font-size:12px}html[lang=bn] .page-heading h1{font-size:25px}html[lang=bn] .card-head h2{font-weight:500}
body[data-theme=dark]{--bg:#12191e;--surface:#1b252c;--ink:#e3e9ed;--muted:#a1afb8;--line:#2d3a43;--green:#69bed2;--soft:#223b44;--accent-cyan:#69bed2;--accent-orange:#eeb376;--accent-positive:#74c7a0}body[data-theme=dark] .summary-quartet .stat:nth-child(1){background:#1b303a}body[data-theme=dark] .summary-quartet .stat:nth-child(2){background:#1d322c}body[data-theme=dark] .summary-quartet .stat:nth-child(3){background:#342b22}body[data-theme=dark] .summary-quartet .stat:nth-child(4){background:var(--surface)}body[data-theme=dark] .stat-symbol,body[data-theme=dark] .stat.featured .stat-symbol{background:#25414b;color:var(--accent-cyan)}body[data-theme=dark] .summary-quartet .stat:nth-child(2) .stat-symbol{background:#28473b}body[data-theme=dark] .stat-symbol.red,body[data-theme=dark] .summary-quartet .stat:nth-child(3) .stat-symbol{background:#493825}body[data-theme=dark] .avatar{background:var(--soft)}body[data-theme=dark] .btn.primary{color:#12232b}
:root{--green:#217f9f}.due-panel .btn,.recent-head .btn{border-color:#c6dfe8;color:var(--green)}.select-no-results{font-weight:400}.transaction-modal .form-field input:focus,.transaction-modal textarea:focus{outline-color:var(--green)}.profile-dropdown button.current{font-weight:500}body[data-theme=dark]{--green:#69bed2}
/* Restore the original, stronger numeral styling independently of text. */
.stat-value,html[lang=bn] .stat-value,.amount,html[lang=bn] .amount,.bill-right strong,.goal-facts strong,.budget-summary strong,.donut-hole strong{font-family:'Manrope','Noto Sans Bengali',sans-serif;font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:-.5px}
:root{--muted:#5e6976}.nav button{color:#46525f}.nav-label,.tagline{color:#626e79}.page-heading p,.card-head p{color:#5e6976}.page-heading h1{font-weight:500}.overview-top{display:block}.summary-quartet .stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.summary-quartet .stat{min-height:190px;padding:26px 24px;background:var(--surface);border-color:transparent}.summary-quartet .stat:nth-child(1),.summary-quartet .stat:nth-child(2),.summary-quartet .stat:nth-child(3){background:var(--surface)}.summary-quartet .stat-value{font-size:32px}.summary-quartet .stat-top{font-size:14px;color:var(--ink);margin-bottom:22px}.summary-quartet .stat-foot{font-size:11px;color:var(--muted)}.overview-top>.profit-card{margin-top:24px}.dashboard-date{display:flex;align-items:center;gap:9px;background:var(--surface);padding:12px 16px;border-radius:24px;font-size:13px;white-space:nowrap}.dashboard-export{background:#232b31;color:#fff;border-color:#232b31;border-radius:24px;padding:12px 20px}.dashboard-export:hover{background:#36414a}.profit-card .legend .month-select{margin-right:12px;font-size:12px}.header-search input::placeholder{color:var(--muted)}body[data-theme=dark] .nav button{color:var(--ink)}body[data-theme=dark] .summary-quartet .stat:nth-child(n){background:var(--surface)}body[data-theme=dark] .page-heading p,body[data-theme=dark] .card-head p{color:var(--muted)}@media(max-width:900px){.summary-quartet .stat{padding:22px 18px}.summary-quartet .stat-value{font-size:28px}.summary-quartet .stats{gap:12px}}@media(max-width:650px){.summary-quartet .stats{grid-template-columns:1fr}.summary-quartet .stat{min-height:150px}.summary-quartet .stat-value{font-size:30px}.dashboard-date{font-size:12px;padding:11px 13px}.summary-quartet .stat-top{margin-bottom:13px}.profit-card .legend{justify-content:flex-end}}
.admin-portal{min-height:100vh}.admin-portal-header{display:flex;align-items:center;gap:18px;background:var(--surface);border-bottom:1px solid var(--line);padding:22px 5vw}.admin-portal-actions{display:flex;gap:12px;margin-left:auto}.admin-portal-main{max-width:1300px;padding:35px 5vw;margin:auto}.portal-label{display:block;font-size:10px;letter-spacing:1.5px;color:var(--muted);margin-top:30px}.portal-login .login-card{width:460px;border:1px solid var(--line);padding:36px}.portal-login .login-card h1{margin:14px 0}.portal-preview{border-top:1px solid var(--line);margin-top:24px;padding-top:12px}.portal-preview p{font-size:12px}.portal-switch{display:block;text-align:center;margin-top:24px;font-size:12px;color:var(--green)}.admin-portal a.btn{text-decoration:none}@media(max-width:650px){.admin-portal-header{flex-wrap:wrap;padding:18px}.admin-portal-actions{width:100%;margin:0}.admin-portal-main{padding:24px 17px}.portal-login .login-card{padding:26px}.admin-portal-header .logo{font-size:21px}}
.range-trigger{white-space:nowrap;gap:8px}.range-trigger svg{width:15px;height:15px}.range-modal{max-width:440px}.range-modal .form-grid{display:block}.range-presets{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:20px}.range-presets button{border:1px solid var(--line);border-radius:18px;background:var(--surface);color:var(--ink);padding:8px 12px;font:inherit;font-size:12px;cursor:pointer}.range-presets button.active{background:var(--soft);border-color:var(--green);color:var(--green)}.range-selection{display:flex;justify-content:space-between;gap:8px;background:var(--bg);padding:12px;border-radius:12px;font-size:12px}.calendar-heading{display:flex;align-items:center;justify-content:space-between;margin:20px 0 12px}.calendar-heading strong{font-weight:500}.calendar-heading button{border:0;background:var(--bg);color:var(--ink);border-radius:50%;width:36px;height:36px;font-size:24px;cursor:pointer}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}.calendar-grid .weekday{text-align:center;font-size:11px;color:var(--muted);padding:6px 0}.calendar-grid button{border:0;border-radius:50%;aspect-ratio:1;background:transparent;color:var(--ink);font:inherit;font-size:13px;cursor:pointer}.calendar-grid button:hover{background:var(--soft)}.calendar-grid button.between-days{background:var(--soft);color:var(--green)}.calendar-grid button.selected-day{background:var(--green);color:white}.calendar-grid button.calendar-today{box-shadow:inset 0 0 0 1px var(--green)}.calendar-tip{font-size:12px;color:var(--muted);margin:16px 0 0}.bars{gap:5px}.bar-label{font-size:9px;white-space:nowrap}@media(max-width:650px){.profit-card .card-head,.trend-card .card-head{align-items:flex-start;flex-wrap:wrap;gap:12px}.range-modal .form-grid{padding:18px}.range-presets button{min-height:38px}.calendar-grid{gap:3px}.calendar-grid button{min-height:35px}.bar-label{font-size:8px}}
.chart-range-select{width:160px}.chart-range-select .select-trigger{min-height:36px;font-size:12px;padding:8px 12px}.range-modal{width:330px;max-width:calc(100vw - 24px)}.range-modal .modal-top{padding:16px 18px}.range-modal .modal-top h2{font-size:16px}.range-modal .form-grid{padding:14px 18px}.range-modal .modal-footer{padding:12px 18px}.range-modal .calendar-heading{margin:12px 0 8px;font-size:13px}.range-modal .calendar-grid{gap:2px}.range-modal .calendar-grid button{font-size:12px;min-height:0}.range-modal .calendar-tip{font-size:10px;margin-top:10px}.range-modal .range-selection{font-size:10px;padding:9px}.date-native{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}.date-trigger{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:44px;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--ink);font:inherit;font-size:13px;text-align:left;cursor:pointer}.date-trigger svg{width:17px;height:17px;color:var(--muted)}.date-popover{position:fixed;z-index:10000;background:var(--surface);color:var(--ink);border:1px solid var(--line);box-shadow:0 12px 40px #172b3820;border-radius:18px;padding:14px;max-height:calc(100vh - 24px);overflow:auto}.date-popover .calendar-heading{margin:0 0 10px;font-size:13px}.date-popover .calendar-grid{gap:2px}.date-popover .calendar-grid button{min-height:0;font-size:12px}.calendar-today-link{display:block;margin:10px auto 0;border:0;background:transparent;color:var(--green);font:inherit;font-size:12px;cursor:pointer}.date-popover button:disabled{opacity:.3;cursor:default}.date-popover .choose-month{width:100%}.month-select+.date-trigger{width:auto;min-width:150px;margin-bottom:16px}
.range-modal{padding:0}.range-modal .modal-top{margin:0;border-bottom:1px solid var(--line)}.range-modal .modal-footer{margin:0;border-top:1px solid var(--line)}.range-modal .form-error{margin:0 18px}.range-modal .calendar-grid button{width:34px;height:34px;justify-self:center}.range-modal .calendar-heading button{width:30px;height:30px}

.summary-quartet .stat:nth-child(1){background:linear-gradient(125deg,#08af7d 0%,#0ca778 50%,#69baa0 100%);border:1px solid #08a777;box-shadow:0 8px 24px #08a77718}.summary-quartet .stat:nth-child(1) .stat-top,.summary-quartet .stat:nth-child(1) .stat-value,.summary-quartet .stat:nth-child(1) .stat-foot{color:#fff}.summary-quartet .stat:nth-child(1) .stat-icon{background:#ffffff20;color:#fff}.summary-quartet .stat:nth-child(2){background:#effbf6;border:1px solid #b5efd7}.summary-quartet .stat:nth-child(2) .stat-top{color:#418d77}.summary-quartet .stat:nth-child(2) .stat-value{color:#00895f}.summary-quartet .stat:nth-child(2) .stat-icon{background:#d0f8e6;color:#00946a}.summary-quartet .stat:nth-child(3){background:#fff4f6;border:1px solid #ffd2dd}.summary-quartet .stat:nth-child(3) .stat-top{color:#d5466c}.summary-quartet .stat:nth-child(3) .stat-value{color:#e5004f}.summary-quartet .stat:nth-child(3) .stat-icon{background:#ffe1e8;color:#e5004f}.nav button.active{background:#cfe7dc;color:#08694e}.dashboard-add{background:#08a875;color:#fff;border-color:#08a875;border-radius:14px;padding:13px 20px;box-shadow:0 3px 8px #08a87518}.dashboard-add:hover{background:#078c63;border-color:#078c63}[data-theme=dark] .summary-quartet .stat:nth-child(2){background:#16372c;border-color:#285541}[data-theme=dark] .summary-quartet .stat:nth-child(2) .stat-value{color:#7bddb5}[data-theme=dark] .summary-quartet .stat:nth-child(3){background:#3a222c;border-color:#593442}[data-theme=dark] .summary-quartet .stat:nth-child(3) .stat-value{color:#ff8fac}

.table-title strong{font-size:13px;line-height:1.5;font-weight:500}.table-title small{font-size:11px;line-height:1.5;margin-top:4px}.table-title{gap:12px}.table-title+small{font-size:11px}@media(max-width:650px){.table-title strong{font-size:12px}.table-title small{font-size:11px}}
.assistant-card{max-width:900px;margin:auto;overflow:hidden}.assistant-card .card-head{padding:24px;border-bottom:1px solid var(--line)}.assistant-policy{padding:16px 24px;background:var(--soft);font-size:12px;line-height:1.6}.assistant-policy span{display:block;color:var(--green)}.assistant-policy small{display:block;color:var(--muted);margin-top:5px}.assistant-messages{height:390px;overflow:auto;padding:24px;display:flex;flex-direction:column;gap:16px}.chat-message{max-width:85%;padding:12px 16px;border-radius:16px;background:var(--bg);font-size:14px;line-height:1.65;white-space:pre-wrap}.chat-message p{margin:4px 0 0;overflow-wrap:anywhere}.chat-message small{font-size:10px;color:var(--muted)}.chat-user{align-self:flex-end;background:var(--soft)}.chat-welcome{margin:auto;text-align:center;color:var(--muted)}.chat-welcome h3{font-weight:500;color:var(--ink)}.chat-welcome svg{width:36px;height:36px;color:var(--green)}.assistant-compose{display:flex;gap:12px;padding:18px 24px;border-top:1px solid var(--line);align-items:center}.assistant-compose textarea{flex:1;min-width:0;resize:vertical;border:1px solid var(--line);border-radius:12px;padding:12px;background:var(--surface);color:var(--ink);font:inherit;font-size:14px}.assistant-examples{display:flex;flex-wrap:wrap;gap:7px;padding:0 24px 14px}.assistant-examples button{background:var(--surface);border:1px solid var(--line);color:var(--muted);border-radius:20px;padding:8px 12px;font:inherit;font-size:11px;cursor:pointer}.assistant-footnote{padding:0 24px 18px;margin:0;font-size:11px;color:var(--muted)}.chat-suggestion{margin:10px 24px;padding:16px;border:1px solid var(--line);border-radius:12px}.chat-suggestion pre{font-size:11px;white-space:pre-wrap;overflow-wrap:anywhere;max-height:180px;overflow:auto}@media(max-width:650px){.assistant-card .card-head{padding:18px;flex-wrap:wrap}.assistant-policy,.assistant-messages{padding:18px}.assistant-messages{height:350px}.assistant-compose{padding:14px;gap:8px}.assistant-compose .btn{padding:12px}.assistant-examples{padding:0 18px 14px}.chat-message{max-width:95%}}

.suggestion-fields p{display:flex;justify-content:space-between;gap:12px;font-size:12px;overflow-wrap:anywhere}.suggestion-fields strong{font-weight:500}.suggestion-fields span{color:var(--muted)}
.welcome-card{max-width:720px;margin:30px auto;padding:48px;text-align:center}.welcome-mark{display:grid;place-items:center;width:72px;height:72px;margin:0 auto 24px;border-radius:22px;background:var(--soft);color:var(--green)}.welcome-mark svg{width:32px;height:32px}.welcome-card h2{font-size:26px;font-weight:500;margin:16px 0}.welcome-card p{color:var(--muted);line-height:1.8}.welcome-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:24px}.onboarding-modal{width:660px}.onboarding-modal h3{font-weight:500;font-size:18px}.onboarding-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-bottom:22px}.onboarding-steps span{padding:9px 6px;border-radius:10px;background:var(--bg);font-size:10px;color:var(--muted)}.onboarding-steps .current{background:var(--soft);color:var(--green)}.onboarding-hint{font-size:12px;color:var(--muted);line-height:1.7}.onboarding-toggle{display:flex;align-items:center;gap:10px;font-size:14px;margin:16px 0}.setup-row{border:1px solid var(--line);border-radius:14px;padding:16px;margin:14px 0}.setup-row-title{display:flex;justify-content:space-between;align-items:center;font-size:12px;margin-bottom:10px}.setup-row label{font-size:12px;color:var(--muted)}.setup-row label input{width:100%;margin-top:7px;border:1px solid var(--line);padding:10px;border-radius:10px;font:inherit;background:var(--surface);color:var(--ink)}.partner-investment{display:block;font-size:11px;color:var(--muted);margin-top:5px}.business-onboarding [hidden],.onboarding-modal button[hidden]{display:none!important}@media(max-width:650px){.welcome-card{padding:28px 20px}.onboarding-steps{grid-template-columns:repeat(2,1fr)}.onboarding-modal .modal-footer{flex-wrap:wrap}.setup-row{padding:12px}}

.business-onboarding{grid-column:1/-1;width:100%}.business-onboarding .form-grid{padding:0}.business-onboarding .onboarding-steps span{font-size:12px}

.chat-widget{position:fixed;right:24px;bottom:24px;z-index:45}.chat-launcher{display:grid;place-items:center;width:58px;height:58px;margin-left:auto;border-radius:50%;background:#07865e;color:white;box-shadow:0 8px 28px #075b4938}.chat-launcher .icon{width:26px;height:26px}.chat-popup{width:390px;max-width:calc(100vw - 28px);max-height:calc(100dvh - 112px);margin-bottom:14px;border:1px solid var(--line);border-radius:22px;background:var(--surface);box-shadow:0 18px 70px #102c302b;overflow:auto}.chat-popup-header{display:flex;justify-content:space-between;align-items:center;padding:17px 20px;background:#07865e;color:white}.chat-popup-header span{display:flex;align-items:center;gap:10px;font-size:16px}.chat-popup-header button{padding:4px}.chat-popup .assistant-card{margin:0;border:0;border-radius:0;padding:16px;box-shadow:none}.chat-popup .card-head{padding:0;margin-bottom:12px}.chat-popup .card-head h2{display:none}.chat-popup .card-head p{font-size:11px}.chat-popup .assistant-policy{font-size:12px}.chat-popup .assistant-policy small{font-size:10px}.chat-popup .assistant-messages{height:240px;min-height:160px;max-height:35dvh}.chat-popup .assistant-examples{display:none}.chat-popup .assistant-compose{gap:8px}.chat-popup .assistant-compose textarea{font-size:14px;min-width:0}.chat-popup .assistant-footnote{font-size:10px}.chat-popup .chat-message{font-size:14px}@media(max-width:600px){.chat-widget{right:14px;bottom:18px}.chat-launcher{width:54px;height:54px}.chat-popup{width:calc(100vw - 28px)} }

.chat-popup{border-radius:26px}.chat-popup-header{background:linear-gradient(135deg,#187b61,#40a17b);padding:18px}.chat-buddy-heading{display:flex;align-items:center;gap:12px}.chat-popup-header .chat-buddy-avatar{display:grid;place-items:center;width:46px;height:46px;border-radius:16px;background:#ffffff22;box-shadow:inset 0 1px 0 #ffffff40}.chat-buddy-avatar .icon{width:29px;height:29px;stroke-width:1.9}.chat-buddy-heading strong{display:block;font-size:16px;font-weight:500}.chat-buddy-heading small{display:block;font-size:11px;margin-top:4px;color:#e5fff1}.chat-popup .assistant-card{background:#fbfdfb}.chat-popup .assistant-policy{border-radius:15px;background:#edf6ef;color:#46745f;padding:12px}.chat-popup .assistant-messages{background:radial-gradient(ellipse at top,#f1f8f1,transparent);border:0;padding:16px 8px}.chat-popup .chat-message{border-radius:18px 18px 18px 5px;background:white;box-shadow:0 2px 8px #24453506;border:1px solid #edf1ec;padding:12px 14px}.chat-popup .chat-user{border-radius:18px 18px 5px 18px;background:#e3f4e8;border-color:#d7ebdf}.chat-message small .icon{width:15px;height:15px;color:#3a926b;margin-right:4px}.chat-popup .assistant-compose textarea{border-radius:18px;background:white;border:1px solid #dce9de;padding:12px}.chat-popup .assistant-compose .primary{border-radius:15px;background:#248664;color:white}.chat-launcher{background:linear-gradient(135deg,#187b61,#40a17b);box-shadow:0 8px 28px #075b4938,inset 0 1px 0 #ffffff50}.chat-launcher .icon{width:29px;height:29px;stroke-width:1.9}.chat-welcome>.icon{width:44px;height:44px;padding:8px;box-sizing:content-box;border-radius:20px;background:#e5f4e9;color:#358868}

.assistant-compose .chat-send{width:46px;height:46px;min-width:46px;padding:0;display:grid;place-items:center;align-self:end;border-radius:15px}.chat-send .icon{width:22px;height:22px}

.assistant-compose .chat-send,.chat-popup .assistant-compose .chat-send{background:transparent;color:var(--green);border:0;box-shadow:none}.chat-send:hover{opacity:.75}.chat-thinking{display:flex;align-items:center;gap:6px;font-size:12px}.chat-thinking .icon{width:18px;height:18px}.chat-thinking i{width:4px;height:4px;background:#63a183;border-radius:50%;animation:chat-pulse 1s infinite}.chat-thinking i:nth-last-child(2){animation-delay:.15s}.chat-thinking i:last-child{animation-delay:.3s}@keyframes chat-pulse{50%{opacity:.3;transform:translateY(-3px)}}@media(prefers-reduced-motion:reduce){.chat-thinking i{animation:none}}

.assistant-card .assistant-policy,.assistant-card .assistant-footnote{display:none}.chat-popup .assistant-card>.card-head{display:none}.chat-popup .assistant-messages{height:320px;max-height:48dvh}.chat-popup .assistant-card{padding:12px 16px 16px}.chat-popup .assistant-compose{padding-top:12px}.chat-popup .assistant-compose .chat-send{background:transparent!important;box-shadow:none!important;color:var(--green);border:0}

.pricing-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:24px 0}.plan-card{border:1px solid var(--line);padding:24px;border-radius:20px;background:var(--bg)}.plan-card h3{font-size:21px;font-weight:500}.plan-price{font-family:Manrope,sans-serif;font-size:34px;font-weight:600;color:var(--green)}.plan-price small{font-size:13px;font-weight:400;color:var(--muted)}.plan-card p{line-height:1.8;color:var(--muted)}.account-links{display:flex;flex-direction:column;gap:8px;margin-top:18px}.table-wrap td small{display:block;color:var(--muted);margin-top:5px}@media(max-width:650px){.pricing-grid{grid-template-columns:1fr}.plan-card{padding:20px}}

.invoice-brand-action{display:flex;justify-content:flex-end;margin-bottom:16px}

.chat-popup .assistant-compose{display:grid;grid-template-columns:minmax(0,1fr) 32px;gap:20px;padding:14px 0 0;align-items:center}.chat-popup .assistant-compose textarea{width:100%;min-height:82px;padding:14px 16px;resize:vertical}.chat-popup .assistant-compose .chat-send{width:32px;min-width:32px;height:40px;align-self:center}.chat-popup .assistant-compose .chat-send .icon{width:24px;height:24px}.chat-popup{width:450px}@media(max-width:600px){.chat-popup{width:calc(100vw - 28px)}}

.chat-popup .assistant-compose .chat-send{transform:translateX(5px)}

.business-tools{display:flex;align-items:center;gap:10px;margin-left:auto}.business-tools .btn{white-space:nowrap}.business-log{width:42px;padding:10px;justify-content:center}.business-strip{flex-wrap:wrap}@media(max-width:600px){.business-tools{width:100%;justify-content:flex-end;margin-left:0}}
/* Mobile usability: scrollable navigation, readable forms and bounded panels. */
.mobile-nav-scrim{display:none}
.main,.content,.card,.settings-grid>*{min-width:0}
@media(max-width:650px){
 .sidebar{overflow-y:auto;overscroll-behavior:contain;max-height:100dvh;padding-bottom:max(20px,env(safe-area-inset-bottom))}
 .sidebar.open+.mobile-nav-scrim{display:block;position:fixed;inset:0;z-index:9;background:#102a244d}
 .nav button,.icon-button,.btn,.select-trigger{min-height:44px}
 .mobile-menu,.top-actions .icon-button,.profile-trigger{min-width:44px}
 .topbar-title{font-size:16px}.top-actions{flex-shrink:0}.breadcrumb{min-width:0}.demo-pill{display:none}
 input,select,textarea,.assistant-compose textarea,.chat-popup .assistant-compose textarea{font-size:16px!important;min-width:0;max-width:100%}
 .form-grid{grid-template-columns:minmax(0,1fr)}.form-field{min-width:0}
 .modal{max-height:calc(100dvh - 24px);width:100%;padding:18px}.modal-footer{flex-wrap:wrap;padding:14px 16px}
 .modal h2{font-size:18px}.modal-top{gap:12px}.modal pre{max-width:100%;overflow:auto}
 .business-strip>.select-trigger{min-width:0}.business-tools{gap:8px}.business-log{width:44px;flex-shrink:0}
 .table-wrap{max-width:100%;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}
 .filterbar{padding:16px;gap:10px}.filterbar input{flex-basis:100%;width:100%}
 .footer{flex-wrap:wrap;overflow-wrap:anywhere}.bill-info{min-width:0;overflow-wrap:anywhere}
 .chat-widget{bottom:max(12px,env(safe-area-inset-bottom));right:12px}.chat-popup{width:calc(100vw - 24px);max-width:calc(100vw - 24px);max-height:calc(100dvh - 92px)}
 .chat-popup .assistant-messages{height:min(320px,40dvh);min-height:100px}.chat-popup .assistant-compose{grid-template-columns:minmax(0,1fr) 44px;gap:8px}
 .chat-popup .assistant-compose .chat-send{width:44px;min-width:44px;height:44px;transform:none}.chat-popup .assistant-compose textarea{min-height:74px}
 .chat-popup-header .chat-buddy-avatar{width:40px;height:40px;flex-shrink:0}.chat-buddy-heading{min-width:0}.chat-buddy-heading strong{font-size:15px}
 .chat-popup-header button{min-width:44px;min-height:44px}.chat-popup-header{padding:12px}
 .admin-portal-actions{flex-wrap:wrap}.admin-portal-main .bill{flex-wrap:wrap}.admin-portal-main .bill-info{flex-basis:calc(100% - 60px)}
 .login-shell{padding:18px}.login-card{padding:24px 20px}.login-card h1{font-size:23px}
}
@media(max-width:380px){.topbar{padding:10px 12px}.content{padding:18px 12px}.topbar-title{font-size:15px}.card-head{gap:10px;flex-wrap:wrap}.budget-panel{padding:18px}.spending-card .donut-layout{flex-wrap:wrap}.choice-row{flex-wrap:wrap}}
@media(max-height:500px) and (max-width:900px){.chat-popup .assistant-messages{height:90px;min-height:70px}.chat-popup-header{padding:8px 12px}.chat-popup .assistant-compose textarea{min-height:48px}.chat-popup{max-height:calc(100dvh - 80px)}}
@media(max-width:650px){.overlay{padding:12px}.modal-footer{position:sticky;bottom:0;background:var(--surface);border-top:1px solid var(--line);z-index:2}.modal .form-grid{gap:16px}.modal-top{margin-bottom:16px}.modal-footer .btn{min-height:44px}}
.login-shell{grid-template-columns:minmax(0,1fr);justify-items:center}.login-card{min-width:0;width:min(460px,100%);overflow-wrap:anywhere}

.business-import>.icon{transform:rotate(180deg)}
@media(max-width:650px){.business-tools{width:auto;justify-content:flex-end;margin-left:auto}.business-tools .business-tool-label{display:none}.business-tools .btn{width:44px;height:44px;min-width:44px;padding:10px;gap:0}.business-tools .icon{width:20px;height:20px}}

/* Voice input keeps the same accounting confirmation flow as typed chat. */
.assistant-compose{display:grid;grid-template-columns:minmax(0,1fr) 38px 44px!important;align-items:center;gap:8px!important}
.chat-mic{background:none;border:0;color:#258467;display:grid;place-items:center;width:38px;height:44px;cursor:pointer;border-radius:50%}
.chat-mic svg{width:23px;height:23px}.chat-mic:hover{background:#e5f4ed}.chat-mic.listening{color:#cf354e;background:#ffedf0;animation:voice-pulse 1.2s ease-in-out infinite}.chat-mic:disabled{opacity:.45;cursor:not-allowed}
.voice-options{display:flex;align-items:center;gap:8px;padding:8px 0 0;font-size:12px;color:#52665e;flex-wrap:wrap}.voice-options select{font:inherit;border:1px solid #dce9e2;border-radius:8px;background:#fff;color:#33483e;padding:4px 6px}.voice-options #ai-voice-status{flex:1;min-width:160px;line-height:1.5}
@keyframes voice-pulse{50%{box-shadow:0 0 0 5px #f7d5dc80}}@media(prefers-reduced-motion:reduce){.chat-mic.listening{animation:none}}
