@import"https://fonts.googleapis.com/css2?family=Noto+Sans+Bengali:wght@400;500;600;700;800&family=Plus+Jakarta+Sans:wght@400;500;600;700;800&display=swap";:root{--accent: #059669;--accent-2: #10b981;--accent-3: #34d399;--accent-light: rgba(5, 150, 105, .08);--sky: #0ea5e9;--emerald: #059669;--amber: #d97706;--rose: #e11d48;--bg: #f6f7fb;--bg-card: #ffffff;--border: #e7e9f3;--border-light: #f1f3fb;--text: #0f172a;--text-secondary: #475569;--text-muted: #94a3b8;--radius: 18px;--radius-sm: 12px;--green: #059669;--green-bg: #ecfdf5;--red: #dc2626;--red-bg: #fef2f2;--shadow: 0 1px 2px rgba(16,24,40,.04), 0 1px 3px rgba(16,24,40,.06);--shadow-md: 0 10px 30px -12px rgba(5,150,105,.2), 0 4px 12px rgba(16,24,40,.06);--shadow-lg: 0 24px 48px -16px rgba(5,150,105,.3), 0 8px 20px rgba(16,24,40,.08);--perspective: 1400px}*{box-sizing:border-box}body{margin:0;font-family:Noto Sans Bengali,Plus Jakarta Sans,system-ui,sans-serif;color:var(--text);-webkit-font-smoothing:antialiased;background-color:var(--bg);background-image:radial-gradient(40rem 40rem at 8% -6%,rgba(16,185,129,.16),transparent 60%),radial-gradient(36rem 36rem at 105% 0%,rgba(45,212,191,.14),transparent 58%),radial-gradient(34rem 34rem at 100% 100%,rgba(132,204,22,.1),transparent 60%),radial-gradient(34rem 34rem at -5% 105%,rgba(5,150,105,.12),transparent 60%);background-attachment:fixed}@keyframes fadeInUp{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes floatY{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes gradientShift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}@keyframes haloPulse{0%,to{box-shadow:0 0 #0596692e}50%{box-shadow:0 0 0 8px #05966900}}@keyframes pageEnter3D{0%{opacity:0;transform:perspective(var(--perspective)) rotateX(-10deg) translateY(26px) scale(.98)}to{opacity:1;transform:perspective(var(--perspective)) rotateX(0) translateY(0) scale(1)}}@keyframes pillPop3D{0%{transform:perspective(600px) rotateX(0) scale(1)}40%{transform:perspective(600px) rotateX(-14deg) scale(1.06)}to{transform:perspective(600px) rotateX(0) scale(1)}}@keyframes logoSpin3D{0%,to{transform:perspective(500px) rotateY(0)}50%{transform:perspective(500px) rotateY(18deg)}}.fade-up{animation:fadeInUp .55s cubic-bezier(.22,1,.36,1) both}.page-3d-enter{animation:pageEnter3D .5s cubic-bezier(.22,1,.36,1) both;transform-style:preserve-3d}.topnav{position:sticky;top:0;z-index:50;display:flex;align-items:center;gap:20px;padding:0 26px;height:76px;background:#ffffffb8;backdrop-filter:blur(16px) saturate(160%);-webkit-backdrop-filter:blur(16px) saturate(160%);border-bottom:1px solid rgba(231,233,243,.9);box-shadow:0 1px #fff9 inset,0 6px 24px -18px #05966973}.topnav:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:linear-gradient(90deg,#059669,#10b981,#34d399,#0ea5e9,#059669);background-size:300% 100%;animation:gradientShift 12s ease infinite;opacity:.85}.topnav .brand{display:flex;align-items:center;gap:13px;flex-shrink:0;perspective:500px}.topnav .brand .logo{width:48px;height:48px;border-radius:15px;background:linear-gradient(135deg,#059669,#10b981);display:flex;align-items:center;justify-content:center;color:#fff;font-size:21px;box-shadow:0 8px 20px #05966973;transition:transform .3s cubic-bezier(.22,1,.36,1);transform-style:preserve-3d}.topnav .brand .logo:hover{transform:perspective(500px) rotateY(-18deg) rotateX(6deg) scale(1.08)}.topnav .brand .brand-text h2{font-size:19px;font-weight:800;margin:0;line-height:1.1}.topnav .brand .brand-text p{font-size:11px;font-weight:700;margin:0;background:linear-gradient(90deg,#059669,#10b981);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.topnav .nav-pills{display:flex;align-items:center;gap:6px;flex:1;overflow-x:auto;scrollbar-width:none;perspective:800px}.topnav .nav-pills::-webkit-scrollbar{display:none}.nav-pill{display:flex;align-items:center;gap:9px;padding:11px 18px;border-radius:13px;color:var(--text-secondary);font-weight:700;font-size:15px;text-decoration:none;white-space:nowrap;transition:all .25s cubic-bezier(.22,1,.36,1);transform-style:preserve-3d}.nav-pill:hover{background:var(--accent-light);color:var(--accent);transform:perspective(800px) rotateX(-6deg) translateY(-2px)}.nav-pill.active{background:linear-gradient(135deg,#059669,#10b981);color:#fff;box-shadow:0 8px 20px -4px #0596698c;animation:pillPop3D .5s cubic-bezier(.22,1,.36,1) both}.nav-pill.active:hover{color:#fff;transform:perspective(800px) rotateX(-4deg) translateY(-2px)}.nav-pill .pill-icon{font-size:19px;display:flex;transition:transform .25s ease}.nav-pill:hover .pill-icon{transform:scale(1.15) rotate(-8deg)}.topnav .nav-user{display:flex;align-items:center;gap:12px;flex-shrink:0}.topnav .nav-user .uname{font-size:13px;font-weight:700;color:var(--text)}.user-avatar{width:42px;height:42px;border-radius:13px;background:linear-gradient(135deg,#059669,#10b981,#34d399);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:800;font-size:16px;flex-shrink:0;box-shadow:0 6px 16px #10b98173;transition:transform .25s cubic-bezier(.22,1,.36,1)}.user-avatar:hover{transform:perspective(500px) rotateY(14deg) scale(1.06)}.page-wrap{padding:26px;max-width:1280px;margin:0 auto;perspective:var(--perspective)}.page-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;margin-bottom:24px;animation:fadeInUp .5s cubic-bezier(.22,1,.36,1) both}.page-header h1{font-size:30px;font-weight:800;margin:0;letter-spacing:-.4px;background:linear-gradient(120deg,#064e3b,#059669 60%,#10b981);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.page-subtitle{font-size:12.5px;color:var(--text-muted);font-weight:600;margin:3px 0 0}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:16px;perspective:1200px}.stat-card{position:relative;background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:20px;display:flex;align-items:flex-start;gap:16px;overflow:hidden;box-shadow:var(--shadow);transition:transform .3s cubic-bezier(.22,1,.36,1),box-shadow .3s ease;animation:fadeInUp .55s cubic-bezier(.22,1,.36,1) both;transform-style:preserve-3d}.stat-card:before{content:"";position:absolute;inset:0 0 auto 0;height:4px;background:var(--card-accent, linear-gradient(90deg,#059669,#10b981))}.stat-card:after{content:"";position:absolute;right:-40px;top:-40px;width:130px;height:130px;border-radius:50%;background:var(--card-glow, radial-gradient(circle, rgba(5,150,105,.16), transparent 70%));pointer-events:none}.stat-card:hover{box-shadow:var(--shadow-lg);transform:perspective(1200px) rotateX(4deg) rotateY(-2deg) translateY(-6px)}.stat-card:nth-child(1){animation-delay:.02s}.stat-card:nth-child(2){animation-delay:.08s}.stat-card:nth-child(3){animation-delay:.14s}.stat-card:nth-child(4){animation-delay:.2s}.stat-card:nth-child(5){animation-delay:.26s}.stat-icon{width:52px;height:52px;border-radius:16px;display:flex;align-items:center;justify-content:center;font-size:23px;flex-shrink:0;position:relative;z-index:1;box-shadow:0 6px 16px -6px currentColor;transition:transform .3s cubic-bezier(.22,1,.36,1)}.stat-card:hover .stat-icon{transform:scale(1.1) rotate(-6deg)}.stat-info{position:relative;z-index:1}.stat-info p{font-size:11.5px;color:var(--text-muted);font-weight:700;text-transform:uppercase;letter-spacing:.6px;margin:0}.stat-info h3{font-size:26px;font-weight:800;margin:4px 0 0;letter-spacing:-.6px}.badge{padding:3px 11px;border-radius:20px;font-size:11px;font-weight:700;display:inline-flex;align-items:center;gap:4px;box-shadow:0 1px 2px #1018280f}.badge-draft{background:linear-gradient(135deg,#e0e7ff,#eef2ff);color:#4338ca}.badge-pending{background:linear-gradient(135deg,#fef3c7,#fffbeb);color:#92400e}.badge-approved,.badge-income{background:linear-gradient(135deg,#d1fae5,#ecfdf5);color:#065f46}.badge-expense{background:linear-gradient(135deg,#fee2e2,#fef2f2);color:#991b1b}.txn-card{background:#fff;border:1px solid var(--border);border-radius:var(--radius);margin-bottom:10px;overflow:hidden;box-shadow:var(--shadow);transition:transform .25s cubic-bezier(.22,1,.36,1),box-shadow .25s ease;animation:fadeInUp .45s cubic-bezier(.22,1,.36,1) both;transform-style:preserve-3d}.txn-card:hover{box-shadow:var(--shadow-md);transform:perspective(1000px) rotateX(1.5deg) translateY(-3px)}.txn-card.type-income{border-left:4px solid var(--green)}.txn-card.type-expense{border-left:4px solid var(--red)}.txn-main{display:flex;align-items:center;padding:14px 16px;gap:14px;flex-wrap:wrap}.txn-type-icon{width:42px;height:42px;border-radius:13px;display:flex;align-items:center;justify-content:center;font-size:16px;flex-shrink:0}.txn-type-icon.inc{background:var(--green-bg);color:var(--green)}.txn-type-icon.exp{background:var(--red-bg);color:var(--red)}.txn-info{flex:1;min-width:0}.txn-info-top{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:3px}.txn-voucher{font-size:12px;font-weight:700;color:var(--accent);letter-spacing:.3px}.txn-cats{font-size:13px;font-weight:600;color:var(--text)}.txn-meta{display:flex;align-items:center;gap:10px;font-size:11px;color:var(--text-muted);font-weight:500}.txn-amount{text-align:right;flex-shrink:0;padding:0 8px}.txn-amount-value{font-size:18px;font-weight:800;letter-spacing:-.5px;line-height:1.2}.txn-amount-value.inc{color:var(--green)}.txn-amount-value.exp{color:var(--red)}.txn-actions-bar{display:flex;flex-wrap:wrap;gap:6px;padding:8px 16px 12px;border-top:1px dashed var(--border-light);background:#f8fafc99}.txn-details{padding:4px 16px 14px 70px}.txn-item-chip{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:8px;font-size:11px;font-weight:600;margin:0 4px 4px 0}.txn-item-chip.inc{background:var(--green-bg);color:#065f46}.txn-item-chip.exp{background:var(--red-bg);color:#991b1b}@media (max-width: 768px){.txn-details{padding-left:16px}.txn-amount{text-align:left;padding:0}}.login-wrap{min-height:100vh;min-height:100dvh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#022c22,#064e3b,#065f46 60%,#0d9488 85%,#14b8a6);padding:24px;position:relative;overflow:hidden;perspective:1600px}.login-bg-anim{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;pointer-events:none}.login-bg-anim .blob{position:absolute;border-radius:50%;filter:blur(64px);opacity:.6;animation:loginBlob 18s ease-in-out infinite}.login-bg-anim .blob-1{width:540px;height:540px;background:radial-gradient(circle,#10b981,transparent 70%);top:-180px;right:-120px}.login-bg-anim .blob-2{width:480px;height:480px;background:radial-gradient(circle,#2dd4bf,transparent 70%);bottom:-160px;left:-120px;animation-delay:-6s}.login-bg-anim .blob-3{width:360px;height:360px;background:radial-gradient(circle,#4ade80,transparent 70%);top:40%;left:45%;animation-delay:-12s;opacity:.4}.login-bg-anim .blob-4{width:300px;height:300px;background:radial-gradient(circle,#a3e635,transparent 70%);top:10%;left:10%;animation-delay:-9s;opacity:.35}@keyframes loginBlob{0%,to{transform:translate(0) scale(1)}33%{transform:translate(40px,-30px) scale(1.1)}66%{transform:translate(-30px,40px) scale(.94)}}.login-card{background:#fffffff7;-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);border:1px solid rgba(255,255,255,.6);border-radius:26px;padding:42px 34px 32px;width:100%;max-width:410px;box-shadow:0 36px 90px #022c2280,0 0 0 1px #fff3 inset;text-align:center;position:relative;z-index:1;animation:pageEnter3D .7s cubic-bezier(.22,1,.36,1) both;transform-style:preserve-3d}.login-logo-ring{width:86px;height:86px;margin:0 auto 18px;border-radius:24px;padding:3px;background:linear-gradient(135deg,#059669,#10b981,#34d399);background-size:200% 200%;box-shadow:0 14px 34px #05966973;animation:loginLogoFloat 3.5s ease-in-out infinite,gradientShift 6s ease infinite,logoSpin3D 7s ease-in-out infinite}.login-logo-ring .logo-inner{width:100%;height:100%;border-radius:21px;background:#fff;display:flex;align-items:center;justify-content:center;font-size:33px;color:var(--accent)}@keyframes loginLogoFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.login-card h1{font-size:27px;font-weight:800;margin:0 0 4px;letter-spacing:-.4px;background:linear-gradient(120deg,#059669,#10b981 50%,#2dd4bf);background-size:200% auto;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:gradientShift 5s ease infinite}.login-card .login-tag{color:#64748b;font-size:13px;font-weight:500;margin-bottom:26px}.btn-gradient.ant-btn-primary{background:linear-gradient(135deg,#059669,#10b981,#34d399);background-size:200% 200%;border:none;font-weight:800;box-shadow:0 10px 26px #05966966;transition:background-position .5s ease,transform .2s ease,box-shadow .25s ease}.btn-gradient.ant-btn-primary:hover{background-position:100% 50%;transform:translateY(-2px);box-shadow:0 14px 32px #10b98180!important}.btn-gradient.ant-btn-primary:active{transform:translateY(0)}:root{--table-head: linear-gradient(180deg,#e7fbf0,#d2f4e2);--table-accent: #10b981;--table-head-text: #065f46;--table-zebra: #f2fcf7;--table-hover: #def6ec;--table-divider: #d6f0e3}.theme-indigo{--table-head:linear-gradient(180deg,#e6fbf6,#cdf3ea);--table-accent:#0d9488;--table-head-text:#134e4a;--table-zebra:#f1fdfa;--table-hover:#dcf7ef;--table-divider:#d3f0e7}.theme-emerald{--table-head:linear-gradient(180deg,#e7fbf0,#d2f4e2);--table-accent:#10b981;--table-head-text:#065f46;--table-zebra:#f2fcf7;--table-hover:#def6ec;--table-divider:#d6f0e3}.theme-amber{--table-head:linear-gradient(180deg,#fef4e4,#fce8cc);--table-accent:#f59e0b;--table-head-text:#92400e;--table-zebra:#fffaf1;--table-hover:#fdeed5;--table-divider:#f6e6cc}.theme-violet{--table-head:linear-gradient(180deg,#f4ebff,#e7d8ff);--table-accent:#8b5cf6;--table-head-text:#5b21b6;--table-zebra:#faf6ff;--table-hover:#f0e6ff;--table-divider:#ebe0fb}.theme-sky{--table-head:linear-gradient(180deg,#eafcf1,#d7f8e3);--table-accent:#22c55e;--table-head-text:#166534;--table-zebra:#f3fdf7;--table-hover:#e2f9ec;--table-divider:#dcf3e6}.theme-rose{--table-head:linear-gradient(180deg,#feebf0,#fcd6e2);--table-accent:#f43f5e;--table-head-text:#9f1239;--table-zebra:#fff4f7;--table-hover:#fce0e8;--table-divider:#f7dbe3}.ant-card{border-radius:var(--radius)!important;box-shadow:var(--shadow-md)!important;border:1px solid var(--table-divider)!important;overflow:hidden}.ant-card-head{border-bottom:2px solid var(--table-accent)!important;background:var(--table-head)!important}.ant-card-head-title{font-weight:800!important;color:var(--table-head-text)!important}.ant-table-wrapper .ant-table{border-radius:var(--radius-sm);overflow:hidden;border:1px solid var(--table-divider)!important}.ant-table-thead>tr>th{background:var(--table-head)!important;color:var(--table-head-text)!important;font-weight:800!important;border-bottom:2px solid var(--table-accent)!important;border-right:1px solid rgba(255,255,255,.55)!important}.ant-table-thead>tr>th:before{display:none!important}.ant-table-thead>tr>th:last-child{border-right:none!important}.ant-table-tbody>tr>td{border-bottom:1px solid var(--table-divider)!important;border-right:1px solid var(--table-divider)!important;transition:background .16s ease}.ant-table-tbody>tr>td:last-child{border-right:none!important}.ant-table-tbody>tr:nth-child(2n)>td{background:var(--table-zebra)}.ant-table-tbody>tr:hover>td{background:var(--table-hover)!important}.ant-table-expanded-row>td{background:var(--table-zebra)!important}.ant-divider{border-color:var(--table-accent)!important;opacity:.5}.ant-btn{border-radius:10px!important;font-weight:600;transition:all .2s ease}.ant-btn-default:hover{border-color:var(--accent)!important;color:var(--accent)!important}.ant-select .ant-select-selector,.ant-input,.ant-input-affix-wrapper,.ant-input-password{border-radius:10px!important}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}.cat-tree .ant-tree-node-content-wrapper{width:100%;padding:0!important;background:transparent!important}.cat-tree .ant-tree-node-content-wrapper:hover,.cat-tree .ant-tree-node-selected{background:transparent!important}.cat-tree .ant-tree-treenode{width:100%;padding-bottom:0;align-items:center}.cat-tree .ant-tree-title{width:100%}.cat-tree .ant-tree-switcher{align-self:center;height:auto;line-height:64px}.cat-tree .ant-tree-indent-unit{width:20px}.cat-tree .ant-tree-draggable-icon{display:none}
